@speclynx/apidom-parser-adapter-asyncapi-json-2 4.0.4 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.apidomParserAdapterAsyncApiJson2=t():e.apidomParserAdapterAsyncApiJson2=t()}(self,()=>(()=>{var __webpack_modules__={841(){},167(){},451(){},333(__unused_webpack___webpack_module__,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,{TM:()=>Language,iX:()=>Parser});var __defProp=Object.defineProperty,__name=(e,t)=>__defProp(e,"name",{value:t,configurable:!0}),Edit=class{static{__name(this,"Edit")}startPosition;oldEndPosition;newEndPosition;startIndex;oldEndIndex;newEndIndex;constructor({startIndex:e,oldEndIndex:t,newEndIndex:s,startPosition:n,oldEndPosition:r,newEndPosition:i}){this.startIndex=e>>>0,this.oldEndIndex=t>>>0,this.newEndIndex=s>>>0,this.startPosition=n,this.oldEndPosition=r,this.newEndPosition=i}editPoint(e,t){let s=t;const n={...e};if(t>=this.oldEndIndex){s=this.newEndIndex+(t-this.oldEndIndex);const r=e.row;n.row=this.newEndPosition.row+(e.row-this.oldEndPosition.row),n.column=r===this.oldEndPosition.row?this.newEndPosition.column+(e.column-this.oldEndPosition.column):e.column}else t>this.startIndex&&(s=this.newEndIndex,n.row=this.newEndPosition.row,n.column=this.newEndPosition.column);return{point:n,index:s}}editRange(e){const t={startIndex:e.startIndex,startPosition:{...e.startPosition},endIndex:e.endIndex,endPosition:{...e.endPosition}};return e.endIndex>=this.oldEndIndex?e.endIndex!==Number.MAX_SAFE_INTEGER&&(t.endIndex=this.newEndIndex+(e.endIndex-this.oldEndIndex),t.endPosition={row:this.newEndPosition.row+(e.endPosition.row-this.oldEndPosition.row),column:e.endPosition.row===this.oldEndPosition.row?this.newEndPosition.column+(e.endPosition.column-this.oldEndPosition.column):e.endPosition.column},t.endIndex<this.newEndIndex&&(t.endIndex=Number.MAX_SAFE_INTEGER,t.endPosition={row:Number.MAX_SAFE_INTEGER,column:Number.MAX_SAFE_INTEGER})):e.endIndex>this.startIndex&&(t.endIndex=this.startIndex,t.endPosition={...this.startPosition}),e.startIndex>=this.oldEndIndex?(t.startIndex=this.newEndIndex+(e.startIndex-this.oldEndIndex),t.startPosition={row:this.newEndPosition.row+(e.startPosition.row-this.oldEndPosition.row),column:e.startPosition.row===this.oldEndPosition.row?this.newEndPosition.column+(e.startPosition.column-this.oldEndPosition.column):e.startPosition.column},t.startIndex<this.newEndIndex&&(t.startIndex=Number.MAX_SAFE_INTEGER,t.startPosition={row:Number.MAX_SAFE_INTEGER,column:Number.MAX_SAFE_INTEGER})):e.startIndex>this.startIndex&&(t.startIndex=this.startIndex,t.startPosition={...this.startPosition}),t}},SIZE_OF_SHORT=2,SIZE_OF_INT=4,SIZE_OF_CURSOR=4*SIZE_OF_INT,SIZE_OF_NODE=5*SIZE_OF_INT,SIZE_OF_POINT=2*SIZE_OF_INT,SIZE_OF_RANGE=2*SIZE_OF_INT+2*SIZE_OF_POINT,ZERO_POINT={row:0,column:0},INTERNAL=Symbol("INTERNAL"),C;function assertInternal(e){if(e!==INTERNAL)throw new Error("Illegal constructor")}function isPoint(e){return!!e&&"number"==typeof e.row&&"number"==typeof e.column}function setModule(e){C=e}__name(assertInternal,"assertInternal"),__name(isPoint,"isPoint"),__name(setModule,"setModule");var LookaheadIterator=class{static{__name(this,"LookaheadIterator")}0=0;language;constructor(e,t,s){assertInternal(e),this[0]=t,this.language=s}get currentTypeId(){return C._ts_lookahead_iterator_current_symbol(this[0])}get currentType(){return this.language.types[this.currentTypeId]||"ERROR"}delete(){C._ts_lookahead_iterator_delete(this[0]),this[0]=0}reset(e,t){return!!C._ts_lookahead_iterator_reset(this[0],e[0],t)&&(this.language=e,!0)}resetState(e){return Boolean(C._ts_lookahead_iterator_reset_state(this[0],e))}[Symbol.iterator](){return{next:__name(()=>C._ts_lookahead_iterator_next(this[0])?{done:!1,value:this.currentType}:{done:!0,value:""},"next")}}};function getText(e,t,s,n){const r=s-t;let i=e.textCallback(t,n);if(i){for(t+=i.length;t<s;){const s=e.textCallback(t,n);if(!(s&&s.length>0))break;t+=s.length,i+=s}t>s&&(i=i.slice(0,r))}return i??""}__name(getText,"getText");var Tree=class e{static{__name(this,"Tree")}0=0;textCallback;language;constructor(e,t,s,n){assertInternal(e),this[0]=t,this.language=s,this.textCallback=n}copy(){const t=C._ts_tree_copy(this[0]);return new e(INTERNAL,t,this.language,this.textCallback)}delete(){C._ts_tree_delete(this[0]),this[0]=0}get rootNode(){return C._ts_tree_root_node_wasm(this[0]),unmarshalNode(this)}rootNodeWithOffset(e,t){const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),marshalPoint(s+SIZE_OF_INT,t),C._ts_tree_root_node_with_offset_wasm(this[0]),unmarshalNode(this)}edit(e){marshalEdit(e),C._ts_tree_edit_wasm(this[0])}walk(){return this.rootNode.walk()}getChangedRanges(t){if(!(t instanceof e))throw new TypeError("Argument must be a Tree");C._ts_tree_get_changed_ranges_wasm(this[0],t[0]);const s=C.getValue(TRANSFER_BUFFER,"i32"),n=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),r=new Array(s);if(s>0){let e=n;for(let t=0;t<s;t++)r[t]=unmarshalRange(e),e+=SIZE_OF_RANGE;C._free(n)}return r}getIncludedRanges(){C._ts_tree_included_ranges_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=unmarshalRange(n),n+=SIZE_OF_RANGE;C._free(t)}return s}},TreeCursor=class e{static{__name(this,"TreeCursor")}0=0;1=0;2=0;3=0;tree;constructor(e,t){assertInternal(e),this.tree=t,unmarshalTreeCursor(this)}copy(){const t=new e(INTERNAL,this.tree);return C._ts_tree_cursor_copy_wasm(this.tree[0]),unmarshalTreeCursor(t),t}delete(){marshalTreeCursor(this),C._ts_tree_cursor_delete_wasm(this.tree[0]),this[0]=this[1]=this[2]=0}get currentNode(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_wasm(this.tree[0]),unmarshalNode(this.tree)}get currentFieldId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_field_id_wasm(this.tree[0])}get currentFieldName(){return this.tree.language.fields[this.currentFieldId]}get currentDepth(){return marshalTreeCursor(this),C._ts_tree_cursor_current_depth_wasm(this.tree[0])}get currentDescendantIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_current_descendant_index_wasm(this.tree[0])}get nodeType(){return this.tree.language.types[this.nodeTypeId]||"ERROR"}get nodeTypeId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_type_id_wasm(this.tree[0])}get nodeStateId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_state_id_wasm(this.tree[0])}get nodeId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_id_wasm(this.tree[0])}get nodeIsNamed(){return marshalTreeCursor(this),1===C._ts_tree_cursor_current_node_is_named_wasm(this.tree[0])}get nodeIsMissing(){return marshalTreeCursor(this),1===C._ts_tree_cursor_current_node_is_missing_wasm(this.tree[0])}get nodeText(){marshalTreeCursor(this);const e=C._ts_tree_cursor_start_index_wasm(this.tree[0]),t=C._ts_tree_cursor_end_index_wasm(this.tree[0]);C._ts_tree_cursor_start_position_wasm(this.tree[0]);const s=unmarshalPoint(TRANSFER_BUFFER);return getText(this.tree,e,t,s)}get startPosition(){return marshalTreeCursor(this),C._ts_tree_cursor_start_position_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get endPosition(){return marshalTreeCursor(this),C._ts_tree_cursor_end_position_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get startIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_start_index_wasm(this.tree[0])}get endIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_end_index_wasm(this.tree[0])}gotoFirstChild(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_first_child_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoLastChild(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_last_child_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoParent(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_parent_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoNextSibling(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_next_sibling_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoPreviousSibling(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_previous_sibling_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoDescendant(e){marshalTreeCursor(this),C._ts_tree_cursor_goto_descendant_wasm(this.tree[0],e),unmarshalTreeCursor(this)}gotoFirstChildForIndex(e){marshalTreeCursor(this),C.setValue(TRANSFER_BUFFER+SIZE_OF_CURSOR,e,"i32");const t=C._ts_tree_cursor_goto_first_child_for_index_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===t}gotoFirstChildForPosition(e){marshalTreeCursor(this),marshalPoint(TRANSFER_BUFFER+SIZE_OF_CURSOR,e);const t=C._ts_tree_cursor_goto_first_child_for_position_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===t}reset(e){marshalNode(e),marshalTreeCursor(this,TRANSFER_BUFFER+SIZE_OF_NODE),C._ts_tree_cursor_reset_wasm(this.tree[0]),unmarshalTreeCursor(this)}resetTo(e){marshalTreeCursor(this,TRANSFER_BUFFER),marshalTreeCursor(e,TRANSFER_BUFFER+SIZE_OF_CURSOR),C._ts_tree_cursor_reset_to_wasm(this.tree[0],e.tree[0]),unmarshalTreeCursor(this)}},Node=class{static{__name(this,"Node")}0=0;_children;_namedChildren;constructor(e,{id:t,tree:s,startIndex:n,startPosition:r,other:i}){assertInternal(e),this[0]=i,this.id=t,this.tree=s,this.startIndex=n,this.startPosition=r}id;startIndex;startPosition;tree;get typeId(){return marshalNode(this),C._ts_node_symbol_wasm(this.tree[0])}get grammarId(){return marshalNode(this),C._ts_node_grammar_symbol_wasm(this.tree[0])}get type(){return this.tree.language.types[this.typeId]||"ERROR"}get grammarType(){return this.tree.language.types[this.grammarId]||"ERROR"}get isNamed(){return marshalNode(this),1===C._ts_node_is_named_wasm(this.tree[0])}get isExtra(){return marshalNode(this),1===C._ts_node_is_extra_wasm(this.tree[0])}get isError(){return marshalNode(this),1===C._ts_node_is_error_wasm(this.tree[0])}get isMissing(){return marshalNode(this),1===C._ts_node_is_missing_wasm(this.tree[0])}get hasChanges(){return marshalNode(this),1===C._ts_node_has_changes_wasm(this.tree[0])}get hasError(){return marshalNode(this),1===C._ts_node_has_error_wasm(this.tree[0])}get endIndex(){return marshalNode(this),C._ts_node_end_index_wasm(this.tree[0])}get endPosition(){return marshalNode(this),C._ts_node_end_point_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get text(){return getText(this.tree,this.startIndex,this.endIndex,this.startPosition)}get parseState(){return marshalNode(this),C._ts_node_parse_state_wasm(this.tree[0])}get nextParseState(){return marshalNode(this),C._ts_node_next_parse_state_wasm(this.tree[0])}equals(e){return this.tree===e.tree&&this.id===e.id}child(e){return marshalNode(this),C._ts_node_child_wasm(this.tree[0],e),unmarshalNode(this.tree)}namedChild(e){return marshalNode(this),C._ts_node_named_child_wasm(this.tree[0],e),unmarshalNode(this.tree)}childForFieldId(e){return marshalNode(this),C._ts_node_child_by_field_id_wasm(this.tree[0],e),unmarshalNode(this.tree)}childForFieldName(e){const t=this.tree.language.fields.indexOf(e);return-1!==t?this.childForFieldId(t):null}fieldNameForChild(e){marshalNode(this);const t=C._ts_node_field_name_for_child_wasm(this.tree[0],e);return t?C.AsciiToString(t):null}fieldNameForNamedChild(e){marshalNode(this);const t=C._ts_node_field_name_for_named_child_wasm(this.tree[0],e);return t?C.AsciiToString(t):null}childrenForFieldName(e){const t=this.tree.language.fields.indexOf(e);return-1!==t&&0!==t?this.childrenForFieldId(t):[]}childrenForFieldId(e){marshalNode(this),C._ts_node_children_by_field_id_wasm(this.tree[0],e);const t=C.getValue(TRANSFER_BUFFER,"i32"),s=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),n=new Array(t);if(t>0){let e=s;for(let s=0;s<t;s++)n[s]=unmarshalNode(this.tree,e),e+=SIZE_OF_NODE;C._free(s)}return n}firstChildForIndex(e){marshalNode(this);const t=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(t,e,"i32"),C._ts_node_first_child_for_byte_wasm(this.tree[0]),unmarshalNode(this.tree)}firstNamedChildForIndex(e){marshalNode(this);const t=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(t,e,"i32"),C._ts_node_first_named_child_for_byte_wasm(this.tree[0]),unmarshalNode(this.tree)}get childCount(){return marshalNode(this),C._ts_node_child_count_wasm(this.tree[0])}get namedChildCount(){return marshalNode(this),C._ts_node_named_child_count_wasm(this.tree[0])}get firstChild(){return this.child(0)}get firstNamedChild(){return this.namedChild(0)}get lastChild(){return this.child(this.childCount-1)}get lastNamedChild(){return this.namedChild(this.namedChildCount-1)}get children(){if(!this._children){marshalNode(this),C._ts_node_children_wasm(this.tree[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32");if(this._children=new Array(e),e>0){let s=t;for(let t=0;t<e;t++)this._children[t]=unmarshalNode(this.tree,s),s+=SIZE_OF_NODE;C._free(t)}}return this._children}get namedChildren(){if(!this._namedChildren){marshalNode(this),C._ts_node_named_children_wasm(this.tree[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32");if(this._namedChildren=new Array(e),e>0){let s=t;for(let t=0;t<e;t++)this._namedChildren[t]=unmarshalNode(this.tree,s),s+=SIZE_OF_NODE;C._free(t)}}return this._namedChildren}descendantsOfType(e,t=ZERO_POINT,s=ZERO_POINT){Array.isArray(e)||(e=[e]);const n=[],r=this.tree.language.types;for(const t of e)"ERROR"==t&&n.push(65535);for(let t=0,s=r.length;t<s;t++)e.includes(r[t])&&n.push(t);const i=C._malloc(SIZE_OF_INT*n.length);for(let e=0,t=n.length;e<t;e++)C.setValue(i+e*SIZE_OF_INT,n[e],"i32");marshalNode(this),C._ts_node_descendants_of_type_wasm(this.tree[0],i,n.length,t.row,t.column,s.row,s.column);const o=C.getValue(TRANSFER_BUFFER,"i32"),a=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),c=new Array(o);if(o>0){let e=a;for(let t=0;t<o;t++)c[t]=unmarshalNode(this.tree,e),e+=SIZE_OF_NODE}return C._free(a),C._free(i),c}get nextSibling(){return marshalNode(this),C._ts_node_next_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get previousSibling(){return marshalNode(this),C._ts_node_prev_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get nextNamedSibling(){return marshalNode(this),C._ts_node_next_named_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get previousNamedSibling(){return marshalNode(this),C._ts_node_prev_named_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get descendantCount(){return marshalNode(this),C._ts_node_descendant_count_wasm(this.tree[0])}get parent(){return marshalNode(this),C._ts_node_parent_wasm(this.tree[0]),unmarshalNode(this.tree)}childWithDescendant(e){return marshalNode(this),marshalNode(e,1),C._ts_node_child_with_descendant_wasm(this.tree[0]),unmarshalNode(this.tree)}descendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),C.setValue(s+SIZE_OF_INT,t,"i32"),C._ts_node_descendant_for_index_wasm(this.tree[0]),unmarshalNode(this.tree)}namedDescendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),C.setValue(s+SIZE_OF_INT,t,"i32"),C._ts_node_named_descendant_for_index_wasm(this.tree[0]),unmarshalNode(this.tree)}descendantForPosition(e,t=e){if(!isPoint(e)||!isPoint(t))throw new Error("Arguments must be {row, column} objects");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return marshalPoint(s,e),marshalPoint(s+SIZE_OF_POINT,t),C._ts_node_descendant_for_position_wasm(this.tree[0]),unmarshalNode(this.tree)}namedDescendantForPosition(e,t=e){if(!isPoint(e)||!isPoint(t))throw new Error("Arguments must be {row, column} objects");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return marshalPoint(s,e),marshalPoint(s+SIZE_OF_POINT,t),C._ts_node_named_descendant_for_position_wasm(this.tree[0]),unmarshalNode(this.tree)}walk(){return marshalNode(this),C._ts_tree_cursor_new_wasm(this.tree[0]),new TreeCursor(INTERNAL,this.tree)}edit(e){if(this.startIndex>=e.oldEndIndex){let t,s;this.startIndex=e.newEndIndex+(this.startIndex-e.oldEndIndex),this.startPosition.row>e.oldEndPosition.row?(t=this.startPosition.row-e.oldEndPosition.row,s=this.startPosition.column):(t=0,s=this.startPosition.column,this.startPosition.column>=e.oldEndPosition.column&&(s=this.startPosition.column-e.oldEndPosition.column)),t>0?(this.startPosition.row+=t,this.startPosition.column=s):this.startPosition.column+=s}else this.startIndex>e.startIndex&&(this.startIndex=e.newEndIndex,this.startPosition.row=e.newEndPosition.row,this.startPosition.column=e.newEndPosition.column)}toString(){marshalNode(this);const e=C._ts_node_to_string_wasm(this.tree[0]),t=C.AsciiToString(e);return C._free(e),t}};function unmarshalCaptures(e,t,s,n,r){for(let i=0,o=r.length;i<o;i++){const o=C.getValue(s,"i32"),a=unmarshalNode(t,s+=SIZE_OF_INT);s+=SIZE_OF_NODE,r[i]={patternIndex:n,name:e.captureNames[o],node:a}}return s}function marshalNode(e,t=0){let s=TRANSFER_BUFFER+t*SIZE_OF_NODE;C.setValue(s,e.id,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startIndex,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startPosition.row,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startPosition.column,"i32"),s+=SIZE_OF_INT,C.setValue(s,e[0],"i32")}function unmarshalNode(e,t=TRANSFER_BUFFER){const s=C.getValue(t,"i32");if(t+=SIZE_OF_INT,0===s)return null;const n=C.getValue(t,"i32");t+=SIZE_OF_INT;const r=C.getValue(t,"i32");t+=SIZE_OF_INT;const i=C.getValue(t,"i32");t+=SIZE_OF_INT;const o=C.getValue(t,"i32");return new Node(INTERNAL,{id:s,tree:e,startIndex:n,startPosition:{row:r,column:i},other:o})}function marshalTreeCursor(e,t=TRANSFER_BUFFER){C.setValue(t+0*SIZE_OF_INT,e[0],"i32"),C.setValue(t+1*SIZE_OF_INT,e[1],"i32"),C.setValue(t+2*SIZE_OF_INT,e[2],"i32"),C.setValue(t+3*SIZE_OF_INT,e[3],"i32")}function unmarshalTreeCursor(e){e[0]=C.getValue(TRANSFER_BUFFER+0*SIZE_OF_INT,"i32"),e[1]=C.getValue(TRANSFER_BUFFER+1*SIZE_OF_INT,"i32"),e[2]=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),e[3]=C.getValue(TRANSFER_BUFFER+3*SIZE_OF_INT,"i32")}function marshalPoint(e,t){C.setValue(e,t.row,"i32"),C.setValue(e+SIZE_OF_INT,t.column,"i32")}function unmarshalPoint(e){return{row:C.getValue(e,"i32")>>>0,column:C.getValue(e+SIZE_OF_INT,"i32")>>>0}}function marshalRange(e,t){marshalPoint(e,t.startPosition),marshalPoint(e+=SIZE_OF_POINT,t.endPosition),e+=SIZE_OF_POINT,C.setValue(e,t.startIndex,"i32"),e+=SIZE_OF_INT,C.setValue(e,t.endIndex,"i32"),e+=SIZE_OF_INT}function unmarshalRange(e){const t={};return t.startPosition=unmarshalPoint(e),e+=SIZE_OF_POINT,t.endPosition=unmarshalPoint(e),e+=SIZE_OF_POINT,t.startIndex=C.getValue(e,"i32")>>>0,e+=SIZE_OF_INT,t.endIndex=C.getValue(e,"i32")>>>0,t}function marshalEdit(e,t=TRANSFER_BUFFER){marshalPoint(t,e.startPosition),marshalPoint(t+=SIZE_OF_POINT,e.oldEndPosition),marshalPoint(t+=SIZE_OF_POINT,e.newEndPosition),t+=SIZE_OF_POINT,C.setValue(t,e.startIndex,"i32"),t+=SIZE_OF_INT,C.setValue(t,e.oldEndIndex,"i32"),t+=SIZE_OF_INT,C.setValue(t,e.newEndIndex,"i32"),t+=SIZE_OF_INT}function unmarshalLanguageMetadata(e){return{major_version:C.getValue(e,"i32"),minor_version:C.getValue(e+=SIZE_OF_INT,"i32"),patch_version:C.getValue(e+=SIZE_OF_INT,"i32")}}__name(unmarshalCaptures,"unmarshalCaptures"),__name(marshalNode,"marshalNode"),__name(unmarshalNode,"unmarshalNode"),__name(marshalTreeCursor,"marshalTreeCursor"),__name(unmarshalTreeCursor,"unmarshalTreeCursor"),__name(marshalPoint,"marshalPoint"),__name(unmarshalPoint,"unmarshalPoint"),__name(marshalRange,"marshalRange"),__name(unmarshalRange,"unmarshalRange"),__name(marshalEdit,"marshalEdit"),__name(unmarshalLanguageMetadata,"unmarshalLanguageMetadata");var LANGUAGE_FUNCTION_REGEX=/^tree_sitter_\w+$/,Language=class e{static{__name(this,"Language")}0=0;types;fields;constructor(e,t){assertInternal(e),this[0]=t,this.types=new Array(C._ts_language_symbol_count(this[0]));for(let e=0,t=this.types.length;e<t;e++)C._ts_language_symbol_type(this[0],e)<2&&(this.types[e]=C.UTF8ToString(C._ts_language_symbol_name(this[0],e)));this.fields=new Array(C._ts_language_field_count(this[0])+1);for(let e=0,t=this.fields.length;e<t;e++){const t=C._ts_language_field_name_for_id(this[0],e);this.fields[e]=0!==t?C.UTF8ToString(t):null}}get name(){const e=C._ts_language_name(this[0]);return 0===e?null:C.UTF8ToString(e)}get abiVersion(){return C._ts_language_abi_version(this[0])}get metadata(){C._ts_language_metadata_wasm(this[0]);return 0===C.getValue(TRANSFER_BUFFER,"i32")?null:unmarshalLanguageMetadata(TRANSFER_BUFFER+SIZE_OF_INT)}get fieldCount(){return this.fields.length-1}get stateCount(){return C._ts_language_state_count(this[0])}fieldIdForName(e){const t=this.fields.indexOf(e);return-1!==t?t:null}fieldNameForId(e){return this.fields[e]??null}idForNodeType(e,t){const s=C.lengthBytesUTF8(e),n=C._malloc(s+1);C.stringToUTF8(e,n,s+1);const r=C._ts_language_symbol_for_name(this[0],n,s,t?1:0);return C._free(n),r||null}get nodeTypeCount(){return C._ts_language_symbol_count(this[0])}nodeTypeForId(e){const t=C._ts_language_symbol_name(this[0],e);return t?C.UTF8ToString(t):null}nodeTypeIsNamed(e){return!!C._ts_language_type_is_named_wasm(this[0],e)}nodeTypeIsVisible(e){return!!C._ts_language_type_is_visible_wasm(this[0],e)}get supertypes(){C._ts_language_supertypes_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=C.getValue(n,"i16"),n+=SIZE_OF_SHORT}return s}subtypes(e){C._ts_language_subtypes_wasm(this[0],e);const t=C.getValue(TRANSFER_BUFFER,"i32"),s=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),n=new Array(t);if(t>0){let e=s;for(let s=0;s<t;s++)n[s]=C.getValue(e,"i16"),e+=SIZE_OF_SHORT}return n}nextState(e,t){return C._ts_language_next_state(this[0],e,t)}lookaheadIterator(e){const t=C._ts_lookahead_iterator_new(this[0],e);return t?new LookaheadIterator(INTERNAL,t,this):null}static async load(t){let s;if(t instanceof Uint8Array)s=t;else if(globalThis.process?.versions.node){const e=await Promise.resolve().then(__webpack_require__.t.bind(__webpack_require__,167,19));s=await e.readFile(t)}else{const e=await fetch(t);if(!e.ok){const t=await e.text();throw new Error(`Language.load failed with status ${e.status}.\n\n${t}`)}const n=e.clone();try{s=await WebAssembly.compileStreaming(e)}catch(e){console.error("wasm streaming compile failed:",e),console.error("falling back to ArrayBuffer instantiation"),s=new Uint8Array(await n.arrayBuffer())}}const n=await C.loadWebAssemblyModule(s,{loadAsync:!0}),r=Object.keys(n),i=r.find(e=>LANGUAGE_FUNCTION_REGEX.test(e)&&!e.includes("external_scanner_"));if(!i)throw console.log(`Couldn't find language function in Wasm file. Symbols:\n${JSON.stringify(r,null,2)}`),new Error("Language.load failed: no language function found in Wasm file");const o=n[i]();return new e(INTERNAL,o)}};async function Module2(moduleArg={}){var moduleRtn,Module=moduleArg,ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="undefined"!=typeof WorkerGlobalScope,ENVIRONMENT_IS_NODE="object"==typeof process&&process.versions?.node&&"renderer"!=process.type;if(ENVIRONMENT_IS_NODE){const{createRequire:e}=await Promise.resolve().then(__webpack_require__.t.bind(__webpack_require__,451,19));var require=e("file:///home/runner/work/apidom/apidom/node_modules/web-tree-sitter/web-tree-sitter.js")}Module.currentQueryProgressCallback=null,Module.currentProgressCallback=null,Module.currentLogCallback=null,Module.currentParseCallback=null;var arguments_=[],thisProgram="./this.program",quit_=__name((e,t)=>{throw t},"quit_"),_scriptName="file:///home/runner/work/apidom/apidom/node_modules/web-tree-sitter/web-tree-sitter.js",scriptDirectory="",readAsync,readBinary;function locateFile(e){return Module.locateFile?Module.locateFile(e,scriptDirectory):scriptDirectory+e}if(__name(locateFile,"locateFile"),ENVIRONMENT_IS_NODE){var fs=require("fs");_scriptName.startsWith("file:")&&(scriptDirectory=require("path").dirname(require("url").fileURLToPath(_scriptName))+"/"),readBinary=__name(e=>(e=isFileURI(e)?new URL(e):e,fs.readFileSync(e)),"readBinary"),readAsync=__name(async(e,t=!0)=>(e=isFileURI(e)?new URL(e):e,fs.readFileSync(e,t?void 0:"utf8")),"readAsync"),process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=__name((e,t)=>{throw process.exitCode=e,t},"quit_")}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}ENVIRONMENT_IS_WORKER&&(readBinary=__name(e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)},"readBinary")),readAsync=__name(async e=>{if(isFileURI(e))return new Promise((t,s)=>{var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?t(n.response):s(n.status)},n.onerror=s,n.send(null)});var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw new Error(t.status+" : "+t.url)},"readAsync")}var out=console.log.bind(console),err=console.error.bind(console),dynamicLibraries=[],wasmBinary,ABORT=!1,EXITSTATUS,isFileURI=__name(e=>e.startsWith("file://"),"isFileURI"),readyPromiseResolve,readyPromiseReject,wasmMemory,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,HEAP64,HEAPU64,HEAP_DATA_VIEW,runtimeInitialized=!1;function updateMemoryViews(){var e=wasmMemory.buffer;Module.HEAP8=HEAP8=new Int8Array(e),Module.HEAP16=HEAP16=new Int16Array(e),Module.HEAPU8=HEAPU8=new Uint8Array(e),Module.HEAPU16=HEAPU16=new Uint16Array(e),Module.HEAP32=HEAP32=new Int32Array(e),Module.HEAPU32=HEAPU32=new Uint32Array(e),Module.HEAPF32=HEAPF32=new Float32Array(e),Module.HEAPF64=HEAPF64=new Float64Array(e),Module.HEAP64=HEAP64=new BigInt64Array(e),Module.HEAPU64=HEAPU64=new BigUint64Array(e),Module.HEAP_DATA_VIEW=HEAP_DATA_VIEW=new DataView(e),LE_HEAP_UPDATE()}function initMemory(){if(Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var e=Module.INITIAL_MEMORY||33554432;wasmMemory=new WebAssembly.Memory({initial:e/65536,maximum:32768})}updateMemoryViews()}__name(updateMemoryViews,"updateMemoryViews"),__name(initMemory,"initMemory");var __RELOC_FUNCS__=[],wasmBinaryFile;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),wasmExports.__wasm_call_ctors(),callRuntimeCallbacks(onPostCtors)}function preMain(){}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(onPostRuns)}function abort(e){Module.onAbort?.(e),err(e="Aborted("+e+")"),ABORT=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw readyPromiseReject?.(t),t}function findWasmBinary(){return Module.locateFile?locateFile("web-tree-sitter.wasm"):new URL(__webpack_require__(841),__webpack_require__.b).href}function getBinarySync(e){if(e==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(e);throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(e){if(!wasmBinary)try{var t=await readAsync(e);return new Uint8Array(t)}catch{}return getBinarySync(e)}async function instantiateArrayBuffer(e,t){try{var s=await getWasmBinary(e);return await WebAssembly.instantiate(s,t)}catch(e){err(`failed to asynchronously prepare wasm: ${e}`),abort(e)}}async function instantiateAsync(e,t,s){if(!e&&!isFileURI(t)&&!ENVIRONMENT_IS_NODE)try{var n=fetch(t,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,s)}catch(e){err(`wasm streaming compile failed: ${e}`),err("falling back to ArrayBuffer instantiation")}return instantiateArrayBuffer(t,s)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}async function createWasm(){function e(e,t){wasmExports=e.exports,wasmExports=relocateExports(wasmExports,1024);var s=getDylinkMetadata(t);return s.neededDynlibs&&(dynamicLibraries=s.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),assignWasmExports(wasmExports),wasmExports}function t(t){return e(t.instance,t.module)}__name(e,"receiveInstance"),__name(t,"receiveInstantiationResult");var s=getWasmImports();return Module.instantiateWasm?new Promise((t,n)=>{Module.instantiateWasm(s,(s,n)=>{t(e(s,n))})}):(wasmBinaryFile??=findWasmBinary(),t(await instantiateAsync(wasmBinary,wasmBinaryFile,s)))}__name(preRun,"preRun"),__name(initRuntime,"initRuntime"),__name(preMain,"preMain"),__name(postRun,"postRun"),__name(abort,"abort"),__name(findWasmBinary,"findWasmBinary"),__name(getBinarySync,"getBinarySync"),__name(getWasmBinary,"getWasmBinary"),__name(instantiateArrayBuffer,"instantiateArrayBuffer"),__name(instantiateAsync,"instantiateAsync"),__name(getWasmImports,"getWasmImports"),__name(createWasm,"createWasm");class ExitStatus{static{__name(this,"ExitStatus")}name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(e,t){var s=GOT[t];return s||(s=GOT[t]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(t)||(s.required=!0),s}},LE_ATOMICS_NATIVE_BYTE_ORDER=[],LE_HEAP_LOAD_F32=__name(e=>HEAP_DATA_VIEW.getFloat32(e,!0),"LE_HEAP_LOAD_F32"),LE_HEAP_LOAD_F64=__name(e=>HEAP_DATA_VIEW.getFloat64(e,!0),"LE_HEAP_LOAD_F64"),LE_HEAP_LOAD_I16=__name(e=>HEAP_DATA_VIEW.getInt16(e,!0),"LE_HEAP_LOAD_I16"),LE_HEAP_LOAD_I32=__name(e=>HEAP_DATA_VIEW.getInt32(e,!0),"LE_HEAP_LOAD_I32"),LE_HEAP_LOAD_I64=__name(e=>HEAP_DATA_VIEW.getBigInt64(e,!0),"LE_HEAP_LOAD_I64"),LE_HEAP_LOAD_U32=__name(e=>HEAP_DATA_VIEW.getUint32(e,!0),"LE_HEAP_LOAD_U32"),LE_HEAP_STORE_F32=__name((e,t)=>HEAP_DATA_VIEW.setFloat32(e,t,!0),"LE_HEAP_STORE_F32"),LE_HEAP_STORE_F64=__name((e,t)=>HEAP_DATA_VIEW.setFloat64(e,t,!0),"LE_HEAP_STORE_F64"),LE_HEAP_STORE_I16=__name((e,t)=>HEAP_DATA_VIEW.setInt16(e,t,!0),"LE_HEAP_STORE_I16"),LE_HEAP_STORE_I32=__name((e,t)=>HEAP_DATA_VIEW.setInt32(e,t,!0),"LE_HEAP_STORE_I32"),LE_HEAP_STORE_I64=__name((e,t)=>HEAP_DATA_VIEW.setBigInt64(e,t,!0),"LE_HEAP_STORE_I64"),LE_HEAP_STORE_U32=__name((e,t)=>HEAP_DATA_VIEW.setUint32(e,t,!0),"LE_HEAP_STORE_U32"),callRuntimeCallbacks=__name(e=>{for(;e.length>0;)e.shift()(Module)},"callRuntimeCallbacks"),onPostRuns=[],addOnPostRun=__name(e=>onPostRuns.push(e),"addOnPostRun"),onPreRuns=[],addOnPreRun=__name(e=>onPreRuns.push(e),"addOnPreRun"),UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder:void 0,findStringEnd=__name((e,t,s,n)=>{var r=t+s;if(n)return r;for(;e[t]&&!(t>=r);)++t;return t},"findStringEnd"),UTF8ArrayToString=__name((e,t=0,s,n)=>{var r=findStringEnd(e,t,s,n);if(r-t>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var i="";t<r;){var o=e[t++];if(128&o){var a=63&e[t++];if(192!=(224&o)){var c=63&e[t++];if((o=224==(240&o)?(15&o)<<12|a<<6|c:(7&o)<<18|a<<12|c<<6|63&e[t++])<65536)i+=String.fromCharCode(o);else{var l=o-65536;i+=String.fromCharCode(55296|l>>10,56320|1023&l)}}else i+=String.fromCharCode((31&o)<<6|a)}else i+=String.fromCharCode(o)}return i},"UTF8ArrayToString"),getDylinkMetadata=__name(e=>{var t=0,s=0;function n(){return e[t++]}function r(){for(var s=0,n=1;;){var r=e[t++];if(s+=(127&r)*n,n*=128,!(128&r))break}return s}function i(){var s=r();return UTF8ArrayToString(e,(t+=s)-s,s)}function o(){for(var e=r(),t=[];e--;)t.push(i());return t}function a(e,t){if(e)throw new Error(t)}if(__name(n,"getU8"),__name(r,"getLEB"),__name(i,"getString"),__name(o,"getStringList"),__name(a,"failIf"),e instanceof WebAssembly.Module){var c=WebAssembly.Module.customSections(e,"dylink.0");a(0===c.length,"need dylink section"),s=(e=new Uint8Array(c[0])).length}else{var l=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer);a(!(1836278016==l[0]||6386541==l[0]),"need to see wasm magic number"),a(0!==e[8],"need the dylink section to be first"),t=9;var u=r();s=t+u,a("dylink.0"!==i())}for(var d={neededDynlibs:[],tlsExports:new Set,weakImports:new Set,runtimePaths:[]};t<s;){var h=n(),p=r();if(1===h)d.memorySize=r(),d.memoryAlign=r(),d.tableSize=r(),d.tableAlign=r();else if(2===h)d.neededDynlibs=o();else if(3===h)for(var m=r();m--;){var _=i();256&r()&&d.tlsExports.add(_)}else if(4===h)for(m=r();m--;){i(),_=i();1==(3&r())&&d.weakImports.add(_)}else 5===h?d.runtimePaths=o():t+=p}return d},"getDylinkMetadata");function getValue(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":return HEAP8[e];case"i16":return LE_HEAP_LOAD_I16(2*(e>>1));case"i32":return LE_HEAP_LOAD_I32(4*(e>>2));case"i64":return LE_HEAP_LOAD_I64(8*(e>>3));case"float":return LE_HEAP_LOAD_F32(4*(e>>2));case"double":return LE_HEAP_LOAD_F64(8*(e>>3));case"*":return LE_HEAP_LOAD_U32(4*(e>>2));default:abort(`invalid type for getValue: ${t}`)}}__name(getValue,"getValue");var newDSO=__name((e,t,s)=>{var n={refcount:1/0,name:e,exports:s,global:!0};return LDSO.loadedLibsByName[e]=n,null!=t&&(LDSO.loadedLibsByHandle[t]=n),n},"newDSO"),LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=78240,alignMemory=__name((e,t)=>Math.ceil(e/t)*t,"alignMemory"),getMemory=__name(e=>{if(runtimeInitialized)return _calloc(e,1);var t=___heap_base,s=t+alignMemory(e,16);return ___heap_base=s,GOT.__heap_base.value=s,t},"getMemory"),isInternalSym=__name(e=>["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm","__start_em_js","__stop_em_js"].includes(e)||e.startsWith("__em_js__"),"isInternalSym"),uleb128EncodeWithLen=__name(e=>{const t=e.length;return[t%128|128,t>>7,...e]},"uleb128EncodeWithLen"),wasmTypeCodes={i:127,p:127,j:126,f:125,d:124,e:111},generateTypePack=__name(e=>uleb128EncodeWithLen(Array.from(e,e=>wasmTypeCodes[e])),"generateTypePack"),convertJsFunctionToWasm=__name((e,t)=>{var s=Uint8Array.of(0,97,115,109,1,0,0,0,1,...uleb128EncodeWithLen([1,96,...generateTypePack(t.slice(1)),...generateTypePack("v"===t[0]?"":t[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),n=new WebAssembly.Module(s);return new WebAssembly.Instance(n,{e:{f:e}}).exports.f},"convertJsFunctionToWasm"),wasmTableMirror=[],wasmTable=new WebAssembly.Table({initial:31,element:"anyfunc"}),getWasmTableEntry=__name(e=>{var t=wasmTableMirror[e];return t||(wasmTableMirror[e]=t=wasmTable.get(e)),t},"getWasmTableEntry"),updateTableMap=__name((e,t)=>{if(functionsInTableMap)for(var s=e;s<e+t;s++){var n=getWasmTableEntry(s);n&&functionsInTableMap.set(n,s)}},"updateTableMap"),functionsInTableMap,getFunctionAddress=__name(e=>(functionsInTableMap||(functionsInTableMap=new WeakMap,updateTableMap(0,wasmTable.length)),functionsInTableMap.get(e)||0),"getFunctionAddress"),freeTableIndexes=[],getEmptyTableSlot=__name(()=>freeTableIndexes.length?freeTableIndexes.pop():wasmTable.grow(1),"getEmptyTableSlot"),setWasmTableEntry=__name((e,t)=>{wasmTable.set(e,t),wasmTableMirror[e]=wasmTable.get(e)},"setWasmTableEntry"),addFunction=__name((e,t)=>{var s=getFunctionAddress(e);if(s)return s;var n=getEmptyTableSlot();try{setWasmTableEntry(n,e)}catch(s){if(!(s instanceof TypeError))throw s;var r=convertJsFunctionToWasm(e,t);setWasmTableEntry(n,r)}return functionsInTableMap.set(e,n),n},"addFunction"),updateGOT=__name((e,t)=>{for(var s in e)if(!isInternalSym(s)){var n=e[s];GOT[s]||=new WebAssembly.Global({value:"i32",mutable:!0}),(t||0==GOT[s].value)&&("function"==typeof n?GOT[s].value=addFunction(n):"number"==typeof n?GOT[s].value=n:err(`unhandled export type for '${s}': ${typeof n}`))}},"updateGOT"),relocateExports=__name((e,t,s)=>{var n={};for(var r in e){var i=e[r];"object"==typeof i&&(i=i.value),"number"==typeof i&&(i+=t),n[r]=i}return updateGOT(n,s),n},"relocateExports"),isSymbolDefined=__name(e=>{var t=wasmImports[e];return!(!t||t.stub)},"isSymbolDefined"),dynCall=__name((e,t,s=[],n=!1)=>{var r=getWasmTableEntry(t)(...s);function i(e){return e}return __name(i,"convert"),r},"dynCall"),stackSave=__name(()=>_emscripten_stack_get_current(),"stackSave"),stackRestore=__name(e=>__emscripten_stack_restore(e),"stackRestore"),createInvokeFunction=__name(e=>(t,...s)=>{var n=stackSave();try{return dynCall(e,t,s)}catch(t){if(stackRestore(n),t!==t+0)throw t;if(_setThrew(1,0),"j"==e[0])return 0n}},"createInvokeFunction"),resolveGlobalSymbol=__name((e,t=!1)=>{var s;return isSymbolDefined(e)?s=wasmImports[e]:e.startsWith("invoke_")&&(s=wasmImports[e]=createInvokeFunction(e.split("_")[1])),{sym:s,name:e}},"resolveGlobalSymbol"),onPostCtors=[],addOnPostCtor=__name(e=>onPostCtors.push(e),"addOnPostCtor"),UTF8ToString=__name((e,t,s)=>e?UTF8ArrayToString(HEAPU8,e,t,s):"","UTF8ToString"),loadWebAssemblyModule=__name((binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);function loadModule(){var memAlign=Math.pow(2,metadata.memoryAlign),memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0,moduleExports;function resolveSymbol(e){var t=resolveGlobalSymbol(e).sym;return!t&&localScope&&(t=localScope[e]),t||(t=moduleExports[e]),t}handle&&(HEAP8[handle+8]=1,LE_HEAP_STORE_U32(4*(handle+12>>2),memoryBase),LE_HEAP_STORE_I32(4*(handle+16>>2),metadata.memorySize),LE_HEAP_STORE_U32(4*(handle+20>>2),tableBase),LE_HEAP_STORE_I32(4*(handle+24>>2),metadata.tableSize)),metadata.tableSize&&wasmTable.grow(metadata.tableSize),__name(resolveSymbol,"resolveSymbol");var proxyHandler={get(e,t){switch(t){case"__memory_base":return memoryBase;case"__table_base":return tableBase}var s;if(t in wasmImports&&!wasmImports[t].stub)return wasmImports[t];t in e||(e[t]=(...e)=>(s||=resolveSymbol(t),s(...e)));return e[t]}},proxy=new Proxy({},proxyHandler);currentModuleWeakSymbols=metadata.weakImports;var info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&-1!=body.indexOf("$"+arity);arity++)args.push("$"+arity);args=args.join(",");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if(updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols(),__name(addEmAsm,"addEmAsm"),"__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;start<stop;){var jsString=UTF8ToString(start);addEmAsm(start,jsString),start=HEAPU8.indexOf(0,start)+1}function addEmJs(name,cSig,body){var jsArgs=[];if(cSig=cSig.slice(1,-1),"void"!=cSig)for(var i in cSig=cSig.split(","),cSig){var jsArg=cSig[i].split(" ").pop();jsArgs.push(jsArg.replace("*",""))}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}for(var name in __name(addEmJs,"addEmJs"),moduleExports)if(name.startsWith("__em_js__")){var start=moduleExports[name],jsString=UTF8ToString(start),parts=jsString.split("<::>");addEmJs(name.replace("__em_js__",""),parts[0],parts[1]),delete moduleExports[name]}var applyRelocs=moduleExports.__wasm_apply_data_relocs;applyRelocs&&(runtimeInitialized?applyRelocs():__RELOC_FUNCS__.push(applyRelocs));var init=moduleExports.__wasm_call_ctors;return init&&(runtimeInitialized?init():addOnPostCtor(init)),moduleExports}if(__name(postInstantiation,"postInstantiation"),flags.loadAsync)return(async()=>{var e;return binary instanceof WebAssembly.Module?e=new WebAssembly.Instance(binary,info):({module:binary,instance:e}=await WebAssembly.instantiate(binary,info)),postInstantiation(binary,e)})();var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary),instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}return __name(loadModule,"loadModule"),flags={...flags,rpath:{parentLibPath:libName,paths:metadata.runtimePaths}},flags.loadAsync?metadata.neededDynlibs.reduce((e,t)=>e.then(()=>loadDynamicLibrary(t,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(e=>loadDynamicLibrary(e,flags,localScope)),loadModule())},"loadWebAssemblyModule"),mergeLibSymbols=__name((e,t)=>{for(var[s,n]of Object.entries(e)){const e=__name(e=>{isSymbolDefined(e)||(wasmImports[e]=n)},"setImport");e(s);const t="__main_argc_argv";"main"==s&&e(t),s==t&&e("main")}},"mergeLibSymbols"),asyncLoad=__name(async e=>{var t=await readAsync(e);return new Uint8Array(t)},"asyncLoad");function loadDynamicLibrary(e,t={global:!0,nodelete:!0},s,n){var r=LDSO.loadedLibsByName[e];if(r)return t.global?r.global||(r.global=!0,mergeLibSymbols(r.exports,e)):s&&Object.assign(s,r.exports),t.nodelete&&r.refcount!==1/0&&(r.refcount=1/0),r.refcount++,n&&(LDSO.loadedLibsByHandle[n]=r),!t.loadAsync||Promise.resolve(!0);function i(){if(n){var s=LE_HEAP_LOAD_U32(4*(n+28>>2)),r=LE_HEAP_LOAD_U32(4*(n+32>>2));if(s&&r){var i=HEAP8.slice(s,s+r);return t.loadAsync?Promise.resolve(i):i}}var o=locateFile(e);if(t.loadAsync)return asyncLoad(o);if(!readBinary)throw new Error(`${o}: file not found, and synchronous loading of external files is not available`);return readBinary(o)}function o(){return t.loadAsync?i().then(r=>loadWebAssemblyModule(r,t,e,s,n)):loadWebAssemblyModule(i(),t,e,s,n)}function a(t){r.global?mergeLibSymbols(t,e):s&&Object.assign(s,t),r.exports=t}return(r=newDSO(e,n,"loading")).refcount=t.nodelete?1/0:1,r.global=t.global,__name(i,"loadLibData"),__name(o,"getExports"),__name(a,"moduleLoaded"),t.loadAsync?o().then(e=>(a(e),!0)):(a(o()),!0)}__name(loadDynamicLibrary,"loadDynamicLibrary");var reportUndefinedSymbols=__name(()=>{for(var[e,t]of Object.entries(GOT))if(0==t.value){var s=resolveGlobalSymbol(e,!0).sym;if(!s&&!t.required)continue;if("function"==typeof s)t.value=addFunction(s,s.sig);else{if("number"!=typeof s)throw new Error(`bad export type for '${e}': ${typeof s}`);t.value=s}}},"reportUndefinedSymbols"),runDependencies=0,dependenciesFulfilled=null,removeRunDependency=__name(e=>{if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),0==runDependencies&&dependenciesFulfilled){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}},"removeRunDependency"),addRunDependency=__name(e=>{runDependencies++,Module.monitorRunDependencies?.(runDependencies)},"addRunDependency"),loadDylibs=__name(async()=>{if(dynamicLibraries.length){for(var e of(addRunDependency("loadDylibs"),dynamicLibraries))await loadDynamicLibrary(e,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0});reportUndefinedSymbols(),removeRunDependency("loadDylibs")}else reportUndefinedSymbols()},"loadDylibs"),noExitRuntime=!0;function setValue(e,t,s="i8"){switch(s.endsWith("*")&&(s="*"),s){case"i1":case"i8":HEAP8[e]=t;break;case"i16":LE_HEAP_STORE_I16(2*(e>>1),t);break;case"i32":LE_HEAP_STORE_I32(4*(e>>2),t);break;case"i64":LE_HEAP_STORE_I64(8*(e>>3),BigInt(t));break;case"float":LE_HEAP_STORE_F32(4*(e>>2),t);break;case"double":LE_HEAP_STORE_F64(8*(e>>3),t);break;case"*":LE_HEAP_STORE_U32(4*(e>>2),t);break;default:abort(`invalid type for setValue: ${s}`)}}__name(setValue,"setValue");var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_high=78240,___stack_low=12704,___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},78240),___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=__name(()=>abort(""),"__abort_js");__abort_js.sig="v";var getHeapMax=__name(()=>2147483648,"getHeapMax"),growMemory=__name(e=>{var t=(e-wasmMemory.buffer.byteLength+65535)/65536|0;try{return wasmMemory.grow(t),updateMemoryViews(),1}catch(e){}},"growMemory"),_emscripten_resize_heap=__name(e=>{var t=HEAPU8.length;e>>>=0;var s=getHeapMax();if(e>s)return!1;for(var n=1;n<=4;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);var i=Math.min(s,alignMemory(Math.max(e,r),65536));if(growMemory(i))return!0}return!1},"_emscripten_resize_heap");_emscripten_resize_heap.sig="ip";var _fd_close=__name(e=>52,"_fd_close");_fd_close.sig="ii";var INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=__name(e=>e<INT53_MIN||e>INT53_MAX?NaN:Number(e),"bigintToI53Checked");function _fd_seek(e,t,s,n){return t=bigintToI53Checked(t),70}__name(_fd_seek,"_fd_seek"),_fd_seek.sig="iijip";var printCharBuffers=[null,[],[]],printChar=__name((e,t)=>{var s=printCharBuffers[e];0===t||10===t?((1===e?out:err)(UTF8ArrayToString(s)),s.length=0):s.push(t)},"printChar"),_fd_write=__name((e,t,s,n)=>{for(var r=0,i=0;i<s;i++){var o=LE_HEAP_LOAD_U32(4*(t>>2)),a=LE_HEAP_LOAD_U32(4*(t+4>>2));t+=8;for(var c=0;c<a;c++)printChar(e,HEAPU8[o+c]);r+=a}return LE_HEAP_STORE_U32(4*(n>>2),r),0},"_fd_write");function _tree_sitter_log_callback(e,t){if(Module.currentLogCallback){const s=UTF8ToString(t);Module.currentLogCallback(s,0!==e)}}function _tree_sitter_parse_callback(e,t,s,n,r){const i=Module.currentParseCallback(t,{row:s,column:n});"string"==typeof i?(setValue(r,i.length,"i32"),stringToUTF16(i,e,10240)):setValue(r,0,"i32")}function _tree_sitter_progress_callback(e,t){return!!Module.currentProgressCallback&&Module.currentProgressCallback({currentOffset:e,hasError:t})}function _tree_sitter_query_progress_callback(e){return!!Module.currentQueryProgressCallback&&Module.currentQueryProgressCallback({currentOffset:e})}_fd_write.sig="iippp",__name(_tree_sitter_log_callback,"_tree_sitter_log_callback"),__name(_tree_sitter_parse_callback,"_tree_sitter_parse_callback"),__name(_tree_sitter_progress_callback,"_tree_sitter_progress_callback"),__name(_tree_sitter_query_progress_callback,"_tree_sitter_query_progress_callback");var runtimeKeepaliveCounter=0,keepRuntimeAlive=__name(()=>noExitRuntime||runtimeKeepaliveCounter>0,"keepRuntimeAlive"),_proc_exit=__name(e=>{EXITSTATUS=e,keepRuntimeAlive()||(Module.onExit?.(e),ABORT=!0),quit_(e,new ExitStatus(e))},"_proc_exit");_proc_exit.sig="vi";var exitJS=__name((e,t)=>{EXITSTATUS=e,_proc_exit(e)},"exitJS"),handleException=__name(e=>{if(e instanceof ExitStatus||"unwind"==e)return EXITSTATUS;quit_(1,e)},"handleException"),lengthBytesUTF8=__name(e=>{for(var t=0,s=0;s<e.length;++s){var n=e.charCodeAt(s);n<=127?t++:n<=2047?t+=2:n>=55296&&n<=57343?(t+=4,++s):t+=3}return t},"lengthBytesUTF8"),stringToUTF8Array=__name((e,t,s,n)=>{if(!(n>0))return 0;for(var r=s,i=s+n-1,o=0;o<e.length;++o){var a=e.codePointAt(o);if(a<=127){if(s>=i)break;t[s++]=a}else if(a<=2047){if(s+1>=i)break;t[s++]=192|a>>6,t[s++]=128|63&a}else if(a<=65535){if(s+2>=i)break;t[s++]=224|a>>12,t[s++]=128|a>>6&63,t[s++]=128|63&a}else{if(s+3>=i)break;t[s++]=240|a>>18,t[s++]=128|a>>12&63,t[s++]=128|a>>6&63,t[s++]=128|63&a,o++}}return t[s]=0,s-r},"stringToUTF8Array"),stringToUTF8=__name((e,t,s)=>stringToUTF8Array(e,HEAPU8,t,s),"stringToUTF8"),stackAlloc=__name(e=>__emscripten_stack_alloc(e),"stackAlloc"),stringToUTF8OnStack=__name(e=>{var t=lengthBytesUTF8(e)+1,s=stackAlloc(t);return stringToUTF8(e,s,t),s},"stringToUTF8OnStack"),AsciiToString=__name(e=>{for(var t="";;){var s=HEAPU8[e++];if(!s)return t;t+=String.fromCharCode(s)}},"AsciiToString"),stringToUTF16=__name((e,t,s)=>{if(s??=2147483647,s<2)return 0;for(var n=t,r=(s-=2)<2*e.length?s/2:e.length,i=0;i<r;++i){var o=e.charCodeAt(i);LE_HEAP_STORE_I16(2*(t>>1),o),t+=2}return LE_HEAP_STORE_I16(2*(t>>1),0),t-n},"stringToUTF16");function LE_HEAP_UPDATE(){HEAPU16.unsigned=e=>65535&e,HEAPU32.unsigned=e=>e>>>0}if(LE_ATOMICS_NATIVE_BYTE_ORDER=1===new Int8Array(new Int16Array([1]).buffer)[0]?[e=>e,e=>e,void 0,e=>e]:[e=>e,e=>((65280&e)<<8|(255&e)<<24)>>16,void 0,e=>e>>24&255|e>>8&65280|(65280&e)<<8|(255&e)<<24],__name(LE_HEAP_UPDATE,"LE_HEAP_UPDATE"),initMemory(),Module.noExitRuntime&&(noExitRuntime=Module.noExitRuntime),Module.print&&(out=Module.print),Module.printErr&&(err=Module.printErr),Module.dynamicLibraries&&(dynamicLibraries=Module.dynamicLibraries),Module.wasmBinary&&(wasmBinary=Module.wasmBinary),Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram),Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.shift()();Module.setValue=setValue,Module.getValue=getValue,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.AsciiToString=AsciiToString,Module.stringToUTF16=stringToUTF16,Module.loadWebAssemblyModule=loadWebAssemblyModule,Module.LE_HEAP_STORE_I64=LE_HEAP_STORE_I64;var ASM_CONSTS={},_malloc,_calloc,_realloc,_free,_ts_range_edit,_memcmp,_ts_language_symbol_count,_ts_language_state_count,_ts_language_abi_version,_ts_language_name,_ts_language_field_count,_ts_language_next_state,_ts_language_symbol_name,_ts_language_symbol_for_name,_strncmp,_ts_language_symbol_type,_ts_language_field_name_for_id,_ts_lookahead_iterator_new,_ts_lookahead_iterator_delete,_ts_lookahead_iterator_reset_state,_ts_lookahead_iterator_reset,_ts_lookahead_iterator_next,_ts_lookahead_iterator_current_symbol,_ts_point_edit,_ts_parser_delete,_ts_parser_reset,_ts_parser_set_language,_ts_parser_set_included_ranges,_ts_query_new,_ts_query_delete,_iswspace,_iswalnum,_ts_query_pattern_count,_ts_query_capture_count,_ts_query_string_count,_ts_query_capture_name_for_id,_ts_query_capture_quantifier_for_id,_ts_query_string_value_for_id,_ts_query_predicates_for_pattern,_ts_query_start_byte_for_pattern,_ts_query_end_byte_for_pattern,_ts_query_is_pattern_rooted,_ts_query_is_pattern_non_local,_ts_query_is_pattern_guaranteed_at_step,_ts_query_disable_capture,_ts_query_disable_pattern,_ts_tree_copy,_ts_tree_delete,_ts_init,_ts_parser_new_wasm,_ts_parser_enable_logger_wasm,_ts_parser_parse_wasm,_ts_parser_included_ranges_wasm,_ts_language_type_is_named_wasm,_ts_language_type_is_visible_wasm,_ts_language_metadata_wasm,_ts_language_supertypes_wasm,_ts_language_subtypes_wasm,_ts_tree_root_node_wasm,_ts_tree_root_node_with_offset_wasm,_ts_tree_edit_wasm,_ts_tree_included_ranges_wasm,_ts_tree_get_changed_ranges_wasm,_ts_tree_cursor_new_wasm,_ts_tree_cursor_copy_wasm,_ts_tree_cursor_delete_wasm,_ts_tree_cursor_reset_wasm,_ts_tree_cursor_reset_to_wasm,_ts_tree_cursor_goto_first_child_wasm,_ts_tree_cursor_goto_last_child_wasm,_ts_tree_cursor_goto_first_child_for_index_wasm,_ts_tree_cursor_goto_first_child_for_position_wasm,_ts_tree_cursor_goto_next_sibling_wasm,_ts_tree_cursor_goto_previous_sibling_wasm,_ts_tree_cursor_goto_descendant_wasm,_ts_tree_cursor_goto_parent_wasm,_ts_tree_cursor_current_node_type_id_wasm,_ts_tree_cursor_current_node_state_id_wasm,_ts_tree_cursor_current_node_is_named_wasm,_ts_tree_cursor_current_node_is_missing_wasm,_ts_tree_cursor_current_node_id_wasm,_ts_tree_cursor_start_position_wasm,_ts_tree_cursor_end_position_wasm,_ts_tree_cursor_start_index_wasm,_ts_tree_cursor_end_index_wasm,_ts_tree_cursor_current_field_id_wasm,_ts_tree_cursor_current_depth_wasm,_ts_tree_cursor_current_descendant_index_wasm,_ts_tree_cursor_current_node_wasm,_ts_node_symbol_wasm,_ts_node_field_name_for_child_wasm,_ts_node_field_name_for_named_child_wasm,_ts_node_children_by_field_id_wasm,_ts_node_first_child_for_byte_wasm,_ts_node_first_named_child_for_byte_wasm,_ts_node_grammar_symbol_wasm,_ts_node_child_count_wasm,_ts_node_named_child_count_wasm,_ts_node_child_wasm,_ts_node_named_child_wasm,_ts_node_child_by_field_id_wasm,_ts_node_next_sibling_wasm,_ts_node_prev_sibling_wasm,_ts_node_next_named_sibling_wasm,_ts_node_prev_named_sibling_wasm,_ts_node_descendant_count_wasm,_ts_node_parent_wasm,_ts_node_child_with_descendant_wasm,_ts_node_descendant_for_index_wasm,_ts_node_named_descendant_for_index_wasm,_ts_node_descendant_for_position_wasm,_ts_node_named_descendant_for_position_wasm,_ts_node_start_point_wasm,_ts_node_end_point_wasm,_ts_node_start_index_wasm,_ts_node_end_index_wasm,_ts_node_to_string_wasm,_ts_node_children_wasm,_ts_node_named_children_wasm,_ts_node_descendants_of_type_wasm,_ts_node_is_named_wasm,_ts_node_has_changes_wasm,_ts_node_has_error_wasm,_ts_node_is_error_wasm,_ts_node_is_missing_wasm,_ts_node_is_extra_wasm,_ts_node_parse_state_wasm,_ts_node_next_parse_state_wasm,_ts_query_matches_wasm,_ts_query_captures_wasm,_memset,_memcpy,_memmove,_iswalpha,_iswblank,_iswdigit,_iswlower,_iswupper,_iswxdigit,_memchr,_strlen,_strcmp,_strncat,_strncpy,_towlower,_towupper,_setThrew,__emscripten_stack_restore,__emscripten_stack_alloc,_emscripten_stack_get_current,___wasm_apply_data_relocs;function assignWasmExports(e){Module._malloc=_malloc=e.malloc,Module._calloc=_calloc=e.calloc,Module._realloc=_realloc=e.realloc,Module._free=_free=e.free,Module._ts_range_edit=_ts_range_edit=e.ts_range_edit,Module._memcmp=_memcmp=e.memcmp,Module._ts_language_symbol_count=_ts_language_symbol_count=e.ts_language_symbol_count,Module._ts_language_state_count=_ts_language_state_count=e.ts_language_state_count,Module._ts_language_abi_version=_ts_language_abi_version=e.ts_language_abi_version,Module._ts_language_name=_ts_language_name=e.ts_language_name,Module._ts_language_field_count=_ts_language_field_count=e.ts_language_field_count,Module._ts_language_next_state=_ts_language_next_state=e.ts_language_next_state,Module._ts_language_symbol_name=_ts_language_symbol_name=e.ts_language_symbol_name,Module._ts_language_symbol_for_name=_ts_language_symbol_for_name=e.ts_language_symbol_for_name,Module._strncmp=_strncmp=e.strncmp,Module._ts_language_symbol_type=_ts_language_symbol_type=e.ts_language_symbol_type,Module._ts_language_field_name_for_id=_ts_language_field_name_for_id=e.ts_language_field_name_for_id,Module._ts_lookahead_iterator_new=_ts_lookahead_iterator_new=e.ts_lookahead_iterator_new,Module._ts_lookahead_iterator_delete=_ts_lookahead_iterator_delete=e.ts_lookahead_iterator_delete,Module._ts_lookahead_iterator_reset_state=_ts_lookahead_iterator_reset_state=e.ts_lookahead_iterator_reset_state,Module._ts_lookahead_iterator_reset=_ts_lookahead_iterator_reset=e.ts_lookahead_iterator_reset,Module._ts_lookahead_iterator_next=_ts_lookahead_iterator_next=e.ts_lookahead_iterator_next,Module._ts_lookahead_iterator_current_symbol=_ts_lookahead_iterator_current_symbol=e.ts_lookahead_iterator_current_symbol,Module._ts_point_edit=_ts_point_edit=e.ts_point_edit,Module._ts_parser_delete=_ts_parser_delete=e.ts_parser_delete,Module._ts_parser_reset=_ts_parser_reset=e.ts_parser_reset,Module._ts_parser_set_language=_ts_parser_set_language=e.ts_parser_set_language,Module._ts_parser_set_included_ranges=_ts_parser_set_included_ranges=e.ts_parser_set_included_ranges,Module._ts_query_new=_ts_query_new=e.ts_query_new,Module._ts_query_delete=_ts_query_delete=e.ts_query_delete,Module._iswspace=_iswspace=e.iswspace,Module._iswalnum=_iswalnum=e.iswalnum,Module._ts_query_pattern_count=_ts_query_pattern_count=e.ts_query_pattern_count,Module._ts_query_capture_count=_ts_query_capture_count=e.ts_query_capture_count,Module._ts_query_string_count=_ts_query_string_count=e.ts_query_string_count,Module._ts_query_capture_name_for_id=_ts_query_capture_name_for_id=e.ts_query_capture_name_for_id,Module._ts_query_capture_quantifier_for_id=_ts_query_capture_quantifier_for_id=e.ts_query_capture_quantifier_for_id,Module._ts_query_string_value_for_id=_ts_query_string_value_for_id=e.ts_query_string_value_for_id,Module._ts_query_predicates_for_pattern=_ts_query_predicates_for_pattern=e.ts_query_predicates_for_pattern,Module._ts_query_start_byte_for_pattern=_ts_query_start_byte_for_pattern=e.ts_query_start_byte_for_pattern,Module._ts_query_end_byte_for_pattern=_ts_query_end_byte_for_pattern=e.ts_query_end_byte_for_pattern,Module._ts_query_is_pattern_rooted=_ts_query_is_pattern_rooted=e.ts_query_is_pattern_rooted,Module._ts_query_is_pattern_non_local=_ts_query_is_pattern_non_local=e.ts_query_is_pattern_non_local,Module._ts_query_is_pattern_guaranteed_at_step=_ts_query_is_pattern_guaranteed_at_step=e.ts_query_is_pattern_guaranteed_at_step,Module._ts_query_disable_capture=_ts_query_disable_capture=e.ts_query_disable_capture,Module._ts_query_disable_pattern=_ts_query_disable_pattern=e.ts_query_disable_pattern,Module._ts_tree_copy=_ts_tree_copy=e.ts_tree_copy,Module._ts_tree_delete=_ts_tree_delete=e.ts_tree_delete,Module._ts_init=_ts_init=e.ts_init,Module._ts_parser_new_wasm=_ts_parser_new_wasm=e.ts_parser_new_wasm,Module._ts_parser_enable_logger_wasm=_ts_parser_enable_logger_wasm=e.ts_parser_enable_logger_wasm,Module._ts_parser_parse_wasm=_ts_parser_parse_wasm=e.ts_parser_parse_wasm,Module._ts_parser_included_ranges_wasm=_ts_parser_included_ranges_wasm=e.ts_parser_included_ranges_wasm,Module._ts_language_type_is_named_wasm=_ts_language_type_is_named_wasm=e.ts_language_type_is_named_wasm,Module._ts_language_type_is_visible_wasm=_ts_language_type_is_visible_wasm=e.ts_language_type_is_visible_wasm,Module._ts_language_metadata_wasm=_ts_language_metadata_wasm=e.ts_language_metadata_wasm,Module._ts_language_supertypes_wasm=_ts_language_supertypes_wasm=e.ts_language_supertypes_wasm,Module._ts_language_subtypes_wasm=_ts_language_subtypes_wasm=e.ts_language_subtypes_wasm,Module._ts_tree_root_node_wasm=_ts_tree_root_node_wasm=e.ts_tree_root_node_wasm,Module._ts_tree_root_node_with_offset_wasm=_ts_tree_root_node_with_offset_wasm=e.ts_tree_root_node_with_offset_wasm,Module._ts_tree_edit_wasm=_ts_tree_edit_wasm=e.ts_tree_edit_wasm,Module._ts_tree_included_ranges_wasm=_ts_tree_included_ranges_wasm=e.ts_tree_included_ranges_wasm,Module._ts_tree_get_changed_ranges_wasm=_ts_tree_get_changed_ranges_wasm=e.ts_tree_get_changed_ranges_wasm,Module._ts_tree_cursor_new_wasm=_ts_tree_cursor_new_wasm=e.ts_tree_cursor_new_wasm,Module._ts_tree_cursor_copy_wasm=_ts_tree_cursor_copy_wasm=e.ts_tree_cursor_copy_wasm,Module._ts_tree_cursor_delete_wasm=_ts_tree_cursor_delete_wasm=e.ts_tree_cursor_delete_wasm,Module._ts_tree_cursor_reset_wasm=_ts_tree_cursor_reset_wasm=e.ts_tree_cursor_reset_wasm,Module._ts_tree_cursor_reset_to_wasm=_ts_tree_cursor_reset_to_wasm=e.ts_tree_cursor_reset_to_wasm,Module._ts_tree_cursor_goto_first_child_wasm=_ts_tree_cursor_goto_first_child_wasm=e.ts_tree_cursor_goto_first_child_wasm,Module._ts_tree_cursor_goto_last_child_wasm=_ts_tree_cursor_goto_last_child_wasm=e.ts_tree_cursor_goto_last_child_wasm,Module._ts_tree_cursor_goto_first_child_for_index_wasm=_ts_tree_cursor_goto_first_child_for_index_wasm=e.ts_tree_cursor_goto_first_child_for_index_wasm,Module._ts_tree_cursor_goto_first_child_for_position_wasm=_ts_tree_cursor_goto_first_child_for_position_wasm=e.ts_tree_cursor_goto_first_child_for_position_wasm,Module._ts_tree_cursor_goto_next_sibling_wasm=_ts_tree_cursor_goto_next_sibling_wasm=e.ts_tree_cursor_goto_next_sibling_wasm,Module._ts_tree_cursor_goto_previous_sibling_wasm=_ts_tree_cursor_goto_previous_sibling_wasm=e.ts_tree_cursor_goto_previous_sibling_wasm,Module._ts_tree_cursor_goto_descendant_wasm=_ts_tree_cursor_goto_descendant_wasm=e.ts_tree_cursor_goto_descendant_wasm,Module._ts_tree_cursor_goto_parent_wasm=_ts_tree_cursor_goto_parent_wasm=e.ts_tree_cursor_goto_parent_wasm,Module._ts_tree_cursor_current_node_type_id_wasm=_ts_tree_cursor_current_node_type_id_wasm=e.ts_tree_cursor_current_node_type_id_wasm,Module._ts_tree_cursor_current_node_state_id_wasm=_ts_tree_cursor_current_node_state_id_wasm=e.ts_tree_cursor_current_node_state_id_wasm,Module._ts_tree_cursor_current_node_is_named_wasm=_ts_tree_cursor_current_node_is_named_wasm=e.ts_tree_cursor_current_node_is_named_wasm,Module._ts_tree_cursor_current_node_is_missing_wasm=_ts_tree_cursor_current_node_is_missing_wasm=e.ts_tree_cursor_current_node_is_missing_wasm,Module._ts_tree_cursor_current_node_id_wasm=_ts_tree_cursor_current_node_id_wasm=e.ts_tree_cursor_current_node_id_wasm,Module._ts_tree_cursor_start_position_wasm=_ts_tree_cursor_start_position_wasm=e.ts_tree_cursor_start_position_wasm,Module._ts_tree_cursor_end_position_wasm=_ts_tree_cursor_end_position_wasm=e.ts_tree_cursor_end_position_wasm,Module._ts_tree_cursor_start_index_wasm=_ts_tree_cursor_start_index_wasm=e.ts_tree_cursor_start_index_wasm,Module._ts_tree_cursor_end_index_wasm=_ts_tree_cursor_end_index_wasm=e.ts_tree_cursor_end_index_wasm,Module._ts_tree_cursor_current_field_id_wasm=_ts_tree_cursor_current_field_id_wasm=e.ts_tree_cursor_current_field_id_wasm,Module._ts_tree_cursor_current_depth_wasm=_ts_tree_cursor_current_depth_wasm=e.ts_tree_cursor_current_depth_wasm,Module._ts_tree_cursor_current_descendant_index_wasm=_ts_tree_cursor_current_descendant_index_wasm=e.ts_tree_cursor_current_descendant_index_wasm,Module._ts_tree_cursor_current_node_wasm=_ts_tree_cursor_current_node_wasm=e.ts_tree_cursor_current_node_wasm,Module._ts_node_symbol_wasm=_ts_node_symbol_wasm=e.ts_node_symbol_wasm,Module._ts_node_field_name_for_child_wasm=_ts_node_field_name_for_child_wasm=e.ts_node_field_name_for_child_wasm,Module._ts_node_field_name_for_named_child_wasm=_ts_node_field_name_for_named_child_wasm=e.ts_node_field_name_for_named_child_wasm,Module._ts_node_children_by_field_id_wasm=_ts_node_children_by_field_id_wasm=e.ts_node_children_by_field_id_wasm,Module._ts_node_first_child_for_byte_wasm=_ts_node_first_child_for_byte_wasm=e.ts_node_first_child_for_byte_wasm,Module._ts_node_first_named_child_for_byte_wasm=_ts_node_first_named_child_for_byte_wasm=e.ts_node_first_named_child_for_byte_wasm,Module._ts_node_grammar_symbol_wasm=_ts_node_grammar_symbol_wasm=e.ts_node_grammar_symbol_wasm,Module._ts_node_child_count_wasm=_ts_node_child_count_wasm=e.ts_node_child_count_wasm,Module._ts_node_named_child_count_wasm=_ts_node_named_child_count_wasm=e.ts_node_named_child_count_wasm,Module._ts_node_child_wasm=_ts_node_child_wasm=e.ts_node_child_wasm,Module._ts_node_named_child_wasm=_ts_node_named_child_wasm=e.ts_node_named_child_wasm,Module._ts_node_child_by_field_id_wasm=_ts_node_child_by_field_id_wasm=e.ts_node_child_by_field_id_wasm,Module._ts_node_next_sibling_wasm=_ts_node_next_sibling_wasm=e.ts_node_next_sibling_wasm,Module._ts_node_prev_sibling_wasm=_ts_node_prev_sibling_wasm=e.ts_node_prev_sibling_wasm,Module._ts_node_next_named_sibling_wasm=_ts_node_next_named_sibling_wasm=e.ts_node_next_named_sibling_wasm,Module._ts_node_prev_named_sibling_wasm=_ts_node_prev_named_sibling_wasm=e.ts_node_prev_named_sibling_wasm,Module._ts_node_descendant_count_wasm=_ts_node_descendant_count_wasm=e.ts_node_descendant_count_wasm,Module._ts_node_parent_wasm=_ts_node_parent_wasm=e.ts_node_parent_wasm,Module._ts_node_child_with_descendant_wasm=_ts_node_child_with_descendant_wasm=e.ts_node_child_with_descendant_wasm,Module._ts_node_descendant_for_index_wasm=_ts_node_descendant_for_index_wasm=e.ts_node_descendant_for_index_wasm,Module._ts_node_named_descendant_for_index_wasm=_ts_node_named_descendant_for_index_wasm=e.ts_node_named_descendant_for_index_wasm,Module._ts_node_descendant_for_position_wasm=_ts_node_descendant_for_position_wasm=e.ts_node_descendant_for_position_wasm,Module._ts_node_named_descendant_for_position_wasm=_ts_node_named_descendant_for_position_wasm=e.ts_node_named_descendant_for_position_wasm,Module._ts_node_start_point_wasm=_ts_node_start_point_wasm=e.ts_node_start_point_wasm,Module._ts_node_end_point_wasm=_ts_node_end_point_wasm=e.ts_node_end_point_wasm,Module._ts_node_start_index_wasm=_ts_node_start_index_wasm=e.ts_node_start_index_wasm,Module._ts_node_end_index_wasm=_ts_node_end_index_wasm=e.ts_node_end_index_wasm,Module._ts_node_to_string_wasm=_ts_node_to_string_wasm=e.ts_node_to_string_wasm,Module._ts_node_children_wasm=_ts_node_children_wasm=e.ts_node_children_wasm,Module._ts_node_named_children_wasm=_ts_node_named_children_wasm=e.ts_node_named_children_wasm,Module._ts_node_descendants_of_type_wasm=_ts_node_descendants_of_type_wasm=e.ts_node_descendants_of_type_wasm,Module._ts_node_is_named_wasm=_ts_node_is_named_wasm=e.ts_node_is_named_wasm,Module._ts_node_has_changes_wasm=_ts_node_has_changes_wasm=e.ts_node_has_changes_wasm,Module._ts_node_has_error_wasm=_ts_node_has_error_wasm=e.ts_node_has_error_wasm,Module._ts_node_is_error_wasm=_ts_node_is_error_wasm=e.ts_node_is_error_wasm,Module._ts_node_is_missing_wasm=_ts_node_is_missing_wasm=e.ts_node_is_missing_wasm,Module._ts_node_is_extra_wasm=_ts_node_is_extra_wasm=e.ts_node_is_extra_wasm,Module._ts_node_parse_state_wasm=_ts_node_parse_state_wasm=e.ts_node_parse_state_wasm,Module._ts_node_next_parse_state_wasm=_ts_node_next_parse_state_wasm=e.ts_node_next_parse_state_wasm,Module._ts_query_matches_wasm=_ts_query_matches_wasm=e.ts_query_matches_wasm,Module._ts_query_captures_wasm=_ts_query_captures_wasm=e.ts_query_captures_wasm,Module._memset=_memset=e.memset,Module._memcpy=_memcpy=e.memcpy,Module._memmove=_memmove=e.memmove,Module._iswalpha=_iswalpha=e.iswalpha,Module._iswblank=_iswblank=e.iswblank,Module._iswdigit=_iswdigit=e.iswdigit,Module._iswlower=_iswlower=e.iswlower,Module._iswupper=_iswupper=e.iswupper,Module._iswxdigit=_iswxdigit=e.iswxdigit,Module._memchr=_memchr=e.memchr,Module._strlen=_strlen=e.strlen,Module._strcmp=_strcmp=e.strcmp,Module._strncat=_strncat=e.strncat,Module._strncpy=_strncpy=e.strncpy,Module._towlower=_towlower=e.towlower,Module._towupper=_towupper=e.towupper,_setThrew=e.setThrew,__emscripten_stack_restore=e._emscripten_stack_restore,__emscripten_stack_alloc=e._emscripten_stack_alloc,_emscripten_stack_get_current=e.emscripten_stack_get_current,___wasm_apply_data_relocs=e.__wasm_apply_data_relocs}__name(assignWasmExports,"assignWasmExports");var wasmImports={__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_high:___stack_high,__stack_low:___stack_low,__stack_pointer:___stack_pointer,__table_base:___table_base,_abort_js:__abort_js,emscripten_resize_heap:_emscripten_resize_heap,fd_close:_fd_close,fd_seek:_fd_seek,fd_write:_fd_write,memory:wasmMemory,tree_sitter_log_callback:_tree_sitter_log_callback,tree_sitter_parse_callback:_tree_sitter_parse_callback,tree_sitter_progress_callback:_tree_sitter_progress_callback,tree_sitter_query_progress_callback:_tree_sitter_query_progress_callback},wasmExports;function callMain(e=[]){var t=resolveGlobalSymbol("main").sym;if(t){e.unshift(thisProgram);var s=e.length,n=stackAlloc(4*(s+1)),r=n;e.forEach(e=>{LE_HEAP_STORE_U32(4*(r>>2),stringToUTF8OnStack(e)),r+=4}),LE_HEAP_STORE_U32(4*(r>>2),0);try{var i=t(s,n);return exitJS(i,!0),i}catch(e){return handleException(e)}}}function run(e=arguments_){function t(){(Module.calledRun=!0,ABORT)||(initRuntime(),preMain(),readyPromiseResolve?.(Module),Module.onRuntimeInitialized?.(),Module.noInitialRun||!1||callMain(e),postRun())}runDependencies>0?dependenciesFulfilled=run:(preRun(),runDependencies>0?dependenciesFulfilled=run:(__name(t,"doRun"),Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),t()},1)):t()))}return __name(callMain,"callMain"),__name(run,"run"),wasmExports=await createWasm(),run(),moduleRtn=runtimeInitialized?Module:new Promise((e,t)=>{readyPromiseResolve=e,readyPromiseReject=t}),moduleRtn}__name(Module2,"Module");var web_tree_sitter_default=Module2,Module3=null,TRANSFER_BUFFER,LANGUAGE_VERSION,MIN_COMPATIBLE_VERSION;async function initializeBinding(e){return Module3??=await web_tree_sitter_default(e)}function checkModule(){return!!Module3}__name(initializeBinding,"initializeBinding"),__name(checkModule,"checkModule");var Parser=class{static{__name(this,"Parser")}0=0;1=0;logCallback=null;language=null;static async init(e){setModule(await initializeBinding(e)),TRANSFER_BUFFER=C._ts_init(),LANGUAGE_VERSION=C.getValue(TRANSFER_BUFFER,"i32"),MIN_COMPATIBLE_VERSION=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}constructor(){this.initialize()}initialize(){if(!checkModule())throw new Error("cannot construct a Parser before calling `init()`");C._ts_parser_new_wasm(),this[0]=C.getValue(TRANSFER_BUFFER,"i32"),this[1]=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}delete(){C._ts_parser_delete(this[0]),C._free(this[1]),this[0]=0,this[1]=0}setLanguage(e){let t;if(e){if(e.constructor!==Language)throw new Error("Argument must be a Language");{t=e[0];const s=C._ts_language_abi_version(t);if(s<MIN_COMPATIBLE_VERSION||LANGUAGE_VERSION<s)throw new Error(`Incompatible language version ${s}. Compatibility range ${MIN_COMPATIBLE_VERSION} through ${LANGUAGE_VERSION}.`);this.language=e}}else t=0,this.language=null;return C._ts_parser_set_language(this[0],t),this}parse(e,t,s){if("string"==typeof e)C.currentParseCallback=t=>e.slice(t);else{if("function"!=typeof e)throw new Error("Argument must be a string or a function");C.currentParseCallback=e}C.currentProgressCallback=s?.progressCallback?s.progressCallback:null,this.logCallback?(C.currentLogCallback=this.logCallback,C._ts_parser_enable_logger_wasm(this[0],1)):(C.currentLogCallback=null,C._ts_parser_enable_logger_wasm(this[0],0));let n=0,r=0;if(s?.includedRanges){n=s.includedRanges.length,r=C._calloc(n,SIZE_OF_RANGE);let e=r;for(let t=0;t<n;t++)marshalRange(e,s.includedRanges[t]),e+=SIZE_OF_RANGE}const i=C._ts_parser_parse_wasm(this[0],this[1],t?t[0]:0,r,n);if(!i)return C.currentParseCallback=null,C.currentLogCallback=null,C.currentProgressCallback=null,null;if(!this.language)throw new Error("Parser must have a language to parse");const o=new Tree(INTERNAL,i,this.language,C.currentParseCallback);return C.currentParseCallback=null,C.currentLogCallback=null,C.currentProgressCallback=null,o}reset(){C._ts_parser_reset(this[0])}getIncludedRanges(){C._ts_parser_included_ranges_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=unmarshalRange(n),n+=SIZE_OF_RANGE;C._free(t)}return s}setLogger(e){if(e){if("function"!=typeof e)throw new Error("Logger callback must be a function");this.logCallback=e}else this.logCallback=null;return this}getLogger(){return this.logCallback}},PREDICATE_STEP_TYPE_CAPTURE=1,PREDICATE_STEP_TYPE_STRING=2,QUERY_WORD_REGEX=/[\w-]+/g,CaptureQuantifier={Zero:0,ZeroOrOne:1,ZeroOrMore:2,One:3,OneOrMore:4},isCaptureStep=__name(e=>"capture"===e.type,"isCaptureStep"),isStringStep=__name(e=>"string"===e.type,"isStringStep"),QueryErrorKind={Syntax:1,NodeName:2,FieldName:3,CaptureName:4,PatternStructure:5},QueryError=class e extends Error{constructor(t,s,n,r){super(e.formatMessage(t,s)),this.kind=t,this.info=s,this.index=n,this.length=r,this.name="QueryError"}static{__name(this,"QueryError")}static formatMessage(e,t){switch(e){case QueryErrorKind.NodeName:return`Bad node name '${t.word}'`;case QueryErrorKind.FieldName:return`Bad field name '${t.word}'`;case QueryErrorKind.CaptureName:return`Bad capture name @${t.word}`;case QueryErrorKind.PatternStructure:return`Bad pattern structure at offset ${t.suffix}`;case QueryErrorKind.Syntax:return`Bad syntax at offset ${t.suffix}`}}};function parseAnyPredicate(e,t,s,n){if(3!==e.length)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 2, got ${e.length-1}`);if(!isCaptureStep(e[1]))throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}"`);const r="eq?"===s||"any-eq?"===s,i=!s.startsWith("any-");if(isCaptureStep(e[2])){const s=e[1].name,o=e[2].name;n[t].push(e=>{const t=[],n=[];for(const r of e)r.name===s&&t.push(r.node),r.name===o&&n.push(r.node);const a=__name((e,t,s)=>s?e.text===t.text:e.text!==t.text,"compare");return i?t.every(e=>n.some(t=>a(e,t,r))):t.some(e=>n.some(t=>a(e,t,r)))})}else{const s=e[1].name,o=e[2].value,a=__name(e=>e.text===o,"matches"),c=__name(e=>e.text!==o,"doesNotMatch");n[t].push(e=>{const t=[];for(const n of e)n.name===s&&t.push(n.node);const n=r?a:c;return i?t.every(n):t.some(n)})}}function parseMatchPredicate(e,t,s,n){if(3!==e.length)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 2, got ${e.length-1}.`);if("capture"!==e[1].type)throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}".`);if("string"!==e[2].type)throw new Error(`Second argument of \`#${s}\` predicate must be a string. Got @${e[2].name}.`);const r="match?"===s||"any-match?"===s,i=!s.startsWith("any-"),o=e[1].name,a=new RegExp(e[2].value);n[t].push(e=>{const t=[];for(const s of e)s.name===o&&t.push(s.node.text);const s=__name((e,t)=>t?a.test(e):!a.test(e),"test");return 0===t.length?!r:i?t.every(e=>s(e,r)):t.some(e=>s(e,r))})}function parseAnyOfPredicate(e,t,s,n){if(e.length<2)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected at least 1. Got ${e.length-1}.`);if("capture"!==e[1].type)throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}".`);const r="any-of?"===s,i=e[1].name,o=e.slice(2);if(!o.every(isStringStep))throw new Error(`Arguments to \`#${s}\` predicate must be strings.".`);const a=o.map(e=>e.value);n[t].push(e=>{const t=[];for(const s of e)s.name===i&&t.push(s.node.text);return 0===t.length?!r:t.every(e=>a.includes(e))===r})}function parseIsPredicate(e,t,s,n,r){if(e.length<2||e.length>3)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 1 or 2. Got ${e.length-1}.`);if(!e.every(isStringStep))throw new Error(`Arguments to \`#${s}\` predicate must be strings.".`);const i="is?"===s?n:r;i[t]||(i[t]={}),i[t][e[1].value]=e[2]?.value??null}function parseSetDirective(e,t,s){if(e.length<2||e.length>3)throw new Error(`Wrong number of arguments to \`#set!\` predicate. Expected 1 or 2. Got ${e.length-1}.`);if(!e.every(isStringStep))throw new Error('Arguments to `#set!` predicate must be strings.".');s[t]||(s[t]={}),s[t][e[1].value]=e[2]?.value??null}function parsePattern(e,t,s,n,r,i,o,a,c,l,u){if(t===PREDICATE_STEP_TYPE_CAPTURE){const e=n[s];i.push({type:"capture",name:e})}else if(t===PREDICATE_STEP_TYPE_STRING)i.push({type:"string",value:r[s]});else if(i.length>0){if("string"!==i[0].type)throw new Error("Predicates must begin with a literal value");const t=i[0].value;switch(t){case"any-not-eq?":case"not-eq?":case"any-eq?":case"eq?":parseAnyPredicate(i,e,t,o);break;case"any-not-match?":case"not-match?":case"any-match?":case"match?":parseMatchPredicate(i,e,t,o);break;case"not-any-of?":case"any-of?":parseAnyOfPredicate(i,e,t,o);break;case"is?":case"is-not?":parseIsPredicate(i,e,t,l,u);break;case"set!":parseSetDirective(i,e,c);break;default:a[e].push({operator:t,operands:i.slice(1)})}i.length=0}}__name(parseAnyPredicate,"parseAnyPredicate"),__name(parseMatchPredicate,"parseMatchPredicate"),__name(parseAnyOfPredicate,"parseAnyOfPredicate"),__name(parseIsPredicate,"parseIsPredicate"),__name(parseSetDirective,"parseSetDirective"),__name(parsePattern,"parsePattern");var Query=class{static{__name(this,"Query")}0=0;exceededMatchLimit;textPredicates;captureNames;captureQuantifiers;predicates;setProperties;assertedProperties;refutedProperties;matchLimit;constructor(e,t){const s=C.lengthBytesUTF8(t),n=C._malloc(s+1);C.stringToUTF8(t,n,s+1);const r=C._ts_query_new(e[0],n,s,TRANSFER_BUFFER,TRANSFER_BUFFER+SIZE_OF_INT);if(!r){const e=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=C.getValue(TRANSFER_BUFFER,"i32"),r=C.UTF8ToString(n,s).length,i=t.slice(r,r+100).split("\n")[0],o=i.match(QUERY_WORD_REGEX)?.[0]??"";switch(C._free(n),e){case QueryErrorKind.Syntax:throw new QueryError(QueryErrorKind.Syntax,{suffix:`${r}: '${i}'...`},r,0);case QueryErrorKind.NodeName:case QueryErrorKind.FieldName:case QueryErrorKind.CaptureName:throw new QueryError(e,{word:o},r,o.length);case QueryErrorKind.PatternStructure:throw new QueryError(e,{suffix:`${r}: '${i}'...`},r,0)}}const i=C._ts_query_string_count(r),o=C._ts_query_capture_count(r),a=C._ts_query_pattern_count(r),c=new Array(o),l=new Array(a),u=new Array(i);for(let e=0;e<o;e++){const t=C._ts_query_capture_name_for_id(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");c[e]=C.UTF8ToString(t,s)}for(let e=0;e<a;e++){const t=new Array(o);for(let s=0;s<o;s++){const n=C._ts_query_capture_quantifier_for_id(r,e,s);t[s]=n}l[e]=t}for(let e=0;e<i;e++){const t=C._ts_query_string_value_for_id(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");u[e]=C.UTF8ToString(t,s)}const d=new Array(a),h=new Array(a),p=new Array(a),m=new Array(a),_=new Array(a);for(let e=0;e<a;e++){const t=C._ts_query_predicates_for_pattern(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");m[e]=[],_[e]=[];const n=new Array;let i=t;for(let t=0;t<s;t++){const t=C.getValue(i,"i32");i+=SIZE_OF_INT;const s=C.getValue(i,"i32");i+=SIZE_OF_INT,parsePattern(e,t,s,c,u,n,_,m,d,h,p)}Object.freeze(_[e]),Object.freeze(m[e]),Object.freeze(d[e]),Object.freeze(h[e]),Object.freeze(p[e])}C._free(n),this[0]=r,this.captureNames=c,this.captureQuantifiers=l,this.textPredicates=_,this.predicates=m,this.setProperties=d,this.assertedProperties=h,this.refutedProperties=p,this.exceededMatchLimit=!1}delete(){C._ts_query_delete(this[0]),this[0]=0}matches(e,t={}){const s=t.startPosition??ZERO_POINT,n=t.endPosition??ZERO_POINT,r=t.startIndex??0,i=t.endIndex??0,o=t.startContainingPosition??ZERO_POINT,a=t.endContainingPosition??ZERO_POINT,c=t.startContainingIndex??0,l=t.endContainingIndex??0,u=t.matchLimit??4294967295,d=t.maxStartDepth??4294967295,h=t.progressCallback;if("number"!=typeof u)throw new Error("Arguments must be numbers");if(this.matchLimit=u,0!==i&&r>i)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==ZERO_POINT&&(s.row>n.row||s.row===n.row&&s.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");if(0!==l&&c>l)throw new Error("`startContainingIndex` cannot be greater than `endContainingIndex`");if(a!==ZERO_POINT&&(o.row>a.row||o.row===a.row&&o.column>a.column))throw new Error("`startContainingPosition` cannot be greater than `endContainingPosition`");h&&(C.currentQueryProgressCallback=h),marshalNode(e),C._ts_query_matches_wasm(this[0],e.tree[0],s.row,s.column,n.row,n.column,r,i,o.row,o.column,a.row,a.column,c,l,u,d);const p=C.getValue(TRANSFER_BUFFER,"i32"),m=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),_=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),g=new Array(p);this.exceededMatchLimit=Boolean(_);let f=0,y=m;for(let t=0;t<p;t++){const t=C.getValue(y,"i32");y+=SIZE_OF_INT;const s=C.getValue(y,"i32");y+=SIZE_OF_INT;const n=new Array(s);if(y=unmarshalCaptures(this,e.tree,y,t,n),this.textPredicates[t].every(e=>e(n))){g[f]={patternIndex:t,captures:n};const e=this.setProperties[t];g[f].setProperties=e;const s=this.assertedProperties[t];g[f].assertedProperties=s;const r=this.refutedProperties[t];g[f].refutedProperties=r,f++}}return g.length=f,C._free(m),C.currentQueryProgressCallback=null,g}captures(e,t={}){const s=t.startPosition??ZERO_POINT,n=t.endPosition??ZERO_POINT,r=t.startIndex??0,i=t.endIndex??0,o=t.startContainingPosition??ZERO_POINT,a=t.endContainingPosition??ZERO_POINT,c=t.startContainingIndex??0,l=t.endContainingIndex??0,u=t.matchLimit??4294967295,d=t.maxStartDepth??4294967295,h=t.progressCallback;if("number"!=typeof u)throw new Error("Arguments must be numbers");if(this.matchLimit=u,0!==i&&r>i)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==ZERO_POINT&&(s.row>n.row||s.row===n.row&&s.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");if(0!==l&&c>l)throw new Error("`startContainingIndex` cannot be greater than `endContainingIndex`");if(a!==ZERO_POINT&&(o.row>a.row||o.row===a.row&&o.column>a.column))throw new Error("`startContainingPosition` cannot be greater than `endContainingPosition`");h&&(C.currentQueryProgressCallback=h),marshalNode(e),C._ts_query_captures_wasm(this[0],e.tree[0],s.row,s.column,n.row,n.column,r,i,o.row,o.column,a.row,a.column,c,l,u,d);const p=C.getValue(TRANSFER_BUFFER,"i32"),m=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),_=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),g=new Array;this.exceededMatchLimit=Boolean(_);const f=new Array;let y=m;for(let t=0;t<p;t++){const t=C.getValue(y,"i32");y+=SIZE_OF_INT;const s=C.getValue(y,"i32");y+=SIZE_OF_INT;const n=C.getValue(y,"i32");if(y+=SIZE_OF_INT,f.length=s,y=unmarshalCaptures(this,e.tree,y,t,f),this.textPredicates[t].every(e=>e(f))){const e=f[n],s=this.setProperties[t];e.setProperties=s;const r=this.assertedProperties[t];e.assertedProperties=r;const i=this.refutedProperties[t];e.refutedProperties=i,g.push(e)}}return C._free(m),C.currentQueryProgressCallback=null,g}predicatesForPattern(e){return this.predicates[e]}disableCapture(e){const t=C.lengthBytesUTF8(e),s=C._malloc(t+1);C.stringToUTF8(e,s,t+1),C._ts_query_disable_capture(this[0],s,t),C._free(s)}disablePattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);C._ts_query_disable_pattern(this[0],e)}didExceedMatchLimit(){return this.exceededMatchLimit}startIndexForPattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);return C._ts_query_start_byte_for_pattern(this[0],e)}endIndexForPattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);return C._ts_query_end_byte_for_pattern(this[0],e)}patternCount(){return C._ts_query_pattern_count(this[0])}captureIndexForName(e){return this.captureNames.indexOf(e)}isPatternRooted(e){return 1===C._ts_query_is_pattern_rooted(this[0],e)}isPatternNonLocal(e){return 1===C._ts_query_is_pattern_non_local(this[0],e)}isPatternGuaranteedAtStep(e){return 1===C._ts_query_is_pattern_guaranteed_at_step(this[0],e)}}}},__webpack_module_cache__={},leafPrototypes,getProto;function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var s=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](s,s.exports,__webpack_require__),s.exports}__webpack_require__.m=__webpack_modules__,getProto=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,__webpack_require__.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var s=Object.create(null);__webpack_require__.r(s);var n={};leafPrototypes=leafPrototypes||[null,getProto({}),getProto([]),getProto(getProto)];for(var r=2&t&&e;("object"==typeof r||"function"==typeof r)&&!~leafPrototypes.indexOf(r);r=getProto(r))Object.getOwnPropertyNames(r).forEach(t=>n[t]=()=>e[t]);return n.default=()=>e,__webpack_require__.d(s,n),s},__webpack_require__.d=(e,t)=>{for(var s in t)__webpack_require__.o(t,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.b="undefined"!=typeof document&&document.baseURI||self.location.href;var __webpack_exports__={};return(()=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{detect:()=>qp,detectionRegExp:()=>Rp,mediaTypes:()=>Np,namespace:()=>Dp,parse:()=>$p});var e={};__webpack_require__.r(e),__webpack_require__.d(e,{isAsyncApiExtension:()=>$o,isReferenceLikeElement:()=>qo});var t={};function s(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function n(e){return function t(n){return 0===arguments.length||s(n)?t:e.apply(this,arguments)}}function r(e){return function t(r,i){switch(arguments.length){case 0:return t;case 1:return s(r)?t:n(function(t){return e(r,t)});default:return s(r)&&s(i)?t:s(r)?n(function(t){return e(t,i)}):s(i)?n(function(t){return e(r,t)}):e(r,i)}}}function i(e){return function t(i,o,a){switch(arguments.length){case 0:return t;case 1:return s(i)?t:r(function(t,s){return e(i,t,s)});case 2:return s(i)&&s(o)?t:s(i)?r(function(t,s){return e(t,o,s)}):s(o)?r(function(t,s){return e(i,t,s)}):n(function(t){return e(i,o,t)});default:return s(i)&&s(o)&&s(a)?t:s(i)&&s(o)?r(function(t,s){return e(t,s,a)}):s(i)&&s(a)?r(function(t,s){return e(t,o,s)}):s(o)&&s(a)?r(function(t,s){return e(i,t,s)}):s(i)?n(function(t){return e(t,o,a)}):s(o)?n(function(t){return e(i,t,a)}):s(a)?n(function(t){return e(i,o,t)}):e(i,o,a)}}}__webpack_require__.r(t),__webpack_require__.d(t,{isAsyncApi2Element:()=>Na,isAsyncApiVersionElement:()=>Ra,isBooleanJSONSchemaElement:()=>ka,isChannelBindingsElement:()=>qa,isChannelItemElement:()=>$a,isChannelsElement:()=>Da,isComponentsElement:()=>Va,isContactElement:()=>La,isIdentifierElement:()=>Ua,isInfoElement:()=>Ha,isLicenseElement:()=>Wa,isOperationElement:()=>Ga,isParameterElement:()=>Za,isParametersElement:()=>Ja,isReferenceElement:()=>za,isSchemaElement:()=>Xa,isSecurityRequirementElement:()=>Qa,isServerBindingsElement:()=>Ya,isServerElement:()=>Ka,isServerVariableElement:()=>tc,isServersElement:()=>ec});const o=r(function(e,t){return null==t||t!=t?e:t}),a=Number.isInteger||function(e){return(e|0)===e};function c(e,t){return t[e<0?t.length+e:e]}const l=function(e,t){if(null!=t)return a(e)?c(e,t):t[e]};const u=r(l);const d=i(function(e,t,s){return o(e,u(t,s))});var h=r(function(e,t){for(var s={},n={},r=0,i=e.length;r<i;)n[e[r]]=1,r+=1;for(var o in t)n.hasOwnProperty(o)||(s[o]=t[o]);return s});const p=h;function m(e,t,s){for(var n=0,r=s.length;n<r;)t=e(t,s[n]),n+=1;return t}const _=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)};function g(e){return"[object String]"===Object.prototype.toString.call(e)}const f=n(function(e){return!!_(e)||!!e&&("object"==typeof e&&(!g(e)&&(0===e.length||e.length>0&&(e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1)))))});var y="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator";function b(e,t,s){return function(n,r,i){if(f(i))return e(n,r,i);if(null==i)return r;if("function"==typeof i["fantasy-land/reduce"])return t(n,r,i,"fantasy-land/reduce");if(null!=i[y])return s(n,r,i[y]());if("function"==typeof i.next)return s(n,r,i);if("function"==typeof i.reduce)return t(n,r,i,"reduce");throw new TypeError("reduce: list must be array or iterable")}}function x(e,t,s){for(var n=s.next();!n.done;)t=e(t,n.value),n=s.next();return t}function v(e,t,s,n){return s[n](e,t)}const w=b(m,v,x);function E(e,t,s){return function(){if(0===arguments.length)return s();var n=arguments[arguments.length-1];if(!_(n)){for(var r=0;r<e.length;){if("function"==typeof n[e[r]])return n[e[r]].apply(n,Array.prototype.slice.call(arguments,0,-1));r+=1}if(function(e){return null!=e&&"function"==typeof e["@@transducer/step"]}(n))return t.apply(null,Array.prototype.slice.call(arguments,0,-1))(n)}return s.apply(this,arguments)}}function S(e,t){for(var s=0,n=t.length,r=Array(n);s<n;)r[s]=e(t[s]),s+=1;return r}const O=function(){return this.xf["@@transducer/init"]()},A=function(e){return this.xf["@@transducer/result"](e)};var C=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){return this.xf["@@transducer/step"](e,this.f(t))},e}();const I=function(e){return function(t){return new C(e,t)}};function T(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(e){return t.apply(this,arguments)};case 2:return function(e,s){return t.apply(this,arguments)};case 3:return function(e,s,n){return t.apply(this,arguments)};case 4:return function(e,s,n,r){return t.apply(this,arguments)};case 5:return function(e,s,n,r,i){return t.apply(this,arguments)};case 6:return function(e,s,n,r,i,o){return t.apply(this,arguments)};case 7:return function(e,s,n,r,i,o,a){return t.apply(this,arguments)};case 8:return function(e,s,n,r,i,o,a,c){return t.apply(this,arguments)};case 9:return function(e,s,n,r,i,o,a,c,l){return t.apply(this,arguments)};case 10:return function(e,s,n,r,i,o,a,c,l,u){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function P(e,t,n){return function(){for(var r=[],i=0,o=e,a=0,c=!1;a<t.length||i<arguments.length;){var l;a<t.length&&(!s(t[a])||i>=arguments.length)?l=t[a]:(l=arguments[i],i+=1),r[a]=l,s(l)?c=!0:o-=1,a+=1}return!c&&o<=0?n.apply(this,r):T(Math.max(0,o),P(e,r,n))}}var F=r(function(e,t){return 1===e?n(t):T(e,P(e,[],t))});const M=F;function B(e,t){return Object.prototype.hasOwnProperty.call(t,e)}var j=Object.prototype.toString;const k=function(){return"[object Arguments]"===j.call(arguments)?function(e){return"[object Arguments]"===j.call(e)}:function(e){return B("callee",e)}}();var N=!{toString:null}.propertyIsEnumerable("toString"),R=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],q=function(){return arguments.propertyIsEnumerable("length")}(),$=function(e,t){for(var s=0;s<e.length;){if(e[s]===t)return!0;s+=1}return!1},D="function"!=typeof Object.keys||q?n(function(e){if(Object(e)!==e)return[];var t,s,n=[],r=q&&k(e);for(t in e)!B(t,e)||r&&"length"===t||(n[n.length]=t);if(N)for(s=R.length-1;s>=0;)B(t=R[s],e)&&!$(n,t)&&(n[n.length]=t),s-=1;return n}):n(function(e){return Object(e)!==e?[]:Object.keys(e)});const V=D;var L=r(E(["fantasy-land/map","map"],I,function(e,t){switch(Object.prototype.toString.call(t)){case"[object Function]":return M(t.length,function(){return e.call(this,t.apply(this,arguments))});case"[object Object]":return m(function(s,n){return s[n]=e(t[n]),s},{},V(t));default:return S(e,t)}}));const U=L;const H=r(function(e,t){return"function"==typeof t["fantasy-land/ap"]?t["fantasy-land/ap"](e):"function"==typeof e.ap?e.ap(t):"function"==typeof e?function(s){return e(s)(t(s))}:w(function(e,s){return function(e,t){var s;t=t||[];var n=(e=e||[]).length,r=t.length,i=[];for(s=0;s<n;)i[i.length]=e[s],s+=1;for(s=0;s<r;)i[i.length]=t[s],s+=1;return i}(e,U(s,t))},[],e)});var W=r(function(e,t){var s=M(e,t);return M(e,function(){return m(H,U(s,arguments[0]),Array.prototype.slice.call(arguments,1))})});const G=W;var Z=n(function(e){return G(e.length,e)});const J=Z;const z=J(n(function(e){return!e}));function X(e){for(var t,s=[];!(t=e.next()).done;)s.push(t.value);return s}function Q(e,t,s){for(var n=0,r=s.length;n<r;){if(e(t,s[n]))return!0;n+=1}return!1}const K="function"==typeof Object.is?Object.is:function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t};const Y=n(function(e){return null===e?"Null":void 0===e?"Undefined":Object.prototype.toString.call(e).slice(8,-1)});function ee(e,t,s,n){var r=X(e);function i(e,t){return te(e,t,s.slice(),n.slice())}return!Q(function(e,t){return!Q(i,t,e)},X(t),r)}function te(e,t,s,n){if(K(e,t))return!0;var r=Y(e);if(r!==Y(t))return!1;if("function"==typeof e["fantasy-land/equals"]||"function"==typeof t["fantasy-land/equals"])return"function"==typeof e["fantasy-land/equals"]&&e["fantasy-land/equals"](t)&&"function"==typeof t["fantasy-land/equals"]&&t["fantasy-land/equals"](e);if("function"==typeof e.equals||"function"==typeof t.equals)return"function"==typeof e.equals&&e.equals(t)&&"function"==typeof t.equals&&t.equals(e);switch(r){case"Arguments":case"Array":case"Object":if("function"==typeof e.constructor&&"Promise"===function(e){var t=String(e).match(/^function (\w*)/);return null==t?"":t[1]}(e.constructor))return e===t;break;case"Boolean":case"Number":case"String":if(typeof e!=typeof t||!K(e.valueOf(),t.valueOf()))return!1;break;case"Date":if(!K(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(e.source!==t.source||e.global!==t.global||e.ignoreCase!==t.ignoreCase||e.multiline!==t.multiline||e.sticky!==t.sticky||e.unicode!==t.unicode)return!1}for(var i=s.length-1;i>=0;){if(s[i]===e)return n[i]===t;i-=1}switch(r){case"Map":return e.size===t.size&&ee(e.entries(),t.entries(),s.concat([e]),n.concat([t]));case"Set":return e.size===t.size&&ee(e.values(),t.values(),s.concat([e]),n.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var o=V(e);if(o.length!==V(t).length)return!1;var a=s.concat([e]),c=n.concat([t]);for(i=o.length-1;i>=0;){var l=o[i];if(!B(l,t)||!te(t[l],e[l],a,c))return!1;i-=1}return!0}const se=r(function(e,t){return te(e,t,[],[])});const ne=n(function(e){return function(){return e}});const re=ne(void 0);const ie=se(re());const oe=z(ie);function ae(e){return new RegExp(e.source,e.flags?e.flags:(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.sticky?"y":"")+(e.unicode?"u":"")+(e.dotAll?"s":""))}function ce(e,t,s){if(s||(s=new le),function(e){var t=typeof e;return null==e||"object"!=t&&"function"!=t}(e))return e;var n=function(n){var r=s.get(e);if(r)return r;for(var i in s.set(e,n),e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=t?ce(e[i],!0,s):e[i]);return n};switch(Y(e)){case"Object":return n(Object.create(Object.getPrototypeOf(e)));case"Array":return n(Array(e.length));case"Date":return new Date(e.valueOf());case"RegExp":return ae(e);case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":return e.slice();default:return e}}var le=function(){function e(){this.map={},this.length=0}return e.prototype.set=function(e,t){var s=this.hash(e),n=this.map[s];n||(this.map[s]=n=[]),n.push([e,t]),this.length+=1},e.prototype.hash=function(e){var t=[];for(var s in e)t.push(Object.prototype.toString.call(e[s]));return t.join()},e.prototype.get=function(e){if(this.length<=180)for(var t in this.map)for(var s=this.map[t],n=0;n<s.length;n+=1){if((i=s[n])[0]===e)return i[1]}else{var r=this.hash(e);if(s=this.map[r])for(n=0;n<s.length;n+=1){var i;if((i=s[n])[0]===e)return i[1]}}},e}();const ue=n(function(e){return null!=e&&"function"==typeof e.clone?e.clone():ce(e,!0)});class de{get(e){return this[e]}set(e,t){this[e]=t}hasKey(e){return Object.hasOwn(this,e)}keys(){return Object.keys(this)}remove(e){delete this[e]}get isEmpty(){return 0===Object.keys(this).length}get isFrozen(){return Object.isFrozen(this)}freeze(){for(const e of Object.values(this))e instanceof this.Element?e.freeze():(Array.isArray(e)||null!==e&&"object"==typeof e)&&Object.freeze(e);Object.freeze(this)}cloneShallow(){const e=new de;return Object.assign(e,this),e}merge(e){const t=this.cloneShallow();for(const[s,n]of Object.entries(e)){const e=t.get(s);Array.isArray(e)&&Array.isArray(n)?t.set(s,[...e,...n]):t.set(s,n)}return t}cloneDeep(){const e=new de;for(const[t,s]of Object.entries(this))s instanceof this.Element?e.set(t,this.cloneDeepElement(s)):e.set(t,ue(s));return e}}const he=de;const pe=class{key;value;constructor(e,t){this.key=e,this.value=t}toValue(){return{key:this.key?.toValue(),value:this.value?.toValue()}}};class me{elements;constructor(e){this.elements=e??[]}toValue(){return this.elements.map(e=>({key:e.key?.toValue(),value:e.value?.toValue()}))}map(e,t){return this.elements.map(s=>{const n=s.value,r=s.key;if(void 0===n||void 0===r)throw new Error("MemberElement must have both key and value");return void 0!==t?e.call(t,n,r,s):e(n,r,s)})}filter(e,t){const s=this.elements.filter(s=>{const n=s.value,r=s.key;return void 0!==n&&void 0!==r&&(void 0!==t?e.call(t,n,r,s):e(n,r,s))});return new me(s)}reject(e,t){const s=[];for(const n of this.elements){const r=n.value,i=n.key;void 0!==r&&void 0!==i&&(e.call(t,r,i,n)||s.push(n))}return new me(s)}forEach(e,t){this.elements.forEach((s,n)=>{const r=s.value,i=s.key;void 0!==r&&void 0!==i&&(void 0!==t?e.call(t,r,i,s,n):e(r,i,s,n))})}find(e,t){return this.elements.find(s=>{const n=s.value,r=s.key;return void 0!==n&&void 0!==r&&(void 0!==t?e.call(t,n,r,s):e(n,r,s))})}keys(){return this.elements.map(e=>e.key?.toValue()).filter(e=>void 0!==e)}values(){return this.elements.map(e=>e.value?.toValue()).filter(e=>void 0!==e)}get length(){return this.elements.length}get isEmpty(){return 0===this.length}get first(){return this.elements[0]}get(e){return this.elements[e]}push(e){return this.elements.push(e),this}includesKey(e){return this.elements.some(t=>t.key?.equals(e))}[Symbol.iterator](){return this.elements[Symbol.iterator]()}}const _e=me,ge=Object.freeze(new he);class fe{parent;style;startLine;startCharacter;startOffset;endLine;endCharacter;endOffset;_storedElement="element";_content;_meta;_attributes;constructor(e,t,s){void 0!==t&&(this.meta=t),void 0!==s&&(this.attributes=s),void 0!==e&&(this.content=e)}get element(){return this._storedElement}set element(e){this._storedElement=e}get content(){return this._content}set content(e){if(e instanceof fe)this._content=e;else if(null!=e&&"string"!=typeof e&&"number"!=typeof e&&"boolean"!=typeof e&&"bigint"!=typeof e&&"symbol"!=typeof e)if(e instanceof pe)this._content=e;else if(e instanceof _e)this._content=e.elements;else if(Array.isArray(e))this._content=e.map(e=>this.refract(e));else{if("object"!=typeof e)throw new Error("Cannot set content to value of type "+typeof e);this._content=Object.entries(e).map(([e,t])=>new this.MemberElement(e,t))}else this._content=e}get meta(){if(!this._meta){if(this.isFrozen)return ge;this._meta=new he}return this._meta}set meta(e){if(e instanceof he)this._meta=e;else if(e&&"object"==typeof e){const t=new he;Object.assign(t,e),this._meta=t}}get attributes(){if(!this._attributes){if(this.isFrozen){const e=new this.ObjectElement;return e.freeze(),e}this._attributes=new this.ObjectElement}return this._attributes}set attributes(e){e instanceof fe?this._attributes=e:this.attributes.set(e??{})}get id(){if(!this.hasMetaProperty("id")){if(this.isFrozen)return"";this.setMetaProperty("id","")}return this.meta.get("id")}set id(e){this.setMetaProperty("id",e)}get classes(){if(!this.hasMetaProperty("classes")){if(this.isFrozen)return[];this.setMetaProperty("classes",[])}return this.meta.get("classes")}set classes(e){this.setMetaProperty("classes",e)}get links(){if(!this.hasMetaProperty("links")){if(this.isFrozen){const e=new this.ArrayElement;return e.freeze(),e}this.setMetaProperty("links",new this.ArrayElement)}return this.meta.get("links")}set links(e){this.setMetaProperty("links",e)}get children(){const{_content:e}=this;if(Array.isArray(e))return e;if(e instanceof pe){const t=[];return e.key&&t.push(e.key),e.value&&t.push(e.value),t}return e instanceof fe?[e]:[]}get isFrozen(){return Object.isFrozen(this)}freeze(){if(!this.isFrozen){this._meta&&this._meta.freeze(),this._attributes&&(this._attributes.parent=this,this._attributes.freeze());for(const e of this.children)e.parent=this,e.freeze();Array.isArray(this._content)&&Object.freeze(this._content),Object.freeze(this)}}toValue(){const{_content:e}=this;return e instanceof fe||e instanceof pe?e.toValue():Array.isArray(e)?e.map(e=>e.toValue()):e}equals(e){const t=e instanceof fe?e.toValue():e;return se(this.toValue(),t)}primitive(){}set(e){return this.content=e,this}toRef(e){const t=this.id;if(""===t)throw new Error("Cannot create reference to an element without an ID");const s=new this.RefElement(t);return"string"==typeof e&&(s.path=this.refract(e)),s}getMetaProperty(e,t){return this.hasMetaProperty(e)?this.meta.get(e):t}setMetaProperty(e,t){this.meta.set(e,t)}hasMetaProperty(e){return void 0!==this._meta&&this._meta.hasKey(e)}get isMetaEmpty(){return void 0===this._meta||this._meta.isEmpty}getAttributesProperty(e,t){if(!this.hasAttributesProperty(e)){if(this.isFrozen){const e=this.refract(t);return e.freeze(),e}this.attributes.set(e,t)}return this.attributes.get(e)}setAttributesProperty(e,t){this.attributes.set(e,t)}hasAttributesProperty(e){return!this.isAttributesEmpty&&this.attributes.hasKey(e)}get isAttributesEmpty(){return void 0===this._attributes||this.attributes.isEmpty}}const ye=fe;const be=class extends ye{constructor(e,t,s){super(e,t,s),this.element="string"}primitive(){return"string"}get length(){return this.content?.length??0}};class xe extends be{constructor(e,t,s){super(e,t,s),this.element="sourceMap"}static transfer(e,t){t.startLine=e.startLine,t.startCharacter=e.startCharacter,t.startOffset=e.startOffset,t.endLine=e.endLine,t.endCharacter=e.endCharacter,t.endOffset=e.endOffset}static from(e){const{startLine:t,startCharacter:s,startOffset:n,endLine:r,endCharacter:i,endOffset:o}=e;if("number"!=typeof t||"number"!=typeof s||"number"!=typeof n||"number"!=typeof r||"number"!=typeof i||"number"!=typeof o)return;const a="sm1:"+[t,s,n,r,i,o].map(we).join("");const c=new xe(a);return c.startLine=t,c.startCharacter=s,c.startOffset=n,c.endLine=r,c.endCharacter=i,c.endOffset=o,c}applyTo(e){this.content&&([e.startLine,e.startCharacter,e.startOffset,e.endLine,e.endCharacter,e.endOffset]=function(e){const t=e.startsWith("sm1:")?e.slice(4):e,s=[];let n=0;for(let e=0;e<6;e++){const e=Ee(t,n);s.push(e.value),n=e.next}return s}(this.content))}}const ve="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function we(e){let t=e>>>0,s="";do{let e=31&t;t>>>=5,0!==t&&(e|=32),s+=ve[e]}while(0!==t);return s}function Ee(e,t=0){let s=0,n=0,r=t;for(;;){const t=e[r++],i=ve.indexOf(t);if(-1===i)throw new Error(`Invalid Base64 VLQ char: ${t}`);if(s|=(31&i)<<n,n+=5,!!!(32&i))break}return{value:s>>>0,next:r}}const Se=xe;class Oe extends ye{constructor(e,t,s){super(e||[],t,s)}get length(){return this._content.length}get isEmpty(){return 0===this.length}get first(){return this._content[0]}get second(){return this._content[1]}get last(){return this._content.at(-1)}push(...e){for(const t of e)this._content.push(this.refract(t));return this}shift(){return this._content.shift()}unshift(e){this._content.unshift(this.refract(e))}includes(e){return this._content.some(t=>t.equals(e))}findElements(e,t){const s=t||{},n=!!s.recursive,r=void 0===s.results?[]:s.results;for(let t=0;t<this._content.length;t+=1){const s=this._content[t],i=s;n&&"function"==typeof i.findElements&&i.findElements(e,{results:r,recursive:n}),e(s,t,void 0)&&r.push(s)}return r}find(e){const t=this.findElements(e,{recursive:!0});return new this.ArrayElement(t)}findByElement(e){return this.find(t=>t.element===e)}findByClass(e){return this.find(t=>{const s=t.classes;return"function"==typeof s.includes&&s.includes(e)})}getById(e){return this.find(t=>t.id===e).first}concat(e){return new(0,this.constructor)(this._content.concat(e._content))}[Symbol.iterator](){return this._content[Symbol.iterator]()}}const Ae=Oe;const Ce=class extends ye{constructor(e,t,s,n){super(new pe,s,n),this.element="member",void 0!==e&&(this.key=e),arguments.length>=2&&(this.value=t)}primitive(){return"member"}get key(){return this._content.key}set key(e){this._content.key=this.refract(e)}get value(){return this._content.value}set value(e){this._content.value=void 0===e?void 0:this.refract(e)}};const Ie=class extends Ae{constructor(e,t,s){super(e||[],t,s),this.element="object"}primitive(){return"object"}toValue(){return this._content.reduce((e,t)=>(e[t.key.toValue()]=t.value?t.value.toValue():void 0,e),{})}get(e){const t=this.getMember(e);if(t)return t.value}getValue(e){const t=this.get(e);if(t)return t.toValue()}getMember(e){if(void 0!==e)return this._content.find(t=>t.key.toValue()===e)}remove(e){let t=null;return this.content=this._content.filter(s=>s.key.toValue()!==e||(t=s,!1)),t}getKey(e){const t=this.getMember(e);if(t)return t.key}set(e,t){if("string"==typeof e){const s=this.getMember(e);s?s.value=t:this._content.push(new Ce(e,t))}else if("object"==typeof e&&!Array.isArray(e))for(const t of Object.keys(e))this.set(t,e[t]);return this}keys(){return this._content.map(e=>e.key.toValue())}values(){return this._content.map(e=>e.value.toValue())}hasKey(e){return this._content.some(t=>t.key.equals(e))}items(){return this._content.map(e=>[e.key.toValue(),e.value.toValue()])}map(e,t){return this._content.map(s=>e.call(t,s.value,s.key,s))}compactMap(e,t){const s=[];return this.forEach((n,r,i)=>{const o=e.call(t,n,r,i);o&&s.push(o)}),s}filter(e,t){return new _e(this._content).filter(e,t)}reject(e,t){const s=[];for(const n of this._content)e.call(t,n.value,n.key,n)||s.push(n);return new _e(s)}forEach(e,t){this._content.forEach(s=>e.call(t,s.value,s.key,s))}reduce(e,t){let s,n;void 0!==t?(s=0,n=this.refract(t)):(s=1,n=this._content[0]?.value);for(let t=s;t<this._content.length;t+=1){const s=this._content[t],r=e(n,s.value,s.key,s,this);n=void 0===r?r:this.refract(r)}return n}empty(){return new this.constructor([])}};class Te extends Ie{constructor(e,t,s){super(e,t,s),this.element="__styles__"}static transfer(e,t){t.style=e.style}static from(e){if(e.style)return new Te(e.style)}applyTo(e){e.style=this.toValue()}}const Pe=Te;const Fe=class{namespace;constructor(e){this.namespace=e||new this.Namespace}serialise(e){if(!(e instanceof this.namespace.elements.Element))throw new TypeError(`Given element \`${e}\` is not an Element instance`);const t={element:e.element};if(!e.isMetaEmpty){const s=this.serialiseMeta(e);s&&(t.meta=s.meta,s.rawKeys.length>0&&(t.__meta_raw__=s.rawKeys))}if(e.isAttributesEmpty||(t.attributes=this.serialiseObject(e.attributes)),!(e instanceof Se)){const s=Se.from(e);s&&(t.meta||(t.meta={}),t.meta.__mappings__=this.serialise(s))}if(!(e instanceof Pe)){const s=Pe.from(e);s&&(t.meta||(t.meta={}),t.meta.__styles__=this.serialise(s))}const s=this.serialiseContent(e.content);return void 0!==s&&(t.content=s),t}deserialise(e){if(!e.element)throw new Error("Given value is not an object containing an element name");const t=new(this.namespace.getElementClass(e.element));let s,n;t.element!==e.element&&(t.element=e.element);let r=e.meta;if(e.meta?.__mappings__||e.meta?.__styles__){const{__mappings__:t,__styles__:i,...o}=e.meta;s=t,n=i,r=Object.keys(o).length>0?o:void 0}const i=e.__meta_raw__?new Set(e.__meta_raw__):void 0;if(r)for(const[e,s]of Object.entries(r)){const n=this.deserialise(s);t.setMetaProperty(e,i?.has(e)?n.toValue():n)}if(s){this.deserialise(s).applyTo(t)}if(n){this.deserialise(n).applyTo(t)}e.attributes&&this.deserialiseObject(e.attributes,t.attributes);const o=this.deserialiseContent(e.content);return void 0===o&&null!==t.content||(t.content=o),t}serialiseContent(e){if(e instanceof this.namespace.elements.Element)return this.serialise(e);if(e instanceof this.namespace.KeyValuePair){const t=e,s={key:this.serialise(t.key)};return t.value&&(s.value=this.serialise(t.value)),s}if(e&&Array.isArray(e)){if(0===e.length)return;return e.map(e=>this.serialise(e))}return e}deserialiseContent(e){if(e){if(e.element)return this.deserialise(e);if(e.key){const t=new this.namespace.KeyValuePair(this.deserialise(e.key));return e.value&&(t.value=this.deserialise(e.value)),t}if(Array.isArray(e))return e.map(e=>this.deserialise(e))}return e}serialiseMeta(e){const t={},s=[];let n=!1;for(const[r,i]of Object.entries(e.meta))if(i instanceof this.namespace.elements.Element)t[r]=this.serialise(i),n=!0;else if(void 0!==i){const o=e.refract(i);t[r]=this.serialise(o),s.push(r),n=!0}return n?{meta:t,rawKeys:s}:void 0}serialiseObject(e){const t={};if(e.forEach((e,s)=>{e&&(t[s.toValue()]=this.serialise(e))}),0!==Object.keys(t).length)return t}deserialiseObject(e,t){Object.keys(e).forEach(s=>{t.set(s,this.deserialise(e[s]))})}};const Me=class extends ye{constructor(e,t,s){super(e??null,t,s),this.element="null"}primitive(){return"null"}set(e){throw new Error("Cannot set the value of null")}};const Be=class extends ye{constructor(e,t,s){super(e,t,s),this.element="number"}primitive(){return"number"}};const je=class extends ye{constructor(e,t,s){super(e,t,s),this.element="boolean"}primitive(){return"boolean"}};const ke=class extends Ae{constructor(e,t,s){super(e||[],t,s),this.element="array"}primitive(){return"array"}get(e){return this._content[e]}getValue(e){const t=this.get(e);if(t)return t.toValue()}set(e,t){return"number"==typeof e&&void 0!==t?this._content[e]=this.refract(t):this.content=e,this}remove(e){return this._content.splice(e,1)[0]??null}map(e,t){return this._content.map(e,t)}flatMap(e,t){return this._content.flatMap(e,t)}compactMap(e,t){const s=[];for(const n of this._content){const r=e.call(t,n);r&&s.push(r)}return s}filter(e,t){const s=this._content.filter(e,t);return new this.constructor(s)}reject(e,t){const s=[];for(const n of this._content)e.call(t,n)||s.push(n);return new this.constructor(s)}reduce(e,t){let s,n;void 0!==t?(s=0,n=this.refract(t)):(s=1,n=this.first);for(let t=s;t<this.length;t+=1){const s=e(n,this._content[t],t,this);n=void 0===s?s:this.refract(s)}return n}forEach(e,t){this._content.forEach((s,n)=>{e.call(t,s,n)})}empty(){return new this.constructor([])}};const Ne=class extends ye{constructor(e,t,s){super(e||[],t,s),this.element="ref",this.path||(this.path="element")}get path(){if(this.hasAttributesProperty("path"))return this.attributes.get("path")}set path(e){this.attributes.set("path",e)}};const Re=class extends ye{constructor(e,t,s){super(e||[],t,s),this.element="link"}get relation(){if(this.hasAttributesProperty("relation"))return this.attributes.get("relation")}set relation(e){this.attributes.set("relation",e)}get href(){if(this.hasAttributesProperty("href"))return this.attributes.get("href")}set href(e){this.attributes.set("href",e)}},qe=e=>null===e,$e=e=>"string"==typeof e,De=e=>"number"==typeof e,Ve=e=>"boolean"==typeof e,Le=e=>null!==e&&"object"==typeof e;class Ue{elementMap={};elementDetection=[];Element;KeyValuePair;_elements;_attributeElementKeys=[];_attributeElementArrayKeys=[];constructor(e){this.Element=ye,this.KeyValuePair=pe,e&&e.noDefault||this.useDefault()}use(e){return e.namespace&&e.namespace({base:this}),e.load&&e.load({base:this}),this}useDefault(){return this.register("null",Me).register("string",be).register("number",Be).register("boolean",je).register("array",ke).register("object",Ie).register("member",Ce).register("ref",Ne).register("link",Re).register("sourceMap",Se),this.detect(qe,Me,!1).detect($e,be,!1).detect(De,Be,!1).detect(Ve,je,!1).detect(Array.isArray,ke,!1).detect(Le,Ie,!1),this}register(e,t){return this._elements=void 0,this.elementMap[e]=t,this}unregister(e){return this._elements=void 0,delete this.elementMap[e],this}detect(e,t,s){return void 0===s||s?this.elementDetection.unshift([e,t]):this.elementDetection.push([e,t]),this}toElement(e){if(e instanceof this.Element)return e;let t;for(const[s,n]of this.elementDetection)if(s(e)){t=new n(e);break}return t}getElementClass(e){const t=this.elementMap[e];return void 0===t?this.Element:t}fromRefract(e){return this.serialiser.deserialise(e)}toRefract(e){return this.serialiser.serialise(e)}get elements(){return void 0===this._elements&&(this._elements={Element:this.Element},Object.keys(this.elementMap).forEach(e=>{const t=e[0].toUpperCase()+e.substring(1);this._elements[t]=this.elementMap[e]})),this._elements}get serialiser(){return new Fe(this)}}Fe.prototype.Namespace=Ue;const He=Ue;class We extends AggregateError{constructor(e,t,s){super(e,t,s),this.name=this.constructor.name,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}const Ge=We;class Ze extends Error{static[Symbol.hasInstance](e){return super[Symbol.hasInstance](e)||Function.prototype[Symbol.hasInstance].call(Ge,e)}constructor(e,t){super(e,t),this.name=this.constructor.name,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}const Je=Ze;const ze=class extends Je{},Xe=e=>e instanceof ye,Qe=e=>e instanceof be,Ke=e=>e instanceof Be,Ye=e=>e instanceof Me,et=e=>e instanceof je,tt=e=>e instanceof ke,st=e=>e instanceof Ie,nt=e=>e instanceof Ce,rt=e=>st(e)&&"object"===e.element||tt(e)&&"array"===e.element||et(e)&&"boolean"===e.element||Ke(e)&&"number"===e.element||Qe(e)&&"string"===e.element||Ye(e)&&"null"===e.element||nt(e)&&"member"===e.element,it=e=>void 0!==e.style,ot=e=>"number"==typeof e.startLine&&"number"==typeof e.startCharacter&&"number"==typeof e.startOffset&&"number"==typeof e.endLine&&"number"==typeof e.endCharacter&&"number"==typeof e.endOffset,at=(e,t)=>0===t.length||!!Xe(e)&&(!e.isMetaEmpty&&(!!e.hasMetaProperty("classes")&&t.every(t=>e.classes.includes(t))));const ct=class extends ke{constructor(e,t,s){super(e,t,s),this.element="parseResult"}get api(){return this.filter(e=>at(e,["api"])).first}get results(){return this.filter(e=>at(e,["result"]))}get result(){return this.results.first}get annotations(){return this.filter(e=>"annotation"===e.element)}get warnings(){return this.filter(e=>"annotation"===e.element&&at(e,["warning"]))}get errors(){return this.filter(e=>"annotation"===e.element&&at(e,["error"]))}get isEmpty(){return 0===this.reject(e=>"annotation"===e.element).length}replaceResult(e){const{result:t}=this;if(void 0===t)return!1;const s=this._content,n=s.findIndex(e=>e===t);return-1!==n&&(s[n]=e,!0)}};const lt=class extends Je{constructor(e,t){if(super(e,t),null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}};const ut=class extends lt{value;constructor(e,t){super(e,t),void 0!==t&&(this.value=t.value)}};const dt=class extends ut{};const ht=class extends ut{},pt=(e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const r=ft(e);s.set(e,r);const{content:i}=e;return Array.isArray(i)?r.content=i.map(e=>pt(e,n)):Xe(i)?r.content=pt(i,n):r.content=i instanceof pe?mt(i,n):i,r},mt=(e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const{key:r,value:i}=e,o=void 0!==r?pt(r,n):void 0,a=void 0!==i?pt(i,n):void 0,c=new pe(o,a);return s.set(e,c),c},_t=(e,t={})=>{if(e instanceof pe)return mt(e,t);if(e instanceof _e)return((e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const r=[...e].map(e=>pt(e,n)),i=new _e(r);return s.set(e,i),i})(e,t);if(Xe(e))return pt(e,t);throw new dt("Value provided to cloneDeep function couldn't be cloned",{value:e})};_t.safe=e=>{try{return _t(e)}catch{return e}};const gt=e=>{const{key:t,value:s}=e;return new pe(t,s)},ft=e=>{const t=new(0,e.constructor);t.element=e.element,e.isMetaEmpty||(t.meta=e.meta.cloneDeep()),e.isAttributesEmpty||(t.attributes=_t(e.attributes)),ot(e)&&Se.transfer(e,t),it(e)&&(t.style=ue(e.style));const{content:s}=e;return Xe(s)?t.content=ft(s):Array.isArray(s)?t.content=[...s]:t.content=s instanceof pe?gt(s):s,t},yt=e=>{if(e instanceof pe)return gt(e);if(e instanceof _e)return(e=>{const t=[...e];return new _e(t)})(e);if(Xe(e))return ft(e);throw new ht("Value provided to cloneShallow function couldn't be cloned",{value:e})};function bt(e){return void 0===e?new Me:xt(e)}function xt(e){if(e instanceof ye)return e;if("string"==typeof e)return new be(e);if("number"==typeof e)return new Be(e);if("boolean"==typeof e)return new je(e);if(null===e)return new Me;if(Array.isArray(e))return new ke(e.map(bt));if("object"==typeof e)return new Ie(e);throw new Error("Cannot refract value of type "+typeof e)}yt.safe=e=>{try{return yt(e)}catch{return e}},ye.prototype.ObjectElement=Ie,ye.prototype.ArrayElement=ke,ye.prototype.RefElement=Ne,ye.prototype.MemberElement=Ce,ye.prototype.refract=xt,he.prototype.Element=ye,he.prototype.cloneDeepElement=e=>_t(e);var vt=__webpack_require__(333);const wt=new Uint8Array([0,97,115,109,1,0,0,0,0,16,8,100,121,108,105,110,107,46,48,1,5,156,91,4,30,0,1,179,1,23,96,1,127,1,127,96,2,127,127,1,127,96,1,127,0,96,3,127,127,127,0,96,3,127,127,127,1,127,96,2,127,127,0,96,4,127,127,127,127,1,127,96,5,127,127,127,127,127,0,96,4,127,127,127,127,0,96,0,0,96,5,127,127,127,127,127,1,127,96,0,1,127,96,8,127,127,127,127,127,127,127,127,1,127,96,7,127,127,127,127,127,127,127,0,96,6,127,124,127,127,127,127,1,127,96,16,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,0,96,6,127,127,127,127,127,127,0,96,2,126,127,1,127,96,7,127,127,127,127,127,127,127,1,127,96,2,124,127,1,124,96,4,127,127,127,127,1,126,96,4,127,126,127,127,1,127,96,3,127,126,127,1,126,2,219,3,17,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,8,102,100,95,119,114,105,116,101,0,6,3,101,110,118,22,101,109,115,99,114,105,112,116,101,110,95,114,101,115,105,122,101,95,104,101,97,112,0,0,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,7,102,100,95,115,101,101,107,0,21,3,101,110,118,9,95,97,98,111,114,116,95,106,115,0,9,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,8,102,100,95,99,108,111,115,101,0,0,3,101,110,118,35,116,114,101,101,95,115,105,116,116,101,114,95,113,117,101,114,121,95,112,114,111,103,114,101,115,115,95,99,97,108,108,98,97,99,107,0,0,3,101,110,118,29,116,114,101,101,95,115,105,116,116,101,114,95,112,114,111,103,114,101,115,115,95,99,97,108,108,98,97,99,107,0,1,3,101,110,118,26,116,114,101,101,95,115,105,116,116,101,114,95,112,97,114,115,101,95,99,97,108,108,98,97,99,107,0,7,3,101,110,118,24,116,114,101,101,95,115,105,116,116,101,114,95,108,111,103,95,99,97,108,108,98,97,99,107,0,5,3,101,110,118,15,95,95,115,116,97,99,107,95,112,111,105,110,116,101,114,3,127,1,3,101,110,118,13,95,95,109,101,109,111,114,121,95,98,97,115,101,3,127,0,3,101,110,118,12,95,95,116,97,98,108,101,95,98,97,115,101,3,127,0,7,71,79,84,46,109,101,109,11,95,95,115,116,97,99,107,95,108,111,119,3,127,1,7,71,79,84,46,109,101,109,12,95,95,115,116,97,99,107,95,104,105,103,104,3,127,1,7,71,79,84,46,109,101,109,11,95,95,104,101,97,112,95,98,97,115,101,3,127,1,3,101,110,118,6,109,101,109,111,114,121,2,1,128,4,128,128,2,3,101,110,118,25,95,95,105,110,100,105,114,101,99,116,95,102,117,110,99,116,105,111,110,95,116,97,98,108,101,1,112,0,30,3,149,2,147,2,5,5,6,0,2,3,7,5,5,4,0,5,5,2,7,3,16,3,4,0,3,6,10,3,0,0,17,4,4,5,3,2,2,1,4,0,4,1,1,12,1,2,4,0,5,8,7,4,2,1,3,8,0,0,5,2,5,0,9,1,3,1,0,4,11,2,2,8,12,3,5,1,6,3,4,7,13,7,8,3,3,0,0,5,1,1,6,8,0,18,19,4,0,0,0,4,5,4,4,4,0,20,0,5,7,5,10,4,8,5,1,1,3,3,5,3,1,1,1,1,1,4,4,4,4,0,0,0,10,1,1,2,3,1,1,5,2,0,0,0,0,1,0,4,4,0,3,4,0,0,11,0,2,0,0,0,0,5,4,0,5,14,4,1,4,22,0,15,0,2,15,0,0,0,0,0,0,0,0,13,1,2,2,0,0,0,2,2,2,2,2,9,2,2,2,0,2,2,2,2,5,5,1,5,0,0,0,2,2,5,1,1,0,2,0,0,0,0,0,2,2,0,0,0,0,0,0,5,0,0,0,0,0,1,0,5,2,2,2,2,5,2,2,2,2,5,2,2,1,1,2,0,6,10,0,3,5,9,11,4,4,4,0,2,0,4,0,1,1,1,1,0,0,9,9,6,57,8,127,1,65,200,211,0,11,127,1,65,192,211,0,11,127,1,65,204,211,0,11,127,1,65,196,211,0,11,127,1,65,136,213,0,11,127,1,65,144,213,0,11,127,1,65,148,219,0,11,127,1,65,152,219,0,11,7,134,33,152,1,17,95,95,119,97,115,109,95,99,97,108,108,95,99,116,111,114,115,0,155,2,6,109,97,108,108,111,99,0,34,6,99,97,108,108,111,99,0,42,7,114,101,97,108,108,111,99,0,93,4,102,114,101,101,0,50,13,116,115,95,114,97,110,103,101,95,101,100,105,116,0,79,6,109,101,109,99,109,112,0,18,24,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,99,111,117,110,116,0,153,2,23,116,115,95,108,97,110,103,117,97,103,101,95,115,116,97,116,101,95,99,111,117,110,116,0,152,2,23,116,115,95,108,97,110,103,117,97,103,101,95,97,98,105,95,118,101,114,115,105,111,110,0,147,2,16,116,115,95,108,97,110,103,117,97,103,101,95,110,97,109,101,0,143,2,23,116,115,95,108,97,110,103,117,97,103,101,95,102,105,101,108,100,95,99,111,117,110,116,0,135,2,22,116,115,95,108,97,110,103,117,97,103,101,95,110,101,120,116,95,115,116,97,116,101,0,43,23,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,110,97,109,101,0,242,1,27,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,102,111,114,95,110,97,109,101,0,30,7,115,116,114,110,99,109,112,0,27,23,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,116,121,112,101,0,68,29,116,115,95,108,97,110,103,117,97,103,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,105,100,0,211,1,25,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,110,101,119,0,189,1,28,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,100,101,108,101,116,101,0,178,1,33,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,114,101,115,101,116,95,115,116,97,116,101,0,172,1,27,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,114,101,115,101,116,0,171,1,26,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,110,101,120,116,0,168,1,36,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,99,117,114,114,101,110,116,95,115,121,109,98,111,108,0,165,1,13,116,115,95,112,111,105,110,116,95,101,100,105,116,0,141,1,16,116,115,95,112,97,114,115,101,114,95,100,101,108,101,116,101,0,140,1,15,116,115,95,112,97,114,115,101,114,95,114,101,115,101,116,0,41,22,116,115,95,112,97,114,115,101,114,95,115,101,116,95,108,97,110,103,117,97,103,101,0,139,1,29,116,115,95,112,97,114,115,101,114,95,115,101,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,0,56,12,116,115,95,113,117,101,114,121,95,110,101,119,0,137,1,15,116,115,95,113,117,101,114,121,95,100,101,108,101,116,101,0,75,8,105,115,119,115,112,97,99,101,0,102,8,105,115,119,97,108,110,117,109,0,19,22,116,115,95,113,117,101,114,121,95,112,97,116,116,101,114,110,95,99,111,117,110,116,0,136,1,22,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,99,111,117,110,116,0,135,1,21,116,115,95,113,117,101,114,121,95,115,116,114,105,110,103,95,99,111,117,110,116,0,134,1,28,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,110,97,109,101,95,102,111,114,95,105,100,0,133,1,34,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,113,117,97,110,116,105,102,105,101,114,95,102,111,114,95,105,100,0,132,1,28,116,115,95,113,117,101,114,121,95,115,116,114,105,110,103,95,118,97,108,117,101,95,102,111,114,95,105,100,0,131,1,31,116,115,95,113,117,101,114,121,95,112,114,101,100,105,99,97,116,101,115,95,102,111,114,95,112,97,116,116,101,114,110,0,130,1,31,116,115,95,113,117,101,114,121,95,115,116,97,114,116,95,98,121,116,101,95,102,111,114,95,112,97,116,116,101,114,110,0,129,1,29,116,115,95,113,117,101,114,121,95,101,110,100,95,98,121,116,101,95,102,111,114,95,112,97,116,116,101,114,110,0,128,1,26,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,114,111,111,116,101,100,0,127,29,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,110,111,110,95,108,111,99,97,108,0,126,38,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,103,117,97,114,97,110,116,101,101,100,95,97,116,95,115,116,101,112,0,125,24,116,115,95,113,117,101,114,121,95,100,105,115,97,98,108,101,95,99,97,112,116,117,114,101,0,124,24,116,115,95,113,117,101,114,121,95,100,105,115,97,98,108,101,95,112,97,116,116,101,114,110,0,123,12,116,115,95,116,114,101,101,95,99,111,112,121,0,145,2,14,116,115,95,116,114,101,101,95,100,101,108,101,116,101,0,144,2,7,116,115,95,105,110,105,116,0,139,2,18,116,115,95,112,97,114,115,101,114,95,110,101,119,95,119,97,115,109,0,138,2,28,116,115,95,112,97,114,115,101,114,95,101,110,97,98,108,101,95,108,111,103,103,101,114,95,119,97,115,109,0,137,2,20,116,115,95,112,97,114,115,101,114,95,112,97,114,115,101,95,119,97,115,109,0,134,2,30,116,115,95,112,97,114,115,101,114,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,131,2,30,116,115,95,108,97,110,103,117,97,103,101,95,116,121,112,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,130,2,32,116,115,95,108,97,110,103,117,97,103,101,95,116,121,112,101,95,105,115,95,118,105,115,105,98,108,101,95,119,97,115,109,0,129,2,25,116,115,95,108,97,110,103,117,97,103,101,95,109,101,116,97,100,97,116,97,95,119,97,115,109,0,128,2,27,116,115,95,108,97,110,103,117,97,103,101,95,115,117,112,101,114,116,121,112,101,115,95,119,97,115,109,0,255,1,25,116,115,95,108,97,110,103,117,97,103,101,95,115,117,98,116,121,112,101,115,95,119,97,115,109,0,254,1,22,116,115,95,116,114,101,101,95,114,111,111,116,95,110,111,100,101,95,119,97,115,109,0,253,1,34,116,115,95,116,114,101,101,95,114,111,111,116,95,110,111,100,101,95,119,105,116,104,95,111,102,102,115,101,116,95,119,97,115,109,0,252,1,17,116,115,95,116,114,101,101,95,101,100,105,116,95,119,97,115,109,0,251,1,28,116,115,95,116,114,101,101,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,250,1,31,116,115,95,116,114,101,101,95,103,101,116,95,99,104,97,110,103,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,249,1,23,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,110,101,119,95,119,97,115,109,0,248,1,24,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,111,112,121,95,119,97,115,109,0,247,1,26,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,100,101,108,101,116,101,95,119,97,115,109,0,246,1,25,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,114,101,115,101,116,95,119,97,115,109,0,245,1,28,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,114,101,115,101,116,95,116,111,95,119,97,115,109,0,244,1,36,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,119,97,115,109,0,243,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,108,97,115,116,95,99,104,105,108,100,95,119,97,115,109,0,241,1,46,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,240,1,49,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,239,1,37,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,110,101,120,116,95,115,105,98,108,105,110,103,95,119,97,115,109,0,238,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,112,114,101,118,105,111,117,115,95,115,105,98,108,105,110,103,95,119,97,115,109,0,237,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,100,101,115,99,101,110,100,97,110,116,95,119,97,115,109,0,236,1,31,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,112,97,114,101,110,116,95,119,97,115,109,0,235,1,40,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,116,121,112,101,95,105,100,95,119,97,115,109,0,234,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,115,116,97,116,101,95,105,100,95,119,97,115,109,0,233,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,232,1,43,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,115,95,109,105,115,115,105,110,103,95,119,97,115,109,0,231,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,100,95,119,97,115,109,0,230,1,34,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,115,116,97,114,116,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,229,1,32,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,101,110,100,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,228,1,31,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,115,116,97,114,116,95,105,110,100,101,120,95,119,97,115,109,0,227,1,29,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,101,110,100,95,105,110,100,101,120,95,119,97,115,109,0,226,1,36,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,225,1,33,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,100,101,112,116,104,95,119,97,115,109,0,224,1,44,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,100,101,115,99,101,110,100,97,110,116,95,105,110,100,101,120,95,119,97,115,109,0,223,1,32,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,119,97,115,109,0,222,1,19,116,115,95,110,111,100,101,95,115,121,109,98,111,108,95,119,97,115,109,0,221,1,33,116,115,95,110,111,100,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,99,104,105,108,100,95,119,97,115,109,0,220,1,39,116,115,95,110,111,100,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,110,97,109,101,100,95,99,104,105,108,100,95,119,97,115,109,0,219,1,33,116,115,95,110,111,100,101,95,99,104,105,108,100,114,101,110,95,98,121,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,218,1,33,116,115,95,110,111,100,101,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,98,121,116,101,95,119,97,115,109,0,217,1,39,116,115,95,110,111,100,101,95,102,105,114,115,116,95,110,97,109,101,100,95,99,104,105,108,100,95,102,111,114,95,98,121,116,101,95,119,97,115,109,0,216,1,27,116,115,95,110,111,100,101,95,103,114,97,109,109,97,114,95,115,121,109,98,111,108,95,119,97,115,109,0,215,1,24,116,115,95,110,111,100,101,95,99,104,105,108,100,95,99,111,117,110,116,95,119,97,115,109,0,214,1,30,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,95,99,111,117,110,116,95,119,97,115,109,0,213,1,18,116,115,95,110,111,100,101,95,99,104,105,108,100,95,119,97,115,109,0,212,1,24,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,95,119,97,115,109,0,210,1,30,116,115,95,110,111,100,101,95,99,104,105,108,100,95,98,121,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,209,1,25,116,115,95,110,111,100,101,95,110,101,120,116,95,115,105,98,108,105,110,103,95,119,97,115,109,0,208,1,25,116,115,95,110,111,100,101,95,112,114,101,118,95,115,105,98,108,105,110,103,95,119,97,115,109,0,207,1,31,116,115,95,110,111,100,101,95,110,101,120,116,95,110,97,109,101,100,95,115,105,98,108,105,110,103,95,119,97,115,109,0,206,1,31,116,115,95,110,111,100,101,95,112,114,101,118,95,110,97,109,101,100,95,115,105,98,108,105,110,103,95,119,97,115,109,0,205,1,29,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,99,111,117,110,116,95,119,97,115,109,0,204,1,19,116,115,95,110,111,100,101,95,112,97,114,101,110,116,95,119,97,115,109,0,203,1,34,116,115,95,110,111,100,101,95,99,104,105,108,100,95,119,105,116,104,95,100,101,115,99,101,110,100,97,110,116,95,119,97,115,109,0,202,1,33,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,201,1,39,116,115,95,110,111,100,101,95,110,97,109,101,100,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,199,1,36,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,198,1,42,116,115,95,110,111,100,101,95,110,97,109,101,100,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,197,1,24,116,115,95,110,111,100,101,95,115,116,97,114,116,95,112,111,105,110,116,95,119,97,115,109,0,196,1,22,116,115,95,110,111,100,101,95,101,110,100,95,112,111,105,110,116,95,119,97,115,109,0,195,1,24,116,115,95,110,111,100,101,95,115,116,97,114,116,95,105,110,100,101,120,95,119,97,115,109,0,194,1,22,116,115,95,110,111,100,101,95,101,110,100,95,105,110,100,101,120,95,119,97,115,109,0,193,1,22,116,115,95,110,111,100,101,95,116,111,95,115,116,114,105,110,103,95,119,97,115,109,0,192,1,21,116,115,95,110,111,100,101,95,99,104,105,108,100,114,101,110,95,119,97,115,109,0,191,1,27,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,114,101,110,95,119,97,115,109,0,190,1,32,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,115,95,111,102,95,116,121,112,101,95,119,97,115,109,0,188,1,21,116,115,95,110,111,100,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,187,1,24,116,115,95,110,111,100,101,95,104,97,115,95,99,104,97,110,103,101,115,95,119,97,115,109,0,186,1,22,116,115,95,110,111,100,101,95,104,97,115,95,101,114,114,111,114,95,119,97,115,109,0,185,1,21,116,115,95,110,111,100,101,95,105,115,95,101,114,114,111,114,95,119,97,115,109,0,184,1,23,116,115,95,110,111,100,101,95,105,115,95,109,105,115,115,105,110,103,95,119,97,115,109,0,183,1,21,116,115,95,110,111,100,101,95,105,115,95,101,120,116,114,97,95,119,97,115,109,0,182,1,24,116,115,95,110,111,100,101,95,112,97,114,115,101,95,115,116,97,116,101,95,119,97,115,109,0,181,1,29,116,115,95,110,111,100,101,95,110,101,120,116,95,112,97,114,115,101,95,115,116,97,116,101,95,119,97,115,109,0,180,1,21,116,115,95,113,117,101,114,121,95,109,97,116,99,104,101,115,95,119,97,115,109,0,179,1,22,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,115,95,119,97,115,109,0,176,1,6,109,101,109,115,101,116,0,51,6,109,101,109,99,112,121,0,36,7,109,101,109,109,111,118,101,0,153,1,8,105,115,119,97,108,112,104,97,0,103,8,105,115,119,98,108,97,110,107,0,157,1,8,105,115,119,100,105,103,105,116,0,162,1,8,105,115,119,108,111,119,101,114,0,158,1,8,105,115,119,117,112,112,101,114,0,154,1,9,105,115,119,120,100,105,103,105,116,0,151,1,6,109,101,109,99,104,114,0,100,6,115,116,114,108,101,110,0,101,6,115,116,114,99,109,112,0,150,1,7,115,116,114,110,99,97,116,0,156,1,7,115,116,114,110,99,112,121,0,152,1,8,116,111,119,108,111,119,101,114,0,164,1,8,116,111,119,117,112,112,101,114,0,163,1,8,115,101,116,84,104,114,101,119,0,166,1,25,95,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,114,101,115,116,111,114,101,0,161,1,23,95,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,97,108,108,111,99,0,160,1,28,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,103,101,116,95,99,117,114,114,101,110,116,0,159,1,24,95,95,119,97,115,109,95,97,112,112,108,121,95,100,97,116,97,95,114,101,108,111,99,115,0,154,2,8,2,200,1,9,64,1,0,35,2,11,30,155,1,149,1,148,1,146,1,145,1,144,1,138,1,151,2,149,2,150,2,148,2,37,146,2,147,1,143,1,142,1,50,142,2,141,2,140,2,136,2,133,2,132,2,177,1,175,1,173,1,174,1,170,1,169,1,167,1,12,1,1,10,212,129,11,147,2,208,1,1,3,127,2,64,32,1,40,2,76,34,2,65,0,78,4,64,32,2,69,13,1,35,1,65,148,214,0,106,40,2,24,32,2,65,255,255,255,255,3,113,71,13,1,11,2,64,32,0,65,255,1,113,34,3,32,1,40,2,80,70,13,0,32,1,40,2,20,34,2,32,1,40,2,16,70,13,0,32,1,32,2,65,1,106,54,2,20,32,2,32,0,58,0,0,15,11,32,1,32,3,16,105,15,11,32,1,65,204,0,106,34,2,32,2,40,2,0,34,3,65,255,255,255,255,3,32,3,27,54,2,0,2,64,2,64,32,0,65,255,1,113,34,4,32,1,40,2,80,70,13,0,32,1,40,2,20,34,3,32,1,40,2,16,70,13,0,32,1,32,3,65,1,106,54,2,20,32,3,32,0,58,0,0,12,1,11,32,1,32,4,16,105,11,32,2,40,2,0,26,32,2,65,0,54,2,0,11,205,5,2,7,127,1,126,2,64,32,1,45,0,0,65,1,113,13,0,32,0,65,0,54,2,16,32,1,40,2,0,34,2,40,2,0,26,32,2,32,2,40,2,0,34,2,65,1,107,54,2,0,32,2,65,1,70,4,64,32,0,40,2,12,33,2,32,0,32,0,40,2,16,34,3,65,1,106,34,4,32,0,40,2,20,34,5,75,4,127,65,8,32,5,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,20,32,0,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,0,32,2,54,2,12,32,2,32,3,65,3,116,106,32,1,41,2,0,55,2,0,11,32,0,40,2,16,34,1,69,13,0,3,64,32,0,32,1,65,1,107,34,1,54,2,16,2,64,32,0,40,2,12,32,1,65,3,116,106,40,2,0,34,4,40,2,36,34,2,4,64,65,0,33,1,65,0,32,4,32,2,65,3,116,107,34,6,32,4,65,1,113,27,3,64,2,64,32,6,32,1,65,3,116,106,41,2,0,34,9,167,34,2,65,1,113,13,0,32,2,32,2,40,2,0,34,2,65,1,107,54,2,0,32,2,65,1,71,13,0,32,0,40,2,12,33,2,32,0,32,0,40,2,16,34,3,65,1,106,34,5,32,0,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,5,32,3,32,5,75,27,34,3,32,3,65,8,77,27,34,5,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,5,54,2,20,32,0,40,2,16,34,3,65,1,106,5,32,5,11,54,2,16,32,0,32,2,54,2,12,32,2,32,3,65,3,116,106,32,9,55,2,0,11,32,1,65,1,106,34,1,32,4,40,2,36,73,13,0,11,35,8,40,2,0,17,2,0,12,1,11,2,64,32,4,45,0,44,65,192,0,113,69,13,0,32,4,40,2,72,65,25,73,13,0,32,4,40,2,48,35,8,40,2,0,17,2,0,11,2,64,32,0,40,2,8,34,2,69,13,0,32,0,40,2,4,34,5,65,1,106,34,1,65,32,75,13,0,32,0,40,2,0,33,3,32,0,32,1,32,2,75,4,127,65,8,32,2,65,1,116,34,2,32,1,32,1,32,2,73,27,34,1,32,1,65,8,77,27,34,2,65,3,116,33,1,2,127,32,3,4,64,32,3,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,1,11,54,2,4,32,0,32,3,54,2,0,32,3,32,5,65,3,116,106,34,1,65,0,54,2,4,32,1,32,4,54,2,0,12,1,11,32,4,35,8,40,2,0,17,2,0,11,32,0,40,2,16,34,1,13,0,11,11,11,37,1,1,127,35,0,65,16,107,34,4,36,0,32,4,32,3,54,2,12,32,0,32,1,32,2,32,3,16,95,32,4,65,16,106,36,0,11,153,3,1,7,127,32,0,32,0,40,2,0,32,0,45,0,16,106,34,3,54,2,0,2,64,32,0,40,2,8,34,5,32,3,75,4,64,32,0,32,3,44,0,0,34,1,65,255,1,113,34,2,54,2,12,65,1,33,4,32,1,65,0,72,4,64,2,64,32,5,32,3,107,34,6,65,1,70,13,0,2,64,32,1,65,96,79,4,64,2,64,32,1,65,111,77,4,64,32,0,32,2,65,15,113,34,2,54,2,12,35,1,65,222,10,106,32,2,106,45,0,0,32,3,45,0,1,34,1,65,5,118,118,65,1,113,69,13,4,32,1,65,63,113,33,7,65,2,33,1,12,1,11,32,0,32,2,65,240,1,107,34,2,54,2,12,32,1,65,116,75,13,3,35,1,65,176,12,106,32,3,45,0,1,34,1,65,4,118,106,44,0,0,32,2,118,65,1,113,69,13,3,32,0,32,1,65,63,113,32,2,65,6,116,114,34,2,54,2,12,65,2,33,4,32,6,65,2,70,13,3,65,3,33,1,32,3,45,0,2,65,128,127,115,34,7,65,255,1,113,65,63,75,13,3,11,32,0,32,7,65,255,1,113,32,2,65,6,116,114,34,2,54,2,12,32,6,34,4,32,1,71,13,1,12,2,11,32,1,65,66,73,13,1,32,0,32,2,65,31,113,34,2,54,2,12,65,1,33,1,11,32,1,32,3,106,45,0,0,65,128,127,115,65,255,1,113,34,4,65,63,77,13,3,32,1,33,4,11,32,0,65,127,54,2,12,11,32,0,32,4,58,0,16,32,3,32,5,73,15,11,32,0,65,0,54,2,12,32,0,65,0,58,0,16,32,3,32,5,73,15,11,32,0,32,2,65,6,116,32,4,114,54,2,12,32,0,32,1,65,1,106,58,0,16,32,3,32,5,73,11,219,3,1,6,127,3,64,32,0,40,2,12,16,102,4,64,32,0,16,12,26,12,1,11,32,0,40,2,12,65,59,70,4,64,32,0,16,12,26,32,0,40,2,12,33,1,3,64,2,64,32,1,14,11,3,0,0,0,0,0,0,0,0,0,3,0,11,32,0,32,0,40,2,0,32,0,45,0,16,106,34,4,54,2,0,32,0,2,127,2,64,32,0,40,2,8,34,5,32,4,75,4,64,32,0,32,4,44,0,0,34,2,65,255,1,113,34,1,54,2,12,65,1,32,2,65,0,78,13,2,26,65,1,33,3,2,64,32,5,32,4,107,34,5,65,1,70,13,0,2,64,32,2,65,96,79,4,64,2,64,32,2,65,111,77,4,64,32,0,32,1,65,15,113,34,1,54,2,12,35,1,65,222,10,106,32,1,106,45,0,0,32,4,45,0,1,34,2,65,5,118,118,65,1,113,69,13,4,32,2,65,63,113,33,6,65,2,33,2,12,1,11,32,0,32,1,65,240,1,107,34,1,54,2,12,32,2,65,116,75,13,3,35,1,65,176,12,106,32,4,45,0,1,34,2,65,4,118,106,44,0,0,32,1,118,65,1,113,69,13,3,32,0,32,2,65,63,113,32,1,65,6,116,114,34,1,54,2,12,65,2,33,3,32,5,65,2,70,13,3,65,3,33,2,32,4,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,0,32,6,65,255,1,113,32,1,65,6,116,114,34,1,54,2,12,32,5,34,3,32,2,71,13,1,12,2,11,32,2,65,66,73,13,1,32,0,32,1,65,31,113,34,1,54,2,12,65,1,33,2,11,32,2,32,4,106,45,0,0,65,128,127,115,65,255,1,113,34,3,65,63,77,13,2,32,2,33,3,11,65,127,33,1,32,0,65,127,54,2,12,32,0,32,3,58,0,16,12,3,11,32,0,65,0,54,2,12,32,0,65,0,58,0,16,12,4,11,32,0,32,1,65,6,116,32,3,114,34,1,54,2,12,32,2,65,1,106,11,58,0,16,12,0,11,0,11,11,11,23,0,32,0,45,0,0,65,32,113,69,4,64,32,1,32,2,32,0,16,104,26,11,11,107,1,1,127,35,0,65,128,2,107,34,5,36,0,2,64,32,2,32,3,76,13,0,32,4,65,128,192,4,113,13,0,32,5,32,1,32,2,32,3,107,34,3,65,128,2,32,3,65,128,2,73,34,1,27,16,51,26,32,1,69,4,64,3,64,32,0,32,5,65,128,2,16,14,32,3,65,128,2,107,34,3,65,255,1,75,13,0,11,11,32,0,32,5,32,3,16,14,11,32,5,65,128,2,106,36,0,11,216,1,2,5,127,1,126,2,127,32,1,40,2,4,32,1,40,2,8,34,5,65,28,108,106,34,3,65,28,107,40,2,0,34,6,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,33,4,65,0,33,2,2,64,32,4,13,0,32,5,65,2,73,4,64,32,1,47,1,16,33,2,12,1,11,32,3,65,56,107,40,2,0,40,2,0,47,1,66,34,4,69,13,0,32,1,40,2,0,40,2,8,34,2,40,2,84,32,2,47,1,36,32,4,108,65,1,116,106,32,3,65,8,107,40,2,0,65,1,116,106,47,1,0,33,2,11,32,3,65,24,107,41,2,0,33,7,32,3,65,16,107,40,2,0,33,3,32,0,32,1,40,2,0,54,2,20,32,0,32,6,54,2,16,32,0,32,2,54,2,12,32,0,32,3,54,2,8,32,0,32,7,55,2,0,11,233,1,1,6,127,35,0,65,16,107,34,4,36,0,32,0,40,2,0,34,2,32,1,65,5,116,34,6,106,34,3,40,2,0,4,64,32,0,40,2,52,33,5,32,3,40,2,12,4,64,32,4,32,3,41,2,12,55,3,8,32,5,32,4,65,8,106,16,10,11,32,3,40,2,20,4,64,32,4,32,3,41,2,20,55,3,0,32,5,32,4,16,10,11,32,3,40,2,4,34,2,4,64,32,2,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,3,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,3,40,2,0,32,0,65,36,106,32,5,16,26,32,0,40,2,0,33,2,11,32,0,40,2,4,32,1,65,127,115,106,65,5,116,34,1,4,64,32,2,32,6,106,34,2,32,2,65,32,106,32,1,252,10,0,0,11,32,0,32,0,40,2,4,65,1,107,54,2,4,32,4,65,16,106,36,0,11,129,1,1,2,127,2,64,2,64,32,2,65,4,79,4,64,32,0,32,1,114,65,3,113,13,1,3,64,32,0,40,2,0,32,1,40,2,0,71,13,2,32,1,65,4,106,33,1,32,0,65,4,106,33,0,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,3,64,32,0,45,0,0,34,3,32,1,45,0,0,34,4,70,4,64,32,1,65,1,106,33,1,32,0,65,1,106,33,0,32,2,65,1,107,34,2,13,1,12,2,11,11,32,3,32,4,107,15,11,65,0,11,29,1,1,127,65,1,33,1,32,0,65,48,107,65,10,79,4,127,32,0,16,103,65,0,71,5,65,1,11,11,20,0,32,1,40,2,76,65,0,72,26,32,0,65,2,32,1,16,104,26,11,184,13,1,16,127,32,0,40,2,0,34,2,65,0,54,2,48,32,2,66,0,55,2,52,32,2,65,0,59,1,64,32,2,65,0,54,2,32,32,2,65,0,54,2,60,32,2,32,2,47,1,44,65,191,252,3,113,59,1,44,32,2,47,1,66,34,5,4,64,32,1,40,2,84,32,1,47,1,36,32,5,108,65,1,116,106,33,11,11,32,2,32,2,40,2,36,34,5,65,3,116,107,33,12,2,64,32,5,69,4,64,12,1,11,65,0,32,12,32,2,65,1,113,27,33,16,3,64,32,16,32,10,65,3,116,106,34,4,40,2,0,33,3,32,4,47,1,6,33,5,32,4,47,1,4,33,8,2,64,32,2,40,2,20,34,17,13,0,32,3,65,1,113,13,0,32,3,45,0,45,65,1,113,69,13,0,32,2,32,2,47,1,44,65,128,2,114,59,1,44,11,2,64,32,2,2,127,2,64,2,64,32,2,2,127,32,3,65,1,113,34,14,69,4,64,32,3,45,0,44,65,128,1,113,4,64,32,2,32,2,47,1,44,65,128,1,114,59,1,44,11,32,3,40,2,12,33,5,32,3,40,2,8,33,6,32,3,40,2,4,33,4,32,10,13,3,32,2,32,5,54,2,12,32,2,32,6,54,2,8,32,2,32,4,54,2,4,32,3,40,2,20,33,9,32,3,40,2,16,33,5,32,3,40,2,24,12,1,11,32,5,65,255,1,113,33,4,32,10,13,1,32,2,32,4,54,2,4,32,2,32,8,65,255,1,113,54,2,12,32,2,32,8,65,8,118,65,15,113,54,2,8,65,0,33,9,32,5,65,128,254,3,113,65,8,118,34,5,11,54,2,24,32,2,32,9,54,2,20,32,2,32,5,54,2,16,12,3,11,32,8,65,255,1,113,33,9,32,8,65,8,118,65,15,113,33,6,32,5,65,8,118,34,15,32,4,106,12,1,11,65,0,32,5,32,3,40,2,20,34,5,27,33,9,32,5,32,6,106,33,6,32,3,40,2,24,33,15,32,3,40,2,16,32,4,106,11,32,2,40,2,16,106,34,5,54,2,16,32,2,32,6,32,17,106,173,32,9,32,15,106,65,0,32,2,40,2,24,32,6,27,106,173,66,32,134,132,55,2,20,32,2,40,2,4,33,4,11,32,4,32,5,106,33,4,2,64,2,64,2,64,2,127,2,64,2,64,2,64,2,127,32,2,2,127,2,64,2,64,2,64,2,64,2,64,2,127,2,64,2,64,32,14,69,4,64,32,3,40,2,28,33,6,32,3,47,1,40,34,9,65,254,255,3,71,4,64,65,226,4,33,5,32,2,32,3,45,0,45,65,2,113,4,127,65,226,4,5,32,3,40,2,32,11,32,2,40,2,32,106,54,2,32,11,32,4,32,6,106,33,8,32,3,40,2,36,34,4,32,2,47,1,40,65,254,255,3,73,13,3,26,32,4,34,5,32,3,47,1,44,34,6,65,4,113,13,3,26,32,5,69,34,5,32,9,65,255,255,3,70,113,13,1,32,6,65,1,113,13,2,32,5,13,1,32,2,32,2,40,2,32,32,3,40,2,48,65,228,0,108,106,54,2,32,32,3,65,36,106,33,6,12,8,11,32,2,32,2,40,2,32,32,3,65,26,116,65,31,117,65,226,4,113,106,34,6,54,2,32,32,4,32,8,65,128,224,3,113,65,12,118,106,34,4,32,7,32,4,32,7,75,27,33,7,32,3,65,8,113,33,5,32,2,47,1,40,65,254,255,3,73,13,5,32,5,13,5,32,3,65,2,113,13,4,32,2,40,2,56,33,6,12,6,11,32,3,65,36,106,33,6,65,0,33,4,12,2,11,32,2,32,2,40,2,32,65,228,0,106,54,2,32,32,3,40,2,36,11,32,3,65,36,106,33,6,13,4,11,65,0,12,4,11,32,2,32,6,65,228,0,106,54,2,32,11,32,2,40,2,56,33,6,65,0,33,4,32,5,13,6,11,65,0,33,4,32,3,65,128,254,3,113,65,8,118,12,2,11,32,3,40,2,60,11,32,2,40,2,60,106,54,2,60,32,8,32,7,32,7,32,8,73,27,33,7,32,2,32,6,40,2,0,4,127,32,3,40,2,56,5,65,0,11,32,2,40,2,56,106,34,6,54,2,56,32,3,47,1,44,34,5,65,4,113,13,2,32,3,47,1,40,11,65,255,255,3,113,69,13,0,32,11,69,13,0,32,11,32,13,65,1,116,106,34,5,47,1,0,69,13,0,65,1,33,4,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,2,64,32,5,47,1,0,34,5,65,254,255,3,107,14,2,7,6,0,11,32,1,40,2,72,32,5,65,3,108,106,45,0,1,65,1,113,13,5,12,6,11,32,14,13,1,32,3,47,1,44,33,5,11,32,5,65,1,113,69,13,2,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,32,3,47,1,44,65,1,118,65,1,113,12,1,11,32,3,65,2,113,69,13,1,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,32,3,65,2,118,65,1,113,11,65,1,33,4,13,1,12,2,11,32,4,69,13,1,32,2,32,2,40,2,48,32,3,40,2,48,106,54,2,48,32,3,40,2,52,33,4,11,32,2,32,2,40,2,52,32,4,106,54,2,52,11,32,13,2,127,32,14,69,4,64,32,3,45,0,44,65,192,0,113,4,64,32,2,32,2,47,1,44,65,192,0,114,59,1,44,11,32,3,47,1,40,65,255,255,3,70,4,64,32,2,65,255,255,3,59,1,42,32,2,32,2,47,1,44,65,24,114,59,1,44,11,32,3,47,1,44,65,2,118,65,1,113,12,1,11,32,3,65,3,118,65,1,113,11,69,106,33,13,32,10,65,1,106,34,10,32,0,40,2,0,34,2,40,2,36,34,4,73,13,0,11,11,32,2,32,7,32,2,40,2,16,34,0,32,2,40,2,4,106,107,54,2,28,32,2,47,1,40,34,5,65,253,255,3,75,4,64,32,2,32,2,40,2,32,32,0,32,2,40,2,20,65,30,108,106,106,65,244,3,106,54,2,32,11,2,64,32,4,69,13,0,32,12,32,4,65,3,116,106,65,8,107,40,2,0,33,1,2,64,32,12,40,2,0,34,0,65,1,113,69,4,64,32,2,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,59,1,68,32,2,32,0,65,198,0,65,42,32,0,40,2,36,27,106,47,1,0,59,1,70,32,0,45,0,44,65,8,113,69,13,1,32,2,32,2,47,1,44,65,8,114,59,1,44,12,1,11,32,2,32,0,65,16,118,59,1,70,32,2,32,0,65,128,254,3,113,65,8,118,59,1,68,11,2,64,32,1,65,1,113,13,0,32,1,45,0,44,65,16,113,69,13,0,32,2,32,2,47,1,44,65,16,114,59,1,44,11,32,4,65,1,70,13,0,32,2,45,0,44,65,3,113,13,0,2,64,2,64,32,0,65,1,113,4,64,32,5,32,0,65,128,254,3,113,65,8,118,71,13,3,65,1,33,4,32,1,65,1,113,13,2,32,1,47,1,64,33,4,12,1,11,32,0,47,1,40,32,5,71,13,2,65,1,33,4,32,0,47,1,64,33,0,2,64,32,1,65,1,113,4,64,32,0,13,1,12,3,11,32,0,32,1,47,1,64,34,4,77,13,1,11,32,0,65,1,106,33,4,12,1,11,32,4,65,1,106,33,4,11,32,2,32,4,59,1,64,11,11,185,3,1,6,127,3,64,32,0,32,0,40,2,0,32,0,45,0,16,106,34,4,54,2,0,2,64,2,64,32,0,40,2,8,34,5,32,4,75,4,64,32,0,32,4,44,0,0,34,2,65,255,1,113,34,1,54,2,12,65,1,33,3,32,2,65,0,72,4,64,2,64,32,5,32,4,107,34,5,65,1,70,13,0,2,64,32,2,65,96,79,4,64,2,64,32,2,65,111,77,4,64,32,0,32,1,65,15,113,34,1,54,2,12,35,1,65,222,10,106,32,1,106,45,0,0,32,4,45,0,1,34,2,65,5,118,118,65,1,113,69,13,4,32,2,65,63,113,33,6,65,2,33,2,12,1,11,32,0,32,1,65,240,1,107,34,1,54,2,12,32,2,65,116,75,13,3,35,1,65,176,12,106,32,4,45,0,1,34,2,65,4,118,106,44,0,0,32,1,118,65,1,113,69,13,3,32,0,32,2,65,63,113,32,1,65,6,116,114,34,1,54,2,12,65,2,33,3,32,5,65,2,70,13,3,65,3,33,2,32,4,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,0,32,6,65,255,1,113,32,1,65,6,116,114,34,1,54,2,12,32,5,34,3,32,2,71,13,1,12,2,11,32,2,65,66,73,13,1,32,0,32,1,65,31,113,34,1,54,2,12,65,1,33,2,11,32,2,32,4,106,45,0,0,65,128,127,115,65,255,1,113,34,3,65,63,77,13,3,32,2,33,3,11,32,0,65,127,54,2,12,65,127,33,1,11,32,0,32,3,58,0,16,12,2,11,65,0,33,1,32,0,65,0,54,2,12,32,0,65,0,58,0,16,12,1,11,32,0,32,1,65,6,116,32,3,114,34,1,54,2,12,32,0,32,2,65,1,106,58,0,16,11,32,1,16,19,13,0,32,0,40,2,12,34,3,65,45,107,65,2,73,13,0,32,3,65,223,0,70,13,0,11,11,222,4,2,1,126,4,127,32,0,40,2,0,32,1,65,5,116,106,34,6,40,2,0,33,1,32,2,41,2,0,33,5,2,127,32,0,40,2,40,34,2,4,64,32,0,32,2,65,1,107,34,2,54,2,40,32,0,40,2,36,32,2,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,0,32,4,59,1,0,32,0,65,2,106,65,0,65,146,1,252,11,0,32,5,167,33,2,32,0,66,0,55,2,152,1,32,0,65,1,54,2,148,1,32,0,65,0,54,2,160,1,32,0,2,127,2,64,2,64,2,64,32,1,4,64,32,0,65,0,59,0,29,32,0,32,3,58,0,28,32,0,32,5,55,2,20,32,0,32,1,54,2,16,32,0,65,1,59,1,144,1,32,0,65,0,58,0,31,32,0,32,1,41,2,4,55,2,4,32,0,32,1,40,2,12,54,2,12,32,0,32,1,40,2,152,1,34,4,54,2,152,1,32,0,32,1,40,2,160,1,34,9,54,2,160,1,32,0,32,1,40,2,156,1,34,1,54,2,156,1,32,2,69,13,1,32,2,65,1,113,13,3,65,226,4,33,3,32,0,32,2,45,0,45,65,2,113,4,127,65,226,4,5,32,2,40,2,32,11,32,4,106,54,2,152,1,65,0,32,2,40,2,12,32,2,40,2,20,34,4,27,33,7,32,4,32,2,40,2,8,106,33,4,32,2,40,2,24,33,8,32,2,40,2,16,32,2,40,2,4,106,12,4,11,32,0,66,0,55,2,4,65,0,33,1,32,0,65,0,54,2,12,32,2,13,1,11,32,6,32,1,54,2,8,11,32,6,32,0,54,2,0,15,11,32,0,32,4,32,2,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,5,66,32,136,167,65,255,1,113,33,7,32,5,66,40,136,167,65,15,113,33,4,32,5,66,56,136,167,34,8,32,5,66,48,136,167,65,255,1,113,106,11,32,0,40,2,4,106,54,2,4,65,0,33,3,32,0,32,0,40,2,8,32,4,106,173,32,7,32,8,106,65,0,32,0,40,2,12,32,4,27,106,173,66,32,134,132,55,2,8,32,0,2,127,32,2,65,1,113,69,4,64,32,0,32,2,40,2,36,34,4,4,127,32,2,40,2,56,5,65,0,11,32,1,106,32,2,47,1,44,65,1,113,106,32,2,47,1,40,65,254,255,3,70,106,54,2,156,1,65,0,32,4,69,13,1,26,32,2,40,2,60,12,1,11,32,0,32,1,32,2,65,1,118,65,1,113,106,54,2,156,1,65,0,11,32,9,106,54,2,160,1,32,6,32,0,54,2,0,11,229,9,2,22,127,1,126,35,0,65,128,1,107,34,4,36,0,32,2,40,2,0,34,22,2,127,32,2,40,2,16,34,23,41,2,0,34,25,167,34,6,65,1,113,4,64,32,25,66,56,136,167,12,1,11,32,6,40,2,16,11,34,18,106,33,13,32,1,40,2,8,33,6,32,1,40,2,4,33,14,32,1,40,2,20,33,20,32,1,40,2,0,33,11,32,1,40,2,16,40,2,0,33,3,2,64,2,64,2,64,2,64,3,64,32,3,65,1,113,13,3,32,3,40,2,36,69,13,3,32,3,47,1,66,34,7,4,127,32,20,40,2,8,34,8,40,2,84,32,8,47,1,36,32,7,108,65,1,116,106,5,65,0,11,33,19,32,3,40,2,36,34,21,69,13,3,2,127,32,3,32,21,65,3,116,107,34,15,40,2,0,34,7,65,1,113,69,4,64,32,7,47,1,44,65,2,118,65,1,113,12,1,11,32,7,65,3,118,65,1,113,11,34,3,69,33,16,65,0,33,12,2,64,32,3,13,0,32,19,69,13,0,32,19,47,1,0,33,12,65,1,33,16,11,32,1,32,20,54,2,20,32,1,32,15,54,2,16,32,1,32,12,54,2,12,32,1,32,6,54,2,8,32,1,32,14,54,2,4,32,1,32,11,54,2,0,2,127,32,15,40,2,0,34,5,65,1,113,34,17,69,4,64,65,0,32,6,32,5,40,2,20,34,7,27,33,8,32,5,40,2,24,33,9,32,5,40,2,16,33,3,32,7,32,14,106,12,1,11,32,15,45,0,7,34,3,33,9,32,6,33,8,32,14,11,33,7,32,11,32,22,75,13,3,32,15,32,23,70,13,2,32,3,32,11,106,33,10,2,64,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,10,32,13,73,13,0,32,17,13,1,32,5,40,2,36,69,13,1,32,5,40,2,48,69,13,1,32,4,32,1,41,2,8,55,3,88,32,4,32,1,41,2,16,55,3,96,32,4,32,1,41,2,0,55,3,80,32,4,65,64,107,32,2,41,2,8,55,3,0,32,4,32,2,41,2,16,55,3,72,32,4,32,2,41,2,0,55,3,56,32,4,65,232,0,106,32,4,65,208,0,106,32,4,65,56,106,16,24,32,4,40,2,120,69,13,1,12,7,11,32,18,13,1,11,32,10,32,13,75,13,1,12,2,11,32,10,32,13,73,13,1,11,32,15,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,69,13,0,32,3,40,2,48,13,1,11,65,1,33,17,32,21,65,1,70,13,4,32,8,32,9,106,33,6,3,64,65,0,33,12,2,127,32,15,32,17,65,3,116,106,34,3,40,2,0,34,9,65,1,113,34,8,4,64,32,9,65,3,118,65,1,113,12,1,11,32,9,47,1,44,65,2,118,65,1,113,11,69,4,64,32,19,4,127,32,19,32,16,65,1,116,106,47,1,0,5,65,0,11,33,12,32,16,65,1,106,33,16,11,2,127,32,8,4,64,32,3,45,0,5,65,15,113,33,5,32,3,45,0,6,33,11,32,3,45,0,4,12,1,11,32,9,40,2,8,33,5,32,9,40,2,4,33,11,32,9,40,2,12,11,33,8,32,1,32,20,54,2,20,32,1,32,3,54,2,16,32,1,32,12,54,2,12,32,1,32,5,32,7,106,34,14,54,2,4,32,1,32,10,32,11,106,34,11,54,2,0,32,1,65,0,32,6,32,5,27,32,8,106,34,6,54,2,8,2,127,32,3,40,2,0,34,5,65,1,113,34,24,4,64,32,3,45,0,7,34,10,33,8,32,6,33,9,32,14,12,1,11,65,0,32,6,32,5,40,2,20,34,7,27,33,9,32,5,40,2,24,33,8,32,5,40,2,16,33,10,32,7,32,14,106,11,33,7,32,11,32,22,75,13,5,32,3,32,23,70,13,4,32,10,32,11,106,33,10,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,10,32,13,73,13,0,32,24,13,1,32,5,40,2,36,69,13,1,32,5,40,2,48,69,13,1,32,4,32,1,41,2,8,55,3,40,32,4,32,1,41,2,16,55,3,48,32,4,32,1,41,2,0,55,3,32,32,4,32,2,41,2,8,55,3,16,32,4,32,2,41,2,16,55,3,24,32,4,32,2,41,2,0,55,3,8,32,4,65,232,0,106,32,4,65,32,106,32,4,65,8,106,16,24,32,4,40,2,120,69,13,1,12,8,11,32,18,13,1,11,32,10,32,13,75,13,1,12,2,11,32,10,32,13,73,13,1,11,32,3,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,69,13,0,32,3,40,2,48,13,2,11,32,8,32,9,106,33,6,32,17,65,1,106,34,17,32,21,71,13,0,11,12,4,11,32,3,45,0,44,65,1,113,32,12,114,69,13,0,11,32,0,32,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,3,11,32,0,32,1,32,1,32,4,65,232,0,106,32,12,27,32,5,47,1,44,65,1,113,27,34,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,2,11,32,0,32,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,1,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,32,4,65,128,1,106,36,0,11,252,20,2,19,127,1,126,35,0,65,48,107,34,13,36,0,32,1,65,0,54,2,28,32,1,65,0,54,2,16,32,1,40,2,0,32,13,65,0,58,0,46,32,13,65,0,59,1,44,32,2,65,5,116,106,40,2,0,33,12,2,64,32,5,65,0,72,4,64,12,1,11,32,5,65,255,255,255,255,1,113,65,247,255,255,255,1,70,13,0,32,5,65,9,106,34,8,65,255,255,255,255,1,113,33,10,32,8,65,3,116,35,7,40,2,0,17,0,0,33,9,32,1,40,2,28,33,7,11,32,1,40,2,24,33,6,32,1,32,7,65,1,106,34,8,32,1,40,2,32,34,11,75,4,127,65,8,32,11,65,1,116,34,7,32,8,32,7,32,8,75,27,34,8,32,8,65,8,77,27,34,7,65,24,108,33,8,2,127,32,6,4,64,32,6,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,6,32,1,32,7,54,2,32,32,1,40,2,28,34,7,65,1,106,5,32,8,11,54,2,28,32,1,32,6,54,2,24,32,6,32,7,65,24,108,106,34,8,65,1,58,0,20,32,8,65,0,54,2,16,32,8,32,10,54,2,12,32,8,65,0,54,2,8,32,8,32,9,54,2,4,32,8,32,12,54,2,0,32,8,32,13,45,0,46,58,0,23,32,8,32,13,47,1,44,59,0,21,32,1,40,2,28,34,20,4,64,32,2,65,5,116,33,23,3,64,32,17,65,24,108,34,21,32,1,40,2,24,106,34,11,40,2,0,33,14,32,4,32,11,32,3,17,1,0,34,2,65,2,113,33,18,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,1,113,69,4,64,32,14,47,1,144,1,33,2,32,18,69,13,4,32,11,40,2,12,33,16,32,11,40,2,8,33,12,32,11,40,2,4,33,7,32,2,13,1,65,1,33,15,12,2,11,32,18,69,13,6,32,11,40,2,12,33,16,32,11,40,2,8,33,12,32,11,40,2,4,33,7,65,1,33,15,12,1,11,32,16,69,4,64,65,0,33,16,65,0,33,15,12,1,11,32,16,65,8,35,9,40,2,0,17,1,0,33,8,32,12,65,3,116,34,2,4,64,32,8,32,7,32,2,252,10,0,0,11,32,12,69,4,64,65,0,33,15,65,0,33,12,12,2,11,65,0,33,15,65,0,33,6,32,12,65,1,71,4,64,32,12,65,126,113,33,7,65,0,33,9,3,64,32,8,32,6,65,3,116,106,34,10,40,2,0,34,2,65,1,113,69,4,64,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,10,40,2,8,34,2,65,1,113,69,4,64,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,6,65,2,106,33,6,32,9,65,2,106,34,9,32,7,71,13,0,11,11,2,64,32,12,65,1,113,69,13,0,32,8,32,6,65,3,116,106,40,2,0,34,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,8,33,7,11,2,64,32,12,65,2,73,13,0,32,7,32,12,65,3,116,106,33,2,65,0,33,6,32,12,65,1,118,34,8,65,1,71,4,64,32,8,65,254,255,255,255,7,113,33,9,65,0,33,10,3,64,32,7,32,6,65,3,116,106,34,8,41,2,0,33,25,32,8,32,2,32,6,65,127,115,65,3,116,106,34,19,41,2,0,55,2,0,32,19,32,25,55,2,0,32,8,41,2,8,33,25,32,8,32,2,32,6,65,254,255,255,255,1,115,65,3,116,106,34,8,41,2,0,55,2,8,32,8,32,25,55,2,0,32,6,65,2,106,33,6,32,10,65,2,106,34,10,32,9,71,13,0,11,11,32,12,65,2,113,69,13,0,32,7,32,6,65,3,116,106,34,8,41,2,0,33,25,32,8,32,2,32,6,65,127,115,65,3,116,106,34,2,41,2,0,55,2,0,32,2,32,25,55,2,0,11,32,7,33,8,11,32,1,40,2,16,34,7,33,2,2,64,3,64,32,2,34,10,69,13,1,32,1,40,2,0,32,1,40,2,12,34,9,32,2,65,1,107,34,2,65,4,116,106,40,2,12,34,6,65,5,116,106,40,2,0,32,14,71,13,0,11,32,7,65,1,106,34,2,32,1,40,2,20,75,4,64,32,9,32,2,65,4,116,35,6,40,2,0,17,1,0,33,9,32,1,32,2,54,2,20,32,1,40,2,16,33,7,11,32,10,65,4,116,33,2,2,64,32,7,32,10,77,13,0,32,7,32,10,107,65,4,116,34,7,69,13,0,32,2,32,9,106,34,10,65,16,106,32,10,32,7,252,10,0,0,11,32,2,32,9,106,34,2,32,6,54,0,12,32,2,32,16,54,0,8,32,2,32,12,54,0,4,32,2,32,8,54,0,0,32,1,32,9,54,2,12,32,1,32,1,40,2,16,65,1,106,54,2,16,32,15,69,13,2,12,3,11,32,1,40,2,0,34,6,32,23,106,34,7,40,2,16,33,19,32,7,40,2,12,33,2,32,7,40,2,8,33,22,32,1,32,1,40,2,4,34,10,65,1,106,34,9,32,1,40,2,8,34,7,75,4,127,32,6,65,8,32,7,65,1,116,34,7,32,9,32,7,32,9,75,27,34,7,32,7,65,8,77,27,34,7,65,5,116,35,6,40,2,0,17,1,0,33,6,32,1,32,7,54,2,8,32,1,40,2,4,34,10,65,1,106,5,32,9,11,54,2,4,32,1,32,6,54,2,0,32,6,32,10,65,5,116,106,34,7,65,0,54,2,28,32,7,66,0,55,2,20,32,7,32,19,54,2,16,32,7,32,2,54,2,12,32,7,32,22,54,2,8,32,7,65,0,54,2,4,32,7,32,14,54,2,0,32,14,4,64,32,14,32,14,40,2,148,1,65,1,106,54,2,148,1,11,2,64,32,2,69,13,0,32,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,1,40,2,4,65,1,107,33,7,32,1,40,2,12,33,6,32,1,32,1,40,2,16,34,9,65,1,106,34,2,32,1,40,2,20,34,10,75,4,127,65,8,32,10,65,1,116,34,10,32,2,32,2,32,10,73,27,34,2,32,2,65,8,77,27,34,10,65,4,116,33,2,2,127,32,6,4,64,32,6,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,6,32,1,32,10,54,2,20,32,1,40,2,16,34,9,65,1,106,5,32,2,11,54,2,16,32,1,32,6,54,2,12,32,6,32,9,65,4,116,106,34,2,32,7,54,2,12,32,2,32,16,54,2,8,32,2,32,12,54,2,4,32,2,32,8,54,2,0,32,15,13,2,12,1,11,32,2,69,13,2,11,32,14,47,1,144,1,34,6,4,64,32,14,65,16,106,33,19,65,1,33,7,3,64,2,64,2,127,32,6,32,7,34,10,70,4,64,32,14,45,0,28,33,16,32,14,40,2,24,33,18,32,14,40,2,20,33,9,32,14,40,2,16,33,12,32,1,40,2,24,32,21,106,12,1,11,32,1,40,2,28,34,6,65,63,75,13,1,32,19,32,10,65,4,116,106,34,2,45,0,12,33,16,32,2,40,2,8,33,18,32,2,40,2,4,33,9,32,2,40,2,0,33,12,32,13,32,1,40,2,24,34,7,32,21,106,34,2,41,2,16,55,3,32,32,13,32,2,41,2,8,55,3,24,32,13,32,2,41,2,0,55,3,16,32,1,40,2,32,34,2,32,6,77,4,64,32,7,65,8,32,2,65,1,116,34,2,32,6,65,1,106,34,8,32,2,32,8,75,27,34,2,32,2,65,8,77,27,34,2,65,24,108,35,6,40,2,0,17,1,0,33,7,32,1,32,2,54,2,32,32,1,40,2,28,33,6,11,32,1,32,7,54,2,24,32,1,32,6,65,1,106,54,2,28,32,7,32,6,65,24,108,106,34,2,32,13,41,3,32,55,2,16,32,2,32,13,41,3,24,55,2,8,32,2,32,13,41,3,16,55,2,0,2,64,32,1,40,2,24,32,1,40,2,28,65,24,108,106,34,15,65,12,107,40,2,0,34,8,69,13,0,32,15,65,16,107,40,2,0,33,2,32,15,65,20,107,34,7,40,2,0,33,6,32,7,32,8,65,8,35,9,40,2,0,17,1,0,34,8,54,2,0,32,2,65,3,116,34,11,4,64,32,8,32,6,32,11,252,10,0,0,11,32,2,69,13,0,65,0,33,6,32,2,65,1,71,4,64,32,2,65,126,113,33,22,65,0,33,8,3,64,32,6,65,3,116,34,24,32,7,40,2,0,106,40,2,0,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,7,40,2,0,32,24,106,40,2,8,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,6,65,2,106,33,6,32,8,65,2,106,34,8,32,22,71,13,0,11,11,32,2,65,1,113,69,13,0,32,7,40,2,0,32,6,65,3,116,106,40,2,0,34,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,15,65,24,107,11,34,6,32,12,54,2,0,2,64,2,127,2,64,32,9,4,64,2,64,32,5,65,0,78,4,64,32,6,40,2,4,33,7,32,6,32,6,40,2,8,34,8,65,1,106,34,2,32,6,40,2,12,34,12,75,4,127,65,8,32,12,65,1,116,34,8,32,2,32,2,32,8,73,27,34,2,32,2,65,8,77,27,34,8,65,3,116,33,2,2,127,32,7,4,64,32,7,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,7,32,6,32,8,54,2,12,32,6,40,2,8,34,8,65,1,106,5,32,2,11,54,2,8,32,6,32,7,54,2,4,32,7,32,8,65,3,116,106,34,2,32,18,54,2,4,32,2,32,9,54,2,0,32,9,65,1,113,13,1,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,12,3,11,32,9,65,1,113,69,13,2,11,32,9,65,3,118,65,1,113,12,2,11,32,6,32,6,40,2,16,65,1,106,54,2,16,12,2,11,32,9,47,1,44,65,2,118,65,1,113,11,13,1,32,6,32,6,40,2,16,65,1,106,54,2,16,32,16,65,1,113,13,1,11,32,6,65,0,58,0,20,11,32,10,65,1,106,33,7,32,10,32,14,47,1,144,1,34,6,73,13,0,11,11,32,17,65,1,106,33,17,12,3,11,32,18,13,1,11,32,11,40,2,8,4,64,32,1,40,2,52,33,2,65,0,33,6,3,64,32,13,32,11,40,2,4,32,6,65,3,116,106,41,2,0,55,3,8,32,2,32,13,65,8,106,16,10,32,6,65,1,106,34,6,32,11,40,2,8,73,13,0,11,11,32,11,65,0,54,2,8,32,11,40,2,4,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,11,65,0,54,2,12,32,11,66,0,55,2,4,11,32,1,40,2,28,32,17,65,127,115,106,65,24,108,34,2,4,64,32,1,40,2,24,32,21,106,34,8,32,8,65,24,106,32,2,252,10,0,0,11,32,1,32,1,40,2,28,65,1,107,54,2,28,32,20,65,1,107,33,20,11,32,17,32,20,73,13,0,65,0,33,17,32,1,40,2,28,34,20,13,0,11,11,32,0,32,1,41,2,12,55,2,0,32,0,32,1,40,2,20,54,2,8,32,13,65,48,106,36,0,11,239,2,1,5,127,35,0,65,32,107,34,4,36,0,3,64,2,64,32,0,32,0,40,2,148,1,65,1,107,34,5,54,2,148,1,32,5,13,0,32,0,47,1,144,1,34,3,4,127,32,3,65,1,107,34,5,4,64,3,64,32,4,32,0,32,3,65,4,116,106,34,3,41,2,8,55,3,24,32,4,32,3,41,2,0,55,3,16,32,4,40,2,20,4,64,32,4,32,4,41,2,20,55,3,8,32,2,32,4,65,8,106,16,10,11,32,4,40,2,16,32,1,32,2,16,26,32,5,34,3,65,1,107,34,5,13,0,11,11,32,4,32,0,41,2,24,55,3,24,32,4,32,0,41,2,16,55,3,16,32,4,40,2,20,4,64,32,4,32,4,41,2,20,55,3,0,32,2,32,4,16,10,11,32,0,40,2,16,5,65,0,11,2,64,32,1,40,2,4,34,3,65,49,77,4,64,32,1,40,2,0,33,6,32,1,40,2,8,34,7,32,3,77,4,64,65,8,32,7,65,1,116,34,7,32,3,65,1,106,34,3,32,3,32,7,73,27,34,3,32,3,65,8,77,27,34,7,65,2,116,33,3,2,127,32,6,4,64,32,6,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,6,32,1,32,7,54,2,8,32,1,40,2,4,33,3,11,32,1,32,6,54,2,0,32,1,32,3,65,1,106,54,2,4,32,6,32,3,65,2,116,106,32,0,54,2,0,12,1,11,32,0,35,8,40,2,0,17,2,0,11,34,0,13,1,11,11,32,4,65,32,106,36,0,11,96,1,2,127,32,2,69,4,64,65,0,15,11,32,0,45,0,0,34,3,4,127,2,64,3,64,32,3,32,1,45,0,0,34,4,71,13,1,32,4,69,13,1,32,2,65,1,107,34,2,69,13,1,32,1,65,1,106,33,1,32,0,45,0,1,33,3,32,0,65,1,106,33,0,32,3,13,0,11,65,0,33,3,11,32,3,5,65,0,11,32,1,45,0,0,107,11,54,1,1,127,65,1,33,1,2,64,2,64,2,64,32,0,35,2,65,11,106,16,70,65,1,107,14,2,0,2,1,11,3,64,32,0,16,71,65,1,70,13,0,11,12,1,11,65,0,33,1,11,32,1,11,158,9,1,14,127,35,0,65,48,107,34,6,36,0,32,0,40,2,24,33,4,32,0,40,2,32,65,31,77,4,64,2,127,32,4,4,64,32,4,65,128,6,35,6,40,2,0,17,1,0,12,1,11,65,128,6,35,7,40,2,0,17,0,0,11,33,4,32,0,65,32,54,2,32,11,32,0,65,0,54,2,28,32,0,32,4,54,2,24,35,10,33,5,2,64,32,0,40,2,4,34,4,69,13,0,32,2,32,5,40,2,0,32,2,27,33,10,3,64,32,0,40,2,0,32,3,65,5,116,106,34,7,40,2,28,65,2,71,4,64,32,0,40,2,24,33,4,32,0,32,0,40,2,28,34,2,65,1,106,34,5,32,0,40,2,32,34,8,75,4,127,65,8,32,8,65,1,116,34,2,32,5,32,2,32,5,75,27,34,2,32,2,65,8,77,27,34,5,65,24,108,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,5,54,2,32,32,0,40,2,28,34,2,65,1,106,5,32,5,11,54,2,28,32,0,32,4,54,2,24,32,6,65,0,54,2,40,32,6,66,0,55,3,32,32,6,66,0,55,3,24,32,4,32,2,65,24,108,106,34,2,32,7,40,2,0,54,2,0,32,2,32,6,40,2,40,54,2,20,32,2,32,6,41,3,32,55,2,12,32,2,32,6,41,3,24,55,2,4,32,0,40,2,4,33,4,11,32,3,65,1,106,34,3,32,4,73,13,0,11,32,0,40,2,28,34,4,69,13,0,65,0,33,5,65,1,33,3,65,0,33,2,3,64,2,64,65,0,33,11,65,1,33,7,32,3,69,13,0,3,64,32,11,65,24,108,34,13,32,0,40,2,24,106,34,3,40,2,0,33,8,32,6,32,3,40,2,20,54,2,16,32,6,32,3,41,2,12,55,3,8,32,6,32,3,41,2,4,55,3,0,65,0,33,3,2,64,32,2,4,64,3,64,32,5,32,3,65,2,116,106,40,2,0,32,8,70,13,2,32,3,65,1,106,34,3,32,2,71,13,0,11,11,32,8,69,13,0,32,8,47,1,144,1,4,64,32,8,65,16,106,33,14,65,0,33,7,3,64,32,14,32,7,65,4,116,106,34,3,40,2,0,33,15,2,64,32,3,40,2,4,34,4,69,13,0,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,4,65,1,113,4,127,32,4,65,128,254,3,113,65,8,118,5,32,4,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,1,40,2,8,32,1,40,2,4,106,32,4,77,13,0,32,1,40,2,56,32,4,65,2,116,106,40,2,0,33,3,11,3,64,2,64,2,64,2,64,2,64,2,64,32,3,45,0,0,34,4,14,35,6,4,4,4,4,4,4,4,4,3,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,0,11,32,4,65,220,0,71,13,3,11,65,220,0,32,10,16,9,32,3,44,0,0,32,10,16,9,32,3,65,1,106,33,3,12,3,11,35,1,65,139,8,106,32,10,16,20,32,3,65,1,106,33,3,12,2,11,35,1,65,154,3,106,32,10,16,20,32,3,65,1,106,33,3,12,1,11,32,4,192,32,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,0,40,2,24,33,3,32,7,4,127,32,0,32,0,40,2,28,34,9,65,1,106,34,4,32,0,40,2,32,34,16,75,4,127,65,8,32,16,65,1,116,34,9,32,4,32,4,32,9,73,27,34,4,32,4,65,8,77,27,34,9,65,24,108,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,9,54,2,32,32,0,40,2,28,34,9,65,1,106,5,32,4,11,54,2,28,32,0,32,3,54,2,24,32,3,32,9,65,24,108,106,34,3,32,8,54,2,0,32,3,32,6,40,2,16,54,2,20,32,3,32,6,41,3,8,55,2,12,32,3,32,6,41,3,0,55,2,4,32,0,40,2,24,32,0,40,2,28,65,24,108,106,65,24,107,5,32,3,32,13,106,11,32,15,54,2,0,32,7,65,1,106,34,7,32,8,47,1,144,1,73,13,0,11,11,2,64,32,2,65,1,106,34,3,32,12,77,13,0,65,8,32,12,65,1,116,34,4,32,3,32,3,32,4,73,27,34,4,32,4,65,8,77,27,34,12,65,2,116,33,4,32,5,4,64,32,5,32,4,35,6,40,2,0,17,1,0,33,5,12,1,11,32,4,35,7,40,2,0,17,0,0,33,5,11,32,5,32,2,65,2,116,106,32,8,54,2,0,32,0,40,2,28,33,4,65,0,33,7,32,3,33,2,11,32,11,65,1,106,34,11,32,4,73,13,0,11,32,4,33,3,32,7,65,1,113,69,13,1,11,11,32,5,69,13,0,32,5,35,8,40,2,0,17,2,0,11,32,6,65,48,106,36,0,11,190,1,1,4,127,2,127,2,64,32,3,69,13,0,32,1,35,1,65,171,10,106,32,2,16,27,13,0,65,255,255,3,12,1,11,32,0,40,2,8,32,0,40,2,4,106,65,255,255,3,113,34,7,4,64,3,64,2,64,32,6,65,255,255,3,113,65,254,255,3,70,13,0,32,0,40,2,72,32,4,65,3,108,106,34,5,45,0,0,32,5,45,0,2,114,65,1,113,69,13,0,32,5,45,0,1,32,3,71,13,0,32,0,40,2,56,32,4,65,2,116,106,40,2,0,34,5,32,1,32,2,16,27,13,0,32,2,32,5,106,45,0,0,13,0,32,0,40,2,76,32,4,65,1,116,106,47,1,0,12,3,11,32,6,65,1,106,34,6,65,255,255,3,113,34,4,32,7,73,13,0,11,11,65,0,11,65,255,255,3,113,11,208,54,2,13,127,1,126,35,0,65,32,107,34,9,36,0,65,1,33,6,2,64,32,1,40,2,12,34,5,69,13,0,32,5,65,221,0,71,32,5,65,41,71,113,69,4,64,65,127,33,6,12,1,11,32,0,40,2,108,33,7,32,0,40,2,64,33,12,2,64,32,0,40,2,112,34,8,4,64,32,12,32,7,32,8,65,3,116,106,65,4,107,47,1,0,70,13,1,11,32,0,32,8,65,1,106,34,5,32,0,40,2,116,34,10,75,4,127,65,8,32,10,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,3,116,33,5,2,127,32,7,4,64,32,7,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,7,32,0,32,8,54,2,116,32,0,40,2,112,34,8,65,1,106,5,32,5,11,54,2,112,32,0,32,7,54,2,108,32,1,40,2,4,33,10,32,1,40,2,0,33,11,32,7,32,8,65,3,116,106,34,5,65,0,59,1,6,32,5,32,12,59,1,4,32,5,32,11,32,10,107,54,2,0,32,1,40,2,12,33,5,11,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,5,65,34,107,14,7,2,1,1,1,1,1,4,0,11,2,64,32,5,65,219,0,107,14,5,0,1,1,1,3,1,11,32,1,16,12,26,32,1,16,13,32,9,65,0,54,2,24,32,9,66,0,55,2,16,65,127,33,13,65,0,33,8,65,0,33,10,3,64,32,0,40,2,64,33,14,2,64,2,64,2,64,2,64,32,0,32,1,32,2,32,3,32,9,65,16,106,16,31,34,6,4,64,2,64,32,6,65,127,71,13,0,65,1,33,6,32,8,69,13,0,32,1,40,2,12,65,221,0,70,13,2,11,32,9,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,10,69,13,13,32,10,35,8,40,2,0,17,2,0,12,13,11,32,12,32,14,70,4,64,32,4,65,0,54,2,4,32,4,40,2,0,33,5,32,9,40,2,16,33,7,2,64,2,64,32,9,40,2,20,34,6,32,4,40,2,8,75,4,64,2,127,32,5,4,64,32,5,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,5,32,4,32,6,54,2,8,32,4,40,2,4,34,11,69,13,1,32,11,69,13,1,32,5,32,6,106,32,5,32,11,252,10,0,0,12,1,11,32,6,69,13,1,11,32,7,4,64,32,6,69,13,1,32,5,32,7,32,6,252,10,0,0,12,1,11,32,6,69,13,0,32,5,65,0,32,6,252,11,0,11,32,4,32,5,54,2,0,32,4,32,4,40,2,4,32,6,106,54,2,4,12,4,11,2,64,32,4,40,2,4,34,6,32,9,40,2,20,34,5,73,4,64,32,4,40,2,0,33,7,32,4,40,2,8,34,11,32,5,73,4,64,65,8,32,11,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,33,6,2,127,32,7,4,64,32,7,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,7,32,4,32,6,54,2,8,32,4,40,2,4,33,6,11,32,4,32,7,54,2,0,32,5,32,6,107,34,11,4,64,32,6,32,7,106,65,0,32,11,252,11,0,11,32,4,32,5,54,2,4,12,1,11,32,5,69,13,3,11,65,0,33,6,32,9,40,2,16,33,16,3,64,32,6,32,16,106,45,0,0,33,11,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,4,40,2,0,32,6,106,34,17,45,0,0,34,7,14,5,1,2,6,3,0,5,11,32,11,65,5,73,13,3,12,4,11,32,11,65,5,79,13,3,66,128,130,136,136,32,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,4,11,32,11,65,5,79,13,2,66,129,130,136,136,32,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,3,11,32,11,65,5,79,13,1,66,129,130,136,152,192,0,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,2,11,66,130,132,136,160,192,0,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,1,11,65,0,33,7,11,32,17,32,7,58,0,0,32,5,32,6,65,1,106,34,6,71,13,0,11,12,1,11,32,1,16,12,26,32,0,32,0,40,2,64,65,1,107,54,2,64,32,8,65,1,71,4,64,65,0,33,6,3,64,32,0,40,2,60,34,3,32,10,32,6,65,2,116,106,40,2,0,65,20,108,106,32,10,32,6,65,1,106,34,6,65,2,116,106,40,2,0,34,5,59,1,14,32,3,32,5,65,20,108,106,34,3,65,6,107,32,0,40,2,64,59,1,0,32,3,65,2,107,34,3,32,3,47,1,0,65,16,114,59,1,0,32,6,32,13,71,13,0,11,11,32,9,40,2,16,34,3,4,64,32,3,35,8,40,2,0,17,2,0,11,32,10,69,13,8,32,10,35,8,40,2,0,17,2,0,12,8,11,32,4,40,2,4,33,6,11,32,5,32,6,79,13,0,3,64,32,4,40,2,0,32,5,106,34,6,66,128,130,136,136,32,32,6,49,0,0,34,18,66,3,134,136,167,65,0,32,18,66,5,84,27,58,0,0,32,5,65,1,106,34,5,32,4,40,2,4,73,13,0,11,11,2,64,32,8,65,1,106,34,5,32,15,77,13,0,65,8,32,15,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,34,15,65,2,116,33,6,32,10,4,64,32,10,32,6,35,6,40,2,0,17,1,0,33,10,12,1,11,32,6,35,7,40,2,0,17,0,0,33,10,11,32,10,32,8,65,2,116,106,32,14,54,2,0,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,8,65,1,106,34,7,32,0,40,2,68,34,11,75,4,127,65,8,32,11,65,1,116,34,8,32,7,32,7,32,8,73,27,34,8,32,8,65,8,77,27,34,7,65,20,108,33,8,2,127,32,6,4,64,32,6,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,6,32,0,32,7,54,2,68,32,0,40,2,64,34,8,65,1,106,5,32,7,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,8,32,9,65,127,54,2,4,32,6,32,8,65,20,108,106,34,8,65,0,54,1,2,32,8,65,0,59,1,0,32,8,32,9,40,2,4,54,1,6,32,8,32,9,47,1,8,59,1,10,32,8,65,0,59,1,18,32,8,65,255,255,3,54,1,14,32,8,32,2,59,1,12,32,9,65,0,54,2,20,32,13,65,1,106,33,13,32,5,33,8,12,0,11,0,11,2,64,32,5,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,71,13,7,11,32,1,40,2,0,33,5,32,1,16,22,32,1,40,2,0,33,8,32,1,16,13,32,1,40,2,12,65,58,71,4,64,32,1,65,0,58,0,16,32,1,32,5,54,2,0,32,1,16,12,26,12,7,11,32,1,16,12,26,32,1,16,13,32,9,65,0,54,2,24,32,9,66,0,55,2,16,32,0,32,1,32,2,32,3,32,9,65,16,106,16,31,34,3,4,64,32,9,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,65,1,32,3,32,3,65,127,70,27,33,6,12,7,11,32,0,40,2,156,1,32,5,32,8,32,5,107,16,106,34,8,69,4,64,32,1,32,5,54,2,0,65,3,33,6,12,7,11,32,0,40,2,60,33,6,32,12,33,5,3,64,2,64,32,6,32,5,65,20,108,106,34,3,32,8,59,1,4,32,3,47,1,14,34,3,65,255,255,3,70,13,0,32,3,32,5,77,13,0,32,3,34,5,32,0,40,2,64,73,13,1,11,11,32,4,32,9,65,16,106,16,53,32,9,40,2,16,34,3,69,13,3,32,3,35,8,40,2,0,17,2,0,12,3,11,32,1,40,2,0,33,5,32,0,32,1,16,46,13,5,32,0,40,2,156,1,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,34,7,69,4,64,32,1,65,0,58,0,16,32,1,32,5,65,1,106,54,2,0,32,1,16,12,26,65,2,33,6,12,6,11,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,8,65,1,106,34,5,32,0,40,2,68,34,10,75,4,127,65,8,32,10,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,20,108,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,0,32,8,54,2,68,32,0,40,2,64,34,8,65,1,106,5,32,5,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,8,65,20,108,106,34,5,65,0,54,1,2,32,5,32,7,59,1,0,32,5,32,9,40,2,16,54,1,6,32,5,32,9,47,1,20,59,1,10,32,5,65,2,65,0,32,3,27,59,1,18,32,5,65,255,255,3,54,1,14,32,5,32,2,59,1,12,12,2,11,32,1,16,12,26,32,1,16,13,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,5,32,0,40,2,68,34,8,75,4,127,65,8,32,8,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,20,108,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,0,32,8,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,5,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,7,65,20,108,106,34,5,65,0,54,1,2,32,5,65,0,59,1,0,32,5,32,9,40,2,16,54,1,6,32,5,32,9,47,1,20,59,1,10,32,5,65,2,65,0,32,3,27,59,1,18,32,5,65,255,255,3,54,1,14,32,5,32,2,59,1,12,12,1,11,32,1,16,12,26,32,1,16,13,2,64,2,64,2,64,2,64,32,1,40,2,12,34,5,65,34,107,14,13,1,2,3,3,3,3,1,3,3,3,3,3,2,0,11,32,5,65,219,0,71,13,2,11,32,9,65,0,54,2,24,32,9,66,0,55,2,16,2,64,2,64,2,64,2,64,32,0,32,1,32,2,32,5,65,46,70,4,127,32,1,16,12,26,32,1,16,13,65,1,5,32,3,11,32,9,65,16,106,16,31,34,6,65,1,106,14,2,1,0,2,11,3,64,32,4,32,9,65,16,106,16,53,32,9,65,0,54,2,20,32,1,40,2,12,34,3,65,46,70,4,64,32,1,16,12,26,32,1,16,13,11,32,0,32,1,32,2,32,3,65,46,70,32,9,65,16,106,16,31,34,6,69,13,0,11,32,6,65,127,71,13,1,11,65,1,33,6,32,1,40,2,12,65,41,70,13,1,11,32,9,40,2,16,34,0,69,13,6,32,0,35,8,40,2,0,17,2,0,12,6,11,32,1,16,12,26,32,9,40,2,16,34,3,69,13,2,32,3,35,8,40,2,0,17,2,0,12,2,11,32,1,16,12,26,2,127,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,1,11,32,1,40,2,0,33,2,32,1,16,22,2,64,32,1,40,2,12,34,3,65,63,70,13,0,32,3,65,33,70,13,0,65,1,12,1,11,32,1,16,12,26,32,0,65,24,106,34,8,32,2,32,1,40,2,0,32,2,107,16,45,33,5,32,0,40,2,84,33,2,32,0,32,0,40,2,88,34,4,65,1,106,34,3,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,3,11,54,2,88,32,0,32,2,54,2,84,32,2,32,4,65,3,116,106,34,2,32,5,54,2,4,32,2,65,2,54,2,0,32,1,16,13,3,64,2,64,2,64,2,127,2,64,2,64,2,64,2,64,32,1,40,2,12,34,2,65,34,107,14,8,1,3,3,3,3,3,3,0,2,11,32,1,16,12,26,32,1,16,13,32,0,40,2,84,33,2,32,0,32,0,40,2,88,34,3,65,1,106,34,1,32,0,40,2,92,34,4,75,4,127,65,8,32,4,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,3,116,33,1,2,127,32,2,4,64,32,2,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,92,32,0,40,2,88,34,3,65,1,106,5,32,1,11,54,2,88,32,0,32,2,54,2,84,32,2,32,3,65,3,116,106,66,0,55,2,0,65,0,12,7,11,65,1,32,0,32,1,16,46,13,6,26,32,8,32,0,40,2,132,1,32,0,40,2,136,1,16,45,12,2,11,32,2,65,192,0,70,13,2,11,2,64,32,2,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,5,11,32,1,40,2,0,33,2,32,1,16,22,32,8,32,2,32,1,40,2,0,32,2,107,16,45,11,33,2,32,0,40,2,84,33,3,32,0,32,0,40,2,88,34,4,65,1,106,34,5,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,5,32,4,32,5,75,27,34,4,32,4,65,8,77,27,34,5,65,3,116,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,5,11,54,2,88,32,0,32,3,54,2,84,32,3,32,4,65,3,116,106,34,3,65,2,54,2,0,12,1,11,32,1,16,12,26,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,3,11,32,1,40,2,0,33,3,32,1,16,22,2,64,2,64,32,0,40,2,16,34,5,69,13,0,32,1,40,2,0,32,3,107,33,4,32,0,40,2,12,33,12,65,0,33,2,3,64,2,64,32,4,32,12,32,2,65,3,116,106,34,6,40,2,4,70,4,64,32,0,40,2,0,32,6,40,2,0,106,32,3,32,4,16,27,69,13,1,11,32,2,65,1,106,34,2,32,5,71,13,1,12,2,11,11,32,2,65,127,71,13,1,11,32,1,65,0,58,0,16,32,1,32,3,54,2,0,32,1,16,12,26,65,4,12,3,11,32,0,40,2,84,33,3,32,0,32,0,40,2,88,34,4,65,1,106,34,5,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,5,32,4,32,5,75,27,34,4,32,4,65,8,77,27,34,5,65,3,116,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,5,11,54,2,88,32,0,32,3,54,2,84,32,3,32,4,65,3,116,106,34,3,65,1,54,2,0,11,32,3,32,2,54,2,4,32,1,16,13,12,0,11,0,11,33,6,12,4,11,32,1,40,2,0,33,8,2,64,32,5,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,71,13,4,11,32,1,16,22,2,64,2,64,32,1,40,2,0,32,8,107,34,7,65,1,70,4,64,65,0,33,11,65,0,33,5,32,8,45,0,0,65,223,0,70,13,1,11,32,8,35,1,65,181,10,106,32,7,16,27,69,4,64,32,1,16,13,2,64,2,64,2,64,32,1,40,2,12,16,19,13,0,65,0,33,5,65,1,33,11,2,64,32,1,40,2,12,34,7,65,34,107,14,12,2,3,3,3,3,3,3,5,3,3,3,1,0,11,32,7,65,223,0,71,13,2,11,32,1,40,2,0,33,6,32,1,16,22,65,1,33,11,32,0,40,2,156,1,32,6,32,1,40,2,0,32,6,107,65,1,16,30,34,5,13,3,32,1,65,0,58,0,16,32,1,32,6,54,2,0,32,1,16,12,26,65,2,33,6,12,8,11,32,1,40,2,0,33,7,32,0,32,1,16,46,13,7,32,0,40,2,156,1,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,34,5,13,2,32,1,65,0,58,0,16,32,1,32,7,65,1,106,54,2,0,32,1,16,12,26,65,2,33,6,12,7,11,32,1,65,0,58,0,16,32,1,16,12,26,12,6,11,32,0,40,2,156,1,32,8,32,7,65,1,16,30,34,5,69,13,1,65,0,33,11,11,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,10,65,1,106,34,7,32,0,40,2,68,34,13,75,4,127,65,8,32,13,65,1,116,34,10,32,7,32,7,32,10,73,27,34,7,32,7,65,8,77,27,34,10,65,20,108,33,7,2,127,32,6,4,64,32,6,32,7,35,6,40,2,0,17,1,0,12,1,11,32,7,35,7,40,2,0,17,0,0,11,33,6,32,0,32,10,54,2,68,32,0,40,2,64,34,10,65,1,106,5,32,7,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,10,65,20,108,106,34,6,65,0,54,1,2,32,6,32,5,59,1,0,32,6,32,9,40,2,16,54,1,6,32,6,32,9,47,1,20,59,1,10,32,6,65,2,65,0,32,3,27,59,1,18,32,6,65,255,255,3,54,1,14,32,6,32,2,59,1,12,32,0,40,2,60,32,0,40,2,64,65,20,108,106,34,3,65,20,107,33,6,2,64,32,5,65,253,255,3,75,13,0,32,0,40,2,156,1,40,2,72,32,5,65,3,108,106,45,0,2,65,1,113,69,13,0,32,3,65,18,107,32,6,47,1,0,59,1,0,32,6,65,0,59,1,0,11,32,11,4,64,32,3,65,2,107,34,7,32,7,47,1,0,65,128,4,114,59,1,0,11,32,5,69,4,64,32,3,65,2,107,34,5,32,5,47,1,0,65,1,114,59,1,0,11,2,64,2,64,32,1,40,2,12,65,47,71,13,0,32,3,65,18,107,34,5,47,1,0,69,4,64,32,1,65,0,58,0,16,32,1,32,8,65,1,107,54,2,0,32,1,16,12,26,65,5,33,6,12,7,11,32,1,16,12,26,32,1,40,2,0,33,3,32,6,2,127,2,64,2,64,32,1,40,2,12,16,19,13,0,65,1,33,6,2,64,32,1,40,2,12,34,7,65,34,107,14,12,2,10,10,10,10,10,10,10,10,10,10,1,0,11,32,7,65,223,0,71,13,9,11,32,1,16,22,32,0,40,2,156,1,34,10,32,3,32,1,40,2,0,32,3,107,65,1,16,30,12,1,11,32,0,32,1,16,46,13,7,32,0,40,2,156,1,34,10,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,11,34,6,59,1,0,32,6,69,4,64,32,1,65,0,58,0,16,32,1,32,3,54,2,0,32,1,16,12,26,65,2,33,6,12,7,11,32,10,40,2,0,65,15,73,13,0,32,5,47,1,0,34,3,65,253,255,3,75,13,1,32,10,40,2,72,32,3,65,3,108,106,45,0,2,65,1,113,69,13,1,32,10,40,2,156,1,32,3,65,2,116,106,34,3,47,1,2,34,7,69,13,1,32,10,40,2,160,1,32,3,47,1,0,65,1,116,106,33,3,65,0,33,5,3,64,32,3,32,5,65,1,116,106,47,1,0,32,6,70,13,1,32,7,32,5,65,1,106,34,5,71,13,0,11,12,1,11,32,1,16,13,32,9,65,0,54,2,12,32,9,66,0,55,2,4,32,2,65,1,106,33,5,65,0,33,10,65,0,33,11,3,64,32,10,65,255,255,3,113,34,8,65,7,75,33,13,3,64,65,0,33,7,2,64,2,64,2,64,32,1,40,2,12,65,33,107,14,14,0,2,2,2,2,2,2,2,2,2,2,2,2,1,2,11,32,1,16,12,26,32,1,16,13,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,3,65,45,70,13,0,32,3,65,223,0,71,13,8,11,32,1,40,2,0,33,3,32,1,16,22,32,1,40,2,0,33,6,32,1,16,13,32,0,40,2,156,1,32,3,32,6,32,3,107,16,106,34,6,69,4,64,32,1,32,3,54,2,0,65,3,33,6,12,9,11,32,13,13,2,32,9,65,16,106,32,8,65,1,116,106,32,6,59,1,0,32,10,65,1,106,33,10,12,3,11,32,1,16,12,26,32,1,16,13,65,1,33,7,11,32,0,47,1,64,33,3,32,0,32,1,32,5,32,7,32,9,65,4,106,16,31,34,6,4,64,32,6,65,127,71,13,7,65,1,33,6,32,1,40,2,12,65,41,71,13,7,2,64,32,7,69,13,0,32,11,65,255,255,3,113,34,3,69,13,7,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,3,65,255,255,3,70,13,0,32,0,40,2,64,32,3,77,13,0,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,6,65,255,255,3,70,13,0,3,64,32,6,65,255,255,3,113,34,3,32,0,40,2,64,79,13,1,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,6,65,255,255,3,71,13,0,11,11,32,10,65,255,255,3,113,34,3,4,64,2,64,32,9,65,16,106,33,11,65,0,33,7,65,0,33,10,65,0,33,13,32,0,40,2,60,32,12,65,255,255,3,113,65,20,108,106,33,14,32,0,40,2,120,33,5,32,0,40,2,124,34,6,4,64,65,0,33,8,3,64,2,127,32,5,32,8,65,1,116,106,47,1,0,34,15,69,4,64,32,3,32,7,70,4,64,32,14,32,13,59,1,16,12,5,11,32,8,65,1,106,33,13,65,0,33,10,65,0,12,1,11,32,3,32,7,77,4,64,65,1,33,10,65,0,12,1,11,65,0,32,7,65,1,106,32,15,32,11,32,7,65,1,116,106,47,1,0,71,32,10,114,34,10,65,1,113,27,11,33,7,32,8,65,1,106,34,8,32,6,71,13,0,11,11,32,14,32,6,59,1,16,2,64,32,3,32,6,106,34,7,32,0,40,2,128,1,77,13,0,32,7,65,1,116,33,8,2,127,32,5,4,64,32,5,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,5,32,0,32,7,54,2,128,1,32,0,40,2,124,34,7,32,6,77,13,0,32,7,32,6,107,65,1,116,34,7,69,13,0,32,5,32,8,106,32,5,32,6,65,1,116,106,32,7,252,10,0,0,11,32,3,65,1,116,34,8,4,64,32,5,32,6,65,1,116,106,32,11,32,8,252,10,0,0,11,32,0,32,5,54,2,120,32,0,32,0,40,2,124,32,3,106,34,8,54,2,124,32,0,32,8,65,1,106,34,3,32,0,40,2,128,1,34,6,75,4,127,65,8,32,6,65,1,116,34,8,32,3,32,3,32,8,73,27,34,3,32,3,65,8,77,27,34,8,65,1,116,33,3,2,127,32,5,4,64,32,5,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,5,32,0,32,8,54,2,128,1,32,0,40,2,124,34,8,65,1,106,5,32,3,11,54,2,124,32,0,32,5,54,2,120,32,5,32,8,65,1,116,106,65,0,59,1,0,11,11,32,1,16,12,26,32,9,40,2,4,34,3,69,13,5,32,3,35,8,40,2,0,17,2,0,12,5,5,32,0,40,2,64,33,6,32,4,32,9,65,4,106,16,53,32,9,65,0,54,2,8,32,3,32,3,32,6,70,107,33,11,12,1,11,0,11,0,11,0,11,32,1,65,0,58,0,16,32,1,32,8,65,1,107,54,2,0,32,1,16,12,26,65,5,33,6,12,4,11,32,1,65,0,58,0,16,32,1,32,8,54,2,0,32,1,16,12,26,65,2,33,6,12,3,11,32,1,16,13,65,3,33,8,3,64,32,8,33,3,65,2,33,8,2,64,2,64,3,64,2,64,32,1,40,2,12,34,5,65,192,0,71,4,64,2,64,32,5,65,42,107,14,22,4,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,5,11,35,1,65,196,12,106,32,3,65,255,1,113,65,2,116,106,40,2,0,33,8,12,3,11,32,1,16,12,26,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,70,13,0,65,1,33,6,12,8,11,32,1,40,2,0,33,5,32,1,16,22,32,1,40,2,0,33,6,32,1,16,13,32,0,32,5,32,6,32,5,107,16,45,33,10,32,10,32,4,40,2,4,34,6,79,4,64,32,10,65,1,106,33,5,32,4,40,2,0,33,7,32,10,32,4,40,2,8,34,11,79,4,64,65,8,32,11,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,33,6,2,127,32,7,4,64,32,7,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,7,32,4,32,6,54,2,8,32,4,40,2,4,33,6,11,32,4,32,7,54,2,0,32,5,32,6,107,34,11,4,64,32,6,32,7,106,65,0,32,11,252,11,0,11,32,4,32,5,54,2,4,11,32,4,40,2,0,32,10,106,34,5,66,131,136,144,160,192,0,32,5,49,0,0,34,18,66,3,134,136,167,65,0,32,18,66,5,84,27,58,0,0,32,0,40,2,60,33,7,32,12,33,5,3,64,2,64,2,127,32,7,32,5,65,20,108,106,34,6,47,1,6,65,255,255,3,70,4,64,32,6,65,6,106,12,1,11,32,6,65,8,106,32,6,47,1,8,65,255,255,3,70,13,0,26,32,6,47,1,10,65,255,255,3,71,13,1,32,6,65,10,106,11,32,10,59,1,0,11,32,6,47,1,14,34,6,65,255,255,3,70,13,2,32,5,32,6,79,13,2,32,6,34,5,32,0,40,2,64,73,13,0,11,12,1,11,11,65,4,65,2,32,3,65,2,75,27,33,8,11,32,1,16,12,26,32,1,16,13,12,1,11,11,2,64,2,64,2,64,2,64,32,3,65,1,107,14,4,2,1,3,0,3,11,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,1,32,0,40,2,68,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,1,32,1,32,5,73,27,34,1,32,1,65,8,77,27,34,5,65,20,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,5,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,1,11,54,2,64,32,0,32,6,54,2,60,32,6,32,7,65,20,108,106,34,0,65,0,54,1,2,32,0,65,0,59,1,0,32,0,32,9,40,2,16,54,1,6,32,0,32,9,47,1,20,59,1,10,32,0,65,128,128,160,1,54,1,16,32,0,32,12,59,1,14,32,0,32,2,59,1,12,12,2,11,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,1,32,0,40,2,68,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,1,32,1,32,5,73,27,34,1,32,1,65,8,77,27,34,5,65,20,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,5,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,1,11,54,2,64,32,0,32,6,54,2,60,32,6,32,7,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,9,40,2,16,54,1,6,32,1,32,9,47,1,20,59,1,10,32,1,65,128,128,160,1,54,1,16,32,1,32,12,59,1,14,32,1,32,2,59,1,12,32,0,40,2,64,34,1,65,1,107,33,2,32,0,40,2,60,33,0,3,64,32,0,32,12,65,20,108,106,34,5,47,1,14,34,12,65,255,255,3,71,32,2,32,12,75,113,13,0,11,32,5,32,1,59,1,14,12,1,11,32,0,40,2,64,33,1,32,0,40,2,60,33,0,3,64,32,0,32,12,65,20,108,106,34,2,47,1,14,34,12,65,255,255,3,71,32,1,32,12,75,113,13,0,11,32,2,32,1,59,1,14,11,32,4,47,1,4,4,64,35,1,32,3,65,2,116,106,65,212,12,106,33,1,65,4,65,2,32,3,65,3,107,65,2,73,27,33,0,65,0,33,6,3,64,32,3,33,5,2,64,2,64,2,64,2,64,2,64,32,4,40,2,0,32,6,106,34,2,45,0,0,65,1,107,14,4,0,1,4,2,3,11,32,1,40,2,0,33,5,12,3,11,65,2,33,5,12,2,11,32,0,33,5,12,1,11,65,0,33,5,11,32,2,32,5,58,0,0,32,6,65,1,106,34,6,32,4,47,1,4,73,13,0,11,11,65,0,33,6,12,2,11,65,1,33,6,11,32,9,40,2,4,34,0,69,13,0,32,0,35,8,40,2,0,17,2,0,11,32,9,65,32,106,36,0,32,6,11,144,10,2,19,127,1,126,35,0,65,32,107,34,11,36,0,2,64,32,1,40,2,0,34,6,32,0,70,13,0,32,0,47,1,144,1,34,14,4,64,32,0,65,16,106,33,15,32,1,40,2,4,34,5,65,48,106,33,16,32,5,65,32,113,33,17,32,5,65,3,118,65,1,113,33,18,32,5,65,128,254,3,113,65,8,118,33,19,32,1,45,0,11,33,20,32,1,45,0,10,33,21,3,64,2,64,2,64,32,15,32,4,65,4,116,106,34,12,40,2,4,34,7,32,5,70,13,0,32,7,69,13,1,32,5,69,13,1,32,19,33,3,32,7,65,1,113,34,9,4,127,32,7,65,128,254,3,113,65,8,118,5,32,7,47,1,40,11,65,255,255,3,113,32,5,65,1,113,34,13,4,127,32,3,5,32,5,47,1,40,11,65,255,255,3,113,71,13,1,32,12,45,0,11,33,10,32,12,45,0,10,33,3,2,64,2,64,2,64,32,9,4,64,32,7,65,32,113,13,1,12,3,11,32,7,45,0,45,65,2,113,13,0,32,7,40,2,32,69,13,1,11,2,64,32,13,4,64,32,17,69,13,1,12,4,11,32,5,45,0,45,65,2,113,13,3,32,5,40,2,32,13,3,11,32,9,13,1,11,32,7,40,2,4,33,3,11,32,21,33,8,32,13,4,127,32,8,5,32,5,40,2,4,11,32,3,71,13,1,32,20,33,3,32,9,4,127,32,10,5,32,7,40,2,16,11,32,13,4,127,32,3,5,32,5,40,2,16,11,71,13,1,65,0,33,3,65,0,33,10,32,9,4,127,65,0,5,32,7,40,2,36,11,32,13,4,127,65,0,5,32,5,40,2,36,11,71,13,1,32,18,33,3,32,9,4,127,32,7,65,3,118,65,1,113,5,32,7,47,1,44,65,2,118,65,1,113,11,32,13,4,127,32,3,5,32,5,47,1,44,65,2,118,65,1,113,11,71,13,1,35,1,33,3,35,1,33,8,2,127,32,3,65,148,12,106,32,9,13,0,26,35,1,65,148,12,106,32,7,45,0,44,65,192,0,113,69,13,0,26,35,1,65,148,12,106,32,7,65,48,106,32,7,40,2,36,27,11,34,3,40,2,24,33,9,2,64,2,127,32,8,65,148,12,106,32,13,13,0,26,35,1,65,148,12,106,32,5,45,0,44,65,192,0,113,69,13,0,26,35,1,65,148,12,106,32,16,32,5,40,2,36,27,11,34,10,40,2,24,34,8,65,25,79,4,64,32,8,32,9,71,13,3,32,3,40,2,0,33,3,32,10,40,2,0,33,10,12,1,11,32,8,32,9,71,13,2,11,32,3,32,10,32,8,16,18,13,1,11,32,6,32,12,40,2,0,34,3,70,4,64,65,0,33,3,2,127,65,0,32,5,65,1,113,13,0,26,65,0,32,5,40,2,36,69,13,0,26,32,5,40,2,60,11,33,4,2,64,32,7,65,1,113,13,0,32,7,40,2,36,69,13,0,32,7,40,2,60,33,3,11,32,3,32,4,78,13,4,32,5,65,1,113,69,4,64,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,32,1,40,2,0,33,6,11,32,11,32,12,41,2,4,55,3,8,32,2,32,11,65,8,106,16,10,32,12,32,1,41,2,4,34,22,55,2,4,32,6,40,2,160,1,33,2,65,0,33,4,2,64,32,22,167,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,60,33,4,11,32,0,32,2,32,4,106,54,2,160,1,12,4,11,32,3,47,1,0,32,6,47,1,0,71,13,0,32,3,40,2,4,32,6,40,2,4,71,13,0,32,3,40,2,152,1,32,6,40,2,152,1,71,13,0,32,6,47,1,144,1,4,64,32,6,65,16,106,33,1,65,0,33,4,3,64,32,12,40,2,0,32,11,32,1,32,4,65,4,116,106,34,8,41,2,8,55,3,24,32,11,32,8,41,2,0,55,3,16,32,11,65,16,106,32,2,16,32,32,4,65,1,106,34,4,32,6,47,1,144,1,73,13,0,11,11,32,6,40,2,160,1,33,4,32,5,4,64,65,0,33,2,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,2,11,32,2,32,4,106,33,4,11,32,4,32,0,40,2,160,1,76,13,3,32,0,32,4,54,2,160,1,12,3,11,32,4,65,1,106,34,4,32,14,71,13,0,11,32,14,65,8,70,13,1,11,32,6,4,64,32,6,32,6,40,2,148,1,65,1,106,54,2,148,1,11,32,6,40,2,160,1,33,2,32,6,40,2,156,1,33,3,32,0,32,14,65,1,106,59,1,144,1,32,0,32,14,65,4,116,106,34,8,32,1,41,2,8,55,2,24,32,8,32,1,41,2,0,55,2,16,32,1,40,2,4,34,4,4,64,32,4,65,1,113,69,4,64,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,32,1,45,0,4,33,4,11,2,64,32,4,65,1,113,69,4,64,65,0,33,4,65,0,33,6,32,1,40,2,4,34,1,40,2,36,34,8,4,64,32,1,40,2,56,33,6,11,32,6,32,1,47,1,44,65,1,113,106,32,1,47,1,40,65,254,255,3,70,106,33,6,32,8,69,13,1,32,1,40,2,60,33,4,12,1,11,32,4,65,1,118,65,1,113,33,6,65,0,33,4,11,32,3,32,6,106,33,3,32,2,32,4,106,33,2,11,32,0,40,2,156,1,32,3,73,4,64,32,0,32,3,54,2,156,1,11,32,2,32,0,40,2,160,1,76,13,0,32,0,32,2,54,2,160,1,11,32,11,65,32,106,36,0,11,117,2,1,127,1,126,32,0,173,66,7,124,66,248,255,255,255,31,131,33,2,35,1,65,140,213,0,106,34,1,40,2,0,34,0,69,4,64,32,1,35,5,34,0,54,2,0,11,2,64,32,2,32,0,173,124,34,2,66,255,255,255,255,15,88,4,64,32,2,167,34,1,63,0,65,16,116,77,13,1,32,1,16,1,13,1,11,35,1,65,216,213,0,106,65,48,54,2,0,65,127,15,11,35,1,65,140,213,0,106,32,1,54,2,0,32,0,11,253,41,1,11,127,35,0,65,16,107,34,11,36,0,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,0,65,244,1,77,4,64,35,1,65,164,215,0,106,34,2,40,2,0,34,4,65,16,32,0,65,11,106,65,248,3,113,32,0,65,11,73,27,34,7,65,3,118,34,0,118,34,1,65,3,113,4,64,2,64,32,2,32,1,65,127,115,65,1,113,32,0,106,34,3,65,3,116,34,1,106,34,0,34,6,65,40,106,34,7,32,0,40,2,48,34,0,40,2,8,34,5,70,4,64,32,2,32,4,65,126,32,3,119,113,54,2,0,12,1,11,32,5,32,7,54,2,12,32,6,32,5,54,2,48,11,32,0,65,8,106,33,5,32,0,32,1,65,3,114,54,2,4,32,0,32,1,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,11,11,32,7,35,1,65,164,215,0,106,34,2,40,2,8,34,8,77,13,1,32,1,4,64,2,64,32,2,65,2,32,0,116,34,5,65,0,32,5,107,114,32,1,32,0,116,113,104,34,3,65,3,116,34,1,106,34,0,34,6,65,40,106,34,9,32,0,40,2,48,34,0,40,2,8,34,5,70,4,64,32,2,32,4,65,126,32,3,119,113,34,4,54,2,0,12,1,11,32,5,32,9,54,2,12,32,6,32,5,54,2,48,11,32,0,32,7,65,3,114,54,2,4,32,0,32,7,106,34,6,32,1,32,7,107,34,3,65,1,114,54,2,4,32,0,32,1,106,32,3,54,2,0,32,8,4,64,35,1,65,164,215,0,106,34,5,34,2,32,8,65,120,113,106,65,40,106,33,1,32,2,40,2,20,33,2,2,127,32,4,65,1,32,8,65,3,118,116,34,7,113,69,4,64,32,5,32,4,32,7,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,5,32,1,32,2,54,2,8,32,5,32,2,54,2,12,32,2,32,1,54,2,12,32,2,32,5,54,2,8,11,32,0,65,8,106,33,5,35,1,65,164,215,0,106,34,0,32,6,54,2,20,32,0,32,3,54,2,8,12,11,11,35,1,65,164,215,0,106,34,0,40,2,4,34,10,69,13,1,32,10,104,65,2,116,32,0,106,40,2,176,2,34,3,40,2,4,65,120,113,32,7,107,33,0,32,3,33,1,3,64,2,64,32,1,40,2,16,34,5,69,4,64,32,1,40,2,20,34,5,69,13,1,11,32,5,40,2,4,65,120,113,32,7,107,34,1,32,0,32,0,32,1,75,34,1,27,33,0,32,5,32,3,32,1,27,33,3,32,5,33,1,12,1,11,11,32,3,40,2,24,33,9,32,3,32,3,40,2,12,34,5,71,4,64,32,3,40,2,8,34,1,32,5,54,2,12,32,5,32,1,54,2,8,12,10,11,32,3,40,2,20,34,1,4,127,32,3,65,20,106,5,32,3,40,2,16,34,1,69,13,3,32,3,65,16,106,11,33,2,3,64,32,2,33,6,32,1,34,5,65,20,106,33,2,32,1,40,2,20,34,1,13,0,32,5,65,16,106,33,2,32,5,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,9,11,65,127,33,7,32,0,65,191,127,75,13,0,32,0,65,11,106,34,1,65,120,113,33,7,35,1,65,164,215,0,106,40,2,4,34,6,69,13,0,65,31,33,8,32,0,65,244,255,255,7,77,4,64,32,7,65,38,32,1,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,8,11,65,0,32,7,107,33,0,2,64,2,64,35,1,65,164,215,0,106,32,8,65,2,116,106,40,2,176,2,34,1,4,64,32,7,65,25,32,8,65,1,118,107,65,0,32,8,65,31,71,27,116,33,3,3,64,2,64,32,1,40,2,4,65,120,113,32,7,107,34,4,32,0,79,13,0,32,1,33,2,32,4,34,0,13,0,65,0,33,0,32,1,33,5,12,3,11,32,5,32,1,40,2,20,34,4,32,4,32,1,32,3,65,29,118,65,4,113,106,40,2,16,34,1,70,27,32,5,32,4,27,33,5,32,3,65,1,116,33,3,32,1,13,0,11,11,32,2,32,5,114,69,4,64,65,0,33,2,65,2,32,8,116,34,1,65,0,32,1,107,114,32,6,113,34,1,69,13,3,35,1,65,164,215,0,106,32,1,104,65,2,116,106,40,2,176,2,33,5,11,32,5,69,13,1,11,3,64,32,5,40,2,4,65,120,113,32,7,107,34,3,32,0,73,33,1,32,3,32,0,32,1,27,33,0,32,5,32,2,32,1,27,33,2,32,5,40,2,16,34,1,4,127,32,1,5,32,5,40,2,20,11,34,5,13,0,11,11,32,2,69,13,0,32,0,35,1,65,164,215,0,106,40,2,8,32,7,107,79,13,0,32,2,40,2,24,33,8,32,2,32,2,40,2,12,34,5,71,4,64,32,2,40,2,8,34,1,32,5,54,2,12,32,5,32,1,54,2,8,12,8,11,32,2,40,2,20,34,1,4,127,32,2,65,20,106,5,32,2,40,2,16,34,1,69,13,3,32,2,65,16,106,11,33,3,3,64,32,3,33,4,32,1,34,5,65,20,106,33,3,32,1,40,2,20,34,1,13,0,32,5,65,16,106,33,3,32,5,40,2,16,34,1,13,0,11,32,4,65,0,54,2,0,12,7,11,32,7,35,1,65,164,215,0,106,34,0,40,2,8,34,2,77,4,64,32,0,40,2,20,33,0,2,64,32,2,32,7,107,34,1,65,16,79,4,64,32,0,32,7,106,34,3,32,1,65,1,114,54,2,4,32,0,32,2,106,32,1,54,2,0,32,0,32,7,65,3,114,54,2,4,12,1,11,32,0,32,2,65,3,114,54,2,4,32,0,32,2,106,34,1,32,1,40,2,4,65,1,114,54,2,4,65,0,33,3,65,0,33,1,11,35,1,65,164,215,0,106,34,2,32,1,54,2,8,32,2,32,3,54,2,20,32,0,65,8,106,33,5,12,9,11,32,7,35,1,65,164,215,0,106,34,0,40,2,12,34,2,73,4,64,32,0,32,2,32,7,107,34,1,54,2,12,32,0,32,0,40,2,24,34,0,32,7,106,34,2,54,2,24,32,2,32,1,65,1,114,54,2,4,32,0,32,7,65,3,114,54,2,4,32,0,65,8,106,33,5,12,9,11,65,0,33,5,32,7,65,47,106,34,4,2,127,35,1,65,252,218,0,106,34,0,40,2,0,4,64,32,0,40,2,8,12,1,11,35,1,34,1,65,252,218,0,106,34,0,65,0,54,2,20,32,0,66,127,55,2,12,32,0,66,128,160,128,128,128,128,4,55,2,4,32,1,65,164,215,0,106,65,0,54,2,188,3,32,0,32,11,65,12,106,65,112,113,65,216,170,213,170,5,115,54,2,0,65,128,32,11,34,0,106,34,6,65,0,32,0,107,34,8,113,34,1,32,7,77,13,8,35,1,65,164,215,0,106,34,0,40,2,184,3,34,3,4,64,32,0,40,2,176,3,34,0,32,1,106,34,9,32,0,77,13,9,32,3,32,9,73,13,9,11,2,64,35,1,65,164,215,0,106,34,0,45,0,188,3,65,4,113,69,4,64,2,64,2,64,2,64,2,64,32,0,40,2,24,34,3,4,64,32,0,65,192,3,106,33,0,3,64,32,0,40,2,0,34,9,32,3,77,4,64,32,3,32,9,32,0,40,2,4,106,73,13,3,11,32,0,40,2,8,34,0,13,0,11,11,65,0,16,33,34,2,65,127,70,13,3,32,1,33,3,35,1,65,252,218,0,106,40,2,4,34,0,65,1,107,34,6,32,2,113,4,64,32,1,32,2,107,32,2,32,6,106,65,0,32,0,107,113,106,33,3,11,32,3,32,7,77,13,3,35,1,65,164,215,0,106,34,6,40,2,176,3,33,0,32,6,40,2,184,3,34,6,4,64,32,0,32,0,32,3,106,34,8,79,13,4,32,6,32,8,73,13,4,11,32,3,16,33,34,0,32,2,71,13,1,12,5,11,32,6,32,2,107,32,8,113,34,3,16,33,34,2,32,0,40,2,0,32,0,40,2,4,106,70,13,1,32,2,33,0,11,32,0,65,127,70,13,1,32,7,65,48,106,32,3,77,4,64,32,0,33,2,12,4,11,35,1,65,252,218,0,106,40,2,8,34,2,32,4,32,3,107,106,65,0,32,2,107,113,34,2,16,33,65,127,70,13,1,32,2,32,3,106,33,3,32,0,33,2,12,3,11,32,2,65,127,71,13,2,11,35,1,65,164,215,0,106,34,0,32,0,40,2,188,3,65,4,114,54,2,188,3,11,32,1,16,33,33,2,65,0,16,33,33,0,32,2,65,127,70,13,5,32,0,65,127,70,13,5,32,0,32,2,77,13,5,32,0,32,2,107,34,3,32,7,65,40,106,77,13,5,11,35,1,65,164,215,0,106,34,0,32,0,40,2,176,3,32,3,106,34,1,54,2,176,3,32,0,40,2,180,3,32,1,73,4,64,32,0,32,1,54,2,180,3,11,2,64,35,1,65,164,215,0,106,34,0,40,2,24,34,1,4,64,32,0,65,192,3,106,33,0,3,64,32,2,32,0,40,2,0,34,4,32,0,40,2,4,34,6,106,70,13,2,32,0,40,2,8,34,0,13,0,11,12,4,11,35,1,65,164,215,0,106,34,0,40,2,16,34,1,65,0,32,1,32,2,77,27,69,4,64,32,0,32,2,54,2,16,11,65,0,33,0,35,1,34,4,65,164,215,0,106,34,1,65,0,54,2,204,3,32,1,32,3,54,2,196,3,32,1,32,2,54,2,192,3,32,1,65,127,54,2,32,32,1,32,4,65,252,218,0,106,40,2,0,54,2,36,3,64,35,1,65,164,215,0,106,32,0,65,3,116,106,34,1,32,1,65,40,106,34,4,54,2,48,32,1,32,4,54,2,52,32,0,65,1,106,34,0,65,32,71,13,0,11,35,1,34,1,65,164,215,0,106,34,0,32,3,65,40,107,34,3,65,120,32,2,107,65,7,113,34,4,107,34,6,54,2,12,32,0,32,2,32,4,106,34,4,54,2,24,32,4,32,6,65,1,114,54,2,4,32,2,32,3,106,65,40,54,2,4,32,0,32,1,65,252,218,0,106,40,2,16,54,2,28,12,4,11,32,1,32,2,79,13,2,32,1,32,4,73,13,2,32,0,40,2,12,65,8,113,13,2,32,0,32,3,32,6,106,54,2,4,35,1,34,2,65,164,215,0,106,34,0,32,1,65,120,32,1,107,65,7,113,34,4,106,34,6,54,2,24,32,0,32,0,40,2,12,32,3,106,34,3,32,4,107,34,4,54,2,12,32,6,32,4,65,1,114,54,2,4,32,1,32,3,106,65,40,54,2,4,32,0,32,2,65,252,218,0,106,40,2,16,54,2,28,12,3,11,65,0,33,5,12,6,11,65,0,33,5,12,4,11,35,1,65,164,215,0,106,34,0,40,2,16,32,2,75,4,64,32,0,32,2,54,2,16,11,32,2,32,3,106,33,6,35,1,65,228,218,0,106,33,0,2,64,3,64,32,6,32,0,40,2,0,34,4,71,4,64,32,0,40,2,8,34,0,13,1,12,2,11,11,32,0,45,0,12,65,8,113,69,13,3,11,35,1,65,228,218,0,106,33,0,3,64,2,64,32,0,40,2,0,34,4,32,1,77,4,64,32,1,32,4,32,0,40,2,4,106,34,6,73,13,1,11,32,0,40,2,8,33,0,12,1,11,11,35,1,34,4,65,164,215,0,106,34,0,32,3,65,40,107,34,8,65,120,32,2,107,65,7,113,34,9,107,34,10,54,2,12,32,0,32,2,32,9,106,34,9,54,2,24,32,9,32,10,65,1,114,54,2,4,32,2,32,8,106,65,40,54,2,4,32,0,32,4,65,252,218,0,106,40,2,16,54,2,28,32,1,32,6,65,39,32,6,107,65,7,113,106,65,47,107,34,4,32,4,32,1,65,16,106,73,27,34,4,65,27,54,2,4,32,4,32,0,41,2,200,3,55,2,16,32,4,32,0,41,2,192,3,55,2,8,32,0,32,2,54,2,192,3,32,0,32,3,54,2,196,3,32,0,65,0,54,2,204,3,32,0,32,4,65,8,106,54,2,200,3,32,4,65,24,106,33,0,3,64,32,0,65,7,54,2,4,32,0,65,8,106,32,0,65,4,106,33,0,32,6,73,13,0,11,32,1,32,4,70,13,0,32,4,32,4,40,2,4,65,126,113,54,2,4,32,1,32,4,32,1,107,34,2,65,1,114,54,2,4,32,4,32,2,54,2,0,2,127,32,2,65,255,1,77,4,64,35,1,65,164,215,0,106,34,3,32,2,65,248,1,113,106,65,40,106,33,0,2,127,32,3,40,2,0,34,4,65,1,32,2,65,3,118,116,34,2,113,69,4,64,32,3,32,2,32,4,114,54,2,0,32,0,12,1,11,32,0,40,2,8,11,33,3,32,0,32,1,54,2,8,32,3,32,1,54,2,12,65,8,33,4,65,12,12,1,11,65,31,33,0,32,2,65,255,255,255,7,77,4,64,32,2,65,38,32,2,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,0,11,32,1,32,0,54,2,28,32,1,66,0,55,2,16,35,1,65,164,215,0,106,34,4,32,0,65,2,116,106,34,3,65,176,2,106,33,6,2,64,2,64,32,4,40,2,4,34,8,65,1,32,0,116,34,9,113,69,4,64,32,4,32,8,32,9,114,54,2,4,32,3,32,1,54,2,176,2,32,1,32,6,54,2,24,12,1,11,32,2,65,25,32,0,65,1,118,107,65,0,32,0,65,31,71,27,116,33,0,32,3,40,2,176,2,33,4,3,64,32,4,34,3,40,2,4,65,120,113,32,2,70,13,2,32,0,65,29,118,33,4,32,0,65,1,116,33,0,32,3,32,4,65,4,113,106,34,6,40,2,16,34,4,13,0,11,32,6,32,1,54,2,16,32,1,32,3,54,2,24,11,65,12,33,4,32,1,34,3,33,0,65,8,12,1,11,32,3,40,2,8,34,0,32,1,54,2,12,32,3,32,1,54,2,8,32,1,32,0,54,2,8,65,0,33,0,65,12,33,4,65,24,11,33,2,32,1,32,4,106,32,3,54,2,0,32,1,32,2,106,32,0,54,2,0,11,35,1,65,164,215,0,106,34,0,40,2,12,34,1,32,7,77,13,0,32,0,32,1,32,7,107,34,1,54,2,12,32,0,32,0,40,2,24,34,0,32,7,106,34,2,54,2,24,32,2,32,1,65,1,114,54,2,4,32,0,32,7,65,3,114,54,2,4,32,0,65,8,106,33,5,12,4,11,35,1,65,216,213,0,106,65,48,54,2,0,12,3,11,32,0,32,2,54,2,0,32,0,32,0,40,2,4,32,3,106,54,2,4,32,2,65,120,32,2,107,65,7,113,106,34,8,32,7,65,3,114,54,2,4,32,4,65,120,32,4,107,65,7,113,106,34,4,32,7,32,8,106,34,3,107,33,6,2,64,35,1,65,164,215,0,106,34,0,40,2,24,32,4,70,4,64,32,0,32,3,54,2,24,32,0,32,0,40,2,12,32,6,106,34,0,54,2,12,32,3,32,0,65,1,114,54,2,4,12,1,11,35,1,65,164,215,0,106,34,0,40,2,20,32,4,70,4,64,32,0,32,3,54,2,20,32,0,32,0,40,2,8,32,6,106,34,0,54,2,8,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,12,1,11,32,4,40,2,4,34,2,65,3,113,65,1,70,4,64,32,2,65,120,113,33,9,32,4,40,2,12,33,1,2,64,32,2,65,255,1,77,4,64,32,4,40,2,8,34,0,32,1,70,4,64,35,1,65,164,215,0,106,34,0,32,0,40,2,0,65,126,32,2,65,3,118,119,113,54,2,0,12,2,11,32,0,32,1,54,2,12,32,1,32,0,54,2,8,12,1,11,32,4,40,2,24,33,7,2,64,32,1,32,4,71,4,64,32,4,40,2,8,34,0,32,1,54,2,12,32,1,32,0,54,2,8,12,1,11,2,64,32,4,40,2,20,34,2,4,127,32,4,65,20,106,5,32,4,40,2,16,34,2,69,13,1,32,4,65,16,106,11,33,0,3,64,32,0,33,5,32,2,34,1,65,20,106,33,0,32,1,40,2,20,34,2,13,0,32,1,65,16,106,33,0,32,1,40,2,16,34,2,13,0,11,32,5,65,0,54,2,0,12,1,11,65,0,33,1,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,0,32,4,40,2,28,34,2,65,2,116,106,34,5,40,2,176,2,32,4,70,4,64,32,5,32,1,54,2,176,2,32,1,13,1,32,0,32,0,40,2,4,65,126,32,2,119,113,54,2,4,12,2,11,2,64,32,4,32,7,40,2,16,70,4,64,32,7,32,1,54,2,16,12,1,11,32,7,32,1,54,2,20,11,32,1,69,13,1,11,32,1,32,7,54,2,24,32,4,40,2,16,34,0,4,64,32,1,32,0,54,2,16,32,0,32,1,54,2,24,11,32,4,40,2,20,34,0,69,13,0,32,1,32,0,54,2,20,32,0,32,1,54,2,24,11,32,6,32,9,106,33,6,32,4,32,9,106,34,4,40,2,4,33,2,11,32,4,32,2,65,126,113,54,2,4,32,3,32,6,65,1,114,54,2,4,32,3,32,6,106,32,6,54,2,0,32,6,65,255,1,77,4,64,35,1,65,164,215,0,106,34,1,32,6,65,248,1,113,106,65,40,106,33,0,2,127,32,1,40,2,0,34,2,65,1,32,6,65,3,118,116,34,5,113,69,4,64,32,1,32,2,32,5,114,54,2,0,32,0,12,1,11,32,0,40,2,8,11,33,1,32,0,32,3,54,2,8,32,1,32,3,54,2,12,32,3,32,0,54,2,12,32,3,32,1,54,2,8,12,1,11,65,31,33,1,32,6,65,255,255,255,7,77,4,64,32,6,65,38,32,6,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,1,11,32,3,32,1,54,2,28,32,3,66,0,55,2,16,35,1,65,164,215,0,106,34,2,32,1,65,2,116,106,34,0,65,176,2,106,33,5,2,64,2,64,32,2,40,2,4,34,4,65,1,32,1,116,34,7,113,69,4,64,32,2,32,4,32,7,114,54,2,4,32,0,32,3,54,2,176,2,32,3,32,5,54,2,24,12,1,11,32,6,65,25,32,1,65,1,118,107,65,0,32,1,65,31,71,27,116,33,1,32,0,40,2,176,2,33,0,3,64,32,0,34,2,40,2,4,65,120,113,32,6,70,13,2,32,1,65,29,118,33,0,32,1,65,1,116,33,1,32,2,32,0,65,4,113,106,34,5,40,2,16,34,0,13,0,11,32,5,32,3,54,2,16,32,3,32,2,54,2,24,11,32,3,32,3,54,2,12,32,3,32,3,54,2,8,12,1,11,32,2,40,2,8,34,0,32,3,54,2,12,32,2,32,3,54,2,8,32,3,65,0,54,2,24,32,3,32,2,54,2,12,32,3,32,0,54,2,8,11,32,8,65,8,106,33,5,12,2,11,2,64,32,8,69,13,0,2,64,35,1,65,164,215,0,106,34,1,32,2,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,2,70,4,64,32,4,32,5,54,2,176,2,32,5,13,1,32,1,32,6,65,126,32,3,119,113,34,6,54,2,4,12,2,11,2,64,32,2,32,8,40,2,16,70,4,64,32,8,32,5,54,2,16,12,1,11,32,8,32,5,54,2,20,11,32,5,69,13,1,11,32,5,32,8,54,2,24,32,2,40,2,16,34,1,4,64,32,5,32,1,54,2,16,32,1,32,5,54,2,24,11,32,2,40,2,20,34,1,69,13,0,32,5,32,1,54,2,20,32,1,32,5,54,2,24,11,2,64,32,0,65,15,77,4,64,32,2,32,0,32,7,106,34,0,65,3,114,54,2,4,32,0,32,2,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,1,11,32,2,32,7,65,3,114,54,2,4,32,2,32,7,106,34,4,32,0,65,1,114,54,2,4,32,0,32,4,106,32,0,54,2,0,32,0,65,255,1,77,4,64,35,1,65,164,215,0,106,34,5,32,0,65,248,1,113,106,65,40,106,33,1,2,127,32,5,40,2,0,34,3,65,1,32,0,65,3,118,116,34,0,113,69,4,64,32,5,32,0,32,3,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,0,32,1,32,4,54,2,8,32,0,32,4,54,2,12,32,4,32,1,54,2,12,32,4,32,0,54,2,8,12,1,11,65,31,33,5,32,0,65,255,255,255,7,77,4,64,32,0,65,38,32,0,65,8,118,103,34,1,107,118,65,1,113,32,1,65,1,116,107,65,62,106,33,5,11,32,4,32,5,54,2,28,32,4,66,0,55,2,16,35,1,32,5,65,2,116,106,65,212,217,0,106,33,1,2,64,2,64,32,6,65,1,32,5,116,34,3,113,69,4,64,35,1,65,164,215,0,106,32,3,32,6,114,54,2,4,32,1,32,4,54,2,0,32,4,32,1,54,2,24,12,1,11,32,0,65,25,32,5,65,1,118,107,65,0,32,5,65,31,71,27,116,33,5,32,1,40,2,0,33,1,3,64,32,1,34,3,40,2,4,65,120,113,32,0,70,13,2,32,5,65,29,118,33,1,32,5,65,1,116,33,5,32,3,32,1,65,4,113,106,34,6,40,2,16,34,1,13,0,11,32,6,32,4,54,2,16,32,4,32,3,54,2,24,11,32,4,32,4,54,2,12,32,4,32,4,54,2,8,12,1,11,32,3,40,2,8,34,0,32,4,54,2,12,32,3,32,4,54,2,8,32,4,65,0,54,2,24,32,4,32,3,54,2,12,32,4,32,0,54,2,8,11,32,2,65,8,106,33,5,12,1,11,2,64,32,9,69,13,0,2,64,35,1,65,164,215,0,106,34,1,32,3,40,2,28,34,2,65,2,116,106,34,6,40,2,176,2,32,3,70,4,64,32,6,32,5,54,2,176,2,32,5,13,1,32,1,32,10,65,126,32,2,119,113,54,2,4,12,2,11,2,64,32,3,32,9,40,2,16,70,4,64,32,9,32,5,54,2,16,12,1,11,32,9,32,5,54,2,20,11,32,5,69,13,1,11,32,5,32,9,54,2,24,32,3,40,2,16,34,1,4,64,32,5,32,1,54,2,16,32,1,32,5,54,2,24,11,32,3,40,2,20,34,1,69,13,0,32,5,32,1,54,2,20,32,1,32,5,54,2,24,11,2,64,32,0,65,15,77,4,64,32,3,32,0,32,7,106,34,0,65,3,114,54,2,4,32,0,32,3,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,1,11,32,3,32,7,65,3,114,54,2,4,32,3,32,7,106,34,5,32,0,65,1,114,54,2,4,32,0,32,5,106,32,0,54,2,0,32,8,4,64,35,1,65,164,215,0,106,34,6,34,2,32,8,65,120,113,106,65,40,106,33,1,32,2,40,2,20,33,2,2,127,65,1,32,8,65,3,118,116,34,7,32,4,113,69,4,64,32,6,32,4,32,7,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,4,32,1,32,2,54,2,8,32,4,32,2,54,2,12,32,2,32,1,54,2,12,32,2,32,4,54,2,8,11,35,1,65,164,215,0,106,34,1,32,5,54,2,20,32,1,32,0,54,2,8,11,32,3,65,8,106,33,5,11,32,11,65,16,106,36,0,32,5,11,128,1,2,1,126,3,127,2,64,32,0,66,128,128,128,128,16,84,4,64,32,0,33,2,12,1,11,3,64,32,1,65,1,107,34,1,32,0,32,0,66,10,128,34,2,66,10,126,125,167,65,48,114,58,0,0,32,0,66,255,255,255,255,159,1,86,32,2,33,0,13,0,11,11,32,2,66,0,82,4,64,32,2,167,33,3,3,64,32,1,65,1,107,34,1,32,3,32,3,65,10,110,34,4,65,10,108,107,65,48,114,58,0,0,32,3,65,9,75,32,4,33,3,13,0,11,11,32,1,11,139,4,1,3,127,32,2,65,128,4,79,4,64,32,2,4,64,32,0,32,1,32,2,252,10,0,0,11,32,0,15,11,32,0,32,2,106,33,3,2,64,32,0,32,1,115,65,3,113,69,4,64,2,64,32,0,65,3,113,69,4,64,32,0,33,2,12,1,11,32,2,69,4,64,32,0,33,2,12,1,11,32,0,33,2,3,64,32,2,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,106,34,2,65,3,113,69,13,1,32,2,32,3,73,13,0,11,11,32,3,65,124,113,33,4,2,64,32,3,65,192,0,73,13,0,32,2,32,4,65,64,106,34,5,75,13,0,3,64,32,2,32,1,40,2,0,54,2,0,32,2,32,1,40,2,4,54,2,4,32,2,32,1,40,2,8,54,2,8,32,2,32,1,40,2,12,54,2,12,32,2,32,1,40,2,16,54,2,16,32,2,32,1,40,2,20,54,2,20,32,2,32,1,40,2,24,54,2,24,32,2,32,1,40,2,28,54,2,28,32,2,32,1,40,2,32,54,2,32,32,2,32,1,40,2,36,54,2,36,32,2,32,1,40,2,40,54,2,40,32,2,32,1,40,2,44,54,2,44,32,2,32,1,40,2,48,54,2,48,32,2,32,1,40,2,52,54,2,52,32,2,32,1,40,2,56,54,2,56,32,2,32,1,40,2,60,54,2,60,32,1,65,64,107,33,1,32,2,65,64,107,34,2,32,5,77,13,0,11,11,32,2,32,4,79,13,1,3,64,32,2,32,1,40,2,0,54,2,0,32,1,65,4,106,33,1,32,2,65,4,106,34,2,32,4,73,13,0,11,12,1,11,32,3,65,4,73,4,64,32,0,33,2,12,1,11,32,2,65,4,73,4,64,32,0,33,2,12,1,11,32,3,65,4,107,33,4,32,0,33,2,3,64,32,2,32,1,45,0,0,58,0,0,32,2,32,1,45,0,1,58,0,1,32,2,32,1,45,0,2,58,0,2,32,2,32,1,45,0,3,58,0,3,32,1,65,4,106,33,1,32,2,65,4,106,34,2,32,4,77,13,0,11,11,32,2,32,3,73,4,64,3,64,32,2,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,106,34,2,32,3,71,13,0,11,11,32,0,11,241,4,2,6,127,1,126,35,0,65,16,107,33,4,2,64,32,0,40,2,0,34,3,69,13,0,32,0,40,2,24,34,6,32,3,40,2,36,34,7,70,13,0,32,4,32,0,40,2,20,54,2,8,32,4,32,0,41,2,12,55,3,0,32,0,41,2,28,33,9,32,1,32,6,65,3,116,65,0,32,3,32,7,65,3,116,107,32,3,65,1,113,27,106,34,5,54,2,0,32,1,32,4,41,3,0,55,2,4,32,1,32,4,40,2,8,54,2,12,32,1,32,9,55,2,20,32,1,32,6,54,2,16,32,2,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,34,4,58,0,0,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,0,40,2,28,33,1,32,0,40,2,36,34,3,4,64,32,2,32,3,32,1,65,1,116,106,47,1,0,32,4,114,65,0,71,34,4,58,0,0,11,32,0,32,1,65,1,106,54,2,28,32,5,40,2,0,33,1,11,65,0,33,3,2,64,32,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,56,33,3,11,32,0,32,0,40,2,32,32,3,106,32,4,106,54,2,32,32,0,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,0,65,20,106,33,6,32,0,65,16,106,33,7,32,0,40,2,20,33,8,32,0,40,2,16,33,3,32,5,45,0,7,34,2,32,0,40,2,12,106,12,1,11,65,0,32,0,40,2,20,32,1,40,2,20,34,2,27,33,8,32,0,65,20,106,33,6,32,0,65,16,106,33,7,32,0,40,2,16,32,2,106,33,3,32,1,40,2,24,33,2,32,0,40,2,12,32,1,40,2,16,106,11,34,4,54,2,12,65,1,33,5,32,0,32,0,40,2,24,65,1,106,34,1,54,2,24,32,0,32,3,173,32,2,32,8,106,173,66,32,134,132,55,2,16,32,1,32,0,40,2,0,34,2,40,2,36,34,8,79,13,0,32,6,40,2,0,33,6,32,0,2,127,32,2,32,8,65,3,116,107,32,1,65,3,116,106,41,2,0,34,9,167,34,1,65,1,113,4,64,32,9,66,32,136,167,65,255,1,113,33,2,32,9,66,40,136,167,65,15,113,33,0,32,9,66,48,136,167,65,255,1,113,12,1,11,32,1,40,2,12,33,2,32,1,40,2,8,33,0,32,1,40,2,4,11,32,4,106,54,2,12,32,7,32,0,32,3,106,173,65,0,32,6,32,0,27,32,2,106,173,66,32,134,132,55,2,0,11,32,5,11,198,1,1,5,127,32,1,40,2,16,33,3,32,1,40,2,8,33,4,32,1,40,2,4,33,5,32,1,40,2,0,33,6,32,1,40,2,20,33,2,32,0,32,1,40,2,12,59,1,16,32,0,32,2,54,2,0,32,0,65,0,54,2,8,32,0,40,2,4,33,1,32,0,40,2,12,4,127,65,0,5,2,127,32,1,4,64,32,1,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,12,32,0,40,2,8,11,33,2,32,0,32,1,54,2,4,32,0,32,2,65,1,106,54,2,8,32,1,32,2,65,28,108,106,34,0,65,0,54,2,24,32,0,66,0,55,2,16,32,0,32,4,54,2,12,32,0,32,5,54,2,8,32,0,32,6,54,2,4,32,0,32,3,54,2,0,11,194,2,1,5,127,35,0,65,16,107,34,5,36,0,32,1,32,2,71,4,64,32,0,40,2,0,34,3,32,1,65,5,116,106,33,4,2,64,32,3,32,2,65,5,116,106,34,2,40,2,4,34,3,69,13,0,32,4,40,2,4,13,0,32,4,32,3,54,2,4,32,2,65,0,54,2,4,11,32,2,40,2,0,4,64,32,0,40,2,52,33,6,32,2,40,2,12,4,64,32,5,32,2,41,2,12,55,3,8,32,6,32,5,65,8,106,16,10,11,32,2,40,2,20,4,64,32,5,32,2,41,2,20,55,3,0,32,6,32,5,16,10,11,32,2,40,2,4,34,3,4,64,32,3,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,2,40,2,4,33,3,11,32,3,65,0,54,2,8,32,3,66,0,55,2,0,32,3,35,8,40,2,0,17,2,0,11,32,2,40,2,0,32,0,65,36,106,32,6,16,26,11,32,2,32,4,41,2,0,55,2,0,32,2,32,4,41,2,24,55,2,24,32,2,32,4,41,2,16,55,2,16,32,2,32,4,41,2,8,55,2,8,32,0,40,2,4,32,1,65,127,115,106,65,5,116,34,2,4,64,32,0,40,2,0,32,1,65,5,116,106,34,1,32,1,65,32,106,32,2,252,10,0,0,11,32,0,32,0,40,2,4,65,1,107,54,2,4,11,32,5,65,16,106,36,0,11,237,3,2,11,127,1,126,32,0,40,2,0,34,5,32,0,40,2,4,34,6,65,4,116,106,34,3,65,4,107,40,2,0,33,11,32,3,65,9,107,45,0,0,33,2,32,3,65,10,107,45,0,0,33,1,2,64,32,3,65,16,107,40,2,0,34,4,65,1,113,4,64,32,1,32,2,106,33,9,12,1,11,32,4,40,2,16,32,4,40,2,4,106,33,9,32,4,45,0,44,65,192,0,113,69,13,0,32,3,65,12,107,47,1,0,32,1,65,16,116,114,32,2,65,24,116,114,33,10,32,4,40,2,36,34,3,4,64,3,64,32,4,32,3,65,3,116,107,33,7,32,3,33,1,3,64,2,64,2,64,32,7,32,1,65,1,107,34,1,65,3,116,106,34,8,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,2,40,2,36,33,3,32,8,40,2,4,33,10,32,2,33,4,12,1,11,32,1,13,1,11,11,32,3,13,0,11,11,32,0,32,10,54,2,16,32,0,32,4,54,2,12,11,32,0,32,6,65,1,107,34,2,54,2,4,2,64,32,2,69,13,0,32,9,32,11,106,33,3,3,64,2,64,32,2,33,1,32,5,32,6,65,4,116,106,65,32,107,40,2,0,34,7,65,1,113,69,4,64,32,7,40,2,36,34,8,32,5,32,1,65,4,116,106,40,2,8,65,1,106,34,4,75,13,1,11,32,0,32,1,65,1,107,34,2,54,2,4,32,1,33,6,32,2,13,1,12,2,11,11,32,0,40,2,8,34,2,32,6,73,4,64,32,5,65,8,32,2,65,1,116,34,1,32,6,32,1,32,6,75,27,34,1,32,1,65,8,77,27,34,1,65,4,116,35,6,40,2,0,17,1,0,33,5,32,0,32,1,54,2,8,32,7,40,2,36,33,8,32,0,40,2,4,33,1,11,32,0,32,5,54,2,0,32,0,32,1,65,1,106,54,2,4,32,7,32,8,65,3,116,107,32,4,65,3,116,106,41,2,0,33,12,32,5,32,1,65,4,116,106,34,0,32,3,54,2,12,32,0,32,4,54,2,8,32,0,32,12,55,2,0,11,11,217,4,2,7,127,1,126,35,0,65,32,107,34,2,36,0,2,64,32,0,40,2,160,9,34,1,69,13,0,32,0,40,2,136,10,34,3,69,13,0,32,1,40,2,116,34,1,69,13,0,32,3,32,1,17,2,0,11,32,0,65,0,54,2,136,10,32,0,40,2,152,10,4,64,32,2,32,0,65,152,10,106,41,2,0,55,3,24,32,0,65,136,9,106,32,2,65,24,106,16,10,32,0,66,0,55,2,152,10,11,32,0,66,0,55,2,128,10,32,0,65,0,54,2,248,9,32,0,40,2,32,4,64,65,0,33,1,32,0,65,0,54,2,124,32,0,65,0,58,0,128,1,32,0,66,0,55,2,36,32,0,65,0,54,2,32,32,0,40,2,68,33,5,2,64,32,0,40,2,100,34,3,4,64,3,64,2,64,32,5,32,1,65,24,108,106,34,6,40,2,20,34,7,69,13,0,32,7,32,6,40,2,16,34,4,77,13,0,32,6,41,2,0,33,8,32,0,32,1,54,2,104,32,0,32,8,55,2,36,32,0,32,4,54,2,32,65,0,33,1,32,0,40,2,72,69,13,3,32,0,40,2,108,34,3,32,4,77,4,64,32,4,32,0,40,2,112,32,3,106,73,13,4,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,3,11,32,1,65,1,106,34,1,32,3,71,13,0,11,11,32,0,32,3,54,2,104,32,5,32,3,65,24,108,106,34,1,65,4,107,40,2,0,33,3,32,1,65,16,107,41,2,0,33,8,32,0,65,0,54,2,72,32,0,32,8,55,2,36,32,0,32,3,54,2,32,32,0,66,0,55,2,108,65,1,33,1,11,32,0,65,0,54,2,0,32,0,32,1,54,2,116,11,32,0,40,2,132,9,16,57,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,2,32,1,41,2,0,55,3,16,32,0,65,136,9,106,32,2,65,16,106,16,10,11,32,0,40,2,232,9,4,64,32,2,32,0,65,232,9,106,41,2,0,55,3,8,32,0,65,136,9,106,32,2,65,8,106,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,0,40,2,180,9,4,64,32,2,32,0,65,180,9,106,41,2,0,55,3,0,32,0,65,136,9,106,32,2,16,10,32,0,66,0,55,2,180,9,11,32,0,65,0,58,0,198,10,32,0,65,0,54,2,144,10,32,0,65,0,59,1,196,10,32,0,66,0,55,2,180,10,32,0,66,0,55,2,172,10,32,0,65,188,10,106,65,0,54,2,0,32,2,65,32,106,36,0,11,90,2,1,127,1,126,2,64,2,127,65,0,32,0,69,13,0,26,32,0,173,32,1,173,126,34,3,167,34,2,32,0,32,1,114,65,128,128,4,73,13,0,26,65,127,32,2,32,3,66,32,136,167,27,11,34,2,16,34,34,0,69,13,0,32,0,65,4,107,45,0,0,65,3,113,69,13,0,32,0,65,0,32,2,16,51,26,11,32,0,11,219,3,1,8,127,2,64,32,2,65,253,255,3,75,13,0,32,0,40,2,24,33,4,32,2,32,0,40,2,12,73,4,64,2,64,2,64,32,1,32,4,79,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,4,47,1,0,34,7,69,4,64,12,3,11,32,4,65,2,106,33,4,3,64,32,4,65,4,106,33,3,32,4,47,1,2,34,10,4,127,32,3,32,10,65,1,116,106,65,0,33,6,3,64,32,3,47,1,0,32,2,70,13,4,32,3,65,2,106,33,3,32,6,65,1,106,34,6,32,10,71,13,0,11,5,32,3,11,33,4,65,0,33,3,32,9,65,1,106,34,9,32,7,71,13,0,11,12,2,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,32,2,65,1,116,106,47,1,0,33,3,12,1,11,32,4,47,1,0,33,3,11,32,0,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,0,69,13,1,32,2,32,0,65,3,116,106,34,0,45,0,0,13,1,32,1,32,0,65,8,106,34,0,65,6,107,47,1,0,32,0,65,4,107,45,0,0,65,1,113,27,33,5,12,1,11,2,64,32,1,32,4,79,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,8,69,13,2,32,0,65,2,106,33,0,65,0,33,1,3,64,32,0,65,4,106,33,3,32,0,47,1,2,34,7,4,127,32,3,32,7,65,1,116,106,65,0,33,6,3,64,32,3,47,1,0,32,2,70,13,4,32,3,65,2,106,33,3,32,6,65,1,106,34,6,32,7,71,13,0,11,5,32,3,11,33,0,32,1,65,1,106,34,1,32,8,71,13,0,11,12,2,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,32,2,65,1,116,106,47,1,0,33,5,12,1,11,32,0,47,1,0,33,5,11,32,5,65,255,255,3,113,11,23,1,2,127,3,64,32,0,16,71,34,2,65,1,70,13,0,11,32,2,65,2,70,11,205,3,1,5,127,2,64,2,64,32,0,40,2,16,34,4,69,13,0,32,0,40,2,12,33,6,3,64,2,64,32,2,32,6,32,3,65,3,116,106,34,5,40,2,4,70,4,64,32,0,40,2,0,32,5,40,2,0,106,32,1,32,2,16,27,69,13,1,11,32,3,65,1,106,34,3,32,4,71,13,1,12,2,11,11,32,3,65,0,78,13,1,11,32,0,40,2,0,33,3,32,0,40,2,4,33,6,32,2,65,1,106,34,5,4,64,32,5,32,6,106,34,4,32,0,40,2,8,34,7,77,4,127,32,6,5,65,8,32,7,65,1,116,34,7,32,4,32,4,32,7,73,27,34,4,32,4,65,8,77,27,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,4,54,2,8,32,0,40,2,4,11,33,4,32,0,32,3,54,2,0,32,5,4,64,32,3,32,4,106,65,0,32,5,252,11,0,11,32,0,32,0,40,2,4,32,5,106,54,2,4,32,0,40,2,0,33,3,11,32,2,4,64,32,3,32,6,106,32,1,32,2,252,10,0,0,11,32,0,40,2,0,32,0,40,2,4,106,65,1,107,65,0,58,0,0,32,0,40,2,12,33,3,32,0,32,0,40,2,16,34,4,65,1,106,34,1,32,0,40,2,20,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,1,32,1,32,4,73,27,34,1,32,1,65,8,77,27,34,4,65,3,116,33,1,2,127,32,3,4,64,32,3,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,3,32,0,32,4,54,2,20,32,0,40,2,16,34,4,65,1,106,5,32,1,11,54,2,16,32,0,32,3,54,2,12,32,3,32,4,65,3,116,106,34,1,32,2,54,2,4,32,1,32,6,54,2,0,32,0,47,1,16,65,1,107,33,3,11,32,3,65,255,255,3,113,11,180,10,1,8,127,65,1,33,2,32,1,40,2,12,65,34,70,4,64,32,1,40,2,0,33,8,32,1,16,12,26,32,1,40,2,0,33,4,32,0,65,0,54,2,136,1,2,127,3,64,2,64,32,1,40,2,12,33,2,2,127,2,64,2,64,32,3,65,1,113,4,64,32,0,40,2,136,1,33,4,32,0,40,2,132,1,33,3,2,64,2,64,2,64,2,64,2,64,32,2,65,238,0,107,14,7,0,4,4,4,1,4,2,3,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,10,58,0,0,12,6,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,13,58,0,0,12,5,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,9,58,0,0,12,4,11,32,2,65,48,70,13,2,11,32,1,40,2,0,33,6,2,64,32,4,32,1,45,0,16,34,2,106,34,5,32,0,40,2,140,1,77,13,0,2,127,32,3,4,64,32,3,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,140,1,32,0,40,2,136,1,34,7,32,4,77,13,0,32,7,32,4,107,34,7,69,13,0,32,3,32,5,106,32,3,32,4,106,32,7,252,10,0,0,11,2,64,32,2,69,34,5,13,0,32,3,32,4,106,33,4,32,6,4,64,32,5,13,1,32,4,32,6,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,4,65,0,32,2,252,11,0,11,32,0,32,3,54,2,132,1,32,0,32,0,40,2,136,1,32,2,106,54,2,136,1,12,2,11,2,64,2,64,2,127,2,64,32,2,65,220,0,71,4,64,32,2,65,10,70,13,4,65,0,32,2,65,34,71,13,7,26,32,0,40,2,132,1,33,2,32,1,40,2,0,34,8,32,4,107,34,3,32,0,40,2,136,1,34,5,106,34,6,32,0,40,2,140,1,77,13,3,32,2,69,13,1,32,2,32,6,35,6,40,2,0,17,1,0,12,2,11,32,0,40,2,132,1,33,2,2,64,32,1,40,2,0,34,7,32,4,107,34,3,32,0,40,2,136,1,34,5,106,34,6,32,0,40,2,140,1,77,13,0,2,127,32,2,4,64,32,2,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,2,32,0,32,6,54,2,140,1,32,0,40,2,136,1,34,9,32,5,77,13,0,32,9,32,5,107,34,9,69,13,0,32,2,32,6,106,32,2,32,5,106,32,9,252,10,0,0,11,2,64,32,4,32,7,70,13,0,32,2,32,5,106,33,5,32,4,4,64,32,3,69,13,1,32,5,32,4,32,3,252,10,0,0,12,1,11,32,3,69,13,0,32,5,65,0,32,3,252,11,0,11,32,0,32,2,54,2,132,1,32,0,32,0,40,2,136,1,32,3,106,54,2,136,1,32,1,40,2,0,65,1,106,33,4,65,1,12,6,11,32,6,35,7,40,2,0,17,0,0,11,33,2,32,0,32,6,54,2,140,1,32,0,40,2,136,1,34,7,32,5,77,13,0,32,7,32,5,107,34,7,69,13,0,32,2,32,6,106,32,2,32,5,106,32,7,252,10,0,0,11,2,64,32,4,32,8,70,13,0,32,2,32,5,106,33,5,32,4,4,64,32,3,69,13,1,32,5,32,4,32,3,252,10,0,0,12,1,11,32,3,69,13,0,32,5,65,0,32,3,252,11,0,11,32,0,32,2,54,2,132,1,32,0,32,0,40,2,136,1,32,3,106,54,2,136,1,65,0,12,6,11,12,3,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,0,58,0,0,11,32,1,40,2,0,32,1,45,0,16,106,33,4,65,0,11,33,3,32,1,16,12,13,1,11,11,32,1,65,0,58,0,16,32,1,32,8,54,2,0,65,1,11,33,2,32,1,16,12,26,11,32,2,11,223,6,2,15,127,2,126,2,64,32,0,45,0,28,13,0,32,0,40,2,4,34,7,32,0,40,2,8,34,8,65,28,108,106,65,28,107,40,2,0,34,11,40,2,0,34,3,65,1,113,13,0,3,64,32,3,40,2,36,34,15,69,4,64,65,0,15,11,32,7,32,8,65,28,108,106,34,3,65,20,107,41,2,0,33,17,32,3,65,24,107,40,2,0,33,3,65,0,33,12,65,0,33,9,2,64,3,64,65,0,33,6,2,127,2,64,2,64,32,11,45,0,0,65,1,113,4,127,65,0,5,32,11,40,2,0,34,2,32,2,40,2,36,65,3,116,107,11,32,9,65,3,116,106,34,6,40,2,0,34,5,65,1,113,69,4,64,32,5,40,2,4,32,3,106,34,10,32,5,40,2,16,106,34,2,32,1,75,13,1,32,5,40,2,24,65,0,32,5,40,2,12,65,0,32,17,66,32,136,167,32,5,40,2,8,34,4,27,106,32,5,40,2,20,34,3,27,106,173,66,32,134,32,3,32,4,32,17,167,106,106,173,132,33,17,32,5,47,1,44,34,3,65,4,113,69,33,13,2,64,32,3,65,192,0,113,69,13,0,32,6,40,2,4,33,14,32,5,40,2,36,34,4,4,64,3,64,32,5,32,4,65,3,116,107,33,16,32,4,33,6,3,64,2,64,2,64,32,16,32,6,65,1,107,34,6,65,3,116,106,34,10,40,2,0,34,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,32,3,40,2,36,33,4,32,10,40,2,4,33,14,32,3,33,5,12,1,11,32,6,13,1,11,11,32,4,13,0,11,32,5,69,13,1,11,32,0,32,14,54,2,36,32,0,32,5,54,2,32,11,32,2,12,3,11,32,3,32,6,45,0,6,106,34,10,32,6,45,0,7,34,4,106,34,2,32,1,77,13,1,11,32,0,32,8,65,1,106,34,4,32,0,40,2,12,34,2,75,4,127,65,8,32,2,65,1,116,34,2,32,4,32,2,32,4,75,27,34,2,32,2,65,8,77,27,34,2,65,28,108,33,4,2,127,32,7,4,64,32,7,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,7,32,0,32,2,54,2,12,32,0,40,2,8,34,8,65,1,106,5,32,4,11,54,2,8,32,0,32,7,54,2,4,32,7,32,8,65,28,108,106,34,2,65,0,54,2,24,32,2,32,12,54,2,20,32,2,32,9,54,2,16,32,2,32,17,55,2,8,32,2,32,3,54,2,4,32,2,32,6,54,2,0,32,0,40,2,4,34,7,32,0,40,2,8,34,8,65,28,108,106,34,2,65,8,107,40,2,0,33,5,2,127,32,2,65,28,107,40,2,0,34,11,40,2,0,34,3,65,1,113,34,6,4,64,32,3,65,1,118,65,1,113,12,1,11,32,3,47,1,44,65,1,113,11,69,4,64,32,8,65,2,73,13,4,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,4,69,13,4,32,0,40,2,20,34,2,40,2,84,32,2,47,1,36,32,4,108,65,1,116,106,32,5,65,1,116,106,47,1,0,69,13,4,11,32,1,32,10,73,4,64,32,0,65,1,58,0,28,65,1,15,11,32,0,32,0,40,2,24,65,1,106,54,2,24,65,1,15,11,32,6,45,0,4,65,0,32,17,66,32,136,167,32,6,49,0,5,66,15,131,34,18,167,27,106,32,4,106,173,66,32,134,32,17,32,18,124,66,255,255,255,255,15,131,132,33,17,32,5,65,127,115,65,3,118,65,1,113,33,13,32,2,11,33,3,32,12,32,13,106,33,12,32,9,65,1,106,34,9,32,15,71,13,0,11,65,0,15,11,32,6,69,13,0,11,11,65,0,11,210,12,2,10,127,1,126,35,0,65,160,1,107,34,10,36,0,2,127,32,0,40,2,0,34,8,69,4,64,32,1,32,2,35,1,65,253,10,106,65,0,16,11,12,1,11,32,8,65,8,118,33,12,2,127,2,64,2,64,2,64,2,64,2,64,32,4,13,0,32,8,65,1,113,4,127,32,8,65,5,118,65,1,113,5,32,8,47,1,44,65,9,118,65,1,113,11,13,0,2,64,2,64,2,64,32,5,69,4,64,32,8,65,1,113,69,13,1,32,8,65,2,113,69,13,5,32,8,65,2,118,65,1,113,13,4,12,5,11,32,6,69,13,1,12,3,11,32,8,47,1,44,34,9,65,1,113,13,1,12,3,11,32,7,35,1,65,161,10,106,71,13,3,12,5,11,32,9,65,1,118,65,1,113,69,13,1,11,2,127,32,1,32,7,35,1,65,161,10,106,70,13,0,26,32,1,32,2,35,1,65,233,11,106,65,0,16,11,32,1,106,34,9,32,7,69,13,0,26,32,10,32,7,54,2,96,32,9,32,1,32,2,65,1,75,27,32,2,35,1,65,230,11,106,32,10,65,224,0,106,16,11,32,9,106,11,33,9,2,64,32,8,65,1,113,69,4,64,2,64,32,8,47,1,40,34,12,65,255,255,3,71,13,0,32,8,40,2,36,13,0,32,8,40,2,16,69,13,0,32,9,32,1,32,2,65,1,75,34,5,27,32,2,35,1,65,217,11,106,65,0,16,11,32,9,106,34,9,32,1,32,5,27,33,5,65,1,33,14,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,8,40,2,48,34,6,65,1,106,14,15,0,1,5,5,5,5,5,5,5,5,3,2,5,5,4,5,11,32,5,32,2,35,1,65,193,10,106,65,0,16,11,12,5,11,32,5,32,2,35,1,65,197,11,106,65,0,16,11,12,4,11,32,5,32,2,35,1,65,149,11,106,65,0,16,11,12,3,11,32,5,32,2,35,1,65,139,11,106,65,0,16,11,12,2,11,32,5,32,2,35,1,65,144,11,106,65,0,16,11,12,1,11,32,6,65,32,107,65,222,0,77,4,64,32,10,32,6,54,2,64,32,5,32,2,35,1,65,192,11,106,32,10,65,64,107,16,11,12,1,11,32,10,32,6,54,2,80,32,5,32,2,35,1,65,236,9,106,32,10,65,208,0,106,16,11,11,32,9,106,12,7,11,32,5,32,12,32,5,27,33,5,12,1,11,32,5,13,0,32,12,65,255,1,113,33,5,11,35,1,65,171,10,106,33,13,2,64,2,64,2,64,32,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,13,12,1,11,65,0,33,13,32,3,40,2,8,32,3,40,2,4,106,32,5,77,13,0,32,3,40,2,56,32,5,65,2,116,106,40,2,0,33,13,11,65,1,33,14,32,9,32,1,32,2,65,1,75,27,33,12,32,8,65,1,113,4,127,32,8,65,5,118,65,1,113,5,32,8,47,1,44,65,9,118,65,1,113,11,4,64,32,12,32,2,35,1,65,207,11,106,65,0,16,11,32,9,106,33,5,2,64,32,6,69,4,64,32,8,65,1,113,4,127,32,8,65,2,118,65,1,113,5,32,8,47,1,44,65,1,118,65,1,113,11,69,13,1,11,32,10,32,13,54,2,32,32,5,32,1,32,2,65,1,75,27,32,2,35,1,65,223,7,106,32,10,65,32,106,16,11,32,5,106,12,6,11,32,10,32,13,54,2,48,32,5,32,1,32,2,65,1,75,27,32,2,35,1,65,202,11,106,32,10,65,48,106,16,11,32,5,106,12,5,11,32,10,32,13,54,2,16,32,12,32,2,35,1,65,222,7,106,32,10,65,16,106,16,11,32,9,106,12,4,11,32,7,35,1,65,161,10,106,70,13,1,11,32,1,12,2,11,32,8,65,1,113,4,64,32,12,65,255,1,113,33,5,12,1,11,32,8,47,1,40,33,5,11,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,5,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,3,40,2,8,32,3,40,2,4,106,32,5,77,13,0,32,3,40,2,56,32,5,65,2,116,106,40,2,0,33,9,11,2,127,2,127,2,64,32,8,65,1,113,69,4,64,32,8,40,2,36,69,13,1,32,10,32,9,54,2,144,1,32,1,32,2,35,1,65,222,7,106,32,10,65,144,1,106,16,11,32,1,106,12,3,11,32,8,65,2,118,65,1,113,12,1,11,32,8,47,1,44,65,1,118,65,1,113,11,4,64,32,10,32,9,54,2,128,1,32,1,32,2,35,1,65,241,10,106,32,10,65,128,1,106,16,11,32,1,106,12,1,11,32,10,32,9,54,2,112,32,1,32,2,35,1,65,132,11,106,32,10,65,240,0,106,16,11,32,1,106,11,11,33,9,2,64,32,0,45,0,0,65,1,113,13,0,32,0,40,2,0,34,11,40,2,36,34,6,69,13,0,32,11,47,1,66,34,8,4,64,32,3,40,2,84,32,3,47,1,36,32,8,108,65,1,116,106,33,15,11,65,0,33,5,32,3,40,2,32,4,64,32,3,40,2,68,32,3,40,2,64,32,8,65,2,116,106,34,5,47,1,0,65,2,116,106,34,16,32,5,47,1,2,65,2,116,106,33,5,11,65,0,32,7,32,14,27,33,12,65,0,33,7,65,0,33,13,3,64,32,10,32,11,32,6,65,3,116,107,32,13,65,3,116,106,41,2,0,34,18,55,3,152,1,2,127,2,127,32,18,167,34,6,65,1,113,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,4,64,32,10,32,10,41,3,152,1,55,3,8,32,10,65,8,106,32,9,32,1,32,2,65,1,75,27,32,2,32,3,32,4,65,0,65,0,65,0,16,48,12,1,11,2,127,32,15,69,4,64,65,0,33,6,65,0,12,1,11,32,15,32,7,65,1,116,106,47,1,0,34,6,65,2,106,65,255,255,3,113,65,3,79,4,64,32,3,40,2,72,32,6,65,3,108,106,45,0,1,65,0,71,12,1,11,32,6,11,33,17,2,127,32,12,32,16,34,11,32,5,79,13,0,26,3,64,2,64,32,11,45,0,3,13,0,32,7,32,11,45,0,2,71,13,0,32,3,40,2,60,32,11,47,1,0,65,2,116,106,40,2,0,12,2,11,32,11,65,4,106,34,11,32,5,73,13,0,11,32,12,11,33,8,32,10,32,10,41,3,152,1,55,3,0,32,7,65,1,106,33,7,32,10,32,9,32,1,32,2,65,1,75,27,32,2,32,3,32,4,32,6,32,17,65,1,113,32,8,16,48,11,32,9,106,33,9,32,13,65,1,106,34,13,32,0,40,2,0,34,11,40,2,36,34,6,73,13,0,11,11,32,14,4,127,32,9,32,1,32,2,65,1,75,27,32,2,35,1,65,137,11,106,65,0,16,11,32,9,106,5,32,9,11,32,1,107,11,32,10,65,160,1,106,36,0,11,178,2,1,7,127,2,64,32,0,65,255,255,7,75,13,0,35,1,34,2,65,128,48,106,32,2,65,240,47,106,32,0,32,0,65,255,1,113,34,6,65,3,110,34,3,65,3,108,107,65,255,1,113,65,2,116,106,40,2,0,32,3,32,2,65,208,58,106,34,3,32,3,32,0,65,8,118,34,4,106,45,0,0,65,214,0,108,106,106,45,0,0,108,65,11,118,65,6,112,65,2,116,106,32,2,65,192,207,0,106,32,4,106,45,0,0,65,2,116,106,40,2,0,34,3,65,8,117,33,2,32,3,65,255,1,113,34,3,65,1,77,4,64,32,2,65,0,32,1,32,3,115,107,113,32,0,106,15,11,32,2,65,255,1,113,34,3,69,13,0,32,2,65,8,118,33,2,3,64,35,1,65,192,55,106,32,3,65,1,118,34,4,32,2,106,34,5,65,1,116,106,34,7,45,0,0,34,8,32,6,70,4,64,35,1,65,128,48,106,32,7,45,0,1,65,2,116,106,40,2,0,34,2,65,255,1,113,34,3,65,1,77,4,64,65,0,32,1,32,3,115,107,32,2,65,8,117,113,32,0,106,15,11,65,127,65,1,32,1,27,32,0,106,15,11,32,2,32,5,32,6,32,8,73,34,5,27,33,2,32,4,32,3,32,4,107,32,5,27,34,3,13,0,11,11,32,0,11,171,12,1,8,127,2,64,32,0,69,13,0,32,0,65,8,107,34,3,32,0,65,4,107,40,2,0,34,1,65,120,113,34,0,106,33,5,35,1,33,4,2,64,32,1,65,1,113,13,0,32,1,65,2,113,69,13,1,32,3,32,3,40,2,0,34,1,107,34,3,32,4,65,164,215,0,106,40,2,16,73,13,1,32,0,32,1,106,33,0,2,64,2,64,2,64,35,1,65,164,215,0,106,34,6,40,2,20,32,3,71,4,64,32,3,40,2,12,33,2,32,1,65,255,1,77,4,64,32,2,32,3,40,2,8,34,4,71,13,2,32,6,34,4,32,4,40,2,0,65,126,32,1,65,3,118,119,113,54,2,0,12,5,11,32,3,40,2,24,33,7,32,2,32,3,71,4,64,32,3,40,2,8,34,1,32,2,54,2,12,32,2,32,1,54,2,8,12,4,11,32,3,40,2,20,34,1,4,127,32,3,65,20,106,5,32,3,40,2,16,34,1,69,13,3,32,3,65,16,106,11,33,4,3,64,32,4,33,6,32,1,34,2,65,20,106,33,4,32,2,40,2,20,34,1,13,0,32,2,65,16,106,33,4,32,2,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,3,11,32,5,40,2,4,34,1,65,3,113,65,3,71,13,3,35,1,65,164,215,0,106,32,0,54,2,8,32,5,32,1,65,126,113,54,2,4,32,3,32,0,65,1,114,54,2,4,32,5,32,0,54,2,0,15,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,2,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,3,40,2,28,34,1,65,2,116,106,34,4,40,2,176,2,32,3,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,4,32,4,40,2,4,65,126,32,1,119,113,54,2,4,12,2,11,2,64,32,3,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,3,40,2,16,34,1,4,64,32,2,32,1,54,2,16,32,1,32,2,54,2,24,11,32,3,40,2,20,34,1,69,13,0,32,2,32,1,54,2,20,32,1,32,2,54,2,24,11,32,3,32,5,79,13,0,32,5,40,2,4,34,1,65,1,113,69,13,0,2,64,2,64,2,64,2,64,32,1,65,2,113,69,4,64,35,1,65,164,215,0,106,34,4,40,2,24,32,5,70,4,64,32,4,34,1,32,3,54,2,24,32,1,32,1,40,2,12,32,0,106,34,0,54,2,12,32,3,32,0,65,1,114,54,2,4,32,3,32,1,40,2,20,71,13,6,32,1,65,0,54,2,8,32,1,65,0,54,2,20,15,11,35,1,65,164,215,0,106,34,4,40,2,20,34,8,32,5,70,4,64,32,4,34,1,32,3,54,2,20,32,1,32,1,40,2,8,32,0,106,34,0,54,2,8,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,15,11,32,1,65,120,113,32,0,106,33,0,32,5,40,2,12,33,2,32,1,65,255,1,77,4,64,32,5,40,2,8,34,4,32,2,70,4,64,35,1,65,164,215,0,106,34,4,32,4,40,2,0,65,126,32,1,65,3,118,119,113,54,2,0,12,5,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,4,11,32,5,40,2,24,33,7,32,2,32,5,71,4,64,32,5,40,2,8,34,1,32,2,54,2,12,32,2,32,1,54,2,8,12,3,11,32,5,40,2,20,34,1,4,127,32,5,65,20,106,5,32,5,40,2,16,34,1,69,13,2,32,5,65,16,106,11,33,4,3,64,32,4,33,6,32,1,34,2,65,20,106,33,4,32,2,40,2,20,34,1,13,0,32,2,65,16,106,33,4,32,2,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,2,11,32,5,32,1,65,126,113,54,2,4,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,12,3,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,5,40,2,28,34,1,65,2,116,106,34,4,40,2,176,2,32,5,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,4,32,4,40,2,4,65,126,32,1,119,113,54,2,4,12,2,11,2,64,32,5,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,5,40,2,16,34,1,4,64,32,2,32,1,54,2,16,32,1,32,2,54,2,24,11,32,5,40,2,20,34,1,69,13,0,32,2,32,1,54,2,20,32,1,32,2,54,2,24,11,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,32,3,32,8,71,13,0,35,1,65,164,215,0,106,32,0,54,2,8,15,11,32,0,65,255,1,77,4,64,35,1,65,164,215,0,106,34,2,34,4,32,0,65,248,1,113,106,65,40,106,33,1,2,127,32,4,40,2,0,34,4,65,1,32,0,65,3,118,116,34,0,113,69,4,64,32,2,32,0,32,4,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,0,32,1,32,3,54,2,8,32,0,32,3,54,2,12,32,3,32,1,54,2,12,32,3,32,0,54,2,8,15,11,65,31,33,2,32,0,65,255,255,255,7,77,4,64,32,0,65,38,32,0,65,8,118,103,34,1,107,118,65,1,113,32,1,65,1,116,107,65,62,106,33,2,11,32,3,32,2,54,2,28,32,3,66,0,55,2,16,35,1,65,164,215,0,106,34,7,34,6,32,2,65,2,116,106,34,1,65,176,2,106,33,4,2,127,2,64,2,127,32,6,40,2,4,34,6,65,1,32,2,116,34,5,113,69,4,64,32,7,32,5,32,6,114,54,2,4,32,1,32,3,54,2,176,2,65,24,33,2,65,8,12,1,11,32,0,65,25,32,2,65,1,118,107,65,0,32,2,65,31,71,27,116,33,2,32,1,40,2,176,2,33,4,3,64,32,4,34,1,40,2,4,65,120,113,32,0,70,13,2,32,2,65,29,118,33,4,32,2,65,1,116,33,2,32,1,32,4,65,4,113,106,34,6,40,2,16,34,4,13,0,11,32,6,32,3,54,2,16,65,24,33,2,32,1,33,4,65,8,11,33,0,32,3,34,1,12,1,11,32,1,40,2,8,34,4,32,3,54,2,12,32,1,32,3,54,2,8,65,24,33,0,65,8,33,2,65,0,11,33,6,32,2,32,3,106,32,4,54,2,0,32,3,32,1,54,2,12,32,0,32,3,106,32,6,54,2,0,35,1,65,164,215,0,106,34,0,32,0,40,2,32,65,1,107,34,0,65,127,32,0,27,54,2,32,11,11,242,2,2,2,127,1,126,2,64,32,2,69,13,0,32,0,32,1,58,0,0,32,0,32,2,106,34,3,65,1,107,32,1,58,0,0,32,2,65,3,73,13,0,32,0,32,1,58,0,2,32,0,32,1,58,0,1,32,3,65,3,107,32,1,58,0,0,32,3,65,2,107,32,1,58,0,0,32,2,65,7,73,13,0,32,0,32,1,58,0,3,32,3,65,4,107,32,1,58,0,0,32,2,65,9,73,13,0,32,0,65,0,32,0,107,65,3,113,34,4,106,34,3,32,1,65,255,1,113,65,129,130,132,8,108,34,1,54,2,0,32,3,32,2,32,4,107,65,124,113,34,4,106,34,2,65,4,107,32,1,54,2,0,32,4,65,9,73,13,0,32,3,32,1,54,2,8,32,3,32,1,54,2,4,32,2,65,8,107,32,1,54,2,0,32,2,65,12,107,32,1,54,2,0,32,4,65,25,73,13,0,32,3,32,1,54,2,24,32,3,32,1,54,2,20,32,3,32,1,54,2,16,32,3,32,1,54,2,12,32,2,65,16,107,32,1,54,2,0,32,2,65,20,107,32,1,54,2,0,32,2,65,24,107,32,1,54,2,0,32,2,65,28,107,32,1,54,2,0,32,4,32,3,65,4,113,65,24,114,34,4,107,34,2,65,32,73,13,0,32,1,173,66,129,128,128,128,16,126,33,5,32,3,32,4,106,33,1,3,64,32,1,32,5,55,3,24,32,1,32,5,55,3,16,32,1,32,5,55,3,8,32,1,32,5,55,3,0,32,1,65,32,106,33,1,32,2,65,32,107,34,2,65,31,75,13,0,11,11,32,0,11,211,1,1,7,127,32,0,40,2,8,34,2,65,1,107,34,4,4,64,2,64,32,2,65,2,107,34,1,69,4,64,65,1,33,3,12,1,11,32,0,40,2,4,33,6,32,4,33,2,3,64,32,2,33,3,2,64,2,127,32,6,32,1,34,2,65,28,108,106,34,5,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,2,113,13,4,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,34,1,65,1,113,13,3,32,1,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,1,69,13,0,32,0,40,2,0,40,2,8,34,7,40,2,84,32,7,47,1,36,32,1,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,2,11,32,2,65,1,107,34,1,13,0,11,65,1,33,3,11,32,0,32,3,54,2,8,11,32,4,65,0,71,11,251,2,1,4,127,32,0,40,2,4,34,3,32,1,40,2,4,34,2,73,4,64,32,0,40,2,0,33,4,32,0,40,2,8,34,5,32,2,73,4,64,65,8,32,5,65,1,116,34,3,32,2,32,2,32,3,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,2,54,2,8,32,0,40,2,4,33,3,32,1,40,2,4,33,2,11,32,0,32,4,54,2,0,32,2,32,3,107,34,2,4,64,32,3,32,4,106,65,0,32,2,252,11,0,11,32,0,32,1,40,2,4,34,2,54,2,4,11,32,2,65,255,255,3,113,4,64,65,0,33,3,65,0,33,4,3,64,32,1,40,2,0,32,3,106,45,0,0,33,2,2,64,2,64,2,64,2,64,2,64,2,64,32,0,40,2,0,32,3,106,34,3,45,0,0,14,5,5,1,2,3,0,4,11,65,4,33,2,12,4,11,32,2,65,255,1,113,65,5,79,13,2,66,129,132,136,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,3,11,32,2,65,255,1,113,65,5,79,13,1,66,130,132,136,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,2,11,32,2,65,255,1,113,65,5,79,13,0,66,131,136,144,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,1,11,65,0,33,2,11,32,3,32,2,58,0,0,32,4,65,1,106,34,4,65,255,255,3,113,34,3,32,1,47,1,4,73,13,0,11,11,11,214,5,2,9,127,1,126,35,0,65,32,107,34,7,36,0,32,3,40,2,4,34,5,4,127,32,3,40,2,0,32,5,65,4,116,106,34,5,65,16,107,40,2,0,33,4,32,5,65,12,107,40,2,0,5,65,0,11,33,5,2,64,32,4,65,1,113,13,0,2,64,2,64,32,4,40,2,36,69,13,0,32,0,65,132,1,106,33,9,3,64,32,4,47,1,42,32,2,70,13,1,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,4,65,1,113,4,127,32,4,65,128,254,3,113,65,8,118,5,32,4,47,1,40,11,33,6,32,0,40,2,160,9,33,5,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,6,65,255,255,3,113,34,6,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,5,40,2,8,32,5,40,2,4,106,32,6,77,13,0,32,5,40,2,56,32,6,65,2,116,106,40,2,0,33,4,11,32,7,32,4,54,2,16,32,9,65,128,8,35,1,65,249,3,106,32,7,65,16,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,9,32,5,17,3,0,11,32,9,33,5,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,5,45,0,0,34,4,65,34,70,13,0,32,4,65,220,0,70,13,0,32,4,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,5,45,0,0,33,4,11,32,4,192,32,0,40,2,140,10,16,9,32,5,65,1,106,33,5,12,0,11,0,11,2,64,32,3,40,2,0,34,6,32,3,40,2,4,34,4,65,4,116,106,34,8,65,16,107,40,2,0,34,5,65,1,113,13,0,32,5,40,2,36,34,10,69,13,0,32,8,65,4,107,40,2,0,33,11,32,3,32,4,65,1,106,34,8,32,3,40,2,8,34,12,75,4,127,32,6,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,4,65,4,116,35,6,40,2,0,17,1,0,33,6,32,3,32,4,54,2,8,32,5,40,2,36,33,10,32,3,40,2,4,34,4,65,1,106,5,32,8,11,54,2,4,32,3,32,6,54,2,0,32,5,32,10,65,3,116,107,41,2,0,33,13,32,6,32,4,65,4,116,106,34,5,32,11,54,2,12,32,5,65,0,54,2,8,32,5,32,13,55,2,0,32,3,40,2,4,33,4,11,2,127,32,4,69,4,64,65,0,33,4,65,0,12,1,11,32,3,40,2,0,32,4,65,4,116,106,34,5,65,16,107,40,2,0,33,4,32,5,65,12,107,40,2,0,11,33,5,32,4,65,1,113,13,2,65,1,33,6,32,4,40,2,36,13,0,11,11,32,6,65,1,113,69,13,1,11,32,7,32,1,41,2,0,55,3,8,32,0,65,136,9,106,32,7,65,8,106,16,10,32,1,32,5,54,2,4,32,1,32,4,54,2,0,32,4,65,1,113,13,0,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,11,32,7,65,32,106,36,0,11,243,3,1,5,127,35,1,65,171,10,106,33,5,2,64,2,64,2,64,32,3,2,127,32,0,40,2,0,34,6,65,1,113,4,64,32,6,65,128,254,3,113,65,8,118,12,1,11,32,6,47,1,40,11,32,3,27,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,5,12,1,11,65,0,33,5,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,5,11,3,64,2,64,2,64,2,64,2,64,2,64,2,64,32,5,45,0,0,34,3,14,35,5,3,3,3,3,3,3,3,3,1,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,2,11,35,1,65,139,8,106,32,4,16,20,32,5,65,1,106,33,5,12,5,11,35,1,65,154,3,106,32,4,16,20,32,5,65,1,106,33,5,12,4,11,32,3,65,220,0,70,13,1,11,32,3,192,32,4,16,9,32,5,65,1,106,33,5,12,2,11,65,220,0,32,4,16,9,32,5,44,0,0,32,4,16,9,32,5,65,1,106,33,5,12,1,11,11,2,64,32,0,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,34,9,69,13,0,32,3,47,1,66,32,2,47,1,36,108,33,3,65,0,33,6,3,64,65,0,33,7,2,64,2,127,32,0,45,0,0,65,1,113,4,127,65,0,5,32,0,40,2,0,34,5,32,5,40,2,36,65,3,116,107,11,32,6,65,3,116,106,34,5,40,2,0,34,8,65,1,113,4,64,32,8,65,3,118,65,1,113,12,1,11,32,8,47,1,44,65,2,118,65,1,113,11,13,0,32,3,69,13,0,32,2,40,2,84,32,3,65,1,116,106,47,1,0,33,7,32,3,65,1,106,33,3,11,32,5,32,1,32,2,32,7,32,4,16,55,2,127,32,5,40,2,0,34,7,65,1,113,4,64,32,5,45,0,6,32,5,45,0,7,106,12,1,11,32,7,40,2,16,32,7,40,2,4,106,11,32,1,106,33,1,32,6,65,1,106,34,6,32,9,71,13,0,11,11,11,138,3,2,5,127,1,126,35,1,65,252,11,106,33,5,65,1,33,4,2,64,2,64,32,1,69,13,0,32,2,69,13,0,65,0,33,5,3,64,65,0,33,4,32,5,32,1,32,3,65,24,108,106,34,6,40,2,16,34,7,75,13,2,32,6,40,2,20,34,5,32,7,73,13,2,32,3,65,1,106,34,3,32,2,71,13,0,11,32,2,33,4,32,1,33,5,11,32,0,32,0,40,2,68,32,4,65,24,108,34,1,35,6,40,2,0,17,1,0,34,2,54,2,68,32,1,4,64,32,2,32,5,32,1,252,10,0,0,11,32,0,32,4,54,2,100,32,0,40,2,68,33,5,32,0,40,2,32,33,1,65,0,33,3,2,64,3,64,2,64,32,5,32,3,65,24,108,106,34,6,40,2,20,34,7,32,1,77,13,0,32,7,32,6,40,2,16,34,2,77,13,0,32,1,32,2,77,4,64,32,0,32,6,41,2,0,55,2,36,32,0,32,2,54,2,32,32,2,33,1,11,32,0,32,3,54,2,104,65,0,33,3,32,0,40,2,72,69,13,2,32,0,40,2,108,34,2,32,1,77,4,64,32,1,32,0,40,2,112,32,2,106,73,13,3,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,2,11,32,3,65,1,106,34,3,32,4,71,13,0,11,32,0,32,4,54,2,104,32,5,32,4,65,24,108,106,34,1,65,4,107,40,2,0,33,2,32,1,65,16,107,41,2,0,33,8,32,0,65,0,54,2,72,32,0,32,8,55,2,36,32,0,32,2,54,2,32,32,0,66,0,55,2,108,65,1,33,3,11,32,0,65,0,54,2,0,32,0,32,3,54,2,116,65,1,33,4,11,32,4,11,247,2,1,7,127,35,0,65,16,107,34,4,36,0,32,0,40,2,48,34,1,4,64,32,1,32,1,40,2,148,1,65,1,106,54,2,148,1,11,32,0,40,2,4,34,1,4,64,32,0,65,36,106,33,6,3,64,32,0,40,2,0,32,3,65,5,116,106,34,2,40,2,0,4,64,32,0,40,2,52,33,5,32,2,40,2,12,4,64,32,4,32,2,41,2,12,55,3,8,32,5,32,4,65,8,106,16,10,11,32,2,40,2,20,4,64,32,4,32,2,41,2,20,55,3,0,32,5,32,4,16,10,11,32,2,40,2,4,34,1,4,64,32,1,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,2,40,2,4,33,1,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,11,32,2,40,2,0,32,6,32,5,16,26,32,0,40,2,4,33,1,11,32,3,65,1,106,34,3,32,1,73,13,0,11,11,32,0,65,0,54,2,4,32,0,40,2,0,33,1,32,0,40,2,8,4,127,65,0,5,2,127,32,1,4,64,32,1,65,128,2,35,6,40,2,0,17,1,0,12,1,11,65,128,2,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,8,32,0,40,2,4,11,33,3,32,0,32,1,54,2,0,32,0,32,3,65,1,106,54,2,4,32,0,40,2,48,33,2,32,1,32,3,65,5,116,106,34,0,66,0,55,2,4,32,0,32,2,54,2,0,32,0,66,0,55,2,12,32,0,66,0,55,2,20,32,0,65,0,54,2,28,32,4,65,16,106,36,0,11,201,1,2,6,127,1,126,35,0,65,32,107,34,2,36,0,32,0,40,2,0,33,4,32,0,45,0,0,65,1,113,69,4,64,32,4,40,2,36,33,3,11,32,1,40,2,0,33,6,3,64,2,64,32,3,65,0,71,33,5,32,3,69,13,0,32,2,32,4,32,4,40,2,36,65,3,116,107,32,3,65,1,107,34,3,65,3,116,106,41,2,0,34,8,55,3,24,32,8,167,34,0,65,1,113,4,127,32,8,66,56,136,167,32,8,66,48,136,167,65,255,1,113,106,5,32,0,40,2,16,32,0,40,2,4,106,11,69,34,7,32,0,32,6,71,113,69,4,64,32,7,33,5,12,1,11,32,2,32,2,41,3,24,55,3,16,32,2,32,1,41,2,0,55,3,8,32,2,65,16,106,32,2,65,8,106,16,58,69,13,1,11,11,32,2,65,32,106,36,0,32,5,11,146,9,2,21,127,1,126,35,0,65,224,0,107,34,3,36,0,2,64,2,64,32,2,69,13,0,32,1,40,2,16,40,2,0,34,6,65,1,113,13,0,32,3,40,2,92,33,7,32,3,40,2,88,33,11,32,3,40,2,84,33,15,32,3,40,2,80,33,8,32,3,40,2,76,33,16,32,3,40,2,72,33,9,3,64,32,6,40,2,36,34,21,69,13,1,32,6,40,2,48,69,13,1,2,64,2,64,2,64,32,1,40,2,20,34,17,40,2,8,34,10,40,2,32,69,13,0,32,10,40,2,64,32,6,47,1,66,34,12,65,2,116,106,34,13,47,1,2,34,14,69,13,0,32,10,40,2,68,32,13,47,1,0,65,2,116,106,34,4,32,14,65,2,116,106,33,14,2,64,3,64,32,4,47,1,0,32,2,79,13,1,32,4,65,4,106,34,4,32,14,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,6,11,2,64,3,64,32,14,65,4,107,34,13,47,1,0,32,2,77,13,1,32,13,34,14,32,4,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,6,11,32,12,4,127,32,10,40,2,84,32,10,47,1,36,32,12,108,65,1,116,106,5,65,0,11,33,22,32,6,69,13,1,32,6,32,21,65,3,116,107,33,23,32,1,40,2,0,33,10,32,1,40,2,4,33,13,32,1,40,2,8,33,12,65,0,33,18,65,0,33,6,3,64,32,4,33,19,2,64,2,64,3,64,32,6,32,21,70,13,1,65,0,33,15,2,127,32,23,32,6,65,3,116,106,34,11,40,2,0,34,5,65,1,113,34,20,4,64,32,5,65,3,118,65,1,113,12,1,11,32,5,47,1,44,65,2,118,65,1,113,11,69,4,64,32,22,4,127,32,22,32,18,65,1,116,106,47,1,0,5,65,0,11,33,15,32,18,65,1,106,33,18,11,2,127,32,6,69,4,64,32,10,33,9,32,12,33,8,32,13,12,1,11,2,127,32,20,4,64,32,11,45,0,4,33,8,32,11,45,0,6,33,9,32,11,45,0,5,65,15,113,12,1,11,32,5,40,2,12,33,8,32,5,40,2,4,33,9,32,5,40,2,8,11,33,4,65,0,32,12,32,4,27,32,8,106,33,8,32,9,32,10,106,33,9,32,4,32,13,106,11,33,16,2,127,32,20,4,64,32,5,65,3,118,65,1,113,33,4,32,8,32,11,45,0,7,34,7,106,33,12,32,7,32,9,106,33,10,32,16,12,1,11,32,5,40,2,24,65,0,32,8,32,5,40,2,20,34,7,27,106,33,12,32,5,40,2,16,32,9,106,33,10,32,5,47,1,44,65,2,118,65,1,113,33,4,32,7,32,16,106,11,33,13,32,6,65,1,106,33,6,32,4,4,64,32,17,33,7,12,1,11,32,17,33,7,32,19,45,0,2,32,18,65,1,107,75,13,0,11,32,3,32,17,54,2,92,32,3,32,11,54,2,88,32,3,32,15,54,2,84,32,3,32,8,54,2,80,32,3,32,16,54,2,76,32,3,32,9,54,2,72,32,19,65,4,106,33,4,2,64,32,19,45,0,3,65,1,70,4,64,32,4,32,14,70,13,7,32,3,32,3,41,3,80,55,3,8,32,3,32,3,41,3,88,55,3,16,32,3,32,3,41,3,72,55,3,0,32,3,65,48,106,32,3,32,2,16,59,32,3,40,2,64,13,1,12,4,11,2,64,2,64,32,20,4,64,32,5,65,2,113,32,15,114,13,1,12,5,11,32,5,45,0,44,65,1,113,13,0,32,15,69,13,1,11,32,0,32,3,41,3,72,55,2,0,32,0,32,3,41,3,88,55,2,16,32,0,32,3,41,3,80,55,2,8,12,10,11,32,5,40,2,36,69,13,2,32,5,40,2,48,69,13,2,32,3,32,3,41,3,88,55,3,40,32,3,32,3,41,3,80,55,3,32,32,3,32,3,41,3,72,55,3,24,32,0,32,3,65,24,106,65,0,65,1,16,60,12,9,11,32,0,32,3,41,2,48,55,2,0,32,0,32,3,65,64,107,41,2,0,55,2,16,32,0,32,3,41,2,56,55,2,8,12,8,11,32,3,32,7,54,2,92,32,3,32,11,54,2,88,32,3,32,15,54,2,84,32,3,32,8,54,2,80,32,3,32,16,54,2,76,32,3,32,9,54,2,72,12,3,11,32,4,32,14,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,5,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,4,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,3,11,32,1,32,3,41,3,72,55,2,0,32,1,32,3,41,3,88,34,24,55,2,16,32,1,32,3,41,3,80,55,2,8,32,24,167,40,2,0,34,6,65,1,113,69,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,32,3,65,224,0,106,36,0,11,175,6,1,18,127,2,64,32,1,40,2,16,40,2,0,34,6,65,1,113,13,0,65,48,65,52,32,3,27,33,20,32,1,40,2,20,33,13,32,1,40,2,8,33,8,32,1,40,2,4,33,5,32,1,40,2,0,33,4,3,64,32,6,40,2,36,69,13,1,65,0,33,1,65,0,33,15,32,6,47,1,66,34,9,4,64,32,13,40,2,8,34,12,40,2,84,32,12,47,1,36,32,9,108,65,1,116,106,33,15,11,32,6,40,2,36,34,18,69,13,1,32,6,32,18,65,3,116,107,33,21,32,4,33,12,32,5,33,9,32,8,33,16,65,0,33,17,65,0,33,14,2,64,3,64,65,0,33,11,2,127,32,21,32,1,65,3,116,106,34,10,40,2,0,34,4,65,1,113,34,5,4,64,32,4,65,3,118,65,1,113,12,1,11,32,4,47,1,44,65,2,118,65,1,113,11,69,4,64,32,15,4,127,32,15,32,17,65,1,116,106,47,1,0,5,65,0,11,33,11,32,17,65,1,106,33,17,11,2,127,32,1,69,4,64,32,12,33,4,32,16,33,8,32,9,12,1,11,2,127,32,5,4,64,32,10,45,0,4,33,8,32,10,45,0,6,33,6,32,10,45,0,5,65,15,113,12,1,11,32,4,40,2,12,33,8,32,4,40,2,4,33,6,32,4,40,2,8,11,33,5,65,0,32,16,32,5,27,32,8,106,33,8,32,6,32,12,106,33,4,32,5,32,9,106,11,33,5,2,127,2,64,2,64,2,64,2,127,2,64,32,10,40,2,0,34,7,65,1,113,34,6,4,64,32,1,65,1,106,33,1,32,8,32,10,45,0,7,34,9,106,33,16,32,4,32,9,106,33,12,32,3,13,1,32,5,33,9,12,3,11,32,7,40,2,24,65,0,32,8,32,7,40,2,20,34,9,27,106,33,16,32,1,65,1,106,33,1,32,7,40,2,16,32,4,106,33,12,32,5,32,9,106,33,9,32,3,69,13,2,32,7,47,1,44,65,1,113,12,1,11,32,5,33,9,32,7,65,1,118,65,1,113,11,32,11,114,13,1,12,2,11,2,64,32,11,65,254,255,3,107,14,2,2,1,0,11,32,11,69,4,64,32,6,4,64,32,7,65,2,113,69,13,3,32,7,65,2,118,65,1,113,69,13,3,12,2,11,32,7,47,1,44,34,7,65,1,113,69,13,2,32,7,65,1,118,65,1,113,69,13,2,12,1,11,32,13,40,2,8,40,2,72,32,11,65,3,108,106,45,0,1,65,1,113,69,13,1,11,32,14,65,1,106,32,2,32,14,71,13,1,26,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,15,11,65,0,33,19,2,64,32,10,40,2,0,34,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,2,32,14,107,34,7,32,6,32,20,106,40,2,0,34,19,73,13,3,11,32,14,32,19,106,11,33,14,32,1,32,18,71,13,0,11,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,12,2,11,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,32,7,33,2,12,0,11,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,106,1,2,127,2,64,32,0,47,1,12,34,1,4,64,65,1,33,2,2,64,2,64,32,1,65,254,255,3,107,14,2,0,3,1,11,65,0,15,11,32,0,40,2,20,40,2,8,40,2,72,32,1,65,3,108,106,45,0,1,65,0,71,15,11,32,0,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,2,118,65,1,113,15,11,32,0,47,1,44,65,1,118,65,1,113,33,2,11,32,2,11,112,1,2,127,65,255,255,3,33,2,2,64,2,64,32,0,40,2,12,34,1,65,255,255,3,113,69,4,64,32,0,40,2,16,40,2,0,34,1,65,1,113,4,64,32,1,65,128,254,3,113,65,8,118,33,1,12,2,11,32,1,47,1,40,33,1,11,32,1,65,255,255,3,113,65,255,255,3,70,13,1,11,32,0,40,2,20,40,2,8,40,2,76,32,1,65,255,255,3,113,65,1,116,106,47,1,0,33,2,11,32,2,11,95,2,3,127,1,126,32,1,40,2,8,33,2,32,1,40,2,4,33,3,2,127,32,1,40,2,16,41,2,0,34,5,167,34,1,65,1,113,4,64,32,5,66,56,136,167,12,1,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,11,33,1,32,0,32,3,54,2,0,32,0,32,1,32,2,106,54,2,4,11,184,4,1,6,127,35,0,65,32,107,34,3,36,0,32,0,65,0,58,0,120,32,0,65,0,59,1,4,32,0,32,0,41,2,32,55,2,44,32,0,32,0,40,2,40,54,2,52,32,0,35,1,65,240,11,106,34,1,41,2,0,55,2,56,32,0,65,64,107,32,1,40,2,8,54,2,0,2,64,32,0,40,2,104,32,0,40,2,100,70,13,0,32,0,65,240,0,106,33,4,2,64,32,0,40,2,112,34,1,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,5,32,3,32,0,41,2,36,55,3,24,32,0,32,5,32,1,32,3,65,24,106,32,4,32,2,17,6,0,54,2,72,32,0,40,2,112,34,1,13,0,65,0,33,1,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,11,2,64,32,0,40,2,116,13,0,32,0,40,2,32,32,0,40,2,108,107,34,2,32,1,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,1,11,32,0,32,0,40,2,72,32,2,106,32,1,32,2,107,34,2,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,1,65,2,116,106,32,0,65,216,0,106,32,1,65,3,73,27,40,2,0,34,5,17,4,0,54,2,116,32,0,40,2,0,33,1,2,64,32,2,65,3,75,13,0,32,1,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,6,32,3,32,0,41,2,36,55,3,16,32,0,32,6,32,1,32,3,65,16,106,32,4,32,2,17,6,0,34,1,54,2,72,32,0,32,0,40,2,112,34,4,4,127,32,1,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,4,32,0,32,5,17,4,0,54,2,116,32,0,40,2,0,33,1,11,32,1,65,127,71,13,0,32,0,65,1,54,2,116,11,32,0,40,2,32,13,0,2,64,32,0,40,2,0,65,255,253,3,71,13,0,32,0,40,2,72,69,13,0,32,0,40,2,96,4,64,32,3,65,255,253,3,54,2,0,32,0,65,132,1,106,34,1,65,128,8,35,1,65,253,8,106,32,3,16,11,26,32,0,40,2,92,65,1,32,1,32,0,40,2,96,17,3,0,11,32,0,65,1,16,65,11,32,0,65,0,54,2,124,32,0,65,1,58,0,128,1,11,32,3,65,32,106,36,0,11,212,5,2,5,127,1,126,35,0,65,16,107,34,5,36,0,2,64,32,0,40,2,116,34,2,69,4,64,32,0,40,2,32,33,3,12,1,11,2,64,32,0,40,2,0,34,3,65,10,70,4,64,32,0,65,1,58,0,128,1,32,0,65,0,54,2,40,32,0,65,0,54,2,124,32,0,32,0,40,2,36,65,1,106,54,2,36,32,0,40,2,32,33,4,12,1,11,2,64,32,0,40,2,32,34,4,69,32,3,65,255,253,3,70,113,13,0,32,0,45,0,128,1,65,1,71,13,0,32,0,32,0,40,2,124,65,1,106,54,2,124,11,32,0,32,0,40,2,40,32,2,106,54,2,40,11,32,0,32,2,32,4,106,34,3,54,2,32,11,32,0,40,2,68,32,0,40,2,104,34,4,65,24,108,106,33,2,3,64,2,64,2,64,32,2,40,2,20,34,6,32,3,75,4,64,32,6,32,2,40,2,16,71,13,1,11,32,0,40,2,100,34,6,32,4,75,4,64,32,0,32,4,65,1,106,34,4,54,2,104,11,32,4,32,6,73,13,1,65,0,33,2,11,32,1,4,64,32,0,32,0,41,2,32,55,2,44,32,0,32,0,40,2,40,54,2,52,11,2,64,32,2,4,64,2,64,32,0,40,2,108,34,1,32,3,77,4,64,32,3,32,0,40,2,112,34,2,32,1,106,73,13,1,11,32,0,32,3,54,2,108,32,0,40,2,80,33,1,32,0,40,2,76,33,2,32,5,32,0,41,2,36,55,3,8,32,0,32,2,32,3,32,5,65,8,106,32,0,65,240,0,106,32,1,17,6,0,54,2,72,32,0,40,2,112,34,2,13,0,65,0,33,2,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,11,32,0,40,2,32,32,0,40,2,108,107,34,1,32,2,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,2,11,32,0,32,0,40,2,72,32,1,106,32,2,32,1,107,34,1,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,2,65,2,116,106,32,0,65,216,0,106,32,2,65,3,73,27,40,2,0,34,4,17,4,0,54,2,116,32,0,40,2,0,33,2,2,64,32,1,65,3,75,13,0,32,2,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,3,32,5,32,0,41,2,36,55,3,0,32,0,32,3,32,1,32,5,32,0,65,240,0,106,32,2,17,6,0,34,2,54,2,72,32,0,32,0,40,2,112,34,1,4,127,32,2,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,1,32,0,32,4,17,4,0,54,2,116,32,0,40,2,0,33,2,11,32,2,65,127,71,13,1,32,0,65,1,54,2,116,12,1,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,32,0,65,1,54,2,116,32,0,65,0,54,2,0,11,32,5,65,16,106,36,0,15,11,32,2,41,2,24,33,7,32,0,32,2,40,2,40,34,3,54,2,32,32,0,32,7,55,2,36,32,2,65,24,106,33,2,12,0,11,0,11,89,1,1,127,32,0,32,0,40,2,72,34,1,65,1,107,32,1,114,54,2,72,32,0,40,2,0,34,1,65,8,113,4,64,32,0,32,1,65,32,114,54,2,0,65,127,15,11,32,0,66,0,55,2,4,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,0,32,1,32,0,40,2,48,106,54,2,16,65,0,11,5,0,16,3,0,11,81,1,1,127,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,65,3,15,11,32,0,40,2,72,32,1,65,3,108,106,34,0,45,0,1,32,0,45,0,0,34,1,113,65,127,115,65,1,113,65,2,65,3,32,0,45,0,2,65,1,113,27,32,1,65,1,113,27,33,2,11,32,2,11,194,5,1,13,127,2,64,2,64,32,0,40,2,4,34,5,69,4,64,12,1,11,32,2,47,1,64,33,13,32,0,40,2,0,33,8,32,5,65,1,71,4,64,3,64,2,64,32,8,32,6,32,5,65,1,118,34,15,106,34,3,65,2,116,106,40,2,0,34,9,47,1,64,34,14,32,13,73,13,0,65,0,33,4,2,64,32,14,4,64,3,64,32,4,32,13,70,13,2,32,9,32,4,65,3,116,34,7,106,34,10,47,1,4,34,11,32,2,32,7,106,34,7,47,1,4,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,2,34,11,32,7,47,1,2,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,0,34,11,32,7,47,1,0,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,6,65,255,255,1,113,34,10,32,7,47,1,6,65,255,255,1,113,34,7,73,13,2,32,7,32,10,73,13,3,32,4,65,1,106,34,4,32,14,71,13,0,11,11,32,9,47,1,66,32,2,47,1,66,75,13,1,11,32,3,33,6,11,32,5,32,15,107,34,5,65,1,75,13,0,11,11,32,8,32,6,65,2,116,106,40,2,0,34,10,47,1,64,34,7,32,13,73,13,0,2,64,2,64,32,7,4,64,65,0,33,4,3,64,32,4,32,13,70,13,2,32,10,32,4,65,3,116,34,5,106,34,3,47,1,4,34,8,32,2,32,5,106,34,5,47,1,4,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,2,34,8,32,5,47,1,2,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,0,34,8,32,5,47,1,0,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,6,65,255,255,1,113,34,3,32,5,47,1,6,65,255,255,1,113,34,5,73,13,2,32,3,32,5,75,13,4,32,4,65,1,106,34,4,32,7,71,13,0,11,11,32,10,47,1,66,34,3,32,2,47,1,66,34,4,79,13,1,11,32,6,65,1,106,33,6,12,1,11,32,3,32,4,77,13,1,11,2,127,32,1,40,2,4,34,3,4,64,32,1,32,3,65,1,107,34,3,54,2,4,32,1,40,2,0,32,3,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,1,32,2,65,198,0,252,10,0,0,32,0,40,2,0,33,4,32,0,40,2,4,34,2,65,1,106,34,3,32,0,40,2,8,75,4,64,32,3,65,2,116,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,3,54,2,8,32,0,40,2,4,33,2,11,32,6,65,2,116,33,3,2,64,32,2,32,6,77,13,0,32,2,32,6,107,65,2,116,34,2,69,13,0,32,3,32,4,106,34,6,65,4,106,32,6,32,2,252,10,0,0,11,32,3,32,4,106,32,1,54,0,0,32,0,32,4,54,2,0,32,0,32,0,40,2,4,65,1,106,54,2,4,11,11,170,6,2,7,127,1,126,35,0,65,208,0,107,34,3,36,0,2,64,2,64,32,0,40,2,8,34,4,65,2,73,13,0,32,3,65,52,106,33,5,32,3,65,20,106,33,6,32,4,33,2,3,64,32,0,32,2,65,1,107,34,2,54,2,8,32,3,32,0,40,2,4,32,2,65,28,108,106,34,2,40,2,24,54,2,72,32,3,65,64,107,32,2,41,2,16,55,3,0,32,3,32,2,41,2,8,55,3,56,32,3,32,2,41,2,0,55,3,48,2,64,2,64,32,2,65,28,107,40,2,0,34,7,40,2,0,34,2,65,1,113,69,4,64,32,2,40,2,36,13,1,11,32,3,66,0,55,3,8,32,0,40,2,0,33,2,32,3,65,0,54,2,44,32,3,32,2,54,2,16,12,1,11,32,0,40,2,0,33,8,32,7,41,2,0,33,9,32,3,32,2,47,1,66,34,2,4,127,32,8,40,2,8,34,7,40,2,84,32,7,47,1,36,32,2,108,65,1,116,106,5,65,0,11,54,2,44,32,3,32,8,54,2,16,32,3,32,9,55,3,8,11,32,3,32,3,41,3,64,55,3,32,32,6,32,5,40,2,8,54,2,8,32,6,32,5,41,2,0,55,2,0,32,3,32,3,40,2,72,54,2,40,32,3,65,0,58,0,7,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,26,32,3,45,0,7,65,1,70,4,64,32,0,40,2,8,65,1,106,32,4,73,13,2,11,2,64,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,69,13,0,2,127,3,64,32,3,45,0,7,65,1,70,4,64,32,0,40,2,4,33,2,32,0,32,0,40,2,8,34,4,65,1,106,34,1,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,1,32,1,32,4,73,27,34,1,32,1,65,8,77,27,34,4,65,28,108,33,1,2,127,32,2,4,64,32,2,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,12,32,0,40,2,8,34,4,65,1,106,5,32,1,11,54,2,8,32,0,32,2,54,2,4,65,2,33,1,32,2,32,4,65,28,108,106,12,2,11,2,64,2,64,32,3,40,2,48,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,13,1,11,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,69,13,3,12,1,11,11,65,1,33,1,32,0,40,2,4,33,2,32,0,32,0,40,2,8,34,5,65,1,106,34,4,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,0,32,5,54,2,12,32,0,40,2,8,34,5,65,1,106,5,32,4,11,54,2,8,32,0,32,2,54,2,4,32,2,32,5,65,28,108,106,11,34,2,32,3,41,3,48,55,2,0,32,2,32,3,40,2,72,54,2,24,32,2,32,3,65,64,107,41,3,0,55,2,16,32,2,32,3,41,3,56,55,2,8,12,3,11,32,0,40,2,8,34,2,65,2,79,13,0,11,11,32,0,32,4,54,2,8,65,0,33,1,11,32,3,65,208,0,106,36,0,32,1,11,243,5,2,11,127,1,126,35,0,65,208,0,107,34,2,36,0,2,64,2,64,32,0,40,2,4,34,5,32,0,40,2,8,34,3,65,28,108,106,34,8,65,28,107,40,2,0,34,9,40,2,0,34,6,65,1,113,69,4,64,32,6,40,2,36,13,1,11,32,2,66,0,55,3,8,32,0,40,2,0,33,1,32,2,66,0,55,2,28,32,2,66,0,55,2,36,32,2,65,0,54,2,44,32,2,66,0,55,2,20,32,2,32,1,54,2,16,12,1,11,32,0,40,2,0,34,10,40,2,8,33,4,32,6,47,1,66,34,1,4,127,32,4,40,2,84,32,4,47,1,36,32,1,108,65,1,116,106,5,65,0,11,33,11,32,8,65,4,107,40,2,0,33,1,2,64,2,64,32,3,65,1,107,34,7,69,13,0,32,6,47,1,44,34,6,65,1,113,13,0,32,6,65,4,113,13,1,32,5,32,7,65,28,108,106,34,6,65,28,107,40,2,0,40,2,0,47,1,66,34,7,69,13,1,32,1,32,4,40,2,84,32,4,47,1,36,32,7,108,65,1,116,106,32,6,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,1,12,1,11,32,1,65,1,106,33,1,11,32,9,41,2,0,33,12,32,2,32,10,54,2,16,32,2,32,12,55,3,8,32,2,32,8,65,24,107,34,4,40,2,8,54,2,28,32,2,32,4,41,2,0,55,2,20,32,2,32,11,54,2,44,32,2,32,1,54,2,40,32,2,66,0,55,3,32,11,65,0,33,4,2,64,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,69,13,0,2,64,3,64,32,2,45,0,79,65,1,70,4,64,32,0,32,3,65,1,106,34,1,32,0,40,2,12,34,4,75,4,127,65,8,32,4,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,28,108,33,1,2,127,32,5,4,64,32,5,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,5,32,0,32,3,54,2,12,32,0,40,2,8,34,3,65,1,106,5,32,1,11,54,2,8,32,0,32,5,54,2,4,65,2,33,4,12,2,11,2,64,2,64,32,2,40,2,48,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,48,13,1,11,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,13,1,12,3,11,11,65,1,33,4,32,0,32,3,65,1,106,34,1,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,28,108,33,1,2,127,32,5,4,64,32,5,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,5,32,0,32,3,54,2,12,32,0,40,2,8,34,3,65,1,106,5,32,1,11,54,2,8,32,0,32,5,54,2,4,11,32,5,32,3,65,28,108,106,34,1,32,2,41,2,48,55,2,0,32,1,32,2,40,2,72,54,2,24,32,1,32,2,65,64,107,41,2,0,55,2,16,32,1,32,2,41,2,56,55,2,8,11,32,2,65,208,0,106,36,0,32,4,11,231,3,1,8,127,35,0,65,16,107,34,7,36,0,2,64,2,64,32,1,40,2,4,34,5,65,255,255,3,71,4,64,32,5,65,255,255,3,113,33,6,32,0,40,2,48,33,5,12,1,11,32,0,40,2,52,34,4,65,255,255,3,113,33,6,2,64,2,64,32,0,40,2,76,34,8,69,13,0,32,6,69,13,0,32,4,65,255,255,3,113,33,9,32,0,40,2,48,33,5,3,64,32,5,32,3,65,12,108,106,34,10,40,2,4,65,127,70,13,2,32,3,65,1,106,34,3,32,9,71,13,0,11,11,2,64,32,0,40,2,72,32,4,77,4,64,32,1,65,255,255,3,54,2,4,12,1,11,32,0,40,2,48,33,5,32,0,40,2,56,34,3,32,4,77,4,64,65,8,32,3,65,1,116,34,3,32,4,65,1,106,34,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,12,108,33,3,2,127,32,5,4,64,32,5,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,5,32,0,32,4,54,2,56,32,0,40,2,52,33,4,11,32,0,32,5,54,2,48,32,0,32,4,65,1,106,54,2,52,32,5,32,4,65,12,108,106,34,3,65,0,54,2,8,32,3,66,0,55,2,0,32,1,32,6,54,2,4,32,6,65,255,255,3,71,13,2,11,32,0,65,1,58,0,159,1,65,0,33,3,32,0,32,7,65,12,106,32,7,65,8,106,32,7,65,4,106,65,0,16,115,69,13,2,32,2,32,7,40,2,12,34,2,70,13,2,32,1,32,0,40,2,24,32,2,65,4,116,106,34,2,40,2,4,54,2,4,32,2,65,255,255,3,54,2,4,32,2,32,2,47,1,14,65,128,128,1,114,59,1,14,32,0,40,2,48,32,1,47,1,4,65,12,108,106,34,3,65,0,54,2,4,12,2,11,32,10,65,0,54,2,4,32,0,32,8,65,1,107,54,2,76,32,1,32,3,65,255,255,3,113,34,6,54,2,4,11,32,5,32,6,65,12,108,106,33,3,11,32,7,65,16,106,36,0,32,3,11,217,1,1,2,127,65,160,1,35,7,34,1,40,2,0,17,0,0,34,0,65,0,65,200,0,252,11,0,32,0,66,0,55,2,136,1,32,0,66,128,128,128,128,112,55,2,128,1,32,0,66,127,55,2,120,32,0,66,0,55,2,112,32,0,66,128,128,128,128,112,55,2,104,32,0,66,127,55,2,96,32,0,66,0,55,2,88,32,0,66,128,128,128,128,112,55,2,80,32,0,66,255,255,255,255,15,55,2,72,32,0,66,0,55,2,144,1,32,0,66,0,55,2,152,1,32,0,65,128,1,32,1,40,2,0,17,0,0,54,2,24,32,0,65,8,54,2,32,32,0,40,2,36,33,1,32,0,40,2,44,65,7,77,4,64,2,127,32,1,4,64,32,1,65,128,1,35,6,40,2,0,17,1,0,12,1,11,65,128,1,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,44,11,32,0,32,1,54,2,36,32,0,11,194,8,1,17,127,2,64,32,0,45,0,28,69,4,64,32,0,40,2,8,33,4,32,0,40,2,4,33,6,2,64,3,64,2,64,2,127,32,6,32,4,34,8,65,28,108,106,34,2,65,28,107,40,2,0,34,5,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,8,65,2,73,13,1,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,3,40,2,84,32,3,47,1,36,32,1,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,32,0,32,0,40,2,24,65,1,107,54,2,24,11,32,0,32,8,65,1,107,34,4,54,2,8,32,4,69,13,1,32,6,32,4,65,28,108,106,34,1,40,2,20,33,13,32,1,40,2,12,33,14,32,1,40,2,8,33,15,32,1,40,2,4,33,16,32,1,40,2,16,33,10,32,1,65,28,107,40,2,0,2,64,32,5,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,5,40,2,4,33,9,32,2,40,2,36,34,3,4,64,3,64,32,2,32,3,65,3,116,107,33,12,32,3,33,1,3,64,2,64,2,64,32,12,32,1,65,1,107,34,1,65,3,116,106,34,17,40,2,0,34,7,65,1,113,13,0,32,7,45,0,44,65,192,0,113,69,13,0,32,7,40,2,36,33,3,32,17,40,2,4,33,9,32,7,33,2,12,1,11,32,1,13,1,11,11,32,3,13,0,11,32,2,69,13,1,11,32,0,32,9,54,2,36,32,0,32,2,54,2,32,11,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,32,10,65,1,106,34,10,77,13,0,11,2,64,32,5,40,2,0,34,1,65,1,113,4,64,32,5,45,0,7,34,2,32,5,45,0,6,106,33,9,32,5,45,0,5,65,15,113,33,3,32,5,45,0,4,33,5,12,1,11,65,0,32,1,40,2,12,32,1,40,2,20,34,2,27,33,5,32,1,40,2,16,32,1,40,2,4,106,33,9,32,2,32,1,40,2,8,106,33,3,32,1,40,2,24,33,2,11,32,1,65,1,113,4,127,32,1,65,3,118,65,1,113,5,32,1,47,1,44,65,2,118,65,1,113,11,33,11,32,0,40,2,12,34,1,32,8,73,4,64,65,8,32,1,65,1,116,34,1,32,8,32,1,32,8,75,27,34,1,32,1,65,8,77,27,34,4,65,28,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,4,54,2,12,32,0,40,2,8,33,4,11,32,0,32,6,54,2,4,32,0,32,4,65,1,106,54,2,8,32,6,32,4,65,28,108,106,34,1,65,0,54,2,24,32,1,32,13,32,11,69,106,54,2,20,32,1,32,10,54,2,16,32,1,32,3,32,15,106,173,32,2,32,5,106,65,0,32,14,32,3,27,106,173,66,32,134,132,55,2,8,32,1,32,9,32,16,106,54,2,4,32,1,32,7,32,12,65,3,116,107,32,10,65,3,116,106,34,2,54,2,0,2,64,2,127,32,0,40,2,4,32,0,40,2,8,34,4,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,4,65,2,73,13,1,32,3,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,4,40,2,84,32,4,47,1,36,32,1,108,65,1,116,106,32,3,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,2,127,32,2,40,2,0,34,1,65,1,113,4,64,32,2,45,0,6,12,1,11,32,1,40,2,4,11,4,64,32,0,65,1,58,0,28,15,11,12,3,11,32,0,65,0,16,47,26,11,15,11,32,0,65,0,58,0,28,2,64,2,127,32,0,40,2,4,32,0,40,2,8,34,3,65,28,108,106,34,2,65,28,107,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,3,65,2,73,13,1,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,3,40,2,84,32,3,47,1,36,32,1,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,12,1,11,32,0,65,0,16,47,26,15,11,32,0,32,0,40,2,24,65,1,106,54,2,24,11,165,4,1,4,127,32,0,4,64,32,0,40,2,60,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,68,32,0,66,0,55,2,60,32,0,40,2,72,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,80,32,0,66,0,55,2,72,32,0,40,2,84,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,92,32,0,66,0,55,2,84,32,0,40,2,96,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,104,32,0,66,0,55,2,96,32,0,40,2,108,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,116,32,0,66,0,55,2,108,32,0,40,2,132,1,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,140,1,32,0,66,0,55,2,132,1,32,0,40,2,120,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,128,1,32,0,66,0,55,2,120,32,0,40,2,144,1,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,152,1,32,0,66,0,55,2,144,1,32,0,40,2,0,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,8,32,0,66,0,55,2,0,32,0,40,2,12,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,20,32,0,66,0,55,2,12,32,0,40,2,24,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,65,0,33,1,32,0,65,0,54,2,32,32,0,66,0,55,2,24,32,0,40,2,36,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,44,32,0,66,0,55,2,36,32,0,40,2,52,34,2,4,64,3,64,32,0,40,2,48,32,1,65,12,108,106,34,3,40,2,0,34,4,4,64,32,4,35,8,40,2,0,17,2,0,32,0,40,2,52,33,2,11,32,3,65,0,54,2,8,32,3,66,0,55,2,0,32,1,65,1,106,34,1,32,2,73,13,0,11,11,32,0,40,2,48,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,56,32,0,66,0,55,2,48,32,0,35,8,40,2,0,17,2,0,11,11,140,27,1,40,127,35,0,65,208,0,107,34,11,36,0,32,3,65,0,54,2,64,32,3,65,0,54,2,52,32,3,65,24,106,33,24,32,3,65,36,106,33,29,32,3,65,12,106,33,17,32,11,65,14,106,33,33,32,11,65,12,106,33,40,2,64,3,64,2,64,32,3,40,2,4,69,4,64,32,3,40,2,28,69,13,3,32,34,32,3,40,2,52,34,34,79,13,3,32,11,32,3,40,2,8,54,2,16,32,11,32,3,41,2,0,55,3,8,32,3,32,24,40,2,8,54,2,8,32,3,32,24,41,2,0,55,2,0,32,24,32,11,40,2,16,54,2,8,32,24,32,11,41,3,8,55,2,0,32,30,65,1,106,33,30,12,1,11,32,3,40,2,12,33,13,32,3,40,2,36,33,4,2,64,32,3,40,2,16,34,6,32,3,40,2,40,34,5,106,34,7,32,3,40,2,44,77,13,0,32,7,65,2,116,33,9,2,127,32,4,4,64,32,4,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,4,32,3,32,7,54,2,44,32,3,40,2,40,34,7,32,5,77,13,0,32,7,32,5,107,65,2,116,34,7,69,13,0,32,4,32,9,106,32,4,32,5,65,2,116,106,32,7,252,10,0,0,11,2,64,32,6,69,13,0,32,6,65,2,116,33,9,32,4,32,5,65,2,116,106,33,5,32,13,4,64,32,9,69,13,1,32,5,32,13,32,9,252,10,0,0,12,1,11,32,9,69,13,0,32,5,65,0,32,9,252,11,0,11,32,3,32,4,54,2,36,65,0,33,4,32,3,65,0,54,2,16,32,3,32,3,40,2,40,32,6,106,54,2,40,65,0,33,21,2,64,32,3,40,2,4,69,13,0,3,64,32,3,40,2,0,32,21,65,2,116,106,40,2,0,33,14,2,64,2,127,2,64,32,4,69,4,64,32,14,47,1,64,33,6,12,1,11,2,64,2,64,2,64,32,14,47,1,64,34,6,32,17,40,2,0,32,4,65,2,116,106,65,4,107,40,2,0,34,13,47,1,64,34,7,73,13,0,32,6,4,64,65,0,33,4,3,64,32,4,32,7,70,13,3,32,14,32,4,65,3,116,34,9,106,34,5,47,1,4,34,8,32,9,32,13,106,34,9,47,1,4,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,2,34,8,32,9,47,1,2,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,0,34,8,32,9,47,1,0,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,6,65,255,255,1,113,34,5,32,9,47,1,6,65,255,255,1,113,34,9,73,13,3,32,5,32,9,75,13,2,32,4,65,1,106,34,4,32,6,71,13,0,11,11,32,14,47,1,66,34,4,32,13,47,1,66,34,5,73,13,3,32,4,32,5,77,13,2,11,3,64,32,3,40,2,0,32,21,65,2,116,106,40,2,0,33,4,2,127,32,3,40,2,40,34,5,4,64,32,3,32,5,65,1,107,34,5,54,2,40,32,3,40,2,36,32,5,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,7,32,4,65,198,0,252,10,0,0,32,3,40,2,12,33,4,32,3,32,3,40,2,16,34,6,65,1,106,34,5,32,3,40,2,20,34,9,75,4,127,65,8,32,9,65,1,116,34,9,32,5,32,5,32,9,73,27,34,5,32,5,65,8,77,27,34,9,65,2,116,33,5,2,127,32,4,4,64,32,4,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,4,32,3,32,9,54,2,20,32,3,40,2,16,34,6,65,1,106,5,32,5,11,54,2,16,32,3,32,4,54,2,12,32,4,32,6,65,2,116,106,32,7,54,2,0,32,21,65,1,106,34,21,32,3,40,2,4,73,13,0,11,12,6,11,32,14,32,6,65,3,116,106,65,8,107,12,2,11,32,17,32,29,32,14,16,69,12,2,11,32,14,32,6,65,3,116,106,65,8,107,32,14,32,6,65,255,255,3,113,27,11,33,10,32,2,69,13,0,32,10,47,1,2,33,9,65,0,33,4,32,2,34,5,65,2,79,4,64,3,64,32,4,32,4,32,5,65,1,118,34,6,106,34,4,32,1,32,4,65,28,108,106,47,1,0,32,9,75,27,33,4,32,5,32,6,107,34,5,65,1,75,13,0,11,11,32,1,32,4,65,28,108,106,34,26,47,1,0,32,9,71,13,0,32,10,47,1,6,32,14,47,1,66,65,20,108,33,5,32,10,47,1,4,33,27,2,127,32,10,47,1,0,34,22,32,0,40,2,156,1,34,18,40,2,24,34,36,79,4,64,32,18,40,2,44,32,18,40,2,48,32,22,32,36,107,65,2,116,106,40,2,0,65,1,116,106,34,13,65,2,106,33,31,32,13,47,1,0,12,1,11,32,18,40,2,40,32,18,40,2,4,32,22,108,65,1,116,106,65,2,107,33,13,65,0,33,31,65,0,11,33,32,65,255,255,1,113,33,41,32,0,40,2,60,32,5,106,33,19,32,27,65,1,106,33,37,65,0,33,38,65,255,255,3,33,23,32,27,65,1,116,33,42,65,0,33,9,65,0,33,28,3,64,2,64,2,64,2,127,2,64,2,64,2,64,32,22,32,36,73,4,64,32,18,40,2,4,33,9,3,64,32,9,32,23,65,1,106,34,23,65,255,255,3,113,34,5,77,13,9,32,13,47,1,2,33,4,32,13,65,2,106,34,6,33,13,32,4,69,13,0,11,12,1,11,32,13,65,2,106,34,4,32,31,71,13,1,32,32,65,255,255,3,113,69,13,7,32,13,65,6,106,34,6,32,13,47,1,4,65,1,116,106,33,31,32,32,65,1,107,33,32,32,13,47,1,2,33,4,32,13,47,1,6,34,23,33,5,11,32,18,40,2,12,32,5,75,13,1,32,6,33,13,12,3,11,32,4,47,1,0,33,23,32,4,12,1,11,32,18,40,2,52,32,4,65,255,255,3,113,65,3,116,106,34,4,65,8,106,33,38,32,4,45,0,0,33,28,65,0,33,9,32,6,11,33,13,32,28,69,4,64,32,9,33,4,12,1,11,32,38,32,28,65,3,116,106,34,4,65,8,107,45,0,0,13,2,32,4,65,4,107,45,0,0,4,64,32,9,33,4,32,27,33,5,32,22,33,15,12,2,11,32,4,65,6,107,47,1,0,33,15,32,9,33,4,32,37,33,5,12,1,11,65,0,33,9,65,0,33,28,32,37,33,5,32,4,33,15,32,4,65,255,255,3,113,69,13,1,11,32,4,33,9,32,5,65,255,0,113,33,25,2,64,32,26,40,2,20,34,5,69,4,64,65,0,33,16,12,1,11,32,26,40,2,16,33,7,65,0,33,16,32,5,34,4,65,1,71,4,64,3,64,2,64,2,64,32,7,32,16,32,4,65,1,118,34,12,106,34,6,65,6,108,106,34,8,47,1,0,34,10,32,15,65,255,255,3,113,34,20,73,13,0,32,10,32,20,75,13,1,32,8,45,0,4,34,10,65,255,0,113,34,20,32,25,73,13,0,32,10,192,65,0,72,13,1,32,20,32,25,75,13,1,32,8,47,1,2,13,1,11,32,6,33,16,11,32,4,32,12,107,34,4,65,1,75,13,0,11,11,32,7,32,16,65,6,108,106,34,4,47,1,0,34,6,32,15,65,255,255,3,113,34,7,79,4,64,32,6,32,7,75,13,1,32,4,45,0,4,65,255,0,113,32,25,79,13,1,11,32,16,65,1,106,33,16,11,32,5,32,16,77,13,0,32,23,65,255,255,3,113,33,20,3,64,32,16,65,6,108,33,4,32,16,65,1,106,33,16,32,15,65,255,255,3,113,34,43,32,4,32,26,40,2,16,106,34,4,47,1,0,71,13,1,32,4,45,0,4,34,5,192,32,5,65,255,0,113,32,25,71,13,1,32,0,40,2,156,1,33,8,2,64,32,4,47,1,2,34,4,4,64,32,8,40,2,84,32,8,47,1,36,32,4,108,65,1,116,106,32,42,106,47,1,0,34,7,13,1,11,65,0,33,7,32,8,40,2,72,32,20,65,3,108,106,45,0,0,65,1,71,13,0,32,8,40,2,76,32,20,65,1,116,106,47,1,0,33,7,11,2,64,32,41,34,12,13,0,65,0,33,12,32,8,40,2,32,69,13,0,32,8,40,2,64,32,4,65,2,116,106,34,4,47,1,2,34,5,69,13,0,32,8,40,2,68,32,4,47,1,0,65,2,116,106,34,4,32,5,65,2,116,106,33,5,3,64,2,64,32,4,45,0,3,13,0,32,27,32,4,45,0,2,71,13,0,32,4,47,1,0,33,12,12,2,11,32,4,65,4,106,34,4,32,5,71,13,0,11,11,32,11,65,8,106,34,6,32,14,65,198,0,252,10,0,0,32,11,47,1,72,34,5,65,3,116,32,6,106,34,4,65,4,107,32,40,32,5,27,32,25,59,1,0,32,4,65,8,107,32,6,32,5,27,34,6,32,15,59,1,0,65,0,72,4,64,32,4,65,2,107,32,33,32,5,27,34,10,32,10,47,1,0,65,128,128,2,114,59,1,0,11,2,64,2,64,2,64,2,64,2,127,65,1,32,19,47,1,0,34,10,65,255,255,3,70,13,0,26,2,64,32,7,4,64,2,127,32,10,69,4,64,65,1,32,19,47,1,18,65,1,113,69,13,1,26,32,8,40,2,72,32,7,65,3,108,106,45,0,1,12,1,11,32,7,32,10,70,11,32,19,47,1,4,34,4,69,32,4,32,12,65,255,255,3,113,70,114,113,33,4,32,19,47,1,2,34,8,69,13,1,65,0,34,7,32,14,47,1,64,34,12,69,13,2,26,3,64,32,14,32,7,65,3,116,106,47,1,2,32,8,70,13,2,32,7,65,1,106,34,7,32,12,71,13,0,11,65,0,12,2,11,65,0,32,20,32,8,40,2,12,73,13,1,26,32,4,65,2,107,32,33,32,5,27,46,1,0,65,0,78,4,64,32,5,65,7,79,4,64,32,3,65,1,58,0,72,12,7,11,32,11,32,5,65,1,106,34,4,59,1,72,32,11,32,4,65,255,255,3,113,65,3,116,106,33,6,11,65,0,33,10,32,6,65,0,59,1,4,32,6,32,23,59,1,2,32,6,32,22,59,1,0,32,6,32,12,65,255,255,1,113,59,1,6,65,0,33,7,32,11,47,1,72,34,5,69,13,3,3,64,2,64,32,7,69,13,0,32,11,65,8,106,32,7,65,3,116,106,47,1,2,33,8,65,0,33,4,3,64,32,8,32,11,65,8,106,32,4,65,3,116,106,47,1,2,71,4,64,32,7,32,4,65,1,106,34,4,71,13,1,12,2,11,11,32,10,65,1,106,33,10,11,32,7,65,1,106,34,7,32,5,71,13,0,11,32,10,32,30,75,13,2,65,0,12,1,11,32,4,11,2,64,32,5,69,13,0,3,64,32,6,46,1,6,65,0,78,13,1,32,11,32,5,65,1,107,34,5,59,1,72,32,11,32,5,65,255,255,3,113,34,4,65,3,116,106,33,6,32,4,13,0,11,11,69,13,1,32,0,40,2,60,33,5,32,11,47,1,74,33,4,3,64,32,5,32,4,65,1,106,34,4,65,255,255,3,113,65,20,108,106,34,7,47,1,12,34,6,65,255,255,3,71,4,64,32,6,32,19,47,1,12,75,13,1,11,11,32,11,32,4,59,1,74,65,1,33,39,12,2,11,32,24,32,29,32,11,65,8,106,16,69,12,2,11,65,0,33,39,32,19,33,7,32,22,32,43,70,13,1,11,3,64,32,7,47,1,18,34,4,65,8,113,4,64,32,11,32,11,47,1,74,65,1,106,59,1,74,32,7,65,20,106,33,7,12,1,11,2,64,32,4,65,16,113,13,0,32,0,40,2,60,32,11,47,1,74,34,10,65,20,108,106,47,1,12,32,19,47,1,12,71,4,64,32,3,40,2,60,33,10,32,3,40,2,64,34,8,4,127,32,14,47,1,68,33,6,65,0,33,4,32,8,34,5,65,1,71,4,64,3,64,32,4,32,5,65,1,118,34,12,32,4,106,34,4,32,10,32,4,65,1,116,106,47,1,0,32,6,75,27,33,4,32,5,32,12,107,34,5,65,1,75,13,0,11,11,32,6,32,10,32,4,65,1,116,106,47,1,0,34,5,70,13,2,32,4,32,5,32,6,73,106,5,65,0,11,33,4,32,8,65,1,106,34,5,32,3,40,2,68,75,4,64,32,5,65,1,116,33,6,2,127,32,10,4,64,32,10,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,10,32,3,32,5,54,2,68,32,3,40,2,64,33,8,11,32,4,65,1,116,33,5,2,64,32,4,32,8,79,13,0,32,8,32,4,107,65,1,116,34,4,69,13,0,32,5,32,10,106,34,6,65,2,106,32,6,32,4,252,10,0,0,11,32,5,32,10,106,32,14,47,0,68,59,0,0,32,3,32,10,54,2,60,32,3,32,3,40,2,64,65,1,106,54,2,64,12,1,11,32,11,47,1,72,69,4,64,32,3,40,2,48,33,12,65,0,33,4,32,3,40,2,52,34,8,33,5,2,64,2,64,2,64,32,8,34,6,14,2,2,1,0,11,3,64,32,4,32,5,65,1,118,34,6,32,4,106,34,4,32,12,32,4,65,1,116,106,47,1,0,32,10,75,27,33,4,32,5,32,6,107,34,5,65,1,75,13,0,11,11,32,12,32,4,65,1,116,106,47,1,0,34,5,32,10,70,13,2,32,4,32,5,32,10,73,106,33,6,11,32,8,65,1,106,34,4,32,3,40,2,56,75,4,64,32,4,65,1,116,33,5,2,127,32,12,4,64,32,12,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,12,32,3,32,4,54,2,56,32,3,40,2,52,33,8,11,32,6,65,1,116,33,4,2,64,32,6,32,8,79,13,0,32,8,32,6,107,65,1,116,34,5,69,13,0,32,4,32,12,106,34,6,65,2,106,32,6,32,5,252,10,0,0,11,32,4,32,12,106,32,10,59,0,0,32,3,32,12,54,2,48,32,3,32,3,40,2,52,65,1,106,54,2,52,12,1,11,32,17,32,29,32,11,65,8,106,16,69,11,32,39,69,13,1,32,7,47,1,14,34,4,65,255,255,3,70,13,1,32,4,32,11,47,1,74,77,13,1,32,11,32,4,59,1,74,32,0,40,2,60,32,4,65,20,108,106,33,7,12,0,11,0,11,32,26,40,2,20,32,16,75,13,0,11,12,0,11,0,11,32,21,65,1,106,34,21,32,3,40,2,4,79,13,1,32,3,40,2,16,33,4,12,0,11,0,11,32,11,32,3,40,2,8,54,2,16,32,11,32,3,41,2,0,55,3,8,32,3,32,17,40,2,8,54,2,8,32,3,32,17,41,2,0,55,2,0,32,17,32,11,40,2,16,54,2,8,32,17,32,11,41,3,8,55,2,0,11,32,35,65,1,106,34,35,65,128,2,71,13,0,11,32,3,65,1,58,0,72,11,32,11,65,208,0,106,36,0,11,185,32,2,25,127,1,126,35,0,65,128,2,107,34,8,36,0,32,0,40,2,132,9,34,9,40,2,4,33,26,32,8,32,3,54,2,216,1,32,8,65,132,1,106,32,9,32,1,35,2,65,7,106,32,8,65,216,1,106,32,3,16,25,32,0,40,2,132,9,34,3,40,2,4,34,11,4,127,32,3,40,2,0,33,17,65,0,33,9,65,0,33,3,32,11,65,4,79,4,64,32,11,65,124,113,33,12,3,64,32,9,32,17,32,3,65,5,116,106,34,16,40,2,28,65,2,70,106,32,16,40,2,60,65,2,70,106,32,16,40,2,92,65,2,70,106,32,16,40,2,124,65,2,70,106,33,9,32,3,65,4,106,33,3,32,13,65,4,106,34,13,32,12,71,13,0,11,11,32,11,65,3,113,34,16,4,64,3,64,32,9,32,17,32,3,65,5,116,106,40,2,28,65,2,70,106,33,9,32,3,65,1,106,33,3,32,10,65,1,106,34,10,32,16,71,13,0,11,11,32,9,65,10,106,5,65,10,11,33,27,32,8,40,2,136,1,34,18,4,64,65,24,65,0,32,2,65,253,255,3,75,27,33,28,32,0,65,132,1,106,33,17,32,0,65,136,9,106,33,23,32,0,65,188,9,106,33,29,32,2,65,3,108,33,30,65,0,33,16,3,64,32,8,40,2,132,1,34,14,32,16,65,4,116,106,34,3,40,2,4,33,10,32,3,40,2,0,33,9,2,64,32,27,32,3,40,2,12,34,20,32,24,107,34,25,73,4,64,32,0,40,2,132,9,32,25,16,17,65,0,33,3,32,10,4,64,3,64,32,8,32,9,32,3,65,3,116,106,41,2,0,55,3,8,32,23,32,8,65,8,106,16,10,32,3,65,1,106,34,3,32,10,71,13,0,11,11,32,9,4,64,32,9,35,8,40,2,0,17,2,0,11,32,24,65,1,106,33,24,32,16,65,1,106,34,3,32,18,79,13,1,3,64,32,3,33,10,2,64,2,64,32,0,40,2,96,34,9,69,4,64,32,0,40,2,140,10,69,13,2,32,17,35,1,34,3,41,0,157,3,55,0,0,32,17,32,3,41,0,188,3,55,0,31,32,17,32,3,41,0,181,3,55,0,24,32,17,32,3,41,0,173,3,55,0,16,32,17,32,3,41,0,165,3,55,0,8,12,1,11,32,17,35,1,34,3,41,0,157,3,55,0,0,32,17,32,3,41,0,188,3,55,0,31,32,17,32,3,41,0,181,3,55,0,24,32,17,32,3,41,0,173,3,55,0,16,32,17,32,3,41,0,165,3,55,0,8,32,0,40,2,92,65,0,32,17,32,9,17,3,0,32,0,40,2,140,10,69,13,1,11,32,17,33,9,3,64,2,64,2,64,32,9,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,9,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,9,65,1,106,33,9,12,0,11,0,11,32,14,32,10,65,4,116,106,34,12,40,2,12,32,20,71,13,2,32,12,40,2,0,33,9,65,0,33,3,32,12,40,2,4,34,16,4,64,3,64,32,8,32,9,32,3,65,3,116,106,41,2,0,55,3,0,32,23,32,8,16,10,32,3,65,1,106,34,3,32,16,71,13,0,11,11,32,9,4,64,32,9,35,8,40,2,0,17,2,0,11,32,10,34,16,65,1,106,34,3,32,18,71,13,0,11,12,1,11,32,8,32,3,40,2,8,54,2,128,1,32,8,32,10,54,2,124,32,8,32,9,54,2,120,32,8,65,248,0,106,34,3,32,29,16,114,32,8,65,240,0,106,32,2,32,3,32,5,32,0,40,2,160,9,16,113,2,64,32,16,65,1,106,34,9,32,18,79,13,0,32,8,40,2,132,1,32,9,65,4,116,106,34,3,40,2,12,32,20,71,13,0,3,64,32,9,33,16,32,3,40,2,8,33,22,32,3,40,2,4,33,12,32,3,40,2,0,33,14,32,0,65,0,54,2,204,9,2,64,32,12,34,10,69,4,64,32,8,32,8,41,3,112,55,3,144,1,32,0,40,2,212,9,33,3,65,0,33,10,65,0,33,9,12,1,11,2,64,2,127,3,64,32,0,40,2,204,9,34,9,2,127,32,14,32,10,65,3,116,106,34,3,65,8,107,40,2,0,34,13,65,1,113,4,64,32,13,65,3,118,65,1,113,12,1,11,32,13,47,1,44,65,2,118,65,1,113,11,69,13,1,26,32,3,65,4,107,40,2,0,33,18,32,0,40,2,200,9,33,3,32,0,32,9,65,1,106,34,11,32,0,40,2,208,9,34,15,75,4,127,65,8,32,15,65,1,116,34,9,32,11,32,9,32,11,75,27,34,9,32,9,65,8,77,27,34,11,65,3,116,33,9,2,127,32,3,4,64,32,3,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,3,32,0,32,11,54,2,208,9,32,0,40,2,204,9,34,9,65,1,106,5,32,11,11,54,2,204,9,32,0,32,3,54,2,200,9,32,3,32,9,65,3,116,106,34,3,32,18,54,2,4,32,3,32,13,54,2,0,32,10,65,1,107,34,10,13,0,11,65,0,33,10,32,0,40,2,204,9,11,34,9,65,2,73,13,0,65,0,33,3,32,9,65,1,118,34,13,65,1,71,4,64,32,13,65,254,255,255,255,7,113,33,13,65,0,33,11,3,64,32,0,40,2,200,9,34,18,32,3,65,3,116,34,15,106,34,19,41,2,0,33,33,32,19,32,18,32,0,40,2,204,9,32,3,65,127,115,106,65,3,116,34,19,106,41,2,0,55,2,0,32,0,40,2,200,9,32,19,106,32,33,55,2,0,32,0,40,2,200,9,34,18,32,15,106,34,15,41,2,8,33,33,32,15,32,18,32,0,40,2,204,9,32,3,65,254,255,255,255,1,115,106,65,3,116,34,15,106,41,2,0,55,2,8,32,0,40,2,200,9,32,15,106,32,33,55,2,0,32,3,65,2,106,33,3,32,11,65,2,106,34,11,32,13,71,13,0,11,11,32,9,65,2,113,69,13,0,32,0,40,2,200,9,34,9,32,3,65,3,116,106,34,13,41,2,0,33,33,32,13,32,9,32,0,40,2,204,9,32,3,65,127,115,106,65,3,116,34,3,106,41,2,0,55,2,0,32,0,40,2,200,9,32,3,106,32,33,55,2,0,11,32,8,32,8,41,3,112,55,3,144,1,32,0,40,2,212,9,33,3,32,0,40,2,220,9,32,10,79,4,64,32,10,65,3,116,33,9,12,1,11,32,10,65,3,116,33,9,2,127,32,3,4,64,32,3,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,3,32,0,32,10,54,2,220,9,11,32,0,32,10,54,2,216,9,32,9,4,64,32,3,32,14,32,9,252,10,0,0,11,32,0,32,3,54,2,212,9,65,1,33,11,32,0,40,2,160,9,33,18,65,2,33,13,2,64,2,64,2,64,2,127,32,8,45,0,144,1,65,1,113,4,64,32,8,45,0,145,1,12,1,11,32,8,40,2,144,1,47,1,40,11,34,21,65,255,255,3,113,34,15,65,254,255,3,107,14,2,0,2,1,11,65,0,33,13,65,0,33,11,12,1,11,32,18,40,2,72,32,15,65,3,108,106,34,9,45,0,0,65,229,0,113,33,11,32,9,45,0,1,65,1,116,33,13,11,32,0,40,2,216,9,34,9,65,3,116,65,204,0,106,34,19,32,0,40,2,220,9,65,3,116,75,4,64,32,3,32,19,35,6,40,2,0,17,1,0,33,3,32,0,32,19,65,3,118,54,2,220,9,32,0,32,3,54,2,212,9,32,0,40,2,216,9,33,9,11,32,8,66,0,55,3,240,1,32,8,66,0,55,3,232,1,32,8,66,0,55,3,224,1,32,8,66,0,55,3,184,1,32,8,65,0,54,2,192,1,32,8,65,1,54,2,252,1,32,8,66,0,55,3,216,1,32,8,65,0,59,1,204,1,32,8,66,0,55,3,176,1,32,8,66,0,55,3,160,1,32,8,65,0,59,1,174,1,32,8,32,21,59,1,208,1,32,8,32,11,32,13,114,65,255,1,113,65,24,65,0,32,15,65,253,255,3,75,27,114,59,1,200,1,32,8,32,9,54,2,212,1,32,3,32,9,65,3,116,106,34,3,32,8,40,2,252,1,54,2,0,32,3,32,8,41,3,240,1,55,2,28,32,3,32,8,41,3,232,1,55,2,20,32,3,32,8,41,3,224,1,55,2,12,32,3,32,8,41,3,216,1,55,2,4,32,3,32,8,40,2,212,1,54,2,36,32,3,32,8,47,1,208,1,59,1,40,32,3,32,8,47,1,204,1,59,1,42,32,3,32,8,47,1,200,1,59,1,44,32,3,32,8,40,2,192,1,54,1,62,32,3,32,8,41,3,184,1,55,1,54,32,3,32,8,41,3,176,1,55,1,46,32,3,32,8,47,1,174,1,59,1,66,32,3,32,8,41,3,160,1,55,2,68,32,8,65,0,54,2,156,1,32,8,32,3,54,2,152,1,32,8,32,8,41,2,152,1,55,3,88,32,8,65,216,0,106,32,18,16,21,32,8,32,8,41,3,144,1,55,3,80,32,8,32,8,41,2,152,1,55,3,72,2,64,32,0,32,8,65,208,0,106,32,8,65,200,0,106,16,108,4,64,65,0,33,3,32,0,40,2,192,9,4,64,3,64,32,8,32,0,40,2,188,9,32,3,65,3,116,106,41,2,0,55,3,56,32,23,32,8,65,56,106,16,10,32,3,65,1,106,34,3,32,0,40,2,192,9,73,13,0,11,11,32,0,65,0,54,2,192,9,32,8,32,8,41,3,112,34,33,55,3,104,32,8,32,33,55,3,48,32,23,32,8,65,48,106,16,10,32,0,40,2,200,9,33,3,32,0,32,0,40,2,188,9,54,2,200,9,32,0,32,3,54,2,188,9,32,0,41,2,192,9,33,33,32,0,32,0,41,2,204,9,55,2,192,9,32,0,32,33,55,2,204,9,65,1,33,3,32,0,40,2,160,9,33,12,65,2,33,9,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,0,2,1,11,65,0,33,9,65,0,33,3,12,1,11,32,12,40,2,72,32,30,106,34,9,45,0,0,65,229,0,113,33,3,32,9,45,0,1,65,1,116,33,9,11,32,10,65,3,116,34,13,65,204,0,106,34,11,32,22,65,3,116,75,4,64,32,14,32,11,35,6,40,2,0,17,1,0,33,14,11,32,8,66,0,55,3,240,1,32,8,66,0,55,3,232,1,32,8,66,0,55,3,224,1,32,8,66,0,55,3,184,1,32,8,65,0,54,2,192,1,32,8,65,1,54,2,144,1,32,8,66,0,55,3,216,1,32,8,65,0,59,1,208,1,32,8,66,0,55,3,176,1,32,8,66,0,55,3,160,1,32,8,32,2,59,1,212,1,32,8,32,5,59,1,200,1,32,8,32,28,32,3,32,9,114,65,255,1,113,114,59,1,204,1,32,8,32,10,54,2,252,1,32,13,32,14,106,34,3,32,8,40,2,144,1,54,2,0,32,3,32,8,41,3,240,1,55,2,28,32,3,32,8,41,3,232,1,55,2,20,32,3,32,8,41,3,224,1,55,2,12,32,3,32,8,41,3,216,1,55,2,4,32,3,32,8,40,2,252,1,54,2,36,32,3,32,8,47,1,212,1,59,1,40,32,3,32,8,47,1,208,1,59,1,42,32,3,32,8,47,1,204,1,59,1,44,32,3,32,8,40,2,192,1,54,1,62,32,3,32,8,41,3,184,1,55,1,54,32,3,32,8,41,3,176,1,55,1,46,32,3,32,8,47,1,200,1,59,1,66,32,3,32,8,41,3,160,1,55,2,68,32,8,65,0,54,2,156,1,32,8,32,3,54,2,152,1,32,8,32,8,41,3,152,1,55,3,40,32,8,65,40,106,32,12,16,21,32,8,32,8,41,3,152,1,55,3,112,12,1,11,65,0,33,3,32,0,65,0,54,2,204,9,32,12,4,64,3,64,32,8,32,14,32,3,65,3,116,106,41,2,0,55,3,64,32,23,32,8,65,64,107,16,10,32,3,65,1,106,34,3,32,12,71,13,0,11,11,32,14,69,13,0,32,14,35,8,40,2,0,17,2,0,11,32,16,65,1,106,34,9,32,8,40,2,136,1,34,18,79,13,1,32,8,40,2,132,1,32,9,65,4,116,106,34,3,40,2,12,32,20,70,13,0,11,11,32,0,40,2,160,9,32,25,65,5,116,34,19,32,0,40,2,132,9,40,2,0,106,40,2,0,47,1,0,34,9,32,2,16,43,33,15,2,64,32,7,69,13,0,32,9,32,15,71,13,0,32,8,40,2,112,34,3,32,3,47,1,44,65,4,114,59,1,44,11,32,8,40,2,112,33,3,2,64,2,64,32,6,13,0,32,18,65,1,75,13,0,32,26,65,2,73,13,1,11,32,3,32,3,47,1,44,65,24,114,59,1,44,65,255,255,3,33,9,11,32,3,32,9,59,1,42,32,3,32,3,40,2,60,32,4,106,54,2,60,32,0,40,2,132,9,32,8,32,8,41,3,112,34,33,55,3,96,32,8,32,33,55,3,32,65,0,33,11,32,25,32,8,65,32,106,65,0,32,15,16,23,32,0,40,2,192,9,4,64,3,64,32,0,40,2,188,9,32,11,65,3,116,106,41,2,0,33,33,32,0,40,2,132,9,34,3,40,2,0,32,19,106,34,22,40,2,0,33,9,2,127,32,3,40,2,40,34,10,4,64,32,3,32,10,65,1,107,34,10,54,2,40,32,3,40,2,36,32,10,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,3,32,15,59,1,0,32,3,65,2,106,65,0,65,146,1,252,11,0,32,33,167,33,10,32,3,66,0,55,2,152,1,32,3,65,1,54,2,148,1,32,3,65,0,54,2,160,1,2,64,2,127,2,64,2,64,32,9,4,64,32,3,65,0,54,2,28,32,3,32,33,55,2,20,32,3,32,9,54,2,16,32,3,65,1,59,1,144,1,32,3,32,9,41,2,4,55,2,4,32,3,32,9,40,2,12,54,2,12,32,3,32,9,40,2,152,1,34,12,54,2,152,1,32,3,32,9,40,2,160,1,34,31,54,2,160,1,32,3,32,9,40,2,156,1,34,9,54,2,156,1,32,10,69,13,1,32,10,65,1,113,34,32,13,2,32,3,32,10,45,0,45,65,2,113,4,127,65,226,4,5,32,10,40,2,32,11,32,12,106,54,2,152,1,65,0,32,10,40,2,12,32,10,40,2,20,34,21,27,33,12,32,10,40,2,16,32,10,40,2,4,106,33,13,32,10,40,2,24,33,14,32,21,32,10,40,2,8,106,12,3,11,32,3,66,0,55,2,4,65,0,33,9,32,3,65,0,54,2,12,32,10,13,3,11,32,22,32,9,54,2,8,12,2,11,32,3,32,12,32,10,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,33,66,32,136,167,65,255,1,113,33,12,32,33,66,56,136,167,34,14,32,33,66,48,136,167,65,255,1,113,106,33,13,32,33,66,40,136,167,65,15,113,11,33,21,32,3,32,3,40,2,4,32,13,106,54,2,4,32,3,32,3,40,2,8,32,21,106,173,32,12,32,14,106,65,0,32,3,40,2,12,32,21,27,106,173,66,32,134,132,55,2,8,2,64,32,32,69,4,64,65,0,33,14,32,3,32,10,40,2,36,34,12,4,127,32,10,40,2,56,5,65,0,11,32,9,106,32,10,47,1,44,65,1,113,106,32,10,47,1,40,65,254,255,3,70,106,54,2,156,1,32,12,69,13,1,32,10,40,2,60,33,14,12,1,11,32,3,32,9,32,10,65,1,118,65,1,113,106,54,2,156,1,65,0,33,14,11,32,3,32,14,32,31,106,54,2,160,1,11,32,22,32,3,54,2,0,32,11,65,1,106,34,11,32,0,40,2,192,9,73,13,0,11,11,65,0,33,3,32,20,32,24,70,13,0,3,64,2,64,32,1,32,3,70,13,0,32,0,40,2,132,9,34,15,40,2,0,34,10,32,3,65,5,116,106,34,9,40,2,28,13,0,32,10,32,19,106,34,20,40,2,28,13,0,32,9,40,2,0,34,14,47,1,0,34,21,32,20,40,2,0,34,13,47,1,0,71,13,0,32,14,40,2,4,32,13,40,2,4,71,13,0,32,14,40,2,152,1,32,13,40,2,152,1,71,13,0,35,1,65,148,12,106,33,12,32,20,40,2,12,33,10,2,64,32,9,40,2,12,34,11,69,13,0,32,11,65,1,113,13,0,32,11,45,0,44,65,192,0,113,69,13,0,32,12,32,11,65,48,106,32,11,40,2,36,27,33,12,11,35,1,65,148,12,106,33,11,2,64,32,10,69,13,0,32,10,65,1,113,13,0,32,10,45,0,44,65,192,0,113,69,13,0,32,11,32,10,65,48,106,32,10,40,2,36,27,33,11,11,32,12,40,2,24,33,22,2,64,32,11,40,2,24,34,10,65,25,79,4,64,32,10,32,22,71,13,2,32,12,40,2,0,33,12,32,11,40,2,0,33,11,12,1,11,32,10,32,22,71,13,1,11,32,12,32,11,32,10,16,18,13,0,32,13,47,1,144,1,4,127,65,0,33,3,3,64,32,15,40,2,52,33,10,32,9,40,2,0,32,8,32,13,32,3,65,4,116,106,34,14,41,2,24,55,3,24,32,8,32,14,41,2,16,55,3,16,32,8,65,16,106,32,10,16,32,32,3,65,1,106,34,3,32,20,40,2,0,34,13,47,1,144,1,73,13,0,11,32,9,40,2,0,34,14,47,1,0,5,32,21,11,65,255,255,3,113,69,4,64,32,9,32,14,40,2,156,1,54,2,8,11,32,15,32,25,16,17,32,24,65,1,106,33,24,12,2,11,32,3,65,1,106,34,3,32,25,71,13,0,11,11,32,16,65,1,106,34,16,32,18,73,13,0,11,32,0,40,2,132,9,40,2,4,33,11,11,32,8,65,128,2,106,36,0,65,127,32,26,32,11,32,26,77,27,11,145,10,2,17,127,1,126,35,0,65,192,1,107,34,3,36,0,32,0,40,2,132,9,32,3,32,2,41,2,0,55,3,56,32,1,32,3,65,56,106,65,0,65,1,16,23,32,3,65,220,0,106,32,0,40,2,132,9,32,1,35,2,65,10,106,65,0,65,0,16,25,32,3,40,2,96,4,64,32,0,65,180,9,106,33,14,32,0,65,136,9,106,33,15,3,64,32,3,40,2,92,32,16,65,4,116,106,34,5,40,2,8,33,11,32,5,40,2,4,33,2,32,5,40,2,0,33,7,32,3,66,0,55,3,80,66,0,33,20,2,64,32,2,34,5,69,13,0,3,64,32,3,32,7,32,5,65,1,107,34,8,65,3,116,34,17,106,41,2,0,34,20,55,3,72,2,64,2,64,32,20,167,34,4,65,1,113,4,64,32,20,66,8,131,66,0,82,13,2,65,0,33,10,65,1,33,12,65,0,33,6,12,1,11,32,4,45,0,44,65,4,113,13,1,32,4,32,4,40,2,36,34,6,65,3,116,107,33,10,32,6,69,4,64,65,0,33,6,65,1,33,12,12,1,11,65,0,33,12,65,0,33,4,32,6,65,1,71,4,64,32,6,65,126,113,33,18,65,0,33,13,3,64,32,10,32,4,65,3,116,106,34,19,40,2,0,34,9,65,1,113,69,4,64,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,11,32,19,40,2,8,34,9,65,1,113,69,4,64,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,11,32,4,65,2,106,33,4,32,13,65,2,106,34,13,32,18,71,13,0,11,11,32,6,65,1,113,69,13,0,32,10,32,4,65,3,116,106,40,2,0,34,4,65,1,113,13,0,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,11,32,11,32,2,32,6,106,65,1,107,34,4,73,4,64,32,4,65,3,116,33,11,2,127,32,7,4,64,32,7,32,11,35,6,40,2,0,17,1,0,12,1,11,32,11,35,7,40,2,0,17,0,0,11,33,7,32,4,33,11,11,2,64,32,2,32,5,77,13,0,32,2,32,5,107,65,3,116,34,2,69,13,0,32,7,32,6,32,8,106,65,3,116,106,32,7,32,5,65,3,116,106,32,2,252,10,0,0,11,2,64,32,12,13,0,32,6,65,3,116,33,2,32,7,32,17,106,33,5,32,10,4,64,32,2,69,13,1,32,5,32,10,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,5,65,0,32,2,252,11,0,11,2,127,32,3,45,0,72,65,1,113,4,64,32,3,40,2,72,33,8,32,3,45,0,73,12,1,11,32,3,40,2,72,34,8,47,1,40,11,33,2,65,1,33,5,32,0,40,2,160,9,33,6,32,8,47,1,66,33,9,65,2,33,8,2,64,2,64,2,64,32,2,65,255,255,3,113,34,10,65,254,255,3,107,14,2,0,2,1,11,65,0,33,8,65,0,33,5,12,1,11,32,6,40,2,72,32,10,65,3,108,106,34,8,45,0,0,65,229,0,113,33,5,32,8,45,0,1,65,1,116,33,8,11,32,4,65,3,116,34,12,65,204,0,106,34,13,32,11,65,3,116,75,4,64,32,7,32,13,35,6,40,2,0,17,1,0,33,7,11,32,3,66,0,55,3,176,1,32,3,66,0,55,3,168,1,32,3,66,0,55,3,160,1,32,3,66,0,55,3,128,1,32,3,65,0,54,2,136,1,32,3,65,1,54,2,188,1,32,3,66,0,55,3,152,1,32,3,65,0,59,1,142,1,32,3,66,0,55,3,120,32,3,66,0,55,3,104,32,3,32,9,59,1,118,32,3,32,2,59,1,144,1,32,3,32,5,32,8,114,65,255,1,113,65,24,65,0,32,10,65,253,255,3,75,27,114,59,1,140,1,32,3,32,4,54,2,148,1,32,7,32,12,106,34,2,32,3,40,2,188,1,54,2,0,32,2,32,3,41,3,176,1,55,2,28,32,2,32,3,41,3,168,1,55,2,20,32,2,32,3,41,3,160,1,55,2,12,32,2,32,3,41,3,152,1,55,2,4,32,2,32,3,40,2,148,1,54,2,36,32,2,32,3,47,1,144,1,59,1,40,32,2,32,3,47,1,142,1,59,1,42,32,2,32,3,47,1,140,1,59,1,44,32,2,32,3,40,2,136,1,54,1,62,32,2,32,3,41,3,128,1,55,1,54,32,2,32,3,41,3,120,55,1,46,32,2,32,3,47,1,118,59,1,66,32,2,32,3,41,3,104,55,2,68,32,3,65,0,54,2,68,32,3,32,2,54,2,64,32,3,32,3,41,3,64,55,3,48,32,3,65,48,106,32,6,16,21,32,3,32,3,41,3,64,34,20,55,3,80,32,3,32,3,41,3,72,55,3,40,32,15,32,3,65,40,106,16,10,12,2,11,32,8,34,5,13,0,11,66,0,33,20,11,32,0,32,0,40,2,144,10,65,1,106,54,2,144,10,2,64,2,64,32,0,40,2,180,9,4,64,32,3,32,14,41,2,0,55,3,32,32,3,32,3,41,3,80,55,3,24,32,0,32,3,65,32,106,32,3,65,24,106,16,108,69,13,1,32,3,32,14,41,2,0,55,3,8,32,15,32,3,65,8,106,16,10,11,32,14,32,20,55,2,0,12,1,11,32,3,32,3,41,3,80,55,3,16,32,15,32,3,65,16,106,16,10,11,32,16,65,1,106,34,16,32,3,40,2,96,73,13,0,11,11,32,0,40,2,132,9,32,3,40,2,92,40,2,12,16,17,32,0,40,2,132,9,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,3,65,192,1,106,36,0,11,228,2,1,3,127,2,64,32,0,40,2,20,34,2,32,1,40,2,4,34,3,79,4,64,32,2,65,127,70,13,1,32,0,32,1,40,2,8,32,2,32,3,107,106,34,3,54,2,20,32,0,32,0,40,2,12,34,2,32,1,40,2,32,32,2,32,1,40,2,24,107,34,4,65,0,32,2,32,4,79,27,106,32,0,40,2,8,34,2,32,1,40,2,20,34,4,75,27,173,66,32,134,32,1,40,2,28,32,2,32,4,107,34,4,65,0,32,2,32,4,79,27,106,173,132,55,2,8,32,3,32,1,40,2,8,79,13,1,32,0,66,127,55,2,8,32,0,65,127,54,2,20,12,1,11,32,2,32,1,40,2,0,34,3,77,13,0,32,0,32,3,54,2,20,32,0,32,1,41,2,12,55,2,8,11,2,64,32,0,40,2,16,34,2,32,1,40,2,4,34,3,79,4,64,32,0,32,1,40,2,8,32,2,32,3,107,106,34,3,54,2,16,32,0,32,0,40,2,4,34,2,32,1,40,2,32,32,2,32,1,40,2,24,107,34,4,65,0,32,2,32,4,79,27,106,32,0,40,2,0,34,2,32,1,40,2,20,34,4,75,27,173,66,32,134,32,1,40,2,28,32,2,32,4,107,34,4,65,0,32,2,32,4,79,27,106,173,132,55,2,0,32,3,32,1,40,2,8,79,13,1,32,0,66,127,55,2,0,32,0,65,127,54,2,16,15,11,32,2,32,1,40,2,0,34,3,77,13,0,32,0,32,3,54,2,16,32,0,32,1,41,2,12,55,2,0,11,11,161,19,2,23,127,1,126,35,0,65,48,107,34,8,36,0,32,8,65,36,106,32,0,40,2,132,9,34,2,32,1,35,2,65,9,106,65,0,65,0,16,25,2,127,32,8,40,2,40,34,21,4,64,32,0,65,132,1,106,33,15,32,0,65,136,9,106,33,22,3,64,32,2,32,8,40,2,36,34,2,40,2,12,32,1,16,39,32,2,32,1,54,2,12,65,0,33,14,65,0,33,16,3,64,32,8,40,2,36,32,16,65,4,116,106,34,2,40,2,4,33,18,32,2,40,2,12,65,5,116,34,19,32,0,40,2,132,9,40,2,0,106,40,2,0,47,1,0,33,7,32,8,32,2,40,2,0,34,20,41,2,0,34,25,55,3,24,2,64,32,25,167,34,2,65,1,113,13,0,65,0,33,12,32,2,40,2,36,34,23,69,13,0,3,64,32,7,33,3,2,64,2,64,2,64,2,64,32,8,40,2,24,34,2,32,2,40,2,36,65,3,116,107,32,12,65,3,116,106,41,2,0,34,25,167,34,6,65,1,113,34,13,69,4,64,65,0,33,7,32,6,40,2,36,65,0,71,33,14,32,6,47,1,40,34,9,65,255,255,3,70,13,3,32,6,45,0,44,65,4,113,69,13,1,32,3,33,7,12,3,11,65,0,33,14,32,6,65,8,113,13,3,32,6,65,128,254,3,113,65,8,118,33,9,12,1,11,32,9,65,254,255,3,70,13,1,11,32,3,65,255,255,3,113,33,2,32,0,40,2,160,9,34,5,40,2,24,33,7,2,64,32,9,32,5,40,2,12,73,4,64,2,64,2,64,32,2,32,7,79,4,64,32,5,40,2,44,32,5,40,2,48,32,2,32,7,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,17,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,4,65,0,33,10,3,64,32,4,65,4,106,33,2,32,4,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,7,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,7,65,1,106,34,7,32,11,71,13,0,11,5,32,2,11,33,4,65,0,33,2,32,10,65,1,106,34,10,32,17,71,13,0,11,12,2,11,32,5,40,2,40,32,5,40,2,4,32,2,108,65,1,116,106,32,9,65,1,116,106,47,1,0,33,2,12,1,11,32,4,47,1,0,33,2,11,65,0,33,7,32,5,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,4,69,13,1,32,2,32,4,65,3,116,106,34,2,45,0,0,13,1,32,3,32,2,65,8,106,34,2,65,6,107,47,1,0,32,2,65,4,107,45,0,0,65,1,113,27,33,7,12,1,11,2,64,32,2,32,7,79,4,64,32,5,40,2,44,32,5,40,2,48,32,2,32,7,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,5,69,4,64,65,0,33,7,12,3,11,32,2,65,2,106,33,3,65,0,33,11,3,64,32,3,65,4,106,33,2,32,3,47,1,2,34,4,4,127,32,2,32,4,65,1,116,106,65,0,33,7,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,7,65,1,106,34,7,32,4,71,13,0,11,5,32,2,11,33,3,65,0,33,7,32,11,65,1,106,34,11,32,5,71,13,0,11,12,2,11,32,5,40,2,40,32,5,40,2,4,32,2,108,65,1,116,106,32,9,65,1,116,106,47,1,0,33,7,12,1,11,32,3,47,1,0,33,7,11,32,13,13,1,11,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,11,32,0,40,2,132,9,34,2,40,2,0,32,19,106,34,11,40,2,0,33,3,2,127,32,2,40,2,40,34,4,4,64,32,2,32,4,65,1,107,34,4,54,2,40,32,2,40,2,36,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,32,7,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,2,66,0,55,2,152,1,32,2,65,1,54,2,148,1,32,2,65,0,54,2,160,1,2,64,2,127,2,64,2,64,32,3,4,64,32,2,65,0,59,0,29,32,2,32,14,58,0,28,32,2,32,25,55,2,20,32,2,32,3,54,2,16,32,2,65,1,59,1,144,1,32,2,65,0,58,0,31,32,2,32,3,41,2,4,55,2,4,32,2,32,3,40,2,12,54,2,12,32,2,32,3,40,2,152,1,34,4,54,2,152,1,32,2,32,3,40,2,160,1,34,17,54,2,160,1,32,2,32,3,40,2,156,1,34,9,54,2,156,1,32,6,69,13,1,32,13,13,2,32,2,32,6,45,0,45,65,2,113,4,127,65,226,4,5,32,6,40,2,32,11,32,4,106,54,2,152,1,65,0,32,6,40,2,12,32,6,40,2,20,34,3,27,33,4,32,6,40,2,16,32,6,40,2,4,106,33,10,32,6,40,2,24,33,5,32,3,32,6,40,2,8,106,12,3,11,32,2,66,0,55,2,4,65,0,33,9,32,2,65,0,54,2,12,32,6,13,3,11,32,11,32,9,54,2,8,12,2,11,32,2,32,4,32,6,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,25,66,32,136,167,34,3,65,255,1,113,33,4,32,3,65,24,118,34,5,32,3,65,16,118,65,255,1,113,106,33,10,32,3,65,8,118,65,15,113,11,33,3,32,2,32,2,40,2,4,32,10,106,54,2,4,32,2,32,2,40,2,8,32,3,106,173,32,4,32,5,106,65,0,32,2,40,2,12,32,3,27,106,173,66,32,134,132,55,2,8,2,64,32,13,69,4,64,65,0,33,5,32,2,32,6,40,2,36,34,3,4,127,32,6,40,2,56,5,65,0,11,32,9,106,32,6,47,1,44,65,1,113,106,32,6,47,1,40,65,254,255,3,70,106,54,2,156,1,32,3,69,13,1,32,6,40,2,60,33,5,12,1,11,32,2,32,9,32,6,65,1,118,65,1,113,106,54,2,156,1,65,0,33,5,11,32,2,32,5,32,17,106,54,2,160,1,11,32,11,32,2,54,2,0,32,12,65,1,106,34,12,32,23,71,13,0,11,11,65,1,33,12,32,18,65,1,75,4,64,3,64,32,20,32,12,65,3,116,106,41,2,0,33,25,32,0,40,2,132,9,34,2,40,2,0,32,19,106,34,6,40,2,0,33,3,2,127,32,2,40,2,40,34,4,4,64,32,2,32,4,65,1,107,34,4,54,2,40,32,2,40,2,36,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,32,7,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,25,167,33,4,32,2,66,0,55,2,152,1,32,2,65,1,54,2,148,1,32,2,65,0,54,2,160,1,2,64,32,2,2,127,2,64,2,64,32,3,4,64,32,2,65,0,54,2,28,32,2,32,25,55,2,20,32,2,32,3,54,2,16,32,2,65,1,59,1,144,1,32,2,32,3,41,2,4,55,2,4,32,2,32,3,40,2,12,54,2,12,32,2,32,3,40,2,152,1,34,5,54,2,152,1,32,2,32,3,40,2,160,1,34,9,54,2,160,1,32,2,32,3,40,2,156,1,34,3,54,2,156,1,32,4,69,13,1,32,4,65,1,113,34,13,13,2,32,2,32,4,45,0,45,65,2,113,4,127,65,226,4,5,32,4,40,2,32,11,32,5,106,54,2,152,1,65,0,32,4,40,2,12,32,4,40,2,20,34,5,27,33,11,32,5,32,4,40,2,8,106,33,5,32,4,40,2,24,33,10,32,4,40,2,16,32,4,40,2,4,106,12,3,11,32,2,66,0,55,2,4,65,0,33,3,32,2,65,0,54,2,12,32,4,13,3,11,32,6,32,3,54,2,8,12,2,11,32,2,32,5,32,4,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,25,66,32,136,167,65,255,1,113,33,11,32,25,66,40,136,167,65,15,113,33,5,32,25,66,56,136,167,34,10,32,25,66,48,136,167,65,255,1,113,106,11,32,2,40,2,4,106,54,2,4,32,2,32,2,40,2,8,32,5,106,173,32,10,32,11,106,65,0,32,2,40,2,12,32,5,27,106,173,66,32,134,132,55,2,8,2,64,32,13,69,4,64,65,0,33,5,32,2,32,4,40,2,36,34,10,4,127,32,4,40,2,56,5,65,0,11,32,3,106,32,4,47,1,44,65,1,113,106,32,4,47,1,40,65,254,255,3,70,106,54,2,156,1,32,10,69,13,1,32,4,40,2,60,33,5,12,1,11,32,2,32,3,32,4,65,1,118,65,1,113,106,54,2,156,1,65,0,33,5,11,32,2,32,5,32,9,106,54,2,160,1,11,32,6,32,2,54,2,0,32,12,65,1,106,34,12,32,18,71,13,0,11,11,32,8,32,8,41,3,24,55,3,16,32,22,32,8,65,16,106,16,10,32,20,35,8,40,2,0,17,2,0,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,0,40,2,160,9,33,7,35,1,65,171,10,106,33,2,2,64,2,64,2,64,2,127,32,8,45,0,24,65,1,113,4,64,32,8,45,0,25,12,1,11,32,8,40,2,24,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,7,40,2,8,32,7,40,2,4,106,32,3,77,13,0,32,7,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,8,32,2,54,2,0,32,15,65,128,8,35,1,65,165,7,106,32,8,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,15,32,2,17,3,0,11,32,15,33,3,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,32,0,40,2,140,10,34,2,69,13,3,32,0,40,2,132,9,32,0,40,2,160,9,32,2,16,29,35,1,65,235,11,106,32,0,40,2,140,10,16,20,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,16,65,1,106,34,16,32,8,40,2,40,73,13,0,11,65,1,32,14,69,13,2,26,32,8,65,36,106,32,0,40,2,132,9,34,2,32,1,35,2,65,9,106,65,0,65,0,16,25,32,8,40,2,40,13,0,11,11,32,21,65,0,71,11,32,8,65,48,106,36,0,11,197,3,1,7,127,35,0,65,16,107,33,4,2,127,32,2,45,0,0,34,7,65,1,113,69,4,64,32,2,40,2,0,34,5,65,196,0,65,40,32,5,40,2,36,34,6,27,106,47,1,0,33,8,32,5,65,42,106,32,6,69,13,1,26,32,5,65,198,0,106,12,1,11,32,2,45,0,1,33,8,32,2,65,2,106,11,47,1,0,33,6,32,0,40,2,160,9,34,10,40,2,88,33,0,2,64,32,10,40,2,0,65,14,77,4,64,32,0,32,1,65,2,116,106,34,9,47,1,0,33,5,32,9,47,1,2,33,9,32,4,65,0,59,1,12,32,4,32,9,59,1,10,32,4,32,5,59,1,8,32,0,32,6,65,2,116,106,40,1,0,33,0,32,4,65,0,59,1,4,32,4,32,0,54,2,0,12,1,11,32,4,32,0,32,1,65,6,108,106,34,5,47,1,4,59,1,12,32,4,32,5,40,1,0,34,5,54,2,8,32,4,32,0,32,6,65,6,108,106,34,0,47,1,4,59,1,4,32,4,32,0,40,1,0,54,2,0,11,2,64,32,5,65,255,255,3,113,65,255,255,3,70,4,64,65,0,33,0,12,1,11,2,64,32,3,40,2,4,69,13,0,32,4,40,2,0,32,4,40,2,8,115,32,4,47,1,4,32,4,47,1,12,115,114,13,0,32,10,47,1,100,32,8,71,4,64,65,1,33,0,12,2,11,32,7,65,1,113,4,127,32,7,65,6,118,65,1,113,5,32,2,40,2,0,47,1,44,65,10,118,65,1,113,11,13,0,65,1,33,0,32,2,65,2,106,32,2,40,2,0,65,42,106,32,7,65,1,113,27,47,1,0,32,1,70,13,1,11,2,127,32,2,40,2,0,34,0,65,1,113,4,64,32,2,45,0,7,12,1,11,32,0,40,2,16,11,33,2,65,0,33,0,32,8,69,32,2,65,0,71,114,69,13,0,32,4,47,1,10,13,0,32,3,45,0,8,33,0,11,32,0,65,1,113,11,217,50,2,28,127,2,126,35,0,65,192,2,107,34,4,36,0,32,0,40,2,132,9,34,5,40,2,0,32,1,65,5,116,106,34,3,40,2,0,34,6,40,2,8,33,30,32,6,40,2,4,33,26,32,5,40,2,4,33,18,32,6,40,2,156,1,34,15,32,3,40,2,8,34,13,73,4,64,32,3,32,15,54,2,8,32,15,33,13,11,32,3,40,2,4,33,23,32,6,40,2,152,1,33,24,2,64,32,3,40,2,28,65,1,71,4,64,32,6,47,1,0,13,1,32,6,40,2,20,13,1,11,32,24,65,244,3,106,33,24,11,2,64,32,23,69,13,0,32,2,45,0,0,65,1,113,69,4,64,32,2,40,2,0,47,1,40,65,255,255,3,70,13,1,11,32,23,40,2,4,69,13,0,32,0,65,188,9,106,33,10,32,0,65,136,9,106,33,27,32,24,32,26,106,33,20,32,13,32,15,71,33,25,3,64,2,64,2,64,32,23,40,2,0,32,28,65,20,108,106,34,5,47,1,16,34,21,69,13,0,32,5,40,2,0,34,7,32,26,70,13,0,32,5,40,2,12,33,17,32,5,40,2,4,33,8,32,18,4,64,32,0,40,2,132,9,40,2,0,33,6,65,0,33,3,3,64,32,21,32,6,32,3,65,5,116,106,40,2,0,34,5,47,1,0,70,4,64,32,5,40,2,4,32,26,70,13,3,11,32,3,65,1,106,34,3,32,18,71,13,0,11,11,32,0,32,1,32,20,32,7,107,32,17,65,228,0,108,106,32,30,32,8,107,65,30,108,106,16,107,13,1,2,127,32,2,45,0,0,65,1,113,4,64,32,2,45,0,1,12,1,11,32,2,40,2,0,47,1,40,11,33,14,2,64,32,0,40,2,160,9,34,3,40,2,24,34,5,32,21,77,4,64,32,3,40,2,44,32,3,40,2,48,32,21,32,5,107,65,2,116,106,40,2,0,65,1,116,106,34,5,47,1,0,34,8,69,13,2,32,5,65,2,106,33,6,65,0,33,16,3,64,32,6,65,4,106,33,3,32,6,47,1,2,34,11,4,127,32,3,32,11,65,1,116,106,65,0,33,7,3,64,32,3,47,1,0,32,14,65,255,255,3,113,70,13,4,32,3,65,2,106,33,3,32,7,65,1,106,34,7,32,11,71,13,0,11,5,32,3,11,33,6,32,16,65,1,106,34,16,32,8,71,13,0,11,12,2,11,32,3,40,2,40,32,3,40,2,4,32,21,108,65,1,116,106,32,14,65,255,255,3,113,65,1,116,106,33,6,11,32,6,47,1,0,69,13,0,32,0,40,2,132,9,33,5,32,4,32,17,32,25,106,34,29,54,2,160,2,32,4,65,200,1,106,32,5,32,1,35,2,65,7,106,32,4,65,160,2,106,32,29,16,25,32,4,40,2,204,1,34,5,69,13,0,65,0,33,22,65,127,33,19,3,64,32,4,32,4,40,2,200,1,32,22,65,4,116,106,34,14,41,2,8,55,3,192,1,32,4,32,14,41,2,0,55,3,184,1,2,64,2,64,32,19,32,4,40,2,196,1,34,11,70,4,64,65,0,33,3,32,4,40,2,184,1,33,8,32,4,40,2,188,1,34,6,4,64,3,64,32,4,32,8,32,3,65,3,116,106,41,2,0,55,3,136,1,32,27,32,4,65,136,1,106,16,10,32,3,65,1,106,34,3,32,6,71,13,0,11,11,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,5,32,22,65,127,115,106,65,4,116,34,3,69,13,1,32,14,32,14,65,16,106,32,3,252,10,0,0,12,1,11,32,21,32,0,40,2,132,9,34,7,40,2,0,32,11,65,5,116,106,34,3,40,2,0,34,8,47,1,0,71,4,64,32,3,65,2,54,2,28,65,0,33,3,32,4,40,2,184,1,33,8,32,4,40,2,188,1,34,6,4,64,3,64,32,4,32,8,32,3,65,3,116,106,41,2,0,55,3,168,1,32,27,32,4,65,168,1,106,16,10,32,3,65,1,106,34,3,32,6,71,13,0,11,11,32,4,65,0,54,2,188,1,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,5,32,22,65,127,115,106,65,4,116,34,3,69,13,1,32,14,32,14,65,16,106,32,3,252,10,0,0,12,1,11,65,0,33,3,2,64,32,8,47,1,144,1,34,5,69,13,0,3,64,2,64,32,8,32,3,65,4,116,106,40,2,20,34,6,69,13,0,32,6,65,1,113,13,0,32,6,47,1,40,65,255,255,3,71,13,0,32,4,65,0,58,0,136,2,32,4,65,160,2,106,32,7,32,11,35,2,65,8,106,32,4,65,136,2,106,65,1,16,25,32,4,40,2,164,2,69,13,2,32,7,32,4,40,2,160,2,34,5,40,2,12,32,11,16,39,32,5,40,2,4,34,7,69,13,2,2,64,32,5,40,2,0,34,14,40,2,0,34,11,65,1,113,13,0,32,11,40,2,36,34,17,69,13,0,32,4,40,2,184,1,33,6,32,4,40,2,188,1,34,8,32,17,106,34,3,32,4,40,2,192,1,75,4,64,32,3,65,3,116,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,4,32,3,54,2,192,1,11,32,17,65,3,116,33,3,2,64,32,8,69,13,0,32,8,65,3,116,34,5,69,13,0,32,3,32,6,106,32,6,32,5,252,10,0,0,11,32,3,4,64,32,6,32,11,32,3,107,32,3,252,10,0,0,11,32,4,32,6,54,2,184,1,32,4,32,4,40,2,188,1,32,17,106,54,2,188,1,65,0,33,3,32,17,65,1,71,4,64,32,17,65,126,113,33,8,65,0,33,6,3,64,32,3,65,3,116,34,5,32,4,40,2,184,1,106,40,2,0,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,4,40,2,184,1,32,5,106,40,2,8,34,5,65,1,113,69,4,64,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,11,32,3,65,2,106,33,3,32,6,65,2,106,34,6,32,8,71,13,0,11,11,32,17,65,1,113,69,13,0,32,4,40,2,184,1,32,3,65,3,116,106,40,2,0,34,5,65,1,113,13,0,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,11,65,0,33,3,3,64,32,4,32,14,32,3,65,3,116,106,41,2,0,55,3,160,1,32,27,32,4,65,160,1,106,16,10,32,3,65,1,106,34,3,32,7,71,13,0,11,32,14,35,8,40,2,0,17,2,0,12,2,11,32,3,65,1,106,34,3,32,5,71,13,0,11,11,32,4,65,184,1,106,32,10,16,114,2,64,32,4,40,2,188,1,34,8,4,64,32,0,40,2,160,9,33,3,32,4,40,2,184,1,33,7,32,8,65,3,116,34,5,65,204,0,106,34,6,32,4,40,2,192,1,65,3,116,75,4,64,32,7,32,6,35,6,40,2,0,17,1,0,33,7,32,4,32,6,65,3,118,54,2,192,1,32,4,32,7,54,2,184,1,11,32,4,66,0,55,3,184,2,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,1,54,2,244,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,130,2,32,4,66,0,55,3,136,2,32,4,66,0,55,3,224,1,32,4,65,255,255,3,59,1,132,2,32,4,65,27,59,1,236,1,32,4,65,0,59,1,234,1,32,4,32,8,54,2,240,1,32,5,32,7,106,34,5,32,4,40,2,244,1,54,2,0,32,5,32,4,41,3,184,2,55,2,28,32,5,32,4,41,3,176,2,55,2,20,32,5,32,4,41,3,168,2,55,2,12,32,5,32,4,41,3,160,2,55,2,4,32,5,32,4,40,2,240,1,54,2,36,32,5,32,4,47,1,132,2,59,1,40,32,5,32,4,47,1,130,2,59,1,42,32,5,32,4,47,1,236,1,59,1,44,32,5,32,4,40,2,152,2,54,1,62,32,5,32,4,41,3,144,2,55,1,54,32,5,32,4,41,3,136,2,55,1,46,32,5,32,4,47,1,234,1,59,1,66,32,5,32,4,41,3,224,1,55,2,68,32,4,65,0,54,2,220,1,32,4,32,5,54,2,216,1,32,4,32,4,41,3,216,1,55,3,152,1,32,4,65,152,1,106,32,3,16,21,32,5,32,5,47,1,44,65,4,114,59,1,44,32,4,32,4,41,3,216,1,34,31,55,3,160,2,32,0,40,2,132,9,32,4,32,31,55,3,144,1,32,4,40,2,196,1,34,19,32,4,65,144,1,106,65,0,32,21,16,23,12,1,11,32,4,40,2,184,1,34,5,4,64,32,5,35,8,40,2,0,17,2,0,11,32,4,66,0,55,3,184,1,32,4,40,2,196,1,33,19,11,65,0,33,5,32,0,40,2,192,9,4,64,3,64,32,0,40,2,188,9,32,5,65,3,116,106,41,2,0,33,31,32,0,40,2,132,9,34,6,40,2,0,32,19,65,5,116,106,34,17,40,2,0,33,8,2,127,32,6,40,2,40,34,3,4,64,32,6,32,3,65,1,107,34,3,54,2,40,32,6,40,2,36,32,3,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,9,32,21,59,1,0,32,9,65,2,106,65,0,65,146,1,252,11,0,32,31,167,33,12,32,9,66,0,55,2,152,1,32,9,65,1,54,2,148,1,32,9,65,0,54,2,160,1,2,64,32,9,2,127,2,64,2,64,32,8,4,64,32,9,32,31,55,2,20,32,9,32,8,54,2,16,32,9,65,1,59,1,144,1,32,9,32,8,41,2,4,55,2,4,32,9,32,8,40,2,12,54,2,12,32,9,32,8,40,2,152,1,34,3,54,2,152,1,32,9,32,8,40,2,160,1,34,11,54,2,160,1,32,9,32,8,40,2,156,1,34,7,54,2,156,1,32,12,69,13,1,32,12,65,1,113,34,6,13,2,32,9,32,12,45,0,45,65,2,113,4,127,65,226,4,5,32,12,40,2,32,11,32,3,106,54,2,152,1,65,0,32,12,40,2,12,32,12,40,2,20,34,3,27,33,14,32,3,32,12,40,2,8,106,33,16,32,12,40,2,24,33,8,32,12,40,2,16,32,12,40,2,4,106,12,3,11,32,9,66,0,55,2,4,65,0,33,7,32,9,65,0,54,2,12,32,12,13,3,11,32,17,32,7,54,2,8,12,2,11,32,9,32,3,32,12,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,31,66,32,136,167,65,255,1,113,33,14,32,31,66,40,136,167,65,15,113,33,16,32,31,66,56,136,167,34,8,32,31,66,48,136,167,65,255,1,113,106,11,32,9,40,2,4,106,54,2,4,32,9,32,9,40,2,8,32,16,106,173,32,8,32,14,106,65,0,32,9,40,2,12,32,16,27,106,173,66,32,134,132,55,2,8,2,64,32,6,69,4,64,65,0,33,16,32,9,32,12,40,2,36,34,3,4,127,32,12,40,2,56,5,65,0,11,32,7,106,32,12,47,1,44,65,1,113,106,32,12,47,1,40,65,254,255,3,70,106,54,2,156,1,32,3,69,13,1,32,12,40,2,60,33,16,12,1,11,32,9,32,7,32,12,65,1,118,65,1,113,106,54,2,156,1,65,0,33,16,11,32,9,32,11,32,16,106,54,2,160,1,11,32,17,32,9,54,2,0,32,5,65,1,106,34,5,32,0,40,2,192,9,73,13,0,11,11,32,22,65,1,106,33,22,32,4,40,2,204,1,33,5,12,1,11,32,4,32,5,65,1,107,34,5,54,2,204,1,11,32,5,32,22,75,13,0,11,32,19,65,127,70,13,0,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,10,12,4,11,32,4,32,29,54,2,132,1,32,4,32,21,54,2,128,1,32,0,65,132,1,106,34,3,65,128,8,35,1,65,248,1,106,32,4,65,128,1,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,3,32,5,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,10,12,4,11,3,64,2,64,2,64,2,64,32,3,45,0,0,34,7,65,34,70,13,0,32,7,65,220,0,70,13,0,32,7,13,1,32,0,40,2,140,10,34,5,13,2,65,1,33,10,12,7,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,7,11,32,7,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,1,11,11,32,0,40,2,132,9,32,0,40,2,160,9,32,5,16,29,65,1,33,10,35,1,65,235,11,106,32,0,40,2,140,10,16,20,12,3,11,32,28,65,1,106,34,28,32,23,40,2,4,73,13,1,11,11,65,0,33,10,11,32,0,40,2,132,9,34,3,40,2,4,34,7,32,18,75,4,64,32,0,65,132,1,106,33,5,3,64,2,64,32,3,40,2,0,32,18,65,5,116,106,40,2,28,69,13,0,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,4,32,18,54,2,112,32,5,65,128,8,35,1,65,205,0,106,32,4,65,240,0,106,16,11,26,32,0,40,2,96,34,3,4,64,32,0,40,2,92,65,0,32,5,32,3,17,3,0,11,32,5,33,7,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,7,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,7,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,7,65,1,106,33,7,12,0,11,0,11,32,0,40,2,132,9,32,18,16,17,32,18,65,1,107,33,18,32,0,40,2,132,9,33,3,32,0,40,2,140,10,34,6,69,13,0,32,3,32,0,40,2,160,9,32,6,16,29,35,1,65,235,11,106,32,0,40,2,140,10,16,20,32,0,40,2,132,9,33,3,11,32,18,65,1,106,34,18,32,3,40,2,4,34,7,73,13,0,11,11,2,64,2,64,2,127,32,2,45,0,0,34,6,65,1,113,4,64,32,2,45,0,1,12,1,11,32,2,40,2,0,47,1,40,11,65,255,255,3,113,69,4,64,2,64,32,0,40,2,96,34,3,69,4,64,32,0,40,2,140,10,69,13,3,32,0,35,1,65,168,8,106,34,5,41,0,0,55,0,132,1,32,0,32,5,40,0,8,54,0,140,1,32,0,65,132,1,106,33,7,12,1,11,32,0,35,1,65,168,8,106,34,5,41,0,0,55,0,132,1,32,0,32,5,40,0,8,54,0,140,1,32,0,40,2,92,65,0,32,0,65,132,1,106,34,7,32,3,17,3,0,32,0,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,7,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,4,11,65,220,0,32,0,40,2,140,10,16,9,32,7,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,7,65,1,106,33,7,12,0,11,0,11,2,64,32,10,69,4,64,32,2,40,2,0,33,5,12,1,11,32,7,65,7,79,4,64,32,3,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,24,32,0,65,136,9,106,32,4,65,24,106,16,10,12,3,11,32,2,40,2,0,33,5,32,6,65,1,113,13,0,32,5,45,0,44,65,128,1,113,69,13,0,32,3,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,104,32,0,65,136,9,106,32,4,65,232,0,106,16,10,12,2,11,32,24,65,228,0,106,33,6,2,127,32,5,65,1,113,4,64,32,2,45,0,6,32,2,45,0,7,106,33,10,32,2,45,0,5,65,15,113,12,1,11,32,5,40,2,16,32,5,40,2,4,106,33,10,32,5,40,2,20,32,5,40,2,8,106,11,33,3,32,0,32,1,32,6,32,10,106,32,3,65,30,108,106,16,107,4,64,32,0,40,2,132,9,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,32,32,0,65,136,9,106,32,4,65,32,106,16,10,12,2,11,32,5,65,8,118,33,19,32,0,40,2,160,9,33,20,2,64,2,64,32,5,65,1,113,4,64,32,19,65,255,1,113,33,10,12,1,11,32,5,47,1,40,34,10,65,253,255,3,75,13,1,11,2,64,2,64,32,20,40,2,24,34,3,65,1,77,4,64,32,20,40,2,44,32,20,40,2,48,65,1,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,3,47,1,0,34,11,69,4,64,65,0,33,3,12,3,11,32,3,65,2,106,33,8,65,0,33,16,3,64,32,8,65,4,106,33,3,32,8,47,1,2,34,25,4,127,32,3,32,25,65,1,116,106,65,0,33,7,3,64,32,3,47,1,0,32,10,70,13,4,32,3,65,2,106,33,3,32,7,65,1,106,34,7,32,25,71,13,0,11,5,32,3,11,33,8,65,0,33,3,32,16,65,1,106,34,16,32,11,71,13,0,11,12,2,11,32,20,40,2,40,32,20,40,2,4,65,1,116,106,32,10,65,1,116,106,47,1,0,33,3,12,1,11,32,8,47,1,0,33,3,11,32,20,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,6,45,0,0,34,3,69,13,0,32,6,32,3,65,3,116,106,34,3,45,0,0,13,0,32,3,45,0,4,65,1,71,13,0,32,4,32,2,41,2,0,34,31,55,3,136,2,32,31,66,32,136,33,32,2,64,32,31,167,34,6,65,1,113,4,64,32,6,33,5,12,1,11,32,6,34,5,40,2,0,65,1,70,13,0,32,5,40,2,36,65,3,116,65,204,0,106,34,3,35,7,40,2,0,17,0,0,33,11,32,3,4,64,32,11,32,5,32,5,40,2,36,65,3,116,107,32,3,252,10,0,0,11,32,0,65,136,9,106,32,11,32,6,40,2,36,34,10,65,3,116,106,33,5,2,64,32,10,4,64,65,0,33,3,3,64,32,11,32,3,65,3,116,106,40,2,0,34,8,65,1,113,69,4,64,32,8,32,8,40,2,0,65,1,106,54,2,0,32,8,40,2,0,26,32,6,40,2,36,33,10,11,32,3,65,1,106,34,3,32,10,73,13,0,11,12,1,11,32,6,45,0,44,65,192,0,113,69,13,0,32,6,40,2,48,33,3,32,4,32,6,41,2,68,55,3,176,2,32,4,32,6,41,2,60,55,3,168,2,32,4,32,6,41,2,52,55,3,160,2,2,64,32,6,40,2,72,34,8,65,25,73,13,0,32,8,35,7,40,2,0,17,0,0,33,3,32,6,40,2,72,34,8,69,13,0,32,3,32,6,40,2,48,32,8,252,10,0,0,11,32,5,32,3,54,2,48,32,5,32,4,41,3,160,2,55,2,52,32,5,32,4,41,3,168,2,55,2,60,32,5,32,4,41,3,176,2,55,2,68,11,32,5,65,1,54,2,0,32,4,32,4,41,3,136,2,55,3,96,32,4,65,224,0,106,16,10,66,0,33,32,11,2,64,32,5,65,1,113,4,64,32,5,65,8,114,33,5,12,1,11,32,5,32,5,47,1,44,65,4,114,59,1,44,11,32,2,32,5,173,34,31,32,32,66,32,134,132,55,2,0,32,31,66,8,136,167,33,19,11,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,0,65,132,1,106,33,3,32,0,40,2,160,9,33,6,35,1,65,171,10,106,33,7,2,64,2,64,2,64,32,5,65,1,113,4,127,32,19,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,7,12,1,11,65,0,33,7,32,6,40,2,8,32,6,40,2,4,106,32,5,77,13,0,32,6,40,2,56,32,5,65,2,116,106,40,2,0,33,7,11,32,4,32,7,54,2,80,32,3,65,128,8,35,1,65,193,5,106,32,4,65,208,0,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,3,32,5,17,3,0,11,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,7,65,34,70,13,0,32,7,65,220,0,70,13,0,32,7,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,7,11,32,7,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,65,8,35,7,40,2,0,17,0,0,34,3,32,2,41,2,0,34,32,55,2,0,32,0,40,2,160,9,33,5,32,3,65,212,0,35,6,40,2,0,17,1,0,33,3,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,24,59,1,132,2,32,4,66,0,55,3,184,2,32,4,65,1,54,2,224,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,240,1,32,4,66,0,55,3,136,2,32,4,66,0,55,3,184,1,32,4,65,1,54,2,216,1,32,4,65,254,255,3,59,1,244,1,32,4,65,0,59,1,130,2,32,3,32,4,40,2,224,1,54,2,8,32,3,32,4,41,3,184,2,55,2,36,32,3,32,4,41,3,176,2,55,2,28,32,3,32,4,41,3,168,2,55,2,20,32,3,32,4,41,3,160,2,55,2,12,32,3,32,4,40,2,216,1,54,2,44,32,3,32,4,47,1,244,1,59,1,48,32,3,32,4,47,1,240,1,59,1,50,32,3,32,4,47,1,132,2,59,1,52,32,3,32,4,40,2,152,2,54,1,70,32,3,32,4,41,3,144,2,55,1,62,32,3,32,4,41,3,136,2,55,1,54,32,3,32,4,47,1,130,2,59,1,74,32,3,32,4,41,3,184,1,55,2,76,32,4,65,0,54,2,204,1,32,4,32,3,65,8,106,54,2,200,1,32,4,32,4,41,3,200,1,55,3,72,32,4,65,200,0,106,32,5,16,21,2,64,2,64,32,13,32,15,70,4,64,32,0,40,2,132,9,32,4,32,4,41,3,200,1,34,31,55,3,176,1,32,4,32,31,55,3,48,32,1,32,4,65,48,106,65,0,65,0,16,23,32,32,167,65,1,113,69,13,1,12,2,11,32,0,40,2,132,9,33,5,32,4,65,1,54,2,136,2,32,4,65,160,2,106,32,5,32,1,35,2,65,7,106,32,4,65,136,2,106,65,1,16,25,32,4,40,2,160,2,33,8,2,64,32,4,40,2,164,2,34,13,65,1,77,4,64,32,8,40,2,12,33,5,32,0,40,2,132,9,33,3,12,1,11,32,0,65,136,9,106,33,6,65,1,33,10,3,64,65,0,33,3,32,8,32,10,65,4,116,106,34,15,40,2,4,4,64,3,64,32,4,32,15,40,2,0,32,3,65,3,116,106,41,2,0,55,3,64,32,6,32,4,65,64,107,16,10,32,3,65,1,106,34,3,32,15,40,2,4,73,13,0,11,11,32,15,65,0,54,2,4,32,15,40,2,0,34,5,4,64,32,5,35,8,40,2,0,17,2,0,11,32,15,65,0,54,2,8,32,15,66,0,55,2,0,32,10,65,1,106,34,10,32,13,71,13,0,11,32,8,40,2,12,34,5,65,1,106,34,7,32,0,40,2,132,9,34,3,40,2,4,79,13,0,3,64,32,3,32,7,16,17,32,8,40,2,12,34,5,65,1,106,34,7,32,0,40,2,132,9,34,3,40,2,4,73,13,0,11,11,32,3,32,5,32,1,16,39,32,8,40,2,0,33,3,32,8,32,8,40,2,4,34,5,65,1,106,34,13,32,8,40,2,8,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,13,32,5,32,13,75,27,34,5,32,5,65,8,77,27,34,5,65,3,116,33,6,2,127,32,3,4,64,32,3,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,3,32,8,32,5,54,2,8,32,8,40,2,4,34,5,65,1,106,5,32,13,11,54,2,4,32,8,32,3,54,2,0,32,3,32,5,65,3,116,106,32,4,41,3,200,1,55,2,0,32,4,65,136,2,106,65,254,255,3,32,4,40,2,160,2,65,0,32,0,40,2,160,9,16,113,32,4,32,4,41,3,136,2,34,31,55,3,200,1,32,2,45,0,0,32,0,40,2,132,9,32,4,32,31,55,3,56,32,4,32,31,55,3,176,1,32,1,32,4,65,56,106,65,0,65,0,16,23,65,1,113,13,1,11,32,2,40,2,0,34,6,45,0,44,65,192,0,113,69,13,0,32,0,40,2,132,9,33,7,2,64,32,6,65,1,113,69,4,64,32,2,40,2,4,33,8,32,6,40,2,36,34,5,4,64,3,64,32,6,32,5,65,3,116,107,33,15,32,5,33,3,3,64,2,64,2,64,32,15,32,3,65,1,107,34,3,65,3,116,106,34,13,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,2,40,2,36,33,5,32,13,40,2,4,33,8,32,2,33,6,12,1,11,32,3,13,1,11,11,32,5,13,0,11,11,32,7,40,2,0,32,1,65,5,116,106,33,3,32,6,69,13,1,32,6,65,1,113,13,1,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,12,1,11,32,7,40,2,0,32,1,65,5,116,106,33,3,65,0,33,6,65,0,33,8,11,32,3,40,2,12,4,64,32,7,40,2,52,32,4,32,3,41,2,12,55,3,40,32,4,65,40,106,16,10,11,32,3,32,8,54,2,16,32,3,32,6,54,2,12,11,2,64,32,0,40,2,132,9,34,1,40,2,4,34,13,69,4,64,65,1,33,3,12,1,11,32,1,40,2,0,33,6,65,0,33,7,3,64,32,6,32,7,65,5,116,106,34,3,40,2,28,33,5,32,3,40,2,0,34,2,40,2,156,1,34,1,32,3,40,2,8,73,4,64,32,3,32,1,54,2,8,11,2,64,32,5,65,1,70,13,0,32,2,47,1,0,69,13,0,65,0,33,3,12,2,11,65,1,33,3,32,7,65,1,106,34,7,32,13,71,13,0,11,11,32,0,32,3,58,0,198,10,12,1,11,32,0,40,2,160,9,33,5,65,0,65,204,0,35,6,40,2,0,17,1,0,33,3,32,4,66,0,55,3,184,2,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,1,54,2,200,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,244,1,32,4,66,0,55,3,136,2,32,4,66,0,55,3,184,1,32,4,65,0,54,2,224,1,32,4,65,255,255,3,59,1,216,1,32,4,65,27,59,1,240,1,32,4,65,0,59,1,132,2,32,3,32,4,40,2,200,1,54,2,0,32,3,32,4,41,3,184,2,55,2,28,32,3,32,4,41,3,176,2,55,2,20,32,3,32,4,41,3,168,2,55,2,12,32,3,32,4,41,3,160,2,55,2,4,32,3,32,4,40,2,224,1,54,2,36,32,3,32,4,47,1,216,1,59,1,40,32,3,32,4,47,1,244,1,59,1,42,32,3,32,4,47,1,240,1,59,1,44,32,3,32,4,40,2,152,2,54,1,62,32,3,32,4,41,3,144,2,55,1,54,32,3,32,4,41,3,136,2,55,1,46,32,3,32,4,47,1,132,2,59,1,66,32,3,32,4,41,3,184,1,55,2,68,32,4,65,0,54,2,252,1,32,4,32,3,54,2,248,1,32,4,32,4,41,2,248,1,55,3,16,32,4,65,16,106,32,5,16,21,32,3,32,3,47,1,44,65,251,255,3,113,59,1,44,32,0,40,2,132,9,32,4,32,4,41,2,248,1,55,3,8,32,1,32,4,65,8,106,65,0,65,1,16,23,32,4,32,2,41,2,0,55,3,0,32,0,32,1,32,4,16,78,11,32,4,65,192,2,106,36,0,11,212,10,1,23,127,35,0,65,16,107,34,15,36,0,32,0,40,2,132,9,34,12,40,2,4,34,17,32,1,75,4,64,65,1,32,2,32,2,65,1,77,27,33,22,32,2,65,1,106,33,23,32,17,33,21,32,1,33,9,3,64,32,12,40,2,0,33,11,2,64,32,9,32,17,75,4,64,32,11,32,9,65,5,116,106,33,13,32,17,33,3,3,64,2,64,32,11,32,3,65,5,116,106,34,6,40,2,28,13,0,32,13,40,2,28,13,0,32,6,40,2,0,34,10,47,1,0,34,19,32,13,40,2,0,34,4,47,1,0,71,13,0,32,10,40,2,4,32,4,40,2,4,71,13,0,32,10,40,2,152,1,32,4,40,2,152,1,71,13,0,35,1,65,148,12,106,33,5,32,13,40,2,12,33,7,2,64,32,6,40,2,12,34,8,69,13,0,32,8,65,1,113,13,0,32,8,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,8,65,48,106,32,8,40,2,36,27,33,5,11,35,1,65,148,12,106,33,8,2,64,32,7,69,13,0,32,7,65,1,113,13,0,32,7,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,7,65,48,106,32,7,40,2,36,27,33,8,11,32,5,40,2,24,33,14,2,64,32,8,40,2,24,34,7,65,25,79,4,64,32,7,32,14,71,13,2,32,5,40,2,0,33,5,32,8,40,2,0,33,8,12,1,11,32,7,32,14,71,13,1,11,32,5,32,8,32,7,16,18,13,0,32,4,47,1,144,1,4,127,65,0,33,3,3,64,32,12,40,2,52,33,5,32,6,40,2,0,32,15,32,4,32,3,65,4,116,106,34,4,41,2,24,55,3,8,32,15,32,4,41,2,16,55,3,0,32,15,32,5,16,32,32,3,65,1,106,34,3,32,13,40,2,0,34,4,47,1,144,1,73,13,0,11,32,6,40,2,0,34,10,47,1,0,5,32,19,11,69,4,64,32,6,32,10,40,2,156,1,54,2,8,11,32,12,32,9,16,17,12,3,11,32,3,65,1,106,34,3,32,9,71,13,0,11,11,32,11,32,9,65,5,116,106,40,2,0,47,1,0,33,12,32,0,65,0,54,2,172,9,32,23,33,3,2,127,2,64,32,2,34,5,4,127,32,3,5,65,1,33,5,32,0,40,2,160,9,40,2,12,11,65,255,255,3,113,34,19,32,5,77,13,0,65,0,33,13,32,22,33,8,3,64,2,64,32,8,65,253,255,3,75,13,0,2,64,2,64,32,0,40,2,160,9,34,7,40,2,24,34,3,32,12,77,4,64,32,7,40,2,44,32,7,40,2,48,32,12,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,3,47,1,0,34,14,69,4,64,65,0,33,3,12,3,11,32,3,65,2,106,33,4,65,0,33,10,3,64,32,4,65,4,106,33,3,32,4,47,1,2,34,11,4,127,32,3,32,11,65,1,116,106,65,0,33,5,3,64,32,8,32,3,47,1,0,70,13,4,32,3,65,2,106,33,3,32,5,65,1,106,34,5,32,11,71,13,0,11,5,32,3,11,33,4,65,0,33,3,32,10,65,1,106,34,10,32,14,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,12,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,3,12,1,11,32,4,47,1,0,33,3,11,32,7,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,3,45,0,0,34,14,69,13,0,32,3,65,8,106,33,24,65,0,33,5,3,64,32,24,32,5,65,3,116,106,34,3,46,1,4,33,10,2,64,2,64,2,64,32,3,45,0,0,14,4,0,1,2,0,2,11,32,10,65,129,2,113,69,32,13,114,33,13,12,1,11,32,3,45,0,1,34,7,69,13,0,32,3,47,1,6,33,25,32,3,47,1,2,33,11,32,0,40,2,168,9,33,6,65,0,33,3,32,0,40,2,172,9,34,4,4,64,3,64,32,11,32,6,32,3,65,4,116,106,34,20,47,1,4,70,4,64,32,20,40,2,0,32,7,70,13,3,11,32,3,65,1,106,34,3,32,4,71,13,0,11,11,32,0,32,4,65,1,106,34,3,32,0,40,2,176,9,34,20,75,4,127,65,8,32,20,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,4,116,33,3,2,127,32,6,4,64,32,6,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,6,32,0,32,4,54,2,176,9,32,0,40,2,172,9,34,4,65,1,106,5,32,3,11,54,2,172,9,32,0,32,6,54,2,168,9,32,6,32,4,65,4,116,106,34,3,65,0,59,1,14,32,3,32,25,59,1,12,32,3,32,10,54,2,8,32,3,65,0,59,1,6,32,3,32,11,59,1,4,32,3,32,7,54,2,0,11,32,5,65,1,106,34,5,32,14,71,13,0,11,11,32,19,32,8,65,1,106,34,8,65,255,255,3,113,71,13,0,11,65,0,33,5,2,64,32,0,40,2,172,9,69,4,64,65,127,33,6,12,1,11,3,64,32,0,32,9,32,0,40,2,168,9,32,5,65,4,116,106,34,3,47,1,4,32,3,40,2,0,32,3,40,2,8,32,3,47,1,12,65,1,65,0,16,77,33,6,32,5,65,1,106,34,3,33,5,32,3,32,0,40,2,172,9,73,13,0,11,11,65,1,32,13,65,1,113,13,1,26,32,6,65,127,70,13,0,32,18,65,5,75,13,0,32,0,40,2,132,9,32,6,32,9,16,39,12,2,11,32,2,4,64,32,0,40,2,132,9,32,9,16,17,11,32,16,11,32,21,32,9,65,1,106,32,1,32,9,70,27,33,9,33,16,11,32,18,65,1,106,33,18,32,9,32,0,40,2,132,9,34,12,40,2,4,34,21,73,13,0,11,11,32,15,65,16,106,36,0,32,16,65,1,113,11,219,7,2,12,127,3,126,32,1,32,3,114,4,64,32,1,65,0,71,33,6,32,3,65,0,71,33,7,3,64,32,0,32,10,65,24,108,106,33,5,2,127,32,11,65,1,113,34,14,4,64,32,5,41,2,8,33,18,32,5,40,2,20,12,1,11,32,6,65,1,113,69,4,64,66,127,33,18,65,127,12,1,11,32,5,41,2,0,33,18,32,5,40,2,16,11,33,5,32,2,32,13,65,24,108,106,33,6,2,64,32,5,2,127,32,12,65,1,113,34,15,4,64,32,6,41,2,8,33,17,32,6,40,2,20,12,1,11,32,7,65,1,113,69,4,64,66,127,33,17,65,127,12,1,11,32,6,41,2,0,33,17,32,6,40,2,16,11,34,6,73,4,64,2,64,32,14,32,15,70,13,0,2,64,32,4,40,2,4,34,6,69,13,0,32,9,32,4,40,2,0,32,6,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,5,54,2,0,32,7,65,16,107,32,18,55,2,0,12,1,11,32,5,32,9,77,13,0,32,4,40,2,0,33,8,32,4,32,6,65,1,106,34,7,32,4,40,2,8,34,15,75,4,127,65,8,32,15,65,1,116,34,6,32,7,32,6,32,7,75,27,34,6,32,6,65,8,77,27,34,7,65,24,108,33,6,2,127,32,8,4,64,32,8,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,8,32,4,32,7,54,2,8,32,4,40,2,4,34,6,65,1,106,5,32,7,11,54,2,4,32,4,32,8,54,2,0,32,8,32,6,65,24,108,106,34,6,32,5,54,2,20,32,6,32,9,54,2,16,32,6,32,18,55,2,8,32,6,32,19,55,2,0,11,32,11,65,1,115,33,11,32,10,32,14,106,33,10,12,1,11,32,11,32,12,115,33,7,2,64,32,5,32,6,75,4,64,2,64,32,7,65,1,113,69,13,0,2,64,32,4,40,2,4,34,5,69,13,0,32,9,32,4,40,2,0,32,5,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,6,54,2,0,32,7,65,16,107,32,17,55,2,0,12,1,11,32,6,32,9,77,13,0,32,4,40,2,0,33,8,32,4,32,5,65,1,106,34,7,32,4,40,2,8,34,14,75,4,127,65,8,32,14,65,1,116,34,5,32,7,32,5,32,7,75,27,34,5,32,5,65,8,77,27,34,7,65,24,108,33,5,2,127,32,8,4,64,32,8,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,8,32,4,32,7,54,2,8,32,4,40,2,4,34,5,65,1,106,5,32,7,11,54,2,4,32,4,32,8,54,2,0,32,8,32,5,65,24,108,106,34,5,32,6,54,2,20,32,5,32,9,54,2,16,32,5,32,17,55,2,8,32,5,32,19,55,2,0,11,32,12,65,1,115,33,12,12,1,11,2,64,32,7,65,1,113,69,13,0,2,64,32,4,40,2,4,34,5,69,13,0,32,9,32,4,40,2,0,32,5,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,6,54,2,0,32,7,65,16,107,32,17,55,2,0,12,1,11,32,6,32,9,77,13,0,32,4,40,2,0,33,7,32,4,32,5,65,1,106,34,8,32,4,40,2,8,34,16,75,4,127,65,8,32,16,65,1,116,34,5,32,8,32,5,32,8,75,27,34,5,32,5,65,8,77,27,34,8,65,24,108,33,5,2,127,32,7,4,64,32,7,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,7,32,4,32,8,54,2,8,32,4,40,2,4,34,5,65,1,106,5,32,8,11,54,2,4,32,4,32,7,54,2,0,32,7,32,5,65,24,108,106,34,5,32,6,54,2,20,32,5,32,9,54,2,16,32,5,32,17,55,2,8,32,5,32,19,55,2,0,11,32,12,65,1,115,33,12,32,11,65,1,115,33,11,32,10,32,14,106,33,10,11,32,13,32,15,106,33,13,32,6,33,5,32,17,33,18,11,32,3,32,13,75,33,7,32,18,33,19,32,5,33,9,32,1,32,10,75,34,6,13,0,32,7,13,0,11,11,11,228,7,1,15,127,2,64,32,2,32,4,77,4,64,32,2,32,4,71,13,1,32,3,32,5,77,13,1,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,15,11,32,1,65,8,106,40,2,0,33,10,32,1,65,16,106,40,2,0,33,7,32,1,40,2,20,33,20,32,1,40,2,4,33,8,32,1,40,2,0,33,14,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,32,0,32,1,41,2,0,55,2,0,2,64,32,7,40,2,0,34,1,65,1,113,13,0,3,64,32,1,40,2,36,69,13,1,32,1,47,1,66,34,15,4,127,32,20,40,2,8,34,7,40,2,84,32,7,47,1,36,32,15,108,65,1,116,106,5,65,0,11,33,19,32,1,40,2,36,34,21,69,13,1,2,127,32,1,32,21,65,3,116,107,34,16,40,2,0,34,1,65,1,113,34,7,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,11,69,33,17,65,0,33,12,2,64,32,11,13,0,32,19,69,13,0,32,19,47,1,0,33,12,65,1,33,17,11,2,127,32,7,69,4,64,65,0,32,10,32,1,40,2,20,34,7,27,33,11,32,1,40,2,24,33,9,32,1,40,2,16,33,13,32,7,32,8,106,12,1,11,32,16,45,0,7,34,13,33,9,32,10,33,11,32,8,11,33,7,32,9,32,11,106,33,9,2,64,2,64,32,4,32,7,75,13,0,32,4,32,7,70,32,5,32,9,75,113,13,0,32,7,32,8,70,32,9,32,10,70,113,69,4,64,32,2,32,7,71,13,2,32,3,32,9,79,13,1,12,2,11,32,2,32,8,71,13,1,32,3,32,10,77,13,1,11,65,1,33,11,32,21,65,1,70,13,2,32,13,32,14,106,33,14,3,64,65,0,33,12,2,127,32,16,32,11,65,3,116,106,34,15,40,2,0,34,1,65,1,113,34,13,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,19,4,127,32,19,32,17,65,1,116,106,47,1,0,5,65,0,11,33,12,32,17,65,1,106,33,17,11,2,127,32,11,69,4,64,32,9,33,10,32,7,12,1,11,2,127,32,13,4,64,32,15,45,0,5,65,15,113,33,8,32,15,45,0,6,33,18,32,15,45,0,4,12,1,11,32,1,40,2,8,33,8,32,1,40,2,4,33,18,32,1,40,2,12,11,65,0,32,9,32,8,27,106,33,10,32,14,32,18,106,33,14,32,7,32,8,106,11,33,8,2,127,32,13,4,64,32,15,45,0,7,34,18,33,9,32,10,33,13,32,8,12,1,11,65,0,32,10,32,1,40,2,20,34,7,27,33,13,32,1,40,2,24,33,9,32,1,40,2,16,33,18,32,7,32,8,106,11,33,7,32,9,32,13,106,33,9,2,64,32,4,32,7,75,13,0,32,4,32,7,70,32,5,32,9,75,113,13,0,2,64,2,64,32,7,32,8,71,13,0,32,9,32,10,71,13,0,32,2,32,8,71,13,1,32,3,32,10,77,13,1,12,2,11,32,2,32,7,71,13,0,32,3,32,9,79,13,1,11,32,15,33,16,12,2,11,32,14,32,18,106,33,14,32,11,65,1,106,34,11,32,21,71,13,0,11,12,2,11,32,2,32,8,73,13,1,32,2,32,8,70,32,3,32,10,73,113,13,1,2,64,2,64,32,6,4,64,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,12,114,13,1,12,2,11,2,64,32,12,65,254,255,3,107,14,2,2,1,0,11,2,64,32,12,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,13,2,12,3,11,32,20,40,2,8,40,2,72,32,12,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,1,47,1,44,34,1,65,1,113,69,13,1,32,1,65,1,118,65,1,113,69,13,1,11,32,0,32,20,54,2,20,32,0,32,16,54,2,16,32,0,32,12,54,2,12,32,0,32,10,54,2,8,32,0,32,8,54,2,4,32,0,32,14,54,2,0,11,32,16,40,2,0,34,1,65,1,113,69,13,0,11,11,11,230,6,1,16,127,32,2,32,3,75,4,64,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,15,11,32,1,65,8,106,40,2,0,33,8,32,1,65,16,106,40,2,0,33,5,32,1,40,2,20,33,19,32,1,40,2,4,33,11,32,1,40,2,0,33,9,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,32,0,32,1,41,2,0,55,2,0,2,64,32,5,40,2,0,34,1,65,1,113,13,0,3,64,32,1,40,2,36,69,13,1,32,1,47,1,66,34,12,4,127,32,19,40,2,8,34,5,40,2,84,32,5,47,1,36,32,12,108,65,1,116,106,5,65,0,11,33,18,32,1,40,2,36,34,20,69,13,1,2,127,32,1,32,20,65,3,116,107,34,12,40,2,0,34,1,65,1,113,34,5,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,7,69,33,14,65,0,33,10,2,64,32,7,13,0,32,18,69,13,0,32,18,47,1,0,33,10,65,1,33,14,11,2,127,32,5,69,4,64,65,0,32,8,32,1,40,2,20,34,5,27,33,13,32,1,40,2,24,33,6,32,1,40,2,16,33,7,32,5,32,11,106,12,1,11,32,12,45,0,7,34,7,33,6,32,8,33,13,32,11,11,33,5,2,64,2,64,32,7,32,9,106,34,15,32,3,73,13,0,32,7,69,4,64,32,12,33,6,12,2,11,32,2,32,15,79,13,0,32,12,33,6,12,1,11,65,1,33,7,32,20,65,1,70,13,2,32,6,32,13,106,33,8,3,64,65,0,33,10,2,127,32,12,32,7,65,3,116,106,34,6,40,2,0,34,1,65,1,113,34,16,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,18,4,127,32,18,32,14,65,1,116,106,47,1,0,5,65,0,11,33,10,32,14,65,1,106,33,14,11,2,127,32,7,69,4,64,32,5,33,11,32,15,12,1,11,2,127,32,16,4,64,32,6,45,0,5,65,15,113,33,9,32,6,45,0,6,33,17,32,6,45,0,4,12,1,11,32,1,40,2,8,33,9,32,1,40,2,4,33,17,32,1,40,2,12,11,65,0,32,8,32,9,27,106,33,8,32,5,32,9,106,33,11,32,15,32,17,106,11,33,9,2,127,32,16,4,64,32,6,45,0,7,34,13,33,17,32,8,33,16,32,11,12,1,11,65,0,32,8,32,1,40,2,20,34,5,27,33,16,32,1,40,2,24,33,17,32,1,40,2,16,33,13,32,5,32,11,106,11,33,5,32,3,32,9,32,13,106,34,15,77,4,64,32,13,69,13,2,32,2,32,15,73,13,2,11,32,16,32,17,106,33,8,32,7,65,1,106,34,7,32,20,71,13,0,11,12,2,11,32,2,32,9,73,13,1,2,64,2,64,32,4,4,64,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,10,114,13,1,12,2,11,2,64,32,10,65,254,255,3,107,14,2,2,1,0,11,2,64,32,10,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,13,2,12,3,11,32,19,40,2,8,40,2,72,32,10,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,1,47,1,44,34,1,65,1,113,69,13,1,32,1,65,1,118,65,1,113,69,13,1,11,32,0,32,19,54,2,20,32,0,32,6,54,2,16,32,0,32,10,54,2,12,32,0,32,8,54,2,8,32,0,32,11,54,2,4,32,0,32,9,54,2,0,11,32,6,40,2,0,34,1,65,1,113,69,13,0,11,11,11,203,6,2,21,127,1,126,32,1,40,2,20,33,16,32,1,40,2,4,33,9,32,1,40,2,8,33,6,32,1,40,2,0,33,4,32,1,40,2,16,40,2,0,33,1,2,64,3,64,32,25,66,32,136,167,33,18,32,25,167,33,19,3,64,65,0,33,10,65,0,33,7,65,0,33,8,65,0,33,12,65,0,33,11,2,127,65,0,32,1,65,1,113,13,0,26,32,1,40,2,36,69,4,64,65,0,12,1,11,32,1,47,1,66,34,5,4,64,32,16,40,2,8,34,7,40,2,84,32,7,47,1,36,32,5,108,65,1,116,106,33,12,11,32,9,33,7,32,6,33,8,32,1,33,11,32,4,11,33,5,65,0,33,13,3,64,2,64,32,11,69,13,0,32,10,32,11,65,36,106,40,2,0,34,1,70,13,0,3,64,65,0,33,14,2,127,32,10,65,3,116,65,0,32,11,32,1,65,3,116,107,32,11,65,1,113,27,106,34,1,40,2,0,34,4,65,1,113,34,6,4,64,32,4,65,3,118,65,1,113,12,1,11,32,4,47,1,44,65,2,118,65,1,113,11,69,4,64,32,12,4,127,32,12,32,13,65,1,116,106,47,1,0,5,65,0,11,33,14,32,13,65,1,106,33,13,11,2,127,32,10,69,4,64,32,5,33,4,32,8,33,6,32,7,12,1,11,2,127,32,6,4,64,32,1,45,0,5,65,15,113,33,9,32,1,45,0,4,33,6,32,1,45,0,6,12,1,11,32,4,40,2,12,33,6,32,4,40,2,8,33,9,32,4,40,2,4,11,65,0,32,8,32,9,27,32,6,106,33,6,32,5,106,33,4,32,7,32,9,106,11,33,9,32,0,32,16,54,2,20,32,0,32,1,54,2,16,32,0,32,14,54,2,12,32,0,32,6,54,2,8,32,0,32,9,54,2,4,32,0,32,4,54,2,0,2,127,32,1,40,2,0,34,5,65,1,113,4,64,32,1,45,0,7,34,5,33,8,32,6,33,15,32,9,12,1,11,65,0,32,6,32,5,40,2,20,34,7,27,33,15,32,5,40,2,24,33,8,32,5,40,2,16,33,5,32,7,32,9,106,11,33,7,32,10,65,1,106,33,10,32,8,32,15,106,33,8,32,4,32,5,106,33,5,2,64,2,127,32,1,41,2,0,34,25,167,34,1,65,1,113,4,64,32,25,66,56,136,167,12,1,11,32,1,40,2,16,11,32,4,106,32,2,77,13,0,2,64,32,3,4,64,32,25,167,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,14,114,69,13,1,12,8,11,2,64,32,14,65,254,255,3,107,14,2,1,8,0,11,32,14,69,4,64,32,25,167,65,1,113,4,64,32,1,65,2,113,69,13,2,32,1,65,2,118,65,1,113,69,13,2,12,9,11,32,1,47,1,44,34,15,65,1,113,69,13,1,32,15,65,1,118,65,1,113,69,13,1,12,8,11,32,16,40,2,8,40,2,72,32,14,65,3,108,106,45,0,1,65,1,113,13,7,11,32,25,167,65,1,113,13,0,32,1,40,2,36,34,15,69,13,0,32,1,40,2,48,69,13,0,32,10,32,15,79,13,4,32,7,173,32,8,173,66,32,134,132,33,25,65,1,33,17,32,11,33,20,32,5,33,21,32,10,33,22,32,13,33,23,32,12,33,24,12,5,11,32,10,32,11,40,2,36,34,1,71,13,0,11,11,32,17,65,0,33,17,32,21,33,5,32,19,33,7,32,18,33,8,32,22,33,10,32,23,33,13,32,24,33,12,32,20,33,11,13,0,11,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,11,234,16,2,41,127,2,126,35,0,65,192,1,107,34,3,36,0,32,3,32,1,40,2,16,34,39,41,2,0,34,44,55,3,136,1,32,44,66,56,136,33,45,32,44,167,34,4,65,1,113,4,127,32,45,167,32,44,66,48,136,167,65,255,1,113,106,5,32,4,40,2,16,32,4,40,2,4,106,11,33,40,32,4,65,1,113,4,127,32,45,167,5,32,4,40,2,16,11,33,17,32,1,40,2,16,33,5,2,127,32,1,40,2,20,34,8,40,2,0,34,9,65,1,113,4,64,32,8,45,0,5,65,15,113,33,6,32,8,45,0,6,33,10,32,8,45,0,4,12,1,11,32,9,40,2,8,33,6,32,9,40,2,4,33,10,32,9,40,2,12,11,33,4,32,1,40,2,0,33,9,32,3,32,8,54,2,188,1,32,3,32,8,54,2,184,1,32,3,65,0,54,2,180,1,32,3,32,4,54,2,176,1,32,3,32,6,54,2,172,1,32,3,32,10,54,2,168,1,2,64,2,64,2,64,32,5,32,8,70,13,0,32,3,32,3,41,2,176,1,55,3,112,32,3,32,3,41,2,184,1,55,3,120,32,3,32,3,41,2,168,1,55,3,104,32,3,32,1,41,2,8,55,3,88,32,3,32,1,41,2,16,55,3,96,32,3,32,1,41,2,0,55,3,80,32,3,65,144,1,106,32,3,65,232,0,106,32,3,65,208,0,106,16,24,2,127,2,64,32,3,40,2,160,1,34,12,32,5,70,13,0,32,12,69,13,0,3,64,2,64,32,3,32,3,41,2,160,1,34,44,55,3,184,1,32,3,32,3,41,2,152,1,34,45,55,3,176,1,32,3,65,64,107,32,45,55,3,0,32,3,32,44,55,3,72,32,3,32,3,41,2,144,1,34,44,55,3,168,1,32,3,32,44,55,3,56,32,3,32,1,41,2,8,55,3,40,32,3,32,1,41,2,16,55,3,48,32,3,32,1,41,2,0,55,3,32,32,3,65,144,1,106,32,3,65,56,106,32,3,65,32,106,16,24,32,3,40,2,160,1,34,4,32,5,70,13,0,32,4,13,1,11,11,32,3,40,2,184,1,34,8,69,13,2,32,3,40,2,176,1,33,4,32,3,40,2,172,1,33,6,32,3,40,2,168,1,33,10,32,3,40,2,188,1,12,1,11,32,8,11,33,12,32,9,32,17,106,33,27,65,48,65,52,32,2,27,33,41,65,0,33,17,3,64,2,64,2,64,32,8,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,65,0,33,7,65,0,33,18,32,1,47,1,66,34,5,4,64,32,12,40,2,8,34,9,40,2,84,32,9,47,1,36,32,5,108,65,1,116,106,33,18,11,2,64,2,64,32,1,40,2,36,34,35,69,13,0,2,127,32,1,32,35,65,3,116,107,34,8,40,2,0,34,1,65,1,113,34,5,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,7,69,33,19,65,0,33,11,2,64,32,7,13,0,32,18,69,13,0,32,18,47,1,0,33,11,65,1,33,19,11,2,127,32,5,69,4,64,65,0,32,4,32,1,40,2,20,34,5,27,33,14,32,5,32,6,106,33,36,32,1,40,2,16,33,7,32,1,40,2,24,12,1,11,32,6,33,36,32,4,33,14,32,8,45,0,7,34,7,11,33,15,32,8,32,39,70,4,64,65,0,33,7,12,1,11,2,64,2,64,32,7,32,10,106,34,32,32,27,75,13,0,32,27,32,32,70,4,64,32,40,13,1,32,3,32,8,41,2,0,34,44,55,3,24,32,3,32,44,55,3,128,1,32,3,32,3,41,3,136,1,55,3,16,32,3,65,24,106,32,3,65,16,106,16,58,13,1,32,8,40,2,0,33,1,11,2,64,2,64,2,64,32,2,69,4,64,65,1,33,7,32,8,33,5,32,12,33,9,2,64,32,11,65,254,255,3,107,14,2,2,4,0,11,32,11,69,4,64,2,127,32,1,65,1,113,69,4,64,32,1,47,1,44,34,1,65,1,113,69,13,4,32,1,65,1,118,65,1,113,12,1,11,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,11,69,13,2,12,3,11,32,12,40,2,8,40,2,72,32,11,65,3,108,106,45,0,1,65,1,113,13,2,12,1,11,65,1,33,7,2,127,32,1,65,1,113,69,4,64,32,1,47,1,44,65,1,113,12,1,11,32,1,65,1,118,65,1,113,11,32,11,114,13,1,11,2,64,32,8,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,65,0,33,7,32,1,32,41,106,40,2,0,13,1,65,0,33,10,65,0,33,6,65,0,33,4,65,0,33,11,65,0,33,5,65,0,33,9,12,2,11,65,0,33,10,65,0,33,6,65,0,33,4,65,0,33,11,65,0,33,5,65,0,33,9,65,0,33,7,12,1,11,32,8,33,5,32,12,33,9,11,65,1,33,37,32,35,65,1,70,13,3,32,14,32,15,106,33,16,3,64,32,7,33,20,32,9,33,21,32,5,33,14,32,11,33,22,32,4,33,23,32,6,33,24,32,10,33,25,65,0,33,15,2,127,32,8,32,37,65,3,116,106,34,13,40,2,0,34,1,65,1,113,34,6,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,18,4,127,32,18,32,19,65,1,116,106,47,1,0,5,65,0,11,33,15,32,19,65,1,106,33,19,11,2,127,32,6,4,64,32,13,45,0,4,33,10,32,13,45,0,6,33,7,32,13,45,0,5,65,15,113,12,1,11,32,1,40,2,12,33,10,32,1,40,2,4,33,7,32,1,40,2,8,11,33,4,65,0,32,16,32,4,27,32,10,106,33,16,32,4,32,36,106,33,26,2,127,32,6,4,64,32,13,45,0,7,34,6,33,42,32,16,33,43,32,26,12,1,11,65,0,32,16,32,1,40,2,20,34,4,27,33,43,32,1,40,2,24,33,42,32,1,40,2,16,33,6,32,4,32,26,106,11,33,36,32,13,32,39,70,4,64,32,20,33,7,32,21,33,9,32,14,33,5,32,22,33,11,32,23,33,4,32,24,33,6,32,25,33,10,12,5,11,2,64,32,6,32,7,32,32,106,34,38,106,34,32,32,27,75,13,0,32,27,32,32,70,4,64,32,40,13,1,32,3,32,13,41,2,0,34,44,55,3,8,32,3,32,44,55,3,128,1,32,3,32,3,41,3,136,1,55,3,0,32,3,65,8,106,32,3,16,58,13,1,32,13,40,2,0,33,1,11,2,64,2,64,2,64,2,64,32,2,4,64,65,1,33,7,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,15,114,69,13,1,12,2,11,65,1,33,7,32,38,33,10,32,26,33,6,32,16,33,4,32,15,33,11,32,13,33,5,32,12,33,9,2,64,32,15,65,254,255,3,107,14,2,1,4,0,11,2,64,32,15,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,2,32,1,65,2,118,65,1,113,69,13,2,12,3,11,32,12,40,2,8,40,2,72,32,15,65,3,108,106,45,0,1,65,1,113,69,13,1,12,2,11,32,1,47,1,44,34,1,65,1,113,69,13,0,32,1,65,1,118,65,1,113,13,1,11,32,13,40,2,0,34,1,65,1,113,13,1,32,1,40,2,36,69,13,1,32,25,33,10,32,24,33,6,32,23,33,4,32,22,33,11,32,14,33,5,32,21,33,9,32,20,33,7,32,1,32,41,106,40,2,0,69,13,2,65,0,33,7,11,32,38,33,10,32,26,33,6,32,16,33,4,32,15,33,11,32,13,33,5,32,12,33,9,12,1,11,32,25,33,10,32,24,33,6,32,23,33,4,32,22,33,11,32,14,33,5,32,21,33,9,32,20,33,7,11,32,42,32,43,106,33,16,32,37,65,1,106,34,37,32,35,71,13,1,12,5,11,11,32,38,33,10,32,16,33,4,32,26,33,6,32,13,33,8,12,1,11,65,0,33,25,65,0,33,24,65,0,33,23,65,0,33,22,65,0,33,14,65,0,33,21,65,0,33,20,11,32,14,69,13,3,32,25,33,31,32,24,33,30,32,23,33,29,32,22,33,34,32,14,33,28,32,21,33,17,32,20,33,33,12,3,11,65,0,33,9,65,0,33,5,65,0,33,11,65,0,33,4,65,0,33,6,65,0,33,10,11,32,7,65,1,113,4,64,32,0,32,9,54,2,20,32,0,32,5,54,2,16,32,0,32,11,54,2,12,32,0,32,4,54,2,8,32,0,32,6,54,2,4,32,0,32,10,54,2,0,12,6,11,32,5,69,13,0,32,9,33,12,32,5,33,8,12,1,11,32,33,65,1,113,13,3,65,0,33,34,32,17,33,12,32,28,33,8,32,29,33,4,32,30,33,6,32,31,33,10,65,0,33,31,65,0,33,30,65,0,33,29,65,0,33,28,65,0,33,17,65,0,33,33,11,32,8,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,1,11,32,0,32,17,54,2,20,32,0,32,28,54,2,16,32,0,32,34,54,2,12,32,0,32,29,54,2,8,32,0,32,30,54,2,4,32,0,32,31,54,2,0,11,32,3,65,192,1,106,36,0,11,216,10,2,34,127,2,126,35,0,65,144,1,107,34,3,36,0,2,127,32,1,40,2,16,41,2,0,34,37,167,34,30,65,1,113,4,64,32,37,66,56,136,167,12,1,11,32,30,40,2,16,11,33,31,32,1,40,2,16,33,6,2,127,32,1,40,2,20,34,4,40,2,0,34,5,65,1,113,4,64,32,4,45,0,4,33,11,32,4,45,0,6,33,12,32,4,45,0,5,65,15,113,12,1,11,32,5,40,2,12,33,11,32,5,40,2,4,33,12,32,5,40,2,8,11,33,15,32,1,40,2,0,33,23,32,3,32,4,54,2,140,1,32,3,32,4,54,2,136,1,32,3,65,0,54,2,132,1,32,3,32,11,54,2,128,1,32,3,32,15,54,2,124,32,3,32,12,54,2,120,2,64,2,64,2,64,32,4,32,6,70,13,0,32,3,32,3,41,2,128,1,55,3,80,32,3,32,3,41,2,136,1,55,3,88,32,3,32,3,41,2,120,55,3,72,32,3,32,1,41,2,8,55,3,56,32,3,65,64,107,32,1,41,2,16,55,3,0,32,3,32,1,41,2,0,55,3,48,32,3,65,224,0,106,32,3,65,200,0,106,32,3,65,48,106,16,24,2,127,2,64,32,3,40,2,112,34,5,32,6,70,13,0,32,5,69,13,0,3,64,2,64,32,3,32,3,41,2,112,34,37,55,3,136,1,32,3,32,3,41,2,104,34,38,55,3,128,1,32,3,32,38,55,3,32,32,3,32,37,55,3,40,32,3,32,3,41,2,96,34,37,55,3,120,32,3,32,37,55,3,24,32,3,32,1,41,2,8,55,3,8,32,3,32,1,41,2,16,55,3,16,32,3,32,1,41,2,0,55,3,0,32,3,65,224,0,106,32,3,65,24,106,32,3,16,24,32,3,40,2,112,34,5,32,6,70,13,0,32,5,13,1,11,11,32,3,40,2,136,1,34,4,69,13,2,32,3,40,2,128,1,33,11,32,3,40,2,124,33,15,32,3,40,2,120,33,12,32,3,40,2,140,1,12,1,11,32,4,11,33,19,32,23,32,31,106,33,33,65,48,65,52,32,2,27,33,34,3,64,32,19,33,18,65,0,33,13,65,0,33,16,65,0,33,14,65,0,33,20,2,64,2,127,2,64,2,64,2,64,2,127,65,0,32,4,40,2,0,34,6,65,1,113,13,0,26,32,6,40,2,36,69,4,64,65,0,12,1,11,32,6,47,1,66,34,1,4,64,32,18,40,2,8,34,5,40,2,84,32,5,47,1,36,32,1,108,65,1,116,106,33,20,11,32,12,33,13,32,15,33,16,32,11,33,14,32,6,11,34,1,4,64,65,0,33,21,65,0,32,1,32,1,40,2,36,34,35,65,3,116,107,32,1,65,1,113,27,33,36,65,0,33,1,65,0,33,19,65,0,33,4,65,0,33,11,65,0,33,15,65,0,33,12,2,64,3,64,32,1,32,35,70,13,1,65,0,33,17,2,127,32,36,32,1,65,3,116,106,34,10,40,2,0,34,7,65,1,113,34,22,4,64,32,7,65,3,118,65,1,113,12,1,11,32,7,47,1,44,65,2,118,65,1,113,11,69,4,64,32,20,4,127,32,20,32,21,65,1,116,106,47,1,0,5,65,0,11,33,17,32,21,65,1,106,33,21,11,2,127,32,1,69,4,64,32,14,33,6,32,16,33,5,32,13,12,1,11,2,127,32,22,4,64,32,10,45,0,5,65,15,113,33,8,32,10,45,0,6,33,9,32,10,45,0,4,12,1,11,32,7,40,2,8,33,8,32,7,40,2,4,33,9,32,7,40,2,12,11,65,0,32,14,32,8,27,106,33,6,32,8,32,16,106,33,5,32,9,32,13,106,11,33,8,2,127,32,22,4,64,32,10,45,0,7,34,13,33,14,32,6,33,9,32,5,12,1,11,65,0,32,6,32,7,40,2,20,34,16,27,33,9,32,7,40,2,24,33,14,32,7,40,2,16,33,13,32,5,32,16,106,11,33,16,32,1,65,1,106,33,1,32,9,32,14,106,33,14,32,8,32,13,106,34,13,32,33,77,13,0,32,8,32,23,77,32,8,32,23,73,32,31,27,65,1,70,4,64,32,7,32,30,70,13,1,32,18,33,19,32,10,33,4,32,6,33,11,32,5,33,15,32,8,33,12,12,1,11,2,64,32,2,4,64,32,22,4,127,32,7,65,1,118,65,1,113,5,32,7,47,1,44,65,1,113,11,32,17,114,69,13,1,12,7,11,2,64,32,17,65,254,255,3,107,14,2,1,7,0,11,32,17,69,4,64,32,22,4,64,32,7,65,2,113,69,13,2,32,7,65,2,118,65,1,113,13,8,12,2,11,32,7,47,1,44,34,9,65,1,113,69,13,1,32,9,65,1,118,65,1,113,13,7,12,1,11,32,18,40,2,8,40,2,72,32,17,65,3,108,106,45,0,1,65,1,113,13,6,11,32,10,40,2,0,34,9,65,1,113,13,0,32,9,40,2,36,69,13,0,32,9,32,34,106,40,2,0,69,13,0,11,32,4,13,2,32,10,33,4,32,18,33,19,32,6,33,11,32,5,33,15,32,8,33,12,12,6,11,32,4,13,5,11,32,24,13,1,65,0,33,24,32,26,33,4,32,25,33,19,32,27,33,11,32,28,33,15,32,29,33,12,12,4,11,65,0,12,2,11,32,0,32,25,54,2,20,32,0,32,26,54,2,16,32,0,32,32,54,2,12,32,0,32,27,54,2,8,32,0,32,28,54,2,4,32,0,32,29,54,2,0,12,6,11,32,4,69,13,4,65,1,11,33,24,32,8,33,29,32,5,33,28,32,6,33,27,32,17,33,32,32,10,33,26,32,18,33,25,11,32,4,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,1,11,32,0,32,18,54,2,20,32,0,32,10,54,2,16,32,0,32,17,54,2,12,32,0,32,6,54,2,8,32,0,32,5,54,2,4,32,0,32,8,54,2,0,11,32,3,65,144,1,106,36,0,11,46,1,1,127,35,0,65,16,107,34,1,32,0,40,2,16,40,2,0,34,0,54,2,12,32,1,65,12,106,65,2,114,32,0,65,42,106,32,0,65,1,113,27,47,1,0,11,50,2,1,127,1,126,32,0,40,2,0,33,1,32,0,40,2,16,41,2,0,34,2,167,34,0,65,1,113,4,64,32,2,66,56,136,167,32,1,106,15,11,32,0,40,2,16,32,1,106,11,206,11,1,7,127,32,0,32,1,106,33,5,2,64,2,64,32,0,40,2,4,34,3,65,1,113,13,0,32,3,65,2,113,69,13,1,32,0,40,2,0,34,3,32,1,106,33,1,2,64,2,64,2,64,32,0,32,3,107,34,0,35,1,65,164,215,0,106,34,6,40,2,20,71,4,64,32,0,40,2,12,33,2,32,3,65,255,1,77,4,64,32,2,32,0,40,2,8,34,4,71,13,2,32,6,34,2,32,2,40,2,0,65,126,32,3,65,3,118,119,113,54,2,0,12,5,11,32,0,40,2,24,33,7,32,0,32,2,71,4,64,32,0,40,2,8,34,3,32,2,54,2,12,32,2,32,3,54,2,8,12,4,11,32,0,40,2,20,34,4,4,127,32,0,65,20,106,5,32,0,40,2,16,34,4,69,13,3,32,0,65,16,106,11,33,3,3,64,32,3,33,6,32,4,34,2,65,20,106,33,3,32,2,40,2,20,34,4,13,0,32,2,65,16,106,33,3,32,2,40,2,16,34,4,13,0,11,32,6,65,0,54,2,0,12,3,11,32,5,40,2,4,34,3,65,3,113,65,3,71,13,3,35,1,65,164,215,0,106,32,1,54,2,8,32,5,32,3,65,126,113,54,2,4,32,0,32,1,65,1,114,54,2,4,32,5,32,1,54,2,0,15,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,2,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,0,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,0,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,2,32,2,40,2,4,65,126,32,3,119,113,54,2,4,12,2,11,2,64,32,0,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,0,40,2,16,34,3,4,64,32,2,32,3,54,2,16,32,3,32,2,54,2,24,11,32,0,40,2,20,34,3,69,13,0,32,2,32,3,54,2,20,32,3,32,2,54,2,24,11,2,64,2,64,2,64,2,64,32,5,40,2,4,34,3,65,2,113,69,4,64,35,1,65,164,215,0,106,34,2,40,2,24,32,5,70,4,64,32,2,34,3,32,0,54,2,24,32,3,32,3,40,2,12,32,1,106,34,1,54,2,12,32,0,32,1,65,1,114,54,2,4,32,0,32,3,40,2,20,71,13,6,32,3,34,0,65,0,54,2,8,32,0,65,0,54,2,20,15,11,35,1,65,164,215,0,106,34,2,40,2,20,34,8,32,5,70,4,64,32,2,34,3,32,0,54,2,20,32,3,32,3,40,2,8,32,1,106,34,1,54,2,8,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,15,11,32,3,65,120,113,32,1,106,33,1,32,5,40,2,12,33,2,32,3,65,255,1,77,4,64,32,5,40,2,8,34,4,32,2,70,4,64,35,1,65,164,215,0,106,34,2,32,2,40,2,0,65,126,32,3,65,3,118,119,113,54,2,0,12,5,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,4,11,32,5,40,2,24,33,7,32,2,32,5,71,4,64,32,5,40,2,8,34,3,32,2,54,2,12,32,2,32,3,54,2,8,12,3,11,32,5,40,2,20,34,4,4,127,32,5,65,20,106,5,32,5,40,2,16,34,4,69,13,2,32,5,65,16,106,11,33,3,3,64,32,3,33,6,32,4,34,2,65,20,106,33,3,32,2,40,2,20,34,4,13,0,32,2,65,16,106,33,3,32,2,40,2,16,34,4,13,0,11,32,6,65,0,54,2,0,12,2,11,32,5,32,3,65,126,113,54,2,4,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,12,3,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,5,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,5,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,2,32,2,40,2,4,65,126,32,3,119,113,54,2,4,12,2,11,2,64,32,5,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,5,40,2,16,34,3,4,64,32,2,32,3,54,2,16,32,3,32,2,54,2,24,11,32,5,40,2,20,34,3,69,13,0,32,2,32,3,54,2,20,32,3,32,2,54,2,24,11,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,32,0,32,8,71,13,0,35,1,65,164,215,0,106,32,1,54,2,8,15,11,32,1,65,255,1,77,4,64,35,1,65,164,215,0,106,34,4,34,2,32,1,65,248,1,113,106,65,40,106,33,3,2,127,32,2,40,2,0,34,2,65,1,32,1,65,3,118,116,34,1,113,69,4,64,32,4,32,1,32,2,114,54,2,0,32,3,12,1,11,32,3,40,2,8,11,33,1,32,3,32,0,54,2,8,32,1,32,0,54,2,12,32,0,32,3,54,2,12,32,0,32,1,54,2,8,15,11,65,31,33,2,32,1,65,255,255,255,7,77,4,64,32,1,65,38,32,1,65,8,118,103,34,3,107,118,65,1,113,32,3,65,1,116,107,65,62,106,33,2,11,32,0,32,2,54,2,28,32,0,66,0,55,2,16,35,1,65,164,215,0,106,34,7,34,4,32,2,65,2,116,106,34,3,65,176,2,106,33,6,2,64,2,64,32,4,40,2,4,34,4,65,1,32,2,116,34,5,113,69,4,64,32,7,32,4,32,5,114,54,2,4,32,3,32,0,54,2,176,2,32,0,32,6,54,2,24,12,1,11,32,1,65,25,32,2,65,1,118,107,65,0,32,2,65,31,71,27,116,33,2,32,3,40,2,176,2,33,3,3,64,32,3,34,4,40,2,4,65,120,113,32,1,70,13,2,32,2,65,29,118,33,3,32,2,65,1,116,33,2,32,4,32,3,65,4,113,106,34,6,40,2,16,34,3,13,0,11,32,6,32,0,54,2,16,32,0,32,4,54,2,24,11,32,0,32,0,54,2,12,32,0,32,0,54,2,8,15,11,32,4,40,2,8,34,1,32,0,54,2,12,32,4,32,0,54,2,8,32,0,65,0,54,2,24,32,0,32,4,54,2,12,32,0,32,1,54,2,8,11,11,170,8,1,11,127,32,0,69,4,64,32,1,16,34,15,11,32,1,65,64,79,4,64,35,1,65,216,213,0,106,65,48,54,2,0,65,0,15,11,2,127,65,16,32,1,65,11,106,65,120,113,32,1,65,11,73,27,33,5,32,0,65,8,107,34,4,40,2,4,34,9,65,120,113,33,8,2,64,32,9,65,3,113,69,4,64,32,5,65,128,2,73,13,1,32,5,65,4,106,32,8,77,4,64,32,4,33,2,32,8,32,5,107,35,1,65,252,218,0,106,40,2,8,65,1,116,77,13,2,11,65,0,12,2,11,32,4,32,8,106,33,6,2,64,32,5,32,8,77,4,64,32,8,32,5,107,34,7,65,16,73,13,1,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,2,32,7,65,3,114,54,2,4,32,6,32,6,40,2,4,65,1,114,54,2,4,32,2,32,7,16,92,12,1,11,32,6,40,2,4,33,7,35,1,65,164,215,0,106,34,3,34,2,40,2,24,32,6,70,4,64,65,0,32,5,32,2,40,2,12,32,8,106,34,2,79,13,3,26,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,8,32,2,32,5,107,34,7,65,1,114,54,2,4,32,3,34,2,32,7,54,2,12,32,2,32,8,54,2,24,12,1,11,35,1,65,164,215,0,106,34,2,40,2,20,32,6,70,4,64,65,0,32,5,32,2,40,2,8,32,8,106,34,2,75,13,3,26,2,64,32,2,32,5,107,34,3,65,16,79,4,64,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,7,32,3,65,1,114,54,2,4,32,2,32,4,106,34,2,32,3,54,2,0,32,2,32,2,40,2,4,65,126,113,54,2,4,12,1,11,32,4,32,9,65,1,113,32,2,114,65,2,114,54,2,4,32,2,32,4,106,34,2,32,2,40,2,4,65,1,114,54,2,4,65,0,33,3,65,0,33,7,11,35,1,65,164,215,0,106,34,2,32,7,54,2,20,32,2,32,3,54,2,8,12,1,11,65,0,33,2,32,7,65,2,113,13,1,32,7,65,120,113,32,8,106,34,11,32,5,73,13,1,32,11,32,5,107,33,12,32,6,40,2,12,33,3,2,64,32,7,65,255,1,77,4,64,32,6,40,2,8,34,2,32,3,70,4,64,35,1,65,164,215,0,106,34,2,32,2,40,2,0,65,126,32,7,65,3,118,119,113,54,2,0,12,2,11,32,2,32,3,54,2,12,32,3,32,2,54,2,8,12,1,11,32,6,40,2,24,33,10,2,64,32,3,32,6,71,4,64,32,6,40,2,8,34,2,32,3,54,2,12,32,3,32,2,54,2,8,12,1,11,2,64,32,6,40,2,20,34,2,4,127,32,6,65,20,106,5,32,6,40,2,16,34,2,69,13,1,32,6,65,16,106,11,33,8,3,64,32,8,33,7,32,2,34,3,65,20,106,33,8,32,2,40,2,20,34,2,13,0,32,3,65,16,106,33,8,32,3,40,2,16,34,2,13,0,11,32,7,65,0,54,2,0,12,1,11,65,0,33,3,11,32,10,69,13,0,2,64,35,1,65,164,215,0,106,34,8,32,6,40,2,28,34,7,65,2,116,106,34,2,40,2,176,2,32,6,70,4,64,32,2,32,3,54,2,176,2,32,3,13,1,32,8,32,8,40,2,4,65,126,32,7,119,113,54,2,4,12,2,11,2,64,32,6,32,10,40,2,16,70,4,64,32,10,32,3,54,2,16,12,1,11,32,10,32,3,54,2,20,11,32,3,69,13,1,11,32,3,32,10,54,2,24,32,6,40,2,16,34,2,4,64,32,3,32,2,54,2,16,32,2,32,3,54,2,24,11,32,6,40,2,20,34,2,69,13,0,32,3,32,2,54,2,20,32,2,32,3,54,2,24,11,32,12,65,15,77,4,64,32,4,32,9,65,1,113,32,11,114,65,2,114,54,2,4,32,4,32,11,106,34,2,32,2,40,2,4,65,1,114,54,2,4,12,1,11,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,7,32,12,65,3,114,54,2,4,32,4,32,11,106,34,2,32,2,40,2,4,65,1,114,54,2,4,32,7,32,12,16,92,11,32,4,33,2,11,32,2,11,34,2,4,64,32,2,65,8,106,15,11,32,1,16,34,34,4,69,4,64,65,0,15,11,32,4,32,0,65,124,65,120,32,0,65,4,107,40,2,0,34,2,65,3,113,27,32,2,65,120,113,106,34,2,32,1,32,1,32,2,75,27,16,36,26,32,0,16,50,32,4,11,159,2,0,32,0,69,4,64,65,0,15,11,2,127,2,64,32,0,4,127,32,1,65,255,0,77,13,1,2,64,35,1,65,148,214,0,106,40,2,96,40,2,0,69,4,64,32,1,65,128,127,113,65,128,191,3,70,13,3,12,1,11,32,1,65,255,15,77,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,1,32,0,32,1,65,6,118,65,192,1,114,58,0,0,65,2,12,4,11,32,1,65,128,64,113,65,128,192,3,71,32,1,65,128,176,3,79,113,69,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,2,32,0,32,1,65,12,118,65,224,1,114,58,0,0,32,0,32,1,65,6,118,65,63,113,65,128,1,114,58,0,1,65,3,12,4,11,32,1,65,128,128,4,107,65,255,255,63,77,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,3,32,0,32,1,65,18,118,65,240,1,114,58,0,0,32,0,32,1,65,6,118,65,63,113,65,128,1,114,58,0,2,32,0,32,1,65,12,118,65,63,113,65,128,1,114,58,0,1,65,4,12,4,11,11,35,1,65,216,213,0,106,65,25,54,2,0,65,127,5,65,1,11,12,1,11,32,0,32,1,58,0,0,65,1,11,11,196,3,1,4,127,35,0,65,160,1,107,34,4,36,0,32,4,32,0,32,4,65,158,1,106,32,1,27,34,6,54,2,148,1,32,4,32,1,65,1,107,34,0,65,0,32,0,32,1,77,27,54,2,152,1,32,4,65,0,65,144,1,252,11,0,32,4,65,127,54,2,76,32,4,35,2,65,29,106,54,2,36,32,4,65,127,54,2,80,32,4,32,4,65,159,1,106,54,2,44,32,4,32,4,65,148,1,106,54,2,84,32,6,65,0,58,0,0,35,0,65,208,1,107,34,5,36,0,32,5,32,3,54,2,204,1,32,5,65,160,1,106,34,0,65,0,65,40,252,11,0,32,5,32,5,40,2,204,1,54,2,200,1,2,64,65,0,32,2,32,5,65,200,1,106,32,5,65,208,0,106,32,0,35,2,34,0,65,27,106,34,6,32,0,65,28,106,34,0,16,98,65,0,72,4,64,65,127,33,0,12,1,11,32,4,40,2,76,65,0,72,32,4,32,4,40,2,0,34,1,65,95,113,54,2,0,2,127,2,64,2,64,32,4,40,2,48,69,4,64,32,4,65,208,0,54,2,48,32,4,65,0,54,2,28,32,4,66,0,55,3,16,32,4,40,2,44,33,7,32,4,32,5,54,2,44,12,1,11,32,4,40,2,16,13,1,11,65,127,32,4,16,66,13,1,26,11,32,4,32,2,32,5,65,200,1,106,32,5,65,208,0,106,32,5,65,160,1,106,32,6,32,0,16,98,11,33,2,32,7,4,64,32,4,65,0,65,0,32,4,40,2,36,17,4,0,26,32,4,65,0,54,2,48,32,4,32,7,54,2,44,32,4,65,0,54,2,28,32,4,40,2,20,33,0,32,4,66,0,55,3,16,32,2,65,127,32,0,27,33,2,11,32,4,32,4,40,2,0,34,0,32,1,65,32,113,114,54,2,0,65,127,32,2,32,0,65,32,113,27,33,0,13,0,11,32,5,65,208,1,106,36,0,32,4,65,160,1,106,36,0,32,0,11,188,2,0,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,1,65,9,107,14,18,0,8,9,10,8,9,1,2,3,4,10,9,10,10,8,9,5,6,7,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,40,2,0,54,2,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,50,1,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,51,1,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,48,0,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,49,0,0,55,3,0,15,11,32,2,32,2,40,2,0,65,7,106,65,120,113,34,1,65,8,106,54,2,0,32,0,32,1,43,3,0,57,3,0,15,11,32,0,32,2,32,3,17,5,0,11,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,52,2,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,53,2,0,55,3,0,15,11,32,2,32,2,40,2,0,65,7,106,65,120,113,34,1,65,8,106,54,2,0,32,0,32,1,41,3,0,55,3,0,11,111,1,5,127,32,0,40,2,0,34,3,44,0,0,65,48,107,34,1,65,9,75,4,64,65,0,15,11,3,64,65,127,33,4,32,2,65,204,153,179,230,0,77,4,64,65,127,32,1,32,2,65,10,108,34,5,106,32,1,32,5,65,255,255,255,255,7,115,75,27,33,4,11,32,0,32,3,65,1,106,34,5,54,2,0,32,3,44,0,1,32,4,33,2,32,5,33,3,65,48,107,34,1,65,10,73,13,0,11,32,2,11,156,19,2,19,127,2,126,35,0,65,64,106,34,8,36,0,32,8,32,1,54,2,60,32,8,65,41,106,33,23,32,8,65,39,106,33,24,32,8,65,40,106,33,18,2,64,2,64,2,64,2,64,3,64,65,0,33,7,3,64,32,1,33,13,32,7,32,14,65,255,255,255,255,7,115,74,13,2,32,7,32,14,106,33,14,2,64,2,64,2,64,2,64,2,64,32,1,34,7,45,0,0,34,11,4,64,3,64,2,64,2,64,32,11,65,255,1,113,34,1,69,4,64,32,7,33,1,12,1,11,32,1,65,37,71,13,1,32,7,33,11,3,64,32,11,45,0,1,65,37,71,4,64,32,11,33,1,12,2,11,32,7,65,1,106,33,7,32,11,45,0,2,32,11,65,2,106,34,1,33,11,65,37,70,13,0,11,11,32,7,32,13,107,34,7,32,14,65,255,255,255,255,7,115,34,25,74,13,10,32,0,4,64,32,0,32,13,32,7,16,14,11,32,7,13,8,32,8,32,1,54,2,60,32,1,65,1,106,33,7,65,127,33,16,2,64,32,1,44,0,1,65,48,107,34,9,65,9,75,13,0,32,1,45,0,2,65,36,71,13,0,32,1,65,3,106,33,7,65,1,33,19,32,9,33,16,11,32,8,32,7,54,2,60,65,0,33,12,2,64,32,7,44,0,0,34,11,65,32,107,34,1,65,31,75,4,64,32,7,33,9,12,1,11,32,7,33,9,65,1,32,1,116,34,1,65,137,209,4,113,69,13,0,3,64,32,8,32,7,65,1,106,34,9,54,2,60,32,1,32,12,114,33,12,32,7,44,0,1,34,11,65,32,107,34,1,65,32,79,13,1,32,9,33,7,65,1,32,1,116,34,1,65,137,209,4,113,13,0,11,11,2,64,32,11,65,42,70,4,64,2,127,2,64,32,9,44,0,1,65,48,107,34,1,65,9,75,13,0,32,9,45,0,2,65,36,71,13,0,2,127,32,0,69,4,64,32,4,32,1,65,2,116,106,65,10,54,2,0,65,0,12,1,11,32,3,32,1,65,3,116,106,40,2,0,11,33,15,32,9,65,3,106,33,1,65,1,12,1,11,32,19,13,6,32,9,65,1,106,33,1,32,0,69,4,64,32,8,32,1,54,2,60,65,0,33,19,65,0,33,15,12,3,11,32,2,32,2,40,2,0,34,7,65,4,106,54,2,0,32,7,40,2,0,33,15,65,0,11,33,19,32,8,32,1,54,2,60,32,15,65,0,78,13,1,65,0,32,15,107,33,15,32,12,65,128,192,0,114,33,12,12,1,11,32,8,65,60,106,16,97,34,15,65,0,72,13,11,32,8,40,2,60,33,1,11,65,0,33,7,65,127,33,10,2,127,65,0,32,1,45,0,0,65,46,71,13,0,26,32,1,45,0,1,65,42,70,4,64,2,127,2,64,32,1,44,0,2,65,48,107,34,9,65,9,75,13,0,32,1,45,0,3,65,36,71,13,0,32,1,65,4,106,33,1,2,127,32,0,69,4,64,32,4,32,9,65,2,116,106,65,10,54,2,0,65,0,12,1,11,32,3,32,9,65,3,116,106,40,2,0,11,12,1,11,32,19,13,6,32,1,65,2,106,33,1,65,0,32,0,69,13,0,26,32,2,32,2,40,2,0,34,9,65,4,106,54,2,0,32,9,40,2,0,11,33,10,32,8,32,1,54,2,60,32,10,65,0,78,12,1,11,32,8,32,1,65,1,106,54,2,60,32,8,65,60,106,16,97,33,10,32,8,40,2,60,33,1,65,1,11,33,20,3,64,32,7,33,21,65,28,33,9,32,1,34,22,44,0,0,34,7,65,251,0,107,65,70,73,13,12,32,1,65,1,106,33,1,35,1,32,21,65,58,108,106,32,7,106,65,207,43,106,45,0,0,34,7,65,1,107,65,255,1,113,65,8,73,13,0,11,32,8,32,1,54,2,60,2,64,32,7,65,27,71,4,64,32,7,69,13,13,32,16,65,0,78,4,64,32,0,69,4,64,32,4,32,16,65,2,116,106,32,7,54,2,0,12,13,11,32,8,32,3,32,16,65,3,116,106,41,3,0,55,3,48,12,2,11,32,0,69,13,9,32,8,65,48,106,32,7,32,2,32,6,16,96,12,1,11,32,16,65,0,78,13,12,65,0,33,7,32,0,69,13,9,11,32,0,45,0,0,65,32,113,13,12,32,12,65,255,255,123,113,34,11,32,12,32,12,65,128,192,0,113,27,33,12,35,1,33,17,65,0,33,16,32,18,33,9,2,64,2,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,22,45,0,0,34,22,192,34,7,65,83,113,32,7,32,22,65,15,113,65,3,70,27,32,7,32,21,27,34,7,65,216,0,107,14,33,4,23,23,23,23,23,23,23,23,16,23,9,6,16,16,16,23,6,23,23,23,23,2,5,3,23,23,10,23,1,23,23,4,0,11,2,64,32,7,65,193,0,107,14,7,16,23,11,23,16,16,16,0,11,32,7,65,211,0,70,13,11,12,22,11,32,8,41,3,48,33,26,35,1,12,5,11,65,0,33,7,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,21,14,8,0,1,2,3,4,29,5,6,29,11,32,8,40,2,48,32,14,54,2,0,12,28,11,32,8,40,2,48,32,14,54,2,0,12,27,11,32,8,40,2,48,32,14,172,55,3,0,12,26,11,32,8,40,2,48,32,14,59,1,0,12,25,11,32,8,40,2,48,32,14,58,0,0,12,24,11,32,8,40,2,48,32,14,54,2,0,12,23,11,32,8,40,2,48,32,14,172,55,3,0,12,22,11,65,8,32,10,32,10,65,8,77,27,33,10,32,12,65,8,114,33,12,65,248,0,33,7,11,35,1,33,17,32,18,33,1,32,7,65,32,113,33,13,32,8,41,3,48,34,26,34,27,66,0,82,4,64,3,64,32,1,65,1,107,34,1,35,1,65,224,47,106,32,27,167,65,15,113,106,45,0,0,32,13,114,58,0,0,32,27,66,15,86,32,27,66,4,136,33,27,13,0,11,11,32,1,33,13,32,26,80,13,3,32,12,65,8,113,69,13,3,35,1,32,7,65,4,118,106,33,17,65,2,33,16,12,3,11,32,18,33,1,32,8,41,3,48,34,26,34,27,66,0,82,4,64,3,64,32,1,65,1,107,34,1,32,27,167,65,7,113,65,48,114,58,0,0,32,27,66,7,86,32,27,66,3,136,33,27,13,0,11,11,32,1,33,13,32,12,65,8,113,69,4,64,35,1,33,17,12,3,11,32,10,32,23,32,13,107,34,1,32,1,32,10,72,27,33,10,35,1,33,17,12,2,11,32,8,41,3,48,34,26,66,0,83,4,64,32,8,66,0,32,26,125,34,26,55,3,48,65,1,33,16,35,1,12,1,11,32,12,65,128,16,113,4,64,65,1,33,16,35,1,65,1,106,12,1,11,35,1,34,1,65,2,106,32,1,32,12,65,1,113,34,16,27,11,33,17,32,26,32,18,16,35,33,13,11,32,20,32,10,65,0,72,113,13,18,32,12,65,255,255,123,113,32,12,32,20,27,33,12,2,64,32,26,66,0,82,13,0,32,10,13,0,32,18,33,13,65,0,33,10,12,15,11,32,10,32,26,80,32,18,32,13,107,106,34,1,32,1,32,10,72,27,33,10,12,14,11,32,8,45,0,48,33,7,12,12,11,32,8,40,2,48,34,1,35,1,34,17,65,246,10,106,32,1,27,34,13,34,1,65,0,65,255,255,255,255,7,32,10,32,10,65,255,255,255,255,7,79,27,34,7,16,100,34,9,32,1,107,32,7,32,9,27,34,1,32,13,106,33,9,32,10,65,0,78,13,10,32,9,45,0,0,13,16,35,1,33,17,12,10,11,32,8,41,3,48,34,26,66,0,82,13,1,65,0,33,7,12,10,11,32,10,4,64,32,8,40,2,48,12,2,11,65,0,33,7,32,0,65,32,32,15,65,0,32,12,16,15,12,2,11,32,8,65,0,54,2,12,32,8,32,26,62,2,8,32,8,32,8,65,8,106,34,7,54,2,48,65,127,33,10,32,7,11,33,11,65,0,33,7,3,64,2,64,32,11,40,2,0,34,9,69,13,0,32,8,65,4,106,32,9,16,94,34,9,65,0,72,13,16,32,9,32,10,32,7,107,75,13,0,32,11,65,4,106,33,11,32,7,32,9,106,34,7,32,10,73,13,1,11,11,65,61,33,9,32,7,65,0,72,13,13,32,0,65,32,32,15,32,7,32,12,16,15,32,7,69,4,64,65,0,33,7,12,1,11,65,0,33,9,32,8,40,2,48,33,11,3,64,32,11,40,2,0,34,13,69,13,1,32,8,65,4,106,34,10,32,13,16,94,34,13,32,9,106,34,9,32,7,75,13,1,32,0,32,10,32,13,16,14,32,11,65,4,106,33,11,32,7,32,9,75,13,0,11,11,32,0,65,32,32,15,32,7,32,12,65,128,192,0,115,16,15,32,15,32,7,32,7,32,15,72,27,33,7,12,9,11,32,20,32,10,65,0,72,113,13,10,65,61,33,9,32,0,32,8,43,3,48,32,15,32,10,32,12,32,7,32,5,17,14,0,34,7,65,0,78,13,8,12,11,11,32,7,45,0,1,33,11,32,7,65,1,106,33,7,12,0,11,0,11,32,0,13,10,32,19,69,13,4,65,1,33,7,3,64,32,4,32,7,65,2,116,106,40,2,0,34,0,4,64,32,3,32,7,65,3,116,106,32,0,32,2,32,6,16,96,65,1,33,14,32,7,65,1,106,34,7,65,10,71,13,1,12,12,11,11,32,7,65,10,79,4,64,65,1,33,14,12,11,11,3,64,32,4,32,7,65,2,116,106,40,2,0,13,1,65,1,33,14,32,7,65,1,106,34,7,65,10,71,13,0,11,12,10,11,65,28,33,9,12,7,11,32,11,33,12,32,1,33,10,12,1,11,32,8,32,7,58,0,39,35,1,33,17,65,1,33,10,32,24,33,13,32,11,33,12,11,32,10,32,9,32,13,107,34,11,32,10,32,11,74,27,34,10,32,16,65,255,255,255,255,7,115,74,13,3,65,61,33,9,32,15,32,10,32,16,106,34,1,32,1,32,15,72,27,34,7,32,25,75,13,4,32,0,65,32,32,7,32,1,32,12,16,15,32,0,32,17,32,16,16,14,32,0,65,48,32,7,32,1,32,12,65,128,128,4,115,16,15,32,0,65,48,32,10,32,11,65,0,16,15,32,0,32,13,32,11,16,14,32,0,65,32,32,7,32,1,32,12,65,128,192,0,115,16,15,32,8,40,2,60,33,1,12,1,11,11,11,65,0,33,14,12,3,11,65,61,33,9,11,35,1,65,216,213,0,106,32,9,54,2,0,11,65,127,33,14,11,32,8,65,64,107,36,0,32,14,11,126,2,1,127,1,126,32,0,189,34,3,66,52,136,167,65,255,15,113,34,2,65,255,15,71,4,124,32,2,69,4,64,32,1,32,0,68,0,0,0,0,0,0,0,0,97,4,127,65,0,5,32,0,68,0,0,0,0,0,0,240,67,162,32,1,16,99,33,0,32,1,40,2,0,65,64,106,11,54,2,0,32,0,15,11,32,1,32,2,65,254,7,107,54,2,0,32,3,66,255,255,255,255,255,255,255,135,128,127,131,66,128,128,128,128,128,128,128,240,63,132,191,5,32,0,11,11,229,1,1,2,127,32,2,65,0,71,33,3,2,64,2,64,2,64,32,0,65,3,113,69,13,0,32,2,69,13,0,32,1,65,255,1,113,33,4,3,64,32,0,45,0,0,32,4,70,13,2,32,2,65,1,107,34,2,65,0,71,33,3,32,0,65,1,106,34,0,65,3,113,69,13,1,32,2,13,0,11,11,32,3,69,13,1,2,64,32,1,65,255,1,113,34,3,32,0,45,0,0,70,13,0,32,2,65,4,73,13,0,32,3,65,129,130,132,8,108,33,3,3,64,65,128,130,132,8,32,0,40,2,0,32,3,115,34,4,107,32,4,114,65,128,129,130,132,120,113,65,128,129,130,132,120,71,13,2,32,0,65,4,106,33,0,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,32,1,65,255,1,113,33,1,3,64,32,1,32,0,45,0,0,70,4,64,32,0,15,11,32,0,65,1,106,33,0,32,2,65,1,107,34,2,13,0,11,11,65,0,11,125,1,3,127,2,64,2,64,32,0,34,1,65,3,113,69,13,0,32,1,45,0,0,69,4,64,65,0,15,11,3,64,32,1,65,1,106,34,1,65,3,113,69,13,1,32,1,45,0,0,13,0,11,12,1,11,3,64,32,1,34,2,65,4,106,33,1,65,128,130,132,8,32,2,40,2,0,34,3,107,32,3,114,65,128,129,130,132,120,113,65,128,129,130,132,120,70,13,0,11,3,64,32,2,34,1,65,1,106,33,2,32,1,45,0,0,13,0,11,11,32,1,32,0,107,11,104,1,3,127,32,0,69,4,64,65,0,15,11,2,127,35,1,65,176,43,106,33,1,32,0,4,64,3,64,32,1,34,2,40,2,0,34,3,4,64,32,1,65,4,106,33,1,32,0,32,3,71,13,1,11,11,32,2,65,0,32,3,27,12,1,11,32,1,33,2,3,64,32,2,34,0,65,4,106,33,2,32,0,40,2,0,13,0,11,32,1,32,0,32,1,107,65,124,113,106,11,65,0,71,11,66,1,1,127,32,0,65,255,255,7,77,4,64,35,1,65,240,12,106,34,1,32,1,32,0,65,8,118,106,45,0,0,65,5,116,106,32,0,65,3,118,65,31,113,106,45,0,0,32,0,65,7,113,118,65,1,113,15,11,32,0,65,254,255,11,73,11,194,1,1,3,127,2,64,32,2,40,2,16,34,3,4,127,32,3,5,32,2,16,66,13,1,32,2,40,2,16,11,32,2,40,2,20,34,4,107,32,1,73,4,64,32,2,32,0,32,1,32,2,40,2,36,17,4,0,15,11,2,64,2,64,32,2,40,2,80,65,0,72,13,0,32,1,69,13,0,32,1,33,3,3,64,32,0,32,3,106,34,5,65,1,107,45,0,0,65,10,71,4,64,32,3,65,1,107,34,3,13,1,12,2,11,11,32,2,32,0,32,3,32,2,40,2,36,17,4,0,34,4,32,3,73,13,2,32,1,32,3,107,33,1,32,2,40,2,20,33,4,12,1,11,32,0,33,5,65,0,33,3,11,32,4,32,5,32,1,16,36,26,32,2,32,2,40,2,20,32,1,106,54,2,20,32,1,32,3,106,33,4,11,32,4,11,128,1,1,2,127,35,0,65,16,107,34,2,36,0,32,2,32,1,58,0,15,2,64,2,64,32,0,40,2,16,34,3,4,127,32,3,5,32,0,16,66,13,2,32,0,40,2,16,11,32,0,40,2,20,34,3,70,13,0,32,0,40,2,80,32,1,65,255,1,113,70,13,0,32,0,32,3,65,1,106,54,2,20,32,3,32,1,58,0,0,12,1,11,32,0,32,2,65,15,106,65,1,32,0,40,2,36,17,4,0,65,1,71,13,0,32,2,45,0,15,26,11,32,2,65,16,106,36,0,11,110,1,4,127,2,64,32,0,47,1,32,34,5,69,13,0,32,0,40,2,60,33,6,65,1,33,0,65,1,33,3,3,64,2,64,2,64,32,1,32,6,32,0,65,2,116,106,40,2,0,34,0,32,2,16,27,65,1,106,14,2,3,0,1,11,32,0,32,2,106,45,0,0,13,0,32,3,33,4,12,2,11,32,3,65,1,106,34,3,65,255,255,3,113,34,0,32,5,77,13,0,11,11,32,4,65,255,255,3,113,11,178,4,1,14,127,2,64,32,0,40,2,180,9,34,3,69,13,0,2,127,32,3,65,26,116,65,31,117,65,226,4,113,32,3,65,1,113,13,0,26,65,226,4,32,3,45,0,45,65,2,113,13,0,26,32,3,40,2,32,11,32,2,75,13,0,65,1,15,11,32,0,40,2,132,9,34,0,40,2,0,34,13,32,1,65,5,116,106,34,7,40,2,0,34,8,40,2,4,33,12,32,8,40,2,156,1,34,4,32,7,40,2,8,73,4,64,32,7,32,4,54,2,8,11,2,64,32,0,40,2,4,34,14,4,64,32,8,40,2,160,1,33,15,65,0,33,0,3,64,2,64,32,0,32,1,70,13,0,32,13,32,0,65,5,116,106,34,9,40,2,28,13,0,32,9,40,2,0,34,6,40,2,4,34,16,32,12,73,13,0,32,6,40,2,152,1,34,11,33,5,32,6,47,1,0,34,10,69,4,64,32,11,32,11,65,244,3,106,32,6,40,2,20,27,33,5,11,32,6,40,2,156,1,34,4,32,9,40,2,8,34,3,73,4,64,32,9,32,4,54,2,8,32,4,33,3,11,32,10,69,13,0,32,2,32,5,73,13,0,2,64,32,2,32,5,75,4,64,65,1,33,10,32,4,32,3,107,65,1,106,32,2,32,5,107,108,65,136,14,77,13,1,12,5,11,32,6,40,2,160,1,32,15,76,13,1,11,32,7,40,2,28,13,0,32,6,47,1,0,32,8,47,1,0,71,13,0,32,12,32,16,71,13,0,32,11,32,8,40,2,152,1,71,13,0,35,1,65,148,12,106,33,5,32,7,40,2,12,33,3,2,64,32,9,40,2,12,34,4,69,13,0,32,4,65,1,113,13,0,32,4,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,4,65,48,106,32,4,40,2,36,27,33,5,11,35,1,65,148,12,106,33,4,2,64,32,3,69,13,0,32,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,3,65,48,106,32,3,40,2,36,27,33,4,11,32,5,40,2,24,33,6,2,64,32,4,40,2,24,34,3,65,25,79,4,64,32,3,32,6,71,13,2,32,5,40,2,0,33,5,32,4,40,2,0,33,4,12,1,11,32,3,32,6,71,13,1,11,32,5,32,4,32,3,16,18,13,0,65,1,15,11,32,0,65,1,106,34,0,32,14,71,13,0,11,11,65,0,33,10,11,32,10,11,197,31,2,12,127,3,126,35,0,65,128,1,107,34,7,36,0,2,64,32,1,40,2,0,34,6,69,4,64,65,1,33,9,12,1,11,32,2,40,2,0,34,5,69,13,0,2,127,32,5,65,26,116,65,31,117,65,226,4,113,32,5,65,1,113,13,0,26,65,226,4,32,5,45,0,45,65,2,113,13,0,26,32,5,40,2,32,11,33,4,32,6,65,8,118,33,10,32,5,65,8,118,33,11,2,64,2,64,2,64,32,6,65,1,113,69,4,64,32,6,45,0,45,65,2,113,69,4,64,32,4,32,6,40,2,32,34,3,73,13,2,12,4,11,65,226,4,33,3,32,4,65,226,4,73,13,1,12,3,11,32,6,65,32,113,34,3,69,13,1,32,4,65,225,4,75,13,1,11,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,9,12,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,2,40,2,8,32,2,40,2,4,106,32,1,77,13,0,32,2,40,2,56,32,1,65,2,116,106,40,2,0,33,4,11,32,0,65,132,1,106,33,1,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,4,32,7,32,4,54,2,0,32,1,65,128,8,35,1,65,143,4,106,32,7,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,9,12,3,11,65,1,33,9,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,226,4,65,0,32,3,27,33,3,11,2,64,2,64,2,64,32,5,65,1,113,69,4,64,32,5,45,0,45,65,2,113,4,127,65,226,4,5,32,5,40,2,32,11,32,3,75,13,1,32,5,40,2,36,13,2,12,3,11,32,5,65,32,113,69,13,2,32,3,65,225,4,75,13,2,11,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,1,77,13,0,32,2,40,2,56,32,1,65,2,116,106,40,2,0,33,3,11,32,0,65,132,1,106,33,1,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,4,11,32,7,32,4,54,2,20,32,7,32,3,54,2,16,32,1,65,128,8,35,1,65,143,4,106,32,7,65,16,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,13,2,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,5,40,2,60,33,8,11,2,64,2,64,2,64,2,64,32,6,65,1,113,69,4,64,32,6,40,2,36,13,1,65,0,33,3,32,8,65,0,74,13,2,12,4,11,32,8,65,0,74,13,1,65,0,33,3,12,3,11,32,8,32,6,40,2,60,76,13,1,11,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,9,12,3,11,32,0,40,2,160,9,33,1,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,2,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,1,40,2,8,32,1,40,2,4,106,32,2,77,13,0,32,1,40,2,56,32,2,65,2,116,106,40,2,0,33,9,11,65,0,33,2,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,2,11,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,1,40,2,8,32,1,40,2,4,106,32,3,77,13,0,32,1,40,2,56,32,3,65,2,116,106,40,2,0,33,4,11,32,0,65,132,1,106,33,1,65,0,33,8,2,64,32,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,6,40,2,60,33,8,11,32,7,32,8,54,2,44,32,7,32,4,54,2,40,32,7,32,2,54,2,36,32,7,32,9,54,2,32,32,1,65,128,8,35,1,65,164,9,106,32,7,65,32,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,9,12,3,11,65,1,33,9,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,6,40,2,60,33,3,11,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,9,11,32,3,32,9,74,4,64,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,2,11,32,0,40,2,160,9,33,1,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,2,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,1,40,2,8,32,1,40,2,4,106,32,2,77,13,0,32,1,40,2,56,32,2,65,2,116,106,40,2,0,33,9,11,65,0,33,2,2,64,32,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,6,40,2,60,33,2,11,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,6,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,1,40,2,8,32,1,40,2,4,106,32,6,77,13,0,32,1,40,2,56,32,6,65,2,116,106,40,2,0,33,3,11,32,0,65,132,1,106,33,1,65,0,33,8,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,8,11,32,7,32,8,54,2,60,32,7,32,3,54,2,56,32,7,32,2,54,2,52,32,7,32,9,54,2,48,32,1,65,128,8,35,1,65,164,9,106,32,7,65,48,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,65,0,33,9,32,0,40,2,140,10,69,13,1,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,4,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,9,2,64,32,6,65,1,113,4,64,32,6,65,32,113,69,13,1,12,2,11,32,6,45,0,45,65,2,113,13,1,32,6,40,2,32,13,1,11,32,7,32,1,41,2,0,55,3,120,32,7,32,2,41,2,0,55,3,112,2,127,32,0,65,136,9,106,34,1,40,2,12,33,2,32,1,32,1,40,2,16,34,3,65,1,106,34,4,32,1,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,20,32,1,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,1,32,2,54,2,12,32,2,32,3,65,3,116,106,32,7,41,2,120,55,2,0,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,3,65,1,106,34,4,32,1,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,20,32,1,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,1,32,2,54,2,12,32,2,32,3,65,3,116,106,32,7,41,2,112,55,2,0,65,0,32,1,40,2,16,34,2,69,13,0,26,3,64,32,1,32,2,65,1,107,34,3,54,2,16,32,7,32,1,40,2,12,34,4,32,3,65,3,116,106,41,2,0,34,17,55,2,112,32,1,32,2,65,2,107,34,2,54,2,16,32,7,32,4,32,2,65,3,116,106,41,2,0,34,15,55,2,120,32,15,66,8,136,33,16,32,17,167,33,3,32,15,167,34,8,65,1,113,34,12,4,127,32,16,167,65,255,1,113,5,32,8,47,1,40,11,33,13,2,64,2,64,2,127,2,64,32,3,65,1,113,34,14,4,64,32,3,65,128,254,3,113,65,8,118,34,4,32,13,65,255,255,3,113,77,13,1,65,127,12,2,11,32,3,47,1,40,34,4,32,13,65,255,255,3,113,77,13,0,65,127,12,1,11,2,64,2,127,32,12,4,64,65,0,32,4,32,16,167,65,255,1,113,79,13,1,26,12,2,11,32,4,32,8,47,1,40,73,13,1,32,8,40,2,36,11,33,13,65,0,33,4,2,64,32,14,13,0,32,13,32,3,40,2,36,34,4,79,13,0,65,127,12,2,11,32,12,13,3,32,4,32,8,40,2,36,34,3,79,13,2,11,65,1,11,32,1,65,0,54,2,16,12,3,11,32,3,69,13,0,3,64,32,3,65,1,107,34,3,65,3,116,34,2,32,7,40,2,112,34,4,32,4,40,2,36,65,3,116,107,106,41,2,0,33,15,32,2,32,7,40,2,120,34,4,32,4,40,2,36,65,3,116,107,106,41,2,0,33,16,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,4,65,1,106,34,8,32,1,40,2,20,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,8,65,3,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,1,32,8,54,2,20,32,1,40,2,16,34,4,65,1,106,5,32,8,11,54,2,16,32,1,32,2,54,2,12,32,2,32,4,65,3,116,106,32,16,55,2,0,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,4,65,1,106,34,8,32,1,40,2,20,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,8,65,3,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,1,32,8,54,2,20,32,1,40,2,16,34,4,65,1,106,5,32,8,11,54,2,16,32,1,32,2,54,2,12,32,2,32,4,65,3,116,106,32,15,55,2,0,32,3,13,0,11,32,1,40,2,16,33,2,11,32,2,13,0,11,65,0,11,33,2,32,0,40,2,96,33,1,2,127,2,64,2,64,2,64,2,64,32,2,65,1,106,14,3,0,2,1,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,5,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,84,32,7,32,1,54,2,80,65,128,8,35,1,65,190,4,106,32,7,65,208,0,106,16,11,26,12,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,12,4,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,100,32,7,32,1,54,2,96,65,128,8,35,1,65,190,4,106,32,7,65,224,0,106,16,11,26,65,1,12,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,68,32,7,32,1,54,2,64,65,128,8,35,1,65,231,4,106,32,7,65,64,107,16,11,26,11,65,0,11,33,9,32,0,40,2,96,34,1,4,64,32,0,40,2,92,65,0,32,0,65,132,1,106,32,1,17,3,0,11,2,64,32,0,40,2,140,10,69,13,0,32,0,65,132,1,106,33,1,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,11,32,7,65,128,1,106,36,0,32,9,11,243,2,1,10,127,2,64,32,0,40,2,8,34,7,65,1,107,34,1,69,13,0,32,0,40,2,4,33,8,32,7,33,4,3,64,32,4,33,2,32,8,32,1,34,4,65,28,108,106,34,5,40,2,0,40,2,0,33,1,2,127,2,64,2,64,32,2,32,7,70,4,64,32,1,65,1,113,13,1,12,2,11,2,64,2,127,32,1,65,1,113,34,9,4,64,32,1,65,2,113,13,7,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,34,3,65,1,113,13,6,32,3,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,0,40,2,0,40,2,8,34,10,40,2,84,32,10,47,1,36,32,3,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,5,11,32,9,69,13,1,11,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,13,1,2,64,32,0,40,2,0,40,2,8,34,1,40,2,32,69,13,0,32,1,40,2,64,32,8,32,2,65,28,108,106,65,56,107,40,2,0,40,2,0,47,1,66,65,2,116,106,34,2,47,1,2,34,3,69,13,0,32,1,40,2,68,32,2,47,1,0,65,2,116,106,34,1,32,3,65,2,116,106,33,2,3,64,2,64,32,1,45,0,3,69,4,64,32,5,40,2,20,32,1,45,0,2,70,13,1,11,32,2,32,1,65,4,106,34,1,75,13,1,12,2,11,11,32,1,47,1,0,33,6,12,2,11,32,4,65,1,107,34,1,13,0,11,11,32,6,11,211,9,2,29,127,1,126,2,64,32,0,40,2,4,34,8,32,0,40,2,8,34,27,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,4,65,1,113,13,0,32,27,33,13,3,64,32,4,40,2,36,69,13,1,32,0,40,2,0,40,2,8,33,10,32,4,47,1,66,34,5,4,127,32,10,40,2,84,32,10,47,1,36,32,5,108,65,1,116,106,5,65,0,11,33,28,32,9,65,4,107,40,2,0,33,15,2,64,2,64,32,13,65,1,107,34,5,69,13,0,32,4,47,1,44,34,11,65,1,113,13,0,32,11,65,4,113,13,1,32,8,32,5,65,28,108,106,34,5,65,28,107,40,2,0,40,2,0,47,1,66,34,11,69,13,1,32,15,32,10,40,2,84,32,10,47,1,36,32,11,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,15,12,1,11,32,15,65,1,106,33,15,11,32,4,40,2,36,34,24,69,13,1,65,0,32,4,32,24,65,3,116,107,34,31,32,4,65,1,113,27,33,32,32,9,65,24,107,40,2,0,33,12,32,9,65,20,107,40,2,0,33,5,32,9,65,16,107,40,2,0,33,4,65,0,33,6,65,0,33,29,3,64,32,15,33,22,32,29,33,11,32,4,33,9,32,5,33,10,32,12,33,19,2,127,32,32,32,6,34,25,65,3,116,106,34,23,40,2,0,34,7,65,1,113,34,26,4,64,32,7,65,2,113,65,1,118,34,20,33,6,32,7,65,3,118,65,1,113,12,1,11,32,7,47,1,44,34,20,65,1,113,33,6,32,20,65,2,118,65,1,113,11,4,127,32,11,5,32,28,4,64,32,28,32,11,65,1,116,106,47,1,0,32,6,114,65,0,71,34,20,33,6,11,32,11,65,1,106,11,33,29,2,127,2,127,2,64,32,26,69,4,64,32,7,40,2,36,13,1,65,0,12,2,11,32,6,32,22,106,33,15,32,23,45,0,7,34,6,33,12,32,9,33,4,32,10,12,2,11,32,7,40,2,56,11,33,12,65,0,32,9,32,7,40,2,20,34,5,27,33,4,32,6,32,22,106,32,12,106,33,15,32,7,40,2,24,33,12,32,7,40,2,16,33,6,32,5,32,10,106,11,33,5,32,4,32,12,106,33,4,32,6,32,19,106,33,12,32,24,32,25,65,1,106,34,6,75,4,64,2,127,32,31,32,6,65,3,116,106,41,2,0,34,33,167,34,14,65,1,113,4,64,32,33,66,32,136,167,65,255,1,113,33,21,32,33,66,48,136,167,65,255,1,113,33,16,32,33,66,40,136,167,65,15,113,12,1,11,32,14,40,2,12,33,21,32,14,40,2,4,33,16,32,14,40,2,8,11,34,17,32,5,106,33,5,32,12,32,16,106,33,12,65,0,32,4,32,17,27,32,21,106,33,4,11,2,127,32,26,4,64,32,19,32,23,45,0,7,34,30,106,33,21,32,9,33,17,32,10,12,1,11,65,0,32,9,32,7,40,2,20,34,14,27,33,17,32,7,40,2,16,32,19,106,33,21,32,7,40,2,24,33,30,32,10,32,14,106,11,33,14,65,0,33,16,2,127,65,0,32,1,32,21,79,13,0,26,65,1,32,2,32,14,73,13,0,26,32,2,32,14,70,32,17,32,30,106,32,3,75,113,11,33,17,2,64,32,26,13,0,32,7,40,2,36,69,13,0,32,7,40,2,48,33,16,11,2,64,32,17,4,64,32,20,65,1,113,4,64,32,0,32,13,65,1,106,34,4,32,0,40,2,12,34,1,75,4,127,65,8,32,1,65,1,116,34,1,32,4,32,1,32,4,75,27,34,1,32,1,65,8,77,27,34,2,65,28,108,33,1,2,127,32,8,4,64,32,8,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,8,32,0,32,2,54,2,12,32,0,40,2,8,34,13,65,1,106,5,32,4,11,54,2,8,32,0,32,8,54,2,4,32,8,32,13,65,28,108,106,34,0,32,22,54,2,24,32,0,32,11,54,2,20,32,0,32,25,54,2,16,32,0,32,9,54,2,12,32,0,32,10,54,2,8,32,0,32,19,54,2,4,32,0,32,23,54,2,0,32,18,173,15,11,32,16,69,13,1,32,0,32,13,65,1,106,34,4,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,8,4,64,32,8,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,8,32,0,32,5,54,2,12,32,0,40,2,8,34,13,65,1,106,5,32,4,11,54,2,8,32,0,32,8,54,2,4,32,8,32,13,65,28,108,106,34,4,32,22,54,2,24,32,4,32,11,54,2,20,32,4,32,25,54,2,16,32,4,32,9,54,2,12,32,4,32,10,54,2,8,32,4,32,19,54,2,4,32,4,32,23,54,2,0,32,0,40,2,4,34,8,32,0,40,2,8,34,13,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,4,65,1,113,69,13,3,12,4,11,32,20,65,1,113,4,64,32,18,65,1,106,33,18,12,1,11,32,16,32,18,106,33,18,11,32,6,32,24,71,13,0,11,11,11,32,0,32,27,54,2,8,66,127,11,144,5,2,11,127,1,126,35,0,65,224,0,107,34,1,36,0,2,64,32,0,40,2,4,34,7,32,0,40,2,8,34,5,65,28,108,106,34,6,65,28,107,40,2,0,34,9,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,0,40,2,0,34,10,40,2,8,33,4,32,2,47,1,66,34,3,4,127,32,4,40,2,84,32,4,47,1,36,32,3,108,65,1,116,106,5,65,0,11,33,11,32,6,65,4,107,40,2,0,33,3,2,64,2,64,32,5,65,1,107,34,8,69,13,0,32,2,47,1,44,34,2,65,1,113,13,0,32,2,65,4,113,13,1,32,7,32,8,65,28,108,106,34,2,65,28,107,40,2,0,40,2,0,47,1,66,34,8,69,13,1,32,3,32,4,40,2,84,32,4,47,1,36,32,8,108,65,1,116,106,32,2,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,3,12,1,11,32,3,65,1,106,33,3,11,32,9,41,2,0,33,12,32,1,32,10,54,2,32,32,1,32,12,55,3,24,32,1,32,6,65,24,107,34,4,40,2,8,54,2,44,32,1,32,4,41,2,0,55,2,36,32,1,32,11,54,2,60,32,1,32,3,54,2,56,32,1,66,0,55,3,48,65,0,33,3,32,12,167,34,4,69,13,0,32,4,40,2,36,69,13,0,32,1,66,0,55,3,16,32,1,66,0,55,3,8,32,1,66,0,55,3,0,32,1,65,24,106,32,1,65,64,107,32,1,65,223,0,106,16,37,69,4,64,12,1,11,65,0,33,4,3,64,32,1,40,2,64,33,2,2,64,32,1,45,0,95,4,127,65,2,5,32,2,40,2,0,34,6,65,1,113,13,1,32,6,40,2,36,69,13,1,32,6,40,2,48,69,13,1,65,1,11,33,3,32,1,32,1,41,2,84,55,3,16,32,1,32,1,41,2,76,55,3,8,32,1,32,1,41,2,68,55,3,0,32,2,33,4,11,32,1,65,24,106,32,1,65,64,107,32,1,65,223,0,106,16,37,13,0,11,32,4,69,4,64,65,0,33,3,12,1,11,32,0,32,5,65,1,106,34,2,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,2,32,2,32,5,73,27,34,2,32,2,65,8,77,27,34,5,65,28,108,33,2,2,127,32,7,4,64,32,7,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,7,32,0,32,5,54,2,12,32,0,40,2,8,34,5,65,1,106,5,32,2,11,54,2,8,32,0,32,7,54,2,4,32,7,32,5,65,28,108,106,34,0,32,4,54,2,0,32,0,32,1,41,3,0,55,2,4,32,0,32,1,41,3,8,55,2,12,32,0,32,1,41,3,16,55,2,20,11,32,1,65,224,0,106,36,0,32,3,11,135,1,1,5,127,32,0,65,0,54,2,16,32,1,40,2,16,33,2,32,1,40,2,0,33,3,32,1,40,2,4,33,4,32,1,40,2,8,33,5,32,1,40,2,20,33,6,32,0,32,1,40,2,12,59,1,16,32,0,32,6,54,2,0,32,0,65,224,1,35,7,40,2,0,17,0,0,34,1,54,2,4,32,0,66,129,128,128,128,128,1,55,2,8,32,1,65,0,54,2,24,32,1,66,0,55,2,16,32,1,32,5,54,2,12,32,1,32,4,54,2,8,32,1,32,3,54,2,4,32,1,32,2,54,2,0,11,211,3,1,6,127,35,0,65,224,0,107,34,5,36,0,65,1,33,8,65,2,33,9,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,65,0,33,9,65,0,33,8,12,1,11,32,4,40,2,72,32,1,65,3,108,106,34,6,45,0,0,65,229,0,113,33,8,32,6,45,0,1,65,1,116,33,9,11,32,2,40,2,0,33,6,32,2,40,2,4,34,7,65,3,116,65,204,0,106,34,10,32,2,40,2,8,65,3,116,75,4,64,32,6,32,10,35,6,40,2,0,17,1,0,33,6,32,2,32,10,65,3,118,54,2,8,32,2,32,6,54,2,0,32,2,40,2,4,33,7,11,32,5,66,0,55,3,80,32,5,66,0,55,3,72,32,5,65,64,107,34,2,66,0,55,3,0,32,5,66,0,55,3,32,32,5,65,0,54,2,40,32,5,65,1,54,2,92,32,5,66,0,55,3,56,32,5,65,0,59,1,46,32,5,66,0,55,3,24,32,5,66,0,55,3,8,32,5,32,3,59,1,22,32,5,32,1,59,1,48,32,5,32,8,32,9,114,65,255,1,113,65,24,65,0,32,1,65,253,255,3,75,27,114,59,1,44,32,5,32,7,54,2,52,32,6,32,7,65,3,116,106,34,1,32,5,40,2,92,54,2,0,32,1,32,5,41,3,80,55,2,28,32,1,32,5,41,3,72,55,2,20,32,1,32,2,41,3,0,55,2,12,32,1,32,5,41,3,56,55,2,4,32,1,32,5,40,2,52,54,2,36,32,1,32,5,47,1,48,59,1,40,32,1,32,5,47,1,46,59,1,42,32,1,32,5,47,1,44,59,1,44,32,1,32,5,40,2,40,54,1,62,32,1,32,5,41,3,32,55,1,54,32,1,32,5,41,3,24,55,1,46,32,1,32,5,47,1,22,59,1,66,32,1,32,5,41,3,8,55,2,68,32,0,65,0,54,2,4,32,0,32,1,54,2,0,32,5,32,0,41,2,0,55,3,0,32,5,32,4,16,21,32,5,65,224,0,106,36,0,11,135,4,2,6,127,1,126,32,1,65,0,54,2,4,2,64,32,0,40,2,4,34,2,69,13,0,3,64,2,127,32,0,40,2,0,32,2,65,3,116,106,34,4,65,8,107,40,2,0,34,6,65,1,113,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,4,64,32,4,65,4,107,40,2,0,33,5,32,0,32,2,65,1,107,54,2,4,32,1,40,2,0,33,2,32,1,32,1,40,2,4,34,4,65,1,106,34,3,32,1,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,8,32,1,40,2,4,34,4,65,1,106,5,32,3,11,54,2,4,32,1,32,2,54,2,0,32,2,32,4,65,3,116,106,34,2,32,5,54,2,4,32,2,32,6,54,2,0,32,0,40,2,4,34,2,13,1,11,11,32,1,40,2,4,34,0,65,2,73,13,0,65,0,33,2,32,0,65,1,118,34,3,65,1,71,4,64,32,3,65,254,255,255,255,7,113,33,6,65,0,33,3,3,64,32,1,40,2,0,34,4,32,2,65,3,116,34,5,106,34,7,41,2,0,33,8,32,7,32,4,32,1,40,2,4,32,2,65,127,115,106,65,3,116,34,7,106,41,2,0,55,2,0,32,1,40,2,0,32,7,106,32,8,55,2,0,32,1,40,2,0,34,4,32,5,106,34,5,41,2,8,33,8,32,5,32,4,32,1,40,2,4,32,2,65,254,255,255,255,1,115,106,65,3,116,34,5,106,41,2,0,55,2,8,32,1,40,2,0,32,5,106,32,8,55,2,0,32,2,65,2,106,33,2,32,3,65,2,106,34,3,32,6,71,13,0,11,11,32,0,65,2,113,69,13,0,32,1,40,2,0,34,0,32,2,65,3,116,106,34,3,41,2,0,33,8,32,3,32,0,32,1,40,2,4,32,2,65,127,115,106,65,3,116,34,2,106,41,2,0,55,2,0,32,1,40,2,0,32,2,106,32,8,55,2,0,11,11,203,3,2,10,127,1,126,32,1,65,127,54,2,0,32,2,65,127,54,2,0,32,3,65,127,54,2,0,2,64,32,0,40,2,28,69,4,64,12,1,11,32,0,65,60,106,33,14,3,64,2,64,32,0,40,2,24,32,7,65,4,116,106,34,8,47,1,14,34,11,65,128,128,1,113,13,0,32,14,33,5,32,8,47,1,4,34,6,32,0,40,2,52,73,4,64,32,0,40,2,48,32,6,65,12,108,106,33,5,11,32,11,65,255,31,113,34,6,32,5,40,2,4,79,13,0,32,5,40,2,0,32,6,65,28,108,106,34,5,40,2,8,33,12,32,5,40,2,4,33,10,32,5,40,2,0,33,6,2,64,2,64,2,64,32,5,40,2,16,41,2,0,34,15,167,34,5,65,1,113,4,64,32,0,40,2,104,32,6,32,15,66,56,136,167,34,5,106,73,13,1,12,2,11,32,0,40,2,104,32,5,40,2,16,32,6,106,79,13,1,65,0,32,12,32,5,40,2,20,34,13,27,33,12,32,10,32,13,106,33,10,32,5,40,2,24,33,5,11,32,10,32,0,40,2,88,34,13,73,13,0,32,10,32,13,71,13,1,32,0,40,2,92,32,5,32,12,106,73,13,1,11,32,8,32,11,65,1,106,65,255,31,113,32,11,65,128,224,2,113,114,59,1,14,32,7,65,1,107,33,7,12,1,11,2,64,2,64,32,9,69,13,0,32,6,32,2,40,2,0,34,5,73,13,0,32,5,32,6,71,13,1,32,3,40,2,0,32,8,47,1,12,77,13,1,11,32,0,40,2,0,40,2,60,32,8,47,1,10,65,20,108,106,47,1,18,33,5,2,64,32,4,4,64,32,4,32,5,65,130,1,113,65,128,1,70,58,0,0,12,1,11,32,5,65,128,1,113,13,2,11,32,1,32,7,54,2,0,32,2,32,6,54,2,0,32,3,32,8,47,1,12,54,2,0,11,65,1,33,9,11,32,7,65,1,106,34,7,32,0,40,2,28,73,13,0,11,11,32,9,11,178,7,2,18,127,1,126,35,0,65,16,107,34,5,36,0,32,0,65,60,106,33,13,2,127,3,64,32,5,65,0,58,0,3,32,0,32,5,65,4,106,32,5,65,12,106,32,5,65,8,106,32,5,65,3,106,16,115,33,19,2,64,2,64,32,0,40,2,40,34,7,4,64,65,0,33,4,32,5,40,2,12,33,14,32,5,40,2,8,33,16,65,0,33,10,3,64,2,64,2,64,2,64,2,64,32,0,40,2,36,34,9,32,10,65,4,116,34,11,106,34,6,47,1,4,34,3,32,0,40,2,52,73,4,64,32,6,47,1,14,34,15,65,255,31,113,34,8,32,0,40,2,48,32,3,65,12,108,106,34,3,40,2,4,79,13,1,32,6,65,14,106,33,17,12,3,11,32,6,47,1,14,34,15,65,255,31,113,34,8,32,0,40,2,64,79,13,1,32,6,65,14,106,33,17,32,13,33,3,12,2,11,32,3,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,32,0,40,2,40,33,7,11,32,7,32,10,65,127,115,106,65,4,116,34,3,4,64,32,9,32,11,106,34,6,32,6,65,16,106,32,3,252,10,0,0,11,32,0,32,0,40,2,40,65,1,107,34,7,54,2,40,12,1,11,32,3,40,2,0,32,8,65,28,108,106,34,3,40,2,8,33,11,32,3,40,2,4,33,9,32,3,40,2,0,33,8,2,127,65,1,2,127,32,3,40,2,16,41,2,0,34,21,167,34,3,65,1,113,4,64,32,11,33,18,32,9,32,0,40,2,104,32,8,32,21,66,56,136,167,34,3,106,73,13,1,26,65,1,12,2,11,65,1,32,0,40,2,104,32,3,40,2,16,32,8,106,79,13,1,26,65,0,32,11,32,3,40,2,20,34,12,27,33,18,32,3,40,2,24,33,3,32,9,32,12,106,11,34,12,32,0,40,2,88,34,20,73,13,0,26,32,12,32,20,70,32,0,40,2,92,32,3,32,18,106,79,113,11,33,3,2,64,2,64,32,8,32,0,40,2,108,79,13,0,32,9,32,0,40,2,96,34,12,75,13,0,32,3,32,9,32,12,70,32,11,32,0,40,2,100,79,113,114,65,1,71,13,1,11,32,17,32,15,65,1,106,65,255,31,113,32,15,65,128,224,3,113,114,59,1,0,32,0,40,2,40,33,7,12,1,11,2,64,2,127,32,8,32,14,73,4,64,32,6,47,1,12,12,1,11,32,8,32,14,71,13,1,32,16,32,6,47,1,12,34,3,77,13,1,32,3,11,33,16,32,8,33,14,32,6,33,4,11,32,10,65,1,106,33,10,11,32,7,32,10,75,13,0,11,32,4,13,1,11,32,5,45,0,3,65,1,71,13,1,32,0,40,2,24,34,3,69,13,1,32,3,32,5,40,2,4,65,4,116,106,33,4,11,32,4,40,2,0,34,7,65,127,70,4,64,32,0,32,0,40,2,136,1,34,7,65,1,106,54,2,136,1,32,4,32,7,54,2,0,11,32,1,32,7,54,2,0,32,1,32,4,47,1,12,59,1,4,32,4,47,1,4,34,3,32,0,40,2,52,73,4,64,32,0,40,2,48,32,3,65,12,108,106,33,13,11,32,1,32,13,40,2,0,54,2,8,32,1,32,13,40,2,4,59,1,6,32,2,32,4,47,1,14,65,255,31,113,54,2,0,32,4,32,4,47,1,14,34,1,65,1,106,65,255,31,113,32,1,65,128,224,3,113,114,59,1,14,65,1,12,2,11,2,64,32,0,40,2,76,13,0,32,0,40,2,52,34,3,32,0,40,2,72,79,32,19,113,69,13,0,32,3,32,0,40,2,24,32,5,40,2,4,34,4,65,4,116,106,34,3,47,1,4,34,6,75,4,64,32,0,40,2,48,32,6,65,12,108,106,65,127,54,2,4,32,0,65,1,54,2,76,11,32,0,40,2,28,32,4,65,127,115,106,65,4,116,34,4,4,64,32,3,32,3,65,16,106,32,4,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,11,32,0,65,1,16,119,13,0,32,0,40,2,40,13,0,11,65,0,11,32,5,65,16,106,36,0,11,253,4,2,4,127,2,126,2,64,2,64,32,1,45,0,15,65,192,0,113,13,0,32,0,32,1,65,127,16,72,34,0,69,13,1,32,2,47,1,6,34,6,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,5,65,1,106,34,4,32,0,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,1,4,64,32,1,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,4,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,5,65,28,108,106,34,1,32,3,41,2,0,55,2,0,32,1,32,6,54,2,24,32,1,32,9,55,2,16,32,1,32,8,55,2,8,32,2,47,1,8,34,6,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,5,65,1,106,34,4,32,0,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,1,4,64,32,1,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,4,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,5,65,28,108,106,34,1,32,3,41,2,0,55,2,0,32,1,32,6,54,2,24,32,1,32,9,55,2,16,32,1,32,8,55,2,8,32,2,47,1,10,34,5,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,4,65,1,106,34,2,32,0,40,2,8,34,6,75,4,127,65,8,32,6,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,34,4,65,28,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,4,54,2,8,32,0,40,2,4,34,4,65,1,106,5,32,2,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,4,65,28,108,106,34,0,32,3,41,2,0,55,2,0,32,0,32,5,54,2,24,32,0,32,9,55,2,16,32,0,32,8,55,2,8,11,15,11,32,1,32,1,47,1,14,65,128,128,1,114,59,1,14,11,241,2,1,10,127,32,0,40,2,80,32,0,40,2,0,40,2,60,32,1,47,1,0,34,9,65,20,108,106,47,1,12,34,10,107,33,7,32,0,40,2,24,33,4,2,64,2,64,32,0,40,2,28,34,3,69,13,0,32,3,33,2,3,64,32,4,32,2,65,4,116,106,34,6,65,8,107,47,1,0,34,8,32,7,73,4,64,32,2,33,5,12,2,11,2,64,32,7,32,8,71,13,0,32,6,65,4,107,47,1,0,34,8,32,1,47,1,2,34,11,70,4,64,32,6,65,6,107,47,1,0,32,9,70,13,4,11,32,8,32,11,75,13,0,32,2,33,5,12,2,11,32,2,65,1,107,34,2,13,0,11,11,32,1,47,1,2,33,6,32,3,65,1,106,34,1,32,0,40,2,32,75,4,64,32,1,65,4,116,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,1,54,2,32,32,0,40,2,28,33,3,11,65,128,160,126,65,128,32,32,10,65,1,70,27,33,2,32,5,65,4,116,33,1,2,64,32,3,32,5,77,13,0,32,3,32,5,107,65,4,116,34,5,69,13,0,32,1,32,4,106,34,3,65,16,106,32,3,32,5,252,10,0,0,11,32,1,32,4,106,34,1,32,2,59,0,14,32,1,32,6,59,0,12,32,1,32,9,59,0,10,32,1,32,7,59,0,8,32,1,66,255,255,255,255,255,255,63,55,0,0,32,0,32,4,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,11,11,139,65,2,31,127,1,126,35,0,65,160,1,107,34,7,36,0,32,0,65,60,106,33,29,32,0,65,4,106,33,20,32,0,65,144,1,106,33,30,3,64,2,64,32,0,45,0,158,1,34,6,65,1,71,13,0,32,0,40,2,28,34,4,69,13,0,32,0,40,2,52,33,3,32,0,40,2,24,33,5,2,64,32,4,34,2,65,1,113,69,13,0,32,0,32,2,65,1,107,34,2,54,2,28,32,3,32,5,32,2,65,4,116,106,47,1,4,34,9,77,13,0,32,0,40,2,48,32,9,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,4,65,1,70,13,0,3,64,32,0,32,2,65,1,107,34,4,54,2,28,32,5,32,4,65,4,116,106,47,1,4,34,4,32,3,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,32,2,65,2,107,34,2,54,2,28,32,5,32,2,65,4,116,106,47,1,4,34,4,32,3,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,2,13,0,11,11,32,0,32,0,40,2,152,1,65,1,106,34,2,65,0,32,2,65,228,0,71,27,34,4,54,2,152,1,2,64,32,0,40,2,140,1,34,2,69,13,0,32,2,40,2,4,69,13,0,32,0,32,0,40,2,8,32,0,40,2,12,65,28,108,106,65,24,107,40,2,0,54,2,148,1,11,2,64,32,6,32,15,114,65,1,113,69,4,64,32,2,69,13,1,32,4,13,1,32,2,40,2,4,34,2,69,13,1,32,30,32,2,17,0,0,69,13,1,65,0,33,15,11,32,7,65,160,1,106,36,0,32,15,65,1,113,15,11,2,64,32,0,2,127,2,64,32,0,45,0,157,1,65,1,70,4,64,65,0,33,15,32,0,45,0,156,1,65,1,71,13,3,65,0,33,8,65,0,33,2,65,0,32,0,40,2,28,34,9,69,13,2,26,3,64,2,64,2,64,32,0,40,2,0,40,2,60,32,0,40,2,24,34,4,32,2,65,4,116,106,34,3,47,1,10,65,20,108,106,47,1,12,34,5,65,255,255,3,70,4,64,32,0,40,2,80,34,5,32,3,47,1,8,79,65,0,32,5,27,13,1,32,0,40,2,36,33,4,32,0,32,0,40,2,40,34,6,65,1,106,34,5,32,0,40,2,44,34,10,75,4,127,65,8,32,10,65,1,116,34,6,32,5,32,5,32,6,73,27,34,5,32,5,65,8,77,27,34,6,65,4,116,33,5,2,127,32,4,4,64,32,4,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,4,32,0,32,6,54,2,44,32,0,40,2,40,34,6,65,1,106,5,32,5,11,54,2,40,32,0,32,4,54,2,36,32,4,32,6,65,4,116,106,34,4,32,3,41,2,0,55,2,0,32,4,32,3,41,2,8,55,2,8,65,1,33,15,32,8,65,1,106,33,8,12,2,11,32,0,40,2,80,32,3,47,1,8,32,5,106,79,13,0,32,3,47,1,4,34,4,32,0,40,2,52,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,8,65,1,106,33,8,12,1,11,32,8,69,4,64,65,0,33,8,12,1,11,32,4,32,2,32,8,107,65,4,116,106,34,4,32,3,41,2,0,55,2,0,32,4,32,3,41,2,8,55,2,8,11,32,9,32,2,65,1,106,34,2,71,13,0,11,12,1,11,65,0,33,8,2,127,65,0,2,127,32,0,40,2,8,34,4,32,0,40,2,12,34,3,65,28,108,106,34,2,65,28,107,40,2,0,34,16,40,2,0,34,5,65,1,113,4,64,32,5,65,3,118,65,1,113,12,1,11,32,5,47,1,44,65,2,118,65,1,113,11,13,0,26,32,3,65,2,73,4,64,32,0,47,1,20,12,1,11,65,0,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,26,32,20,40,2,0,40,2,8,34,6,40,2,84,32,6,47,1,36,32,5,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,11,33,11,32,2,65,24,107,40,2,0,33,14,32,2,65,20,107,40,2,0,33,9,32,2,65,16,107,40,2,0,33,17,32,7,32,20,40,2,0,34,13,54,2,156,1,32,7,32,16,54,2,152,1,32,7,32,11,34,12,54,2,148,1,32,7,32,17,54,2,144,1,32,7,32,9,54,2,140,1,32,7,32,14,54,2,136,1,65,1,33,18,2,127,32,3,65,2,72,4,64,65,1,33,5,65,0,33,19,65,0,12,1,11,2,64,2,64,32,3,65,2,107,34,2,69,13,0,3,64,2,64,32,4,32,2,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,32,13,40,2,8,34,6,40,2,84,32,6,47,1,36,32,5,108,65,1,116,106,32,3,40,2,20,65,1,116,106,47,1,0,34,8,69,13,0,32,3,33,4,12,3,11,2,127,32,3,40,2,0,40,2,0,34,5,65,1,113,4,64,32,5,65,1,118,65,1,113,12,1,11,32,5,47,1,44,65,1,113,11,69,4,64,32,2,65,1,107,34,2,69,13,2,12,1,11,11,32,3,33,4,11,65,0,33,8,11,2,64,2,64,32,4,40,2,0,34,19,69,4,64,65,1,33,5,65,0,33,19,12,1,11,32,4,40,2,12,33,10,32,4,40,2,8,33,3,32,4,40,2,4,33,15,2,127,32,19,41,2,0,34,33,167,34,2,65,1,113,4,64,32,10,32,33,66,56,136,167,34,2,106,33,6,32,3,12,1,11,32,2,40,2,24,65,0,32,10,32,2,40,2,20,34,4,27,106,33,6,32,2,40,2,16,33,2,32,3,32,4,106,11,33,4,65,0,33,5,32,2,32,15,106,34,21,32,0,40,2,104,34,24,77,32,2,69,32,21,32,24,70,113,69,113,13,1,2,64,32,4,32,0,40,2,88,34,21,75,13,0,32,4,32,21,71,34,4,69,32,0,40,2,92,34,21,32,6,73,113,13,0,32,2,13,2,32,4,13,2,32,6,32,21,71,13,2,11,32,15,32,0,40,2,108,79,13,1,32,3,32,0,40,2,96,34,2,73,13,0,32,2,32,3,70,32,10,32,0,40,2,100,73,113,33,18,11,32,13,12,1,11,65,0,33,18,32,13,11,33,22,2,127,32,16,41,2,0,34,33,167,34,2,65,1,113,34,6,4,64,32,17,32,33,66,56,136,167,34,3,106,33,16,32,9,12,1,11,32,2,40,2,24,65,0,32,17,32,2,40,2,20,34,4,27,106,33,16,32,2,40,2,16,33,3,32,4,32,9,106,11,33,10,32,3,32,14,106,33,4,65,0,33,21,2,127,65,0,32,18,69,13,0,26,32,0,40,2,104,34,15,32,4,79,4,64,65,0,32,3,69,32,4,32,15,70,113,69,13,1,26,11,2,64,32,10,32,0,40,2,88,34,15,75,13,0,32,10,32,15,71,34,15,69,32,0,40,2,92,34,24,32,16,73,113,13,0,65,0,32,3,13,1,26,65,0,32,15,13,1,26,65,0,32,16,32,24,71,13,1,26,11,65,0,32,14,32,0,40,2,108,79,13,0,26,65,1,32,9,32,0,40,2,96,34,15,73,13,0,26,32,9,32,15,70,32,17,32,0,40,2,100,73,113,11,33,24,2,64,32,0,40,2,128,1,34,25,32,4,79,32,3,69,32,4,32,25,70,113,69,113,13,0,2,64,32,10,32,0,40,2,112,34,15,75,13,0,32,10,32,15,71,34,15,69,32,0,40,2,116,34,23,32,16,73,113,13,0,32,3,13,1,32,15,13,1,32,16,32,23,71,13,1,11,32,14,32,0,40,2,132,1,79,13,0,65,1,33,21,32,9,32,0,40,2,120,34,3,73,13,0,32,3,32,9,70,32,17,32,0,40,2,124,73,113,33,21,11,65,0,33,15,2,64,32,14,32,25,73,13,0,32,0,40,2,112,34,3,32,9,79,4,64,32,3,32,9,71,13,1,32,17,32,0,40,2,116,73,13,1,11,32,4,32,0,40,2,132,1,75,13,0,32,0,40,2,120,34,4,32,10,77,4,64,32,4,32,10,71,13,1,32,16,32,0,40,2,124,75,13,1,11,32,0,45,0,156,1,65,1,71,13,0,2,127,2,64,32,12,69,4,64,32,6,4,64,32,2,65,128,254,3,113,65,8,118,33,11,12,2,11,32,2,47,1,40,33,11,11,65,255,255,3,32,11,65,255,255,3,70,13,1,26,11,32,13,40,2,8,40,2,76,32,11,65,1,116,106,47,1,0,11,33,28,65,1,33,16,2,64,2,64,2,64,32,12,65,254,255,3,107,14,2,0,2,1,11,65,0,33,16,12,1,11,32,12,4,64,32,13,40,2,8,40,2,72,32,12,65,3,108,106,45,0,1,65,0,71,33,16,12,1,11,32,6,4,64,32,2,65,2,118,65,1,113,33,16,12,1,11,32,2,47,1,44,65,1,118,65,1,113,33,16,11,32,6,4,127,32,2,65,5,118,65,1,113,5,32,2,47,1,44,65,9,118,65,1,113,11,33,25,32,7,66,0,55,3,120,32,7,66,0,55,3,112,32,7,65,8,54,2,108,32,7,65,240,0,106,33,31,65,0,33,11,32,7,40,2,108,33,32,32,7,65,0,59,1,130,1,32,7,65,0,54,2,108,32,7,65,0,58,0,135,1,32,7,65,0,58,0,134,1,32,7,65,0,58,0,133,1,2,64,32,20,40,2,8,34,4,65,1,107,34,2,69,13,0,32,20,40,2,4,33,23,32,20,40,2,0,40,2,8,33,9,3,64,32,4,33,3,32,23,32,2,34,4,65,28,108,106,33,10,32,23,32,3,65,28,108,106,65,56,107,40,2,0,34,17,40,2,0,47,1,66,34,2,4,127,32,9,40,2,84,32,9,47,1,36,32,2,108,65,1,116,106,5,65,0,11,33,12,2,64,2,64,2,127,32,10,40,2,0,34,26,40,2,0,34,6,65,1,113,34,14,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,13,0,32,12,69,13,0,32,12,32,10,40,2,20,65,1,116,106,47,1,0,34,2,13,1,11,32,14,4,64,32,6,65,128,254,3,113,65,8,118,33,2,12,1,11,32,6,47,1,40,33,2,11,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,2,1,0,11,32,9,40,2,72,32,2,65,3,108,106,33,6,32,20,40,2,8,32,3,71,4,64,32,6,45,0,0,65,1,113,13,4,11,32,6,45,0,2,65,1,113,69,13,1,32,11,32,32,79,13,1,32,31,32,11,65,1,116,106,32,2,59,1,0,32,7,32,11,65,1,106,34,11,54,2,108,12,1,11,32,3,32,20,40,2,8,71,13,2,11,2,64,32,7,45,0,135,1,13,0,32,17,40,2,0,40,2,36,33,27,2,127,32,26,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,33,2,32,10,40,2,16,65,1,106,34,3,32,27,79,13,0,32,10,40,2,20,32,2,69,106,33,14,3,64,2,64,2,64,2,127,32,17,40,2,0,34,2,32,2,40,2,36,65,3,116,107,32,3,65,3,116,106,40,2,0,34,6,65,1,113,34,13,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,13,0,32,12,69,13,0,32,12,32,14,65,1,116,106,47,1,0,34,2,13,1,11,32,13,4,64,32,6,65,128,254,3,113,65,8,118,33,2,12,1,11,32,6,47,1,40,33,2,11,32,14,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,1,3,0,11,32,9,40,2,72,32,2,65,3,108,106,34,2,45,0,0,65,1,113,69,13,0,32,2,45,0,1,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,7,65,1,113,13,3,32,13,69,13,1,12,4,11,32,13,13,3,32,6,40,2,36,69,13,0,32,6,40,2,48,69,13,0,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,6,32,6,40,2,52,13,2,11,32,6,47,1,44,65,2,118,65,1,113,12,3,11,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,4,11,32,7,65,1,58,0,134,1,12,3,11,32,6,65,3,118,65,1,113,11,69,106,33,14,32,3,65,1,106,34,3,32,27,71,13,0,11,11,2,64,2,127,32,26,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,13,0,32,9,40,2,32,69,13,0,32,9,40,2,68,32,9,40,2,64,32,17,40,2,0,47,1,66,65,2,116,106,34,3,47,1,0,65,2,116,106,34,2,32,3,47,1,2,34,6,65,2,116,106,33,12,32,7,47,1,130,1,34,3,69,4,64,32,6,69,13,1,32,2,33,3,3,64,2,64,32,3,45,0,3,69,4,64,32,10,40,2,20,32,3,45,0,2,70,13,1,11,32,3,65,4,106,34,3,32,12,73,13,1,12,3,11,11,32,7,32,3,47,1,0,34,3,59,1,130,1,32,3,69,13,1,11,32,6,69,13,0,3,64,2,64,32,2,47,1,0,32,3,71,13,0,32,10,40,2,20,32,2,45,0,2,79,13,0,32,7,65,1,58,0,133,1,12,2,11,32,2,65,4,106,34,2,32,12,73,13,0,11,11,32,4,65,1,107,34,2,13,0,11,11,2,127,65,0,32,5,13,0,26,2,64,32,8,69,4,64,32,19,40,2,0,34,2,65,1,113,4,64,32,2,65,128,254,3,113,65,8,118,33,8,12,2,11,32,2,47,1,40,33,8,11,32,8,65,255,255,3,113,65,255,255,3,71,13,0,65,1,12,1,11,32,22,40,2,8,40,2,76,32,8,65,255,255,3,113,65,1,116,106,47,1,0,65,255,255,3,70,11,33,6,32,0,40,2,0,34,2,47,1,160,1,33,8,2,64,32,28,65,255,255,3,113,34,12,65,255,255,3,70,34,19,13,0,32,8,65,255,255,3,113,69,4,64,65,0,33,8,12,1,11,65,0,33,3,32,7,40,2,108,33,9,32,7,47,1,130,1,33,10,32,18,69,32,6,114,65,1,113,33,11,3,64,32,2,40,2,60,32,2,40,2,72,32,3,65,6,108,106,34,4,47,1,0,65,20,108,106,34,5,47,1,12,33,8,32,0,40,2,80,33,17,2,64,2,64,32,4,45,0,4,65,1,70,4,64,32,24,13,1,12,2,11,32,11,13,1,11,32,5,47,1,4,34,14,65,0,32,10,32,14,71,27,13,0,65,0,32,5,47,1,2,32,9,27,13,0,32,0,40,2,84,32,17,32,8,107,73,13,0,32,0,32,4,16,118,32,0,40,2,0,33,2,11,32,3,65,1,106,34,3,32,2,47,1,160,1,34,8,73,13,0,11,11,2,64,32,2,40,2,76,34,9,32,8,65,255,255,3,113,34,3,107,34,8,69,13,0,32,2,40,2,60,33,4,32,2,40,2,72,33,5,32,8,65,1,71,4,64,3,64,32,8,65,1,118,34,10,32,3,106,34,11,32,3,32,12,32,4,32,5,32,11,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,27,33,3,32,8,32,10,107,34,8,65,1,75,13,0,11,11,2,64,32,12,32,4,32,5,32,3,65,6,108,106,47,1,0,65,20,108,106,47,1,0,34,8,77,13,0,32,3,65,1,106,34,3,32,9,79,13,0,32,4,32,5,32,3,65,6,108,106,47,1,0,65,20,108,106,47,1,0,33,8,11,32,12,32,8,65,255,255,3,113,71,13,0,32,0,40,2,80,32,4,32,5,32,3,65,6,108,106,34,8,47,1,0,65,20,108,106,34,4,47,1,12,107,33,5,32,7,47,1,130,1,33,9,32,18,69,32,6,114,65,1,113,33,6,3,64,2,64,2,64,32,8,45,0,4,65,1,70,4,64,32,24,13,1,12,2,11,32,6,13,1,11,32,4,47,1,4,34,4,65,0,32,4,32,9,71,27,13,0,32,5,32,0,40,2,84,75,13,0,32,0,32,8,16,118,32,0,40,2,0,33,2,11,32,3,65,1,106,34,3,32,2,40,2,76,70,13,1,32,2,40,2,60,32,2,40,2,72,32,3,65,6,108,106,34,8,47,1,0,65,20,108,106,34,4,47,1,0,32,12,70,13,0,11,11,32,0,40,2,28,69,13,0,32,12,65,255,255,3,71,33,23,32,7,45,0,133,1,33,26,32,7,45,0,135,1,33,27,32,7,45,0,134,1,65,1,115,33,22,65,0,33,9,3,64,32,7,32,9,65,4,116,34,13,32,0,40,2,24,106,34,4,54,2,104,32,0,40,2,0,40,2,60,33,3,32,4,32,4,47,1,14,34,6,65,255,191,127,113,34,10,59,1,14,65,1,33,2,2,64,32,0,40,2,80,32,3,32,4,47,1,10,65,20,108,34,8,106,34,11,47,1,12,32,4,47,1,8,106,71,4,64,32,9,33,3,12,1,11,2,127,32,11,47,1,0,34,2,69,4,64,32,11,47,1,18,34,5,65,128,4,113,65,9,118,34,2,32,19,114,32,16,114,65,1,113,4,64,32,25,32,23,32,2,27,12,2,11,32,5,65,1,115,12,1,11,32,11,47,1,18,33,5,65,0,32,2,32,12,71,13,0,26,32,5,65,128,4,113,69,32,25,114,11,32,5,65,4,113,69,32,22,114,113,33,2,32,6,65,128,32,113,69,32,5,65,2,113,69,32,16,65,127,115,114,113,2,127,2,64,32,11,47,1,2,34,18,69,13,0,65,0,34,3,32,7,40,2,108,34,17,69,13,1,26,3,64,32,7,65,240,0,106,32,3,65,1,116,106,47,1,0,32,18,70,13,1,32,3,65,1,106,34,3,32,17,71,13,0,11,65,0,12,1,11,32,2,11,33,3,32,27,113,33,6,32,11,47,1,4,34,2,4,64,32,6,32,26,113,32,6,32,2,32,7,47,1,130,1,70,34,2,27,33,6,32,2,32,3,113,33,3,11,2,127,2,64,2,64,2,64,2,64,2,64,32,11,47,1,16,34,2,4,64,32,0,40,2,0,40,2,120,32,2,65,1,116,106,33,2,3,64,32,2,47,1,0,34,18,69,13,2,32,7,65,64,107,32,7,41,2,144,1,55,3,0,32,7,32,7,41,2,152,1,55,3,72,32,7,32,7,41,2,136,1,55,3,56,32,7,65,208,0,106,32,7,65,56,106,32,18,16,59,32,2,65,2,106,33,2,32,7,40,2,96,69,13,0,11,12,3,11,32,3,65,1,113,13,1,12,2,11,32,3,65,1,113,69,13,1,11,65,0,33,18,2,64,32,6,65,1,113,69,13,0,2,64,32,5,65,192,0,113,13,0,32,0,40,2,0,40,2,60,32,8,106,34,2,47,1,32,34,3,65,255,255,3,70,13,1,32,3,32,2,47,1,12,77,13,1,32,2,45,0,39,65,1,113,69,13,0,32,2,47,1,0,13,1,11,35,0,65,16,107,34,4,36,0,32,0,40,2,24,33,2,32,4,32,7,40,2,104,34,3,41,2,8,55,3,8,32,4,32,3,41,2,0,55,3,0,32,3,32,2,107,34,8,65,4,117,33,18,32,4,65,255,255,3,54,2,4,2,127,32,3,40,2,4,65,255,255,3,71,4,64,65,0,32,0,32,4,32,18,16,72,34,2,69,13,1,26,32,3,47,1,4,34,3,32,0,40,2,52,79,4,127,32,0,65,60,106,5,32,0,40,2,48,32,3,65,12,108,106,11,34,5,40,2,0,33,17,32,2,40,2,0,33,3,2,64,32,5,40,2,4,34,10,32,2,40,2,4,34,5,106,34,14,32,2,40,2,8,77,13,0,32,14,65,28,108,33,6,2,127,32,3,4,64,32,3,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,3,32,2,32,14,54,2,8,32,2,40,2,4,34,14,32,5,77,13,0,32,14,32,5,107,65,28,108,34,14,69,13,0,32,3,32,6,106,32,3,32,5,65,28,108,106,32,14,252,10,0,0,11,2,64,32,10,69,13,0,32,10,65,28,108,33,6,32,3,32,5,65,28,108,106,33,5,32,17,4,64,32,6,69,13,1,32,5,32,17,32,6,252,10,0,0,12,1,11,32,6,69,13,0,32,5,65,0,32,6,252,11,0,11,32,2,32,3,54,2,0,32,2,32,2,40,2,4,32,10,106,54,2,4,32,0,40,2,24,33,2,11,32,0,40,2,28,34,5,65,1,106,34,3,32,0,40,2,32,75,4,64,32,3,65,4,116,33,5,2,127,32,2,4,64,32,2,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,32,32,0,40,2,28,33,5,11,2,64,32,18,65,1,106,34,3,32,5,79,4,64,32,3,65,4,116,33,6,12,1,11,32,3,65,4,116,33,6,32,5,32,3,107,65,4,116,34,5,69,13,0,32,2,32,8,106,65,32,106,32,2,32,6,106,32,5,252,10,0,0,11,32,2,32,6,106,34,5,32,4,41,3,0,55,0,0,32,5,32,4,41,3,8,55,0,8,32,0,32,2,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,32,7,32,2,32,8,106,54,2,104,32,0,40,2,24,32,3,65,4,116,106,11,32,4,65,16,106,36,0,65,0,71,33,18,32,7,40,2,104,34,4,47,1,14,33,10,11,2,64,32,10,193,65,0,78,13,0,2,64,32,0,40,2,12,34,2,65,2,78,4,64,32,0,40,2,8,33,5,2,64,32,2,65,2,107,34,2,69,4,64,65,0,33,6,12,1,11,3,64,2,64,32,5,32,2,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,47,1,66,34,6,4,64,32,20,40,2,0,40,2,8,34,8,40,2,84,32,8,47,1,36,32,6,108,65,1,116,106,32,3,40,2,20,65,1,116,106,47,1,0,34,6,13,1,11,65,0,33,6,2,127,32,3,40,2,0,40,2,0,34,8,65,1,113,4,64,32,8,65,1,118,65,1,113,12,1,11,32,8,47,1,44,65,1,113,11,13,0,32,2,65,1,107,34,2,13,1,12,2,11,11,32,3,33,5,11,32,5,41,2,4,33,33,32,5,40,2,12,33,3,32,5,40,2,0,33,2,32,7,32,20,40,2,0,54,2,100,32,7,32,2,54,2,96,32,7,32,6,54,2,92,32,7,32,3,54,2,88,32,7,32,33,55,2,80,32,2,13,1,11,32,4,32,10,65,128,128,1,114,59,1,14,12,1,11,32,4,32,10,65,255,255,1,113,59,1,14,32,11,33,3,3,64,32,3,34,2,65,20,107,33,3,32,2,65,2,107,45,0,0,65,24,113,13,0,32,2,65,8,107,47,1,0,13,0,11,32,2,65,14,107,47,1,0,65,255,255,3,70,13,0,32,7,32,7,41,2,96,55,3,48,32,7,32,7,41,2,88,55,3,40,32,7,32,7,41,2,80,55,3,32,32,0,32,4,32,3,32,7,65,32,106,16,117,11,32,11,47,1,6,65,255,255,3,71,4,64,32,7,32,7,41,2,152,1,55,3,24,32,7,32,7,41,2,144,1,55,3,16,32,7,32,7,41,2,136,1,55,3,8,32,0,32,4,32,11,32,7,65,8,106,16,117,11,32,4,47,1,14,34,2,65,128,128,1,113,13,1,32,4,32,4,47,1,10,65,1,106,34,3,59,1,10,32,0,40,2,0,40,2,60,32,3,65,255,255,3,113,65,20,108,106,33,3,32,4,2,127,2,64,32,11,47,1,0,13,0,32,11,47,1,18,65,1,113,13,0,32,3,45,0,18,65,2,113,69,13,0,32,2,65,128,32,114,12,1,11,32,2,65,255,223,2,113,11,59,1,14,32,1,4,64,32,3,45,0,18,65,7,118,32,15,114,33,15,11,65,127,32,9,65,127,70,13,3,26,32,9,65,1,106,33,10,32,9,33,2,3,64,2,64,2,64,32,0,40,2,0,40,2,60,32,0,40,2,24,34,8,32,2,65,4,116,34,28,106,34,3,47,1,10,34,4,65,20,108,106,34,17,47,1,14,34,5,65,255,255,3,70,4,64,32,2,33,6,12,1,11,32,17,47,1,18,34,11,65,16,113,4,64,32,3,32,5,59,1,10,12,2,11,32,2,33,6,32,11,65,8,113,4,64,32,3,32,4,65,1,106,59,1,10,32,2,65,1,107,33,6,11,32,7,32,3,41,2,8,55,3,88,32,7,32,3,41,2,0,55,3,80,32,7,65,255,255,3,54,2,84,32,3,40,2,4,65,255,255,3,71,4,64,32,0,32,7,65,208,0,106,32,2,16,72,34,4,69,13,1,32,29,33,5,32,3,47,1,4,34,3,32,0,40,2,52,73,4,64,32,0,40,2,48,32,3,65,12,108,106,33,5,11,32,5,40,2,0,33,14,32,4,40,2,0,33,3,2,64,32,5,40,2,4,34,8,32,4,40,2,4,34,5,106,34,13,32,4,40,2,8,77,13,0,32,13,65,28,108,33,11,2,127,32,3,4,64,32,3,32,11,35,6,40,2,0,17,1,0,12,1,11,32,11,35,7,40,2,0,17,0,0,11,33,3,32,4,32,13,54,2,8,32,4,40,2,4,34,13,32,5,77,13,0,32,13,32,5,107,65,28,108,34,13,69,13,0,32,3,32,11,106,32,3,32,5,65,28,108,106,32,13,252,10,0,0,11,2,64,32,8,69,13,0,32,8,65,28,108,33,11,32,3,32,5,65,28,108,106,33,5,32,14,4,64,32,11,69,13,1,32,5,32,14,32,11,252,10,0,0,12,1,11,32,11,69,13,0,32,5,65,0,32,11,252,11,0,11,32,4,32,3,54,2,0,32,4,32,4,40,2,4,32,8,106,54,2,4,32,0,40,2,24,33,8,11,32,0,40,2,28,34,3,65,1,106,34,4,32,0,40,2,32,75,4,64,32,4,65,4,116,33,3,2,127,32,8,4,64,32,8,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,8,32,0,32,4,54,2,32,32,0,40,2,28,33,3,11,2,64,32,2,65,1,106,34,2,32,3,79,4,64,32,2,65,4,116,33,5,12,1,11,32,2,65,4,116,33,5,32,3,32,2,107,65,4,116,34,4,69,13,0,32,8,32,28,106,65,32,106,32,5,32,8,106,32,4,252,10,0,0,11,32,5,32,8,106,34,4,32,7,41,3,80,55,0,0,32,4,32,7,41,3,88,55,0,8,32,0,32,8,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,32,8,32,2,65,4,116,106,34,2,32,17,47,1,14,59,1,10,32,18,65,1,106,33,18,32,10,65,1,106,33,10,32,17,45,0,18,65,32,113,69,13,0,32,2,32,2,47,1,14,65,128,32,114,59,1,14,11,32,6,65,1,106,33,2,11,32,2,32,10,73,13,0,11,12,2,11,65,0,33,18,32,6,65,1,113,13,1,32,4,47,1,4,34,2,32,0,40,2,52,79,13,0,32,0,40,2,48,32,2,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,40,2,28,32,9,65,127,115,106,65,4,116,34,2,4,64,32,0,40,2,24,32,13,106,34,4,32,4,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,32,9,65,1,107,12,1,11,32,9,11,33,3,32,18,65,1,106,33,2,11,32,2,32,3,106,34,9,32,0,40,2,28,34,8,73,13,0,11,65,0,33,6,32,8,69,13,0,3,64,2,64,32,6,65,4,116,34,25,32,0,40,2,24,106,34,12,45,0,15,65,192,0,113,69,4,64,2,64,2,64,32,6,34,5,65,1,106,34,4,32,8,79,13,0,3,64,32,0,40,2,24,34,23,32,4,65,4,116,106,34,16,47,1,8,32,12,47,1,8,71,13,1,32,16,47,1,12,32,12,47,1,12,71,13,1,32,29,33,10,32,0,40,2,52,34,2,32,12,47,1,4,34,3,75,4,64,32,0,40,2,48,32,3,65,12,108,106,33,10,11,32,29,33,9,32,2,32,16,47,1,4,34,17,77,34,26,69,4,64,32,0,40,2,48,32,17,65,12,108,106,33,9,11,65,1,33,18,32,7,65,1,58,0,104,32,7,65,1,58,0,80,32,9,40,2,4,33,14,65,0,33,3,2,64,2,64,2,64,2,64,32,10,40,2,4,34,27,4,64,65,1,33,11,65,0,33,2,3,64,2,64,2,64,32,3,32,14,73,4,64,2,64,2,64,32,10,40,2,0,32,2,65,28,108,106,34,13,40,2,16,34,22,32,9,40,2,0,32,3,65,28,108,106,34,19,40,2,16,34,28,70,4,64,32,13,40,2,24,32,19,40,2,24,71,13,1,32,3,65,1,106,33,3,32,2,65,1,106,33,2,12,5,11,32,13,40,2,0,34,13,32,19,40,2,0,34,19,73,13,3,32,13,32,19,77,4,64,2,127,32,22,41,2,0,34,33,167,34,22,65,1,113,4,64,32,33,66,56,136,167,12,1,11,32,22,40,2,16,11,32,13,106,33,13,32,13,2,127,32,28,41,2,0,34,33,167,34,22,65,1,113,4,64,32,33,66,56,136,167,12,1,11,32,22,40,2,16,11,32,19,106,34,19,75,13,4,32,13,32,19,79,13,1,11,12,1,11,32,2,65,1,106,33,2,65,0,33,11,11,32,3,65,1,106,33,3,65,0,33,18,12,2,11,32,7,32,11,58,0,104,32,7,32,18,58,0,80,32,7,65,232,0,106,33,2,12,4,11,32,2,65,1,106,33,2,65,0,33,11,11,32,2,32,27,73,13,0,11,32,7,32,11,58,0,104,32,7,32,18,58,0,80,11,32,7,65,208,0,106,33,2,32,3,32,14,73,13,0,32,18,13,1,12,2,11,32,2,65,0,58,0,0,32,7,45,0,80,69,13,1,11,32,12,47,1,10,32,16,47,1,10,70,4,64,32,26,4,127,32,8,5,32,0,40,2,48,32,17,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,32,0,40,2,28,11,32,5,107,65,4,116,65,32,107,34,2,4,64,32,16,32,23,32,5,65,4,116,106,65,32,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,12,2,11,32,16,32,16,47,1,14,65,128,192,0,114,59,1,14,11,32,7,45,0,104,65,1,70,4,64,32,12,47,1,10,32,16,47,1,10,70,4,64,32,12,47,1,4,34,2,32,0,40,2,52,73,4,64,32,0,40,2,48,32,2,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,40,2,28,32,6,65,127,115,106,65,4,116,34,2,4,64,32,0,40,2,24,32,25,106,34,4,32,4,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,32,6,65,1,107,33,6,12,5,11,32,12,32,12,47,1,14,65,128,192,0,114,59,1,14,11,32,4,33,5,11,32,5,65,1,106,34,4,32,0,40,2,28,34,8,73,13,0,11,11,32,0,40,2,0,40,2,60,32,12,47,1,10,65,20,108,106,47,1,12,65,255,255,3,71,13,0,32,12,45,0,15,65,32,113,13,0,32,0,40,2,36,33,2,32,0,32,0,40,2,40,34,8,65,1,106,34,4,32,0,40,2,44,34,3,75,4,127,65,8,32,3,65,1,116,34,3,32,4,32,3,32,4,75,27,34,4,32,4,65,8,77,27,34,3,65,4,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,44,32,0,40,2,40,34,8,65,1,106,5,32,4,11,54,2,40,32,0,32,2,54,2,36,32,2,32,8,65,4,116,106,34,2,32,12,41,2,0,55,2,0,32,2,32,12,41,2,8,55,2,8,32,0,40,2,28,32,12,32,0,40,2,24,107,65,127,115,65,4,118,106,65,4,116,34,2,4,64,32,12,32,12,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,32,6,65,1,107,33,6,65,1,33,15,11,32,6,65,1,106,33,6,12,1,11,32,8,32,6,65,127,115,106,65,4,116,34,2,4,64,32,12,32,12,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,11,32,6,32,8,73,13,0,11,11,2,64,2,64,2,64,32,21,69,13,0,2,64,32,24,4,64,32,0,40,2,80,32,0,40,2,84,73,13,1,11,32,0,40,2,28,34,4,4,64,32,0,40,2,24,33,3,32,0,40,2,0,40,2,60,33,5,65,0,33,2,3,64,32,5,32,3,32,2,65,4,116,106,34,6,47,1,10,65,20,108,106,47,1,12,34,9,65,255,255,3,71,4,64,32,0,40,2,80,32,6,47,1,8,32,9,106,73,13,3,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,32,0,40,2,80,32,0,40,2,84,79,13,1,32,0,45,0,156,1,13,1,32,0,40,2,8,32,0,40,2,12,65,28,108,106,65,28,107,40,2,0,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,3,113,13,0,32,2,40,2,36,69,13,0,2,64,2,64,2,64,32,0,40,2,0,34,4,40,2,148,1,34,3,14,2,4,0,1,11,32,2,47,1,40,33,10,32,4,40,2,144,1,33,9,65,0,33,2,12,1,11,32,2,47,1,40,33,10,32,4,40,2,144,1,33,9,65,0,33,2,3,64,32,2,32,3,65,1,118,34,4,32,2,106,34,2,32,9,32,2,65,1,116,106,47,1,0,32,10,65,255,255,3,113,75,27,33,2,32,3,32,4,107,34,3,65,1,75,13,0,11,11,32,9,32,2,65,1,116,106,47,1,0,32,10,65,255,255,3,113,71,13,1,11,65,0,33,2,32,20,16,71,65,1,107,14,2,2,1,0,11,32,0,65,1,58,0,157,1,12,5,11,65,1,33,2,32,0,32,0,40,2,80,65,1,106,54,2,80,11,32,0,32,2,58,0,156,1,12,3,11,32,0,40,2,28,32,8,107,11,54,2,28,11,2,64,2,64,2,64,32,20,35,2,65,11,106,16,70,65,1,107,14,2,1,0,2,11,32,0,45,0,156,1,69,4,64,32,0,65,1,58,0,156,1,32,0,32,0,40,2,80,65,1,106,54,2,80,11,32,0,65,0,58,0,157,1,12,2,11,32,0,45,0,156,1,65,1,70,4,64,32,0,65,0,58,0,156,1,32,0,32,0,40,2,80,65,1,107,54,2,80,11,32,0,65,0,58,0,157,1,12,1,11,32,0,40,2,12,34,4,65,1,107,34,2,4,64,2,64,32,4,65,2,107,34,3,4,64,32,0,40,2,8,33,6,3,64,32,2,33,4,2,64,2,127,32,6,32,3,34,2,65,28,108,106,34,5,40,2,0,40,2,0,34,3,65,1,113,4,64,32,3,65,2,113,13,5,32,3,65,3,118,65,1,113,12,1,11,32,3,47,1,44,34,3,65,1,113,13,4,32,3,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,20,40,2,0,40,2,8,34,9,40,2,84,32,9,47,1,36,32,3,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,3,11,32,2,65,1,107,34,3,13,0,11,11,65,1,33,4,11,32,0,32,4,54,2,12,32,0,32,0,40,2,80,65,1,107,54,2,80,5,32,0,65,1,58,0,158,1,11,12,0,11,0,11,225,1,1,3,127,2,127,32,0,40,2,40,69,4,64,65,0,32,0,65,0,16,119,69,13,1,26,11,32,0,40,2,36,34,3,40,2,0,34,2,65,127,70,4,64,32,0,32,0,40,2,136,1,34,2,65,1,106,54,2,136,1,32,3,32,2,54,2,0,11,32,1,32,2,54,2,0,32,1,32,3,47,1,12,59,1,4,2,64,32,3,47,1,4,34,2,32,0,40,2,52,79,4,64,32,0,40,2,64,33,2,32,0,40,2,60,33,4,12,1,11,32,0,40,2,48,32,2,65,12,108,106,34,4,40,2,4,33,2,32,4,65,127,54,2,4,32,4,40,2,0,33,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,1,32,2,59,1,6,32,1,32,4,54,2,8,32,0,40,2,40,65,4,116,65,16,107,34,1,4,64,32,3,32,3,65,16,106,32,1,252,10,0,0,11,32,0,32,0,40,2,40,65,1,107,54,2,40,65,1,11,11,87,1,3,127,2,64,2,64,32,2,40,2,0,34,3,32,2,40,2,4,34,4,114,69,4,64,32,2,66,127,55,2,0,12,1,11,32,1,40,2,0,34,5,32,3,75,13,1,32,3,32,5,71,13,0,32,1,40,2,4,32,4,75,13,1,11,32,0,32,1,41,2,0,55,2,112,32,0,32,2,41,2,0,55,2,120,11,11,87,1,3,127,2,64,2,64,32,2,40,2,0,34,3,32,2,40,2,4,34,4,114,69,4,64,32,2,66,127,55,2,0,12,1,11,32,1,40,2,0,34,5,32,3,75,13,1,32,3,32,5,71,13,0,32,1,40,2,4,32,4,75,13,1,11,32,0,32,1,41,2,0,55,2,88,32,0,32,2,41,2,0,55,2,96,11,11,102,1,3,127,32,0,40,2,76,34,3,4,64,3,64,32,0,40,2,72,32,2,65,6,108,106,34,4,47,1,2,32,1,70,4,64,32,3,32,2,65,127,115,106,65,6,108,34,3,4,64,32,4,32,4,65,6,106,32,3,252,10,0,0,11,32,0,32,0,40,2,76,65,1,107,34,3,54,2,76,32,2,65,1,107,33,2,11,32,2,65,1,106,34,2,32,3,73,13,0,11,11,11,171,2,1,4,127,2,64,32,0,40,2,16,34,4,69,13,0,32,0,40,2,12,33,5,3,64,2,64,32,2,32,5,32,3,65,3,116,106,34,6,40,2,4,70,4,64,32,0,40,2,0,32,6,40,2,0,106,32,1,32,2,16,27,69,13,1,11,32,3,65,1,106,34,3,32,4,71,13,1,12,2,11,11,32,3,65,127,70,13,0,32,0,40,2,64,34,4,69,13,0,32,0,40,2,60,33,5,65,0,33,2,32,3,65,255,255,3,113,33,1,3,64,2,64,32,1,32,5,32,2,65,20,108,106,34,0,47,1,6,70,4,64,32,0,65,255,255,3,59,1,6,32,0,47,1,8,34,3,65,255,255,3,70,13,1,32,0,65,255,255,3,59,1,8,32,0,32,3,59,1,6,32,0,47,1,10,34,3,65,255,255,3,70,13,1,32,0,65,255,255,3,59,1,10,32,0,32,3,59,1,8,12,1,11,32,1,32,0,47,1,8,71,4,64,32,0,47,1,10,32,1,71,13,1,32,0,65,255,255,3,59,1,10,12,1,11,32,0,65,255,255,3,59,1,8,32,0,47,1,10,34,3,65,255,255,3,70,13,0,32,0,65,255,255,3,59,1,10,32,0,32,3,59,1,8,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,11,133,1,1,4,127,32,0,40,2,112,34,5,69,4,64,65,0,15,11,2,127,65,127,32,0,40,2,108,34,3,40,2,0,32,1,75,13,0,26,2,64,3,64,32,5,32,2,34,4,65,1,106,34,2,71,4,64,32,1,32,3,32,2,65,3,116,106,40,2,0,79,13,1,12,2,11,11,32,3,32,4,65,3,116,106,47,1,4,12,1,11,32,3,32,4,65,3,116,106,47,1,4,11,34,2,32,0,40,2,64,79,4,64,65,0,15,11,32,0,40,2,60,32,2,65,20,108,106,45,0,18,65,7,118,11,35,1,1,127,32,0,40,2,100,32,1,75,4,127,32,0,40,2,96,32,1,65,28,108,106,45,0,24,5,65,0,11,65,1,113,11,80,1,3,127,32,0,40,2,76,34,2,69,4,64,65,1,15,11,32,0,40,2,72,33,3,65,0,33,0,3,64,2,64,32,1,32,3,32,0,65,6,108,106,34,4,47,1,2,71,13,0,32,4,45,0,4,65,1,70,13,0,65,0,15,11,32,0,65,1,106,34,0,32,2,71,13,0,11,65,1,11,16,0,32,0,40,2,96,32,1,65,28,108,106,40,2,20,11,16,0,32,0,40,2,96,32,1,65,28,108,106,40,2,16,11,54,1,1,127,32,0,40,2,96,32,1,65,28,108,106,34,1,40,2,8,33,3,32,2,32,1,40,2,12,34,1,54,2,0,32,1,69,4,64,65,0,15,11,32,0,40,2,84,32,3,65,3,116,106,11,45,1,1,127,32,0,40,2,36,32,1,65,255,255,3,113,65,3,116,106,34,1,40,2,0,33,3,32,0,40,2,24,32,2,32,1,40,2,4,54,2,0,32,3,106,11,47,1,1,127,32,2,65,255,255,3,113,34,2,32,0,40,2,48,32,1,65,12,108,106,34,0,40,2,4,73,4,127,32,0,40,2,0,32,2,106,45,0,0,5,65,0,11,11,45,1,1,127,32,0,40,2,12,32,1,65,255,255,3,113,65,3,116,106,34,1,40,2,0,33,3,32,0,40,2,0,32,2,32,1,40,2,4,54,2,0,32,3,106,11,7,0,32,0,40,2,40,11,7,0,32,0,40,2,16,11,7,0,32,0,40,2,100,11,132,88,2,27,127,1,126,35,0,65,128,1,107,34,7,36,0,2,64,2,64,32,0,4,64,32,0,40,2,0,65,16,107,65,124,75,13,1,11,32,4,65,6,54,2,0,12,1,11,65,164,1,35,7,34,5,40,2,0,17,0,0,34,6,65,0,65,156,1,252,11,0,32,6,65,0,54,2,160,1,32,6,32,0,54,2,156,1,32,6,65,16,32,5,40,2,0,17,0,0,34,0,54,2,120,32,6,65,8,54,2,128,1,32,6,32,6,40,2,124,34,5,65,1,106,54,2,124,32,0,32,5,65,1,116,106,65,0,59,1,0,32,7,66,0,55,2,40,32,7,32,1,32,2,106,54,2,36,32,7,32,1,54,2,32,32,7,32,1,54,2,28,32,7,65,28,106,34,0,16,12,26,32,0,16,13,2,64,32,7,40,2,28,34,10,32,7,40,2,36,73,4,64,3,64,32,6,40,2,96,33,1,32,6,40,2,88,33,5,32,6,40,2,64,33,0,2,64,32,6,40,2,100,34,8,65,1,106,34,2,32,6,40,2,104,34,11,77,4,64,32,8,33,14,12,1,11,65,8,32,11,65,1,116,34,11,32,2,32,2,32,11,73,27,34,2,32,2,65,8,77,27,34,11,65,28,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,104,32,6,40,2,100,34,14,65,1,106,33,2,32,7,40,2,28,33,10,11,32,6,32,2,54,2,100,32,6,32,1,54,2,96,32,7,65,0,58,0,26,32,7,65,0,59,1,24,32,7,40,2,32,33,2,32,1,32,14,65,28,108,106,34,1,65,0,58,0,24,32,1,65,0,54,2,20,32,1,65,0,54,2,12,32,1,32,5,54,2,8,32,1,65,0,54,2,4,32,1,32,0,54,2,0,32,1,32,10,32,2,107,54,2,16,32,1,32,7,47,1,24,59,0,25,32,1,32,7,45,0,26,58,0,27,32,7,65,0,54,2,20,32,7,66,0,55,2,12,32,4,32,6,32,7,65,28,106,65,0,65,0,32,7,65,12,106,16,31,54,2,0,32,6,40,2,60,33,1,32,6,32,6,40,2,64,34,10,65,1,106,34,2,32,6,40,2,68,34,11,75,4,127,65,8,32,11,65,1,116,34,11,32,2,32,2,32,11,73,27,34,2,32,2,65,8,77,27,34,11,65,20,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,68,32,6,40,2,64,34,10,65,1,106,5,32,2,11,54,2,64,32,6,32,1,54,2,60,32,7,65,255,255,3,59,1,52,32,7,65,127,54,2,48,32,1,32,10,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,7,40,2,48,54,1,6,32,1,32,7,47,1,52,59,1,10,32,1,66,255,255,255,255,15,55,1,12,32,6,40,2,96,32,6,40,2,100,65,28,108,106,34,2,65,24,107,34,18,32,6,40,2,64,32,0,107,54,2,0,32,2,65,16,107,32,6,40,2,88,32,5,107,54,2,0,32,2,65,8,107,32,7,40,2,28,32,7,40,2,32,107,34,1,54,2,0,32,4,40,2,0,34,5,4,64,32,5,65,127,70,4,64,32,4,65,1,54,2,0,11,32,3,32,1,54,2,0,32,7,40,2,12,34,0,69,13,3,32,0,35,8,40,2,0,17,2,0,12,3,11,32,6,40,2,48,33,1,32,2,65,28,107,32,6,32,6,40,2,52,34,10,65,1,106,34,9,32,6,40,2,56,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,9,32,5,32,9,75,27,34,5,32,5,65,8,77,27,34,11,65,12,108,33,5,2,127,32,1,4,64,32,1,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,56,32,6,40,2,52,34,10,65,1,106,5,32,9,11,54,2,52,32,6,32,1,54,2,48,32,1,32,10,65,12,108,106,34,1,32,7,41,2,12,55,2,0,32,1,32,7,40,2,20,54,2,8,65,255,255,3,33,9,3,64,2,127,2,64,32,6,40,2,60,34,2,32,0,65,20,108,106,34,1,47,1,0,13,0,32,1,47,1,12,13,0,32,1,47,1,4,13,0,32,2,32,0,65,1,106,34,12,65,20,108,106,34,15,47,1,0,69,13,0,32,15,47,1,12,65,1,71,13,0,32,15,45,0,18,65,2,113,13,0,32,1,47,1,14,12,1,11,32,1,33,15,32,0,33,12,32,9,11,33,16,32,6,40,2,64,33,1,32,15,47,1,12,34,5,69,33,11,32,12,33,0,2,64,3,64,32,0,65,1,106,34,0,32,1,79,13,1,32,2,32,0,65,20,108,106,34,13,45,0,18,65,16,113,13,1,32,13,47,1,12,32,5,71,13,0,11,65,0,33,11,11,32,15,47,1,0,33,13,2,64,32,6,40,2,76,34,5,32,6,47,1,160,1,34,0,107,34,1,69,4,64,32,6,40,2,72,33,9,12,1,11,32,6,40,2,72,33,9,32,1,65,1,71,4,64,3,64,32,1,65,1,118,34,17,32,0,106,34,10,32,0,32,13,32,2,32,9,32,10,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,27,33,0,32,1,32,17,107,34,1,65,1,75,13,0,11,11,32,0,32,13,32,2,32,9,32,0,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,106,33,0,11,2,64,32,0,32,5,79,13,0,3,64,32,2,32,9,32,0,65,6,108,106,34,1,47,1,0,65,20,108,106,47,1,0,32,13,71,13,1,32,1,47,1,2,32,8,65,255,255,3,113,79,13,1,32,0,65,1,106,34,0,32,5,71,13,0,11,32,5,33,0,11,32,5,65,1,106,34,1,32,6,40,2,80,75,4,64,32,1,65,6,108,33,2,2,127,32,9,4,64,32,9,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,9,32,6,32,1,54,2,80,32,6,40,2,76,33,5,11,32,0,65,6,108,33,1,2,64,32,0,32,5,79,13,0,32,5,32,0,107,65,6,108,34,0,69,13,0,32,1,32,9,106,34,2,65,6,106,32,2,32,0,252,10,0,0,11,32,1,32,9,106,34,0,65,0,58,0,5,32,0,32,11,58,0,4,32,0,32,8,59,0,2,32,0,32,12,59,0,0,32,6,32,9,54,2,72,32,6,32,6,40,2,76,65,1,106,54,2,76,32,15,47,1,0,69,4,64,32,6,32,6,47,1,160,1,65,1,106,59,1,160,1,11,32,15,47,1,14,34,0,65,255,255,3,71,4,64,32,16,33,9,12,1,11,65,255,255,3,33,9,32,16,65,255,255,3,113,34,0,65,255,255,3,71,13,0,11,40,2,0,34,0,32,0,32,18,40,2,0,106,65,1,107,34,11,73,4,64,32,6,40,2,60,33,1,3,64,2,64,32,1,32,0,65,20,108,34,16,106,34,2,45,0,18,65,8,113,69,13,0,32,2,47,1,14,34,8,65,255,255,3,70,13,0,32,0,32,8,77,13,0,32,1,32,8,65,20,108,106,34,2,47,1,14,34,5,65,255,255,3,70,13,0,32,5,32,8,77,13,0,32,5,32,11,79,13,0,32,6,40,2,64,33,5,32,7,32,2,41,1,0,55,3,48,32,7,32,2,41,1,6,55,1,54,32,2,47,1,12,33,13,32,2,40,1,16,33,2,2,64,32,5,65,1,106,34,14,32,6,40,2,68,34,18,77,4,64,32,5,33,15,12,1,11,32,1,65,8,32,18,65,1,116,34,1,32,14,32,1,32,14,75,27,34,1,32,1,65,8,77,27,34,18,65,20,108,35,6,40,2,0,17,1,0,33,1,32,6,32,18,54,2,68,32,6,40,2,64,34,15,65,1,106,33,14,11,32,6,32,14,54,2,64,32,6,32,1,54,2,60,32,1,32,15,65,20,108,106,34,1,32,7,41,3,48,55,1,0,32,7,41,1,54,33,32,32,1,32,2,54,1,16,32,1,65,255,255,3,59,1,14,32,1,32,32,55,1,6,32,7,65,255,255,3,59,1,8,32,7,65,127,54,2,4,32,6,40,2,60,33,1,32,6,32,6,40,2,64,34,14,65,1,106,34,2,32,6,40,2,68,34,18,75,4,127,65,8,32,18,65,1,116,34,18,32,2,32,2,32,18,73,27,34,2,32,2,65,8,77,27,34,18,65,20,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,18,54,2,68,32,6,40,2,64,34,14,65,1,106,5,32,2,11,54,2,64,32,6,32,1,54,2,60,32,1,32,14,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,7,40,2,4,54,1,6,32,1,32,7,47,1,8,59,1,10,32,1,65,128,128,192,0,54,1,16,32,1,32,8,65,1,106,59,1,14,32,1,32,13,59,1,12,32,6,40,2,60,34,1,32,16,106,32,5,59,1,14,11,32,0,65,1,106,34,0,32,11,71,13,0,11,11,32,7,40,2,28,34,10,32,7,40,2,36,73,13,0,11,11,65,0,33,18,2,64,32,6,40,2,76,34,2,69,4,64,12,1,11,65,0,33,0,65,0,33,9,3,64,2,64,32,6,40,2,72,32,0,65,6,108,106,34,1,45,0,4,13,0,32,6,40,2,60,32,1,47,1,0,65,20,108,106,47,1,0,69,13,0,2,64,32,25,65,1,106,34,1,32,9,77,13,0,65,8,32,9,65,1,116,34,2,32,1,32,1,32,2,73,27,34,2,32,2,65,8,77,27,34,9,65,1,116,33,2,32,23,4,64,32,23,32,2,35,6,40,2,0,17,1,0,33,23,12,1,11,32,2,35,7,40,2,0,17,0,0,33,23,11,32,23,32,25,65,1,116,106,32,0,59,1,0,32,6,40,2,76,33,2,32,1,33,25,11,32,0,65,1,106,34,0,32,2,73,13,0,11,11,2,64,2,64,2,64,32,6,40,2,64,69,4,64,65,1,33,30,12,1,11,65,0,33,16,65,0,33,12,65,0,33,15,3,64,2,127,32,6,40,2,60,32,18,65,20,108,106,34,5,47,1,12,34,8,65,255,255,3,70,4,64,32,5,32,5,47,1,18,65,128,3,114,59,1,18,32,18,65,1,106,12,1,11,32,5,32,5,47,1,18,34,11,65,191,127,113,65,192,0,65,0,32,5,47,1,6,65,255,255,3,71,27,114,34,14,59,1,18,2,64,32,18,65,1,106,34,0,32,6,40,2,64,34,1,79,13,0,32,6,40,2,60,32,0,65,20,108,106,34,2,47,1,12,34,13,65,255,255,3,71,32,8,32,13,73,113,33,13,2,64,2,64,2,64,2,64,32,5,47,1,0,34,19,4,64,32,13,69,13,5,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,11,65,192,0,114,59,1,18,11,32,2,32,2,47,1,18,65,128,3,114,59,1,18,32,18,65,2,106,34,10,32,6,40,2,64,34,1,79,13,3,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,8,65,255,255,3,70,13,3,32,8,32,5,47,1,12,75,13,1,12,2,11,32,13,69,13,4,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,11,65,192,0,114,34,14,59,1,18,32,6,40,2,64,33,1,11,32,18,65,2,106,34,10,32,1,79,13,3,3,64,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,11,65,255,255,3,70,13,2,32,8,32,11,79,13,2,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,14,65,192,0,114,34,14,59,1,18,32,6,40,2,64,33,1,11,32,10,65,1,106,34,10,32,1,73,13,0,11,12,1,11,3,64,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,5,47,1,18,65,192,0,114,59,1,18,11,32,2,32,2,47,1,18,65,128,3,114,59,1,18,32,10,65,1,106,34,10,32,6,40,2,64,34,1,79,13,1,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,8,65,255,255,3,70,13,1,32,8,32,5,47,1,12,75,13,0,11,11,32,19,69,13,1,11,2,64,32,12,65,1,106,34,1,32,15,77,13,0,65,8,32,15,65,1,116,34,2,32,1,32,1,32,2,73,27,34,2,32,2,65,8,77,27,34,15,65,2,116,33,2,32,16,4,64,32,16,32,2,35,6,40,2,0,17,1,0,33,16,12,1,11,32,2,35,7,40,2,0,17,0,0,33,16,11,32,16,32,12,65,2,116,106,32,18,54,2,0,32,1,33,12,32,0,12,2,11,32,5,47,1,2,34,2,69,13,0,32,6,40,2,156,1,34,11,40,2,0,65,15,73,13,0,65,0,33,8,2,127,65,0,32,2,65,253,255,3,75,13,0,26,65,0,32,11,40,2,72,32,2,65,3,108,106,45,0,2,65,1,113,69,13,0,26,32,11,40,2,160,1,32,11,40,2,156,1,32,2,65,2,116,106,34,2,47,1,0,65,1,116,106,33,8,32,2,47,1,2,11,33,14,32,0,32,1,79,13,0,32,6,40,2,60,33,11,32,0,33,10,3,64,32,11,32,10,65,20,108,106,34,13,47,1,12,34,2,65,255,255,3,70,13,1,32,2,32,5,47,1,12,34,18,77,13,1,2,64,32,18,65,1,106,32,2,71,13,0,32,13,47,1,0,34,13,69,13,0,65,0,33,2,32,14,4,64,3,64,32,13,32,8,32,2,65,1,116,106,47,1,0,70,13,2,32,2,65,1,106,34,2,32,14,71,13,0,11,11,32,6,40,2,112,34,13,69,13,0,32,6,40,2,108,33,18,65,0,33,2,3,64,32,18,32,2,65,3,116,106,34,19,47,1,4,32,10,73,4,64,32,13,32,2,65,1,106,34,2,71,13,1,12,2,11,11,32,3,32,19,40,2,0,54,2,0,65,0,33,19,32,16,33,18,12,7,11,32,10,65,1,106,34,10,32,1,71,13,0,11,11,32,0,11,33,18,32,18,32,6,40,2,64,73,13,0,11,32,12,69,4,64,65,1,33,30,32,16,33,18,12,1,11,32,7,65,64,107,33,11,65,0,33,14,65,0,33,13,65,0,33,5,3,64,32,6,40,2,60,32,16,32,26,65,2,116,106,40,2,0,65,20,108,106,47,1,0,33,8,65,0,33,0,32,7,65,0,59,1,72,32,11,66,0,55,3,0,32,7,66,0,55,3,56,32,7,66,0,55,3,48,32,13,34,1,33,2,2,64,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,8,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,8,32,14,32,0,65,28,108,106,47,1,0,34,1,70,13,1,32,0,32,1,32,8,73,106,33,2,11,32,5,32,13,65,1,106,34,0,73,4,64,32,0,65,28,108,33,1,2,127,32,14,4,64,32,14,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,14,32,0,33,5,11,32,2,65,28,108,33,1,2,64,32,2,32,13,79,13,0,32,13,32,2,107,65,28,108,34,2,69,13,0,32,1,32,14,106,34,13,65,28,106,32,13,32,2,252,10,0,0,11,32,1,32,14,106,34,1,32,8,59,0,0,32,1,32,7,41,3,48,55,0,2,32,1,32,7,41,3,56,55,0,10,32,1,32,11,41,3,0,55,0,18,32,1,32,7,47,1,72,59,0,26,32,0,33,13,11,32,26,65,1,106,34,26,32,12,71,13,0,11,32,16,33,18,32,12,33,26,12,1,11,65,0,33,5,65,0,33,13,65,0,33,14,11,32,6,40,2,156,1,34,8,47,1,4,32,8,47,1,12,34,10,75,4,64,32,7,65,64,107,33,11,3,64,2,64,32,10,65,254,255,3,71,4,64,32,8,40,2,72,32,10,65,3,108,106,45,0,0,65,1,113,13,1,11,65,0,33,0,32,7,65,0,59,1,72,32,11,66,0,55,3,0,32,7,66,0,55,3,56,32,7,66,0,55,3,48,32,13,34,1,33,2,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,10,32,14,32,0,65,28,108,106,47,1,0,73,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,10,32,14,32,0,65,28,108,106,47,1,0,34,1,70,13,1,32,0,32,1,32,10,73,106,33,2,11,32,5,32,13,65,1,106,34,0,73,4,64,32,0,65,28,108,33,1,2,127,32,14,4,64,32,14,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,14,32,0,33,5,11,32,2,65,28,108,33,1,2,64,32,2,32,13,79,13,0,32,13,32,2,107,65,28,108,34,2,69,13,0,32,1,32,14,106,34,8,65,28,106,32,8,32,2,252,10,0,0,11,32,1,32,14,106,34,1,32,10,59,0,0,32,1,32,7,47,1,72,59,0,26,32,1,32,11,41,3,0,55,0,18,32,1,32,7,41,3,56,55,0,10,32,1,32,7,41,3,48,55,0,2,32,6,40,2,156,1,33,8,32,0,33,13,11,32,10,65,1,106,34,10,32,8,47,1,4,73,13,0,11,11,32,8,40,2,20,65,129,2,108,65,2,35,9,40,2,0,17,1,0,33,28,32,6,40,2,156,1,34,20,47,1,20,65,254,255,3,113,4,64,65,1,33,15,3,64,2,127,32,20,40,2,24,34,29,32,15,77,4,64,32,20,40,2,44,32,20,40,2,48,32,15,32,29,107,65,2,116,106,40,2,0,65,1,116,106,34,8,65,2,106,33,27,32,8,47,1,0,12,1,11,32,20,40,2,40,32,20,40,2,4,32,15,108,65,1,116,106,65,2,107,33,8,65,0,33,27,65,0,11,33,24,65,0,33,10,65,255,255,3,33,16,65,0,33,11,65,0,33,19,3,64,2,64,2,64,2,64,2,64,2,64,2,64,32,15,32,29,73,4,64,32,20,40,2,4,33,1,3,64,32,1,32,16,65,1,106,34,16,65,255,255,3,113,34,0,77,13,7,32,8,47,1,2,33,5,32,8,65,2,106,34,17,33,8,32,5,69,13,0,11,12,1,11,32,8,65,2,106,34,17,32,27,71,13,1,32,24,65,255,255,3,113,69,13,5,32,8,65,6,106,34,17,32,8,47,1,4,65,1,116,106,33,27,32,24,65,1,107,33,24,32,8,47,1,2,33,5,32,8,47,1,6,34,16,33,0,11,32,20,40,2,12,32,0,75,13,1,32,17,33,8,12,3,11,32,17,47,1,0,33,16,12,1,11,32,20,40,2,52,32,5,65,255,255,3,113,65,3,116,106,34,0,65,8,106,33,19,32,0,45,0,0,33,10,65,0,33,11,11,32,10,69,4,64,32,17,33,8,32,11,33,5,12,1,11,65,0,33,12,3,64,2,64,2,64,2,64,32,19,32,12,65,3,116,106,34,21,45,0,0,14,2,1,0,2,11,32,6,40,2,156,1,34,2,40,2,76,32,21,47,1,2,34,1,65,1,116,106,34,8,65,2,106,33,5,65,0,33,0,2,64,32,2,40,2,80,34,2,47,1,0,34,9,65,1,107,65,255,255,3,113,32,1,79,13,0,3,64,2,64,32,0,65,2,106,33,22,32,2,32,0,65,1,116,106,47,1,2,33,0,32,9,65,255,255,3,113,32,1,70,13,0,32,1,32,2,32,0,32,22,106,34,0,65,1,116,106,47,1,0,34,9,65,1,107,65,255,255,3,113,75,13,1,12,2,11,11,32,2,32,22,65,1,116,106,34,8,32,8,32,0,65,1,116,106,34,5,79,13,2,11,32,13,69,13,1,3,64,32,8,47,1,0,33,2,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,2,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,11,2,64,32,14,32,0,65,28,108,106,34,0,47,1,0,32,2,71,13,0,32,0,40,2,16,33,1,32,0,40,2,20,34,2,4,64,32,15,32,1,32,2,65,6,108,106,65,6,107,47,1,0,70,13,1,11,32,0,32,2,65,1,106,34,9,32,0,40,2,24,34,22,75,4,127,65,8,32,22,65,1,116,34,2,32,9,32,2,32,9,75,27,34,2,32,2,65,8,77,27,34,9,65,6,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,9,54,2,24,32,0,40,2,20,34,2,65,1,106,5,32,9,11,54,2,20,32,0,32,1,54,2,16,32,21,45,0,1,33,9,32,21,47,1,6,33,22,32,1,32,2,65,6,108,106,34,0,65,0,58,0,5,32,0,32,22,59,1,2,32,0,32,15,59,1,0,32,0,32,9,65,128,1,114,58,0,4,11,32,8,65,2,106,34,8,32,5,73,13,0,11,12,1,11,32,21,45,0,4,13,0,32,28,32,21,47,1,2,65,130,4,108,106,34,0,47,1,0,34,1,4,64,32,1,65,255,1,75,13,1,32,15,32,0,32,1,65,1,116,106,47,1,0,70,13,1,11,32,0,32,1,65,1,106,34,1,59,1,0,32,0,32,1,65,255,255,3,113,65,1,116,106,32,15,59,1,0,11,32,12,65,1,106,34,12,32,10,71,13,0,11,32,17,33,8,12,2,11,65,0,33,10,65,0,33,11,32,5,65,255,255,3,113,34,0,69,13,1,2,64,32,0,32,15,70,13,0,32,28,32,0,65,130,4,108,106,34,0,47,1,0,34,1,4,64,32,1,65,255,1,75,13,1,32,15,32,0,32,1,65,1,116,106,47,1,0,70,13,1,11,32,0,32,1,65,1,106,34,1,59,1,0,32,0,32,1,65,255,255,3,113,65,1,116,106,32,15,59,1,0,11,32,6,40,2,156,1,34,1,40,2,0,65,14,79,4,64,32,5,33,11,32,15,32,1,40,2,132,1,32,15,65,1,116,106,47,1,0,71,13,2,11,32,1,40,2,76,32,16,65,255,255,3,113,34,2,65,1,116,106,34,17,65,2,106,33,12,65,0,33,0,2,64,32,1,40,2,80,34,1,47,1,0,34,9,65,1,107,65,255,255,3,113,32,2,79,13,0,3,64,2,64,32,0,65,2,106,33,21,32,1,32,0,65,1,116,106,47,1,2,33,0,32,9,65,255,255,3,113,32,2,70,13,0,32,2,32,1,32,0,32,21,106,34,0,65,1,116,106,47,1,0,34,9,65,1,107,65,255,255,3,113,75,13,1,12,2,11,11,32,5,33,11,32,1,32,21,65,1,116,106,34,17,32,17,32,0,65,1,116,106,34,12,79,13,2,11,32,5,33,11,32,13,69,13,1,3,64,32,17,47,1,0,33,2,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,5,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,2,75,27,33,0,32,1,32,5,107,34,1,65,1,75,13,0,11,11,2,64,32,14,32,0,65,28,108,106,34,0,47,1,0,32,2,71,13,0,32,0,40,2,4,33,1,32,0,40,2,8,34,2,4,64,32,15,32,1,32,2,65,1,116,106,65,2,107,47,1,0,70,13,1,11,32,0,32,2,65,1,106,34,9,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,2,32,9,32,2,32,9,75,27,34,2,32,2,65,8,77,27,34,5,65,1,116,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,12,32,0,40,2,8,34,2,65,1,106,5,32,9,11,54,2,8,32,0,32,1,54,2,4,32,1,32,2,65,1,116,106,32,15,59,1,0,11,32,17,65,2,106,34,17,32,12,73,13,0,11,12,1,11,11,32,15,65,1,106,34,15,32,6,40,2,156,1,34,20,47,1,20,73,13,0,11,11,2,64,32,13,69,4,64,65,0,33,13,65,0,33,20,12,1,11,65,0,33,24,65,0,33,11,65,0,33,20,3,64,2,64,32,14,32,24,65,28,108,106,34,8,40,2,20,34,1,69,4,64,32,8,40,2,4,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,8,65,0,54,2,12,32,8,66,0,55,2,4,32,13,32,24,65,127,115,106,65,28,108,34,0,4,64,32,8,32,8,65,28,106,32,0,252,10,0,0,11,32,13,65,1,107,33,13,12,1,11,32,8,40,2,16,33,2,2,64,32,1,32,11,77,4,64,32,1,65,6,108,33,0,12,1,11,32,1,65,6,108,33,0,2,127,32,20,4,64,32,20,32,0,35,6,40,2,0,17,1,0,12,1,11,32,0,35,7,40,2,0,17,0,0,11,33,20,32,1,33,11,11,32,0,4,64,32,20,32,2,32,0,252,10,0,0,11,3,64,2,64,32,20,32,1,65,1,107,34,19,65,6,108,106,34,0,45,0,4,65,255,0,113,34,1,65,2,73,4,64,32,19,33,1,12,1,11,32,28,32,0,47,1,0,65,130,4,108,106,34,2,47,1,0,34,21,69,4,64,32,19,33,1,12,1,11,32,0,47,1,2,33,5,32,2,65,2,106,33,27,32,1,65,1,107,33,12,65,0,33,17,3,64,32,27,32,17,65,1,116,106,47,1,0,33,9,32,8,40,2,16,33,10,65,0,33,2,32,8,40,2,20,34,16,33,0,2,64,2,64,2,64,2,64,32,16,34,1,14,2,2,1,0,11,3,64,2,64,2,64,32,9,32,10,32,0,65,1,118,34,29,32,2,106,34,1,65,6,108,106,34,15,47,1,0,34,22,75,13,0,32,9,32,22,73,13,1,32,15,45,0,4,34,22,65,255,0,113,34,31,32,12,73,13,0,32,22,192,65,0,72,13,1,32,12,32,31,73,13,1,32,15,47,1,2,32,5,75,13,1,11,32,1,33,2,11,32,0,32,29,107,34,0,65,1,75,13,0,11,11,2,64,2,64,32,9,32,10,32,2,65,6,108,106,34,0,47,1,0,34,1,75,13,0,32,1,32,9,75,4,64,32,2,33,1,12,3,11,32,0,45,0,4,34,1,65,255,0,113,34,15,32,12,73,13,0,32,1,192,65,0,72,4,64,32,2,33,1,12,3,11,32,12,32,15,73,4,64,32,2,33,1,12,3,11,32,5,32,0,47,1,2,34,0,77,13,1,11,32,2,65,1,106,33,1,12,1,11,32,2,33,1,32,0,32,5,75,13,0,32,19,33,1,12,1,11,32,16,65,1,106,34,0,32,8,40,2,24,75,4,64,32,0,65,6,108,33,2,2,127,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,10,32,8,32,0,54,2,24,32,8,40,2,20,33,16,11,32,1,65,6,108,33,0,2,64,32,1,32,16,79,13,0,32,16,32,1,107,65,6,108,34,1,69,13,0,32,0,32,10,106,34,2,65,6,106,32,2,32,1,252,10,0,0,11,32,0,32,10,106,34,0,65,0,58,0,5,32,0,32,12,58,0,4,32,0,32,5,59,0,2,32,0,32,9,59,0,0,32,8,32,10,54,2,16,32,8,32,8,40,2,20,65,1,106,54,2,20,2,64,32,19,65,1,106,34,1,32,11,77,13,0,65,8,32,11,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,11,65,6,108,33,0,32,20,4,64,32,20,32,0,35,6,40,2,0,17,1,0,33,20,12,1,11,32,0,35,7,40,2,0,17,0,0,33,20,11,32,20,32,19,65,6,108,106,34,0,65,0,58,0,5,32,0,32,12,58,0,4,32,0,32,5,59,1,2,32,0,32,9,59,1,0,32,1,33,19,11,32,17,65,1,106,34,17,32,21,71,13,0,11,11,32,1,13,0,11,32,24,65,1,106,33,24,11,32,13,32,24,75,13,0,11,11,32,7,65,48,106,65,0,65,204,0,252,11,0,65,1,33,19,2,64,32,30,13,0,65,0,33,11,32,3,2,127,3,64,2,64,2,64,32,6,40,2,60,32,18,32,11,65,2,116,106,47,1,0,34,19,65,20,108,106,34,2,47,1,0,34,8,65,255,255,3,70,13,0,2,64,32,13,4,64,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,5,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,8,75,27,33,0,32,1,32,5,107,34,1,65,1,75,13,0,11,11,32,14,32,0,65,28,108,106,34,16,47,1,0,32,8,70,13,1,11,32,19,65,1,106,33,5,32,6,40,2,108,33,2,65,0,33,1,2,64,2,64,2,64,32,6,40,2,112,34,0,14,2,2,1,0,11,3,64,32,1,32,0,65,1,118,34,8,32,1,106,34,1,32,5,32,2,32,1,65,3,116,106,47,1,4,73,27,33,1,32,0,32,8,107,34,0,65,1,75,13,0,11,11,32,1,32,5,32,2,32,1,65,3,116,106,47,1,4,34,0,71,32,0,32,19,77,113,106,33,0,11,32,2,32,0,65,3,116,106,12,4,11,32,2,47,1,12,33,17,32,7,40,2,48,33,12,32,7,40,2,84,33,0,32,7,40,2,52,34,2,32,7,40,2,88,34,9,106,34,1,32,7,40,2,92,34,5,75,4,64,32,1,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,1,54,2,92,32,1,33,5,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,9,65,2,116,106,33,9,32,12,4,64,32,2,69,13,1,32,9,32,12,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,9,65,0,32,2,252,11,0,11,32,7,65,0,54,2,52,32,7,40,2,72,33,9,32,5,32,7,40,2,76,34,2,32,1,106,34,12,73,4,64,32,12,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,12,54,2,92,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,1,65,2,116,106,33,1,32,9,4,64,32,2,69,13,1,32,1,32,9,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,1,65,0,32,2,252,11,0,11,32,7,32,0,54,2,84,32,7,32,12,54,2,88,32,7,65,0,54,2,76,32,16,40,2,8,4,64,32,19,65,1,106,33,9,65,0,33,2,3,64,32,16,40,2,4,32,2,65,1,116,106,47,1,0,33,1,2,127,32,7,40,2,88,34,0,4,64,32,7,32,0,65,1,107,34,0,54,2,88,32,7,40,2,84,32,0,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,0,66,0,55,1,4,32,0,32,8,59,1,2,32,0,32,1,59,1,0,32,0,32,8,59,1,68,32,0,32,9,59,1,66,32,0,65,1,59,1,64,32,0,66,0,55,1,12,32,0,66,0,55,1,20,32,0,66,0,55,1,28,32,0,66,0,55,1,36,32,0,66,0,55,1,44,32,0,66,0,55,1,52,32,0,65,0,54,1,60,32,7,40,2,48,33,1,32,7,40,2,52,34,10,65,1,106,34,5,32,7,40,2,56,34,12,75,4,64,65,8,32,12,65,1,116,34,12,32,5,32,5,32,12,73,27,34,12,32,12,65,8,77,27,34,15,65,2,116,33,12,2,127,32,1,4,64,32,1,32,12,35,6,40,2,0,17,1,0,12,1,11,32,12,35,7,40,2,0,17,0,0,11,33,1,32,7,32,15,54,2,56,11,32,7,32,5,54,2,52,32,7,32,1,54,2,48,32,1,32,10,65,2,116,106,32,0,54,2,0,32,2,65,1,106,34,2,32,16,40,2,8,73,13,0,11,11,32,7,65,0,58,0,120,32,6,32,14,32,13,32,7,65,48,106,16,76,32,7,45,0,120,65,1,70,4,64,32,19,65,1,106,34,0,32,6,40,2,64,34,9,79,13,1,3,64,32,6,40,2,60,32,0,65,20,108,106,34,1,47,1,12,34,2,32,17,77,13,2,32,2,65,255,255,3,70,13,2,32,1,47,1,18,34,2,65,16,113,69,4,64,32,1,32,2,65,239,252,3,113,59,1,18,32,6,40,2,64,33,9,11,32,0,65,1,106,34,0,32,9,73,13,0,11,12,1,11,32,7,40,2,100,33,9,32,7,40,2,112,69,13,1,65,0,33,0,32,9,69,13,0,3,64,2,64,32,6,40,2,60,32,7,40,2,96,32,0,65,1,116,106,47,1,0,65,20,108,106,34,1,47,1,12,34,2,65,255,255,3,70,13,0,32,2,32,17,77,13,0,32,1,47,1,18,34,2,65,16,113,13,0,32,1,32,2,65,239,252,3,113,59,1,18,32,7,40,2,100,33,9,11,32,0,65,1,106,34,0,32,9,73,13,0,11,11,65,1,33,19,32,11,65,1,106,34,11,32,26,71,13,1,12,3,11,11,32,9,4,64,32,7,40,2,96,32,9,65,1,116,106,65,2,107,47,1,0,33,19,11,32,6,40,2,108,33,8,65,0,33,0,32,6,40,2,112,34,5,33,1,2,64,2,64,2,64,32,5,34,2,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,8,32,0,65,3,116,106,47,1,4,32,19,65,255,255,3,113,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,0,32,8,32,0,65,3,116,106,47,1,4,32,19,65,255,255,3,113,73,106,33,2,11,32,8,32,2,32,5,65,1,107,32,2,32,5,73,27,65,3,116,106,11,40,2,0,54,2,0,65,0,33,19,11,65,0,33,11,2,64,32,6,40,2,100,69,4,64,65,0,33,17,12,1,11,65,0,33,16,65,0,33,17,3,64,65,0,33,8,2,64,32,6,40,2,96,32,11,65,28,108,106,34,3,40,2,8,34,5,32,5,32,3,40,2,12,106,34,9,79,13,0,3,64,2,64,32,6,40,2,84,32,5,65,3,116,106,34,0,40,2,0,65,1,71,13,0,32,0,40,2,4,33,12,65,0,33,0,32,8,34,1,33,2,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,65,255,255,3,113,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,17,32,0,65,1,116,106,47,1,0,34,1,32,12,65,255,255,3,113,34,2,70,13,1,32,0,32,1,32,2,73,106,33,2,11,32,16,32,8,65,1,106,34,0,73,4,64,32,0,65,1,116,33,1,2,127,32,17,4,64,32,17,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,17,32,0,33,16,11,32,2,65,1,116,33,1,2,64,32,2,32,8,79,13,0,32,8,32,2,107,65,1,116,34,2,69,13,0,32,1,32,17,106,34,8,65,2,106,32,8,32,2,252,10,0,0,11,32,1,32,17,106,32,12,59,0,0,32,0,33,8,11,32,5,65,1,106,34,5,32,9,71,13,0,11,32,3,40,2,0,34,5,32,5,32,3,40,2,4,106,34,3,79,13,0,32,8,69,13,0,32,8,65,1,71,4,64,3,64,65,0,33,0,32,8,33,1,2,64,32,6,40,2,60,32,5,65,20,108,106,34,2,47,1,6,34,12,65,255,255,3,70,13,0,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,2,64,32,17,32,0,65,1,116,106,47,1,0,32,12,70,13,0,65,0,33,0,32,8,33,1,32,2,47,1,8,34,12,65,255,255,3,70,13,1,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,32,17,32,0,65,1,116,106,47,1,0,32,12,70,13,0,65,0,33,0,32,8,33,1,32,2,47,1,10,34,12,65,255,255,3,70,13,1,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,32,17,32,0,65,1,116,106,47,1,0,32,12,71,13,1,11,32,2,32,2,47,1,18,65,255,254,3,113,59,1,18,11,32,5,65,1,106,34,5,32,3,71,13,0,12,2,11,0,11,3,64,2,64,32,6,40,2,60,32,5,65,20,108,106,34,0,47,1,6,34,1,65,255,255,3,70,13,0,2,64,32,1,32,17,47,1,0,34,1,70,13,0,32,0,47,1,8,34,2,65,255,255,3,70,13,1,32,1,32,2,70,13,0,32,0,47,1,10,34,2,65,255,255,3,70,13,1,32,1,32,2,71,13,1,11,32,0,32,0,47,1,18,65,255,254,3,113,59,1,18,11,32,5,65,1,106,34,5,32,3,71,13,0,11,11,32,11,65,1,106,34,11,32,6,40,2,100,73,13,0,11,11,2,64,32,6,40,2,64,69,13,0,3,64,65,1,33,8,32,6,40,2,64,34,2,65,1,107,34,0,69,13,1,3,64,32,2,33,1,2,64,32,6,40,2,60,34,3,32,0,34,2,65,20,108,106,34,5,47,1,12,65,255,255,3,70,13,0,32,5,45,0,18,65,128,1,113,13,0,3,64,2,64,32,3,32,0,65,20,108,106,47,1,14,34,0,65,255,255,3,70,13,0,32,0,32,2,73,13,0,32,3,32,0,65,20,108,106,45,0,18,65,128,1,113,69,13,1,12,2,11,11,32,3,32,1,65,20,108,106,34,1,65,22,107,34,3,47,1,0,34,0,65,16,113,13,0,32,0,65,128,1,113,69,13,0,32,1,65,28,107,47,1,0,65,255,255,3,70,13,0,32,3,32,0,65,239,254,3,113,59,1,0,65,0,33,8,11,32,2,65,1,107,34,0,13,0,11,32,8,65,1,113,69,13,0,11,11,32,7,65,0,58,0,120,32,25,4,64,65,0,33,11,3,64,32,23,32,11,65,1,116,106,47,1,0,32,6,40,2,72,33,12,32,7,40,2,48,33,3,32,7,40,2,84,33,0,32,7,40,2,52,34,2,32,7,40,2,88,34,8,106,34,1,32,7,40,2,92,34,10,75,4,64,32,1,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,1,54,2,92,32,1,33,10,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,8,65,2,116,106,33,5,32,3,4,64,32,2,69,13,1,32,5,32,3,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,5,65,0,32,2,252,11,0,11,32,7,65,0,54,2,52,32,7,40,2,72,33,5,32,10,32,7,40,2,76,34,2,32,1,106,34,3,73,4,64,32,3,65,2,116,33,8,2,127,32,0,4,64,32,0,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,0,32,7,32,3,54,2,92,11,65,6,108,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,1,65,2,116,106,33,1,32,5,4,64,32,2,69,13,1,32,1,32,5,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,1,65,0,32,2,252,11,0,11,32,12,106,33,5,32,7,32,0,54,2,84,32,7,32,3,54,2,88,65,0,33,16,32,7,65,0,54,2,76,32,13,4,64,3,64,2,64,2,64,2,64,32,14,32,16,65,28,108,106,34,2,47,1,0,34,0,65,254,255,3,107,14,2,1,2,0,11,32,6,40,2,156,1,40,2,72,32,0,65,3,108,106,34,0,45,0,0,65,1,113,13,1,32,0,45,0,1,65,1,113,13,1,11,32,2,40,2,8,69,13,0,65,0,33,9,3,64,32,2,40,2,4,32,9,65,1,116,106,47,1,0,33,3,32,5,47,1,0,33,8,32,2,47,1,0,33,1,2,127,32,7,40,2,88,34,0,4,64,32,7,32,0,65,1,107,34,0,54,2,88,32,7,40,2,84,32,0,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,0,66,0,55,1,4,32,0,32,1,59,1,2,32,0,32,3,59,1,0,32,0,32,1,59,1,68,32,0,32,8,59,1,66,32,0,65,1,59,1,64,32,0,66,0,55,1,12,32,0,66,0,55,1,20,32,0,66,0,55,1,28,32,0,66,0,55,1,36,32,0,66,0,55,1,44,32,0,66,0,55,1,52,32,0,65,0,54,1,60,32,7,40,2,48,33,1,32,7,40,2,52,34,12,65,1,106,34,3,32,7,40,2,56,34,8,75,4,64,65,8,32,8,65,1,116,34,8,32,3,32,3,32,8,73,27,34,8,32,8,65,8,77,27,34,10,65,2,116,33,8,2,127,32,1,4,64,32,1,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,1,32,7,32,10,54,2,56,11,32,7,32,3,54,2,52,32,7,32,1,54,2,48,32,1,32,12,65,2,116,106,32,0,54,2,0,32,9,65,1,106,34,9,32,2,40,2,8,73,13,0,11,11,32,16,65,1,106,34,16,32,13,71,13,0,11,11,32,6,32,14,32,13,32,7,65,48,106,16,76,32,7,40,2,112,34,12,4,64,32,6,40,2,96,32,5,47,1,2,65,28,108,106,65,1,58,0,24,32,6,40,2,144,1,33,10,32,6,40,2,148,1,33,5,65,0,33,15,3,64,32,7,40,2,108,32,15,65,1,116,106,47,1,0,33,3,65,0,33,0,32,5,34,1,33,2,2,64,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,10,32,0,65,1,116,106,47,1,0,32,3,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,3,32,10,32,0,65,1,116,106,47,1,0,34,1,70,13,1,32,0,32,1,32,3,73,106,33,2,11,32,5,65,1,106,34,0,32,6,40,2,152,1,75,4,64,32,0,65,1,116,33,1,2,127,32,10,4,64,32,10,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,10,32,6,32,0,54,2,152,1,32,6,40,2,148,1,33,5,11,32,2,65,1,116,33,0,2,64,32,2,32,5,79,13,0,32,5,32,2,107,65,1,116,34,1,69,13,0,32,0,32,10,106,34,2,65,2,106,32,2,32,1,252,10,0,0,11,32,0,32,10,106,32,3,59,0,0,32,6,32,10,54,2,144,1,32,6,32,6,40,2,148,1,65,1,106,34,5,54,2,148,1,32,7,40,2,112,33,12,11,32,15,65,1,106,34,15,32,12,73,13,0,11,11,32,11,65,1,106,34,11,32,25,71,13,0,11,11,2,64,2,64,32,13,4,64,65,0,33,1,3,64,32,14,32,1,65,28,108,106,34,0,40,2,4,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,12,32,0,66,0,55,2,4,32,0,40,2,16,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,1,65,1,106,34,1,32,13,71,13,0,11,12,1,11,32,14,69,13,1,11,32,14,35,8,40,2,0,17,2,0,11,32,7,40,2,48,33,1,2,64,2,64,32,7,40,2,52,34,2,4,64,65,0,33,9,65,0,33,0,32,2,65,4,79,4,64,32,2,65,124,113,33,8,65,0,33,14,3,64,32,1,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,14,65,4,106,34,14,32,8,71,13,0,11,11,32,2,65,3,113,34,2,69,13,1,3,64,32,1,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,9,65,1,106,34,9,32,2,71,13,0,11,12,1,11,32,1,69,13,1,11,32,1,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,48,32,7,40,2,60,33,2,2,64,2,64,32,7,40,2,64,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,60,32,7,40,2,72,33,2,2,64,2,64,32,7,40,2,76,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,72,32,7,40,2,84,33,2,2,64,2,64,32,7,40,2,88,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,32,7,40,2,96,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,108,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,20,4,64,32,20,35,8,40,2,0,17,2,0,11,32,17,4,64,32,17,35,8,40,2,0,17,2,0,11,32,28,35,8,40,2,0,17,2,0,11,32,23,4,64,32,23,35,8,40,2,0,17,2,0,11,32,18,4,64,32,18,35,8,40,2,0,17,2,0,11,32,19,69,4,64,32,4,65,5,54,2,0,12,1,11,32,6,40,2,132,1,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,6,65,0,54,2,140,1,32,6,66,0,55,2,132,1,12,1,11,32,6,16,75,65,0,33,6,11,32,7,65,128,1,106,36,0,32,6,11,168,2,1,9,127,32,1,40,2,16,34,6,32,0,40,2,4,75,4,64,65,1,15,11,32,1,40,2,0,34,3,47,1,0,33,9,32,0,40,2,0,34,4,40,2,0,33,5,32,4,40,2,4,34,7,33,2,2,64,3,64,32,2,69,13,1,32,5,32,2,65,1,107,34,2,65,20,108,106,34,8,40,2,12,34,10,32,6,73,13,1,32,6,32,10,71,13,0,32,8,47,1,16,32,9,71,13,0,11,65,0,15,11,32,7,65,1,106,34,2,32,4,40,2,8,34,8,75,4,64,65,8,32,8,65,1,116,34,3,32,2,32,2,32,3,73,27,34,2,32,2,65,8,77,27,34,3,65,20,108,33,2,2,127,32,5,4,64,32,5,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,5,32,4,32,3,54,2,8,32,1,40,2,0,33,3,32,0,40,2,0,34,4,40,2,4,34,7,65,1,106,33,2,11,32,4,32,2,54,2,4,32,4,32,5,54,2,0,32,3,40,2,12,33,1,32,5,32,7,65,20,108,106,34,0,32,3,41,2,4,55,2,0,32,0,65,0,59,1,18,32,0,32,9,59,1,16,32,0,32,6,54,2,12,32,0,32,1,54,2,8,65,0,11,51,1,1,127,32,0,16,41,32,0,65,0,54,2,160,9,2,64,32,1,4,64,32,1,40,2,0,65,16,107,65,125,73,13,1,11,32,0,32,1,54,2,160,9,65,1,33,2,11,32,2,11,236,7,1,10,127,35,0,65,32,107,34,3,36,0,32,0,4,64,32,0,16,41,32,0,65,0,54,2,160,9,32,0,40,2,132,9,33,1,35,0,65,16,107,34,6,36,0,32,1,40,2,12,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,1,65,0,54,2,20,32,1,66,0,55,2,12,11,32,1,40,2,24,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,1,65,0,54,2,32,32,1,66,0,55,2,24,11,32,1,40,2,48,32,1,65,36,106,34,8,32,1,40,2,52,16,26,32,1,40,2,4,34,2,4,64,3,64,32,1,40,2,0,32,5,65,5,116,106,34,4,40,2,0,4,64,32,1,40,2,52,33,7,32,4,40,2,12,4,64,32,6,32,4,41,2,12,55,3,8,32,7,32,6,65,8,106,16,10,11,32,4,40,2,20,4,64,32,6,32,4,41,2,20,55,3,0,32,7,32,6,16,10,11,32,4,40,2,4,34,2,4,64,32,2,40,2,0,34,10,4,64,32,10,35,8,40,2,0,17,2,0,32,4,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,4,40,2,0,32,8,32,7,16,26,32,1,40,2,4,33,2,11,32,5,65,1,106,34,5,32,2,73,13,0,11,11,65,0,33,2,32,1,65,0,54,2,4,32,1,40,2,36,34,5,4,64,2,64,32,1,40,2,40,4,64,3,64,32,1,40,2,36,32,2,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,2,65,1,106,34,2,32,1,40,2,40,73,13,0,11,32,8,40,2,0,34,5,69,13,1,11,32,5,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,44,32,1,66,0,55,2,36,11,32,1,40,2,0,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,32,6,65,16,106,36,0,32,0,40,2,168,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,176,9,32,0,66,0,55,2,168,9,11,32,0,40,2,160,10,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,168,10,32,0,66,0,55,2,160,10,11,32,0,40,2,152,10,4,64,32,3,32,0,65,152,10,106,41,2,0,55,3,24,32,0,65,136,9,106,32,3,65,24,106,16,10,32,0,66,0,55,2,152,10,11,32,0,40,2,68,35,8,40,2,0,17,2,0,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,3,32,1,41,2,0,55,3,16,32,0,65,136,9,106,32,3,65,16,106,16,10,11,32,0,40,2,232,9,4,64,32,3,32,0,65,232,9,106,41,2,0,55,3,8,32,0,65,136,9,106,32,3,65,8,106,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,0,40,2,136,9,34,1,4,64,2,64,32,0,40,2,140,9,4,64,3,64,32,0,40,2,136,9,32,9,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,9,65,1,106,34,9,32,0,40,2,140,9,73,13,0,11,32,0,40,2,136,9,34,1,69,13,1,11,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,144,9,32,0,66,0,55,2,136,9,11,32,0,40,2,148,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,156,9,32,0,66,0,55,2,148,9,11,32,0,40,2,244,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,252,9,32,0,66,0,55,2,244,9,32,0,40,2,188,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,196,9,32,0,66,0,55,2,188,9,32,0,40,2,200,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,208,9,32,0,66,0,55,2,200,9,32,0,40,2,212,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,220,9,32,0,66,0,55,2,212,9,32,0,35,8,40,2,0,17,2,0,11,32,3,65,32,106,36,0,11,179,1,2,5,127,1,126,32,0,41,2,0,34,8,66,32,136,167,33,3,32,8,167,33,4,2,64,32,1,40,2,0,34,5,32,2,40,2,4,34,7,79,4,64,32,3,32,2,40,2,32,32,3,32,2,40,2,24,107,34,6,65,0,32,3,32,6,79,27,106,32,4,32,2,40,2,20,34,6,75,27,33,3,32,2,40,2,28,32,4,32,6,107,34,6,65,0,32,4,32,6,79,27,106,33,4,32,2,40,2,8,32,5,32,7,107,106,33,5,12,1,11,32,5,32,2,40,2,0,77,13,0,32,2,41,2,28,34,8,66,32,136,167,33,3,32,2,40,2,8,33,5,32,8,167,33,4,11,32,0,32,4,173,32,3,173,66,32,134,132,55,2,0,32,1,32,5,54,2,0,11,27,0,32,0,32,1,16,93,33,0,2,64,32,1,69,13,0,32,0,13,0,16,67,0,11,32,0,11,27,0,32,0,32,1,16,42,33,1,2,64,32,0,69,13,0,32,1,13,0,16,67,0,11,32,1,11,192,1,1,3,127,35,0,65,32,107,34,3,36,0,32,0,40,2,72,4,64,32,0,40,2,96,33,2,2,64,32,1,4,64,32,2,69,13,1,32,3,32,0,40,2,0,34,2,54,2,0,32,0,65,132,1,106,34,4,65,128,8,35,1,65,154,11,65,253,8,32,2,65,32,107,65,223,0,73,27,106,32,3,16,11,26,32,0,40,2,92,65,1,32,4,32,0,40,2,96,17,3,0,12,1,11,32,2,69,13,0,32,3,32,0,40,2,0,34,2,54,2,16,32,0,65,132,1,106,34,4,65,128,8,35,1,65,174,11,65,143,9,32,2,65,32,107,65,223,0,73,27,106,32,3,65,16,106,16,11,26,32,0,40,2,92,65,1,32,4,32,0,40,2,96,17,3,0,11,32,0,32,1,16,65,11,32,3,65,32,106,36,0,11,105,1,2,127,2,64,32,0,40,2,104,34,1,32,0,40,2,100,70,13,0,32,1,69,13,0,32,0,40,2,32,32,0,40,2,68,32,1,65,24,108,106,34,1,40,2,16,71,13,0,32,1,65,4,107,40,2,0,33,2,32,0,32,1,65,16,107,41,2,0,55,2,60,32,0,32,2,54,2,56,15,11,32,0,32,0,41,2,32,55,2,56,32,0,65,64,107,32,0,40,2,40,54,2,0,11,250,5,2,9,127,1,126,35,0,65,16,107,34,5,36,0,32,0,65,1,58,0,120,2,64,32,0,45,0,128,1,13,0,32,0,40,2,32,34,8,32,0,40,2,40,34,3,107,33,1,32,0,40,2,36,33,4,32,3,4,64,32,0,65,0,54,2,124,32,0,65,0,58,0,128,1,11,32,0,65,0,54,2,40,32,0,32,4,54,2,36,32,0,32,1,54,2,32,32,0,40,2,68,33,6,2,64,2,127,32,0,40,2,100,34,4,4,64,3,64,2,64,32,6,32,2,65,24,108,106,34,7,40,2,20,34,9,32,1,77,13,0,32,9,32,7,40,2,16,34,3,77,13,0,32,1,32,3,77,4,64,32,0,32,7,41,2,0,55,2,36,32,0,32,3,54,2,32,32,3,33,1,11,32,0,32,2,54,2,104,65,0,33,2,32,0,40,2,72,69,13,4,32,0,40,2,108,34,3,32,1,77,4,64,32,1,32,0,40,2,112,32,3,106,73,13,5,11,32,0,65,0,54,2,72,65,0,12,3,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,32,0,32,4,54,2,104,32,6,32,4,65,24,108,106,34,3,65,4,107,40,2,0,33,1,32,3,65,16,107,41,2,0,33,10,32,0,65,0,54,2,72,32,0,32,10,55,2,36,32,0,32,1,54,2,32,65,1,11,33,2,32,0,65,0,54,2,112,11,32,0,65,1,58,0,128,1,32,0,65,0,54,2,0,32,0,32,2,54,2,116,32,0,65,0,54,2,124,32,0,32,1,54,2,108,32,0,40,2,80,33,3,32,0,40,2,76,33,2,32,5,32,0,41,2,36,55,3,8,32,0,32,2,32,1,32,5,65,8,106,32,0,65,240,0,106,34,4,32,3,17,6,0,34,2,54,2,72,32,0,40,2,112,34,1,69,4,64,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,12,1,11,32,0,40,2,104,32,0,40,2,100,70,13,0,2,64,32,0,40,2,32,32,0,40,2,108,107,34,3,32,1,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,1,11,32,0,32,2,32,3,106,32,1,32,3,107,34,1,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,3,65,2,116,106,32,0,65,216,0,106,32,3,65,3,73,27,40,2,0,34,3,17,4,0,54,2,116,32,0,40,2,0,33,2,2,64,32,1,65,3,75,13,0,32,2,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,6,32,5,32,0,41,2,36,55,3,0,32,0,32,6,32,1,32,5,32,4,32,2,17,6,0,34,2,54,2,72,32,0,32,0,40,2,112,34,1,4,127,32,2,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,1,32,0,32,3,17,4,0,54,2,116,32,0,40,2,0,33,2,11,32,2,65,127,71,13,0,32,0,65,1,54,2,116,11,3,64,32,0,40,2,32,32,8,79,13,1,32,0,40,2,104,32,0,40,2,100,70,13,1,32,0,40,2,72,69,13,1,32,0,65,0,16,65,32,0,40,2,104,32,0,40,2,100,71,13,0,11,11,32,0,40,2,124,32,5,65,16,106,36,0,11,27,1,1,127,32,0,16,34,33,1,2,64,32,0,69,13,0,32,1,13,0,16,67,0,11,32,1,11,43,1,2,127,32,0,40,2,104,34,2,32,0,40,2,100,73,4,127,32,0,40,2,32,32,0,40,2,68,32,2,65,24,108,106,40,2,16,70,5,65,0,11,11,13,0,32,0,40,2,104,32,0,40,2,100,70,11,77,1,2,127,32,1,45,0,0,33,2,2,64,32,0,45,0,0,34,3,69,13,0,32,2,32,3,71,13,0,3,64,32,1,45,0,1,33,2,32,0,45,0,1,34,3,69,13,1,32,1,65,1,106,33,1,32,0,65,1,106,33,0,32,2,32,3,70,13,0,11,11,32,3,32,2,107,11,23,0,32,0,65,48,107,65,10,73,32,0,65,32,114,65,225,0,107,65,6,73,114,11,130,2,1,2,127,2,64,2,64,2,64,2,64,32,1,32,0,34,3,115,65,3,113,13,0,32,2,65,0,71,33,4,2,64,32,1,65,3,113,69,13,0,32,2,69,13,0,3,64,32,3,32,1,45,0,0,34,4,58,0,0,32,4,69,13,5,32,3,65,1,106,33,3,32,2,65,1,107,34,2,65,0,71,33,4,32,1,65,1,106,34,1,65,3,113,69,13,1,32,2,13,0,11,11,32,4,69,13,2,32,1,45,0,0,69,13,3,32,2,65,4,73,13,0,3,64,65,128,130,132,8,32,1,40,2,0,34,4,107,32,4,114,65,128,129,130,132,120,113,65,128,129,130,132,120,71,13,2,32,3,32,4,54,2,0,32,3,65,4,106,33,3,32,1,65,4,106,33,1,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,3,64,32,3,32,1,45,0,0,34,4,58,0,0,32,4,69,13,2,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,65,0,33,2,11,32,3,65,0,32,2,16,51,26,32,0,11,232,2,1,2,127,2,64,32,0,32,1,70,13,0,32,1,32,0,32,2,106,34,4,107,65,0,32,2,65,1,116,107,77,4,64,32,0,32,1,32,2,16,36,15,11,32,0,32,1,115,65,3,113,33,3,2,64,2,64,32,0,32,1,73,4,64,32,3,4,64,32,0,33,3,12,3,11,32,0,65,3,113,69,4,64,32,0,33,3,12,2,11,32,0,33,3,3,64,32,2,69,13,4,32,3,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,107,33,2,32,3,65,1,106,34,3,65,3,113,13,0,11,12,1,11,2,64,32,3,13,0,32,4,65,3,113,4,64,3,64,32,2,69,13,5,32,0,32,2,65,1,107,34,2,106,34,3,32,1,32,2,106,45,0,0,58,0,0,32,3,65,3,113,13,0,11,11,32,2,65,3,77,13,0,3,64,32,0,32,2,65,4,107,34,2,106,32,1,32,2,106,40,2,0,54,2,0,32,2,65,3,75,13,0,11,11,32,2,69,13,2,3,64,32,0,32,2,65,1,107,34,2,106,32,1,32,2,106,45,0,0,58,0,0,32,2,13,0,11,12,2,11,32,2,65,3,77,13,0,3,64,32,3,32,1,40,2,0,54,2,0,32,1,65,4,106,33,1,32,3,65,4,106,33,3,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,0,3,64,32,3,32,1,45,0,0,58,0,0,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,32,0,11,11,0,32,0,65,0,16,49,32,0,71,11,73,1,1,127,35,0,65,16,107,34,3,36,0,32,3,32,2,54,2,12,32,0,40,2,96,4,64,32,0,65,132,1,106,34,2,65,128,8,32,1,32,3,40,2,12,16,95,26,32,0,40,2,92,65,1,32,2,32,0,40,2,96,17,3,0,11,32,3,65,16,106,36,0,11,73,1,2,127,32,0,16,101,32,0,106,33,3,2,64,32,2,69,13,0,3,64,32,1,45,0,0,34,4,69,13,1,32,3,32,4,58,0,0,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,32,3,65,0,58,0,0,32,0,11,13,0,32,0,65,32,70,32,0,65,9,70,114,11,11,0,32,0,65,1,16,49,32,0,71,11,4,0,35,0,11,16,0,35,0,32,0,107,65,112,113,34,0,36,0,32,0,11,6,0,32,0,36,0,11,10,0,32,0,65,48,107,65,10,73,11,8,0,32,0,65,1,16,49,11,8,0,32,0,65,0,16,49,11,7,0,32,0,47,1,28,11,25,0,35,12,40,2,0,69,4,64,35,13,32,1,54,2,0,35,12,32,0,54,2,0,11,11,168,1,1,5,127,32,0,40,2,84,34,3,40,2,0,33,5,32,3,40,2,4,34,4,32,0,40,2,20,32,0,40,2,28,34,7,107,34,6,32,4,32,6,73,27,34,6,4,64,32,5,32,7,32,6,16,36,26,32,3,32,3,40,2,0,32,6,106,34,5,54,2,0,32,3,32,3,40,2,4,32,6,107,34,4,54,2,4,11,32,4,32,2,32,2,32,4,75,27,34,4,4,64,32,5,32,1,32,4,16,36,26,32,3,32,3,40,2,0,32,4,106,34,5,54,2,0,32,3,32,3,40,2,4,32,4,107,54,2,4,11,32,5,65,0,58,0,0,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,2,11,188,2,1,6,127,2,64,2,64,2,64,32,0,45,0,20,69,4,64,32,0,47,1,28,33,3,32,0,40,2,4,33,1,32,0,40,2,0,34,4,40,2,4,33,6,3,64,32,0,32,3,65,1,106,34,3,59,1,28,32,1,65,2,106,33,1,32,6,32,3,65,255,255,3,113,34,5,77,13,2,32,0,32,1,47,1,0,34,2,59,1,14,32,2,69,13,0,11,32,0,32,1,54,2,4,12,3,11,32,0,32,0,40,2,4,34,1,65,2,106,34,2,54,2,4,32,0,40,2,8,32,2,70,4,64,32,0,47,1,18,34,2,69,13,2,32,0,32,2,65,1,107,59,1,18,32,1,47,1,2,33,2,32,0,32,1,65,6,106,34,3,54,2,4,32,0,32,2,59,1,14,32,0,32,3,32,1,47,1,4,65,1,116,106,54,2,8,32,0,32,1,47,1,6,34,5,59,1,28,32,0,40,2,0,33,4,12,3,11,32,0,32,2,47,1,0,59,1,28,65,1,15,11,32,0,32,1,54,2,4,11,65,0,15,11,32,5,32,4,40,2,12,73,4,64,32,4,40,2,52,32,2,65,3,116,106,34,1,45,0,0,33,2,32,0,65,0,59,1,30,32,0,32,1,65,8,106,54,2,24,32,0,32,2,59,1,32,65,1,15,11,32,0,32,2,59,1,30,32,0,65,0,59,1,32,65,1,11,178,5,2,6,126,4,127,32,1,32,1,40,2,0,65,7,106,65,120,113,34,1,65,16,106,54,2,0,32,0,32,1,41,3,0,33,3,32,1,41,3,8,33,6,35,0,65,32,107,34,0,36,0,32,6,66,255,255,255,255,255,255,63,131,33,2,2,126,32,6,66,48,136,66,255,255,1,131,34,4,167,34,8,65,129,248,0,107,65,253,15,77,4,64,32,2,66,4,134,32,3,66,60,136,132,33,2,32,8,65,128,248,0,107,173,33,4,2,64,32,3,66,255,255,255,255,255,255,255,255,15,131,34,3,66,129,128,128,128,128,128,128,128,8,90,4,64,32,2,66,1,124,33,2,12,1,11,32,3,66,128,128,128,128,128,128,128,128,8,82,13,0,32,2,66,1,131,32,2,124,33,2,11,66,0,32,2,32,2,66,255,255,255,255,255,255,255,7,86,34,1,27,33,2,32,1,173,32,4,124,12,1,11,2,64,32,2,32,3,132,80,13,0,32,4,66,255,255,1,82,13,0,32,2,66,4,134,32,3,66,60,136,132,66,128,128,128,128,128,128,128,4,132,33,2,66,255,15,12,1,11,32,8,65,254,135,1,75,4,64,66,0,33,2,66,255,15,12,1,11,65,128,248,0,65,129,248,0,32,4,80,34,9,27,34,10,32,8,107,34,1,65,240,0,74,4,64,66,0,33,2,66,0,12,1,11,32,2,32,2,66,128,128,128,128,128,128,192,0,132,32,9,27,33,2,65,0,33,9,32,8,32,10,71,4,64,32,3,33,4,32,2,33,5,2,64,65,128,1,32,1,107,34,8,65,192,0,113,4,64,32,3,32,8,65,64,106,173,134,33,5,66,0,33,4,12,1,11,32,8,69,13,0,32,5,32,8,173,34,7,134,32,4,65,192,0,32,8,107,173,136,132,33,5,32,4,32,7,134,33,4,11,32,0,32,4,55,3,16,32,0,32,5,55,3,24,32,0,41,3,16,32,0,41,3,24,132,66,0,82,33,9,11,2,64,32,1,65,192,0,113,4,64,32,2,32,1,65,64,106,173,136,33,3,66,0,33,2,12,1,11,32,1,69,13,0,32,2,65,192,0,32,1,107,173,134,32,3,32,1,173,34,4,136,132,33,3,32,2,32,4,136,33,2,11,32,0,32,3,55,3,0,32,0,32,2,55,3,8,32,0,41,3,8,66,4,134,32,0,41,3,0,34,3,66,60,136,132,33,2,2,64,32,9,173,32,3,66,255,255,255,255,255,255,255,255,15,131,132,34,3,66,129,128,128,128,128,128,128,128,8,90,4,64,32,2,66,1,124,33,2,12,1,11,32,3,66,128,128,128,128,128,128,128,128,8,82,13,0,32,2,66,1,131,32,2,124,33,2,11,32,2,66,128,128,128,128,128,128,128,8,133,32,2,32,2,66,255,255,255,255,255,255,255,7,86,34,1,27,33,2,32,1,173,11,33,3,32,0,65,32,106,36,0,32,6,66,128,128,128,128,128,128,128,128,128,127,131,32,3,66,52,134,132,32,2,132,191,57,3,0,11,220,23,3,18,127,1,124,3,126,35,0,65,176,4,107,34,11,36,0,32,11,65,0,54,2,44,2,64,32,1,189,34,25,66,0,83,4,64,35,1,65,10,106,33,20,65,1,33,16,32,1,154,34,1,189,33,25,12,1,11,32,4,65,128,16,113,4,64,35,1,65,13,106,33,20,65,1,33,16,12,1,11,35,1,65,10,106,34,6,65,6,106,32,6,65,1,106,32,4,65,1,113,34,16,27,33,20,32,16,69,33,23,11,2,64,32,25,66,128,128,128,128,128,128,128,248,255,0,131,66,128,128,128,128,128,128,128,248,255,0,81,4,64,32,0,65,32,32,2,32,16,65,3,106,34,7,32,4,65,255,255,123,113,16,15,32,0,32,20,32,16,16,14,32,0,35,1,34,6,65,135,8,106,32,6,65,177,10,106,32,5,65,32,113,34,3,27,32,6,65,180,8,106,32,6,65,189,10,106,32,3,27,32,1,32,1,98,27,65,3,16,14,32,0,65,32,32,2,32,7,32,4,65,128,192,0,115,16,15,32,2,32,7,32,2,32,7,74,27,33,13,12,1,11,32,11,65,16,106,33,17,2,64,2,64,2,64,32,1,32,11,65,44,106,16,99,34,1,32,1,160,34,1,68,0,0,0,0,0,0,0,0,98,4,64,32,11,32,11,40,2,44,34,6,65,1,107,54,2,44,32,5,65,32,114,34,21,65,225,0,71,13,1,12,3,11,32,5,65,32,114,34,21,65,225,0,70,13,2,32,11,40,2,44,33,12,12,1,11,32,11,32,6,65,29,107,34,12,54,2,44,32,1,68,0,0,0,0,0,0,176,65,162,33,1,11,65,6,32,3,32,3,65,0,72,27,33,10,32,11,65,48,106,65,160,2,65,0,32,12,65,0,78,27,106,34,14,33,7,3,64,32,7,32,1,252,3,34,3,54,2,0,32,7,65,4,106,33,7,32,1,32,3,184,161,68,0,0,0,0,101,205,205,65,162,34,1,68,0,0,0,0,0,0,0,0,98,13,0,11,2,64,32,12,65,0,76,4,64,32,12,33,9,32,7,33,6,32,14,33,8,12,1,11,32,14,33,8,32,12,33,9,3,64,65,29,32,9,32,9,65,29,79,27,33,3,2,64,32,7,65,4,107,34,6,32,8,73,13,0,32,3,173,33,27,66,0,33,25,3,64,32,6,32,6,53,2,0,32,27,134,32,25,124,34,26,32,26,66,128,148,235,220,3,128,34,25,66,128,148,235,220,3,126,125,62,2,0,32,6,65,4,107,34,6,32,8,79,13,0,11,32,26,66,128,148,235,220,3,84,13,0,32,8,65,4,107,34,8,32,25,62,2,0,11,3,64,32,8,32,7,34,6,73,4,64,32,6,65,4,107,34,7,40,2,0,69,13,1,11,11,32,11,32,11,40,2,44,32,3,107,34,9,54,2,44,32,6,33,7,32,9,65,0,74,13,0,11,11,32,9,65,0,72,4,64,32,10,65,25,106,65,9,110,65,1,106,33,18,32,21,65,230,0,70,33,19,3,64,65,9,65,0,32,9,107,34,3,32,3,65,9,79,27,33,13,2,64,32,6,32,8,77,4,64,65,0,65,4,32,8,40,2,0,27,33,7,12,1,11,65,128,148,235,220,3,32,13,118,33,22,65,127,32,13,116,65,127,115,33,15,65,0,33,9,32,8,33,7,3,64,32,7,32,7,40,2,0,34,3,32,13,118,32,9,106,54,2,0,32,3,32,15,113,32,22,108,33,9,32,7,65,4,106,34,7,32,6,73,13,0,11,65,0,65,4,32,8,40,2,0,27,33,7,32,9,69,13,0,32,6,32,9,54,2,0,32,6,65,4,106,33,6,11,32,11,32,11,40,2,44,32,13,106,34,9,54,2,44,32,14,32,7,32,8,106,34,8,32,19,27,34,3,32,18,65,2,116,106,32,6,32,6,32,3,107,65,2,117,32,18,74,27,33,6,32,9,65,0,72,13,0,11,11,65,0,33,9,2,64,32,6,32,8,77,13,0,32,14,32,8,107,65,2,117,65,9,108,33,9,65,10,33,7,32,8,40,2,0,34,3,65,10,73,13,0,3,64,32,9,65,1,106,33,9,32,3,32,7,65,10,108,34,7,79,13,0,11,11,32,10,32,9,65,0,32,21,65,230,0,71,27,107,32,21,65,231,0,70,32,10,65,0,71,113,107,34,3,32,6,32,14,107,65,2,117,65,9,108,65,9,107,72,4,64,32,11,65,48,106,65,132,96,65,164,98,32,12,65,0,72,27,106,32,3,65,128,200,0,106,34,12,65,9,109,34,3,65,2,116,106,33,13,65,10,33,7,32,12,32,3,65,9,108,107,34,3,65,7,76,4,64,3,64,32,7,65,10,108,33,7,32,3,65,1,106,34,3,65,8,71,13,0,11,11,2,64,32,13,40,2,0,34,12,32,12,32,7,110,34,18,32,7,108,107,34,15,69,32,13,65,4,106,34,3,32,6,70,113,13,0,2,64,32,18,65,1,113,69,4,64,68,0,0,0,0,0,0,64,67,33,1,32,7,65,128,148,235,220,3,71,13,1,32,8,32,13,79,13,1,32,13,65,4,107,45,0,0,65,1,113,69,13,1,11,68,1,0,0,0,0,0,64,67,33,1,11,68,0,0,0,0,0,0,224,63,68,0,0,0,0,0,0,240,63,68,0,0,0,0,0,0,248,63,32,3,32,6,70,27,68,0,0,0,0,0,0,248,63,32,15,32,7,65,1,118,34,3,70,27,32,3,32,15,75,27,33,24,2,64,32,23,13,0,32,20,45,0,0,65,45,71,13,0,32,24,154,33,24,32,1,154,33,1,11,32,13,32,12,32,15,107,34,3,54,2,0,32,1,32,24,160,32,1,97,13,0,32,13,32,3,32,7,106,34,3,54,2,0,32,3,65,128,148,235,220,3,79,4,64,3,64,32,13,65,0,54,2,0,32,8,32,13,65,4,107,34,13,75,4,64,32,8,65,4,107,34,8,65,0,54,2,0,11,32,13,32,13,40,2,0,65,1,106,34,3,54,2,0,32,3,65,255,147,235,220,3,75,13,0,11,11,32,14,32,8,107,65,2,117,65,9,108,33,9,65,10,33,7,32,8,40,2,0,34,3,65,10,73,13,0,3,64,32,9,65,1,106,33,9,32,3,32,7,65,10,108,34,7,79,13,0,11,11,32,13,65,4,106,34,3,32,6,32,3,32,6,73,27,33,6,11,3,64,32,6,34,12,32,8,77,34,7,69,4,64,32,6,65,4,107,34,6,40,2,0,69,13,1,11,11,2,64,32,21,65,231,0,71,4,64,32,4,65,8,113,33,19,12,1,11,32,9,65,127,115,65,127,32,10,65,1,32,10,27,34,6,32,9,74,32,9,65,123,74,113,34,3,27,32,6,106,33,10,65,127,65,126,32,3,27,32,5,106,33,5,32,4,65,8,113,34,19,13,0,65,119,33,6,2,64,32,7,13,0,32,12,65,4,107,40,2,0,34,15,69,13,0,65,10,33,3,65,0,33,6,32,15,65,10,112,13,0,3,64,32,6,34,7,65,1,106,33,6,32,15,32,3,65,10,108,34,3,112,69,13,0,11,32,7,65,127,115,33,6,11,32,12,32,14,107,65,2,117,65,9,108,33,3,32,5,65,95,113,65,198,0,70,4,64,65,0,33,19,32,10,32,3,32,6,106,65,9,107,34,3,65,0,32,3,65,0,74,27,34,3,32,3,32,10,74,27,33,10,12,1,11,65,0,33,19,32,10,32,3,32,9,106,32,6,106,65,9,107,34,3,65,0,32,3,65,0,74,27,34,3,32,3,32,10,74,27,33,10,11,65,127,33,13,32,10,65,253,255,255,255,7,65,254,255,255,255,7,32,10,32,19,114,34,15,27,74,13,1,32,10,32,15,65,0,71,106,65,1,106,33,22,2,64,32,5,65,95,113,34,7,65,198,0,70,4,64,32,9,32,22,65,255,255,255,255,7,115,74,13,3,32,9,65,0,32,9,65,0,74,27,33,6,12,1,11,32,17,32,9,32,9,65,31,117,34,3,115,32,3,107,173,32,17,16,35,34,6,107,65,1,76,4,64,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,17,32,6,107,65,2,72,13,0,11,11,32,6,65,2,107,34,18,32,5,58,0,0,32,6,65,1,107,65,45,65,43,32,9,65,0,72,27,58,0,0,32,17,32,18,107,34,6,32,22,65,255,255,255,255,7,115,74,13,2,11,32,6,32,22,106,34,3,32,16,65,255,255,255,255,7,115,74,13,1,32,0,65,32,32,2,32,3,32,16,106,34,9,32,4,16,15,32,0,32,20,32,16,16,14,32,0,65,48,32,2,32,9,32,4,65,128,128,4,115,16,15,2,64,2,64,2,64,32,7,65,198,0,70,4,64,32,11,65,16,106,65,9,114,33,5,32,14,32,8,32,8,32,14,75,27,34,3,33,8,3,64,32,8,53,2,0,32,5,16,35,33,6,2,64,32,3,32,8,71,4,64,32,6,32,11,65,16,106,77,13,1,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,12,1,11,32,5,32,6,71,13,0,32,6,65,1,107,34,6,65,48,58,0,0,11,32,0,32,6,32,5,32,6,107,16,14,32,8,65,4,106,34,8,32,14,77,13,0,11,32,15,4,64,32,0,35,1,65,239,10,106,65,1,16,14,11,32,8,32,12,79,13,1,32,10,65,0,76,13,1,3,64,32,8,53,2,0,32,5,16,35,34,6,32,11,65,16,106,75,4,64,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,11,32,0,32,6,65,9,32,10,32,10,65,9,78,27,16,14,32,10,65,9,107,33,6,32,8,65,4,106,34,8,32,12,79,13,3,32,10,65,9,74,32,6,33,10,13,0,11,12,2,11,2,64,32,10,65,0,72,13,0,32,12,32,8,65,4,106,32,8,32,12,73,27,33,3,32,11,65,16,106,65,9,114,33,12,32,8,33,7,3,64,32,12,32,7,53,2,0,32,12,16,35,34,6,70,4,64,32,6,65,1,107,34,6,65,48,58,0,0,11,2,64,32,7,32,8,71,4,64,32,6,32,11,65,16,106,77,13,1,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,12,1,11,32,0,32,6,65,1,16,14,32,6,65,1,106,33,6,32,10,32,19,114,69,13,0,32,0,35,1,65,239,10,106,65,1,16,14,11,32,0,32,6,32,12,32,6,107,34,5,32,10,32,5,32,10,72,27,16,14,32,10,32,5,107,33,10,32,7,65,4,106,34,7,32,3,79,13,1,32,10,65,0,78,13,0,11,11,32,0,65,48,32,10,65,18,106,65,18,65,0,16,15,32,0,32,18,32,17,32,18,107,16,14,12,2,11,32,10,33,6,11,32,0,65,48,32,6,65,9,106,65,9,65,0,16,15,11,32,0,65,32,32,2,32,9,32,4,65,128,192,0,115,16,15,32,2,32,9,32,2,32,9,74,27,33,13,12,1,11,32,20,32,5,65,26,116,65,31,117,65,9,113,106,33,9,2,64,32,3,65,11,75,13,0,65,12,32,3,107,33,6,68,0,0,0,0,0,0,48,64,33,24,3,64,32,24,68,0,0,0,0,0,0,48,64,162,33,24,32,6,65,1,107,34,6,13,0,11,32,9,45,0,0,65,45,70,4,64,32,24,32,1,154,32,24,161,160,154,33,1,12,1,11,32,1,32,24,160,32,24,161,33,1,11,32,17,32,11,40,2,44,34,7,32,7,65,31,117,34,6,115,32,6,107,173,32,17,16,35,34,6,70,4,64,32,6,65,1,107,34,6,65,48,58,0,0,32,11,40,2,44,33,7,11,32,16,65,2,114,33,10,32,5,65,32,113,33,12,32,6,65,2,107,34,14,32,5,65,15,106,58,0,0,32,6,65,1,107,65,45,65,43,32,7,65,0,72,27,58,0,0,32,4,65,8,113,69,32,3,65,0,76,113,33,8,32,11,65,16,106,33,7,3,64,32,7,34,5,32,1,252,2,34,6,35,1,65,224,47,106,106,45,0,0,32,12,114,58,0,0,32,1,32,6,183,161,68,0,0,0,0,0,0,48,64,162,33,1,2,64,32,7,65,1,106,34,7,32,11,65,16,106,107,65,1,71,13,0,32,1,68,0,0,0,0,0,0,0,0,97,32,8,113,13,0,32,5,65,46,58,0,1,32,5,65,2,106,33,7,11,32,1,68,0,0,0,0,0,0,0,0,98,13,0,11,65,127,33,13,32,3,65,253,255,255,255,7,32,10,32,17,32,14,107,34,8,106,34,6,107,74,13,0,32,0,65,32,32,2,32,6,32,3,65,2,106,32,7,32,11,65,16,106,34,5,107,34,7,32,7,65,2,107,32,3,72,27,32,7,32,3,27,34,3,106,34,6,32,4,16,15,32,0,32,9,32,10,16,14,32,0,65,48,32,2,32,6,32,4,65,128,128,4,115,16,15,32,0,32,5,32,7,16,14,32,0,65,48,32,3,32,7,107,65,0,65,0,16,15,32,0,32,14,32,8,16,14,32,0,65,32,32,2,32,6,32,4,65,128,192,0,115,16,15,32,2,32,6,32,2,32,6,74,27,33,13,11,32,11,65,176,4,106,36,0,32,13,11,179,1,1,5,127,32,2,32,1,40,2,20,34,6,73,4,64,2,127,32,1,40,2,24,34,4,32,2,77,4,64,32,1,40,2,44,32,1,40,2,48,32,2,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,3,65,2,106,33,5,32,3,47,1,0,12,1,11,32,1,40,2,40,32,1,40,2,4,32,2,108,65,1,116,106,65,2,107,33,3,65,0,11,33,7,32,0,65,0,54,0,21,32,0,32,7,59,1,18,32,0,65,0,59,1,16,32,0,65,0,54,2,12,32,0,32,5,54,2,8,32,0,32,3,54,2,4,32,0,32,1,54,2,0,32,0,66,255,255,3,55,2,28,32,0,32,2,32,4,79,58,0,20,32,0,65,0,54,0,24,11,32,2,32,6,73,11,177,1,1,5,127,32,1,32,0,40,2,0,34,2,40,2,20,34,5,73,4,64,2,127,32,2,40,2,24,34,3,32,1,77,4,64,32,2,40,2,44,32,2,40,2,48,32,1,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,2,65,2,106,33,4,32,2,47,1,0,12,1,11,32,2,40,2,40,32,2,40,2,4,32,1,108,65,1,116,106,65,2,107,33,2,65,0,11,33,6,32,0,65,0,54,0,21,32,0,32,6,59,1,18,32,0,65,0,59,1,16,32,0,65,0,54,2,12,32,0,32,4,54,2,8,32,0,32,2,54,2,4,32,0,66,255,255,3,55,2,28,32,0,32,1,32,3,79,58,0,20,32,0,65,0,54,0,24,11,32,1,32,5,73,11,250,2,1,7,127,35,0,65,32,107,34,3,36,0,32,3,32,0,40,2,28,34,4,54,2,16,32,0,40,2,20,33,5,32,3,32,2,54,2,28,32,3,32,1,54,2,24,32,3,32,5,32,4,107,34,1,54,2,20,32,1,32,2,106,33,5,65,2,33,7,2,127,2,64,2,64,2,64,32,0,40,2,60,32,3,65,16,106,34,1,65,2,32,3,65,12,106,16,0,34,4,4,127,35,1,65,216,213,0,106,32,4,54,2,0,65,127,5,65,0,11,4,64,32,1,33,4,12,1,11,3,64,32,5,32,3,40,2,12,34,6,70,13,2,32,6,65,0,72,4,64,32,1,33,4,12,4,11,32,1,65,8,65,0,32,6,32,1,40,2,4,34,8,75,34,9,27,106,34,4,32,6,32,8,65,0,32,9,27,107,34,8,32,4,40,2,0,106,54,2,0,32,1,65,12,65,4,32,9,27,106,34,1,32,1,40,2,0,32,8,107,54,2,0,32,5,32,6,107,33,5,32,0,40,2,60,32,4,34,1,32,7,32,9,107,34,7,32,3,65,12,106,16,0,34,6,4,127,35,1,65,216,213,0,106,32,6,54,2,0,65,127,5,65,0,11,69,13,0,11,11,32,5,65,127,71,13,1,11,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,0,32,1,32,0,40,2,48,106,54,2,16,32,2,12,1,11,32,0,65,0,54,2,28,32,0,66,0,55,3,16,32,0,32,0,40,2,0,65,32,114,54,2,0,65,0,32,7,65,2,70,13,0,26,32,2,32,4,40,2,4,107,11,32,3,65,32,106,36,0,11,78,1,1,127,32,0,40,2,60,35,0,65,16,107,34,0,36,0,32,1,32,2,65,255,1,113,32,0,65,8,106,16,2,34,2,4,127,35,1,65,216,213,0,106,32,2,54,2,0,65,127,5,65,0,11,33,2,32,0,41,3,8,33,1,32,0,65,16,106,36,0,66,127,32,1,32,2,27,11,31,0,32,0,40,2,60,16,4,34,0,4,127,35,1,65,216,213,0,106,32,0,54,2,0,65,127,5,65,0,11,11,135,10,1,3,127,35,0,65,128,1,107,34,16,36,0,35,1,65,212,213,0,106,34,18,40,2,0,34,17,69,4,64,32,18,16,73,34,17,54,2,0,11,32,17,32,14,54,2,72,32,16,35,11,34,17,40,2,0,54,2,120,32,16,32,17,40,2,12,65,1,116,54,2,112,32,16,32,17,40,2,8,54,2,108,32,16,32,1,54,2,124,32,16,32,17,40,2,16,54,2,116,32,16,32,17,40,2,4,65,1,116,54,2,104,32,16,32,3,65,1,116,54,2,100,32,16,32,2,54,2,96,32,16,32,5,65,1,116,54,2,92,32,16,32,4,54,2,88,32,16,32,9,65,1,116,54,2,84,32,16,32,8,54,2,80,32,16,32,11,65,1,116,54,2,76,32,16,32,10,54,2,72,35,1,65,212,213,0,106,34,2,40,2,0,32,16,32,16,41,2,96,55,3,48,32,16,32,16,41,2,88,55,3,40,32,16,65,48,106,32,16,65,40,106,16,122,32,2,40,2,0,33,1,32,7,65,127,32,7,27,34,3,32,6,79,4,64,32,1,32,3,54,2,108,32,1,32,6,54,2,104,11,32,16,32,16,41,2,80,55,3,32,32,16,32,16,41,2,72,55,3,24,32,2,40,2,0,32,16,65,32,106,32,16,65,24,106,16,121,32,2,40,2,0,33,1,32,13,65,127,32,13,27,34,3,32,12,79,4,64,32,1,32,3,54,2,132,1,32,1,32,12,54,2,128,1,11,32,2,40,2,0,32,14,54,2,72,32,2,40,2,0,32,15,54,2,84,32,16,32,16,41,2,112,55,3,8,32,16,32,16,41,2,120,55,3,16,32,16,32,16,41,2,104,55,3,0,32,2,40,2,0,34,1,65,0,54,2,40,32,1,65,0,54,2,28,32,16,40,2,16,33,5,32,16,40,2,8,33,6,32,16,40,2,4,33,7,32,16,40,2,0,33,8,32,16,40,2,20,33,3,32,1,32,16,40,2,12,59,1,20,32,1,32,3,54,2,4,32,1,65,0,54,2,12,32,1,40,2,8,33,3,32,1,40,2,16,4,127,65,0,5,2,127,32,3,4,64,32,3,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,3,32,1,65,8,54,2,16,32,1,40,2,12,11,33,4,32,1,32,3,54,2,8,32,1,32,4,65,1,106,54,2,12,32,3,32,4,65,28,108,106,34,3,65,0,54,2,24,32,3,66,0,55,2,16,32,3,32,6,54,2,12,32,3,32,7,54,2,8,32,3,32,8,54,2,4,32,3,32,5,54,2,0,2,64,32,1,40,2,52,34,5,65,255,255,3,113,34,3,69,13,0,32,1,40,2,48,33,6,65,0,33,7,65,0,33,4,32,3,65,8,79,4,64,32,5,65,248,255,3,113,33,9,65,0,33,8,3,64,32,6,32,4,65,12,108,106,34,3,65,127,54,2,88,32,3,65,127,54,2,76,32,3,65,127,54,2,64,32,3,65,127,54,2,52,32,3,65,127,54,2,40,32,3,65,127,54,2,28,32,3,65,127,54,2,16,32,3,65,127,54,2,4,32,4,65,8,106,33,4,32,8,65,8,106,34,8,32,9,71,13,0,11,11,32,5,65,7,113,34,3,69,13,0,3,64,32,6,32,4,65,12,108,106,65,127,54,2,4,32,4,65,1,106,33,4,32,7,65,1,106,34,7,32,3,71,13,0,11,11,32,1,65,1,58,0,156,1,32,1,32,5,54,2,76,32,1,65,0,54,2,136,1,32,1,65,0,59,0,157,1,32,1,65,0,54,2,80,32,1,65,0,58,0,159,1,32,1,32,0,54,2,0,32,1,66,0,55,2,140,1,32,1,66,0,55,2,148,1,65,0,33,7,65,0,33,6,32,2,40,2,0,32,16,65,60,106,32,16,65,56,106,16,116,4,64,65,0,33,15,65,0,33,5,65,0,33,17,3,64,2,64,32,17,65,3,106,34,3,32,16,47,1,66,65,6,108,106,34,0,32,5,77,13,0,65,8,32,5,65,1,116,34,1,32,0,32,0,32,1,73,27,34,0,32,0,65,8,77,27,34,5,65,2,116,33,0,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,33,7,12,1,11,32,0,35,7,40,2,0,17,0,0,33,7,11,65,0,33,13,32,16,47,1,66,65,24,108,65,12,106,34,0,4,64,32,7,32,17,65,2,116,106,65,0,32,0,252,11,0,11,32,16,47,1,64,33,1,32,7,32,15,65,2,116,106,34,0,32,16,47,1,66,34,2,54,2,4,32,0,32,1,54,2,0,32,0,32,16,40,2,56,54,2,8,32,15,65,3,106,33,15,32,2,4,64,3,64,32,7,32,15,65,2,116,106,34,0,32,16,40,2,68,32,13,65,28,108,106,34,1,40,2,24,54,2,0,32,1,40,2,0,33,4,32,1,40,2,8,33,8,32,1,40,2,16,33,9,32,1,40,2,4,33,10,32,0,32,1,40,2,12,54,2,20,32,0,32,10,54,2,12,32,0,32,9,54,2,4,32,0,32,8,65,1,118,54,2,16,32,0,32,4,65,1,118,54,2,8,32,15,65,6,106,33,15,32,13,65,1,106,34,13,32,2,71,13,0,11,11,32,6,65,1,106,33,6,32,2,65,6,108,32,3,106,33,17,35,1,65,212,213,0,106,40,2,0,32,16,65,60,106,32,16,65,56,106,16,116,13,0,11,11,35,11,34,0,35,1,65,212,213,0,106,40,2,0,45,0,159,1,54,2,8,32,0,32,7,54,2,4,32,0,32,6,54,2,0,32,16,65,128,1,106,36,0,11,9,0,32,0,40,2,4,16,5,11,12,0,32,0,35,8,40,2,0,17,2,0,11,181,10,1,3,127,35,0,65,144,1,107,34,16,36,0,35,1,65,212,213,0,106,34,18,40,2,0,34,17,69,4,64,32,18,16,73,34,17,54,2,0,11,32,17,32,14,65,127,32,14,27,54,2,72,32,16,35,11,34,17,40,2,0,54,2,136,1,32,16,32,17,40,2,12,65,1,116,54,2,128,1,32,16,32,17,40,2,8,54,2,124,32,16,32,1,54,2,140,1,32,16,32,17,40,2,16,54,2,132,1,32,16,32,17,40,2,4,65,1,116,54,2,120,32,16,32,3,65,1,116,54,2,116,32,16,32,2,54,2,112,32,16,32,5,65,1,116,54,2,108,32,16,32,4,54,2,104,32,16,32,9,65,1,116,54,2,100,32,16,32,8,54,2,96,32,16,32,11,65,1,116,54,2,92,32,16,32,10,54,2,88,35,1,34,3,65,212,213,0,106,34,2,40,2,0,32,16,32,16,41,2,112,55,3,56,32,16,32,16,41,2,104,55,3,48,32,16,65,56,106,32,16,65,48,106,16,122,32,2,40,2,0,33,1,32,7,65,127,32,7,27,34,4,32,6,79,4,64,32,1,32,4,54,2,108,32,1,32,6,54,2,104,11,32,16,32,16,41,2,96,55,3,40,32,16,32,16,41,2,88,55,3,32,32,2,40,2,0,32,16,65,40,106,32,16,65,32,106,16,121,32,2,40,2,0,33,1,32,13,65,127,32,13,27,34,4,32,12,79,4,64,32,1,32,4,54,2,132,1,32,1,32,12,54,2,128,1,11,32,2,40,2,0,32,14,54,2,72,32,2,40,2,0,32,15,54,2,84,32,16,32,16,41,2,128,1,55,3,16,32,16,32,16,41,2,136,1,55,3,24,32,16,32,3,65,232,211,0,106,41,3,0,55,3,80,32,16,32,16,41,2,120,55,3,8,32,16,65,208,0,106,33,5,32,16,40,2,24,33,6,32,16,40,2,16,33,7,32,16,40,2,12,33,8,32,16,40,2,8,33,9,32,16,40,2,28,33,3,32,16,40,2,20,33,4,32,2,40,2,0,34,1,65,0,54,2,40,32,1,65,0,54,2,28,32,1,32,4,59,1,20,32,1,32,3,54,2,4,32,1,65,0,54,2,12,32,1,40,2,8,33,3,32,1,40,2,16,4,127,65,0,5,2,127,32,3,4,64,32,3,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,3,32,1,65,8,54,2,16,32,1,40,2,12,11,33,4,32,1,32,3,54,2,8,32,1,32,4,65,1,106,54,2,12,32,3,32,4,65,28,108,106,34,3,65,0,54,2,24,32,3,66,0,55,2,16,32,3,32,7,54,2,12,32,3,32,8,54,2,8,32,3,32,9,54,2,4,32,3,32,6,54,2,0,2,64,32,1,40,2,52,34,6,65,255,255,3,113,34,3,69,13,0,32,1,40,2,48,33,7,65,0,33,8,65,0,33,4,32,3,65,8,79,4,64,32,6,65,248,255,3,113,33,10,65,0,33,9,3,64,32,7,32,4,65,12,108,106,34,3,65,127,54,2,88,32,3,65,127,54,2,76,32,3,65,127,54,2,64,32,3,65,127,54,2,52,32,3,65,127,54,2,40,32,3,65,127,54,2,28,32,3,65,127,54,2,16,32,3,65,127,54,2,4,32,4,65,8,106,33,4,32,9,65,8,106,34,9,32,10,71,13,0,11,11,32,6,65,7,113,34,3,69,13,0,3,64,32,7,32,4,65,12,108,106,65,127,54,2,4,32,4,65,1,106,33,4,32,8,65,1,106,34,8,32,3,71,13,0,11,11,32,1,65,1,58,0,156,1,32,1,32,6,54,2,76,32,1,65,0,54,2,136,1,32,1,65,0,59,0,157,1,32,1,65,0,54,2,80,32,1,65,0,58,0,159,1,32,1,32,0,54,2,0,32,1,66,0,55,2,140,1,32,1,66,0,55,2,148,1,32,5,4,64,32,1,32,5,54,2,140,1,32,1,32,5,40,2,0,54,2,144,1,11,65,0,33,7,65,0,33,6,32,2,40,2,0,32,16,65,196,0,106,16,120,4,64,65,0,33,15,65,0,33,5,65,0,33,17,3,64,2,64,32,17,65,2,106,34,3,32,16,47,1,74,65,6,108,106,34,0,32,5,77,13,0,65,8,32,5,65,1,116,34,1,32,0,32,0,32,1,73,27,34,0,32,0,65,8,77,27,34,5,65,2,116,33,0,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,33,7,12,1,11,32,0,35,7,40,2,0,17,0,0,33,7,11,65,0,33,13,32,16,47,1,74,65,24,108,65,8,106,34,0,4,64,32,7,32,17,65,2,116,106,65,0,32,0,252,11,0,11,32,16,47,1,72,33,0,32,7,32,15,65,2,116,106,34,1,32,16,47,1,74,34,2,54,2,4,32,1,32,0,54,2,0,32,15,65,2,106,33,15,32,2,4,64,3,64,32,7,32,15,65,2,116,106,34,0,32,16,40,2,76,32,13,65,28,108,106,34,1,40,2,24,54,2,0,32,1,40,2,0,33,4,32,1,40,2,8,33,8,32,1,40,2,16,33,9,32,1,40,2,4,33,10,32,0,32,1,40,2,12,54,2,20,32,0,32,10,54,2,12,32,0,32,9,54,2,4,32,0,32,8,65,1,118,54,2,16,32,0,32,4,65,1,118,54,2,8,32,15,65,6,106,33,15,32,13,65,1,106,34,13,32,2,71,13,0,11,11,32,6,65,1,106,33,6,32,2,65,6,108,32,3,106,33,17,35,1,65,212,213,0,106,40,2,0,32,16,65,196,0,106,16,120,13,0,11,11,35,11,34,0,35,1,65,212,213,0,106,40,2,0,45,0,159,1,54,2,8,32,0,32,7,54,2,4,32,0,32,6,54,2,0,32,16,65,144,1,106,36,0,11,217,1,1,3,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,40,2,20,40,2,8,33,3,2,127,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,65,255,255,3,32,0,65,16,118,34,2,65,255,255,3,70,13,2,26,32,0,65,128,254,3,113,65,8,118,12,1,11,65,255,255,3,32,0,47,1,42,34,2,65,255,255,3,70,13,1,26,32,0,47,1,40,11,33,0,32,3,32,2,32,0,65,255,255,3,113,16,43,11,32,1,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,90,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,3,118,65,1,113,12,1,11,32,0,47,1,44,65,2,118,65,1,113,11,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,5,118,65,1,113,12,1,11,32,0,47,1,44,65,9,118,65,1,113,11,32,1,65,48,106,36,0,11,222,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,2,64,32,1,40,2,12,34,0,65,255,255,3,113,69,4,64,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,128,254,3,113,65,8,118,33,0,12,2,11,32,0,47,1,40,33,0,11,32,0,65,255,255,3,113,65,255,255,3,71,13,0,65,1,12,1,11,32,1,40,2,20,40,2,8,40,2,76,32,0,65,255,255,3,113,65,1,116,106,47,1,0,65,255,255,3,70,11,32,1,65,48,106,36,0,11,170,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,26,116,65,31,117,65,226,4,113,12,1,11,65,226,4,32,0,45,0,45,65,2,113,13,0,26,32,0,40,2,32,11,65,0,71,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,4,118,65,1,113,12,1,11,32,0,47,1,44,65,5,118,65,1,113,11,32,1,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,61,32,1,65,48,106,36,0,11,209,6,1,8,127,35,0,65,160,1,107,34,7,36,0,32,7,35,11,34,8,40,2,0,54,2,152,1,32,7,32,8,40,2,12,65,1,116,54,2,144,1,32,7,32,0,54,2,156,1,32,7,32,7,41,2,152,1,55,3,88,32,7,32,8,40,2,16,54,2,148,1,32,7,32,7,41,2,144,1,55,3,80,32,7,32,8,40,2,8,54,2,140,1,32,7,32,8,40,2,4,65,1,116,54,2,136,1,32,7,32,7,41,2,136,1,55,3,72,35,1,65,192,213,0,106,32,7,65,200,0,106,16,38,32,6,65,1,116,34,0,65,127,32,0,32,5,114,34,0,27,33,11,32,5,65,127,32,0,27,33,10,32,4,65,1,116,33,12,65,0,33,4,65,0,33,6,65,0,33,8,3,64,65,0,33,0,3,64,32,7,65,240,0,106,35,1,65,192,213,0,106,16,16,2,64,2,64,2,64,32,0,65,1,113,69,4,64,32,7,65,64,107,32,7,41,2,128,1,55,3,0,32,7,32,7,41,2,120,55,3,56,32,7,32,7,41,2,112,55,3,48,32,7,65,232,0,106,32,7,65,48,106,16,63,32,3,32,7,40,2,104,34,0,77,4,64,32,0,32,3,71,13,2,32,7,40,2,108,32,12,75,13,2,11,35,1,65,192,213,0,106,34,0,16,28,13,5,32,0,16,52,69,13,2,32,7,65,240,0,106,32,0,16,16,11,35,1,65,192,213,0,106,34,0,16,28,13,4,32,0,16,52,69,13,1,65,1,33,0,12,3,11,32,7,32,7,41,2,128,1,55,3,40,32,7,32,7,41,2,120,55,3,32,32,7,32,7,41,2,112,55,3,24,32,7,32,7,40,2,28,54,2,96,32,7,32,7,40,2,32,54,2,100,32,10,32,7,40,2,96,34,0,73,13,0,32,0,32,10,70,4,64,32,11,32,7,40,2,100,77,13,1,11,32,7,32,7,41,2,128,1,55,3,16,32,7,32,7,41,2,120,55,3,8,32,7,32,7,41,2,112,55,3,0,65,0,33,0,32,7,16,62,33,5,2,64,32,2,69,4,64,32,6,33,5,12,1,11,2,64,3,64,32,1,32,0,65,2,116,106,40,2,0,34,9,32,5,70,13,1,32,5,32,9,73,4,64,32,6,33,5,12,3,11,32,0,65,1,106,34,0,32,2,71,13,0,11,32,6,33,5,12,1,11,2,64,32,6,65,5,106,34,5,32,8,77,13,0,65,8,32,8,65,1,116,34,0,32,5,32,0,32,5,75,27,34,0,32,0,65,8,77,27,34,8,65,2,116,33,0,32,4,4,64,32,4,32,0,35,6,40,2,0,17,1,0,33,4,12,1,11,32,0,35,7,40,2,0,17,0,0,33,4,11,32,4,32,6,65,2,116,106,34,0,66,0,55,2,0,32,0,65,0,54,2,16,32,0,66,0,55,2,8,32,7,40,2,112,33,6,32,7,40,2,120,33,9,32,7,40,2,128,1,33,13,32,7,40,2,116,33,14,32,4,32,5,65,2,116,106,34,0,65,4,107,32,7,40,2,124,54,2,0,32,0,65,12,107,32,14,54,2,0,32,0,65,20,107,32,13,54,2,0,32,0,65,8,107,32,9,65,1,118,54,2,0,32,0,65,16,107,32,6,65,1,118,54,2,0,11,65,0,33,0,35,1,65,192,213,0,106,16,44,4,64,32,5,33,6,12,3,11,35,1,65,192,213,0,106,16,28,4,64,32,5,33,6,12,3,11,35,1,65,192,213,0,106,16,52,13,1,32,5,33,6,11,35,11,34,0,32,4,54,2,4,32,0,32,6,65,5,110,54,2,0,32,7,65,160,1,106,36,0,15,11,65,1,33,0,32,5,33,6,12,0,11,0,11,0,11,186,1,1,5,127,32,1,32,0,40,2,20,73,4,64,65,36,35,7,40,2,0,17,0,0,33,2,2,127,32,0,40,2,24,34,4,32,1,77,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,3,65,2,106,33,5,32,3,47,1,0,12,1,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,65,2,107,33,3,65,0,11,33,6,32,2,65,0,54,0,21,32,2,32,6,59,1,18,32,2,65,0,59,1,16,32,2,65,0,54,2,12,32,2,32,5,54,2,8,32,2,32,3,54,2,4,32,2,32,0,54,2,0,32,2,66,255,255,3,55,2,28,32,2,32,1,32,4,79,58,0,20,32,2,65,0,54,0,24,11,32,2,11,160,3,1,8,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,1,41,2,120,55,3,72,32,1,32,2,40,2,16,54,2,116,32,1,65,64,107,32,1,41,2,112,55,3,0,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,1,41,2,104,55,3,56,65,0,33,0,2,64,32,1,40,2,72,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,52,33,0,11,2,64,32,0,34,3,69,4,64,65,0,33,2,12,1,11,65,4,32,3,65,5,108,16,42,33,2,32,1,32,1,41,2,120,55,3,48,32,1,32,1,41,2,112,55,3,40,32,1,32,1,41,2,104,55,3,32,35,1,65,192,213,0,106,34,0,32,1,65,32,106,16,38,32,0,16,44,26,32,2,33,0,3,64,32,1,65,208,0,106,35,1,65,192,213,0,106,16,16,32,1,32,1,41,2,96,55,3,24,32,1,32,1,41,2,88,55,3,16,32,1,32,1,41,2,80,55,3,8,32,1,65,8,106,16,61,4,64,32,1,40,2,80,33,4,32,1,40,2,88,33,5,32,1,40,2,96,33,6,32,1,40,2,84,33,7,32,0,32,1,40,2,92,54,2,16,32,0,32,7,54,2,8,32,0,32,6,54,2,0,32,0,32,5,65,1,118,54,2,12,32,0,32,4,65,1,118,54,2,4,32,8,65,1,106,34,8,32,3,70,13,2,32,0,65,20,106,33,0,11,35,1,65,192,213,0,106,16,28,13,0,11,11,35,11,34,0,32,2,54,2,4,32,0,32,3,54,2,0,32,1,65,128,1,106,36,0,11,205,3,1,8,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,1,41,2,120,55,3,48,32,1,32,2,40,2,16,54,2,116,32,1,32,1,41,2,112,55,3,40,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,1,41,2,104,55,3,32,65,0,33,0,2,64,32,1,40,2,48,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,33,0,11,2,64,32,0,34,4,69,4,64,65,0,33,0,12,1,11,65,4,32,4,65,5,108,16,42,33,0,32,1,32,1,41,2,120,55,3,24,32,1,32,1,41,2,112,55,3,16,32,1,32,1,41,2,104,55,3,8,35,1,65,192,213,0,106,34,2,32,1,65,8,106,16,38,32,2,16,44,26,32,1,65,208,0,106,32,2,16,16,32,1,40,2,80,33,2,32,1,40,2,88,33,5,32,1,40,2,96,33,3,32,1,40,2,84,33,6,32,0,32,1,40,2,92,54,2,16,32,0,32,6,54,2,8,32,0,32,3,54,2,0,32,0,32,5,65,1,118,54,2,12,32,0,32,2,65,1,118,54,2,4,32,4,65,1,70,13,0,65,1,33,5,32,0,33,2,3,64,35,1,65,192,213,0,106,34,3,16,28,26,32,1,65,56,106,32,3,16,16,32,1,40,2,56,33,3,32,1,40,2,64,33,6,32,1,40,2,72,33,7,32,1,40,2,60,33,8,32,2,32,1,40,2,68,54,2,36,32,2,32,8,54,2,28,32,2,32,7,54,2,20,32,2,32,6,65,1,118,54,2,32,32,2,32,3,65,1,118,54,2,24,32,2,65,20,106,33,2,32,5,65,1,106,34,5,32,4,71,13,0,11,11,35,11,34,2,32,0,54,2,4,32,2,32,4,54,2,0,32,1,65,128,1,106,36,0,11,172,2,2,7,127,1,126,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,35,0,65,32,107,34,0,36,0,32,1,40,2,20,40,2,8,33,2,32,1,40,2,16,41,2,0,33,8,65,1,33,3,2,64,2,64,2,64,32,1,47,1,12,34,4,65,254,255,3,107,14,2,0,2,1,11,65,0,33,3,12,1,11,32,2,40,2,72,32,4,65,3,108,106,45,0,0,33,3,11,32,0,32,8,55,3,16,32,0,32,8,55,3,8,32,0,65,8,106,32,0,65,31,106,65,1,32,2,65,0,32,4,32,3,65,1,113,34,5,35,1,65,161,10,106,34,6,16,48,65,1,106,34,7,35,7,40,2,0,17,0,0,33,3,32,0,32,0,41,3,16,55,3,0,32,0,32,3,32,7,32,2,65,0,32,4,32,5,32,6,16,48,26,32,0,65,32,106,36,0,32,1,65,48,106,36,0,32,3,11,122,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,91,32,1,65,48,106,36,0,65,1,118,11,123,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,40,2,0,32,1,65,48,106,36,0,65,1,118,11,150,1,1,2,127,35,0,65,64,106,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,56,32,1,32,2,40,2,12,65,1,116,54,2,48,32,1,32,0,54,2,60,32,1,32,1,41,2,56,55,3,24,32,1,32,2,40,2,16,54,2,52,32,1,32,1,41,2,48,55,3,16,32,1,32,2,40,2,8,54,2,44,32,1,32,2,40,2,4,65,1,116,54,2,40,32,1,32,1,41,2,40,55,3,8,32,1,65,32,106,32,1,65,8,106,16,63,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,36,65,1,118,54,2,4,32,1,65,64,107,36,0,11,158,1,1,2,127,35,0,65,64,106,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,56,32,1,32,2,40,2,12,65,1,116,54,2,48,32,1,32,0,54,2,60,32,1,32,1,41,2,56,55,3,24,32,1,32,2,40,2,16,54,2,52,32,1,32,1,41,2,48,55,3,16,32,1,32,2,40,2,8,54,2,44,32,1,32,2,40,2,4,65,1,116,54,2,40,32,1,32,1,41,2,40,55,3,8,32,1,32,1,40,2,12,54,2,32,32,1,32,1,40,2,16,54,2,36,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,36,65,1,118,54,2,4,32,1,65,64,107,36,0,11,215,2,1,6,127,35,0,65,240,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,104,32,1,32,2,40,2,12,65,1,116,54,2,96,32,1,32,0,54,2,108,32,1,32,2,40,2,8,54,2,92,32,1,32,2,40,2,16,54,2,100,32,1,32,2,40,2,4,65,1,116,54,2,88,32,1,32,2,40,2,24,65,1,116,54,2,84,32,1,32,2,40,2,20,54,2,80,32,2,40,2,32,33,0,32,2,40,2,28,33,3,32,1,32,1,41,2,104,55,3,40,32,1,32,1,41,2,96,55,3,32,32,1,32,3,54,2,72,32,1,32,1,41,2,88,55,3,24,32,1,32,0,65,1,116,54,2,76,32,1,32,1,41,2,80,55,3,16,32,1,32,1,41,2,72,55,3,8,35,0,65,32,107,34,0,36,0,32,1,40,2,12,33,3,32,1,40,2,8,33,4,32,1,40,2,20,33,5,32,1,40,2,16,33,6,32,0,32,1,41,2,40,55,3,24,32,0,32,1,41,2,32,55,3,16,32,0,32,1,41,2,24,55,3,8,32,1,65,48,106,32,0,65,8,106,32,6,32,5,32,4,32,3,65,0,16,85,32,0,65,32,106,36,0,32,2,32,1,40,2,60,54,2,16,32,2,32,1,40,2,52,54,2,8,32,2,32,1,40,2,64,54,2,0,32,2,32,1,40,2,56,65,1,118,54,2,12,32,2,32,1,40,2,48,65,1,118,54,2,4,32,1,65,240,0,106,36,0,11,215,2,1,6,127,35,0,65,240,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,104,32,1,32,2,40,2,12,65,1,116,54,2,96,32,1,32,0,54,2,108,32,1,32,2,40,2,8,54,2,92,32,1,32,2,40,2,16,54,2,100,32,1,32,2,40,2,4,65,1,116,54,2,88,32,1,32,2,40,2,24,65,1,116,54,2,84,32,1,32,2,40,2,20,54,2,80,32,2,40,2,32,33,0,32,2,40,2,28,33,3,32,1,32,1,41,2,104,55,3,40,32,1,32,1,41,2,96,55,3,32,32,1,32,3,54,2,72,32,1,32,1,41,2,88,55,3,24,32,1,32,0,65,1,116,54,2,76,32,1,32,1,41,2,80,55,3,16,32,1,32,1,41,2,72,55,3,8,35,0,65,32,107,34,0,36,0,32,1,40,2,12,33,3,32,1,40,2,8,33,4,32,1,40,2,20,33,5,32,1,40,2,16,33,6,32,0,32,1,41,2,40,55,3,24,32,0,32,1,41,2,32,55,3,16,32,0,32,1,41,2,24,55,3,8,32,1,65,48,106,32,0,65,8,106,32,6,32,5,32,4,32,3,65,1,16,85,32,0,65,32,106,36,0,32,2,32,1,40,2,60,54,2,16,32,2,32,1,40,2,52,54,2,8,32,2,32,1,40,2,64,54,2,0,32,2,32,1,40,2,56,65,1,118,54,2,12,32,2,32,1,40,2,48,65,1,118,54,2,4,32,1,65,240,0,106,36,0,11,134,2,1,4,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,32,2,40,2,24,65,1,116,33,4,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,32,4,65,0,16,86,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,88,1,1,127,35,1,65,200,211,0,106,36,6,35,1,65,192,211,0,106,36,7,35,1,65,204,211,0,106,36,8,35,1,65,196,211,0,106,36,9,35,1,65,136,213,0,106,36,10,35,1,65,144,213,0,106,34,0,36,11,35,1,65,148,219,0,106,36,12,35,1,65,152,219,0,106,36,13,32,0,65,0,65,140,6,252,11,0,11,134,2,1,4,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,32,2,40,2,24,65,1,116,33,4,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,32,4,65,1,16,86,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,159,2,1,3,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,16,54,2,116,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,2,40,2,20,54,2,96,32,1,32,2,40,2,24,65,1,116,54,2,80,32,1,32,2,40,2,28,54,2,84,32,1,32,2,40,2,32,65,1,116,54,2,88,32,2,40,2,36,33,3,32,1,32,1,41,2,120,55,3,48,32,1,32,1,41,2,112,55,3,40,32,1,32,0,54,2,100,32,1,32,1,41,2,104,55,3,32,32,1,32,3,54,2,92,32,1,32,1,41,2,96,55,3,24,32,1,32,1,41,2,88,55,3,16,32,1,32,1,41,2,80,55,3,8,32,1,65,56,106,32,1,65,32,106,32,1,65,8,106,16,24,32,2,32,1,40,2,68,54,2,16,32,2,32,1,40,2,60,54,2,8,32,2,32,1,40,2,72,54,2,0,32,2,32,1,40,2,64,65,1,118,54,2,12,32,2,32,1,40,2,56,65,1,118,54,2,4,32,1,65,128,1,106,36,0,11,224,4,2,6,127,2,126,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,3,40,2,0,54,2,72,32,1,65,64,107,34,2,32,3,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,3,40,2,16,54,2,68,32,1,32,2,41,2,0,55,3,16,32,1,32,3,40,2,8,54,2,60,32,1,32,3,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,144,1,107,34,0,36,0,2,127,32,1,40,2,28,34,2,40,2,0,34,4,65,1,113,4,64,32,2,45,0,5,65,15,113,33,5,32,2,45,0,4,33,6,32,2,45,0,6,12,1,11,32,4,40,2,12,33,6,32,4,40,2,8,33,5,32,4,40,2,4,11,33,4,32,0,32,2,54,2,140,1,32,0,32,2,54,2,136,1,32,0,65,0,54,2,132,1,32,0,32,6,54,2,128,1,32,0,32,5,54,2,124,32,0,32,4,54,2,120,2,64,32,2,32,1,40,2,24,34,4,71,4,64,32,0,32,0,41,2,128,1,55,3,80,32,0,32,0,41,2,136,1,55,3,88,32,0,32,0,41,2,120,55,3,72,32,0,32,1,41,2,16,55,3,56,32,0,65,64,107,32,1,41,2,24,55,3,0,32,0,32,1,41,2,8,55,3,48,32,0,65,224,0,106,32,0,65,200,0,106,32,0,65,48,106,16,24,2,64,32,0,40,2,112,34,2,32,4,70,13,0,32,2,69,13,0,3,64,32,0,32,0,41,2,112,34,7,55,3,136,1,32,0,32,0,41,2,104,34,8,55,3,128,1,32,0,32,8,55,3,32,32,0,32,7,55,3,40,32,0,32,0,41,2,96,34,7,55,3,120,32,0,32,7,55,3,24,32,0,32,1,41,2,16,55,3,8,32,0,32,1,41,2,24,55,3,16,32,0,32,1,41,2,8,55,3,0,32,0,65,224,0,106,32,0,65,24,106,32,0,16,24,32,0,40,2,112,34,2,32,4,70,13,1,32,2,13,0,11,11,32,1,32,0,41,3,120,55,2,32,32,1,32,0,41,3,136,1,55,2,48,32,1,32,0,41,3,128,1,55,2,40,12,1,11,32,1,66,0,55,2,32,32,1,66,0,55,2,48,32,1,66,0,55,2,40,11,32,0,65,144,1,106,36,0,32,3,32,1,40,2,44,54,2,16,32,3,32,1,40,2,36,54,2,8,32,3,32,1,40,2,48,54,2,0,32,3,32,1,40,2,40,65,1,118,54,2,12,32,3,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,157,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,1,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,56,65,1,106,33,0,11,32,1,65,48,106,36,0,32,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,0,16,88,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,0,16,89,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,1,16,88,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,1,16,89,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,197,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,32,2,65,32,106,32,2,65,8,106,32,1,65,255,255,3,113,16,59,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,240,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,2,41,2,24,55,3,24,32,0,32,2,41,2,16,55,3,16,32,0,32,2,41,2,8,55,3,8,32,2,65,32,106,32,0,65,8,106,32,1,65,0,16,60,32,0,65,32,106,36,0,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,42,1,2,127,2,64,32,0,40,2,32,34,3,69,13,0,32,1,32,3,75,13,0,32,0,40,2,60,32,1,65,2,116,106,40,2,0,33,2,11,32,2,11,240,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,2,41,2,24,55,3,24,32,0,32,2,41,2,16,55,3,16,32,0,32,2,41,2,8,55,3,8,32,2,65,32,106,32,0,65,8,106,32,1,65,1,16,60,32,0,65,32,106,36,0,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,154,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,0,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,52,33,0,11,32,1,65,48,106,36,0,32,0,11,154,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,0,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,33,0,11,32,1,65,48,106,36,0,32,0,11,156,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,128,254,3,113,65,8,118,12,1,11,32,0,47,1,40,11,65,255,255,3,113,32,1,65,48,106,36,0,11,250,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,65,0,16,87,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,250,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,65,1,16,87,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,137,4,1,9,127,35,0,65,128,1,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,120,32,2,32,3,40,2,12,65,1,116,54,2,112,32,2,32,0,54,2,124,32,2,32,2,41,2,120,55,3,48,32,2,32,3,40,2,16,54,2,116,32,2,32,2,41,2,112,55,3,40,32,2,32,3,40,2,8,54,2,108,32,2,32,3,40,2,4,65,1,116,54,2,104,32,2,32,2,41,2,104,55,3,32,32,2,65,212,0,106,32,2,65,32,106,16,112,2,64,32,1,69,4,64,65,0,33,3,12,1,11,32,2,32,2,41,2,120,55,3,24,32,2,32,2,41,2,112,55,3,16,32,2,32,2,41,2,104,55,3,8,32,2,65,212,0,106,34,0,32,2,65,8,106,16,38,32,0,16,44,26,65,0,33,0,65,0,33,3,3,64,32,3,33,4,2,64,3,64,32,2,65,212,0,106,34,3,16,109,32,1,70,13,1,32,3,16,28,13,0,11,32,4,33,3,12,2,11,32,2,65,60,106,32,2,65,212,0,106,34,3,16,16,32,3,16,28,2,64,32,4,65,5,106,34,3,32,0,77,13,0,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,2,116,33,6,32,5,4,64,32,5,32,6,35,6,40,2,0,17,1,0,33,5,12,1,11,32,6,35,7,40,2,0,17,0,0,33,5,11,32,5,32,4,65,2,116,106,34,4,66,0,55,2,0,32,4,65,0,54,2,16,32,4,66,0,55,2,8,32,2,40,2,60,33,6,32,2,40,2,68,33,8,32,2,40,2,76,33,9,32,2,40,2,64,33,10,32,5,32,3,65,2,116,106,34,4,65,4,107,32,2,40,2,72,54,2,0,32,4,65,12,107,32,10,54,2,0,32,4,65,20,107,32,9,54,2,0,32,4,65,8,107,32,8,65,1,118,54,2,0,32,4,65,16,107,32,6,65,1,118,54,2,0,13,0,11,11,32,2,40,2,88,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,2,65,0,54,2,96,32,2,66,0,55,2,88,35,11,34,0,32,5,54,2,4,32,0,32,3,65,5,110,54,2,0,32,2,65,128,1,106,36,0,11,173,8,1,13,127,35,0,65,48,107,34,4,36,0,32,4,35,11,34,5,40,2,0,54,2,40,32,4,32,5,40,2,12,65,1,116,54,2,32,32,4,32,0,54,2,44,32,4,32,4,41,2,40,55,3,16,32,4,32,5,40,2,16,54,2,36,32,4,32,4,41,2,32,55,3,8,32,4,32,5,40,2,8,54,2,28,32,4,32,5,40,2,4,65,1,116,54,2,24,32,4,32,4,41,2,24,55,3,0,2,127,2,64,32,4,40,2,16,34,0,40,2,0,34,2,65,1,113,13,0,32,4,40,2,20,33,12,3,64,32,0,33,5,32,2,40,2,36,69,13,1,65,0,33,11,32,2,47,1,66,34,0,4,64,32,12,40,2,8,34,7,40,2,84,32,7,47,1,36,32,0,108,65,1,116,106,33,11,11,32,2,40,2,36,34,14,69,13,1,2,127,32,2,32,14,65,3,116,107,34,0,40,2,0,34,3,65,1,113,34,7,69,4,64,32,3,47,1,44,65,2,118,65,1,113,12,1,11,32,3,65,3,118,65,1,113,11,34,8,69,33,9,65,0,33,2,2,64,32,8,13,0,32,11,69,13,0,32,11,47,1,0,33,2,65,1,33,9,11,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,1,2,0,11,32,2,69,4,64,32,7,69,4,64,32,3,47,1,44,34,7,65,1,113,69,13,2,32,7,65,1,118,65,1,113,69,13,2,12,3,11,32,3,65,2,113,69,13,1,32,3,65,2,118,65,1,113,13,2,12,1,11,32,12,40,2,8,40,2,72,32,2,65,3,108,106,45,0,1,65,1,113,13,1,11,65,0,33,10,32,0,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,2,40,2,52,34,10,73,13,2,12,1,11,65,1,33,10,32,1,69,13,2,11,65,1,33,6,32,14,65,1,70,13,3,3,64,65,0,33,2,2,127,32,0,32,6,65,3,116,106,34,7,40,2,0,34,3,65,1,113,34,8,4,64,32,3,65,3,118,65,1,113,12,1,11,32,3,47,1,44,65,2,118,65,1,113,11,69,4,64,32,11,4,127,32,11,32,9,65,1,116,106,47,1,0,5,65,0,11,33,2,32,9,65,1,106,33,9,11,2,127,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,2,1,0,11,2,64,32,2,69,4,64,32,8,69,13,1,32,3,65,2,113,69,13,3,32,3,65,2,118,65,1,113,13,2,12,3,11,32,12,40,2,8,40,2,72,32,2,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,3,47,1,44,34,8,65,1,113,69,13,1,32,8,65,1,118,65,1,113,69,13,1,11,32,1,32,10,71,13,1,12,6,11,65,0,33,3,32,7,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,10,107,34,8,32,2,40,2,52,34,3,79,13,1,32,7,33,0,32,8,33,1,12,4,11,32,10,65,1,106,12,1,11,32,3,32,10,106,11,33,10,32,6,65,1,106,34,6,32,14,71,13,0,11,12,3,11,2,127,65,0,32,12,40,2,8,34,7,40,2,32,69,13,0,26,65,0,32,7,40,2,64,32,5,40,2,0,47,1,66,65,2,116,106,34,5,47,1,2,34,8,69,13,0,26,32,9,65,1,107,33,3,32,7,40,2,68,32,5,47,1,0,65,2,116,106,34,6,32,8,65,2,116,106,33,5,3,64,2,64,32,6,45,0,3,13,0,32,3,32,6,45,0,2,71,13,0,32,7,40,2,60,32,6,47,1,0,65,2,116,106,40,2,0,12,2,11,32,6,65,4,106,34,6,32,5,71,13,0,11,65,0,11,34,5,32,13,32,5,27,33,13,32,2,65,1,113,69,13,1,12,2,11,11,32,3,65,1,113,4,127,32,3,65,3,118,65,1,113,5,32,3,47,1,44,65,2,118,65,1,113,11,13,0,2,64,32,12,40,2,8,34,0,40,2,32,69,13,0,32,0,40,2,64,32,5,40,2,0,47,1,66,65,2,116,106,34,1,47,1,2,34,5,69,13,0,32,9,65,1,107,33,7,32,0,40,2,68,32,1,47,1,0,65,2,116,106,34,6,32,5,65,2,116,106,33,1,3,64,2,64,32,6,45,0,3,13,0,32,7,32,6,45,0,2,71,13,0,32,0,40,2,60,32,6,47,1,0,65,2,116,106,40,2,0,34,0,32,13,32,0,27,12,4,11,32,6,65,4,106,34,6,32,1,71,13,0,11,11,32,13,12,1,11,65,0,11,32,4,65,48,106,36,0,11,170,7,1,13,127,35,0,65,48,107,34,3,36,0,32,3,35,11,34,4,40,2,0,54,2,40,32,3,32,4,40,2,12,65,1,116,54,2,32,32,3,32,0,54,2,44,32,3,32,3,41,2,40,55,3,16,32,3,32,4,40,2,16,54,2,36,32,3,32,3,41,2,32,55,3,8,32,3,32,4,40,2,8,54,2,28,32,3,32,4,40,2,4,65,1,116,54,2,24,32,3,32,3,41,2,24,55,3,0,2,127,2,64,32,3,40,2,16,34,0,40,2,0,34,2,65,1,113,13,0,32,3,40,2,20,33,13,3,64,32,0,33,4,32,2,40,2,36,69,13,1,65,0,33,10,32,2,47,1,66,34,0,4,64,32,13,40,2,8,34,5,40,2,84,32,5,47,1,36,32,0,108,65,1,116,106,33,10,11,32,2,40,2,36,34,14,69,13,1,2,127,32,2,32,14,65,3,116,107,34,0,40,2,0,34,2,65,1,113,34,5,69,4,64,32,2,47,1,44,65,2,118,65,1,113,12,1,11,32,2,65,3,118,65,1,113,11,34,8,69,33,9,65,0,33,6,2,64,32,8,13,0,32,10,69,13,0,32,10,47,1,0,65,0,71,33,6,65,1,33,9,11,2,64,2,64,2,64,2,127,32,5,69,4,64,32,2,47,1,44,65,1,113,12,1,11,32,2,65,1,118,65,1,113,11,32,6,114,65,1,113,69,4,64,65,0,33,6,32,0,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,2,40,2,48,34,6,79,13,1,12,2,11,65,1,33,6,32,1,69,13,2,11,65,1,33,7,32,14,65,1,70,13,3,3,64,65,0,33,11,2,127,32,0,32,7,65,3,116,106,34,5,40,2,0,34,2,65,1,113,34,8,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,69,4,64,32,10,4,127,32,10,32,9,65,1,116,106,47,1,0,65,0,71,5,65,0,11,33,11,32,9,65,1,106,33,9,11,2,127,2,64,2,64,32,8,4,127,32,2,65,1,118,65,1,113,5,32,2,47,1,44,65,1,113,11,32,11,114,65,1,113,4,64,32,1,32,6,71,13,1,12,6,11,65,0,33,11,32,5,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,6,107,34,8,32,2,40,2,48,34,11,79,13,1,32,5,33,0,32,8,33,1,12,4,11,32,6,65,1,106,12,1,11,32,6,32,11,106,11,33,6,32,7,65,1,106,34,7,32,14,71,13,0,11,12,3,11,2,127,65,0,32,13,40,2,8,34,5,40,2,32,69,13,0,26,65,0,32,5,40,2,64,32,4,40,2,0,47,1,66,65,2,116,106,34,4,47,1,2,34,8,69,13,0,26,32,9,65,1,107,33,6,32,5,40,2,68,32,4,47,1,0,65,2,116,106,34,7,32,8,65,2,116,106,33,4,3,64,2,64,32,7,45,0,3,13,0,32,6,32,7,45,0,2,71,13,0,32,5,40,2,60,32,7,47,1,0,65,2,116,106,40,2,0,12,2,11,32,7,65,4,106,34,7,32,4,71,13,0,11,65,0,11,34,4,32,12,32,4,27,33,12,32,2,65,1,113,69,13,1,12,2,11,11,32,2,65,1,113,4,127,32,2,65,3,118,65,1,113,5,32,2,47,1,44,65,2,118,65,1,113,11,13,0,2,64,32,13,40,2,8,34,0,40,2,32,69,13,0,32,0,40,2,64,32,4,40,2,0,47,1,66,65,2,116,106,34,1,47,1,2,34,4,69,13,0,32,9,65,1,107,33,5,32,0,40,2,68,32,1,47,1,0,65,2,116,106,34,2,32,4,65,2,116,106,33,1,3,64,2,64,32,2,45,0,3,13,0,32,5,32,2,45,0,2,71,13,0,32,0,40,2,60,32,2,47,1,0,65,2,116,106,40,2,0,34,0,32,12,32,0,27,12,4,11,32,2,65,4,106,34,2,32,1,71,13,0,11,11,32,12,12,1,11,65,0,11,32,3,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,62,32,1,65,48,106,36,0,11,117,1,1,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,41,3,0,55,2,32,32,1,32,0,41,3,8,55,2,40,32,1,65,4,106,32,1,65,28,106,16,16,32,0,32,1,40,2,16,54,2,16,32,0,32,1,40,2,8,54,2,8,32,0,32,1,40,2,20,54,2,0,32,0,32,1,40,2,12,65,1,118,54,2,12,32,0,32,1,40,2,4,65,1,118,54,2,4,32,1,65,48,106,36,0,11,69,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,40,2,16,32,1,40,2,20,65,28,108,106,65,4,107,40,2,0,32,1,65,32,106,36,0,11,243,1,1,7,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,65,0,33,0,32,1,40,2,20,34,5,65,2,79,4,64,32,1,40,2,16,33,6,65,1,33,3,3,64,2,64,2,127,2,64,2,64,32,6,32,3,65,28,108,106,34,4,40,2,0,40,2,0,34,2,65,1,113,4,64,32,2,65,2,113,13,1,32,2,65,3,118,65,1,113,12,3,11,32,2,47,1,44,34,2,65,1,113,69,13,1,11,32,0,65,1,106,33,0,12,2,11,32,2,65,2,118,65,1,113,11,13,0,32,4,65,28,107,40,2,0,40,2,0,47,1,66,34,2,69,13,0,32,0,32,1,40,2,12,40,2,8,34,7,40,2,84,32,7,47,1,36,32,2,108,65,1,116,106,32,4,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,0,11,32,3,65,1,106,34,3,32,5,71,13,0,11,11,32,1,65,32,106,36,0,32,0,11,56,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,109,32,1,65,32,106,36,0,11,103,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,91,32,1,65,208,0,106,36,0,65,1,118,11,101,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,40,2,8,32,1,65,208,0,106,36,0,65,1,118,11,125,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,16,32,1,32,1,41,2,44,55,3,8,32,1,32,1,41,2,36,55,3,0,32,1,65,28,106,32,1,16,63,32,0,32,1,40,2,28,54,2,0,32,0,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,136,1,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,16,32,1,32,1,41,2,44,55,3,8,32,1,32,1,41,2,36,55,3,0,32,1,32,1,40,2,4,54,2,28,32,1,32,1,40,2,8,54,2,32,32,0,32,1,40,2,28,54,2,0,32,0,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,66,1,1,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,41,3,0,55,2,32,32,1,32,0,41,3,8,55,2,40,32,1,65,4,106,32,1,65,28,106,16,16,32,1,40,2,20,32,1,65,48,106,36,0,11,133,1,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,2,127,32,1,40,2,24,40,2,0,34,0,65,1,113,4,64,32,0,65,5,118,65,1,113,12,1,11,32,0,47,1,44,65,9,118,65,1,113,11,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,61,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,90,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,62,32,1,65,208,0,106,36,0,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,52,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,202,7,2,12,127,1,126,35,0,65,32,107,34,3,36,0,32,3,32,0,54,2,12,32,3,35,11,34,13,41,3,0,55,2,16,32,3,32,13,41,3,8,55,2,24,32,1,33,9,35,0,65,208,0,107,34,2,36,0,32,3,40,2,20,33,0,32,3,40,2,16,33,7,3,64,32,7,32,0,65,1,107,34,1,65,28,108,106,34,8,40,2,24,33,11,32,8,40,2,0,40,2,0,33,6,2,64,2,64,32,1,69,4,64,65,1,33,5,32,6,65,1,113,69,13,1,65,0,33,4,12,2,11,2,64,2,127,32,6,65,1,113,34,12,4,64,32,6,65,2,113,4,64,65,0,33,4,65,1,33,5,12,5,11,32,6,65,3,118,65,1,113,12,1,11,65,1,33,5,32,6,47,1,44,34,4,65,1,113,13,2,32,4,65,2,118,65,1,113,11,13,0,32,8,65,28,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,65,0,33,4,32,3,40,2,12,40,2,8,34,10,40,2,84,32,10,47,1,36,32,5,108,65,1,116,106,32,8,40,2,20,65,1,116,106,47,1,0,65,0,71,33,5,32,12,69,13,1,12,2,11,65,0,33,5,65,0,33,4,32,12,13,1,11,32,6,40,2,36,69,4,64,65,0,33,4,12,1,11,32,6,40,2,56,33,4,11,2,64,2,64,32,9,32,11,73,13,0,32,5,32,11,106,32,4,106,32,9,77,13,0,3,64,2,64,2,64,2,64,32,7,32,0,65,28,108,106,34,8,65,28,107,40,2,0,34,11,40,2,0,34,5,65,1,113,4,64,32,3,40,2,12,33,1,12,1,11,32,3,40,2,12,33,1,32,5,40,2,36,13,1,11,32,2,32,1,54,2,16,32,2,66,0,55,3,8,32,2,65,0,54,2,44,32,2,66,0,55,2,36,32,2,66,0,55,2,28,32,2,66,0,55,2,20,12,1,11,32,1,40,2,8,33,6,32,5,47,1,66,34,4,4,127,32,6,40,2,84,32,6,47,1,36,32,4,108,65,1,116,106,5,65,0,11,33,12,32,8,65,4,107,40,2,0,33,4,2,64,2,64,32,0,65,1,107,34,10,69,13,0,32,5,47,1,44,34,5,65,1,113,13,0,32,5,65,4,113,13,1,32,7,32,10,65,28,108,106,34,5,65,28,107,40,2,0,40,2,0,47,1,66,34,10,69,13,1,32,4,32,6,40,2,84,32,6,47,1,36,32,10,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,4,12,1,11,32,4,65,1,106,33,4,11,32,11,41,2,0,33,14,32,2,32,1,54,2,16,32,2,32,14,55,3,8,32,2,32,8,65,24,107,34,1,40,2,8,54,2,28,32,2,32,1,41,2,0,55,2,20,32,2,32,12,54,2,44,32,2,66,0,55,3,32,32,2,32,4,54,2,40,32,4,32,9,75,13,3,11,3,64,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,69,13,3,32,2,40,2,40,32,9,77,13,0,11,32,3,32,0,65,1,106,34,1,32,3,40,2,24,34,4,75,4,127,65,8,32,4,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,1,65,28,108,33,0,2,127,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,12,1,11,32,0,35,7,40,2,0,17,0,0,11,33,7,32,3,32,1,54,2,24,32,3,40,2,20,34,0,65,1,106,5,32,1,11,54,2,20,32,3,32,7,54,2,16,32,7,32,0,65,28,108,106,34,0,32,2,41,2,48,55,2,0,32,0,32,2,40,2,72,54,2,24,32,0,32,2,65,64,107,41,2,0,55,2,16,32,0,32,2,41,2,56,55,2,8,32,2,45,0,79,65,1,70,4,64,32,2,40,2,72,32,9,70,13,3,11,32,3,40,2,16,33,7,32,3,40,2,20,33,0,12,0,11,0,11,32,0,65,2,73,13,0,32,3,32,1,54,2,20,32,1,33,0,12,1,11,11,32,2,65,208,0,106,36,0,32,13,32,3,41,2,16,55,3,0,32,13,32,3,41,2,24,55,3,8,32,3,65,32,106,36,0,11,243,4,2,13,127,1,126,35,0,65,32,107,34,6,36,0,32,6,32,0,54,2,12,32,6,35,11,34,9,41,3,0,55,2,16,32,6,32,9,41,3,8,55,2,24,65,1,33,11,2,64,32,6,65,12,106,34,10,35,2,65,12,106,16,70,34,13,69,13,0,32,10,40,2,4,32,10,40,2,8,65,28,108,106,34,0,65,24,107,34,2,40,2,0,13,0,32,0,65,16,107,40,2,0,69,13,0,32,0,65,12,107,40,2,0,33,7,32,0,65,56,107,40,2,0,34,1,45,0,0,65,1,113,69,4,64,32,1,40,2,0,34,1,32,1,40,2,36,65,3,116,107,33,3,11,32,0,65,48,107,41,2,0,33,14,32,0,65,52,107,40,2,0,33,1,32,2,32,7,4,127,2,127,32,3,40,2,0,34,2,65,1,113,4,64,32,1,32,3,45,0,7,34,2,106,33,8,32,14,66,32,136,167,33,4,32,14,167,12,1,11,65,0,32,14,66,32,136,167,32,2,40,2,20,34,5,27,33,4,32,2,40,2,16,32,1,106,33,8,32,2,40,2,24,33,2,32,5,32,14,167,106,11,173,32,2,32,4,106,173,66,32,134,132,33,14,65,1,33,2,32,7,65,1,71,4,64,3,64,2,64,32,3,32,2,65,3,116,106,34,4,40,2,0,34,1,65,1,113,4,64,32,4,45,0,7,34,1,32,4,45,0,6,106,33,12,32,4,45,0,5,65,15,113,33,5,32,4,45,0,4,33,4,12,1,11,65,0,32,1,40,2,12,32,1,40,2,20,34,5,27,33,4,32,1,40,2,16,32,1,40,2,4,106,33,12,32,5,32,1,40,2,8,106,33,5,32,1,40,2,24,33,1,11,32,5,32,14,167,106,173,32,1,32,4,106,65,0,32,14,66,32,136,167,32,5,27,106,173,66,32,134,132,33,14,32,8,32,12,106,33,8,32,2,65,1,106,34,2,32,7,71,13,0,11,11,2,127,32,3,32,7,65,3,116,106,34,2,40,2,0,34,3,65,1,113,4,64,32,2,45,0,5,65,15,113,33,1,32,2,45,0,4,33,5,32,2,45,0,6,12,1,11,32,3,40,2,12,33,5,32,3,40,2,8,33,1,32,3,40,2,4,11,32,1,32,14,167,106,173,65,0,32,14,66,32,136,167,32,1,27,32,5,106,173,66,32,134,132,33,14,32,8,106,5,32,1,11,54,2,0,32,0,65,20,107,32,14,55,2,0,11,2,64,2,64,2,64,32,13,65,1,107,14,2,0,2,1,11,3,64,32,10,16,111,65,1,70,13,0,11,12,1,11,65,0,33,11,11,32,9,32,6,41,2,16,55,3,0,32,9,32,6,41,2,24,55,3,8,32,6,65,32,106,36,0,32,11,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,28,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,135,1,2,2,127,1,126,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,40,2,0,54,2,32,32,1,32,0,41,2,4,55,2,36,32,1,32,0,40,2,12,34,2,54,2,44,32,1,32,0,40,2,16,65,1,116,54,2,24,32,1,32,2,54,2,20,32,1,32,1,41,2,20,55,3,8,32,1,65,28,106,65,0,32,1,40,2,8,32,1,40,2,12,16,110,32,0,32,1,41,2,32,55,3,0,32,0,32,1,41,2,40,55,3,8,32,1,65,48,106,36,0,66,0,82,11,102,2,2,127,1,126,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,40,2,0,54,2,16,32,1,32,0,41,2,4,55,2,20,32,1,32,0,40,2,12,34,2,54,2,28,32,1,65,12,106,32,2,65,1,116,65,0,65,0,16,110,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,66,0,82,11,95,1,3,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,33,2,3,64,32,2,16,111,34,3,65,1,70,13,0,11,32,3,65,2,70,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,78,1,1,127,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,15,11,65,0,33,2,32,0,40,2,8,32,0,40,2,4,106,32,1,77,13,0,32,0,40,2,56,32,1,65,2,116,106,40,2,0,33,2,11,32,2,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,44,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,186,2,1,5,127,35,0,65,48,107,34,2,36,0,32,2,32,0,54,2,28,32,2,35,11,34,3,41,3,0,55,2,32,32,2,32,3,41,3,8,55,2,40,32,2,32,3,41,3,16,55,2,12,32,2,32,3,41,3,24,55,2,20,32,2,32,1,54,2,8,32,2,32,2,40,2,8,54,2,28,32,2,47,1,24,33,0,32,2,65,0,54,2,36,32,2,32,0,59,1,44,32,2,40,2,32,33,0,32,2,40,2,12,33,6,2,64,2,64,32,2,40,2,16,34,4,32,2,40,2,40,75,4,64,32,4,65,28,108,33,1,2,127,32,0,4,64,32,0,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,0,32,2,32,4,54,2,40,32,2,40,2,36,34,5,69,13,1,32,5,65,28,108,34,5,69,13,1,32,0,32,1,106,32,0,32,5,252,10,0,0,12,1,11,32,4,69,13,1,32,4,65,28,108,33,1,11,32,6,4,64,32,1,69,13,1,32,0,32,6,32,1,252,10,0,0,12,1,11,32,1,69,13,0,32,0,65,0,32,1,252,11,0,11,32,2,32,0,54,2,32,32,2,32,2,40,2,36,32,4,106,54,2,36,32,3,32,2,41,2,32,55,3,0,32,3,32,2,41,2,40,55,3,8,32,2,65,48,106,36,0,11,217,1,2,8,127,1,126,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,2,40,2,32,33,4,32,2,41,3,24,33,9,32,2,40,2,20,33,5,32,2,40,2,4,33,6,32,2,40,2,8,33,7,32,2,40,2,16,33,8,32,1,32,1,41,2,72,55,3,24,32,1,32,8,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,7,54,2,60,32,1,32,6,65,1,116,54,2,56,32,1,32,5,54,2,40,32,1,32,9,55,2,44,32,1,32,4,54,2,52,32,1,32,0,54,2,36,32,1,32,1,41,2,56,55,3,8,32,1,65,36,106,32,1,65,8,106,16,38,32,2,32,1,41,2,40,55,3,0,32,2,32,1,41,2,48,55,3,8,32,1,65,208,0,106,36,0,11,83,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,24,32,1,66,0,55,2,16,32,1,65,32,106,36,0,11,205,1,1,5,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,3,41,3,0,55,2,32,32,1,32,3,41,3,8,55,2,40,65,0,33,0,32,1,65,0,54,2,24,32,1,32,1,40,2,28,54,2,8,32,1,47,1,44,33,2,32,1,65,0,54,2,20,32,1,32,2,59,1,24,2,64,32,1,40,2,36,34,4,69,13,0,32,1,40,2,32,33,5,32,4,65,28,108,34,2,35,7,40,2,0,17,0,0,33,0,32,1,32,4,54,2,20,32,5,4,64,32,2,69,13,1,32,0,32,5,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,0,65,0,32,2,252,11,0,11,32,1,32,0,54,2,12,32,1,32,4,54,2,16,32,3,32,1,41,2,12,55,3,0,32,3,32,1,41,2,20,55,3,8,32,1,65,48,106,36,0,11,154,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,1,65,36,106,32,1,65,8,106,16,112,32,2,32,1,41,2,40,55,3,0,32,2,32,1,41,2,48,55,3,8,32,1,65,208,0,106,36,0,11,206,48,2,27,127,3,126,35,0,65,16,107,34,24,36,0,35,0,65,64,106,34,7,36,0,32,7,65,0,54,2,60,32,7,66,0,55,2,36,32,7,66,0,55,2,28,2,127,32,0,40,2,0,34,2,65,1,113,4,64,32,0,45,0,4,33,13,32,0,45,0,6,33,12,32,0,45,0,5,65,15,113,12,1,11,32,2,40,2,12,33,13,32,2,40,2,4,33,12,32,2,40,2,8,11,33,8,32,7,65,0,59,1,60,32,7,32,0,54,2,44,32,7,65,224,1,35,7,40,2,0,17,0,0,34,2,54,2,48,32,7,66,129,128,128,128,128,1,55,2,52,32,2,65,0,54,2,24,32,2,66,0,55,2,16,32,2,32,13,54,2,12,32,2,32,8,54,2,8,32,2,32,12,54,2,4,32,2,32,0,54,2,0,2,127,32,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,4,33,13,32,1,45,0,6,33,12,32,1,45,0,5,65,15,113,12,1,11,32,2,40,2,12,33,13,32,2,40,2,4,33,12,32,2,40,2,8,11,33,2,32,7,65,0,59,1,40,32,7,32,1,54,2,24,32,7,40,2,28,33,8,32,7,40,2,36,69,4,64,2,127,32,8,4,64,32,8,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,8,32,7,65,8,54,2,36,11,32,7,65,1,54,2,32,32,7,32,8,54,2,28,32,8,65,0,54,2,24,32,8,66,0,55,2,16,32,8,32,13,54,2,12,32,8,32,2,54,2,8,32,8,32,12,54,2,4,32,8,32,1,54,2,0,32,7,65,0,54,2,16,32,7,66,0,55,3,8,32,0,40,2,12,32,0,40,2,16,32,1,40,2,12,32,1,40,2,16,32,7,65,8,106,16,84,32,0,34,19,40,2,8,33,2,35,0,65,224,0,107,34,5,36,0,32,7,65,0,54,2,52,32,7,40,2,48,33,0,32,7,40,2,56,4,127,65,0,5,2,127,32,0,4,64,32,0,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,0,32,7,65,8,54,2,56,32,7,40,2,52,11,33,8,32,7,32,0,54,2,48,32,7,32,8,65,1,106,54,2,52,32,5,65,0,54,2,8,32,5,66,0,55,3,0,32,0,32,8,65,28,108,106,34,0,32,19,54,2,0,32,0,32,5,41,3,0,55,2,4,32,0,32,5,40,2,8,54,2,12,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,5,32,7,40,2,60,54,2,56,32,5,32,7,41,2,52,55,3,48,32,7,41,2,44,33,29,32,5,65,0,54,2,76,32,5,32,29,55,3,40,32,5,66,0,55,2,68,32,5,65,1,54,2,64,32,5,32,2,54,2,60,32,7,65,0,54,2,32,32,7,40,2,28,33,0,32,7,40,2,36,69,4,64,2,127,32,0,4,64,32,0,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,0,32,7,65,8,54,2,36,32,7,40,2,32,33,4,11,32,7,32,0,54,2,28,32,7,32,4,65,1,106,54,2,32,32,5,65,0,54,2,88,32,5,66,0,55,3,80,32,0,32,4,65,28,108,106,34,0,32,1,34,22,54,2,0,32,0,32,5,41,3,80,55,2,4,32,0,32,5,40,2,88,54,2,12,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,5,32,7,40,2,40,54,2,16,32,5,32,7,41,2,32,55,3,8,32,7,41,2,24,33,29,32,5,65,0,54,2,36,32,5,32,29,55,3,0,32,5,66,0,55,2,28,32,5,65,1,54,2,24,32,5,32,2,54,2,20,32,5,40,2,44,32,5,40,2,48,34,11,65,28,108,106,34,0,65,24,107,40,2,0,33,8,32,0,65,20,107,41,2,0,33,30,32,5,45,0,68,69,4,64,32,30,167,33,13,32,30,66,32,136,167,33,4,2,127,32,0,65,28,107,40,2,0,34,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,5,65,15,113,33,0,32,1,45,0,4,33,12,32,1,45,0,6,12,1,11,32,2,40,2,12,33,12,32,2,40,2,8,33,0,32,2,40,2,4,11,32,8,106,33,8,32,0,32,13,106,173,65,0,32,4,32,0,27,32,12,106,173,66,32,134,132,33,30,11,32,5,40,2,4,32,5,40,2,8,34,15,65,28,108,106,34,0,65,24,107,40,2,0,33,13,32,0,65,20,107,41,2,0,34,29,167,33,12,32,29,66,32,136,167,33,4,2,127,32,0,65,28,107,40,2,0,34,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,5,65,15,113,33,0,32,1,45,0,4,33,6,32,1,45,0,6,12,1,11,32,2,40,2,12,33,6,32,2,40,2,8,33,0,32,2,40,2,4,11,33,1,32,0,32,12,106,173,65,0,32,4,32,0,27,32,6,106,173,66,32,134,132,33,29,2,127,2,64,32,1,32,13,106,34,2,32,8,75,4,64,32,30,33,31,32,29,33,30,32,8,33,0,32,2,33,8,12,1,11,32,29,33,31,65,0,32,8,32,2,34,0,77,13,1,26,11,65,192,1,35,7,40,2,0,17,0,0,34,10,32,8,54,2,20,32,10,32,0,54,2,16,32,10,32,30,55,2,8,32,10,32,31,55,2,0,65,8,33,17,32,30,33,29,32,8,33,2,65,1,11,33,13,65,0,33,12,3,64,32,11,65,1,107,33,4,2,127,2,64,2,64,2,64,32,5,45,0,68,34,16,65,1,70,4,64,32,4,13,1,12,3,11,32,11,69,13,2,12,1,11,32,11,65,2,107,33,4,11,32,5,40,2,60,33,6,32,5,40,2,44,33,9,3,64,32,9,32,4,34,0,65,28,108,106,34,1,40,2,0,33,14,65,0,33,4,2,64,32,0,69,13,0,32,1,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,6,40,2,84,32,6,47,1,36,32,3,108,65,1,116,106,32,1,40,2,20,65,1,116,106,47,1,0,33,4,11,2,64,2,127,32,14,40,2,0,34,3,65,1,113,4,64,32,3,65,1,118,65,1,113,12,1,11,32,3,47,1,44,65,1,113,11,13,0,32,4,65,255,255,3,113,13,0,32,0,65,1,107,33,4,32,0,69,13,2,12,1,11,11,32,3,65,8,118,33,9,32,14,45,0,7,33,20,32,1,40,2,4,12,1,11,65,0,33,3,65,0,33,9,65,0,33,20,65,0,33,4,65,0,11,33,27,32,15,65,1,107,33,1,2,127,2,64,2,64,2,64,32,5,45,0,28,34,25,65,1,70,4,64,32,1,13,1,12,3,11,32,15,69,13,2,12,1,11,32,15,65,2,107,33,1,11,32,5,40,2,20,33,18,32,5,40,2,4,33,26,3,64,32,26,32,1,34,0,65,28,108,106,34,14,40,2,0,33,21,65,0,33,1,2,64,32,0,69,13,0,32,14,65,28,107,40,2,0,40,2,0,47,1,66,34,6,69,13,0,32,18,40,2,84,32,18,47,1,36,32,6,108,65,1,116,106,32,14,40,2,20,65,1,116,106,47,1,0,33,1,11,2,64,2,127,32,21,40,2,0,34,6,65,1,113,4,64,32,6,65,1,118,65,1,113,12,1,11,32,6,47,1,44,65,1,113,11,13,0,32,1,65,255,255,3,113,13,0,32,0,65,1,107,33,1,32,0,69,13,2,12,1,11,11,32,6,65,8,118,33,0,32,21,45,0,7,33,18,32,14,40,2,4,12,1,11,65,0,33,6,65,0,33,0,65,0,33,18,65,0,33,1,65,0,11,33,26,32,3,65,1,113,34,14,4,127,32,9,65,255,1,113,5,32,3,47,1,40,11,33,28,2,127,2,64,2,64,2,64,2,64,2,64,2,127,32,6,65,1,113,34,21,69,4,64,32,3,65,0,71,33,9,32,6,47,1,40,33,0,65,1,12,1,11,32,3,32,6,114,69,13,3,32,3,65,0,71,33,9,32,0,65,255,1,113,33,0,32,6,65,0,71,11,69,13,0,32,9,69,13,0,32,4,65,255,255,3,113,32,1,65,255,255,3,113,71,13,0,32,28,65,255,255,3,113,34,4,32,0,65,255,255,3,113,71,13,0,32,3,65,1,113,69,4,64,32,3,40,2,16,33,20,11,32,6,65,1,113,69,4,64,32,6,40,2,16,33,18,11,32,14,4,127,32,3,65,16,118,5,32,3,47,1,42,11,32,21,4,127,32,6,65,16,118,5,32,6,47,1,42,11,33,15,65,0,33,9,65,0,33,1,32,14,69,4,64,32,3,45,0,44,65,192,0,113,65,6,118,33,1,11,32,21,69,4,64,32,6,45,0,44,65,192,0,113,65,6,118,33,9,11,2,127,32,3,65,26,116,65,31,117,65,226,4,113,32,14,13,0,26,65,226,4,32,3,45,0,45,65,2,113,13,0,26,32,3,40,2,32,11,33,25,2,127,32,6,65,26,116,65,31,117,65,226,4,113,32,21,13,0,26,65,226,4,32,6,45,0,45,65,2,113,13,0,26,32,6,40,2,32,11,33,6,32,26,32,27,71,13,3,32,4,65,255,255,3,70,13,3,32,18,32,20,71,13,3,65,255,255,3,113,34,0,65,255,255,3,70,13,3,32,15,65,255,255,3,113,34,4,65,255,255,3,70,13,3,32,0,69,32,4,69,115,13,3,32,6,32,25,71,13,3,32,1,32,9,115,13,3,32,14,4,127,32,3,65,4,118,65,1,113,5,32,3,47,1,44,65,5,118,65,1,113,11,13,3,32,1,69,13,2,35,1,65,148,12,106,33,0,2,64,32,5,40,2,72,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,0,11,35,1,65,148,12,106,33,4,2,64,32,5,40,2,32,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,4,32,1,65,48,106,32,1,40,2,36,27,33,4,11,32,0,40,2,24,33,3,32,4,40,2,24,34,1,65,25,79,4,64,32,1,32,3,71,13,4,32,0,40,2,0,33,0,32,4,40,2,0,33,4,12,2,11,32,1,32,3,70,13,1,12,3,11,32,5,40,2,44,32,11,65,28,108,106,34,0,65,16,107,40,2,0,33,2,32,0,65,20,107,40,2,0,33,3,32,0,65,24,107,40,2,0,33,9,32,5,40,2,4,32,15,65,28,108,106,34,6,65,16,107,40,2,0,33,11,32,6,65,20,107,40,2,0,33,15,32,6,65,24,107,40,2,0,33,14,2,126,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,4,40,2,0,34,1,65,1,113,4,64,32,9,32,4,45,0,6,106,33,0,32,3,32,4,45,0,5,65,15,113,34,1,106,33,3,32,4,45,0,4,65,0,32,2,32,1,27,106,33,2,32,16,13,1,32,0,32,4,45,0,7,34,4,106,12,3,11,32,1,40,2,12,65,0,32,2,32,1,40,2,8,34,0,27,106,33,2,32,0,32,3,106,33,3,32,1,40,2,4,32,9,106,33,0,32,16,69,13,1,11,32,3,173,32,2,173,66,32,134,132,12,2,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,33,4,32,1,40,2,16,32,0,106,11,33,0,32,3,173,32,2,32,4,106,173,66,32,134,132,11,2,126,2,127,2,64,2,64,32,6,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,14,32,1,45,0,6,106,33,4,32,15,32,1,45,0,5,65,15,113,34,3,106,33,2,32,1,45,0,4,65,0,32,11,32,3,27,106,33,6,32,25,13,1,32,4,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,11,32,3,40,2,8,34,1,27,106,33,6,32,1,32,15,106,33,2,32,3,40,2,4,32,14,106,33,4,32,25,69,13,1,11,32,2,173,32,6,173,66,32,134,132,12,2,11,65,0,32,6,32,3,40,2,20,34,1,27,33,6,32,1,32,2,106,33,2,32,3,40,2,24,33,1,32,3,40,2,16,32,4,106,11,33,4,32,2,173,32,1,32,6,106,173,66,32,134,132,11,32,0,32,4,73,34,1,27,33,29,32,0,32,4,32,1,27,33,2,12,3,11,32,0,32,4,32,1,16,18,13,1,11,32,5,40,2,44,32,11,65,28,108,106,34,4,65,24,107,40,2,0,33,6,2,127,32,4,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,34,11,4,64,32,6,32,1,45,0,6,106,34,0,32,16,13,1,26,32,0,32,1,45,0,7,106,12,1,11,32,3,40,2,4,32,6,106,34,0,32,16,13,0,26,32,3,40,2,16,32,0,106,11,33,9,2,64,32,12,32,7,40,2,12,34,15,79,13,0,32,7,40,2,8,33,14,32,12,33,0,3,64,32,8,32,14,32,0,65,24,108,106,34,20,40,2,20,79,4,64,32,15,32,0,65,1,106,34,0,71,13,1,12,2,11,11,32,20,40,2,16,32,9,73,13,1,11,32,4,65,16,107,40,2,0,33,9,32,4,65,20,107,40,2,0,33,0,2,127,2,64,2,64,32,11,4,64,32,6,32,1,45,0,6,106,33,2,32,0,32,1,45,0,5,65,15,113,34,4,106,33,0,32,1,45,0,4,65,0,32,9,32,4,27,106,33,4,32,16,13,1,32,2,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,9,32,3,40,2,8,34,1,27,106,33,4,32,0,32,1,106,33,0,32,3,40,2,4,32,6,106,33,2,32,16,69,13,1,11,32,0,173,32,4,173,66,32,134,132,33,29,65,0,12,4,11,65,0,32,4,32,3,40,2,20,34,1,27,33,4,32,0,32,1,106,33,0,32,3,40,2,24,33,1,32,3,40,2,16,32,2,106,11,33,2,32,0,173,32,1,32,4,106,173,66,32,134,132,33,29,65,0,12,2,11,32,5,65,40,106,32,8,16,47,32,5,32,8,16,47,33,0,4,64,65,0,32,0,13,2,26,32,5,40,2,44,32,5,40,2,48,65,28,108,106,34,0,65,16,107,40,2,0,33,3,32,0,65,20,107,40,2,0,33,1,32,0,65,24,107,40,2,0,33,2,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,0,40,2,0,34,4,65,1,113,4,64,32,2,32,0,45,0,6,106,33,2,32,1,32,0,45,0,5,65,15,113,34,4,106,33,1,32,0,45,0,4,65,0,32,3,32,4,27,106,33,3,32,5,45,0,68,13,1,32,2,32,0,45,0,7,34,0,106,12,3,11,32,4,40,2,12,65,0,32,3,32,4,40,2,8,34,0,27,106,33,3,32,0,32,1,106,33,1,32,4,40,2,4,32,2,106,33,2,32,5,45,0,68,65,1,71,13,1,11,32,1,173,32,3,173,66,32,134,132,33,29,12,3,11,65,0,32,3,32,4,40,2,20,34,0,27,33,3,32,0,32,1,106,33,1,32,4,40,2,24,33,0,32,4,40,2,16,32,2,106,11,33,2,32,1,173,32,0,32,3,106,173,66,32,134,132,33,29,12,1,11,32,0,4,64,32,5,40,2,4,32,5,40,2,8,65,28,108,106,34,0,65,16,107,40,2,0,33,3,32,0,65,20,107,40,2,0,33,1,32,0,65,24,107,40,2,0,33,2,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,0,40,2,0,34,4,65,1,113,4,64,32,2,32,0,45,0,6,106,33,2,32,1,32,0,45,0,5,65,15,113,34,4,106,33,1,32,0,45,0,4,65,0,32,3,32,4,27,106,33,3,32,5,45,0,28,13,1,32,2,32,0,45,0,7,34,0,106,12,3,11,32,4,40,2,12,65,0,32,3,32,4,40,2,8,34,0,27,106,33,3,32,0,32,1,106,33,1,32,4,40,2,4,32,2,106,33,2,32,5,45,0,28,65,1,71,13,1,11,32,1,173,32,3,173,66,32,134,132,33,29,12,3,11,65,0,32,3,32,4,40,2,20,34,0,27,33,3,32,0,32,1,106,33,1,32,4,40,2,24,33,0,32,4,40,2,16,32,2,106,11,33,2,32,1,173,32,0,32,3,106,173,66,32,134,132,33,29,12,1,11,32,5,40,2,44,32,5,40,2,48,65,28,108,106,34,0,65,16,107,40,2,0,33,2,32,0,65,20,107,40,2,0,33,3,32,0,65,24,107,40,2,0,33,9,32,5,40,2,4,32,5,40,2,8,65,28,108,106,34,6,65,16,107,40,2,0,33,11,32,6,65,20,107,40,2,0,33,16,32,6,65,24,107,40,2,0,33,15,2,126,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,4,40,2,0,34,1,65,1,113,4,64,32,9,32,4,45,0,6,106,33,0,32,3,32,4,45,0,5,65,15,113,34,1,106,33,3,32,4,45,0,4,65,0,32,2,32,1,27,106,33,2,32,5,45,0,68,13,1,32,0,32,4,45,0,7,34,4,106,12,3,11,32,1,40,2,12,65,0,32,2,32,1,40,2,8,34,0,27,106,33,2,32,0,32,3,106,33,3,32,1,40,2,4,32,9,106,33,0,32,5,45,0,68,65,1,71,13,1,11,32,3,173,32,2,173,66,32,134,132,12,2,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,33,4,32,1,40,2,16,32,0,106,11,33,0,32,3,173,32,2,32,4,106,173,66,32,134,132,11,2,126,2,127,2,64,2,64,32,6,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,15,32,1,45,0,6,106,33,4,32,16,32,1,45,0,5,65,15,113,34,3,106,33,2,32,1,45,0,4,65,0,32,11,32,3,27,106,33,6,32,5,45,0,28,13,1,32,4,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,11,32,3,40,2,8,34,1,27,106,33,6,32,1,32,16,106,33,2,32,3,40,2,4,32,15,106,33,4,32,5,45,0,28,65,1,71,13,1,11,32,2,173,32,6,173,66,32,134,132,12,2,11,65,0,32,6,32,3,40,2,20,34,1,27,33,6,32,1,32,2,106,33,2,32,3,40,2,24,33,1,32,3,40,2,16,32,4,106,11,33,4,32,2,173,32,1,32,6,106,173,66,32,134,132,11,32,0,32,4,73,34,1,27,33,29,32,0,32,4,32,1,27,33,2,65,0,12,1,11,65,1,11,33,15,65,0,33,4,2,64,32,5,40,2,48,34,0,69,13,0,3,64,32,5,40,2,44,32,0,34,4,65,28,108,106,34,1,65,24,107,40,2,0,33,0,2,127,32,1,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,0,32,1,45,0,6,106,34,0,32,5,45,0,68,13,1,26,32,0,32,1,45,0,7,106,12,1,11,32,3,40,2,4,32,0,106,34,0,32,5,45,0,68,13,0,26,32,3,40,2,16,32,0,106,11,32,2,75,13,1,32,5,65,40,106,16,74,32,5,40,2,48,34,0,13,0,11,65,0,33,4,11,2,64,3,64,32,5,40,2,8,34,0,4,64,32,5,40,2,4,32,0,65,28,108,106,34,3,65,24,107,40,2,0,33,1,2,127,32,3,65,28,107,40,2,0,34,3,40,2,0,34,6,65,1,113,4,64,32,1,32,3,45,0,6,106,34,1,32,5,45,0,28,13,1,26,32,1,32,3,45,0,7,106,12,1,11,32,6,40,2,4,32,1,106,34,1,32,5,45,0,28,13,0,26,32,6,40,2,16,32,1,106,11,32,2,75,13,2,32,5,16,74,12,1,11,11,65,0,33,0,11,32,5,45,0,68,33,6,32,5,40,2,64,34,1,32,5,40,2,24,34,3,75,4,64,32,5,40,2,60,33,11,32,5,40,2,44,33,14,3,64,32,4,4,127,2,64,2,64,2,127,32,14,32,4,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,16,65,1,113,4,64,32,16,65,1,118,65,1,113,12,1,11,32,16,47,1,44,65,1,113,11,69,4,64,32,4,65,1,70,13,2,32,9,65,56,107,40,2,0,40,2,0,47,1,66,34,16,69,13,2,32,11,40,2,84,32,11,47,1,36,32,16,108,65,1,116,106,32,9,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,2,32,6,65,1,113,69,13,1,12,2,11,32,6,65,1,113,13,1,11,32,1,65,1,107,33,1,11,65,0,32,6,32,9,65,12,107,40,2,0,27,33,6,32,4,65,1,107,5,65,0,11,33,4,32,1,32,3,75,13,0,11,11,32,5,32,6,58,0,68,32,5,32,4,54,2,48,32,5,32,1,54,2,64,32,5,45,0,28,33,4,32,1,32,3,73,4,64,32,5,40,2,20,33,9,32,5,40,2,4,33,16,3,64,32,0,4,127,2,64,2,64,2,127,32,16,32,0,65,28,108,106,34,6,65,28,107,40,2,0,40,2,0,34,11,65,1,113,4,64,32,11,65,1,118,65,1,113,12,1,11,32,11,47,1,44,65,1,113,11,69,4,64,32,0,65,1,70,13,2,32,6,65,56,107,40,2,0,40,2,0,47,1,66,34,11,69,13,2,32,9,40,2,84,32,9,47,1,36,32,11,108,65,1,116,106,32,6,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,2,32,4,65,1,113,69,13,1,12,2,11,32,4,65,1,113,13,1,11,32,3,65,1,107,33,3,11,65,0,32,4,32,6,65,12,107,40,2,0,27,33,4,32,0,65,1,107,5,65,0,11,33,0,32,1,32,3,73,13,0,11,11,32,5,32,4,58,0,28,32,5,32,0,54,2,8,32,5,32,3,54,2,24,2,64,32,15,69,4,64,32,13,33,1,12,1,11,2,64,32,13,69,13,0,32,8,32,10,32,13,65,24,108,106,34,0,65,4,107,34,1,40,2,0,75,13,0,32,1,32,2,54,2,0,32,0,65,16,107,32,29,55,2,0,32,13,33,1,12,1,11,32,2,32,8,77,4,64,32,13,33,1,12,1,11,2,64,32,13,65,1,106,34,1,32,17,77,13,0,65,8,32,17,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,17,65,24,108,33,0,32,10,4,64,32,10,32,0,35,6,40,2,0,17,1,0,33,10,12,1,11,32,0,35,7,40,2,0,17,0,0,33,10,11,32,10,32,13,65,24,108,106,34,0,32,2,54,2,20,32,0,32,8,54,2,16,32,0,32,29,55,2,8,32,0,32,30,55,2,0,11,32,12,32,7,40,2,12,34,0,32,0,32,12,73,27,33,8,3,64,2,64,32,8,32,12,34,0,70,4,64,32,8,33,0,12,1,11,32,0,65,1,106,33,12,32,7,40,2,8,32,0,65,24,108,106,40,2,20,32,2,77,13,1,11,11,32,5,40,2,48,34,11,4,64,32,2,33,8,32,29,33,30,32,1,33,13,32,0,33,12,32,5,40,2,8,34,15,13,1,11,11,2,127,32,19,40,2,0,34,8,65,1,113,4,64,32,19,45,0,5,65,15,113,33,3,32,19,45,0,4,33,2,32,19,45,0,7,34,0,32,19,45,0,6,106,12,1,11,65,0,32,8,40,2,12,32,8,40,2,20,34,0,27,33,2,32,0,32,8,40,2,8,106,33,3,32,8,40,2,24,33,0,32,8,40,2,16,32,8,40,2,4,106,11,33,8,32,3,173,32,0,32,2,106,173,66,32,134,132,33,29,2,127,32,22,40,2,0,34,2,65,1,113,4,64,32,22,45,0,7,34,0,32,22,45,0,6,106,33,3,32,22,45,0,4,33,12,32,22,45,0,5,65,15,113,12,1,11,65,0,32,2,40,2,12,32,2,40,2,20,34,13,27,33,12,32,2,40,2,16,32,2,40,2,4,106,33,3,32,2,40,2,24,33,0,32,13,32,2,40,2,8,106,11,173,32,0,32,12,106,173,66,32,134,132,33,30,2,64,32,3,32,8,75,4,64,2,64,32,1,69,13,0,32,8,32,10,32,1,65,24,108,106,34,0,65,4,107,34,2,40,2,0,75,13,0,32,2,32,3,54,2,0,32,0,65,16,107,32,30,55,2,0,32,1,33,0,12,2,11,2,64,32,1,65,1,106,34,0,32,17,77,13,0,65,8,32,17,65,1,116,34,2,32,0,32,0,32,2,73,27,34,2,32,2,65,8,77,27,65,24,108,33,2,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,33,10,12,1,11,32,2,35,7,40,2,0,17,0,0,33,10,11,32,10,32,1,65,24,108,106,34,1,32,3,54,2,20,32,1,32,8,54,2,16,32,1,32,30,55,2,8,32,1,32,29,55,2,0,12,1,11,32,3,32,8,79,4,64,32,1,33,0,12,1,11,2,64,32,1,69,13,0,32,3,32,10,32,1,65,24,108,106,34,0,65,4,107,34,2,40,2,0,75,13,0,32,2,32,8,54,2,0,32,0,65,16,107,32,29,55,2,0,32,1,33,0,12,1,11,2,64,32,1,65,1,106,34,0,32,17,77,13,0,65,8,32,17,65,1,116,34,2,32,0,32,0,32,2,73,27,34,2,32,2,65,8,77,27,65,24,108,33,2,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,33,10,12,1,11,32,2,35,7,40,2,0,17,0,0,33,10,11,32,10,32,1,65,24,108,106,34,1,32,8,54,2,20,32,1,32,3,54,2,16,32,1,32,29,55,2,8,32,1,32,30,55,2,0,11,32,7,32,5,41,3,40,55,2,44,32,7,32,5,40,2,56,54,2,60,32,7,32,5,41,3,48,55,2,52,32,7,32,5,40,2,16,54,2,40,32,7,32,5,41,3,8,55,2,32,32,7,32,5,41,3,0,55,2,24,32,7,32,10,54,2,4,32,5,65,224,0,106,36,0,32,24,32,0,54,2,12,32,7,40,2,8,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,48,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,28,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,4,32,7,65,64,107,36,0,33,1,32,24,40,2,12,4,64,3,64,32,1,32,23,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,23,65,1,106,34,23,32,24,40,2,12,34,0,73,13,0,11,32,0,33,23,11,35,11,34,0,32,1,54,2,4,32,0,32,23,54,2,0,32,24,65,16,106,36,0,11,180,1,1,4,127,35,0,65,16,107,34,3,36,0,32,3,32,0,40,2,16,34,1,54,2,12,32,1,65,24,35,9,40,2,0,17,1,0,33,1,32,0,40,2,16,65,24,108,34,4,4,64,32,1,32,0,40,2,12,32,4,252,10,0,0,11,32,3,40,2,12,4,64,3,64,32,1,32,2,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,2,65,1,106,34,2,32,3,40,2,12,34,0,73,13,0,11,32,0,33,2,11,35,11,34,0,32,1,54,2,4,32,0,32,2,54,2,0,32,3,65,16,106,36,0,11,177,22,2,34,127,6,126,35,0,65,48,107,34,18,36,0,32,18,35,11,34,3,40,2,24,65,1,116,54,2,12,32,18,32,3,40,2,28,65,1,116,54,2,16,32,18,32,3,40,2,32,65,1,116,54,2,20,32,18,32,3,53,2,0,32,3,53,2,4,66,33,134,132,55,2,24,32,18,32,3,53,2,8,32,3,53,2,12,66,33,134,132,55,2,32,32,18,32,3,53,2,16,32,3,53,2,20,66,33,134,132,55,2,40,32,18,65,12,106,33,2,65,0,33,3,35,0,65,48,107,34,11,36,0,32,0,34,23,40,2,16,4,64,3,64,32,23,40,2,12,32,3,65,24,108,106,32,2,16,79,32,3,65,1,106,34,3,32,23,40,2,16,73,13,0,11,11,32,11,66,0,55,3,40,32,11,66,0,55,3,32,32,11,66,0,55,3,24,32,11,32,23,41,2,0,55,3,8,32,11,65,24,106,33,24,35,0,65,48,107,34,13,36,0,65,192,2,35,7,40,2,0,17,0,0,33,8,32,2,40,2,0,33,0,32,2,41,2,12,33,38,32,2,40,2,4,33,3,32,2,41,2,20,33,37,32,2,40,2,8,33,1,32,8,32,2,41,2,28,55,2,32,32,8,32,1,54,2,28,32,8,32,37,55,2,20,32,8,32,3,54,2,16,32,8,32,38,55,2,8,32,8,32,0,54,2,4,32,8,32,11,65,8,106,54,2,0,65,1,33,0,65,8,33,25,3,64,2,126,32,8,32,0,65,1,107,34,3,65,40,108,106,34,2,40,2,0,34,19,40,2,0,34,1,65,1,113,34,4,4,64,32,19,45,0,7,34,0,173,66,32,134,33,36,32,19,45,0,6,33,5,65,1,33,26,32,19,45,0,5,34,15,65,15,113,173,32,19,49,0,4,66,32,134,132,12,1,11,32,1,45,0,45,65,1,113,69,33,26,32,1,40,2,4,33,5,32,19,45,0,5,33,15,32,1,41,2,20,33,36,32,1,40,2,16,33,0,32,1,41,2,8,11,33,35,32,0,32,5,106,33,7,2,64,32,2,40,2,4,34,9,32,7,32,4,4,127,32,15,65,240,1,113,65,4,118,5,32,1,40,2,28,11,34,15,106,34,1,75,4,64,32,3,33,0,12,1,11,32,2,41,2,32,33,37,32,2,40,2,28,33,16,32,2,40,2,24,33,17,32,2,40,2,20,33,14,32,2,41,2,8,33,40,2,64,32,2,40,2,16,34,12,32,9,71,13,0,32,9,32,16,71,13,0,32,1,32,9,71,13,0,32,3,33,0,12,1,11,32,35,66,32,136,167,33,1,32,37,66,32,136,167,33,22,32,35,167,33,2,2,127,32,5,32,12,79,4,64,32,37,167,32,2,32,14,107,34,4,65,0,32,2,32,4,79,27,106,173,32,1,32,1,32,17,107,34,4,65,0,32,1,32,4,79,27,32,22,106,32,2,32,14,75,27,173,66,32,134,132,33,35,32,16,32,12,107,32,5,106,33,5,32,0,12,1,11,32,36,167,33,10,32,36,66,32,136,167,33,6,32,5,32,9,75,4,64,32,12,32,5,107,33,4,66,0,33,36,32,16,33,5,32,37,33,35,65,0,32,0,32,4,65,0,32,4,32,12,77,27,34,4,77,13,1,26,32,6,32,6,32,17,32,17,32,1,107,34,1,65,0,32,1,32,17,77,27,32,2,32,14,73,27,107,34,1,65,0,32,1,32,6,77,27,32,10,32,14,32,2,107,34,2,65,0,32,2,32,14,77,27,34,2,75,27,173,66,32,134,32,10,32,2,107,34,2,65,0,32,2,32,10,77,27,173,132,33,36,32,0,32,4,107,12,1,11,2,64,32,7,32,9,75,13,0,32,7,32,9,70,32,9,32,12,70,113,13,0,32,0,12,1,11,65,0,33,4,32,16,32,5,107,34,0,65,0,32,0,32,16,77,27,33,20,32,22,32,22,32,1,107,34,0,65,0,32,0,32,22,77,27,32,37,167,34,0,32,2,75,27,33,21,32,0,32,2,107,34,2,65,0,32,0,32,2,79,27,33,2,66,0,33,39,32,7,32,12,75,4,64,65,0,32,1,32,10,27,32,6,106,34,0,32,0,32,17,107,34,1,65,0,32,0,32,1,79,27,32,35,32,36,124,167,34,0,32,14,75,27,173,66,32,134,32,0,32,14,107,34,1,65,0,32,0,32,1,79,27,173,132,33,39,32,7,32,12,107,33,4,11,32,39,66,32,136,167,65,0,32,21,32,39,167,34,0,27,106,173,66,32,134,32,0,32,2,106,173,132,33,36,32,4,32,20,106,11,33,7,32,13,32,19,41,2,0,34,38,55,3,16,32,38,66,32,136,167,33,0,2,64,32,38,167,34,4,65,1,113,4,64,32,4,33,2,12,1,11,32,4,34,2,40,2,0,65,1,70,13,0,32,2,40,2,36,65,3,116,65,204,0,106,34,0,35,7,40,2,0,17,0,0,33,10,32,0,4,64,32,10,32,2,32,2,40,2,36,65,3,116,107,32,0,252,10,0,0,11,32,10,32,4,40,2,36,34,0,65,3,116,106,33,2,65,0,33,1,2,64,32,0,4,64,3,64,32,10,32,1,65,3,116,106,40,2,0,34,6,65,1,113,69,4,64,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,32,4,40,2,36,33,0,11,32,1,65,1,106,34,1,32,0,73,13,0,12,2,11,0,11,32,4,45,0,44,65,192,0,113,69,13,0,32,4,40,2,48,33,1,32,13,32,4,41,2,68,55,3,40,32,13,32,4,41,2,60,55,3,32,32,13,32,4,41,2,52,55,3,24,2,64,32,4,40,2,72,34,0,65,25,73,13,0,32,0,35,7,40,2,0,17,0,0,33,1,32,4,40,2,72,34,0,69,13,0,32,1,32,4,40,2,48,32,0,252,10,0,0,11,32,2,32,1,54,2,48,32,2,32,13,41,3,24,55,2,52,32,2,32,13,41,3,32,55,2,60,32,2,32,13,41,3,40,55,2,68,11,32,2,65,1,54,2,0,32,13,32,13,41,3,16,55,3,8,32,24,32,13,65,8,106,16,10,65,0,33,0,11,2,64,2,64,32,2,65,1,113,4,64,2,64,32,15,65,15,75,13,0,32,5,65,254,1,75,13,0,32,35,66,255,255,255,255,239,31,86,13,0,32,35,66,240,255,255,255,15,131,66,0,82,13,0,32,7,65,254,1,75,13,0,32,36,66,255,255,255,255,239,31,86,13,0,32,36,66,255,255,255,255,15,131,66,0,82,13,0,32,35,66,32,136,167,32,35,167,65,8,116,65,128,30,113,32,0,65,128,224,3,113,114,32,5,65,16,116,114,114,32,7,65,24,116,114,33,0,12,2,11,2,127,32,24,40,2,4,34,1,4,64,32,24,32,1,65,1,107,34,1,54,2,4,32,24,40,2,0,32,1,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,34,1,66,0,55,2,32,32,1,32,15,54,2,28,32,1,32,36,55,2,20,32,1,32,7,54,2,16,32,1,32,35,55,2,8,32,1,32,5,54,2,4,32,1,65,1,54,2,0,32,1,32,2,65,16,118,59,1,42,32,1,32,2,65,128,254,3,113,65,8,118,59,1,40,32,1,32,1,47,1,44,65,128,241,3,113,32,2,65,1,118,65,7,113,32,2,65,224,0,113,65,4,116,114,114,59,1,44,12,2,11,32,2,32,36,55,2,20,32,2,32,7,54,2,16,32,2,32,35,55,2,8,32,2,32,5,54,2,4,11,32,2,33,1,11,2,64,32,1,65,1,113,4,64,32,1,65,16,114,33,1,12,1,11,32,1,32,1,47,1,44,65,32,114,59,1,44,11,32,19,32,1,173,32,0,173,66,32,134,132,55,2,0,32,1,65,1,113,4,64,32,3,33,0,12,1,11,32,1,40,2,36,34,34,69,4,64,32,3,33,0,12,1,11,32,40,66,32,136,167,33,27,32,40,167,33,28,32,35,167,33,31,66,0,33,35,65,0,33,2,65,0,33,1,3,64,32,19,40,2,0,34,0,32,0,40,2,36,65,3,116,107,32,2,65,3,116,106,34,20,45,0,5,33,4,2,127,32,20,40,2,0,34,0,65,1,113,34,5,4,64,32,4,65,15,113,33,15,32,20,45,0,4,33,32,32,20,45,0,7,34,33,32,20,45,0,6,106,12,1,11,65,0,32,0,40,2,12,32,0,40,2,20,34,7,27,33,32,32,7,32,0,40,2,8,106,33,15,32,0,40,2,24,33,33,32,0,40,2,16,32,0,40,2,4,106,11,34,10,32,1,106,33,7,32,35,66,32,136,167,33,21,32,35,167,33,6,2,64,32,9,32,5,4,127,32,4,65,240,1,113,65,4,118,5,32,0,40,2,28,11,32,7,106,75,4,64,32,3,33,0,12,1,11,2,64,2,64,32,1,32,12,77,4,64,32,2,69,13,2,32,1,32,12,71,13,2,32,10,69,13,2,32,26,32,6,32,31,75,114,13,1,12,2,11,32,26,32,6,32,31,75,114,69,13,1,11,32,5,4,64,32,3,33,0,12,4,11,32,0,45,0,45,65,1,113,69,4,64,32,3,33,0,12,4,11,32,17,32,22,70,4,64,32,3,33,0,12,4,11,32,6,32,14,77,13,0,32,3,33,0,12,3,11,66,0,33,36,65,0,33,10,65,0,33,4,66,0,33,35,32,1,32,9,73,4,64,32,9,32,1,107,33,4,32,28,32,6,107,34,0,65,0,32,0,32,28,77,27,173,32,27,32,27,32,21,107,34,0,65,0,32,0,32,27,77,27,32,6,32,28,73,27,173,66,32,134,132,33,35,11,32,1,32,12,73,4,64,32,12,32,1,107,33,10,32,14,32,6,107,34,0,65,0,32,0,32,14,77,27,173,32,17,32,17,32,21,107,34,0,65,0,32,0,32,17,77,27,32,6,32,14,73,27,173,66,32,134,132,33,36,11,2,127,32,1,32,16,79,4,64,66,0,33,39,65,0,12,1,11,32,37,66,32,136,167,34,0,32,0,32,21,107,34,5,65,0,32,0,32,5,79,27,32,37,167,34,0,32,6,75,27,173,66,32,134,32,0,32,6,107,34,5,65,0,32,0,32,5,79,27,173,132,33,39,32,16,32,1,107,11,33,5,2,127,32,7,32,9,75,4,64,32,40,33,38,32,9,12,1,11,32,40,33,38,32,9,32,7,32,9,70,32,9,32,12,70,113,13,0,26,32,37,33,38,32,4,34,10,33,5,32,35,34,36,33,39,32,16,11,33,16,2,64,32,3,65,1,106,34,0,32,25,77,13,0,65,8,32,25,65,1,116,34,1,32,0,32,0,32,1,73,27,34,1,32,1,65,8,77,27,34,25,65,40,108,33,1,32,8,4,64,32,8,32,1,35,6,40,2,0,17,1,0,33,8,12,1,11,32,1,35,7,40,2,0,17,0,0,33,8,11,32,8,32,3,65,40,108,106,34,3,32,39,55,2,32,32,3,32,5,54,2,28,32,3,32,36,55,2,20,32,3,32,10,54,2,16,32,3,32,35,55,2,8,32,3,32,4,54,2,4,32,3,32,20,54,2,0,32,0,33,3,32,38,33,37,11,32,6,32,15,106,173,32,32,32,33,106,65,0,32,21,32,15,27,106,173,66,32,134,132,33,35,32,7,33,1,32,2,65,1,106,34,2,32,34,71,13,0,11,11,32,0,13,0,11,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,11,32,11,41,2,8,55,2,16,32,13,65,48,106,36,0,32,23,32,11,41,3,16,55,2,0,32,11,40,2,24,34,0,4,64,2,64,32,11,40,2,28,34,2,69,13,0,65,0,33,3,32,2,65,4,79,4,64,32,2,65,124,113,33,5,3,64,32,0,32,3,65,3,116,106,34,1,40,2,0,35,8,34,4,40,2,0,17,2,0,32,1,40,2,8,32,4,40,2,0,17,2,0,32,1,40,2,16,32,4,40,2,0,17,2,0,32,1,40,2,24,32,4,40,2,0,17,2,0,32,3,65,4,106,33,3,32,29,65,4,106,34,29,32,5,71,13,0,11,11,32,2,65,3,113,34,2,69,13,0,3,64,32,0,32,3,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,3,65,1,106,33,3,32,30,65,1,106,34,30,32,2,71,13,0,11,11,32,0,35,8,40,2,0,17,2,0,11,32,11,40,2,36,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,11,65,48,106,36,0,32,18,65,48,106,36,0,11,252,1,2,6,127,1,126,35,0,65,48,107,34,1,36,0,35,11,34,2,40,2,20,32,1,32,2,40,2,28,65,1,116,54,2,44,32,1,32,2,40,2,24,54,2,40,32,1,32,1,41,2,40,55,3,8,65,1,116,33,6,32,1,41,2,8,33,7,2,127,32,0,40,2,0,34,3,65,1,113,4,64,32,0,45,0,5,65,15,113,33,4,32,0,45,0,4,33,5,32,0,45,0,6,12,1,11,32,3,40,2,12,33,5,32,3,40,2,8,33,4,32,3,40,2,4,11,33,3,32,1,32,0,54,2,36,32,1,32,0,54,2,32,32,1,65,0,54,2,28,32,1,32,3,32,6,106,54,2,16,32,1,32,4,32,7,167,106,54,2,20,32,1,65,0,32,7,66,32,136,167,32,4,27,32,5,106,54,2,24,32,2,32,1,40,2,28,54,2,16,32,2,32,1,40,2,20,54,2,8,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,24,65,1,118,54,2,12,32,2,32,1,40,2,16,65,1,118,54,2,4,32,1,65,48,106,36,0,11,181,1,1,4,127,35,0,65,32,107,34,1,36,0,2,127,32,0,40,2,0,34,2,65,1,113,4,64,32,0,45,0,5,65,15,113,33,3,32,0,45,0,4,33,4,32,0,45,0,6,12,1,11,32,2,40,2,12,33,4,32,2,40,2,8,33,3,32,2,40,2,4,11,33,2,32,1,32,0,54,2,28,32,1,32,0,54,2,24,32,1,65,0,54,2,20,32,1,32,4,54,2,16,32,1,32,3,54,2,12,32,1,32,2,54,2,8,35,11,34,0,32,1,40,2,20,54,2,16,32,0,32,1,40,2,12,54,2,8,32,0,32,1,40,2,24,54,2,0,32,0,32,1,40,2,16,65,1,118,54,2,12,32,0,32,1,40,2,8,65,1,118,54,2,4,32,1,65,32,106,36,0,11,136,1,1,3,127,35,0,65,16,107,34,2,36,0,35,11,34,3,2,127,2,64,2,64,32,1,65,253,255,3,75,13,0,32,0,40,2,0,65,15,73,13,0,32,0,40,2,72,32,1,65,3,108,106,45,0,2,65,1,113,13,1,11,32,2,65,0,54,2,12,65,0,12,1,11,32,0,40,2,156,1,32,1,65,2,116,106,34,1,47,1,0,33,4,32,2,32,1,47,1,2,54,2,12,32,0,40,2,160,1,32,4,65,1,116,106,11,54,2,4,32,3,32,2,40,2,12,54,2,0,32,2,65,16,106,36,0,11,72,1,3,127,35,0,65,16,107,34,1,36,0,32,1,32,0,40,2,0,65,15,79,4,127,32,0,40,2,152,1,33,2,32,0,40,2,148,1,5,65,0,11,54,2,12,35,11,34,3,32,2,54,2,4,32,3,32,1,40,2,12,54,2,0,32,1,65,16,106,36,0,11,68,1,1,127,35,11,32,0,65,164,1,106,65,0,32,0,40,2,0,65,14,75,27,34,0,4,127,35,11,34,1,32,0,45,0,0,54,2,4,32,1,32,0,45,0,1,54,2,8,32,1,32,0,45,0,2,54,2,12,65,3,5,65,0,11,54,2,0,11,11,0,32,0,32,1,16,68,65,2,73,11,9,0,32,0,32,1,16,68,69,11,192,2,1,6,127,35,0,65,16,107,34,3,36,0,32,3,65,0,54,2,12,32,3,32,0,40,2,100,54,2,12,32,0,40,2,68,33,1,32,3,40,2,12,34,2,65,24,108,34,0,16,34,33,4,32,0,4,64,32,4,32,1,32,0,252,10,0,0,11,2,64,32,2,69,13,0,65,0,33,1,32,2,65,1,71,4,64,32,2,65,126,113,33,5,3,64,32,4,32,1,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,0,32,0,40,2,40,65,1,118,54,2,40,32,0,32,0,40,2,44,65,1,118,54,2,44,32,0,32,0,40,2,28,65,1,118,54,2,28,32,0,32,0,40,2,36,65,1,118,54,2,36,32,1,65,2,106,33,1,32,6,65,2,106,34,6,32,5,71,13,0,11,11,32,2,65,1,113,69,13,0,32,4,32,1,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,11,35,11,34,0,32,4,54,2,4,32,0,32,2,54,2,0,32,3,65,16,106,36,0,11,14,0,32,0,40,2,4,32,0,45,0,8,16,6,11,55,0,32,0,32,1,65,1,118,32,2,40,2,0,32,2,40,2,4,65,1,118,32,3,16,7,32,3,65,254,207,0,32,3,40,2,0,65,1,116,34,1,32,1,65,255,207,0,75,27,54,2,0,32,0,11,215,207,1,2,51,127,4,126,35,0,65,48,107,34,29,36,0,32,29,66,1,55,2,40,32,29,32,1,54,2,32,32,29,35,2,65,21,106,54,2,36,2,64,32,4,4,64,32,4,65,1,71,4,64,32,4,65,126,113,33,1,3,64,32,3,32,7,65,24,108,106,34,8,32,8,40,2,16,65,1,116,54,2,16,32,8,32,8,40,2,20,65,1,116,54,2,20,32,8,32,8,40,2,4,65,1,116,54,2,4,32,8,32,8,40,2,12,65,1,116,54,2,12,32,8,32,8,40,2,40,65,1,116,54,2,40,32,8,32,8,40,2,44,65,1,116,54,2,44,32,8,32,8,40,2,28,65,1,116,54,2,28,32,8,32,8,40,2,36,65,1,116,54,2,36,32,7,65,2,106,33,7,32,9,65,2,106,34,9,32,1,71,13,0,11,11,32,4,65,1,113,4,64,32,3,32,7,65,24,108,106,34,1,32,1,40,2,16,65,1,116,54,2,16,32,1,32,1,40,2,20,65,1,116,54,2,20,32,1,32,1,40,2,4,65,1,116,54,2,4,32,1,32,1,40,2,12,65,1,116,54,2,12,11,32,0,32,3,32,4,16,56,26,32,3,16,50,12,1,11,32,0,65,0,65,0,16,56,26,11,32,29,32,29,41,2,40,55,3,24,32,29,32,29,41,2,32,55,3,16,32,29,35,1,65,220,211,0,106,41,2,0,55,3,8,35,0,65,16,107,34,40,36,0,32,0,32,29,41,2,8,34,56,62,2,180,10,32,0,32,56,55,2,172,10,32,40,32,29,41,2,24,55,3,8,32,40,32,29,41,2,16,55,3,0,65,0,33,1,65,0,33,9,35,0,65,144,2,107,34,10,36,0,2,64,32,0,34,5,40,2,160,9,34,23,69,13,0,32,40,40,2,4,69,13,0,32,5,32,40,41,2,0,55,2,76,32,5,32,40,41,2,8,55,2,84,32,5,65,0,54,2,72,32,5,66,0,55,2,108,32,5,40,2,68,33,8,2,127,32,5,40,2,100,34,13,4,64,32,5,40,2,32,33,7,3,64,2,64,32,8,32,1,65,24,108,106,34,4,40,2,20,34,0,32,7,77,13,0,32,0,32,4,40,2,16,34,3,77,13,0,32,3,32,7,79,4,64,32,5,32,4,41,2,0,55,2,36,32,5,32,3,54,2,32,11,32,5,32,1,54,2,104,65,0,12,3,11,32,1,65,1,106,34,1,32,13,71,13,0,11,11,32,5,32,13,54,2,104,32,8,32,13,65,24,108,106,34,1,65,4,107,40,2,0,33,0,32,1,65,16,107,41,2,0,33,56,32,5,65,0,54,2,72,32,5,32,56,55,2,36,32,5,32,0,54,2,32,32,5,66,0,55,2,108,65,1,11,33,0,32,5,65,0,54,2,192,10,32,5,65,0,54,2,164,10,32,5,65,0,54,2,0,32,5,32,0,54,2,116,32,5,65,0,54,2,148,10,32,5,65,160,10,106,33,54,2,64,2,64,2,64,2,64,2,64,32,5,45,0,197,10,13,0,32,5,40,2,136,10,13,0,32,5,40,2,132,9,40,2,0,34,3,40,2,0,34,0,47,1,0,65,1,71,13,0,32,0,40,2,156,1,34,1,32,3,40,2,8,34,0,73,4,64,32,3,32,1,54,2,8,12,2,11,32,0,32,1,70,13,1,11,2,64,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,65,153,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,41,0,7,55,0,139,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,153,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,41,0,7,55,0,139,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,45,0,197,10,69,13,1,12,2,11,2,64,32,23,40,2,104,69,13,0,32,23,40,2,112,34,0,69,13,0,32,5,32,0,17,11,0,54,2,136,10,11,65,0,33,1,32,5,45,0,196,10,13,2,32,2,4,64,32,2,40,2,0,34,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,11,32,5,32,2,41,2,0,55,2,152,10,32,2,40,2,12,32,2,40,2,16,32,5,40,2,68,32,5,40,2,100,32,54,16,84,32,2,41,2,0,33,56,32,5,66,0,55,2,128,10,65,0,33,2,32,5,65,0,54,2,248,9,32,5,40,2,244,9,33,1,32,5,40,2,252,9,69,4,64,2,127,32,1,4,64,32,1,65,128,1,35,6,40,2,0,17,1,0,12,1,11,65,128,1,35,7,40,2,0,17,0,0,11,33,1,32,5,65,8,54,2,252,9,32,5,40,2,248,9,33,2,11,32,5,32,1,54,2,244,9,32,5,32,2,65,1,106,54,2,248,9,32,1,32,2,65,4,116,106,34,0,66,0,55,2,8,32,0,32,56,55,2,0,2,64,2,64,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,17,65,4,116,106,34,0,65,16,107,40,2,0,34,4,65,1,113,13,0,32,4,40,2,36,34,7,69,13,0,32,0,65,4,107,40,2,0,33,1,32,5,32,17,65,1,106,34,3,32,5,40,2,252,9,34,0,75,4,127,32,2,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,4,116,35,6,40,2,0,17,1,0,33,2,32,5,32,0,54,2,252,9,32,4,40,2,36,33,7,32,5,40,2,248,9,34,17,65,1,106,5,32,3,11,54,2,248,9,32,5,32,2,54,2,244,9,32,4,32,7,65,3,116,107,41,2,0,33,56,32,2,32,17,65,4,116,106,34,0,32,1,54,2,12,32,0,65,0,54,2,8,32,0,32,56,55,2,0,12,1,11,32,5,66,0,55,2,128,10,32,5,65,0,54,2,248,9,11,2,64,2,64,2,64,32,5,40,2,96,34,0,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,34,0,41,0,137,3,55,0,132,1,32,5,32,0,45,0,153,3,58,0,148,1,32,5,32,0,41,0,145,3,55,0,140,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,34,1,41,0,137,3,55,0,132,1,32,5,32,1,45,0,153,3,58,0,148,1,32,5,32,1,41,0,145,3,55,0,140,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,0,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,65,140,10,106,33,17,32,5,40,2,140,10,34,1,69,13,4,32,5,40,2,160,9,33,0,32,10,32,5,41,2,152,10,55,3,184,1,32,10,65,184,1,106,65,0,32,0,65,0,32,1,16,55,65,10,32,5,40,2,140,10,16,9,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,140,10,106,33,17,11,32,5,40,2,164,10,69,13,1,32,5,65,132,1,106,33,0,3,64,32,5,40,2,160,10,33,1,2,64,32,5,40,2,96,69,4,64,32,17,40,2,0,69,13,1,11,32,10,32,1,32,14,65,24,108,106,41,2,16,55,3,160,1,32,0,65,128,8,35,1,65,225,2,106,32,10,65,160,1,106,16,11,26,32,5,40,2,96,34,1,4,64,32,5,40,2,92,65,0,32,0,32,1,17,3,0,11,32,0,33,2,32,17,40,2,0,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,17,40,2,0,16,9,32,2,45,0,0,33,1,11,32,1,192,32,17,40,2,0,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,14,65,1,106,34,14,32,5,40,2,164,10,73,13,0,11,12,1,11,32,5,66,0,55,2,128,10,32,5,65,0,54,2,248,9,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,65,184,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,47,0,8,59,0,140,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,184,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,47,0,8,59,0,140,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,69,13,3,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,244,9,106,33,55,32,5,65,132,1,106,33,23,3,64,2,64,32,5,40,2,132,9,34,2,40,2,4,34,0,69,4,64,65,1,33,14,65,127,33,27,12,1,11,32,0,65,1,70,33,14,32,2,40,2,0,33,7,65,0,33,17,2,64,2,64,3,64,2,64,32,7,32,17,65,5,116,34,46,106,34,1,40,2,28,13,0,3,64,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,32,1,40,2,0,34,0,41,2,8,33,56,32,0,47,1,0,33,0,32,10,32,2,40,2,4,54,2,132,1,32,10,32,0,54,2,136,1,32,10,32,56,55,2,140,1,32,10,32,17,54,2,128,1,32,23,65,128,8,35,1,65,185,1,106,32,10,65,128,1,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,23,32,0,17,3,0,11,32,23,33,2,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,65,0,33,51,35,0,65,224,3,107,34,6,36,0,32,17,65,5,116,34,16,32,5,40,2,132,9,40,2,0,106,34,0,40,2,16,33,20,32,0,40,2,12,33,25,32,0,40,2,0,34,0,40,2,4,33,41,32,0,47,1,0,33,13,32,6,66,0,55,3,248,2,32,6,65,0,54,2,240,2,32,6,66,0,55,3,232,2,2,64,32,14,65,1,113,4,64,2,64,32,5,40,2,248,9,34,2,69,13,0,32,5,65,244,9,106,33,24,32,5,65,132,1,106,33,1,32,25,65,48,106,33,18,32,25,69,32,25,114,65,1,113,33,8,3,64,32,24,40,2,0,32,2,65,4,116,106,34,2,65,16,107,40,2,0,34,0,69,13,1,32,0,65,8,118,33,21,32,2,65,12,107,40,2,0,33,3,32,2,65,4,107,40,2,0,33,15,2,127,32,0,65,1,113,34,19,4,64,32,3,65,16,118,65,255,1,113,32,3,65,24,118,106,33,11,32,21,65,255,1,113,12,1,11,32,0,40,2,16,32,0,40,2,4,106,33,11,32,0,47,1,40,11,33,2,32,15,32,41,75,4,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,3,11,32,5,40,2,160,9,33,3,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,3,40,2,8,32,3,40,2,4,106,32,0,77,13,0,32,3,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,144,2,32,1,65,128,8,35,1,65,235,6,106,32,6,65,144,2,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,2,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,5,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,11,32,15,106,65,127,32,2,65,255,255,3,113,27,33,12,2,64,2,64,2,64,32,15,32,41,73,4,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,3,77,13,0,32,4,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,160,2,32,1,65,128,8,35,1,65,206,6,106,32,6,65,160,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,35,1,65,148,12,106,33,9,2,64,32,5,40,2,128,10,34,2,69,13,0,32,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,9,32,2,65,48,106,32,2,40,2,36,27,33,9,11,32,9,40,2,24,33,7,2,64,2,64,2,64,2,127,35,1,65,148,12,106,34,2,32,8,13,0,26,32,2,32,25,45,0,44,65,192,0,113,69,13,0,26,32,2,32,18,32,25,40,2,36,27,11,34,4,40,2,24,34,2,65,25,79,4,64,32,2,32,7,71,13,2,32,9,40,2,0,33,9,32,4,40,2,0,33,4,12,1,11,32,2,32,7,71,13,1,11,32,9,32,4,32,2,16,18,69,13,1,11,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,3,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,3,77,13,0,32,4,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,224,2,32,1,65,128,8,35,1,65,252,5,106,32,6,65,224,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,2,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,5,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,2,64,2,64,2,127,2,64,2,64,2,64,32,19,4,64,32,0,65,16,113,69,13,1,35,1,65,196,3,106,12,4,11,35,1,65,196,3,106,32,0,47,1,44,34,2,65,32,113,13,3,26,32,0,47,1,40,65,255,255,3,71,13,1,35,1,65,226,7,106,12,3,11,32,0,65,32,113,69,13,1,35,1,65,142,8,106,12,2,11,35,1,65,142,8,106,32,2,65,128,4,113,13,1,26,32,2,65,24,113,69,13,0,35,1,65,208,8,106,12,1,11,32,5,40,2,192,10,34,9,32,5,40,2,164,10,34,7,79,13,1,32,5,40,2,160,10,33,4,3,64,32,15,32,4,32,9,65,24,108,106,34,2,40,2,20,79,4,64,32,7,32,9,65,1,106,34,9,71,13,1,12,3,11,11,32,2,40,2,16,32,12,79,13,1,35,1,65,219,8,106,11,33,3,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,9,40,2,8,32,9,40,2,4,106,32,4,77,13,0,32,9,40,2,56,32,4,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,180,2,32,6,32,3,54,2,176,2,32,1,65,128,8,35,1,65,138,7,106,32,6,65,176,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,6,32,3,54,2,148,3,32,6,32,0,54,2,144,3,32,6,2,127,2,64,32,0,65,1,113,4,64,32,21,65,255,1,113,33,11,12,1,11,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,11,65,254,255,3,73,13,0,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,1,11,2,64,2,64,32,5,40,2,160,9,34,16,40,2,24,34,2,32,13,77,4,64,32,16,40,2,44,32,16,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,8,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,4,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,18,4,127,32,2,32,18,65,1,116,106,65,0,33,9,3,64,32,2,47,1,0,32,11,70,13,4,32,2,65,2,106,33,2,32,9,65,1,106,34,9,32,18,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,4,65,1,106,34,4,32,8,71,13,0,11,12,2,11,32,16,40,2,40,32,16,40,2,4,32,13,108,65,1,116,106,32,11,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,16,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,32,6,32,6,41,2,144,3,55,3,216,2,32,5,32,13,32,6,65,216,2,106,32,6,65,232,2,106,16,81,33,2,32,5,40,2,96,33,4,2,64,32,2,69,4,64,32,4,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,0,77,13,0,32,4,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,11,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,4,40,2,8,32,4,40,2,4,106,32,11,77,13,0,32,4,40,2,56,32,11,65,2,116,106,40,2,0,33,3,11,32,6,32,3,54,2,212,2,32,6,32,2,54,2,208,2,32,1,65,128,8,35,1,65,145,5,106,32,6,65,208,2,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,2,64,32,4,69,4,64,32,5,40,2,140,10,69,13,1,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,9,40,2,8,32,9,40,2,4,106,32,4,77,13,0,32,9,40,2,56,32,4,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,192,2,32,1,65,128,8,35,1,65,185,6,106,32,6,65,192,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,51,32,0,65,1,113,13,8,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,12,8,11,2,64,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,1,65,4,116,106,34,0,65,16,107,40,2,0,34,3,65,1,113,13,0,3,64,32,3,40,2,36,34,9,69,13,1,32,0,65,4,107,40,2,0,33,4,32,5,32,1,65,1,106,34,7,32,5,40,2,252,9,34,0,75,4,127,32,2,65,8,32,0,65,1,116,34,0,32,7,32,0,32,7,75,27,34,0,32,0,65,8,77,27,34,0,65,4,116,35,6,40,2,0,17,1,0,33,2,32,5,32,0,54,2,252,9,32,3,40,2,36,33,9,32,5,40,2,248,9,34,1,65,1,106,5,32,7,11,54,2,248,9,32,5,32,2,54,2,244,9,32,3,32,9,65,3,116,107,41,2,0,33,56,32,2,32,1,65,4,116,106,34,0,32,4,54,2,12,32,0,65,0,54,2,8,32,0,32,56,55,2,0,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,1,65,4,116,106,34,0,65,16,107,40,2,0,34,3,65,1,113,69,13,0,11,11,32,24,16,40,12,5,11,2,64,32,5,40,2,244,9,34,3,32,5,40,2,248,9,34,9,65,4,116,106,34,2,65,16,107,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,69,13,0,32,2,65,4,107,40,2,0,33,4,32,9,65,1,106,34,11,32,5,40,2,252,9,34,2,75,4,64,32,3,65,8,32,2,65,1,116,34,2,32,11,32,2,32,11,75,27,34,2,32,2,65,8,77,27,34,2,65,4,116,35,6,40,2,0,17,1,0,33,3,32,5,32,2,54,2,252,9,32,5,40,2,248,9,34,9,65,1,106,33,11,32,7,40,2,36,33,12,11,32,5,32,11,54,2,248,9,32,5,32,3,54,2,244,9,32,7,32,12,65,3,116,107,41,2,0,33,56,32,3,32,9,65,4,116,106,34,2,32,4,54,2,12,32,2,65,0,54,2,8,32,2,32,56,55,2,0,12,3,11,32,24,16,40,32,5,32,17,16,80,26,32,5,40,2,132,9,40,2,0,32,16,106,40,2,0,47,1,0,33,13,12,2,11,32,12,32,41,77,13,0,32,5,40,2,244,9,34,3,32,5,40,2,248,9,34,9,65,4,116,106,34,2,65,16,107,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,69,13,0,32,2,65,4,107,40,2,0,33,4,32,9,65,1,106,34,11,32,5,40,2,252,9,34,2,75,4,64,32,3,65,8,32,2,65,1,116,34,2,32,11,32,2,32,11,75,27,34,2,32,2,65,8,77,27,34,2,65,4,116,35,6,40,2,0,17,1,0,33,3,32,5,32,2,54,2,252,9,32,5,40,2,248,9,34,9,65,1,106,33,11,32,7,40,2,36,33,12,11,32,5,32,11,54,2,248,9,32,5,32,3,54,2,244,9,32,7,32,12,65,3,116,107,41,2,0,33,56,32,3,32,9,65,4,116,106,34,2,32,4,54,2,12,32,2,65,0,54,2,8,32,2,32,56,55,2,0,12,1,11,32,24,16,40,11,32,5,40,2,248,9,34,2,13,0,11,32,6,32,0,54,2,144,3,11,32,6,66,0,55,3,248,2,11,2,64,32,5,40,2,224,9,34,9,69,13,0,65,0,33,0,2,64,32,5,40,2,240,9,32,41,71,13,0,35,1,65,148,12,106,34,0,33,3,2,64,32,5,40,2,232,9,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,3,11,35,1,65,148,12,106,34,0,33,1,2,64,32,25,69,13,0,32,25,65,1,113,13,0,32,25,45,0,44,65,192,0,113,69,13,0,32,0,32,25,65,48,106,32,25,40,2,36,27,33,1,11,32,3,40,2,24,33,2,2,64,32,1,40,2,24,34,4,65,25,79,4,64,65,0,33,0,32,2,32,4,71,13,2,32,3,40,2,0,33,3,32,1,40,2,0,33,1,12,1,11,65,0,33,0,32,2,32,4,71,13,1,11,32,3,32,1,32,4,16,18,13,0,32,5,65,224,9,106,33,7,32,5,40,2,160,9,33,8,32,6,2,127,2,64,32,9,65,1,113,4,64,32,9,65,128,254,3,113,65,8,118,33,1,12,1,11,32,9,47,1,40,34,1,65,254,255,3,73,13,0,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,1,11,2,64,2,64,32,8,40,2,24,34,0,32,13,77,4,64,32,8,40,2,44,32,8,40,2,48,32,13,32,0,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,4,69,4,64,65,0,33,2,12,3,11,32,0,65,2,106,33,11,65,0,33,12,3,64,32,11,65,4,106,33,2,32,11,47,1,2,34,9,4,127,32,2,32,9,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,1,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,9,71,13,0,11,5,32,2,11,33,11,65,0,33,2,32,12,65,1,106,34,12,32,4,71,13,0,11,12,2,11,32,8,40,2,40,32,8,40,2,4,32,13,108,65,1,116,106,32,1,65,1,116,106,47,1,0,33,2,12,1,11,32,11,47,1,0,33,2,11,32,6,32,8,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,0,45,0,0,54,2,236,2,32,6,32,0,45,0,1,58,0,240,2,32,0,65,8,106,11,54,2,232,2,32,6,32,7,41,2,0,55,3,136,2,32,5,32,13,32,6,65,136,2,106,32,6,65,232,2,106,16,81,69,13,1,32,7,40,2,0,34,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,32,7,40,2,0,33,0,11,32,5,40,2,228,9,33,3,12,2,11,65,0,33,3,12,1,11,65,0,33,0,65,0,33,3,11,32,6,32,3,54,2,252,2,32,6,32,0,54,2,248,2,32,5,65,180,10,106,33,22,32,5,65,232,9,106,33,34,32,5,65,224,9,106,33,36,32,5,65,136,9,106,33,33,32,5,65,132,1,106,33,1,32,0,65,8,118,33,16,32,0,69,33,2,32,25,69,32,25,114,65,1,113,33,21,32,17,65,5,116,33,47,32,5,65,64,107,33,52,2,64,3,64,32,13,69,33,18,32,13,65,6,108,33,53,32,13,65,2,116,33,24,2,64,32,6,2,127,2,64,3,64,32,2,65,1,113,4,64,2,64,2,64,32,5,40,2,160,9,34,0,40,2,88,32,24,32,53,32,0,40,2,0,65,15,73,27,106,34,0,47,1,0,34,4,65,255,255,3,70,4,64,2,64,2,64,32,5,40,2,96,34,0,69,4,64,32,5,40,2,140,10,13,1,65,0,33,2,12,4,11,32,1,35,1,65,251,9,106,34,2,41,0,0,55,0,0,32,1,32,2,41,0,30,55,0,30,32,1,32,2,41,0,24,55,0,24,32,1,32,2,41,0,16,55,0,16,32,1,32,2,41,0,8,55,0,8,65,0,33,2,32,5,40,2,92,65,0,32,1,32,0,17,3,0,32,5,40,2,140,10,69,13,3,12,1,11,32,1,35,1,65,251,9,106,34,0,41,0,0,55,0,0,32,1,32,0,41,0,30,55,0,30,32,1,32,0,41,0,24,55,0,24,32,1,32,0,41,0,16,55,0,16,32,1,32,0,41,0,8,55,0,8,11,32,1,33,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,69,13,4,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,0,47,1,2,33,48,32,5,40,2,132,9,40,2,0,32,47,106,34,0,40,2,12,33,39,32,0,40,2,0,34,0,41,2,8,33,58,32,0,40,2,4,34,9,33,0,32,5,40,2,32,32,9,71,4,64,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,58,55,2,36,32,5,32,9,54,2,32,32,5,40,2,68,33,8,2,64,2,127,32,5,40,2,100,34,12,4,64,3,64,2,64,32,8,32,2,65,24,108,106,34,7,40,2,20,34,0,32,9,77,13,0,32,0,32,7,40,2,16,34,3,77,13,0,32,3,32,9,34,0,79,4,64,32,5,32,7,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,12,71,13,0,11,11,32,5,32,12,54,2,104,32,8,32,12,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,32,39,65,48,106,33,28,65,0,33,12,32,39,69,32,39,114,65,1,113,33,19,65,0,33,8,65,0,33,43,65,0,33,32,65,0,33,49,65,0,33,44,65,0,33,45,65,0,33,27,65,0,33,35,65,0,33,37,65,0,33,50,32,18,33,16,2,127,2,64,2,64,2,64,2,127,3,64,2,64,32,5,41,2,36,34,59,66,32,136,167,33,30,32,5,40,2,96,33,2,32,59,167,33,31,2,64,32,48,4,127,32,5,41,2,124,33,57,2,64,32,2,69,4,64,32,5,40,2,140,10,69,13,1,11,32,6,32,30,54,2,248,1,32,6,32,31,54,2,244,1,32,6,32,48,54,2,240,1,32,1,65,128,8,35,1,65,231,0,106,32,6,65,240,1,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,16,64,65,0,33,2,32,5,40,2,136,10,2,127,32,39,69,4,64,65,0,33,11,65,0,12,1,11,32,28,32,39,40,2,72,34,11,65,25,73,13,0,26,32,28,40,2,0,11,32,11,32,5,40,2,160,9,40,2,128,1,17,3,0,32,5,40,2,136,10,32,5,32,5,40,2,160,9,34,3,40,2,104,32,3,40,2,16,32,48,108,106,32,3,40,2,120,17,4,0,33,3,32,5,45,0,196,10,13,9,2,64,32,5,40,2,56,34,2,13,0,32,52,40,2,0,69,13,0,2,64,32,5,40,2,104,34,2,32,5,40,2,100,70,13,0,32,2,69,13,0,32,5,40,2,32,32,5,40,2,68,32,2,65,24,108,106,34,7,40,2,16,71,13,0,32,7,65,4,107,40,2,0,33,2,32,5,32,7,65,16,107,41,2,0,55,2,60,32,5,32,2,54,2,56,12,1,11,32,5,32,5,41,2,32,34,56,55,2,56,32,5,32,5,40,2,40,54,2,64,32,56,167,33,2,11,32,5,40,2,44,32,2,75,4,64,32,5,32,5,41,2,56,55,2,44,32,5,32,5,40,2,64,54,2,52,11,32,5,40,2,32,65,5,65,1,32,5,40,2,0,65,127,70,27,106,34,2,32,12,32,2,32,12,75,27,33,12,2,64,32,3,69,13,0,32,5,40,2,136,10,32,1,32,5,40,2,160,9,40,2,124,17,1,0,33,35,32,35,2,127,35,1,65,148,12,106,34,2,32,19,13,0,26,32,2,32,39,45,0,44,65,192,0,113,69,13,0,26,32,2,32,28,32,39,40,2,36,27,11,34,2,40,2,24,71,4,64,65,1,33,27,12,4,11,32,35,65,25,79,4,127,32,2,40,2,0,5,32,2,11,32,1,32,35,16,18,34,2,65,0,71,33,27,32,5,40,2,56,32,0,75,13,3,32,2,13,3,32,5,40,2,160,9,34,26,32,13,32,26,40,2,108,32,5,47,1,4,65,1,116,106,47,1,0,34,15,16,43,33,11,2,64,32,16,65,1,113,13,0,2,64,32,5,40,2,132,9,40,2,0,32,47,106,34,7,40,2,0,34,2,40,2,152,1,69,13,0,3,64,32,2,47,1,144,1,69,13,2,32,2,40,2,20,34,42,69,13,2,2,127,32,42,65,1,113,34,3,4,64,32,2,45,0,27,32,2,47,1,24,32,2,45,0,26,65,16,116,114,65,128,128,252,7,113,65,16,118,106,12,1,11,32,42,40,2,16,32,42,40,2,4,106,11,13,1,32,2,40,2,156,1,32,7,40,2,8,77,13,2,2,64,32,3,4,64,32,42,65,32,113,69,13,1,12,4,11,32,42,45,0,45,65,2,113,13,3,32,42,40,2,32,13,3,11,32,2,40,2,16,34,2,13,0,11,12,1,11,32,11,32,13,71,13,4,11,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,15,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,26,40,2,8,32,26,40,2,4,106,32,15,77,13,0,32,26,40,2,56,32,15,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,224,1,32,1,65,128,8,35,1,65,214,5,106,32,6,65,224,1,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,40,2,32,32,0,71,4,64,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,59,55,2,36,32,5,32,0,54,2,32,32,5,40,2,68,33,15,2,64,2,127,32,5,40,2,100,34,26,4,64,3,64,2,64,32,15,32,2,65,24,108,106,34,11,40,2,20,34,7,32,0,77,13,0,32,7,32,11,40,2,16,34,3,77,13,0,32,0,32,3,77,4,64,32,5,32,11,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,26,71,13,0,11,11,32,5,32,26,54,2,104,32,15,32,26,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,32,5,32,57,55,2,124,32,5,40,2,96,5,32,2,11,69,4,64,32,5,40,2,140,10,69,13,1,11,32,6,32,30,54,2,216,1,32,6,32,31,54,2,212,1,32,6,32,4,65,255,255,3,113,54,2,208,1,32,1,65,128,8,35,1,65,144,1,106,32,6,65,208,1,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,16,64,32,5,32,4,65,255,255,3,113,32,5,40,2,160,9,40,2,92,17,1,0,33,7,2,64,32,5,40,2,56,34,2,13,0,32,52,40,2,0,69,13,0,2,64,32,5,40,2,104,34,0,32,5,40,2,100,70,13,0,32,0,69,13,0,32,5,40,2,32,32,5,40,2,68,32,0,65,24,108,106,34,0,40,2,16,71,13,0,32,0,65,4,107,40,2,0,33,2,32,5,32,0,65,16,107,41,2,0,55,2,60,32,5,32,2,54,2,56,12,1,11,32,5,32,5,41,2,32,34,56,55,2,56,32,5,32,5,40,2,40,54,2,64,32,56,167,33,2,11,32,5,40,2,44,32,2,75,4,64,32,5,32,5,41,2,56,55,2,44,32,5,32,5,40,2,64,54,2,52,11,32,5,40,2,32,34,0,65,5,65,1,32,5,40,2,0,65,127,70,27,106,34,3,32,12,32,3,32,12,75,27,33,12,2,64,2,64,32,7,69,4,64,32,16,65,1,113,69,4,64,32,0,32,9,70,32,5,40,2,160,9,40,2,88,34,0,47,1,2,33,48,32,0,47,1,0,33,4,65,1,33,16,32,9,33,0,13,5,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,58,55,2,36,32,5,32,0,54,2,32,32,5,40,2,68,33,11,2,64,2,127,32,5,40,2,100,34,15,4,64,3,64,2,64,32,11,32,2,65,24,108,106,34,7,40,2,20,34,0,32,9,77,13,0,32,0,32,7,40,2,16,34,3,77,13,0,32,3,32,9,34,0,79,4,64,32,5,32,7,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,15,71,13,0,11,11,32,5,32,15,54,2,104,32,11,32,15,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,12,5,11,32,50,13,2,2,64,32,5,40,2,96,34,2,69,4,64,32,5,40,2,140,10,69,13,3,32,1,35,1,34,2,65,235,7,106,34,0,41,0,0,55,0,0,32,1,32,0,40,0,24,54,0,24,32,1,32,2,41,0,251,7,55,0,16,32,1,32,2,41,0,243,7,55,0,8,12,1,11,32,1,35,1,34,3,65,235,7,106,34,0,41,0,0,55,0,0,32,1,32,0,40,0,24,54,0,24,32,1,32,3,41,0,251,7,55,0,16,32,1,32,3,41,0,243,7,55,0,8,32,5,40,2,92,65,0,32,1,32,2,17,3,0,32,5,40,2,140,10,69,13,2,11,32,1,33,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,65,0,33,11,65,0,32,50,69,13,4,26,12,5,11,32,5,40,2,32,33,0,32,5,40,2,0,33,37,32,5,40,2,44,34,8,33,49,32,5,40,2,52,34,43,33,44,32,5,40,2,48,34,32,33,45,11,32,0,32,8,70,4,64,32,5,32,5,40,2,24,17,0,0,4,64,32,5,65,255,255,3,59,1,4,32,0,33,8,12,5,11,32,5,65,0,32,5,40,2,8,17,5,0,32,5,40,2,32,33,0,11,32,5,40,2,40,33,44,32,5,40,2,36,33,45,65,1,33,50,32,0,33,8,65,1,33,16,12,1,11,11,32,50,13,1,32,5,40,2,56,33,2,32,5,45,0,120,33,11,65,1,11,33,7,32,5,47,1,4,33,4,32,5,40,2,48,33,19,32,5,40,2,52,33,16,32,6,32,5,40,2,44,34,0,32,9,107,34,3,65,0,32,0,32,3,79,27,54,2,144,3,32,6,32,16,32,16,32,58,66,32,136,167,107,34,3,65,0,32,3,32,16,77,27,32,19,32,58,167,34,3,75,27,173,66,32,134,32,19,32,3,107,34,3,65,0,32,3,32,19,77,27,173,132,55,2,148,3,32,52,40,2,0,33,8,32,5,40,2,60,33,9,32,6,32,2,32,0,107,34,3,65,0,32,2,32,3,79,27,54,2,128,3,32,6,32,9,32,19,107,34,3,65,0,32,3,32,9,77,27,173,32,8,32,8,32,16,107,34,3,65,0,32,3,32,8,77,27,32,9,32,19,75,27,173,66,32,134,132,55,2,132,3,32,12,32,2,107,33,30,32,5,40,2,160,9,33,3,32,7,69,13,1,32,3,40,2,108,32,4,65,1,116,106,47,1,0,33,4,65,0,33,12,12,2,11,32,45,32,32,107,34,0,65,0,32,0,32,45,77,27,173,32,44,32,44,32,43,107,34,0,65,0,32,0,32,44,77,27,32,32,32,45,73,27,173,66,32,134,132,33,57,32,43,32,43,32,58,66,32,136,167,107,34,0,65,0,32,0,32,43,77,27,32,32,32,58,167,34,0,75,27,173,66,32,134,32,32,32,0,107,34,0,65,0,32,0,32,32,77,27,173,132,33,56,32,8,32,49,107,34,0,65,0,32,0,32,8,77,27,33,7,32,49,32,9,107,34,0,65,0,32,0,32,49,77,27,33,4,32,12,32,8,107,33,3,2,127,32,5,40,2,140,9,34,0,4,64,32,5,32,0,65,1,107,34,0,54,2,140,9,32,5,40,2,136,9,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,0,32,6,66,0,55,3,152,3,32,6,66,0,55,3,160,3,65,0,33,2,32,6,65,0,54,2,168,3,32,6,65,1,54,2,212,3,32,6,32,4,54,2,208,3,32,6,32,56,55,3,128,3,32,6,32,7,54,2,200,3,32,6,32,57,55,3,216,3,32,6,32,3,54,2,196,3,32,6,65,0,54,2,192,3,32,6,65,0,54,2,188,3,32,6,65,255,255,3,59,1,184,3,32,6,32,13,59,1,182,3,32,6,65,3,59,1,180,3,32,6,65,0,59,1,178,3,32,6,66,0,55,3,144,3,32,0,32,6,40,2,212,3,54,2,0,32,0,32,6,40,2,208,3,54,2,4,32,0,32,6,41,3,128,3,55,2,8,32,0,32,6,40,2,200,3,54,2,16,32,0,32,6,41,3,216,3,55,2,20,32,0,32,6,40,2,196,3,54,2,28,32,0,32,6,40,2,192,3,54,2,32,32,0,32,6,40,2,188,3,54,2,36,32,0,32,6,47,1,184,3,59,1,40,32,0,32,6,47,1,182,3,59,1,42,32,0,32,6,47,1,180,3,34,3,59,1,44,32,0,32,6,47,1,178,3,59,1,46,32,0,32,6,40,2,168,3,54,2,72,32,0,65,64,107,32,6,41,3,160,3,55,2,0,32,0,32,6,41,3,152,3,55,2,56,32,0,32,6,41,3,144,3,55,2,48,32,0,32,37,54,2,48,32,0,32,3,65,24,114,59,1,44,65,0,33,4,65,0,33,11,32,0,33,7,32,0,65,8,118,12,2,11,65,0,33,12,32,4,69,13,0,32,4,32,3,47,1,100,71,13,0,32,5,40,2,32,32,0,71,4,64,65,0,33,3,32,5,65,0,58,0,128,1,32,5,65,0,54,2,124,32,5,32,0,54,2,32,32,5,32,5,41,2,48,55,2,36,32,5,40,2,68,33,19,2,64,2,127,32,5,40,2,100,34,15,4,64,3,64,2,64,32,19,32,3,65,24,108,106,34,16,40,2,20,34,8,32,0,77,13,0,32,8,32,16,40,2,16,34,9,77,13,0,32,0,32,9,77,4,64,32,5,32,16,41,2,0,55,2,36,32,5,32,9,54,2,32,32,9,33,0,11,32,5,32,3,54,2,104,32,5,40,2,72,69,4,64,65,0,33,3,12,5,11,65,0,32,0,32,5,40,2,108,34,9,73,13,3,26,65,0,34,3,32,0,32,5,40,2,112,32,9,106,79,13,3,26,12,4,11,32,3,65,1,106,34,3,32,15,71,13,0,11,11,32,5,32,15,54,2,104,32,19,32,15,65,24,108,106,34,3,65,4,107,40,2,0,33,0,32,5,32,3,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,3,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,3,54,2,116,11,32,5,16,64,32,5,65,0,32,5,40,2,160,9,40,2,96,17,1,0,69,4,64,32,5,40,2,160,9,33,3,12,1,11,32,5,40,2,160,9,33,3,65,1,33,12,32,5,40,2,56,32,2,71,13,0,32,5,47,1,4,33,9,2,64,2,64,32,3,40,2,24,34,0,32,13,77,4,64,32,3,40,2,44,32,3,40,2,48,32,13,32,0,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,15,69,13,2,32,0,65,2,106,33,0,65,0,33,16,3,64,32,0,65,4,106,33,2,32,0,47,1,2,34,31,4,127,32,2,32,31,65,1,116,106,65,0,33,8,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,8,65,1,106,34,8,32,31,71,13,0,11,5,32,2,11,33,0,32,16,65,1,106,34,16,32,15,71,13,0,11,12,2,11,32,3,40,2,40,32,3,40,2,4,32,13,108,65,1,116,106,32,9,65,1,116,106,33,0,11,32,0,47,1,0,69,13,0,32,9,33,4,12,1,11,32,3,40,2,0,65,15,73,13,0,32,3,40,2,88,32,53,106,47,1,4,34,0,69,13,0,32,3,47,1,144,1,34,8,69,13,0,32,8,32,0,32,8,108,34,2,106,33,16,32,3,40,2,140,1,33,8,3,64,32,9,32,8,32,2,65,1,116,106,47,1,0,34,0,70,4,64,32,9,33,4,12,2,11,32,0,69,13,1,32,2,65,1,106,34,2,32,16,73,13,0,11,11,32,6,32,6,40,2,152,3,54,2,200,1,32,6,32,6,40,2,136,3,54,2,184,1,32,6,32,6,41,2,144,3,55,3,192,1,32,6,32,6,41,2,128,3,55,3,176,1,32,7,33,9,32,11,65,1,113,33,7,65,0,33,11,35,0,65,224,0,107,34,15,36,0,65,1,33,16,65,1,33,8,2,64,2,64,2,64,2,64,32,4,65,255,255,3,113,34,19,65,254,255,3,107,14,2,1,2,0,11,32,3,40,2,72,32,19,65,3,108,106,34,0,45,0,1,33,8,32,0,45,0,0,33,16,32,19,69,33,11,32,19,65,255,1,75,13,1,32,9,13,1,32,30,65,15,75,13,1,32,6,40,2,192,1,34,4,65,254,1,75,13,1,32,6,40,2,196,1,34,3,65,15,75,13,1,32,6,40,2,200,1,34,2,65,254,1,75,13,1,32,6,40,2,176,1,34,0,65,254,1,75,13,1,32,6,40,2,180,1,13,1,32,6,40,2,184,1,65,254,1,75,13,1,32,6,32,0,58,0,223,3,32,6,32,4,58,0,222,3,32,6,32,2,58,0,220,3,32,6,32,13,59,1,218,3,32,6,32,19,58,0,217,3,32,6,32,3,65,15,113,32,30,65,4,116,114,58,0,221,3,32,6,32,8,65,2,116,65,0,65,8,32,19,27,106,65,192,0,65,0,32,12,27,106,32,16,65,1,116,106,65,1,114,58,0,216,3,12,2,11,65,0,33,16,65,0,33,8,11,2,127,32,33,40,2,4,34,0,4,64,32,33,32,0,65,1,107,34,0,54,2,4,32,33,40,2,0,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,0,32,15,65,1,54,2,92,32,15,32,6,40,2,200,1,54,2,88,32,15,32,6,41,2,192,1,55,3,80,32,15,32,6,40,2,184,1,54,2,72,32,6,41,2,176,1,33,56,32,15,66,0,55,3,16,32,15,66,0,55,3,24,32,15,65,0,54,2,32,32,15,32,56,55,3,64,32,15,32,30,54,2,60,32,15,65,0,54,2,56,32,15,65,0,54,2,52,32,15,32,19,59,1,48,32,15,32,13,59,1,46,32,15,65,0,59,1,42,32,15,66,0,55,3,8,32,15,32,8,65,1,116,32,16,106,65,255,1,113,65,128,2,65,0,32,7,27,65,192,0,65,0,32,9,27,114,65,128,8,65,0,32,12,27,114,65,4,65,0,32,11,27,114,114,59,1,44,32,0,32,15,40,2,92,54,2,0,32,0,32,15,40,2,88,54,2,12,32,0,32,15,41,3,80,55,2,4,32,0,32,15,40,2,72,54,2,24,32,0,32,15,41,3,64,55,2,16,32,0,32,15,40,2,60,54,2,28,32,0,32,15,40,2,56,54,2,32,32,0,32,15,40,2,52,54,2,36,32,0,32,15,47,1,48,59,1,40,32,0,32,15,47,1,46,59,1,42,32,0,32,15,47,1,44,59,1,44,32,0,32,15,47,1,42,59,1,46,32,0,32,15,40,2,32,54,2,72,32,0,65,64,107,32,15,41,3,24,55,2,0,32,0,32,15,41,3,16,55,2,56,32,0,32,15,41,3,8,55,2,48,32,6,65,0,54,2,220,3,32,6,32,0,54,2,216,3,11,32,15,65,224,0,106,36,0,32,6,41,3,216,3,34,56,66,48,136,167,32,6,40,2,220,3,33,2,32,6,40,2,216,3,33,0,32,56,167,33,7,32,9,4,64,32,7,32,35,54,2,72,32,7,65,48,106,33,9,32,35,65,25,79,4,64,32,9,32,35,35,7,40,2,0,17,0,0,34,9,54,2,0,11,32,35,4,64,32,9,32,1,32,35,252,10,0,0,11,32,7,32,7,47,1,44,65,255,254,3,113,65,128,1,65,0,32,27,27,114,59,1,44,11,32,56,66,56,136,167,33,11,65,255,1,113,33,4,32,56,66,8,136,167,11,33,3,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,12,2,64,2,64,2,64,32,7,65,1,113,4,127,32,3,65,255,1,113,5,32,7,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,12,12,1,11,32,9,40,2,56,32,3,65,2,116,106,40,2,0,33,12,11,32,1,35,1,65,201,10,106,34,3,41,0,0,55,0,0,32,1,32,3,41,0,13,55,0,13,32,1,32,3,41,0,8,55,0,8,65,0,33,9,65,20,33,3,2,64,32,12,45,0,0,34,8,69,13,0,3,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,8,65,255,1,113,34,16,65,9,107,14,5,0,1,2,3,4,5,11,32,1,32,3,106,65,220,232,1,59,0,0,32,3,65,2,106,12,5,11,32,1,32,3,106,65,220,220,1,59,0,0,32,3,65,2,106,12,4,11,32,1,32,3,106,65,220,236,1,59,0,0,32,3,65,2,106,12,3,11,32,1,32,3,106,65,220,204,1,59,0,0,32,3,65,2,106,12,2,11,32,1,32,3,106,65,220,228,1,59,0,0,32,3,65,2,106,12,1,11,32,16,65,220,0,70,4,64,32,1,32,3,106,65,220,184,1,59,0,0,32,3,65,2,106,12,1,11,32,1,32,3,106,32,8,58,0,0,32,3,65,1,106,11,33,3,32,12,32,9,65,1,106,34,9,106,45,0,0,34,8,69,13,1,32,3,65,128,8,72,13,0,11,11,65,128,8,32,3,107,33,9,32,1,32,3,106,32,6,32,7,65,1,113,4,127,32,4,32,11,106,5,32,7,40,2,16,32,7,40,2,4,106,11,54,2,160,1,32,9,35,1,65,159,2,106,32,6,65,160,1,106,16,11,26,32,5,40,2,96,34,3,4,64,32,5,40,2,92,65,0,32,1,32,3,17,3,0,11,32,1,33,8,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,8,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,69,13,4,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,8,45,0,0,33,3,11,32,3,192,32,5,40,2,140,10,16,9,32,8,65,1,106,33,8,12,0,11,0,11,65,0,33,0,11,32,6,32,2,54,2,252,2,32,6,32,0,54,2,248,2,32,5,45,0,196,10,4,64,65,0,33,2,12,7,11,32,6,2,127,2,64,32,0,4,64,32,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,11,32,21,69,4,64,32,25,32,25,40,2,0,65,1,106,54,2,0,32,25,40,2,0,26,11,32,36,40,2,0,4,64,32,6,32,36,41,2,0,55,3,152,1,32,33,32,6,65,152,1,106,16,10,11,32,34,40,2,0,4,64,32,6,32,34,41,2,0,55,3,144,1,32,33,32,6,65,144,1,106,16,10,11,32,5,32,41,54,2,240,9,32,5,32,2,54,2,228,9,32,5,32,0,54,2,224,9,32,5,32,20,54,2,236,9,32,5,32,25,54,2,232,9,32,5,40,2,160,9,33,19,32,6,45,0,248,2,34,0,65,1,113,4,64,32,6,45,0,249,2,34,16,33,8,12,2,11,32,6,40,2,248,2,34,0,65,8,118,33,16,32,0,47,1,40,34,8,65,254,255,3,73,13,1,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,2,11,32,0,65,8,118,33,16,2,64,2,64,32,5,40,2,160,9,34,8,40,2,24,34,2,32,13,77,4,64,32,8,40,2,44,32,8,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,11,65,0,33,12,3,64,32,11,65,4,106,33,2,32,11,47,1,2,34,7,4,127,32,2,32,7,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,69,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,7,71,13,0,11,5,32,2,11,33,11,65,0,33,2,32,12,65,1,106,34,12,32,9,71,13,0,11,12,2,11,32,8,40,2,40,32,8,40,2,4,32,13,108,65,1,116,106,47,1,0,33,2,12,1,11,32,11,47,1,0,33,2,11,32,6,32,8,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,12,1,11,2,64,2,64,32,19,40,2,24,34,2,32,13,77,4,64,32,19,40,2,44,32,19,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,11,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,9,71,13,0,11,12,2,11,32,19,40,2,40,32,19,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,19,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,11,32,5,32,41,54,2,184,10,32,5,32,5,45,0,198,10,58,0,188,10,32,5,32,5,40,2,148,10,65,1,106,34,2,65,0,32,2,65,227,0,77,27,34,2,54,2,148,10,2,64,32,2,13,0,32,5,40,2,176,10,34,2,69,13,0,32,22,32,2,17,0,0,69,13,0,65,0,33,2,32,6,40,2,248,2,69,13,6,32,6,32,6,41,3,248,2,55,3,136,1,32,33,32,6,65,136,1,106,16,10,12,6,11,2,64,32,6,40,2,236,2,34,19,69,13,0,32,6,40,2,248,2,34,0,65,8,118,33,16,65,0,33,3,65,127,33,11,32,6,40,2,232,2,33,7,65,0,33,8,3,64,32,7,32,8,65,3,116,106,34,2,46,1,4,33,15,32,2,47,1,2,33,9,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,2,45,0,0,14,4,0,1,2,3,6,11,32,15,65,128,2,113,13,5,32,5,40,2,96,33,3,32,15,65,1,113,4,64,2,64,32,3,69,4,64,32,13,33,9,32,5,40,2,140,10,69,13,14,32,1,35,1,65,239,9,106,34,2,41,0,0,55,0,0,32,1,32,2,40,0,8,54,0,8,12,1,11,32,1,35,1,65,239,9,106,34,2,41,0,0,55,0,0,32,1,32,2,40,0,8,54,0,8,32,5,40,2,92,65,0,32,1,32,3,17,3,0,32,13,33,9,32,5,40,2,140,10,69,13,13,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,32,13,33,9,12,15,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,3,69,4,64,32,5,40,2,140,10,69,13,12,11,32,6,32,9,54,2,96,32,1,65,128,8,35,1,65,169,2,106,32,6,65,224,0,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,5,40,2,140,10,69,13,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,69,13,14,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,2,47,1,6,33,4,32,2,45,0,1,33,12,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,4,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,9,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,5,40,2,160,9,34,3,40,2,8,32,3,40,2,4,106,32,9,77,13,0,32,3,40,2,56,32,9,65,2,116,106,40,2,0,33,2,11,32,6,32,12,54,2,116,32,6,32,2,54,2,112,32,1,65,128,8,35,1,65,29,106,32,6,65,240,0,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,6,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,2,64,32,5,40,2,96,34,2,69,4,64,32,5,40,2,140,10,69,13,3,32,1,35,1,34,0,40,0,130,3,54,0,0,32,1,32,0,40,0,133,3,54,0,3,12,1,11,32,1,35,1,34,0,40,0,130,3,54,0,0,32,1,32,0,40,0,133,3,54,0,3,32,5,40,2,92,65,0,32,1,32,2,17,3,0,32,5,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,2,2,64,32,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,5,32,6,65,248,2,106,65,0,32,5,65,244,9,106,16,54,11,32,6,32,6,41,3,248,2,55,3,128,1,32,5,32,17,32,6,65,128,1,106,16,82,32,51,69,13,10,32,5,65,244,9,106,16,40,12,10,11,32,6,32,6,41,3,248,2,55,3,120,32,5,32,17,32,6,65,248,0,106,16,78,65,1,33,2,12,9,11,65,1,33,3,32,11,32,5,32,17,32,9,32,12,32,15,32,4,32,19,65,1,71,32,0,69,16,77,34,2,32,2,65,127,70,27,33,11,11,32,8,65,1,106,34,8,32,19,71,13,0,11,32,11,65,127,71,4,64,32,5,40,2,132,9,32,11,32,17,16,39,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,32,6,40,2,248,2,34,0,65,8,118,33,16,32,5,40,2,132,9,40,2,0,32,47,106,40,2,0,47,1,0,33,13,65,1,33,2,32,0,69,13,6,32,5,40,2,160,9,33,18,32,0,65,1,113,4,64,32,16,65,255,1,113,33,8,12,4,11,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,8,65,254,255,3,73,13,3,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,4,11,32,3,65,1,113,69,13,0,32,6,40,2,248,2,4,64,32,6,32,6,41,3,248,2,55,3,48,32,33,32,6,65,48,106,16,10,11,32,5,40,2,132,9,40,2,0,32,17,65,5,116,106,65,2,54,2,28,65,1,33,2,12,6,11,2,64,2,64,2,64,32,0,65,1,113,34,15,4,64,65,1,33,2,32,0,65,192,0,113,13,1,32,0,33,4,12,3,11,32,6,40,2,248,2,34,4,65,8,118,33,16,65,0,33,2,32,4,45,0,45,65,4,113,69,13,2,32,4,47,1,40,34,9,32,5,40,2,160,9,34,11,47,1,100,34,8,71,13,1,12,2,11,32,5,40,2,160,9,34,11,47,1,100,34,8,32,16,65,255,1,113,70,4,64,32,0,33,4,12,2,11,32,16,65,255,1,113,33,9,32,0,33,4,11,2,64,32,11,40,2,0,65,15,73,13,0,32,11,40,2,88,32,53,106,47,1,4,34,2,69,13,0,32,11,47,1,144,1,34,3,69,13,0,32,3,32,2,32,3,108,34,2,106,33,12,32,11,40,2,140,1,33,7,3,64,32,9,32,7,32,2,65,1,116,106,47,1,0,34,3,70,4,64,32,0,33,2,12,3,11,32,3,69,13,1,32,2,65,1,106,34,2,32,12,73,13,0,11,11,32,8,65,254,255,3,79,4,64,32,6,65,0,58,0,240,2,32,6,66,0,55,3,232,2,32,0,33,2,12,1,11,2,64,2,64,32,11,40,2,24,34,2,32,13,77,4,64,32,11,40,2,44,32,11,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,19,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,31,4,127,32,2,32,31,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,31,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,19,71,13,0,11,12,2,11,32,11,40,2,40,32,11,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,11,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,9,45,0,0,34,3,54,2,236,2,32,9,45,0,1,33,2,32,6,32,9,65,8,106,54,2,232,2,32,6,32,2,58,0,240,2,32,3,69,4,64,32,0,33,2,12,1,11,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,15,4,127,32,16,65,255,1,113,5,32,6,40,2,248,2,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,11,40,2,8,32,11,40,2,4,106,32,0,77,13,0,32,11,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,8,32,11,40,2,8,32,11,40,2,4,106,73,4,127,32,11,40,2,56,32,8,65,2,116,106,40,2,0,5,65,0,11,54,2,36,32,6,32,2,54,2,32,32,1,65,128,8,35,1,65,208,3,106,32,6,65,32,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,6,32,6,41,3,248,2,34,56,55,3,128,3,32,56,66,32,136,33,57,2,64,32,56,167,34,3,65,1,113,4,64,32,3,33,0,12,1,11,32,3,34,0,40,2,0,65,1,70,13,0,32,0,40,2,36,65,3,116,65,204,0,106,34,2,35,7,40,2,0,17,0,0,33,9,32,2,4,64,32,9,32,0,32,0,40,2,36,65,3,116,107,32,2,252,10,0,0,11,32,9,32,3,40,2,36,34,8,65,3,116,106,33,0,65,0,33,2,2,64,32,8,4,64,3,64,32,9,32,2,65,3,116,106,40,2,0,34,4,65,1,113,69,4,64,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,32,3,40,2,36,33,8,11,32,2,65,1,106,34,2,32,8,73,13,0,12,2,11,0,11,32,3,45,0,44,65,192,0,113,69,13,0,32,3,40,2,48,33,2,32,6,32,3,41,2,68,55,3,160,3,32,6,32,3,41,2,60,55,3,152,3,32,6,32,3,41,2,52,55,3,144,3,2,64,32,3,40,2,72,34,4,65,25,73,13,0,32,4,35,7,40,2,0,17,0,0,33,2,32,3,40,2,72,34,4,69,13,0,32,2,32,3,40,2,48,32,4,252,10,0,0,11,32,0,32,2,54,2,48,32,0,32,6,41,3,144,3,55,2,52,32,0,32,6,41,3,152,3,55,2,60,32,0,32,6,41,3,160,3,55,2,68,11,32,0,65,1,54,2,0,32,6,32,6,41,3,128,3,55,3,24,32,33,32,6,65,24,106,16,10,66,0,33,57,11,65,1,33,2,65,1,33,3,2,64,2,64,2,64,32,5,40,2,160,9,34,4,47,1,100,34,9,65,254,255,3,107,14,2,0,2,1,11,65,0,33,2,65,0,33,3,12,1,11,32,4,40,2,72,32,9,65,3,108,106,34,3,45,0,1,33,2,32,3,45,0,0,33,3,11,2,64,32,0,65,1,113,4,64,32,0,65,249,1,113,32,2,65,2,116,114,32,3,65,1,116,106,65,255,1,113,32,0,65,128,128,124,113,32,9,65,8,116,65,128,254,3,113,114,114,33,0,12,1,11,32,0,32,9,59,1,40,32,0,32,0,47,1,44,65,252,255,3,113,32,3,32,2,65,1,116,114,65,255,1,113,114,59,1,44,11,32,6,32,0,173,34,56,32,57,66,32,134,132,55,3,248,2,32,56,66,8,136,167,33,16,65,0,33,2,12,1,11,11,32,5,32,17,16,80,4,64,32,5,40,2,132,9,40,2,0,32,47,106,40,2,0,47,1,0,33,13,32,6,32,6,41,3,248,2,55,3,8,32,33,32,6,65,8,106,16,10,65,1,33,2,32,4,33,0,12,4,11,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,32,2,65,1,113,4,127,32,16,65,255,1,113,5,32,6,40,2,248,2,47,1,40,11,33,0,32,5,40,2,160,9,33,3,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,3,40,2,8,32,3,40,2,4,106,32,0,77,13,0,32,3,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,16,32,1,65,128,8,35,1,65,196,7,106,32,6,65,16,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,5,40,2,132,9,40,2,0,32,17,65,5,116,106,34,0,32,6,41,3,248,2,55,2,20,65,1,33,2,32,0,65,1,54,2,28,32,0,32,0,40,2,0,40,2,156,1,54,2,8,12,4,11,2,64,2,64,32,18,40,2,24,34,2,32,13,77,4,64,32,18,40,2,44,32,18,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,11,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,9,71,13,0,11,12,2,11,32,18,40,2,40,32,18,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,18,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,65,0,33,2,12,1,11,11,2,64,32,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,5,32,6,65,248,2,106,32,13,32,5,65,244,9,106,16,54,32,5,40,2,160,9,32,13,2,127,32,6,45,0,248,2,65,1,113,4,64,32,6,40,2,248,2,33,0,32,6,45,0,249,2,12,1,11,32,6,40,2,248,2,34,0,47,1,40,11,65,255,255,3,113,16,43,33,9,11,32,6,40,2,252,2,33,12,2,64,2,64,2,64,2,64,32,0,65,1,113,4,64,32,6,32,0,173,32,12,173,66,32,134,132,55,3,216,3,65,1,33,4,32,0,65,3,118,32,15,115,65,1,113,13,1,32,5,40,2,132,9,32,6,32,6,41,3,216,3,55,3,72,32,17,32,6,65,200,0,106,65,0,32,9,65,255,255,3,113,16,23,12,4,11,32,0,40,2,36,33,2,32,6,32,0,173,32,12,173,66,32,134,132,34,56,55,3,216,3,2,64,32,15,65,1,113,32,0,45,0,44,65,4,113,65,2,118,70,13,0,32,2,13,0,32,2,69,33,4,32,6,32,56,55,3,128,3,32,0,40,2,0,65,1,70,4,64,32,0,33,7,12,3,11,32,0,40,2,36,65,3,116,65,204,0,106,34,1,35,7,40,2,0,17,0,0,33,8,32,1,4,64,32,8,32,0,32,0,40,2,36,65,3,116,107,32,1,252,10,0,0,11,32,8,32,0,40,2,36,34,1,65,3,116,106,33,7,2,64,32,1,4,64,65,0,33,2,3,64,32,8,32,2,65,3,116,106,40,2,0,34,3,65,1,113,69,4,64,32,3,32,3,40,2,0,65,1,106,54,2,0,32,3,40,2,0,26,32,0,40,2,36,33,1,11,32,2,65,1,106,34,2,32,1,73,13,0,11,12,1,11,32,0,45,0,44,65,192,0,113,69,13,0,32,0,40,2,48,33,2,32,6,32,0,41,2,68,55,3,160,3,32,6,32,0,41,2,60,55,3,152,3,32,6,32,0,41,2,52,55,3,144,3,2,64,32,0,40,2,72,34,1,65,25,73,13,0,32,1,35,7,40,2,0,17,0,0,33,2,32,0,40,2,72,34,1,69,13,0,32,2,32,0,40,2,48,32,1,252,10,0,0,11,32,7,32,2,54,2,48,32,7,32,6,41,3,144,3,55,2,52,32,7,32,6,41,3,152,3,55,2,60,32,7,32,6,41,3,160,3,55,2,68,11,32,7,65,1,54,2,0,32,6,32,6,41,3,128,3,55,3,80,32,33,32,6,65,208,0,106,16,10,65,0,33,12,32,7,33,0,12,2,11,32,5,40,2,132,9,32,6,32,6,41,3,216,3,55,3,88,32,17,32,6,65,216,0,106,32,2,65,0,71,32,9,65,255,255,3,113,16,23,12,2,11,32,0,33,7,11,32,6,32,7,65,1,113,4,127,32,7,65,119,113,65,8,65,0,32,15,65,1,113,27,114,5,32,0,32,0,47,1,44,65,251,255,3,113,65,4,65,0,32,15,65,1,113,27,114,59,1,44,32,7,11,34,0,173,32,12,173,66,32,134,132,34,56,55,3,216,3,32,5,40,2,132,9,32,6,32,56,55,3,64,32,17,32,6,65,64,107,32,4,65,1,115,32,9,65,255,255,3,113,16,23,32,7,65,1,113,13,1,11,32,0,45,0,44,65,192,0,113,69,13,0,32,5,40,2,132,9,33,7,2,64,32,0,65,1,113,69,4,64,32,0,40,2,36,34,9,4,64,3,64,32,0,32,9,65,3,116,107,33,4,32,9,33,2,3,64,2,64,2,64,32,4,32,2,65,1,107,34,2,65,3,116,106,34,3,40,2,0,34,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,1,40,2,36,33,9,32,3,40,2,4,33,12,32,1,33,0,12,1,11,32,2,13,1,11,11,32,9,13,0,11,11,32,7,40,2,0,32,17,65,5,116,106,33,2,32,0,69,13,1,32,0,65,1,113,13,1,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,12,1,11,32,7,40,2,0,32,17,65,5,116,106,33,2,65,0,33,0,65,0,33,12,11,32,2,40,2,12,4,64,32,7,40,2,52,32,6,32,2,41,2,12,55,3,56,32,6,65,56,106,16,10,11,32,2,32,12,54,2,16,32,2,32,0,54,2,12,11,65,1,33,2,32,51,69,13,0,32,5,65,244,9,106,16,40,11,32,6,65,224,3,106,36,0,32,2,69,13,3,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,32,38,32,5,40,2,132,9,34,2,40,2,0,34,7,32,46,106,34,1,40,2,0,40,2,4,34,9,73,4,64,32,9,33,38,12,2,11,32,17,65,0,32,9,32,38,70,27,69,4,64,32,1,40,2,28,13,2,12,1,11,11,32,38,33,9,11,65,0,33,14,32,17,65,1,106,34,17,32,2,40,2,4,34,0,73,13,0,11,65,0,33,7,65,127,33,27,65,0,33,34,32,0,69,4,64,65,1,33,14,12,3,11,3,64,2,64,32,2,40,2,0,32,7,65,5,116,106,34,8,40,2,28,34,1,65,2,70,4,64,32,2,32,7,16,17,12,1,11,32,8,40,2,0,34,13,40,2,152,1,33,2,2,64,32,1,65,1,70,34,4,69,4,64,32,13,47,1,0,13,1,32,13,40,2,20,13,1,11,32,2,65,244,3,106,33,2,11,32,13,40,2,156,1,34,0,32,8,40,2,8,34,3,73,4,64,32,8,32,0,54,2,8,32,0,33,3,11,32,13,40,2,160,1,33,11,32,1,65,1,70,4,127,65,1,5,32,2,32,27,32,2,32,27,73,27,32,27,32,13,47,1,0,34,1,27,33,27,32,1,69,11,33,15,32,7,69,4,64,65,1,33,7,12,1,11,32,2,65,228,0,106,32,2,32,4,27,33,24,32,0,32,3,107,65,1,106,33,12,65,0,33,17,3,64,32,5,40,2,132,9,34,21,40,2,0,34,8,32,17,65,5,116,34,19,106,34,22,40,2,0,34,2,40,2,152,1,33,1,2,64,32,22,40,2,28,34,16,65,1,70,34,18,69,4,64,32,1,33,4,32,2,47,1,0,13,1,32,2,40,2,20,13,1,11,32,1,65,244,3,106,33,4,11,32,2,40,2,156,1,34,0,32,22,40,2,8,34,14,73,4,64,32,22,32,0,54,2,8,32,0,33,14,11,32,2,40,2,160,1,33,3,65,0,33,13,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,15,32,2,47,1,0,65,0,71,34,13,113,69,13,0,32,4,32,24,73,13,1,12,6,11,32,4,65,228,0,106,32,4,32,18,27,33,4,32,13,32,15,114,69,4,64,32,4,32,24,77,13,3,12,4,11,32,4,32,24,79,4,64,32,4,32,24,77,13,2,32,4,32,24,107,32,12,108,65,136,14,75,13,4,12,3,11,32,0,32,14,107,65,1,106,32,24,32,4,107,108,65,137,14,73,13,5,11,32,8,32,7,65,5,116,34,3,106,34,4,40,2,0,4,64,32,21,40,2,52,33,1,32,4,40,2,12,4,64,32,10,32,4,41,2,12,55,3,88,32,1,32,10,65,216,0,106,16,10,11,32,4,40,2,20,4,64,32,10,32,4,41,2,20,55,3,80,32,1,32,10,65,208,0,106,16,10,11,32,4,40,2,4,34,2,4,64,32,2,40,2,0,34,0,4,64,32,0,35,8,40,2,0,17,2,0,32,4,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,4,40,2,0,32,21,65,36,106,32,1,16,26,32,21,40,2,0,33,8,11,32,21,40,2,4,32,7,65,127,115,106,65,5,116,34,1,4,64,32,3,32,8,106,34,0,32,0,65,32,106,32,1,252,10,0,0,11,32,21,32,21,40,2,4,65,1,107,54,2,4,12,6,11,32,3,32,11,78,13,3,11,32,8,32,7,65,5,116,106,33,18,2,64,32,16,13,0,32,18,40,2,28,13,0,32,2,47,1,0,34,4,32,18,40,2,0,34,3,47,1,0,71,13,0,32,2,40,2,4,32,3,40,2,4,71,13,0,32,1,32,3,40,2,152,1,71,13,0,35,1,65,148,12,106,34,0,33,14,32,18,40,2,12,33,13,2,64,32,22,40,2,12,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,14,11,35,1,65,148,12,106,34,0,33,8,2,64,32,13,69,13,0,32,13,65,1,113,13,0,32,13,45,0,44,65,192,0,113,69,13,0,32,0,32,13,65,48,106,32,13,40,2,36,27,33,8,11,32,14,40,2,24,33,0,2,64,32,8,40,2,24,34,1,65,25,79,4,64,32,0,32,1,71,13,2,32,14,40,2,0,33,14,32,8,40,2,0,33,8,12,1,11,32,0,32,1,71,13,1,11,32,14,32,8,32,1,16,18,13,0,32,3,47,1,144,1,4,127,65,0,33,2,3,64,32,21,40,2,52,33,4,32,22,40,2,0,32,10,32,3,32,2,65,4,116,106,34,0,41,2,24,55,3,120,32,10,32,0,41,2,16,55,3,112,32,10,65,240,0,106,32,4,16,32,32,2,65,1,106,34,2,32,18,40,2,0,34,3,47,1,144,1,73,13,0,11,32,22,40,2,0,34,2,47,1,0,5,32,4,11,65,255,255,3,113,13,4,32,22,32,2,40,2,156,1,54,2,8,32,21,32,7,16,17,12,5,11,32,10,32,18,41,2,24,55,3,208,1,32,10,32,18,41,2,16,55,3,200,1,32,10,32,18,41,2,8,55,3,192,1,32,10,32,18,41,2,0,55,3,184,1,32,18,32,22,41,2,0,55,2,0,32,18,32,22,41,2,8,55,2,8,32,18,32,22,41,2,16,55,2,16,32,18,32,22,41,2,24,55,2,24,32,21,40,2,0,32,19,106,34,0,32,10,41,3,184,1,55,2,0,32,0,32,10,41,3,192,1,55,2,8,32,0,32,10,41,3,200,1,55,2,16,32,0,32,10,41,3,208,1,55,2,24,12,1,11,32,21,40,2,52,33,1,32,22,40,2,12,4,64,32,10,32,22,41,2,12,55,3,104,32,1,32,10,65,232,0,106,16,10,11,32,22,40,2,20,4,64,32,10,32,22,41,2,20,55,3,96,32,1,32,10,65,224,0,106,16,10,11,32,22,40,2,4,34,2,4,64,32,2,40,2,0,34,0,4,64,32,0,35,8,40,2,0,17,2,0,32,22,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,22,40,2,0,32,21,65,36,106,32,1,16,26,32,21,40,2,4,32,17,65,127,115,106,65,5,116,34,1,4,64,32,21,40,2,0,32,19,106,34,0,32,0,65,32,106,32,1,252,10,0,0,11,32,21,32,21,40,2,4,65,1,107,54,2,4,32,17,65,1,107,33,17,32,7,65,1,107,33,7,11,65,1,33,34,12,3,11,32,16,13,2,32,8,32,7,65,5,116,106,34,13,40,2,28,13,2,32,2,47,1,0,34,4,32,13,40,2,0,34,3,47,1,0,71,13,2,32,2,40,2,4,32,3,40,2,4,71,13,2,32,1,32,3,40,2,152,1,71,13,2,35,1,65,148,12,106,34,0,33,14,32,13,40,2,12,33,18,2,64,32,22,40,2,12,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,14,11,35,1,65,148,12,106,34,0,33,8,2,64,32,18,69,13,0,32,18,65,1,113,13,0,32,18,45,0,44,65,192,0,113,69,13,0,32,0,32,18,65,48,106,32,18,40,2,36,27,33,8,11,32,14,40,2,24,33,0,2,64,32,8,40,2,24,34,1,65,25,79,4,64,32,0,32,1,71,13,4,32,14,40,2,0,33,14,32,8,40,2,0,33,8,12,1,11,32,0,32,1,71,13,3,11,32,14,32,8,32,1,16,18,13,2,32,3,47,1,144,1,4,127,65,0,33,2,3,64,32,21,40,2,52,33,4,32,22,40,2,0,32,10,32,3,32,2,65,4,116,106,34,0,41,2,24,55,3,72,32,10,32,0,41,2,16,55,3,64,32,10,65,64,107,32,4,16,32,32,2,65,1,106,34,2,32,13,40,2,0,34,3,47,1,144,1,73,13,0,11,32,22,40,2,0,34,2,47,1,0,5,32,4,11,65,255,255,3,113,13,0,32,22,32,2,40,2,156,1,54,2,8,11,32,21,32,7,16,17,11,65,1,33,34,32,7,65,1,107,34,7,33,17,11,32,17,65,1,106,34,17,32,7,73,13,0,11,32,7,65,1,106,33,7,11,32,7,32,5,40,2,132,9,34,2,40,2,4,34,26,73,13,0,11,32,26,65,6,75,4,64,3,64,32,2,65,6,16,17,32,5,40,2,132,9,34,2,40,2,4,34,26,65,6,75,13,0,11,65,1,33,34,11,65,0,33,11,65,0,33,2,32,26,4,64,3,64,2,64,32,11,65,5,116,34,36,32,5,40,2,132,9,34,0,40,2,0,106,40,2,28,65,1,71,4,64,65,1,33,2,12,1,11,2,64,2,64,32,2,65,1,113,13,0,32,5,40,2,144,10,65,5,75,13,0,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,10,32,11,54,2,48,32,23,65,128,8,35,1,65,59,106,32,10,65,48,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,23,32,0,17,3,0,11,32,23,33,2,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,0,32,11,16,17,32,26,65,1,107,33,26,32,11,65,1,107,33,11,65,1,33,34,12,1,11,32,5,40,2,132,9,40,2,0,32,36,106,34,1,40,2,0,34,0,40,2,152,1,33,27,2,64,32,1,40,2,28,65,1,71,4,64,32,0,47,1,0,13,1,32,0,40,2,20,13,1,11,32,27,65,244,3,106,33,27,11,32,1,65,0,54,2,28,32,1,41,2,20,33,56,32,1,66,0,55,2,20,32,10,32,56,55,3,176,1,32,5,40,2,132,9,40,2,4,33,18,32,5,32,11,65,0,16,83,26,32,56,167,33,0,32,5,40,2,132,9,34,2,40,2,4,34,31,32,11,75,4,64,32,2,40,2,0,32,36,106,40,2,0,34,1,40,2,4,33,12,32,1,41,2,8,34,57,66,32,136,167,33,22,32,56,66,8,136,167,33,32,32,57,167,33,46,65,0,33,37,32,0,33,3,32,11,33,8,3,64,2,64,32,37,4,64,65,1,33,37,12,1,11,65,0,33,37,32,5,40,2,160,9,34,7,47,1,12,65,254,255,3,113,69,13,0,32,8,65,5,116,34,21,32,5,40,2,132,9,40,2,0,106,40,2,0,47,1,0,33,30,65,1,33,17,3,64,2,64,2,64,32,17,65,253,255,3,75,13,0,2,64,2,64,32,7,40,2,24,34,20,32,30,77,4,64,32,7,40,2,44,32,7,40,2,48,32,30,32,20,107,65,2,116,106,40,2,0,65,1,116,106,34,1,47,1,0,34,16,69,4,64,65,0,33,1,12,3,11,32,1,65,2,106,33,4,65,0,33,13,3,64,32,4,65,4,106,33,1,32,4,47,1,2,34,19,4,127,32,1,32,19,65,1,116,106,65,0,33,2,3,64,32,17,32,1,47,1,0,70,13,4,32,1,65,2,106,33,1,32,2,65,1,106,34,2,32,19,71,13,0,11,5,32,1,11,33,4,65,0,33,1,32,13,65,1,106,34,13,32,16,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,30,108,65,1,116,106,32,17,65,1,116,106,47,1,0,33,1,12,1,11,32,4,47,1,0,33,1,11,32,7,40,2,52,34,24,32,1,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,1,69,13,0,32,2,32,1,65,3,116,106,34,1,45,0,0,13,0,32,30,32,1,65,8,106,34,1,65,6,107,47,1,0,32,1,65,4,107,45,0,0,65,1,113,27,34,15,65,255,255,3,113,34,1,69,13,0,32,1,32,30,70,13,0,2,64,2,64,32,3,65,1,113,4,64,32,32,65,255,1,113,33,4,65,1,33,3,12,1,11,32,10,40,2,176,1,34,0,65,8,118,33,32,32,0,33,3,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,4,65,253,255,3,75,13,1,11,2,64,2,64,32,1,32,20,79,4,64,32,7,40,2,44,32,7,40,2,48,32,1,32,20,107,65,2,116,106,40,2,0,65,1,116,106,34,1,47,1,0,34,19,69,4,64,65,0,33,1,12,3,11,32,1,65,2,106,33,13,65,0,33,14,3,64,32,13,65,4,106,33,1,32,13,47,1,2,34,20,4,127,32,1,32,20,65,1,116,106,65,0,33,2,3,64,32,1,47,1,0,32,4,70,13,4,32,1,65,2,106,33,1,32,2,65,1,106,34,2,32,20,71,13,0,11,5,32,1,11,33,13,65,0,33,1,32,14,65,1,106,34,14,32,19,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,1,108,65,1,116,106,32,4,65,1,116,106,47,1,0,33,1,12,1,11,32,13,47,1,0,33,1,11,32,24,32,1,65,255,255,3,113,65,3,116,106,34,1,45,0,0,69,13,1,32,1,45,0,8,65,1,71,13,1,2,64,32,5,40,2,32,32,12,70,4,64,32,5,40,2,100,33,7,32,5,40,2,104,33,1,32,12,33,14,12,1,11,65,0,33,1,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,57,55,2,36,32,5,32,12,54,2,32,32,5,40,2,68,33,4,2,64,2,127,32,5,40,2,100,34,7,4,64,3,64,2,64,32,4,32,1,65,24,108,106,34,3,40,2,20,34,2,32,12,77,13,0,32,2,32,3,40,2,16,34,0,77,13,0,32,0,32,12,34,14,79,4,64,32,5,32,3,41,2,0,55,2,36,32,5,32,0,54,2,32,32,0,33,14,11,32,5,32,1,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,14,32,5,40,2,108,34,0,73,13,3,26,65,0,34,2,32,14,32,5,40,2,112,32,0,106,79,13,3,26,12,4,11,32,1,65,1,106,34,1,32,7,71,13,0,11,11,32,5,32,7,54,2,104,32,4,32,7,65,24,108,106,34,0,65,4,107,40,2,0,33,14,32,5,32,0,65,16,107,41,2,0,55,2,36,32,5,32,14,54,2,32,32,7,33,1,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,2,127,2,64,32,1,32,7,70,13,0,32,1,69,13,0,32,14,32,5,40,2,68,32,1,65,24,108,106,34,1,40,2,16,71,13,0,32,1,65,4,107,40,2,0,33,0,32,5,32,1,65,16,107,41,2,0,34,56,55,2,60,32,5,32,0,54,2,56,32,56,66,32,136,167,33,14,32,56,167,12,1,11,32,5,32,5,41,2,32,55,2,56,32,5,32,5,40,2,40,54,2,64,32,5,40,2,64,33,14,32,5,40,2,56,33,0,32,5,40,2,60,11,33,20,2,127,32,10,40,2,176,1,34,1,65,1,113,4,64,32,10,45,0,182,1,32,10,45,0,183,1,106,33,13,32,10,45,0,181,1,65,4,118,12,1,11,32,1,40,2,16,32,1,40,2,4,106,33,13,32,1,40,2,28,11,33,19,32,10,32,5,40,2,132,9,34,28,40,2,0,34,7,32,21,106,34,1,41,2,24,55,3,208,1,32,10,32,1,41,2,16,55,3,200,1,32,10,32,1,41,2,8,55,3,192,1,32,10,32,1,41,2,0,55,3,184,1,32,28,32,28,40,2,4,34,3,65,1,106,34,2,32,28,40,2,8,34,1,75,4,127,32,7,65,8,32,1,65,1,116,34,1,32,2,32,1,32,2,75,27,34,1,32,1,65,8,77,27,34,1,65,5,116,35,6,40,2,0,17,1,0,33,7,32,28,32,1,54,2,8,32,28,40,2,4,34,3,65,1,106,5,32,2,11,54,2,4,32,28,32,7,54,2,0,32,7,32,3,65,5,116,106,34,1,32,10,41,3,184,1,55,2,0,32,1,32,10,41,3,208,1,55,2,24,32,1,32,10,41,3,200,1,55,2,16,32,1,32,10,41,3,192,1,55,2,8,32,28,40,2,0,32,28,40,2,4,34,4,65,5,116,106,34,24,65,32,107,40,2,0,34,1,4,64,32,1,32,1,40,2,148,1,65,1,106,54,2,148,1,11,32,14,32,22,107,34,1,65,0,32,1,32,14,77,27,33,16,32,20,32,46,75,33,7,32,20,32,20,32,46,107,34,3,73,33,2,32,0,32,12,107,34,1,32,0,75,33,0,2,64,32,24,65,20,107,40,2,0,34,20,69,13,0,32,20,65,1,113,13,0,32,20,32,20,40,2,0,65,1,106,54,2,0,32,20,40,2,0,26,32,28,40,2,4,33,4,11,32,14,32,16,32,7,27,33,20,65,0,32,3,32,2,27,33,16,65,0,32,1,32,0,27,33,14,32,13,32,19,106,33,7,32,24,65,28,107,65,0,54,2,0,32,5,40,2,160,9,40,2,72,32,17,65,3,108,106,34,0,45,0,1,33,3,32,0,45,0,0,33,2,2,126,2,64,32,17,65,255,1,75,13,0,32,14,65,254,1,75,13,0,32,16,65,15,75,13,0,32,20,65,254,1,75,13,0,32,7,65,15,75,13,0,32,3,65,2,116,32,2,65,1,116,106,65,1,114,65,255,1,113,32,17,65,8,116,114,33,1,32,7,65,12,116,32,16,65,8,116,114,32,14,65,16,116,114,32,20,114,173,66,32,134,12,1,11,32,16,173,32,20,173,66,32,134,132,33,56,2,127,32,5,40,2,140,9,34,0,4,64,32,5,32,0,65,1,107,34,0,54,2,140,9,32,5,40,2,136,9,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,1,32,10,66,0,55,3,192,1,32,10,66,0,55,3,200,1,32,10,65,0,54,2,208,1,32,10,32,14,54,2,136,2,32,10,32,56,55,3,128,2,32,10,65,0,54,2,248,1,32,10,65,0,54,2,244,1,32,10,65,0,54,2,240,1,32,10,32,7,54,2,236,1,32,10,65,0,54,2,232,1,32,10,65,0,54,2,228,1,32,10,32,17,59,1,224,1,32,10,65,0,59,1,222,1,32,10,65,0,59,1,218,1,32,10,66,0,55,3,184,1,32,10,65,1,54,2,140,2,32,10,32,3,65,1,116,32,2,106,65,255,1,113,59,1,220,1,32,1,32,10,40,2,140,2,54,2,0,32,1,32,10,40,2,136,2,54,2,4,32,1,32,10,41,3,128,2,55,2,8,32,1,32,10,40,2,248,1,54,2,16,32,1,32,10,40,2,244,1,54,2,20,32,1,32,10,40,2,240,1,54,2,24,32,1,32,10,40,2,236,1,54,2,28,32,1,32,10,40,2,232,1,54,2,32,32,1,32,10,40,2,228,1,54,2,36,32,1,32,10,47,1,224,1,59,1,40,32,1,32,10,47,1,222,1,59,1,42,32,1,32,10,47,1,220,1,59,1,44,32,1,32,10,47,1,218,1,59,1,46,32,1,32,10,40,2,208,1,54,2,72,32,1,65,64,107,32,10,41,3,200,1,55,2,0,32,1,32,10,41,3,192,1,55,2,56,32,1,32,10,41,3,184,1,55,2,48,66,0,11,33,56,32,4,65,1,107,33,24,2,64,32,1,65,1,113,4,64,32,1,65,32,114,33,1,12,1,11,32,1,32,1,47,1,44,65,128,4,114,59,1,44,11,32,24,65,5,116,34,16,32,5,40,2,132,9,34,2,40,2,0,106,34,7,40,2,0,33,3,2,127,32,2,40,2,40,34,0,4,64,32,2,32,0,65,1,107,34,0,54,2,40,32,2,40,2,36,32,0,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,20,32,15,59,1,0,32,20,65,2,106,65,0,65,146,1,252,11,0,32,20,66,0,55,2,152,1,32,20,65,1,54,2,148,1,32,20,65,0,54,2,160,1,2,64,2,127,2,64,32,3,4,64,32,20,32,56,32,1,173,132,55,2,20,32,20,32,3,54,2,16,32,20,65,1,59,1,144,1,32,20,32,3,41,2,4,55,2,4,32,20,32,3,40,2,12,54,2,12,32,20,32,3,40,2,152,1,34,0,54,2,152,1,32,20,32,3,40,2,160,1,34,4,54,2,160,1,32,20,32,3,40,2,156,1,34,19,54,2,156,1,32,1,65,1,113,34,3,13,1,32,20,32,1,45,0,45,65,2,113,4,127,65,226,4,5,32,1,40,2,32,11,32,0,106,54,2,152,1,65,0,32,1,40,2,12,32,1,40,2,20,34,2,27,33,0,32,1,40,2,16,32,1,40,2,4,106,33,13,32,2,32,1,40,2,8,106,33,14,32,1,40,2,24,12,2,11,32,20,66,0,55,2,4,32,20,65,0,54,2,12,12,2,11,32,20,32,0,32,1,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,56,66,32,136,167,65,255,1,113,33,0,32,56,66,40,136,167,65,15,113,33,14,32,56,66,48,136,167,33,13,65,0,11,33,2,32,20,32,20,40,2,4,32,13,106,54,2,4,32,20,32,20,40,2,8,32,14,106,173,32,0,32,2,106,65,0,32,20,40,2,12,32,14,27,106,173,66,32,134,132,55,2,8,2,64,32,3,69,4,64,65,0,33,14,32,20,32,1,40,2,36,34,0,4,127,32,1,40,2,56,5,65,0,11,32,19,106,32,1,47,1,44,65,1,113,106,32,1,47,1,40,65,254,255,3,70,106,54,2,156,1,32,0,69,13,1,32,1,40,2,60,33,14,12,1,11,32,20,32,19,32,1,65,1,118,65,1,113,106,54,2,156,1,65,0,33,14,11,32,20,32,4,32,14,106,54,2,160,1,11,32,7,32,20,54,2,0,32,5,32,24,2,127,32,10,45,0,176,1,65,1,113,4,64,65,1,33,0,32,10,45,0,177,1,34,32,12,1,11,32,10,40,2,176,1,34,0,65,8,118,33,32,32,0,40,2,36,69,4,64,32,0,47,1,40,12,1,11,32,0,47,1,68,11,65,255,255,3,113,16,83,13,2,32,5,40,2,160,9,33,7,11,32,0,33,3,11,32,17,65,1,106,34,17,32,7,47,1,12,73,13,1,12,2,11,11,2,64,2,64,32,5,40,2,96,13,0,32,5,40,2,140,10,13,0,65,1,33,37,12,1,11,65,0,33,1,32,17,32,5,40,2,160,9,34,2,40,2,8,32,2,40,2,4,106,73,4,64,32,2,40,2,56,32,17,65,2,116,106,40,2,0,33,1,11,32,10,32,5,40,2,132,9,40,2,0,32,16,106,40,2,0,47,1,0,54,2,36,32,10,32,1,54,2,32,32,23,65,128,8,35,1,65,184,2,106,32,10,65,32,106,16,11,26,32,5,40,2,96,34,1,4,64,32,5,40,2,92,65,0,32,23,32,1,17,3,0,11,65,1,33,37,32,23,33,2,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,69,13,3,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,0,33,3,11,32,5,40,2,132,9,34,2,40,2,0,32,8,65,5,116,106,34,4,40,2,0,33,7,2,127,32,2,40,2,40,34,1,4,64,32,2,32,1,65,1,107,34,1,54,2,40,32,2,40,2,36,32,1,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,1,65,0,65,148,1,252,11,0,32,1,66,0,55,2,152,1,32,1,65,1,54,2,148,1,32,1,65,0,54,2,160,1,2,64,32,7,4,64,32,1,66,0,55,2,20,32,1,32,7,54,2,16,32,1,65,1,59,1,144,1,32,1,65,0,54,2,28,32,1,32,7,41,2,4,55,2,4,32,1,32,7,40,2,12,54,2,12,32,1,32,7,40,2,152,1,54,2,152,1,32,1,32,7,40,2,160,1,54,2,160,1,32,1,32,7,40,2,156,1,34,2,54,2,156,1,12,1,11,32,1,66,0,55,2,4,65,0,33,2,32,1,65,0,54,2,12,11,32,4,32,1,54,2,0,32,4,32,2,54,2,8,32,18,32,8,65,1,106,32,8,32,11,70,27,34,8,32,31,73,13,0,11,32,5,40,2,132,9,33,2,11,2,64,32,18,32,31,79,13,0,32,18,33,1,32,2,40,2,0,32,36,106,40,2,28,13,0,3,64,2,64,32,5,40,2,132,9,34,12,40,2,0,34,2,32,36,106,34,19,40,2,28,13,0,32,2,32,18,65,5,116,106,34,16,40,2,28,13,0,32,19,40,2,0,34,4,47,1,0,34,2,32,16,40,2,0,34,7,47,1,0,71,13,0,32,4,40,2,4,32,7,40,2,4,71,13,0,32,4,40,2,152,1,32,7,40,2,152,1,71,13,0,35,1,65,148,12,106,33,13,32,16,40,2,12,33,8,2,64,32,19,40,2,12,34,3,69,13,0,32,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,32,13,32,3,65,48,106,32,3,40,2,36,27,33,13,11,35,1,65,148,12,106,33,14,2,64,32,8,69,13,0,32,8,65,1,113,13,0,32,8,45,0,44,65,192,0,113,69,13,0,32,14,32,8,65,48,106,32,8,40,2,36,27,33,14,11,32,13,40,2,24,33,3,2,64,32,14,40,2,24,34,8,65,25,79,4,64,32,3,32,8,71,13,2,32,13,40,2,0,33,13,32,14,40,2,0,33,14,12,1,11,32,3,32,8,71,13,1,11,32,13,32,14,32,8,16,18,13,0,32,7,47,1,144,1,4,127,65,0,33,4,3,64,32,12,40,2,52,33,8,32,19,40,2,0,32,10,32,7,32,4,65,4,116,106,34,2,41,2,24,55,3,24,32,10,32,2,41,2,16,55,3,16,32,10,65,16,106,32,8,16,32,32,4,65,1,106,34,4,32,16,40,2,0,34,7,47,1,144,1,73,13,0,11,32,19,40,2,0,34,4,47,1,0,5,32,2,11,65,255,255,3,113,69,4,64,32,19,32,4,40,2,156,1,54,2,8,11,32,12,32,18,16,17,11,32,1,65,1,106,34,1,32,31,71,13,0,11,32,5,40,2,132,9,33,2,11,65,12,35,7,40,2,0,17,0,0,33,1,32,10,65,16,54,2,132,2,32,10,32,1,54,2,128,2,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,10,65,184,1,106,32,2,32,11,35,2,65,6,106,32,10,65,128,2,106,65,127,16,25,32,2,40,2,0,32,36,106,34,3,40,2,4,34,1,4,64,32,1,40,2,0,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,3,40,2,4,33,1,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,11,32,3,32,10,40,2,128,2,54,2,4,2,64,32,0,65,1,113,13,0,32,10,40,2,176,1,40,2,36,69,13,0,32,5,32,10,65,176,1,106,65,0,32,55,16,54,11,32,10,32,10,41,3,176,1,55,3,8,32,5,32,11,32,10,65,8,106,16,82,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,65,1,33,2,11,32,11,65,1,106,34,11,32,26,73,13,0,11,11,65,0,33,14,32,34,69,13,2,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,3,32,23,35,1,65,194,8,106,34,0,41,0,0,55,0,0,32,23,32,0,45,0,8,58,0,8,12,2,11,32,23,35,1,65,194,8,106,34,0,41,0,0,55,0,0,32,23,32,0,45,0,8,58,0,8,32,5,40,2,92,65,0,32,23,32,1,17,3,0,32,5,40,2,140,10,13,1,12,2,11,65,0,33,1,32,5,45,0,196,10,13,4,12,5,11,32,23,33,2,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,40,2,140,10,34,0,69,13,3,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,2,64,32,5,40,2,180,9,34,0,69,13,0,2,127,32,0,65,26,116,65,31,117,65,226,4,113,32,0,65,1,113,13,0,26,65,226,4,32,0,45,0,45,65,2,113,13,0,26,32,0,40,2,32,11,32,27,79,13,0,32,5,40,2,132,9,16,57,12,2,11,2,64,32,5,40,2,192,10,34,1,32,5,40,2,164,10,34,2,79,13,0,32,54,40,2,0,33,0,3,64,32,0,32,1,65,24,108,106,40,2,20,32,9,75,13,1,32,5,32,1,65,1,106,34,1,54,2,192,10,32,1,32,2,71,13,0,11,11,32,14,69,13,0,11,11,2,64,32,5,45,0,197,10,13,0,32,5,41,2,180,9,33,56,32,5,65,0,54,2,152,9,32,56,167,34,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,0,40,2,0,65,1,71,13,0,32,5,40,2,148,9,33,1,65,0,33,2,32,5,40,2,156,9,69,4,64,2,127,32,1,4,64,32,1,65,192,0,35,6,40,2,0,17,1,0,12,1,11,65,192,0,35,7,40,2,0,17,0,0,11,33,1,32,5,65,8,54,2,156,9,32,5,40,2,152,9,33,2,11,32,5,32,1,54,2,148,9,32,5,32,2,65,1,106,54,2,152,9,32,1,32,2,65,3,116,106,32,56,55,2,0,11,2,127,2,64,2,64,32,5,40,2,152,9,34,17,4,64,32,5,65,148,9,106,33,11,32,5,65,180,10,106,33,23,3,64,32,5,32,5,40,2,148,10,65,1,106,34,0,65,0,32,0,65,227,0,77,27,34,0,54,2,148,10,2,64,32,0,13,0,32,5,40,2,176,10,34,0,69,13,0,32,23,32,0,17,0,0,13,3,32,5,40,2,152,9,33,17,11,32,10,32,11,40,2,0,32,17,65,3,116,106,65,8,107,41,2,0,34,56,55,3,184,1,2,64,32,56,167,34,14,47,1,64,69,13,0,32,14,65,8,107,40,2,0,33,1,32,14,32,14,40,2,36,65,3,116,107,40,2,0,34,0,65,1,113,4,127,65,0,5,32,0,47,1,64,11,32,1,65,1,113,4,127,65,0,5,32,1,47,1,64,11,107,34,1,65,2,72,13,0,3,64,32,5,40,2,160,9,33,13,32,10,32,10,41,3,184,1,55,3,0,65,0,33,8,35,0,65,48,107,34,18,36,0,32,11,40,2,4,33,7,32,18,32,10,41,2,0,34,56,55,3,40,2,64,32,1,34,0,65,1,118,34,1,69,13,0,32,56,167,34,12,47,1,40,33,4,3,64,2,64,32,12,40,2,0,65,1,75,13,0,32,12,40,2,36,34,2,65,2,73,13,0,32,12,32,2,65,3,116,107,34,3,41,2,0,34,56,167,34,9,65,1,113,13,0,32,9,40,2,36,34,2,65,2,73,13,0,32,9,40,2,0,65,1,75,13,0,32,9,47,1,40,32,4,71,13,0,32,9,32,2,65,3,116,107,41,2,0,34,57,167,34,12,65,1,113,13,0,32,12,40,2,36,65,2,73,13,0,32,12,40,2,0,65,1,75,13,0,32,12,47,1,40,32,4,71,13,0,32,3,32,57,55,2,0,32,9,32,9,40,2,36,65,3,116,107,32,12,65,8,107,34,2,41,2,0,55,2,0,32,2,32,56,55,2,0,32,11,40,2,0,33,9,32,11,32,11,40,2,4,34,38,65,1,106,34,3,32,11,40,2,8,34,2,75,4,127,65,8,32,2,65,1,116,34,2,32,3,32,2,32,3,75,27,34,2,32,2,65,8,77,27,34,2,65,3,116,33,3,2,127,32,9,4,64,32,9,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,9,32,11,32,2,54,2,8,32,11,40,2,4,34,38,65,1,106,5,32,3,11,54,2,4,32,11,32,9,54,2,0,32,9,32,38,65,3,116,106,32,18,41,3,40,55,2,0,32,18,32,57,66,32,136,62,2,44,32,18,32,12,54,2,40,32,8,65,1,106,34,8,32,1,71,13,1,11,11,32,11,40,2,4,34,12,32,7,77,13,0,3,64,32,11,32,12,65,1,107,34,2,54,2,4,32,18,32,11,40,2,0,32,2,65,3,116,106,41,2,0,34,56,55,3,40,32,18,32,56,167,34,2,32,2,40,2,36,65,3,116,107,41,2,0,34,56,55,3,32,32,18,32,56,167,65,8,107,41,2,0,34,56,55,3,16,32,18,32,56,55,3,24,32,18,65,16,106,32,13,16,21,32,18,32,18,41,3,32,55,3,8,32,18,65,8,106,32,13,16,21,32,18,32,18,41,3,40,55,3,0,32,18,32,13,16,21,32,11,40,2,4,34,12,32,7,75,13,0,11,11,32,18,65,48,106,36,0,32,5,32,5,40,2,148,10,65,16,32,1,32,1,65,16,77,27,65,4,118,65,255,1,113,106,34,2,65,0,32,2,65,227,0,77,27,34,2,54,2,148,10,2,64,32,2,13,0,32,5,40,2,176,10,34,2,69,13,0,32,23,32,2,17,0,0,13,5,11,32,0,65,3,75,13,0,11,32,5,40,2,152,9,33,17,11,32,5,32,17,65,1,107,34,17,54,2,152,9,32,14,40,2,36,34,2,4,64,65,0,33,1,3,64,2,64,32,14,32,2,65,3,116,107,32,1,65,3,116,106,41,2,0,34,56,167,34,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,0,40,2,0,65,1,71,13,0,32,5,40,2,148,9,33,2,32,5,32,5,40,2,152,9,34,14,65,1,106,34,3,32,5,40,2,156,9,34,0,75,4,127,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,5,32,0,54,2,156,9,32,5,40,2,152,9,34,14,65,1,106,5,32,3,11,54,2,152,9,32,5,32,2,54,2,148,9,32,2,32,14,65,3,116,106,32,56,55,2,0,32,10,40,2,184,1,34,14,40,2,36,33,2,11,32,1,65,1,106,34,1,32,2,73,13,0,11,32,5,40,2,152,9,33,17,11,32,17,13,0,11,11,32,5,65,0,58,0,197,10,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,3,32,5,35,1,65,203,8,106,34,0,40,0,0,54,0,132,1,32,5,32,0,45,0,4,58,0,136,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,203,8,106,34,0,40,0,0,54,0,132,1,32,5,32,0,45,0,4,58,0,136,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,41,2,180,9,33,56,32,5,40,2,160,9,34,1,32,5,40,2,140,10,34,0,69,13,5,26,32,10,32,56,55,3,184,1,32,10,65,184,1,106,65,0,32,1,65,0,32,0,16,55,65,10,32,5,40,2,140,10,16,9,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,1,58,0,197,10,65,0,33,1,12,3,11,32,5,41,2,180,9,33,56,32,5,40,2,160,9,11,33,0,32,5,40,2,68,33,3,32,5,40,2,100,33,4,65,20,35,7,40,2,0,17,0,0,34,1,32,0,54,2,8,32,1,32,56,55,2,0,32,1,32,4,65,24,35,9,40,2,0,17,1,0,34,2,54,2,12,32,4,65,24,108,34,0,4,64,32,2,32,3,32,0,252,10,0,0,11,32,1,32,4,54,2,16,32,5,66,0,55,2,180,9,32,5,16,41,12,1,11,32,5,16,41,11,32,10,65,144,2,106,36,0,32,5,66,0,55,2,172,10,32,40,65,16,106,36,0,32,29,65,48,106,36,0,32,1,11,7,0,32,0,40,2,32,11,11,0,32,1,65,1,70,32,2,16,8,11,62,1,1,127,35,0,65,16,107,34,2,36,0,32,2,32,0,54,2,8,32,2,35,2,65,20,106,65,0,32,1,27,54,2,12,32,2,32,2,41,2,8,55,3,0,32,0,32,2,41,2,0,55,2,92,32,2,65,16,106,36,0,11,199,8,2,7,127,1,126,35,11,33,6,35,0,65,16,107,34,5,36,0,65,1,65,200,10,35,9,40,2,0,17,1,0,34,0,35,2,34,1,54,2,28,32,0,32,1,65,1,106,54,2,24,32,0,32,1,65,2,106,54,2,20,32,0,32,1,65,3,106,54,2,16,32,0,32,1,65,4,106,54,2,12,32,0,32,1,65,5,106,54,2,8,32,0,66,0,55,2,0,32,0,65,32,106,65,0,65,228,8,252,11,0,32,0,65,0,65,24,35,6,40,2,0,17,1,0,34,1,54,2,68,32,1,35,1,65,252,11,106,34,2,41,2,16,55,2,16,32,1,32,2,41,2,8,55,2,8,32,1,32,2,41,2,0,55,2,0,32,0,65,1,54,2,100,2,64,2,64,32,0,40,2,68,34,3,40,2,20,34,4,32,0,40,2,32,34,1,77,13,0,32,4,32,3,40,2,16,34,2,77,13,0,32,1,32,2,77,4,64,32,0,32,3,41,2,0,55,2,36,32,0,32,2,54,2,32,32,2,33,1,11,65,0,33,2,32,0,65,0,54,2,104,32,0,40,2,72,69,13,1,32,0,40,2,108,34,3,32,1,77,4,64,32,1,32,0,40,2,112,32,3,106,73,13,2,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,1,11,65,1,33,2,32,0,65,1,54,2,104,32,3,41,2,8,33,7,32,0,65,0,54,2,72,32,0,32,7,55,2,36,32,0,32,4,54,2,32,32,0,66,0,55,2,108,11,32,0,65,0,54,2,176,9,32,0,65,0,54,2,0,32,0,32,2,54,2,116,32,0,66,0,55,2,168,9,32,0,65,192,0,35,7,34,1,40,2,0,17,0,0,54,2,168,9,32,0,65,4,54,2,176,9,65,128,2,32,1,40,2,0,17,0,0,33,1,32,0,66,0,55,2,148,9,32,0,66,128,128,128,128,128,4,55,2,140,9,32,0,32,1,54,2,136,9,32,0,65,156,9,106,65,0,54,2,0,65,1,65,56,35,9,40,2,0,17,1,0,34,1,66,0,55,2,0,32,1,66,0,55,2,40,32,1,66,0,55,2,32,32,1,66,0,55,2,24,32,1,66,0,55,2,16,32,1,66,0,55,2,8,32,1,65,128,1,35,7,40,2,0,17,0,0,54,2,0,32,1,65,4,54,2,8,32,1,40,2,12,33,2,32,1,40,2,20,65,3,77,4,64,2,127,32,2,4,64,32,2,65,192,0,35,6,40,2,0,17,1,0,12,1,11,65,192,0,35,7,40,2,0,17,0,0,11,33,2,32,1,65,4,54,2,20,11,32,1,32,2,54,2,12,32,1,40,2,24,33,2,32,1,40,2,32,65,3,77,4,64,2,127,32,2,4,64,32,2,65,224,0,35,6,40,2,0,17,1,0,12,1,11,65,224,0,35,7,40,2,0,17,0,0,11,33,2,32,1,65,4,54,2,32,11,32,1,32,2,54,2,24,32,1,40,2,36,33,2,32,1,40,2,44,65,49,77,4,64,2,127,32,2,4,64,32,2,65,200,1,35,6,40,2,0,17,1,0,12,1,11,65,200,1,35,7,40,2,0,17,0,0,11,33,2,32,1,65,50,54,2,44,11,32,1,32,0,65,136,9,106,34,3,54,2,52,32,1,32,2,54,2,36,2,127,32,1,40,2,40,34,4,4,64,32,1,32,4,65,1,107,34,4,54,2,40,32,2,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,65,1,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,2,66,0,55,2,4,32,2,65,1,54,2,148,1,32,2,65,0,54,2,12,32,2,66,0,55,2,152,1,32,2,65,0,54,2,160,1,32,1,32,2,54,2,48,32,1,16,57,32,0,66,0,55,2,244,9,32,0,66,0,55,2,180,9,32,0,32,1,54,2,132,9,32,0,65,252,9,106,66,0,55,2,0,32,0,65,132,10,106,65,0,54,2,0,32,0,66,0,55,2,148,10,32,0,66,0,55,2,136,10,32,0,65,0,54,2,160,9,32,0,65,156,10,106,66,0,55,2,0,32,0,65,164,10,106,66,0,55,2,0,32,0,65,0,54,2,192,10,32,0,65,195,10,106,65,0,54,0,0,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,5,32,1,41,2,0,55,3,8,32,3,32,5,65,8,106,16,10,11,32,0,40,2,232,9,4,64,32,5,32,0,65,232,9,106,41,2,0,55,3,0,32,3,32,5,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,5,65,16,106,36,0,32,6,65,128,208,0,65,1,16,42,54,2,4,32,6,32,0,54,2,0,11,20,1,1,127,35,11,34,0,66,143,128,128,128,208,1,55,3,0,32,0,11,106,1,3,127,32,2,32,0,47,1,0,34,3,65,8,116,32,3,65,8,118,114,34,4,65,255,255,3,113,34,5,54,2,0,65,2,33,3,2,64,32,1,65,1,70,13,0,32,4,65,128,248,3,113,65,128,176,3,71,13,0,32,0,47,1,2,34,0,65,128,248,3,113,65,128,184,3,71,13,0,32,2,32,5,65,10,116,32,0,106,65,128,184,255,26,107,54,2,0,65,4,33,3,11,32,3,11,88,1,2,127,32,2,32,0,47,1,0,34,3,54,2,0,65,2,33,4,2,64,32,1,65,1,70,13,0,32,3,65,128,248,3,113,65,128,176,3,71,13,0,32,0,47,1,2,34,0,65,128,248,3,113,65,128,184,3,71,13,0,32,2,32,3,65,10,116,32,0,106,65,128,184,255,26,107,54,2,0,65,4,33,4,11,32,4,11,205,2,1,4,127,32,2,32,0,44,0,0,34,3,65,255,1,113,34,4,54,2,0,65,1,33,5,2,64,32,3,65,0,72,4,64,2,64,32,1,65,1,70,13,0,2,64,32,3,65,96,79,4,64,2,64,32,3,65,111,77,4,64,32,2,32,4,65,15,113,34,4,54,2,0,35,1,65,222,10,106,32,4,106,45,0,0,32,0,45,0,1,34,3,65,5,118,118,65,1,113,69,13,4,32,3,65,63,113,33,6,65,2,33,3,12,1,11,32,2,32,4,65,240,1,107,34,4,54,2,0,32,3,65,116,75,13,3,35,1,65,176,12,106,32,0,45,0,1,34,3,65,4,118,106,44,0,0,32,4,118,65,1,113,69,13,3,32,2,32,3,65,63,113,32,4,65,6,116,114,34,4,54,2,0,65,2,33,5,32,1,65,2,70,13,3,65,3,33,3,32,0,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,2,32,6,65,255,1,113,32,4,65,6,116,114,34,4,54,2,0,32,3,32,1,34,5,71,13,1,12,2,11,32,3,65,66,73,13,1,32,2,32,4,65,31,113,34,4,54,2,0,65,1,33,3,11,32,0,32,3,106,45,0,0,65,128,127,115,65,255,1,113,34,0,65,63,77,13,2,32,3,33,5,11,32,2,65,127,54,2,0,11,32,5,15,11,32,2,32,4,65,6,116,32,0,114,54,2,0,32,3,65,1,106,11,24,1,1,127,32,0,40,2,0,65,15,79,4,127,32,0,40,2,136,1,5,65,0,11,11,165,2,1,9,127,35,0,65,32,107,34,2,36,0,32,0,4,64,32,2,66,0,55,3,24,32,2,66,0,55,3,16,32,2,66,0,55,3,8,32,2,32,0,41,2,0,55,3,0,32,2,65,8,106,32,2,16,10,32,2,40,2,8,34,4,4,64,2,64,32,2,40,2,12,34,3,69,13,0,32,3,65,4,79,4,64,32,3,65,124,113,33,9,3,64,32,4,32,1,65,3,116,106,34,5,40,2,0,35,8,34,6,40,2,0,17,2,0,32,5,40,2,8,32,6,40,2,0,17,2,0,32,5,40,2,16,32,6,40,2,0,17,2,0,32,5,40,2,24,32,6,40,2,0,17,2,0,32,1,65,4,106,33,1,32,8,65,4,106,34,8,32,9,71,13,0,11,11,32,3,65,3,113,34,3,69,13,0,3,64,32,4,32,1,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,1,65,1,106,33,1,32,7,65,1,106,34,7,32,3,71,13,0,11,11,32,4,35,8,40,2,0,17,2,0,11,32,2,40,2,20,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,40,2,12,35,8,34,1,40,2,0,17,2,0,32,0,32,1,40,2,0,17,2,0,11,32,2,65,32,106,36,0,11,139,1,2,4,127,1,126,32,0,40,2,0,34,1,65,1,113,69,4,64,32,1,32,1,40,2,0,65,1,106,54,2,0,32,1,40,2,0,26,11,32,0,40,2,12,33,3,32,0,40,2,16,33,1,32,0,41,2,0,33,5,32,0,40,2,8,33,2,65,20,35,7,40,2,0,17,0,0,34,0,32,2,54,2,8,32,0,32,5,55,2,0,32,0,32,1,65,24,35,9,40,2,0,17,1,0,34,2,54,2,12,32,1,65,24,108,34,4,4,64,32,2,32,3,32,4,252,10,0,0,11,32,0,32,1,54,2,16,32,0,11,192,4,2,7,127,1,126,35,0,65,16,107,33,3,2,64,32,0,40,2,0,34,5,69,13,0,32,0,40,2,24,34,6,65,255,1,113,65,255,1,70,13,0,32,5,65,1,113,69,4,64,32,5,32,5,40,2,36,65,3,116,107,33,4,11,32,3,32,0,40,2,20,54,2,8,32,3,32,0,41,2,12,55,3,0,32,0,40,2,28,33,5,32,1,32,4,32,6,65,3,116,106,34,4,54,2,0,32,1,32,3,40,2,8,54,2,12,32,1,32,3,41,3,0,55,2,4,32,1,65,0,54,2,24,32,1,32,5,54,2,20,32,1,32,6,54,2,16,32,2,2,127,32,4,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,34,1,58,0,0,2,127,32,4,40,2,0,34,3,65,1,113,4,64,32,4,45,0,5,65,15,113,33,5,32,3,65,8,113,65,3,118,33,6,32,4,45,0,4,33,7,32,4,45,0,6,12,1,11,32,3,45,0,44,65,4,113,65,2,118,33,6,32,3,40,2,12,33,7,32,3,40,2,8,33,5,32,3,40,2,4,11,33,3,32,0,32,0,40,2,24,65,1,107,34,8,54,2,24,65,1,33,4,32,0,65,1,32,0,40,2,20,34,9,32,7,107,32,0,40,2,12,34,7,69,32,9,65,0,71,113,32,5,65,0,71,114,34,5,27,54,2,20,32,0,65,0,32,0,40,2,16,32,5,27,54,2,16,32,0,65,0,32,7,32,3,107,32,5,27,54,2,12,2,64,32,6,13,0,32,0,40,2,36,34,3,69,13,0,32,2,32,1,32,3,32,0,40,2,28,34,1,65,1,116,106,47,1,0,114,65,0,71,58,0,0,32,1,69,13,0,32,0,32,1,65,1,107,54,2,28,11,32,8,32,0,40,2,0,34,1,40,2,36,34,2,79,13,0,2,127,32,1,32,2,65,3,116,107,32,8,65,3,116,106,41,2,0,34,10,167,34,2,65,1,113,4,64,65,0,33,3,32,10,66,56,136,167,34,1,12,1,11,32,2,40,2,20,65,0,71,33,3,32,2,40,2,24,33,1,32,2,40,2,16,11,33,2,32,0,65,1,32,0,40,2,20,34,5,32,1,107,32,3,32,0,40,2,12,34,6,69,32,5,65,0,71,113,114,34,1,27,54,2,20,32,0,65,0,32,0,40,2,16,32,1,27,54,2,16,32,0,65,0,32,6,32,2,107,32,1,27,54,2,12,11,32,4,11,7,0,32,0,40,2,0,11,16,0,65,0,65,2,32,1,40,2,0,47,1,144,1,27,11,74,1,1,127,32,1,40,2,8,69,4,64,65,0,15,11,32,0,45,0,0,4,64,65,1,15,11,65,1,33,2,2,64,32,1,40,2,4,40,2,0,34,1,65,1,113,13,0,32,1,47,1,40,65,255,255,3,71,13,0,32,0,65,1,58,0,0,65,3,33,2,11,32,2,11,24,0,32,1,40,2,16,69,4,64,65,0,15,11,65,3,65,1,32,1,45,0,20,27,11,18,0,65,3,65,0,32,1,40,2,16,32,0,40,2,0,70,27,11,7,0,32,0,40,2,20,11,13,0,32,0,40,2,8,32,0,40,2,4,106,11,228,1,0,35,1,65,192,211,0,106,35,2,65,13,106,54,2,0,35,1,65,196,211,0,106,35,2,65,14,106,54,2,0,35,1,65,200,211,0,106,35,2,65,15,106,54,2,0,35,1,65,204,211,0,106,35,2,65,16,106,54,2,0,35,1,65,208,211,0,106,35,2,65,17,106,54,2,0,35,1,65,212,211,0,106,35,2,65,18,106,54,2,0,35,1,65,216,211,0,106,35,2,65,19,106,54,2,0,35,1,65,224,211,0,106,35,2,65,22,106,54,2,0,35,1,65,236,211,0,106,35,2,65,23,106,54,2,0,35,1,65,132,212,0,106,35,2,65,24,106,54,2,0,35,1,65,156,212,0,106,35,2,65,25,106,54,2,0,35,1,65,160,212,0,106,35,2,65,26,106,54,2,0,35,1,65,164,212,0,106,35,1,65,164,215,0,106,54,2,0,35,1,65,136,213,0,106,35,1,65,248,211,0,106,54,2,0,35,1,65,140,213,0,106,35,5,54,2,0,11,66,1,3,127,35,1,34,1,65,148,214,0,106,34,0,32,1,65,252,213,0,106,54,2,96,32,0,35,4,34,2,35,3,107,54,2,56,32,0,32,2,54,2,52,32,0,65,42,54,2,24,32,0,32,1,65,240,211,0,106,40,2,0,54,2,60,11,11,151,85,1,0,35,1,11,144,85,45,43,32,32,32,48,88,48,120,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,114,101,100,117,99,101,32,115,121,109,58,37,115,44,32,99,104,105,108,100,95,99,111,117,110,116,58,37,117,0,114,101,115,117,109,101,32,118,101,114,115,105,111,110,58,37,117,0,114,101,109,111,118,101,100,32,112,97,117,115,101,100,32,118,101,114,115,105,111,110,58,37,117,0,108,101,120,95,101,120,116,101,114,110,97,108,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,117,109,110,58,37,117,0,108,101,120,95,105,110,116,101,114,110,97,108,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,117,109,110,58,37,117,0,112,114,111,99,101,115,115,32,118,101,114,115,105,111,110,58,37,117,44,32,118,101,114,115,105,111,110,95,99,111,117,110,116,58,37,117,44,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,58,37,117,0,114,101,99,111,118,101,114,95,116,111,95,112,114,101,118,105,111,117,115,32,115,116,97,116,101,58,37,117,44,32,100,101,112,116,104,58,37,117,0,44,32,115,105,122,101,58,37,117,0,115,104,105,102,116,32,115,116,97,116,101,58,37,117,0,114,101,99,111,118,101,114,95,119,105,116,104,95,109,105,115,115,105,110,103,32,115,121,109,98,111,108,58,37,115,44,32,115,116,97,116,101,58,37,117,0,100,105,102,102,101,114,101,110,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,32,37,117,32,45,32,37,117,0,97,99,99,101,112,116,0,112,97,114,115,101,95,97,102,116,101,114,95,101,100,105,116,0,92,116,0,97,98,111,114,116,105,110,103,32,114,101,100,117,99,101,32,119,105,116,104,32,116,111,111,32,109,97,110,121,32,118,101,114,115,105,111,110,115,0,104,97,115,95,99,104,97,110,103,101,115,0,115,119,105,116,99,104,32,102,114,111,109,95,107,101,121,119,111,114,100,58,37,115,44,32,116,111,95,119,111,114,100,95,116,111,107,101,110,58,37,115,0,115,116,97,116,101,95,109,105,115,109,97,116,99,104,32,115,121,109,58,37,115,0,115,101,108,101,99,116,95,115,109,97,108,108,101,114,95,101,114,114,111,114,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,115,101,108,101,99,116,95,101,97,114,108,105,101,114,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,115,101,108,101,99,116,95,101,120,105,115,116,105,110,103,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,99,97,110,116,95,114,101,117,115,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,44,32,102,105,114,115,116,95,108,101,97,102,95,115,121,109,98,111,108,58,37,115,0,115,107,105,112,95,116,111,107,101,110,32,115,121,109,98,111,108,58,37,115,0,105,103,110,111,114,101,95,101,109,112,116,121,95,101,120,116,101,114,110,97,108,95,116,111,107,101,110,32,115,121,109,98,111,108,58,37,115,0,114,101,117,115,97,98,108,101,95,110,111,100,101,95,104,97,115,95,100,105,102,102,101,114,101,110,116,95,101,120,116,101,114,110,97,108,95,115,99,97,110,110,101,114,95,115,116,97,116,101,32,115,121,109,98,111,108,58,37,115,0,114,101,117,115,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,112,97,115,116,95,114,101,117,115,97,98,108,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,98,101,102,111,114,101,95,114,101,117,115,97,98,108,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,99,97,110,116,95,114,101,117,115,101,95,110,111,100,101,95,37,115,32,116,114,101,101,58,37,115,0,98,114,101,97,107,100,111,119,110,95,116,111,112,95,111,102,95,115,116,97,99,107,32,116,114,101,101,58,37,115,0,100,101,116,101,99,116,95,101,114,114,111,114,32,108,111,111,107,97,104,101,97,100,58,37,115,0,40,37,115,0,105,115,95,101,114,114,111,114,0,115,107,105,112,95,117,110,114,101,99,111,103,110,105,122,101,100,95,99,104,97,114,97,99,116,101,114,0,110,97,110,0,92,110,0,105,115,95,109,105,115,115,105,110,103,0,114,101,115,117,109,101,95,112,97,114,115,105,110,103,0,114,101,99,111,118,101,114,95,101,111,102,0,105,110,102,0,110,101,119,95,112,97,114,115,101,0,99,111,110,100,101,110,115,101,0,100,111,110,101,0,105,115,95,102,114,97,103,105,108,101,0,99,111,110,116,97,105,110,115,95,100,105,102,102,101,114,101,110,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,0,115,107,105,112,32,99,104,97,114,97,99,116,101,114,58,37,100,0,99,111,110,115,117,109,101,32,99,104,97,114,97,99,116,101,114,58,37,100,0,115,101,108,101,99,116,95,104,105,103,104,101,114,95,112,114,101,99,101,100,101,110,99,101,32,115,121,109,98,111,108,58,37,115,44,32,112,114,101,99,58,37,100,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,44,32,111,116,104,101,114,95,112,114,101,99,58,37,100,0,115,104,105,102,116,95,101,120,116,114,97,0,110,111,95,108,111,111,107,97,104,101,97,100,95,97,102,116,101,114,95,110,111,110,95,116,101,114,109,105,110,97,108,95,101,120,116,114,97,0,95,95,82,79,79,84,95,95,0,95,69,82,82,79,82,0,78,65,78,0,77,73,83,83,73,78,71,0,73,78,70,0,73,78,86,65,76,73,68,0,108,101,120,101,100,95,108,111,111,107,97,104,101,97,100,32,115,121,109,58,0,32,48,48,48,48,48,48,48,48,48,48,48,48,16,48,48,0,46,0,40,37,115,41,0,40,110,117,108,108,41,0,40,78,85,76,76,41,0,40,34,37,115,34,41,0,39,92,116,39,0,39,92,114,39,0,39,92,110,39,0,115,107,105,112,32,99,104,97,114,97,99,116,101,114,58,39,37,99,39,0,99,111,110,115,117,109,101,32,99,104,97,114,97,99,116,101,114,58,39,37,99,39,0,39,92,48,39,0,34,37,115,34,0,40,77,73,83,83,73,78,71,32,0,40,85,78,69,88,80,69,67,84,69,68,32,0,37,115,58,32,0,10,10,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,15,15,15,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,18,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,17,34,35,36,17,37,38,39,40,41,42,43,44,17,45,46,47,16,16,48,16,16,16,16,16,16,16,49,50,51,16,52,53,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,54,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,55,17,17,17,17,56,17,57,58,59,60,61,62,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,63,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,64,65,17,66,67,68,69,70,71,72,73,74,17,75,76,77,78,79,80,81,16,82,83,84,85,86,87,88,89,90,91,92,93,16,94,95,96,16,17,17,17,97,98,99,16,16,16,16,16,16,16,16,16,16,17,17,17,17,100,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,101,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,102,103,16,16,104,105,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,106,17,17,107,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,108,109,16,16,16,16,16,16,16,16,16,110,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,111,112,113,114,16,16,16,16,16,16,16,16,115,116,117,16,16,16,16,16,118,119,16,16,16,16,120,16,16,121,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,254,255,255,7,254,255,255,7,0,0,0,0,0,4,32,4,255,255,127,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,195,255,3,0,31,80,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,223,188,64,215,255,255,251,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,255,255,255,127,2,255,255,255,255,255,1,0,0,0,0,255,191,182,0,255,255,255,135,7,0,0,0,255,7,255,255,255,255,255,255,255,254,255,195,255,255,255,255,255,255,255,255,255,255,255,255,239,31,254,225,255,159,0,0,255,255,255,255,255,255,0,224,255,255,255,255,255,255,255,255,255,255,255,255,3,0,255,255,255,255,255,7,48,4,255,255,255,252,255,31,0,0,255,255,255,1,255,7,0,0,0,0,0,0,255,255,223,63,0,0,240,255,248,3,255,255,255,255,255,255,255,255,255,239,255,223,225,255,207,255,254,255,239,159,249,255,255,253,197,227,159,89,128,176,207,255,3,16,238,135,249,255,255,253,109,195,135,25,2,94,192,255,63,0,238,191,251,255,255,253,237,227,191,27,1,0,207,255,0,30,238,159,249,255,255,253,237,227,159,25,192,176,207,255,2,0,236,199,61,214,24,199,255,195,199,29,129,0,192,255,0,0,239,223,253,255,255,253,255,227,223,29,96,7,207,255,0,0,239,223,253,255,255,253,239,227,223,29,96,64,207,255,6,0,239,223,253,255,255,255,255,231,223,93,240,128,207,255,0,252,236,255,127,252,255,255,251,47,127,128,95,255,192,255,12,0,254,255,255,255,255,127,255,7,63,32,255,3,0,0,0,0,214,247,255,255,175,255,255,59,95,32,255,243,0,0,0,0,1,0,0,0,255,3,0,0,255,254,255,255,255,31,254,255,3,255,255,254,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,249,255,3,255,255,255,255,255,255,255,255,255,63,255,255,255,255,191,32,255,255,255,255,255,247,255,255,255,255,255,255,255,255,255,61,127,61,255,255,255,255,255,61,255,255,255,255,61,127,61,255,127,255,255,255,255,255,255,255,61,255,255,255,255,255,255,255,255,7,0,0,0,0,255,255,0,0,255,255,255,255,255,255,255,255,255,255,63,63,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,255,255,254,255,255,7,255,255,255,255,255,255,255,255,255,199,255,1,255,223,15,0,255,255,15,0,255,255,15,0,255,223,13,0,255,255,255,255,255,255,207,255,255,1,128,16,255,3,0,0,0,0,255,3,255,255,255,255,255,255,255,255,255,255,255,1,255,255,255,255,255,7,255,255,255,255,255,255,255,255,63,0,255,255,255,127,255,15,255,1,192,255,255,255,255,63,31,0,255,255,255,255,255,15,255,255,255,3,255,3,0,0,0,0,255,255,255,15,255,255,255,255,255,255,255,127,254,255,31,0,255,3,255,3,128,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,239,255,239,15,255,3,0,0,0,0,255,255,255,255,255,243,255,255,255,255,255,255,191,255,3,0,255,255,255,255,255,255,127,0,255,227,255,255,255,255,255,63,255,1,255,255,255,255,255,231,0,0,0,0,0,222,111,4,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,31,0,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,255,31,0,0,0,0,0,0,0,0,0,0,0,0,132,252,47,62,80,189,255,243,224,67,0,0,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,255,255,255,3,0,0,255,255,255,255,255,127,255,255,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,120,12,0,255,255,255,255,191,32,255,255,255,255,255,255,255,128,0,0,255,255,127,0,127,127,127,127,127,127,127,127,255,255,255,255,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,0,254,3,62,31,254,255,255,255,255,255,255,255,255,255,127,224,254,255,255,255,255,255,255,255,255,255,255,247,224,255,255,255,255,255,254,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,63,255,31,255,255,255,15,0,0,255,255,255,255,255,127,240,143,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,252,255,255,255,255,255,255,255,255,255,255,255,255,249,255,255,255,255,255,255,124,0,0,0,0,0,128,255,191,255,255,255,255,0,0,0,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,47,0,255,3,0,0,252,232,255,255,255,255,255,7,255,255,255,255,7,0,255,255,255,31,255,255,255,255,255,255,247,255,0,128,255,3,255,255,255,127,255,255,255,255,255,255,127,0,255,63,255,3,255,255,127,252,255,255,255,255,255,255,255,127,5,0,0,56,255,255,60,0,126,126,126,0,127,127,255,255,255,255,255,247,255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,127,248,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,127,0,248,224,255,253,127,95,219,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,248,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,255,255,255,255,255,255,255,255,252,255,255,255,255,255,255,0,0,0,0,0,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,255,3,254,255,255,7,254,255,255,7,192,255,255,255,255,255,255,255,255,255,255,127,252,252,252,28,0,0,0,0,255,239,255,255,127,255,255,183,255,63,255,63,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,255,255,255,255,255,255,1,0,0,0,0,0,255,255,255,255,0,224,255,255,255,7,255,255,255,255,255,7,255,255,255,63,255,255,255,255,15,255,62,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,3,255,255,255,255,15,255,255,255,255,15,255,255,255,255,255,0,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,0,255,255,63,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,253,255,255,255,255,191,145,255,255,63,0,255,255,127,0,255,255,255,127,0,0,0,0,0,0,0,0,255,255,55,0,255,255,63,0,255,255,255,3,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,111,240,239,254,255,255,63,0,0,0,0,0,255,255,255,31,255,255,255,31,0,0,0,0,255,254,255,255,31,0,0,0,255,255,255,255,255,255,63,0,255,255,63,0,255,255,7,0,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,255,255,255,255,255,255,7,0,255,255,255,255,255,255,7,0,255,255,255,255,255,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,128,0,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,127,0,255,255,255,255,255,255,255,255,63,0,0,0,192,255,0,0,252,255,255,255,255,255,255,1,0,0,255,255,255,1,255,3,255,255,255,255,255,255,199,255,112,0,255,255,255,255,71,0,255,255,255,255,255,255,255,255,30,0,255,23,0,0,0,0,255,255,251,255,255,255,159,64,0,0,0,0,0,0,0,0,127,189,255,191,255,1,255,255,255,255,255,255,255,1,255,3,239,159,249,255,255,253,237,227,159,25,129,224,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,187,7,255,131,0,0,0,0,255,255,255,255,255,255,255,255,179,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,127,0,0,0,63,0,0,0,0,255,255,255,255,255,255,255,127,17,0,255,3,0,0,0,0,255,255,255,255,255,255,63,1,255,3,0,0,0,0,0,0,255,255,255,231,255,7,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,3,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,252,255,255,255,255,255,252,26,0,0,0,255,255,255,255,255,255,231,127,0,0,255,255,255,255,255,255,255,255,255,32,0,0,0,0,255,255,255,255,255,255,255,1,255,253,255,255,255,255,127,127,1,0,255,3,0,0,252,255,255,255,252,255,255,254,127,0,0,0,0,0,0,0,0,0,127,251,255,255,255,255,127,180,203,0,255,3,191,253,255,255,255,127,123,1,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,127,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,255,255,255,127,255,3,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,63,0,0,255,255,255,255,255,255,0,0,15,0,255,3,248,255,255,224,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,135,255,255,255,255,255,255,255,128,255,255,0,0,0,0,0,0,0,0,11,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,255,255,255,127,0,0,0,0,0,0,7,0,240,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,7,255,31,255,1,255,67,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,255,255,255,223,100,222,255,235,239,255,255,255,255,255,255,255,191,231,223,223,255,255,255,123,95,252,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,253,255,255,247,255,255,255,247,255,255,223,255,255,255,223,255,255,127,255,255,255,127,255,255,255,253,255,255,255,253,255,255,247,207,255,255,255,255,255,255,127,255,255,249,219,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,31,128,63,255,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,15,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,143,8,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,255,255,255,150,254,247,10,132,234,150,170,150,247,247,94,255,251,255,15,238,251,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,3,255,255,255,3,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,9,0,0,0,10,0,0,0,13,0,0,0,11,0,0,0,12,0,0,0,133,0,0,0,0,32,0,0,1,32,0,0,2,32,0,0,3,32,0,0,4,32,0,0,5,32,0,0,6,32,0,0,8,32,0,0,9,32,0,0,10,32,0,0,40,32,0,0,41,32,0,0,95,32,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,11,0,25,25,25,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,25,0,10,10,25,25,25,3,10,7,0,1,0,9,11,24,0,0,9,6,11,0,0,11,0,6,25,0,0,0,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,25,0,11,13,25,25,25,0,13,0,0,2,0,9,14,0,0,0,9,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,0,19,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,4,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,17,0,0,0,0,9,18,0,0,0,0,0,18,0,0,18,0,0,26,0,0,0,26,26,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,26,26,26,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,23,0,0,0,0,9,20,0,0,0,0,0,20,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,21,0,0,0,0,9,22,0,0,0,0,0,22,0,0,22,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0,8,0,0,86,1,0,0,57,0,0,0,0,0,0,0,0,0,0,0,1,32,0,0,0,224,255,255,0,191,29,0,0,231,2,0,0,121,0,0,2,36,0,0,1,1,0,0,0,255,255,255,0,0,0,0,1,2,0,0,0,254,255,255,1,57,255,255,0,24,255,255,1,135,255,255,0,212,254,255,0,195,0,0,1,210,0,0,1,206,0,0,1,205,0,0,1,79,0,0,1,202,0,0,1,203,0,0,1,207,0,0,0,97,0,0,1,211,0,0,1,209,0,0,0,163,0,0,1,213,0,0,0,130,0,0,1,214,0,0,1,218,0,0,1,217,0,0,1,219,0,0,0,56,0,0,3,0,0,0,0,177,255,255,1,159,255,255,1,200,255,255,2,40,36,0,0,0,0,0,1,1,0,0,0,255,255,255,0,51,255,255,0,38,255,255,1,126,255,255,1,43,42,0,1,93,255,255,1,40,42,0,0,63,42,0,1,61,255,255,1,69,0,0,1,71,0,0,0,31,42,0,0,28,42,0,0,30,42,0,0,46,255,255,0,50,255,255,0,54,255,255,0,53,255,255,0,79,165,0,0,75,165,0,0,49,255,255,0,40,165,0,0,68,165,0,0,47,255,255,0,45,255,255,0,247,41,0,0,65,165,0,0,253,41,0,0,43,255,255,0,42,255,255,0,231,41,0,0,67,165,0,0,42,165,0,0,187,255,255,0,39,255,255,0,185,255,255,0,37,255,255,0,21,165,0,0,18,165,0,2,36,76,0,0,0,0,0,1,32,0,0,0,224,255,255,1,1,0,0,0,255,255,255,0,84,0,0,1,116,0,0,1,38,0,0,1,37,0,0,1,64,0,0,1,63,0,0,0,218,255,255,0,219,255,255,0,225,255,255,0,192,255,255,0,193,255,255,1,8,0,0,0,194,255,255,0,199,255,255,0,209,255,255,0,202,255,255,0,248,255,255,0,170,255,255,0,176,255,255,0,7,0,0,0,140,255,255,1,196,255,255,0,160,255,255,1,249,255,255,2,26,112,0,1,1,0,0,0,255,255,255,1,32,0,0,0,224,255,255,1,80,0,0,1,15,0,0,0,241,255,255,0,0,0,0,1,48,0,0,0,208,255,255,1,1,0,0,0,255,255,255,0,0,0,0,0,192,11,0,1,96,28,0,0,0,0,0,1,208,151,0,1,8,0,0,0,248,255,255,2,5,138,0,0,0,0,0,1,64,244,255,0,158,231,255,0,194,137,0,0,219,231,255,0,146,231,255,0,147,231,255,0,156,231,255,0,157,231,255,0,164,231,255,0,0,0,0,0,56,138,0,0,4,138,0,0,230,14,0,1,1,0,0,0,255,255,255,0,0,0,0,0,197,255,255,1,65,226,255,2,29,143,0,0,8,0,0,1,248,255,255,0,0,0,0,0,86,0,0,1,170,255,255,0,74,0,0,0,100,0,0,0,128,0,0,0,112,0,0,0,126,0,0,0,9,0,0,1,182,255,255,1,247,255,255,0,219,227,255,1,156,255,255,1,144,255,255,1,128,255,255,1,130,255,255,2,5,172,0,0,0,0,0,1,16,0,0,0,240,255,255,1,28,0,0,1,1,0,0,1,163,226,255,1,65,223,255,1,186,223,255,0,228,255,255,2,11,177,0,1,1,0,0,0,255,255,255,1,48,0,0,0,208,255,255,0,0,0,0,1,9,214,255,1,26,241,255,1,25,214,255,0,213,213,255,0,216,213,255,1,228,213,255,1,3,214,255,1,225,213,255,1,226,213,255,1,193,213,255,0,0,0,0,0,160,227,255,0,0,0,0,1,1,0,0,0,255,255,255,2,12,188,0,0,0,0,0,1,1,0,0,0,255,255,255,1,188,90,255,1,160,3,0,1,252,117,255,1,216,90,255,0,48,0,0,1,177,90,255,1,181,90,255,1,191,90,255,1,238,90,255,1,214,90,255,1,235,90,255,1,208,255,255,1,189,90,255,1,200,117,255,0,0,0,0,0,48,104,255,0,96,252,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,40,0,0,0,216,255,255,0,0,0,0,1,64,0,0,0,192,255,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,34,0,0,0,222,255,255,48,12,49,13,120,14,127,15,128,16,129,17,134,18,137,19,138,19,142,20,143,21,144,22,147,19,148,23,149,24,150,25,151,26,154,27,156,25,157,28,158,29,159,30,166,31,169,31,174,31,177,32,178,32,183,33,191,34,197,35,200,35,203,35,221,36,242,35,246,37,247,38,32,45,58,46,61,47,62,48,63,49,64,49,67,50,68,51,69,52,80,53,81,54,82,55,83,56,84,57,89,58,91,59,92,60,97,61,99,62,101,63,102,64,104,65,105,66,106,64,107,67,108,68,111,66,113,69,114,70,117,71,125,72,130,73,135,74,137,75,138,76,139,76,140,77,146,78,157,79,158,80,69,87,123,29,124,29,125,29,127,88,134,89,136,90,137,90,138,90,140,91,142,92,143,92,172,93,173,94,174,94,175,94,194,95,204,96,205,97,206,97,207,98,208,99,209,100,213,101,214,102,215,103,240,104,241,105,242,106,243,107,244,108,245,109,249,110,253,45,254,45,255,45,80,105,81,105,82,105,83,105,84,105,85,105,86,105,87,105,88,105,89,105,90,105,91,105,92,105,93,105,94,105,95,105,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,192,117,207,118,128,137,129,138,130,139,133,140,134,141,112,157,113,157,118,158,119,158,120,159,121,159,122,160,123,160,124,161,125,161,179,162,186,163,187,163,188,164,190,165,195,162,204,164,218,166,219,166,229,106,234,167,235,167,236,110,243,162,248,168,249,168,250,169,251,169,252,164,38,176,42,177,43,178,78,179,132,8,98,186,99,187,100,188,101,189,102,190,109,191,110,192,111,193,112,194,126,195,127,195,125,207,141,208,148,209,171,210,172,211,173,212,176,213,177,214,178,215,196,216,197,217,198,218,7,8,9,10,11,12,6,6,6,6,6,6,6,6,6,6,13,6,6,14,6,6,6,6,6,6,6,6,15,16,17,18,6,19,6,6,6,6,6,6,6,6,6,6,20,21,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,22,23,6,6,6,24,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,25,6,6,6,6,26,6,6,6,6,6,6,6,27,6,6,6,6,6,6,6,6,6,6,6,28,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,29,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,30,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,1,0,84,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,43,43,43,43,43,43,43,7,43,43,91,86,86,86,86,86,86,86,74,86,86,5,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,36,80,121,49,80,49,80,49,56,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,78,49,2,78,13,13,78,3,78,0,36,110,0,78,49,38,110,81,78,36,80,78,57,20,129,27,29,29,83,49,80,49,80,13,49,80,49,80,49,80,27,83,36,80,49,2,92,123,92,123,92,123,92,123,92,123,20,121,92,123,92,123,92,45,43,73,3,72,3,120,92,123,20,0,150,10,1,43,40,6,6,0,42,6,42,42,43,7,187,181,43,30,0,43,7,43,43,43,1,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,42,43,43,43,43,43,43,43,43,43,43,43,43,43,205,70,205,43,0,37,43,7,1,6,1,85,86,86,86,86,86,85,86,86,2,36,129,129,129,129,129,21,129,129,129,0,0,43,0,178,209,178,209,178,209,178,209,0,0,205,204,1,0,215,215,215,215,215,131,129,129,129,129,129,129,129,129,129,129,172,172,172,172,172,172,172,172,172,172,28,0,0,0,0,0,49,80,49,80,49,80,49,80,49,80,49,2,0,0,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,78,49,80,49,80,78,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,2,135,166,135,166,135,166,135,166,135,166,135,166,135,166,135,166,42,43,43,43,43,43,43,43,43,43,43,43,43,0,0,0,84,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,86,86,86,86,86,86,86,86,86,86,86,86,12,0,12,42,43,43,43,43,43,43,43,43,43,43,43,43,43,7,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,86,86,108,129,21,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,7,108,3,65,43,43,86,86,86,86,86,86,86,86,86,86,86,86,86,86,44,86,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,108,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,86,122,158,38,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,1,43,43,79,86,86,44,43,127,86,86,57,43,43,85,86,86,43,43,79,86,86,44,43,127,86,86,129,55,117,91,123,92,43,43,79,86,86,2,172,4,0,0,57,43,43,85,86,86,43,43,79,86,86,44,43,43,86,86,50,19,129,87,0,111,129,126,201,215,126,45,129,129,14,126,57,127,111,87,0,129,129,126,21,0,126,3,43,43,43,43,43,43,43,43,43,43,43,43,7,43,36,43,151,43,43,43,43,43,43,43,43,43,42,43,43,43,43,43,86,86,86,86,86,128,129,129,129,129,57,187,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,201,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,208,13,0,78,49,2,180,193,193,215,215,36,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,215,215,83,193,71,212,215,215,215,5,43,43,43,43,43,43,43,43,43,43,43,43,7,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,49,80,49,80,49,80,49,80,49,80,49,80,49,80,13,0,0,0,0,0,36,80,49,80,49,80,49,80,49,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,121,92,123,92,123,79,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,45,43,43,121,20,92,123,92,45,121,42,92,39,92,123,92,123,92,123,164,0,10,180,92,123,92,123,79,3,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,7,0,72,86,86,86,86,86,86,86,86,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,43,43,85,86,86,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,43,43,43,7,0,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,7,0,0,0,0,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,85,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,39,81,111,119,0,0,0,0,0,0,0,0,0,0,124,0,0,127,0,0,0,0,0,0,0,0,131,142,146,151,0,170,0,0,0,0,0,0,0,0,0,0,180,196,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,201,0,0,0,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,222,0,0,0,0,225,0,0,0,0,0,0,0,228,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,234,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,237,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,32,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,26,0,0,0,164,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,41,0,0,0,0,0,0,0,42,16,115,111,117,114,99,101,77,97,112,112,105,110,103,85,82,76,24,119,101,98,45,116,114,101,101,45,115,105,116,116,101,114,46,119,97,115,109,46,109,97,112]),Et=new Uint8Array([0,97,115,109,1,0,0,0,0,16,8,100,121,108,105,110,107,46,48,1,5,240,22,4,1,0,1,28,6,96,1,127,0,96,0,0,96,0,1,127,96,2,127,127,1,127,96,1,127,1,127,96,2,127,127,0,2,90,4,3,101,110,118,13,95,95,109,101,109,111,114,121,95,98,97,115,101,3,127,0,3,101,110,118,12,95,95,116,97,98,108,101,95,98,97,115,101,3,127,0,3,101,110,118,6,109,101,109,111,114,121,2,0,1,3,101,110,118,25,95,95,105,110,100,105,114,101,99,116,95,102,117,110,99,116,105,111,110,95,116,97,98,108,101,1,112,0,1,3,5,4,1,1,2,3,7,67,3,17,95,95,119,97,115,109,95,99,97,108,108,95,99,116,111,114,115,0,0,24,95,95,119,97,115,109,95,97,112,112,108,121,95,100,97,116,97,95,114,101,108,111,99,115,0,1,16,116,114,101,101,95,115,105,116,116,101,114,95,106,115,111,110,0,2,9,7,1,0,35,1,11,1,3,10,246,18,4,3,0,1,11,240,4,1,1,127,35,0,65,152,21,106,35,0,65,176,8,106,54,2,0,35,0,65,156,21,106,35,0,54,2,0,35,0,65,160,21,106,35,0,65,208,5,106,54,2,0,35,0,65,164,21,106,35,0,65,144,11,106,54,2,0,35,0,65,168,21,106,35,0,65,128,22,106,34,0,54,2,0,35,0,65,172,21,106,35,0,65,228,22,106,54,2,0,35,0,65,176,21,106,35,0,65,180,6,106,54,2,0,35,0,65,180,21,106,35,0,65,188,6,106,54,2,0,35,0,65,184,21,106,35,0,65,208,6,106,54,2,0,35,0,65,188,21,106,35,0,65,160,7,106,54,2,0,35,0,65,192,21,106,35,0,65,210,7,106,54,2,0,35,0,65,196,21,106,35,0,65,224,7,106,54,2,0,35,0,65,200,21,106,35,0,65,192,18,106,54,2,0,35,0,65,204,21,106,35,1,54,2,0,35,0,65,244,21,106,35,0,65,240,7,106,54,2,0,32,0,35,0,65,128,18,106,54,2,0,35,0,65,132,22,106,35,0,65,146,17,106,54,2,0,35,0,65,136,22,106,35,0,65,184,18,106,54,2,0,35,0,65,140,22,106,35,0,65,144,17,106,54,2,0,35,0,65,144,22,106,35,0,65,136,18,106,54,2,0,35,0,65,148,22,106,35,0,65,134,18,106,54,2,0,35,0,65,152,22,106,35,0,65,132,18,106,54,2,0,35,0,65,156,22,106,35,0,65,186,18,106,54,2,0,35,0,65,160,22,106,35,0,65,159,17,106,54,2,0,35,0,65,164,22,106,35,0,65,240,17,106,54,2,0,35,0,65,168,22,106,35,0,65,203,17,106,54,2,0,35,0,65,172,22,106,35,0,65,222,17,106,54,2,0,35,0,65,176,22,106,35,0,65,234,17,106,54,2,0,35,0,65,180,22,106,35,0,65,210,17,106,54,2,0,35,0,65,184,22,106,35,0,65,183,17,106,54,2,0,35,0,65,188,22,106,35,0,65,174,17,106,54,2,0,35,0,65,192,22,106,35,0,65,227,17,106,54,2,0,35,0,65,196,22,106,35,0,65,191,17,106,54,2,0,35,0,65,200,22,106,35,0,65,198,17,106,54,2,0,35,0,65,204,22,106,35,0,65,152,17,106,54,2,0,35,0,65,208,22,106,35,0,65,215,17,106,54,2,0,35,0,65,212,22,106,35,0,65,158,17,106,54,2,0,35,0,65,216,22,106,35,0,65,152,18,106,54,2,0,35,0,65,220,22,106,35,0,65,169,18,106,54,2,0,35,0,65,224,22,106,35,0,65,138,18,106,54,2,0,35,0,65,232,22,106,35,0,65,148,17,106,54,2,0,35,0,65,236,22,106,35,0,65,228,17,106,54,2,0,11,8,0,35,0,65,240,20,106,11,244,13,1,6,127,3,64,32,0,40,2,0,33,2,65,2,33,5,32,0,32,0,40,2,24,17,4,0,33,7,65,0,33,3,65,0,33,6,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,1,65,255,255,3,113,14,44,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,46,47,48,21,22,23,24,25,26,27,28,29,35,36,37,38,39,40,41,42,43,44,45,61,11,32,7,13,66,3,64,32,2,32,3,65,1,116,34,1,35,0,65,192,19,106,106,47,1,0,70,13,50,32,3,65,26,73,33,1,32,3,65,2,106,33,3,32,1,13,0,11,65,1,33,3,65,20,33,1,32,2,65,32,70,32,2,65,9,107,65,5,73,114,13,67,32,2,65,49,107,65,9,79,13,59,12,64,11,2,64,2,64,2,64,2,64,32,2,65,31,76,4,64,65,1,33,3,65,2,33,1,32,4,33,6,32,2,14,14,64,1,1,1,1,1,1,1,1,36,71,36,36,36,1,11,2,64,32,2,65,32,107,14,3,36,1,3,0,11,32,2,65,47,70,13,3,32,2,65,220,0,70,13,1,11,65,0,33,3,12,33,11,65,18,33,1,12,68,11,65,28,33,1,12,67,11,12,28,11,2,64,2,64,32,2,65,9,107,65,5,73,13,0,65,28,33,1,32,4,33,6,32,2,65,32,107,14,3,0,60,67,1,11,65,1,33,3,65,2,33,1,12,66,11,32,2,65,47,71,13,57,65,3,33,1,12,65,11,32,2,65,42,70,13,60,32,2,65,47,71,13,56,12,59,11,32,2,65,42,70,13,57,32,2,65,47,70,13,46,12,54,11,32,2,65,42,70,13,56,12,53,11,32,2,65,45,70,4,64,65,19,33,1,12,62,11,32,2,65,48,107,65,10,79,13,53,12,51,11,32,2,65,48,70,4,64,65,35,33,1,12,61,11,32,2,65,49,107,65,9,79,13,52,12,58,11,32,2,65,225,0,71,13,51,65,11,33,1,12,59,11,32,2,65,229,0,71,13,50,65,39,33,1,12,58,11,32,2,65,229,0,71,13,49,65,40,33,1,12,57,11,32,2,65,236,0,71,13,48,65,15,33,1,12,56,11,32,2,65,236,0,71,13,47,65,41,33,1,12,55,11,32,2,65,236,0,71,13,46,65,12,33,1,12,54,11,32,2,65,242,0,71,13,45,65,16,33,1,12,53,11,32,2,65,243,0,71,13,44,65,10,33,1,12,52,11,32,2,65,245,0,71,13,43,65,9,33,1,12,51,11,32,2,65,245,0,71,13,42,65,13,33,1,12,50,11,3,64,32,3,65,1,116,34,1,35,0,65,128,20,106,106,47,1,0,32,2,71,4,64,32,3,65,16,73,33,1,32,3,65,2,106,33,3,32,1,13,1,12,43,11,11,35,0,32,1,106,65,130,20,106,47,1,0,33,1,65,0,33,3,12,49,11,32,2,65,48,107,65,10,79,13,40,12,37,11,32,7,13,46,3,64,32,2,32,3,65,1,116,34,1,35,0,65,176,20,106,106,47,1,0,70,13,32,32,3,65,24,73,33,1,32,3,65,2,106,33,3,32,1,13,0,11,65,1,33,3,65,20,33,1,32,2,65,32,70,32,2,65,9,107,65,5,73,114,13,47,32,2,65,49,107,65,9,73,13,44,12,39,11,65,3,33,5,12,26,11,65,4,33,5,12,25,11,65,5,33,5,12,24,11,65,6,33,5,12,23,11,65,7,33,5,12,22,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,23,32,2,65,34,71,13,6,12,23,11,32,2,65,42,70,13,29,32,2,65,47,70,32,2,65,220,0,71,114,13,5,12,22,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,22,32,2,65,34,71,13,29,12,22,11,32,2,65,42,70,13,27,32,2,65,47,70,13,4,32,2,65,220,0,71,13,28,12,21,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,21,32,2,65,34,71,13,28,12,21,11,32,2,65,42,70,13,26,32,2,65,220,0,71,13,27,12,20,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,31,76,4,64,32,2,65,13,75,13,3,65,1,32,2,116,34,1,65,128,244,0,113,13,5,32,1,65,129,8,113,69,13,3,12,20,11,65,1,33,6,2,64,32,2,65,32,107,14,3,5,3,32,0,11,32,2,65,47,71,13,1,11,65,29,33,1,12,37,11,32,2,65,220,0,70,13,17,11,65,33,33,1,12,35,11,65,0,33,3,11,65,32,33,1,12,33,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,33,33,1,65,1,33,4,32,2,65,33,76,4,64,32,2,69,13,14,65,1,33,6,32,2,65,10,71,13,33,12,26,11,32,2,65,34,70,13,13,65,1,33,6,32,2,65,220,0,71,13,32,12,25,11,65,9,33,5,12,11,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,32,2,65,46,70,4,64,65,1,33,4,12,16,11,65,1,33,4,32,2,65,95,113,65,197,0,71,13,11,12,16,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,46,70,13,14,32,2,65,95,113,65,197,0,70,13,15,32,2,65,48,107,65,10,73,13,27,12,10,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,32,2,65,95,113,65,197,0,70,4,64,65,1,33,4,12,15,11,65,1,33,4,32,2,65,48,107,65,10,73,13,13,12,9,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,48,107,65,10,73,13,16,12,8,11,65,11,33,5,12,6,11,65,12,33,5,12,5,11,65,13,33,5,12,4,11,65,14,33,5,12,3,11,32,0,65,14,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,69,32,2,65,10,70,114,13,3,12,17,11,65,0,33,5,12,1,11,65,1,33,5,11,32,0,32,5,59,1,4,32,0,32,0,40,2,12,17,0,0,11,65,1,33,6,12,11,11,35,0,32,1,106,65,194,19,106,47,1,0,33,1,65,0,33,3,12,17,11,65,42,33,1,12,16,11,35,0,32,1,106,65,178,20,106,47,1,0,33,1,65,0,33,3,12,15,11,65,37,33,1,12,14,11,65,6,33,1,12,13,11,65,30,33,1,12,12,11,65,31,33,1,12,11,11,11,65,38,33,1,12,9,11,32,2,13,4,11,32,4,33,6,11,32,6,65,1,113,15,11,65,4,33,1,12,5,11,65,43,33,1,12,4,11,65,5,33,1,12,3,11,65,0,33,3,11,65,36,33,1,12,1,11,65,21,33,1,11,32,0,32,3,32,0,40,2,8,17,5,0,12,0,11,0,11,11,247,22,1,0,35,0,11,240,22,2,0,3,0,1,0,14,0,37,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,39,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,41,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,7,0,3,0,1,0,14,0,7,0,1,0,1,0,9,0,1,0,5,0,11,0,1,0,7,0,29,0,1,0,16,0,8,0,3,0,17,0,19,0,20,0,13,0,4,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,43,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,45,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,7,0,3,0,1,0,14,0,7,0,1,0,1,0,9,0,1,0,5,0,11,0,1,0,7,0,28,0,1,0,16,0,8,0,3,0,17,0,19,0,20,0,13,0,4,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,47,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,49,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,5,0,3,0,1,0,14,0,11,0,1,0,7,0,51,0,1,0,3,0,20,0,1,0,18,0,31,0,1,0,20,0,4,0,53,0,1,0,7,0,57,0,1,0,14,0,18,0,1,0,21,0,55,0,2,0,8,0,9,0,4,0,57,0,1,0,14,0,59,0,1,0,7,0,19,0,1,0,21,0,61,0,2,0,8,0,9,0,4,0,57,0,1,0,14,0,63,0,1,0,7,0,19,0,1,0,21,0,65,0,2,0,8,0,9,0,4,0,3,0,1,0,14,0,68,0,1,0,2,0,70,0,1,0,3,0,22,0,1,0,23,0,4,0,3,0,1,0,14,0,72,0,1,0,2,0,74,0,1,0,6,0,24,0,1,0,24,0,4,0,3,0,1,0,14,0,68,0,1,0,2,0,76,0,1,0,3,0,25,0,1,0,23,0,4,0,3,0,1,0,14,0,11,0,1,0,7,0,27,0,1,0,18,0,31,0,1,0,20,0,4,0,3,0,1,0,14,0,72,0,1,0,2,0,78,0,1,0,6,0,26,0,1,0,24,0,4,0,3,0,1,0,14,0,80,0,1,0,2,0,83,0,1,0,3,0,25,0,1,0,23,0,4,0,3,0,1,0,14,0,85,0,1,0,2,0,88,0,1,0,6,0,26,0,1,0,24,0,2,0,3,0,1,0,14,0,83,0,2,0,2,0,3,0,2,0,3,0,1,0,14,0,90,0,2,0,2,0,3,0,2,0,3,0,1,0,14,0,88,0,2,0,2,0,6,0,2,0,3,0,1,0,14,0,92,0,1,0,0,0,2,0,3,0,1,0,14,0,94,0,1,0,4,0,0,0,0,0,17,0,0,0,34,0,0,0,51,0,0,0,78,0,0,0,95,0,0,0,112,0,0,0,139,0,0,0,156,0,0,0,173,0,0,0,189,0,0,0,203,0,0,0,217,0,0,0,231,0,0,0,244,0,0,0,1,1,0,0,14,1,0,0,27,1,0,0,40,1,0,0,53,1,0,0,66,1,0,0,74,1,0,0,82,1,0,0,90,1,0,0,97,1,0,0,0,0,0,0,0,0,2,0,1,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,0,1,1,1,1,0,1,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,14,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,14,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0,25,0,26,0,27,0,28,0,29,0,30,0,31,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,1,0,1,0,1,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,7,0,0,0,0,0,0,0,9,0,0,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,30,0,2,0,8,0,0,0,8,0,8,0,0,0,2,0,0,0,0,0,15,0,7,0,0,0,0,0,0,0,9,0,0,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,0,0,3,0,8,0,0,0,8,0,8,0,0,0,3,0,0,0,0,0,17,0,19,0,0,0,0,0,0,0,22,0,0,0,25,0,0,0,0,0,28,0,28,0,28,0,28,0,3,0,0,0,3,0,8,0,0,0,8,0,8,0,0,0,3,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,9,0,31,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,0,0,21,0,8,0,0,0,8,0,8,0,0,0,0,0,0,0,0,0,33,0,33,0,33,0,33,0,33,0,33,0,33,0,33,0,0,0,0,0,33,0,33,0,33,0,33,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,35,0,35,0,35,0,35,0,35,0,35,0,35,0,0,0,0,0,35,0,35,0,35,0,35,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,1,0,15,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,16,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,4,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,17,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,8,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,15,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,16,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,4,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,17,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,8,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,9,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,20,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,20,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,16,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,19,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,4,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,19,0,0,0,0,0,1,1,0,0,0,0,0,0,1,4,19,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,7,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,18,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,19,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,21,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,21,0,0,0,0,0,0,0,19,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,23,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,11,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,10,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,14,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,12,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,15,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,23,0,0,0,0,0,0,0,23,0,0,1,0,0,1,1,0,0,0,0,0,0,1,2,23,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,24,0,0,0,0,0,0,0,10,0,0,1,0,0,1,1,0,0,0,0,0,0,1,2,24,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,18,0,0,0,1,0,1,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,13,0,0,0,0,0,125,0,123,0,107,101,121,0,97,114,114,97,121,0,95,115,116,114,105,110,103,95,99,111,110,116,101,110,116,0,100,111,99,117,109,101,110,116,0,99,111,109,109,101,110,116,0,111,98,106,101,99,116,0,112,97,105,114,0,110,117,109,98,101,114,0,110,117,108,108,0,115,116,114,105,110,103,0,116,114,117,101,0,95,118,97,108,117,101,0,102,97,108,115,101,0,101,115,99,97,112,101,95,115,101,113,117,101,110,99,101,0,101,110,100,0,93,0,91,0,58,0,97,114,114,97,121,95,114,101,112,101,97,116,49,0,100,111,99,117,109,101,110,116,95,114,101,112,101,97,116,49,0,111,98,106,101,99,116,95,114,101,112,101,97,116,49,0,44,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,28,0,44,0,23,0,45,0,7,0,47,0,3,0,48,0,35,0,58,0,25,0,91,0,26,0,92,0,18,0,93,0,27,0,102,0,8,0,110,0,17,0,116,0,14,0,123,0,22,0,125,0,24,0,0,0,0,0,0,0,0,0,34,0,34,0,47,0,34,0,92,0,34,0,98,0,34,0,102,0,34,0,110,0,34,0,114,0,34,0,116,0,34,0,117,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,28,0,44,0,23,0,45,0,7,0,47,0,3,0,48,0,35,0,58,0,25,0,91,0,26,0,93,0,27,0,102,0,8,0,110,0,17,0,116,0,14,0,123,0,22,0,125,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,25,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,32,0,0,0,7,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,48,4,0,0,0,0,0,0,208,2,0,0,144,5,0,0,0,11,0,0,100,11,0,0,52,3,0,0,60,3,0,0,80,3,0,0,160,3,0,0,210,3,0,0,224,3,0,0,64,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,3,0,0,0,0,0,0,0,0,0,0,0,9,0,0,146,8,0,0,56,9,0,0,144,8,0,0,8,9,0,0,6,9,0,0,4,9,0,0,58,9,0,0,159,8,0,0,240,8,0,0,203,8,0,0,222,8,0,0,234,8,0,0,210,8,0,0,183,8,0,0,174,8,0,0,227,8,0,0,191,8,0,0,198,8,0,0,152,8,0,0,215,8,0,0,158,8,0,0,24,9,0,0,41,9,0,0,10,9,0,0,0,0,0,0,148,8,0,0,228,8,0,0]);let St=null,Ot=null;const At=async e=>{if(null===St&&null===Ot)Ot=vt.iX.init({wasmBinary:wt,locateFile:e=>e}).then(()=>vt.TM.load(Et)).then(e=>{const t=new vt.iX;return t.setLanguage(e),t}).finally(()=>{Ot=null}),St=await Ot;else if(null===St&&null!==Ot)St=await Ot;else if(null===St)throw new Je("Error while initializing web-tree-sitter and loading tree-sitter-json grammar.");return St.parse(e)};const Ct=class extends be{constructor(e,t,s){super(e,t,s),this.element="annotation"}get code(){if(this.hasAttributesProperty("code"))return this.attributes.get("code")}set code(e){this.attributes.set("code",e)}},It=e=>({type:e.nodeType,startPosition:e.startPosition,endPosition:e.endPosition,startIndex:e.startIndex,endIndex:e.endIndex,text:e.nodeText,isNamed:e.nodeIsNamed,isMissing:e.nodeIsMissing,hasError:e.currentNode.hasError,fieldName:e.currentFieldName}),Tt=(e,t,s)=>{s.sourceMap&&(t.startLine=e.startPosition.row,t.startCharacter=e.startPosition.column,t.startOffset=e.startIndex,t.endLine=e.endPosition.row,t.endCharacter=e.endPosition.column,t.endOffset=e.endIndex)},Pt=(e,t)=>{const s={indent:e.indent};return t&&Object.assign(s,t),{json:s}},Ft=(e,t)=>{const s=t-e;return s>0?s:2},Mt=(e,t,s)=>{const n=It(e);if(!n.isNamed&&n.isMissing){const e=n.type||n.text,t=new Ct(`(Missing ${e})`);return t.classes.push("warning"),Tt(n,t,s),s.annotations.push(t),null}const r=t[n.type];return r?r(e,s):null},Bt=(e,t,s)=>{const n=[];if(e.gotoFirstChild()){do{const r=Mt(e,t,s);null!==r&&n.push(r)}while(e.gotoNextSibling());e.gotoParent()}return n},jt={};var kt;Object.assign(jt,(kt=jt,{document(e,t){const s=It(e),n=new ct;Tt(s,n,t);const r=Bt(e,kt,t);for(const e of r)n.push(e);const i=n.findElements(rt);i.length>0&&i[0].classes.push("result");for(const e of t.annotations)n.push(e);return t.annotations=[],n},object(e,t){const s=It(e),n=new Ie;if(Tt(s,n,t),t.style&&0===t.indent&&e.gotoFirstChild()){do{if("pair"===e.nodeType){t.indent=Ft(s.startPosition.column,e.startPosition.column);break}}while(e.gotoNextSibling());e.gotoParent()}const r=Bt(e,kt,t);for(const e of r)n.push(e);return t.style&&(n.style=Pt(t)),n},array(e,t){const s=It(e),n=new ke;Tt(s,n,t);const r=Bt(e,kt,t);for(const e of r)n.push(e);return t.style&&(n.style=Pt(t)),n},pair(e,t){const s=It(e);let n=null,r=null;if(e.gotoFirstChild()){do{const s=e.currentFieldName;"key"===s?n=Mt(e,kt,t):"value"===s?r=Mt(e,kt,t):"ERROR"===e.nodeType&&Mt(e,kt,t)}while(e.gotoNextSibling());e.gotoParent()}const i=new Ce(n??new be(""),r??new be(""));return Tt(s,i,t),i},string(e,t){const s=It(e);let n;try{n=new be(JSON.parse(s.text))}catch(e){n=new be(s.text),e instanceof Error&&n.meta.set("jsonParse",{isError:!0,errorType:e.name,errorMessage:e.message})}return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},number(e,t){const s=It(e),n=new Be(Number(s.text));return t.style&&(n.style=Pt(t,{rawContent:s.text})),Tt(s,n,t),n},null(e,t){const s=It(e),n=new Me;return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},true(e,t){const s=It(e),n=new je(!0);return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},false(e,t){const s=It(e),n=new je(!1);return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},ERROR(e,t){const s=It(e),n=s.hasError?`(Error ${s.text})`:`(Unexpected ${s.text})`,r=new Ct(n);return r.classes.push("error"),Tt(s,r,t),t.annotations.push(r),null}}));const Nt=(e,{sourceMap:t=!1,style:s=!1}={})=>{const n=e.walk(),r={sourceMap:t,style:s,indent:0,annotations:[]},i=Mt(n,jt,r);if(null===i){const e=new ct;for(const t of r.annotations)e.push(t);return e}return i},Rt=/(?<true>^\s*true\s*$)|(?<false>^\s*false\s*$)|(?<null>^\s*null\s*$)|(?<number>^\s*\d+\s*$)|(?<object>^\s*{\s*)|(?<array>^\s*\[\s*)|(?<string>^\s*"(((?=\\)\\(["\\/bfnrt]|u[0-9a-fA-F]{4}))|[^"\\\x00-\x1F\x7F])*"\s*$)/,qt=(new He,async(e,{strict:t=!1}={})=>t?(async e=>{if(0===e.trim().length)return!1;try{return JSON.parse(e),!0}catch{return!1}})(e):(async e=>{if(!Rt.test(e))return!1;let t=null;try{return t=await At(e),"ERROR"!==t.rootNode.type}catch{return!1}finally{t?.delete()}})(e)),$t=async(e,{sourceMap:t=!1,style:s=!1,strict:n=!1}={})=>{if(n&&t)throw new ze("Cannot use sourceMap with strict parsing. Strict parsing does not support source maps.");if(n&&s)throw new ze("Cannot use style with strict parsing. Strict parsing does not support style preservation.");return n?(async e=>{const t=new ct;if(0===e.trim().length)return t;let s=JSON.parse(e);const n=xt(s);return s=null,n.classes.push("result"),t.push(n),t})(e):(async(e,{sourceMap:t=!1,style:s=!1}={})=>{const n=await At(e);try{return Nt(n,{sourceMap:t,style:s})}finally{n.delete()}})(e,{sourceMap:t,style:s})};var Dt=r(function(e,t){return m(function(s,n){return s[n]=e(t[n],n,t),s},{},V(t))});const Vt=Dt;const Lt=n(function(e){return null==e});var Ut=r(function(e,t){if(0===e.length||Lt(t))return!1;for(var s=t,n=0;n<e.length;){if(Lt(s)||!B(e[n],s))return!1;s=s[e[n]],n+=1}return!0});const Ht=Ut;var Wt=r(function(e,t){return Ht([e],t)});const Gt=Wt;const Zt=i(function(e,t,s){return e(u(t,s))});function Jt(e,t){for(var s=t,n=0;n<e.length;n+=1){if(null==s)return;var r=e[n];s=a(r)?c(r,s):s[r]}return s}const zt=r(Jt);function Xt(e,t){return function(){return t.call(this,e.apply(this,arguments))}}function Qt(e,t,s){for(var n=0,r=s.length;n<r;){if((t=e["@@transducer/step"](t,s[n]))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}n+=1}return e["@@transducer/result"](t)}var Kt=r(function(e,t){return T(e.length,function(){return e.apply(t,arguments)})});const Yt=Kt;function es(e,t,s){for(var n=s.next();!n.done;){if((t=e["@@transducer/step"](t,n.value))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}n=s.next()}return e["@@transducer/result"](t)}function ts(e,t,s,n){return e["@@transducer/result"](s[n](Yt(e["@@transducer/step"],e),t))}const ss=b(Qt,ts,es);var ns=function(){function e(e){this.f=e}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(e){return e},e.prototype["@@transducer/step"]=function(e,t){return this.f(e,t)},e}();const rs=i(function(e,t,s){return ss("function"==typeof e?new ns(e):e,t,s)});function is(e,t){return function(){var s=arguments.length;if(0===s)return t();var n=arguments[s-1];return _(n)||"function"!=typeof n[e]?t.apply(this,arguments):n[e].apply(n,Array.prototype.slice.call(arguments,0,s-1))}}const os=i(is("slice",function(e,t,s){return Array.prototype.slice.call(s,e,t)}));const as=n(is("tail",os(1,1/0)));function cs(){if(0===arguments.length)throw new Error("pipe requires at least one argument");return T(arguments[0].length,rs(Xt,arguments[0],as(arguments)))}var ls=function(e,t){switch(arguments.length){case 0:return ls;case 1:return function t(s){return 0===arguments.length?t:K(e,s)};default:return K(e,t)}};const us=ls;function ds(e,t){return function(e,t,s){var n,r;if("function"==typeof e.indexOf)switch(typeof t){case"number":if(0===t){for(n=1/t;s<e.length;){if(0===(r=e[s])&&1/r===n)return s;s+=1}return-1}if(t!=t){for(;s<e.length;){if("number"==typeof(r=e[s])&&r!=r)return s;s+=1}return-1}return e.indexOf(t,s);case"string":case"boolean":case"function":case"undefined":return e.indexOf(t,s);case"object":if(null===t)return e.indexOf(t,s)}for(;s<e.length;){if(se(e[s],t))return s;s+=1}return-1}(t,e,0)>=0}function hs(e){return'"'+e.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0").replace(/"/g,'\\"')+'"'}var ps=function(e){return(e<10?"0":"")+e};const ms="function"==typeof Date.prototype.toISOString?function(e){return e.toISOString()}:function(e){return e.getUTCFullYear()+"-"+ps(e.getUTCMonth()+1)+"-"+ps(e.getUTCDate())+"T"+ps(e.getUTCHours())+":"+ps(e.getUTCMinutes())+":"+ps(e.getUTCSeconds())+"."+(e.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"};function _s(e){return"[object Object]"===Object.prototype.toString.call(e)}var gs=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){return this.f(t)?this.xf["@@transducer/step"](e,t):e},e}();function fs(e){return function(t){return new gs(e,t)}}var ys=r(E(["fantasy-land/filter","filter"],fs,function(e,t){return _s(t)?m(function(s,n){return e(t[n])&&(s[n]=t[n]),s},{},V(t)):(s=t,"[object Map]"===Object.prototype.toString.call(s)?function(e,t){for(var s=new Map,n=t.entries(),r=n.next();!r.done;)e(r.value[1])&&s.set(r.value[0],r.value[1]),r=n.next();return s}(e,t):function(e,t){for(var s=0,n=t.length,r=[];s<n;)e(t[s])&&(r[r.length]=t[s]),s+=1;return r}(e,t));var s}));const bs=ys;const xs=r(function(e,t){return bs((s=e,function(){return!s.apply(this,arguments)}),t);var s});function vs(e,t){var s=function(s){var n=t.concat([e]);return ds(s,n)?"<Circular>":vs(s,n)},n=function(e,t){return S(function(t){return hs(t)+": "+s(e[t])},t.slice().sort())};switch(Object.prototype.toString.call(e)){case"[object Arguments]":return"(function() { return arguments; }("+S(s,e).join(", ")+"))";case"[object Array]":return"["+S(s,e).concat(n(e,xs(function(e){return/^\d+$/.test(e)},V(e)))).join(", ")+"]";case"[object Boolean]":return"object"==typeof e?"new Boolean("+s(e.valueOf())+")":e.toString();case"[object Date]":return"new Date("+(isNaN(e.valueOf())?s(NaN):hs(ms(e)))+")";case"[object Map]":return"new Map("+s(Array.from(e))+")";case"[object Null]":return"null";case"[object Number]":return"object"==typeof e?"new Number("+s(e.valueOf())+")":1/e==-1/0?"-0":e.toString(10);case"[object Set]":return"new Set("+s(Array.from(e).sort())+")";case"[object String]":return"object"==typeof e?"new String("+s(e.valueOf())+")":hs(e);case"[object Undefined]":return"undefined";default:if("function"==typeof e.toString){var r=e.toString();if("[object Object]"!==r)return r}return"{"+n(e,V(e)).join(", ")+"}"}}const ws=n(function(e){return vs(e,[])});const Es=i(function(e,t,s){return e(Jt(t,s))});function Ss(e){var t=Object.prototype.toString.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t}const Os=r(function(e,t){return e&&t});const As=r(function(e,t){return Ss(e)?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:J(Os)(e,t)});const Cs=se(null);const Is=z(Cs);function Ts(e){return Ts="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ts(e)}const Ps=function(e){return"object"===Ts(e)};const Fs=M(1,As(Is,Ps));const Ms=r(function(e,t){if(e===t)return t;function s(e,t){if(e>t!=t>e)return t>e?t:e}var n=s(e,t);if(void 0!==n)return n;var r=s(typeof e,typeof t);if(void 0!==r)return r===typeof e?e:t;var i=ws(e),o=s(i,ws(t));return void 0!==o&&o===i?e:t});const Bs=r(function(e,t){return U(u(e),t)});const js=n(function(e){return M(rs(Ms,0,Bs("length",e)),function(){for(var t=0,s=e.length;t<s;){if(e[t].apply(this,arguments))return!0;t+=1}return!1})});const ks=M(1,cs(Y,us("GeneratorFunction")));const Ns=M(1,cs(Y,us("AsyncFunction")));const Rs=js([cs(Y,us("Function")),ks,Ns]);var qs=cs(Y,us("Object")),$s=cs(ws,se(ws(Object))),Ds=Es(As(Rs,$s),["constructor"]);const Vs=M(1,function(e){if(!Fs(e)||!qs(e))return!1;var t=Object.getPrototypeOf(e);return!!Cs(t)||Ds(t)});const Ls=M(1,cs(Y,us("String")));var Us=n(function(e){return M(e.length,e)});const Hs=Us;const Ws=r(function(e,t){return M(e+1,function(){var s=arguments[e];if(null!=s&&Ss(s[t]))return s[t].apply(s,Array.prototype.slice.call(arguments,0,e));throw new TypeError(ws(s)+' does not have a method named "'+t+'"')})});const Gs=Ws(1,"split");var Zs=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){if(this.f){if(this.f(t))return e;this.f=null}return this.xf["@@transducer/step"](e,t)},e}();function Js(e){return function(t){return new Zs(e,t)}}const zs=r(E(["dropWhile"],Js,function(e,t){for(var s=0,n=t.length;s<n&&e(t[s]);)s+=1;return os(s,1/0,t)}));const Xs=Ws(1,"join");var Qs=n(function(e){return M(e.length,function(t,s){var n=Array.prototype.slice.call(arguments,0);return n[0]=s,n[1]=t,e.apply(this,n)})});const Ks=Qs(r(ds));const Ys=Hs(function(e,t){return cs(Gs(""),zs(Ks(e)),Xs(""))(t)}),en=new WeakMap,tn=e=>{if(en.has(e))return en.get(e);const t={},s=(e,n,r)=>("string"==typeof e.element&&(t[e.element]=e.$visitor?[...r,"$visitor"]:r),Vt((e,t)=>{const i=[...r,t];if(Vs(e)&&Gt("$ref",e)&&Zt(Ls,"$ref",e)){const t=zt(["$ref"],e),s=Ys("#/",t),r=zt(s.split("/"),n),{$ref:i,...o}=e;return Object.keys(o).length>0&&Vs(r)?{...r,...o}:r}return Vs(e)?s(e,n,i):e},e)),n=s(e,e,[]);return n.elementMap=t,en.set(e,n),n},sn=function(){const e=rn,t=nn,s=this,n="parser.js: Parser(): ";s.ast=void 0,s.stats=void 0,s.trace=void 0,s.callbacks=[];let r,i,o,a,c,l,u,d=0,h=0,p=0,m=0,_=0,g=new function(){this.state=e.ACTIVE,this.phraseLength=0,this.refresh=()=>{this.state=e.ACTIVE,this.phraseLength=0}};s.parse=(f,y,x,v)=>{const w=`${n}parse(): `;d=0,h=0,p=0,m=0,_=0,r=void 0,i=void 0,o=void 0,a=void 0,g.refresh(),c=void 0,l=void 0,u=void 0,a=t.stringToChars(x),r=f.rules,i=f.udts;const E=y.toLowerCase();let S;for(const e in r)if(r.hasOwnProperty(e)&&E===r[e].lower){S=r[e].index;break}if(void 0===S)throw new Error(`${w}start rule name '${startRule}' not recognized`);(()=>{const e=`${n}initializeCallbacks(): `;let t,o;for(c=[],l=[],t=0;t<r.length;t+=1)c[t]=void 0;for(t=0;t<i.length;t+=1)l[t]=void 0;const a=[];for(t=0;t<r.length;t+=1)a.push(r[t].lower);for(t=0;t<i.length;t+=1)a.push(i[t].lower);for(const n in s.callbacks)if(s.callbacks.hasOwnProperty(n)){if(t=a.indexOf(n.toLowerCase()),t<0)throw new Error(`${e}syntax callback '${n}' not a rule or udt name`);if(o=s.callbacks[n]?s.callbacks[n]:void 0,"function"!=typeof o&&void 0!==o)throw new Error(`${e}syntax callback[${n}] must be function reference or falsy)`);t<r.length?c[t]=o:l[t-r.length]=o}})(),s.trace&&s.trace.init(r,i,a),s.stats&&s.stats.init(r,i),s.ast&&s.ast.init(r,i,a),u=v,o=[{type:e.RNM,index:S}],b(0,0),o=void 0;let O=!1;switch(g.state){case e.ACTIVE:throw new Error(`${w}final state should never be 'ACTIVE'`);case e.NOMATCH:O=!1;break;case e.EMPTY:case e.MATCH:O=g.phraseLength===a.length;break;default:throw new Error("unrecognized state")}return{success:O,state:g.state,stateName:e.idName(g.state),length:a.length,matched:g.phraseLength,maxMatched:_,maxTreeDepth:p,nodeHits:m}};const f=(t,s,r,i)=>{if(s.phraseLength>r){let e=`${n}opRNM(${t.name}): callback function error: `;throw e+=`sysData.phraseLength: ${s.phraseLength}`,e+=` must be <= remaining chars: ${r}`,new Error(e)}switch(s.state){case e.ACTIVE:if(!i)throw new Error(`${n}opRNM(${t.name}): callback function return error. ACTIVE state not allowed.`);break;case e.EMPTY:s.phraseLength=0;break;case e.MATCH:0===s.phraseLength&&(s.state=e.EMPTY);break;case e.NOMATCH:s.phraseLength=0;break;default:throw new Error(`${n}opRNM(${t.name}): callback function return error. Unrecognized return state: ${s.state}`)}},y=(t,c)=>{let h,p,m;const _=o[t],f=i[_.index];g.UdtIndex=f.index,d||(m=s.ast&&s.ast.udtDefined(_.index),m&&(p=r.length+_.index,h=s.ast.getLength(),s.ast.down(p,f.name)));const y=a.length-c;l[_.index](g,a,c,u),((t,s,r)=>{if(s.phraseLength>r){let e=`${n}opUDT(${t.name}): callback function error: `;throw e+=`sysData.phraseLength: ${s.phraseLength}`,e+=` must be <= remaining chars: ${r}`,new Error(e)}switch(s.state){case e.ACTIVE:throw new Error(`${n}opUDT(${t.name}) ACTIVE state return not allowed.`);case e.EMPTY:if(!t.empty)throw new Error(`${n}opUDT(${t.name}) may not return EMPTY.`);s.phraseLength=0;break;case e.MATCH:if(0===s.phraseLength){if(!t.empty)throw new Error(`${n}opUDT(${t.name}) may not return EMPTY.`);s.state=e.EMPTY}break;case e.NOMATCH:s.phraseLength=0;break;default:throw new Error(`${n}opUDT(${t.name}): callback function return error. Unrecognized return state: ${s.state}`)}})(f,g,y),d||m&&(g.state===e.NOMATCH?s.ast.setLength(h):s.ast.up(p,f.name,c,g.phraseLength))},b=(t,i)=>{const l=`${n}opExecute(): `,x=o[t];switch(m+=1,h>p&&(p=h),h+=1,g.refresh(),s.trace&&s.trace.down(x,i),x.type){case e.ALT:((t,s)=>{const n=o[t];for(let t=0;t<n.children.length&&(b(n.children[t],s),g.state===e.NOMATCH);t+=1);})(t,i);break;case e.CAT:((t,n)=>{let r,i,a,c;const l=o[t];s.ast&&(i=s.ast.getLength()),r=!0,a=n,c=0;for(let t=0;t<l.children.length;t+=1){if(b(l.children[t],a),g.state===e.NOMATCH){r=!1;break}a+=g.phraseLength,c+=g.phraseLength}r?(g.state=0===c?e.EMPTY:e.MATCH,g.phraseLength=c):(g.state=e.NOMATCH,g.phraseLength=0,s.ast&&s.ast.setLength(i))})(t,i);break;case e.REP:((t,n)=>{let r,i,c,l;const u=o[t];if(0===u.max)return g.state=e.EMPTY,void(g.phraseLength=0);for(i=n,c=0,l=0,s.ast&&(r=s.ast.getLength());!(i>=a.length)&&(b(t+1,i),g.state!==e.NOMATCH)&&g.state!==e.EMPTY&&(l+=1,c+=g.phraseLength,i+=g.phraseLength,l!==u.max););g.state===e.EMPTY||l>=u.min?(g.state=0===c?e.EMPTY:e.MATCH,g.phraseLength=c):(g.state=e.NOMATCH,g.phraseLength=0,s.ast&&s.ast.setLength(r))})(t,i);break;case e.RNM:((t,n)=>{let i,l,h;const p=o[t],m=r[p.index],_=c[m.index];if(d||(l=s.ast&&s.ast.ruleDefined(p.index),l&&(i=s.ast.getLength(),s.ast.down(p.index,r[p.index].name))),_){const t=a.length-n;_(g,a,n,u),f(m,g,t,!0),g.state===e.ACTIVE&&(h=o,o=m.opcodes,b(0,n),o=h,_(g,a,n,u),f(m,g,t,!1))}else h=o,o=m.opcodes,b(0,n,g),o=h;d||l&&(g.state===e.NOMATCH?s.ast.setLength(i):s.ast.up(p.index,m.name,n,g.phraseLength))})(t,i);break;case e.TRG:((t,s)=>{const n=o[t];g.state=e.NOMATCH,s<a.length&&n.min<=a[s]&&a[s]<=n.max&&(g.state=e.MATCH,g.phraseLength=1)})(t,i);break;case e.TBS:((t,s)=>{const n=o[t],r=n.string.length;if(g.state=e.NOMATCH,s+r<=a.length){for(let e=0;e<r;e+=1)if(a[s+e]!==n.string[e])return;g.state=e.MATCH,g.phraseLength=r}})(t,i);break;case e.TLS:((t,s)=>{let n;const r=o[t];g.state=e.NOMATCH;const i=r.string.length;if(0!==i){if(s+i<=a.length){for(let e=0;e<i;e+=1)if(n=a[s+e],n>=65&&n<=90&&(n+=32),n!==r.string[e])return;g.state=e.MATCH,g.phraseLength=i}}else g.state=e.EMPTY})(t,i);break;case e.UDT:y(t,i);break;case e.AND:((t,s)=>{switch(d+=1,b(t+1,s),d-=1,g.phraseLength=0,g.state){case e.EMPTY:case e.MATCH:g.state=e.EMPTY;break;case e.NOMATCH:g.state=e.NOMATCH;break;default:throw new Error(`opAND: invalid state ${g.state}`)}})(t,i);break;case e.NOT:((t,s)=>{switch(d+=1,b(t+1,s),d-=1,g.phraseLength=0,g.state){case e.EMPTY:case e.MATCH:g.state=e.NOMATCH;break;case e.NOMATCH:g.state=e.EMPTY;break;default:throw new Error(`opNOT: invalid state ${g.state}`)}})(t,i);break;default:throw new Error(`${l}unrecognized operator`)}d||i+g.phraseLength>_&&(_=i+g.phraseLength),s.stats&&s.stats.collect(x,g),s.trace&&s.trace.up(x,g.state,i,g.phraseLength),h-=1}},nn={stringToChars:e=>[...e].map(e=>e.codePointAt(0)),charsToString:(e,t,s)=>{let n=e;for(;!(void 0===t||t<0);){if(void 0===s){n=e.slice(t);break}if(s<=0)return"";n=e.slice(t,t+s);break}return String.fromCodePoint(...n)}},rn={ALT:1,CAT:2,REP:3,RNM:4,TRG:5,TBS:6,TLS:7,UDT:11,AND:12,NOT:13,ACTIVE:100,MATCH:101,EMPTY:102,NOMATCH:103,SEM_PRE:200,SEM_POST:201,SEM_OK:300,idName:e=>{switch(e){case rn.ALT:return"ALT";case rn.CAT:return"CAT";case rn.REP:return"REP";case rn.RNM:return"RNM";case rn.TRG:return"TRG";case rn.TBS:return"TBS";case rn.TLS:return"TLS";case rn.UDT:return"UDT";case rn.AND:return"AND";case rn.NOT:return"NOT";case rn.ACTIVE:return"ACTIVE";case rn.EMPTY:return"EMPTY";case rn.MATCH:return"MATCH";case rn.NOMATCH:return"NOMATCH";case rn.SEM_PRE:return"SEM_PRE";case rn.SEM_POST:return"SEM_POST";case rn.SEM_OK:return"SEM_OK";default:return"UNRECOGNIZED STATE"}}};function on(){this.grammarObject="grammarObject",this.rules=[],this.rules[0]={name:"json-pointer",lower:"json-pointer",index:0,isBkr:!1},this.rules[1]={name:"reference-token",lower:"reference-token",index:1,isBkr:!1},this.rules[2]={name:"unescaped",lower:"unescaped",index:2,isBkr:!1},this.rules[3]={name:"escaped",lower:"escaped",index:3,isBkr:!1},this.rules[4]={name:"array-location",lower:"array-location",index:4,isBkr:!1},this.rules[5]={name:"array-index",lower:"array-index",index:5,isBkr:!1},this.rules[6]={name:"array-dash",lower:"array-dash",index:6,isBkr:!1},this.rules[7]={name:"slash",lower:"slash",index:7,isBkr:!1},this.udts=[],this.rules[0].opcodes=[],this.rules[0].opcodes[0]={type:3,min:0,max:1/0},this.rules[0].opcodes[1]={type:2,children:[2,3]},this.rules[0].opcodes[2]={type:4,index:7},this.rules[0].opcodes[3]={type:4,index:1},this.rules[1].opcodes=[],this.rules[1].opcodes[0]={type:3,min:0,max:1/0},this.rules[1].opcodes[1]={type:1,children:[2,3]},this.rules[1].opcodes[2]={type:4,index:2},this.rules[1].opcodes[3]={type:4,index:3},this.rules[2].opcodes=[],this.rules[2].opcodes[0]={type:1,children:[1,2,3]},this.rules[2].opcodes[1]={type:5,min:0,max:46},this.rules[2].opcodes[2]={type:5,min:48,max:125},this.rules[2].opcodes[3]={type:5,min:127,max:1114111},this.rules[3].opcodes=[],this.rules[3].opcodes[0]={type:2,children:[1,2]},this.rules[3].opcodes[1]={type:7,string:[126]},this.rules[3].opcodes[2]={type:1,children:[3,4]},this.rules[3].opcodes[3]={type:7,string:[48]},this.rules[3].opcodes[4]={type:7,string:[49]},this.rules[4].opcodes=[],this.rules[4].opcodes[0]={type:1,children:[1,2]},this.rules[4].opcodes[1]={type:4,index:5},this.rules[4].opcodes[2]={type:4,index:6},this.rules[5].opcodes=[],this.rules[5].opcodes[0]={type:1,children:[1,2]},this.rules[5].opcodes[1]={type:6,string:[48]},this.rules[5].opcodes[2]={type:2,children:[3,4]},this.rules[5].opcodes[3]={type:5,min:49,max:57},this.rules[5].opcodes[4]={type:3,min:0,max:1/0},this.rules[5].opcodes[5]={type:5,min:48,max:57},this.rules[6].opcodes=[],this.rules[6].opcodes[0]={type:7,string:[45]},this.rules[7].opcodes=[],this.rules[7].opcodes[0]={type:7,string:[47]},this.toString=function(){let e="";return e+="; JavaScript Object Notation (JSON) Pointer ABNF syntax\n",e+="; https://datatracker.ietf.org/doc/html/rfc6901\n",e+="json-pointer = *( slash reference-token ) ; MODIFICATION: surrogate text rule used\n",e+="reference-token = *( unescaped / escaped )\n",e+="unescaped = %x00-2E / %x30-7D / %x7F-10FFFF\n",e+=" ; %x2F ('/') and %x7E ('~') are excluded from 'unescaped'\n",e+='escaped = "~" ( "0" / "1" )\n',e+=" ; representing '~' and '/', respectively\n",e+="\n",e+="; https://datatracker.ietf.org/doc/html/rfc6901#section-4\n",e+="array-location = array-index / array-dash\n",e+="array-index = %x30 / ( %x31-39 *(%x30-39) )\n",e+=' ; "0", or digits without a leading "0"\n',e+='array-dash = "-"\n',e+="\n",e+="; Surrogate named rules\n",e+='slash = "/"\n','; JavaScript Object Notation (JSON) Pointer ABNF syntax\n; https://datatracker.ietf.org/doc/html/rfc6901\njson-pointer = *( slash reference-token ) ; MODIFICATION: surrogate text rule used\nreference-token = *( unescaped / escaped )\nunescaped = %x00-2E / %x30-7D / %x7F-10FFFF\n ; %x2F (\'/\') and %x7E (\'~\') are excluded from \'unescaped\'\nescaped = "~" ( "0" / "1" )\n ; representing \'~\' and \'/\', respectively\n\n; https://datatracker.ietf.org/doc/html/rfc6901#section-4\narray-location = array-index / array-dash\narray-index = %x30 / ( %x31-39 *(%x30-39) )\n ; "0", or digits without a leading "0"\narray-dash = "-"\n\n; Surrogate named rules\nslash = "/"\n'}}class an extends Error{constructor(e,t=void 0){if(super(e,t),this.name=this.constructor.name,"string"==typeof e&&(this.message=e),"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack,null!=t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"cause")&&!("cause"in this)){const{cause:e}=t;this.cause=e,e instanceof Error&&"stack"in e&&(this.stack=`${this.stack}\nCAUSE: ${e.stack}`)}if(null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}}const cn=an;new on;new on,new sn,new on,new sn,new on,new sn,new on,new sn;const ln=e=>{if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("Reference token must be a string or number");return String(e).replace(/~/g,"~0").replace(/\//g,"~1")};const un=class extends cn{},dn=e=>{if(!Array.isArray(e))throw new TypeError("Reference tokens must be a list of strings or numbers");try{return 0===e.length?"":`/${e.map(e=>{if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("Reference token must be a string or number");return ln(String(e))}).join("/")}`}catch(t){throw new un("Unexpected error during JSON Pointer compilation",{cause:t,referenceTokens:e})}};class hn extends Error{constructor(e,t=void 0){if(super(e,t),this.name=this.constructor.name,"string"==typeof e&&(this.message=e),"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack,null!=t&&"object"==typeof t&&Object.hasOwn(t,"cause")&&!("cause"in this)){const{cause:e}=t;this.cause=e,e instanceof Error&&"stack"in e&&(this.stack=`${this.stack}\nCAUSE: ${e.stack}`)}if(null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}}const pn=hn;new function(){this.grammarObject="grammarObject",this.rules=[],this.rules[0]={name:"jsonpath-query",lower:"jsonpath-query",index:0,isBkr:!1},this.rules[1]={name:"segments",lower:"segments",index:1,isBkr:!1},this.rules[2]={name:"B",lower:"b",index:2,isBkr:!1},this.rules[3]={name:"S",lower:"s",index:3,isBkr:!1},this.rules[4]={name:"root-identifier",lower:"root-identifier",index:4,isBkr:!1},this.rules[5]={name:"selector",lower:"selector",index:5,isBkr:!1},this.rules[6]={name:"name-selector",lower:"name-selector",index:6,isBkr:!1},this.rules[7]={name:"string-literal",lower:"string-literal",index:7,isBkr:!1},this.rules[8]={name:"double-quoted",lower:"double-quoted",index:8,isBkr:!1},this.rules[9]={name:"single-quoted",lower:"single-quoted",index:9,isBkr:!1},this.rules[10]={name:"ESC",lower:"esc",index:10,isBkr:!1},this.rules[11]={name:"unescaped",lower:"unescaped",index:11,isBkr:!1},this.rules[12]={name:"escapable",lower:"escapable",index:12,isBkr:!1},this.rules[13]={name:"hexchar",lower:"hexchar",index:13,isBkr:!1},this.rules[14]={name:"non-surrogate",lower:"non-surrogate",index:14,isBkr:!1},this.rules[15]={name:"high-surrogate",lower:"high-surrogate",index:15,isBkr:!1},this.rules[16]={name:"low-surrogate",lower:"low-surrogate",index:16,isBkr:!1},this.rules[17]={name:"HEXDIG",lower:"hexdig",index:17,isBkr:!1},this.rules[18]={name:"wildcard-selector",lower:"wildcard-selector",index:18,isBkr:!1},this.rules[19]={name:"index-selector",lower:"index-selector",index:19,isBkr:!1},this.rules[20]={name:"int",lower:"int",index:20,isBkr:!1},this.rules[21]={name:"DIGIT1",lower:"digit1",index:21,isBkr:!1},this.rules[22]={name:"slice-selector",lower:"slice-selector",index:22,isBkr:!1},this.rules[23]={name:"start",lower:"start",index:23,isBkr:!1},this.rules[24]={name:"end",lower:"end",index:24,isBkr:!1},this.rules[25]={name:"step",lower:"step",index:25,isBkr:!1},this.rules[26]={name:"filter-selector",lower:"filter-selector",index:26,isBkr:!1},this.rules[27]={name:"logical-expr",lower:"logical-expr",index:27,isBkr:!1},this.rules[28]={name:"logical-or-expr",lower:"logical-or-expr",index:28,isBkr:!1},this.rules[29]={name:"logical-and-expr",lower:"logical-and-expr",index:29,isBkr:!1},this.rules[30]={name:"basic-expr",lower:"basic-expr",index:30,isBkr:!1},this.rules[31]={name:"paren-expr",lower:"paren-expr",index:31,isBkr:!1},this.rules[32]={name:"logical-not-op",lower:"logical-not-op",index:32,isBkr:!1},this.rules[33]={name:"test-expr",lower:"test-expr",index:33,isBkr:!1},this.rules[34]={name:"filter-query",lower:"filter-query",index:34,isBkr:!1},this.rules[35]={name:"rel-query",lower:"rel-query",index:35,isBkr:!1},this.rules[36]={name:"current-node-identifier",lower:"current-node-identifier",index:36,isBkr:!1},this.rules[37]={name:"comparison-expr",lower:"comparison-expr",index:37,isBkr:!1},this.rules[38]={name:"literal",lower:"literal",index:38,isBkr:!1},this.rules[39]={name:"comparable",lower:"comparable",index:39,isBkr:!1},this.rules[40]={name:"comparison-op",lower:"comparison-op",index:40,isBkr:!1},this.rules[41]={name:"singular-query",lower:"singular-query",index:41,isBkr:!1},this.rules[42]={name:"rel-singular-query",lower:"rel-singular-query",index:42,isBkr:!1},this.rules[43]={name:"abs-singular-query",lower:"abs-singular-query",index:43,isBkr:!1},this.rules[44]={name:"singular-query-segments",lower:"singular-query-segments",index:44,isBkr:!1},this.rules[45]={name:"name-segment",lower:"name-segment",index:45,isBkr:!1},this.rules[46]={name:"index-segment",lower:"index-segment",index:46,isBkr:!1},this.rules[47]={name:"number",lower:"number",index:47,isBkr:!1},this.rules[48]={name:"frac",lower:"frac",index:48,isBkr:!1},this.rules[49]={name:"exp",lower:"exp",index:49,isBkr:!1},this.rules[50]={name:"true",lower:"true",index:50,isBkr:!1},this.rules[51]={name:"false",lower:"false",index:51,isBkr:!1},this.rules[52]={name:"null",lower:"null",index:52,isBkr:!1},this.rules[53]={name:"function-name",lower:"function-name",index:53,isBkr:!1},this.rules[54]={name:"function-name-first",lower:"function-name-first",index:54,isBkr:!1},this.rules[55]={name:"function-name-char",lower:"function-name-char",index:55,isBkr:!1},this.rules[56]={name:"LCALPHA",lower:"lcalpha",index:56,isBkr:!1},this.rules[57]={name:"function-expr",lower:"function-expr",index:57,isBkr:!1},this.rules[58]={name:"function-argument",lower:"function-argument",index:58,isBkr:!1},this.rules[59]={name:"segment",lower:"segment",index:59,isBkr:!1},this.rules[60]={name:"child-segment",lower:"child-segment",index:60,isBkr:!1},this.rules[61]={name:"bracketed-selection",lower:"bracketed-selection",index:61,isBkr:!1},this.rules[62]={name:"member-name-shorthand",lower:"member-name-shorthand",index:62,isBkr:!1},this.rules[63]={name:"name-first",lower:"name-first",index:63,isBkr:!1},this.rules[64]={name:"name-char",lower:"name-char",index:64,isBkr:!1},this.rules[65]={name:"DIGIT",lower:"digit",index:65,isBkr:!1},this.rules[66]={name:"ALPHA",lower:"alpha",index:66,isBkr:!1},this.rules[67]={name:"descendant-segment",lower:"descendant-segment",index:67,isBkr:!1},this.rules[68]={name:"normalized-path",lower:"normalized-path",index:68,isBkr:!1},this.rules[69]={name:"normal-index-segment",lower:"normal-index-segment",index:69,isBkr:!1},this.rules[70]={name:"normal-selector",lower:"normal-selector",index:70,isBkr:!1},this.rules[71]={name:"normal-name-selector",lower:"normal-name-selector",index:71,isBkr:!1},this.rules[72]={name:"normal-single-quoted",lower:"normal-single-quoted",index:72,isBkr:!1},this.rules[73]={name:"normal-unescaped",lower:"normal-unescaped",index:73,isBkr:!1},this.rules[74]={name:"normal-escapable",lower:"normal-escapable",index:74,isBkr:!1},this.rules[75]={name:"normal-hexchar",lower:"normal-hexchar",index:75,isBkr:!1},this.rules[76]={name:"normal-HEXDIG",lower:"normal-hexdig",index:76,isBkr:!1},this.rules[77]={name:"normal-index-selector",lower:"normal-index-selector",index:77,isBkr:!1},this.rules[78]={name:"dot-prefix",lower:"dot-prefix",index:78,isBkr:!1},this.rules[79]={name:"double-dot-prefix",lower:"double-dot-prefix",index:79,isBkr:!1},this.rules[80]={name:"left-bracket",lower:"left-bracket",index:80,isBkr:!1},this.rules[81]={name:"right-bracket",lower:"right-bracket",index:81,isBkr:!1},this.rules[82]={name:"left-paren",lower:"left-paren",index:82,isBkr:!1},this.rules[83]={name:"right-paren",lower:"right-paren",index:83,isBkr:!1},this.rules[84]={name:"comma",lower:"comma",index:84,isBkr:!1},this.rules[85]={name:"colon",lower:"colon",index:85,isBkr:!1},this.rules[86]={name:"dquote",lower:"dquote",index:86,isBkr:!1},this.rules[87]={name:"squote",lower:"squote",index:87,isBkr:!1},this.rules[88]={name:"questionmark",lower:"questionmark",index:88,isBkr:!1},this.rules[89]={name:"disjunction",lower:"disjunction",index:89,isBkr:!1},this.rules[90]={name:"conjunction",lower:"conjunction",index:90,isBkr:!1},this.udts=[],this.rules[0].opcodes=[],this.rules[0].opcodes[0]={type:2,children:[1,2]},this.rules[0].opcodes[1]={type:4,index:4},this.rules[0].opcodes[2]={type:4,index:1},this.rules[1].opcodes=[],this.rules[1].opcodes[0]={type:3,min:0,max:1/0},this.rules[1].opcodes[1]={type:2,children:[2,3]},this.rules[1].opcodes[2]={type:4,index:3},this.rules[1].opcodes[3]={type:4,index:59},this.rules[2].opcodes=[],this.rules[2].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[2].opcodes[1]={type:6,string:[32]},this.rules[2].opcodes[2]={type:6,string:[9]},this.rules[2].opcodes[3]={type:6,string:[10]},this.rules[2].opcodes[4]={type:6,string:[13]},this.rules[3].opcodes=[],this.rules[3].opcodes[0]={type:3,min:0,max:1/0},this.rules[3].opcodes[1]={type:4,index:2},this.rules[4].opcodes=[],this.rules[4].opcodes[0]={type:7,string:[36]},this.rules[5].opcodes=[],this.rules[5].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[5].opcodes[1]={type:4,index:6},this.rules[5].opcodes[2]={type:4,index:18},this.rules[5].opcodes[3]={type:4,index:22},this.rules[5].opcodes[4]={type:4,index:19},this.rules[5].opcodes[5]={type:4,index:26},this.rules[6].opcodes=[],this.rules[6].opcodes[0]={type:4,index:7},this.rules[7].opcodes=[],this.rules[7].opcodes[0]={type:1,children:[1,6]},this.rules[7].opcodes[1]={type:2,children:[2,3,5]},this.rules[7].opcodes[2]={type:4,index:86},this.rules[7].opcodes[3]={type:3,min:0,max:1/0},this.rules[7].opcodes[4]={type:4,index:8},this.rules[7].opcodes[5]={type:4,index:86},this.rules[7].opcodes[6]={type:2,children:[7,8,10]},this.rules[7].opcodes[7]={type:4,index:87},this.rules[7].opcodes[8]={type:3,min:0,max:1/0},this.rules[7].opcodes[9]={type:4,index:9},this.rules[7].opcodes[10]={type:4,index:87},this.rules[8].opcodes=[],this.rules[8].opcodes[0]={type:1,children:[1,2,3,6]},this.rules[8].opcodes[1]={type:4,index:11},this.rules[8].opcodes[2]={type:6,string:[39]},this.rules[8].opcodes[3]={type:2,children:[4,5]},this.rules[8].opcodes[4]={type:4,index:10},this.rules[8].opcodes[5]={type:6,string:[34]},this.rules[8].opcodes[6]={type:2,children:[7,8]},this.rules[8].opcodes[7]={type:4,index:10},this.rules[8].opcodes[8]={type:4,index:12},this.rules[9].opcodes=[],this.rules[9].opcodes[0]={type:1,children:[1,2,3,6]},this.rules[9].opcodes[1]={type:4,index:11},this.rules[9].opcodes[2]={type:6,string:[34]},this.rules[9].opcodes[3]={type:2,children:[4,5]},this.rules[9].opcodes[4]={type:4,index:10},this.rules[9].opcodes[5]={type:6,string:[39]},this.rules[9].opcodes[6]={type:2,children:[7,8]},this.rules[9].opcodes[7]={type:4,index:10},this.rules[9].opcodes[8]={type:4,index:12},this.rules[10].opcodes=[],this.rules[10].opcodes[0]={type:6,string:[92]},this.rules[11].opcodes=[],this.rules[11].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[11].opcodes[1]={type:5,min:32,max:33},this.rules[11].opcodes[2]={type:5,min:35,max:38},this.rules[11].opcodes[3]={type:5,min:40,max:91},this.rules[11].opcodes[4]={type:5,min:93,max:55295},this.rules[11].opcodes[5]={type:5,min:57344,max:1114111},this.rules[12].opcodes=[],this.rules[12].opcodes[0]={type:1,children:[1,2,3,4,5,6,7,8]},this.rules[12].opcodes[1]={type:6,string:[98]},this.rules[12].opcodes[2]={type:6,string:[102]},this.rules[12].opcodes[3]={type:6,string:[110]},this.rules[12].opcodes[4]={type:6,string:[114]},this.rules[12].opcodes[5]={type:6,string:[116]},this.rules[12].opcodes[6]={type:7,string:[47]},this.rules[12].opcodes[7]={type:7,string:[92]},this.rules[12].opcodes[8]={type:2,children:[9,10]},this.rules[12].opcodes[9]={type:6,string:[117]},this.rules[12].opcodes[10]={type:4,index:13},this.rules[13].opcodes=[],this.rules[13].opcodes[0]={type:1,children:[1,2]},this.rules[13].opcodes[1]={type:4,index:14},this.rules[13].opcodes[2]={type:2,children:[3,4,5,6]},this.rules[13].opcodes[3]={type:4,index:15},this.rules[13].opcodes[4]={type:7,string:[92]},this.rules[13].opcodes[5]={type:6,string:[117]},this.rules[13].opcodes[6]={type:4,index:16},this.rules[14].opcodes=[],this.rules[14].opcodes[0]={type:1,children:[1,11]},this.rules[14].opcodes[1]={type:2,children:[2,9]},this.rules[14].opcodes[2]={type:1,children:[3,4,5,6,7,8]},this.rules[14].opcodes[3]={type:4,index:65},this.rules[14].opcodes[4]={type:7,string:[97]},this.rules[14].opcodes[5]={type:7,string:[98]},this.rules[14].opcodes[6]={type:7,string:[99]},this.rules[14].opcodes[7]={type:7,string:[101]},this.rules[14].opcodes[8]={type:7,string:[102]},this.rules[14].opcodes[9]={type:3,min:3,max:3},this.rules[14].opcodes[10]={type:4,index:17},this.rules[14].opcodes[11]={type:2,children:[12,13,14]},this.rules[14].opcodes[12]={type:7,string:[100]},this.rules[14].opcodes[13]={type:5,min:48,max:55},this.rules[14].opcodes[14]={type:3,min:2,max:2},this.rules[14].opcodes[15]={type:4,index:17},this.rules[15].opcodes=[],this.rules[15].opcodes[0]={type:2,children:[1,2,7]},this.rules[15].opcodes[1]={type:7,string:[100]},this.rules[15].opcodes[2]={type:1,children:[3,4,5,6]},this.rules[15].opcodes[3]={type:7,string:[56]},this.rules[15].opcodes[4]={type:7,string:[57]},this.rules[15].opcodes[5]={type:7,string:[97]},this.rules[15].opcodes[6]={type:7,string:[98]},this.rules[15].opcodes[7]={type:3,min:2,max:2},this.rules[15].opcodes[8]={type:4,index:17},this.rules[16].opcodes=[],this.rules[16].opcodes[0]={type:2,children:[1,2,7]},this.rules[16].opcodes[1]={type:7,string:[100]},this.rules[16].opcodes[2]={type:1,children:[3,4,5,6]},this.rules[16].opcodes[3]={type:7,string:[99]},this.rules[16].opcodes[4]={type:7,string:[100]},this.rules[16].opcodes[5]={type:7,string:[101]},this.rules[16].opcodes[6]={type:7,string:[102]},this.rules[16].opcodes[7]={type:3,min:2,max:2},this.rules[16].opcodes[8]={type:4,index:17},this.rules[17].opcodes=[],this.rules[17].opcodes[0]={type:1,children:[1,2,3,4,5,6,7]},this.rules[17].opcodes[1]={type:4,index:65},this.rules[17].opcodes[2]={type:7,string:[97]},this.rules[17].opcodes[3]={type:7,string:[98]},this.rules[17].opcodes[4]={type:7,string:[99]},this.rules[17].opcodes[5]={type:7,string:[100]},this.rules[17].opcodes[6]={type:7,string:[101]},this.rules[17].opcodes[7]={type:7,string:[102]},this.rules[18].opcodes=[],this.rules[18].opcodes[0]={type:7,string:[42]},this.rules[19].opcodes=[],this.rules[19].opcodes[0]={type:4,index:20},this.rules[20].opcodes=[],this.rules[20].opcodes[0]={type:1,children:[1,2]},this.rules[20].opcodes[1]={type:7,string:[48]},this.rules[20].opcodes[2]={type:2,children:[3,5,6]},this.rules[20].opcodes[3]={type:3,min:0,max:1},this.rules[20].opcodes[4]={type:7,string:[45]},this.rules[20].opcodes[5]={type:4,index:21},this.rules[20].opcodes[6]={type:3,min:0,max:1/0},this.rules[20].opcodes[7]={type:4,index:65},this.rules[21].opcodes=[],this.rules[21].opcodes[0]={type:5,min:49,max:57},this.rules[22].opcodes=[],this.rules[22].opcodes[0]={type:2,children:[1,5,6,7,11]},this.rules[22].opcodes[1]={type:3,min:0,max:1},this.rules[22].opcodes[2]={type:2,children:[3,4]},this.rules[22].opcodes[3]={type:4,index:23},this.rules[22].opcodes[4]={type:4,index:3},this.rules[22].opcodes[5]={type:4,index:85},this.rules[22].opcodes[6]={type:4,index:3},this.rules[22].opcodes[7]={type:3,min:0,max:1},this.rules[22].opcodes[8]={type:2,children:[9,10]},this.rules[22].opcodes[9]={type:4,index:24},this.rules[22].opcodes[10]={type:4,index:3},this.rules[22].opcodes[11]={type:3,min:0,max:1},this.rules[22].opcodes[12]={type:2,children:[13,14]},this.rules[22].opcodes[13]={type:4,index:85},this.rules[22].opcodes[14]={type:3,min:0,max:1},this.rules[22].opcodes[15]={type:2,children:[16,17]},this.rules[22].opcodes[16]={type:4,index:3},this.rules[22].opcodes[17]={type:4,index:25},this.rules[23].opcodes=[],this.rules[23].opcodes[0]={type:4,index:20},this.rules[24].opcodes=[],this.rules[24].opcodes[0]={type:4,index:20},this.rules[25].opcodes=[],this.rules[25].opcodes[0]={type:4,index:20},this.rules[26].opcodes=[],this.rules[26].opcodes[0]={type:2,children:[1,2,3]},this.rules[26].opcodes[1]={type:4,index:88},this.rules[26].opcodes[2]={type:4,index:3},this.rules[26].opcodes[3]={type:4,index:27},this.rules[27].opcodes=[],this.rules[27].opcodes[0]={type:4,index:28},this.rules[28].opcodes=[],this.rules[28].opcodes[0]={type:2,children:[1,2]},this.rules[28].opcodes[1]={type:4,index:29},this.rules[28].opcodes[2]={type:3,min:0,max:1/0},this.rules[28].opcodes[3]={type:2,children:[4,5,6,7]},this.rules[28].opcodes[4]={type:4,index:3},this.rules[28].opcodes[5]={type:4,index:89},this.rules[28].opcodes[6]={type:4,index:3},this.rules[28].opcodes[7]={type:4,index:29},this.rules[29].opcodes=[],this.rules[29].opcodes[0]={type:2,children:[1,2]},this.rules[29].opcodes[1]={type:4,index:30},this.rules[29].opcodes[2]={type:3,min:0,max:1/0},this.rules[29].opcodes[3]={type:2,children:[4,5,6,7]},this.rules[29].opcodes[4]={type:4,index:3},this.rules[29].opcodes[5]={type:4,index:90},this.rules[29].opcodes[6]={type:4,index:3},this.rules[29].opcodes[7]={type:4,index:30},this.rules[30].opcodes=[],this.rules[30].opcodes[0]={type:1,children:[1,2,3]},this.rules[30].opcodes[1]={type:4,index:31},this.rules[30].opcodes[2]={type:4,index:37},this.rules[30].opcodes[3]={type:4,index:33},this.rules[31].opcodes=[],this.rules[31].opcodes[0]={type:2,children:[1,5,6,7,8,9]},this.rules[31].opcodes[1]={type:3,min:0,max:1},this.rules[31].opcodes[2]={type:2,children:[3,4]},this.rules[31].opcodes[3]={type:4,index:32},this.rules[31].opcodes[4]={type:4,index:3},this.rules[31].opcodes[5]={type:4,index:82},this.rules[31].opcodes[6]={type:4,index:3},this.rules[31].opcodes[7]={type:4,index:27},this.rules[31].opcodes[8]={type:4,index:3},this.rules[31].opcodes[9]={type:4,index:83},this.rules[32].opcodes=[],this.rules[32].opcodes[0]={type:7,string:[33]},this.rules[33].opcodes=[],this.rules[33].opcodes[0]={type:2,children:[1,5]},this.rules[33].opcodes[1]={type:3,min:0,max:1},this.rules[33].opcodes[2]={type:2,children:[3,4]},this.rules[33].opcodes[3]={type:4,index:32},this.rules[33].opcodes[4]={type:4,index:3},this.rules[33].opcodes[5]={type:1,children:[6,7]},this.rules[33].opcodes[6]={type:4,index:34},this.rules[33].opcodes[7]={type:4,index:57},this.rules[34].opcodes=[],this.rules[34].opcodes[0]={type:1,children:[1,2]},this.rules[34].opcodes[1]={type:4,index:35},this.rules[34].opcodes[2]={type:4,index:0},this.rules[35].opcodes=[],this.rules[35].opcodes[0]={type:2,children:[1,2]},this.rules[35].opcodes[1]={type:4,index:36},this.rules[35].opcodes[2]={type:4,index:1},this.rules[36].opcodes=[],this.rules[36].opcodes[0]={type:7,string:[64]},this.rules[37].opcodes=[],this.rules[37].opcodes[0]={type:2,children:[1,2,3,4,5]},this.rules[37].opcodes[1]={type:4,index:39},this.rules[37].opcodes[2]={type:4,index:3},this.rules[37].opcodes[3]={type:4,index:40},this.rules[37].opcodes[4]={type:4,index:3},this.rules[37].opcodes[5]={type:4,index:39},this.rules[38].opcodes=[],this.rules[38].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[38].opcodes[1]={type:4,index:47},this.rules[38].opcodes[2]={type:4,index:7},this.rules[38].opcodes[3]={type:4,index:50},this.rules[38].opcodes[4]={type:4,index:51},this.rules[38].opcodes[5]={type:4,index:52},this.rules[39].opcodes=[],this.rules[39].opcodes[0]={type:1,children:[1,2,3]},this.rules[39].opcodes[1]={type:4,index:41},this.rules[39].opcodes[2]={type:4,index:57},this.rules[39].opcodes[3]={type:4,index:38},this.rules[40].opcodes=[],this.rules[40].opcodes[0]={type:1,children:[1,2,3,4,5,6]},this.rules[40].opcodes[1]={type:7,string:[61,61]},this.rules[40].opcodes[2]={type:7,string:[33,61]},this.rules[40].opcodes[3]={type:7,string:[60,61]},this.rules[40].opcodes[4]={type:7,string:[62,61]},this.rules[40].opcodes[5]={type:7,string:[60]},this.rules[40].opcodes[6]={type:7,string:[62]},this.rules[41].opcodes=[],this.rules[41].opcodes[0]={type:1,children:[1,2]},this.rules[41].opcodes[1]={type:4,index:42},this.rules[41].opcodes[2]={type:4,index:43},this.rules[42].opcodes=[],this.rules[42].opcodes[0]={type:2,children:[1,2]},this.rules[42].opcodes[1]={type:4,index:36},this.rules[42].opcodes[2]={type:4,index:44},this.rules[43].opcodes=[],this.rules[43].opcodes[0]={type:2,children:[1,2]},this.rules[43].opcodes[1]={type:4,index:4},this.rules[43].opcodes[2]={type:4,index:44},this.rules[44].opcodes=[],this.rules[44].opcodes[0]={type:3,min:0,max:1/0},this.rules[44].opcodes[1]={type:2,children:[2,3]},this.rules[44].opcodes[2]={type:4,index:3},this.rules[44].opcodes[3]={type:1,children:[4,5]},this.rules[44].opcodes[4]={type:4,index:45},this.rules[44].opcodes[5]={type:4,index:46},this.rules[45].opcodes=[],this.rules[45].opcodes[0]={type:1,children:[1,5]},this.rules[45].opcodes[1]={type:2,children:[2,3,4]},this.rules[45].opcodes[2]={type:4,index:80},this.rules[45].opcodes[3]={type:4,index:6},this.rules[45].opcodes[4]={type:4,index:81},this.rules[45].opcodes[5]={type:2,children:[6,7]},this.rules[45].opcodes[6]={type:4,index:78},this.rules[45].opcodes[7]={type:4,index:62},this.rules[46].opcodes=[],this.rules[46].opcodes[0]={type:2,children:[1,2,3]},this.rules[46].opcodes[1]={type:4,index:80},this.rules[46].opcodes[2]={type:4,index:19},this.rules[46].opcodes[3]={type:4,index:81},this.rules[47].opcodes=[],this.rules[47].opcodes[0]={type:2,children:[1,4,6]},this.rules[47].opcodes[1]={type:1,children:[2,3]},this.rules[47].opcodes[2]={type:4,index:20},this.rules[47].opcodes[3]={type:7,string:[45,48]},this.rules[47].opcodes[4]={type:3,min:0,max:1},this.rules[47].opcodes[5]={type:4,index:48},this.rules[47].opcodes[6]={type:3,min:0,max:1},this.rules[47].opcodes[7]={type:4,index:49},this.rules[48].opcodes=[],this.rules[48].opcodes[0]={type:2,children:[1,2]},this.rules[48].opcodes[1]={type:7,string:[46]},this.rules[48].opcodes[2]={type:3,min:1,max:1/0},this.rules[48].opcodes[3]={type:4,index:65},this.rules[49].opcodes=[],this.rules[49].opcodes[0]={type:2,children:[1,2,6]},this.rules[49].opcodes[1]={type:7,string:[101]},this.rules[49].opcodes[2]={type:3,min:0,max:1},this.rules[49].opcodes[3]={type:1,children:[4,5]},this.rules[49].opcodes[4]={type:7,string:[45]},this.rules[49].opcodes[5]={type:7,string:[43]},this.rules[49].opcodes[6]={type:3,min:1,max:1/0},this.rules[49].opcodes[7]={type:4,index:65},this.rules[50].opcodes=[],this.rules[50].opcodes[0]={type:6,string:[116,114,117,101]},this.rules[51].opcodes=[],this.rules[51].opcodes[0]={type:6,string:[102,97,108,115,101]},this.rules[52].opcodes=[],this.rules[52].opcodes[0]={type:6,string:[110,117,108,108]},this.rules[53].opcodes=[],this.rules[53].opcodes[0]={type:2,children:[1,2]},this.rules[53].opcodes[1]={type:4,index:54},this.rules[53].opcodes[2]={type:3,min:0,max:1/0},this.rules[53].opcodes[3]={type:4,index:55},this.rules[54].opcodes=[],this.rules[54].opcodes[0]={type:4,index:56},this.rules[55].opcodes=[],this.rules[55].opcodes[0]={type:1,children:[1,2,3]},this.rules[55].opcodes[1]={type:4,index:54},this.rules[55].opcodes[2]={type:7,string:[95]},this.rules[55].opcodes[3]={type:4,index:65},this.rules[56].opcodes=[],this.rules[56].opcodes[0]={type:5,min:97,max:122},this.rules[57].opcodes=[],this.rules[57].opcodes[0]={type:2,children:[1,2,3,4,13,14]},this.rules[57].opcodes[1]={type:4,index:53},this.rules[57].opcodes[2]={type:4,index:82},this.rules[57].opcodes[3]={type:4,index:3},this.rules[57].opcodes[4]={type:3,min:0,max:1},this.rules[57].opcodes[5]={type:2,children:[6,7]},this.rules[57].opcodes[6]={type:4,index:58},this.rules[57].opcodes[7]={type:3,min:0,max:1/0},this.rules[57].opcodes[8]={type:2,children:[9,10,11,12]},this.rules[57].opcodes[9]={type:4,index:3},this.rules[57].opcodes[10]={type:4,index:84},this.rules[57].opcodes[11]={type:4,index:3},this.rules[57].opcodes[12]={type:4,index:58},this.rules[57].opcodes[13]={type:4,index:3},this.rules[57].opcodes[14]={type:4,index:83},this.rules[58].opcodes=[],this.rules[58].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[58].opcodes[1]={type:4,index:27},this.rules[58].opcodes[2]={type:4,index:34},this.rules[58].opcodes[3]={type:4,index:57},this.rules[58].opcodes[4]={type:4,index:38},this.rules[59].opcodes=[],this.rules[59].opcodes[0]={type:1,children:[1,2]},this.rules[59].opcodes[1]={type:4,index:60},this.rules[59].opcodes[2]={type:4,index:67},this.rules[60].opcodes=[],this.rules[60].opcodes[0]={type:1,children:[1,2]},this.rules[60].opcodes[1]={type:4,index:61},this.rules[60].opcodes[2]={type:2,children:[3,4]},this.rules[60].opcodes[3]={type:4,index:78},this.rules[60].opcodes[4]={type:1,children:[5,6]},this.rules[60].opcodes[5]={type:4,index:18},this.rules[60].opcodes[6]={type:4,index:62},this.rules[61].opcodes=[],this.rules[61].opcodes[0]={type:2,children:[1,2,3,4,10,11]},this.rules[61].opcodes[1]={type:4,index:80},this.rules[61].opcodes[2]={type:4,index:3},this.rules[61].opcodes[3]={type:4,index:5},this.rules[61].opcodes[4]={type:3,min:0,max:1/0},this.rules[61].opcodes[5]={type:2,children:[6,7,8,9]},this.rules[61].opcodes[6]={type:4,index:3},this.rules[61].opcodes[7]={type:4,index:84},this.rules[61].opcodes[8]={type:4,index:3},this.rules[61].opcodes[9]={type:4,index:5},this.rules[61].opcodes[10]={type:4,index:3},this.rules[61].opcodes[11]={type:4,index:81},this.rules[62].opcodes=[],this.rules[62].opcodes[0]={type:2,children:[1,2]},this.rules[62].opcodes[1]={type:4,index:63},this.rules[62].opcodes[2]={type:3,min:0,max:1/0},this.rules[62].opcodes[3]={type:4,index:64},this.rules[63].opcodes=[],this.rules[63].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[63].opcodes[1]={type:4,index:66},this.rules[63].opcodes[2]={type:7,string:[95]},this.rules[63].opcodes[3]={type:5,min:128,max:55295},this.rules[63].opcodes[4]={type:5,min:57344,max:1114111},this.rules[64].opcodes=[],this.rules[64].opcodes[0]={type:1,children:[1,2]},this.rules[64].opcodes[1]={type:4,index:63},this.rules[64].opcodes[2]={type:4,index:65},this.rules[65].opcodes=[],this.rules[65].opcodes[0]={type:5,min:48,max:57},this.rules[66].opcodes=[],this.rules[66].opcodes[0]={type:1,children:[1,2]},this.rules[66].opcodes[1]={type:5,min:65,max:90},this.rules[66].opcodes[2]={type:5,min:97,max:122},this.rules[67].opcodes=[],this.rules[67].opcodes[0]={type:2,children:[1,2]},this.rules[67].opcodes[1]={type:4,index:79},this.rules[67].opcodes[2]={type:1,children:[3,4,5]},this.rules[67].opcodes[3]={type:4,index:61},this.rules[67].opcodes[4]={type:4,index:18},this.rules[67].opcodes[5]={type:4,index:62},this.rules[68].opcodes=[],this.rules[68].opcodes[0]={type:2,children:[1,2]},this.rules[68].opcodes[1]={type:4,index:4},this.rules[68].opcodes[2]={type:3,min:0,max:1/0},this.rules[68].opcodes[3]={type:4,index:69},this.rules[69].opcodes=[],this.rules[69].opcodes[0]={type:2,children:[1,2,3]},this.rules[69].opcodes[1]={type:4,index:80},this.rules[69].opcodes[2]={type:4,index:70},this.rules[69].opcodes[3]={type:4,index:81},this.rules[70].opcodes=[],this.rules[70].opcodes[0]={type:1,children:[1,2]},this.rules[70].opcodes[1]={type:4,index:71},this.rules[70].opcodes[2]={type:4,index:77},this.rules[71].opcodes=[],this.rules[71].opcodes[0]={type:2,children:[1,2,4]},this.rules[71].opcodes[1]={type:4,index:87},this.rules[71].opcodes[2]={type:3,min:0,max:1/0},this.rules[71].opcodes[3]={type:4,index:72},this.rules[71].opcodes[4]={type:4,index:87},this.rules[72].opcodes=[],this.rules[72].opcodes[0]={type:1,children:[1,2]},this.rules[72].opcodes[1]={type:4,index:73},this.rules[72].opcodes[2]={type:2,children:[3,4]},this.rules[72].opcodes[3]={type:4,index:10},this.rules[72].opcodes[4]={type:4,index:74},this.rules[73].opcodes=[],this.rules[73].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[73].opcodes[1]={type:5,min:32,max:38},this.rules[73].opcodes[2]={type:5,min:40,max:91},this.rules[73].opcodes[3]={type:5,min:93,max:55295},this.rules[73].opcodes[4]={type:5,min:57344,max:1114111},this.rules[74].opcodes=[],this.rules[74].opcodes[0]={type:1,children:[1,2,3,4,5,6,7,8]},this.rules[74].opcodes[1]={type:6,string:[98]},this.rules[74].opcodes[2]={type:6,string:[102]},this.rules[74].opcodes[3]={type:6,string:[110]},this.rules[74].opcodes[4]={type:6,string:[114]},this.rules[74].opcodes[5]={type:6,string:[116]},this.rules[74].opcodes[6]={type:7,string:[39]},this.rules[74].opcodes[7]={type:7,string:[92]},this.rules[74].opcodes[8]={type:2,children:[9,10]},this.rules[74].opcodes[9]={type:6,string:[117]},this.rules[74].opcodes[10]={type:4,index:75},this.rules[75].opcodes=[],this.rules[75].opcodes[0]={type:2,children:[1,2,3]},this.rules[75].opcodes[1]={type:7,string:[48]},this.rules[75].opcodes[2]={type:7,string:[48]},this.rules[75].opcodes[3]={type:1,children:[4,7,10,13]},this.rules[75].opcodes[4]={type:2,children:[5,6]},this.rules[75].opcodes[5]={type:7,string:[48]},this.rules[75].opcodes[6]={type:5,min:48,max:55},this.rules[75].opcodes[7]={type:2,children:[8,9]},this.rules[75].opcodes[8]={type:7,string:[48]},this.rules[75].opcodes[9]={type:6,string:[98]},this.rules[75].opcodes[10]={type:2,children:[11,12]},this.rules[75].opcodes[11]={type:7,string:[48]},this.rules[75].opcodes[12]={type:5,min:101,max:102},this.rules[75].opcodes[13]={type:2,children:[14,15]},this.rules[75].opcodes[14]={type:7,string:[49]},this.rules[75].opcodes[15]={type:4,index:76},this.rules[76].opcodes=[],this.rules[76].opcodes[0]={type:1,children:[1,2]},this.rules[76].opcodes[1]={type:4,index:65},this.rules[76].opcodes[2]={type:5,min:97,max:102},this.rules[77].opcodes=[],this.rules[77].opcodes[0]={type:1,children:[1,2]},this.rules[77].opcodes[1]={type:7,string:[48]},this.rules[77].opcodes[2]={type:2,children:[3,4]},this.rules[77].opcodes[3]={type:4,index:21},this.rules[77].opcodes[4]={type:3,min:0,max:1/0},this.rules[77].opcodes[5]={type:4,index:65},this.rules[78].opcodes=[],this.rules[78].opcodes[0]={type:7,string:[46]},this.rules[79].opcodes=[],this.rules[79].opcodes[0]={type:7,string:[46,46]},this.rules[80].opcodes=[],this.rules[80].opcodes[0]={type:7,string:[91]},this.rules[81].opcodes=[],this.rules[81].opcodes[0]={type:7,string:[93]},this.rules[82].opcodes=[],this.rules[82].opcodes[0]={type:7,string:[40]},this.rules[83].opcodes=[],this.rules[83].opcodes[0]={type:7,string:[41]},this.rules[84].opcodes=[],this.rules[84].opcodes[0]={type:7,string:[44]},this.rules[85].opcodes=[],this.rules[85].opcodes[0]={type:7,string:[58]},this.rules[86].opcodes=[],this.rules[86].opcodes[0]={type:6,string:[34]},this.rules[87].opcodes=[],this.rules[87].opcodes[0]={type:6,string:[39]},this.rules[88].opcodes=[],this.rules[88].opcodes[0]={type:7,string:[63]},this.rules[89].opcodes=[],this.rules[89].opcodes[0]={type:7,string:[124,124]},this.rules[90].opcodes=[],this.rules[90].opcodes[0]={type:7,string:[38,38]},this.toString=function(){let e="";return e+="; JSONPath: Query Expressions for JSON\n",e+="; https://www.rfc-editor.org/rfc/rfc9535\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.1.1\n",e+="jsonpath-query = root-identifier segments\n",e+="segments = *(S segment)\n",e+="\n",e+="B = %x20 / ; Space\n",e+=" %x09 / ; Horizontal tab\n",e+=" %x0A / ; Line feed or New line\n",e+=" %x0D ; Carriage return\n",e+="S = *B ; optional blank space\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.2.1\n",e+='root-identifier = "$"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3\n",e+="selector = name-selector /\n",e+=" wildcard-selector /\n",e+=" slice-selector /\n",e+=" index-selector /\n",e+=" filter-selector\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.1.1\n",e+="name-selector = string-literal\n",e+="\n",e+='string-literal = dquote *double-quoted dquote / ; "string", MODIFICATION: surrogate text rule used\n',e+=" squote *single-quoted squote ; 'string', MODIFICATION: surrogate text rule used\n",e+="\n",e+="double-quoted = unescaped /\n",e+=" %x27 / ; '\n",e+=' ESC %x22 / ; \\"\n',e+=" ESC escapable\n",e+="\n",e+="single-quoted = unescaped /\n",e+=' %x22 / ; "\n',e+=" ESC %x27 / ; \\'\n",e+=" ESC escapable\n",e+="\n",e+="ESC = %x5C ; \\ backslash\n",e+="\n",e+="unescaped = %x20-21 / ; see RFC 8259\n",e+=' ; omit 0x22 "\n',e+=" %x23-26 /\n",e+=" ; omit 0x27 '\n",e+=" %x28-5B /\n",e+=" ; omit 0x5C \\\n",e+=" %x5D-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="\n",e+="escapable = %x62 / ; b BS backspace U+0008\n",e+=" %x66 / ; f FF form feed U+000C\n",e+=" %x6E / ; n LF line feed U+000A\n",e+=" %x72 / ; r CR carriage return U+000D\n",e+=" %x74 / ; t HT horizontal tab U+0009\n",e+=' "/" / ; / slash (solidus) U+002F\n',e+=' "\\" / ; \\ backslash (reverse solidus) U+005C\n',e+=" (%x75 hexchar) ; uXXXX U+XXXX\n",e+="\n",e+="hexchar = non-surrogate /\n",e+=' (high-surrogate "\\" %x75 low-surrogate)\n',e+='non-surrogate = ((DIGIT / "A"/"B"/"C" / "E"/"F") 3HEXDIG) /\n',e+=' ("D" %x30-37 2HEXDIG )\n',e+='high-surrogate = "D" ("8"/"9"/"A"/"B") 2HEXDIG\n',e+='low-surrogate = "D" ("C"/"D"/"E"/"F") 2HEXDIG\n',e+="\n",e+='HEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.2.1\n",e+='wildcard-selector = "*"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.3.1\n",e+="index-selector = int ; decimal integer\n",e+="\n",e+='int = "0" /\n',e+=' (["-"] DIGIT1 *DIGIT) ; - optional\n',e+="DIGIT1 = %x31-39 ; 1-9 non-zero digit\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.4.1\n",e+="slice-selector = [start S] colon S [end S] [colon [S step ]] ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="start = int ; included in selection\n",e+="end = int ; not included in selection\n",e+="step = int ; default: 1\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.5.1\n",e+="filter-selector = questionmark S logical-expr ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="logical-expr = logical-or-expr\n",e+="logical-or-expr = logical-and-expr *(S disjunction S logical-and-expr) ; MODIFICATION: surrogate text rule used\n",e+=" ; disjunction\n",e+=" ; binds less tightly than conjunction\n",e+="logical-and-expr = basic-expr *(S conjunction S basic-expr) ; MODIFICATION: surrogate text rule used\n",e+=" ; conjunction\n",e+=" ; binds more tightly than disjunction\n",e+="\n",e+="basic-expr = paren-expr /\n",e+=" comparison-expr /\n",e+=" test-expr\n",e+="\n",e+="paren-expr = [logical-not-op S] left-paren S logical-expr S right-paren ; MODIFICATION: surrogate text rule used\n",e+=" ; parenthesized expression\n",e+='logical-not-op = "!" ; logical NOT operator\n',e+="\n",e+="test-expr = [logical-not-op S]\n",e+=" (filter-query / ; existence/non-existence\n",e+=" function-expr) ; LogicalType or NodesType\n",e+="filter-query = rel-query / jsonpath-query\n",e+="rel-query = current-node-identifier segments\n",e+='current-node-identifier = "@"\n',e+="\n",e+="comparison-expr = comparable S comparison-op S comparable\n",e+="literal = number / string-literal /\n",e+=" true / false / null\n",e+="comparable = singular-query / ; singular query value\n",e+=" function-expr / ; ValueType\n",e+=" literal\n",e+=" ; MODIFICATION: https://www.rfc-editor.org/errata/eid8352\n",e+='comparison-op = "==" / "!=" /\n',e+=' "<=" / ">=" /\n',e+=' "<" / ">"\n',e+="\n",e+="singular-query = rel-singular-query / abs-singular-query\n",e+="rel-singular-query = current-node-identifier singular-query-segments\n",e+="abs-singular-query = root-identifier singular-query-segments\n",e+="singular-query-segments = *(S (name-segment / index-segment))\n",e+="name-segment = (left-bracket name-selector right-bracket) / ; MODIFICATION: surrogate text rule used\n",e+=" (dot-prefix member-name-shorthand) ; MODIFICATION: surrogate text rule used\n",e+="index-segment = left-bracket index-selector right-bracket ; MODIFICATION: surrogate text rule used\n",e+="\n",e+='number = (int / "-0") [ frac ] [ exp ] ; decimal number\n',e+='frac = "." 1*DIGIT ; decimal fraction\n',e+='exp = "e" [ "-" / "+" ] 1*DIGIT ; decimal exponent\n',e+="true = %x74.72.75.65 ; true\n",e+="false = %x66.61.6c.73.65 ; false\n",e+="null = %x6e.75.6c.6c ; null\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.4\n",e+="function-name = function-name-first *function-name-char\n",e+="function-name-first = LCALPHA\n",e+='function-name-char = function-name-first / "_" / DIGIT\n',e+='LCALPHA = %x61-7A ; "a".."z"\n',e+="\n",e+="function-expr = function-name left-paren S [function-argument ; MODIFICATION: surrogate text rule used\n",e+=" *(S comma S function-argument)] S right-paren ; MODIFICATION: surrogate text rule used\n",e+="function-argument = logical-expr / ; MODIFICATION: https://www.rfc-editor.org/errata/eid8343\n",e+=" filter-query / ; (includes singular-query)\n",e+=" function-expr /\n",e+=" literal\n",e+="\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5\n",e+="segment = child-segment / descendant-segment\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.1.1\n",e+="child-segment = bracketed-selection /\n",e+=" (dot-prefix ; MODIFICATION: surrogate text rule used\n",e+=" (wildcard-selector /\n",e+=" member-name-shorthand))\n",e+="\n",e+="bracketed-selection = left-bracket S selector *(S comma S selector) S right-bracket\n",e+=" ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="member-name-shorthand = name-first *name-char\n",e+="name-first = ALPHA /\n",e+=' "_" /\n',e+=" %x80-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="name-char = name-first / DIGIT\n",e+="\n",e+="DIGIT = %x30-39 ; 0-9\n",e+="ALPHA = %x41-5A / %x61-7A ; A-Z / a-z\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.2.1\n",e+="descendant-segment = double-dot-prefix (bracketed-selection / ; MODIFICATION: surrogate text rule used\n",e+=" wildcard-selector /\n",e+=" member-name-shorthand)\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#name-normalized-paths\n",e+="normalized-path = root-identifier *(normal-index-segment)\n",e+="normal-index-segment = left-bracket normal-selector right-bracket ; MODIFICATION: surrogate text rule used\n",e+="normal-selector = normal-name-selector / normal-index-selector\n",e+="normal-name-selector = squote *normal-single-quoted squote ; 'string', MODIFICATION: surrogate text rule used\n",e+="normal-single-quoted = normal-unescaped /\n",e+=" ESC normal-escapable\n",e+="normal-unescaped = ; omit %x0-1F control codes\n",e+=" %x20-26 /\n",e+=" ; omit 0x27 '\n",e+=" %x28-5B /\n",e+=" ; omit 0x5C \\\n",e+=" %x5D-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="\n",e+="normal-escapable = %x62 / ; b BS backspace U+0008\n",e+=" %x66 / ; f FF form feed U+000C\n",e+=" %x6E / ; n LF line feed U+000A\n",e+=" %x72 / ; r CR carriage return U+000D\n",e+=" %x74 / ; t HT horizontal tab U+0009\n",e+=" \"'\" / ; ' apostrophe U+0027\n",e+=' "\\" / ; \\ backslash (reverse solidus) U+005C\n',e+=" (%x75 normal-hexchar)\n",e+=" ; certain values u00xx U+00XX\n",e+='normal-hexchar = "0" "0"\n',e+=" (\n",e+=' ("0" %x30-37) / ; "00"-"07"\n',e+=" ; omit U+0008-U+000A BS HT LF\n",e+=' ("0" %x62) / ; "0b"\n',e+=" ; omit U+000C-U+000D FF CR\n",e+=' ("0" %x65-66) / ; "0e"-"0f"\n',e+=' ("1" normal-HEXDIG)\n',e+=" )\n",e+='normal-HEXDIG = DIGIT / %x61-66 ; "0"-"9", "a"-"f"\n',e+='normal-index-selector = "0" / (DIGIT1 *DIGIT)\n',e+=" ; non-negative decimal integer\n",e+="\n",e+="; Surrogate named rules\n",e+='dot-prefix = "."\n',e+='double-dot-prefix = ".."\n',e+='left-bracket = "["\n',e+='right-bracket = "]"\n',e+='left-paren = "("\n',e+='right-paren = ")"\n',e+='comma = ","\n',e+='colon = ":"\n',e+='dquote = %x22 ; "\n',e+="squote = %x27 ; '\n",e+='questionmark = "?"\n',e+='disjunction = "||"\n',e+='conjunction = "&&"\n','; JSONPath: Query Expressions for JSON\n; https://www.rfc-editor.org/rfc/rfc9535\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.1.1\njsonpath-query = root-identifier segments\nsegments = *(S segment)\n\nB = %x20 / ; Space\n %x09 / ; Horizontal tab\n %x0A / ; Line feed or New line\n %x0D ; Carriage return\nS = *B ; optional blank space\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.2.1\nroot-identifier = "$"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3\nselector = name-selector /\n wildcard-selector /\n slice-selector /\n index-selector /\n filter-selector\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.1.1\nname-selector = string-literal\n\nstring-literal = dquote *double-quoted dquote / ; "string", MODIFICATION: surrogate text rule used\n squote *single-quoted squote ; \'string\', MODIFICATION: surrogate text rule used\n\ndouble-quoted = unescaped /\n %x27 / ; \'\n ESC %x22 / ; \\"\n ESC escapable\n\nsingle-quoted = unescaped /\n %x22 / ; "\n ESC %x27 / ; \\\'\n ESC escapable\n\nESC = %x5C ; \\ backslash\n\nunescaped = %x20-21 / ; see RFC 8259\n ; omit 0x22 "\n %x23-26 /\n ; omit 0x27 \'\n %x28-5B /\n ; omit 0x5C \\\n %x5D-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\n\nescapable = %x62 / ; b BS backspace U+0008\n %x66 / ; f FF form feed U+000C\n %x6E / ; n LF line feed U+000A\n %x72 / ; r CR carriage return U+000D\n %x74 / ; t HT horizontal tab U+0009\n "/" / ; / slash (solidus) U+002F\n "\\" / ; \\ backslash (reverse solidus) U+005C\n (%x75 hexchar) ; uXXXX U+XXXX\n\nhexchar = non-surrogate /\n (high-surrogate "\\" %x75 low-surrogate)\nnon-surrogate = ((DIGIT / "A"/"B"/"C" / "E"/"F") 3HEXDIG) /\n ("D" %x30-37 2HEXDIG )\nhigh-surrogate = "D" ("8"/"9"/"A"/"B") 2HEXDIG\nlow-surrogate = "D" ("C"/"D"/"E"/"F") 2HEXDIG\n\nHEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.2.1\nwildcard-selector = "*"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.3.1\nindex-selector = int ; decimal integer\n\nint = "0" /\n (["-"] DIGIT1 *DIGIT) ; - optional\nDIGIT1 = %x31-39 ; 1-9 non-zero digit\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.4.1\nslice-selector = [start S] colon S [end S] [colon [S step ]] ; MODIFICATION: surrogate text rule used\n\nstart = int ; included in selection\nend = int ; not included in selection\nstep = int ; default: 1\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.5.1\nfilter-selector = questionmark S logical-expr ; MODIFICATION: surrogate text rule used\n\nlogical-expr = logical-or-expr\nlogical-or-expr = logical-and-expr *(S disjunction S logical-and-expr) ; MODIFICATION: surrogate text rule used\n ; disjunction\n ; binds less tightly than conjunction\nlogical-and-expr = basic-expr *(S conjunction S basic-expr) ; MODIFICATION: surrogate text rule used\n ; conjunction\n ; binds more tightly than disjunction\n\nbasic-expr = paren-expr /\n comparison-expr /\n test-expr\n\nparen-expr = [logical-not-op S] left-paren S logical-expr S right-paren ; MODIFICATION: surrogate text rule used\n ; parenthesized expression\nlogical-not-op = "!" ; logical NOT operator\n\ntest-expr = [logical-not-op S]\n (filter-query / ; existence/non-existence\n function-expr) ; LogicalType or NodesType\nfilter-query = rel-query / jsonpath-query\nrel-query = current-node-identifier segments\ncurrent-node-identifier = "@"\n\ncomparison-expr = comparable S comparison-op S comparable\nliteral = number / string-literal /\n true / false / null\ncomparable = singular-query / ; singular query value\n function-expr / ; ValueType\n literal\n ; MODIFICATION: https://www.rfc-editor.org/errata/eid8352\ncomparison-op = "==" / "!=" /\n "<=" / ">=" /\n "<" / ">"\n\nsingular-query = rel-singular-query / abs-singular-query\nrel-singular-query = current-node-identifier singular-query-segments\nabs-singular-query = root-identifier singular-query-segments\nsingular-query-segments = *(S (name-segment / index-segment))\nname-segment = (left-bracket name-selector right-bracket) / ; MODIFICATION: surrogate text rule used\n (dot-prefix member-name-shorthand) ; MODIFICATION: surrogate text rule used\nindex-segment = left-bracket index-selector right-bracket ; MODIFICATION: surrogate text rule used\n\nnumber = (int / "-0") [ frac ] [ exp ] ; decimal number\nfrac = "." 1*DIGIT ; decimal fraction\nexp = "e" [ "-" / "+" ] 1*DIGIT ; decimal exponent\ntrue = %x74.72.75.65 ; true\nfalse = %x66.61.6c.73.65 ; false\nnull = %x6e.75.6c.6c ; null\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.4\nfunction-name = function-name-first *function-name-char\nfunction-name-first = LCALPHA\nfunction-name-char = function-name-first / "_" / DIGIT\nLCALPHA = %x61-7A ; "a".."z"\n\nfunction-expr = function-name left-paren S [function-argument ; MODIFICATION: surrogate text rule used\n *(S comma S function-argument)] S right-paren ; MODIFICATION: surrogate text rule used\nfunction-argument = logical-expr / ; MODIFICATION: https://www.rfc-editor.org/errata/eid8343\n filter-query / ; (includes singular-query)\n function-expr /\n literal\n\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5\nsegment = child-segment / descendant-segment\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.1.1\nchild-segment = bracketed-selection /\n (dot-prefix ; MODIFICATION: surrogate text rule used\n (wildcard-selector /\n member-name-shorthand))\n\nbracketed-selection = left-bracket S selector *(S comma S selector) S right-bracket\n ; MODIFICATION: surrogate text rule used\n\nmember-name-shorthand = name-first *name-char\nname-first = ALPHA /\n "_" /\n %x80-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\nname-char = name-first / DIGIT\n\nDIGIT = %x30-39 ; 0-9\nALPHA = %x41-5A / %x61-7A ; A-Z / a-z\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.2.1\ndescendant-segment = double-dot-prefix (bracketed-selection / ; MODIFICATION: surrogate text rule used\n wildcard-selector /\n member-name-shorthand)\n\n; https://www.rfc-editor.org/rfc/rfc9535#name-normalized-paths\nnormalized-path = root-identifier *(normal-index-segment)\nnormal-index-segment = left-bracket normal-selector right-bracket ; MODIFICATION: surrogate text rule used\nnormal-selector = normal-name-selector / normal-index-selector\nnormal-name-selector = squote *normal-single-quoted squote ; \'string\', MODIFICATION: surrogate text rule used\nnormal-single-quoted = normal-unescaped /\n ESC normal-escapable\nnormal-unescaped = ; omit %x0-1F control codes\n %x20-26 /\n ; omit 0x27 \'\n %x28-5B /\n ; omit 0x5C \\\n %x5D-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\n\nnormal-escapable = %x62 / ; b BS backspace U+0008\n %x66 / ; f FF form feed U+000C\n %x6E / ; n LF line feed U+000A\n %x72 / ; r CR carriage return U+000D\n %x74 / ; t HT horizontal tab U+0009\n "\'" / ; \' apostrophe U+0027\n "\\" / ; \\ backslash (reverse solidus) U+005C\n (%x75 normal-hexchar)\n ; certain values u00xx U+00XX\nnormal-hexchar = "0" "0"\n (\n ("0" %x30-37) / ; "00"-"07"\n ; omit U+0008-U+000A BS HT LF\n ("0" %x62) / ; "0b"\n ; omit U+000C-U+000D FF CR\n ("0" %x65-66) / ; "0e"-"0f"\n ("1" normal-HEXDIG)\n )\nnormal-HEXDIG = DIGIT / %x61-66 ; "0"-"9", "a"-"f"\nnormal-index-selector = "0" / (DIGIT1 *DIGIT)\n ; non-negative decimal integer\n\n; Surrogate named rules\ndot-prefix = "."\ndouble-dot-prefix = ".."\nleft-bracket = "["\nright-bracket = "]"\nleft-paren = "("\nright-paren = ")"\ncomma = ","\ncolon = ":"\ndquote = %x22 ; "\nsquote = %x27 ; \'\nquestionmark = "?"\ndisjunction = "||"\nconjunction = "&&"\n'}};const mn=class extends pn{},_n=e=>{if(!Array.isArray(e))throw new mn("Selectors must be an array, got: "+typeof e,{selectors:e});try{return`$${e.map(e=>{if("string"==typeof e)return`['${(e=>{if("string"!=typeof e)throw new TypeError("Selector must be a string");let t="";for(const s of e){const e=s.codePointAt(0);switch(e){case 8:t+="\\b";break;case 9:t+="\\t";break;case 10:t+="\\n";break;case 12:t+="\\f";break;case 13:t+="\\r";break;case 39:t+="\\'";break;case 92:t+="\\\\";break;default:t+=e<=31?`\\u${e.toString(16).padStart(4,"0")}`:s}}return t})(e)}']`;if("number"==typeof e){if(!Number.isSafeInteger(e)||e<0)throw new TypeError(`Index selector must be a non-negative safe integer, got: ${e}`);return`[${e}]`}throw new TypeError("Selector must be a string or non-negative integer, got: "+typeof e)}).join("")}`}catch(t){throw new mn("Failed to compile normalized JSONPath",{cause:t,selectors:e})}},gn=(e,t,s,n)=>{const{realm:r}=e,{value:i}=s;if(r.isObject(t)&&r.hasProperty(t,i)){n(r.getProperty(t,i),i)}},fn=(e,t,s,n)=>{const{realm:r}=e,{value:i}=s;if(!r.isArray(t))return;const o=r.getLength(t),a=((e,t)=>e>=0?e:t+e)(i,o);if(a>=0&&a<o){n(r.getElement(t,a),a)}},yn=(e,t,s,n)=>{const{realm:r}=e;for(const[e,s]of r.entries(t))n(s,e)},bn=(e,t)=>e>=0?Math.min(e,t):Math.max(t+e,0),xn=(e,t,s,n)=>{const{realm:r}=e,{start:i,end:o,step:a}=s;if(!r.isArray(t))return;const c=((e,t,s,n)=>{const r=s??1;if(0===r)return null;let i,o;if(r>0){const s=0,r=n,a=null!==e?bn(e,n):s,c=null!==t?bn(t,n):r;i=Math.max(a,0),o=Math.min(c,n)}else{const s=n-1,r=-n-1,a=null!==e?e>=0?Math.min(e,n-1):Math.max(n+e,-1):s,c=null!==t?t>=0?Math.min(t,n-1):Math.max(n+t,-1):r;o=Math.min(a,n-1),i=Math.max(c,-1)}return{lower:i,upper:o,step:r}})(i,o,a,r.getLength(t));if(null===c)return;const{lower:l,upper:u,step:d}=c;if(d>0)for(let e=l;e<u;e+=d){n(r.getElement(t,e),e)}else for(let e=u;e>l;e+=d){n(r.getElement(t,e),e)}},vn=(e,t,s,n)=>n.value,wn=(e,t,s)=>{const{realm:n}=e,{selector:r}=s;switch(r.type){case"NameSelector":{const{value:e}=r;return n.isObject(t)&&n.hasProperty(t,e)?n.getProperty(t,e):void 0}case"IndexSelector":{const{value:e}=r;if(!n.isArray(t))return;const s=n.getLength(t),i=e>=0?e:s+e;return i>=0&&i<s?n.getElement(t,i):void 0}default:return}},En=(e,t,s,n)=>{const{selectors:r}=s;for(const s of r)kn(e,t,s,n)},Sn=(e,t,s)=>{const n=[],r=e=>{n.push(e)},{selector:i}=s;switch(i.type){case"BracketedSelection":En(e,t,i,r);break;case"NameSelector":case"WildcardSelector":case"IndexSelector":case"SliceSelector":case"FilterSelector":kn(e,t,i,r)}return n},On=(e,t,s,n)=>{let r=s;for(const t of n){const s=[];if("DescendantSegment"===t.type){const n=r=>{const{realm:i}=e,o=Sn(e,r,t);s.push(...o);for(const[,e]of i.entries(r))n(e)};for(const e of r)n(e)}else for(const n of r){const r=Sn(e,n,t);s.push(...r)}r=s}return r},An=(e,t,s,n)=>{const{query:r}=n;let i;switch(r.type){case"RelQuery":i=((e,t,s,n)=>{const{segments:r}=n;return 0===r.length?[s]:On(e,0,[s],r)})(e,0,s,r);break;case"JsonPathQuery":i=((e,t,s,n)=>{const{segments:r}=n;return 0===r.length?[t]:On(e,0,[t],r)})(e,t,0,r);break;default:i=[]}return o=i,Object.defineProperty(o,"_isNodelist",{value:!0,enumerable:!1,writable:!1}),o;var o};let Cn;const In=(e,t,s,n)=>{const{name:r,arguments:i}=n,o=e.functions[r];if("function"!=typeof o)return;const a=i.map(n=>((e,t,s,n)=>{switch(n.type){case"Literal":case"RelSingularQuery":case"AbsSingularQuery":case"FunctionExpr":return Tn(e,t,s,n);case"FilterQuery":return An(e,t,s,n);case"TestExpr":return"FilterQuery"===n.expression.type?An(e,t,s,n.expression):"FunctionExpr"===n.expression.type?Tn(e,t,s,n.expression):Cn(e,t,s,n);case"LogicalOrExpr":case"LogicalAndExpr":case"LogicalNotExpr":case"ComparisonExpr":return Cn(e,t,s,n);default:return}})(e,t,s,n));return o(e.realm,...a)},Tn=(e,t,s,n)=>{switch(n.type){case"Literal":return vn(e,t,s,n);case"RelSingularQuery":return((e,t,s,n)=>{let r=s;for(const t of n.segments)if(r=wn(e,r,t),void 0===r)return;return r})(e,0,s,n);case"AbsSingularQuery":return((e,t,s,n)=>{let r=t;for(const t of n.segments)if(r=wn(e,r,t),void 0===r)return;return r})(e,t,0,n);case"FunctionExpr":return In(e,t,s,n);default:return}},Pn=(e,t,s,n)=>{const{left:r,op:i,right:o}=n,a=Tn(e,t,s,r),c=Tn(e,t,s,o);return e.realm.compare(a,i,c)},Fn=e=>Array.isArray(e),Mn=(e,t,s,n)=>{switch(n.type){case"LogicalOrExpr":return!!Mn(e,t,s,n.left)||Mn(e,t,s,n.right);case"LogicalAndExpr":return!!Mn(e,t,s,n.left)&&Mn(e,t,s,n.right);case"LogicalNotExpr":return!Mn(e,t,s,n.expression);case"TestExpr":{const{expression:r}=n;if("FilterQuery"===r.type){return An(e,t,s,r).length>0}if("FunctionExpr"===r.type){const n=In(e,t,s,r);return"boolean"==typeof n?n:void 0!==n&&(Fn(n)?n.length>0:Boolean(n))}return!1}case"ComparisonExpr":return Pn(e,t,s,n);default:return!1}};Cn=Mn;const Bn=Mn,jn=(e,t,s,n)=>{const{realm:r,root:i}=e,{expression:o}=s;for(const[s,a]of r.entries(t)){Bn(e,i,a,o)&&n(a,s)}},kn=(e,t,s,n)=>{switch(s.type){case"NameSelector":gn(e,t,s,n);break;case"IndexSelector":fn(e,t,s,n);break;case"WildcardSelector":yn(e,t,s,n);break;case"SliceSelector":xn(e,t,s,n);break;case"FilterSelector":jn(e,t,s,n)}};new Map;class Nn{node;key;index;parent;parentPath;inList;#e=!1;#t=!1;#s=!1;#n=!1;#r;#i=!1;constructor(e,t,s,n,r){this.node=e,this.parent=t,this.parentPath=s,this.key=n,this.index=r&&"number"==typeof n?n:void 0,this.inList=r}get shouldSkip(){return this.#e}get shouldStop(){return this.#t}get removed(){return this.#s}isRoot(){return null===this.parentPath}get depth(){let e=0,t=this.parentPath;for(;null!==t;)e+=1,t=t.parentPath;return e}getAncestry(){const e=[];let t=this.parentPath;for(;null!==t;)e.push(t),t=t.parentPath;return e}getAncestorNodes(){return this.getAncestry().map(e=>e.node)}getPathKeys(){const e=[];let t=this;for(;null!==t&&void 0!==t.key;){const{key:s,parent:n,parentPath:r}=t;if(nt(n)&&"value"===s){if(!Qe(n.key))throw new TypeError("MemberElement.key must be a StringElement");e.unshift(n.key.toValue())}else tt(r?.node)&&"number"==typeof s&&e.unshift(s);t=t.parentPath}return e}formatPath(e="jsonpointer"){const t=this.getPathKeys();return 0===t.length?"jsonpath"===e?"$":"":"jsonpath"===e?_n(t):dn(t)}findParent(e){let t=this.parentPath;for(;null!==t;){if(e(t))return t;t=t.parentPath}return null}find(e){return e(this)?this:this.findParent(e)}skip(){this.#e=!0}stop(){this.#t=!0}replaceWith(e){this.#i&&console.warn("Warning: replaceWith() called on a stale Path. This path belongs to a node whose visit has already completed. The replacement will have no effect. To replace a parent node, do so from the parent's own visitor."),this.#n=!0,this.#r=e,this.node=e}remove(){this.#i&&console.warn("Warning: remove() called on a stale Path. This path belongs to a node whose visit has already completed. The removal will have no effect. To remove a parent node, do so from the parent's own visitor."),this.#s=!0}_getReplacementNode(){return this.#r}_wasReplaced(){return this.#n}_reset(){this.#e=!1,this.#t=!1,this.#s=!1,this.#n=!1,this.#r=void 0}_markStale(){this.#i=!0}}const Rn=r(function(e,t){return e||t});const qn=M(1,As(Is,r(function(e,t){return Ss(e)?function(){return e.apply(this,arguments)||t.apply(this,arguments)}:J(Rn)(e,t)})(Ps,Rs)));const $n=M(1,As(qn,cs(ws,se("[object Promise]")))),Dn=e=>{const t=e?.element;return void 0===t||"element"===t?"Element":`${t.charAt(0).toUpperCase()}${t.slice(1)}Element`},Vn=e=>Xe(e),Ln=e=>yt(e),Un=(e,t,s)=>{nt(e)?e.value=s:Array.isArray(e)?e[t]=null===s?void 0:s:null===s?delete e[t]:e[t]=s},Hn=e=>nt(e)?["key","value"]:tt(e)||st(e)?["content"]:[],Wn=(e,t)=>{if(void 0!==e[t])return e[t];const s=t.length;for(const n in e){if(!n.includes("|"))continue;const r=n.indexOf(t);if(-1===r)continue;const i=0===r||"|"===n[r-1],o=r+s===n.length||"|"===n[r+s];if(i&&o)return e[n]}},Gn=(e,t,s)=>{if(void 0===t)return null;const n=e,r=s?"leave":"enter",i=Wn(n,t);if(!s&&"function"==typeof i)return i;if(null!=i){const e=i[r];if("function"==typeof e)return e}const o=n[r];if("function"==typeof o)return o;if(null!=o){const e=Wn(o,t);if("function"==typeof e)return e}return null},Zn=(e,t={})=>{const{visitFnGetter:s=Gn,nodeTypeGetter:n=Dn,exposeEdits:r=!1}=t,i=Symbol("internal-skip"),o=Symbol("break"),a=new Array(e.length).fill(i);return{enter(t){let c=t.node,l=!1;for(let u=0;u<e.length;u+=1)if(a[u]===i){const i=s(e[u],n(c),!1);if("function"==typeof i){const s=zn(t,c),n=i.call(e[u],s);if($n(n))throw new lt("Async visitor not supported in sync mode",{visitor:e[u],visitFn:i});if(s.shouldStop){a[u]=o;break}if(s.shouldSkip&&(a[u]=c),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();if(!r)return t.replaceWith(e),e;c=e,l=!0}else if(void 0!==n){if(!r)return t.replaceWith(n),n;c=n,l=!0}}}if(l)return t.replaceWith(c),c},leave(t){const r=t.node;for(let c=0;c<e.length;c+=1)if(a[c]===i){const i=s(e[c],n(r),!0);if("function"==typeof i){const s=zn(t,r),n=i.call(e[c],s);if($n(n))throw new lt("Async visitor not supported in sync mode",{visitor:e[c],visitFn:i});if(s.shouldStop){a[c]=o;break}if(s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();return t.replaceWith(e),e}if(void 0!==n)return t.replaceWith(n),n}}else a[c]===r&&(a[c]=i)}}},Jn=(e,t={})=>{const{visitFnGetter:s=Gn,nodeTypeGetter:n=Dn,exposeEdits:r=!1}=t,i=Symbol("internal-skip"),o=Symbol("break"),a=new Array(e.length).fill(i);return{async enter(t){let c=t.node,l=!1;for(let u=0;u<e.length;u+=1)if(a[u]===i){const i=s(e[u],n(c),!1);if("function"==typeof i){const s=zn(t,c),n=await i.call(e[u],s);if(s.shouldStop){a[u]=o;break}if(s.shouldSkip&&(a[u]=c),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();if(!r)return t.replaceWith(e),e;c=e,l=!0}else if(void 0!==n){if(!r)return t.replaceWith(n),n;c=n,l=!0}}}if(l)return t.replaceWith(c),c},async leave(t){const r=t.node;for(let c=0;c<e.length;c+=1)if(a[c]===i){const i=s(e[c],n(r),!0);if("function"==typeof i){const s=zn(t,r),n=await i.call(e[c],s);if(s.shouldStop){a[c]=o;break}if(s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();return t.replaceWith(e),e}if(void 0!==n)return t.replaceWith(n),n}}else a[c]===r&&(a[c]=i)}}};function zn(e,t){return new Nn(t,e.parent,e.parentPath,e.key,e.inList)}function*Xn(e,t,s){const{keyMap:n,state:r,nodeTypeGetter:i,nodePredicate:o,nodeCloneFn:a,detectCycles:c,mutable:l,mutationFn:u}=s,d="function"==typeof n;let h,p,m=Array.isArray(e),_=[e],g=-1,f=[],y=e,b=null,x=null;const v=[];do{g+=1;const e=g===_.length;let s;const w=e&&0!==f.length;if(e){if(s=0===v.length?void 0:b?.key,y=p,p=v.pop(),x=b?.parentPath?.parentPath??null,w)if(l)for(const[e,t]of f)u(y,e,t);else if(m){y=y.slice();let e=0;for(const[t,s]of f){const n=t-e;null===s?(y.splice(n,1),e+=1):y[n]=s}}else{y=a(y);for(const[e,t]of f)y[e]=t}if(void 0!==h){g=h.index,_=h.keys,f=h.edits;const e=h.inArray;if(x=h.parentPath,h=h.prev,w&&!l){const t=e?g:_[g];f.push([t,y])}m=e}}else if(void 0!==p&&(s=m?g:_[g],y=p[s],void 0===y))continue;if(!Array.isArray(y)){if(!o(y))throw new lt(`Invalid AST Node: ${String(y)}`,{node:y});if(c&&v.includes(y))continue;b=new Nn(y,p,x,s,m);const n=Gn(t,i(y),e);if(n){for(const[e,s]of Object.entries(r))t[e]=s;const i=yield{visitFn:n,path:b,isLeaving:e};if(b.shouldStop)break;if(b.shouldSkip&&!e)continue;if(b.removed){if(f.push([s,null]),!e)continue}else if(b._wasReplaced()){const t=b._getReplacementNode();if(f.push([s,t]),!e){if(!o(t))continue;y=t}}else if(void 0!==i&&(f.push([s,i]),!e)){if(!o(i))continue;y=i}b._markStale()}}if(!e){if(h={inArray:m,index:g,keys:_,edits:f,parentPath:x,prev:h},m=Array.isArray(y),m)_=y;else if(d)_=n(y);else{const e=i(y);_=void 0!==e?n[e]??[]:[]}g=-1,f=[],void 0!==p&&v.push(p),p=y,x=b}}while(void 0!==h);return 0!==f.length?f.at(-1)[1]:e}Zn[Symbol.for("nodejs.util.promisify.custom")]=Jn;const Qn=(e,t,s={})=>{const n=Xn(e,t,{keyMap:s.keyMap??Hn,state:s.state??{},nodeTypeGetter:s.nodeTypeGetter??Dn,nodePredicate:s.nodePredicate??Vn,nodeCloneFn:s.nodeCloneFn??Ln,detectCycles:s.detectCycles??!0,mutable:s.mutable??!1,mutationFn:s.mutationFn??Un});let r=n.next();for(;!r.done;){const e=r.value,s=e.visitFn.call(t,e.path);if($n(s))throw new lt("Async visitor not supported in sync mode",{visitor:t,visitFn:e.visitFn});r=n.next(s)}return r.value},Kn=async(e,t,s={})=>{const n=Xn(e,t,{keyMap:s.keyMap??Hn,state:s.state??{},nodeTypeGetter:s.nodeTypeGetter??Dn,nodePredicate:s.nodePredicate??Vn,nodeCloneFn:s.nodeCloneFn??Ln,detectCycles:s.detectCycles??!0,mutable:s.mutable??!1,mutationFn:s.mutationFn??Un});let r=n.next();for(;!r.done;){const e=r.value,s=await e.visitFn.call(t,e.path);r=n.next(s)}return r.value};Qn[Symbol.for("nodejs.util.promisify.custom")]=Kn,Nn.prototype.traverse=function(e,t){return Qn(this.node,e,t)},Nn.prototype.traverseAsync=function(e,t){return Kn(this.node,e,t)};var Yn=i(function(e,t,s){var n,r={};for(n in s=s||{},t=t||{})B(n,t)&&(r[n]=B(n,s)?e(n,t[n],s[n]):t[n]);for(n in s)B(n,s)&&!B(n,r)&&(r[n]=s[n]);return r});const er=Yn;var tr=i(function e(t,s,n){return er(function(s,n,r){return _s(n)&&_s(r)?e(t,n,r):t(s,n,r)},s,n)});const sr=tr;const nr=r(function(e,t){return sr(function(e,t,s){return s},e,t)});const rr=os(0,-1);var ir=r(function(e,t){return e.apply(this,t)});const or=ir;const ar=z(Rs);var cr=n(function(e){return null!=e&&"function"==typeof e["fantasy-land/empty"]?e["fantasy-land/empty"]():null!=e&&null!=e.constructor&&"function"==typeof e.constructor["fantasy-land/empty"]?e.constructor["fantasy-land/empty"]():null!=e&&"function"==typeof e.empty?e.empty():null!=e&&null!=e.constructor&&"function"==typeof e.constructor.empty?e.constructor.empty():e==Set||e instanceof Set?new Set:e==Map||e instanceof Map?new Map:_(e)?[]:g(e)?"":_s(e)?{}:k(e)?function(){return arguments}():function(e){var t=Object.prototype.toString.call(e);return"[object Uint8ClampedArray]"===t||"[object Int8Array]"===t||"[object Uint8Array]"===t||"[object Int16Array]"===t||"[object Uint16Array]"===t||"[object Int32Array]"===t||"[object Uint32Array]"===t||"[object Float32Array]"===t||"[object Float64Array]"===t||"[object BigInt64Array]"===t||"[object BigUint64Array]"===t}(e)?e.constructor.from(""):void 0});const lr=cr;const ur=n(function(e){return null!=e&&se(e,lr(e))});const dr=M(1,Rs(Array.isArray)?Array.isArray:cs(Y,us("Array")));const hr=As(dr,ur);const pr=M(3,function(e,t,s){var n=zt(e,s),r=zt(rr(e),s);if(!ar(n)&&!hr(e)){var i=Yt(n,r);return or(i,t)}});const mr=class extends be{constructor(e,t,s){super(e,t,s),this.element="comment"}},_r=e=>e instanceof Re,gr=e=>e instanceof Ne,fr=new He,yr={isElement:Xe,isStringElement:Qe,isNumberElement:Ke,isNullElement:Ye,isBooleanElement:et,isArrayElement:tt,isObjectElement:st,isMemberElement:nt,isPrimitiveElement:rt,isLinkElement:_r,isRefElement:gr,isAnnotationElement:e=>e instanceof Ct,isCommentElement:e=>e instanceof mr,isParseResultElement:e=>e instanceof ct,isSourceMapElement:e=>e instanceof Se,hasElementStyle:it,hasElementSourceMap:ot,includesSymbols:(e,t)=>{if(0===t.length)return!0;if(!e.hasAttributesProperty("symbols"))return!1;const s=e.attributes.get("symbols");return!!tt(s)&&t.every(e=>s.includes(e))},includesClasses:at},br={toolboxCreator:()=>({predicates:yr,namespace:fr}),visitorOptions:{exposeEdits:!0}},xr=(e,t,s={})=>{if(0===t.length)return e;const n=nr(br,s),{toolboxCreator:r,visitorOptions:i}=n,o=r(),a=t.map(e=>e(o)),c=Zn(a.map(d({},"visitor")),i);a.forEach(pr(["pre"],[]));const l=Qn(e,c);return a.forEach(pr(["post"],[])),l};xr[Symbol.for("nodejs.util.promisify.custom")]=async(e,t,s={})=>{if(0===t.length)return e;const n=nr(br,s),{toolboxCreator:r,visitorOptions:i}=n,o=r(),a=t.map(e=>e(o)),c=Jn(a.map(d({},"visitor")),i);await Promise.allSettled(a.map(pr(["pre"],[])));const l=await Kn(e,c);return await Promise.allSettled(a.map(pr(["post"],[]))),l};var vr=i(function e(t,s,n){if(0===t.length)return s;var r=t[0];if(t.length>1){var i=l(r,n);(Lt(i)||"object"!=typeof i)&&(i=a(t[1])?[]:{}),s=e(Array.prototype.slice.call(t,1),s,i)}return function(e,t,s){if(a(e)&&_(s)){var n=e<0?s.length+e:e,r=[].concat(s);return r[n]=t,r}var i={};for(var o in s)i[o]=s[o];return i[e]=t,i}(r,s,n)});const wr=vr;const Er=i(function(e,t,s){var n=Array.prototype.slice.call(s,0);return n.splice(e,t),n});var Sr=i(function(e,t,s){return wr([e],t,s)});const Or=Sr;var Ar=r(function e(t,s){if(null==s)return s;switch(t.length){case 0:return s;case 1:return function(e,t){if(null==t)return t;if(a(e)&&_(t))return Er(e,1,t);var s={};for(var n in t)s[n]=t[n];return delete s[e],s}(t[0],s);default:var n=t[0],r=Array.prototype.slice.call(t,1);return null==s[n]?function(e,t){if(a(e)&&_(t))return[].concat(t);var s={};for(var n in t)s[n]=t[n];return s}(n,s):Or(n,e(r,s[n]),s)}});const Cr=Ar,Ir=e=>{if(!Xe(e))return e;if(Qe(e)||Ke(e)||et(e)||Ye(e))return e.toValue();const t=new WeakMap,s=e=>{if(!Xe(e))return e;if(st(e)){if(t.has(e))return t.get(e);const n={};return t.set(e,n),e.forEach((e,t)=>{const r=s(t),i=s(e);"string"==typeof r&&(n[r]=i)}),n}if(tt(e)){if(t.has(e))return t.get(e);const n=[];return t.set(e,n),e.forEach(e=>n.push(s(e))),n}return gr(e)?String(e.toValue()):_r(e)?Qe(e.href)?e.href.toValue():"":e.toValue()};return s(e)},Tr=e=>{const t=e.isMetaEmpty?void 0:e.meta.cloneDeep(),s=e.isAttributesEmpty?void 0:_t(e.attributes);return new e.constructor(void 0,t,s)},Pr=(e,t)=>t.clone&&t.isMergeableElement(e)?Mr(Tr(e),e,t):e,Fr={clone:!0,isMergeableElement:e=>st(e)||tt(e),arrayElementMerge:(e,t,s)=>new(0,e.constructor)(e.concat(t).map(e=>Pr(e,s))),objectElementMerge:(e,t,s)=>{const n=st(e)?Tr(e):Tr(t);return st(e)&&e.forEach((e,t,r)=>{const i=yt(r);i.value=Pr(e,s),n.content.push(i)}),t.forEach((t,r,i)=>{const o=Ir(r);let a;if(st(e)&&e.hasKey(o)&&s.isMergeableElement(t)){const n=e.get(o);a=yt(i),a.value=((e,t)=>{if("function"!=typeof t.customMerge)return Mr;const s=t.customMerge(e,t);return"function"==typeof s?s:Mr})(r,s)(n,t,s)}else a=yt(i),a.value=Pr(t,s);n.remove(o),n.content.push(a)}),n},customMerge:void 0,customMetaMerge:void 0,customAttributesMerge:void 0},Mr=(e,t,s)=>{const n={...Fr,...s};n.isMergeableElement=n.isMergeableElement??Fr.isMergeableElement,n.arrayElementMerge=n.arrayElementMerge??Fr.arrayElementMerge,n.objectElementMerge=n.objectElementMerge??Fr.objectElementMerge;const r=tt(t);if(!(r===tt(e)))return Pr(t,n);const i=r&&"function"==typeof n.arrayElementMerge?n.arrayElementMerge(e,t,n):n.objectElementMerge(e,t,n);return e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty?t.isMetaEmpty||(i.meta=t.meta.cloneDeep()):i.meta=e.meta.cloneDeep():i.meta=(e=>"function"!=typeof e.customMetaMerge?e=>e.cloneDeep():e.customMetaMerge)(n)(e.meta,t.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty?t.isAttributesEmpty||(i.attributes=_t(t.attributes)):i.attributes=_t(e.attributes):i.attributes=(e=>"function"!=typeof e.customAttributesMerge?e=>_t(e):e.customAttributesMerge)(n)(e.attributes,t.attributes),i};Mr.all=(e,t)=>{if(!Array.isArray(e))throw new TypeError("First argument of deepmerge should be an array.");return 0===e.length?new Ie:e.reduce((e,s)=>Mr(e,s,t),Tr(e[0]))};const Br=Mr;const jr=class{element;consume=!1;consumeSafe=!1;constructor(e){Object.assign(this,e)}copyMetaAndAttributes(e,t){e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty||(t.meta=e.meta.cloneDeep()):t.meta=t.meta.merge(e.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty||(t.attributes=_t(e.attributes)):t.attributes=Br(t.attributes,e.attributes),Se.transfer(e,t),Pe.transfer(e,t)}};const kr=class extends jr{enter(e){this.element=this.consume?e.node:_t(e.node),e.stop()}};const Nr=n(function(e){return M(rs(Ms,0,Bs("length",e)),function(){for(var t=0,s=e.length;t<s;){if(!e[t].apply(this,arguments))return!1;t+=1}return!0})});const Rr=n(function(e){return!ur(e)});var qr=z(qn);const $r=Nr([Ls,qr,Rr]);const Dr=r(function(e,t){for(var s={},n=0;n<e.length;)e[n]in t&&(s[e[n]]=t[e[n]]),n+=1;return s});const Vr=class extends jr{specObj;passingOptionsNames=["specObj","parent","consume"];constructor({specObj:e,...t}){super({...t}),this.specObj=e}retrievePassingOptions(){return Dr(this.passingOptionsNames,this)}retrieveFixedFields(e){const t=zt(["visitors",...e,"fixedFields"],this.specObj);return"object"==typeof t&&null!==t?Object.keys(t):[]}retrieveVisitor(e){return Es(Rs,["visitors",...e],this.specObj)?zt(["visitors",...e],this.specObj):zt(["visitors",...e,"$visitor"],this.specObj)}retrieveVisitorInstance(e,t={}){const s=this.retrievePassingOptions();return new(this.retrieveVisitor(e))({...s,...t})}toRefractedElement(e,t,s={}){const n=this.retrieveVisitorInstance(e,s);return n instanceof kr&&n?.constructor===kr?this.consume?t:_t(t):(Qn(t,n,s),n.element)}};const Lr=class extends Vr{specPath;ignoredFields;constructor({specPath:e,ignoredFields:t,...s}){super({...s}),this.specPath=e,this.ignoredFields=t||[]}ObjectElement(e){const t=e.node,s=this.specPath(t),n=this.retrieveFixedFields(s);t.forEach((e,t,r)=>{const i=Ir(t);if(Qe(t)&&n.includes(i)&&!this.ignoredFields.includes(i)){const n=this.toRefractedElement([...s,"fixedFields",i],e),o=new Ce(this.consume?t:_t(t),n);this.copyMetaAndAttributes(r,o),this.element.content.push(o),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else this.ignoredFields.includes(i)||this.element.content.push(this.consume?r:_t(r))}),this.copyMetaAndAttributes(t,this.element),e.stop()}},Ur=(e,t,s=[])=>{const n=Object.getOwnPropertyDescriptors(t);for(let e of s)delete n[e];Object.defineProperties(e,n)},Hr=(e,t=[e])=>{const s=Object.getPrototypeOf(e);return null===s?t:Hr(s,[...t,s])},Wr=(e,t,s=[])=>{var n;const r=null!==(n=((...e)=>{if(0===e.length)return;let t;const s=e.map(e=>Hr(e));for(;s.every(e=>e.length>0);){const e=s.map(e=>e.pop()),n=e[0];if(!e.every(e=>e===n))break;t=n}return t})(...e))&&void 0!==n?n:Object.prototype,i=Object.create(r),o=Hr(r);for(let t of e){let e=Hr(t);for(let t=e.length-1;t>=0;t--){let n=e[t];-1===o.indexOf(n)&&(Ur(i,n,["constructor",...s]),o.push(n))}}return i.constructor=t,i},Gr=e=>e.filter((t,s)=>e.indexOf(t)==s),Zr=(e,t)=>{const s=t.map(e=>Hr(e));let n=0,r=!0;for(;r;){r=!1;for(let i=t.length-1;i>=0;i--){const t=s[i][n];if(null!=t&&(r=!0,null!=Object.getOwnPropertyDescriptor(t,e)))return s[i][0]}n++}},Jr=(e,t=Object.prototype)=>new Proxy({},{getPrototypeOf:()=>t,setPrototypeOf(){throw Error("Cannot set prototype of Proxies created by ts-mixer")},getOwnPropertyDescriptor:(t,s)=>Object.getOwnPropertyDescriptor(Zr(s,e)||{},s),defineProperty(){throw new Error("Cannot define new properties on Proxies created by ts-mixer")},has:(s,n)=>void 0!==Zr(n,e)||void 0!==t[n],get:(s,n)=>(Zr(n,e)||t)[n],set(t,s,n){const r=Zr(s,e);if(void 0===r)throw new Error("Cannot set new properties on Proxies created by ts-mixer");return r[s]=n,!0},deleteProperty(){throw new Error("Cannot delete properties on Proxies created by ts-mixer")},ownKeys:()=>e.map(Object.getOwnPropertyNames).reduce((e,t)=>t.concat(e.filter(e=>t.indexOf(e)<0)))}),zr=null,Xr="copy",Qr="copy",Kr="deep",Yr=new WeakMap,ei=e=>Yr.get(e),ti=(e,t)=>{var s,n;const r=Gr([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)]),i={};for(let o of r)i[o]=Gr([...null!==(s=null==e?void 0:e[o])&&void 0!==s?s:[],...null!==(n=null==t?void 0:t[o])&&void 0!==n?n:[]]);return i},si=(e,t)=>{var s,n,r,i;return{property:ti(null!==(s=null==e?void 0:e.property)&&void 0!==s?s:{},null!==(n=null==t?void 0:t.property)&&void 0!==n?n:{}),method:ti(null!==(r=null==e?void 0:e.method)&&void 0!==r?r:{},null!==(i=null==t?void 0:t.method)&&void 0!==i?i:{})}},ni=(e,t)=>{var s,n,r,i,o,a;return{class:Gr([...null!==(s=null==e?void 0:e.class)&&void 0!==s?s:[],...null!==(n=null==t?void 0:t.class)&&void 0!==n?n:[]]),static:si(null!==(r=null==e?void 0:e.static)&&void 0!==r?r:{},null!==(i=null==t?void 0:t.static)&&void 0!==i?i:{}),instance:si(null!==(o=null==e?void 0:e.instance)&&void 0!==o?o:{},null!==(a=null==t?void 0:t.instance)&&void 0!==a?a:{})}},ri=new Map,ii=(...e)=>{const t=((...e)=>{var t;const s=new Set,n=new Set([...e]);for(;n.size>0;)for(let e of n){const r=[...Hr(e.prototype).map(e=>e.constructor),...null!==(t=ei(e))&&void 0!==t?t:[]].filter(e=>!s.has(e));for(let e of r)n.add(e);s.add(e),n.delete(e)}return[...s]})(...e).map(e=>ri.get(e)).filter(e=>!!e);return 0==t.length?{}:1==t.length?t[0]:t.reduce((e,t)=>ni(e,t))},oi=e=>{let t=ri.get(e);return t||(t={},ri.set(e,t)),t};function ai(...e){var t,s,n;const r=e.map(e=>e.prototype),i=zr;if(null!==i){const e=r.map(e=>e[i]).filter(e=>"function"==typeof e),t=function(...t){for(let s of e)s.apply(this,t)},s={[i]:t};r.push(s)}function o(...t){for(const s of e)Ur(this,new s(...t));null!==i&&"function"==typeof this[i]&&this[i].apply(this,t)}var a,c;o.prototype="copy"===Qr?Wr(r,o):(a=r,c=o,Jr([...a,{constructor:c}])),Object.setPrototypeOf(o,"copy"===Xr?Wr(e,null,["prototype"]):Jr(e,Function.prototype));let l=o;if("none"!==Kr){const r="deep"===Kr?ii(...e):((...e)=>{const t=e.map(e=>oi(e));return 0===t.length?{}:1===t.length?t[0]:t.reduce((e,t)=>ni(e,t))})(...e);for(let e of null!==(t=null==r?void 0:r.class)&&void 0!==t?t:[]){const t=e(l);t&&(l=t)}ci(null!==(s=null==r?void 0:r.static)&&void 0!==s?s:{},l),ci(null!==(n=null==r?void 0:r.instance)&&void 0!==n?n:{},l.prototype)}var u,d;return u=l,d=e,Yr.set(u,d),l}const ci=(e,t)=>{const s=e.property,n=e.method;if(s)for(let e in s)for(let n of s[e])n(t,e);if(n)for(let e in n)for(let s of n[e])s(t,e,Object.getOwnPropertyDescriptor(t,e))};const li=function(){return!1};const ui=class extends Vr{specPath;ignoredFields;fieldPatternPredicate=li;constructor({specPath:e,ignoredFields:t,fieldPatternPredicate:s,...n}){super({...n}),this.specPath=e,this.ignoredFields=t||[],"function"==typeof s&&(this.fieldPatternPredicate=s)}ObjectElement(e){const t=e.node;t.forEach((e,t,s)=>{const n=Ir(t);if(!this.ignoredFields.includes(n)&&this.fieldPatternPredicate(n)){const n=this.specPath(e),r=this.toRefractedElement(n,e),i=new Ce(this.consume?t:_t(t),r);this.copyMetaAndAttributes(s,i),i.classes.push("patterned-field"),this.element.content.push(i),this.consume&&this.consumeSafe&&!s.isFrozen&&(s.value=void 0)}else this.ignoredFields.includes(n)||this.element.content.push(this.consume?s:_t(s))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const di=class extends ui{constructor(e){super(e),this.fieldPatternPredicate=$r}};const hi=class{parent;constructor({parent:e}){this.parent=e}},pi=ai(Lr,hi,kr),mi=ai(Lr,kr),_i=ai(Lr,kr),gi=ai(Lr,kr),fi=ai(Vr,hi,kr),yi=ai(Vr,hi,kr),bi=ai(Vr,hi,kr),xi=ai(Vr,hi,kr),vi=ai(Vr,hi,kr),wi=ai(di,hi,kr),Ei=ai(di,hi,kr),Si=ai(di,hi,kr),Oi=ai(di,hi,kr);const Ai=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft4"}get idField(){return this.get("id")}set idField(e){this.set("id",e)}get $schema(){return this.get("$schema")}set $schema(e){this.set("$schema",e)}get multipleOf(){return this.get("multipleOf")}set multipleOf(e){this.set("multipleOf",e)}get maximum(){return this.get("maximum")}set maximum(e){this.set("maximum",e)}get exclusiveMaximum(){return this.get("exclusiveMaximum")}set exclusiveMaximum(e){this.set("exclusiveMaximum",e)}get minimum(){return this.get("minimum")}set minimum(e){this.set("minimum",e)}get exclusiveMinimum(){return this.get("exclusiveMinimum")}set exclusiveMinimum(e){this.set("exclusiveMinimum",e)}get maxLength(){return this.get("maxLength")}set maxLength(e){this.set("maxLength",e)}get minLength(){return this.get("minLength")}set minLength(e){this.set("minLength",e)}get pattern(){return this.get("pattern")}set pattern(e){this.set("pattern",e)}get additionalItems(){return this.get("additionalItems")}set additionalItems(e){this.set("additionalItems",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get maxItems(){return this.get("maxItems")}set maxItems(e){this.set("maxItems",e)}get minItems(){return this.get("minItems")}set minItems(e){this.set("minItems",e)}get uniqueItems(){return this.get("uniqueItems")}set uniqueItems(e){this.set("uniqueItems",e)}get maxProperties(){return this.get("maxProperties")}set maxProperties(e){this.set("maxProperties",e)}get minProperties(){return this.get("minProperties")}set minProperties(e){this.set("minProperties",e)}get required(){return this.get("required")}set required(e){this.set("required",e)}get properties(){return this.get("properties")}set properties(e){this.set("properties",e)}get additionalProperties(){return this.get("additionalProperties")}set additionalProperties(e){this.set("additionalProperties",e)}get patternProperties(){return this.get("patternProperties")}set patternProperties(e){this.set("patternProperties",e)}get dependencies(){return this.get("dependencies")}set dependencies(e){this.set("dependencies",e)}get enum(){return this.get("enum")}set enum(e){this.set("enum",e)}get type(){return this.get("type")}set type(e){this.set("type",e)}get allOf(){return this.get("allOf")}set allOf(e){this.set("allOf",e)}get anyOf(){return this.get("anyOf")}set anyOf(e){this.set("anyOf",e)}get oneOf(){return this.get("oneOf")}set oneOf(e){this.set("oneOf",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get definitions(){return this.get("definitions")}set definitions(e){this.set("definitions",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get default(){return this.get("default")}set default(e){this.set("default",e)}get format(){return this.get("format")}set format(e){this.set("format",e)}get base(){return this.get("base")}set base(e){this.set("base",e)}get linksField(){return this.get("links")}set linksField(e){this.set("links",e)}get media(){return this.get("media")}set media(e){this.set("media",e)}get readOnly(){return this.get("readOnly")}set readOnly(e){this.set("readOnly",e)}};const Ci=class extends pi{constructor(e){super(e),this.element=new Ai,this.consumeSafe=!0,this.specPath=ne(["document","objects","JSONSchema"])}get defaultDialectIdentifier(){return"http://json-schema.org/draft-04/schema#"}ObjectElement(e){const t=e.node;return this.handleDialectIdentifier(t),this.handleSchemaIdentifier(t),this.parent=this.element,Lr.prototype.ObjectElement.call(this,e)}handleDialectIdentifier(e){if(ie(this.parent)&&!Qe(e.get("$schema")))this.element.meta.set("inheritedDialectIdentifier",this.defaultDialectIdentifier);else if(this.parent instanceof Ai&&!Qe(e.get("$schema"))){const e=o(this.parent.meta.get("inheritedDialectIdentifier"),Ir(this.parent.$schema));this.element.meta.set("inheritedDialectIdentifier",e)}}handleSchemaIdentifier(e,t="id"){const s=void 0!==this.parent?[...this.parent.meta.get("ancestorsSchemaIdentifiers")??[]]:[],n=Ir(e.get(t));$r(n)&&s.push(n),this.element.meta.set("ancestorsSchemaIdentifiers",s)}},Ii=e=>st(e)&&e.hasKey("$ref");const Ti=class extends xi{ObjectElement(e){const t=e.node,s=Ii(t)?["document","objects","JSONReference"]:["document","objects","JSONSchema"];this.element=this.toRefractedElement(s,t),e.stop()}ArrayElement(e){const t=e.node;this.element=new ke,this.element.classes.push("json-schema-items"),t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Pi=class extends kr{ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-required")}};const Fi=class extends Oi{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-properties"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Mi=class extends Si{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-patternProperties"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Bi=class extends Ei{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-dependencies"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const ji=class extends kr{ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-enum")}};const ki=class extends kr{StringElement(e){super.enter(e),this.element.classes.push("json-schema-type")}ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-type")}};const Ni=class extends fi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-allOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Ri=class extends yi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-anyOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const qi=class extends bi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-oneOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const $i=class extends wi{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-definitions"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Di=class extends vi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-links")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","LinkDescription"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Vi=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="JSONReference",this.classes.push("json-reference")}get $ref(){return this.get("$ref")}set $ref(e){this.set("$ref",e)}};const Li=class extends mi{constructor(e){super(e),this.element=new Vi,this.specPath=ne(["document","objects","JSONReference"])}ObjectElement(e){Lr.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&this.element.classes.push("reference-element")}};const Ui=class extends kr{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};const Hi=function(){return!0};const Wi=i(function(e,t,s){return M(Math.max(e.length,t.length,s.length),function(){return e.apply(this,arguments)?t.apply(this,arguments):s.apply(this,arguments)})});const Gi=n(function(e){return function(t,s){return e(t,s)?-1:e(s,t)?1:0}});var Zi=r(function(e,t){return Array.prototype.slice.call(t,0).sort(e)});const Ji=Zi;const zi=n(function(e){return c(0,e)});function Xi(e){return e&&e["@@transducer/reduced"]?e:{"@@transducer/value":e,"@@transducer/reduced":!0}}const Qi=n(Xi);const Ki=z(Lt);const Yi=As(dr,Rr);function eo(e){return function(e){if(Array.isArray(e))return to(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return to(e,t);var s={}.toString.call(e).slice(8,-1);return"Object"===s&&e.constructor&&(s=e.constructor.name),"Map"===s||"Set"===s?Array.from(e):"Arguments"===s||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s)?to(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function to(e,t){(null==t||t>e.length)&&(t=e.length);for(var s=0,n=Array(t);s<t;s++)n[s]=e[s];return n}var so=cs(Ji(Gi(function(e,t){return e.length>t.length})),zi,u("length")),no=Hs(function(e,t,s){var n=s.apply(void 0,eo(e));return Ki(n)?Qi(n):t});const ro=Wi(Yi,function(e){var t=so(e);return M(t,function(){for(var t=arguments.length,s=new Array(t),n=0;n<t;n++)s[n]=arguments[n];return rs(no(s),void 0,e)})},re);const io=class extends Vr{alternator;constructor({alternator:e,...t}){super({...t}),this.alternator=e}enter(e){const t=e.node,s=this.alternator.map(({predicate:e,specPath:t})=>Wi(e,ne(t),re)),n=ro(s)(t);this.element=this.toRefractedElement(n,t),e.stop()}};const oo=class extends io{constructor(e){super(e),this.alternator=[{predicate:Ii,specPath:["document","objects","JSONReference"]},{predicate:Hi,specPath:["document","objects","JSONSchema"]}]}};const ao=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="media"}get binaryEncoding(){return this.get("binaryEncoding")}set binaryEncoding(e){this.set("binaryEncoding",e)}get type(){return this.get("type")}set type(e){this.set("type",e)}};const co=class extends gi{constructor(e){super(e),this.element=new ao,this.specPath=ne(["document","objects","Media"])}};const lo=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="linkDescription"}get href(){return this.get("href")}set href(e){this.set("href",e)}get rel(){return this.get("rel")}set rel(e){this.set("rel",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get mediaType(){return this.get("mediaType")}set mediaType(e){this.set("mediaType",e)}get method(){return this.get("method")}set method(e){this.set("method",e)}get encType(){return this.get("encType")}set encType(e){this.set("encType",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}};const uo=class extends _i{constructor(e){super(e),this.element=new lo,this.specPath=ne(["document","objects","LinkDescription"])}},ho={visitors:{value:kr,JSONSchemaOrJSONReferenceVisitor:oo,document:{objects:{JSONSchema:{element:"JSONSchemaDraft4",$visitor:Ci,fixedFields:{id:{$ref:"#/visitors/value",alias:"idField"},$schema:{$ref:"#/visitors/value"},multipleOf:{$ref:"#/visitors/value"},maximum:{$ref:"#/visitors/value"},exclusiveMaximum:{$ref:"#/visitors/value"},minimum:{$ref:"#/visitors/value"},exclusiveMinimum:{$ref:"#/visitors/value"},maxLength:{$ref:"#/visitors/value"},minLength:{$ref:"#/visitors/value"},pattern:{$ref:"#/visitors/value"},additionalItems:oo,items:{$visitor:Ti,alias:"itemsField"},maxItems:{$ref:"#/visitors/value"},minItems:{$ref:"#/visitors/value"},uniqueItems:{$ref:"#/visitors/value"},maxProperties:{$ref:"#/visitors/value"},minProperties:{$ref:"#/visitors/value"},required:Pi,properties:Fi,additionalProperties:oo,patternProperties:Mi,dependencies:Bi,enum:ji,type:ki,allOf:Ni,anyOf:Ri,oneOf:qi,not:oo,definitions:$i,title:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},default:{$ref:"#/visitors/value"},format:{$ref:"#/visitors/value"},base:{$ref:"#/visitors/value"},links:{$visitor:Di,alias:"linksField"},media:{$ref:"#/visitors/document/objects/Media"},readOnly:{$ref:"#/visitors/value"}}},JSONReference:{element:"JSONReference",$visitor:Li,fixedFields:{$ref:Ui}},Media:{element:"media",$visitor:co,fixedFields:{binaryEncoding:{$ref:"#/visitors/value"},type:{$ref:"#/visitors/value"}}},LinkDescription:{element:"linkDescription",$visitor:uo,fixedFields:{href:{$ref:"#/visitors/value"},rel:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},targetSchema:oo,mediaType:{$ref:"#/visitors/value"},method:{$ref:"#/visitors/value"},encType:{$ref:"#/visitors/value"},schema:oo}}}}}},po=tn(ho),mo=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(Ai,"fixedFields",{get:()=>mo(po.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(Vi,"fixedFields",{get:()=>mo(po.visitors.document.objects.JSONReference.fixedFields),enumerable:!0}),Object.defineProperty(ao,"fixedFields",{get:()=>mo(po.visitors.document.objects.Media.fixedFields),enumerable:!0}),Object.defineProperty(lo,"fixedFields",{get:()=>mo(po.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const _o=class extends Ai{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft6"}get idField(){throw new ze("id keyword from Core vocabulary has been renamed to $id.")}set idField(e){throw new ze("id keyword from Core vocabulary has been renamed to $id.")}get $id(){return this.get("$id")}set $id(e){this.set("$id",e)}get exclusiveMaximum(){return this.get("exclusiveMaximum")}set exclusiveMaximum(e){this.set("exclusiveMaximum",e)}get exclusiveMinimum(){return this.get("exclusiveMinimum")}set exclusiveMinimum(e){this.set("exclusiveMinimum",e)}get containsField(){return this.get("contains")}set containsField(e){this.set("contains",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get propertyNames(){return this.get("propertyNames")}set propertyNames(e){this.set("propertyNames",e)}get const(){return this.get("const")}set const(e){this.set("const",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const go=class extends Ci{constructor(e){super(e),this.element=new _o}get defaultDialectIdentifier(){return"http://json-schema.org/draft-06/schema#"}BooleanElement(e){this.enter(e),this.element.classes.push("boolean-json-schema")}handleSchemaIdentifier(e,t="$id"){return super.handleSchemaIdentifier(e,t)}};const fo=class extends Ti{BooleanElement(e){this.element=this.toRefractedElement(["document","objects","JSONSchema"],e.node),e.stop()}};const yo=class extends kr{ArrayElement(e){this.enter(e),this.element.classes.push("json-schema-examples")}};const bo=class extends lo{get hrefSchema(){return this.get("hrefSchema")}set hrefSchema(e){this.set("hrefSchema",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get schema(){throw new ze("schema keyword from Hyper-Schema vocabulary has been renamed to submissionSchema.")}set schema(e){throw new ze("schema keyword from Hyper-Schema vocabulary has been renamed to submissionSchema.")}get submissionSchema(){return this.get("submissionSchema")}set submissionSchema(e){this.set("submissionSchema",e)}get method(){throw new ze("method keyword from Hyper-Schema vocabulary has been removed.")}set method(e){throw new ze("method keyword from Hyper-Schema vocabulary has been removed.")}get encType(){throw new ze("encType keyword from Hyper-Schema vocabulary has been renamed to submissionEncType.")}set encType(e){throw new ze("encType keyword from Hyper-Schema vocabulary has been renamed to submissionEncType.")}get submissionEncType(){return this.get("submissionEncType")}set submissionEncType(e){this.set("submissionEncType",e)}};const xo=class extends uo{constructor(e){super(e),this.element=new bo}},vo=cs(wr(["visitors","document","objects","JSONSchema","element"],"JSONSchemaDraft6"),wr(["visitors","document","objects","JSONSchema","$visitor"],go),Cr(["visitors","document","objects","JSONSchema","fixedFields","id"]),wr(["visitors","document","objects","JSONSchema","fixedFields","$id"],{$ref:"#/visitors/value"}),wr(["visitors","document","objects","JSONSchema","fixedFields","contains"],{$visitor:ho.visitors.JSONSchemaOrJSONReferenceVisitor,alias:"containsField"}),wr(["visitors","document","objects","JSONSchema","fixedFields","items"],{$visitor:fo,alias:"itemsField"}),wr(["visitors","document","objects","JSONSchema","fixedFields","propertyNames"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","const"],{$ref:"#/visitors/value"}),wr(["visitors","document","objects","JSONSchema","fixedFields","examples"],yo),wr(["visitors","document","objects","LinkDescription","$visitor"],xo),wr(["visitors","document","objects","LinkDescription","fixedFields","hrefSchema"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","schema"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionSchema"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","method"]),Cr(["visitors","document","objects","LinkDescription","fixedFields","encType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionEncType"],{$ref:"#/visitors/value"}))(ho),wo=tn(vo),Eo=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(_o,"fixedFields",{get:()=>Eo(wo.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(bo,"fixedFields",{get:()=>Eo(wo.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const So=class extends _o{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft7"}get $comment(){return this.get("$comment")}set $comment(e){this.set("$comment",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get if(){return this.get("if")}set if(e){this.set("if",e)}get then(){return this.get("then")}set then(e){this.set("then",e)}get else(){return this.get("else")}set else(e){this.set("else",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get contentEncoding(){return this.get("contentEncoding")}set contentEncoding(e){this.set("contentEncoding",e)}get contentMediaType(){return this.get("contentMediaType")}set contentMediaType(e){this.set("contentMediaType",e)}get media(){throw new ze('media keyword from Hyper-Schema vocabulary has been moved to validation vocabulary as "contentMediaType" / "contentEncoding"')}set media(e){throw new ze('media keyword from Hyper-Schema vocabulary has been moved to validation vocabulary as "contentMediaType" / "contentEncoding"')}get writeOnly(){return this.get("writeOnly")}set writeOnly(e){this.set("writeOnly",e)}};const Oo=class extends go{constructor(e){super(e),this.element=new So}get defaultDialectIdentifier(){return"http://json-schema.org/draft-07/schema#"}};const Ao=class extends bo{get anchor(){return this.get("anchor")}set anchor(e){this.set("anchor",e)}get anchorPointer(){return this.get("anchorPointer")}set anchorPointer(e){this.set("anchorPointer",e)}get templatePointers(){return this.get("templatePointers")}set templatePointers(e){this.set("templatePointers",e)}get templateRequired(){return this.get("templateRequired")}set templateRequired(e){this.set("templateRequired",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get mediaType(){throw new ze("mediaType keyword from Hyper-Schema vocabulary has been renamed to targetMediaType.")}set mediaType(e){throw new ze("mediaType keyword from Hyper-Schema vocabulary has been renamed to targetMediaType.")}get targetMediaType(){return this.get("targetMediaType")}set targetMediaType(e){this.set("targetMediaType",e)}get targetHints(){return this.get("targetHints")}set targetHints(e){this.set("targetHints",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get $comment(){return this.get("$comment")}set $comment(e){this.set("$comment",e)}get hrefSchema(){return this.get("hrefSchema")}set hrefSchema(e){this.set("hrefSchema",e)}get headerSchema(){return this.get("headerSchema")}set headerSchema(e){this.set("headerSchema",e)}get submissionSchema(){return this.get("submissionSchema")}set submissionSchema(e){this.set("submissionSchema",e)}get submissionEncType(){throw new ze("submissionEncType keyword from Hyper-Schema vocabulary has been renamed to submissionMediaType.")}set submissionEncType(e){throw new ze("submissionEncType keyword from Hyper-Schema vocabulary has been renamed to submissionMediaType.")}get submissionMediaType(){return this.get("submissionMediaType")}set submissionMediaType(e){this.set("submissionMediaType",e)}};const Co=class extends xo{constructor(e){super(e),this.element=new Ao}},Io=cs(wr(["visitors","document","objects","JSONSchema","element"],"JSONSchemaDraft7"),wr(["visitors","document","objects","JSONSchema","$visitor"],Oo),wr(["visitors","document","objects","JSONSchema","fixedFields","$comment"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","if"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","then"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","else"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","JSONSchema","fixedFields","media"]),wr(["visitors","document","objects","JSONSchema","fixedFields","contentEncoding"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","contentMediaType"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","writeOnly"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","$visitor"],Co),wr(["visitors","document","objects","LinkDescription","fixedFields","anchor"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","anchorPointer"],vo.visitors.value),Cr(["visitors","document","objects","LinkDescription","fixedFields","mediaType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","targetMediaType"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","targetHints"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","description"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","$comment"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","headerSchema"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","submissionEncType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionMediaType"],vo.visitors.value))(vo);const To=class{element;consume=!1;consumeSafe=!1;constructor(e){Object.assign(this,e)}copyMetaAndAttributes(e,t){e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty||(t.meta=e.meta.cloneDeep()):t.meta=t.meta.merge(e.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty||(t.attributes=_t(e.attributes)):t.attributes=Br(t.attributes,e.attributes),Se.transfer(e,t),Pe.transfer(e,t)}};const Po=class extends To{enter(e){this.element=this.consume?e.node:_t(e.node),e.stop()}};const Fo=class extends To{specObj;passingOptionsNames=["specObj","consume"];constructor({specObj:e,...t}){super({...t}),this.specObj=e}retrievePassingOptions(){return Dr(this.passingOptionsNames,this)}retrieveFixedFields(e){const t=zt(["visitors",...e,"fixedFields"],this.specObj);return"object"==typeof t&&null!==t?Object.keys(t):[]}retrieveVisitor(e){return Es(Rs,["visitors",...e],this.specObj)?zt(["visitors",...e],this.specObj):zt(["visitors",...e,"$visitor"],this.specObj)}retrieveVisitorInstance(e,t={}){const s=this.retrievePassingOptions();return new(this.retrieveVisitor(e))({...s,...t})}toRefractedElement(e,t,s={}){const n=this.retrieveVisitorInstance(e,s);return n instanceof Po&&n?.constructor===Po?this.consume?t:_t(t):(Qn(t,n),n.element)}};const Mo=class extends Fo{MemberElement(e){const t=e.node;this.element=_t(t),this.element.classes.push("specification-extension"),e.stop()}};const Bo=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="asyncApi2",this.classes.push("api")}get asyncapi(){return this.get("asyncapi")}set asyncapi(e){this.set("asyncapi",e)}get idField(){return this.get("id")}set idField(e){this.set("id",e)}get info(){return this.get("info")}set info(e){this.set("info",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get defaultContentType(){return this.get("defaultContentType")}set defaultContentType(e){this.set("defaultContentType",e)}get channels(){return this.get("channels")}set channels(e){this.set("channels",e)}get components(){return this.get("components")}set components(e){this.set("components",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}};var jo=function(){function e(e,t){this.xf=t,this.n=e,this.i=0}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){this.i+=1;var s=0===this.n?e:this.xf["@@transducer/step"](e,t);return this.n>=0&&this.i>=this.n?Xi(s):s},e}();function ko(e){return function(t){return new jo(e,t)}}const No=r(E(["take"],ko,function(e,t){return os(0,e<0?1/0:e,t)}));const Ro=r(function(e,t){return se(No(e.length,t),e)}),qo=e=>st(e)&&e.hasKey("$ref"),$o=e=>Qe(e.key)&&Ro("x-",Ir(e.key));const Do=class extends Fo{specPath;ignoredFields;canSupportSpecificationExtensions=!0;specificationExtensionPredicate=$o;constructor({specPath:e,ignoredFields:t,canSupportSpecificationExtensions:s,specificationExtensionPredicate:n,...r}){super({...r}),this.specPath=e,this.ignoredFields=t||[],"boolean"==typeof s&&(this.canSupportSpecificationExtensions=s),"function"==typeof n&&(this.specificationExtensionPredicate=n)}ObjectElement(e){const t=e.node,s=this.specPath(t),n=this.retrieveFixedFields(s);t.forEach((e,t,r)=>{const i=Ir(t);if(Qe(t)&&n.includes(i)&&!this.ignoredFields.includes(i)){const n=this.toRefractedElement([...s,"fixedFields",i],e),o=new Ce(this.consume?t:_t(t),n);this.copyMetaAndAttributes(r,o),this.element.content.push(o),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else if(this.canSupportSpecificationExtensions&&this.specificationExtensionPredicate(r)){const e=this.toRefractedElement(["document","extension"],r);this.element.content.push(e),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else this.ignoredFields.includes(i)||this.element.content.push(this.consume?r:_t(r))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Vo=class extends Fo{specPath;ignoredFields;fieldPatternPredicate=li;canSupportSpecificationExtensions=!1;specificationExtensionPredicate=$o;constructor({specPath:e,ignoredFields:t,fieldPatternPredicate:s,canSupportSpecificationExtensions:n,specificationExtensionPredicate:r,...i}){super({...i}),this.specPath=e,this.ignoredFields=t||[],"function"==typeof s&&(this.fieldPatternPredicate=s),"boolean"==typeof n&&(this.canSupportSpecificationExtensions=n),"function"==typeof r&&(this.specificationExtensionPredicate=r)}ObjectElement(e){const t=e.node;t.forEach((e,t,s)=>{const n=Ir(t);if(this.canSupportSpecificationExtensions&&this.specificationExtensionPredicate(s)){const e=this.toRefractedElement(["document","extension"],s);this.element.content.push(e)}else if(!this.ignoredFields.includes(n)&&this.fieldPatternPredicate(n)){const n=this.specPath(e),r=this.toRefractedElement(n,e),i=new Ce(this.consume?t:_t(t),r);this.copyMetaAndAttributes(s,i),i.classes.push("patterned-field"),this.element.content.push(i),this.consume&&this.consumeSafe&&!s.isFrozen&&(s.value=void 0)}else this.ignoredFields.includes(n)||this.element.content.push(this.consume?s:_t(s))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Lo=class extends Vo{constructor(e){super(e),this.fieldPatternPredicate=$r}};const Uo=class extends Fo{alternator;constructor({alternator:e,...t}){super({...t}),this.alternator=e}enter(e){const t=e.node,s=this.alternator.map(({predicate:e,specPath:t})=>Wi(e,ne(t),re)),n=ro(s)(t);this.element=this.toRefractedElement(n,t),e.stop()}},Ho=ai(Fo,Po),Wo=ai(Do,Po),Go=ai(Vo,Po),Zo=ai(Lo,Po),Jo=(ai(Do,Vo),ai(Uo,Po));const zo=class extends Wo{constructor(e){super(e),this.element=new Bo,this.consumeSafe=!0,this.specPath=ne(["document","objects","AsyncApi"]),this.canSupportSpecificationExtensions=!0}};const Xo=class extends be{constructor(e,t,s){super(e,t,s),this.element="asyncApiVersion",this.classes.push("spec-version"),this.classes.push("version")}};const Qo=class extends Ho{StringElement(e){const t=e.node,s=new Xo(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const Ko=class extends be{constructor(e,t,s){super(e,t,s),this.element="identifier"}};const Yo=class extends Ho{StringElement(e){const t=e.node,s=new Ko(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const ea=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="info",this.classes.push("info")}get title(){return this.get("title")}set title(e){this.set("title",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get termsOfService(){return this.get("termsOfService")}set termsOfService(e){this.set("termsOfService",e)}get version(){return this.get("version")}set version(e){this.set("version",e)}get license(){return this.get("license")}set license(e){this.set("license",e)}get contact(){return this.get("contact")}set contact(e){this.set("contact",e)}};const ta=class extends Wo{constructor(e){super(e),this.element=new ea,this.specPath=ne(["document","objects","Info"]),this.canSupportSpecificationExtensions=!0}};const sa=class extends Po{StringElement(e){const t=e.node;this.element=new be(Ir(t)),this.copyMetaAndAttributes(t,this.element),this.element.classes.push("api-version"),this.element.classes.push("version"),e.stop()}};const na=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="contact"}get name(){return this.get("name")}set name(e){this.set("name",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}get email(){return this.get("email")}set email(e){this.set("email",e)}};const ra=class extends Wo{constructor(e){super(e),this.element=new na,this.specPath=ne(["document","objects","Contact"]),this.canSupportSpecificationExtensions=!0}};const ia=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="correlationID"}get description(){return this.get("description")}set description(e){this.set("description",e)}get location(){return this.get("location")}set location(e){this.set("location",e)}};const oa=class extends Wo{constructor(e){super(e),this.element=new ia,this.specPath=ne(["document","objects","CorrelationID"]),this.canSupportSpecificationExtensions=!0}};const aa=class extends be{constructor(e,t,s){super(e,t,s),this.element="defaultContentType"}};const ca=class extends Ho{StringElement(e){const t=e.node,s=new aa(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const la=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="license"}get name(){return this.get("name")}set name(e){this.set("name",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}};const ua=class extends Wo{constructor(e){super(e),this.element=new la,this.specPath=ne(["document","objects","License"]),this.canSupportSpecificationExtensions=!0}};const da=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="oAuthFlows"}get implicit(){return this.get("implicit")}set implicit(e){this.set("implicit",e)}get password(){return this.get("password")}set password(e){this.set("password",e)}get clientCredentials(){return this.get("clientCredentials")}set clientCredentials(e){this.set("clientCredentials",e)}get authorizationCode(){return this.get("authorizationCode")}set authorizationCode(e){this.set("authorizationCode",e)}};const ha=class extends Wo{constructor(e){super(e),this.element=new da,this.specPath=ne(["document","objects","OAuthFlows"]),this.canSupportSpecificationExtensions=!0}};const pa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="oAuthFlow"}get authorizationUrl(){return this.get("authorizationUrl")}set authorizationUrl(e){this.set("authorizationUrl",e)}get tokenUrl(){return this.get("tokenUrl")}set tokenUrl(e){this.set("tokenUrl",e)}get refreshUrl(){return this.get("refreshUrl")}set refreshUrl(e){this.set("refreshUrl",e)}get scopes(){return this.get("scopes")}set scopes(e){this.set("scopes",e)}};const ma=class extends Wo{constructor(e){super(e),this.element=new pa,this.specPath=ne(["document","objects","OAuthFlow"]),this.canSupportSpecificationExtensions=!0}};class _a extends Ie{static primaryClass="oauth-flow-scopes";constructor(e,t,s){super(e,t,s),this.classes.push(_a.primaryClass)}}const ga=_a;const fa=class extends Zo{constructor(e){super(e),this.element=new ga,this.specPath=ne(["value"])}};const ya=r(function(e,t){if(s=e,"[object RegExp]"!==Object.prototype.toString.call(s))throw new TypeError("‘test’ requires a value of type RegExp as its first argument; received "+ws(e));var s;return ae(e).test(t)});const ba=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="servers"}};const xa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channelBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const va=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channelItem"}get $ref(){return this.get("$ref")}set $ref(e){this.set("$ref",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get subscribe(){return this.get("subscribe")}set subscribe(e){this.set("subscribe",e)}get publish(){return this.get("publish")}set publish(e){this.set("publish",e)}get parameters(){return this.get("parameters")}set parameters(e){this.set("parameters",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const wa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channels"}};const Ea=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="components"}get schemas(){return this.get("schemas")}set schemas(e){this.set("schemas",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get serverVariables(){return this.get("serverVariables")}set serverVariables(e){this.set("serverVariables",e)}get messages(){return this.get("messages")}set messages(e){this.set("messages",e)}get securitySchemes(){return this.get("securitySchemes")}set securitySchemes(e){this.set("securitySchemes",e)}get parameters(){return this.get("parameters")}set parameters(e){this.set("parameters",e)}get correlationIds(){return this.get("correlationIds")}set correlationIds(e){this.set("correlationIds",e)}get operationTraits(){return this.get("operationTraits")}set operationTraits(e){this.set("operationTraits",e)}get messageTraits(){return this.get("messageTraits")}set messageTraits(e){this.set("messageTraits",e)}get serverBindings(){return this.get("serverBindings")}set serverBindings(e){this.set("serverBindings",e)}get channelBindings(){return this.get("channelBindings")}set channelBindings(e){this.set("channelBindings",e)}get operationBindings(){return this.get("operationBindings")}set operationBindings(e){this.set("operationBindings",e)}get messageBindings(){return this.get("messageBindings")}set messageBindings(e){this.set("messageBindings",e)}};const Sa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operation"}get operationId(){return this.get("operationId")}set operationId(e){this.set("operationId",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get traits(){return this.get("traits")}set traits(e){this.set("traits",e)}get message(){return this.get("message")}set message(e){this.set("message",e)}};const Oa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="parameter"}get description(){return this.get("description")}set description(e){this.set("description",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}get location(){return this.get("location")}set location(e){this.set("location",e)}};const Aa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="parameters"}};const Ca=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="reference",this.classes.push("json-reference"),this.classes.push("asyncapi-reference")}set $ref(e){this.set("$ref",e)}get $ref(){return this.get("$ref")}},Ia=tn(Io),Ta=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(So,"fixedFields",{get:()=>Ta(Ia.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(Ao,"fixedFields",{get:()=>Ta(Ia.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const Pa=class extends So{constructor(e,t,s){super(e,t,s),this.element="schema",this.classes.push("json-schema-draft-7")}get not(){return this.get("not")}get if(){return this.get("if")}set if(e){this.set("if",e)}get then(){return this.get("then")}set then(e){this.set("then",e)}get else(){return this.get("else")}set else(e){this.set("else",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get additionalItems(){return this.get("additionalItems")}set additionalItems(e){this.set("additionalItems",e)}get contains(){return this.get("contains")}set contains(e){this.set("contains",e)}get propertyNames(){return this.get("propertyNames")}set propertyNames(e){this.set("propertyNames",e)}get discriminator(){return this.get("discriminator")}get externalDocs(){return this.get("externalDocs")}get deprecated(){return this.get("deprecated")}};const Fa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="securityRequirement"}};const Ma=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="server"}get url(){return this.get("url")}set url(e){this.set("url",e)}get protocol(){return this.get("protocol")}set protocol(e){this.set("protocol",e)}get protocolVersion(){return this.get("protocolVersion")}set protocolVersion(e){this.set("protocolVersion",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get variables(){return this.get("variables")}set variables(e){this.set("variables",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const Ba=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="serverBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const ja=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="serverVariable"}get enum(){return this.get("enum")}set enum(e){this.set("enum",e)}get default(){return this.get("default")}set default(e){this.set("default",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const ka=e=>et(e)&&at(e,["boolean-json-schema"]),Na=e=>e instanceof Bo,Ra=e=>e instanceof Xo,qa=e=>e instanceof xa,$a=e=>e instanceof va,Da=e=>e instanceof wa,Va=e=>e instanceof Ea,La=e=>e instanceof na,Ua=e=>e instanceof Ko,Ha=e=>e instanceof ea,Wa=e=>e instanceof la,Ga=e=>e instanceof Sa,Za=e=>e instanceof Oa,Ja=e=>e instanceof Aa,za=e=>e instanceof Ca,Xa=e=>e instanceof Pa,Qa=e=>e instanceof Fa,Ka=e=>e instanceof Ma,Ya=e=>e instanceof Ba,ec=e=>e instanceof ba,tc=e=>e instanceof ja;const sc=class extends Go{constructor(e){super(e),this.element=new ba,this.element.classes.push("servers"),this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Server"],this.canSupportSpecificationExtensions=!1,this.fieldPatternPredicate=ya(/^[A-Za-z0-9_-]+$/)}ObjectElement(e){Go.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","server")})}};const nc=class extends Wo{constructor(e){super(e),this.element=new Ma,this.specPath=ne(["document","objects","Server"]),this.canSupportSpecificationExtensions=!0}};const rc=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("server-url")}};const ic=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","ServerBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","serverBindings")}};class oc extends Ie{static primaryClass="server-variables";constructor(e,t,s){super(e,t,s),this.classes.push(oc.primaryClass)}}const ac=oc;const cc=class extends Zo{constructor(e){super(e),this.element=new ac,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerVariable"]}};class lc extends ke{static primaryClass="server-security";constructor(e,t,s){super(e,t,s),this.classes.push(lc.primaryClass)}}const uc=lc;const dc=class extends Ho{constructor(e){super(e),this.element=new uc}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const hc=class extends Wo{constructor(e){super(e),this.element=new ja,this.specPath=ne(["document","objects","ServerVariable"]),this.canSupportSpecificationExtensions=!0}};const pc=class extends Wo{constructor(e){super(e),this.element=new Ba,this.specPath=ne(["document","objects","ServerBindings"]),this.canSupportSpecificationExtensions=!0}};const mc=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="securityScheme"}get type(){return this.get("type")}set type(e){this.set("type",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get in(){return this.get("in")}set in(e){this.set("in",e)}get scheme(){return this.get("scheme")}set scheme(e){this.set("scheme",e)}get bearerFormat(){return this.get("bearerFormat")}set bearerFormat(e){this.set("bearerFormat",e)}get flows(){return this.get("flows")}set flows(e){this.set("flows",e)}get openIdConnectUrl(){return this.get("openIdConnectUrl")}set openIdConnectUrl(e){this.set("openIdConnectUrl",e)}};const _c=class extends Wo{constructor(e){super(e),this.element=new mc,this.specPath=ne(["document","objects","SecurityScheme"]),this.canSupportSpecificationExtensions=!0}};const gc=class extends Zo{constructor(e){super(e),this.element=new Fa,this.specPath=ne(["value"])}};const fc=class extends Wo{constructor(e){super(e),this.element=new Ca,this.specPath=ne(["document","objects","Reference"]),this.canSupportSpecificationExtensions=!1}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&this.element.classes.push("reference-element")}};const yc=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};const bc=class extends Wo{constructor(e){super(e),this.specPath=ne(["document","objects","Schema"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){this.element=new Pa,Wo.prototype.ObjectElement.call(this,e)}BooleanElement(e){super.enter(e),this.element.classes.push("boolean-json-schema")}},xc=Io.visitors.JSONSchemaOrJSONReferenceVisitor;const vc=class extends xc{enter(e){xc.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}},wc=Io.visitors.document.objects.JSONSchema.fixedFields.allOf;const Ec=class extends wc{ArrayElement(e){wc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Sc=Io.visitors.document.objects.JSONSchema.fixedFields.anyOf;const Oc=class extends Sc{ArrayElement(e){Sc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Ac=Io.visitors.document.objects.JSONSchema.fixedFields.oneOf;const Cc=class extends Ac{ArrayElement(e){Ac.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Ic=Io.visitors.document.objects.JSONSchema.fixedFields.definitions;const Tc=class extends Ic{ObjectElement(e){Ic.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Pc=Io.visitors.document.objects.JSONSchema.fixedFields.dependencies;const Fc=class extends Pc{ObjectElement(e){Pc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Mc=Io.visitors.document.objects.JSONSchema.fixedFields.items.$visitor;const Bc=class extends Mc{ObjectElement(e){Mc.prototype.ObjectElement.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}ArrayElement(e){Mc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},jc=Io.visitors.document.objects.JSONSchema.fixedFields.patternProperties;const kc=class extends jc{ObjectElement(e){jc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Nc=Io.visitors.document.objects.JSONSchema.fixedFields.properties;const Rc=class extends Nc{ObjectElement(e){Nc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},qc=U(e=>e===Io.visitors.JSONSchemaOrJSONReferenceVisitor?vc:e,Io.visitors.document.objects.JSONSchema.fixedFields);const $c=class extends Go{constructor(e){super(e),this.element=new Aa,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Parameter"],this.canSupportSpecificationExtensions=!1,this.fieldPatternPredicate=e=>"string"==typeof e&&/^[A-Za-z0-9_-]+$/.test(e)}ObjectElement(e){Go.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","parameter")})}};const Dc=class extends Wo{constructor(e){super(e),this.element=new Oa,this.specPath=ne(["document","objects","Parameter"]),this.canSupportSpecificationExtensions=!0}};const Vc=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const Lc=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="externalDocumentation"}get description(){return this.get("description")}set description(e){this.set("description",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}};const Uc=class extends Wo{constructor(e){super(e),this.element=new Lc,this.specPath=ne(["document","objects","ExternalDocumentation"]),this.canSupportSpecificationExtensions=!0}};const Hc=class extends Wo{constructor(e){super(e),this.element=new Ea,this.specPath=ne(["document","objects","Components"]),this.canSupportSpecificationExtensions=!0}};class Wc extends Ie{static primaryClass="components-schemas";constructor(e,t,s){super(e,t,s),this.classes.push(Wc.primaryClass)}}const Gc=Wc;const Zc=class extends Zo{constructor(e){super(e),this.element=new Gc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Schema"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}};class Jc extends Ie{static primaryClass="components-servers";constructor(e,t,s){super(e,t,s),this.classes.push(Jc.primaryClass)}}const zc=Jc;const Xc=class extends Zo{constructor(e){super(e),this.element=new zc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Server"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","server")})}};class Qc extends Ie{static primaryClass="components-server-variables";constructor(e,t,s){super(e,t,s),this.classes.push(Qc.primaryClass)}}const Kc=Qc;const Yc=class extends Zo{constructor(e){super(e),this.element=new Kc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerVariable"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","serverVariable")})}};class el extends Ie{static primaryClass="components-channels";constructor(e,t,s){super(e,t,s),this.classes.push(el.primaryClass)}}const tl=el;const sl=class extends Zo{constructor(e){super(e),this.element=new tl,this.specPath=ne(["document","objects","ChannelItem"])}};class nl extends Ie{static primaryClass="components-messages";constructor(e,t,s){super(e,t,s),this.classes.push(nl.primaryClass)}}const rl=nl;const il=class extends Zo{constructor(e){super(e),this.element=new rl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Message"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","message")})}};class ol extends Ie{static primaryClass="components-security-schemes";constructor(e,t,s){super(e,t,s),this.classes.push(ol.primaryClass)}}const al=ol;const cl=class extends Zo{constructor(e){super(e),this.element=new al,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","SecurityScheme"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","securityScheme")})}};class ll extends Ie{static primaryClass="components-parameters";constructor(e,t,s){super(e,t,s),this.classes.push(ll.primaryClass)}}const ul=ll;const dl=class extends Zo{constructor(e){super(e),this.element=new ul,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Parameter"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","parameter")})}};class hl extends Ie{static primaryClass="components-correlation-ids";constructor(e,t,s){super(e,t,s),this.classes.push(hl.primaryClass)}}const pl=hl;const ml=class extends Zo{constructor(e){super(e),this.element=new pl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","CorrelationID"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","correlationID")})}};class _l extends Ie{static primaryClass="components-operation-traits";constructor(e,t,s){super(e,t,s),this.classes.push(_l.primaryClass)}}const gl=_l;const fl=class extends Zo{constructor(e){super(e),this.element=new gl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","OperationTrait"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","operationTrait")})}};class yl extends Ie{static primaryClass="components-message-traits";constructor(e,t,s){super(e,t,s),this.classes.push(yl.primaryClass)}}const bl=yl;const xl=class extends Zo{constructor(e){super(e),this.element=new bl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","MessageTrait"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","messageTrait")})}};class vl extends Ie{static primaryClass="components-server-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(vl.primaryClass)}}const wl=vl;const El=class extends Zo{constructor(e){super(e),this.element=new wl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","serverBindings")})}};class Sl extends Ie{static primaryClass="components-channel-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Sl.primaryClass)}}const Ol=Sl;const Al=class extends Zo{constructor(e){super(e),this.element=new Ol,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ChannelBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","channelBindings")})}};class Cl extends Ie{static primaryClass="components-operation-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Cl.primaryClass)}}const Il=Cl;const Tl=class extends Zo{constructor(e){super(e),this.element=new Il,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","OperationBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","operationBindings")})}};class Pl extends Ie{static primaryClass="components-message-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Pl.primaryClass)}}const Fl=Pl;const Ml=class extends Zo{constructor(e){super(e),this.element=new Fl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","MessageBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","messageBindings")})}};const Bl=class extends Wo{constructor(e){super(e),this.element=new Sa,this.specPath=ne(["document","objects","Operation"])}};class jl extends ke{static primaryClass="operation-security";constructor(e,t,s){super(e,t,s),this.classes.push(jl.primaryClass)}}const kl=jl;const Nl=class extends Ho{constructor(e){super(e),this.element=new kl}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Rl=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","OperationBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","operationBindings")}};class ql extends ke{static primaryClass="operation-traits";constructor(e,t,s){super(e,t,s),this.classes.push(ql.primaryClass)}}const $l=ql;const Dl=class extends Ho{constructor(e){super(e),this.element=new $l}ArrayElement(e){const t=e.node;t.forEach(e=>{let t;qo(e)?(t=this.toRefractedElement(["document","objects","Reference"],e),t.meta.set("referenced-element","operationTrait")):t=this.toRefractedElement(["document","objects","OperationTrait"],e),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};class Vl extends Ie{static primaryClass="operation-message-map";constructor(e,t,s){super(e,t,s),this.classes.push(Vl.primaryClass)}get oneOf(){return this.get("oneOf")}set oneOf(e){this.set("oneOf",e)}}const Ll=Vl;class Ul extends ke{static primaryClass="operation-message";constructor(e,t,s){super(e,t,s),this.classes.push(Ul.primaryClass)}}const Hl=Ul;const Wl=class extends Ho{ObjectElement(e){const t=e.node;if(qo(t))this.element=this.toRefractedElement(["document","objects","Reference"],t),this.element.meta.set("referenced-element","message");else if(tt(t.get("oneOf"))){this.element=new Ll;const e=new Hl;t.get("oneOf").forEach(t=>{let s;const n=t;qo(n)?(s=this.toRefractedElement(["document","objects","Reference"],n),s.meta.set("referenced-element","message")):s=this.toRefractedElement(["document","objects","Message"],n),e.push(s)}),this.element.oneOf=e}else this.element=this.toRefractedElement(["document","objects","Message"],t);this.copyMetaAndAttributes(t,this.element),e.stop()}};const Gl=class extends ke{constructor(e,t,s){super(e,t,s),this.element="tags"}};const Zl=class extends Ho{constructor(e){super(e),this.element=new Gl}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","Tag"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Jl=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="tag"}get name(){return this.get("name")}set name(e){this.set("name",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}};const zl=class extends Wo{constructor(e){super(e),this.element=new Jl,this.specPath=ne(["document","objects","Tag"]),this.canSupportSpecificationExtensions=!0}};const Xl=class extends Zo{constructor(e){super(e),this.element=new wa,this.specPath=ne(["document","objects","ChannelItem"])}};const Ql=class extends Wo{constructor(e){super(e),this.element=new xa,this.specPath=ne(["document","objects","ChannelBindings"]),this.canSupportSpecificationExtensions=!0}};const Kl=class extends Wo{constructor(e){super(e),this.element=new va,this.specPath=ne(["document","objects","ChannelItem"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&(this.element.classes.push("reference-element"),this.element.meta.set("referenced-element","channelItem"))}};const Yl=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};class eu extends ke{static primaryClass="channel-item-server-names-list";constructor(e,t,s){super(e,t,s),this.classes.push(eu.primaryClass)}}const tu=eu;const su=class extends Ho{constructor(e){super(e),this.element=new tu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=_t(e);Qe(t)&&t.classes.push("server-name"),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const nu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","ChannelBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","channelBindings")}};const ru=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const iu=class extends Wo{constructor(e){super(e),this.element=new ru,this.specPath=ne(["document","objects","MessageBindings"]),this.canSupportSpecificationExtensions=!0}};const ou=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageExample"}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get payload(){return this.get("payload")}set payload(e){this.set("payload",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}};const au=class extends Wo{constructor(e){super(e),this.element=new ou,this.specPath=ne(["document","objects","MessageExample"]),this.canSupportSpecificationExtensions=!0}};const cu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageTrait"}get messageId(){return this.get("messageId")}set messageId(e){this.set("messageId",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get correlationId(){return this.get("correlationId")}set correlationId(e){this.set("correlationId",e)}get schemaFormat(){return this.get("schemaFormat")}set schemaFormat(e){this.set("schemaFormat",e)}get contentType(){return this.get("contentType")}set contentType(e){this.set("contentType",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const lu=class extends Wo{constructor(e){super(e),this.element=new cu,this.specPath=ne(["document","objects","MessageTrait"]),this.canSupportSpecificationExtensions=!0}};const uu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const du=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","CorrelationID"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","correlationID")}};const hu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","MessageBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","messageBindings")}};class pu extends ke{static primaryClass="message-trait-examples";constructor(e,t,s){super(e,t,s),this.classes.push(pu.primaryClass)}}const mu=pu;const _u=class extends Ho{constructor(e){super(e),this.element=new mu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","MessageExample"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const gu=n(function(e){return c(-1,e)});const fu=class extends ze{};const yu=class extends Array{unknownMediaType="application/octet-stream";filterByFormat(){throw new fu("filterByFormat method in MediaTypes class is not yet implemented.")}findBy(){throw new fu("findBy method in MediaTypes class is not yet implemented.")}latest(){throw new fu("latest method in MediaTypes class is not yet implemented.")}};class bu extends yu{filterByFormat(e="generic"){const t="generic"===e?"asyncapi;version":e;return this.filter(e=>e.includes(t))}findBy(e="2.6.0",t="generic"){const s="generic"===t?`vnd.aai.asyncapi;version=${e}`:`vnd.aai.asyncapi+${t};version=${e}`;return this.find(e=>e.includes(s))||this.unknownMediaType}latest(e="generic"){return gu(this.filterByFormat(e))}}const xu=new bu("application/vnd.aai.asyncapi;version=2.0.0","application/vnd.aai.asyncapi+json;version=2.0.0","application/vnd.aai.asyncapi+yaml;version=2.0.0","application/vnd.aai.asyncapi;version=2.1.0","application/vnd.aai.asyncapi+json;version=2.1.0","application/vnd.aai.asyncapi+yaml;version=2.1.0","application/vnd.aai.asyncapi;version=2.2.0","application/vnd.aai.asyncapi+json;version=2.2.0","application/vnd.aai.asyncapi+yaml;version=2.2.0","application/vnd.aai.asyncapi;version=2.3.0","application/vnd.aai.asyncapi+json;version=2.3.0","application/vnd.aai.asyncapi+yaml;version=2.3.0","application/vnd.aai.asyncapi;version=2.4.0","application/vnd.aai.asyncapi+json;version=2.4.0","application/vnd.aai.asyncapi+yaml;version=2.4.0","application/vnd.aai.asyncapi;version=2.5.0","application/vnd.aai.asyncapi+json;version=2.5.0","application/vnd.aai.asyncapi+yaml;version=2.5.0","application/vnd.aai.asyncapi;version=2.6.0","application/vnd.aai.asyncapi+json;version=2.6.0","application/vnd.aai.asyncapi+yaml;version=2.6.0");const vu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="message"}get messageId(){return this.get("messageId")}set messageId(e){this.set("messageId",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get payload(){return this.get("payload")}set payload(e){this.set("payload",e)}get correlationId(){return this.get("correlationId")}set correlationId(e){this.set("correlationId",e)}get schemaFormat(){return this.get("schemaFormat")}set schemaFormat(e){this.set("schemaFormat",e)}get contentType(){return this.get("contentType")}set contentType(e){this.set("contentType",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}get traits(){return this.get("traits")}set traits(e){this.set("traits",e)}};const wu=class extends Wo{constructor(e){super(e),this.element=new vu,this.specPath=ne(["document","objects","Message"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e);const t=e.node,s=this.element.get("payload"),n=o(xu.latest(),Ir(t.get("schemaFormat")));if(xu.includes(n)&&qo(s)){const e=this.toRefractedElement(["document","objects","Reference"],s);e.meta.set("referenced-element","schema"),this.element.payload=e}else xu.includes(n)&&st(this.element.payload)&&(this.element.payload=this.toRefractedElement(["document","objects","Schema"],s))}};const Eu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const Su=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","CorrelationID"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","correlationID")}};const Ou=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","MessageBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","messageBindings")}};class Au extends ke{static primaryClass="message-examples";constructor(e,t,s){super(e,t,s),this.classes.push(Au.primaryClass)}}const Cu=Au;const Iu=class extends Ho{constructor(e){super(e),this.element=new Cu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","MessageExample"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};class Tu extends ke{static primaryClass="message-traits";constructor(e,t,s){super(e,t,s),this.classes.push(Tu.primaryClass)}}const Pu=Tu;const Fu=class extends Ho{constructor(e){super(e),this.element=new Pu}ArrayElement(e){const t=e.node;t.forEach(e=>{let t;qo(e)?(t=this.toRefractedElement(["document","objects","Reference"],e),t.meta.set("referenced-element","messageTrait")):t=this.toRefractedElement(["document","objects","MessageTrait"],e),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Mu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operationBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const Bu=class extends Wo{constructor(e){super(e),this.element=new Mu,this.specPath=ne(["document","objects","OperationBindings"]),this.canSupportSpecificationExtensions=!0}};const ju=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operationTrait"}get operationId(){return this.get("operationId")}set operationId(e){this.set("operationId",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const ku=class extends Wo{constructor(e){super(e),this.element=new ju,this.specPath=ne(["document","objects","OperationTrait"]),this.canSupportSpecificationExtensions=!0}};class Nu extends ke{static primaryClass="operation-trait-security";constructor(e,t,s){super(e,t,s),this.classes.push(Nu.primaryClass)}}const Ru=Nu;const qu=class extends Ho{constructor(e){super(e),this.element=new Ru}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const $u=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","OperationBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","operationBindings")}};const Du=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpChannelBinding",this.classes.push("channel-binding")}get is(){return this.get("is")}set is(e){this.set("is",e)}get exchange(){return this.get("exchange")}set exchange(e){this.set("exchange",e)}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Vu=class extends Wo{constructor(e){super(e),this.element=new Du,this.specPath=ne(["document","objects","bindings","amqp","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Lu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpMessageBinding",this.classes.push("message-binding")}get contentEncoding(){return this.get("contentEncoding")}set contentEncoding(e){this.set("contentEncoding",e)}get messageType(){return this.get("messageType")}set messageType(e){this.set("messageType",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Uu=class extends Wo{constructor(e){super(e),this.element=new Lu,this.specPath=ne(["document","objects","bindings","amqp","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Hu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpOperationBinding",this.classes.push("operation-binding")}get expiration(){return this.get("expiration")}set expiration(e){this.set("expiration",e)}get userId(){return this.get("userId")}set userId(e){this.set("userId",e)}get cc(){return this.get("cc")}set cc(e){this.set("cc",e)}get priority(){return this.get("priority")}set priority(e){this.set("priority",e)}get deliveryMode(){return this.get("deliveryMode")}set deliveryMode(e){this.set("deliveryMode",e)}get mandatory(){return this.get("mandatory")}set mandatory(e){this.set("mandatory",e)}get bcc(){return this.get("bcc")}set bcc(e){this.set("bcc",e)}get replyTo(){return this.get("replyTo")}set replyTo(e){this.set("replyTo",e)}get timestamp(){return this.get("timestamp")}set timestamp(e){this.set("timestamp",e)}get ack(){return this.get("ack")}set ack(e){this.set("ack",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Wu=class extends Wo{constructor(e){super(e),this.element=new Hu,this.specPath=ne(["document","objects","bindings","amqp","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Gu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpServerBinding",this.classes.push("server-binding")}};const Zu=class extends Wo{constructor(e){super(e),this.element=new Gu,this.specPath=ne(["document","objects","bindings","amqp","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ju=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1ChannelBinding",this.classes.push("channel-binding")}};const zu=class extends Wo{constructor(e){super(e),this.element=new Ju,this.specPath=ne(["document","objects","bindings","amqp1","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Xu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1MessageBinding",this.classes.push("message-binding")}};const Qu=class extends Wo{constructor(e){super(e),this.element=new Xu,this.specPath=ne(["document","objects","bindings","amqp1","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Ku=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1OperationBinding",this.classes.push("operation-binding")}};const Yu=class extends Wo{constructor(e){super(e),this.element=new Ku,this.specPath=ne(["document","objects","bindings","amqp1","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const ed=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1ServerBinding",this.classes.push("server-binding")}};const td=class extends Wo{constructor(e){super(e),this.element=new ed,this.specPath=ne(["document","objects","bindings","amqp1","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const sd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqChannelBinding",this.classes.push("channel-binding")}get destination(){return this.get("destination")}set destination(e){this.set("destination",e)}get destinationType(){return this.get("destinationType")}set destinationType(e){this.set("destinationType",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const nd=class extends Wo{constructor(e){super(e),this.element=new sd,this.specPath=ne(["document","objects","bindings","anypointmq","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const rd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqMessageBinding",this.classes.push("message-binding")}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const id=class extends Wo{constructor(e){super(e),this.element=new rd,this.specPath=ne(["document","objects","bindings","anypointmq","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const od=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqOperationBinding",this.classes.push("operation-binding")}};const ad=class extends Wo{constructor(e){super(e),this.element=new od,this.specPath=ne(["document","objects","bindings","anypointmq","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const cd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqServerBinding",this.classes.push("server-binding")}};const ld=class extends Wo{constructor(e){super(e),this.element=new cd,this.specPath=ne(["document","objects","bindings","anypointmq","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const ud=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpChannelBinding",this.classes.push("channel-binding")}};const dd=class extends Wo{constructor(e){super(e),this.element=new ud,this.specPath=ne(["document","objects","bindings","http","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const hd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpMessageBinding",this.classes.push("message-binding")}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const pd=class extends Wo{constructor(e){super(e),this.element=new hd,this.specPath=ne(["document","objects","bindings","http","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const md=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpOperationBinding",this.classes.push("operation-binding")}get type(){return this.get("type")}set type(e){this.set("type",e)}get method(){return this.get("method")}set method(e){this.set("method",e)}get query(){return this.get("query")}set query(e){this.set("query",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const _d=class extends Wo{constructor(e){super(e),this.element=new md,this.specPath=ne(["document","objects","bindings","http","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const gd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpServerBinding",this.classes.push("server-binding")}};const fd=class extends Wo{constructor(e){super(e),this.element=new gd,this.specPath=ne(["document","objects","bindings","http","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const yd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubChannelBinding",this.classes.push("channel-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get labels(){return this.get("labels")}set labels(e){this.set("labels",e)}get messageRetentionDuration(){return this.get("messageRetentionDuration")}set messageRetentionDuration(e){this.set("messageRetentionDuration",e)}get messageStoragePolicy(){return this.get("messageStoragePolicy")}set messageStoragePolicy(e){this.set("messageStoragePolicy",e)}get schemaSettings(){return this.get("schemaSettings")}set schemaSettings(e){this.set("schemaSettings",e)}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}};const bd=class extends Wo{constructor(e){super(e),this.element=new yd,this.specPath=ne(["document","objects","bindings","googlepubsub","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const xd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubMessageBinding",this.classes.push("message-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get attributesField(){return this.get("attributes")}set attributesField(e){this.set("attributes",e)}get orderingKey(){return this.get("orderingKey")}set orderingKey(e){this.set("orderingKey",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}};const vd=class extends Wo{constructor(e){super(e),this.element=new xd,this.specPath=ne(["document","objects","bindings","googlepubusb","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const wd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubOperationBinding",this.classes.push("operation-binding")}};const Ed=class extends Wo{constructor(e){super(e),this.element=new wd,this.specPath=ne(["document","objects","bindings","googlepubsub","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Sd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubServerBinding",this.classes.push("server-binding")}};const Od=class extends Wo{constructor(e){super(e),this.element=new Sd,this.specPath=ne(["document","objects","bindings","googlepubsub","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ad=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqChannelBinding",this.classes.push("channel-binding")}get destinationType(){return this.get("destinationType")}set destinationType(e){this.set("destinationType",e)}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}get maxMsgLength(){return this.get("maxMsgLength")}set maxMsgLength(e){this.set("maxMsgLength",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Cd=class extends Wo{constructor(e){super(e),this.element=new Ad,this.specPath=ne(["document","objects","bindings","ibmmq","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Id=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqMessageBinding",this.classes.push("message-binding")}get type(){return this.get("type")}set type(e){this.set("type",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get expiry(){return this.get("expiry")}set expiry(e){this.set("expiry",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Td=class extends Wo{constructor(e){super(e),this.element=new Id,this.specPath=ne(["document","objects","bindings","ibmmq","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Pd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqOperationBinding",this.classes.push("operation-binding")}};const Fd=class extends Wo{constructor(e){super(e),this.element=new Pd,this.specPath=ne(["document","objects","bindings","ibmmq","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Md=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqServerBinding",this.classes.push("server-binding")}get groupId(){return this.get("groupId")}set groupId(e){this.set("groupId",e)}get ccdtQueueManagerName(){return this.get("ccdtQueueManagerName")}set ccdtQueueManagerName(e){this.set("ccdtQueueManagerName",e)}get cipherSpec(){return this.get("cipherSpec")}set cipherSpec(e){this.set("cipherSpec",e)}get multiEndpointServer(){return this.get("multiEndpointServer")}set multiEndpointServer(e){this.set("multiEndpointServer",e)}get heartBeatInterval(){return this.get("heartBeatInterval")}set heartBeatInterval(e){this.set("heartBeatInterval",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Bd=class extends Wo{constructor(e){super(e),this.element=new Md,this.specPath=ne(["document","objects","bindings","ibmmq","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const jd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsChannelBinding",this.classes.push("channel-binding")}};const kd=class extends Wo{constructor(e){super(e),this.element=new jd,this.specPath=ne(["document","objects","bindings","jms","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Nd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsMessageBinding",this.classes.push("message-binding")}};const Rd=class extends Wo{constructor(e){super(e),this.element=new Nd,this.specPath=ne(["document","objects","bindings","jms","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const qd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsOperationBinding",this.classes.push("operation-binding")}};const $d=class extends Wo{constructor(e){super(e),this.element=new qd,this.specPath=ne(["document","objects","bindings","jms","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Dd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsServerBinding",this.classes.push("server-binding")}};const Vd=class extends Wo{constructor(e){super(e),this.element=new Dd,this.specPath=ne(["document","objects","bindings","jms","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ld=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaChannelBinding",this.classes.push("channel-binding")}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}get partitions(){return this.get("partitions")}set partitions(e){this.set("partitions",e)}get replicas(){return this.get("replicas")}set replicas(e){this.set("replicas",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Ud=class extends Wo{constructor(e){super(e),this.element=new Ld,this.specPath=ne(["document","objects","bindings","kafka","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Hd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaMessageBinding",this.classes.push("message-binding")}get key(){return this.get("key")}set key(e){this.set("key",e)}get schemaIdLocation(){return this.get("schemaIdLocation")}set schemaIdLocation(e){this.set("schemaIdLocation",e)}get schemaIdPayloadEncoding(){return this.get("schemaIdPayloadEncoding")}set schemaIdPayloadEncoding(e){this.set("schemaIdPayloadEncoding",e)}get schemaLookupStrategy(){return this.get("schemaLookupStrategy")}set schemaLookupStrategy(e){this.set("schemaLookupStrategy",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Wd=class extends Wo{constructor(e){super(e),this.element=new Hd,this.specPath=ne(["document","objects","bindings","kafka","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Gd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaOperationBinding",this.classes.push("operation-binding")}get groupId(){return this.get("groupId")}set groupId(e){this.set("groupId",e)}get clientId(){return this.get("clientId")}set clientId(e){this.set("clientId",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Zd=class extends Wo{constructor(e){super(e),this.element=new Gd,this.specPath=ne(["document","objects","bindings","kafka","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Jd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaServerBinding",this.classes.push("server-binding")}get schemaRegistryUrl(){return this.get("schemaRegistryUrl")}set schemaRegistryUrl(e){this.set("schemaRegistryUrl",e)}get schemaRegistryVendor(){return this.get("schemaRegistryVendor")}set schemaRegistryVendor(e){this.set("schemaRegistryVendor",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const zd=class extends Wo{constructor(e){super(e),this.element=new Jd,this.specPath=ne(["document","objects","bindings","kafka","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Xd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureChannelBinding",this.classes.push("channel-binding")}};const Qd=class extends Wo{constructor(e){super(e),this.element=new Xd,this.specPath=ne(["document","objects","bindings","mercure","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Kd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureMessageBinding",this.classes.push("message-binding")}};const Yd=class extends Wo{constructor(e){super(e),this.element=new Kd,this.specPath=ne(["document","objects","bindings","mercure","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const eh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureOperationBinding",this.classes.push("operation-binding")}};const th=class extends Wo{constructor(e){super(e),this.element=new eh,this.specPath=ne(["document","objects","bindings","mercure","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const sh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureServerBinding",this.classes.push("server-binding")}};const nh=class extends Wo{constructor(e){super(e),this.element=new sh,this.specPath=ne(["document","objects","bindings","mercure","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const rh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttChannelBinding",this.classes.push("channel-binding")}};const ih=class extends Wo{constructor(e){super(e),this.element=new rh,this.specPath=ne(["document","objects","bindings","mqtt","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const oh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttMessageBinding",this.classes.push("message-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const ah=class extends Wo{constructor(e){super(e),this.element=new oh,this.specPath=ne(["document","objects","bindings","mqtt","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const ch=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttOperationBinding",this.classes.push("operation-binding")}get qos(){return this.get("qos")}set qos(e){this.set("qos",e)}get retain(){return this.get("retain")}set retain(e){this.set("retain",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const lh=class extends Wo{constructor(e){super(e),this.element=new ch,this.specPath=ne(["document","objects","bindings","mqtt","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const uh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttServerBinding",this.classes.push("server-binding")}get clientId(){return this.get("clientId")}set clientId(e){this.set("clientId",e)}get cleanSession(){return this.get("cleanSession")}set cleanSession(e){this.set("cleanSession",e)}get lastWill(){return this.get("lastWill")}set lastWill(e){this.set("lastWill",e)}get keepAlive(){return this.get("keepAlive")}set keepAlive(e){this.set("keepAlive",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const dh=class extends Wo{constructor(e){super(e),this.element=new uh,this.specPath=ne(["document","objects","bindings","mqtt","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const hh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5ChannelBinding",this.classes.push("channel-binding")}};const ph=class extends Wo{constructor(e){super(e),this.element=new hh,this.specPath=ne(["document","objects","bindings","mqtt5","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const mh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5MessageBinding",this.classes.push("message-binding")}};const _h=class extends Wo{constructor(e){super(e),this.element=new mh,this.specPath=ne(["document","objects","bindings","mqtt5","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const gh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5OperationBinding",this.classes.push("operation-binding")}};const fh=class extends Wo{constructor(e){super(e),this.element=new gh,this.specPath=ne(["document","objects","bindings","mqtt5","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const yh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5ServerBinding",this.classes.push("server-binding")}};const bh=class extends Wo{constructor(e){super(e),this.element=new yh,this.specPath=ne(["document","objects","bindings","mqtt5","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const xh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsChannelBinding",this.classes.push("channel-binding")}};const vh=class extends Wo{constructor(e){super(e),this.element=new xh,this.specPath=ne(["document","objects","bindings","nats","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const wh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsMessageBinding",this.classes.push("message-binding")}};const Eh=class extends Wo{constructor(e){super(e),this.element=new wh,this.specPath=ne(["document","objects","bindings","nats","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Sh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsOperationBinding",this.classes.push("operation-binding")}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Oh=class extends Wo{constructor(e){super(e),this.element=new Sh,this.specPath=ne(["document","objects","bindings","nats","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Ah=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsServerBinding",this.classes.push("server-binding")}};const Ch=class extends Wo{constructor(e){super(e),this.element=new Ah,this.specPath=ne(["document","objects","bindings","nats","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ih=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarChannelBinding",this.classes.push("channel-binding")}get namespace(){return this.get("namespace")}set namespace(e){this.set("namespace",e)}get persistence(){return this.get("persistence")}set persistence(e){this.set("persistence",e)}get compaction(){return this.get("compaction")}set compaction(e){this.set("compaction",e)}get"geo-replication"(){return this.get("geo-replication")}set"geo-replication"(e){this.set("geo-replication",e)}get retention(){return this.get("retention")}set retention(e){this.set("retention",e)}get ttl(){return this.get("ttl")}set ttl(e){this.set("ttl",e)}get deduplication(){return this.get("deduplication")}set deduplication(e){this.set("deduplication",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Th=class extends Wo{constructor(e){super(e),this.element=new Ih,this.specPath=ne(["document","objects","bindings","pulsar","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Ph=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarMessageBinding",this.classes.push("message-binding")}};const Fh=class extends Wo{constructor(e){super(e),this.element=new Ph,this.specPath=ne(["document","objects","bindings","pulsar","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Mh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarOperationBinding",this.classes.push("operation-binding")}};const Bh=class extends Wo{constructor(e){super(e),this.element=new Mh,this.specPath=ne(["document","objects","bindings","pulsar","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const jh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarServerBinding",this.classes.push("server-binding")}get tenant(){return this.get("tenant")}set tenant(e){this.set("tenant",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const kh=class extends Wo{constructor(e){super(e),this.element=new jh,this.specPath=ne(["document","objects","bindings","pulsar","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Nh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisChannelBinding",this.classes.push("channel-binding")}};const Rh=class extends Wo{constructor(e){super(e),this.element=new Nh,this.specPath=ne(["document","objects","bindings","redis","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const qh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisMessageBinding",this.classes.push("message-binding")}};const $h=class extends Wo{constructor(e){super(e),this.element=new qh,this.specPath=ne(["document","objects","bindings","redis","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Dh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisOperationBinding",this.classes.push("operation-binding")}};const Vh=class extends Wo{constructor(e){super(e),this.element=new Dh,this.specPath=ne(["document","objects","bindings","redis","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Lh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisServerBinding",this.classes.push("server-binding")}};const Uh=class extends Wo{constructor(e){super(e),this.element=new Lh,this.specPath=ne(["document","objects","bindings","redis","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Hh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsChannelBinding",this.classes.push("channel-binding")}};const Wh=class extends Wo{constructor(e){super(e),this.element=new Hh,this.specPath=ne(["document","objects","bindings","sns","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Gh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsMessageBinding",this.classes.push("message-binding")}};const Zh=class extends Wo{constructor(e){super(e),this.element=new Gh,this.specPath=ne(["document","objects","bindings","sns","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Jh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsOperationBinding",this.classes.push("operation-binding")}};const zh=class extends Wo{constructor(e){super(e),this.element=new Jh,this.specPath=ne(["document","objects","bindings","sns","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Xh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsServerBinding",this.classes.push("server-binding")}};const Qh=class extends Wo{constructor(e){super(e),this.element=new Xh,this.specPath=ne(["document","objects","bindings","sns","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Kh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceChannelBinding",this.classes.push("channel-binding")}};const Yh=class extends Wo{constructor(e){super(e),this.element=new Kh,this.specPath=ne(["document","objects","bindings","solace","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const ep=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceMessageBinding",this.classes.push("message-binding")}};const tp=class extends Wo{constructor(e){super(e),this.element=new ep,this.specPath=ne(["document","objects","bindings","solace","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const sp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceOperationBinding",this.classes.push("operation-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get destinations(){return this.get("destinations")}set destinations(e){this.set("destinations",e)}};const np=class extends Wo{constructor(e){super(e),this.element=new sp,this.specPath=ne(["document","objects","bindings","solace","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const rp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceServerBinding",this.classes.push("server-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get msgVpn(){return this.get("msgVpn")}set msgVpn(e){this.set("msgVpn",e)}};const ip=class extends Wo{constructor(e){super(e),this.element=new rp,this.specPath=ne(["document","objects","bindings","solace","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const op=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsChannelBinding",this.classes.push("channel-binding")}};const ap=class extends Wo{constructor(e){super(e),this.element=new op,this.specPath=ne(["document","objects","bindings","sqs","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const cp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsMessageBinding",this.classes.push("message-binding")}};const lp=class extends Wo{constructor(e){super(e),this.element=new cp,this.specPath=ne(["document","objects","bindings","sqs","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const up=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsOperationBinding",this.classes.push("operation-binding")}};const dp=class extends Wo{constructor(e){super(e),this.element=new up,this.specPath=ne(["document","objects","bindings","sqs","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const hp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsServerBinding",this.classes.push("server-binding")}};const pp=class extends Wo{constructor(e){super(e),this.element=new hp,this.specPath=ne(["document","objects","bindings","sqs","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const mp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompChannelBinding",this.classes.push("channel-binding")}};const _p=class extends Wo{constructor(e){super(e),this.element=new mp,this.specPath=ne(["document","objects","bindings","stomp","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const gp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompMessageBinding",this.classes.push("message-binding")}};const fp=class extends Wo{constructor(e){super(e),this.element=new gp,this.specPath=ne(["document","objects","bindings","stomp","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const yp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompOperationBinding",this.classes.push("operation-binding")}};const bp=class extends Wo{constructor(e){super(e),this.element=new yp,this.specPath=ne(["document","objects","bindings","stomp","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const xp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompServerBinding",this.classes.push("server-binding")}};const vp=class extends Wo{constructor(e){super(e),this.element=new xp,this.specPath=ne(["document","objects","bindings","stomp","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const wp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketChannelBinding",this.classes.push("channel-binding")}get method(){return this.get("method")}set method(e){this.set("method",e)}get query(){return this.get("query")}set query(e){this.set("query",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Ep=class extends Wo{constructor(e){super(e),this.element=new wp,this.specPath=ne(["document","objects","bindings","ws","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Sp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketMessageBinding",this.classes.push("message-binding")}};const Op=class extends Wo{constructor(e){super(e),this.element=new Sp,this.specPath=ne(["document","objects","bindings","ws","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Ap=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketOperationBinding",this.classes.push("operation-binding")}};const Cp=class extends Wo{constructor(e){super(e),this.element=new Ap,this.specPath=ne(["document","objects","bindings","ws","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Ip=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketServerBinding",this.classes.push("server-binding")}};const Tp=class extends Wo{constructor(e){super(e),this.element=new Ip,this.specPath=ne(["document","objects","bindings","ws","ServerBinding"]),this.canSupportSpecificationExtensions=!1}},Pp={element:"reference",$visitor:fc,fixedFields:{$ref:yc}},Fp={element:"schema",$visitor:bc,fixedFields:{...qc,allOf:Ec,anyOf:Oc,oneOf:Cc,items:{$visitor:Bc,alias:"itemsField"},properties:Rc,patternProperties:kc,dependencies:Fc,definitions:Tc,discriminator:{$ref:"#/visitors/value"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},deprecated:{$ref:"#/visitors/value"}}},Mp={visitors:{value:Po,document:{objects:{AsyncApi:{element:"asyncApi2",$visitor:zo,fixedFields:{asyncapi:{$ref:"#/visitors/document/objects/AsyncApiVersion"},id:{$visitor:Yo,alias:"idField"},info:{$ref:"#/visitors/document/objects/Info"},servers:{$ref:"#/visitors/document/objects/Servers"},defaultContentType:{$ref:"#/visitors/document/objects/DefaultContentType"},channels:{$ref:"#/visitors/document/objects/Channels"},components:{$ref:"#/visitors/document/objects/Components"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"}}},AsyncApiVersion:{element:"asyncApiVersion",$visitor:Qo},Identifier:{element:"identifier",$visitor:Yo},Info:{element:"info",$visitor:ta,fixedFields:{title:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},termsOfService:{$ref:"#/visitors/value"},version:sa,contact:{$ref:"#/visitors/document/objects/Contact"},license:{$ref:"#/visitors/document/objects/License"}}},Contact:{element:"contact",$visitor:ra,fixedFields:{name:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"},email:{$ref:"#/visitors/value"}}},License:{element:"license",$visitor:ua,fixedFields:{name:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"}}},Servers:{element:"servers",$visitor:sc},Server:{element:"server",$visitor:nc,fixedFields:{url:rc,protocol:{$ref:"#/visitors/value"},protocolVersion:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},variables:cc,security:dc,tags:{$ref:"#/visitors/document/objects/Tags"},bindings:ic}},ServerVariable:{element:"serverVariable",$visitor:hc,fixedFields:{enum:{$ref:"#/visitors/value"},default:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},examples:{$ref:"#/visitors/value"}}},DefaultContentType:{element:"defaultContentType",$visitor:ca},Channels:{element:"channels",$visitor:Xl},ChannelItem:{element:"channelItem",$visitor:Kl,fixedFields:{$ref:Yl,description:{$ref:"#/visitors/value"},servers:su,subscribe:{$ref:"#/visitors/document/objects/Operation"},publish:{$ref:"#/visitors/document/objects/Operation"},parameters:{$ref:"#/visitors/document/objects/Parameters"},bindings:nu}},Operation:{element:"operation",$visitor:Bl,fixedFields:{operationId:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},security:Nl,tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:Rl,traits:Dl,message:Wl}},OperationTrait:{element:"operationTrait",$visitor:ku,fixedFields:{operationId:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},security:qu,tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:$u}},Message:{element:"message",$visitor:wu,fixedFields:{messageId:{$ref:"#/visitors/value"},headers:Eu,payload:{$ref:"#/visitors/value"},correlationId:Su,schemaFormat:{$ref:"#/visitors/value"},contentType:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:Ou,examples:Iu,traits:Fu}},MessageTrait:{element:"messageTrait",$visitor:lu,fixedFields:{messageId:{$ref:"#/visitors/value"},headers:uu,correlationId:du,schemaFormat:{$ref:"#/visitors/value"},contentType:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:hu,examples:_u}},MessageExample:{element:"messageExample",$visitor:au,fixedFields:{headers:{$ref:"#/visitors/value"},payload:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"}}},Tags:{element:"tags",$visitor:Zl},Tag:{element:"tag",$visitor:zl,fixedFields:{name:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"}}},ExternalDocumentation:{element:"externalDocumentation",$visitor:Uc,fixedFields:{description:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"}}},Components:{element:"components",$visitor:Hc,fixedFields:{schemas:Zc,servers:Xc,serverVariables:Yc,channels:sl,messages:il,securitySchemes:cl,parameters:dl,correlationIds:ml,operationTraits:fl,messageTraits:xl,serverBindings:El,channelBindings:Al,operationBindings:Tl,messageBindings:Ml}},JSONReference:Pp,Reference:Pp,JSONSchema:Fp,Schema:Fp,LinkDescription:Io.visitors.document.objects.LinkDescription,SecurityScheme:{element:"securityScheme",$visitor:_c,fixedFields:{type:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},in:{$ref:"#/visitors/value"},scheme:{$ref:"#/visitors/value"},bearerFormat:{$ref:"#/visitors/value"},flows:{$ref:"#/visitors/document/objects/OAuthFlows"},openIdConnectUrl:{$ref:"#/visitors/value"}}},SecurityRequirement:{element:"securityRequirement",$visitor:gc},OAuthFlows:{element:"oAuthFlows",$visitor:ha,fixedFields:{implicit:{$ref:"#/visitors/document/objects/OAuthFlow"},password:{$ref:"#/visitors/document/objects/OAuthFlow"},clientCredentials:{$ref:"#/visitors/document/objects/OAuthFlow"},authorizationCode:{$ref:"#/visitors/document/objects/OAuthFlow"}}},OAuthFlow:{element:"oAuthFlow",$visitor:ma,fixedFields:{authorizationUrl:{$ref:"#/visitors/value"},tokenUrl:{$ref:"#/visitors/value"},refreshUrl:{$ref:"#/visitors/value"},scopes:fa}},ServerBindings:{element:"serverBindings",$visitor:pc,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/ServerBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/ServerBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/ServerBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/ServerBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/ServerBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/ServerBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/ServerBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/ServerBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/ServerBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/ServerBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/ServerBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/ServerBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/ServerBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/ServerBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/ServerBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/ServerBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/ServerBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/ServerBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/ServerBinding"}}},Parameters:{element:"parameters",$visitor:$c},Parameter:{element:"parameter",$visitor:Dc,fixedFields:{description:{$ref:"#/visitors/value"},schema:Vc,location:{$ref:"#/visitors/value"}}},ChannelBindings:{element:"channelBindings",$visitor:Ql,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/ChannelBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/ChannelBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/ChannelBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/ChannelBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/ChannelBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/ChannelBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/ChannelBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/ChannelBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/ChannelBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/ChannelBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/ChannelBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/ChannelBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/ChannelBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/ChannelBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/ChannelBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/ChannelBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/ChannelBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/ChannelBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/ChannelBinding"}}},OperationBindings:{element:"operationBindings",$visitor:Bu,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/OperationBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/OperationBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/OperationBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/OperationBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/OperationBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/OperationBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/OperationBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/OperationBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/OperationBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/OperationBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/OperationBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/OperationBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/OperationBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/OperationBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/OperationBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/OperationBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/OperationBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/OperationBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/OperationBinding"}}},MessageBindings:{element:"messageBindings",$visitor:iu,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/MessageBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/MessageBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/MessageBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/MessageBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/MessageBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/MessageBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/MessageBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/MessageBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/MessageBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/MessageBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/MessageBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/MessageBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/MessageBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/MessageBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/MessageBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/MessageBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/MessageBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/MessageBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/MessageBinding"}}},CorrelationID:{element:"correlationID",$visitor:oa,fixedFields:{description:{$ref:"#/visitors/value"},location:{$ref:"#/visitors/value"}}},bindings:{http:{ServerBinding:{element:"httpServerBinding",$visitor:fd},ChannelBinding:{element:"httpChannelBinding",$visitor:dd},OperationBinding:{element:"httpOperationBinding",$visitor:_d,fixedFields:{type:{$ref:"#/visitors/value"},method:{$ref:"#/visitors/value"},query:vc,bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"httpMessageBinding",$visitor:pd,fixedFields:{headers:vc,bindingVersion:{$ref:"#/visitors/value"}}}},ws:{ServerBinding:{element:"webSocketServerBinding",$visitor:Tp},ChannelBinding:{element:"webSocketChannelBinding",$visitor:Ep,fixedFields:{method:{$ref:"#/visitors/value"},query:vc,headers:vc,bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"webSocketOperationBinding",$visitor:Cp},MessageBinding:{element:"webSocketMessageBinding",$visitor:Op}},kafka:{ServerBinding:{element:"kafkaServerBinding",$visitor:zd,fixedFields:{schemaRegistryUrl:{$ref:"#/visitors/value"},schemaRegistryVendor:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"kafkaChannelBinding",$visitor:Ud,fixedFields:{topic:{$ref:"#/visitors/value"},partitions:{$ref:"#/visitors/value"},replicas:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"kafkaOperationBinding",$visitor:Zd,fixedFields:{groupId:vc,clientId:vc,bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"kafkaMessageBinding",$visitor:Wd,fixedFields:{key:vc,schemaIdLocation:{$ref:"#/visitors/value"},schemaIdPayloadEncoding:{$ref:"#/visitors/value"},schemaLookupStrategy:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}}},anypointmq:{ServerBinding:{element:"anypointmqServerBinding",$visitor:ld},ChannelBinding:{element:"anypointmqChannelBinding",$visitor:nd,fixedFields:{destination:{$ref:"#/visitors/value"},destinationType:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"anypointmqOperationBinding",$visitor:ad},MessageBinding:{element:"anypointmqMessageBinding",$visitor:id,fixedFields:{headers:vc,bindingVersion:{$ref:"#/visitors/value"}}}},amqp:{ServerBinding:{element:"amqpServerBinding",$visitor:Zu},ChannelBinding:{element:"amqpChannelBinding",$visitor:Vu,fixedFields:{is:{$ref:"#/visitors/value"},exchange:{$ref:"#/visitors/value"},queue:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"amqpOperationBinding",$visitor:Wu,fixedFields:{expiration:{$ref:"#/visitors/value"},userId:{$ref:"#/visitors/value"},cc:{$ref:"#/visitors/value"},priority:{$ref:"#/visitors/value"},deliveryMode:{$ref:"#/visitors/value"},mandatory:{$ref:"#/visitors/value"},bcc:{$ref:"#/visitors/value"},replyTo:{$ref:"#/visitors/value"},timestamp:{$ref:"#/visitors/value"},ack:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"amqpMessageBinding",$visitor:Uu,fixedFields:{contentEncoding:{$ref:"#/visitors/value"},messageType:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}}},amqp1:{ServerBinding:{element:"amqp1ServerBinding",$visitor:td},ChannelBinding:{element:"amqp1ChannelBinding",$visitor:zu},OperationBinding:{element:"amqp1OperationBinding",$visitor:Yu},MessageBinding:{element:"amqp1MessageBinding",$visitor:Qu}},mqtt:{ServerBinding:{element:"mqttServerBinding",$visitor:dh,fixedFields:{clientId:{$ref:"#/visitors/value"},cleanSession:{$ref:"#/visitors/value"},lastWill:{$ref:"#/visitors/value"},keepAlive:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"mqttChannelBinding",$visitor:ih},OperationBinding:{element:"mqttOperationBinding",$visitor:lh,fixedFields:{qos:{$ref:"#/visitors/value"},retain:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"mqttMessageBinding",$visitor:ah,fixedFields:{bindingVersion:{$ref:"#/visitors/value"}}}},mqtt5:{ServerBinding:{element:"mqtt5ServerBinding",$visitor:bh},ChannelBinding:{element:"mqtt5ChannelBinding",$visitor:ph},OperationBinding:{element:"mqtt5OperationBinding",$visitor:fh},MessageBinding:{element:"mqtt5MessageBinding",$visitor:_h}},nats:{ServerBinding:{element:"natsServerBinding",$visitor:Ch},ChannelBinding:{element:"natsChannelBinding",$visitor:vh},OperationBinding:{element:"natsOperationBinding",$visitor:Oh,fixedFields:{queue:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"natsMessageBinding",$visitor:Eh}},pulsar:{ServerBinding:{element:"pulsarServerBinding",$visitor:kh,fixedFields:{tenant:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"pulsarChannelBinding",$visitor:Th,fixedFields:{namespace:{$ref:"#/visitors/value"},persistence:{$ref:"#/visitors/value"},compaction:{$ref:"#/visitors/value"},"geo-replication":{$ref:"#/visitors/value"},retention:{$ref:"#/visitors/value"},ttl:{$ref:"#/visitors/value"},deduplication:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"pulsarOperationBinding",$visitor:Bh},MessageBinding:{element:"pulsarMessageBinding",$visitor:Fh}},jms:{ServerBinding:{element:"jmsServerBinding",$visitor:Vd},ChannelBinding:{element:"jmsChannelBinding",$visitor:kd},OperationBinding:{element:"jmsOperationBinding",$visitor:$d},MessageBinding:{element:"jmsMessageBinding",$visitor:Rd}},sns:{ServerBinding:{element:"snsServerBinding",$visitor:Qh},ChannelBinding:{element:"snsChannelBinding",$visitor:Wh},OperationBinding:{element:"snsOperationBinding",$visitor:zh},MessageBinding:{element:"snsMessageBinding",$visitor:Zh}},solace:{ServerBinding:{element:"solaceServerBinding",$visitor:ip,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},msgVpn:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"solaceChannelBinding",$visitor:Yh},OperationBinding:{element:"solaceOperationBinding",$visitor:np,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},destinations:{$ref:"#/visitors/value"}}},MessageBinding:{element:"solaceMessageBinding",$visitor:tp}},sqs:{ServerBinding:{element:"sqsServerBinding",$visitor:pp},ChannelBinding:{element:"sqsChannelBinding",$visitor:ap},OperationBinding:{element:"sqsOperationBinding",$visitor:dp},MessageBinding:{element:"sqsMessageBinding",$visitor:lp}},stomp:{ServerBinding:{element:"stompServerBinding",$visitor:vp},ChannelBinding:{element:"stompChannelBinding",$visitor:_p},OperationBinding:{element:"stompOperationBinding",$visitor:bp},MessageBinding:{element:"stompMessageBinding",$visitor:fp}},redis:{ServerBinding:{element:"redisServerBinding",$visitor:Uh},ChannelBinding:{element:"redisChannelBinding",$visitor:Rh},OperationBinding:{element:"redisOperationBinding",$visitor:Vh},MessageBinding:{element:"redisMessageBinding",$visitor:$h}},mercure:{ServerBinding:{element:"mercureServerBinding",$visitor:nh},ChannelBinding:{element:"mercureChannelBinding",$visitor:Qd},OperationBinding:{element:"mercureOperationBinding",$visitor:th},MessageBinding:{element:"mercureMessageBinding",$visitor:Yd}},googlepubsub:{ServerBinding:{element:"googlepubsubServerBinding",$visitor:Od},ChannelBinding:{element:"googlepubsubChannelBinding",$visitor:bd,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},labels:{$ref:"#/visitors/value"},messageRetentionDuration:{$ref:"#/visitors/value"},messageStoragePolicy:{$ref:"#/visitors/value"},schemaSettings:{$ref:"#/visitors/value"},topic:{$ref:"#/visitors/value"}}},OperationBinding:{element:"googlepubsubOperationBinding",$visitor:Ed},MessageBinding:{element:"googlepubsubMessageBinding",$visitor:vd,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},attributes:{$ref:"#/visitors/value",alias:"attributesField"},orderingKey:{$ref:"#/visitors/value"},schema:{$ref:"#/visitors/value"}}}},ibmmq:{ServerBinding:{element:"ibmmqServerBinding",$visitor:Bd,fixedFields:{groupId:{$ref:"#/visitors/value"},ccdtQueueManagerName:{$ref:"#/visitors/value"},cipherSpec:{$ref:"#/visitors/value"},multiEndpointServer:{$ref:"#/visitors/value"},heartBeatInterval:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"ibmmqChannelBinding",$visitor:Cd,fixedFields:{destinationType:{$ref:"#/visitors/value"},queue:{$ref:"#/visitors/value"},topic:{$ref:"#/visitors/value"},maxMsgLength:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"ibmmqMessageBinding",$visitor:Td,fixedFields:{type:{$ref:"#/visitors/value"},headers:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},expiry:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"ibmmqOperationBinding",$visitor:Fd}}}},extension:{$visitor:Mo}}}},Bp={namespace:e=>{const{base:t}=e;return t.register("asyncApi2",Bo),t.register("asyncApiVersion",Xo),t.register("channelBindings",xa),t.register("channelItem",va),t.register("channels",wa),t.register("components",Ea),t.register("contact",na),t.register("correlationID",ia),t.register("defaultContentType",aa),t.register("externalDocumentation",Lc),t.register("identifier",Ko),t.register("info",ea),t.register("license",la),t.register("message",vu),t.register("messageBindings",ru),t.register("messageExample",ou),t.register("messageTrait",cu),t.register("oAuthFlow",pa),t.register("oAuthFlows",da),t.register("operation",Sa),t.register("operationBindings",Mu),t.register("operationTrait",ju),t.register("parameter",Oa),t.register("parameters",Aa),t.register("reference",Ca),t.register("schema",Pa),t.register("securityRequirement",Fa),t.register("securityScheme",mc),t.register("server",Ma),t.register("serverBindings",Ba),t.register("servers",ba),t.register("serverVariable",ja),t.register("tag",Jl),t.register("tags",Gl),t.register("amqpChannelBinding",Du),t.register("amqpMessageBinding",Lu),t.register("amqpOperationBinding",Hu),t.register("amqpServerBinding",Gu),t.register("amqp1ChannelBinding",Ju),t.register("amqp1MessageBinding",Xu),t.register("amqp1OperationBinding",Ku),t.register("amqp1ServerBinding",ed),t.register("anypointmqChannelBinding",sd),t.register("anypointmqMessageBinding",rd),t.register("anypointmqOperationBinding",od),t.register("anypointmqServerBinding",cd),t.register("googlepubsubChannelBinding",yd),t.register("googlepubsubMessageBinding",xd),t.register("googlepubsubOperationBinding",wd),t.register("googlepubsubServerBinding",Sd),t.register("httpChannelBinding",ud),t.register("httpMessageBinding",hd),t.register("httpOperationBinding",md),t.register("httpServerBinding",gd),t.register("ibmmqChannelBinding",Ad),t.register("ibmmqMessageBinding",Id),t.register("ibmmqOperationBinding",Pd),t.register("ibmmqServerBinding",Md),t.register("jmsChannelBinding",jd),t.register("jmsMessageBinding",Nd),t.register("jmsOperationBinding",qd),t.register("jmsServerBinding",Dd),t.register("kafkaChannelBinding",Ld),t.register("kafkaMessageBinding",Hd),t.register("kafkaOperationBinding",Gd),t.register("kafkaServerBinding",Jd),t.register("mercureChannelBinding",Xd),t.register("mercureMessageBinding",Kd),t.register("mercureOperationBinding",eh),t.register("mercureServerBinding",sh),t.register("mqttChannelBinding",rh),t.register("mqttMessageBinding",oh),t.register("mqttOperationBinding",ch),t.register("mqttServerBinding",uh),t.register("mqtt5ChannelBinding",hh),t.register("mqtt5MessageBinding",mh),t.register("mqtt5OperationBinding",gh),t.register("mqtt5ServerBinding",yh),t.register("natsChannelBinding",xh),t.register("natsMessageBinding",wh),t.register("natsOperationBinding",Sh),t.register("natsServerBinding",Ah),t.register("pulsarChannelBinding",Ih),t.register("pulsarMessageBinding",Ph),t.register("pulsarOperationBinding",Mh),t.register("pulsarServerBinding",jh),t.register("redisChannelBinding",Nh),t.register("redisMessageBinding",qh),t.register("redisOperationBinding",Dh),t.register("redisServerBinding",Lh),t.register("snsChannelBinding",Hh),t.register("snsMessageBinding",Gh),t.register("snsOperationBinding",Jh),t.register("snsServerBinding",Xh),t.register("solaceChannelBinding",Kh),t.register("solaceMessageBinding",ep),t.register("solaceOperationBinding",sp),t.register("solaceServerBinding",rp),t.register("sqsChannelBinding",op),t.register("sqsMessageBinding",cp),t.register("sqsOperationBinding",up),t.register("sqsServerBinding",hp),t.register("stompChannelBinding",mp),t.register("stompMessageBinding",gp),t.register("stompOperationBinding",yp),t.register("stompServerBinding",xp),t.register("webSocketChannelBinding",wp),t.register("webSocketMessageBinding",Sp),t.register("webSocketOperationBinding",Ap),t.register("webSocketServerBinding",Ip),t}},jp=()=>{const s=new He,n={...e,...t,isStringElement:Qe};return s.use(Bp),{predicates:n,namespace:s}},kp=(e,{element:t="asyncApi2",plugins:s=[],specificationObj:n=Mp,consume:r=!1}={})=>{const i=xt(e),o=tn(n),a=o.elementMap[t];if(!a)throw new Error(`Unknown element type: "${t}"`);const c=new(zt(a,o))({specObj:o,consume:r});return Qn(i,c),xr(c.element,s,{toolboxCreator:jp})},Np=new bu(...xu.filterByFormat("generic"),...xu.filterByFormat("json")),Rp=/"asyncapi"\s*:\s*"(?<version_json>2\.(?:[1-9]\d*|0)\.(?:[1-9]\d*|0))"/,qp=async(e,t={})=>Rp.test(e)&&await qt(e,t),$p=async(e,t={})=>{const s=d({},"refractorOpts",t),n=p(["refractorOpts"],t),r=await $t(e,n),{result:i}=r;if(oe(i)){const e=((e,t={})=>kp(e,{...t,element:"asyncApi2"}))(i,{consume:!0,...s});e.classes.push("result"),r.replaceResult(e)}return r},Dp=(new He).use(Bp)})(),__webpack_exports__})());
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.apidomParserAdapterAsyncApiJson2=t():e.apidomParserAdapterAsyncApiJson2=t()}(self,()=>(()=>{var __webpack_modules__={841(){},167(){},451(){},333(__unused_webpack___webpack_module__,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,{TM:()=>Language,iX:()=>Parser});var __defProp=Object.defineProperty,__name=(e,t)=>__defProp(e,"name",{value:t,configurable:!0}),Edit=class{static{__name(this,"Edit")}startPosition;oldEndPosition;newEndPosition;startIndex;oldEndIndex;newEndIndex;constructor({startIndex:e,oldEndIndex:t,newEndIndex:s,startPosition:n,oldEndPosition:r,newEndPosition:i}){this.startIndex=e>>>0,this.oldEndIndex=t>>>0,this.newEndIndex=s>>>0,this.startPosition=n,this.oldEndPosition=r,this.newEndPosition=i}editPoint(e,t){let s=t;const n={...e};if(t>=this.oldEndIndex){s=this.newEndIndex+(t-this.oldEndIndex);const r=e.row;n.row=this.newEndPosition.row+(e.row-this.oldEndPosition.row),n.column=r===this.oldEndPosition.row?this.newEndPosition.column+(e.column-this.oldEndPosition.column):e.column}else t>this.startIndex&&(s=this.newEndIndex,n.row=this.newEndPosition.row,n.column=this.newEndPosition.column);return{point:n,index:s}}editRange(e){const t={startIndex:e.startIndex,startPosition:{...e.startPosition},endIndex:e.endIndex,endPosition:{...e.endPosition}};return e.endIndex>=this.oldEndIndex?e.endIndex!==Number.MAX_SAFE_INTEGER&&(t.endIndex=this.newEndIndex+(e.endIndex-this.oldEndIndex),t.endPosition={row:this.newEndPosition.row+(e.endPosition.row-this.oldEndPosition.row),column:e.endPosition.row===this.oldEndPosition.row?this.newEndPosition.column+(e.endPosition.column-this.oldEndPosition.column):e.endPosition.column},t.endIndex<this.newEndIndex&&(t.endIndex=Number.MAX_SAFE_INTEGER,t.endPosition={row:Number.MAX_SAFE_INTEGER,column:Number.MAX_SAFE_INTEGER})):e.endIndex>this.startIndex&&(t.endIndex=this.startIndex,t.endPosition={...this.startPosition}),e.startIndex>=this.oldEndIndex?(t.startIndex=this.newEndIndex+(e.startIndex-this.oldEndIndex),t.startPosition={row:this.newEndPosition.row+(e.startPosition.row-this.oldEndPosition.row),column:e.startPosition.row===this.oldEndPosition.row?this.newEndPosition.column+(e.startPosition.column-this.oldEndPosition.column):e.startPosition.column},t.startIndex<this.newEndIndex&&(t.startIndex=Number.MAX_SAFE_INTEGER,t.startPosition={row:Number.MAX_SAFE_INTEGER,column:Number.MAX_SAFE_INTEGER})):e.startIndex>this.startIndex&&(t.startIndex=this.startIndex,t.startPosition={...this.startPosition}),t}},SIZE_OF_SHORT=2,SIZE_OF_INT=4,SIZE_OF_CURSOR=4*SIZE_OF_INT,SIZE_OF_NODE=5*SIZE_OF_INT,SIZE_OF_POINT=2*SIZE_OF_INT,SIZE_OF_RANGE=2*SIZE_OF_INT+2*SIZE_OF_POINT,ZERO_POINT={row:0,column:0},INTERNAL=Symbol("INTERNAL"),C;function assertInternal(e){if(e!==INTERNAL)throw new Error("Illegal constructor")}function isPoint(e){return!!e&&"number"==typeof e.row&&"number"==typeof e.column}function setModule(e){C=e}__name(assertInternal,"assertInternal"),__name(isPoint,"isPoint"),__name(setModule,"setModule");var LookaheadIterator=class{static{__name(this,"LookaheadIterator")}0=0;language;constructor(e,t,s){assertInternal(e),this[0]=t,this.language=s}get currentTypeId(){return C._ts_lookahead_iterator_current_symbol(this[0])}get currentType(){return this.language.types[this.currentTypeId]||"ERROR"}delete(){C._ts_lookahead_iterator_delete(this[0]),this[0]=0}reset(e,t){return!!C._ts_lookahead_iterator_reset(this[0],e[0],t)&&(this.language=e,!0)}resetState(e){return Boolean(C._ts_lookahead_iterator_reset_state(this[0],e))}[Symbol.iterator](){return{next:__name(()=>C._ts_lookahead_iterator_next(this[0])?{done:!1,value:this.currentType}:{done:!0,value:""},"next")}}};function getText(e,t,s,n){const r=s-t;let i=e.textCallback(t,n);if(i){for(t+=i.length;t<s;){const s=e.textCallback(t,n);if(!(s&&s.length>0))break;t+=s.length,i+=s}t>s&&(i=i.slice(0,r))}return i??""}__name(getText,"getText");var Tree=class e{static{__name(this,"Tree")}0=0;textCallback;language;constructor(e,t,s,n){assertInternal(e),this[0]=t,this.language=s,this.textCallback=n}copy(){const t=C._ts_tree_copy(this[0]);return new e(INTERNAL,t,this.language,this.textCallback)}delete(){C._ts_tree_delete(this[0]),this[0]=0}get rootNode(){return C._ts_tree_root_node_wasm(this[0]),unmarshalNode(this)}rootNodeWithOffset(e,t){const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),marshalPoint(s+SIZE_OF_INT,t),C._ts_tree_root_node_with_offset_wasm(this[0]),unmarshalNode(this)}edit(e){marshalEdit(e),C._ts_tree_edit_wasm(this[0])}walk(){return this.rootNode.walk()}getChangedRanges(t){if(!(t instanceof e))throw new TypeError("Argument must be a Tree");C._ts_tree_get_changed_ranges_wasm(this[0],t[0]);const s=C.getValue(TRANSFER_BUFFER,"i32"),n=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),r=new Array(s);if(s>0){let e=n;for(let t=0;t<s;t++)r[t]=unmarshalRange(e),e+=SIZE_OF_RANGE;C._free(n)}return r}getIncludedRanges(){C._ts_tree_included_ranges_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=unmarshalRange(n),n+=SIZE_OF_RANGE;C._free(t)}return s}},TreeCursor=class e{static{__name(this,"TreeCursor")}0=0;1=0;2=0;3=0;tree;constructor(e,t){assertInternal(e),this.tree=t,unmarshalTreeCursor(this)}copy(){const t=new e(INTERNAL,this.tree);return C._ts_tree_cursor_copy_wasm(this.tree[0]),unmarshalTreeCursor(t),t}delete(){marshalTreeCursor(this),C._ts_tree_cursor_delete_wasm(this.tree[0]),this[0]=this[1]=this[2]=0}get currentNode(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_wasm(this.tree[0]),unmarshalNode(this.tree)}get currentFieldId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_field_id_wasm(this.tree[0])}get currentFieldName(){return this.tree.language.fields[this.currentFieldId]}get currentDepth(){return marshalTreeCursor(this),C._ts_tree_cursor_current_depth_wasm(this.tree[0])}get currentDescendantIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_current_descendant_index_wasm(this.tree[0])}get nodeType(){return this.tree.language.types[this.nodeTypeId]||"ERROR"}get nodeTypeId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_type_id_wasm(this.tree[0])}get nodeStateId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_state_id_wasm(this.tree[0])}get nodeId(){return marshalTreeCursor(this),C._ts_tree_cursor_current_node_id_wasm(this.tree[0])}get nodeIsNamed(){return marshalTreeCursor(this),1===C._ts_tree_cursor_current_node_is_named_wasm(this.tree[0])}get nodeIsMissing(){return marshalTreeCursor(this),1===C._ts_tree_cursor_current_node_is_missing_wasm(this.tree[0])}get nodeText(){marshalTreeCursor(this);const e=C._ts_tree_cursor_start_index_wasm(this.tree[0]),t=C._ts_tree_cursor_end_index_wasm(this.tree[0]);C._ts_tree_cursor_start_position_wasm(this.tree[0]);const s=unmarshalPoint(TRANSFER_BUFFER);return getText(this.tree,e,t,s)}get startPosition(){return marshalTreeCursor(this),C._ts_tree_cursor_start_position_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get endPosition(){return marshalTreeCursor(this),C._ts_tree_cursor_end_position_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get startIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_start_index_wasm(this.tree[0])}get endIndex(){return marshalTreeCursor(this),C._ts_tree_cursor_end_index_wasm(this.tree[0])}gotoFirstChild(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_first_child_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoLastChild(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_last_child_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoParent(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_parent_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoNextSibling(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_next_sibling_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoPreviousSibling(){marshalTreeCursor(this);const e=C._ts_tree_cursor_goto_previous_sibling_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===e}gotoDescendant(e){marshalTreeCursor(this),C._ts_tree_cursor_goto_descendant_wasm(this.tree[0],e),unmarshalTreeCursor(this)}gotoFirstChildForIndex(e){marshalTreeCursor(this),C.setValue(TRANSFER_BUFFER+SIZE_OF_CURSOR,e,"i32");const t=C._ts_tree_cursor_goto_first_child_for_index_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===t}gotoFirstChildForPosition(e){marshalTreeCursor(this),marshalPoint(TRANSFER_BUFFER+SIZE_OF_CURSOR,e);const t=C._ts_tree_cursor_goto_first_child_for_position_wasm(this.tree[0]);return unmarshalTreeCursor(this),1===t}reset(e){marshalNode(e),marshalTreeCursor(this,TRANSFER_BUFFER+SIZE_OF_NODE),C._ts_tree_cursor_reset_wasm(this.tree[0]),unmarshalTreeCursor(this)}resetTo(e){marshalTreeCursor(this,TRANSFER_BUFFER),marshalTreeCursor(e,TRANSFER_BUFFER+SIZE_OF_CURSOR),C._ts_tree_cursor_reset_to_wasm(this.tree[0],e.tree[0]),unmarshalTreeCursor(this)}},Node=class{static{__name(this,"Node")}0=0;_children;_namedChildren;constructor(e,{id:t,tree:s,startIndex:n,startPosition:r,other:i}){assertInternal(e),this[0]=i,this.id=t,this.tree=s,this.startIndex=n,this.startPosition=r}id;startIndex;startPosition;tree;get typeId(){return marshalNode(this),C._ts_node_symbol_wasm(this.tree[0])}get grammarId(){return marshalNode(this),C._ts_node_grammar_symbol_wasm(this.tree[0])}get type(){return this.tree.language.types[this.typeId]||"ERROR"}get grammarType(){return this.tree.language.types[this.grammarId]||"ERROR"}get isNamed(){return marshalNode(this),1===C._ts_node_is_named_wasm(this.tree[0])}get isExtra(){return marshalNode(this),1===C._ts_node_is_extra_wasm(this.tree[0])}get isError(){return marshalNode(this),1===C._ts_node_is_error_wasm(this.tree[0])}get isMissing(){return marshalNode(this),1===C._ts_node_is_missing_wasm(this.tree[0])}get hasChanges(){return marshalNode(this),1===C._ts_node_has_changes_wasm(this.tree[0])}get hasError(){return marshalNode(this),1===C._ts_node_has_error_wasm(this.tree[0])}get endIndex(){return marshalNode(this),C._ts_node_end_index_wasm(this.tree[0])}get endPosition(){return marshalNode(this),C._ts_node_end_point_wasm(this.tree[0]),unmarshalPoint(TRANSFER_BUFFER)}get text(){return getText(this.tree,this.startIndex,this.endIndex,this.startPosition)}get parseState(){return marshalNode(this),C._ts_node_parse_state_wasm(this.tree[0])}get nextParseState(){return marshalNode(this),C._ts_node_next_parse_state_wasm(this.tree[0])}equals(e){return this.tree===e.tree&&this.id===e.id}child(e){return marshalNode(this),C._ts_node_child_wasm(this.tree[0],e),unmarshalNode(this.tree)}namedChild(e){return marshalNode(this),C._ts_node_named_child_wasm(this.tree[0],e),unmarshalNode(this.tree)}childForFieldId(e){return marshalNode(this),C._ts_node_child_by_field_id_wasm(this.tree[0],e),unmarshalNode(this.tree)}childForFieldName(e){const t=this.tree.language.fields.indexOf(e);return-1!==t?this.childForFieldId(t):null}fieldNameForChild(e){marshalNode(this);const t=C._ts_node_field_name_for_child_wasm(this.tree[0],e);return t?C.AsciiToString(t):null}fieldNameForNamedChild(e){marshalNode(this);const t=C._ts_node_field_name_for_named_child_wasm(this.tree[0],e);return t?C.AsciiToString(t):null}childrenForFieldName(e){const t=this.tree.language.fields.indexOf(e);return-1!==t&&0!==t?this.childrenForFieldId(t):[]}childrenForFieldId(e){marshalNode(this),C._ts_node_children_by_field_id_wasm(this.tree[0],e);const t=C.getValue(TRANSFER_BUFFER,"i32"),s=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),n=new Array(t);if(t>0){let e=s;for(let s=0;s<t;s++)n[s]=unmarshalNode(this.tree,e),e+=SIZE_OF_NODE;C._free(s)}return n}firstChildForIndex(e){marshalNode(this);const t=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(t,e,"i32"),C._ts_node_first_child_for_byte_wasm(this.tree[0]),unmarshalNode(this.tree)}firstNamedChildForIndex(e){marshalNode(this);const t=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(t,e,"i32"),C._ts_node_first_named_child_for_byte_wasm(this.tree[0]),unmarshalNode(this.tree)}get childCount(){return marshalNode(this),C._ts_node_child_count_wasm(this.tree[0])}get namedChildCount(){return marshalNode(this),C._ts_node_named_child_count_wasm(this.tree[0])}get firstChild(){return this.child(0)}get firstNamedChild(){return this.namedChild(0)}get lastChild(){return this.child(this.childCount-1)}get lastNamedChild(){return this.namedChild(this.namedChildCount-1)}get children(){if(!this._children){marshalNode(this),C._ts_node_children_wasm(this.tree[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32");if(this._children=new Array(e),e>0){let s=t;for(let t=0;t<e;t++)this._children[t]=unmarshalNode(this.tree,s),s+=SIZE_OF_NODE;C._free(t)}}return this._children}get namedChildren(){if(!this._namedChildren){marshalNode(this),C._ts_node_named_children_wasm(this.tree[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32");if(this._namedChildren=new Array(e),e>0){let s=t;for(let t=0;t<e;t++)this._namedChildren[t]=unmarshalNode(this.tree,s),s+=SIZE_OF_NODE;C._free(t)}}return this._namedChildren}descendantsOfType(e,t=ZERO_POINT,s=ZERO_POINT){Array.isArray(e)||(e=[e]);const n=[],r=this.tree.language.types;for(const t of e)"ERROR"==t&&n.push(65535);for(let t=0,s=r.length;t<s;t++)e.includes(r[t])&&n.push(t);const i=C._malloc(SIZE_OF_INT*n.length);for(let e=0,t=n.length;e<t;e++)C.setValue(i+e*SIZE_OF_INT,n[e],"i32");marshalNode(this),C._ts_node_descendants_of_type_wasm(this.tree[0],i,n.length,t.row,t.column,s.row,s.column);const o=C.getValue(TRANSFER_BUFFER,"i32"),a=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),c=new Array(o);if(o>0){let e=a;for(let t=0;t<o;t++)c[t]=unmarshalNode(this.tree,e),e+=SIZE_OF_NODE}return C._free(a),C._free(i),c}get nextSibling(){return marshalNode(this),C._ts_node_next_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get previousSibling(){return marshalNode(this),C._ts_node_prev_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get nextNamedSibling(){return marshalNode(this),C._ts_node_next_named_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get previousNamedSibling(){return marshalNode(this),C._ts_node_prev_named_sibling_wasm(this.tree[0]),unmarshalNode(this.tree)}get descendantCount(){return marshalNode(this),C._ts_node_descendant_count_wasm(this.tree[0])}get parent(){return marshalNode(this),C._ts_node_parent_wasm(this.tree[0]),unmarshalNode(this.tree)}childWithDescendant(e){return marshalNode(this),marshalNode(e,1),C._ts_node_child_with_descendant_wasm(this.tree[0]),unmarshalNode(this.tree)}descendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),C.setValue(s+SIZE_OF_INT,t,"i32"),C._ts_node_descendant_for_index_wasm(this.tree[0]),unmarshalNode(this.tree)}namedDescendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return C.setValue(s,e,"i32"),C.setValue(s+SIZE_OF_INT,t,"i32"),C._ts_node_named_descendant_for_index_wasm(this.tree[0]),unmarshalNode(this.tree)}descendantForPosition(e,t=e){if(!isPoint(e)||!isPoint(t))throw new Error("Arguments must be {row, column} objects");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return marshalPoint(s,e),marshalPoint(s+SIZE_OF_POINT,t),C._ts_node_descendant_for_position_wasm(this.tree[0]),unmarshalNode(this.tree)}namedDescendantForPosition(e,t=e){if(!isPoint(e)||!isPoint(t))throw new Error("Arguments must be {row, column} objects");marshalNode(this);const s=TRANSFER_BUFFER+SIZE_OF_NODE;return marshalPoint(s,e),marshalPoint(s+SIZE_OF_POINT,t),C._ts_node_named_descendant_for_position_wasm(this.tree[0]),unmarshalNode(this.tree)}walk(){return marshalNode(this),C._ts_tree_cursor_new_wasm(this.tree[0]),new TreeCursor(INTERNAL,this.tree)}edit(e){if(this.startIndex>=e.oldEndIndex){let t,s;this.startIndex=e.newEndIndex+(this.startIndex-e.oldEndIndex),this.startPosition.row>e.oldEndPosition.row?(t=this.startPosition.row-e.oldEndPosition.row,s=this.startPosition.column):(t=0,s=this.startPosition.column,this.startPosition.column>=e.oldEndPosition.column&&(s=this.startPosition.column-e.oldEndPosition.column)),t>0?(this.startPosition.row+=t,this.startPosition.column=s):this.startPosition.column+=s}else this.startIndex>e.startIndex&&(this.startIndex=e.newEndIndex,this.startPosition.row=e.newEndPosition.row,this.startPosition.column=e.newEndPosition.column)}toString(){marshalNode(this);const e=C._ts_node_to_string_wasm(this.tree[0]),t=C.AsciiToString(e);return C._free(e),t}};function unmarshalCaptures(e,t,s,n,r){for(let i=0,o=r.length;i<o;i++){const o=C.getValue(s,"i32"),a=unmarshalNode(t,s+=SIZE_OF_INT);s+=SIZE_OF_NODE,r[i]={patternIndex:n,name:e.captureNames[o],node:a}}return s}function marshalNode(e,t=0){let s=TRANSFER_BUFFER+t*SIZE_OF_NODE;C.setValue(s,e.id,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startIndex,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startPosition.row,"i32"),s+=SIZE_OF_INT,C.setValue(s,e.startPosition.column,"i32"),s+=SIZE_OF_INT,C.setValue(s,e[0],"i32")}function unmarshalNode(e,t=TRANSFER_BUFFER){const s=C.getValue(t,"i32");if(t+=SIZE_OF_INT,0===s)return null;const n=C.getValue(t,"i32");t+=SIZE_OF_INT;const r=C.getValue(t,"i32");t+=SIZE_OF_INT;const i=C.getValue(t,"i32");t+=SIZE_OF_INT;const o=C.getValue(t,"i32");return new Node(INTERNAL,{id:s,tree:e,startIndex:n,startPosition:{row:r,column:i},other:o})}function marshalTreeCursor(e,t=TRANSFER_BUFFER){C.setValue(t+0*SIZE_OF_INT,e[0],"i32"),C.setValue(t+1*SIZE_OF_INT,e[1],"i32"),C.setValue(t+2*SIZE_OF_INT,e[2],"i32"),C.setValue(t+3*SIZE_OF_INT,e[3],"i32")}function unmarshalTreeCursor(e){e[0]=C.getValue(TRANSFER_BUFFER+0*SIZE_OF_INT,"i32"),e[1]=C.getValue(TRANSFER_BUFFER+1*SIZE_OF_INT,"i32"),e[2]=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),e[3]=C.getValue(TRANSFER_BUFFER+3*SIZE_OF_INT,"i32")}function marshalPoint(e,t){C.setValue(e,t.row,"i32"),C.setValue(e+SIZE_OF_INT,t.column,"i32")}function unmarshalPoint(e){return{row:C.getValue(e,"i32")>>>0,column:C.getValue(e+SIZE_OF_INT,"i32")>>>0}}function marshalRange(e,t){marshalPoint(e,t.startPosition),marshalPoint(e+=SIZE_OF_POINT,t.endPosition),e+=SIZE_OF_POINT,C.setValue(e,t.startIndex,"i32"),e+=SIZE_OF_INT,C.setValue(e,t.endIndex,"i32"),e+=SIZE_OF_INT}function unmarshalRange(e){const t={};return t.startPosition=unmarshalPoint(e),e+=SIZE_OF_POINT,t.endPosition=unmarshalPoint(e),e+=SIZE_OF_POINT,t.startIndex=C.getValue(e,"i32")>>>0,e+=SIZE_OF_INT,t.endIndex=C.getValue(e,"i32")>>>0,t}function marshalEdit(e,t=TRANSFER_BUFFER){marshalPoint(t,e.startPosition),marshalPoint(t+=SIZE_OF_POINT,e.oldEndPosition),marshalPoint(t+=SIZE_OF_POINT,e.newEndPosition),t+=SIZE_OF_POINT,C.setValue(t,e.startIndex,"i32"),t+=SIZE_OF_INT,C.setValue(t,e.oldEndIndex,"i32"),t+=SIZE_OF_INT,C.setValue(t,e.newEndIndex,"i32"),t+=SIZE_OF_INT}function unmarshalLanguageMetadata(e){return{major_version:C.getValue(e,"i32"),minor_version:C.getValue(e+=SIZE_OF_INT,"i32"),patch_version:C.getValue(e+=SIZE_OF_INT,"i32")}}__name(unmarshalCaptures,"unmarshalCaptures"),__name(marshalNode,"marshalNode"),__name(unmarshalNode,"unmarshalNode"),__name(marshalTreeCursor,"marshalTreeCursor"),__name(unmarshalTreeCursor,"unmarshalTreeCursor"),__name(marshalPoint,"marshalPoint"),__name(unmarshalPoint,"unmarshalPoint"),__name(marshalRange,"marshalRange"),__name(unmarshalRange,"unmarshalRange"),__name(marshalEdit,"marshalEdit"),__name(unmarshalLanguageMetadata,"unmarshalLanguageMetadata");var LANGUAGE_FUNCTION_REGEX=/^tree_sitter_\w+$/,Language=class e{static{__name(this,"Language")}0=0;types;fields;constructor(e,t){assertInternal(e),this[0]=t,this.types=new Array(C._ts_language_symbol_count(this[0]));for(let e=0,t=this.types.length;e<t;e++)C._ts_language_symbol_type(this[0],e)<2&&(this.types[e]=C.UTF8ToString(C._ts_language_symbol_name(this[0],e)));this.fields=new Array(C._ts_language_field_count(this[0])+1);for(let e=0,t=this.fields.length;e<t;e++){const t=C._ts_language_field_name_for_id(this[0],e);this.fields[e]=0!==t?C.UTF8ToString(t):null}}get name(){const e=C._ts_language_name(this[0]);return 0===e?null:C.UTF8ToString(e)}get abiVersion(){return C._ts_language_abi_version(this[0])}get metadata(){C._ts_language_metadata_wasm(this[0]);return 0===C.getValue(TRANSFER_BUFFER,"i32")?null:unmarshalLanguageMetadata(TRANSFER_BUFFER+SIZE_OF_INT)}get fieldCount(){return this.fields.length-1}get stateCount(){return C._ts_language_state_count(this[0])}fieldIdForName(e){const t=this.fields.indexOf(e);return-1!==t?t:null}fieldNameForId(e){return this.fields[e]??null}idForNodeType(e,t){const s=C.lengthBytesUTF8(e),n=C._malloc(s+1);C.stringToUTF8(e,n,s+1);const r=C._ts_language_symbol_for_name(this[0],n,s,t?1:0);return C._free(n),r||null}get nodeTypeCount(){return C._ts_language_symbol_count(this[0])}nodeTypeForId(e){const t=C._ts_language_symbol_name(this[0],e);return t?C.UTF8ToString(t):null}nodeTypeIsNamed(e){return!!C._ts_language_type_is_named_wasm(this[0],e)}nodeTypeIsVisible(e){return!!C._ts_language_type_is_visible_wasm(this[0],e)}get supertypes(){C._ts_language_supertypes_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=C.getValue(n,"i16"),n+=SIZE_OF_SHORT}return s}subtypes(e){C._ts_language_subtypes_wasm(this[0],e);const t=C.getValue(TRANSFER_BUFFER,"i32"),s=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),n=new Array(t);if(t>0){let e=s;for(let s=0;s<t;s++)n[s]=C.getValue(e,"i16"),e+=SIZE_OF_SHORT}return n}nextState(e,t){return C._ts_language_next_state(this[0],e,t)}lookaheadIterator(e){const t=C._ts_lookahead_iterator_new(this[0],e);return t?new LookaheadIterator(INTERNAL,t,this):null}static async load(t){let s;if(t instanceof Uint8Array)s=t;else if(globalThis.process?.versions.node){const e=await Promise.resolve().then(__webpack_require__.t.bind(__webpack_require__,167,19));s=await e.readFile(t)}else{const e=await fetch(t);if(!e.ok){const t=await e.text();throw new Error(`Language.load failed with status ${e.status}.\n\n${t}`)}const n=e.clone();try{s=await WebAssembly.compileStreaming(e)}catch(e){console.error("wasm streaming compile failed:",e),console.error("falling back to ArrayBuffer instantiation"),s=new Uint8Array(await n.arrayBuffer())}}const n=await C.loadWebAssemblyModule(s,{loadAsync:!0}),r=Object.keys(n),i=r.find(e=>LANGUAGE_FUNCTION_REGEX.test(e)&&!e.includes("external_scanner_"));if(!i)throw console.log(`Couldn't find language function in Wasm file. Symbols:\n${JSON.stringify(r,null,2)}`),new Error("Language.load failed: no language function found in Wasm file");const o=n[i]();return new e(INTERNAL,o)}};async function Module2(moduleArg={}){var moduleRtn,Module=moduleArg,ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="undefined"!=typeof WorkerGlobalScope,ENVIRONMENT_IS_NODE="object"==typeof process&&process.versions?.node&&"renderer"!=process.type;if(ENVIRONMENT_IS_NODE){const{createRequire:e}=await Promise.resolve().then(__webpack_require__.t.bind(__webpack_require__,451,19));var require=e("file:///home/runner/work/apidom/apidom/node_modules/web-tree-sitter/web-tree-sitter.js")}Module.currentQueryProgressCallback=null,Module.currentProgressCallback=null,Module.currentLogCallback=null,Module.currentParseCallback=null;var arguments_=[],thisProgram="./this.program",quit_=__name((e,t)=>{throw t},"quit_"),_scriptName="file:///home/runner/work/apidom/apidom/node_modules/web-tree-sitter/web-tree-sitter.js",scriptDirectory="",readAsync,readBinary;function locateFile(e){return Module.locateFile?Module.locateFile(e,scriptDirectory):scriptDirectory+e}if(__name(locateFile,"locateFile"),ENVIRONMENT_IS_NODE){var fs=require("fs");_scriptName.startsWith("file:")&&(scriptDirectory=require("path").dirname(require("url").fileURLToPath(_scriptName))+"/"),readBinary=__name(e=>(e=isFileURI(e)?new URL(e):e,fs.readFileSync(e)),"readBinary"),readAsync=__name(async(e,t=!0)=>(e=isFileURI(e)?new URL(e):e,fs.readFileSync(e,t?void 0:"utf8")),"readAsync"),process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=__name((e,t)=>{throw process.exitCode=e,t},"quit_")}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}ENVIRONMENT_IS_WORKER&&(readBinary=__name(e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)},"readBinary")),readAsync=__name(async e=>{if(isFileURI(e))return new Promise((t,s)=>{var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?t(n.response):s(n.status)},n.onerror=s,n.send(null)});var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw new Error(t.status+" : "+t.url)},"readAsync")}var out=console.log.bind(console),err=console.error.bind(console),dynamicLibraries=[],wasmBinary,ABORT=!1,EXITSTATUS,isFileURI=__name(e=>e.startsWith("file://"),"isFileURI"),readyPromiseResolve,readyPromiseReject,wasmMemory,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,HEAP64,HEAPU64,HEAP_DATA_VIEW,runtimeInitialized=!1;function updateMemoryViews(){var e=wasmMemory.buffer;Module.HEAP8=HEAP8=new Int8Array(e),Module.HEAP16=HEAP16=new Int16Array(e),Module.HEAPU8=HEAPU8=new Uint8Array(e),Module.HEAPU16=HEAPU16=new Uint16Array(e),Module.HEAP32=HEAP32=new Int32Array(e),Module.HEAPU32=HEAPU32=new Uint32Array(e),Module.HEAPF32=HEAPF32=new Float32Array(e),Module.HEAPF64=HEAPF64=new Float64Array(e),Module.HEAP64=HEAP64=new BigInt64Array(e),Module.HEAPU64=HEAPU64=new BigUint64Array(e),Module.HEAP_DATA_VIEW=HEAP_DATA_VIEW=new DataView(e),LE_HEAP_UPDATE()}function initMemory(){if(Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var e=Module.INITIAL_MEMORY||33554432;wasmMemory=new WebAssembly.Memory({initial:e/65536,maximum:32768})}updateMemoryViews()}__name(updateMemoryViews,"updateMemoryViews"),__name(initMemory,"initMemory");var __RELOC_FUNCS__=[],wasmBinaryFile;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),wasmExports.__wasm_call_ctors(),callRuntimeCallbacks(onPostCtors)}function preMain(){}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(onPostRuns)}function abort(e){Module.onAbort?.(e),err(e="Aborted("+e+")"),ABORT=!0,e+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(e);throw readyPromiseReject?.(t),t}function findWasmBinary(){return Module.locateFile?locateFile("web-tree-sitter.wasm"):new URL(__webpack_require__(841),__webpack_require__.b).href}function getBinarySync(e){if(e==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(e);throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(e){if(!wasmBinary)try{var t=await readAsync(e);return new Uint8Array(t)}catch{}return getBinarySync(e)}async function instantiateArrayBuffer(e,t){try{var s=await getWasmBinary(e);return await WebAssembly.instantiate(s,t)}catch(e){err(`failed to asynchronously prepare wasm: ${e}`),abort(e)}}async function instantiateAsync(e,t,s){if(!e&&!isFileURI(t)&&!ENVIRONMENT_IS_NODE)try{var n=fetch(t,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(n,s)}catch(e){err(`wasm streaming compile failed: ${e}`),err("falling back to ArrayBuffer instantiation")}return instantiateArrayBuffer(t,s)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}async function createWasm(){function e(e,t){wasmExports=e.exports,wasmExports=relocateExports(wasmExports,1024);var s=getDylinkMetadata(t);return s.neededDynlibs&&(dynamicLibraries=s.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),assignWasmExports(wasmExports),wasmExports}function t(t){return e(t.instance,t.module)}__name(e,"receiveInstance"),__name(t,"receiveInstantiationResult");var s=getWasmImports();return Module.instantiateWasm?new Promise((t,n)=>{Module.instantiateWasm(s,(s,n)=>{t(e(s,n))})}):(wasmBinaryFile??=findWasmBinary(),t(await instantiateAsync(wasmBinary,wasmBinaryFile,s)))}__name(preRun,"preRun"),__name(initRuntime,"initRuntime"),__name(preMain,"preMain"),__name(postRun,"postRun"),__name(abort,"abort"),__name(findWasmBinary,"findWasmBinary"),__name(getBinarySync,"getBinarySync"),__name(getWasmBinary,"getWasmBinary"),__name(instantiateArrayBuffer,"instantiateArrayBuffer"),__name(instantiateAsync,"instantiateAsync"),__name(getWasmImports,"getWasmImports"),__name(createWasm,"createWasm");class ExitStatus{static{__name(this,"ExitStatus")}name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(e,t){var s=GOT[t];return s||(s=GOT[t]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(t)||(s.required=!0),s}},LE_ATOMICS_NATIVE_BYTE_ORDER=[],LE_HEAP_LOAD_F32=__name(e=>HEAP_DATA_VIEW.getFloat32(e,!0),"LE_HEAP_LOAD_F32"),LE_HEAP_LOAD_F64=__name(e=>HEAP_DATA_VIEW.getFloat64(e,!0),"LE_HEAP_LOAD_F64"),LE_HEAP_LOAD_I16=__name(e=>HEAP_DATA_VIEW.getInt16(e,!0),"LE_HEAP_LOAD_I16"),LE_HEAP_LOAD_I32=__name(e=>HEAP_DATA_VIEW.getInt32(e,!0),"LE_HEAP_LOAD_I32"),LE_HEAP_LOAD_I64=__name(e=>HEAP_DATA_VIEW.getBigInt64(e,!0),"LE_HEAP_LOAD_I64"),LE_HEAP_LOAD_U32=__name(e=>HEAP_DATA_VIEW.getUint32(e,!0),"LE_HEAP_LOAD_U32"),LE_HEAP_STORE_F32=__name((e,t)=>HEAP_DATA_VIEW.setFloat32(e,t,!0),"LE_HEAP_STORE_F32"),LE_HEAP_STORE_F64=__name((e,t)=>HEAP_DATA_VIEW.setFloat64(e,t,!0),"LE_HEAP_STORE_F64"),LE_HEAP_STORE_I16=__name((e,t)=>HEAP_DATA_VIEW.setInt16(e,t,!0),"LE_HEAP_STORE_I16"),LE_HEAP_STORE_I32=__name((e,t)=>HEAP_DATA_VIEW.setInt32(e,t,!0),"LE_HEAP_STORE_I32"),LE_HEAP_STORE_I64=__name((e,t)=>HEAP_DATA_VIEW.setBigInt64(e,t,!0),"LE_HEAP_STORE_I64"),LE_HEAP_STORE_U32=__name((e,t)=>HEAP_DATA_VIEW.setUint32(e,t,!0),"LE_HEAP_STORE_U32"),callRuntimeCallbacks=__name(e=>{for(;e.length>0;)e.shift()(Module)},"callRuntimeCallbacks"),onPostRuns=[],addOnPostRun=__name(e=>onPostRuns.push(e),"addOnPostRun"),onPreRuns=[],addOnPreRun=__name(e=>onPreRuns.push(e),"addOnPreRun"),UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder:void 0,findStringEnd=__name((e,t,s,n)=>{var r=t+s;if(n)return r;for(;e[t]&&!(t>=r);)++t;return t},"findStringEnd"),UTF8ArrayToString=__name((e,t=0,s,n)=>{var r=findStringEnd(e,t,s,n);if(r-t>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,r));for(var i="";t<r;){var o=e[t++];if(128&o){var a=63&e[t++];if(192!=(224&o)){var c=63&e[t++];if((o=224==(240&o)?(15&o)<<12|a<<6|c:(7&o)<<18|a<<12|c<<6|63&e[t++])<65536)i+=String.fromCharCode(o);else{var l=o-65536;i+=String.fromCharCode(55296|l>>10,56320|1023&l)}}else i+=String.fromCharCode((31&o)<<6|a)}else i+=String.fromCharCode(o)}return i},"UTF8ArrayToString"),getDylinkMetadata=__name(e=>{var t=0,s=0;function n(){return e[t++]}function r(){for(var s=0,n=1;;){var r=e[t++];if(s+=(127&r)*n,n*=128,!(128&r))break}return s}function i(){var s=r();return UTF8ArrayToString(e,(t+=s)-s,s)}function o(){for(var e=r(),t=[];e--;)t.push(i());return t}function a(e,t){if(e)throw new Error(t)}if(__name(n,"getU8"),__name(r,"getLEB"),__name(i,"getString"),__name(o,"getStringList"),__name(a,"failIf"),e instanceof WebAssembly.Module){var c=WebAssembly.Module.customSections(e,"dylink.0");a(0===c.length,"need dylink section"),s=(e=new Uint8Array(c[0])).length}else{var l=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer);a(!(1836278016==l[0]||6386541==l[0]),"need to see wasm magic number"),a(0!==e[8],"need the dylink section to be first"),t=9;var u=r();s=t+u,a("dylink.0"!==i())}for(var d={neededDynlibs:[],tlsExports:new Set,weakImports:new Set,runtimePaths:[]};t<s;){var h=n(),p=r();if(1===h)d.memorySize=r(),d.memoryAlign=r(),d.tableSize=r(),d.tableAlign=r();else if(2===h)d.neededDynlibs=o();else if(3===h)for(var m=r();m--;){var _=i();256&r()&&d.tlsExports.add(_)}else if(4===h)for(m=r();m--;){i(),_=i();1==(3&r())&&d.weakImports.add(_)}else 5===h?d.runtimePaths=o():t+=p}return d},"getDylinkMetadata");function getValue(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":return HEAP8[e];case"i16":return LE_HEAP_LOAD_I16(2*(e>>1));case"i32":return LE_HEAP_LOAD_I32(4*(e>>2));case"i64":return LE_HEAP_LOAD_I64(8*(e>>3));case"float":return LE_HEAP_LOAD_F32(4*(e>>2));case"double":return LE_HEAP_LOAD_F64(8*(e>>3));case"*":return LE_HEAP_LOAD_U32(4*(e>>2));default:abort(`invalid type for getValue: ${t}`)}}__name(getValue,"getValue");var newDSO=__name((e,t,s)=>{var n={refcount:1/0,name:e,exports:s,global:!0};return LDSO.loadedLibsByName[e]=n,null!=t&&(LDSO.loadedLibsByHandle[t]=n),n},"newDSO"),LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=78240,alignMemory=__name((e,t)=>Math.ceil(e/t)*t,"alignMemory"),getMemory=__name(e=>{if(runtimeInitialized)return _calloc(e,1);var t=___heap_base,s=t+alignMemory(e,16);return ___heap_base=s,GOT.__heap_base.value=s,t},"getMemory"),isInternalSym=__name(e=>["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm","__start_em_js","__stop_em_js"].includes(e)||e.startsWith("__em_js__"),"isInternalSym"),uleb128EncodeWithLen=__name(e=>{const t=e.length;return[t%128|128,t>>7,...e]},"uleb128EncodeWithLen"),wasmTypeCodes={i:127,p:127,j:126,f:125,d:124,e:111},generateTypePack=__name(e=>uleb128EncodeWithLen(Array.from(e,e=>wasmTypeCodes[e])),"generateTypePack"),convertJsFunctionToWasm=__name((e,t)=>{var s=Uint8Array.of(0,97,115,109,1,0,0,0,1,...uleb128EncodeWithLen([1,96,...generateTypePack(t.slice(1)),...generateTypePack("v"===t[0]?"":t[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),n=new WebAssembly.Module(s);return new WebAssembly.Instance(n,{e:{f:e}}).exports.f},"convertJsFunctionToWasm"),wasmTableMirror=[],wasmTable=new WebAssembly.Table({initial:31,element:"anyfunc"}),getWasmTableEntry=__name(e=>{var t=wasmTableMirror[e];return t||(wasmTableMirror[e]=t=wasmTable.get(e)),t},"getWasmTableEntry"),updateTableMap=__name((e,t)=>{if(functionsInTableMap)for(var s=e;s<e+t;s++){var n=getWasmTableEntry(s);n&&functionsInTableMap.set(n,s)}},"updateTableMap"),functionsInTableMap,getFunctionAddress=__name(e=>(functionsInTableMap||(functionsInTableMap=new WeakMap,updateTableMap(0,wasmTable.length)),functionsInTableMap.get(e)||0),"getFunctionAddress"),freeTableIndexes=[],getEmptyTableSlot=__name(()=>freeTableIndexes.length?freeTableIndexes.pop():wasmTable.grow(1),"getEmptyTableSlot"),setWasmTableEntry=__name((e,t)=>{wasmTable.set(e,t),wasmTableMirror[e]=wasmTable.get(e)},"setWasmTableEntry"),addFunction=__name((e,t)=>{var s=getFunctionAddress(e);if(s)return s;var n=getEmptyTableSlot();try{setWasmTableEntry(n,e)}catch(s){if(!(s instanceof TypeError))throw s;var r=convertJsFunctionToWasm(e,t);setWasmTableEntry(n,r)}return functionsInTableMap.set(e,n),n},"addFunction"),updateGOT=__name((e,t)=>{for(var s in e)if(!isInternalSym(s)){var n=e[s];GOT[s]||=new WebAssembly.Global({value:"i32",mutable:!0}),(t||0==GOT[s].value)&&("function"==typeof n?GOT[s].value=addFunction(n):"number"==typeof n?GOT[s].value=n:err(`unhandled export type for '${s}': ${typeof n}`))}},"updateGOT"),relocateExports=__name((e,t,s)=>{var n={};for(var r in e){var i=e[r];"object"==typeof i&&(i=i.value),"number"==typeof i&&(i+=t),n[r]=i}return updateGOT(n,s),n},"relocateExports"),isSymbolDefined=__name(e=>{var t=wasmImports[e];return!(!t||t.stub)},"isSymbolDefined"),dynCall=__name((e,t,s=[],n=!1)=>{var r=getWasmTableEntry(t)(...s);function i(e){return e}return __name(i,"convert"),r},"dynCall"),stackSave=__name(()=>_emscripten_stack_get_current(),"stackSave"),stackRestore=__name(e=>__emscripten_stack_restore(e),"stackRestore"),createInvokeFunction=__name(e=>(t,...s)=>{var n=stackSave();try{return dynCall(e,t,s)}catch(t){if(stackRestore(n),t!==t+0)throw t;if(_setThrew(1,0),"j"==e[0])return 0n}},"createInvokeFunction"),resolveGlobalSymbol=__name((e,t=!1)=>{var s;return isSymbolDefined(e)?s=wasmImports[e]:e.startsWith("invoke_")&&(s=wasmImports[e]=createInvokeFunction(e.split("_")[1])),{sym:s,name:e}},"resolveGlobalSymbol"),onPostCtors=[],addOnPostCtor=__name(e=>onPostCtors.push(e),"addOnPostCtor"),UTF8ToString=__name((e,t,s)=>e?UTF8ArrayToString(HEAPU8,e,t,s):"","UTF8ToString"),loadWebAssemblyModule=__name((binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);function loadModule(){var memAlign=Math.pow(2,metadata.memoryAlign),memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0,moduleExports;function resolveSymbol(e){var t=resolveGlobalSymbol(e).sym;return!t&&localScope&&(t=localScope[e]),t||(t=moduleExports[e]),t}handle&&(HEAP8[handle+8]=1,LE_HEAP_STORE_U32(4*(handle+12>>2),memoryBase),LE_HEAP_STORE_I32(4*(handle+16>>2),metadata.memorySize),LE_HEAP_STORE_U32(4*(handle+20>>2),tableBase),LE_HEAP_STORE_I32(4*(handle+24>>2),metadata.tableSize)),metadata.tableSize&&wasmTable.grow(metadata.tableSize),__name(resolveSymbol,"resolveSymbol");var proxyHandler={get(e,t){switch(t){case"__memory_base":return memoryBase;case"__table_base":return tableBase}var s;if(t in wasmImports&&!wasmImports[t].stub)return wasmImports[t];t in e||(e[t]=(...e)=>(s||=resolveSymbol(t),s(...e)));return e[t]}},proxy=new Proxy({},proxyHandler);currentModuleWeakSymbols=metadata.weakImports;var info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&-1!=body.indexOf("$"+arity);arity++)args.push("$"+arity);args=args.join(",");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if(updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols(),__name(addEmAsm,"addEmAsm"),"__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;start<stop;){var jsString=UTF8ToString(start);addEmAsm(start,jsString),start=HEAPU8.indexOf(0,start)+1}function addEmJs(name,cSig,body){var jsArgs=[];if(cSig=cSig.slice(1,-1),"void"!=cSig)for(var i in cSig=cSig.split(","),cSig){var jsArg=cSig[i].split(" ").pop();jsArgs.push(jsArg.replace("*",""))}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}for(var name in __name(addEmJs,"addEmJs"),moduleExports)if(name.startsWith("__em_js__")){var start=moduleExports[name],jsString=UTF8ToString(start),parts=jsString.split("<::>");addEmJs(name.replace("__em_js__",""),parts[0],parts[1]),delete moduleExports[name]}var applyRelocs=moduleExports.__wasm_apply_data_relocs;applyRelocs&&(runtimeInitialized?applyRelocs():__RELOC_FUNCS__.push(applyRelocs));var init=moduleExports.__wasm_call_ctors;return init&&(runtimeInitialized?init():addOnPostCtor(init)),moduleExports}if(__name(postInstantiation,"postInstantiation"),flags.loadAsync)return(async()=>{var e;return binary instanceof WebAssembly.Module?e=new WebAssembly.Instance(binary,info):({module:binary,instance:e}=await WebAssembly.instantiate(binary,info)),postInstantiation(binary,e)})();var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary),instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}return __name(loadModule,"loadModule"),flags={...flags,rpath:{parentLibPath:libName,paths:metadata.runtimePaths}},flags.loadAsync?metadata.neededDynlibs.reduce((e,t)=>e.then(()=>loadDynamicLibrary(t,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(e=>loadDynamicLibrary(e,flags,localScope)),loadModule())},"loadWebAssemblyModule"),mergeLibSymbols=__name((e,t)=>{for(var[s,n]of Object.entries(e)){const e=__name(e=>{isSymbolDefined(e)||(wasmImports[e]=n)},"setImport");e(s);const t="__main_argc_argv";"main"==s&&e(t),s==t&&e("main")}},"mergeLibSymbols"),asyncLoad=__name(async e=>{var t=await readAsync(e);return new Uint8Array(t)},"asyncLoad");function loadDynamicLibrary(e,t={global:!0,nodelete:!0},s,n){var r=LDSO.loadedLibsByName[e];if(r)return t.global?r.global||(r.global=!0,mergeLibSymbols(r.exports,e)):s&&Object.assign(s,r.exports),t.nodelete&&r.refcount!==1/0&&(r.refcount=1/0),r.refcount++,n&&(LDSO.loadedLibsByHandle[n]=r),!t.loadAsync||Promise.resolve(!0);function i(){if(n){var s=LE_HEAP_LOAD_U32(4*(n+28>>2)),r=LE_HEAP_LOAD_U32(4*(n+32>>2));if(s&&r){var i=HEAP8.slice(s,s+r);return t.loadAsync?Promise.resolve(i):i}}var o=locateFile(e);if(t.loadAsync)return asyncLoad(o);if(!readBinary)throw new Error(`${o}: file not found, and synchronous loading of external files is not available`);return readBinary(o)}function o(){return t.loadAsync?i().then(r=>loadWebAssemblyModule(r,t,e,s,n)):loadWebAssemblyModule(i(),t,e,s,n)}function a(t){r.global?mergeLibSymbols(t,e):s&&Object.assign(s,t),r.exports=t}return(r=newDSO(e,n,"loading")).refcount=t.nodelete?1/0:1,r.global=t.global,__name(i,"loadLibData"),__name(o,"getExports"),__name(a,"moduleLoaded"),t.loadAsync?o().then(e=>(a(e),!0)):(a(o()),!0)}__name(loadDynamicLibrary,"loadDynamicLibrary");var reportUndefinedSymbols=__name(()=>{for(var[e,t]of Object.entries(GOT))if(0==t.value){var s=resolveGlobalSymbol(e,!0).sym;if(!s&&!t.required)continue;if("function"==typeof s)t.value=addFunction(s,s.sig);else{if("number"!=typeof s)throw new Error(`bad export type for '${e}': ${typeof s}`);t.value=s}}},"reportUndefinedSymbols"),runDependencies=0,dependenciesFulfilled=null,removeRunDependency=__name(e=>{if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),0==runDependencies&&dependenciesFulfilled){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}},"removeRunDependency"),addRunDependency=__name(e=>{runDependencies++,Module.monitorRunDependencies?.(runDependencies)},"addRunDependency"),loadDylibs=__name(async()=>{if(dynamicLibraries.length){for(var e of(addRunDependency("loadDylibs"),dynamicLibraries))await loadDynamicLibrary(e,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0});reportUndefinedSymbols(),removeRunDependency("loadDylibs")}else reportUndefinedSymbols()},"loadDylibs"),noExitRuntime=!0;function setValue(e,t,s="i8"){switch(s.endsWith("*")&&(s="*"),s){case"i1":case"i8":HEAP8[e]=t;break;case"i16":LE_HEAP_STORE_I16(2*(e>>1),t);break;case"i32":LE_HEAP_STORE_I32(4*(e>>2),t);break;case"i64":LE_HEAP_STORE_I64(8*(e>>3),BigInt(t));break;case"float":LE_HEAP_STORE_F32(4*(e>>2),t);break;case"double":LE_HEAP_STORE_F64(8*(e>>3),t);break;case"*":LE_HEAP_STORE_U32(4*(e>>2),t);break;default:abort(`invalid type for setValue: ${s}`)}}__name(setValue,"setValue");var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_high=78240,___stack_low=12704,___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},78240),___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=__name(()=>abort(""),"__abort_js");__abort_js.sig="v";var getHeapMax=__name(()=>2147483648,"getHeapMax"),growMemory=__name(e=>{var t=(e-wasmMemory.buffer.byteLength+65535)/65536|0;try{return wasmMemory.grow(t),updateMemoryViews(),1}catch(e){}},"growMemory"),_emscripten_resize_heap=__name(e=>{var t=HEAPU8.length;e>>>=0;var s=getHeapMax();if(e>s)return!1;for(var n=1;n<=4;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);var i=Math.min(s,alignMemory(Math.max(e,r),65536));if(growMemory(i))return!0}return!1},"_emscripten_resize_heap");_emscripten_resize_heap.sig="ip";var _fd_close=__name(e=>52,"_fd_close");_fd_close.sig="ii";var INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=__name(e=>e<INT53_MIN||e>INT53_MAX?NaN:Number(e),"bigintToI53Checked");function _fd_seek(e,t,s,n){return t=bigintToI53Checked(t),70}__name(_fd_seek,"_fd_seek"),_fd_seek.sig="iijip";var printCharBuffers=[null,[],[]],printChar=__name((e,t)=>{var s=printCharBuffers[e];0===t||10===t?((1===e?out:err)(UTF8ArrayToString(s)),s.length=0):s.push(t)},"printChar"),_fd_write=__name((e,t,s,n)=>{for(var r=0,i=0;i<s;i++){var o=LE_HEAP_LOAD_U32(4*(t>>2)),a=LE_HEAP_LOAD_U32(4*(t+4>>2));t+=8;for(var c=0;c<a;c++)printChar(e,HEAPU8[o+c]);r+=a}return LE_HEAP_STORE_U32(4*(n>>2),r),0},"_fd_write");function _tree_sitter_log_callback(e,t){if(Module.currentLogCallback){const s=UTF8ToString(t);Module.currentLogCallback(s,0!==e)}}function _tree_sitter_parse_callback(e,t,s,n,r){const i=Module.currentParseCallback(t,{row:s,column:n});"string"==typeof i?(setValue(r,i.length,"i32"),stringToUTF16(i,e,10240)):setValue(r,0,"i32")}function _tree_sitter_progress_callback(e,t){return!!Module.currentProgressCallback&&Module.currentProgressCallback({currentOffset:e,hasError:t})}function _tree_sitter_query_progress_callback(e){return!!Module.currentQueryProgressCallback&&Module.currentQueryProgressCallback({currentOffset:e})}_fd_write.sig="iippp",__name(_tree_sitter_log_callback,"_tree_sitter_log_callback"),__name(_tree_sitter_parse_callback,"_tree_sitter_parse_callback"),__name(_tree_sitter_progress_callback,"_tree_sitter_progress_callback"),__name(_tree_sitter_query_progress_callback,"_tree_sitter_query_progress_callback");var runtimeKeepaliveCounter=0,keepRuntimeAlive=__name(()=>noExitRuntime||runtimeKeepaliveCounter>0,"keepRuntimeAlive"),_proc_exit=__name(e=>{EXITSTATUS=e,keepRuntimeAlive()||(Module.onExit?.(e),ABORT=!0),quit_(e,new ExitStatus(e))},"_proc_exit");_proc_exit.sig="vi";var exitJS=__name((e,t)=>{EXITSTATUS=e,_proc_exit(e)},"exitJS"),handleException=__name(e=>{if(e instanceof ExitStatus||"unwind"==e)return EXITSTATUS;quit_(1,e)},"handleException"),lengthBytesUTF8=__name(e=>{for(var t=0,s=0;s<e.length;++s){var n=e.charCodeAt(s);n<=127?t++:n<=2047?t+=2:n>=55296&&n<=57343?(t+=4,++s):t+=3}return t},"lengthBytesUTF8"),stringToUTF8Array=__name((e,t,s,n)=>{if(!(n>0))return 0;for(var r=s,i=s+n-1,o=0;o<e.length;++o){var a=e.codePointAt(o);if(a<=127){if(s>=i)break;t[s++]=a}else if(a<=2047){if(s+1>=i)break;t[s++]=192|a>>6,t[s++]=128|63&a}else if(a<=65535){if(s+2>=i)break;t[s++]=224|a>>12,t[s++]=128|a>>6&63,t[s++]=128|63&a}else{if(s+3>=i)break;t[s++]=240|a>>18,t[s++]=128|a>>12&63,t[s++]=128|a>>6&63,t[s++]=128|63&a,o++}}return t[s]=0,s-r},"stringToUTF8Array"),stringToUTF8=__name((e,t,s)=>stringToUTF8Array(e,HEAPU8,t,s),"stringToUTF8"),stackAlloc=__name(e=>__emscripten_stack_alloc(e),"stackAlloc"),stringToUTF8OnStack=__name(e=>{var t=lengthBytesUTF8(e)+1,s=stackAlloc(t);return stringToUTF8(e,s,t),s},"stringToUTF8OnStack"),AsciiToString=__name(e=>{for(var t="";;){var s=HEAPU8[e++];if(!s)return t;t+=String.fromCharCode(s)}},"AsciiToString"),stringToUTF16=__name((e,t,s)=>{if(s??=2147483647,s<2)return 0;for(var n=t,r=(s-=2)<2*e.length?s/2:e.length,i=0;i<r;++i){var o=e.charCodeAt(i);LE_HEAP_STORE_I16(2*(t>>1),o),t+=2}return LE_HEAP_STORE_I16(2*(t>>1),0),t-n},"stringToUTF16");function LE_HEAP_UPDATE(){HEAPU16.unsigned=e=>65535&e,HEAPU32.unsigned=e=>e>>>0}if(LE_ATOMICS_NATIVE_BYTE_ORDER=1===new Int8Array(new Int16Array([1]).buffer)[0]?[e=>e,e=>e,void 0,e=>e]:[e=>e,e=>((65280&e)<<8|(255&e)<<24)>>16,void 0,e=>e>>24&255|e>>8&65280|(65280&e)<<8|(255&e)<<24],__name(LE_HEAP_UPDATE,"LE_HEAP_UPDATE"),initMemory(),Module.noExitRuntime&&(noExitRuntime=Module.noExitRuntime),Module.print&&(out=Module.print),Module.printErr&&(err=Module.printErr),Module.dynamicLibraries&&(dynamicLibraries=Module.dynamicLibraries),Module.wasmBinary&&(wasmBinary=Module.wasmBinary),Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram),Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.shift()();Module.setValue=setValue,Module.getValue=getValue,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.AsciiToString=AsciiToString,Module.stringToUTF16=stringToUTF16,Module.loadWebAssemblyModule=loadWebAssemblyModule,Module.LE_HEAP_STORE_I64=LE_HEAP_STORE_I64;var ASM_CONSTS={},_malloc,_calloc,_realloc,_free,_ts_range_edit,_memcmp,_ts_language_symbol_count,_ts_language_state_count,_ts_language_abi_version,_ts_language_name,_ts_language_field_count,_ts_language_next_state,_ts_language_symbol_name,_ts_language_symbol_for_name,_strncmp,_ts_language_symbol_type,_ts_language_field_name_for_id,_ts_lookahead_iterator_new,_ts_lookahead_iterator_delete,_ts_lookahead_iterator_reset_state,_ts_lookahead_iterator_reset,_ts_lookahead_iterator_next,_ts_lookahead_iterator_current_symbol,_ts_point_edit,_ts_parser_delete,_ts_parser_reset,_ts_parser_set_language,_ts_parser_set_included_ranges,_ts_query_new,_ts_query_delete,_iswspace,_iswalnum,_ts_query_pattern_count,_ts_query_capture_count,_ts_query_string_count,_ts_query_capture_name_for_id,_ts_query_capture_quantifier_for_id,_ts_query_string_value_for_id,_ts_query_predicates_for_pattern,_ts_query_start_byte_for_pattern,_ts_query_end_byte_for_pattern,_ts_query_is_pattern_rooted,_ts_query_is_pattern_non_local,_ts_query_is_pattern_guaranteed_at_step,_ts_query_disable_capture,_ts_query_disable_pattern,_ts_tree_copy,_ts_tree_delete,_ts_init,_ts_parser_new_wasm,_ts_parser_enable_logger_wasm,_ts_parser_parse_wasm,_ts_parser_included_ranges_wasm,_ts_language_type_is_named_wasm,_ts_language_type_is_visible_wasm,_ts_language_metadata_wasm,_ts_language_supertypes_wasm,_ts_language_subtypes_wasm,_ts_tree_root_node_wasm,_ts_tree_root_node_with_offset_wasm,_ts_tree_edit_wasm,_ts_tree_included_ranges_wasm,_ts_tree_get_changed_ranges_wasm,_ts_tree_cursor_new_wasm,_ts_tree_cursor_copy_wasm,_ts_tree_cursor_delete_wasm,_ts_tree_cursor_reset_wasm,_ts_tree_cursor_reset_to_wasm,_ts_tree_cursor_goto_first_child_wasm,_ts_tree_cursor_goto_last_child_wasm,_ts_tree_cursor_goto_first_child_for_index_wasm,_ts_tree_cursor_goto_first_child_for_position_wasm,_ts_tree_cursor_goto_next_sibling_wasm,_ts_tree_cursor_goto_previous_sibling_wasm,_ts_tree_cursor_goto_descendant_wasm,_ts_tree_cursor_goto_parent_wasm,_ts_tree_cursor_current_node_type_id_wasm,_ts_tree_cursor_current_node_state_id_wasm,_ts_tree_cursor_current_node_is_named_wasm,_ts_tree_cursor_current_node_is_missing_wasm,_ts_tree_cursor_current_node_id_wasm,_ts_tree_cursor_start_position_wasm,_ts_tree_cursor_end_position_wasm,_ts_tree_cursor_start_index_wasm,_ts_tree_cursor_end_index_wasm,_ts_tree_cursor_current_field_id_wasm,_ts_tree_cursor_current_depth_wasm,_ts_tree_cursor_current_descendant_index_wasm,_ts_tree_cursor_current_node_wasm,_ts_node_symbol_wasm,_ts_node_field_name_for_child_wasm,_ts_node_field_name_for_named_child_wasm,_ts_node_children_by_field_id_wasm,_ts_node_first_child_for_byte_wasm,_ts_node_first_named_child_for_byte_wasm,_ts_node_grammar_symbol_wasm,_ts_node_child_count_wasm,_ts_node_named_child_count_wasm,_ts_node_child_wasm,_ts_node_named_child_wasm,_ts_node_child_by_field_id_wasm,_ts_node_next_sibling_wasm,_ts_node_prev_sibling_wasm,_ts_node_next_named_sibling_wasm,_ts_node_prev_named_sibling_wasm,_ts_node_descendant_count_wasm,_ts_node_parent_wasm,_ts_node_child_with_descendant_wasm,_ts_node_descendant_for_index_wasm,_ts_node_named_descendant_for_index_wasm,_ts_node_descendant_for_position_wasm,_ts_node_named_descendant_for_position_wasm,_ts_node_start_point_wasm,_ts_node_end_point_wasm,_ts_node_start_index_wasm,_ts_node_end_index_wasm,_ts_node_to_string_wasm,_ts_node_children_wasm,_ts_node_named_children_wasm,_ts_node_descendants_of_type_wasm,_ts_node_is_named_wasm,_ts_node_has_changes_wasm,_ts_node_has_error_wasm,_ts_node_is_error_wasm,_ts_node_is_missing_wasm,_ts_node_is_extra_wasm,_ts_node_parse_state_wasm,_ts_node_next_parse_state_wasm,_ts_query_matches_wasm,_ts_query_captures_wasm,_memset,_memcpy,_memmove,_iswalpha,_iswblank,_iswdigit,_iswlower,_iswupper,_iswxdigit,_memchr,_strlen,_strcmp,_strncat,_strncpy,_towlower,_towupper,_setThrew,__emscripten_stack_restore,__emscripten_stack_alloc,_emscripten_stack_get_current,___wasm_apply_data_relocs;function assignWasmExports(e){Module._malloc=_malloc=e.malloc,Module._calloc=_calloc=e.calloc,Module._realloc=_realloc=e.realloc,Module._free=_free=e.free,Module._ts_range_edit=_ts_range_edit=e.ts_range_edit,Module._memcmp=_memcmp=e.memcmp,Module._ts_language_symbol_count=_ts_language_symbol_count=e.ts_language_symbol_count,Module._ts_language_state_count=_ts_language_state_count=e.ts_language_state_count,Module._ts_language_abi_version=_ts_language_abi_version=e.ts_language_abi_version,Module._ts_language_name=_ts_language_name=e.ts_language_name,Module._ts_language_field_count=_ts_language_field_count=e.ts_language_field_count,Module._ts_language_next_state=_ts_language_next_state=e.ts_language_next_state,Module._ts_language_symbol_name=_ts_language_symbol_name=e.ts_language_symbol_name,Module._ts_language_symbol_for_name=_ts_language_symbol_for_name=e.ts_language_symbol_for_name,Module._strncmp=_strncmp=e.strncmp,Module._ts_language_symbol_type=_ts_language_symbol_type=e.ts_language_symbol_type,Module._ts_language_field_name_for_id=_ts_language_field_name_for_id=e.ts_language_field_name_for_id,Module._ts_lookahead_iterator_new=_ts_lookahead_iterator_new=e.ts_lookahead_iterator_new,Module._ts_lookahead_iterator_delete=_ts_lookahead_iterator_delete=e.ts_lookahead_iterator_delete,Module._ts_lookahead_iterator_reset_state=_ts_lookahead_iterator_reset_state=e.ts_lookahead_iterator_reset_state,Module._ts_lookahead_iterator_reset=_ts_lookahead_iterator_reset=e.ts_lookahead_iterator_reset,Module._ts_lookahead_iterator_next=_ts_lookahead_iterator_next=e.ts_lookahead_iterator_next,Module._ts_lookahead_iterator_current_symbol=_ts_lookahead_iterator_current_symbol=e.ts_lookahead_iterator_current_symbol,Module._ts_point_edit=_ts_point_edit=e.ts_point_edit,Module._ts_parser_delete=_ts_parser_delete=e.ts_parser_delete,Module._ts_parser_reset=_ts_parser_reset=e.ts_parser_reset,Module._ts_parser_set_language=_ts_parser_set_language=e.ts_parser_set_language,Module._ts_parser_set_included_ranges=_ts_parser_set_included_ranges=e.ts_parser_set_included_ranges,Module._ts_query_new=_ts_query_new=e.ts_query_new,Module._ts_query_delete=_ts_query_delete=e.ts_query_delete,Module._iswspace=_iswspace=e.iswspace,Module._iswalnum=_iswalnum=e.iswalnum,Module._ts_query_pattern_count=_ts_query_pattern_count=e.ts_query_pattern_count,Module._ts_query_capture_count=_ts_query_capture_count=e.ts_query_capture_count,Module._ts_query_string_count=_ts_query_string_count=e.ts_query_string_count,Module._ts_query_capture_name_for_id=_ts_query_capture_name_for_id=e.ts_query_capture_name_for_id,Module._ts_query_capture_quantifier_for_id=_ts_query_capture_quantifier_for_id=e.ts_query_capture_quantifier_for_id,Module._ts_query_string_value_for_id=_ts_query_string_value_for_id=e.ts_query_string_value_for_id,Module._ts_query_predicates_for_pattern=_ts_query_predicates_for_pattern=e.ts_query_predicates_for_pattern,Module._ts_query_start_byte_for_pattern=_ts_query_start_byte_for_pattern=e.ts_query_start_byte_for_pattern,Module._ts_query_end_byte_for_pattern=_ts_query_end_byte_for_pattern=e.ts_query_end_byte_for_pattern,Module._ts_query_is_pattern_rooted=_ts_query_is_pattern_rooted=e.ts_query_is_pattern_rooted,Module._ts_query_is_pattern_non_local=_ts_query_is_pattern_non_local=e.ts_query_is_pattern_non_local,Module._ts_query_is_pattern_guaranteed_at_step=_ts_query_is_pattern_guaranteed_at_step=e.ts_query_is_pattern_guaranteed_at_step,Module._ts_query_disable_capture=_ts_query_disable_capture=e.ts_query_disable_capture,Module._ts_query_disable_pattern=_ts_query_disable_pattern=e.ts_query_disable_pattern,Module._ts_tree_copy=_ts_tree_copy=e.ts_tree_copy,Module._ts_tree_delete=_ts_tree_delete=e.ts_tree_delete,Module._ts_init=_ts_init=e.ts_init,Module._ts_parser_new_wasm=_ts_parser_new_wasm=e.ts_parser_new_wasm,Module._ts_parser_enable_logger_wasm=_ts_parser_enable_logger_wasm=e.ts_parser_enable_logger_wasm,Module._ts_parser_parse_wasm=_ts_parser_parse_wasm=e.ts_parser_parse_wasm,Module._ts_parser_included_ranges_wasm=_ts_parser_included_ranges_wasm=e.ts_parser_included_ranges_wasm,Module._ts_language_type_is_named_wasm=_ts_language_type_is_named_wasm=e.ts_language_type_is_named_wasm,Module._ts_language_type_is_visible_wasm=_ts_language_type_is_visible_wasm=e.ts_language_type_is_visible_wasm,Module._ts_language_metadata_wasm=_ts_language_metadata_wasm=e.ts_language_metadata_wasm,Module._ts_language_supertypes_wasm=_ts_language_supertypes_wasm=e.ts_language_supertypes_wasm,Module._ts_language_subtypes_wasm=_ts_language_subtypes_wasm=e.ts_language_subtypes_wasm,Module._ts_tree_root_node_wasm=_ts_tree_root_node_wasm=e.ts_tree_root_node_wasm,Module._ts_tree_root_node_with_offset_wasm=_ts_tree_root_node_with_offset_wasm=e.ts_tree_root_node_with_offset_wasm,Module._ts_tree_edit_wasm=_ts_tree_edit_wasm=e.ts_tree_edit_wasm,Module._ts_tree_included_ranges_wasm=_ts_tree_included_ranges_wasm=e.ts_tree_included_ranges_wasm,Module._ts_tree_get_changed_ranges_wasm=_ts_tree_get_changed_ranges_wasm=e.ts_tree_get_changed_ranges_wasm,Module._ts_tree_cursor_new_wasm=_ts_tree_cursor_new_wasm=e.ts_tree_cursor_new_wasm,Module._ts_tree_cursor_copy_wasm=_ts_tree_cursor_copy_wasm=e.ts_tree_cursor_copy_wasm,Module._ts_tree_cursor_delete_wasm=_ts_tree_cursor_delete_wasm=e.ts_tree_cursor_delete_wasm,Module._ts_tree_cursor_reset_wasm=_ts_tree_cursor_reset_wasm=e.ts_tree_cursor_reset_wasm,Module._ts_tree_cursor_reset_to_wasm=_ts_tree_cursor_reset_to_wasm=e.ts_tree_cursor_reset_to_wasm,Module._ts_tree_cursor_goto_first_child_wasm=_ts_tree_cursor_goto_first_child_wasm=e.ts_tree_cursor_goto_first_child_wasm,Module._ts_tree_cursor_goto_last_child_wasm=_ts_tree_cursor_goto_last_child_wasm=e.ts_tree_cursor_goto_last_child_wasm,Module._ts_tree_cursor_goto_first_child_for_index_wasm=_ts_tree_cursor_goto_first_child_for_index_wasm=e.ts_tree_cursor_goto_first_child_for_index_wasm,Module._ts_tree_cursor_goto_first_child_for_position_wasm=_ts_tree_cursor_goto_first_child_for_position_wasm=e.ts_tree_cursor_goto_first_child_for_position_wasm,Module._ts_tree_cursor_goto_next_sibling_wasm=_ts_tree_cursor_goto_next_sibling_wasm=e.ts_tree_cursor_goto_next_sibling_wasm,Module._ts_tree_cursor_goto_previous_sibling_wasm=_ts_tree_cursor_goto_previous_sibling_wasm=e.ts_tree_cursor_goto_previous_sibling_wasm,Module._ts_tree_cursor_goto_descendant_wasm=_ts_tree_cursor_goto_descendant_wasm=e.ts_tree_cursor_goto_descendant_wasm,Module._ts_tree_cursor_goto_parent_wasm=_ts_tree_cursor_goto_parent_wasm=e.ts_tree_cursor_goto_parent_wasm,Module._ts_tree_cursor_current_node_type_id_wasm=_ts_tree_cursor_current_node_type_id_wasm=e.ts_tree_cursor_current_node_type_id_wasm,Module._ts_tree_cursor_current_node_state_id_wasm=_ts_tree_cursor_current_node_state_id_wasm=e.ts_tree_cursor_current_node_state_id_wasm,Module._ts_tree_cursor_current_node_is_named_wasm=_ts_tree_cursor_current_node_is_named_wasm=e.ts_tree_cursor_current_node_is_named_wasm,Module._ts_tree_cursor_current_node_is_missing_wasm=_ts_tree_cursor_current_node_is_missing_wasm=e.ts_tree_cursor_current_node_is_missing_wasm,Module._ts_tree_cursor_current_node_id_wasm=_ts_tree_cursor_current_node_id_wasm=e.ts_tree_cursor_current_node_id_wasm,Module._ts_tree_cursor_start_position_wasm=_ts_tree_cursor_start_position_wasm=e.ts_tree_cursor_start_position_wasm,Module._ts_tree_cursor_end_position_wasm=_ts_tree_cursor_end_position_wasm=e.ts_tree_cursor_end_position_wasm,Module._ts_tree_cursor_start_index_wasm=_ts_tree_cursor_start_index_wasm=e.ts_tree_cursor_start_index_wasm,Module._ts_tree_cursor_end_index_wasm=_ts_tree_cursor_end_index_wasm=e.ts_tree_cursor_end_index_wasm,Module._ts_tree_cursor_current_field_id_wasm=_ts_tree_cursor_current_field_id_wasm=e.ts_tree_cursor_current_field_id_wasm,Module._ts_tree_cursor_current_depth_wasm=_ts_tree_cursor_current_depth_wasm=e.ts_tree_cursor_current_depth_wasm,Module._ts_tree_cursor_current_descendant_index_wasm=_ts_tree_cursor_current_descendant_index_wasm=e.ts_tree_cursor_current_descendant_index_wasm,Module._ts_tree_cursor_current_node_wasm=_ts_tree_cursor_current_node_wasm=e.ts_tree_cursor_current_node_wasm,Module._ts_node_symbol_wasm=_ts_node_symbol_wasm=e.ts_node_symbol_wasm,Module._ts_node_field_name_for_child_wasm=_ts_node_field_name_for_child_wasm=e.ts_node_field_name_for_child_wasm,Module._ts_node_field_name_for_named_child_wasm=_ts_node_field_name_for_named_child_wasm=e.ts_node_field_name_for_named_child_wasm,Module._ts_node_children_by_field_id_wasm=_ts_node_children_by_field_id_wasm=e.ts_node_children_by_field_id_wasm,Module._ts_node_first_child_for_byte_wasm=_ts_node_first_child_for_byte_wasm=e.ts_node_first_child_for_byte_wasm,Module._ts_node_first_named_child_for_byte_wasm=_ts_node_first_named_child_for_byte_wasm=e.ts_node_first_named_child_for_byte_wasm,Module._ts_node_grammar_symbol_wasm=_ts_node_grammar_symbol_wasm=e.ts_node_grammar_symbol_wasm,Module._ts_node_child_count_wasm=_ts_node_child_count_wasm=e.ts_node_child_count_wasm,Module._ts_node_named_child_count_wasm=_ts_node_named_child_count_wasm=e.ts_node_named_child_count_wasm,Module._ts_node_child_wasm=_ts_node_child_wasm=e.ts_node_child_wasm,Module._ts_node_named_child_wasm=_ts_node_named_child_wasm=e.ts_node_named_child_wasm,Module._ts_node_child_by_field_id_wasm=_ts_node_child_by_field_id_wasm=e.ts_node_child_by_field_id_wasm,Module._ts_node_next_sibling_wasm=_ts_node_next_sibling_wasm=e.ts_node_next_sibling_wasm,Module._ts_node_prev_sibling_wasm=_ts_node_prev_sibling_wasm=e.ts_node_prev_sibling_wasm,Module._ts_node_next_named_sibling_wasm=_ts_node_next_named_sibling_wasm=e.ts_node_next_named_sibling_wasm,Module._ts_node_prev_named_sibling_wasm=_ts_node_prev_named_sibling_wasm=e.ts_node_prev_named_sibling_wasm,Module._ts_node_descendant_count_wasm=_ts_node_descendant_count_wasm=e.ts_node_descendant_count_wasm,Module._ts_node_parent_wasm=_ts_node_parent_wasm=e.ts_node_parent_wasm,Module._ts_node_child_with_descendant_wasm=_ts_node_child_with_descendant_wasm=e.ts_node_child_with_descendant_wasm,Module._ts_node_descendant_for_index_wasm=_ts_node_descendant_for_index_wasm=e.ts_node_descendant_for_index_wasm,Module._ts_node_named_descendant_for_index_wasm=_ts_node_named_descendant_for_index_wasm=e.ts_node_named_descendant_for_index_wasm,Module._ts_node_descendant_for_position_wasm=_ts_node_descendant_for_position_wasm=e.ts_node_descendant_for_position_wasm,Module._ts_node_named_descendant_for_position_wasm=_ts_node_named_descendant_for_position_wasm=e.ts_node_named_descendant_for_position_wasm,Module._ts_node_start_point_wasm=_ts_node_start_point_wasm=e.ts_node_start_point_wasm,Module._ts_node_end_point_wasm=_ts_node_end_point_wasm=e.ts_node_end_point_wasm,Module._ts_node_start_index_wasm=_ts_node_start_index_wasm=e.ts_node_start_index_wasm,Module._ts_node_end_index_wasm=_ts_node_end_index_wasm=e.ts_node_end_index_wasm,Module._ts_node_to_string_wasm=_ts_node_to_string_wasm=e.ts_node_to_string_wasm,Module._ts_node_children_wasm=_ts_node_children_wasm=e.ts_node_children_wasm,Module._ts_node_named_children_wasm=_ts_node_named_children_wasm=e.ts_node_named_children_wasm,Module._ts_node_descendants_of_type_wasm=_ts_node_descendants_of_type_wasm=e.ts_node_descendants_of_type_wasm,Module._ts_node_is_named_wasm=_ts_node_is_named_wasm=e.ts_node_is_named_wasm,Module._ts_node_has_changes_wasm=_ts_node_has_changes_wasm=e.ts_node_has_changes_wasm,Module._ts_node_has_error_wasm=_ts_node_has_error_wasm=e.ts_node_has_error_wasm,Module._ts_node_is_error_wasm=_ts_node_is_error_wasm=e.ts_node_is_error_wasm,Module._ts_node_is_missing_wasm=_ts_node_is_missing_wasm=e.ts_node_is_missing_wasm,Module._ts_node_is_extra_wasm=_ts_node_is_extra_wasm=e.ts_node_is_extra_wasm,Module._ts_node_parse_state_wasm=_ts_node_parse_state_wasm=e.ts_node_parse_state_wasm,Module._ts_node_next_parse_state_wasm=_ts_node_next_parse_state_wasm=e.ts_node_next_parse_state_wasm,Module._ts_query_matches_wasm=_ts_query_matches_wasm=e.ts_query_matches_wasm,Module._ts_query_captures_wasm=_ts_query_captures_wasm=e.ts_query_captures_wasm,Module._memset=_memset=e.memset,Module._memcpy=_memcpy=e.memcpy,Module._memmove=_memmove=e.memmove,Module._iswalpha=_iswalpha=e.iswalpha,Module._iswblank=_iswblank=e.iswblank,Module._iswdigit=_iswdigit=e.iswdigit,Module._iswlower=_iswlower=e.iswlower,Module._iswupper=_iswupper=e.iswupper,Module._iswxdigit=_iswxdigit=e.iswxdigit,Module._memchr=_memchr=e.memchr,Module._strlen=_strlen=e.strlen,Module._strcmp=_strcmp=e.strcmp,Module._strncat=_strncat=e.strncat,Module._strncpy=_strncpy=e.strncpy,Module._towlower=_towlower=e.towlower,Module._towupper=_towupper=e.towupper,_setThrew=e.setThrew,__emscripten_stack_restore=e._emscripten_stack_restore,__emscripten_stack_alloc=e._emscripten_stack_alloc,_emscripten_stack_get_current=e.emscripten_stack_get_current,___wasm_apply_data_relocs=e.__wasm_apply_data_relocs}__name(assignWasmExports,"assignWasmExports");var wasmImports={__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_high:___stack_high,__stack_low:___stack_low,__stack_pointer:___stack_pointer,__table_base:___table_base,_abort_js:__abort_js,emscripten_resize_heap:_emscripten_resize_heap,fd_close:_fd_close,fd_seek:_fd_seek,fd_write:_fd_write,memory:wasmMemory,tree_sitter_log_callback:_tree_sitter_log_callback,tree_sitter_parse_callback:_tree_sitter_parse_callback,tree_sitter_progress_callback:_tree_sitter_progress_callback,tree_sitter_query_progress_callback:_tree_sitter_query_progress_callback},wasmExports;function callMain(e=[]){var t=resolveGlobalSymbol("main").sym;if(t){e.unshift(thisProgram);var s=e.length,n=stackAlloc(4*(s+1)),r=n;e.forEach(e=>{LE_HEAP_STORE_U32(4*(r>>2),stringToUTF8OnStack(e)),r+=4}),LE_HEAP_STORE_U32(4*(r>>2),0);try{var i=t(s,n);return exitJS(i,!0),i}catch(e){return handleException(e)}}}function run(e=arguments_){function t(){(Module.calledRun=!0,ABORT)||(initRuntime(),preMain(),readyPromiseResolve?.(Module),Module.onRuntimeInitialized?.(),Module.noInitialRun||!1||callMain(e),postRun())}runDependencies>0?dependenciesFulfilled=run:(preRun(),runDependencies>0?dependenciesFulfilled=run:(__name(t,"doRun"),Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),t()},1)):t()))}return __name(callMain,"callMain"),__name(run,"run"),wasmExports=await createWasm(),run(),moduleRtn=runtimeInitialized?Module:new Promise((e,t)=>{readyPromiseResolve=e,readyPromiseReject=t}),moduleRtn}__name(Module2,"Module");var web_tree_sitter_default=Module2,Module3=null,TRANSFER_BUFFER,LANGUAGE_VERSION,MIN_COMPATIBLE_VERSION;async function initializeBinding(e){return Module3??=await web_tree_sitter_default(e)}function checkModule(){return!!Module3}__name(initializeBinding,"initializeBinding"),__name(checkModule,"checkModule");var Parser=class{static{__name(this,"Parser")}0=0;1=0;logCallback=null;language=null;static async init(e){setModule(await initializeBinding(e)),TRANSFER_BUFFER=C._ts_init(),LANGUAGE_VERSION=C.getValue(TRANSFER_BUFFER,"i32"),MIN_COMPATIBLE_VERSION=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}constructor(){this.initialize()}initialize(){if(!checkModule())throw new Error("cannot construct a Parser before calling `init()`");C._ts_parser_new_wasm(),this[0]=C.getValue(TRANSFER_BUFFER,"i32"),this[1]=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}delete(){C._ts_parser_delete(this[0]),C._free(this[1]),this[0]=0,this[1]=0}setLanguage(e){let t;if(e){if(e.constructor!==Language)throw new Error("Argument must be a Language");{t=e[0];const s=C._ts_language_abi_version(t);if(s<MIN_COMPATIBLE_VERSION||LANGUAGE_VERSION<s)throw new Error(`Incompatible language version ${s}. Compatibility range ${MIN_COMPATIBLE_VERSION} through ${LANGUAGE_VERSION}.`);this.language=e}}else t=0,this.language=null;return C._ts_parser_set_language(this[0],t),this}parse(e,t,s){if("string"==typeof e)C.currentParseCallback=t=>e.slice(t);else{if("function"!=typeof e)throw new Error("Argument must be a string or a function");C.currentParseCallback=e}C.currentProgressCallback=s?.progressCallback?s.progressCallback:null,this.logCallback?(C.currentLogCallback=this.logCallback,C._ts_parser_enable_logger_wasm(this[0],1)):(C.currentLogCallback=null,C._ts_parser_enable_logger_wasm(this[0],0));let n=0,r=0;if(s?.includedRanges){n=s.includedRanges.length,r=C._calloc(n,SIZE_OF_RANGE);let e=r;for(let t=0;t<n;t++)marshalRange(e,s.includedRanges[t]),e+=SIZE_OF_RANGE}const i=C._ts_parser_parse_wasm(this[0],this[1],t?t[0]:0,r,n);if(!i)return C.currentParseCallback=null,C.currentLogCallback=null,C.currentProgressCallback=null,null;if(!this.language)throw new Error("Parser must have a language to parse");const o=new Tree(INTERNAL,i,this.language,C.currentParseCallback);return C.currentParseCallback=null,C.currentLogCallback=null,C.currentProgressCallback=null,o}reset(){C._ts_parser_reset(this[0])}getIncludedRanges(){C._ts_parser_included_ranges_wasm(this[0]);const e=C.getValue(TRANSFER_BUFFER,"i32"),t=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=new Array(e);if(e>0){let n=t;for(let t=0;t<e;t++)s[t]=unmarshalRange(n),n+=SIZE_OF_RANGE;C._free(t)}return s}setLogger(e){if(e){if("function"!=typeof e)throw new Error("Logger callback must be a function");this.logCallback=e}else this.logCallback=null;return this}getLogger(){return this.logCallback}},PREDICATE_STEP_TYPE_CAPTURE=1,PREDICATE_STEP_TYPE_STRING=2,QUERY_WORD_REGEX=/[\w-]+/g,CaptureQuantifier={Zero:0,ZeroOrOne:1,ZeroOrMore:2,One:3,OneOrMore:4},isCaptureStep=__name(e=>"capture"===e.type,"isCaptureStep"),isStringStep=__name(e=>"string"===e.type,"isStringStep"),QueryErrorKind={Syntax:1,NodeName:2,FieldName:3,CaptureName:4,PatternStructure:5},QueryError=class e extends Error{constructor(t,s,n,r){super(e.formatMessage(t,s)),this.kind=t,this.info=s,this.index=n,this.length=r,this.name="QueryError"}static{__name(this,"QueryError")}static formatMessage(e,t){switch(e){case QueryErrorKind.NodeName:return`Bad node name '${t.word}'`;case QueryErrorKind.FieldName:return`Bad field name '${t.word}'`;case QueryErrorKind.CaptureName:return`Bad capture name @${t.word}`;case QueryErrorKind.PatternStructure:return`Bad pattern structure at offset ${t.suffix}`;case QueryErrorKind.Syntax:return`Bad syntax at offset ${t.suffix}`}}};function parseAnyPredicate(e,t,s,n){if(3!==e.length)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 2, got ${e.length-1}`);if(!isCaptureStep(e[1]))throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}"`);const r="eq?"===s||"any-eq?"===s,i=!s.startsWith("any-");if(isCaptureStep(e[2])){const s=e[1].name,o=e[2].name;n[t].push(e=>{const t=[],n=[];for(const r of e)r.name===s&&t.push(r.node),r.name===o&&n.push(r.node);const a=__name((e,t,s)=>s?e.text===t.text:e.text!==t.text,"compare");return i?t.every(e=>n.some(t=>a(e,t,r))):t.some(e=>n.some(t=>a(e,t,r)))})}else{const s=e[1].name,o=e[2].value,a=__name(e=>e.text===o,"matches"),c=__name(e=>e.text!==o,"doesNotMatch");n[t].push(e=>{const t=[];for(const n of e)n.name===s&&t.push(n.node);const n=r?a:c;return i?t.every(n):t.some(n)})}}function parseMatchPredicate(e,t,s,n){if(3!==e.length)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 2, got ${e.length-1}.`);if("capture"!==e[1].type)throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}".`);if("string"!==e[2].type)throw new Error(`Second argument of \`#${s}\` predicate must be a string. Got @${e[2].name}.`);const r="match?"===s||"any-match?"===s,i=!s.startsWith("any-"),o=e[1].name,a=new RegExp(e[2].value);n[t].push(e=>{const t=[];for(const s of e)s.name===o&&t.push(s.node.text);const s=__name((e,t)=>t?a.test(e):!a.test(e),"test");return 0===t.length?!r:i?t.every(e=>s(e,r)):t.some(e=>s(e,r))})}function parseAnyOfPredicate(e,t,s,n){if(e.length<2)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected at least 1. Got ${e.length-1}.`);if("capture"!==e[1].type)throw new Error(`First argument of \`#${s}\` predicate must be a capture. Got "${e[1].value}".`);const r="any-of?"===s,i=e[1].name,o=e.slice(2);if(!o.every(isStringStep))throw new Error(`Arguments to \`#${s}\` predicate must be strings.".`);const a=o.map(e=>e.value);n[t].push(e=>{const t=[];for(const s of e)s.name===i&&t.push(s.node.text);return 0===t.length?!r:t.every(e=>a.includes(e))===r})}function parseIsPredicate(e,t,s,n,r){if(e.length<2||e.length>3)throw new Error(`Wrong number of arguments to \`#${s}\` predicate. Expected 1 or 2. Got ${e.length-1}.`);if(!e.every(isStringStep))throw new Error(`Arguments to \`#${s}\` predicate must be strings.".`);const i="is?"===s?n:r;i[t]||(i[t]={}),i[t][e[1].value]=e[2]?.value??null}function parseSetDirective(e,t,s){if(e.length<2||e.length>3)throw new Error(`Wrong number of arguments to \`#set!\` predicate. Expected 1 or 2. Got ${e.length-1}.`);if(!e.every(isStringStep))throw new Error('Arguments to `#set!` predicate must be strings.".');s[t]||(s[t]={}),s[t][e[1].value]=e[2]?.value??null}function parsePattern(e,t,s,n,r,i,o,a,c,l,u){if(t===PREDICATE_STEP_TYPE_CAPTURE){const e=n[s];i.push({type:"capture",name:e})}else if(t===PREDICATE_STEP_TYPE_STRING)i.push({type:"string",value:r[s]});else if(i.length>0){if("string"!==i[0].type)throw new Error("Predicates must begin with a literal value");const t=i[0].value;switch(t){case"any-not-eq?":case"not-eq?":case"any-eq?":case"eq?":parseAnyPredicate(i,e,t,o);break;case"any-not-match?":case"not-match?":case"any-match?":case"match?":parseMatchPredicate(i,e,t,o);break;case"not-any-of?":case"any-of?":parseAnyOfPredicate(i,e,t,o);break;case"is?":case"is-not?":parseIsPredicate(i,e,t,l,u);break;case"set!":parseSetDirective(i,e,c);break;default:a[e].push({operator:t,operands:i.slice(1)})}i.length=0}}__name(parseAnyPredicate,"parseAnyPredicate"),__name(parseMatchPredicate,"parseMatchPredicate"),__name(parseAnyOfPredicate,"parseAnyOfPredicate"),__name(parseIsPredicate,"parseIsPredicate"),__name(parseSetDirective,"parseSetDirective"),__name(parsePattern,"parsePattern");var Query=class{static{__name(this,"Query")}0=0;exceededMatchLimit;textPredicates;captureNames;captureQuantifiers;predicates;setProperties;assertedProperties;refutedProperties;matchLimit;constructor(e,t){const s=C.lengthBytesUTF8(t),n=C._malloc(s+1);C.stringToUTF8(t,n,s+1);const r=C._ts_query_new(e[0],n,s,TRANSFER_BUFFER,TRANSFER_BUFFER+SIZE_OF_INT);if(!r){const e=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),s=C.getValue(TRANSFER_BUFFER,"i32"),r=C.UTF8ToString(n,s).length,i=t.slice(r,r+100).split("\n")[0],o=i.match(QUERY_WORD_REGEX)?.[0]??"";switch(C._free(n),e){case QueryErrorKind.Syntax:throw new QueryError(QueryErrorKind.Syntax,{suffix:`${r}: '${i}'...`},r,0);case QueryErrorKind.NodeName:case QueryErrorKind.FieldName:case QueryErrorKind.CaptureName:throw new QueryError(e,{word:o},r,o.length);case QueryErrorKind.PatternStructure:throw new QueryError(e,{suffix:`${r}: '${i}'...`},r,0)}}const i=C._ts_query_string_count(r),o=C._ts_query_capture_count(r),a=C._ts_query_pattern_count(r),c=new Array(o),l=new Array(a),u=new Array(i);for(let e=0;e<o;e++){const t=C._ts_query_capture_name_for_id(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");c[e]=C.UTF8ToString(t,s)}for(let e=0;e<a;e++){const t=new Array(o);for(let s=0;s<o;s++){const n=C._ts_query_capture_quantifier_for_id(r,e,s);t[s]=n}l[e]=t}for(let e=0;e<i;e++){const t=C._ts_query_string_value_for_id(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");u[e]=C.UTF8ToString(t,s)}const d=new Array(a),h=new Array(a),p=new Array(a),m=new Array(a),_=new Array(a);for(let e=0;e<a;e++){const t=C._ts_query_predicates_for_pattern(r,e,TRANSFER_BUFFER),s=C.getValue(TRANSFER_BUFFER,"i32");m[e]=[],_[e]=[];const n=new Array;let i=t;for(let t=0;t<s;t++){const t=C.getValue(i,"i32");i+=SIZE_OF_INT;const s=C.getValue(i,"i32");i+=SIZE_OF_INT,parsePattern(e,t,s,c,u,n,_,m,d,h,p)}Object.freeze(_[e]),Object.freeze(m[e]),Object.freeze(d[e]),Object.freeze(h[e]),Object.freeze(p[e])}C._free(n),this[0]=r,this.captureNames=c,this.captureQuantifiers=l,this.textPredicates=_,this.predicates=m,this.setProperties=d,this.assertedProperties=h,this.refutedProperties=p,this.exceededMatchLimit=!1}delete(){C._ts_query_delete(this[0]),this[0]=0}matches(e,t={}){const s=t.startPosition??ZERO_POINT,n=t.endPosition??ZERO_POINT,r=t.startIndex??0,i=t.endIndex??0,o=t.startContainingPosition??ZERO_POINT,a=t.endContainingPosition??ZERO_POINT,c=t.startContainingIndex??0,l=t.endContainingIndex??0,u=t.matchLimit??4294967295,d=t.maxStartDepth??4294967295,h=t.progressCallback;if("number"!=typeof u)throw new Error("Arguments must be numbers");if(this.matchLimit=u,0!==i&&r>i)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==ZERO_POINT&&(s.row>n.row||s.row===n.row&&s.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");if(0!==l&&c>l)throw new Error("`startContainingIndex` cannot be greater than `endContainingIndex`");if(a!==ZERO_POINT&&(o.row>a.row||o.row===a.row&&o.column>a.column))throw new Error("`startContainingPosition` cannot be greater than `endContainingPosition`");h&&(C.currentQueryProgressCallback=h),marshalNode(e),C._ts_query_matches_wasm(this[0],e.tree[0],s.row,s.column,n.row,n.column,r,i,o.row,o.column,a.row,a.column,c,l,u,d);const p=C.getValue(TRANSFER_BUFFER,"i32"),m=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),_=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),g=new Array(p);this.exceededMatchLimit=Boolean(_);let f=0,y=m;for(let t=0;t<p;t++){const t=C.getValue(y,"i32");y+=SIZE_OF_INT;const s=C.getValue(y,"i32");y+=SIZE_OF_INT;const n=new Array(s);if(y=unmarshalCaptures(this,e.tree,y,t,n),this.textPredicates[t].every(e=>e(n))){g[f]={patternIndex:t,captures:n};const e=this.setProperties[t];g[f].setProperties=e;const s=this.assertedProperties[t];g[f].assertedProperties=s;const r=this.refutedProperties[t];g[f].refutedProperties=r,f++}}return g.length=f,C._free(m),C.currentQueryProgressCallback=null,g}captures(e,t={}){const s=t.startPosition??ZERO_POINT,n=t.endPosition??ZERO_POINT,r=t.startIndex??0,i=t.endIndex??0,o=t.startContainingPosition??ZERO_POINT,a=t.endContainingPosition??ZERO_POINT,c=t.startContainingIndex??0,l=t.endContainingIndex??0,u=t.matchLimit??4294967295,d=t.maxStartDepth??4294967295,h=t.progressCallback;if("number"!=typeof u)throw new Error("Arguments must be numbers");if(this.matchLimit=u,0!==i&&r>i)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==ZERO_POINT&&(s.row>n.row||s.row===n.row&&s.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");if(0!==l&&c>l)throw new Error("`startContainingIndex` cannot be greater than `endContainingIndex`");if(a!==ZERO_POINT&&(o.row>a.row||o.row===a.row&&o.column>a.column))throw new Error("`startContainingPosition` cannot be greater than `endContainingPosition`");h&&(C.currentQueryProgressCallback=h),marshalNode(e),C._ts_query_captures_wasm(this[0],e.tree[0],s.row,s.column,n.row,n.column,r,i,o.row,o.column,a.row,a.column,c,l,u,d);const p=C.getValue(TRANSFER_BUFFER,"i32"),m=C.getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),_=C.getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),g=new Array;this.exceededMatchLimit=Boolean(_);const f=new Array;let y=m;for(let t=0;t<p;t++){const t=C.getValue(y,"i32");y+=SIZE_OF_INT;const s=C.getValue(y,"i32");y+=SIZE_OF_INT;const n=C.getValue(y,"i32");if(y+=SIZE_OF_INT,f.length=s,y=unmarshalCaptures(this,e.tree,y,t,f),this.textPredicates[t].every(e=>e(f))){const e=f[n],s=this.setProperties[t];e.setProperties=s;const r=this.assertedProperties[t];e.assertedProperties=r;const i=this.refutedProperties[t];e.refutedProperties=i,g.push(e)}}return C._free(m),C.currentQueryProgressCallback=null,g}predicatesForPattern(e){return this.predicates[e]}disableCapture(e){const t=C.lengthBytesUTF8(e),s=C._malloc(t+1);C.stringToUTF8(e,s,t+1),C._ts_query_disable_capture(this[0],s,t),C._free(s)}disablePattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);C._ts_query_disable_pattern(this[0],e)}didExceedMatchLimit(){return this.exceededMatchLimit}startIndexForPattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);return C._ts_query_start_byte_for_pattern(this[0],e)}endIndexForPattern(e){if(e>=this.predicates.length)throw new Error(`Pattern index is ${e} but the pattern count is ${this.predicates.length}`);return C._ts_query_end_byte_for_pattern(this[0],e)}patternCount(){return C._ts_query_pattern_count(this[0])}captureIndexForName(e){return this.captureNames.indexOf(e)}isPatternRooted(e){return 1===C._ts_query_is_pattern_rooted(this[0],e)}isPatternNonLocal(e){return 1===C._ts_query_is_pattern_non_local(this[0],e)}isPatternGuaranteedAtStep(e){return 1===C._ts_query_is_pattern_guaranteed_at_step(this[0],e)}}}},__webpack_module_cache__={},leafPrototypes,getProto;function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var s=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](s,s.exports,__webpack_require__),s.exports}__webpack_require__.m=__webpack_modules__,getProto=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,__webpack_require__.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var s=Object.create(null);__webpack_require__.r(s);var n={};leafPrototypes=leafPrototypes||[null,getProto({}),getProto([]),getProto(getProto)];for(var r=2&t&&e;("object"==typeof r||"function"==typeof r)&&!~leafPrototypes.indexOf(r);r=getProto(r))Object.getOwnPropertyNames(r).forEach(t=>n[t]=()=>e[t]);return n.default=()=>e,__webpack_require__.d(s,n),s},__webpack_require__.d=(e,t)=>{for(var s in t)__webpack_require__.o(t,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.b="undefined"!=typeof document&&document.baseURI||self.location.href;var __webpack_exports__={};return(()=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{detect:()=>qp,detectionRegExp:()=>Rp,mediaTypes:()=>Np,namespace:()=>Dp,parse:()=>$p});var e={};__webpack_require__.r(e),__webpack_require__.d(e,{isAsyncApiExtension:()=>$o,isReferenceLikeElement:()=>qo});var t={};function s(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function n(e){return function t(n){return 0===arguments.length||s(n)?t:e.apply(this,arguments)}}function r(e){return function t(r,i){switch(arguments.length){case 0:return t;case 1:return s(r)?t:n(function(t){return e(r,t)});default:return s(r)&&s(i)?t:s(r)?n(function(t){return e(t,i)}):s(i)?n(function(t){return e(r,t)}):e(r,i)}}}function i(e){return function t(i,o,a){switch(arguments.length){case 0:return t;case 1:return s(i)?t:r(function(t,s){return e(i,t,s)});case 2:return s(i)&&s(o)?t:s(i)?r(function(t,s){return e(t,o,s)}):s(o)?r(function(t,s){return e(i,t,s)}):n(function(t){return e(i,o,t)});default:return s(i)&&s(o)&&s(a)?t:s(i)&&s(o)?r(function(t,s){return e(t,s,a)}):s(i)&&s(a)?r(function(t,s){return e(t,o,s)}):s(o)&&s(a)?r(function(t,s){return e(i,t,s)}):s(i)?n(function(t){return e(t,o,a)}):s(o)?n(function(t){return e(i,t,a)}):s(a)?n(function(t){return e(i,o,t)}):e(i,o,a)}}}__webpack_require__.r(t),__webpack_require__.d(t,{isAsyncApi2Element:()=>Na,isAsyncApiVersionElement:()=>Ra,isBooleanJSONSchemaElement:()=>ka,isChannelBindingsElement:()=>qa,isChannelItemElement:()=>$a,isChannelsElement:()=>Da,isComponentsElement:()=>Va,isContactElement:()=>La,isIdentifierElement:()=>Ua,isInfoElement:()=>Ha,isLicenseElement:()=>Wa,isOperationElement:()=>Ga,isParameterElement:()=>Za,isParametersElement:()=>Ja,isReferenceElement:()=>za,isSchemaElement:()=>Xa,isSecurityRequirementElement:()=>Qa,isServerBindingsElement:()=>Ya,isServerElement:()=>Ka,isServerVariableElement:()=>tc,isServersElement:()=>ec});const o=r(function(e,t){return null==t||t!=t?e:t}),a=Number.isInteger||function(e){return(e|0)===e};function c(e,t){return t[e<0?t.length+e:e]}const l=function(e,t){if(null!=t)return a(e)?c(e,t):t[e]};const u=r(l);const d=i(function(e,t,s){return o(e,u(t,s))});var h=r(function(e,t){for(var s={},n={},r=0,i=e.length;r<i;)n[e[r]]=1,r+=1;for(var o in t)n.hasOwnProperty(o)||(s[o]=t[o]);return s});const p=h;function m(e,t,s){for(var n=0,r=s.length;n<r;)t=e(t,s[n]),n+=1;return t}const _=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)};function g(e){return"[object String]"===Object.prototype.toString.call(e)}const f=n(function(e){return!!_(e)||!!e&&("object"==typeof e&&(!g(e)&&(0===e.length||e.length>0&&(e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1)))))});var y="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator";function b(e,t,s){return function(n,r,i){if(f(i))return e(n,r,i);if(null==i)return r;if("function"==typeof i["fantasy-land/reduce"])return t(n,r,i,"fantasy-land/reduce");if(null!=i[y])return s(n,r,i[y]());if("function"==typeof i.next)return s(n,r,i);if("function"==typeof i.reduce)return t(n,r,i,"reduce");throw new TypeError("reduce: list must be array or iterable")}}function x(e,t,s){for(var n=s.next();!n.done;)t=e(t,n.value),n=s.next();return t}function v(e,t,s,n){return s[n](e,t)}const w=b(m,v,x);function E(e,t,s){return function(){if(0===arguments.length)return s();var n=arguments[arguments.length-1];if(!_(n)){for(var r=0;r<e.length;){if("function"==typeof n[e[r]])return n[e[r]].apply(n,Array.prototype.slice.call(arguments,0,-1));r+=1}if(function(e){return null!=e&&"function"==typeof e["@@transducer/step"]}(n))return t.apply(null,Array.prototype.slice.call(arguments,0,-1))(n)}return s.apply(this,arguments)}}function S(e,t){for(var s=0,n=t.length,r=Array(n);s<n;)r[s]=e(t[s]),s+=1;return r}const O=function(){return this.xf["@@transducer/init"]()},A=function(e){return this.xf["@@transducer/result"](e)};var C=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){return this.xf["@@transducer/step"](e,this.f(t))},e}();const I=function(e){return function(t){return new C(e,t)}};function T(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(e){return t.apply(this,arguments)};case 2:return function(e,s){return t.apply(this,arguments)};case 3:return function(e,s,n){return t.apply(this,arguments)};case 4:return function(e,s,n,r){return t.apply(this,arguments)};case 5:return function(e,s,n,r,i){return t.apply(this,arguments)};case 6:return function(e,s,n,r,i,o){return t.apply(this,arguments)};case 7:return function(e,s,n,r,i,o,a){return t.apply(this,arguments)};case 8:return function(e,s,n,r,i,o,a,c){return t.apply(this,arguments)};case 9:return function(e,s,n,r,i,o,a,c,l){return t.apply(this,arguments)};case 10:return function(e,s,n,r,i,o,a,c,l,u){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function P(e,t,n){return function(){for(var r=[],i=0,o=e,a=0,c=!1;a<t.length||i<arguments.length;){var l;a<t.length&&(!s(t[a])||i>=arguments.length)?l=t[a]:(l=arguments[i],i+=1),r[a]=l,s(l)?c=!0:o-=1,a+=1}return!c&&o<=0?n.apply(this,r):T(Math.max(0,o),P(e,r,n))}}var F=r(function(e,t){return 1===e?n(t):T(e,P(e,[],t))});const M=F;function B(e,t){return Object.prototype.hasOwnProperty.call(t,e)}var j=Object.prototype.toString;const k=function(){return"[object Arguments]"===j.call(arguments)?function(e){return"[object Arguments]"===j.call(e)}:function(e){return B("callee",e)}}();var N=!{toString:null}.propertyIsEnumerable("toString"),R=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],q=function(){return arguments.propertyIsEnumerable("length")}(),$=function(e,t){for(var s=0;s<e.length;){if(e[s]===t)return!0;s+=1}return!1},D="function"!=typeof Object.keys||q?n(function(e){if(Object(e)!==e)return[];var t,s,n=[],r=q&&k(e);for(t in e)!B(t,e)||r&&"length"===t||(n[n.length]=t);if(N)for(s=R.length-1;s>=0;)B(t=R[s],e)&&!$(n,t)&&(n[n.length]=t),s-=1;return n}):n(function(e){return Object(e)!==e?[]:Object.keys(e)});const V=D;var L=r(E(["fantasy-land/map","map"],I,function(e,t){switch(Object.prototype.toString.call(t)){case"[object Function]":return M(t.length,function(){return e.call(this,t.apply(this,arguments))});case"[object Object]":return m(function(s,n){return s[n]=e(t[n]),s},{},V(t));default:return S(e,t)}}));const U=L;const H=r(function(e,t){return"function"==typeof t["fantasy-land/ap"]?t["fantasy-land/ap"](e):"function"==typeof e.ap?e.ap(t):"function"==typeof e?function(s){return e(s)(t(s))}:w(function(e,s){return function(e,t){var s;t=t||[];var n=(e=e||[]).length,r=t.length,i=[];for(s=0;s<n;)i[i.length]=e[s],s+=1;for(s=0;s<r;)i[i.length]=t[s],s+=1;return i}(e,U(s,t))},[],e)});var W=r(function(e,t){var s=M(e,t);return M(e,function(){return m(H,U(s,arguments[0]),Array.prototype.slice.call(arguments,1))})});const G=W;var Z=n(function(e){return G(e.length,e)});const J=Z;const z=J(n(function(e){return!e}));function X(e){for(var t,s=[];!(t=e.next()).done;)s.push(t.value);return s}function Q(e,t,s){for(var n=0,r=s.length;n<r;){if(e(t,s[n]))return!0;n+=1}return!1}const K="function"==typeof Object.is?Object.is:function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t};const Y=n(function(e){return null===e?"Null":void 0===e?"Undefined":Object.prototype.toString.call(e).slice(8,-1)});function ee(e,t,s,n){var r=X(e);function i(e,t){return te(e,t,s.slice(),n.slice())}return!Q(function(e,t){return!Q(i,t,e)},X(t),r)}function te(e,t,s,n){if(K(e,t))return!0;var r=Y(e);if(r!==Y(t))return!1;if("function"==typeof e["fantasy-land/equals"]||"function"==typeof t["fantasy-land/equals"])return"function"==typeof e["fantasy-land/equals"]&&e["fantasy-land/equals"](t)&&"function"==typeof t["fantasy-land/equals"]&&t["fantasy-land/equals"](e);if("function"==typeof e.equals||"function"==typeof t.equals)return"function"==typeof e.equals&&e.equals(t)&&"function"==typeof t.equals&&t.equals(e);switch(r){case"Arguments":case"Array":case"Object":if("function"==typeof e.constructor&&"Promise"===function(e){var t=String(e).match(/^function (\w*)/);return null==t?"":t[1]}(e.constructor))return e===t;break;case"Boolean":case"Number":case"String":if(typeof e!=typeof t||!K(e.valueOf(),t.valueOf()))return!1;break;case"Date":if(!K(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(e.source!==t.source||e.global!==t.global||e.ignoreCase!==t.ignoreCase||e.multiline!==t.multiline||e.sticky!==t.sticky||e.unicode!==t.unicode)return!1}for(var i=s.length-1;i>=0;){if(s[i]===e)return n[i]===t;i-=1}switch(r){case"Map":return e.size===t.size&&ee(e.entries(),t.entries(),s.concat([e]),n.concat([t]));case"Set":return e.size===t.size&&ee(e.values(),t.values(),s.concat([e]),n.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var o=V(e);if(o.length!==V(t).length)return!1;var a=s.concat([e]),c=n.concat([t]);for(i=o.length-1;i>=0;){var l=o[i];if(!B(l,t)||!te(t[l],e[l],a,c))return!1;i-=1}return!0}const se=r(function(e,t){return te(e,t,[],[])});const ne=n(function(e){return function(){return e}});const re=ne(void 0);const ie=se(re());const oe=z(ie);function ae(e){return new RegExp(e.source,e.flags?e.flags:(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.sticky?"y":"")+(e.unicode?"u":"")+(e.dotAll?"s":""))}function ce(e,t,s){if(s||(s=new le),function(e){var t=typeof e;return null==e||"object"!=t&&"function"!=t}(e))return e;var n=function(n){var r=s.get(e);if(r)return r;for(var i in s.set(e,n),e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=t?ce(e[i],!0,s):e[i]);return n};switch(Y(e)){case"Object":return n(Object.create(Object.getPrototypeOf(e)));case"Array":return n(Array(e.length));case"Date":return new Date(e.valueOf());case"RegExp":return ae(e);case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":return e.slice();default:return e}}var le=function(){function e(){this.map={},this.length=0}return e.prototype.set=function(e,t){var s=this.hash(e),n=this.map[s];n||(this.map[s]=n=[]),n.push([e,t]),this.length+=1},e.prototype.hash=function(e){var t=[];for(var s in e)t.push(Object.prototype.toString.call(e[s]));return t.join()},e.prototype.get=function(e){if(this.length<=180)for(var t in this.map)for(var s=this.map[t],n=0;n<s.length;n+=1){if((i=s[n])[0]===e)return i[1]}else{var r=this.hash(e);if(s=this.map[r])for(n=0;n<s.length;n+=1){var i;if((i=s[n])[0]===e)return i[1]}}},e}();const ue=n(function(e){return null!=e&&"function"==typeof e.clone?e.clone():ce(e,!0)});class de{get(e){return this[e]}set(e,t){this[e]=t}hasKey(e){return Object.hasOwn(this,e)}keys(){return Object.keys(this)}remove(e){delete this[e]}get isEmpty(){return 0===Object.keys(this).length}get isFrozen(){return Object.isFrozen(this)}freeze(){for(const e of Object.values(this))e instanceof this.Element?e.freeze():(Array.isArray(e)||null!==e&&"object"==typeof e)&&Object.freeze(e);Object.freeze(this)}cloneShallow(){const e=new de;return Object.assign(e,this),e}merge(e){const t=this.cloneShallow();for(const[s,n]of Object.entries(e)){const e=t.get(s);Array.isArray(e)&&Array.isArray(n)?t.set(s,[...e,...n]):t.set(s,n)}return t}cloneDeep(){const e=new de;for(const[t,s]of Object.entries(this))s instanceof this.Element?e.set(t,this.cloneDeepElement(s)):e.set(t,ue(s));return e}}const he=de;const pe=class{key;value;constructor(e,t){this.key=e,this.value=t}toValue(){return{key:this.key?.toValue(),value:this.value?.toValue()}}};class me{elements;constructor(e){this.elements=e??[]}toValue(){return this.elements.map(e=>({key:e.key?.toValue(),value:e.value?.toValue()}))}map(e,t){return this.elements.map(s=>{const n=s.value,r=s.key;if(void 0===n||void 0===r)throw new Error("MemberElement must have both key and value");return void 0!==t?e.call(t,n,r,s):e(n,r,s)})}filter(e,t){const s=this.elements.filter(s=>{const n=s.value,r=s.key;return void 0!==n&&void 0!==r&&(void 0!==t?e.call(t,n,r,s):e(n,r,s))});return new me(s)}reject(e,t){const s=[];for(const n of this.elements){const r=n.value,i=n.key;void 0!==r&&void 0!==i&&(e.call(t,r,i,n)||s.push(n))}return new me(s)}forEach(e,t){this.elements.forEach((s,n)=>{const r=s.value,i=s.key;void 0!==r&&void 0!==i&&(void 0!==t?e.call(t,r,i,s,n):e(r,i,s,n))})}find(e,t){return this.elements.find(s=>{const n=s.value,r=s.key;return void 0!==n&&void 0!==r&&(void 0!==t?e.call(t,n,r,s):e(n,r,s))})}keys(){return this.elements.map(e=>e.key?.toValue()).filter(e=>void 0!==e)}values(){return this.elements.map(e=>e.value?.toValue()).filter(e=>void 0!==e)}get length(){return this.elements.length}get isEmpty(){return 0===this.length}get first(){return this.elements[0]}get(e){return this.elements[e]}push(e){return this.elements.push(e),this}includesKey(e){return this.elements.some(t=>t.key?.equals(e))}[Symbol.iterator](){return this.elements[Symbol.iterator]()}}const _e=me,ge=Object.freeze(new he);class fe{parent;style;startLine;startCharacter;startOffset;endLine;endCharacter;endOffset;_storedElement="element";_content;_meta;_attributes;constructor(e,t,s){void 0!==t&&(this.meta=t),void 0!==s&&(this.attributes=s),void 0!==e&&(this.content=e)}get element(){return this._storedElement}set element(e){this._storedElement=e}get content(){return this._content}set content(e){if(e instanceof fe)this._content=e;else if(null!=e&&"string"!=typeof e&&"number"!=typeof e&&"boolean"!=typeof e&&"bigint"!=typeof e&&"symbol"!=typeof e)if(e instanceof pe)this._content=e;else if(e instanceof _e)this._content=e.elements;else if(Array.isArray(e))this._content=e.map(e=>this.refract(e));else{if("object"!=typeof e)throw new Error("Cannot set content to value of type "+typeof e);this._content=Object.entries(e).map(([e,t])=>new this.MemberElement(e,t))}else this._content=e}get meta(){if(!this._meta){if(this.isFrozen)return ge;this._meta=new he}return this._meta}set meta(e){if(e instanceof he)this._meta=e;else if(e&&"object"==typeof e){const t=new he;Object.assign(t,e),this._meta=t}}get attributes(){if(!this._attributes){if(this.isFrozen){const e=new this.ObjectElement;return e.freeze(),e}this._attributes=new this.ObjectElement}return this._attributes}set attributes(e){e instanceof fe?this._attributes=e:this.attributes.set(e??{})}get id(){if(!this.hasMetaProperty("id")){if(this.isFrozen)return"";this.setMetaProperty("id","")}return this.meta.get("id")}set id(e){this.setMetaProperty("id",e)}get classes(){if(!this.hasMetaProperty("classes")){if(this.isFrozen)return[];this.setMetaProperty("classes",[])}return this.meta.get("classes")}set classes(e){this.setMetaProperty("classes",e)}get links(){if(!this.hasMetaProperty("links")){if(this.isFrozen){const e=new this.ArrayElement;return e.freeze(),e}this.setMetaProperty("links",new this.ArrayElement)}return this.meta.get("links")}set links(e){this.setMetaProperty("links",e)}get children(){const{_content:e}=this;if(Array.isArray(e))return e;if(e instanceof pe){const t=[];return e.key&&t.push(e.key),e.value&&t.push(e.value),t}return e instanceof fe?[e]:[]}get isFrozen(){return Object.isFrozen(this)}freeze(){if(!this.isFrozen){this._meta&&this._meta.freeze(),this._attributes&&(this._attributes.parent=this,this._attributes.freeze());for(const e of this.children)e.parent=this,e.freeze();Array.isArray(this._content)&&Object.freeze(this._content),Object.freeze(this)}}toValue(){const{_content:e}=this;return e instanceof fe||e instanceof pe?e.toValue():Array.isArray(e)?e.map(e=>e.toValue()):e}equals(e){const t=e instanceof fe?e.toValue():e;return se(this.toValue(),t)}primitive(){}set(e){return this.content=e,this}toRef(e){const t=this.id;if(""===t)throw new Error("Cannot create reference to an element without an ID");const s=new this.RefElement(t);return"string"==typeof e&&(s.path=this.refract(e)),s}getMetaProperty(e,t){return this.hasMetaProperty(e)?this.meta.get(e):t}setMetaProperty(e,t){this.meta.set(e,t)}hasMetaProperty(e){return void 0!==this._meta&&this._meta.hasKey(e)}get isMetaEmpty(){return void 0===this._meta||this._meta.isEmpty}getAttributesProperty(e,t){if(!this.hasAttributesProperty(e)){if(this.isFrozen){const e=this.refract(t);return e.freeze(),e}this.attributes.set(e,t)}return this.attributes.get(e)}setAttributesProperty(e,t){this.attributes.set(e,t)}hasAttributesProperty(e){return!this.isAttributesEmpty&&this.attributes.hasKey(e)}get isAttributesEmpty(){return void 0===this._attributes||this.attributes.isEmpty}}const ye=fe;const be=class extends ye{constructor(e,t,s){super(e,t,s),this.element="string"}primitive(){return"string"}get length(){return this.content?.length??0}};class xe extends be{constructor(e,t,s){super(e,t,s),this.element="sourceMap"}static transfer(e,t){t.startLine=e.startLine,t.startCharacter=e.startCharacter,t.startOffset=e.startOffset,t.endLine=e.endLine,t.endCharacter=e.endCharacter,t.endOffset=e.endOffset}static from(e){const{startLine:t,startCharacter:s,startOffset:n,endLine:r,endCharacter:i,endOffset:o}=e;if("number"!=typeof t||"number"!=typeof s||"number"!=typeof n||"number"!=typeof r||"number"!=typeof i||"number"!=typeof o)return;const a="sm1:"+[t,s,n,r,i,o].map(we).join("");const c=new xe(a);return c.startLine=t,c.startCharacter=s,c.startOffset=n,c.endLine=r,c.endCharacter=i,c.endOffset=o,c}applyTo(e){this.content&&([e.startLine,e.startCharacter,e.startOffset,e.endLine,e.endCharacter,e.endOffset]=function(e){const t=e.startsWith("sm1:")?e.slice(4):e,s=[];let n=0;for(let e=0;e<6;e++){const e=Ee(t,n);s.push(e.value),n=e.next}return s}(this.content))}}const ve="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function we(e){let t=e>>>0,s="";do{let e=31&t;t>>>=5,0!==t&&(e|=32),s+=ve[e]}while(0!==t);return s}function Ee(e,t=0){let s=0,n=0,r=t;for(;;){const t=e[r++],i=ve.indexOf(t);if(-1===i)throw new Error(`Invalid Base64 VLQ char: ${t}`);if(s|=(31&i)<<n,n+=5,!!!(32&i))break}return{value:s>>>0,next:r}}const Se=xe;class Oe extends ye{constructor(e,t,s){super(e||[],t,s)}get length(){return this._content.length}get isEmpty(){return 0===this.length}get first(){return this._content[0]}get second(){return this._content[1]}get last(){return this._content.at(-1)}push(...e){for(const t of e)this._content.push(this.refract(t));return this}shift(){return this._content.shift()}unshift(e){this._content.unshift(this.refract(e))}includes(e){return this._content.some(t=>t.equals(e))}findElements(e,t){const s=t||{},n=!!s.recursive,r=void 0===s.results?[]:s.results;for(let t=0;t<this._content.length;t+=1){const s=this._content[t],i=s;n&&"function"==typeof i.findElements&&i.findElements(e,{results:r,recursive:n}),e(s,t,void 0)&&r.push(s)}return r}find(e){const t=this.findElements(e,{recursive:!0});return new this.ArrayElement(t)}findByElement(e){return this.find(t=>t.element===e)}findByClass(e){return this.find(t=>{const s=t.classes;return"function"==typeof s.includes&&s.includes(e)})}getById(e){return this.find(t=>t.id===e).first}concat(e){return new(0,this.constructor)(this._content.concat(e._content))}[Symbol.iterator](){return this._content[Symbol.iterator]()}}const Ae=Oe;const Ce=class extends ye{constructor(e,t,s,n){super(new pe,s,n),this.element="member",void 0!==e&&(this.key=e),arguments.length>=2&&(this.value=t)}primitive(){return"member"}get key(){return this._content.key}set key(e){this._content.key=this.refract(e)}get value(){return this._content.value}set value(e){this._content.value=void 0===e?void 0:this.refract(e)}};const Ie=class extends Ae{constructor(e,t,s){super(e||[],t,s),this.element="object"}primitive(){return"object"}toValue(){return this._content.reduce((e,t)=>(e[t.key.toValue()]=t.value?t.value.toValue():void 0,e),{})}get(e){const t=this.getMember(e);if(t)return t.value}getValue(e){const t=this.get(e);if(t)return t.toValue()}getMember(e){if(void 0!==e)return this._content.find(t=>t.key.toValue()===e)}remove(e){let t=null;return this.content=this._content.filter(s=>s.key.toValue()!==e||(t=s,!1)),t}getKey(e){const t=this.getMember(e);if(t)return t.key}set(e,t){if("string"==typeof e){const s=this.getMember(e);s?s.value=t:this._content.push(new Ce(e,t))}else if("object"==typeof e&&!Array.isArray(e))for(const t of Object.keys(e))this.set(t,e[t]);return this}keys(){return this._content.map(e=>e.key.toValue())}values(){return this._content.map(e=>e.value.toValue())}hasKey(e){return this._content.some(t=>t.key.equals(e))}items(){return this._content.map(e=>[e.key.toValue(),e.value.toValue()])}map(e,t){return this._content.map(s=>e.call(t,s.value,s.key,s))}compactMap(e,t){const s=[];return this.forEach((n,r,i)=>{const o=e.call(t,n,r,i);o&&s.push(o)}),s}filter(e,t){return new _e(this._content).filter(e,t)}reject(e,t){const s=[];for(const n of this._content)e.call(t,n.value,n.key,n)||s.push(n);return new _e(s)}forEach(e,t){this._content.forEach(s=>e.call(t,s.value,s.key,s))}reduce(e,t){let s,n;void 0!==t?(s=0,n=this.refract(t)):(s=1,n=this._content[0]?.value);for(let t=s;t<this._content.length;t+=1){const s=this._content[t],r=e(n,s.value,s.key,s,this);n=void 0===r?r:this.refract(r)}return n}empty(){return new this.constructor([])}};class Te extends Ie{constructor(e,t,s){super(e,t,s),this.element="__styles__"}static transfer(e,t){t.style=e.style}static from(e){if(e.style)return new Te(e.style)}applyTo(e){e.style=this.toValue()}}const Pe=Te;const Fe=class{namespace;constructor(e){this.namespace=e||new this.Namespace}serialise(e){if(!(e instanceof this.namespace.elements.Element))throw new TypeError(`Given element \`${e}\` is not an Element instance`);const t={element:e.element};if(!e.isMetaEmpty){const s=this.serialiseMeta(e);s&&(t.meta=s.meta,s.rawKeys.length>0&&(t.__meta_raw__=s.rawKeys))}if(e.isAttributesEmpty||(t.attributes=this.serialiseObject(e.attributes)),!(e instanceof Se)){const s=Se.from(e);s&&(t.meta||(t.meta={}),t.meta.__mappings__=this.serialise(s))}if(!(e instanceof Pe)){const s=Pe.from(e);s&&(t.meta||(t.meta={}),t.meta.__styles__=this.serialise(s))}const s=this.serialiseContent(e.content);return void 0!==s&&(t.content=s),t}deserialise(e){if(!e.element)throw new Error("Given value is not an object containing an element name");const t=new(this.namespace.getElementClass(e.element));let s,n;t.element!==e.element&&(t.element=e.element);let r=e.meta;if(e.meta?.__mappings__||e.meta?.__styles__){const{__mappings__:t,__styles__:i,...o}=e.meta;s=t,n=i,r=Object.keys(o).length>0?o:void 0}const i=e.__meta_raw__?new Set(e.__meta_raw__):void 0;if(r)for(const[e,s]of Object.entries(r)){const n=this.deserialise(s);t.setMetaProperty(e,i?.has(e)?n.toValue():n)}if(s){this.deserialise(s).applyTo(t)}if(n){this.deserialise(n).applyTo(t)}e.attributes&&this.deserialiseObject(e.attributes,t.attributes);const o=this.deserialiseContent(e.content);return void 0===o&&null!==t.content||(t.content=o),t}serialiseContent(e){if(e instanceof this.namespace.elements.Element)return this.serialise(e);if(e instanceof this.namespace.KeyValuePair){const t=e,s={key:this.serialise(t.key)};return t.value&&(s.value=this.serialise(t.value)),s}if(e&&Array.isArray(e)){if(0===e.length)return;return e.map(e=>this.serialise(e))}return e}deserialiseContent(e){if(e){if(e.element)return this.deserialise(e);if(e.key){const t=new this.namespace.KeyValuePair(this.deserialise(e.key));return e.value&&(t.value=this.deserialise(e.value)),t}if(Array.isArray(e))return e.map(e=>this.deserialise(e))}return e}serialiseMeta(e){const t={},s=[];let n=!1;for(const[r,i]of Object.entries(e.meta))if(i instanceof this.namespace.elements.Element)t[r]=this.serialise(i),n=!0;else if(void 0!==i){const o=e.refract(i);t[r]=this.serialise(o),s.push(r),n=!0}return n?{meta:t,rawKeys:s}:void 0}serialiseObject(e){const t={};if(e.forEach((e,s)=>{e&&(t[s.toValue()]=this.serialise(e))}),0!==Object.keys(t).length)return t}deserialiseObject(e,t){Object.keys(e).forEach(s=>{t.set(s,this.deserialise(e[s]))})}};const Me=class extends ye{constructor(e,t,s){super(e??null,t,s),this.element="null"}primitive(){return"null"}set(e){throw new Error("Cannot set the value of null")}};const Be=class extends ye{constructor(e,t,s){super(e,t,s),this.element="number"}primitive(){return"number"}};const je=class extends ye{constructor(e,t,s){super(e,t,s),this.element="boolean"}primitive(){return"boolean"}};const ke=class extends Ae{constructor(e,t,s){super(e||[],t,s),this.element="array"}primitive(){return"array"}get(e){return this._content[e]}getValue(e){const t=this.get(e);if(t)return t.toValue()}set(e,t){return"number"==typeof e&&void 0!==t?this._content[e]=this.refract(t):this.content=e,this}remove(e){return this._content.splice(e,1)[0]??null}map(e,t){return this._content.map(e,t)}flatMap(e,t){return this._content.flatMap(e,t)}compactMap(e,t){const s=[];for(const n of this._content){const r=e.call(t,n);r&&s.push(r)}return s}filter(e,t){const s=this._content.filter(e,t);return new this.constructor(s)}reject(e,t){const s=[];for(const n of this._content)e.call(t,n)||s.push(n);return new this.constructor(s)}reduce(e,t){let s,n;void 0!==t?(s=0,n=this.refract(t)):(s=1,n=this.first);for(let t=s;t<this.length;t+=1){const s=e(n,this._content[t],t,this);n=void 0===s?s:this.refract(s)}return n}forEach(e,t){this._content.forEach((s,n)=>{e.call(t,s,n)})}empty(){return new this.constructor([])}};const Ne=class extends ye{constructor(e,t,s){super(e||[],t,s),this.element="ref",this.path||(this.path="element")}get path(){if(this.hasAttributesProperty("path"))return this.attributes.get("path")}set path(e){this.attributes.set("path",e)}};const Re=class extends ye{constructor(e,t,s){super(e||[],t,s),this.element="link"}get relation(){if(this.hasAttributesProperty("relation"))return this.attributes.get("relation")}set relation(e){this.attributes.set("relation",e)}get href(){if(this.hasAttributesProperty("href"))return this.attributes.get("href")}set href(e){this.attributes.set("href",e)}},qe=e=>null===e,$e=e=>"string"==typeof e,De=e=>"number"==typeof e,Ve=e=>"boolean"==typeof e,Le=e=>null!==e&&"object"==typeof e;class Ue{elementMap={};elementDetection=[];Element;KeyValuePair;_elements;_attributeElementKeys=[];_attributeElementArrayKeys=[];constructor(e){this.Element=ye,this.KeyValuePair=pe,e&&e.noDefault||this.useDefault()}use(e){return e.namespace&&e.namespace({base:this}),e.load&&e.load({base:this}),this}useDefault(){return this.register("null",Me).register("string",be).register("number",Be).register("boolean",je).register("array",ke).register("object",Ie).register("member",Ce).register("ref",Ne).register("link",Re).register("sourceMap",Se),this.detect(qe,Me,!1).detect($e,be,!1).detect(De,Be,!1).detect(Ve,je,!1).detect(Array.isArray,ke,!1).detect(Le,Ie,!1),this}register(e,t){return this._elements=void 0,this.elementMap[e]=t,this}unregister(e){return this._elements=void 0,delete this.elementMap[e],this}detect(e,t,s){return void 0===s||s?this.elementDetection.unshift([e,t]):this.elementDetection.push([e,t]),this}toElement(e){if(e instanceof this.Element)return e;let t;for(const[s,n]of this.elementDetection)if(s(e)){t=new n(e);break}return t}getElementClass(e){const t=this.elementMap[e];return void 0===t?this.Element:t}fromRefract(e){return this.serialiser.deserialise(e)}toRefract(e){return this.serialiser.serialise(e)}get elements(){return void 0===this._elements&&(this._elements={Element:this.Element},Object.keys(this.elementMap).forEach(e=>{const t=e[0].toUpperCase()+e.substring(1);this._elements[t]=this.elementMap[e]})),this._elements}get serialiser(){return new Fe(this)}}Fe.prototype.Namespace=Ue;const He=Ue;class We extends AggregateError{constructor(e,t,s){super(e,t,s),this.name=this.constructor.name,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}const Ge=We;class Ze extends Error{static[Symbol.hasInstance](e){return super[Symbol.hasInstance](e)||Function.prototype[Symbol.hasInstance].call(Ge,e)}constructor(e,t){super(e,t),this.name=this.constructor.name,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}const Je=Ze;const ze=class extends Je{},Xe=e=>e instanceof ye,Qe=e=>e instanceof be,Ke=e=>e instanceof Be,Ye=e=>e instanceof Me,et=e=>e instanceof je,tt=e=>e instanceof ke,st=e=>e instanceof Ie,nt=e=>e instanceof Ce,rt=e=>st(e)&&"object"===e.element||tt(e)&&"array"===e.element||et(e)&&"boolean"===e.element||Ke(e)&&"number"===e.element||Qe(e)&&"string"===e.element||Ye(e)&&"null"===e.element||nt(e)&&"member"===e.element,it=e=>void 0!==e.style,ot=e=>"number"==typeof e.startLine&&"number"==typeof e.startCharacter&&"number"==typeof e.startOffset&&"number"==typeof e.endLine&&"number"==typeof e.endCharacter&&"number"==typeof e.endOffset,at=(e,t)=>0===t.length||!!Xe(e)&&(!e.isMetaEmpty&&(!!e.hasMetaProperty("classes")&&t.every(t=>e.classes.includes(t))));const ct=class extends ke{constructor(e,t,s){super(e,t,s),this.element="parseResult"}get api(){return this.filter(e=>at(e,["api"])).first}get results(){return this.filter(e=>at(e,["result"]))}get result(){return this.results.first}get annotations(){return this.filter(e=>"annotation"===e.element)}get warnings(){return this.filter(e=>"annotation"===e.element&&at(e,["warning"]))}get errors(){return this.filter(e=>"annotation"===e.element&&at(e,["error"]))}get isEmpty(){return 0===this.reject(e=>"annotation"===e.element).length}replaceResult(e){const{result:t}=this;if(void 0===t)return!1;const s=this._content,n=s.findIndex(e=>e===t);return-1!==n&&(s[n]=e,!0)}};const lt=class extends Je{constructor(e,t){if(super(e,t),null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}};const ut=class extends lt{value;constructor(e,t){super(e,t),void 0!==t&&(this.value=t.value)}};const dt=class extends ut{};const ht=class extends ut{},pt=(e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const r=ft(e);s.set(e,r);const{content:i}=e;return Array.isArray(i)?r.content=i.map(e=>pt(e,n)):Xe(i)?r.content=pt(i,n):r.content=i instanceof pe?mt(i,n):i,r},mt=(e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const{key:r,value:i}=e,o=void 0!==r?pt(r,n):void 0,a=void 0!==i?pt(i,n):void 0,c=new pe(o,a);return s.set(e,c),c},_t=(e,t={})=>{if(e instanceof pe)return mt(e,t);if(e instanceof _e)return((e,t)=>{const{visited:s=new WeakMap}=t,n={...t,visited:s};if(s.has(e))return s.get(e);const r=[...e].map(e=>pt(e,n)),i=new _e(r);return s.set(e,i),i})(e,t);if(Xe(e))return pt(e,t);throw new dt("Value provided to cloneDeep function couldn't be cloned",{value:e})};_t.safe=e=>{try{return _t(e)}catch{return e}};const gt=e=>{const{key:t,value:s}=e;return new pe(t,s)},ft=e=>{const t=new(0,e.constructor);t.element=e.element,e.isMetaEmpty||(t.meta=e.meta.cloneDeep()),e.isAttributesEmpty||(t.attributes=_t(e.attributes)),ot(e)&&Se.transfer(e,t),it(e)&&(t.style=ue(e.style));const{content:s}=e;return Xe(s)?t.content=ft(s):Array.isArray(s)?t.content=[...s]:t.content=s instanceof pe?gt(s):s,t},yt=e=>{if(e instanceof pe)return gt(e);if(e instanceof _e)return(e=>{const t=[...e];return new _e(t)})(e);if(Xe(e))return ft(e);throw new ht("Value provided to cloneShallow function couldn't be cloned",{value:e})};function bt(e){return void 0===e?new Me:xt(e)}function xt(e){if(e instanceof ye)return e;if("string"==typeof e)return new be(e);if("number"==typeof e)return new Be(e);if("boolean"==typeof e)return new je(e);if(null===e)return new Me;if(Array.isArray(e))return new ke(e.map(bt));if("object"==typeof e)return new Ie(e);throw new Error("Cannot refract value of type "+typeof e)}yt.safe=e=>{try{return yt(e)}catch{return e}},ye.prototype.ObjectElement=Ie,ye.prototype.ArrayElement=ke,ye.prototype.RefElement=Ne,ye.prototype.MemberElement=Ce,ye.prototype.refract=xt,he.prototype.Element=ye,he.prototype.cloneDeepElement=e=>_t(e);var vt=__webpack_require__(333);const wt=new Uint8Array([0,97,115,109,1,0,0,0,0,16,8,100,121,108,105,110,107,46,48,1,5,156,91,4,30,0,1,179,1,23,96,1,127,1,127,96,2,127,127,1,127,96,1,127,0,96,3,127,127,127,0,96,3,127,127,127,1,127,96,2,127,127,0,96,4,127,127,127,127,1,127,96,5,127,127,127,127,127,0,96,4,127,127,127,127,0,96,0,0,96,5,127,127,127,127,127,1,127,96,0,1,127,96,8,127,127,127,127,127,127,127,127,1,127,96,7,127,127,127,127,127,127,127,0,96,6,127,124,127,127,127,127,1,127,96,16,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,0,96,6,127,127,127,127,127,127,0,96,2,126,127,1,127,96,7,127,127,127,127,127,127,127,1,127,96,2,124,127,1,124,96,4,127,127,127,127,1,126,96,4,127,126,127,127,1,127,96,3,127,126,127,1,126,2,219,3,17,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,8,102,100,95,119,114,105,116,101,0,6,3,101,110,118,22,101,109,115,99,114,105,112,116,101,110,95,114,101,115,105,122,101,95,104,101,97,112,0,0,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,7,102,100,95,115,101,101,107,0,21,3,101,110,118,9,95,97,98,111,114,116,95,106,115,0,9,22,119,97,115,105,95,115,110,97,112,115,104,111,116,95,112,114,101,118,105,101,119,49,8,102,100,95,99,108,111,115,101,0,0,3,101,110,118,35,116,114,101,101,95,115,105,116,116,101,114,95,113,117,101,114,121,95,112,114,111,103,114,101,115,115,95,99,97,108,108,98,97,99,107,0,0,3,101,110,118,29,116,114,101,101,95,115,105,116,116,101,114,95,112,114,111,103,114,101,115,115,95,99,97,108,108,98,97,99,107,0,1,3,101,110,118,26,116,114,101,101,95,115,105,116,116,101,114,95,112,97,114,115,101,95,99,97,108,108,98,97,99,107,0,7,3,101,110,118,24,116,114,101,101,95,115,105,116,116,101,114,95,108,111,103,95,99,97,108,108,98,97,99,107,0,5,3,101,110,118,15,95,95,115,116,97,99,107,95,112,111,105,110,116,101,114,3,127,1,3,101,110,118,13,95,95,109,101,109,111,114,121,95,98,97,115,101,3,127,0,3,101,110,118,12,95,95,116,97,98,108,101,95,98,97,115,101,3,127,0,7,71,79,84,46,109,101,109,11,95,95,115,116,97,99,107,95,108,111,119,3,127,1,7,71,79,84,46,109,101,109,12,95,95,115,116,97,99,107,95,104,105,103,104,3,127,1,7,71,79,84,46,109,101,109,11,95,95,104,101,97,112,95,98,97,115,101,3,127,1,3,101,110,118,6,109,101,109,111,114,121,2,1,128,4,128,128,2,3,101,110,118,25,95,95,105,110,100,105,114,101,99,116,95,102,117,110,99,116,105,111,110,95,116,97,98,108,101,1,112,0,30,3,149,2,147,2,5,5,6,0,2,3,7,5,5,4,0,5,5,2,7,3,16,3,4,0,3,6,10,3,0,0,17,4,4,5,3,2,2,1,4,0,4,1,1,12,1,2,4,0,5,8,7,4,2,1,3,8,0,0,5,2,5,0,9,1,3,1,0,4,11,2,2,8,12,3,5,1,6,3,4,7,13,7,8,3,3,0,0,5,1,1,6,8,0,18,19,4,0,0,0,4,5,4,4,4,0,20,0,5,7,5,10,4,8,5,1,1,3,3,5,3,1,1,1,1,1,4,4,4,4,0,0,0,10,1,1,2,3,1,1,5,2,0,0,0,0,1,0,4,4,0,3,4,0,0,11,0,2,0,0,0,0,5,4,0,5,14,4,1,4,22,0,15,0,2,15,0,0,0,0,0,0,0,0,13,1,2,2,0,0,0,2,2,2,2,2,9,2,2,2,0,2,2,2,2,5,5,1,5,0,0,0,2,2,5,1,1,0,2,0,0,0,0,0,2,2,0,0,0,0,0,0,5,0,0,0,0,0,1,0,5,2,2,2,2,5,2,2,2,2,5,2,2,1,1,2,0,6,10,0,3,5,9,11,4,4,4,0,2,0,4,0,1,1,1,1,0,0,9,9,6,57,8,127,1,65,200,211,0,11,127,1,65,192,211,0,11,127,1,65,204,211,0,11,127,1,65,196,211,0,11,127,1,65,136,213,0,11,127,1,65,144,213,0,11,127,1,65,148,219,0,11,127,1,65,152,219,0,11,7,134,33,152,1,17,95,95,119,97,115,109,95,99,97,108,108,95,99,116,111,114,115,0,155,2,6,109,97,108,108,111,99,0,34,6,99,97,108,108,111,99,0,42,7,114,101,97,108,108,111,99,0,93,4,102,114,101,101,0,50,13,116,115,95,114,97,110,103,101,95,101,100,105,116,0,79,6,109,101,109,99,109,112,0,18,24,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,99,111,117,110,116,0,153,2,23,116,115,95,108,97,110,103,117,97,103,101,95,115,116,97,116,101,95,99,111,117,110,116,0,152,2,23,116,115,95,108,97,110,103,117,97,103,101,95,97,98,105,95,118,101,114,115,105,111,110,0,147,2,16,116,115,95,108,97,110,103,117,97,103,101,95,110,97,109,101,0,143,2,23,116,115,95,108,97,110,103,117,97,103,101,95,102,105,101,108,100,95,99,111,117,110,116,0,135,2,22,116,115,95,108,97,110,103,117,97,103,101,95,110,101,120,116,95,115,116,97,116,101,0,43,23,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,110,97,109,101,0,242,1,27,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,102,111,114,95,110,97,109,101,0,30,7,115,116,114,110,99,109,112,0,27,23,116,115,95,108,97,110,103,117,97,103,101,95,115,121,109,98,111,108,95,116,121,112,101,0,68,29,116,115,95,108,97,110,103,117,97,103,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,105,100,0,211,1,25,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,110,101,119,0,189,1,28,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,100,101,108,101,116,101,0,178,1,33,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,114,101,115,101,116,95,115,116,97,116,101,0,172,1,27,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,114,101,115,101,116,0,171,1,26,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,110,101,120,116,0,168,1,36,116,115,95,108,111,111,107,97,104,101,97,100,95,105,116,101,114,97,116,111,114,95,99,117,114,114,101,110,116,95,115,121,109,98,111,108,0,165,1,13,116,115,95,112,111,105,110,116,95,101,100,105,116,0,141,1,16,116,115,95,112,97,114,115,101,114,95,100,101,108,101,116,101,0,140,1,15,116,115,95,112,97,114,115,101,114,95,114,101,115,101,116,0,41,22,116,115,95,112,97,114,115,101,114,95,115,101,116,95,108,97,110,103,117,97,103,101,0,139,1,29,116,115,95,112,97,114,115,101,114,95,115,101,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,0,56,12,116,115,95,113,117,101,114,121,95,110,101,119,0,137,1,15,116,115,95,113,117,101,114,121,95,100,101,108,101,116,101,0,75,8,105,115,119,115,112,97,99,101,0,102,8,105,115,119,97,108,110,117,109,0,19,22,116,115,95,113,117,101,114,121,95,112,97,116,116,101,114,110,95,99,111,117,110,116,0,136,1,22,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,99,111,117,110,116,0,135,1,21,116,115,95,113,117,101,114,121,95,115,116,114,105,110,103,95,99,111,117,110,116,0,134,1,28,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,110,97,109,101,95,102,111,114,95,105,100,0,133,1,34,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,95,113,117,97,110,116,105,102,105,101,114,95,102,111,114,95,105,100,0,132,1,28,116,115,95,113,117,101,114,121,95,115,116,114,105,110,103,95,118,97,108,117,101,95,102,111,114,95,105,100,0,131,1,31,116,115,95,113,117,101,114,121,95,112,114,101,100,105,99,97,116,101,115,95,102,111,114,95,112,97,116,116,101,114,110,0,130,1,31,116,115,95,113,117,101,114,121,95,115,116,97,114,116,95,98,121,116,101,95,102,111,114,95,112,97,116,116,101,114,110,0,129,1,29,116,115,95,113,117,101,114,121,95,101,110,100,95,98,121,116,101,95,102,111,114,95,112,97,116,116,101,114,110,0,128,1,26,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,114,111,111,116,101,100,0,127,29,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,110,111,110,95,108,111,99,97,108,0,126,38,116,115,95,113,117,101,114,121,95,105,115,95,112,97,116,116,101,114,110,95,103,117,97,114,97,110,116,101,101,100,95,97,116,95,115,116,101,112,0,125,24,116,115,95,113,117,101,114,121,95,100,105,115,97,98,108,101,95,99,97,112,116,117,114,101,0,124,24,116,115,95,113,117,101,114,121,95,100,105,115,97,98,108,101,95,112,97,116,116,101,114,110,0,123,12,116,115,95,116,114,101,101,95,99,111,112,121,0,145,2,14,116,115,95,116,114,101,101,95,100,101,108,101,116,101,0,144,2,7,116,115,95,105,110,105,116,0,139,2,18,116,115,95,112,97,114,115,101,114,95,110,101,119,95,119,97,115,109,0,138,2,28,116,115,95,112,97,114,115,101,114,95,101,110,97,98,108,101,95,108,111,103,103,101,114,95,119,97,115,109,0,137,2,20,116,115,95,112,97,114,115,101,114,95,112,97,114,115,101,95,119,97,115,109,0,134,2,30,116,115,95,112,97,114,115,101,114,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,131,2,30,116,115,95,108,97,110,103,117,97,103,101,95,116,121,112,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,130,2,32,116,115,95,108,97,110,103,117,97,103,101,95,116,121,112,101,95,105,115,95,118,105,115,105,98,108,101,95,119,97,115,109,0,129,2,25,116,115,95,108,97,110,103,117,97,103,101,95,109,101,116,97,100,97,116,97,95,119,97,115,109,0,128,2,27,116,115,95,108,97,110,103,117,97,103,101,95,115,117,112,101,114,116,121,112,101,115,95,119,97,115,109,0,255,1,25,116,115,95,108,97,110,103,117,97,103,101,95,115,117,98,116,121,112,101,115,95,119,97,115,109,0,254,1,22,116,115,95,116,114,101,101,95,114,111,111,116,95,110,111,100,101,95,119,97,115,109,0,253,1,34,116,115,95,116,114,101,101,95,114,111,111,116,95,110,111,100,101,95,119,105,116,104,95,111,102,102,115,101,116,95,119,97,115,109,0,252,1,17,116,115,95,116,114,101,101,95,101,100,105,116,95,119,97,115,109,0,251,1,28,116,115,95,116,114,101,101,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,250,1,31,116,115,95,116,114,101,101,95,103,101,116,95,99,104,97,110,103,101,100,95,114,97,110,103,101,115,95,119,97,115,109,0,249,1,23,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,110,101,119,95,119,97,115,109,0,248,1,24,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,111,112,121,95,119,97,115,109,0,247,1,26,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,100,101,108,101,116,101,95,119,97,115,109,0,246,1,25,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,114,101,115,101,116,95,119,97,115,109,0,245,1,28,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,114,101,115,101,116,95,116,111,95,119,97,115,109,0,244,1,36,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,119,97,115,109,0,243,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,108,97,115,116,95,99,104,105,108,100,95,119,97,115,109,0,241,1,46,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,240,1,49,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,239,1,37,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,110,101,120,116,95,115,105,98,108,105,110,103,95,119,97,115,109,0,238,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,112,114,101,118,105,111,117,115,95,115,105,98,108,105,110,103,95,119,97,115,109,0,237,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,100,101,115,99,101,110,100,97,110,116,95,119,97,115,109,0,236,1,31,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,103,111,116,111,95,112,97,114,101,110,116,95,119,97,115,109,0,235,1,40,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,116,121,112,101,95,105,100,95,119,97,115,109,0,234,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,115,116,97,116,101,95,105,100,95,119,97,115,109,0,233,1,41,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,232,1,43,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,115,95,109,105,115,115,105,110,103,95,119,97,115,109,0,231,1,35,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,105,100,95,119,97,115,109,0,230,1,34,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,115,116,97,114,116,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,229,1,32,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,101,110,100,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,228,1,31,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,115,116,97,114,116,95,105,110,100,101,120,95,119,97,115,109,0,227,1,29,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,101,110,100,95,105,110,100,101,120,95,119,97,115,109,0,226,1,36,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,225,1,33,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,100,101,112,116,104,95,119,97,115,109,0,224,1,44,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,100,101,115,99,101,110,100,97,110,116,95,105,110,100,101,120,95,119,97,115,109,0,223,1,32,116,115,95,116,114,101,101,95,99,117,114,115,111,114,95,99,117,114,114,101,110,116,95,110,111,100,101,95,119,97,115,109,0,222,1,19,116,115,95,110,111,100,101,95,115,121,109,98,111,108,95,119,97,115,109,0,221,1,33,116,115,95,110,111,100,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,99,104,105,108,100,95,119,97,115,109,0,220,1,39,116,115,95,110,111,100,101,95,102,105,101,108,100,95,110,97,109,101,95,102,111,114,95,110,97,109,101,100,95,99,104,105,108,100,95,119,97,115,109,0,219,1,33,116,115,95,110,111,100,101,95,99,104,105,108,100,114,101,110,95,98,121,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,218,1,33,116,115,95,110,111,100,101,95,102,105,114,115,116,95,99,104,105,108,100,95,102,111,114,95,98,121,116,101,95,119,97,115,109,0,217,1,39,116,115,95,110,111,100,101,95,102,105,114,115,116,95,110,97,109,101,100,95,99,104,105,108,100,95,102,111,114,95,98,121,116,101,95,119,97,115,109,0,216,1,27,116,115,95,110,111,100,101,95,103,114,97,109,109,97,114,95,115,121,109,98,111,108,95,119,97,115,109,0,215,1,24,116,115,95,110,111,100,101,95,99,104,105,108,100,95,99,111,117,110,116,95,119,97,115,109,0,214,1,30,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,95,99,111,117,110,116,95,119,97,115,109,0,213,1,18,116,115,95,110,111,100,101,95,99,104,105,108,100,95,119,97,115,109,0,212,1,24,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,95,119,97,115,109,0,210,1,30,116,115,95,110,111,100,101,95,99,104,105,108,100,95,98,121,95,102,105,101,108,100,95,105,100,95,119,97,115,109,0,209,1,25,116,115,95,110,111,100,101,95,110,101,120,116,95,115,105,98,108,105,110,103,95,119,97,115,109,0,208,1,25,116,115,95,110,111,100,101,95,112,114,101,118,95,115,105,98,108,105,110,103,95,119,97,115,109,0,207,1,31,116,115,95,110,111,100,101,95,110,101,120,116,95,110,97,109,101,100,95,115,105,98,108,105,110,103,95,119,97,115,109,0,206,1,31,116,115,95,110,111,100,101,95,112,114,101,118,95,110,97,109,101,100,95,115,105,98,108,105,110,103,95,119,97,115,109,0,205,1,29,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,99,111,117,110,116,95,119,97,115,109,0,204,1,19,116,115,95,110,111,100,101,95,112,97,114,101,110,116,95,119,97,115,109,0,203,1,34,116,115,95,110,111,100,101,95,99,104,105,108,100,95,119,105,116,104,95,100,101,115,99,101,110,100,97,110,116,95,119,97,115,109,0,202,1,33,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,201,1,39,116,115,95,110,111,100,101,95,110,97,109,101,100,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,105,110,100,101,120,95,119,97,115,109,0,199,1,36,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,198,1,42,116,115,95,110,111,100,101,95,110,97,109,101,100,95,100,101,115,99,101,110,100,97,110,116,95,102,111,114,95,112,111,115,105,116,105,111,110,95,119,97,115,109,0,197,1,24,116,115,95,110,111,100,101,95,115,116,97,114,116,95,112,111,105,110,116,95,119,97,115,109,0,196,1,22,116,115,95,110,111,100,101,95,101,110,100,95,112,111,105,110,116,95,119,97,115,109,0,195,1,24,116,115,95,110,111,100,101,95,115,116,97,114,116,95,105,110,100,101,120,95,119,97,115,109,0,194,1,22,116,115,95,110,111,100,101,95,101,110,100,95,105,110,100,101,120,95,119,97,115,109,0,193,1,22,116,115,95,110,111,100,101,95,116,111,95,115,116,114,105,110,103,95,119,97,115,109,0,192,1,21,116,115,95,110,111,100,101,95,99,104,105,108,100,114,101,110,95,119,97,115,109,0,191,1,27,116,115,95,110,111,100,101,95,110,97,109,101,100,95,99,104,105,108,100,114,101,110,95,119,97,115,109,0,190,1,32,116,115,95,110,111,100,101,95,100,101,115,99,101,110,100,97,110,116,115,95,111,102,95,116,121,112,101,95,119,97,115,109,0,188,1,21,116,115,95,110,111,100,101,95,105,115,95,110,97,109,101,100,95,119,97,115,109,0,187,1,24,116,115,95,110,111,100,101,95,104,97,115,95,99,104,97,110,103,101,115,95,119,97,115,109,0,186,1,22,116,115,95,110,111,100,101,95,104,97,115,95,101,114,114,111,114,95,119,97,115,109,0,185,1,21,116,115,95,110,111,100,101,95,105,115,95,101,114,114,111,114,95,119,97,115,109,0,184,1,23,116,115,95,110,111,100,101,95,105,115,95,109,105,115,115,105,110,103,95,119,97,115,109,0,183,1,21,116,115,95,110,111,100,101,95,105,115,95,101,120,116,114,97,95,119,97,115,109,0,182,1,24,116,115,95,110,111,100,101,95,112,97,114,115,101,95,115,116,97,116,101,95,119,97,115,109,0,181,1,29,116,115,95,110,111,100,101,95,110,101,120,116,95,112,97,114,115,101,95,115,116,97,116,101,95,119,97,115,109,0,180,1,21,116,115,95,113,117,101,114,121,95,109,97,116,99,104,101,115,95,119,97,115,109,0,179,1,22,116,115,95,113,117,101,114,121,95,99,97,112,116,117,114,101,115,95,119,97,115,109,0,176,1,6,109,101,109,115,101,116,0,51,6,109,101,109,99,112,121,0,36,7,109,101,109,109,111,118,101,0,153,1,8,105,115,119,97,108,112,104,97,0,103,8,105,115,119,98,108,97,110,107,0,157,1,8,105,115,119,100,105,103,105,116,0,162,1,8,105,115,119,108,111,119,101,114,0,158,1,8,105,115,119,117,112,112,101,114,0,154,1,9,105,115,119,120,100,105,103,105,116,0,151,1,6,109,101,109,99,104,114,0,100,6,115,116,114,108,101,110,0,101,6,115,116,114,99,109,112,0,150,1,7,115,116,114,110,99,97,116,0,156,1,7,115,116,114,110,99,112,121,0,152,1,8,116,111,119,108,111,119,101,114,0,164,1,8,116,111,119,117,112,112,101,114,0,163,1,8,115,101,116,84,104,114,101,119,0,166,1,25,95,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,114,101,115,116,111,114,101,0,161,1,23,95,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,97,108,108,111,99,0,160,1,28,101,109,115,99,114,105,112,116,101,110,95,115,116,97,99,107,95,103,101,116,95,99,117,114,114,101,110,116,0,159,1,24,95,95,119,97,115,109,95,97,112,112,108,121,95,100,97,116,97,95,114,101,108,111,99,115,0,154,2,8,2,200,1,9,64,1,0,35,2,11,30,155,1,149,1,148,1,146,1,145,1,144,1,138,1,151,2,149,2,150,2,148,2,37,146,2,147,1,143,1,142,1,50,142,2,141,2,140,2,136,2,133,2,132,2,177,1,175,1,173,1,174,1,170,1,169,1,167,1,12,1,1,10,212,129,11,147,2,208,1,1,3,127,2,64,32,1,40,2,76,34,2,65,0,78,4,64,32,2,69,13,1,35,1,65,148,214,0,106,40,2,24,32,2,65,255,255,255,255,3,113,71,13,1,11,2,64,32,0,65,255,1,113,34,3,32,1,40,2,80,70,13,0,32,1,40,2,20,34,2,32,1,40,2,16,70,13,0,32,1,32,2,65,1,106,54,2,20,32,2,32,0,58,0,0,15,11,32,1,32,3,16,105,15,11,32,1,65,204,0,106,34,2,32,2,40,2,0,34,3,65,255,255,255,255,3,32,3,27,54,2,0,2,64,2,64,32,0,65,255,1,113,34,4,32,1,40,2,80,70,13,0,32,1,40,2,20,34,3,32,1,40,2,16,70,13,0,32,1,32,3,65,1,106,54,2,20,32,3,32,0,58,0,0,12,1,11,32,1,32,4,16,105,11,32,2,40,2,0,26,32,2,65,0,54,2,0,11,205,5,2,7,127,1,126,2,64,32,1,45,0,0,65,1,113,13,0,32,0,65,0,54,2,16,32,1,40,2,0,34,2,40,2,0,26,32,2,32,2,40,2,0,34,2,65,1,107,54,2,0,32,2,65,1,70,4,64,32,0,40,2,12,33,2,32,0,32,0,40,2,16,34,3,65,1,106,34,4,32,0,40,2,20,34,5,75,4,127,65,8,32,5,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,20,32,0,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,0,32,2,54,2,12,32,2,32,3,65,3,116,106,32,1,41,2,0,55,2,0,11,32,0,40,2,16,34,1,69,13,0,3,64,32,0,32,1,65,1,107,34,1,54,2,16,2,64,32,0,40,2,12,32,1,65,3,116,106,40,2,0,34,4,40,2,36,34,2,4,64,65,0,33,1,65,0,32,4,32,2,65,3,116,107,34,6,32,4,65,1,113,27,3,64,2,64,32,6,32,1,65,3,116,106,41,2,0,34,9,167,34,2,65,1,113,13,0,32,2,32,2,40,2,0,34,2,65,1,107,54,2,0,32,2,65,1,71,13,0,32,0,40,2,12,33,2,32,0,32,0,40,2,16,34,3,65,1,106,34,5,32,0,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,5,32,3,32,5,75,27,34,3,32,3,65,8,77,27,34,5,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,5,54,2,20,32,0,40,2,16,34,3,65,1,106,5,32,5,11,54,2,16,32,0,32,2,54,2,12,32,2,32,3,65,3,116,106,32,9,55,2,0,11,32,1,65,1,106,34,1,32,4,40,2,36,73,13,0,11,35,8,40,2,0,17,2,0,12,1,11,2,64,32,4,45,0,44,65,192,0,113,69,13,0,32,4,40,2,72,65,25,73,13,0,32,4,40,2,48,35,8,40,2,0,17,2,0,11,2,64,32,0,40,2,8,34,2,69,13,0,32,0,40,2,4,34,5,65,1,106,34,1,65,32,75,13,0,32,0,40,2,0,33,3,32,0,32,1,32,2,75,4,127,65,8,32,2,65,1,116,34,2,32,1,32,1,32,2,73,27,34,1,32,1,65,8,77,27,34,2,65,3,116,33,1,2,127,32,3,4,64,32,3,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,1,11,54,2,4,32,0,32,3,54,2,0,32,3,32,5,65,3,116,106,34,1,65,0,54,2,4,32,1,32,4,54,2,0,12,1,11,32,4,35,8,40,2,0,17,2,0,11,32,0,40,2,16,34,1,13,0,11,11,11,37,1,1,127,35,0,65,16,107,34,4,36,0,32,4,32,3,54,2,12,32,0,32,1,32,2,32,3,16,95,32,4,65,16,106,36,0,11,153,3,1,7,127,32,0,32,0,40,2,0,32,0,45,0,16,106,34,3,54,2,0,2,64,32,0,40,2,8,34,5,32,3,75,4,64,32,0,32,3,44,0,0,34,1,65,255,1,113,34,2,54,2,12,65,1,33,4,32,1,65,0,72,4,64,2,64,32,5,32,3,107,34,6,65,1,70,13,0,2,64,32,1,65,96,79,4,64,2,64,32,1,65,111,77,4,64,32,0,32,2,65,15,113,34,2,54,2,12,35,1,65,222,10,106,32,2,106,45,0,0,32,3,45,0,1,34,1,65,5,118,118,65,1,113,69,13,4,32,1,65,63,113,33,7,65,2,33,1,12,1,11,32,0,32,2,65,240,1,107,34,2,54,2,12,32,1,65,116,75,13,3,35,1,65,176,12,106,32,3,45,0,1,34,1,65,4,118,106,44,0,0,32,2,118,65,1,113,69,13,3,32,0,32,1,65,63,113,32,2,65,6,116,114,34,2,54,2,12,65,2,33,4,32,6,65,2,70,13,3,65,3,33,1,32,3,45,0,2,65,128,127,115,34,7,65,255,1,113,65,63,75,13,3,11,32,0,32,7,65,255,1,113,32,2,65,6,116,114,34,2,54,2,12,32,6,34,4,32,1,71,13,1,12,2,11,32,1,65,66,73,13,1,32,0,32,2,65,31,113,34,2,54,2,12,65,1,33,1,11,32,1,32,3,106,45,0,0,65,128,127,115,65,255,1,113,34,4,65,63,77,13,3,32,1,33,4,11,32,0,65,127,54,2,12,11,32,0,32,4,58,0,16,32,3,32,5,73,15,11,32,0,65,0,54,2,12,32,0,65,0,58,0,16,32,3,32,5,73,15,11,32,0,32,2,65,6,116,32,4,114,54,2,12,32,0,32,1,65,1,106,58,0,16,32,3,32,5,73,11,219,3,1,6,127,3,64,32,0,40,2,12,16,102,4,64,32,0,16,12,26,12,1,11,32,0,40,2,12,65,59,70,4,64,32,0,16,12,26,32,0,40,2,12,33,1,3,64,2,64,32,1,14,11,3,0,0,0,0,0,0,0,0,0,3,0,11,32,0,32,0,40,2,0,32,0,45,0,16,106,34,4,54,2,0,32,0,2,127,2,64,32,0,40,2,8,34,5,32,4,75,4,64,32,0,32,4,44,0,0,34,2,65,255,1,113,34,1,54,2,12,65,1,32,2,65,0,78,13,2,26,65,1,33,3,2,64,32,5,32,4,107,34,5,65,1,70,13,0,2,64,32,2,65,96,79,4,64,2,64,32,2,65,111,77,4,64,32,0,32,1,65,15,113,34,1,54,2,12,35,1,65,222,10,106,32,1,106,45,0,0,32,4,45,0,1,34,2,65,5,118,118,65,1,113,69,13,4,32,2,65,63,113,33,6,65,2,33,2,12,1,11,32,0,32,1,65,240,1,107,34,1,54,2,12,32,2,65,116,75,13,3,35,1,65,176,12,106,32,4,45,0,1,34,2,65,4,118,106,44,0,0,32,1,118,65,1,113,69,13,3,32,0,32,2,65,63,113,32,1,65,6,116,114,34,1,54,2,12,65,2,33,3,32,5,65,2,70,13,3,65,3,33,2,32,4,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,0,32,6,65,255,1,113,32,1,65,6,116,114,34,1,54,2,12,32,5,34,3,32,2,71,13,1,12,2,11,32,2,65,66,73,13,1,32,0,32,1,65,31,113,34,1,54,2,12,65,1,33,2,11,32,2,32,4,106,45,0,0,65,128,127,115,65,255,1,113,34,3,65,63,77,13,2,32,2,33,3,11,65,127,33,1,32,0,65,127,54,2,12,32,0,32,3,58,0,16,12,3,11,32,0,65,0,54,2,12,32,0,65,0,58,0,16,12,4,11,32,0,32,1,65,6,116,32,3,114,34,1,54,2,12,32,2,65,1,106,11,58,0,16,12,0,11,0,11,11,11,23,0,32,0,45,0,0,65,32,113,69,4,64,32,1,32,2,32,0,16,104,26,11,11,107,1,1,127,35,0,65,128,2,107,34,5,36,0,2,64,32,2,32,3,76,13,0,32,4,65,128,192,4,113,13,0,32,5,32,1,32,2,32,3,107,34,3,65,128,2,32,3,65,128,2,73,34,1,27,16,51,26,32,1,69,4,64,3,64,32,0,32,5,65,128,2,16,14,32,3,65,128,2,107,34,3,65,255,1,75,13,0,11,11,32,0,32,5,32,3,16,14,11,32,5,65,128,2,106,36,0,11,216,1,2,5,127,1,126,2,127,32,1,40,2,4,32,1,40,2,8,34,5,65,28,108,106,34,3,65,28,107,40,2,0,34,6,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,33,4,65,0,33,2,2,64,32,4,13,0,32,5,65,2,73,4,64,32,1,47,1,16,33,2,12,1,11,32,3,65,56,107,40,2,0,40,2,0,47,1,66,34,4,69,13,0,32,1,40,2,0,40,2,8,34,2,40,2,84,32,2,47,1,36,32,4,108,65,1,116,106,32,3,65,8,107,40,2,0,65,1,116,106,47,1,0,33,2,11,32,3,65,24,107,41,2,0,33,7,32,3,65,16,107,40,2,0,33,3,32,0,32,1,40,2,0,54,2,20,32,0,32,6,54,2,16,32,0,32,2,54,2,12,32,0,32,3,54,2,8,32,0,32,7,55,2,0,11,233,1,1,6,127,35,0,65,16,107,34,4,36,0,32,0,40,2,0,34,2,32,1,65,5,116,34,6,106,34,3,40,2,0,4,64,32,0,40,2,52,33,5,32,3,40,2,12,4,64,32,4,32,3,41,2,12,55,3,8,32,5,32,4,65,8,106,16,10,11,32,3,40,2,20,4,64,32,4,32,3,41,2,20,55,3,0,32,5,32,4,16,10,11,32,3,40,2,4,34,2,4,64,32,2,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,3,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,3,40,2,0,32,0,65,36,106,32,5,16,26,32,0,40,2,0,33,2,11,32,0,40,2,4,32,1,65,127,115,106,65,5,116,34,1,4,64,32,2,32,6,106,34,2,32,2,65,32,106,32,1,252,10,0,0,11,32,0,32,0,40,2,4,65,1,107,54,2,4,32,4,65,16,106,36,0,11,129,1,1,2,127,2,64,2,64,32,2,65,4,79,4,64,32,0,32,1,114,65,3,113,13,1,3,64,32,0,40,2,0,32,1,40,2,0,71,13,2,32,1,65,4,106,33,1,32,0,65,4,106,33,0,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,3,64,32,0,45,0,0,34,3,32,1,45,0,0,34,4,70,4,64,32,1,65,1,106,33,1,32,0,65,1,106,33,0,32,2,65,1,107,34,2,13,1,12,2,11,11,32,3,32,4,107,15,11,65,0,11,29,1,1,127,65,1,33,1,32,0,65,48,107,65,10,79,4,127,32,0,16,103,65,0,71,5,65,1,11,11,20,0,32,1,40,2,76,65,0,72,26,32,0,65,2,32,1,16,104,26,11,184,13,1,16,127,32,0,40,2,0,34,2,65,0,54,2,48,32,2,66,0,55,2,52,32,2,65,0,59,1,64,32,2,65,0,54,2,32,32,2,65,0,54,2,60,32,2,32,2,47,1,44,65,191,252,3,113,59,1,44,32,2,47,1,66,34,5,4,64,32,1,40,2,84,32,1,47,1,36,32,5,108,65,1,116,106,33,11,11,32,2,32,2,40,2,36,34,5,65,3,116,107,33,12,2,64,32,5,69,4,64,12,1,11,65,0,32,12,32,2,65,1,113,27,33,16,3,64,32,16,32,10,65,3,116,106,34,4,40,2,0,33,3,32,4,47,1,6,33,5,32,4,47,1,4,33,8,2,64,32,2,40,2,20,34,17,13,0,32,3,65,1,113,13,0,32,3,45,0,45,65,1,113,69,13,0,32,2,32,2,47,1,44,65,128,2,114,59,1,44,11,2,64,32,2,2,127,2,64,2,64,32,2,2,127,32,3,65,1,113,34,14,69,4,64,32,3,45,0,44,65,128,1,113,4,64,32,2,32,2,47,1,44,65,128,1,114,59,1,44,11,32,3,40,2,12,33,5,32,3,40,2,8,33,6,32,3,40,2,4,33,4,32,10,13,3,32,2,32,5,54,2,12,32,2,32,6,54,2,8,32,2,32,4,54,2,4,32,3,40,2,20,33,9,32,3,40,2,16,33,5,32,3,40,2,24,12,1,11,32,5,65,255,1,113,33,4,32,10,13,1,32,2,32,4,54,2,4,32,2,32,8,65,255,1,113,54,2,12,32,2,32,8,65,8,118,65,15,113,54,2,8,65,0,33,9,32,5,65,128,254,3,113,65,8,118,34,5,11,54,2,24,32,2,32,9,54,2,20,32,2,32,5,54,2,16,12,3,11,32,8,65,255,1,113,33,9,32,8,65,8,118,65,15,113,33,6,32,5,65,8,118,34,15,32,4,106,12,1,11,65,0,32,5,32,3,40,2,20,34,5,27,33,9,32,5,32,6,106,33,6,32,3,40,2,24,33,15,32,3,40,2,16,32,4,106,11,32,2,40,2,16,106,34,5,54,2,16,32,2,32,6,32,17,106,173,32,9,32,15,106,65,0,32,2,40,2,24,32,6,27,106,173,66,32,134,132,55,2,20,32,2,40,2,4,33,4,11,32,4,32,5,106,33,4,2,64,2,64,2,64,2,127,2,64,2,64,2,64,2,127,32,2,2,127,2,64,2,64,2,64,2,64,2,64,2,127,2,64,2,64,32,14,69,4,64,32,3,40,2,28,33,6,32,3,47,1,40,34,9,65,254,255,3,71,4,64,65,226,4,33,5,32,2,32,3,45,0,45,65,2,113,4,127,65,226,4,5,32,3,40,2,32,11,32,2,40,2,32,106,54,2,32,11,32,4,32,6,106,33,8,32,3,40,2,36,34,4,32,2,47,1,40,65,254,255,3,73,13,3,26,32,4,34,5,32,3,47,1,44,34,6,65,4,113,13,3,26,32,5,69,34,5,32,9,65,255,255,3,70,113,13,1,32,6,65,1,113,13,2,32,5,13,1,32,2,32,2,40,2,32,32,3,40,2,48,65,228,0,108,106,54,2,32,32,3,65,36,106,33,6,12,8,11,32,2,32,2,40,2,32,32,3,65,26,116,65,31,117,65,226,4,113,106,34,6,54,2,32,32,4,32,8,65,128,224,3,113,65,12,118,106,34,4,32,7,32,4,32,7,75,27,33,7,32,3,65,8,113,33,5,32,2,47,1,40,65,254,255,3,73,13,5,32,5,13,5,32,3,65,2,113,13,4,32,2,40,2,56,33,6,12,6,11,32,3,65,36,106,33,6,65,0,33,4,12,2,11,32,2,32,2,40,2,32,65,228,0,106,54,2,32,32,3,40,2,36,11,32,3,65,36,106,33,6,13,4,11,65,0,12,4,11,32,2,32,6,65,228,0,106,54,2,32,11,32,2,40,2,56,33,6,65,0,33,4,32,5,13,6,11,65,0,33,4,32,3,65,128,254,3,113,65,8,118,12,2,11,32,3,40,2,60,11,32,2,40,2,60,106,54,2,60,32,8,32,7,32,7,32,8,73,27,33,7,32,2,32,6,40,2,0,4,127,32,3,40,2,56,5,65,0,11,32,2,40,2,56,106,34,6,54,2,56,32,3,47,1,44,34,5,65,4,113,13,2,32,3,47,1,40,11,65,255,255,3,113,69,13,0,32,11,69,13,0,32,11,32,13,65,1,116,106,34,5,47,1,0,69,13,0,65,1,33,4,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,2,64,32,5,47,1,0,34,5,65,254,255,3,107,14,2,7,6,0,11,32,1,40,2,72,32,5,65,3,108,106,45,0,1,65,1,113,13,5,12,6,11,32,14,13,1,32,3,47,1,44,33,5,11,32,5,65,1,113,69,13,2,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,32,3,47,1,44,65,1,118,65,1,113,12,1,11,32,3,65,2,113,69,13,1,32,2,32,6,65,1,106,54,2,56,32,2,32,2,40,2,48,65,1,106,54,2,48,32,3,65,2,118,65,1,113,11,65,1,33,4,13,1,12,2,11,32,4,69,13,1,32,2,32,2,40,2,48,32,3,40,2,48,106,54,2,48,32,3,40,2,52,33,4,11,32,2,32,2,40,2,52,32,4,106,54,2,52,11,32,13,2,127,32,14,69,4,64,32,3,45,0,44,65,192,0,113,4,64,32,2,32,2,47,1,44,65,192,0,114,59,1,44,11,32,3,47,1,40,65,255,255,3,70,4,64,32,2,65,255,255,3,59,1,42,32,2,32,2,47,1,44,65,24,114,59,1,44,11,32,3,47,1,44,65,2,118,65,1,113,12,1,11,32,3,65,3,118,65,1,113,11,69,106,33,13,32,10,65,1,106,34,10,32,0,40,2,0,34,2,40,2,36,34,4,73,13,0,11,11,32,2,32,7,32,2,40,2,16,34,0,32,2,40,2,4,106,107,54,2,28,32,2,47,1,40,34,5,65,253,255,3,75,4,64,32,2,32,2,40,2,32,32,0,32,2,40,2,20,65,30,108,106,106,65,244,3,106,54,2,32,11,2,64,32,4,69,13,0,32,12,32,4,65,3,116,106,65,8,107,40,2,0,33,1,2,64,32,12,40,2,0,34,0,65,1,113,69,4,64,32,2,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,59,1,68,32,2,32,0,65,198,0,65,42,32,0,40,2,36,27,106,47,1,0,59,1,70,32,0,45,0,44,65,8,113,69,13,1,32,2,32,2,47,1,44,65,8,114,59,1,44,12,1,11,32,2,32,0,65,16,118,59,1,70,32,2,32,0,65,128,254,3,113,65,8,118,59,1,68,11,2,64,32,1,65,1,113,13,0,32,1,45,0,44,65,16,113,69,13,0,32,2,32,2,47,1,44,65,16,114,59,1,44,11,32,4,65,1,70,13,0,32,2,45,0,44,65,3,113,13,0,2,64,2,64,32,0,65,1,113,4,64,32,5,32,0,65,128,254,3,113,65,8,118,71,13,3,65,1,33,4,32,1,65,1,113,13,2,32,1,47,1,64,33,4,12,1,11,32,0,47,1,40,32,5,71,13,2,65,1,33,4,32,0,47,1,64,33,0,2,64,32,1,65,1,113,4,64,32,0,13,1,12,3,11,32,0,32,1,47,1,64,34,4,77,13,1,11,32,0,65,1,106,33,4,12,1,11,32,4,65,1,106,33,4,11,32,2,32,4,59,1,64,11,11,185,3,1,6,127,3,64,32,0,32,0,40,2,0,32,0,45,0,16,106,34,4,54,2,0,2,64,2,64,32,0,40,2,8,34,5,32,4,75,4,64,32,0,32,4,44,0,0,34,2,65,255,1,113,34,1,54,2,12,65,1,33,3,32,2,65,0,72,4,64,2,64,32,5,32,4,107,34,5,65,1,70,13,0,2,64,32,2,65,96,79,4,64,2,64,32,2,65,111,77,4,64,32,0,32,1,65,15,113,34,1,54,2,12,35,1,65,222,10,106,32,1,106,45,0,0,32,4,45,0,1,34,2,65,5,118,118,65,1,113,69,13,4,32,2,65,63,113,33,6,65,2,33,2,12,1,11,32,0,32,1,65,240,1,107,34,1,54,2,12,32,2,65,116,75,13,3,35,1,65,176,12,106,32,4,45,0,1,34,2,65,4,118,106,44,0,0,32,1,118,65,1,113,69,13,3,32,0,32,2,65,63,113,32,1,65,6,116,114,34,1,54,2,12,65,2,33,3,32,5,65,2,70,13,3,65,3,33,2,32,4,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,0,32,6,65,255,1,113,32,1,65,6,116,114,34,1,54,2,12,32,5,34,3,32,2,71,13,1,12,2,11,32,2,65,66,73,13,1,32,0,32,1,65,31,113,34,1,54,2,12,65,1,33,2,11,32,2,32,4,106,45,0,0,65,128,127,115,65,255,1,113,34,3,65,63,77,13,3,32,2,33,3,11,32,0,65,127,54,2,12,65,127,33,1,11,32,0,32,3,58,0,16,12,2,11,65,0,33,1,32,0,65,0,54,2,12,32,0,65,0,58,0,16,12,1,11,32,0,32,1,65,6,116,32,3,114,34,1,54,2,12,32,0,32,2,65,1,106,58,0,16,11,32,1,16,19,13,0,32,0,40,2,12,34,3,65,45,107,65,2,73,13,0,32,3,65,223,0,70,13,0,11,11,222,4,2,1,126,4,127,32,0,40,2,0,32,1,65,5,116,106,34,6,40,2,0,33,1,32,2,41,2,0,33,5,2,127,32,0,40,2,40,34,2,4,64,32,0,32,2,65,1,107,34,2,54,2,40,32,0,40,2,36,32,2,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,0,32,4,59,1,0,32,0,65,2,106,65,0,65,146,1,252,11,0,32,5,167,33,2,32,0,66,0,55,2,152,1,32,0,65,1,54,2,148,1,32,0,65,0,54,2,160,1,32,0,2,127,2,64,2,64,2,64,32,1,4,64,32,0,65,0,59,0,29,32,0,32,3,58,0,28,32,0,32,5,55,2,20,32,0,32,1,54,2,16,32,0,65,1,59,1,144,1,32,0,65,0,58,0,31,32,0,32,1,41,2,4,55,2,4,32,0,32,1,40,2,12,54,2,12,32,0,32,1,40,2,152,1,34,4,54,2,152,1,32,0,32,1,40,2,160,1,34,9,54,2,160,1,32,0,32,1,40,2,156,1,34,1,54,2,156,1,32,2,69,13,1,32,2,65,1,113,13,3,65,226,4,33,3,32,0,32,2,45,0,45,65,2,113,4,127,65,226,4,5,32,2,40,2,32,11,32,4,106,54,2,152,1,65,0,32,2,40,2,12,32,2,40,2,20,34,4,27,33,7,32,4,32,2,40,2,8,106,33,4,32,2,40,2,24,33,8,32,2,40,2,16,32,2,40,2,4,106,12,4,11,32,0,66,0,55,2,4,65,0,33,1,32,0,65,0,54,2,12,32,2,13,1,11,32,6,32,1,54,2,8,11,32,6,32,0,54,2,0,15,11,32,0,32,4,32,2,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,5,66,32,136,167,65,255,1,113,33,7,32,5,66,40,136,167,65,15,113,33,4,32,5,66,56,136,167,34,8,32,5,66,48,136,167,65,255,1,113,106,11,32,0,40,2,4,106,54,2,4,65,0,33,3,32,0,32,0,40,2,8,32,4,106,173,32,7,32,8,106,65,0,32,0,40,2,12,32,4,27,106,173,66,32,134,132,55,2,8,32,0,2,127,32,2,65,1,113,69,4,64,32,0,32,2,40,2,36,34,4,4,127,32,2,40,2,56,5,65,0,11,32,1,106,32,2,47,1,44,65,1,113,106,32,2,47,1,40,65,254,255,3,70,106,54,2,156,1,65,0,32,4,69,13,1,26,32,2,40,2,60,12,1,11,32,0,32,1,32,2,65,1,118,65,1,113,106,54,2,156,1,65,0,11,32,9,106,54,2,160,1,32,6,32,0,54,2,0,11,229,9,2,22,127,1,126,35,0,65,128,1,107,34,4,36,0,32,2,40,2,0,34,22,2,127,32,2,40,2,16,34,23,41,2,0,34,25,167,34,6,65,1,113,4,64,32,25,66,56,136,167,12,1,11,32,6,40,2,16,11,34,18,106,33,13,32,1,40,2,8,33,6,32,1,40,2,4,33,14,32,1,40,2,20,33,20,32,1,40,2,0,33,11,32,1,40,2,16,40,2,0,33,3,2,64,2,64,2,64,2,64,3,64,32,3,65,1,113,13,3,32,3,40,2,36,69,13,3,32,3,47,1,66,34,7,4,127,32,20,40,2,8,34,8,40,2,84,32,8,47,1,36,32,7,108,65,1,116,106,5,65,0,11,33,19,32,3,40,2,36,34,21,69,13,3,2,127,32,3,32,21,65,3,116,107,34,15,40,2,0,34,7,65,1,113,69,4,64,32,7,47,1,44,65,2,118,65,1,113,12,1,11,32,7,65,3,118,65,1,113,11,34,3,69,33,16,65,0,33,12,2,64,32,3,13,0,32,19,69,13,0,32,19,47,1,0,33,12,65,1,33,16,11,32,1,32,20,54,2,20,32,1,32,15,54,2,16,32,1,32,12,54,2,12,32,1,32,6,54,2,8,32,1,32,14,54,2,4,32,1,32,11,54,2,0,2,127,32,15,40,2,0,34,5,65,1,113,34,17,69,4,64,65,0,32,6,32,5,40,2,20,34,7,27,33,8,32,5,40,2,24,33,9,32,5,40,2,16,33,3,32,7,32,14,106,12,1,11,32,15,45,0,7,34,3,33,9,32,6,33,8,32,14,11,33,7,32,11,32,22,75,13,3,32,15,32,23,70,13,2,32,3,32,11,106,33,10,2,64,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,10,32,13,73,13,0,32,17,13,1,32,5,40,2,36,69,13,1,32,5,40,2,48,69,13,1,32,4,32,1,41,2,8,55,3,88,32,4,32,1,41,2,16,55,3,96,32,4,32,1,41,2,0,55,3,80,32,4,65,64,107,32,2,41,2,8,55,3,0,32,4,32,2,41,2,16,55,3,72,32,4,32,2,41,2,0,55,3,56,32,4,65,232,0,106,32,4,65,208,0,106,32,4,65,56,106,16,24,32,4,40,2,120,69,13,1,12,7,11,32,18,13,1,11,32,10,32,13,75,13,1,12,2,11,32,10,32,13,73,13,1,11,32,15,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,69,13,0,32,3,40,2,48,13,1,11,65,1,33,17,32,21,65,1,70,13,4,32,8,32,9,106,33,6,3,64,65,0,33,12,2,127,32,15,32,17,65,3,116,106,34,3,40,2,0,34,9,65,1,113,34,8,4,64,32,9,65,3,118,65,1,113,12,1,11,32,9,47,1,44,65,2,118,65,1,113,11,69,4,64,32,19,4,127,32,19,32,16,65,1,116,106,47,1,0,5,65,0,11,33,12,32,16,65,1,106,33,16,11,2,127,32,8,4,64,32,3,45,0,5,65,15,113,33,5,32,3,45,0,6,33,11,32,3,45,0,4,12,1,11,32,9,40,2,8,33,5,32,9,40,2,4,33,11,32,9,40,2,12,11,33,8,32,1,32,20,54,2,20,32,1,32,3,54,2,16,32,1,32,12,54,2,12,32,1,32,5,32,7,106,34,14,54,2,4,32,1,32,10,32,11,106,34,11,54,2,0,32,1,65,0,32,6,32,5,27,32,8,106,34,6,54,2,8,2,127,32,3,40,2,0,34,5,65,1,113,34,24,4,64,32,3,45,0,7,34,10,33,8,32,6,33,9,32,14,12,1,11,65,0,32,6,32,5,40,2,20,34,7,27,33,9,32,5,40,2,24,33,8,32,5,40,2,16,33,10,32,7,32,14,106,11,33,7,32,11,32,22,75,13,5,32,3,32,23,70,13,4,32,10,32,11,106,33,10,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,10,32,13,73,13,0,32,24,13,1,32,5,40,2,36,69,13,1,32,5,40,2,48,69,13,1,32,4,32,1,41,2,8,55,3,40,32,4,32,1,41,2,16,55,3,48,32,4,32,1,41,2,0,55,3,32,32,4,32,2,41,2,8,55,3,16,32,4,32,2,41,2,16,55,3,24,32,4,32,2,41,2,0,55,3,8,32,4,65,232,0,106,32,4,65,32,106,32,4,65,8,106,16,24,32,4,40,2,120,69,13,1,12,8,11,32,18,13,1,11,32,10,32,13,75,13,1,12,2,11,32,10,32,13,73,13,1,11,32,3,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,69,13,0,32,3,40,2,48,13,2,11,32,8,32,9,106,33,6,32,17,65,1,106,34,17,32,21,71,13,0,11,12,4,11,32,3,45,0,44,65,1,113,32,12,114,69,13,0,11,32,0,32,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,3,11,32,0,32,1,32,1,32,4,65,232,0,106,32,12,27,32,5,47,1,44,65,1,113,27,34,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,2,11,32,0,32,1,41,2,0,55,2,0,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,12,1,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,32,4,65,128,1,106,36,0,11,252,20,2,19,127,1,126,35,0,65,48,107,34,13,36,0,32,1,65,0,54,2,28,32,1,65,0,54,2,16,32,1,40,2,0,32,13,65,0,58,0,46,32,13,65,0,59,1,44,32,2,65,5,116,106,40,2,0,33,12,2,64,32,5,65,0,72,4,64,12,1,11,32,5,65,255,255,255,255,1,113,65,247,255,255,255,1,70,13,0,32,5,65,9,106,34,8,65,255,255,255,255,1,113,33,10,32,8,65,3,116,35,7,40,2,0,17,0,0,33,9,32,1,40,2,28,33,7,11,32,1,40,2,24,33,6,32,1,32,7,65,1,106,34,8,32,1,40,2,32,34,11,75,4,127,65,8,32,11,65,1,116,34,7,32,8,32,7,32,8,75,27,34,8,32,8,65,8,77,27,34,7,65,24,108,33,8,2,127,32,6,4,64,32,6,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,6,32,1,32,7,54,2,32,32,1,40,2,28,34,7,65,1,106,5,32,8,11,54,2,28,32,1,32,6,54,2,24,32,6,32,7,65,24,108,106,34,8,65,1,58,0,20,32,8,65,0,54,2,16,32,8,32,10,54,2,12,32,8,65,0,54,2,8,32,8,32,9,54,2,4,32,8,32,12,54,2,0,32,8,32,13,45,0,46,58,0,23,32,8,32,13,47,1,44,59,0,21,32,1,40,2,28,34,20,4,64,32,2,65,5,116,33,23,3,64,32,17,65,24,108,34,21,32,1,40,2,24,106,34,11,40,2,0,33,14,32,4,32,11,32,3,17,1,0,34,2,65,2,113,33,18,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,1,113,69,4,64,32,14,47,1,144,1,33,2,32,18,69,13,4,32,11,40,2,12,33,16,32,11,40,2,8,33,12,32,11,40,2,4,33,7,32,2,13,1,65,1,33,15,12,2,11,32,18,69,13,6,32,11,40,2,12,33,16,32,11,40,2,8,33,12,32,11,40,2,4,33,7,65,1,33,15,12,1,11,32,16,69,4,64,65,0,33,16,65,0,33,15,12,1,11,32,16,65,8,35,9,40,2,0,17,1,0,33,8,32,12,65,3,116,34,2,4,64,32,8,32,7,32,2,252,10,0,0,11,32,12,69,4,64,65,0,33,15,65,0,33,12,12,2,11,65,0,33,15,65,0,33,6,32,12,65,1,71,4,64,32,12,65,126,113,33,7,65,0,33,9,3,64,32,8,32,6,65,3,116,106,34,10,40,2,0,34,2,65,1,113,69,4,64,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,10,40,2,8,34,2,65,1,113,69,4,64,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,6,65,2,106,33,6,32,9,65,2,106,34,9,32,7,71,13,0,11,11,2,64,32,12,65,1,113,69,13,0,32,8,32,6,65,3,116,106,40,2,0,34,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,8,33,7,11,2,64,32,12,65,2,73,13,0,32,7,32,12,65,3,116,106,33,2,65,0,33,6,32,12,65,1,118,34,8,65,1,71,4,64,32,8,65,254,255,255,255,7,113,33,9,65,0,33,10,3,64,32,7,32,6,65,3,116,106,34,8,41,2,0,33,25,32,8,32,2,32,6,65,127,115,65,3,116,106,34,19,41,2,0,55,2,0,32,19,32,25,55,2,0,32,8,41,2,8,33,25,32,8,32,2,32,6,65,254,255,255,255,1,115,65,3,116,106,34,8,41,2,0,55,2,8,32,8,32,25,55,2,0,32,6,65,2,106,33,6,32,10,65,2,106,34,10,32,9,71,13,0,11,11,32,12,65,2,113,69,13,0,32,7,32,6,65,3,116,106,34,8,41,2,0,33,25,32,8,32,2,32,6,65,127,115,65,3,116,106,34,2,41,2,0,55,2,0,32,2,32,25,55,2,0,11,32,7,33,8,11,32,1,40,2,16,34,7,33,2,2,64,3,64,32,2,34,10,69,13,1,32,1,40,2,0,32,1,40,2,12,34,9,32,2,65,1,107,34,2,65,4,116,106,40,2,12,34,6,65,5,116,106,40,2,0,32,14,71,13,0,11,32,7,65,1,106,34,2,32,1,40,2,20,75,4,64,32,9,32,2,65,4,116,35,6,40,2,0,17,1,0,33,9,32,1,32,2,54,2,20,32,1,40,2,16,33,7,11,32,10,65,4,116,33,2,2,64,32,7,32,10,77,13,0,32,7,32,10,107,65,4,116,34,7,69,13,0,32,2,32,9,106,34,10,65,16,106,32,10,32,7,252,10,0,0,11,32,2,32,9,106,34,2,32,6,54,0,12,32,2,32,16,54,0,8,32,2,32,12,54,0,4,32,2,32,8,54,0,0,32,1,32,9,54,2,12,32,1,32,1,40,2,16,65,1,106,54,2,16,32,15,69,13,2,12,3,11,32,1,40,2,0,34,6,32,23,106,34,7,40,2,16,33,19,32,7,40,2,12,33,2,32,7,40,2,8,33,22,32,1,32,1,40,2,4,34,10,65,1,106,34,9,32,1,40,2,8,34,7,75,4,127,32,6,65,8,32,7,65,1,116,34,7,32,9,32,7,32,9,75,27,34,7,32,7,65,8,77,27,34,7,65,5,116,35,6,40,2,0,17,1,0,33,6,32,1,32,7,54,2,8,32,1,40,2,4,34,10,65,1,106,5,32,9,11,54,2,4,32,1,32,6,54,2,0,32,6,32,10,65,5,116,106,34,7,65,0,54,2,28,32,7,66,0,55,2,20,32,7,32,19,54,2,16,32,7,32,2,54,2,12,32,7,32,22,54,2,8,32,7,65,0,54,2,4,32,7,32,14,54,2,0,32,14,4,64,32,14,32,14,40,2,148,1,65,1,106,54,2,148,1,11,2,64,32,2,69,13,0,32,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,1,40,2,4,65,1,107,33,7,32,1,40,2,12,33,6,32,1,32,1,40,2,16,34,9,65,1,106,34,2,32,1,40,2,20,34,10,75,4,127,65,8,32,10,65,1,116,34,10,32,2,32,2,32,10,73,27,34,2,32,2,65,8,77,27,34,10,65,4,116,33,2,2,127,32,6,4,64,32,6,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,6,32,1,32,10,54,2,20,32,1,40,2,16,34,9,65,1,106,5,32,2,11,54,2,16,32,1,32,6,54,2,12,32,6,32,9,65,4,116,106,34,2,32,7,54,2,12,32,2,32,16,54,2,8,32,2,32,12,54,2,4,32,2,32,8,54,2,0,32,15,13,2,12,1,11,32,2,69,13,2,11,32,14,47,1,144,1,34,6,4,64,32,14,65,16,106,33,19,65,1,33,7,3,64,2,64,2,127,32,6,32,7,34,10,70,4,64,32,14,45,0,28,33,16,32,14,40,2,24,33,18,32,14,40,2,20,33,9,32,14,40,2,16,33,12,32,1,40,2,24,32,21,106,12,1,11,32,1,40,2,28,34,6,65,63,75,13,1,32,19,32,10,65,4,116,106,34,2,45,0,12,33,16,32,2,40,2,8,33,18,32,2,40,2,4,33,9,32,2,40,2,0,33,12,32,13,32,1,40,2,24,34,7,32,21,106,34,2,41,2,16,55,3,32,32,13,32,2,41,2,8,55,3,24,32,13,32,2,41,2,0,55,3,16,32,1,40,2,32,34,2,32,6,77,4,64,32,7,65,8,32,2,65,1,116,34,2,32,6,65,1,106,34,8,32,2,32,8,75,27,34,2,32,2,65,8,77,27,34,2,65,24,108,35,6,40,2,0,17,1,0,33,7,32,1,32,2,54,2,32,32,1,40,2,28,33,6,11,32,1,32,7,54,2,24,32,1,32,6,65,1,106,54,2,28,32,7,32,6,65,24,108,106,34,2,32,13,41,3,32,55,2,16,32,2,32,13,41,3,24,55,2,8,32,2,32,13,41,3,16,55,2,0,2,64,32,1,40,2,24,32,1,40,2,28,65,24,108,106,34,15,65,12,107,40,2,0,34,8,69,13,0,32,15,65,16,107,40,2,0,33,2,32,15,65,20,107,34,7,40,2,0,33,6,32,7,32,8,65,8,35,9,40,2,0,17,1,0,34,8,54,2,0,32,2,65,3,116,34,11,4,64,32,8,32,6,32,11,252,10,0,0,11,32,2,69,13,0,65,0,33,6,32,2,65,1,71,4,64,32,2,65,126,113,33,22,65,0,33,8,3,64,32,6,65,3,116,34,24,32,7,40,2,0,106,40,2,0,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,7,40,2,0,32,24,106,40,2,8,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,6,65,2,106,33,6,32,8,65,2,106,34,8,32,22,71,13,0,11,11,32,2,65,1,113,69,13,0,32,7,40,2,0,32,6,65,3,116,106,40,2,0,34,2,65,1,113,13,0,32,2,32,2,40,2,0,65,1,106,54,2,0,32,2,40,2,0,26,11,32,15,65,24,107,11,34,6,32,12,54,2,0,2,64,2,127,2,64,32,9,4,64,2,64,32,5,65,0,78,4,64,32,6,40,2,4,33,7,32,6,32,6,40,2,8,34,8,65,1,106,34,2,32,6,40,2,12,34,12,75,4,127,65,8,32,12,65,1,116,34,8,32,2,32,2,32,8,73,27,34,2,32,2,65,8,77,27,34,8,65,3,116,33,2,2,127,32,7,4,64,32,7,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,7,32,6,32,8,54,2,12,32,6,40,2,8,34,8,65,1,106,5,32,2,11,54,2,8,32,6,32,7,54,2,4,32,7,32,8,65,3,116,106,34,2,32,18,54,2,4,32,2,32,9,54,2,0,32,9,65,1,113,13,1,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,12,3,11,32,9,65,1,113,69,13,2,11,32,9,65,3,118,65,1,113,12,2,11,32,6,32,6,40,2,16,65,1,106,54,2,16,12,2,11,32,9,47,1,44,65,2,118,65,1,113,11,13,1,32,6,32,6,40,2,16,65,1,106,54,2,16,32,16,65,1,113,13,1,11,32,6,65,0,58,0,20,11,32,10,65,1,106,33,7,32,10,32,14,47,1,144,1,34,6,73,13,0,11,11,32,17,65,1,106,33,17,12,3,11,32,18,13,1,11,32,11,40,2,8,4,64,32,1,40,2,52,33,2,65,0,33,6,3,64,32,13,32,11,40,2,4,32,6,65,3,116,106,41,2,0,55,3,8,32,2,32,13,65,8,106,16,10,32,6,65,1,106,34,6,32,11,40,2,8,73,13,0,11,11,32,11,65,0,54,2,8,32,11,40,2,4,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,11,65,0,54,2,12,32,11,66,0,55,2,4,11,32,1,40,2,28,32,17,65,127,115,106,65,24,108,34,2,4,64,32,1,40,2,24,32,21,106,34,8,32,8,65,24,106,32,2,252,10,0,0,11,32,1,32,1,40,2,28,65,1,107,54,2,28,32,20,65,1,107,33,20,11,32,17,32,20,73,13,0,65,0,33,17,32,1,40,2,28,34,20,13,0,11,11,32,0,32,1,41,2,12,55,2,0,32,0,32,1,40,2,20,54,2,8,32,13,65,48,106,36,0,11,239,2,1,5,127,35,0,65,32,107,34,4,36,0,3,64,2,64,32,0,32,0,40,2,148,1,65,1,107,34,5,54,2,148,1,32,5,13,0,32,0,47,1,144,1,34,3,4,127,32,3,65,1,107,34,5,4,64,3,64,32,4,32,0,32,3,65,4,116,106,34,3,41,2,8,55,3,24,32,4,32,3,41,2,0,55,3,16,32,4,40,2,20,4,64,32,4,32,4,41,2,20,55,3,8,32,2,32,4,65,8,106,16,10,11,32,4,40,2,16,32,1,32,2,16,26,32,5,34,3,65,1,107,34,5,13,0,11,11,32,4,32,0,41,2,24,55,3,24,32,4,32,0,41,2,16,55,3,16,32,4,40,2,20,4,64,32,4,32,4,41,2,20,55,3,0,32,2,32,4,16,10,11,32,0,40,2,16,5,65,0,11,2,64,32,1,40,2,4,34,3,65,49,77,4,64,32,1,40,2,0,33,6,32,1,40,2,8,34,7,32,3,77,4,64,65,8,32,7,65,1,116,34,7,32,3,65,1,106,34,3,32,3,32,7,73,27,34,3,32,3,65,8,77,27,34,7,65,2,116,33,3,2,127,32,6,4,64,32,6,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,6,32,1,32,7,54,2,8,32,1,40,2,4,33,3,11,32,1,32,6,54,2,0,32,1,32,3,65,1,106,54,2,4,32,6,32,3,65,2,116,106,32,0,54,2,0,12,1,11,32,0,35,8,40,2,0,17,2,0,11,34,0,13,1,11,11,32,4,65,32,106,36,0,11,96,1,2,127,32,2,69,4,64,65,0,15,11,32,0,45,0,0,34,3,4,127,2,64,3,64,32,3,32,1,45,0,0,34,4,71,13,1,32,4,69,13,1,32,2,65,1,107,34,2,69,13,1,32,1,65,1,106,33,1,32,0,45,0,1,33,3,32,0,65,1,106,33,0,32,3,13,0,11,65,0,33,3,11,32,3,5,65,0,11,32,1,45,0,0,107,11,54,1,1,127,65,1,33,1,2,64,2,64,2,64,32,0,35,2,65,11,106,16,70,65,1,107,14,2,0,2,1,11,3,64,32,0,16,71,65,1,70,13,0,11,12,1,11,65,0,33,1,11,32,1,11,158,9,1,14,127,35,0,65,48,107,34,6,36,0,32,0,40,2,24,33,4,32,0,40,2,32,65,31,77,4,64,2,127,32,4,4,64,32,4,65,128,6,35,6,40,2,0,17,1,0,12,1,11,65,128,6,35,7,40,2,0,17,0,0,11,33,4,32,0,65,32,54,2,32,11,32,0,65,0,54,2,28,32,0,32,4,54,2,24,35,10,33,5,2,64,32,0,40,2,4,34,4,69,13,0,32,2,32,5,40,2,0,32,2,27,33,10,3,64,32,0,40,2,0,32,3,65,5,116,106,34,7,40,2,28,65,2,71,4,64,32,0,40,2,24,33,4,32,0,32,0,40,2,28,34,2,65,1,106,34,5,32,0,40,2,32,34,8,75,4,127,65,8,32,8,65,1,116,34,2,32,5,32,2,32,5,75,27,34,2,32,2,65,8,77,27,34,5,65,24,108,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,5,54,2,32,32,0,40,2,28,34,2,65,1,106,5,32,5,11,54,2,28,32,0,32,4,54,2,24,32,6,65,0,54,2,40,32,6,66,0,55,3,32,32,6,66,0,55,3,24,32,4,32,2,65,24,108,106,34,2,32,7,40,2,0,54,2,0,32,2,32,6,40,2,40,54,2,20,32,2,32,6,41,3,32,55,2,12,32,2,32,6,41,3,24,55,2,4,32,0,40,2,4,33,4,11,32,3,65,1,106,34,3,32,4,73,13,0,11,32,0,40,2,28,34,4,69,13,0,65,0,33,5,65,1,33,3,65,0,33,2,3,64,2,64,65,0,33,11,65,1,33,7,32,3,69,13,0,3,64,32,11,65,24,108,34,13,32,0,40,2,24,106,34,3,40,2,0,33,8,32,6,32,3,40,2,20,54,2,16,32,6,32,3,41,2,12,55,3,8,32,6,32,3,41,2,4,55,3,0,65,0,33,3,2,64,32,2,4,64,3,64,32,5,32,3,65,2,116,106,40,2,0,32,8,70,13,2,32,3,65,1,106,34,3,32,2,71,13,0,11,11,32,8,69,13,0,32,8,47,1,144,1,4,64,32,8,65,16,106,33,14,65,0,33,7,3,64,32,14,32,7,65,4,116,106,34,3,40,2,0,33,15,2,64,32,3,40,2,4,34,4,69,13,0,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,4,65,1,113,4,127,32,4,65,128,254,3,113,65,8,118,5,32,4,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,1,40,2,8,32,1,40,2,4,106,32,4,77,13,0,32,1,40,2,56,32,4,65,2,116,106,40,2,0,33,3,11,3,64,2,64,2,64,2,64,2,64,2,64,32,3,45,0,0,34,4,14,35,6,4,4,4,4,4,4,4,4,3,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,0,11,32,4,65,220,0,71,13,3,11,65,220,0,32,10,16,9,32,3,44,0,0,32,10,16,9,32,3,65,1,106,33,3,12,3,11,35,1,65,139,8,106,32,10,16,20,32,3,65,1,106,33,3,12,2,11,35,1,65,154,3,106,32,10,16,20,32,3,65,1,106,33,3,12,1,11,32,4,192,32,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,0,40,2,24,33,3,32,7,4,127,32,0,32,0,40,2,28,34,9,65,1,106,34,4,32,0,40,2,32,34,16,75,4,127,65,8,32,16,65,1,116,34,9,32,4,32,4,32,9,73,27,34,4,32,4,65,8,77,27,34,9,65,24,108,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,9,54,2,32,32,0,40,2,28,34,9,65,1,106,5,32,4,11,54,2,28,32,0,32,3,54,2,24,32,3,32,9,65,24,108,106,34,3,32,8,54,2,0,32,3,32,6,40,2,16,54,2,20,32,3,32,6,41,3,8,55,2,12,32,3,32,6,41,3,0,55,2,4,32,0,40,2,24,32,0,40,2,28,65,24,108,106,65,24,107,5,32,3,32,13,106,11,32,15,54,2,0,32,7,65,1,106,34,7,32,8,47,1,144,1,73,13,0,11,11,2,64,32,2,65,1,106,34,3,32,12,77,13,0,65,8,32,12,65,1,116,34,4,32,3,32,3,32,4,73,27,34,4,32,4,65,8,77,27,34,12,65,2,116,33,4,32,5,4,64,32,5,32,4,35,6,40,2,0,17,1,0,33,5,12,1,11,32,4,35,7,40,2,0,17,0,0,33,5,11,32,5,32,2,65,2,116,106,32,8,54,2,0,32,0,40,2,28,33,4,65,0,33,7,32,3,33,2,11,32,11,65,1,106,34,11,32,4,73,13,0,11,32,4,33,3,32,7,65,1,113,69,13,1,11,11,32,5,69,13,0,32,5,35,8,40,2,0,17,2,0,11,32,6,65,48,106,36,0,11,190,1,1,4,127,2,127,2,64,32,3,69,13,0,32,1,35,1,65,171,10,106,32,2,16,27,13,0,65,255,255,3,12,1,11,32,0,40,2,8,32,0,40,2,4,106,65,255,255,3,113,34,7,4,64,3,64,2,64,32,6,65,255,255,3,113,65,254,255,3,70,13,0,32,0,40,2,72,32,4,65,3,108,106,34,5,45,0,0,32,5,45,0,2,114,65,1,113,69,13,0,32,5,45,0,1,32,3,71,13,0,32,0,40,2,56,32,4,65,2,116,106,40,2,0,34,5,32,1,32,2,16,27,13,0,32,2,32,5,106,45,0,0,13,0,32,0,40,2,76,32,4,65,1,116,106,47,1,0,12,3,11,32,6,65,1,106,34,6,65,255,255,3,113,34,4,32,7,73,13,0,11,11,65,0,11,65,255,255,3,113,11,208,54,2,13,127,1,126,35,0,65,32,107,34,9,36,0,65,1,33,6,2,64,32,1,40,2,12,34,5,69,13,0,32,5,65,221,0,71,32,5,65,41,71,113,69,4,64,65,127,33,6,12,1,11,32,0,40,2,108,33,7,32,0,40,2,64,33,12,2,64,32,0,40,2,112,34,8,4,64,32,12,32,7,32,8,65,3,116,106,65,4,107,47,1,0,70,13,1,11,32,0,32,8,65,1,106,34,5,32,0,40,2,116,34,10,75,4,127,65,8,32,10,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,3,116,33,5,2,127,32,7,4,64,32,7,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,7,32,0,32,8,54,2,116,32,0,40,2,112,34,8,65,1,106,5,32,5,11,54,2,112,32,0,32,7,54,2,108,32,1,40,2,4,33,10,32,1,40,2,0,33,11,32,7,32,8,65,3,116,106,34,5,65,0,59,1,6,32,5,32,12,59,1,4,32,5,32,11,32,10,107,54,2,0,32,1,40,2,12,33,5,11,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,5,65,34,107,14,7,2,1,1,1,1,1,4,0,11,2,64,32,5,65,219,0,107,14,5,0,1,1,1,3,1,11,32,1,16,12,26,32,1,16,13,32,9,65,0,54,2,24,32,9,66,0,55,2,16,65,127,33,13,65,0,33,8,65,0,33,10,3,64,32,0,40,2,64,33,14,2,64,2,64,2,64,2,64,32,0,32,1,32,2,32,3,32,9,65,16,106,16,31,34,6,4,64,2,64,32,6,65,127,71,13,0,65,1,33,6,32,8,69,13,0,32,1,40,2,12,65,221,0,70,13,2,11,32,9,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,10,69,13,13,32,10,35,8,40,2,0,17,2,0,12,13,11,32,12,32,14,70,4,64,32,4,65,0,54,2,4,32,4,40,2,0,33,5,32,9,40,2,16,33,7,2,64,2,64,32,9,40,2,20,34,6,32,4,40,2,8,75,4,64,2,127,32,5,4,64,32,5,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,5,32,4,32,6,54,2,8,32,4,40,2,4,34,11,69,13,1,32,11,69,13,1,32,5,32,6,106,32,5,32,11,252,10,0,0,12,1,11,32,6,69,13,1,11,32,7,4,64,32,6,69,13,1,32,5,32,7,32,6,252,10,0,0,12,1,11,32,6,69,13,0,32,5,65,0,32,6,252,11,0,11,32,4,32,5,54,2,0,32,4,32,4,40,2,4,32,6,106,54,2,4,12,4,11,2,64,32,4,40,2,4,34,6,32,9,40,2,20,34,5,73,4,64,32,4,40,2,0,33,7,32,4,40,2,8,34,11,32,5,73,4,64,65,8,32,11,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,33,6,2,127,32,7,4,64,32,7,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,7,32,4,32,6,54,2,8,32,4,40,2,4,33,6,11,32,4,32,7,54,2,0,32,5,32,6,107,34,11,4,64,32,6,32,7,106,65,0,32,11,252,11,0,11,32,4,32,5,54,2,4,12,1,11,32,5,69,13,3,11,65,0,33,6,32,9,40,2,16,33,16,3,64,32,6,32,16,106,45,0,0,33,11,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,4,40,2,0,32,6,106,34,17,45,0,0,34,7,14,5,1,2,6,3,0,5,11,32,11,65,5,73,13,3,12,4,11,32,11,65,5,79,13,3,66,128,130,136,136,32,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,4,11,32,11,65,5,79,13,2,66,129,130,136,136,32,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,3,11,32,11,65,5,79,13,1,66,129,130,136,152,192,0,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,2,11,66,130,132,136,160,192,0,32,11,65,3,116,173,66,248,1,131,136,167,33,7,12,1,11,65,0,33,7,11,32,17,32,7,58,0,0,32,5,32,6,65,1,106,34,6,71,13,0,11,12,1,11,32,1,16,12,26,32,0,32,0,40,2,64,65,1,107,54,2,64,32,8,65,1,71,4,64,65,0,33,6,3,64,32,0,40,2,60,34,3,32,10,32,6,65,2,116,106,40,2,0,65,20,108,106,32,10,32,6,65,1,106,34,6,65,2,116,106,40,2,0,34,5,59,1,14,32,3,32,5,65,20,108,106,34,3,65,6,107,32,0,40,2,64,59,1,0,32,3,65,2,107,34,3,32,3,47,1,0,65,16,114,59,1,0,32,6,32,13,71,13,0,11,11,32,9,40,2,16,34,3,4,64,32,3,35,8,40,2,0,17,2,0,11,32,10,69,13,8,32,10,35,8,40,2,0,17,2,0,12,8,11,32,4,40,2,4,33,6,11,32,5,32,6,79,13,0,3,64,32,4,40,2,0,32,5,106,34,6,66,128,130,136,136,32,32,6,49,0,0,34,18,66,3,134,136,167,65,0,32,18,66,5,84,27,58,0,0,32,5,65,1,106,34,5,32,4,40,2,4,73,13,0,11,11,2,64,32,8,65,1,106,34,5,32,15,77,13,0,65,8,32,15,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,34,15,65,2,116,33,6,32,10,4,64,32,10,32,6,35,6,40,2,0,17,1,0,33,10,12,1,11,32,6,35,7,40,2,0,17,0,0,33,10,11,32,10,32,8,65,2,116,106,32,14,54,2,0,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,8,65,1,106,34,7,32,0,40,2,68,34,11,75,4,127,65,8,32,11,65,1,116,34,8,32,7,32,7,32,8,73,27,34,8,32,8,65,8,77,27,34,7,65,20,108,33,8,2,127,32,6,4,64,32,6,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,6,32,0,32,7,54,2,68,32,0,40,2,64,34,8,65,1,106,5,32,7,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,8,32,9,65,127,54,2,4,32,6,32,8,65,20,108,106,34,8,65,0,54,1,2,32,8,65,0,59,1,0,32,8,32,9,40,2,4,54,1,6,32,8,32,9,47,1,8,59,1,10,32,8,65,0,59,1,18,32,8,65,255,255,3,54,1,14,32,8,32,2,59,1,12,32,9,65,0,54,2,20,32,13,65,1,106,33,13,32,5,33,8,12,0,11,0,11,2,64,32,5,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,71,13,7,11,32,1,40,2,0,33,5,32,1,16,22,32,1,40,2,0,33,8,32,1,16,13,32,1,40,2,12,65,58,71,4,64,32,1,65,0,58,0,16,32,1,32,5,54,2,0,32,1,16,12,26,12,7,11,32,1,16,12,26,32,1,16,13,32,9,65,0,54,2,24,32,9,66,0,55,2,16,32,0,32,1,32,2,32,3,32,9,65,16,106,16,31,34,3,4,64,32,9,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,65,1,32,3,32,3,65,127,70,27,33,6,12,7,11,32,0,40,2,156,1,32,5,32,8,32,5,107,16,106,34,8,69,4,64,32,1,32,5,54,2,0,65,3,33,6,12,7,11,32,0,40,2,60,33,6,32,12,33,5,3,64,2,64,32,6,32,5,65,20,108,106,34,3,32,8,59,1,4,32,3,47,1,14,34,3,65,255,255,3,70,13,0,32,3,32,5,77,13,0,32,3,34,5,32,0,40,2,64,73,13,1,11,11,32,4,32,9,65,16,106,16,53,32,9,40,2,16,34,3,69,13,3,32,3,35,8,40,2,0,17,2,0,12,3,11,32,1,40,2,0,33,5,32,0,32,1,16,46,13,5,32,0,40,2,156,1,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,34,7,69,4,64,32,1,65,0,58,0,16,32,1,32,5,65,1,106,54,2,0,32,1,16,12,26,65,2,33,6,12,6,11,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,8,65,1,106,34,5,32,0,40,2,68,34,10,75,4,127,65,8,32,10,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,20,108,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,0,32,8,54,2,68,32,0,40,2,64,34,8,65,1,106,5,32,5,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,8,65,20,108,106,34,5,65,0,54,1,2,32,5,32,7,59,1,0,32,5,32,9,40,2,16,54,1,6,32,5,32,9,47,1,20,59,1,10,32,5,65,2,65,0,32,3,27,59,1,18,32,5,65,255,255,3,54,1,14,32,5,32,2,59,1,12,12,2,11,32,1,16,12,26,32,1,16,13,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,5,32,0,40,2,68,34,8,75,4,127,65,8,32,8,65,1,116,34,8,32,5,32,5,32,8,73,27,34,5,32,5,65,8,77,27,34,8,65,20,108,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,0,32,8,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,5,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,7,65,20,108,106,34,5,65,0,54,1,2,32,5,65,0,59,1,0,32,5,32,9,40,2,16,54,1,6,32,5,32,9,47,1,20,59,1,10,32,5,65,2,65,0,32,3,27,59,1,18,32,5,65,255,255,3,54,1,14,32,5,32,2,59,1,12,12,1,11,32,1,16,12,26,32,1,16,13,2,64,2,64,2,64,2,64,32,1,40,2,12,34,5,65,34,107,14,13,1,2,3,3,3,3,1,3,3,3,3,3,2,0,11,32,5,65,219,0,71,13,2,11,32,9,65,0,54,2,24,32,9,66,0,55,2,16,2,64,2,64,2,64,2,64,32,0,32,1,32,2,32,5,65,46,70,4,127,32,1,16,12,26,32,1,16,13,65,1,5,32,3,11,32,9,65,16,106,16,31,34,6,65,1,106,14,2,1,0,2,11,3,64,32,4,32,9,65,16,106,16,53,32,9,65,0,54,2,20,32,1,40,2,12,34,3,65,46,70,4,64,32,1,16,12,26,32,1,16,13,11,32,0,32,1,32,2,32,3,65,46,70,32,9,65,16,106,16,31,34,6,69,13,0,11,32,6,65,127,71,13,1,11,65,1,33,6,32,1,40,2,12,65,41,70,13,1,11,32,9,40,2,16,34,0,69,13,6,32,0,35,8,40,2,0,17,2,0,12,6,11,32,1,16,12,26,32,9,40,2,16,34,3,69,13,2,32,3,35,8,40,2,0,17,2,0,12,2,11,32,1,16,12,26,2,127,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,1,11,32,1,40,2,0,33,2,32,1,16,22,2,64,32,1,40,2,12,34,3,65,63,70,13,0,32,3,65,33,70,13,0,65,1,12,1,11,32,1,16,12,26,32,0,65,24,106,34,8,32,2,32,1,40,2,0,32,2,107,16,45,33,5,32,0,40,2,84,33,2,32,0,32,0,40,2,88,34,4,65,1,106,34,3,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,3,11,54,2,88,32,0,32,2,54,2,84,32,2,32,4,65,3,116,106,34,2,32,5,54,2,4,32,2,65,2,54,2,0,32,1,16,13,3,64,2,64,2,64,2,127,2,64,2,64,2,64,2,64,32,1,40,2,12,34,2,65,34,107,14,8,1,3,3,3,3,3,3,0,2,11,32,1,16,12,26,32,1,16,13,32,0,40,2,84,33,2,32,0,32,0,40,2,88,34,3,65,1,106,34,1,32,0,40,2,92,34,4,75,4,127,65,8,32,4,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,3,116,33,1,2,127,32,2,4,64,32,2,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,92,32,0,40,2,88,34,3,65,1,106,5,32,1,11,54,2,88,32,0,32,2,54,2,84,32,2,32,3,65,3,116,106,66,0,55,2,0,65,0,12,7,11,65,1,32,0,32,1,16,46,13,6,26,32,8,32,0,40,2,132,1,32,0,40,2,136,1,16,45,12,2,11,32,2,65,192,0,70,13,2,11,2,64,32,2,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,5,11,32,1,40,2,0,33,2,32,1,16,22,32,8,32,2,32,1,40,2,0,32,2,107,16,45,11,33,2,32,0,40,2,84,33,3,32,0,32,0,40,2,88,34,4,65,1,106,34,5,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,5,32,4,32,5,75,27,34,4,32,4,65,8,77,27,34,5,65,3,116,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,5,11,54,2,88,32,0,32,3,54,2,84,32,3,32,4,65,3,116,106,34,3,65,2,54,2,0,12,1,11,32,1,16,12,26,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,2,65,223,0,70,13,0,32,2,65,45,70,13,0,65,1,12,3,11,32,1,40,2,0,33,3,32,1,16,22,2,64,2,64,32,0,40,2,16,34,5,69,13,0,32,1,40,2,0,32,3,107,33,4,32,0,40,2,12,33,12,65,0,33,2,3,64,2,64,32,4,32,12,32,2,65,3,116,106,34,6,40,2,4,70,4,64,32,0,40,2,0,32,6,40,2,0,106,32,3,32,4,16,27,69,13,1,11,32,2,65,1,106,34,2,32,5,71,13,1,12,2,11,11,32,2,65,127,71,13,1,11,32,1,65,0,58,0,16,32,1,32,3,54,2,0,32,1,16,12,26,65,4,12,3,11,32,0,40,2,84,33,3,32,0,32,0,40,2,88,34,4,65,1,106,34,5,32,0,40,2,92,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,5,32,4,32,5,75,27,34,4,32,4,65,8,77,27,34,5,65,3,116,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,92,32,0,40,2,88,34,4,65,1,106,5,32,5,11,54,2,88,32,0,32,3,54,2,84,32,3,32,4,65,3,116,106,34,3,65,1,54,2,0,11,32,3,32,2,54,2,4,32,1,16,13,12,0,11,0,11,33,6,12,4,11,32,1,40,2,0,33,8,2,64,32,5,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,71,13,4,11,32,1,16,22,2,64,2,64,32,1,40,2,0,32,8,107,34,7,65,1,70,4,64,65,0,33,11,65,0,33,5,32,8,45,0,0,65,223,0,70,13,1,11,32,8,35,1,65,181,10,106,32,7,16,27,69,4,64,32,1,16,13,2,64,2,64,2,64,32,1,40,2,12,16,19,13,0,65,0,33,5,65,1,33,11,2,64,32,1,40,2,12,34,7,65,34,107,14,12,2,3,3,3,3,3,3,5,3,3,3,1,0,11,32,7,65,223,0,71,13,2,11,32,1,40,2,0,33,6,32,1,16,22,65,1,33,11,32,0,40,2,156,1,32,6,32,1,40,2,0,32,6,107,65,1,16,30,34,5,13,3,32,1,65,0,58,0,16,32,1,32,6,54,2,0,32,1,16,12,26,65,2,33,6,12,8,11,32,1,40,2,0,33,7,32,0,32,1,16,46,13,7,32,0,40,2,156,1,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,34,5,13,2,32,1,65,0,58,0,16,32,1,32,7,65,1,106,54,2,0,32,1,16,12,26,65,2,33,6,12,7,11,32,1,65,0,58,0,16,32,1,16,12,26,12,6,11,32,0,40,2,156,1,32,8,32,7,65,1,16,30,34,5,69,13,1,65,0,33,11,11,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,10,65,1,106,34,7,32,0,40,2,68,34,13,75,4,127,65,8,32,13,65,1,116,34,10,32,7,32,7,32,10,73,27,34,7,32,7,65,8,77,27,34,10,65,20,108,33,7,2,127,32,6,4,64,32,6,32,7,35,6,40,2,0,17,1,0,12,1,11,32,7,35,7,40,2,0,17,0,0,11,33,6,32,0,32,10,54,2,68,32,0,40,2,64,34,10,65,1,106,5,32,7,11,54,2,64,32,0,32,6,54,2,60,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,6,32,10,65,20,108,106,34,6,65,0,54,1,2,32,6,32,5,59,1,0,32,6,32,9,40,2,16,54,1,6,32,6,32,9,47,1,20,59,1,10,32,6,65,2,65,0,32,3,27,59,1,18,32,6,65,255,255,3,54,1,14,32,6,32,2,59,1,12,32,0,40,2,60,32,0,40,2,64,65,20,108,106,34,3,65,20,107,33,6,2,64,32,5,65,253,255,3,75,13,0,32,0,40,2,156,1,40,2,72,32,5,65,3,108,106,45,0,2,65,1,113,69,13,0,32,3,65,18,107,32,6,47,1,0,59,1,0,32,6,65,0,59,1,0,11,32,11,4,64,32,3,65,2,107,34,7,32,7,47,1,0,65,128,4,114,59,1,0,11,32,5,69,4,64,32,3,65,2,107,34,5,32,5,47,1,0,65,1,114,59,1,0,11,2,64,2,64,32,1,40,2,12,65,47,71,13,0,32,3,65,18,107,34,5,47,1,0,69,4,64,32,1,65,0,58,0,16,32,1,32,8,65,1,107,54,2,0,32,1,16,12,26,65,5,33,6,12,7,11,32,1,16,12,26,32,1,40,2,0,33,3,32,6,2,127,2,64,2,64,32,1,40,2,12,16,19,13,0,65,1,33,6,2,64,32,1,40,2,12,34,7,65,34,107,14,12,2,10,10,10,10,10,10,10,10,10,10,1,0,11,32,7,65,223,0,71,13,9,11,32,1,16,22,32,0,40,2,156,1,34,10,32,3,32,1,40,2,0,32,3,107,65,1,16,30,12,1,11,32,0,32,1,16,46,13,7,32,0,40,2,156,1,34,10,32,0,40,2,132,1,32,0,40,2,136,1,65,0,16,30,11,34,6,59,1,0,32,6,69,4,64,32,1,65,0,58,0,16,32,1,32,3,54,2,0,32,1,16,12,26,65,2,33,6,12,7,11,32,10,40,2,0,65,15,73,13,0,32,5,47,1,0,34,3,65,253,255,3,75,13,1,32,10,40,2,72,32,3,65,3,108,106,45,0,2,65,1,113,69,13,1,32,10,40,2,156,1,32,3,65,2,116,106,34,3,47,1,2,34,7,69,13,1,32,10,40,2,160,1,32,3,47,1,0,65,1,116,106,33,3,65,0,33,5,3,64,32,3,32,5,65,1,116,106,47,1,0,32,6,70,13,1,32,7,32,5,65,1,106,34,5,71,13,0,11,12,1,11,32,1,16,13,32,9,65,0,54,2,12,32,9,66,0,55,2,4,32,2,65,1,106,33,5,65,0,33,10,65,0,33,11,3,64,32,10,65,255,255,3,113,34,8,65,7,75,33,13,3,64,65,0,33,7,2,64,2,64,2,64,32,1,40,2,12,65,33,107,14,14,0,2,2,2,2,2,2,2,2,2,2,2,2,1,2,11,32,1,16,12,26,32,1,16,13,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,3,65,45,70,13,0,32,3,65,223,0,71,13,8,11,32,1,40,2,0,33,3,32,1,16,22,32,1,40,2,0,33,6,32,1,16,13,32,0,40,2,156,1,32,3,32,6,32,3,107,16,106,34,6,69,4,64,32,1,32,3,54,2,0,65,3,33,6,12,9,11,32,13,13,2,32,9,65,16,106,32,8,65,1,116,106,32,6,59,1,0,32,10,65,1,106,33,10,12,3,11,32,1,16,12,26,32,1,16,13,65,1,33,7,11,32,0,47,1,64,33,3,32,0,32,1,32,5,32,7,32,9,65,4,106,16,31,34,6,4,64,32,6,65,127,71,13,7,65,1,33,6,32,1,40,2,12,65,41,71,13,7,2,64,32,7,69,13,0,32,11,65,255,255,3,113,34,3,69,13,7,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,3,65,255,255,3,70,13,0,32,0,40,2,64,32,3,77,13,0,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,6,65,255,255,3,70,13,0,3,64,32,6,65,255,255,3,113,34,3,32,0,40,2,64,79,13,1,32,0,40,2,60,32,3,65,20,108,106,34,3,32,3,47,1,18,65,4,114,59,1,18,32,3,47,1,14,34,6,65,255,255,3,71,13,0,11,11,32,10,65,255,255,3,113,34,3,4,64,2,64,32,9,65,16,106,33,11,65,0,33,7,65,0,33,10,65,0,33,13,32,0,40,2,60,32,12,65,255,255,3,113,65,20,108,106,33,14,32,0,40,2,120,33,5,32,0,40,2,124,34,6,4,64,65,0,33,8,3,64,2,127,32,5,32,8,65,1,116,106,47,1,0,34,15,69,4,64,32,3,32,7,70,4,64,32,14,32,13,59,1,16,12,5,11,32,8,65,1,106,33,13,65,0,33,10,65,0,12,1,11,32,3,32,7,77,4,64,65,1,33,10,65,0,12,1,11,65,0,32,7,65,1,106,32,15,32,11,32,7,65,1,116,106,47,1,0,71,32,10,114,34,10,65,1,113,27,11,33,7,32,8,65,1,106,34,8,32,6,71,13,0,11,11,32,14,32,6,59,1,16,2,64,32,3,32,6,106,34,7,32,0,40,2,128,1,77,13,0,32,7,65,1,116,33,8,2,127,32,5,4,64,32,5,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,5,32,0,32,7,54,2,128,1,32,0,40,2,124,34,7,32,6,77,13,0,32,7,32,6,107,65,1,116,34,7,69,13,0,32,5,32,8,106,32,5,32,6,65,1,116,106,32,7,252,10,0,0,11,32,3,65,1,116,34,8,4,64,32,5,32,6,65,1,116,106,32,11,32,8,252,10,0,0,11,32,0,32,5,54,2,120,32,0,32,0,40,2,124,32,3,106,34,8,54,2,124,32,0,32,8,65,1,106,34,3,32,0,40,2,128,1,34,6,75,4,127,65,8,32,6,65,1,116,34,8,32,3,32,3,32,8,73,27,34,3,32,3,65,8,77,27,34,8,65,1,116,33,3,2,127,32,5,4,64,32,5,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,5,32,0,32,8,54,2,128,1,32,0,40,2,124,34,8,65,1,106,5,32,3,11,54,2,124,32,0,32,5,54,2,120,32,5,32,8,65,1,116,106,65,0,59,1,0,11,11,32,1,16,12,26,32,9,40,2,4,34,3,69,13,5,32,3,35,8,40,2,0,17,2,0,12,5,5,32,0,40,2,64,33,6,32,4,32,9,65,4,106,16,53,32,9,65,0,54,2,8,32,3,32,3,32,6,70,107,33,11,12,1,11,0,11,0,11,0,11,32,1,65,0,58,0,16,32,1,32,8,65,1,107,54,2,0,32,1,16,12,26,65,5,33,6,12,4,11,32,1,65,0,58,0,16,32,1,32,8,54,2,0,32,1,16,12,26,65,2,33,6,12,3,11,32,1,16,13,65,3,33,8,3,64,32,8,33,3,65,2,33,8,2,64,2,64,3,64,2,64,32,1,40,2,12,34,5,65,192,0,71,4,64,2,64,32,5,65,42,107,14,22,4,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,5,11,35,1,65,196,12,106,32,3,65,255,1,113,65,2,116,106,40,2,0,33,8,12,3,11,32,1,16,12,26,2,64,32,1,40,2,12,16,19,13,0,32,1,40,2,12,34,5,65,223,0,70,13,0,32,5,65,45,70,13,0,65,1,33,6,12,8,11,32,1,40,2,0,33,5,32,1,16,22,32,1,40,2,0,33,6,32,1,16,13,32,0,32,5,32,6,32,5,107,16,45,33,10,32,10,32,4,40,2,4,34,6,79,4,64,32,10,65,1,106,33,5,32,4,40,2,0,33,7,32,10,32,4,40,2,8,34,11,79,4,64,65,8,32,11,65,1,116,34,6,32,5,32,5,32,6,73,27,34,6,32,6,65,8,77,27,33,6,2,127,32,7,4,64,32,7,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,7,32,4,32,6,54,2,8,32,4,40,2,4,33,6,11,32,4,32,7,54,2,0,32,5,32,6,107,34,11,4,64,32,6,32,7,106,65,0,32,11,252,11,0,11,32,4,32,5,54,2,4,11,32,4,40,2,0,32,10,106,34,5,66,131,136,144,160,192,0,32,5,49,0,0,34,18,66,3,134,136,167,65,0,32,18,66,5,84,27,58,0,0,32,0,40,2,60,33,7,32,12,33,5,3,64,2,64,2,127,32,7,32,5,65,20,108,106,34,6,47,1,6,65,255,255,3,70,4,64,32,6,65,6,106,12,1,11,32,6,65,8,106,32,6,47,1,8,65,255,255,3,70,13,0,26,32,6,47,1,10,65,255,255,3,71,13,1,32,6,65,10,106,11,32,10,59,1,0,11,32,6,47,1,14,34,6,65,255,255,3,70,13,2,32,5,32,6,79,13,2,32,6,34,5,32,0,40,2,64,73,13,0,11,12,1,11,11,65,4,65,2,32,3,65,2,75,27,33,8,11,32,1,16,12,26,32,1,16,13,12,1,11,11,2,64,2,64,2,64,2,64,32,3,65,1,107,14,4,2,1,3,0,3,11,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,1,32,0,40,2,68,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,1,32,1,32,5,73,27,34,1,32,1,65,8,77,27,34,5,65,20,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,5,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,1,11,54,2,64,32,0,32,6,54,2,60,32,6,32,7,65,20,108,106,34,0,65,0,54,1,2,32,0,65,0,59,1,0,32,0,32,9,40,2,16,54,1,6,32,0,32,9,47,1,20,59,1,10,32,0,65,128,128,160,1,54,1,16,32,0,32,12,59,1,14,32,0,32,2,59,1,12,12,2,11,32,9,65,255,255,3,59,1,20,32,9,65,127,54,2,16,32,0,40,2,60,33,6,32,0,32,0,40,2,64,34,7,65,1,106,34,1,32,0,40,2,68,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,1,32,1,32,5,73,27,34,1,32,1,65,8,77,27,34,5,65,20,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,5,54,2,68,32,0,40,2,64,34,7,65,1,106,5,32,1,11,54,2,64,32,0,32,6,54,2,60,32,6,32,7,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,9,40,2,16,54,1,6,32,1,32,9,47,1,20,59,1,10,32,1,65,128,128,160,1,54,1,16,32,1,32,12,59,1,14,32,1,32,2,59,1,12,32,0,40,2,64,34,1,65,1,107,33,2,32,0,40,2,60,33,0,3,64,32,0,32,12,65,20,108,106,34,5,47,1,14,34,12,65,255,255,3,71,32,2,32,12,75,113,13,0,11,32,5,32,1,59,1,14,12,1,11,32,0,40,2,64,33,1,32,0,40,2,60,33,0,3,64,32,0,32,12,65,20,108,106,34,2,47,1,14,34,12,65,255,255,3,71,32,1,32,12,75,113,13,0,11,32,2,32,1,59,1,14,11,32,4,47,1,4,4,64,35,1,32,3,65,2,116,106,65,212,12,106,33,1,65,4,65,2,32,3,65,3,107,65,2,73,27,33,0,65,0,33,6,3,64,32,3,33,5,2,64,2,64,2,64,2,64,2,64,32,4,40,2,0,32,6,106,34,2,45,0,0,65,1,107,14,4,0,1,4,2,3,11,32,1,40,2,0,33,5,12,3,11,65,2,33,5,12,2,11,32,0,33,5,12,1,11,65,0,33,5,11,32,2,32,5,58,0,0,32,6,65,1,106,34,6,32,4,47,1,4,73,13,0,11,11,65,0,33,6,12,2,11,65,1,33,6,11,32,9,40,2,4,34,0,69,13,0,32,0,35,8,40,2,0,17,2,0,11,32,9,65,32,106,36,0,32,6,11,144,10,2,19,127,1,126,35,0,65,32,107,34,11,36,0,2,64,32,1,40,2,0,34,6,32,0,70,13,0,32,0,47,1,144,1,34,14,4,64,32,0,65,16,106,33,15,32,1,40,2,4,34,5,65,48,106,33,16,32,5,65,32,113,33,17,32,5,65,3,118,65,1,113,33,18,32,5,65,128,254,3,113,65,8,118,33,19,32,1,45,0,11,33,20,32,1,45,0,10,33,21,3,64,2,64,2,64,32,15,32,4,65,4,116,106,34,12,40,2,4,34,7,32,5,70,13,0,32,7,69,13,1,32,5,69,13,1,32,19,33,3,32,7,65,1,113,34,9,4,127,32,7,65,128,254,3,113,65,8,118,5,32,7,47,1,40,11,65,255,255,3,113,32,5,65,1,113,34,13,4,127,32,3,5,32,5,47,1,40,11,65,255,255,3,113,71,13,1,32,12,45,0,11,33,10,32,12,45,0,10,33,3,2,64,2,64,2,64,32,9,4,64,32,7,65,32,113,13,1,12,3,11,32,7,45,0,45,65,2,113,13,0,32,7,40,2,32,69,13,1,11,2,64,32,13,4,64,32,17,69,13,1,12,4,11,32,5,45,0,45,65,2,113,13,3,32,5,40,2,32,13,3,11,32,9,13,1,11,32,7,40,2,4,33,3,11,32,21,33,8,32,13,4,127,32,8,5,32,5,40,2,4,11,32,3,71,13,1,32,20,33,3,32,9,4,127,32,10,5,32,7,40,2,16,11,32,13,4,127,32,3,5,32,5,40,2,16,11,71,13,1,65,0,33,3,65,0,33,10,32,9,4,127,65,0,5,32,7,40,2,36,11,32,13,4,127,65,0,5,32,5,40,2,36,11,71,13,1,32,18,33,3,32,9,4,127,32,7,65,3,118,65,1,113,5,32,7,47,1,44,65,2,118,65,1,113,11,32,13,4,127,32,3,5,32,5,47,1,44,65,2,118,65,1,113,11,71,13,1,35,1,33,3,35,1,33,8,2,127,32,3,65,148,12,106,32,9,13,0,26,35,1,65,148,12,106,32,7,45,0,44,65,192,0,113,69,13,0,26,35,1,65,148,12,106,32,7,65,48,106,32,7,40,2,36,27,11,34,3,40,2,24,33,9,2,64,2,127,32,8,65,148,12,106,32,13,13,0,26,35,1,65,148,12,106,32,5,45,0,44,65,192,0,113,69,13,0,26,35,1,65,148,12,106,32,16,32,5,40,2,36,27,11,34,10,40,2,24,34,8,65,25,79,4,64,32,8,32,9,71,13,3,32,3,40,2,0,33,3,32,10,40,2,0,33,10,12,1,11,32,8,32,9,71,13,2,11,32,3,32,10,32,8,16,18,13,1,11,32,6,32,12,40,2,0,34,3,70,4,64,65,0,33,3,2,127,65,0,32,5,65,1,113,13,0,26,65,0,32,5,40,2,36,69,13,0,26,32,5,40,2,60,11,33,4,2,64,32,7,65,1,113,13,0,32,7,40,2,36,69,13,0,32,7,40,2,60,33,3,11,32,3,32,4,78,13,4,32,5,65,1,113,69,4,64,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,32,1,40,2,0,33,6,11,32,11,32,12,41,2,4,55,3,8,32,2,32,11,65,8,106,16,10,32,12,32,1,41,2,4,34,22,55,2,4,32,6,40,2,160,1,33,2,65,0,33,4,2,64,32,22,167,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,60,33,4,11,32,0,32,2,32,4,106,54,2,160,1,12,4,11,32,3,47,1,0,32,6,47,1,0,71,13,0,32,3,40,2,4,32,6,40,2,4,71,13,0,32,3,40,2,152,1,32,6,40,2,152,1,71,13,0,32,6,47,1,144,1,4,64,32,6,65,16,106,33,1,65,0,33,4,3,64,32,12,40,2,0,32,11,32,1,32,4,65,4,116,106,34,8,41,2,8,55,3,24,32,11,32,8,41,2,0,55,3,16,32,11,65,16,106,32,2,16,32,32,4,65,1,106,34,4,32,6,47,1,144,1,73,13,0,11,11,32,6,40,2,160,1,33,4,32,5,4,64,65,0,33,2,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,2,11,32,2,32,4,106,33,4,11,32,4,32,0,40,2,160,1,76,13,3,32,0,32,4,54,2,160,1,12,3,11,32,4,65,1,106,34,4,32,14,71,13,0,11,32,14,65,8,70,13,1,11,32,6,4,64,32,6,32,6,40,2,148,1,65,1,106,54,2,148,1,11,32,6,40,2,160,1,33,2,32,6,40,2,156,1,33,3,32,0,32,14,65,1,106,59,1,144,1,32,0,32,14,65,4,116,106,34,8,32,1,41,2,8,55,2,24,32,8,32,1,41,2,0,55,2,16,32,1,40,2,4,34,4,4,64,32,4,65,1,113,69,4,64,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,32,1,45,0,4,33,4,11,2,64,32,4,65,1,113,69,4,64,65,0,33,4,65,0,33,6,32,1,40,2,4,34,1,40,2,36,34,8,4,64,32,1,40,2,56,33,6,11,32,6,32,1,47,1,44,65,1,113,106,32,1,47,1,40,65,254,255,3,70,106,33,6,32,8,69,13,1,32,1,40,2,60,33,4,12,1,11,32,4,65,1,118,65,1,113,33,6,65,0,33,4,11,32,3,32,6,106,33,3,32,2,32,4,106,33,2,11,32,0,40,2,156,1,32,3,73,4,64,32,0,32,3,54,2,156,1,11,32,2,32,0,40,2,160,1,76,13,0,32,0,32,2,54,2,160,1,11,32,11,65,32,106,36,0,11,117,2,1,127,1,126,32,0,173,66,7,124,66,248,255,255,255,31,131,33,2,35,1,65,140,213,0,106,34,1,40,2,0,34,0,69,4,64,32,1,35,5,34,0,54,2,0,11,2,64,32,2,32,0,173,124,34,2,66,255,255,255,255,15,88,4,64,32,2,167,34,1,63,0,65,16,116,77,13,1,32,1,16,1,13,1,11,35,1,65,216,213,0,106,65,48,54,2,0,65,127,15,11,35,1,65,140,213,0,106,32,1,54,2,0,32,0,11,253,41,1,11,127,35,0,65,16,107,34,11,36,0,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,0,65,244,1,77,4,64,35,1,65,164,215,0,106,34,2,40,2,0,34,4,65,16,32,0,65,11,106,65,248,3,113,32,0,65,11,73,27,34,7,65,3,118,34,0,118,34,1,65,3,113,4,64,2,64,32,2,32,1,65,127,115,65,1,113,32,0,106,34,3,65,3,116,34,1,106,34,0,34,6,65,40,106,34,7,32,0,40,2,48,34,0,40,2,8,34,5,70,4,64,32,2,32,4,65,126,32,3,119,113,54,2,0,12,1,11,32,5,32,7,54,2,12,32,6,32,5,54,2,48,11,32,0,65,8,106,33,5,32,0,32,1,65,3,114,54,2,4,32,0,32,1,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,11,11,32,7,35,1,65,164,215,0,106,34,2,40,2,8,34,8,77,13,1,32,1,4,64,2,64,32,2,65,2,32,0,116,34,5,65,0,32,5,107,114,32,1,32,0,116,113,104,34,3,65,3,116,34,1,106,34,0,34,6,65,40,106,34,9,32,0,40,2,48,34,0,40,2,8,34,5,70,4,64,32,2,32,4,65,126,32,3,119,113,34,4,54,2,0,12,1,11,32,5,32,9,54,2,12,32,6,32,5,54,2,48,11,32,0,32,7,65,3,114,54,2,4,32,0,32,7,106,34,6,32,1,32,7,107,34,3,65,1,114,54,2,4,32,0,32,1,106,32,3,54,2,0,32,8,4,64,35,1,65,164,215,0,106,34,5,34,2,32,8,65,120,113,106,65,40,106,33,1,32,2,40,2,20,33,2,2,127,32,4,65,1,32,8,65,3,118,116,34,7,113,69,4,64,32,5,32,4,32,7,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,5,32,1,32,2,54,2,8,32,5,32,2,54,2,12,32,2,32,1,54,2,12,32,2,32,5,54,2,8,11,32,0,65,8,106,33,5,35,1,65,164,215,0,106,34,0,32,6,54,2,20,32,0,32,3,54,2,8,12,11,11,35,1,65,164,215,0,106,34,0,40,2,4,34,10,69,13,1,32,10,104,65,2,116,32,0,106,40,2,176,2,34,3,40,2,4,65,120,113,32,7,107,33,0,32,3,33,1,3,64,2,64,32,1,40,2,16,34,5,69,4,64,32,1,40,2,20,34,5,69,13,1,11,32,5,40,2,4,65,120,113,32,7,107,34,1,32,0,32,0,32,1,75,34,1,27,33,0,32,5,32,3,32,1,27,33,3,32,5,33,1,12,1,11,11,32,3,40,2,24,33,9,32,3,32,3,40,2,12,34,5,71,4,64,32,3,40,2,8,34,1,32,5,54,2,12,32,5,32,1,54,2,8,12,10,11,32,3,40,2,20,34,1,4,127,32,3,65,20,106,5,32,3,40,2,16,34,1,69,13,3,32,3,65,16,106,11,33,2,3,64,32,2,33,6,32,1,34,5,65,20,106,33,2,32,1,40,2,20,34,1,13,0,32,5,65,16,106,33,2,32,5,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,9,11,65,127,33,7,32,0,65,191,127,75,13,0,32,0,65,11,106,34,1,65,120,113,33,7,35,1,65,164,215,0,106,40,2,4,34,6,69,13,0,65,31,33,8,32,0,65,244,255,255,7,77,4,64,32,7,65,38,32,1,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,8,11,65,0,32,7,107,33,0,2,64,2,64,35,1,65,164,215,0,106,32,8,65,2,116,106,40,2,176,2,34,1,4,64,32,7,65,25,32,8,65,1,118,107,65,0,32,8,65,31,71,27,116,33,3,3,64,2,64,32,1,40,2,4,65,120,113,32,7,107,34,4,32,0,79,13,0,32,1,33,2,32,4,34,0,13,0,65,0,33,0,32,1,33,5,12,3,11,32,5,32,1,40,2,20,34,4,32,4,32,1,32,3,65,29,118,65,4,113,106,40,2,16,34,1,70,27,32,5,32,4,27,33,5,32,3,65,1,116,33,3,32,1,13,0,11,11,32,2,32,5,114,69,4,64,65,0,33,2,65,2,32,8,116,34,1,65,0,32,1,107,114,32,6,113,34,1,69,13,3,35,1,65,164,215,0,106,32,1,104,65,2,116,106,40,2,176,2,33,5,11,32,5,69,13,1,11,3,64,32,5,40,2,4,65,120,113,32,7,107,34,3,32,0,73,33,1,32,3,32,0,32,1,27,33,0,32,5,32,2,32,1,27,33,2,32,5,40,2,16,34,1,4,127,32,1,5,32,5,40,2,20,11,34,5,13,0,11,11,32,2,69,13,0,32,0,35,1,65,164,215,0,106,40,2,8,32,7,107,79,13,0,32,2,40,2,24,33,8,32,2,32,2,40,2,12,34,5,71,4,64,32,2,40,2,8,34,1,32,5,54,2,12,32,5,32,1,54,2,8,12,8,11,32,2,40,2,20,34,1,4,127,32,2,65,20,106,5,32,2,40,2,16,34,1,69,13,3,32,2,65,16,106,11,33,3,3,64,32,3,33,4,32,1,34,5,65,20,106,33,3,32,1,40,2,20,34,1,13,0,32,5,65,16,106,33,3,32,5,40,2,16,34,1,13,0,11,32,4,65,0,54,2,0,12,7,11,32,7,35,1,65,164,215,0,106,34,0,40,2,8,34,2,77,4,64,32,0,40,2,20,33,0,2,64,32,2,32,7,107,34,1,65,16,79,4,64,32,0,32,7,106,34,3,32,1,65,1,114,54,2,4,32,0,32,2,106,32,1,54,2,0,32,0,32,7,65,3,114,54,2,4,12,1,11,32,0,32,2,65,3,114,54,2,4,32,0,32,2,106,34,1,32,1,40,2,4,65,1,114,54,2,4,65,0,33,3,65,0,33,1,11,35,1,65,164,215,0,106,34,2,32,1,54,2,8,32,2,32,3,54,2,20,32,0,65,8,106,33,5,12,9,11,32,7,35,1,65,164,215,0,106,34,0,40,2,12,34,2,73,4,64,32,0,32,2,32,7,107,34,1,54,2,12,32,0,32,0,40,2,24,34,0,32,7,106,34,2,54,2,24,32,2,32,1,65,1,114,54,2,4,32,0,32,7,65,3,114,54,2,4,32,0,65,8,106,33,5,12,9,11,65,0,33,5,32,7,65,47,106,34,4,2,127,35,1,65,252,218,0,106,34,0,40,2,0,4,64,32,0,40,2,8,12,1,11,35,1,34,1,65,252,218,0,106,34,0,65,0,54,2,20,32,0,66,127,55,2,12,32,0,66,128,160,128,128,128,128,4,55,2,4,32,1,65,164,215,0,106,65,0,54,2,188,3,32,0,32,11,65,12,106,65,112,113,65,216,170,213,170,5,115,54,2,0,65,128,32,11,34,0,106,34,6,65,0,32,0,107,34,8,113,34,1,32,7,77,13,8,35,1,65,164,215,0,106,34,0,40,2,184,3,34,3,4,64,32,0,40,2,176,3,34,0,32,1,106,34,9,32,0,77,13,9,32,3,32,9,73,13,9,11,2,64,35,1,65,164,215,0,106,34,0,45,0,188,3,65,4,113,69,4,64,2,64,2,64,2,64,2,64,32,0,40,2,24,34,3,4,64,32,0,65,192,3,106,33,0,3,64,32,0,40,2,0,34,9,32,3,77,4,64,32,3,32,9,32,0,40,2,4,106,73,13,3,11,32,0,40,2,8,34,0,13,0,11,11,65,0,16,33,34,2,65,127,70,13,3,32,1,33,3,35,1,65,252,218,0,106,40,2,4,34,0,65,1,107,34,6,32,2,113,4,64,32,1,32,2,107,32,2,32,6,106,65,0,32,0,107,113,106,33,3,11,32,3,32,7,77,13,3,35,1,65,164,215,0,106,34,6,40,2,176,3,33,0,32,6,40,2,184,3,34,6,4,64,32,0,32,0,32,3,106,34,8,79,13,4,32,6,32,8,73,13,4,11,32,3,16,33,34,0,32,2,71,13,1,12,5,11,32,6,32,2,107,32,8,113,34,3,16,33,34,2,32,0,40,2,0,32,0,40,2,4,106,70,13,1,32,2,33,0,11,32,0,65,127,70,13,1,32,7,65,48,106,32,3,77,4,64,32,0,33,2,12,4,11,35,1,65,252,218,0,106,40,2,8,34,2,32,4,32,3,107,106,65,0,32,2,107,113,34,2,16,33,65,127,70,13,1,32,2,32,3,106,33,3,32,0,33,2,12,3,11,32,2,65,127,71,13,2,11,35,1,65,164,215,0,106,34,0,32,0,40,2,188,3,65,4,114,54,2,188,3,11,32,1,16,33,33,2,65,0,16,33,33,0,32,2,65,127,70,13,5,32,0,65,127,70,13,5,32,0,32,2,77,13,5,32,0,32,2,107,34,3,32,7,65,40,106,77,13,5,11,35,1,65,164,215,0,106,34,0,32,0,40,2,176,3,32,3,106,34,1,54,2,176,3,32,0,40,2,180,3,32,1,73,4,64,32,0,32,1,54,2,180,3,11,2,64,35,1,65,164,215,0,106,34,0,40,2,24,34,1,4,64,32,0,65,192,3,106,33,0,3,64,32,2,32,0,40,2,0,34,4,32,0,40,2,4,34,6,106,70,13,2,32,0,40,2,8,34,0,13,0,11,12,4,11,35,1,65,164,215,0,106,34,0,40,2,16,34,1,65,0,32,1,32,2,77,27,69,4,64,32,0,32,2,54,2,16,11,65,0,33,0,35,1,34,4,65,164,215,0,106,34,1,65,0,54,2,204,3,32,1,32,3,54,2,196,3,32,1,32,2,54,2,192,3,32,1,65,127,54,2,32,32,1,32,4,65,252,218,0,106,40,2,0,54,2,36,3,64,35,1,65,164,215,0,106,32,0,65,3,116,106,34,1,32,1,65,40,106,34,4,54,2,48,32,1,32,4,54,2,52,32,0,65,1,106,34,0,65,32,71,13,0,11,35,1,34,1,65,164,215,0,106,34,0,32,3,65,40,107,34,3,65,120,32,2,107,65,7,113,34,4,107,34,6,54,2,12,32,0,32,2,32,4,106,34,4,54,2,24,32,4,32,6,65,1,114,54,2,4,32,2,32,3,106,65,40,54,2,4,32,0,32,1,65,252,218,0,106,40,2,16,54,2,28,12,4,11,32,1,32,2,79,13,2,32,1,32,4,73,13,2,32,0,40,2,12,65,8,113,13,2,32,0,32,3,32,6,106,54,2,4,35,1,34,2,65,164,215,0,106,34,0,32,1,65,120,32,1,107,65,7,113,34,4,106,34,6,54,2,24,32,0,32,0,40,2,12,32,3,106,34,3,32,4,107,34,4,54,2,12,32,6,32,4,65,1,114,54,2,4,32,1,32,3,106,65,40,54,2,4,32,0,32,2,65,252,218,0,106,40,2,16,54,2,28,12,3,11,65,0,33,5,12,6,11,65,0,33,5,12,4,11,35,1,65,164,215,0,106,34,0,40,2,16,32,2,75,4,64,32,0,32,2,54,2,16,11,32,2,32,3,106,33,6,35,1,65,228,218,0,106,33,0,2,64,3,64,32,6,32,0,40,2,0,34,4,71,4,64,32,0,40,2,8,34,0,13,1,12,2,11,11,32,0,45,0,12,65,8,113,69,13,3,11,35,1,65,228,218,0,106,33,0,3,64,2,64,32,0,40,2,0,34,4,32,1,77,4,64,32,1,32,4,32,0,40,2,4,106,34,6,73,13,1,11,32,0,40,2,8,33,0,12,1,11,11,35,1,34,4,65,164,215,0,106,34,0,32,3,65,40,107,34,8,65,120,32,2,107,65,7,113,34,9,107,34,10,54,2,12,32,0,32,2,32,9,106,34,9,54,2,24,32,9,32,10,65,1,114,54,2,4,32,2,32,8,106,65,40,54,2,4,32,0,32,4,65,252,218,0,106,40,2,16,54,2,28,32,1,32,6,65,39,32,6,107,65,7,113,106,65,47,107,34,4,32,4,32,1,65,16,106,73,27,34,4,65,27,54,2,4,32,4,32,0,41,2,200,3,55,2,16,32,4,32,0,41,2,192,3,55,2,8,32,0,32,2,54,2,192,3,32,0,32,3,54,2,196,3,32,0,65,0,54,2,204,3,32,0,32,4,65,8,106,54,2,200,3,32,4,65,24,106,33,0,3,64,32,0,65,7,54,2,4,32,0,65,8,106,32,0,65,4,106,33,0,32,6,73,13,0,11,32,1,32,4,70,13,0,32,4,32,4,40,2,4,65,126,113,54,2,4,32,1,32,4,32,1,107,34,2,65,1,114,54,2,4,32,4,32,2,54,2,0,2,127,32,2,65,255,1,77,4,64,35,1,65,164,215,0,106,34,3,32,2,65,248,1,113,106,65,40,106,33,0,2,127,32,3,40,2,0,34,4,65,1,32,2,65,3,118,116,34,2,113,69,4,64,32,3,32,2,32,4,114,54,2,0,32,0,12,1,11,32,0,40,2,8,11,33,3,32,0,32,1,54,2,8,32,3,32,1,54,2,12,65,8,33,4,65,12,12,1,11,65,31,33,0,32,2,65,255,255,255,7,77,4,64,32,2,65,38,32,2,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,0,11,32,1,32,0,54,2,28,32,1,66,0,55,2,16,35,1,65,164,215,0,106,34,4,32,0,65,2,116,106,34,3,65,176,2,106,33,6,2,64,2,64,32,4,40,2,4,34,8,65,1,32,0,116,34,9,113,69,4,64,32,4,32,8,32,9,114,54,2,4,32,3,32,1,54,2,176,2,32,1,32,6,54,2,24,12,1,11,32,2,65,25,32,0,65,1,118,107,65,0,32,0,65,31,71,27,116,33,0,32,3,40,2,176,2,33,4,3,64,32,4,34,3,40,2,4,65,120,113,32,2,70,13,2,32,0,65,29,118,33,4,32,0,65,1,116,33,0,32,3,32,4,65,4,113,106,34,6,40,2,16,34,4,13,0,11,32,6,32,1,54,2,16,32,1,32,3,54,2,24,11,65,12,33,4,32,1,34,3,33,0,65,8,12,1,11,32,3,40,2,8,34,0,32,1,54,2,12,32,3,32,1,54,2,8,32,1,32,0,54,2,8,65,0,33,0,65,12,33,4,65,24,11,33,2,32,1,32,4,106,32,3,54,2,0,32,1,32,2,106,32,0,54,2,0,11,35,1,65,164,215,0,106,34,0,40,2,12,34,1,32,7,77,13,0,32,0,32,1,32,7,107,34,1,54,2,12,32,0,32,0,40,2,24,34,0,32,7,106,34,2,54,2,24,32,2,32,1,65,1,114,54,2,4,32,0,32,7,65,3,114,54,2,4,32,0,65,8,106,33,5,12,4,11,35,1,65,216,213,0,106,65,48,54,2,0,12,3,11,32,0,32,2,54,2,0,32,0,32,0,40,2,4,32,3,106,54,2,4,32,2,65,120,32,2,107,65,7,113,106,34,8,32,7,65,3,114,54,2,4,32,4,65,120,32,4,107,65,7,113,106,34,4,32,7,32,8,106,34,3,107,33,6,2,64,35,1,65,164,215,0,106,34,0,40,2,24,32,4,70,4,64,32,0,32,3,54,2,24,32,0,32,0,40,2,12,32,6,106,34,0,54,2,12,32,3,32,0,65,1,114,54,2,4,12,1,11,35,1,65,164,215,0,106,34,0,40,2,20,32,4,70,4,64,32,0,32,3,54,2,20,32,0,32,0,40,2,8,32,6,106,34,0,54,2,8,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,12,1,11,32,4,40,2,4,34,2,65,3,113,65,1,70,4,64,32,2,65,120,113,33,9,32,4,40,2,12,33,1,2,64,32,2,65,255,1,77,4,64,32,4,40,2,8,34,0,32,1,70,4,64,35,1,65,164,215,0,106,34,0,32,0,40,2,0,65,126,32,2,65,3,118,119,113,54,2,0,12,2,11,32,0,32,1,54,2,12,32,1,32,0,54,2,8,12,1,11,32,4,40,2,24,33,7,2,64,32,1,32,4,71,4,64,32,4,40,2,8,34,0,32,1,54,2,12,32,1,32,0,54,2,8,12,1,11,2,64,32,4,40,2,20,34,2,4,127,32,4,65,20,106,5,32,4,40,2,16,34,2,69,13,1,32,4,65,16,106,11,33,0,3,64,32,0,33,5,32,2,34,1,65,20,106,33,0,32,1,40,2,20,34,2,13,0,32,1,65,16,106,33,0,32,1,40,2,16,34,2,13,0,11,32,5,65,0,54,2,0,12,1,11,65,0,33,1,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,0,32,4,40,2,28,34,2,65,2,116,106,34,5,40,2,176,2,32,4,70,4,64,32,5,32,1,54,2,176,2,32,1,13,1,32,0,32,0,40,2,4,65,126,32,2,119,113,54,2,4,12,2,11,2,64,32,4,32,7,40,2,16,70,4,64,32,7,32,1,54,2,16,12,1,11,32,7,32,1,54,2,20,11,32,1,69,13,1,11,32,1,32,7,54,2,24,32,4,40,2,16,34,0,4,64,32,1,32,0,54,2,16,32,0,32,1,54,2,24,11,32,4,40,2,20,34,0,69,13,0,32,1,32,0,54,2,20,32,0,32,1,54,2,24,11,32,6,32,9,106,33,6,32,4,32,9,106,34,4,40,2,4,33,2,11,32,4,32,2,65,126,113,54,2,4,32,3,32,6,65,1,114,54,2,4,32,3,32,6,106,32,6,54,2,0,32,6,65,255,1,77,4,64,35,1,65,164,215,0,106,34,1,32,6,65,248,1,113,106,65,40,106,33,0,2,127,32,1,40,2,0,34,2,65,1,32,6,65,3,118,116,34,5,113,69,4,64,32,1,32,2,32,5,114,54,2,0,32,0,12,1,11,32,0,40,2,8,11,33,1,32,0,32,3,54,2,8,32,1,32,3,54,2,12,32,3,32,0,54,2,12,32,3,32,1,54,2,8,12,1,11,65,31,33,1,32,6,65,255,255,255,7,77,4,64,32,6,65,38,32,6,65,8,118,103,34,0,107,118,65,1,113,32,0,65,1,116,107,65,62,106,33,1,11,32,3,32,1,54,2,28,32,3,66,0,55,2,16,35,1,65,164,215,0,106,34,2,32,1,65,2,116,106,34,0,65,176,2,106,33,5,2,64,2,64,32,2,40,2,4,34,4,65,1,32,1,116,34,7,113,69,4,64,32,2,32,4,32,7,114,54,2,4,32,0,32,3,54,2,176,2,32,3,32,5,54,2,24,12,1,11,32,6,65,25,32,1,65,1,118,107,65,0,32,1,65,31,71,27,116,33,1,32,0,40,2,176,2,33,0,3,64,32,0,34,2,40,2,4,65,120,113,32,6,70,13,2,32,1,65,29,118,33,0,32,1,65,1,116,33,1,32,2,32,0,65,4,113,106,34,5,40,2,16,34,0,13,0,11,32,5,32,3,54,2,16,32,3,32,2,54,2,24,11,32,3,32,3,54,2,12,32,3,32,3,54,2,8,12,1,11,32,2,40,2,8,34,0,32,3,54,2,12,32,2,32,3,54,2,8,32,3,65,0,54,2,24,32,3,32,2,54,2,12,32,3,32,0,54,2,8,11,32,8,65,8,106,33,5,12,2,11,2,64,32,8,69,13,0,2,64,35,1,65,164,215,0,106,34,1,32,2,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,2,70,4,64,32,4,32,5,54,2,176,2,32,5,13,1,32,1,32,6,65,126,32,3,119,113,34,6,54,2,4,12,2,11,2,64,32,2,32,8,40,2,16,70,4,64,32,8,32,5,54,2,16,12,1,11,32,8,32,5,54,2,20,11,32,5,69,13,1,11,32,5,32,8,54,2,24,32,2,40,2,16,34,1,4,64,32,5,32,1,54,2,16,32,1,32,5,54,2,24,11,32,2,40,2,20,34,1,69,13,0,32,5,32,1,54,2,20,32,1,32,5,54,2,24,11,2,64,32,0,65,15,77,4,64,32,2,32,0,32,7,106,34,0,65,3,114,54,2,4,32,0,32,2,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,1,11,32,2,32,7,65,3,114,54,2,4,32,2,32,7,106,34,4,32,0,65,1,114,54,2,4,32,0,32,4,106,32,0,54,2,0,32,0,65,255,1,77,4,64,35,1,65,164,215,0,106,34,5,32,0,65,248,1,113,106,65,40,106,33,1,2,127,32,5,40,2,0,34,3,65,1,32,0,65,3,118,116,34,0,113,69,4,64,32,5,32,0,32,3,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,0,32,1,32,4,54,2,8,32,0,32,4,54,2,12,32,4,32,1,54,2,12,32,4,32,0,54,2,8,12,1,11,65,31,33,5,32,0,65,255,255,255,7,77,4,64,32,0,65,38,32,0,65,8,118,103,34,1,107,118,65,1,113,32,1,65,1,116,107,65,62,106,33,5,11,32,4,32,5,54,2,28,32,4,66,0,55,2,16,35,1,32,5,65,2,116,106,65,212,217,0,106,33,1,2,64,2,64,32,6,65,1,32,5,116,34,3,113,69,4,64,35,1,65,164,215,0,106,32,3,32,6,114,54,2,4,32,1,32,4,54,2,0,32,4,32,1,54,2,24,12,1,11,32,0,65,25,32,5,65,1,118,107,65,0,32,5,65,31,71,27,116,33,5,32,1,40,2,0,33,1,3,64,32,1,34,3,40,2,4,65,120,113,32,0,70,13,2,32,5,65,29,118,33,1,32,5,65,1,116,33,5,32,3,32,1,65,4,113,106,34,6,40,2,16,34,1,13,0,11,32,6,32,4,54,2,16,32,4,32,3,54,2,24,11,32,4,32,4,54,2,12,32,4,32,4,54,2,8,12,1,11,32,3,40,2,8,34,0,32,4,54,2,12,32,3,32,4,54,2,8,32,4,65,0,54,2,24,32,4,32,3,54,2,12,32,4,32,0,54,2,8,11,32,2,65,8,106,33,5,12,1,11,2,64,32,9,69,13,0,2,64,35,1,65,164,215,0,106,34,1,32,3,40,2,28,34,2,65,2,116,106,34,6,40,2,176,2,32,3,70,4,64,32,6,32,5,54,2,176,2,32,5,13,1,32,1,32,10,65,126,32,2,119,113,54,2,4,12,2,11,2,64,32,3,32,9,40,2,16,70,4,64,32,9,32,5,54,2,16,12,1,11,32,9,32,5,54,2,20,11,32,5,69,13,1,11,32,5,32,9,54,2,24,32,3,40,2,16,34,1,4,64,32,5,32,1,54,2,16,32,1,32,5,54,2,24,11,32,3,40,2,20,34,1,69,13,0,32,5,32,1,54,2,20,32,1,32,5,54,2,24,11,2,64,32,0,65,15,77,4,64,32,3,32,0,32,7,106,34,0,65,3,114,54,2,4,32,0,32,3,106,34,0,32,0,40,2,4,65,1,114,54,2,4,12,1,11,32,3,32,7,65,3,114,54,2,4,32,3,32,7,106,34,5,32,0,65,1,114,54,2,4,32,0,32,5,106,32,0,54,2,0,32,8,4,64,35,1,65,164,215,0,106,34,6,34,2,32,8,65,120,113,106,65,40,106,33,1,32,2,40,2,20,33,2,2,127,65,1,32,8,65,3,118,116,34,7,32,4,113,69,4,64,32,6,32,4,32,7,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,4,32,1,32,2,54,2,8,32,4,32,2,54,2,12,32,2,32,1,54,2,12,32,2,32,4,54,2,8,11,35,1,65,164,215,0,106,34,1,32,5,54,2,20,32,1,32,0,54,2,8,11,32,3,65,8,106,33,5,11,32,11,65,16,106,36,0,32,5,11,128,1,2,1,126,3,127,2,64,32,0,66,128,128,128,128,16,84,4,64,32,0,33,2,12,1,11,3,64,32,1,65,1,107,34,1,32,0,32,0,66,10,128,34,2,66,10,126,125,167,65,48,114,58,0,0,32,0,66,255,255,255,255,159,1,86,32,2,33,0,13,0,11,11,32,2,66,0,82,4,64,32,2,167,33,3,3,64,32,1,65,1,107,34,1,32,3,32,3,65,10,110,34,4,65,10,108,107,65,48,114,58,0,0,32,3,65,9,75,32,4,33,3,13,0,11,11,32,1,11,139,4,1,3,127,32,2,65,128,4,79,4,64,32,2,4,64,32,0,32,1,32,2,252,10,0,0,11,32,0,15,11,32,0,32,2,106,33,3,2,64,32,0,32,1,115,65,3,113,69,4,64,2,64,32,0,65,3,113,69,4,64,32,0,33,2,12,1,11,32,2,69,4,64,32,0,33,2,12,1,11,32,0,33,2,3,64,32,2,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,106,34,2,65,3,113,69,13,1,32,2,32,3,73,13,0,11,11,32,3,65,124,113,33,4,2,64,32,3,65,192,0,73,13,0,32,2,32,4,65,64,106,34,5,75,13,0,3,64,32,2,32,1,40,2,0,54,2,0,32,2,32,1,40,2,4,54,2,4,32,2,32,1,40,2,8,54,2,8,32,2,32,1,40,2,12,54,2,12,32,2,32,1,40,2,16,54,2,16,32,2,32,1,40,2,20,54,2,20,32,2,32,1,40,2,24,54,2,24,32,2,32,1,40,2,28,54,2,28,32,2,32,1,40,2,32,54,2,32,32,2,32,1,40,2,36,54,2,36,32,2,32,1,40,2,40,54,2,40,32,2,32,1,40,2,44,54,2,44,32,2,32,1,40,2,48,54,2,48,32,2,32,1,40,2,52,54,2,52,32,2,32,1,40,2,56,54,2,56,32,2,32,1,40,2,60,54,2,60,32,1,65,64,107,33,1,32,2,65,64,107,34,2,32,5,77,13,0,11,11,32,2,32,4,79,13,1,3,64,32,2,32,1,40,2,0,54,2,0,32,1,65,4,106,33,1,32,2,65,4,106,34,2,32,4,73,13,0,11,12,1,11,32,3,65,4,73,4,64,32,0,33,2,12,1,11,32,2,65,4,73,4,64,32,0,33,2,12,1,11,32,3,65,4,107,33,4,32,0,33,2,3,64,32,2,32,1,45,0,0,58,0,0,32,2,32,1,45,0,1,58,0,1,32,2,32,1,45,0,2,58,0,2,32,2,32,1,45,0,3,58,0,3,32,1,65,4,106,33,1,32,2,65,4,106,34,2,32,4,77,13,0,11,11,32,2,32,3,73,4,64,3,64,32,2,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,106,34,2,32,3,71,13,0,11,11,32,0,11,241,4,2,6,127,1,126,35,0,65,16,107,33,4,2,64,32,0,40,2,0,34,3,69,13,0,32,0,40,2,24,34,6,32,3,40,2,36,34,7,70,13,0,32,4,32,0,40,2,20,54,2,8,32,4,32,0,41,2,12,55,3,0,32,0,41,2,28,33,9,32,1,32,6,65,3,116,65,0,32,3,32,7,65,3,116,107,32,3,65,1,113,27,106,34,5,54,2,0,32,1,32,4,41,3,0,55,2,4,32,1,32,4,40,2,8,54,2,12,32,1,32,9,55,2,20,32,1,32,6,54,2,16,32,2,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,34,4,58,0,0,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,0,40,2,28,33,1,32,0,40,2,36,34,3,4,64,32,2,32,3,32,1,65,1,116,106,47,1,0,32,4,114,65,0,71,34,4,58,0,0,11,32,0,32,1,65,1,106,54,2,28,32,5,40,2,0,33,1,11,65,0,33,3,2,64,32,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,56,33,3,11,32,0,32,0,40,2,32,32,3,106,32,4,106,54,2,32,32,0,2,127,32,5,40,2,0,34,1,65,1,113,4,64,32,0,65,20,106,33,6,32,0,65,16,106,33,7,32,0,40,2,20,33,8,32,0,40,2,16,33,3,32,5,45,0,7,34,2,32,0,40,2,12,106,12,1,11,65,0,32,0,40,2,20,32,1,40,2,20,34,2,27,33,8,32,0,65,20,106,33,6,32,0,65,16,106,33,7,32,0,40,2,16,32,2,106,33,3,32,1,40,2,24,33,2,32,0,40,2,12,32,1,40,2,16,106,11,34,4,54,2,12,65,1,33,5,32,0,32,0,40,2,24,65,1,106,34,1,54,2,24,32,0,32,3,173,32,2,32,8,106,173,66,32,134,132,55,2,16,32,1,32,0,40,2,0,34,2,40,2,36,34,8,79,13,0,32,6,40,2,0,33,6,32,0,2,127,32,2,32,8,65,3,116,107,32,1,65,3,116,106,41,2,0,34,9,167,34,1,65,1,113,4,64,32,9,66,32,136,167,65,255,1,113,33,2,32,9,66,40,136,167,65,15,113,33,0,32,9,66,48,136,167,65,255,1,113,12,1,11,32,1,40,2,12,33,2,32,1,40,2,8,33,0,32,1,40,2,4,11,32,4,106,54,2,12,32,7,32,0,32,3,106,173,65,0,32,6,32,0,27,32,2,106,173,66,32,134,132,55,2,0,11,32,5,11,198,1,1,5,127,32,1,40,2,16,33,3,32,1,40,2,8,33,4,32,1,40,2,4,33,5,32,1,40,2,0,33,6,32,1,40,2,20,33,2,32,0,32,1,40,2,12,59,1,16,32,0,32,2,54,2,0,32,0,65,0,54,2,8,32,0,40,2,4,33,1,32,0,40,2,12,4,127,65,0,5,2,127,32,1,4,64,32,1,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,12,32,0,40,2,8,11,33,2,32,0,32,1,54,2,4,32,0,32,2,65,1,106,54,2,8,32,1,32,2,65,28,108,106,34,0,65,0,54,2,24,32,0,66,0,55,2,16,32,0,32,4,54,2,12,32,0,32,5,54,2,8,32,0,32,6,54,2,4,32,0,32,3,54,2,0,11,194,2,1,5,127,35,0,65,16,107,34,5,36,0,32,1,32,2,71,4,64,32,0,40,2,0,34,3,32,1,65,5,116,106,33,4,2,64,32,3,32,2,65,5,116,106,34,2,40,2,4,34,3,69,13,0,32,4,40,2,4,13,0,32,4,32,3,54,2,4,32,2,65,0,54,2,4,11,32,2,40,2,0,4,64,32,0,40,2,52,33,6,32,2,40,2,12,4,64,32,5,32,2,41,2,12,55,3,8,32,6,32,5,65,8,106,16,10,11,32,2,40,2,20,4,64,32,5,32,2,41,2,20,55,3,0,32,6,32,5,16,10,11,32,2,40,2,4,34,3,4,64,32,3,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,2,40,2,4,33,3,11,32,3,65,0,54,2,8,32,3,66,0,55,2,0,32,3,35,8,40,2,0,17,2,0,11,32,2,40,2,0,32,0,65,36,106,32,6,16,26,11,32,2,32,4,41,2,0,55,2,0,32,2,32,4,41,2,24,55,2,24,32,2,32,4,41,2,16,55,2,16,32,2,32,4,41,2,8,55,2,8,32,0,40,2,4,32,1,65,127,115,106,65,5,116,34,2,4,64,32,0,40,2,0,32,1,65,5,116,106,34,1,32,1,65,32,106,32,2,252,10,0,0,11,32,0,32,0,40,2,4,65,1,107,54,2,4,11,32,5,65,16,106,36,0,11,237,3,2,11,127,1,126,32,0,40,2,0,34,5,32,0,40,2,4,34,6,65,4,116,106,34,3,65,4,107,40,2,0,33,11,32,3,65,9,107,45,0,0,33,2,32,3,65,10,107,45,0,0,33,1,2,64,32,3,65,16,107,40,2,0,34,4,65,1,113,4,64,32,1,32,2,106,33,9,12,1,11,32,4,40,2,16,32,4,40,2,4,106,33,9,32,4,45,0,44,65,192,0,113,69,13,0,32,3,65,12,107,47,1,0,32,1,65,16,116,114,32,2,65,24,116,114,33,10,32,4,40,2,36,34,3,4,64,3,64,32,4,32,3,65,3,116,107,33,7,32,3,33,1,3,64,2,64,2,64,32,7,32,1,65,1,107,34,1,65,3,116,106,34,8,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,2,40,2,36,33,3,32,8,40,2,4,33,10,32,2,33,4,12,1,11,32,1,13,1,11,11,32,3,13,0,11,11,32,0,32,10,54,2,16,32,0,32,4,54,2,12,11,32,0,32,6,65,1,107,34,2,54,2,4,2,64,32,2,69,13,0,32,9,32,11,106,33,3,3,64,2,64,32,2,33,1,32,5,32,6,65,4,116,106,65,32,107,40,2,0,34,7,65,1,113,69,4,64,32,7,40,2,36,34,8,32,5,32,1,65,4,116,106,40,2,8,65,1,106,34,4,75,13,1,11,32,0,32,1,65,1,107,34,2,54,2,4,32,1,33,6,32,2,13,1,12,2,11,11,32,0,40,2,8,34,2,32,6,73,4,64,32,5,65,8,32,2,65,1,116,34,1,32,6,32,1,32,6,75,27,34,1,32,1,65,8,77,27,34,1,65,4,116,35,6,40,2,0,17,1,0,33,5,32,0,32,1,54,2,8,32,7,40,2,36,33,8,32,0,40,2,4,33,1,11,32,0,32,5,54,2,0,32,0,32,1,65,1,106,54,2,4,32,7,32,8,65,3,116,107,32,4,65,3,116,106,41,2,0,33,12,32,5,32,1,65,4,116,106,34,0,32,3,54,2,12,32,0,32,4,54,2,8,32,0,32,12,55,2,0,11,11,217,4,2,7,127,1,126,35,0,65,32,107,34,2,36,0,2,64,32,0,40,2,160,9,34,1,69,13,0,32,0,40,2,136,10,34,3,69,13,0,32,1,40,2,116,34,1,69,13,0,32,3,32,1,17,2,0,11,32,0,65,0,54,2,136,10,32,0,40,2,152,10,4,64,32,2,32,0,65,152,10,106,41,2,0,55,3,24,32,0,65,136,9,106,32,2,65,24,106,16,10,32,0,66,0,55,2,152,10,11,32,0,66,0,55,2,128,10,32,0,65,0,54,2,248,9,32,0,40,2,32,4,64,65,0,33,1,32,0,65,0,54,2,124,32,0,65,0,58,0,128,1,32,0,66,0,55,2,36,32,0,65,0,54,2,32,32,0,40,2,68,33,5,2,64,32,0,40,2,100,34,3,4,64,3,64,2,64,32,5,32,1,65,24,108,106,34,6,40,2,20,34,7,69,13,0,32,7,32,6,40,2,16,34,4,77,13,0,32,6,41,2,0,33,8,32,0,32,1,54,2,104,32,0,32,8,55,2,36,32,0,32,4,54,2,32,65,0,33,1,32,0,40,2,72,69,13,3,32,0,40,2,108,34,3,32,4,77,4,64,32,4,32,0,40,2,112,32,3,106,73,13,4,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,3,11,32,1,65,1,106,34,1,32,3,71,13,0,11,11,32,0,32,3,54,2,104,32,5,32,3,65,24,108,106,34,1,65,4,107,40,2,0,33,3,32,1,65,16,107,41,2,0,33,8,32,0,65,0,54,2,72,32,0,32,8,55,2,36,32,0,32,3,54,2,32,32,0,66,0,55,2,108,65,1,33,1,11,32,0,65,0,54,2,0,32,0,32,1,54,2,116,11,32,0,40,2,132,9,16,57,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,2,32,1,41,2,0,55,3,16,32,0,65,136,9,106,32,2,65,16,106,16,10,11,32,0,40,2,232,9,4,64,32,2,32,0,65,232,9,106,41,2,0,55,3,8,32,0,65,136,9,106,32,2,65,8,106,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,0,40,2,180,9,4,64,32,2,32,0,65,180,9,106,41,2,0,55,3,0,32,0,65,136,9,106,32,2,16,10,32,0,66,0,55,2,180,9,11,32,0,65,0,58,0,198,10,32,0,65,0,54,2,144,10,32,0,65,0,59,1,196,10,32,0,66,0,55,2,180,10,32,0,66,0,55,2,172,10,32,0,65,188,10,106,65,0,54,2,0,32,2,65,32,106,36,0,11,90,2,1,127,1,126,2,64,2,127,65,0,32,0,69,13,0,26,32,0,173,32,1,173,126,34,3,167,34,2,32,0,32,1,114,65,128,128,4,73,13,0,26,65,127,32,2,32,3,66,32,136,167,27,11,34,2,16,34,34,0,69,13,0,32,0,65,4,107,45,0,0,65,3,113,69,13,0,32,0,65,0,32,2,16,51,26,11,32,0,11,219,3,1,8,127,2,64,32,2,65,253,255,3,75,13,0,32,0,40,2,24,33,4,32,2,32,0,40,2,12,73,4,64,2,64,2,64,32,1,32,4,79,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,4,47,1,0,34,7,69,4,64,12,3,11,32,4,65,2,106,33,4,3,64,32,4,65,4,106,33,3,32,4,47,1,2,34,10,4,127,32,3,32,10,65,1,116,106,65,0,33,6,3,64,32,3,47,1,0,32,2,70,13,4,32,3,65,2,106,33,3,32,6,65,1,106,34,6,32,10,71,13,0,11,5,32,3,11,33,4,65,0,33,3,32,9,65,1,106,34,9,32,7,71,13,0,11,12,2,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,32,2,65,1,116,106,47,1,0,33,3,12,1,11,32,4,47,1,0,33,3,11,32,0,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,0,69,13,1,32,2,32,0,65,3,116,106,34,0,45,0,0,13,1,32,1,32,0,65,8,106,34,0,65,6,107,47,1,0,32,0,65,4,107,45,0,0,65,1,113,27,33,5,12,1,11,2,64,32,1,32,4,79,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,8,69,13,2,32,0,65,2,106,33,0,65,0,33,1,3,64,32,0,65,4,106,33,3,32,0,47,1,2,34,7,4,127,32,3,32,7,65,1,116,106,65,0,33,6,3,64,32,3,47,1,0,32,2,70,13,4,32,3,65,2,106,33,3,32,6,65,1,106,34,6,32,7,71,13,0,11,5,32,3,11,33,0,32,1,65,1,106,34,1,32,8,71,13,0,11,12,2,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,32,2,65,1,116,106,47,1,0,33,5,12,1,11,32,0,47,1,0,33,5,11,32,5,65,255,255,3,113,11,23,1,2,127,3,64,32,0,16,71,34,2,65,1,70,13,0,11,32,2,65,2,70,11,205,3,1,5,127,2,64,2,64,32,0,40,2,16,34,4,69,13,0,32,0,40,2,12,33,6,3,64,2,64,32,2,32,6,32,3,65,3,116,106,34,5,40,2,4,70,4,64,32,0,40,2,0,32,5,40,2,0,106,32,1,32,2,16,27,69,13,1,11,32,3,65,1,106,34,3,32,4,71,13,1,12,2,11,11,32,3,65,0,78,13,1,11,32,0,40,2,0,33,3,32,0,40,2,4,33,6,32,2,65,1,106,34,5,4,64,32,5,32,6,106,34,4,32,0,40,2,8,34,7,77,4,127,32,6,5,65,8,32,7,65,1,116,34,7,32,4,32,4,32,7,73,27,34,4,32,4,65,8,77,27,33,4,2,127,32,3,4,64,32,3,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,3,32,0,32,4,54,2,8,32,0,40,2,4,11,33,4,32,0,32,3,54,2,0,32,5,4,64,32,3,32,4,106,65,0,32,5,252,11,0,11,32,0,32,0,40,2,4,32,5,106,54,2,4,32,0,40,2,0,33,3,11,32,2,4,64,32,3,32,6,106,32,1,32,2,252,10,0,0,11,32,0,40,2,0,32,0,40,2,4,106,65,1,107,65,0,58,0,0,32,0,40,2,12,33,3,32,0,32,0,40,2,16,34,4,65,1,106,34,1,32,0,40,2,20,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,1,32,1,32,4,73,27,34,1,32,1,65,8,77,27,34,4,65,3,116,33,1,2,127,32,3,4,64,32,3,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,3,32,0,32,4,54,2,20,32,0,40,2,16,34,4,65,1,106,5,32,1,11,54,2,16,32,0,32,3,54,2,12,32,3,32,4,65,3,116,106,34,1,32,2,54,2,4,32,1,32,6,54,2,0,32,0,47,1,16,65,1,107,33,3,11,32,3,65,255,255,3,113,11,180,10,1,8,127,65,1,33,2,32,1,40,2,12,65,34,70,4,64,32,1,40,2,0,33,8,32,1,16,12,26,32,1,40,2,0,33,4,32,0,65,0,54,2,136,1,2,127,3,64,2,64,32,1,40,2,12,33,2,2,127,2,64,2,64,32,3,65,1,113,4,64,32,0,40,2,136,1,33,4,32,0,40,2,132,1,33,3,2,64,2,64,2,64,2,64,2,64,32,2,65,238,0,107,14,7,0,4,4,4,1,4,2,3,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,10,58,0,0,12,6,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,13,58,0,0,12,5,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,9,58,0,0,12,4,11,32,2,65,48,70,13,2,11,32,1,40,2,0,33,6,2,64,32,4,32,1,45,0,16,34,2,106,34,5,32,0,40,2,140,1,77,13,0,2,127,32,3,4,64,32,3,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,3,32,0,32,5,54,2,140,1,32,0,40,2,136,1,34,7,32,4,77,13,0,32,7,32,4,107,34,7,69,13,0,32,3,32,5,106,32,3,32,4,106,32,7,252,10,0,0,11,2,64,32,2,69,34,5,13,0,32,3,32,4,106,33,4,32,6,4,64,32,5,13,1,32,4,32,6,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,4,65,0,32,2,252,11,0,11,32,0,32,3,54,2,132,1,32,0,32,0,40,2,136,1,32,2,106,54,2,136,1,12,2,11,2,64,2,64,2,127,2,64,32,2,65,220,0,71,4,64,32,2,65,10,70,13,4,65,0,32,2,65,34,71,13,7,26,32,0,40,2,132,1,33,2,32,1,40,2,0,34,8,32,4,107,34,3,32,0,40,2,136,1,34,5,106,34,6,32,0,40,2,140,1,77,13,3,32,2,69,13,1,32,2,32,6,35,6,40,2,0,17,1,0,12,2,11,32,0,40,2,132,1,33,2,2,64,32,1,40,2,0,34,7,32,4,107,34,3,32,0,40,2,136,1,34,5,106,34,6,32,0,40,2,140,1,77,13,0,2,127,32,2,4,64,32,2,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,2,32,0,32,6,54,2,140,1,32,0,40,2,136,1,34,9,32,5,77,13,0,32,9,32,5,107,34,9,69,13,0,32,2,32,6,106,32,2,32,5,106,32,9,252,10,0,0,11,2,64,32,4,32,7,70,13,0,32,2,32,5,106,33,5,32,4,4,64,32,3,69,13,1,32,5,32,4,32,3,252,10,0,0,12,1,11,32,3,69,13,0,32,5,65,0,32,3,252,11,0,11,32,0,32,2,54,2,132,1,32,0,32,0,40,2,136,1,32,3,106,54,2,136,1,32,1,40,2,0,65,1,106,33,4,65,1,12,6,11,32,6,35,7,40,2,0,17,0,0,11,33,2,32,0,32,6,54,2,140,1,32,0,40,2,136,1,34,7,32,5,77,13,0,32,7,32,5,107,34,7,69,13,0,32,2,32,6,106,32,2,32,5,106,32,7,252,10,0,0,11,2,64,32,4,32,8,70,13,0,32,2,32,5,106,33,5,32,4,4,64,32,3,69,13,1,32,5,32,4,32,3,252,10,0,0,12,1,11,32,3,69,13,0,32,5,65,0,32,3,252,11,0,11,32,0,32,2,54,2,132,1,32,0,32,0,40,2,136,1,32,3,106,54,2,136,1,65,0,12,6,11,12,3,11,32,0,32,4,65,1,106,34,2,32,0,40,2,140,1,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,3,4,64,32,3,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,3,32,0,32,2,54,2,140,1,32,0,40,2,136,1,34,4,65,1,106,5,32,2,11,54,2,136,1,32,0,32,3,54,2,132,1,32,3,32,4,106,65,0,58,0,0,11,32,1,40,2,0,32,1,45,0,16,106,33,4,65,0,11,33,3,32,1,16,12,13,1,11,11,32,1,65,0,58,0,16,32,1,32,8,54,2,0,65,1,11,33,2,32,1,16,12,26,11,32,2,11,223,6,2,15,127,2,126,2,64,32,0,45,0,28,13,0,32,0,40,2,4,34,7,32,0,40,2,8,34,8,65,28,108,106,65,28,107,40,2,0,34,11,40,2,0,34,3,65,1,113,13,0,3,64,32,3,40,2,36,34,15,69,4,64,65,0,15,11,32,7,32,8,65,28,108,106,34,3,65,20,107,41,2,0,33,17,32,3,65,24,107,40,2,0,33,3,65,0,33,12,65,0,33,9,2,64,3,64,65,0,33,6,2,127,2,64,2,64,32,11,45,0,0,65,1,113,4,127,65,0,5,32,11,40,2,0,34,2,32,2,40,2,36,65,3,116,107,11,32,9,65,3,116,106,34,6,40,2,0,34,5,65,1,113,69,4,64,32,5,40,2,4,32,3,106,34,10,32,5,40,2,16,106,34,2,32,1,75,13,1,32,5,40,2,24,65,0,32,5,40,2,12,65,0,32,17,66,32,136,167,32,5,40,2,8,34,4,27,106,32,5,40,2,20,34,3,27,106,173,66,32,134,32,3,32,4,32,17,167,106,106,173,132,33,17,32,5,47,1,44,34,3,65,4,113,69,33,13,2,64,32,3,65,192,0,113,69,13,0,32,6,40,2,4,33,14,32,5,40,2,36,34,4,4,64,3,64,32,5,32,4,65,3,116,107,33,16,32,4,33,6,3,64,2,64,2,64,32,16,32,6,65,1,107,34,6,65,3,116,106,34,10,40,2,0,34,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,32,3,40,2,36,33,4,32,10,40,2,4,33,14,32,3,33,5,12,1,11,32,6,13,1,11,11,32,4,13,0,11,32,5,69,13,1,11,32,0,32,14,54,2,36,32,0,32,5,54,2,32,11,32,2,12,3,11,32,3,32,6,45,0,6,106,34,10,32,6,45,0,7,34,4,106,34,2,32,1,77,13,1,11,32,0,32,8,65,1,106,34,4,32,0,40,2,12,34,2,75,4,127,65,8,32,2,65,1,116,34,2,32,4,32,2,32,4,75,27,34,2,32,2,65,8,77,27,34,2,65,28,108,33,4,2,127,32,7,4,64,32,7,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,7,32,0,32,2,54,2,12,32,0,40,2,8,34,8,65,1,106,5,32,4,11,54,2,8,32,0,32,7,54,2,4,32,7,32,8,65,28,108,106,34,2,65,0,54,2,24,32,2,32,12,54,2,20,32,2,32,9,54,2,16,32,2,32,17,55,2,8,32,2,32,3,54,2,4,32,2,32,6,54,2,0,32,0,40,2,4,34,7,32,0,40,2,8,34,8,65,28,108,106,34,2,65,8,107,40,2,0,33,5,2,127,32,2,65,28,107,40,2,0,34,11,40,2,0,34,3,65,1,113,34,6,4,64,32,3,65,1,118,65,1,113,12,1,11,32,3,47,1,44,65,1,113,11,69,4,64,32,8,65,2,73,13,4,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,4,69,13,4,32,0,40,2,20,34,2,40,2,84,32,2,47,1,36,32,4,108,65,1,116,106,32,5,65,1,116,106,47,1,0,69,13,4,11,32,1,32,10,73,4,64,32,0,65,1,58,0,28,65,1,15,11,32,0,32,0,40,2,24,65,1,106,54,2,24,65,1,15,11,32,6,45,0,4,65,0,32,17,66,32,136,167,32,6,49,0,5,66,15,131,34,18,167,27,106,32,4,106,173,66,32,134,32,17,32,18,124,66,255,255,255,255,15,131,132,33,17,32,5,65,127,115,65,3,118,65,1,113,33,13,32,2,11,33,3,32,12,32,13,106,33,12,32,9,65,1,106,34,9,32,15,71,13,0,11,65,0,15,11,32,6,69,13,0,11,11,65,0,11,210,12,2,10,127,1,126,35,0,65,160,1,107,34,10,36,0,2,127,32,0,40,2,0,34,8,69,4,64,32,1,32,2,35,1,65,253,10,106,65,0,16,11,12,1,11,32,8,65,8,118,33,12,2,127,2,64,2,64,2,64,2,64,2,64,32,4,13,0,32,8,65,1,113,4,127,32,8,65,5,118,65,1,113,5,32,8,47,1,44,65,9,118,65,1,113,11,13,0,2,64,2,64,2,64,32,5,69,4,64,32,8,65,1,113,69,13,1,32,8,65,2,113,69,13,5,32,8,65,2,118,65,1,113,13,4,12,5,11,32,6,69,13,1,12,3,11,32,8,47,1,44,34,9,65,1,113,13,1,12,3,11,32,7,35,1,65,161,10,106,71,13,3,12,5,11,32,9,65,1,118,65,1,113,69,13,1,11,2,127,32,1,32,7,35,1,65,161,10,106,70,13,0,26,32,1,32,2,35,1,65,233,11,106,65,0,16,11,32,1,106,34,9,32,7,69,13,0,26,32,10,32,7,54,2,96,32,9,32,1,32,2,65,1,75,27,32,2,35,1,65,230,11,106,32,10,65,224,0,106,16,11,32,9,106,11,33,9,2,64,32,8,65,1,113,69,4,64,2,64,32,8,47,1,40,34,12,65,255,255,3,71,13,0,32,8,40,2,36,13,0,32,8,40,2,16,69,13,0,32,9,32,1,32,2,65,1,75,34,5,27,32,2,35,1,65,217,11,106,65,0,16,11,32,9,106,34,9,32,1,32,5,27,33,5,65,1,33,14,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,8,40,2,48,34,6,65,1,106,14,15,0,1,5,5,5,5,5,5,5,5,3,2,5,5,4,5,11,32,5,32,2,35,1,65,193,10,106,65,0,16,11,12,5,11,32,5,32,2,35,1,65,197,11,106,65,0,16,11,12,4,11,32,5,32,2,35,1,65,149,11,106,65,0,16,11,12,3,11,32,5,32,2,35,1,65,139,11,106,65,0,16,11,12,2,11,32,5,32,2,35,1,65,144,11,106,65,0,16,11,12,1,11,32,6,65,32,107,65,222,0,77,4,64,32,10,32,6,54,2,64,32,5,32,2,35,1,65,192,11,106,32,10,65,64,107,16,11,12,1,11,32,10,32,6,54,2,80,32,5,32,2,35,1,65,236,9,106,32,10,65,208,0,106,16,11,11,32,9,106,12,7,11,32,5,32,12,32,5,27,33,5,12,1,11,32,5,13,0,32,12,65,255,1,113,33,5,11,35,1,65,171,10,106,33,13,2,64,2,64,2,64,32,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,13,12,1,11,65,0,33,13,32,3,40,2,8,32,3,40,2,4,106,32,5,77,13,0,32,3,40,2,56,32,5,65,2,116,106,40,2,0,33,13,11,65,1,33,14,32,9,32,1,32,2,65,1,75,27,33,12,32,8,65,1,113,4,127,32,8,65,5,118,65,1,113,5,32,8,47,1,44,65,9,118,65,1,113,11,4,64,32,12,32,2,35,1,65,207,11,106,65,0,16,11,32,9,106,33,5,2,64,32,6,69,4,64,32,8,65,1,113,4,127,32,8,65,2,118,65,1,113,5,32,8,47,1,44,65,1,118,65,1,113,11,69,13,1,11,32,10,32,13,54,2,32,32,5,32,1,32,2,65,1,75,27,32,2,35,1,65,223,7,106,32,10,65,32,106,16,11,32,5,106,12,6,11,32,10,32,13,54,2,48,32,5,32,1,32,2,65,1,75,27,32,2,35,1,65,202,11,106,32,10,65,48,106,16,11,32,5,106,12,5,11,32,10,32,13,54,2,16,32,12,32,2,35,1,65,222,7,106,32,10,65,16,106,16,11,32,9,106,12,4,11,32,7,35,1,65,161,10,106,70,13,1,11,32,1,12,2,11,32,8,65,1,113,4,64,32,12,65,255,1,113,33,5,12,1,11,32,8,47,1,40,33,5,11,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,5,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,3,40,2,8,32,3,40,2,4,106,32,5,77,13,0,32,3,40,2,56,32,5,65,2,116,106,40,2,0,33,9,11,2,127,2,127,2,64,32,8,65,1,113,69,4,64,32,8,40,2,36,69,13,1,32,10,32,9,54,2,144,1,32,1,32,2,35,1,65,222,7,106,32,10,65,144,1,106,16,11,32,1,106,12,3,11,32,8,65,2,118,65,1,113,12,1,11,32,8,47,1,44,65,1,118,65,1,113,11,4,64,32,10,32,9,54,2,128,1,32,1,32,2,35,1,65,241,10,106,32,10,65,128,1,106,16,11,32,1,106,12,1,11,32,10,32,9,54,2,112,32,1,32,2,35,1,65,132,11,106,32,10,65,240,0,106,16,11,32,1,106,11,11,33,9,2,64,32,0,45,0,0,65,1,113,13,0,32,0,40,2,0,34,11,40,2,36,34,6,69,13,0,32,11,47,1,66,34,8,4,64,32,3,40,2,84,32,3,47,1,36,32,8,108,65,1,116,106,33,15,11,65,0,33,5,32,3,40,2,32,4,64,32,3,40,2,68,32,3,40,2,64,32,8,65,2,116,106,34,5,47,1,0,65,2,116,106,34,16,32,5,47,1,2,65,2,116,106,33,5,11,65,0,32,7,32,14,27,33,12,65,0,33,7,65,0,33,13,3,64,32,10,32,11,32,6,65,3,116,107,32,13,65,3,116,106,41,2,0,34,18,55,3,152,1,2,127,2,127,32,18,167,34,6,65,1,113,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,4,64,32,10,32,10,41,3,152,1,55,3,8,32,10,65,8,106,32,9,32,1,32,2,65,1,75,27,32,2,32,3,32,4,65,0,65,0,65,0,16,48,12,1,11,2,127,32,15,69,4,64,65,0,33,6,65,0,12,1,11,32,15,32,7,65,1,116,106,47,1,0,34,6,65,2,106,65,255,255,3,113,65,3,79,4,64,32,3,40,2,72,32,6,65,3,108,106,45,0,1,65,0,71,12,1,11,32,6,11,33,17,2,127,32,12,32,16,34,11,32,5,79,13,0,26,3,64,2,64,32,11,45,0,3,13,0,32,7,32,11,45,0,2,71,13,0,32,3,40,2,60,32,11,47,1,0,65,2,116,106,40,2,0,12,2,11,32,11,65,4,106,34,11,32,5,73,13,0,11,32,12,11,33,8,32,10,32,10,41,3,152,1,55,3,0,32,7,65,1,106,33,7,32,10,32,9,32,1,32,2,65,1,75,27,32,2,32,3,32,4,32,6,32,17,65,1,113,32,8,16,48,11,32,9,106,33,9,32,13,65,1,106,34,13,32,0,40,2,0,34,11,40,2,36,34,6,73,13,0,11,11,32,14,4,127,32,9,32,1,32,2,65,1,75,27,32,2,35,1,65,137,11,106,65,0,16,11,32,9,106,5,32,9,11,32,1,107,11,32,10,65,160,1,106,36,0,11,178,2,1,7,127,2,64,32,0,65,255,255,7,75,13,0,35,1,34,2,65,128,48,106,32,2,65,240,47,106,32,0,32,0,65,255,1,113,34,6,65,3,110,34,3,65,3,108,107,65,255,1,113,65,2,116,106,40,2,0,32,3,32,2,65,208,58,106,34,3,32,3,32,0,65,8,118,34,4,106,45,0,0,65,214,0,108,106,106,45,0,0,108,65,11,118,65,6,112,65,2,116,106,32,2,65,192,207,0,106,32,4,106,45,0,0,65,2,116,106,40,2,0,34,3,65,8,117,33,2,32,3,65,255,1,113,34,3,65,1,77,4,64,32,2,65,0,32,1,32,3,115,107,113,32,0,106,15,11,32,2,65,255,1,113,34,3,69,13,0,32,2,65,8,118,33,2,3,64,35,1,65,192,55,106,32,3,65,1,118,34,4,32,2,106,34,5,65,1,116,106,34,7,45,0,0,34,8,32,6,70,4,64,35,1,65,128,48,106,32,7,45,0,1,65,2,116,106,40,2,0,34,2,65,255,1,113,34,3,65,1,77,4,64,65,0,32,1,32,3,115,107,32,2,65,8,117,113,32,0,106,15,11,65,127,65,1,32,1,27,32,0,106,15,11,32,2,32,5,32,6,32,8,73,34,5,27,33,2,32,4,32,3,32,4,107,32,5,27,34,3,13,0,11,11,32,0,11,171,12,1,8,127,2,64,32,0,69,13,0,32,0,65,8,107,34,3,32,0,65,4,107,40,2,0,34,1,65,120,113,34,0,106,33,5,35,1,33,4,2,64,32,1,65,1,113,13,0,32,1,65,2,113,69,13,1,32,3,32,3,40,2,0,34,1,107,34,3,32,4,65,164,215,0,106,40,2,16,73,13,1,32,0,32,1,106,33,0,2,64,2,64,2,64,35,1,65,164,215,0,106,34,6,40,2,20,32,3,71,4,64,32,3,40,2,12,33,2,32,1,65,255,1,77,4,64,32,2,32,3,40,2,8,34,4,71,13,2,32,6,34,4,32,4,40,2,0,65,126,32,1,65,3,118,119,113,54,2,0,12,5,11,32,3,40,2,24,33,7,32,2,32,3,71,4,64,32,3,40,2,8,34,1,32,2,54,2,12,32,2,32,1,54,2,8,12,4,11,32,3,40,2,20,34,1,4,127,32,3,65,20,106,5,32,3,40,2,16,34,1,69,13,3,32,3,65,16,106,11,33,4,3,64,32,4,33,6,32,1,34,2,65,20,106,33,4,32,2,40,2,20,34,1,13,0,32,2,65,16,106,33,4,32,2,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,3,11,32,5,40,2,4,34,1,65,3,113,65,3,71,13,3,35,1,65,164,215,0,106,32,0,54,2,8,32,5,32,1,65,126,113,54,2,4,32,3,32,0,65,1,114,54,2,4,32,5,32,0,54,2,0,15,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,2,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,3,40,2,28,34,1,65,2,116,106,34,4,40,2,176,2,32,3,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,4,32,4,40,2,4,65,126,32,1,119,113,54,2,4,12,2,11,2,64,32,3,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,3,40,2,16,34,1,4,64,32,2,32,1,54,2,16,32,1,32,2,54,2,24,11,32,3,40,2,20,34,1,69,13,0,32,2,32,1,54,2,20,32,1,32,2,54,2,24,11,32,3,32,5,79,13,0,32,5,40,2,4,34,1,65,1,113,69,13,0,2,64,2,64,2,64,2,64,32,1,65,2,113,69,4,64,35,1,65,164,215,0,106,34,4,40,2,24,32,5,70,4,64,32,4,34,1,32,3,54,2,24,32,1,32,1,40,2,12,32,0,106,34,0,54,2,12,32,3,32,0,65,1,114,54,2,4,32,3,32,1,40,2,20,71,13,6,32,1,65,0,54,2,8,32,1,65,0,54,2,20,15,11,35,1,65,164,215,0,106,34,4,40,2,20,34,8,32,5,70,4,64,32,4,34,1,32,3,54,2,20,32,1,32,1,40,2,8,32,0,106,34,0,54,2,8,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,15,11,32,1,65,120,113,32,0,106,33,0,32,5,40,2,12,33,2,32,1,65,255,1,77,4,64,32,5,40,2,8,34,4,32,2,70,4,64,35,1,65,164,215,0,106,34,4,32,4,40,2,0,65,126,32,1,65,3,118,119,113,54,2,0,12,5,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,4,11,32,5,40,2,24,33,7,32,2,32,5,71,4,64,32,5,40,2,8,34,1,32,2,54,2,12,32,2,32,1,54,2,8,12,3,11,32,5,40,2,20,34,1,4,127,32,5,65,20,106,5,32,5,40,2,16,34,1,69,13,2,32,5,65,16,106,11,33,4,3,64,32,4,33,6,32,1,34,2,65,20,106,33,4,32,2,40,2,20,34,1,13,0,32,2,65,16,106,33,4,32,2,40,2,16,34,1,13,0,11,32,6,65,0,54,2,0,12,2,11,32,5,32,1,65,126,113,54,2,4,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,12,3,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,5,40,2,28,34,1,65,2,116,106,34,4,40,2,176,2,32,5,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,4,32,4,40,2,4,65,126,32,1,119,113,54,2,4,12,2,11,2,64,32,5,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,5,40,2,16,34,1,4,64,32,2,32,1,54,2,16,32,1,32,2,54,2,24,11,32,5,40,2,20,34,1,69,13,0,32,2,32,1,54,2,20,32,1,32,2,54,2,24,11,32,3,32,0,65,1,114,54,2,4,32,0,32,3,106,32,0,54,2,0,32,3,32,8,71,13,0,35,1,65,164,215,0,106,32,0,54,2,8,15,11,32,0,65,255,1,77,4,64,35,1,65,164,215,0,106,34,2,34,4,32,0,65,248,1,113,106,65,40,106,33,1,2,127,32,4,40,2,0,34,4,65,1,32,0,65,3,118,116,34,0,113,69,4,64,32,2,32,0,32,4,114,54,2,0,32,1,12,1,11,32,1,40,2,8,11,33,0,32,1,32,3,54,2,8,32,0,32,3,54,2,12,32,3,32,1,54,2,12,32,3,32,0,54,2,8,15,11,65,31,33,2,32,0,65,255,255,255,7,77,4,64,32,0,65,38,32,0,65,8,118,103,34,1,107,118,65,1,113,32,1,65,1,116,107,65,62,106,33,2,11,32,3,32,2,54,2,28,32,3,66,0,55,2,16,35,1,65,164,215,0,106,34,7,34,6,32,2,65,2,116,106,34,1,65,176,2,106,33,4,2,127,2,64,2,127,32,6,40,2,4,34,6,65,1,32,2,116,34,5,113,69,4,64,32,7,32,5,32,6,114,54,2,4,32,1,32,3,54,2,176,2,65,24,33,2,65,8,12,1,11,32,0,65,25,32,2,65,1,118,107,65,0,32,2,65,31,71,27,116,33,2,32,1,40,2,176,2,33,4,3,64,32,4,34,1,40,2,4,65,120,113,32,0,70,13,2,32,2,65,29,118,33,4,32,2,65,1,116,33,2,32,1,32,4,65,4,113,106,34,6,40,2,16,34,4,13,0,11,32,6,32,3,54,2,16,65,24,33,2,32,1,33,4,65,8,11,33,0,32,3,34,1,12,1,11,32,1,40,2,8,34,4,32,3,54,2,12,32,1,32,3,54,2,8,65,24,33,0,65,8,33,2,65,0,11,33,6,32,2,32,3,106,32,4,54,2,0,32,3,32,1,54,2,12,32,0,32,3,106,32,6,54,2,0,35,1,65,164,215,0,106,34,0,32,0,40,2,32,65,1,107,34,0,65,127,32,0,27,54,2,32,11,11,242,2,2,2,127,1,126,2,64,32,2,69,13,0,32,0,32,1,58,0,0,32,0,32,2,106,34,3,65,1,107,32,1,58,0,0,32,2,65,3,73,13,0,32,0,32,1,58,0,2,32,0,32,1,58,0,1,32,3,65,3,107,32,1,58,0,0,32,3,65,2,107,32,1,58,0,0,32,2,65,7,73,13,0,32,0,32,1,58,0,3,32,3,65,4,107,32,1,58,0,0,32,2,65,9,73,13,0,32,0,65,0,32,0,107,65,3,113,34,4,106,34,3,32,1,65,255,1,113,65,129,130,132,8,108,34,1,54,2,0,32,3,32,2,32,4,107,65,124,113,34,4,106,34,2,65,4,107,32,1,54,2,0,32,4,65,9,73,13,0,32,3,32,1,54,2,8,32,3,32,1,54,2,4,32,2,65,8,107,32,1,54,2,0,32,2,65,12,107,32,1,54,2,0,32,4,65,25,73,13,0,32,3,32,1,54,2,24,32,3,32,1,54,2,20,32,3,32,1,54,2,16,32,3,32,1,54,2,12,32,2,65,16,107,32,1,54,2,0,32,2,65,20,107,32,1,54,2,0,32,2,65,24,107,32,1,54,2,0,32,2,65,28,107,32,1,54,2,0,32,4,32,3,65,4,113,65,24,114,34,4,107,34,2,65,32,73,13,0,32,1,173,66,129,128,128,128,16,126,33,5,32,3,32,4,106,33,1,3,64,32,1,32,5,55,3,24,32,1,32,5,55,3,16,32,1,32,5,55,3,8,32,1,32,5,55,3,0,32,1,65,32,106,33,1,32,2,65,32,107,34,2,65,31,75,13,0,11,11,32,0,11,211,1,1,7,127,32,0,40,2,8,34,2,65,1,107,34,4,4,64,2,64,32,2,65,2,107,34,1,69,4,64,65,1,33,3,12,1,11,32,0,40,2,4,33,6,32,4,33,2,3,64,32,2,33,3,2,64,2,127,32,6,32,1,34,2,65,28,108,106,34,5,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,2,113,13,4,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,34,1,65,1,113,13,3,32,1,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,1,69,13,0,32,0,40,2,0,40,2,8,34,7,40,2,84,32,7,47,1,36,32,1,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,2,11,32,2,65,1,107,34,1,13,0,11,65,1,33,3,11,32,0,32,3,54,2,8,11,32,4,65,0,71,11,251,2,1,4,127,32,0,40,2,4,34,3,32,1,40,2,4,34,2,73,4,64,32,0,40,2,0,33,4,32,0,40,2,8,34,5,32,2,73,4,64,65,8,32,5,65,1,116,34,3,32,2,32,2,32,3,73,27,34,2,32,2,65,8,77,27,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,2,54,2,8,32,0,40,2,4,33,3,32,1,40,2,4,33,2,11,32,0,32,4,54,2,0,32,2,32,3,107,34,2,4,64,32,3,32,4,106,65,0,32,2,252,11,0,11,32,0,32,1,40,2,4,34,2,54,2,4,11,32,2,65,255,255,3,113,4,64,65,0,33,3,65,0,33,4,3,64,32,1,40,2,0,32,3,106,45,0,0,33,2,2,64,2,64,2,64,2,64,2,64,2,64,32,0,40,2,0,32,3,106,34,3,45,0,0,14,5,5,1,2,3,0,4,11,65,4,33,2,12,4,11,32,2,65,255,1,113,65,5,79,13,2,66,129,132,136,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,3,11,32,2,65,255,1,113,65,5,79,13,1,66,130,132,136,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,2,11,32,2,65,255,1,113,65,5,79,13,0,66,131,136,144,160,192,0,32,2,65,3,116,173,66,248,1,131,136,167,33,2,12,1,11,65,0,33,2,11,32,3,32,2,58,0,0,32,4,65,1,106,34,4,65,255,255,3,113,34,3,32,1,47,1,4,73,13,0,11,11,11,214,5,2,9,127,1,126,35,0,65,32,107,34,7,36,0,32,3,40,2,4,34,5,4,127,32,3,40,2,0,32,5,65,4,116,106,34,5,65,16,107,40,2,0,33,4,32,5,65,12,107,40,2,0,5,65,0,11,33,5,2,64,32,4,65,1,113,13,0,2,64,2,64,32,4,40,2,36,69,13,0,32,0,65,132,1,106,33,9,3,64,32,4,47,1,42,32,2,70,13,1,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,4,65,1,113,4,127,32,4,65,128,254,3,113,65,8,118,5,32,4,47,1,40,11,33,6,32,0,40,2,160,9,33,5,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,6,65,255,255,3,113,34,6,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,5,40,2,8,32,5,40,2,4,106,32,6,77,13,0,32,5,40,2,56,32,6,65,2,116,106,40,2,0,33,4,11,32,7,32,4,54,2,16,32,9,65,128,8,35,1,65,249,3,106,32,7,65,16,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,9,32,5,17,3,0,11,32,9,33,5,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,5,45,0,0,34,4,65,34,70,13,0,32,4,65,220,0,70,13,0,32,4,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,5,45,0,0,33,4,11,32,4,192,32,0,40,2,140,10,16,9,32,5,65,1,106,33,5,12,0,11,0,11,2,64,32,3,40,2,0,34,6,32,3,40,2,4,34,4,65,4,116,106,34,8,65,16,107,40,2,0,34,5,65,1,113,13,0,32,5,40,2,36,34,10,69,13,0,32,8,65,4,107,40,2,0,33,11,32,3,32,4,65,1,106,34,8,32,3,40,2,8,34,12,75,4,127,32,6,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,4,65,4,116,35,6,40,2,0,17,1,0,33,6,32,3,32,4,54,2,8,32,5,40,2,36,33,10,32,3,40,2,4,34,4,65,1,106,5,32,8,11,54,2,4,32,3,32,6,54,2,0,32,5,32,10,65,3,116,107,41,2,0,33,13,32,6,32,4,65,4,116,106,34,5,32,11,54,2,12,32,5,65,0,54,2,8,32,5,32,13,55,2,0,32,3,40,2,4,33,4,11,2,127,32,4,69,4,64,65,0,33,4,65,0,12,1,11,32,3,40,2,0,32,4,65,4,116,106,34,5,65,16,107,40,2,0,33,4,32,5,65,12,107,40,2,0,11,33,5,32,4,65,1,113,13,2,65,1,33,6,32,4,40,2,36,13,0,11,11,32,6,65,1,113,69,13,1,11,32,7,32,1,41,2,0,55,3,8,32,0,65,136,9,106,32,7,65,8,106,16,10,32,1,32,5,54,2,4,32,1,32,4,54,2,0,32,4,65,1,113,13,0,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,11,32,7,65,32,106,36,0,11,243,3,1,5,127,35,1,65,171,10,106,33,5,2,64,2,64,2,64,32,3,2,127,32,0,40,2,0,34,6,65,1,113,4,64,32,6,65,128,254,3,113,65,8,118,12,1,11,32,6,47,1,40,11,32,3,27,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,5,12,1,11,65,0,33,5,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,5,11,3,64,2,64,2,64,2,64,2,64,2,64,2,64,32,5,45,0,0,34,3,14,35,5,3,3,3,3,3,3,3,3,1,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,2,11,35,1,65,139,8,106,32,4,16,20,32,5,65,1,106,33,5,12,5,11,35,1,65,154,3,106,32,4,16,20,32,5,65,1,106,33,5,12,4,11,32,3,65,220,0,70,13,1,11,32,3,192,32,4,16,9,32,5,65,1,106,33,5,12,2,11,65,220,0,32,4,16,9,32,5,44,0,0,32,4,16,9,32,5,65,1,106,33,5,12,1,11,11,2,64,32,0,40,2,0,34,3,65,1,113,13,0,32,3,40,2,36,34,9,69,13,0,32,3,47,1,66,32,2,47,1,36,108,33,3,65,0,33,6,3,64,65,0,33,7,2,64,2,127,32,0,45,0,0,65,1,113,4,127,65,0,5,32,0,40,2,0,34,5,32,5,40,2,36,65,3,116,107,11,32,6,65,3,116,106,34,5,40,2,0,34,8,65,1,113,4,64,32,8,65,3,118,65,1,113,12,1,11,32,8,47,1,44,65,2,118,65,1,113,11,13,0,32,3,69,13,0,32,2,40,2,84,32,3,65,1,116,106,47,1,0,33,7,32,3,65,1,106,33,3,11,32,5,32,1,32,2,32,7,32,4,16,55,2,127,32,5,40,2,0,34,7,65,1,113,4,64,32,5,45,0,6,32,5,45,0,7,106,12,1,11,32,7,40,2,16,32,7,40,2,4,106,11,32,1,106,33,1,32,6,65,1,106,34,6,32,9,71,13,0,11,11,11,138,3,2,5,127,1,126,35,1,65,252,11,106,33,5,65,1,33,4,2,64,2,64,32,1,69,13,0,32,2,69,13,0,65,0,33,5,3,64,65,0,33,4,32,5,32,1,32,3,65,24,108,106,34,6,40,2,16,34,7,75,13,2,32,6,40,2,20,34,5,32,7,73,13,2,32,3,65,1,106,34,3,32,2,71,13,0,11,32,2,33,4,32,1,33,5,11,32,0,32,0,40,2,68,32,4,65,24,108,34,1,35,6,40,2,0,17,1,0,34,2,54,2,68,32,1,4,64,32,2,32,5,32,1,252,10,0,0,11,32,0,32,4,54,2,100,32,0,40,2,68,33,5,32,0,40,2,32,33,1,65,0,33,3,2,64,3,64,2,64,32,5,32,3,65,24,108,106,34,6,40,2,20,34,7,32,1,77,13,0,32,7,32,6,40,2,16,34,2,77,13,0,32,1,32,2,77,4,64,32,0,32,6,41,2,0,55,2,36,32,0,32,2,54,2,32,32,2,33,1,11,32,0,32,3,54,2,104,65,0,33,3,32,0,40,2,72,69,13,2,32,0,40,2,108,34,2,32,1,77,4,64,32,1,32,0,40,2,112,32,2,106,73,13,3,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,2,11,32,3,65,1,106,34,3,32,4,71,13,0,11,32,0,32,4,54,2,104,32,5,32,4,65,24,108,106,34,1,65,4,107,40,2,0,33,2,32,1,65,16,107,41,2,0,33,8,32,0,65,0,54,2,72,32,0,32,8,55,2,36,32,0,32,2,54,2,32,32,0,66,0,55,2,108,65,1,33,3,11,32,0,65,0,54,2,0,32,0,32,3,54,2,116,65,1,33,4,11,32,4,11,247,2,1,7,127,35,0,65,16,107,34,4,36,0,32,0,40,2,48,34,1,4,64,32,1,32,1,40,2,148,1,65,1,106,54,2,148,1,11,32,0,40,2,4,34,1,4,64,32,0,65,36,106,33,6,3,64,32,0,40,2,0,32,3,65,5,116,106,34,2,40,2,0,4,64,32,0,40,2,52,33,5,32,2,40,2,12,4,64,32,4,32,2,41,2,12,55,3,8,32,5,32,4,65,8,106,16,10,11,32,2,40,2,20,4,64,32,4,32,2,41,2,20,55,3,0,32,5,32,4,16,10,11,32,2,40,2,4,34,1,4,64,32,1,40,2,0,34,7,4,64,32,7,35,8,40,2,0,17,2,0,32,2,40,2,4,33,1,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,11,32,2,40,2,0,32,6,32,5,16,26,32,0,40,2,4,33,1,11,32,3,65,1,106,34,3,32,1,73,13,0,11,11,32,0,65,0,54,2,4,32,0,40,2,0,33,1,32,0,40,2,8,4,127,65,0,5,2,127,32,1,4,64,32,1,65,128,2,35,6,40,2,0,17,1,0,12,1,11,65,128,2,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,8,32,0,40,2,4,11,33,3,32,0,32,1,54,2,0,32,0,32,3,65,1,106,54,2,4,32,0,40,2,48,33,2,32,1,32,3,65,5,116,106,34,0,66,0,55,2,4,32,0,32,2,54,2,0,32,0,66,0,55,2,12,32,0,66,0,55,2,20,32,0,65,0,54,2,28,32,4,65,16,106,36,0,11,201,1,2,6,127,1,126,35,0,65,32,107,34,2,36,0,32,0,40,2,0,33,4,32,0,45,0,0,65,1,113,69,4,64,32,4,40,2,36,33,3,11,32,1,40,2,0,33,6,3,64,2,64,32,3,65,0,71,33,5,32,3,69,13,0,32,2,32,4,32,4,40,2,36,65,3,116,107,32,3,65,1,107,34,3,65,3,116,106,41,2,0,34,8,55,3,24,32,8,167,34,0,65,1,113,4,127,32,8,66,56,136,167,32,8,66,48,136,167,65,255,1,113,106,5,32,0,40,2,16,32,0,40,2,4,106,11,69,34,7,32,0,32,6,71,113,69,4,64,32,7,33,5,12,1,11,32,2,32,2,41,3,24,55,3,16,32,2,32,1,41,2,0,55,3,8,32,2,65,16,106,32,2,65,8,106,16,58,69,13,1,11,11,32,2,65,32,106,36,0,32,5,11,146,9,2,21,127,1,126,35,0,65,224,0,107,34,3,36,0,2,64,2,64,32,2,69,13,0,32,1,40,2,16,40,2,0,34,6,65,1,113,13,0,32,3,40,2,92,33,7,32,3,40,2,88,33,11,32,3,40,2,84,33,15,32,3,40,2,80,33,8,32,3,40,2,76,33,16,32,3,40,2,72,33,9,3,64,32,6,40,2,36,34,21,69,13,1,32,6,40,2,48,69,13,1,2,64,2,64,2,64,32,1,40,2,20,34,17,40,2,8,34,10,40,2,32,69,13,0,32,10,40,2,64,32,6,47,1,66,34,12,65,2,116,106,34,13,47,1,2,34,14,69,13,0,32,10,40,2,68,32,13,47,1,0,65,2,116,106,34,4,32,14,65,2,116,106,33,14,2,64,3,64,32,4,47,1,0,32,2,79,13,1,32,4,65,4,106,34,4,32,14,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,6,11,2,64,3,64,32,14,65,4,107,34,13,47,1,0,32,2,77,13,1,32,13,34,14,32,4,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,6,11,32,12,4,127,32,10,40,2,84,32,10,47,1,36,32,12,108,65,1,116,106,5,65,0,11,33,22,32,6,69,13,1,32,6,32,21,65,3,116,107,33,23,32,1,40,2,0,33,10,32,1,40,2,4,33,13,32,1,40,2,8,33,12,65,0,33,18,65,0,33,6,3,64,32,4,33,19,2,64,2,64,3,64,32,6,32,21,70,13,1,65,0,33,15,2,127,32,23,32,6,65,3,116,106,34,11,40,2,0,34,5,65,1,113,34,20,4,64,32,5,65,3,118,65,1,113,12,1,11,32,5,47,1,44,65,2,118,65,1,113,11,69,4,64,32,22,4,127,32,22,32,18,65,1,116,106,47,1,0,5,65,0,11,33,15,32,18,65,1,106,33,18,11,2,127,32,6,69,4,64,32,10,33,9,32,12,33,8,32,13,12,1,11,2,127,32,20,4,64,32,11,45,0,4,33,8,32,11,45,0,6,33,9,32,11,45,0,5,65,15,113,12,1,11,32,5,40,2,12,33,8,32,5,40,2,4,33,9,32,5,40,2,8,11,33,4,65,0,32,12,32,4,27,32,8,106,33,8,32,9,32,10,106,33,9,32,4,32,13,106,11,33,16,2,127,32,20,4,64,32,5,65,3,118,65,1,113,33,4,32,8,32,11,45,0,7,34,7,106,33,12,32,7,32,9,106,33,10,32,16,12,1,11,32,5,40,2,24,65,0,32,8,32,5,40,2,20,34,7,27,106,33,12,32,5,40,2,16,32,9,106,33,10,32,5,47,1,44,65,2,118,65,1,113,33,4,32,7,32,16,106,11,33,13,32,6,65,1,106,33,6,32,4,4,64,32,17,33,7,12,1,11,32,17,33,7,32,19,45,0,2,32,18,65,1,107,75,13,0,11,32,3,32,17,54,2,92,32,3,32,11,54,2,88,32,3,32,15,54,2,84,32,3,32,8,54,2,80,32,3,32,16,54,2,76,32,3,32,9,54,2,72,32,19,65,4,106,33,4,2,64,32,19,45,0,3,65,1,70,4,64,32,4,32,14,70,13,7,32,3,32,3,41,3,80,55,3,8,32,3,32,3,41,3,88,55,3,16,32,3,32,3,41,3,72,55,3,0,32,3,65,48,106,32,3,32,2,16,59,32,3,40,2,64,13,1,12,4,11,2,64,2,64,32,20,4,64,32,5,65,2,113,32,15,114,13,1,12,5,11,32,5,45,0,44,65,1,113,13,0,32,15,69,13,1,11,32,0,32,3,41,3,72,55,2,0,32,0,32,3,41,3,88,55,2,16,32,0,32,3,41,3,80,55,2,8,12,10,11,32,5,40,2,36,69,13,2,32,5,40,2,48,69,13,2,32,3,32,3,41,3,88,55,3,40,32,3,32,3,41,3,80,55,3,32,32,3,32,3,41,3,72,55,3,24,32,0,32,3,65,24,106,65,0,65,1,16,60,12,9,11,32,0,32,3,41,2,48,55,2,0,32,0,32,3,65,64,107,41,2,0,55,2,16,32,0,32,3,41,2,56,55,2,8,12,8,11,32,3,32,7,54,2,92,32,3,32,11,54,2,88,32,3,32,15,54,2,84,32,3,32,8,54,2,80,32,3,32,16,54,2,76,32,3,32,9,54,2,72,12,3,11,32,4,32,14,71,13,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,5,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,4,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,3,11,32,1,32,3,41,3,72,55,2,0,32,1,32,3,41,3,88,34,24,55,2,16,32,1,32,3,41,3,80,55,2,8,32,24,167,40,2,0,34,6,65,1,113,69,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,32,3,65,224,0,106,36,0,11,175,6,1,18,127,2,64,32,1,40,2,16,40,2,0,34,6,65,1,113,13,0,65,48,65,52,32,3,27,33,20,32,1,40,2,20,33,13,32,1,40,2,8,33,8,32,1,40,2,4,33,5,32,1,40,2,0,33,4,3,64,32,6,40,2,36,69,13,1,65,0,33,1,65,0,33,15,32,6,47,1,66,34,9,4,64,32,13,40,2,8,34,12,40,2,84,32,12,47,1,36,32,9,108,65,1,116,106,33,15,11,32,6,40,2,36,34,18,69,13,1,32,6,32,18,65,3,116,107,33,21,32,4,33,12,32,5,33,9,32,8,33,16,65,0,33,17,65,0,33,14,2,64,3,64,65,0,33,11,2,127,32,21,32,1,65,3,116,106,34,10,40,2,0,34,4,65,1,113,34,5,4,64,32,4,65,3,118,65,1,113,12,1,11,32,4,47,1,44,65,2,118,65,1,113,11,69,4,64,32,15,4,127,32,15,32,17,65,1,116,106,47,1,0,5,65,0,11,33,11,32,17,65,1,106,33,17,11,2,127,32,1,69,4,64,32,12,33,4,32,16,33,8,32,9,12,1,11,2,127,32,5,4,64,32,10,45,0,4,33,8,32,10,45,0,6,33,6,32,10,45,0,5,65,15,113,12,1,11,32,4,40,2,12,33,8,32,4,40,2,4,33,6,32,4,40,2,8,11,33,5,65,0,32,16,32,5,27,32,8,106,33,8,32,6,32,12,106,33,4,32,5,32,9,106,11,33,5,2,127,2,64,2,64,2,64,2,127,2,64,32,10,40,2,0,34,7,65,1,113,34,6,4,64,32,1,65,1,106,33,1,32,8,32,10,45,0,7,34,9,106,33,16,32,4,32,9,106,33,12,32,3,13,1,32,5,33,9,12,3,11,32,7,40,2,24,65,0,32,8,32,7,40,2,20,34,9,27,106,33,16,32,1,65,1,106,33,1,32,7,40,2,16,32,4,106,33,12,32,5,32,9,106,33,9,32,3,69,13,2,32,7,47,1,44,65,1,113,12,1,11,32,5,33,9,32,7,65,1,118,65,1,113,11,32,11,114,13,1,12,2,11,2,64,32,11,65,254,255,3,107,14,2,2,1,0,11,32,11,69,4,64,32,6,4,64,32,7,65,2,113,69,13,3,32,7,65,2,118,65,1,113,69,13,3,12,2,11,32,7,47,1,44,34,7,65,1,113,69,13,2,32,7,65,1,118,65,1,113,69,13,2,12,1,11,32,13,40,2,8,40,2,72,32,11,65,3,108,106,45,0,1,65,1,113,69,13,1,11,32,14,65,1,106,32,2,32,14,71,13,1,26,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,15,11,65,0,33,19,2,64,32,10,40,2,0,34,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,2,32,14,107,34,7,32,6,32,20,106,40,2,0,34,19,73,13,3,11,32,14,32,19,106,11,33,14,32,1,32,18,71,13,0,11,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,12,2,11,32,0,32,13,54,2,20,32,0,32,10,54,2,16,32,0,32,11,54,2,12,32,0,32,8,54,2,8,32,0,32,5,54,2,4,32,0,32,4,54,2,0,32,7,33,2,12,0,11,0,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,106,1,2,127,2,64,32,0,47,1,12,34,1,4,64,65,1,33,2,2,64,2,64,32,1,65,254,255,3,107,14,2,0,3,1,11,65,0,15,11,32,0,40,2,20,40,2,8,40,2,72,32,1,65,3,108,106,45,0,1,65,0,71,15,11,32,0,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,2,118,65,1,113,15,11,32,0,47,1,44,65,1,118,65,1,113,33,2,11,32,2,11,112,1,2,127,65,255,255,3,33,2,2,64,2,64,32,0,40,2,12,34,1,65,255,255,3,113,69,4,64,32,0,40,2,16,40,2,0,34,1,65,1,113,4,64,32,1,65,128,254,3,113,65,8,118,33,1,12,2,11,32,1,47,1,40,33,1,11,32,1,65,255,255,3,113,65,255,255,3,70,13,1,11,32,0,40,2,20,40,2,8,40,2,76,32,1,65,255,255,3,113,65,1,116,106,47,1,0,33,2,11,32,2,11,95,2,3,127,1,126,32,1,40,2,8,33,2,32,1,40,2,4,33,3,2,127,32,1,40,2,16,41,2,0,34,5,167,34,1,65,1,113,4,64,32,5,66,56,136,167,12,1,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,11,33,1,32,0,32,3,54,2,0,32,0,32,1,32,2,106,54,2,4,11,184,4,1,6,127,35,0,65,32,107,34,3,36,0,32,0,65,0,58,0,120,32,0,65,0,59,1,4,32,0,32,0,41,2,32,55,2,44,32,0,32,0,40,2,40,54,2,52,32,0,35,1,65,240,11,106,34,1,41,2,0,55,2,56,32,0,65,64,107,32,1,40,2,8,54,2,0,2,64,32,0,40,2,104,32,0,40,2,100,70,13,0,32,0,65,240,0,106,33,4,2,64,32,0,40,2,112,34,1,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,5,32,3,32,0,41,2,36,55,3,24,32,0,32,5,32,1,32,3,65,24,106,32,4,32,2,17,6,0,54,2,72,32,0,40,2,112,34,1,13,0,65,0,33,1,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,11,2,64,32,0,40,2,116,13,0,32,0,40,2,32,32,0,40,2,108,107,34,2,32,1,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,1,11,32,0,32,0,40,2,72,32,2,106,32,1,32,2,107,34,2,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,1,65,2,116,106,32,0,65,216,0,106,32,1,65,3,73,27,40,2,0,34,5,17,4,0,54,2,116,32,0,40,2,0,33,1,2,64,32,2,65,3,75,13,0,32,1,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,6,32,3,32,0,41,2,36,55,3,16,32,0,32,6,32,1,32,3,65,16,106,32,4,32,2,17,6,0,34,1,54,2,72,32,0,32,0,40,2,112,34,4,4,127,32,1,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,4,32,0,32,5,17,4,0,54,2,116,32,0,40,2,0,33,1,11,32,1,65,127,71,13,0,32,0,65,1,54,2,116,11,32,0,40,2,32,13,0,2,64,32,0,40,2,0,65,255,253,3,71,13,0,32,0,40,2,72,69,13,0,32,0,40,2,96,4,64,32,3,65,255,253,3,54,2,0,32,0,65,132,1,106,34,1,65,128,8,35,1,65,253,8,106,32,3,16,11,26,32,0,40,2,92,65,1,32,1,32,0,40,2,96,17,3,0,11,32,0,65,1,16,65,11,32,0,65,0,54,2,124,32,0,65,1,58,0,128,1,11,32,3,65,32,106,36,0,11,212,5,2,5,127,1,126,35,0,65,16,107,34,5,36,0,2,64,32,0,40,2,116,34,2,69,4,64,32,0,40,2,32,33,3,12,1,11,2,64,32,0,40,2,0,34,3,65,10,70,4,64,32,0,65,1,58,0,128,1,32,0,65,0,54,2,40,32,0,65,0,54,2,124,32,0,32,0,40,2,36,65,1,106,54,2,36,32,0,40,2,32,33,4,12,1,11,2,64,32,0,40,2,32,34,4,69,32,3,65,255,253,3,70,113,13,0,32,0,45,0,128,1,65,1,71,13,0,32,0,32,0,40,2,124,65,1,106,54,2,124,11,32,0,32,0,40,2,40,32,2,106,54,2,40,11,32,0,32,2,32,4,106,34,3,54,2,32,11,32,0,40,2,68,32,0,40,2,104,34,4,65,24,108,106,33,2,3,64,2,64,2,64,32,2,40,2,20,34,6,32,3,75,4,64,32,6,32,2,40,2,16,71,13,1,11,32,0,40,2,100,34,6,32,4,75,4,64,32,0,32,4,65,1,106,34,4,54,2,104,11,32,4,32,6,73,13,1,65,0,33,2,11,32,1,4,64,32,0,32,0,41,2,32,55,2,44,32,0,32,0,40,2,40,54,2,52,11,2,64,32,2,4,64,2,64,32,0,40,2,108,34,1,32,3,77,4,64,32,3,32,0,40,2,112,34,2,32,1,106,73,13,1,11,32,0,32,3,54,2,108,32,0,40,2,80,33,1,32,0,40,2,76,33,2,32,5,32,0,41,2,36,55,3,8,32,0,32,2,32,3,32,5,65,8,106,32,0,65,240,0,106,32,1,17,6,0,54,2,72,32,0,40,2,112,34,2,13,0,65,0,33,2,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,11,32,0,40,2,32,32,0,40,2,108,107,34,1,32,2,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,2,11,32,0,32,0,40,2,72,32,1,106,32,2,32,1,107,34,1,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,2,65,2,116,106,32,0,65,216,0,106,32,2,65,3,73,27,40,2,0,34,4,17,4,0,54,2,116,32,0,40,2,0,33,2,2,64,32,1,65,3,75,13,0,32,2,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,3,32,5,32,0,41,2,36,55,3,0,32,0,32,3,32,1,32,5,32,0,65,240,0,106,32,2,17,6,0,34,2,54,2,72,32,0,32,0,40,2,112,34,1,4,127,32,2,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,1,32,0,32,4,17,4,0,54,2,116,32,0,40,2,0,33,2,11,32,2,65,127,71,13,1,32,0,65,1,54,2,116,12,1,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,32,0,65,1,54,2,116,32,0,65,0,54,2,0,11,32,5,65,16,106,36,0,15,11,32,2,41,2,24,33,7,32,0,32,2,40,2,40,34,3,54,2,32,32,0,32,7,55,2,36,32,2,65,24,106,33,2,12,0,11,0,11,89,1,1,127,32,0,32,0,40,2,72,34,1,65,1,107,32,1,114,54,2,72,32,0,40,2,0,34,1,65,8,113,4,64,32,0,32,1,65,32,114,54,2,0,65,127,15,11,32,0,66,0,55,2,4,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,0,32,1,32,0,40,2,48,106,54,2,16,65,0,11,5,0,16,3,0,11,81,1,1,127,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,65,3,15,11,32,0,40,2,72,32,1,65,3,108,106,34,0,45,0,1,32,0,45,0,0,34,1,113,65,127,115,65,1,113,65,2,65,3,32,0,45,0,2,65,1,113,27,32,1,65,1,113,27,33,2,11,32,2,11,194,5,1,13,127,2,64,2,64,32,0,40,2,4,34,5,69,4,64,12,1,11,32,2,47,1,64,33,13,32,0,40,2,0,33,8,32,5,65,1,71,4,64,3,64,2,64,32,8,32,6,32,5,65,1,118,34,15,106,34,3,65,2,116,106,40,2,0,34,9,47,1,64,34,14,32,13,73,13,0,65,0,33,4,2,64,32,14,4,64,3,64,32,4,32,13,70,13,2,32,9,32,4,65,3,116,34,7,106,34,10,47,1,4,34,11,32,2,32,7,106,34,7,47,1,4,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,2,34,11,32,7,47,1,2,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,0,34,11,32,7,47,1,0,34,12,73,13,2,32,11,32,12,75,13,3,32,10,47,1,6,65,255,255,1,113,34,10,32,7,47,1,6,65,255,255,1,113,34,7,73,13,2,32,7,32,10,73,13,3,32,4,65,1,106,34,4,32,14,71,13,0,11,11,32,9,47,1,66,32,2,47,1,66,75,13,1,11,32,3,33,6,11,32,5,32,15,107,34,5,65,1,75,13,0,11,11,32,8,32,6,65,2,116,106,40,2,0,34,10,47,1,64,34,7,32,13,73,13,0,2,64,2,64,32,7,4,64,65,0,33,4,3,64,32,4,32,13,70,13,2,32,10,32,4,65,3,116,34,5,106,34,3,47,1,4,34,8,32,2,32,5,106,34,5,47,1,4,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,2,34,8,32,5,47,1,2,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,0,34,8,32,5,47,1,0,34,9,73,13,2,32,8,32,9,75,13,4,32,3,47,1,6,65,255,255,1,113,34,3,32,5,47,1,6,65,255,255,1,113,34,5,73,13,2,32,3,32,5,75,13,4,32,4,65,1,106,34,4,32,7,71,13,0,11,11,32,10,47,1,66,34,3,32,2,47,1,66,34,4,79,13,1,11,32,6,65,1,106,33,6,12,1,11,32,3,32,4,77,13,1,11,2,127,32,1,40,2,4,34,3,4,64,32,1,32,3,65,1,107,34,3,54,2,4,32,1,40,2,0,32,3,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,1,32,2,65,198,0,252,10,0,0,32,0,40,2,0,33,4,32,0,40,2,4,34,2,65,1,106,34,3,32,0,40,2,8,75,4,64,32,3,65,2,116,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,3,54,2,8,32,0,40,2,4,33,2,11,32,6,65,2,116,33,3,2,64,32,2,32,6,77,13,0,32,2,32,6,107,65,2,116,34,2,69,13,0,32,3,32,4,106,34,6,65,4,106,32,6,32,2,252,10,0,0,11,32,3,32,4,106,32,1,54,0,0,32,0,32,4,54,2,0,32,0,32,0,40,2,4,65,1,106,54,2,4,11,11,170,6,2,7,127,1,126,35,0,65,208,0,107,34,3,36,0,2,64,2,64,32,0,40,2,8,34,4,65,2,73,13,0,32,3,65,52,106,33,5,32,3,65,20,106,33,6,32,4,33,2,3,64,32,0,32,2,65,1,107,34,2,54,2,8,32,3,32,0,40,2,4,32,2,65,28,108,106,34,2,40,2,24,54,2,72,32,3,65,64,107,32,2,41,2,16,55,3,0,32,3,32,2,41,2,8,55,3,56,32,3,32,2,41,2,0,55,3,48,2,64,2,64,32,2,65,28,107,40,2,0,34,7,40,2,0,34,2,65,1,113,69,4,64,32,2,40,2,36,13,1,11,32,3,66,0,55,3,8,32,0,40,2,0,33,2,32,3,65,0,54,2,44,32,3,32,2,54,2,16,12,1,11,32,0,40,2,0,33,8,32,7,41,2,0,33,9,32,3,32,2,47,1,66,34,2,4,127,32,8,40,2,8,34,7,40,2,84,32,7,47,1,36,32,2,108,65,1,116,106,5,65,0,11,54,2,44,32,3,32,8,54,2,16,32,3,32,9,55,3,8,11,32,3,32,3,41,3,64,55,3,32,32,6,32,5,40,2,8,54,2,8,32,6,32,5,41,2,0,55,2,0,32,3,32,3,40,2,72,54,2,40,32,3,65,0,58,0,7,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,26,32,3,45,0,7,65,1,70,4,64,32,0,40,2,8,65,1,106,32,4,73,13,2,11,2,64,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,69,13,0,2,127,3,64,32,3,45,0,7,65,1,70,4,64,32,0,40,2,4,33,2,32,0,32,0,40,2,8,34,4,65,1,106,34,1,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,4,32,1,32,1,32,4,73,27,34,1,32,1,65,8,77,27,34,4,65,28,108,33,1,2,127,32,2,4,64,32,2,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,2,32,0,32,4,54,2,12,32,0,40,2,8,34,4,65,1,106,5,32,1,11,54,2,8,32,0,32,2,54,2,4,65,2,33,1,32,2,32,4,65,28,108,106,12,2,11,2,64,2,64,32,3,40,2,48,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,13,1,11,32,3,65,8,106,32,3,65,48,106,32,3,65,7,106,32,1,17,4,0,69,13,3,12,1,11,11,65,1,33,1,32,0,40,2,4,33,2,32,0,32,0,40,2,8,34,5,65,1,106,34,4,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,0,32,5,54,2,12,32,0,40,2,8,34,5,65,1,106,5,32,4,11,54,2,8,32,0,32,2,54,2,4,32,2,32,5,65,28,108,106,11,34,2,32,3,41,3,48,55,2,0,32,2,32,3,40,2,72,54,2,24,32,2,32,3,65,64,107,41,3,0,55,2,16,32,2,32,3,41,3,56,55,2,8,12,3,11,32,0,40,2,8,34,2,65,2,79,13,0,11,11,32,0,32,4,54,2,8,65,0,33,1,11,32,3,65,208,0,106,36,0,32,1,11,243,5,2,11,127,1,126,35,0,65,208,0,107,34,2,36,0,2,64,2,64,32,0,40,2,4,34,5,32,0,40,2,8,34,3,65,28,108,106,34,8,65,28,107,40,2,0,34,9,40,2,0,34,6,65,1,113,69,4,64,32,6,40,2,36,13,1,11,32,2,66,0,55,3,8,32,0,40,2,0,33,1,32,2,66,0,55,2,28,32,2,66,0,55,2,36,32,2,65,0,54,2,44,32,2,66,0,55,2,20,32,2,32,1,54,2,16,12,1,11,32,0,40,2,0,34,10,40,2,8,33,4,32,6,47,1,66,34,1,4,127,32,4,40,2,84,32,4,47,1,36,32,1,108,65,1,116,106,5,65,0,11,33,11,32,8,65,4,107,40,2,0,33,1,2,64,2,64,32,3,65,1,107,34,7,69,13,0,32,6,47,1,44,34,6,65,1,113,13,0,32,6,65,4,113,13,1,32,5,32,7,65,28,108,106,34,6,65,28,107,40,2,0,40,2,0,47,1,66,34,7,69,13,1,32,1,32,4,40,2,84,32,4,47,1,36,32,7,108,65,1,116,106,32,6,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,1,12,1,11,32,1,65,1,106,33,1,11,32,9,41,2,0,33,12,32,2,32,10,54,2,16,32,2,32,12,55,3,8,32,2,32,8,65,24,107,34,4,40,2,8,54,2,28,32,2,32,4,41,2,0,55,2,20,32,2,32,11,54,2,44,32,2,32,1,54,2,40,32,2,66,0,55,3,32,11,65,0,33,4,2,64,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,69,13,0,2,64,3,64,32,2,45,0,79,65,1,70,4,64,32,0,32,3,65,1,106,34,1,32,0,40,2,12,34,4,75,4,127,65,8,32,4,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,28,108,33,1,2,127,32,5,4,64,32,5,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,5,32,0,32,3,54,2,12,32,0,40,2,8,34,3,65,1,106,5,32,1,11,54,2,8,32,0,32,5,54,2,4,65,2,33,4,12,2,11,2,64,2,64,32,2,40,2,48,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,32,1,40,2,48,13,1,11,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,13,1,12,3,11,11,65,1,33,4,32,0,32,3,65,1,106,34,1,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,3,32,1,32,1,32,3,73,27,34,1,32,1,65,8,77,27,34,3,65,28,108,33,1,2,127,32,5,4,64,32,5,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,5,32,0,32,3,54,2,12,32,0,40,2,8,34,3,65,1,106,5,32,1,11,54,2,8,32,0,32,5,54,2,4,11,32,5,32,3,65,28,108,106,34,1,32,2,41,2,48,55,2,0,32,1,32,2,40,2,72,54,2,24,32,1,32,2,65,64,107,41,2,0,55,2,16,32,1,32,2,41,2,56,55,2,8,11,32,2,65,208,0,106,36,0,32,4,11,231,3,1,8,127,35,0,65,16,107,34,7,36,0,2,64,2,64,32,1,40,2,4,34,5,65,255,255,3,71,4,64,32,5,65,255,255,3,113,33,6,32,0,40,2,48,33,5,12,1,11,32,0,40,2,52,34,4,65,255,255,3,113,33,6,2,64,2,64,32,0,40,2,76,34,8,69,13,0,32,6,69,13,0,32,4,65,255,255,3,113,33,9,32,0,40,2,48,33,5,3,64,32,5,32,3,65,12,108,106,34,10,40,2,4,65,127,70,13,2,32,3,65,1,106,34,3,32,9,71,13,0,11,11,2,64,32,0,40,2,72,32,4,77,4,64,32,1,65,255,255,3,54,2,4,12,1,11,32,0,40,2,48,33,5,32,0,40,2,56,34,3,32,4,77,4,64,65,8,32,3,65,1,116,34,3,32,4,65,1,106,34,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,12,108,33,3,2,127,32,5,4,64,32,5,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,5,32,0,32,4,54,2,56,32,0,40,2,52,33,4,11,32,0,32,5,54,2,48,32,0,32,4,65,1,106,54,2,52,32,5,32,4,65,12,108,106,34,3,65,0,54,2,8,32,3,66,0,55,2,0,32,1,32,6,54,2,4,32,6,65,255,255,3,71,13,2,11,32,0,65,1,58,0,159,1,65,0,33,3,32,0,32,7,65,12,106,32,7,65,8,106,32,7,65,4,106,65,0,16,115,69,13,2,32,2,32,7,40,2,12,34,2,70,13,2,32,1,32,0,40,2,24,32,2,65,4,116,106,34,2,40,2,4,54,2,4,32,2,65,255,255,3,54,2,4,32,2,32,2,47,1,14,65,128,128,1,114,59,1,14,32,0,40,2,48,32,1,47,1,4,65,12,108,106,34,3,65,0,54,2,4,12,2,11,32,10,65,0,54,2,4,32,0,32,8,65,1,107,54,2,76,32,1,32,3,65,255,255,3,113,34,6,54,2,4,11,32,5,32,6,65,12,108,106,33,3,11,32,7,65,16,106,36,0,32,3,11,217,1,1,2,127,65,160,1,35,7,34,1,40,2,0,17,0,0,34,0,65,0,65,200,0,252,11,0,32,0,66,0,55,2,136,1,32,0,66,128,128,128,128,112,55,2,128,1,32,0,66,127,55,2,120,32,0,66,0,55,2,112,32,0,66,128,128,128,128,112,55,2,104,32,0,66,127,55,2,96,32,0,66,0,55,2,88,32,0,66,128,128,128,128,112,55,2,80,32,0,66,255,255,255,255,15,55,2,72,32,0,66,0,55,2,144,1,32,0,66,0,55,2,152,1,32,0,65,128,1,32,1,40,2,0,17,0,0,54,2,24,32,0,65,8,54,2,32,32,0,40,2,36,33,1,32,0,40,2,44,65,7,77,4,64,2,127,32,1,4,64,32,1,65,128,1,35,6,40,2,0,17,1,0,12,1,11,65,128,1,35,7,40,2,0,17,0,0,11,33,1,32,0,65,8,54,2,44,11,32,0,32,1,54,2,36,32,0,11,194,8,1,17,127,2,64,32,0,45,0,28,69,4,64,32,0,40,2,8,33,4,32,0,40,2,4,33,6,2,64,3,64,2,64,2,127,32,6,32,4,34,8,65,28,108,106,34,2,65,28,107,40,2,0,34,5,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,8,65,2,73,13,1,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,3,40,2,84,32,3,47,1,36,32,1,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,32,0,32,0,40,2,24,65,1,107,54,2,24,11,32,0,32,8,65,1,107,34,4,54,2,8,32,4,69,13,1,32,6,32,4,65,28,108,106,34,1,40,2,20,33,13,32,1,40,2,12,33,14,32,1,40,2,8,33,15,32,1,40,2,4,33,16,32,1,40,2,16,33,10,32,1,65,28,107,40,2,0,2,64,32,5,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,5,40,2,4,33,9,32,2,40,2,36,34,3,4,64,3,64,32,2,32,3,65,3,116,107,33,12,32,3,33,1,3,64,2,64,2,64,32,12,32,1,65,1,107,34,1,65,3,116,106,34,17,40,2,0,34,7,65,1,113,13,0,32,7,45,0,44,65,192,0,113,69,13,0,32,7,40,2,36,33,3,32,17,40,2,4,33,9,32,7,33,2,12,1,11,32,1,13,1,11,11,32,3,13,0,11,32,2,69,13,1,11,32,0,32,9,54,2,36,32,0,32,2,54,2,32,11,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,32,10,65,1,106,34,10,77,13,0,11,2,64,32,5,40,2,0,34,1,65,1,113,4,64,32,5,45,0,7,34,2,32,5,45,0,6,106,33,9,32,5,45,0,5,65,15,113,33,3,32,5,45,0,4,33,5,12,1,11,65,0,32,1,40,2,12,32,1,40,2,20,34,2,27,33,5,32,1,40,2,16,32,1,40,2,4,106,33,9,32,2,32,1,40,2,8,106,33,3,32,1,40,2,24,33,2,11,32,1,65,1,113,4,127,32,1,65,3,118,65,1,113,5,32,1,47,1,44,65,2,118,65,1,113,11,33,11,32,0,40,2,12,34,1,32,8,73,4,64,65,8,32,1,65,1,116,34,1,32,8,32,1,32,8,75,27,34,1,32,1,65,8,77,27,34,4,65,28,108,33,1,2,127,32,6,4,64,32,6,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,6,32,0,32,4,54,2,12,32,0,40,2,8,33,4,11,32,0,32,6,54,2,4,32,0,32,4,65,1,106,54,2,8,32,6,32,4,65,28,108,106,34,1,65,0,54,2,24,32,1,32,13,32,11,69,106,54,2,20,32,1,32,10,54,2,16,32,1,32,3,32,15,106,173,32,2,32,5,106,65,0,32,14,32,3,27,106,173,66,32,134,132,55,2,8,32,1,32,9,32,16,106,54,2,4,32,1,32,7,32,12,65,3,116,107,32,10,65,3,116,106,34,2,54,2,0,2,64,2,127,32,0,40,2,4,32,0,40,2,8,34,4,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,4,65,2,73,13,1,32,3,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,4,40,2,84,32,4,47,1,36,32,1,108,65,1,116,106,32,3,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,2,127,32,2,40,2,0,34,1,65,1,113,4,64,32,2,45,0,6,12,1,11,32,1,40,2,4,11,4,64,32,0,65,1,58,0,28,15,11,12,3,11,32,0,65,0,16,47,26,11,15,11,32,0,65,0,58,0,28,2,64,2,127,32,0,40,2,4,32,0,40,2,8,34,3,65,28,108,106,34,2,65,28,107,40,2,0,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,69,4,64,32,3,65,2,73,13,1,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,1,69,13,1,32,0,40,2,20,34,3,40,2,84,32,3,47,1,36,32,1,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,1,11,12,1,11,32,0,65,0,16,47,26,15,11,32,0,32,0,40,2,24,65,1,106,54,2,24,11,165,4,1,4,127,32,0,4,64,32,0,40,2,60,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,68,32,0,66,0,55,2,60,32,0,40,2,72,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,80,32,0,66,0,55,2,72,32,0,40,2,84,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,92,32,0,66,0,55,2,84,32,0,40,2,96,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,104,32,0,66,0,55,2,96,32,0,40,2,108,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,116,32,0,66,0,55,2,108,32,0,40,2,132,1,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,140,1,32,0,66,0,55,2,132,1,32,0,40,2,120,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,128,1,32,0,66,0,55,2,120,32,0,40,2,144,1,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,152,1,32,0,66,0,55,2,144,1,32,0,40,2,0,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,8,32,0,66,0,55,2,0,32,0,40,2,12,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,20,32,0,66,0,55,2,12,32,0,40,2,24,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,65,0,33,1,32,0,65,0,54,2,32,32,0,66,0,55,2,24,32,0,40,2,36,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,44,32,0,66,0,55,2,36,32,0,40,2,52,34,2,4,64,3,64,32,0,40,2,48,32,1,65,12,108,106,34,3,40,2,0,34,4,4,64,32,4,35,8,40,2,0,17,2,0,32,0,40,2,52,33,2,11,32,3,65,0,54,2,8,32,3,66,0,55,2,0,32,1,65,1,106,34,1,32,2,73,13,0,11,11,32,0,40,2,48,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,56,32,0,66,0,55,2,48,32,0,35,8,40,2,0,17,2,0,11,11,140,27,1,40,127,35,0,65,208,0,107,34,11,36,0,32,3,65,0,54,2,64,32,3,65,0,54,2,52,32,3,65,24,106,33,24,32,3,65,36,106,33,29,32,3,65,12,106,33,17,32,11,65,14,106,33,33,32,11,65,12,106,33,40,2,64,3,64,2,64,32,3,40,2,4,69,4,64,32,3,40,2,28,69,13,3,32,34,32,3,40,2,52,34,34,79,13,3,32,11,32,3,40,2,8,54,2,16,32,11,32,3,41,2,0,55,3,8,32,3,32,24,40,2,8,54,2,8,32,3,32,24,41,2,0,55,2,0,32,24,32,11,40,2,16,54,2,8,32,24,32,11,41,3,8,55,2,0,32,30,65,1,106,33,30,12,1,11,32,3,40,2,12,33,13,32,3,40,2,36,33,4,2,64,32,3,40,2,16,34,6,32,3,40,2,40,34,5,106,34,7,32,3,40,2,44,77,13,0,32,7,65,2,116,33,9,2,127,32,4,4,64,32,4,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,4,32,3,32,7,54,2,44,32,3,40,2,40,34,7,32,5,77,13,0,32,7,32,5,107,65,2,116,34,7,69,13,0,32,4,32,9,106,32,4,32,5,65,2,116,106,32,7,252,10,0,0,11,2,64,32,6,69,13,0,32,6,65,2,116,33,9,32,4,32,5,65,2,116,106,33,5,32,13,4,64,32,9,69,13,1,32,5,32,13,32,9,252,10,0,0,12,1,11,32,9,69,13,0,32,5,65,0,32,9,252,11,0,11,32,3,32,4,54,2,36,65,0,33,4,32,3,65,0,54,2,16,32,3,32,3,40,2,40,32,6,106,54,2,40,65,0,33,21,2,64,32,3,40,2,4,69,13,0,3,64,32,3,40,2,0,32,21,65,2,116,106,40,2,0,33,14,2,64,2,127,2,64,32,4,69,4,64,32,14,47,1,64,33,6,12,1,11,2,64,2,64,2,64,32,14,47,1,64,34,6,32,17,40,2,0,32,4,65,2,116,106,65,4,107,40,2,0,34,13,47,1,64,34,7,73,13,0,32,6,4,64,65,0,33,4,3,64,32,4,32,7,70,13,3,32,14,32,4,65,3,116,34,9,106,34,5,47,1,4,34,8,32,9,32,13,106,34,9,47,1,4,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,2,34,8,32,9,47,1,2,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,0,34,8,32,9,47,1,0,34,15,73,13,3,32,8,32,15,75,13,2,32,5,47,1,6,65,255,255,1,113,34,5,32,9,47,1,6,65,255,255,1,113,34,9,73,13,3,32,5,32,9,75,13,2,32,4,65,1,106,34,4,32,6,71,13,0,11,11,32,14,47,1,66,34,4,32,13,47,1,66,34,5,73,13,3,32,4,32,5,77,13,2,11,3,64,32,3,40,2,0,32,21,65,2,116,106,40,2,0,33,4,2,127,32,3,40,2,40,34,5,4,64,32,3,32,5,65,1,107,34,5,54,2,40,32,3,40,2,36,32,5,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,7,32,4,65,198,0,252,10,0,0,32,3,40,2,12,33,4,32,3,32,3,40,2,16,34,6,65,1,106,34,5,32,3,40,2,20,34,9,75,4,127,65,8,32,9,65,1,116,34,9,32,5,32,5,32,9,73,27,34,5,32,5,65,8,77,27,34,9,65,2,116,33,5,2,127,32,4,4,64,32,4,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,4,32,3,32,9,54,2,20,32,3,40,2,16,34,6,65,1,106,5,32,5,11,54,2,16,32,3,32,4,54,2,12,32,4,32,6,65,2,116,106,32,7,54,2,0,32,21,65,1,106,34,21,32,3,40,2,4,73,13,0,11,12,6,11,32,14,32,6,65,3,116,106,65,8,107,12,2,11,32,17,32,29,32,14,16,69,12,2,11,32,14,32,6,65,3,116,106,65,8,107,32,14,32,6,65,255,255,3,113,27,11,33,10,32,2,69,13,0,32,10,47,1,2,33,9,65,0,33,4,32,2,34,5,65,2,79,4,64,3,64,32,4,32,4,32,5,65,1,118,34,6,106,34,4,32,1,32,4,65,28,108,106,47,1,0,32,9,75,27,33,4,32,5,32,6,107,34,5,65,1,75,13,0,11,11,32,1,32,4,65,28,108,106,34,26,47,1,0,32,9,71,13,0,32,10,47,1,6,32,14,47,1,66,65,20,108,33,5,32,10,47,1,4,33,27,2,127,32,10,47,1,0,34,22,32,0,40,2,156,1,34,18,40,2,24,34,36,79,4,64,32,18,40,2,44,32,18,40,2,48,32,22,32,36,107,65,2,116,106,40,2,0,65,1,116,106,34,13,65,2,106,33,31,32,13,47,1,0,12,1,11,32,18,40,2,40,32,18,40,2,4,32,22,108,65,1,116,106,65,2,107,33,13,65,0,33,31,65,0,11,33,32,65,255,255,1,113,33,41,32,0,40,2,60,32,5,106,33,19,32,27,65,1,106,33,37,65,0,33,38,65,255,255,3,33,23,32,27,65,1,116,33,42,65,0,33,9,65,0,33,28,3,64,2,64,2,64,2,127,2,64,2,64,2,64,32,22,32,36,73,4,64,32,18,40,2,4,33,9,3,64,32,9,32,23,65,1,106,34,23,65,255,255,3,113,34,5,77,13,9,32,13,47,1,2,33,4,32,13,65,2,106,34,6,33,13,32,4,69,13,0,11,12,1,11,32,13,65,2,106,34,4,32,31,71,13,1,32,32,65,255,255,3,113,69,13,7,32,13,65,6,106,34,6,32,13,47,1,4,65,1,116,106,33,31,32,32,65,1,107,33,32,32,13,47,1,2,33,4,32,13,47,1,6,34,23,33,5,11,32,18,40,2,12,32,5,75,13,1,32,6,33,13,12,3,11,32,4,47,1,0,33,23,32,4,12,1,11,32,18,40,2,52,32,4,65,255,255,3,113,65,3,116,106,34,4,65,8,106,33,38,32,4,45,0,0,33,28,65,0,33,9,32,6,11,33,13,32,28,69,4,64,32,9,33,4,12,1,11,32,38,32,28,65,3,116,106,34,4,65,8,107,45,0,0,13,2,32,4,65,4,107,45,0,0,4,64,32,9,33,4,32,27,33,5,32,22,33,15,12,2,11,32,4,65,6,107,47,1,0,33,15,32,9,33,4,32,37,33,5,12,1,11,65,0,33,9,65,0,33,28,32,37,33,5,32,4,33,15,32,4,65,255,255,3,113,69,13,1,11,32,4,33,9,32,5,65,255,0,113,33,25,2,64,32,26,40,2,20,34,5,69,4,64,65,0,33,16,12,1,11,32,26,40,2,16,33,7,65,0,33,16,32,5,34,4,65,1,71,4,64,3,64,2,64,2,64,32,7,32,16,32,4,65,1,118,34,12,106,34,6,65,6,108,106,34,8,47,1,0,34,10,32,15,65,255,255,3,113,34,20,73,13,0,32,10,32,20,75,13,1,32,8,45,0,4,34,10,65,255,0,113,34,20,32,25,73,13,0,32,10,192,65,0,72,13,1,32,20,32,25,75,13,1,32,8,47,1,2,13,1,11,32,6,33,16,11,32,4,32,12,107,34,4,65,1,75,13,0,11,11,32,7,32,16,65,6,108,106,34,4,47,1,0,34,6,32,15,65,255,255,3,113,34,7,79,4,64,32,6,32,7,75,13,1,32,4,45,0,4,65,255,0,113,32,25,79,13,1,11,32,16,65,1,106,33,16,11,32,5,32,16,77,13,0,32,23,65,255,255,3,113,33,20,3,64,32,16,65,6,108,33,4,32,16,65,1,106,33,16,32,15,65,255,255,3,113,34,43,32,4,32,26,40,2,16,106,34,4,47,1,0,71,13,1,32,4,45,0,4,34,5,192,32,5,65,255,0,113,32,25,71,13,1,32,0,40,2,156,1,33,8,2,64,32,4,47,1,2,34,4,4,64,32,8,40,2,84,32,8,47,1,36,32,4,108,65,1,116,106,32,42,106,47,1,0,34,7,13,1,11,65,0,33,7,32,8,40,2,72,32,20,65,3,108,106,45,0,0,65,1,71,13,0,32,8,40,2,76,32,20,65,1,116,106,47,1,0,33,7,11,2,64,32,41,34,12,13,0,65,0,33,12,32,8,40,2,32,69,13,0,32,8,40,2,64,32,4,65,2,116,106,34,4,47,1,2,34,5,69,13,0,32,8,40,2,68,32,4,47,1,0,65,2,116,106,34,4,32,5,65,2,116,106,33,5,3,64,2,64,32,4,45,0,3,13,0,32,27,32,4,45,0,2,71,13,0,32,4,47,1,0,33,12,12,2,11,32,4,65,4,106,34,4,32,5,71,13,0,11,11,32,11,65,8,106,34,6,32,14,65,198,0,252,10,0,0,32,11,47,1,72,34,5,65,3,116,32,6,106,34,4,65,4,107,32,40,32,5,27,32,25,59,1,0,32,4,65,8,107,32,6,32,5,27,34,6,32,15,59,1,0,65,0,72,4,64,32,4,65,2,107,32,33,32,5,27,34,10,32,10,47,1,0,65,128,128,2,114,59,1,0,11,2,64,2,64,2,64,2,64,2,127,65,1,32,19,47,1,0,34,10,65,255,255,3,70,13,0,26,2,64,32,7,4,64,2,127,32,10,69,4,64,65,1,32,19,47,1,18,65,1,113,69,13,1,26,32,8,40,2,72,32,7,65,3,108,106,45,0,1,12,1,11,32,7,32,10,70,11,32,19,47,1,4,34,4,69,32,4,32,12,65,255,255,3,113,70,114,113,33,4,32,19,47,1,2,34,8,69,13,1,65,0,34,7,32,14,47,1,64,34,12,69,13,2,26,3,64,32,14,32,7,65,3,116,106,47,1,2,32,8,70,13,2,32,7,65,1,106,34,7,32,12,71,13,0,11,65,0,12,2,11,65,0,32,20,32,8,40,2,12,73,13,1,26,32,4,65,2,107,32,33,32,5,27,46,1,0,65,0,78,4,64,32,5,65,7,79,4,64,32,3,65,1,58,0,72,12,7,11,32,11,32,5,65,1,106,34,4,59,1,72,32,11,32,4,65,255,255,3,113,65,3,116,106,33,6,11,65,0,33,10,32,6,65,0,59,1,4,32,6,32,23,59,1,2,32,6,32,22,59,1,0,32,6,32,12,65,255,255,1,113,59,1,6,65,0,33,7,32,11,47,1,72,34,5,69,13,3,3,64,2,64,32,7,69,13,0,32,11,65,8,106,32,7,65,3,116,106,47,1,2,33,8,65,0,33,4,3,64,32,8,32,11,65,8,106,32,4,65,3,116,106,47,1,2,71,4,64,32,7,32,4,65,1,106,34,4,71,13,1,12,2,11,11,32,10,65,1,106,33,10,11,32,7,65,1,106,34,7,32,5,71,13,0,11,32,10,32,30,75,13,2,65,0,12,1,11,32,4,11,2,64,32,5,69,13,0,3,64,32,6,46,1,6,65,0,78,13,1,32,11,32,5,65,1,107,34,5,59,1,72,32,11,32,5,65,255,255,3,113,34,4,65,3,116,106,33,6,32,4,13,0,11,11,69,13,1,32,0,40,2,60,33,5,32,11,47,1,74,33,4,3,64,32,5,32,4,65,1,106,34,4,65,255,255,3,113,65,20,108,106,34,7,47,1,12,34,6,65,255,255,3,71,4,64,32,6,32,19,47,1,12,75,13,1,11,11,32,11,32,4,59,1,74,65,1,33,39,12,2,11,32,24,32,29,32,11,65,8,106,16,69,12,2,11,65,0,33,39,32,19,33,7,32,22,32,43,70,13,1,11,3,64,32,7,47,1,18,34,4,65,8,113,4,64,32,11,32,11,47,1,74,65,1,106,59,1,74,32,7,65,20,106,33,7,12,1,11,2,64,32,4,65,16,113,13,0,32,0,40,2,60,32,11,47,1,74,34,10,65,20,108,106,47,1,12,32,19,47,1,12,71,4,64,32,3,40,2,60,33,10,32,3,40,2,64,34,8,4,127,32,14,47,1,68,33,6,65,0,33,4,32,8,34,5,65,1,71,4,64,3,64,32,4,32,5,65,1,118,34,12,32,4,106,34,4,32,10,32,4,65,1,116,106,47,1,0,32,6,75,27,33,4,32,5,32,12,107,34,5,65,1,75,13,0,11,11,32,6,32,10,32,4,65,1,116,106,47,1,0,34,5,70,13,2,32,4,32,5,32,6,73,106,5,65,0,11,33,4,32,8,65,1,106,34,5,32,3,40,2,68,75,4,64,32,5,65,1,116,33,6,2,127,32,10,4,64,32,10,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,10,32,3,32,5,54,2,68,32,3,40,2,64,33,8,11,32,4,65,1,116,33,5,2,64,32,4,32,8,79,13,0,32,8,32,4,107,65,1,116,34,4,69,13,0,32,5,32,10,106,34,6,65,2,106,32,6,32,4,252,10,0,0,11,32,5,32,10,106,32,14,47,0,68,59,0,0,32,3,32,10,54,2,60,32,3,32,3,40,2,64,65,1,106,54,2,64,12,1,11,32,11,47,1,72,69,4,64,32,3,40,2,48,33,12,65,0,33,4,32,3,40,2,52,34,8,33,5,2,64,2,64,2,64,32,8,34,6,14,2,2,1,0,11,3,64,32,4,32,5,65,1,118,34,6,32,4,106,34,4,32,12,32,4,65,1,116,106,47,1,0,32,10,75,27,33,4,32,5,32,6,107,34,5,65,1,75,13,0,11,11,32,12,32,4,65,1,116,106,47,1,0,34,5,32,10,70,13,2,32,4,32,5,32,10,73,106,33,6,11,32,8,65,1,106,34,4,32,3,40,2,56,75,4,64,32,4,65,1,116,33,5,2,127,32,12,4,64,32,12,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,12,32,3,32,4,54,2,56,32,3,40,2,52,33,8,11,32,6,65,1,116,33,4,2,64,32,6,32,8,79,13,0,32,8,32,6,107,65,1,116,34,5,69,13,0,32,4,32,12,106,34,6,65,2,106,32,6,32,5,252,10,0,0,11,32,4,32,12,106,32,10,59,0,0,32,3,32,12,54,2,48,32,3,32,3,40,2,52,65,1,106,54,2,52,12,1,11,32,17,32,29,32,11,65,8,106,16,69,11,32,39,69,13,1,32,7,47,1,14,34,4,65,255,255,3,70,13,1,32,4,32,11,47,1,74,77,13,1,32,11,32,4,59,1,74,32,0,40,2,60,32,4,65,20,108,106,33,7,12,0,11,0,11,32,26,40,2,20,32,16,75,13,0,11,12,0,11,0,11,32,21,65,1,106,34,21,32,3,40,2,4,79,13,1,32,3,40,2,16,33,4,12,0,11,0,11,32,11,32,3,40,2,8,54,2,16,32,11,32,3,41,2,0,55,3,8,32,3,32,17,40,2,8,54,2,8,32,3,32,17,41,2,0,55,2,0,32,17,32,11,40,2,16,54,2,8,32,17,32,11,41,3,8,55,2,0,11,32,35,65,1,106,34,35,65,128,2,71,13,0,11,32,3,65,1,58,0,72,11,32,11,65,208,0,106,36,0,11,185,32,2,25,127,1,126,35,0,65,128,2,107,34,8,36,0,32,0,40,2,132,9,34,9,40,2,4,33,26,32,8,32,3,54,2,216,1,32,8,65,132,1,106,32,9,32,1,35,2,65,7,106,32,8,65,216,1,106,32,3,16,25,32,0,40,2,132,9,34,3,40,2,4,34,11,4,127,32,3,40,2,0,33,17,65,0,33,9,65,0,33,3,32,11,65,4,79,4,64,32,11,65,124,113,33,12,3,64,32,9,32,17,32,3,65,5,116,106,34,16,40,2,28,65,2,70,106,32,16,40,2,60,65,2,70,106,32,16,40,2,92,65,2,70,106,32,16,40,2,124,65,2,70,106,33,9,32,3,65,4,106,33,3,32,13,65,4,106,34,13,32,12,71,13,0,11,11,32,11,65,3,113,34,16,4,64,3,64,32,9,32,17,32,3,65,5,116,106,40,2,28,65,2,70,106,33,9,32,3,65,1,106,33,3,32,10,65,1,106,34,10,32,16,71,13,0,11,11,32,9,65,10,106,5,65,10,11,33,27,32,8,40,2,136,1,34,18,4,64,65,24,65,0,32,2,65,253,255,3,75,27,33,28,32,0,65,132,1,106,33,17,32,0,65,136,9,106,33,23,32,0,65,188,9,106,33,29,32,2,65,3,108,33,30,65,0,33,16,3,64,32,8,40,2,132,1,34,14,32,16,65,4,116,106,34,3,40,2,4,33,10,32,3,40,2,0,33,9,2,64,32,27,32,3,40,2,12,34,20,32,24,107,34,25,73,4,64,32,0,40,2,132,9,32,25,16,17,65,0,33,3,32,10,4,64,3,64,32,8,32,9,32,3,65,3,116,106,41,2,0,55,3,8,32,23,32,8,65,8,106,16,10,32,3,65,1,106,34,3,32,10,71,13,0,11,11,32,9,4,64,32,9,35,8,40,2,0,17,2,0,11,32,24,65,1,106,33,24,32,16,65,1,106,34,3,32,18,79,13,1,3,64,32,3,33,10,2,64,2,64,32,0,40,2,96,34,9,69,4,64,32,0,40,2,140,10,69,13,2,32,17,35,1,34,3,41,0,157,3,55,0,0,32,17,32,3,41,0,188,3,55,0,31,32,17,32,3,41,0,181,3,55,0,24,32,17,32,3,41,0,173,3,55,0,16,32,17,32,3,41,0,165,3,55,0,8,12,1,11,32,17,35,1,34,3,41,0,157,3,55,0,0,32,17,32,3,41,0,188,3,55,0,31,32,17,32,3,41,0,181,3,55,0,24,32,17,32,3,41,0,173,3,55,0,16,32,17,32,3,41,0,165,3,55,0,8,32,0,40,2,92,65,0,32,17,32,9,17,3,0,32,0,40,2,140,10,69,13,1,11,32,17,33,9,3,64,2,64,2,64,32,9,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,9,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,9,65,1,106,33,9,12,0,11,0,11,32,14,32,10,65,4,116,106,34,12,40,2,12,32,20,71,13,2,32,12,40,2,0,33,9,65,0,33,3,32,12,40,2,4,34,16,4,64,3,64,32,8,32,9,32,3,65,3,116,106,41,2,0,55,3,0,32,23,32,8,16,10,32,3,65,1,106,34,3,32,16,71,13,0,11,11,32,9,4,64,32,9,35,8,40,2,0,17,2,0,11,32,10,34,16,65,1,106,34,3,32,18,71,13,0,11,12,1,11,32,8,32,3,40,2,8,54,2,128,1,32,8,32,10,54,2,124,32,8,32,9,54,2,120,32,8,65,248,0,106,34,3,32,29,16,114,32,8,65,240,0,106,32,2,32,3,32,5,32,0,40,2,160,9,16,113,2,64,32,16,65,1,106,34,9,32,18,79,13,0,32,8,40,2,132,1,32,9,65,4,116,106,34,3,40,2,12,32,20,71,13,0,3,64,32,9,33,16,32,3,40,2,8,33,22,32,3,40,2,4,33,12,32,3,40,2,0,33,14,32,0,65,0,54,2,204,9,2,64,32,12,34,10,69,4,64,32,8,32,8,41,3,112,55,3,144,1,32,0,40,2,212,9,33,3,65,0,33,10,65,0,33,9,12,1,11,2,64,2,127,3,64,32,0,40,2,204,9,34,9,2,127,32,14,32,10,65,3,116,106,34,3,65,8,107,40,2,0,34,13,65,1,113,4,64,32,13,65,3,118,65,1,113,12,1,11,32,13,47,1,44,65,2,118,65,1,113,11,69,13,1,26,32,3,65,4,107,40,2,0,33,18,32,0,40,2,200,9,33,3,32,0,32,9,65,1,106,34,11,32,0,40,2,208,9,34,15,75,4,127,65,8,32,15,65,1,116,34,9,32,11,32,9,32,11,75,27,34,9,32,9,65,8,77,27,34,11,65,3,116,33,9,2,127,32,3,4,64,32,3,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,3,32,0,32,11,54,2,208,9,32,0,40,2,204,9,34,9,65,1,106,5,32,11,11,54,2,204,9,32,0,32,3,54,2,200,9,32,3,32,9,65,3,116,106,34,3,32,18,54,2,4,32,3,32,13,54,2,0,32,10,65,1,107,34,10,13,0,11,65,0,33,10,32,0,40,2,204,9,11,34,9,65,2,73,13,0,65,0,33,3,32,9,65,1,118,34,13,65,1,71,4,64,32,13,65,254,255,255,255,7,113,33,13,65,0,33,11,3,64,32,0,40,2,200,9,34,18,32,3,65,3,116,34,15,106,34,19,41,2,0,33,33,32,19,32,18,32,0,40,2,204,9,32,3,65,127,115,106,65,3,116,34,19,106,41,2,0,55,2,0,32,0,40,2,200,9,32,19,106,32,33,55,2,0,32,0,40,2,200,9,34,18,32,15,106,34,15,41,2,8,33,33,32,15,32,18,32,0,40,2,204,9,32,3,65,254,255,255,255,1,115,106,65,3,116,34,15,106,41,2,0,55,2,8,32,0,40,2,200,9,32,15,106,32,33,55,2,0,32,3,65,2,106,33,3,32,11,65,2,106,34,11,32,13,71,13,0,11,11,32,9,65,2,113,69,13,0,32,0,40,2,200,9,34,9,32,3,65,3,116,106,34,13,41,2,0,33,33,32,13,32,9,32,0,40,2,204,9,32,3,65,127,115,106,65,3,116,34,3,106,41,2,0,55,2,0,32,0,40,2,200,9,32,3,106,32,33,55,2,0,11,32,8,32,8,41,3,112,55,3,144,1,32,0,40,2,212,9,33,3,32,0,40,2,220,9,32,10,79,4,64,32,10,65,3,116,33,9,12,1,11,32,10,65,3,116,33,9,2,127,32,3,4,64,32,3,32,9,35,6,40,2,0,17,1,0,12,1,11,32,9,35,7,40,2,0,17,0,0,11,33,3,32,0,32,10,54,2,220,9,11,32,0,32,10,54,2,216,9,32,9,4,64,32,3,32,14,32,9,252,10,0,0,11,32,0,32,3,54,2,212,9,65,1,33,11,32,0,40,2,160,9,33,18,65,2,33,13,2,64,2,64,2,64,2,127,32,8,45,0,144,1,65,1,113,4,64,32,8,45,0,145,1,12,1,11,32,8,40,2,144,1,47,1,40,11,34,21,65,255,255,3,113,34,15,65,254,255,3,107,14,2,0,2,1,11,65,0,33,13,65,0,33,11,12,1,11,32,18,40,2,72,32,15,65,3,108,106,34,9,45,0,0,65,229,0,113,33,11,32,9,45,0,1,65,1,116,33,13,11,32,0,40,2,216,9,34,9,65,3,116,65,204,0,106,34,19,32,0,40,2,220,9,65,3,116,75,4,64,32,3,32,19,35,6,40,2,0,17,1,0,33,3,32,0,32,19,65,3,118,54,2,220,9,32,0,32,3,54,2,212,9,32,0,40,2,216,9,33,9,11,32,8,66,0,55,3,240,1,32,8,66,0,55,3,232,1,32,8,66,0,55,3,224,1,32,8,66,0,55,3,184,1,32,8,65,0,54,2,192,1,32,8,65,1,54,2,252,1,32,8,66,0,55,3,216,1,32,8,65,0,59,1,204,1,32,8,66,0,55,3,176,1,32,8,66,0,55,3,160,1,32,8,65,0,59,1,174,1,32,8,32,21,59,1,208,1,32,8,32,11,32,13,114,65,255,1,113,65,24,65,0,32,15,65,253,255,3,75,27,114,59,1,200,1,32,8,32,9,54,2,212,1,32,3,32,9,65,3,116,106,34,3,32,8,40,2,252,1,54,2,0,32,3,32,8,41,3,240,1,55,2,28,32,3,32,8,41,3,232,1,55,2,20,32,3,32,8,41,3,224,1,55,2,12,32,3,32,8,41,3,216,1,55,2,4,32,3,32,8,40,2,212,1,54,2,36,32,3,32,8,47,1,208,1,59,1,40,32,3,32,8,47,1,204,1,59,1,42,32,3,32,8,47,1,200,1,59,1,44,32,3,32,8,40,2,192,1,54,1,62,32,3,32,8,41,3,184,1,55,1,54,32,3,32,8,41,3,176,1,55,1,46,32,3,32,8,47,1,174,1,59,1,66,32,3,32,8,41,3,160,1,55,2,68,32,8,65,0,54,2,156,1,32,8,32,3,54,2,152,1,32,8,32,8,41,2,152,1,55,3,88,32,8,65,216,0,106,32,18,16,21,32,8,32,8,41,3,144,1,55,3,80,32,8,32,8,41,2,152,1,55,3,72,2,64,32,0,32,8,65,208,0,106,32,8,65,200,0,106,16,108,4,64,65,0,33,3,32,0,40,2,192,9,4,64,3,64,32,8,32,0,40,2,188,9,32,3,65,3,116,106,41,2,0,55,3,56,32,23,32,8,65,56,106,16,10,32,3,65,1,106,34,3,32,0,40,2,192,9,73,13,0,11,11,32,0,65,0,54,2,192,9,32,8,32,8,41,3,112,34,33,55,3,104,32,8,32,33,55,3,48,32,23,32,8,65,48,106,16,10,32,0,40,2,200,9,33,3,32,0,32,0,40,2,188,9,54,2,200,9,32,0,32,3,54,2,188,9,32,0,41,2,192,9,33,33,32,0,32,0,41,2,204,9,55,2,192,9,32,0,32,33,55,2,204,9,65,1,33,3,32,0,40,2,160,9,33,12,65,2,33,9,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,0,2,1,11,65,0,33,9,65,0,33,3,12,1,11,32,12,40,2,72,32,30,106,34,9,45,0,0,65,229,0,113,33,3,32,9,45,0,1,65,1,116,33,9,11,32,10,65,3,116,34,13,65,204,0,106,34,11,32,22,65,3,116,75,4,64,32,14,32,11,35,6,40,2,0,17,1,0,33,14,11,32,8,66,0,55,3,240,1,32,8,66,0,55,3,232,1,32,8,66,0,55,3,224,1,32,8,66,0,55,3,184,1,32,8,65,0,54,2,192,1,32,8,65,1,54,2,144,1,32,8,66,0,55,3,216,1,32,8,65,0,59,1,208,1,32,8,66,0,55,3,176,1,32,8,66,0,55,3,160,1,32,8,32,2,59,1,212,1,32,8,32,5,59,1,200,1,32,8,32,28,32,3,32,9,114,65,255,1,113,114,59,1,204,1,32,8,32,10,54,2,252,1,32,13,32,14,106,34,3,32,8,40,2,144,1,54,2,0,32,3,32,8,41,3,240,1,55,2,28,32,3,32,8,41,3,232,1,55,2,20,32,3,32,8,41,3,224,1,55,2,12,32,3,32,8,41,3,216,1,55,2,4,32,3,32,8,40,2,252,1,54,2,36,32,3,32,8,47,1,212,1,59,1,40,32,3,32,8,47,1,208,1,59,1,42,32,3,32,8,47,1,204,1,59,1,44,32,3,32,8,40,2,192,1,54,1,62,32,3,32,8,41,3,184,1,55,1,54,32,3,32,8,41,3,176,1,55,1,46,32,3,32,8,47,1,200,1,59,1,66,32,3,32,8,41,3,160,1,55,2,68,32,8,65,0,54,2,156,1,32,8,32,3,54,2,152,1,32,8,32,8,41,3,152,1,55,3,40,32,8,65,40,106,32,12,16,21,32,8,32,8,41,3,152,1,55,3,112,12,1,11,65,0,33,3,32,0,65,0,54,2,204,9,32,12,4,64,3,64,32,8,32,14,32,3,65,3,116,106,41,2,0,55,3,64,32,23,32,8,65,64,107,16,10,32,3,65,1,106,34,3,32,12,71,13,0,11,11,32,14,69,13,0,32,14,35,8,40,2,0,17,2,0,11,32,16,65,1,106,34,9,32,8,40,2,136,1,34,18,79,13,1,32,8,40,2,132,1,32,9,65,4,116,106,34,3,40,2,12,32,20,70,13,0,11,11,32,0,40,2,160,9,32,25,65,5,116,34,19,32,0,40,2,132,9,40,2,0,106,40,2,0,47,1,0,34,9,32,2,16,43,33,15,2,64,32,7,69,13,0,32,9,32,15,71,13,0,32,8,40,2,112,34,3,32,3,47,1,44,65,4,114,59,1,44,11,32,8,40,2,112,33,3,2,64,2,64,32,6,13,0,32,18,65,1,75,13,0,32,26,65,2,73,13,1,11,32,3,32,3,47,1,44,65,24,114,59,1,44,65,255,255,3,33,9,11,32,3,32,9,59,1,42,32,3,32,3,40,2,60,32,4,106,54,2,60,32,0,40,2,132,9,32,8,32,8,41,3,112,34,33,55,3,96,32,8,32,33,55,3,32,65,0,33,11,32,25,32,8,65,32,106,65,0,32,15,16,23,32,0,40,2,192,9,4,64,3,64,32,0,40,2,188,9,32,11,65,3,116,106,41,2,0,33,33,32,0,40,2,132,9,34,3,40,2,0,32,19,106,34,22,40,2,0,33,9,2,127,32,3,40,2,40,34,10,4,64,32,3,32,10,65,1,107,34,10,54,2,40,32,3,40,2,36,32,10,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,3,32,15,59,1,0,32,3,65,2,106,65,0,65,146,1,252,11,0,32,33,167,33,10,32,3,66,0,55,2,152,1,32,3,65,1,54,2,148,1,32,3,65,0,54,2,160,1,2,64,2,127,2,64,2,64,32,9,4,64,32,3,65,0,54,2,28,32,3,32,33,55,2,20,32,3,32,9,54,2,16,32,3,65,1,59,1,144,1,32,3,32,9,41,2,4,55,2,4,32,3,32,9,40,2,12,54,2,12,32,3,32,9,40,2,152,1,34,12,54,2,152,1,32,3,32,9,40,2,160,1,34,31,54,2,160,1,32,3,32,9,40,2,156,1,34,9,54,2,156,1,32,10,69,13,1,32,10,65,1,113,34,32,13,2,32,3,32,10,45,0,45,65,2,113,4,127,65,226,4,5,32,10,40,2,32,11,32,12,106,54,2,152,1,65,0,32,10,40,2,12,32,10,40,2,20,34,21,27,33,12,32,10,40,2,16,32,10,40,2,4,106,33,13,32,10,40,2,24,33,14,32,21,32,10,40,2,8,106,12,3,11,32,3,66,0,55,2,4,65,0,33,9,32,3,65,0,54,2,12,32,10,13,3,11,32,22,32,9,54,2,8,12,2,11,32,3,32,12,32,10,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,33,66,32,136,167,65,255,1,113,33,12,32,33,66,56,136,167,34,14,32,33,66,48,136,167,65,255,1,113,106,33,13,32,33,66,40,136,167,65,15,113,11,33,21,32,3,32,3,40,2,4,32,13,106,54,2,4,32,3,32,3,40,2,8,32,21,106,173,32,12,32,14,106,65,0,32,3,40,2,12,32,21,27,106,173,66,32,134,132,55,2,8,2,64,32,32,69,4,64,65,0,33,14,32,3,32,10,40,2,36,34,12,4,127,32,10,40,2,56,5,65,0,11,32,9,106,32,10,47,1,44,65,1,113,106,32,10,47,1,40,65,254,255,3,70,106,54,2,156,1,32,12,69,13,1,32,10,40,2,60,33,14,12,1,11,32,3,32,9,32,10,65,1,118,65,1,113,106,54,2,156,1,65,0,33,14,11,32,3,32,14,32,31,106,54,2,160,1,11,32,22,32,3,54,2,0,32,11,65,1,106,34,11,32,0,40,2,192,9,73,13,0,11,11,65,0,33,3,32,20,32,24,70,13,0,3,64,2,64,32,1,32,3,70,13,0,32,0,40,2,132,9,34,15,40,2,0,34,10,32,3,65,5,116,106,34,9,40,2,28,13,0,32,10,32,19,106,34,20,40,2,28,13,0,32,9,40,2,0,34,14,47,1,0,34,21,32,20,40,2,0,34,13,47,1,0,71,13,0,32,14,40,2,4,32,13,40,2,4,71,13,0,32,14,40,2,152,1,32,13,40,2,152,1,71,13,0,35,1,65,148,12,106,33,12,32,20,40,2,12,33,10,2,64,32,9,40,2,12,34,11,69,13,0,32,11,65,1,113,13,0,32,11,45,0,44,65,192,0,113,69,13,0,32,12,32,11,65,48,106,32,11,40,2,36,27,33,12,11,35,1,65,148,12,106,33,11,2,64,32,10,69,13,0,32,10,65,1,113,13,0,32,10,45,0,44,65,192,0,113,69,13,0,32,11,32,10,65,48,106,32,10,40,2,36,27,33,11,11,32,12,40,2,24,33,22,2,64,32,11,40,2,24,34,10,65,25,79,4,64,32,10,32,22,71,13,2,32,12,40,2,0,33,12,32,11,40,2,0,33,11,12,1,11,32,10,32,22,71,13,1,11,32,12,32,11,32,10,16,18,13,0,32,13,47,1,144,1,4,127,65,0,33,3,3,64,32,15,40,2,52,33,10,32,9,40,2,0,32,8,32,13,32,3,65,4,116,106,34,14,41,2,24,55,3,24,32,8,32,14,41,2,16,55,3,16,32,8,65,16,106,32,10,16,32,32,3,65,1,106,34,3,32,20,40,2,0,34,13,47,1,144,1,73,13,0,11,32,9,40,2,0,34,14,47,1,0,5,32,21,11,65,255,255,3,113,69,4,64,32,9,32,14,40,2,156,1,54,2,8,11,32,15,32,25,16,17,32,24,65,1,106,33,24,12,2,11,32,3,65,1,106,34,3,32,25,71,13,0,11,11,32,16,65,1,106,34,16,32,18,73,13,0,11,32,0,40,2,132,9,40,2,4,33,11,11,32,8,65,128,2,106,36,0,65,127,32,26,32,11,32,26,77,27,11,145,10,2,17,127,1,126,35,0,65,192,1,107,34,3,36,0,32,0,40,2,132,9,32,3,32,2,41,2,0,55,3,56,32,1,32,3,65,56,106,65,0,65,1,16,23,32,3,65,220,0,106,32,0,40,2,132,9,32,1,35,2,65,10,106,65,0,65,0,16,25,32,3,40,2,96,4,64,32,0,65,180,9,106,33,14,32,0,65,136,9,106,33,15,3,64,32,3,40,2,92,32,16,65,4,116,106,34,5,40,2,8,33,11,32,5,40,2,4,33,2,32,5,40,2,0,33,7,32,3,66,0,55,3,80,66,0,33,20,2,64,32,2,34,5,69,13,0,3,64,32,3,32,7,32,5,65,1,107,34,8,65,3,116,34,17,106,41,2,0,34,20,55,3,72,2,64,2,64,32,20,167,34,4,65,1,113,4,64,32,20,66,8,131,66,0,82,13,2,65,0,33,10,65,1,33,12,65,0,33,6,12,1,11,32,4,45,0,44,65,4,113,13,1,32,4,32,4,40,2,36,34,6,65,3,116,107,33,10,32,6,69,4,64,65,0,33,6,65,1,33,12,12,1,11,65,0,33,12,65,0,33,4,32,6,65,1,71,4,64,32,6,65,126,113,33,18,65,0,33,13,3,64,32,10,32,4,65,3,116,106,34,19,40,2,0,34,9,65,1,113,69,4,64,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,11,32,19,40,2,8,34,9,65,1,113,69,4,64,32,9,32,9,40,2,0,65,1,106,54,2,0,32,9,40,2,0,26,11,32,4,65,2,106,33,4,32,13,65,2,106,34,13,32,18,71,13,0,11,11,32,6,65,1,113,69,13,0,32,10,32,4,65,3,116,106,40,2,0,34,4,65,1,113,13,0,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,11,32,11,32,2,32,6,106,65,1,107,34,4,73,4,64,32,4,65,3,116,33,11,2,127,32,7,4,64,32,7,32,11,35,6,40,2,0,17,1,0,12,1,11,32,11,35,7,40,2,0,17,0,0,11,33,7,32,4,33,11,11,2,64,32,2,32,5,77,13,0,32,2,32,5,107,65,3,116,34,2,69,13,0,32,7,32,6,32,8,106,65,3,116,106,32,7,32,5,65,3,116,106,32,2,252,10,0,0,11,2,64,32,12,13,0,32,6,65,3,116,33,2,32,7,32,17,106,33,5,32,10,4,64,32,2,69,13,1,32,5,32,10,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,5,65,0,32,2,252,11,0,11,2,127,32,3,45,0,72,65,1,113,4,64,32,3,40,2,72,33,8,32,3,45,0,73,12,1,11,32,3,40,2,72,34,8,47,1,40,11,33,2,65,1,33,5,32,0,40,2,160,9,33,6,32,8,47,1,66,33,9,65,2,33,8,2,64,2,64,2,64,32,2,65,255,255,3,113,34,10,65,254,255,3,107,14,2,0,2,1,11,65,0,33,8,65,0,33,5,12,1,11,32,6,40,2,72,32,10,65,3,108,106,34,8,45,0,0,65,229,0,113,33,5,32,8,45,0,1,65,1,116,33,8,11,32,4,65,3,116,34,12,65,204,0,106,34,13,32,11,65,3,116,75,4,64,32,7,32,13,35,6,40,2,0,17,1,0,33,7,11,32,3,66,0,55,3,176,1,32,3,66,0,55,3,168,1,32,3,66,0,55,3,160,1,32,3,66,0,55,3,128,1,32,3,65,0,54,2,136,1,32,3,65,1,54,2,188,1,32,3,66,0,55,3,152,1,32,3,65,0,59,1,142,1,32,3,66,0,55,3,120,32,3,66,0,55,3,104,32,3,32,9,59,1,118,32,3,32,2,59,1,144,1,32,3,32,5,32,8,114,65,255,1,113,65,24,65,0,32,10,65,253,255,3,75,27,114,59,1,140,1,32,3,32,4,54,2,148,1,32,7,32,12,106,34,2,32,3,40,2,188,1,54,2,0,32,2,32,3,41,3,176,1,55,2,28,32,2,32,3,41,3,168,1,55,2,20,32,2,32,3,41,3,160,1,55,2,12,32,2,32,3,41,3,152,1,55,2,4,32,2,32,3,40,2,148,1,54,2,36,32,2,32,3,47,1,144,1,59,1,40,32,2,32,3,47,1,142,1,59,1,42,32,2,32,3,47,1,140,1,59,1,44,32,2,32,3,40,2,136,1,54,1,62,32,2,32,3,41,3,128,1,55,1,54,32,2,32,3,41,3,120,55,1,46,32,2,32,3,47,1,118,59,1,66,32,2,32,3,41,3,104,55,2,68,32,3,65,0,54,2,68,32,3,32,2,54,2,64,32,3,32,3,41,3,64,55,3,48,32,3,65,48,106,32,6,16,21,32,3,32,3,41,3,64,34,20,55,3,80,32,3,32,3,41,3,72,55,3,40,32,15,32,3,65,40,106,16,10,12,2,11,32,8,34,5,13,0,11,66,0,33,20,11,32,0,32,0,40,2,144,10,65,1,106,54,2,144,10,2,64,2,64,32,0,40,2,180,9,4,64,32,3,32,14,41,2,0,55,3,32,32,3,32,3,41,3,80,55,3,24,32,0,32,3,65,32,106,32,3,65,24,106,16,108,69,13,1,32,3,32,14,41,2,0,55,3,8,32,15,32,3,65,8,106,16,10,11,32,14,32,20,55,2,0,12,1,11,32,3,32,3,41,3,80,55,3,16,32,15,32,3,65,16,106,16,10,11,32,16,65,1,106,34,16,32,3,40,2,96,73,13,0,11,11,32,0,40,2,132,9,32,3,40,2,92,40,2,12,16,17,32,0,40,2,132,9,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,3,65,192,1,106,36,0,11,228,2,1,3,127,2,64,32,0,40,2,20,34,2,32,1,40,2,4,34,3,79,4,64,32,2,65,127,70,13,1,32,0,32,1,40,2,8,32,2,32,3,107,106,34,3,54,2,20,32,0,32,0,40,2,12,34,2,32,1,40,2,32,32,2,32,1,40,2,24,107,34,4,65,0,32,2,32,4,79,27,106,32,0,40,2,8,34,2,32,1,40,2,20,34,4,75,27,173,66,32,134,32,1,40,2,28,32,2,32,4,107,34,4,65,0,32,2,32,4,79,27,106,173,132,55,2,8,32,3,32,1,40,2,8,79,13,1,32,0,66,127,55,2,8,32,0,65,127,54,2,20,12,1,11,32,2,32,1,40,2,0,34,3,77,13,0,32,0,32,3,54,2,20,32,0,32,1,41,2,12,55,2,8,11,2,64,32,0,40,2,16,34,2,32,1,40,2,4,34,3,79,4,64,32,0,32,1,40,2,8,32,2,32,3,107,106,34,3,54,2,16,32,0,32,0,40,2,4,34,2,32,1,40,2,32,32,2,32,1,40,2,24,107,34,4,65,0,32,2,32,4,79,27,106,32,0,40,2,0,34,2,32,1,40,2,20,34,4,75,27,173,66,32,134,32,1,40,2,28,32,2,32,4,107,34,4,65,0,32,2,32,4,79,27,106,173,132,55,2,0,32,3,32,1,40,2,8,79,13,1,32,0,66,127,55,2,0,32,0,65,127,54,2,16,15,11,32,2,32,1,40,2,0,34,3,77,13,0,32,0,32,3,54,2,16,32,0,32,1,41,2,12,55,2,0,11,11,161,19,2,23,127,1,126,35,0,65,48,107,34,8,36,0,32,8,65,36,106,32,0,40,2,132,9,34,2,32,1,35,2,65,9,106,65,0,65,0,16,25,2,127,32,8,40,2,40,34,21,4,64,32,0,65,132,1,106,33,15,32,0,65,136,9,106,33,22,3,64,32,2,32,8,40,2,36,34,2,40,2,12,32,1,16,39,32,2,32,1,54,2,12,65,0,33,14,65,0,33,16,3,64,32,8,40,2,36,32,16,65,4,116,106,34,2,40,2,4,33,18,32,2,40,2,12,65,5,116,34,19,32,0,40,2,132,9,40,2,0,106,40,2,0,47,1,0,33,7,32,8,32,2,40,2,0,34,20,41,2,0,34,25,55,3,24,2,64,32,25,167,34,2,65,1,113,13,0,65,0,33,12,32,2,40,2,36,34,23,69,13,0,3,64,32,7,33,3,2,64,2,64,2,64,2,64,32,8,40,2,24,34,2,32,2,40,2,36,65,3,116,107,32,12,65,3,116,106,41,2,0,34,25,167,34,6,65,1,113,34,13,69,4,64,65,0,33,7,32,6,40,2,36,65,0,71,33,14,32,6,47,1,40,34,9,65,255,255,3,70,13,3,32,6,45,0,44,65,4,113,69,13,1,32,3,33,7,12,3,11,65,0,33,14,32,6,65,8,113,13,3,32,6,65,128,254,3,113,65,8,118,33,9,12,1,11,32,9,65,254,255,3,70,13,1,11,32,3,65,255,255,3,113,33,2,32,0,40,2,160,9,34,5,40,2,24,33,7,2,64,32,9,32,5,40,2,12,73,4,64,2,64,2,64,32,2,32,7,79,4,64,32,5,40,2,44,32,5,40,2,48,32,2,32,7,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,17,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,4,65,0,33,10,3,64,32,4,65,4,106,33,2,32,4,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,7,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,7,65,1,106,34,7,32,11,71,13,0,11,5,32,2,11,33,4,65,0,33,2,32,10,65,1,106,34,10,32,17,71,13,0,11,12,2,11,32,5,40,2,40,32,5,40,2,4,32,2,108,65,1,116,106,32,9,65,1,116,106,47,1,0,33,2,12,1,11,32,4,47,1,0,33,2,11,65,0,33,7,32,5,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,4,69,13,1,32,2,32,4,65,3,116,106,34,2,45,0,0,13,1,32,3,32,2,65,8,106,34,2,65,6,107,47,1,0,32,2,65,4,107,45,0,0,65,1,113,27,33,7,12,1,11,2,64,32,2,32,7,79,4,64,32,5,40,2,44,32,5,40,2,48,32,2,32,7,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,5,69,4,64,65,0,33,7,12,3,11,32,2,65,2,106,33,3,65,0,33,11,3,64,32,3,65,4,106,33,2,32,3,47,1,2,34,4,4,127,32,2,32,4,65,1,116,106,65,0,33,7,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,7,65,1,106,34,7,32,4,71,13,0,11,5,32,2,11,33,3,65,0,33,7,32,11,65,1,106,34,11,32,5,71,13,0,11,12,2,11,32,5,40,2,40,32,5,40,2,4,32,2,108,65,1,116,106,32,9,65,1,116,106,47,1,0,33,7,12,1,11,32,3,47,1,0,33,7,11,32,13,13,1,11,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,11,32,0,40,2,132,9,34,2,40,2,0,32,19,106,34,11,40,2,0,33,3,2,127,32,2,40,2,40,34,4,4,64,32,2,32,4,65,1,107,34,4,54,2,40,32,2,40,2,36,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,32,7,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,2,66,0,55,2,152,1,32,2,65,1,54,2,148,1,32,2,65,0,54,2,160,1,2,64,2,127,2,64,2,64,32,3,4,64,32,2,65,0,59,0,29,32,2,32,14,58,0,28,32,2,32,25,55,2,20,32,2,32,3,54,2,16,32,2,65,1,59,1,144,1,32,2,65,0,58,0,31,32,2,32,3,41,2,4,55,2,4,32,2,32,3,40,2,12,54,2,12,32,2,32,3,40,2,152,1,34,4,54,2,152,1,32,2,32,3,40,2,160,1,34,17,54,2,160,1,32,2,32,3,40,2,156,1,34,9,54,2,156,1,32,6,69,13,1,32,13,13,2,32,2,32,6,45,0,45,65,2,113,4,127,65,226,4,5,32,6,40,2,32,11,32,4,106,54,2,152,1,65,0,32,6,40,2,12,32,6,40,2,20,34,3,27,33,4,32,6,40,2,16,32,6,40,2,4,106,33,10,32,6,40,2,24,33,5,32,3,32,6,40,2,8,106,12,3,11,32,2,66,0,55,2,4,65,0,33,9,32,2,65,0,54,2,12,32,6,13,3,11,32,11,32,9,54,2,8,12,2,11,32,2,32,4,32,6,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,25,66,32,136,167,34,3,65,255,1,113,33,4,32,3,65,24,118,34,5,32,3,65,16,118,65,255,1,113,106,33,10,32,3,65,8,118,65,15,113,11,33,3,32,2,32,2,40,2,4,32,10,106,54,2,4,32,2,32,2,40,2,8,32,3,106,173,32,4,32,5,106,65,0,32,2,40,2,12,32,3,27,106,173,66,32,134,132,55,2,8,2,64,32,13,69,4,64,65,0,33,5,32,2,32,6,40,2,36,34,3,4,127,32,6,40,2,56,5,65,0,11,32,9,106,32,6,47,1,44,65,1,113,106,32,6,47,1,40,65,254,255,3,70,106,54,2,156,1,32,3,69,13,1,32,6,40,2,60,33,5,12,1,11,32,2,32,9,32,6,65,1,118,65,1,113,106,54,2,156,1,65,0,33,5,11,32,2,32,5,32,17,106,54,2,160,1,11,32,11,32,2,54,2,0,32,12,65,1,106,34,12,32,23,71,13,0,11,11,65,1,33,12,32,18,65,1,75,4,64,3,64,32,20,32,12,65,3,116,106,41,2,0,33,25,32,0,40,2,132,9,34,2,40,2,0,32,19,106,34,6,40,2,0,33,3,2,127,32,2,40,2,40,34,4,4,64,32,2,32,4,65,1,107,34,4,54,2,40,32,2,40,2,36,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,32,7,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,25,167,33,4,32,2,66,0,55,2,152,1,32,2,65,1,54,2,148,1,32,2,65,0,54,2,160,1,2,64,32,2,2,127,2,64,2,64,32,3,4,64,32,2,65,0,54,2,28,32,2,32,25,55,2,20,32,2,32,3,54,2,16,32,2,65,1,59,1,144,1,32,2,32,3,41,2,4,55,2,4,32,2,32,3,40,2,12,54,2,12,32,2,32,3,40,2,152,1,34,5,54,2,152,1,32,2,32,3,40,2,160,1,34,9,54,2,160,1,32,2,32,3,40,2,156,1,34,3,54,2,156,1,32,4,69,13,1,32,4,65,1,113,34,13,13,2,32,2,32,4,45,0,45,65,2,113,4,127,65,226,4,5,32,4,40,2,32,11,32,5,106,54,2,152,1,65,0,32,4,40,2,12,32,4,40,2,20,34,5,27,33,11,32,5,32,4,40,2,8,106,33,5,32,4,40,2,24,33,10,32,4,40,2,16,32,4,40,2,4,106,12,3,11,32,2,66,0,55,2,4,65,0,33,3,32,2,65,0,54,2,12,32,4,13,3,11,32,6,32,3,54,2,8,12,2,11,32,2,32,5,32,4,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,25,66,32,136,167,65,255,1,113,33,11,32,25,66,40,136,167,65,15,113,33,5,32,25,66,56,136,167,34,10,32,25,66,48,136,167,65,255,1,113,106,11,32,2,40,2,4,106,54,2,4,32,2,32,2,40,2,8,32,5,106,173,32,10,32,11,106,65,0,32,2,40,2,12,32,5,27,106,173,66,32,134,132,55,2,8,2,64,32,13,69,4,64,65,0,33,5,32,2,32,4,40,2,36,34,10,4,127,32,4,40,2,56,5,65,0,11,32,3,106,32,4,47,1,44,65,1,113,106,32,4,47,1,40,65,254,255,3,70,106,54,2,156,1,32,10,69,13,1,32,4,40,2,60,33,5,12,1,11,32,2,32,3,32,4,65,1,118,65,1,113,106,54,2,156,1,65,0,33,5,11,32,2,32,5,32,9,106,54,2,160,1,11,32,6,32,2,54,2,0,32,12,65,1,106,34,12,32,18,71,13,0,11,11,32,8,32,8,41,3,24,55,3,16,32,22,32,8,65,16,106,16,10,32,20,35,8,40,2,0,17,2,0,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,0,40,2,160,9,33,7,35,1,65,171,10,106,33,2,2,64,2,64,2,64,2,127,32,8,45,0,24,65,1,113,4,64,32,8,45,0,25,12,1,11,32,8,40,2,24,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,7,40,2,8,32,7,40,2,4,106,32,3,77,13,0,32,7,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,8,32,2,54,2,0,32,15,65,128,8,35,1,65,165,7,106,32,8,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,15,32,2,17,3,0,11,32,15,33,3,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,32,0,40,2,140,10,34,2,69,13,3,32,0,40,2,132,9,32,0,40,2,160,9,32,2,16,29,35,1,65,235,11,106,32,0,40,2,140,10,16,20,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,16,65,1,106,34,16,32,8,40,2,40,73,13,0,11,65,1,32,14,69,13,2,26,32,8,65,36,106,32,0,40,2,132,9,34,2,32,1,35,2,65,9,106,65,0,65,0,16,25,32,8,40,2,40,13,0,11,11,32,21,65,0,71,11,32,8,65,48,106,36,0,11,197,3,1,7,127,35,0,65,16,107,33,4,2,127,32,2,45,0,0,34,7,65,1,113,69,4,64,32,2,40,2,0,34,5,65,196,0,65,40,32,5,40,2,36,34,6,27,106,47,1,0,33,8,32,5,65,42,106,32,6,69,13,1,26,32,5,65,198,0,106,12,1,11,32,2,45,0,1,33,8,32,2,65,2,106,11,47,1,0,33,6,32,0,40,2,160,9,34,10,40,2,88,33,0,2,64,32,10,40,2,0,65,14,77,4,64,32,0,32,1,65,2,116,106,34,9,47,1,0,33,5,32,9,47,1,2,33,9,32,4,65,0,59,1,12,32,4,32,9,59,1,10,32,4,32,5,59,1,8,32,0,32,6,65,2,116,106,40,1,0,33,0,32,4,65,0,59,1,4,32,4,32,0,54,2,0,12,1,11,32,4,32,0,32,1,65,6,108,106,34,5,47,1,4,59,1,12,32,4,32,5,40,1,0,34,5,54,2,8,32,4,32,0,32,6,65,6,108,106,34,0,47,1,4,59,1,4,32,4,32,0,40,1,0,54,2,0,11,2,64,32,5,65,255,255,3,113,65,255,255,3,70,4,64,65,0,33,0,12,1,11,2,64,32,3,40,2,4,69,13,0,32,4,40,2,0,32,4,40,2,8,115,32,4,47,1,4,32,4,47,1,12,115,114,13,0,32,10,47,1,100,32,8,71,4,64,65,1,33,0,12,2,11,32,7,65,1,113,4,127,32,7,65,6,118,65,1,113,5,32,2,40,2,0,47,1,44,65,10,118,65,1,113,11,13,0,65,1,33,0,32,2,65,2,106,32,2,40,2,0,65,42,106,32,7,65,1,113,27,47,1,0,32,1,70,13,1,11,2,127,32,2,40,2,0,34,0,65,1,113,4,64,32,2,45,0,7,12,1,11,32,0,40,2,16,11,33,2,65,0,33,0,32,8,69,32,2,65,0,71,114,69,13,0,32,4,47,1,10,13,0,32,3,45,0,8,33,0,11,32,0,65,1,113,11,217,50,2,28,127,2,126,35,0,65,192,2,107,34,4,36,0,32,0,40,2,132,9,34,5,40,2,0,32,1,65,5,116,106,34,3,40,2,0,34,6,40,2,8,33,30,32,6,40,2,4,33,26,32,5,40,2,4,33,18,32,6,40,2,156,1,34,15,32,3,40,2,8,34,13,73,4,64,32,3,32,15,54,2,8,32,15,33,13,11,32,3,40,2,4,33,23,32,6,40,2,152,1,33,24,2,64,32,3,40,2,28,65,1,71,4,64,32,6,47,1,0,13,1,32,6,40,2,20,13,1,11,32,24,65,244,3,106,33,24,11,2,64,32,23,69,13,0,32,2,45,0,0,65,1,113,69,4,64,32,2,40,2,0,47,1,40,65,255,255,3,70,13,1,11,32,23,40,2,4,69,13,0,32,0,65,188,9,106,33,10,32,0,65,136,9,106,33,27,32,24,32,26,106,33,20,32,13,32,15,71,33,25,3,64,2,64,2,64,32,23,40,2,0,32,28,65,20,108,106,34,5,47,1,16,34,21,69,13,0,32,5,40,2,0,34,7,32,26,70,13,0,32,5,40,2,12,33,17,32,5,40,2,4,33,8,32,18,4,64,32,0,40,2,132,9,40,2,0,33,6,65,0,33,3,3,64,32,21,32,6,32,3,65,5,116,106,40,2,0,34,5,47,1,0,70,4,64,32,5,40,2,4,32,26,70,13,3,11,32,3,65,1,106,34,3,32,18,71,13,0,11,11,32,0,32,1,32,20,32,7,107,32,17,65,228,0,108,106,32,30,32,8,107,65,30,108,106,16,107,13,1,2,127,32,2,45,0,0,65,1,113,4,64,32,2,45,0,1,12,1,11,32,2,40,2,0,47,1,40,11,33,14,2,64,32,0,40,2,160,9,34,3,40,2,24,34,5,32,21,77,4,64,32,3,40,2,44,32,3,40,2,48,32,21,32,5,107,65,2,116,106,40,2,0,65,1,116,106,34,5,47,1,0,34,8,69,13,2,32,5,65,2,106,33,6,65,0,33,16,3,64,32,6,65,4,106,33,3,32,6,47,1,2,34,11,4,127,32,3,32,11,65,1,116,106,65,0,33,7,3,64,32,3,47,1,0,32,14,65,255,255,3,113,70,13,4,32,3,65,2,106,33,3,32,7,65,1,106,34,7,32,11,71,13,0,11,5,32,3,11,33,6,32,16,65,1,106,34,16,32,8,71,13,0,11,12,2,11,32,3,40,2,40,32,3,40,2,4,32,21,108,65,1,116,106,32,14,65,255,255,3,113,65,1,116,106,33,6,11,32,6,47,1,0,69,13,0,32,0,40,2,132,9,33,5,32,4,32,17,32,25,106,34,29,54,2,160,2,32,4,65,200,1,106,32,5,32,1,35,2,65,7,106,32,4,65,160,2,106,32,29,16,25,32,4,40,2,204,1,34,5,69,13,0,65,0,33,22,65,127,33,19,3,64,32,4,32,4,40,2,200,1,32,22,65,4,116,106,34,14,41,2,8,55,3,192,1,32,4,32,14,41,2,0,55,3,184,1,2,64,2,64,32,19,32,4,40,2,196,1,34,11,70,4,64,65,0,33,3,32,4,40,2,184,1,33,8,32,4,40,2,188,1,34,6,4,64,3,64,32,4,32,8,32,3,65,3,116,106,41,2,0,55,3,136,1,32,27,32,4,65,136,1,106,16,10,32,3,65,1,106,34,3,32,6,71,13,0,11,11,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,5,32,22,65,127,115,106,65,4,116,34,3,69,13,1,32,14,32,14,65,16,106,32,3,252,10,0,0,12,1,11,32,21,32,0,40,2,132,9,34,7,40,2,0,32,11,65,5,116,106,34,3,40,2,0,34,8,47,1,0,71,4,64,32,3,65,2,54,2,28,65,0,33,3,32,4,40,2,184,1,33,8,32,4,40,2,188,1,34,6,4,64,3,64,32,4,32,8,32,3,65,3,116,106,41,2,0,55,3,168,1,32,27,32,4,65,168,1,106,16,10,32,3,65,1,106,34,3,32,6,71,13,0,11,11,32,4,65,0,54,2,188,1,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,5,32,22,65,127,115,106,65,4,116,34,3,69,13,1,32,14,32,14,65,16,106,32,3,252,10,0,0,12,1,11,65,0,33,3,2,64,32,8,47,1,144,1,34,5,69,13,0,3,64,2,64,32,8,32,3,65,4,116,106,40,2,20,34,6,69,13,0,32,6,65,1,113,13,0,32,6,47,1,40,65,255,255,3,71,13,0,32,4,65,0,58,0,136,2,32,4,65,160,2,106,32,7,32,11,35,2,65,8,106,32,4,65,136,2,106,65,1,16,25,32,4,40,2,164,2,69,13,2,32,7,32,4,40,2,160,2,34,5,40,2,12,32,11,16,39,32,5,40,2,4,34,7,69,13,2,2,64,32,5,40,2,0,34,14,40,2,0,34,11,65,1,113,13,0,32,11,40,2,36,34,17,69,13,0,32,4,40,2,184,1,33,6,32,4,40,2,188,1,34,8,32,17,106,34,3,32,4,40,2,192,1,75,4,64,32,3,65,3,116,33,5,2,127,32,6,4,64,32,6,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,6,32,4,32,3,54,2,192,1,11,32,17,65,3,116,33,3,2,64,32,8,69,13,0,32,8,65,3,116,34,5,69,13,0,32,3,32,6,106,32,6,32,5,252,10,0,0,11,32,3,4,64,32,6,32,11,32,3,107,32,3,252,10,0,0,11,32,4,32,6,54,2,184,1,32,4,32,4,40,2,188,1,32,17,106,54,2,188,1,65,0,33,3,32,17,65,1,71,4,64,32,17,65,126,113,33,8,65,0,33,6,3,64,32,3,65,3,116,34,5,32,4,40,2,184,1,106,40,2,0,34,11,65,1,113,69,4,64,32,11,32,11,40,2,0,65,1,106,54,2,0,32,11,40,2,0,26,11,32,4,40,2,184,1,32,5,106,40,2,8,34,5,65,1,113,69,4,64,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,11,32,3,65,2,106,33,3,32,6,65,2,106,34,6,32,8,71,13,0,11,11,32,17,65,1,113,69,13,0,32,4,40,2,184,1,32,3,65,3,116,106,40,2,0,34,5,65,1,113,13,0,32,5,32,5,40,2,0,65,1,106,54,2,0,32,5,40,2,0,26,11,65,0,33,3,3,64,32,4,32,14,32,3,65,3,116,106,41,2,0,55,3,160,1,32,27,32,4,65,160,1,106,16,10,32,3,65,1,106,34,3,32,7,71,13,0,11,32,14,35,8,40,2,0,17,2,0,12,2,11,32,3,65,1,106,34,3,32,5,71,13,0,11,11,32,4,65,184,1,106,32,10,16,114,2,64,32,4,40,2,188,1,34,8,4,64,32,0,40,2,160,9,33,3,32,4,40,2,184,1,33,7,32,8,65,3,116,34,5,65,204,0,106,34,6,32,4,40,2,192,1,65,3,116,75,4,64,32,7,32,6,35,6,40,2,0,17,1,0,33,7,32,4,32,6,65,3,118,54,2,192,1,32,4,32,7,54,2,184,1,11,32,4,66,0,55,3,184,2,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,1,54,2,244,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,130,2,32,4,66,0,55,3,136,2,32,4,66,0,55,3,224,1,32,4,65,255,255,3,59,1,132,2,32,4,65,27,59,1,236,1,32,4,65,0,59,1,234,1,32,4,32,8,54,2,240,1,32,5,32,7,106,34,5,32,4,40,2,244,1,54,2,0,32,5,32,4,41,3,184,2,55,2,28,32,5,32,4,41,3,176,2,55,2,20,32,5,32,4,41,3,168,2,55,2,12,32,5,32,4,41,3,160,2,55,2,4,32,5,32,4,40,2,240,1,54,2,36,32,5,32,4,47,1,132,2,59,1,40,32,5,32,4,47,1,130,2,59,1,42,32,5,32,4,47,1,236,1,59,1,44,32,5,32,4,40,2,152,2,54,1,62,32,5,32,4,41,3,144,2,55,1,54,32,5,32,4,41,3,136,2,55,1,46,32,5,32,4,47,1,234,1,59,1,66,32,5,32,4,41,3,224,1,55,2,68,32,4,65,0,54,2,220,1,32,4,32,5,54,2,216,1,32,4,32,4,41,3,216,1,55,3,152,1,32,4,65,152,1,106,32,3,16,21,32,5,32,5,47,1,44,65,4,114,59,1,44,32,4,32,4,41,3,216,1,34,31,55,3,160,2,32,0,40,2,132,9,32,4,32,31,55,3,144,1,32,4,40,2,196,1,34,19,32,4,65,144,1,106,65,0,32,21,16,23,12,1,11,32,4,40,2,184,1,34,5,4,64,32,5,35,8,40,2,0,17,2,0,11,32,4,66,0,55,3,184,1,32,4,40,2,196,1,33,19,11,65,0,33,5,32,0,40,2,192,9,4,64,3,64,32,0,40,2,188,9,32,5,65,3,116,106,41,2,0,33,31,32,0,40,2,132,9,34,6,40,2,0,32,19,65,5,116,106,34,17,40,2,0,33,8,2,127,32,6,40,2,40,34,3,4,64,32,6,32,3,65,1,107,34,3,54,2,40,32,6,40,2,36,32,3,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,9,32,21,59,1,0,32,9,65,2,106,65,0,65,146,1,252,11,0,32,31,167,33,12,32,9,66,0,55,2,152,1,32,9,65,1,54,2,148,1,32,9,65,0,54,2,160,1,2,64,32,9,2,127,2,64,2,64,32,8,4,64,32,9,32,31,55,2,20,32,9,32,8,54,2,16,32,9,65,1,59,1,144,1,32,9,32,8,41,2,4,55,2,4,32,9,32,8,40,2,12,54,2,12,32,9,32,8,40,2,152,1,34,3,54,2,152,1,32,9,32,8,40,2,160,1,34,11,54,2,160,1,32,9,32,8,40,2,156,1,34,7,54,2,156,1,32,12,69,13,1,32,12,65,1,113,34,6,13,2,32,9,32,12,45,0,45,65,2,113,4,127,65,226,4,5,32,12,40,2,32,11,32,3,106,54,2,152,1,65,0,32,12,40,2,12,32,12,40,2,20,34,3,27,33,14,32,3,32,12,40,2,8,106,33,16,32,12,40,2,24,33,8,32,12,40,2,16,32,12,40,2,4,106,12,3,11,32,9,66,0,55,2,4,65,0,33,7,32,9,65,0,54,2,12,32,12,13,3,11,32,17,32,7,54,2,8,12,2,11,32,9,32,3,32,12,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,31,66,32,136,167,65,255,1,113,33,14,32,31,66,40,136,167,65,15,113,33,16,32,31,66,56,136,167,34,8,32,31,66,48,136,167,65,255,1,113,106,11,32,9,40,2,4,106,54,2,4,32,9,32,9,40,2,8,32,16,106,173,32,8,32,14,106,65,0,32,9,40,2,12,32,16,27,106,173,66,32,134,132,55,2,8,2,64,32,6,69,4,64,65,0,33,16,32,9,32,12,40,2,36,34,3,4,127,32,12,40,2,56,5,65,0,11,32,7,106,32,12,47,1,44,65,1,113,106,32,12,47,1,40,65,254,255,3,70,106,54,2,156,1,32,3,69,13,1,32,12,40,2,60,33,16,12,1,11,32,9,32,7,32,12,65,1,118,65,1,113,106,54,2,156,1,65,0,33,16,11,32,9,32,11,32,16,106,54,2,160,1,11,32,17,32,9,54,2,0,32,5,65,1,106,34,5,32,0,40,2,192,9,73,13,0,11,11,32,22,65,1,106,33,22,32,4,40,2,204,1,33,5,12,1,11,32,4,32,5,65,1,107,34,5,54,2,204,1,11,32,5,32,22,75,13,0,11,32,19,65,127,70,13,0,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,10,12,4,11,32,4,32,29,54,2,132,1,32,4,32,21,54,2,128,1,32,0,65,132,1,106,34,3,65,128,8,35,1,65,248,1,106,32,4,65,128,1,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,3,32,5,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,10,12,4,11,3,64,2,64,2,64,2,64,32,3,45,0,0,34,7,65,34,70,13,0,32,7,65,220,0,70,13,0,32,7,13,1,32,0,40,2,140,10,34,5,13,2,65,1,33,10,12,7,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,7,11,32,7,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,1,11,11,32,0,40,2,132,9,32,0,40,2,160,9,32,5,16,29,65,1,33,10,35,1,65,235,11,106,32,0,40,2,140,10,16,20,12,3,11,32,28,65,1,106,34,28,32,23,40,2,4,73,13,1,11,11,65,0,33,10,11,32,0,40,2,132,9,34,3,40,2,4,34,7,32,18,75,4,64,32,0,65,132,1,106,33,5,3,64,2,64,32,3,40,2,0,32,18,65,5,116,106,40,2,28,69,13,0,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,4,32,18,54,2,112,32,5,65,128,8,35,1,65,205,0,106,32,4,65,240,0,106,16,11,26,32,0,40,2,96,34,3,4,64,32,0,40,2,92,65,0,32,5,32,3,17,3,0,11,32,5,33,7,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,7,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,7,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,7,65,1,106,33,7,12,0,11,0,11,32,0,40,2,132,9,32,18,16,17,32,18,65,1,107,33,18,32,0,40,2,132,9,33,3,32,0,40,2,140,10,34,6,69,13,0,32,3,32,0,40,2,160,9,32,6,16,29,35,1,65,235,11,106,32,0,40,2,140,10,16,20,32,0,40,2,132,9,33,3,11,32,18,65,1,106,34,18,32,3,40,2,4,34,7,73,13,0,11,11,2,64,2,64,2,127,32,2,45,0,0,34,6,65,1,113,4,64,32,2,45,0,1,12,1,11,32,2,40,2,0,47,1,40,11,65,255,255,3,113,69,4,64,2,64,32,0,40,2,96,34,3,69,4,64,32,0,40,2,140,10,69,13,3,32,0,35,1,65,168,8,106,34,5,41,0,0,55,0,132,1,32,0,32,5,40,0,8,54,0,140,1,32,0,65,132,1,106,33,7,12,1,11,32,0,35,1,65,168,8,106,34,5,41,0,0,55,0,132,1,32,0,32,5,40,0,8,54,0,140,1,32,0,40,2,92,65,0,32,0,65,132,1,106,34,7,32,3,17,3,0,32,0,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,7,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,4,11,65,220,0,32,0,40,2,140,10,16,9,32,7,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,7,65,1,106,33,7,12,0,11,0,11,2,64,32,10,69,4,64,32,2,40,2,0,33,5,12,1,11,32,7,65,7,79,4,64,32,3,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,24,32,0,65,136,9,106,32,4,65,24,106,16,10,12,3,11,32,2,40,2,0,33,5,32,6,65,1,113,13,0,32,5,45,0,44,65,128,1,113,69,13,0,32,3,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,104,32,0,65,136,9,106,32,4,65,232,0,106,16,10,12,2,11,32,24,65,228,0,106,33,6,2,127,32,5,65,1,113,4,64,32,2,45,0,6,32,2,45,0,7,106,33,10,32,2,45,0,5,65,15,113,12,1,11,32,5,40,2,16,32,5,40,2,4,106,33,10,32,5,40,2,20,32,5,40,2,8,106,11,33,3,32,0,32,1,32,6,32,10,106,32,3,65,30,108,106,16,107,4,64,32,0,40,2,132,9,40,2,0,32,1,65,5,116,106,65,2,54,2,28,32,4,32,2,41,2,0,55,3,32,32,0,65,136,9,106,32,4,65,32,106,16,10,12,2,11,32,5,65,8,118,33,19,32,0,40,2,160,9,33,20,2,64,2,64,32,5,65,1,113,4,64,32,19,65,255,1,113,33,10,12,1,11,32,5,47,1,40,34,10,65,253,255,3,75,13,1,11,2,64,2,64,32,20,40,2,24,34,3,65,1,77,4,64,32,20,40,2,44,32,20,40,2,48,65,1,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,3,47,1,0,34,11,69,4,64,65,0,33,3,12,3,11,32,3,65,2,106,33,8,65,0,33,16,3,64,32,8,65,4,106,33,3,32,8,47,1,2,34,25,4,127,32,3,32,25,65,1,116,106,65,0,33,7,3,64,32,3,47,1,0,32,10,70,13,4,32,3,65,2,106,33,3,32,7,65,1,106,34,7,32,25,71,13,0,11,5,32,3,11,33,8,65,0,33,3,32,16,65,1,106,34,16,32,11,71,13,0,11,12,2,11,32,20,40,2,40,32,20,40,2,4,65,1,116,106,32,10,65,1,116,106,47,1,0,33,3,12,1,11,32,8,47,1,0,33,3,11,32,20,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,6,45,0,0,34,3,69,13,0,32,6,32,3,65,3,116,106,34,3,45,0,0,13,0,32,3,45,0,4,65,1,71,13,0,32,4,32,2,41,2,0,34,31,55,3,136,2,32,31,66,32,136,33,32,2,64,32,31,167,34,6,65,1,113,4,64,32,6,33,5,12,1,11,32,6,34,5,40,2,0,65,1,70,13,0,32,5,40,2,36,65,3,116,65,204,0,106,34,3,35,7,40,2,0,17,0,0,33,11,32,3,4,64,32,11,32,5,32,5,40,2,36,65,3,116,107,32,3,252,10,0,0,11,32,0,65,136,9,106,32,11,32,6,40,2,36,34,10,65,3,116,106,33,5,2,64,32,10,4,64,65,0,33,3,3,64,32,11,32,3,65,3,116,106,40,2,0,34,8,65,1,113,69,4,64,32,8,32,8,40,2,0,65,1,106,54,2,0,32,8,40,2,0,26,32,6,40,2,36,33,10,11,32,3,65,1,106,34,3,32,10,73,13,0,11,12,1,11,32,6,45,0,44,65,192,0,113,69,13,0,32,6,40,2,48,33,3,32,4,32,6,41,2,68,55,3,176,2,32,4,32,6,41,2,60,55,3,168,2,32,4,32,6,41,2,52,55,3,160,2,2,64,32,6,40,2,72,34,8,65,25,73,13,0,32,8,35,7,40,2,0,17,0,0,33,3,32,6,40,2,72,34,8,69,13,0,32,3,32,6,40,2,48,32,8,252,10,0,0,11,32,5,32,3,54,2,48,32,5,32,4,41,3,160,2,55,2,52,32,5,32,4,41,3,168,2,55,2,60,32,5,32,4,41,3,176,2,55,2,68,11,32,5,65,1,54,2,0,32,4,32,4,41,3,136,2,55,3,96,32,4,65,224,0,106,16,10,66,0,33,32,11,2,64,32,5,65,1,113,4,64,32,5,65,8,114,33,5,12,1,11,32,5,32,5,47,1,44,65,4,114,59,1,44,11,32,2,32,5,173,34,31,32,32,66,32,134,132,55,2,0,32,31,66,8,136,167,33,19,11,2,64,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,1,11,32,0,65,132,1,106,33,3,32,0,40,2,160,9,33,6,35,1,65,171,10,106,33,7,2,64,2,64,2,64,32,5,65,1,113,4,127,32,19,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,7,12,1,11,65,0,33,7,32,6,40,2,8,32,6,40,2,4,106,32,5,77,13,0,32,6,40,2,56,32,5,65,2,116,106,40,2,0,33,7,11,32,4,32,7,54,2,80,32,3,65,128,8,35,1,65,193,5,106,32,4,65,208,0,106,16,11,26,32,0,40,2,96,34,5,4,64,32,0,40,2,92,65,0,32,3,32,5,17,3,0,11,32,0,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,7,65,34,70,13,0,32,7,65,220,0,70,13,0,32,7,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,3,45,0,0,33,7,11,32,7,192,32,0,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,65,8,35,7,40,2,0,17,0,0,34,3,32,2,41,2,0,34,32,55,2,0,32,0,40,2,160,9,33,5,32,3,65,212,0,35,6,40,2,0,17,1,0,33,3,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,24,59,1,132,2,32,4,66,0,55,3,184,2,32,4,65,1,54,2,224,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,240,1,32,4,66,0,55,3,136,2,32,4,66,0,55,3,184,1,32,4,65,1,54,2,216,1,32,4,65,254,255,3,59,1,244,1,32,4,65,0,59,1,130,2,32,3,32,4,40,2,224,1,54,2,8,32,3,32,4,41,3,184,2,55,2,36,32,3,32,4,41,3,176,2,55,2,28,32,3,32,4,41,3,168,2,55,2,20,32,3,32,4,41,3,160,2,55,2,12,32,3,32,4,40,2,216,1,54,2,44,32,3,32,4,47,1,244,1,59,1,48,32,3,32,4,47,1,240,1,59,1,50,32,3,32,4,47,1,132,2,59,1,52,32,3,32,4,40,2,152,2,54,1,70,32,3,32,4,41,3,144,2,55,1,62,32,3,32,4,41,3,136,2,55,1,54,32,3,32,4,47,1,130,2,59,1,74,32,3,32,4,41,3,184,1,55,2,76,32,4,65,0,54,2,204,1,32,4,32,3,65,8,106,54,2,200,1,32,4,32,4,41,3,200,1,55,3,72,32,4,65,200,0,106,32,5,16,21,2,64,2,64,32,13,32,15,70,4,64,32,0,40,2,132,9,32,4,32,4,41,3,200,1,34,31,55,3,176,1,32,4,32,31,55,3,48,32,1,32,4,65,48,106,65,0,65,0,16,23,32,32,167,65,1,113,69,13,1,12,2,11,32,0,40,2,132,9,33,5,32,4,65,1,54,2,136,2,32,4,65,160,2,106,32,5,32,1,35,2,65,7,106,32,4,65,136,2,106,65,1,16,25,32,4,40,2,160,2,33,8,2,64,32,4,40,2,164,2,34,13,65,1,77,4,64,32,8,40,2,12,33,5,32,0,40,2,132,9,33,3,12,1,11,32,0,65,136,9,106,33,6,65,1,33,10,3,64,65,0,33,3,32,8,32,10,65,4,116,106,34,15,40,2,4,4,64,3,64,32,4,32,15,40,2,0,32,3,65,3,116,106,41,2,0,55,3,64,32,6,32,4,65,64,107,16,10,32,3,65,1,106,34,3,32,15,40,2,4,73,13,0,11,11,32,15,65,0,54,2,4,32,15,40,2,0,34,5,4,64,32,5,35,8,40,2,0,17,2,0,11,32,15,65,0,54,2,8,32,15,66,0,55,2,0,32,10,65,1,106,34,10,32,13,71,13,0,11,32,8,40,2,12,34,5,65,1,106,34,7,32,0,40,2,132,9,34,3,40,2,4,79,13,0,3,64,32,3,32,7,16,17,32,8,40,2,12,34,5,65,1,106,34,7,32,0,40,2,132,9,34,3,40,2,4,73,13,0,11,11,32,3,32,5,32,1,16,39,32,8,40,2,0,33,3,32,8,32,8,40,2,4,34,5,65,1,106,34,13,32,8,40,2,8,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,13,32,5,32,13,75,27,34,5,32,5,65,8,77,27,34,5,65,3,116,33,6,2,127,32,3,4,64,32,3,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,3,32,8,32,5,54,2,8,32,8,40,2,4,34,5,65,1,106,5,32,13,11,54,2,4,32,8,32,3,54,2,0,32,3,32,5,65,3,116,106,32,4,41,3,200,1,55,2,0,32,4,65,136,2,106,65,254,255,3,32,4,40,2,160,2,65,0,32,0,40,2,160,9,16,113,32,4,32,4,41,3,136,2,34,31,55,3,200,1,32,2,45,0,0,32,0,40,2,132,9,32,4,32,31,55,3,56,32,4,32,31,55,3,176,1,32,1,32,4,65,56,106,65,0,65,0,16,23,65,1,113,13,1,11,32,2,40,2,0,34,6,45,0,44,65,192,0,113,69,13,0,32,0,40,2,132,9,33,7,2,64,32,6,65,1,113,69,4,64,32,2,40,2,4,33,8,32,6,40,2,36,34,5,4,64,3,64,32,6,32,5,65,3,116,107,33,15,32,5,33,3,3,64,2,64,2,64,32,15,32,3,65,1,107,34,3,65,3,116,106,34,13,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,2,40,2,36,33,5,32,13,40,2,4,33,8,32,2,33,6,12,1,11,32,3,13,1,11,11,32,5,13,0,11,11,32,7,40,2,0,32,1,65,5,116,106,33,3,32,6,69,13,1,32,6,65,1,113,13,1,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,12,1,11,32,7,40,2,0,32,1,65,5,116,106,33,3,65,0,33,6,65,0,33,8,11,32,3,40,2,12,4,64,32,7,40,2,52,32,4,32,3,41,2,12,55,3,40,32,4,65,40,106,16,10,11,32,3,32,8,54,2,16,32,3,32,6,54,2,12,11,2,64,32,0,40,2,132,9,34,1,40,2,4,34,13,69,4,64,65,1,33,3,12,1,11,32,1,40,2,0,33,6,65,0,33,7,3,64,32,6,32,7,65,5,116,106,34,3,40,2,28,33,5,32,3,40,2,0,34,2,40,2,156,1,34,1,32,3,40,2,8,73,4,64,32,3,32,1,54,2,8,11,2,64,32,5,65,1,70,13,0,32,2,47,1,0,69,13,0,65,0,33,3,12,2,11,65,1,33,3,32,7,65,1,106,34,7,32,13,71,13,0,11,11,32,0,32,3,58,0,198,10,12,1,11,32,0,40,2,160,9,33,5,65,0,65,204,0,35,6,40,2,0,17,1,0,33,3,32,4,66,0,55,3,184,2,32,4,66,0,55,3,176,2,32,4,66,0,55,3,168,2,32,4,66,0,55,3,144,2,32,4,65,0,54,2,152,2,32,4,65,1,54,2,200,1,32,4,66,0,55,3,160,2,32,4,65,0,59,1,244,1,32,4,66,0,55,3,136,2,32,4,66,0,55,3,184,1,32,4,65,0,54,2,224,1,32,4,65,255,255,3,59,1,216,1,32,4,65,27,59,1,240,1,32,4,65,0,59,1,132,2,32,3,32,4,40,2,200,1,54,2,0,32,3,32,4,41,3,184,2,55,2,28,32,3,32,4,41,3,176,2,55,2,20,32,3,32,4,41,3,168,2,55,2,12,32,3,32,4,41,3,160,2,55,2,4,32,3,32,4,40,2,224,1,54,2,36,32,3,32,4,47,1,216,1,59,1,40,32,3,32,4,47,1,244,1,59,1,42,32,3,32,4,47,1,240,1,59,1,44,32,3,32,4,40,2,152,2,54,1,62,32,3,32,4,41,3,144,2,55,1,54,32,3,32,4,41,3,136,2,55,1,46,32,3,32,4,47,1,132,2,59,1,66,32,3,32,4,41,3,184,1,55,2,68,32,4,65,0,54,2,252,1,32,4,32,3,54,2,248,1,32,4,32,4,41,2,248,1,55,3,16,32,4,65,16,106,32,5,16,21,32,3,32,3,47,1,44,65,251,255,3,113,59,1,44,32,0,40,2,132,9,32,4,32,4,41,2,248,1,55,3,8,32,1,32,4,65,8,106,65,0,65,1,16,23,32,4,32,2,41,2,0,55,3,0,32,0,32,1,32,4,16,78,11,32,4,65,192,2,106,36,0,11,212,10,1,23,127,35,0,65,16,107,34,15,36,0,32,0,40,2,132,9,34,12,40,2,4,34,17,32,1,75,4,64,65,1,32,2,32,2,65,1,77,27,33,22,32,2,65,1,106,33,23,32,17,33,21,32,1,33,9,3,64,32,12,40,2,0,33,11,2,64,32,9,32,17,75,4,64,32,11,32,9,65,5,116,106,33,13,32,17,33,3,3,64,2,64,32,11,32,3,65,5,116,106,34,6,40,2,28,13,0,32,13,40,2,28,13,0,32,6,40,2,0,34,10,47,1,0,34,19,32,13,40,2,0,34,4,47,1,0,71,13,0,32,10,40,2,4,32,4,40,2,4,71,13,0,32,10,40,2,152,1,32,4,40,2,152,1,71,13,0,35,1,65,148,12,106,33,5,32,13,40,2,12,33,7,2,64,32,6,40,2,12,34,8,69,13,0,32,8,65,1,113,13,0,32,8,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,8,65,48,106,32,8,40,2,36,27,33,5,11,35,1,65,148,12,106,33,8,2,64,32,7,69,13,0,32,7,65,1,113,13,0,32,7,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,7,65,48,106,32,7,40,2,36,27,33,8,11,32,5,40,2,24,33,14,2,64,32,8,40,2,24,34,7,65,25,79,4,64,32,7,32,14,71,13,2,32,5,40,2,0,33,5,32,8,40,2,0,33,8,12,1,11,32,7,32,14,71,13,1,11,32,5,32,8,32,7,16,18,13,0,32,4,47,1,144,1,4,127,65,0,33,3,3,64,32,12,40,2,52,33,5,32,6,40,2,0,32,15,32,4,32,3,65,4,116,106,34,4,41,2,24,55,3,8,32,15,32,4,41,2,16,55,3,0,32,15,32,5,16,32,32,3,65,1,106,34,3,32,13,40,2,0,34,4,47,1,144,1,73,13,0,11,32,6,40,2,0,34,10,47,1,0,5,32,19,11,69,4,64,32,6,32,10,40,2,156,1,54,2,8,11,32,12,32,9,16,17,12,3,11,32,3,65,1,106,34,3,32,9,71,13,0,11,11,32,11,32,9,65,5,116,106,40,2,0,47,1,0,33,12,32,0,65,0,54,2,172,9,32,23,33,3,2,127,2,64,32,2,34,5,4,127,32,3,5,65,1,33,5,32,0,40,2,160,9,40,2,12,11,65,255,255,3,113,34,19,32,5,77,13,0,65,0,33,13,32,22,33,8,3,64,2,64,32,8,65,253,255,3,75,13,0,2,64,2,64,32,0,40,2,160,9,34,7,40,2,24,34,3,32,12,77,4,64,32,7,40,2,44,32,7,40,2,48,32,12,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,3,47,1,0,34,14,69,4,64,65,0,33,3,12,3,11,32,3,65,2,106,33,4,65,0,33,10,3,64,32,4,65,4,106,33,3,32,4,47,1,2,34,11,4,127,32,3,32,11,65,1,116,106,65,0,33,5,3,64,32,8,32,3,47,1,0,70,13,4,32,3,65,2,106,33,3,32,5,65,1,106,34,5,32,11,71,13,0,11,5,32,3,11,33,4,65,0,33,3,32,10,65,1,106,34,10,32,14,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,12,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,3,12,1,11,32,4,47,1,0,33,3,11,32,7,40,2,52,32,3,65,255,255,3,113,65,3,116,106,34,3,45,0,0,34,14,69,13,0,32,3,65,8,106,33,24,65,0,33,5,3,64,32,24,32,5,65,3,116,106,34,3,46,1,4,33,10,2,64,2,64,2,64,32,3,45,0,0,14,4,0,1,2,0,2,11,32,10,65,129,2,113,69,32,13,114,33,13,12,1,11,32,3,45,0,1,34,7,69,13,0,32,3,47,1,6,33,25,32,3,47,1,2,33,11,32,0,40,2,168,9,33,6,65,0,33,3,32,0,40,2,172,9,34,4,4,64,3,64,32,11,32,6,32,3,65,4,116,106,34,20,47,1,4,70,4,64,32,20,40,2,0,32,7,70,13,3,11,32,3,65,1,106,34,3,32,4,71,13,0,11,11,32,0,32,4,65,1,106,34,3,32,0,40,2,176,9,34,20,75,4,127,65,8,32,20,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,4,116,33,3,2,127,32,6,4,64,32,6,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,6,32,0,32,4,54,2,176,9,32,0,40,2,172,9,34,4,65,1,106,5,32,3,11,54,2,172,9,32,0,32,6,54,2,168,9,32,6,32,4,65,4,116,106,34,3,65,0,59,1,14,32,3,32,25,59,1,12,32,3,32,10,54,2,8,32,3,65,0,59,1,6,32,3,32,11,59,1,4,32,3,32,7,54,2,0,11,32,5,65,1,106,34,5,32,14,71,13,0,11,11,32,19,32,8,65,1,106,34,8,65,255,255,3,113,71,13,0,11,65,0,33,5,2,64,32,0,40,2,172,9,69,4,64,65,127,33,6,12,1,11,3,64,32,0,32,9,32,0,40,2,168,9,32,5,65,4,116,106,34,3,47,1,4,32,3,40,2,0,32,3,40,2,8,32,3,47,1,12,65,1,65,0,16,77,33,6,32,5,65,1,106,34,3,33,5,32,3,32,0,40,2,172,9,73,13,0,11,11,65,1,32,13,65,1,113,13,1,26,32,6,65,127,70,13,0,32,18,65,5,75,13,0,32,0,40,2,132,9,32,6,32,9,16,39,12,2,11,32,2,4,64,32,0,40,2,132,9,32,9,16,17,11,32,16,11,32,21,32,9,65,1,106,32,1,32,9,70,27,33,9,33,16,11,32,18,65,1,106,33,18,32,9,32,0,40,2,132,9,34,12,40,2,4,34,21,73,13,0,11,11,32,15,65,16,106,36,0,32,16,65,1,113,11,219,7,2,12,127,3,126,32,1,32,3,114,4,64,32,1,65,0,71,33,6,32,3,65,0,71,33,7,3,64,32,0,32,10,65,24,108,106,33,5,2,127,32,11,65,1,113,34,14,4,64,32,5,41,2,8,33,18,32,5,40,2,20,12,1,11,32,6,65,1,113,69,4,64,66,127,33,18,65,127,12,1,11,32,5,41,2,0,33,18,32,5,40,2,16,11,33,5,32,2,32,13,65,24,108,106,33,6,2,64,32,5,2,127,32,12,65,1,113,34,15,4,64,32,6,41,2,8,33,17,32,6,40,2,20,12,1,11,32,7,65,1,113,69,4,64,66,127,33,17,65,127,12,1,11,32,6,41,2,0,33,17,32,6,40,2,16,11,34,6,73,4,64,2,64,32,14,32,15,70,13,0,2,64,32,4,40,2,4,34,6,69,13,0,32,9,32,4,40,2,0,32,6,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,5,54,2,0,32,7,65,16,107,32,18,55,2,0,12,1,11,32,5,32,9,77,13,0,32,4,40,2,0,33,8,32,4,32,6,65,1,106,34,7,32,4,40,2,8,34,15,75,4,127,65,8,32,15,65,1,116,34,6,32,7,32,6,32,7,75,27,34,6,32,6,65,8,77,27,34,7,65,24,108,33,6,2,127,32,8,4,64,32,8,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,8,32,4,32,7,54,2,8,32,4,40,2,4,34,6,65,1,106,5,32,7,11,54,2,4,32,4,32,8,54,2,0,32,8,32,6,65,24,108,106,34,6,32,5,54,2,20,32,6,32,9,54,2,16,32,6,32,18,55,2,8,32,6,32,19,55,2,0,11,32,11,65,1,115,33,11,32,10,32,14,106,33,10,12,1,11,32,11,32,12,115,33,7,2,64,32,5,32,6,75,4,64,2,64,32,7,65,1,113,69,13,0,2,64,32,4,40,2,4,34,5,69,13,0,32,9,32,4,40,2,0,32,5,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,6,54,2,0,32,7,65,16,107,32,17,55,2,0,12,1,11,32,6,32,9,77,13,0,32,4,40,2,0,33,8,32,4,32,5,65,1,106,34,7,32,4,40,2,8,34,14,75,4,127,65,8,32,14,65,1,116,34,5,32,7,32,5,32,7,75,27,34,5,32,5,65,8,77,27,34,7,65,24,108,33,5,2,127,32,8,4,64,32,8,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,8,32,4,32,7,54,2,8,32,4,40,2,4,34,5,65,1,106,5,32,7,11,54,2,4,32,4,32,8,54,2,0,32,8,32,5,65,24,108,106,34,5,32,6,54,2,20,32,5,32,9,54,2,16,32,5,32,17,55,2,8,32,5,32,19,55,2,0,11,32,12,65,1,115,33,12,12,1,11,2,64,32,7,65,1,113,69,13,0,2,64,32,4,40,2,4,34,5,69,13,0,32,9,32,4,40,2,0,32,5,65,24,108,106,34,7,65,4,107,34,8,40,2,0,75,13,0,32,8,32,6,54,2,0,32,7,65,16,107,32,17,55,2,0,12,1,11,32,6,32,9,77,13,0,32,4,40,2,0,33,7,32,4,32,5,65,1,106,34,8,32,4,40,2,8,34,16,75,4,127,65,8,32,16,65,1,116,34,5,32,8,32,5,32,8,75,27,34,5,32,5,65,8,77,27,34,8,65,24,108,33,5,2,127,32,7,4,64,32,7,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,7,32,4,32,8,54,2,8,32,4,40,2,4,34,5,65,1,106,5,32,8,11,54,2,4,32,4,32,7,54,2,0,32,7,32,5,65,24,108,106,34,5,32,6,54,2,20,32,5,32,9,54,2,16,32,5,32,17,55,2,8,32,5,32,19,55,2,0,11,32,12,65,1,115,33,12,32,11,65,1,115,33,11,32,10,32,14,106,33,10,11,32,13,32,15,106,33,13,32,6,33,5,32,17,33,18,11,32,3,32,13,75,33,7,32,18,33,19,32,5,33,9,32,1,32,10,75,34,6,13,0,32,7,13,0,11,11,11,228,7,1,15,127,2,64,32,2,32,4,77,4,64,32,2,32,4,71,13,1,32,3,32,5,77,13,1,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,15,11,32,1,65,8,106,40,2,0,33,10,32,1,65,16,106,40,2,0,33,7,32,1,40,2,20,33,20,32,1,40,2,4,33,8,32,1,40,2,0,33,14,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,32,0,32,1,41,2,0,55,2,0,2,64,32,7,40,2,0,34,1,65,1,113,13,0,3,64,32,1,40,2,36,69,13,1,32,1,47,1,66,34,15,4,127,32,20,40,2,8,34,7,40,2,84,32,7,47,1,36,32,15,108,65,1,116,106,5,65,0,11,33,19,32,1,40,2,36,34,21,69,13,1,2,127,32,1,32,21,65,3,116,107,34,16,40,2,0,34,1,65,1,113,34,7,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,11,69,33,17,65,0,33,12,2,64,32,11,13,0,32,19,69,13,0,32,19,47,1,0,33,12,65,1,33,17,11,2,127,32,7,69,4,64,65,0,32,10,32,1,40,2,20,34,7,27,33,11,32,1,40,2,24,33,9,32,1,40,2,16,33,13,32,7,32,8,106,12,1,11,32,16,45,0,7,34,13,33,9,32,10,33,11,32,8,11,33,7,32,9,32,11,106,33,9,2,64,2,64,32,4,32,7,75,13,0,32,4,32,7,70,32,5,32,9,75,113,13,0,32,7,32,8,70,32,9,32,10,70,113,69,4,64,32,2,32,7,71,13,2,32,3,32,9,79,13,1,12,2,11,32,2,32,8,71,13,1,32,3,32,10,77,13,1,11,65,1,33,11,32,21,65,1,70,13,2,32,13,32,14,106,33,14,3,64,65,0,33,12,2,127,32,16,32,11,65,3,116,106,34,15,40,2,0,34,1,65,1,113,34,13,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,19,4,127,32,19,32,17,65,1,116,106,47,1,0,5,65,0,11,33,12,32,17,65,1,106,33,17,11,2,127,32,11,69,4,64,32,9,33,10,32,7,12,1,11,2,127,32,13,4,64,32,15,45,0,5,65,15,113,33,8,32,15,45,0,6,33,18,32,15,45,0,4,12,1,11,32,1,40,2,8,33,8,32,1,40,2,4,33,18,32,1,40,2,12,11,65,0,32,9,32,8,27,106,33,10,32,14,32,18,106,33,14,32,7,32,8,106,11,33,8,2,127,32,13,4,64,32,15,45,0,7,34,18,33,9,32,10,33,13,32,8,12,1,11,65,0,32,10,32,1,40,2,20,34,7,27,33,13,32,1,40,2,24,33,9,32,1,40,2,16,33,18,32,7,32,8,106,11,33,7,32,9,32,13,106,33,9,2,64,32,4,32,7,75,13,0,32,4,32,7,70,32,5,32,9,75,113,13,0,2,64,2,64,32,7,32,8,71,13,0,32,9,32,10,71,13,0,32,2,32,8,71,13,1,32,3,32,10,77,13,1,12,2,11,32,2,32,7,71,13,0,32,3,32,9,79,13,1,11,32,15,33,16,12,2,11,32,14,32,18,106,33,14,32,11,65,1,106,34,11,32,21,71,13,0,11,12,2,11,32,2,32,8,73,13,1,32,2,32,8,70,32,3,32,10,73,113,13,1,2,64,2,64,32,6,4,64,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,12,114,13,1,12,2,11,2,64,32,12,65,254,255,3,107,14,2,2,1,0,11,2,64,32,12,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,13,2,12,3,11,32,20,40,2,8,40,2,72,32,12,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,1,47,1,44,34,1,65,1,113,69,13,1,32,1,65,1,118,65,1,113,69,13,1,11,32,0,32,20,54,2,20,32,0,32,16,54,2,16,32,0,32,12,54,2,12,32,0,32,10,54,2,8,32,0,32,8,54,2,4,32,0,32,14,54,2,0,11,32,16,40,2,0,34,1,65,1,113,69,13,0,11,11,11,230,6,1,16,127,32,2,32,3,75,4,64,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,15,11,32,1,65,8,106,40,2,0,33,8,32,1,65,16,106,40,2,0,33,5,32,1,40,2,20,33,19,32,1,40,2,4,33,11,32,1,40,2,0,33,9,32,0,32,1,41,2,16,55,2,16,32,0,32,1,41,2,8,55,2,8,32,0,32,1,41,2,0,55,2,0,2,64,32,5,40,2,0,34,1,65,1,113,13,0,3,64,32,1,40,2,36,69,13,1,32,1,47,1,66,34,12,4,127,32,19,40,2,8,34,5,40,2,84,32,5,47,1,36,32,12,108,65,1,116,106,5,65,0,11,33,18,32,1,40,2,36,34,20,69,13,1,2,127,32,1,32,20,65,3,116,107,34,12,40,2,0,34,1,65,1,113,34,5,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,7,69,33,14,65,0,33,10,2,64,32,7,13,0,32,18,69,13,0,32,18,47,1,0,33,10,65,1,33,14,11,2,127,32,5,69,4,64,65,0,32,8,32,1,40,2,20,34,5,27,33,13,32,1,40,2,24,33,6,32,1,40,2,16,33,7,32,5,32,11,106,12,1,11,32,12,45,0,7,34,7,33,6,32,8,33,13,32,11,11,33,5,2,64,2,64,32,7,32,9,106,34,15,32,3,73,13,0,32,7,69,4,64,32,12,33,6,12,2,11,32,2,32,15,79,13,0,32,12,33,6,12,1,11,65,1,33,7,32,20,65,1,70,13,2,32,6,32,13,106,33,8,3,64,65,0,33,10,2,127,32,12,32,7,65,3,116,106,34,6,40,2,0,34,1,65,1,113,34,16,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,18,4,127,32,18,32,14,65,1,116,106,47,1,0,5,65,0,11,33,10,32,14,65,1,106,33,14,11,2,127,32,7,69,4,64,32,5,33,11,32,15,12,1,11,2,127,32,16,4,64,32,6,45,0,5,65,15,113,33,9,32,6,45,0,6,33,17,32,6,45,0,4,12,1,11,32,1,40,2,8,33,9,32,1,40,2,4,33,17,32,1,40,2,12,11,65,0,32,8,32,9,27,106,33,8,32,5,32,9,106,33,11,32,15,32,17,106,11,33,9,2,127,32,16,4,64,32,6,45,0,7,34,13,33,17,32,8,33,16,32,11,12,1,11,65,0,32,8,32,1,40,2,20,34,5,27,33,16,32,1,40,2,24,33,17,32,1,40,2,16,33,13,32,5,32,11,106,11,33,5,32,3,32,9,32,13,106,34,15,77,4,64,32,13,69,13,2,32,2,32,15,73,13,2,11,32,16,32,17,106,33,8,32,7,65,1,106,34,7,32,20,71,13,0,11,12,2,11,32,2,32,9,73,13,1,2,64,2,64,32,4,4,64,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,10,114,13,1,12,2,11,2,64,32,10,65,254,255,3,107,14,2,2,1,0,11,2,64,32,10,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,13,2,12,3,11,32,19,40,2,8,40,2,72,32,10,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,1,47,1,44,34,1,65,1,113,69,13,1,32,1,65,1,118,65,1,113,69,13,1,11,32,0,32,19,54,2,20,32,0,32,6,54,2,16,32,0,32,10,54,2,12,32,0,32,8,54,2,8,32,0,32,11,54,2,4,32,0,32,9,54,2,0,11,32,6,40,2,0,34,1,65,1,113,69,13,0,11,11,11,203,6,2,21,127,1,126,32,1,40,2,20,33,16,32,1,40,2,4,33,9,32,1,40,2,8,33,6,32,1,40,2,0,33,4,32,1,40,2,16,40,2,0,33,1,2,64,3,64,32,25,66,32,136,167,33,18,32,25,167,33,19,3,64,65,0,33,10,65,0,33,7,65,0,33,8,65,0,33,12,65,0,33,11,2,127,65,0,32,1,65,1,113,13,0,26,32,1,40,2,36,69,4,64,65,0,12,1,11,32,1,47,1,66,34,5,4,64,32,16,40,2,8,34,7,40,2,84,32,7,47,1,36,32,5,108,65,1,116,106,33,12,11,32,9,33,7,32,6,33,8,32,1,33,11,32,4,11,33,5,65,0,33,13,3,64,2,64,32,11,69,13,0,32,10,32,11,65,36,106,40,2,0,34,1,70,13,0,3,64,65,0,33,14,2,127,32,10,65,3,116,65,0,32,11,32,1,65,3,116,107,32,11,65,1,113,27,106,34,1,40,2,0,34,4,65,1,113,34,6,4,64,32,4,65,3,118,65,1,113,12,1,11,32,4,47,1,44,65,2,118,65,1,113,11,69,4,64,32,12,4,127,32,12,32,13,65,1,116,106,47,1,0,5,65,0,11,33,14,32,13,65,1,106,33,13,11,2,127,32,10,69,4,64,32,5,33,4,32,8,33,6,32,7,12,1,11,2,127,32,6,4,64,32,1,45,0,5,65,15,113,33,9,32,1,45,0,4,33,6,32,1,45,0,6,12,1,11,32,4,40,2,12,33,6,32,4,40,2,8,33,9,32,4,40,2,4,11,65,0,32,8,32,9,27,32,6,106,33,6,32,5,106,33,4,32,7,32,9,106,11,33,9,32,0,32,16,54,2,20,32,0,32,1,54,2,16,32,0,32,14,54,2,12,32,0,32,6,54,2,8,32,0,32,9,54,2,4,32,0,32,4,54,2,0,2,127,32,1,40,2,0,34,5,65,1,113,4,64,32,1,45,0,7,34,5,33,8,32,6,33,15,32,9,12,1,11,65,0,32,6,32,5,40,2,20,34,7,27,33,15,32,5,40,2,24,33,8,32,5,40,2,16,33,5,32,7,32,9,106,11,33,7,32,10,65,1,106,33,10,32,8,32,15,106,33,8,32,4,32,5,106,33,5,2,64,2,127,32,1,41,2,0,34,25,167,34,1,65,1,113,4,64,32,25,66,56,136,167,12,1,11,32,1,40,2,16,11,32,4,106,32,2,77,13,0,2,64,32,3,4,64,32,25,167,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,14,114,69,13,1,12,8,11,2,64,32,14,65,254,255,3,107,14,2,1,8,0,11,32,14,69,4,64,32,25,167,65,1,113,4,64,32,1,65,2,113,69,13,2,32,1,65,2,118,65,1,113,69,13,2,12,9,11,32,1,47,1,44,34,15,65,1,113,69,13,1,32,15,65,1,118,65,1,113,69,13,1,12,8,11,32,16,40,2,8,40,2,72,32,14,65,3,108,106,45,0,1,65,1,113,13,7,11,32,25,167,65,1,113,13,0,32,1,40,2,36,34,15,69,13,0,32,1,40,2,48,69,13,0,32,10,32,15,79,13,4,32,7,173,32,8,173,66,32,134,132,33,25,65,1,33,17,32,11,33,20,32,5,33,21,32,10,33,22,32,13,33,23,32,12,33,24,12,5,11,32,10,32,11,40,2,36,34,1,71,13,0,11,11,32,17,65,0,33,17,32,21,33,5,32,19,33,7,32,18,33,8,32,22,33,10,32,23,33,13,32,24,33,12,32,20,33,11,13,0,11,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,11,11,234,16,2,41,127,2,126,35,0,65,192,1,107,34,3,36,0,32,3,32,1,40,2,16,34,39,41,2,0,34,44,55,3,136,1,32,44,66,56,136,33,45,32,44,167,34,4,65,1,113,4,127,32,45,167,32,44,66,48,136,167,65,255,1,113,106,5,32,4,40,2,16,32,4,40,2,4,106,11,33,40,32,4,65,1,113,4,127,32,45,167,5,32,4,40,2,16,11,33,17,32,1,40,2,16,33,5,2,127,32,1,40,2,20,34,8,40,2,0,34,9,65,1,113,4,64,32,8,45,0,5,65,15,113,33,6,32,8,45,0,6,33,10,32,8,45,0,4,12,1,11,32,9,40,2,8,33,6,32,9,40,2,4,33,10,32,9,40,2,12,11,33,4,32,1,40,2,0,33,9,32,3,32,8,54,2,188,1,32,3,32,8,54,2,184,1,32,3,65,0,54,2,180,1,32,3,32,4,54,2,176,1,32,3,32,6,54,2,172,1,32,3,32,10,54,2,168,1,2,64,2,64,2,64,32,5,32,8,70,13,0,32,3,32,3,41,2,176,1,55,3,112,32,3,32,3,41,2,184,1,55,3,120,32,3,32,3,41,2,168,1,55,3,104,32,3,32,1,41,2,8,55,3,88,32,3,32,1,41,2,16,55,3,96,32,3,32,1,41,2,0,55,3,80,32,3,65,144,1,106,32,3,65,232,0,106,32,3,65,208,0,106,16,24,2,127,2,64,32,3,40,2,160,1,34,12,32,5,70,13,0,32,12,69,13,0,3,64,2,64,32,3,32,3,41,2,160,1,34,44,55,3,184,1,32,3,32,3,41,2,152,1,34,45,55,3,176,1,32,3,65,64,107,32,45,55,3,0,32,3,32,44,55,3,72,32,3,32,3,41,2,144,1,34,44,55,3,168,1,32,3,32,44,55,3,56,32,3,32,1,41,2,8,55,3,40,32,3,32,1,41,2,16,55,3,48,32,3,32,1,41,2,0,55,3,32,32,3,65,144,1,106,32,3,65,56,106,32,3,65,32,106,16,24,32,3,40,2,160,1,34,4,32,5,70,13,0,32,4,13,1,11,11,32,3,40,2,184,1,34,8,69,13,2,32,3,40,2,176,1,33,4,32,3,40,2,172,1,33,6,32,3,40,2,168,1,33,10,32,3,40,2,188,1,12,1,11,32,8,11,33,12,32,9,32,17,106,33,27,65,48,65,52,32,2,27,33,41,65,0,33,17,3,64,2,64,2,64,32,8,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,65,0,33,7,65,0,33,18,32,1,47,1,66,34,5,4,64,32,12,40,2,8,34,9,40,2,84,32,9,47,1,36,32,5,108,65,1,116,106,33,18,11,2,64,2,64,32,1,40,2,36,34,35,69,13,0,2,127,32,1,32,35,65,3,116,107,34,8,40,2,0,34,1,65,1,113,34,5,69,4,64,32,1,47,1,44,65,2,118,65,1,113,12,1,11,32,1,65,3,118,65,1,113,11,34,7,69,33,19,65,0,33,11,2,64,32,7,13,0,32,18,69,13,0,32,18,47,1,0,33,11,65,1,33,19,11,2,127,32,5,69,4,64,65,0,32,4,32,1,40,2,20,34,5,27,33,14,32,5,32,6,106,33,36,32,1,40,2,16,33,7,32,1,40,2,24,12,1,11,32,6,33,36,32,4,33,14,32,8,45,0,7,34,7,11,33,15,32,8,32,39,70,4,64,65,0,33,7,12,1,11,2,64,2,64,32,7,32,10,106,34,32,32,27,75,13,0,32,27,32,32,70,4,64,32,40,13,1,32,3,32,8,41,2,0,34,44,55,3,24,32,3,32,44,55,3,128,1,32,3,32,3,41,3,136,1,55,3,16,32,3,65,24,106,32,3,65,16,106,16,58,13,1,32,8,40,2,0,33,1,11,2,64,2,64,2,64,32,2,69,4,64,65,1,33,7,32,8,33,5,32,12,33,9,2,64,32,11,65,254,255,3,107,14,2,2,4,0,11,32,11,69,4,64,2,127,32,1,65,1,113,69,4,64,32,1,47,1,44,34,1,65,1,113,69,13,4,32,1,65,1,118,65,1,113,12,1,11,32,1,65,2,113,69,13,3,32,1,65,2,118,65,1,113,11,69,13,2,12,3,11,32,12,40,2,8,40,2,72,32,11,65,3,108,106,45,0,1,65,1,113,13,2,12,1,11,65,1,33,7,2,127,32,1,65,1,113,69,4,64,32,1,47,1,44,65,1,113,12,1,11,32,1,65,1,118,65,1,113,11,32,11,114,13,1,11,2,64,32,8,40,2,0,34,1,65,1,113,13,0,32,1,40,2,36,69,13,0,65,0,33,7,32,1,32,41,106,40,2,0,13,1,65,0,33,10,65,0,33,6,65,0,33,4,65,0,33,11,65,0,33,5,65,0,33,9,12,2,11,65,0,33,10,65,0,33,6,65,0,33,4,65,0,33,11,65,0,33,5,65,0,33,9,65,0,33,7,12,1,11,32,8,33,5,32,12,33,9,11,65,1,33,37,32,35,65,1,70,13,3,32,14,32,15,106,33,16,3,64,32,7,33,20,32,9,33,21,32,5,33,14,32,11,33,22,32,4,33,23,32,6,33,24,32,10,33,25,65,0,33,15,2,127,32,8,32,37,65,3,116,106,34,13,40,2,0,34,1,65,1,113,34,6,4,64,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,69,4,64,32,18,4,127,32,18,32,19,65,1,116,106,47,1,0,5,65,0,11,33,15,32,19,65,1,106,33,19,11,2,127,32,6,4,64,32,13,45,0,4,33,10,32,13,45,0,6,33,7,32,13,45,0,5,65,15,113,12,1,11,32,1,40,2,12,33,10,32,1,40,2,4,33,7,32,1,40,2,8,11,33,4,65,0,32,16,32,4,27,32,10,106,33,16,32,4,32,36,106,33,26,2,127,32,6,4,64,32,13,45,0,7,34,6,33,42,32,16,33,43,32,26,12,1,11,65,0,32,16,32,1,40,2,20,34,4,27,33,43,32,1,40,2,24,33,42,32,1,40,2,16,33,6,32,4,32,26,106,11,33,36,32,13,32,39,70,4,64,32,20,33,7,32,21,33,9,32,14,33,5,32,22,33,11,32,23,33,4,32,24,33,6,32,25,33,10,12,5,11,2,64,32,6,32,7,32,32,106,34,38,106,34,32,32,27,75,13,0,32,27,32,32,70,4,64,32,40,13,1,32,3,32,13,41,2,0,34,44,55,3,8,32,3,32,44,55,3,128,1,32,3,32,3,41,3,136,1,55,3,0,32,3,65,8,106,32,3,16,58,13,1,32,13,40,2,0,33,1,11,2,64,2,64,2,64,2,64,32,2,4,64,65,1,33,7,32,1,65,1,113,4,127,32,1,65,1,118,65,1,113,5,32,1,47,1,44,65,1,113,11,32,15,114,69,13,1,12,2,11,65,1,33,7,32,38,33,10,32,26,33,6,32,16,33,4,32,15,33,11,32,13,33,5,32,12,33,9,2,64,32,15,65,254,255,3,107,14,2,1,4,0,11,2,64,32,15,69,4,64,32,1,65,1,113,69,13,1,32,1,65,2,113,69,13,2,32,1,65,2,118,65,1,113,69,13,2,12,3,11,32,12,40,2,8,40,2,72,32,15,65,3,108,106,45,0,1,65,1,113,69,13,1,12,2,11,32,1,47,1,44,34,1,65,1,113,69,13,0,32,1,65,1,118,65,1,113,13,1,11,32,13,40,2,0,34,1,65,1,113,13,1,32,1,40,2,36,69,13,1,32,25,33,10,32,24,33,6,32,23,33,4,32,22,33,11,32,14,33,5,32,21,33,9,32,20,33,7,32,1,32,41,106,40,2,0,69,13,2,65,0,33,7,11,32,38,33,10,32,26,33,6,32,16,33,4,32,15,33,11,32,13,33,5,32,12,33,9,12,1,11,32,25,33,10,32,24,33,6,32,23,33,4,32,22,33,11,32,14,33,5,32,21,33,9,32,20,33,7,11,32,42,32,43,106,33,16,32,37,65,1,106,34,37,32,35,71,13,1,12,5,11,11,32,38,33,10,32,16,33,4,32,26,33,6,32,13,33,8,12,1,11,65,0,33,25,65,0,33,24,65,0,33,23,65,0,33,22,65,0,33,14,65,0,33,21,65,0,33,20,11,32,14,69,13,3,32,25,33,31,32,24,33,30,32,23,33,29,32,22,33,34,32,14,33,28,32,21,33,17,32,20,33,33,12,3,11,65,0,33,9,65,0,33,5,65,0,33,11,65,0,33,4,65,0,33,6,65,0,33,10,11,32,7,65,1,113,4,64,32,0,32,9,54,2,20,32,0,32,5,54,2,16,32,0,32,11,54,2,12,32,0,32,4,54,2,8,32,0,32,6,54,2,4,32,0,32,10,54,2,0,12,6,11,32,5,69,13,0,32,9,33,12,32,5,33,8,12,1,11,32,33,65,1,113,13,3,65,0,33,34,32,17,33,12,32,28,33,8,32,29,33,4,32,30,33,6,32,31,33,10,65,0,33,31,65,0,33,30,65,0,33,29,65,0,33,28,65,0,33,17,65,0,33,33,11,32,8,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,1,11,32,0,32,17,54,2,20,32,0,32,28,54,2,16,32,0,32,34,54,2,12,32,0,32,29,54,2,8,32,0,32,30,54,2,4,32,0,32,31,54,2,0,11,32,3,65,192,1,106,36,0,11,216,10,2,34,127,2,126,35,0,65,144,1,107,34,3,36,0,2,127,32,1,40,2,16,41,2,0,34,37,167,34,30,65,1,113,4,64,32,37,66,56,136,167,12,1,11,32,30,40,2,16,11,33,31,32,1,40,2,16,33,6,2,127,32,1,40,2,20,34,4,40,2,0,34,5,65,1,113,4,64,32,4,45,0,4,33,11,32,4,45,0,6,33,12,32,4,45,0,5,65,15,113,12,1,11,32,5,40,2,12,33,11,32,5,40,2,4,33,12,32,5,40,2,8,11,33,15,32,1,40,2,0,33,23,32,3,32,4,54,2,140,1,32,3,32,4,54,2,136,1,32,3,65,0,54,2,132,1,32,3,32,11,54,2,128,1,32,3,32,15,54,2,124,32,3,32,12,54,2,120,2,64,2,64,2,64,32,4,32,6,70,13,0,32,3,32,3,41,2,128,1,55,3,80,32,3,32,3,41,2,136,1,55,3,88,32,3,32,3,41,2,120,55,3,72,32,3,32,1,41,2,8,55,3,56,32,3,65,64,107,32,1,41,2,16,55,3,0,32,3,32,1,41,2,0,55,3,48,32,3,65,224,0,106,32,3,65,200,0,106,32,3,65,48,106,16,24,2,127,2,64,32,3,40,2,112,34,5,32,6,70,13,0,32,5,69,13,0,3,64,2,64,32,3,32,3,41,2,112,34,37,55,3,136,1,32,3,32,3,41,2,104,34,38,55,3,128,1,32,3,32,38,55,3,32,32,3,32,37,55,3,40,32,3,32,3,41,2,96,34,37,55,3,120,32,3,32,37,55,3,24,32,3,32,1,41,2,8,55,3,8,32,3,32,1,41,2,16,55,3,16,32,3,32,1,41,2,0,55,3,0,32,3,65,224,0,106,32,3,65,24,106,32,3,16,24,32,3,40,2,112,34,5,32,6,70,13,0,32,5,13,1,11,11,32,3,40,2,136,1,34,4,69,13,2,32,3,40,2,128,1,33,11,32,3,40,2,124,33,15,32,3,40,2,120,33,12,32,3,40,2,140,1,12,1,11,32,4,11,33,19,32,23,32,31,106,33,33,65,48,65,52,32,2,27,33,34,3,64,32,19,33,18,65,0,33,13,65,0,33,16,65,0,33,14,65,0,33,20,2,64,2,127,2,64,2,64,2,64,2,127,65,0,32,4,40,2,0,34,6,65,1,113,13,0,26,32,6,40,2,36,69,4,64,65,0,12,1,11,32,6,47,1,66,34,1,4,64,32,18,40,2,8,34,5,40,2,84,32,5,47,1,36,32,1,108,65,1,116,106,33,20,11,32,12,33,13,32,15,33,16,32,11,33,14,32,6,11,34,1,4,64,65,0,33,21,65,0,32,1,32,1,40,2,36,34,35,65,3,116,107,32,1,65,1,113,27,33,36,65,0,33,1,65,0,33,19,65,0,33,4,65,0,33,11,65,0,33,15,65,0,33,12,2,64,3,64,32,1,32,35,70,13,1,65,0,33,17,2,127,32,36,32,1,65,3,116,106,34,10,40,2,0,34,7,65,1,113,34,22,4,64,32,7,65,3,118,65,1,113,12,1,11,32,7,47,1,44,65,2,118,65,1,113,11,69,4,64,32,20,4,127,32,20,32,21,65,1,116,106,47,1,0,5,65,0,11,33,17,32,21,65,1,106,33,21,11,2,127,32,1,69,4,64,32,14,33,6,32,16,33,5,32,13,12,1,11,2,127,32,22,4,64,32,10,45,0,5,65,15,113,33,8,32,10,45,0,6,33,9,32,10,45,0,4,12,1,11,32,7,40,2,8,33,8,32,7,40,2,4,33,9,32,7,40,2,12,11,65,0,32,14,32,8,27,106,33,6,32,8,32,16,106,33,5,32,9,32,13,106,11,33,8,2,127,32,22,4,64,32,10,45,0,7,34,13,33,14,32,6,33,9,32,5,12,1,11,65,0,32,6,32,7,40,2,20,34,16,27,33,9,32,7,40,2,24,33,14,32,7,40,2,16,33,13,32,5,32,16,106,11,33,16,32,1,65,1,106,33,1,32,9,32,14,106,33,14,32,8,32,13,106,34,13,32,33,77,13,0,32,8,32,23,77,32,8,32,23,73,32,31,27,65,1,70,4,64,32,7,32,30,70,13,1,32,18,33,19,32,10,33,4,32,6,33,11,32,5,33,15,32,8,33,12,12,1,11,2,64,32,2,4,64,32,22,4,127,32,7,65,1,118,65,1,113,5,32,7,47,1,44,65,1,113,11,32,17,114,69,13,1,12,7,11,2,64,32,17,65,254,255,3,107,14,2,1,7,0,11,32,17,69,4,64,32,22,4,64,32,7,65,2,113,69,13,2,32,7,65,2,118,65,1,113,13,8,12,2,11,32,7,47,1,44,34,9,65,1,113,69,13,1,32,9,65,1,118,65,1,113,13,7,12,1,11,32,18,40,2,8,40,2,72,32,17,65,3,108,106,45,0,1,65,1,113,13,6,11,32,10,40,2,0,34,9,65,1,113,13,0,32,9,40,2,36,69,13,0,32,9,32,34,106,40,2,0,69,13,0,11,32,4,13,2,32,10,33,4,32,18,33,19,32,6,33,11,32,5,33,15,32,8,33,12,12,6,11,32,4,13,5,11,32,24,13,1,65,0,33,24,32,26,33,4,32,25,33,19,32,27,33,11,32,28,33,15,32,29,33,12,12,4,11,65,0,12,2,11,32,0,32,25,54,2,20,32,0,32,26,54,2,16,32,0,32,32,54,2,12,32,0,32,27,54,2,8,32,0,32,28,54,2,4,32,0,32,29,54,2,0,12,6,11,32,4,69,13,4,65,1,11,33,24,32,8,33,29,32,5,33,28,32,6,33,27,32,17,33,32,32,10,33,26,32,18,33,25,11,32,4,13,0,11,11,32,0,66,0,55,2,0,32,0,66,0,55,2,16,32,0,66,0,55,2,8,12,1,11,32,0,32,18,54,2,20,32,0,32,10,54,2,16,32,0,32,17,54,2,12,32,0,32,6,54,2,8,32,0,32,5,54,2,4,32,0,32,8,54,2,0,11,32,3,65,144,1,106,36,0,11,46,1,1,127,35,0,65,16,107,34,1,32,0,40,2,16,40,2,0,34,0,54,2,12,32,1,65,12,106,65,2,114,32,0,65,42,106,32,0,65,1,113,27,47,1,0,11,50,2,1,127,1,126,32,0,40,2,0,33,1,32,0,40,2,16,41,2,0,34,2,167,34,0,65,1,113,4,64,32,2,66,56,136,167,32,1,106,15,11,32,0,40,2,16,32,1,106,11,206,11,1,7,127,32,0,32,1,106,33,5,2,64,2,64,32,0,40,2,4,34,3,65,1,113,13,0,32,3,65,2,113,69,13,1,32,0,40,2,0,34,3,32,1,106,33,1,2,64,2,64,2,64,32,0,32,3,107,34,0,35,1,65,164,215,0,106,34,6,40,2,20,71,4,64,32,0,40,2,12,33,2,32,3,65,255,1,77,4,64,32,2,32,0,40,2,8,34,4,71,13,2,32,6,34,2,32,2,40,2,0,65,126,32,3,65,3,118,119,113,54,2,0,12,5,11,32,0,40,2,24,33,7,32,0,32,2,71,4,64,32,0,40,2,8,34,3,32,2,54,2,12,32,2,32,3,54,2,8,12,4,11,32,0,40,2,20,34,4,4,127,32,0,65,20,106,5,32,0,40,2,16,34,4,69,13,3,32,0,65,16,106,11,33,3,3,64,32,3,33,6,32,4,34,2,65,20,106,33,3,32,2,40,2,20,34,4,13,0,32,2,65,16,106,33,3,32,2,40,2,16,34,4,13,0,11,32,6,65,0,54,2,0,12,3,11,32,5,40,2,4,34,3,65,3,113,65,3,71,13,3,35,1,65,164,215,0,106,32,1,54,2,8,32,5,32,3,65,126,113,54,2,4,32,0,32,1,65,1,114,54,2,4,32,5,32,1,54,2,0,15,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,2,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,0,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,0,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,2,32,2,40,2,4,65,126,32,3,119,113,54,2,4,12,2,11,2,64,32,0,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,0,40,2,16,34,3,4,64,32,2,32,3,54,2,16,32,3,32,2,54,2,24,11,32,0,40,2,20,34,3,69,13,0,32,2,32,3,54,2,20,32,3,32,2,54,2,24,11,2,64,2,64,2,64,2,64,32,5,40,2,4,34,3,65,2,113,69,4,64,35,1,65,164,215,0,106,34,2,40,2,24,32,5,70,4,64,32,2,34,3,32,0,54,2,24,32,3,32,3,40,2,12,32,1,106,34,1,54,2,12,32,0,32,1,65,1,114,54,2,4,32,0,32,3,40,2,20,71,13,6,32,3,34,0,65,0,54,2,8,32,0,65,0,54,2,20,15,11,35,1,65,164,215,0,106,34,2,40,2,20,34,8,32,5,70,4,64,32,2,34,3,32,0,54,2,20,32,3,32,3,40,2,8,32,1,106,34,1,54,2,8,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,15,11,32,3,65,120,113,32,1,106,33,1,32,5,40,2,12,33,2,32,3,65,255,1,77,4,64,32,5,40,2,8,34,4,32,2,70,4,64,35,1,65,164,215,0,106,34,2,32,2,40,2,0,65,126,32,3,65,3,118,119,113,54,2,0,12,5,11,32,4,32,2,54,2,12,32,2,32,4,54,2,8,12,4,11,32,5,40,2,24,33,7,32,2,32,5,71,4,64,32,5,40,2,8,34,3,32,2,54,2,12,32,2,32,3,54,2,8,12,3,11,32,5,40,2,20,34,4,4,127,32,5,65,20,106,5,32,5,40,2,16,34,4,69,13,2,32,5,65,16,106,11,33,3,3,64,32,3,33,6,32,4,34,2,65,20,106,33,3,32,2,40,2,20,34,4,13,0,32,2,65,16,106,33,3,32,2,40,2,16,34,4,13,0,11,32,6,65,0,54,2,0,12,2,11,32,5,32,3,65,126,113,54,2,4,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,12,3,11,65,0,33,2,11,32,7,69,13,0,2,64,35,1,65,164,215,0,106,34,6,32,5,40,2,28,34,3,65,2,116,106,34,4,40,2,176,2,32,5,70,4,64,32,4,32,2,54,2,176,2,32,2,13,1,32,6,34,2,32,2,40,2,4,65,126,32,3,119,113,54,2,4,12,2,11,2,64,32,5,32,7,40,2,16,70,4,64,32,7,32,2,54,2,16,12,1,11,32,7,32,2,54,2,20,11,32,2,69,13,1,11,32,2,32,7,54,2,24,32,5,40,2,16,34,3,4,64,32,2,32,3,54,2,16,32,3,32,2,54,2,24,11,32,5,40,2,20,34,3,69,13,0,32,2,32,3,54,2,20,32,3,32,2,54,2,24,11,32,0,32,1,65,1,114,54,2,4,32,0,32,1,106,32,1,54,2,0,32,0,32,8,71,13,0,35,1,65,164,215,0,106,32,1,54,2,8,15,11,32,1,65,255,1,77,4,64,35,1,65,164,215,0,106,34,4,34,2,32,1,65,248,1,113,106,65,40,106,33,3,2,127,32,2,40,2,0,34,2,65,1,32,1,65,3,118,116,34,1,113,69,4,64,32,4,32,1,32,2,114,54,2,0,32,3,12,1,11,32,3,40,2,8,11,33,1,32,3,32,0,54,2,8,32,1,32,0,54,2,12,32,0,32,3,54,2,12,32,0,32,1,54,2,8,15,11,65,31,33,2,32,1,65,255,255,255,7,77,4,64,32,1,65,38,32,1,65,8,118,103,34,3,107,118,65,1,113,32,3,65,1,116,107,65,62,106,33,2,11,32,0,32,2,54,2,28,32,0,66,0,55,2,16,35,1,65,164,215,0,106,34,7,34,4,32,2,65,2,116,106,34,3,65,176,2,106,33,6,2,64,2,64,32,4,40,2,4,34,4,65,1,32,2,116,34,5,113,69,4,64,32,7,32,4,32,5,114,54,2,4,32,3,32,0,54,2,176,2,32,0,32,6,54,2,24,12,1,11,32,1,65,25,32,2,65,1,118,107,65,0,32,2,65,31,71,27,116,33,2,32,3,40,2,176,2,33,3,3,64,32,3,34,4,40,2,4,65,120,113,32,1,70,13,2,32,2,65,29,118,33,3,32,2,65,1,116,33,2,32,4,32,3,65,4,113,106,34,6,40,2,16,34,3,13,0,11,32,6,32,0,54,2,16,32,0,32,4,54,2,24,11,32,0,32,0,54,2,12,32,0,32,0,54,2,8,15,11,32,4,40,2,8,34,1,32,0,54,2,12,32,4,32,0,54,2,8,32,0,65,0,54,2,24,32,0,32,4,54,2,12,32,0,32,1,54,2,8,11,11,170,8,1,11,127,32,0,69,4,64,32,1,16,34,15,11,32,1,65,64,79,4,64,35,1,65,216,213,0,106,65,48,54,2,0,65,0,15,11,2,127,65,16,32,1,65,11,106,65,120,113,32,1,65,11,73,27,33,5,32,0,65,8,107,34,4,40,2,4,34,9,65,120,113,33,8,2,64,32,9,65,3,113,69,4,64,32,5,65,128,2,73,13,1,32,5,65,4,106,32,8,77,4,64,32,4,33,2,32,8,32,5,107,35,1,65,252,218,0,106,40,2,8,65,1,116,77,13,2,11,65,0,12,2,11,32,4,32,8,106,33,6,2,64,32,5,32,8,77,4,64,32,8,32,5,107,34,7,65,16,73,13,1,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,2,32,7,65,3,114,54,2,4,32,6,32,6,40,2,4,65,1,114,54,2,4,32,2,32,7,16,92,12,1,11,32,6,40,2,4,33,7,35,1,65,164,215,0,106,34,3,34,2,40,2,24,32,6,70,4,64,65,0,32,5,32,2,40,2,12,32,8,106,34,2,79,13,3,26,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,8,32,2,32,5,107,34,7,65,1,114,54,2,4,32,3,34,2,32,7,54,2,12,32,2,32,8,54,2,24,12,1,11,35,1,65,164,215,0,106,34,2,40,2,20,32,6,70,4,64,65,0,32,5,32,2,40,2,8,32,8,106,34,2,75,13,3,26,2,64,32,2,32,5,107,34,3,65,16,79,4,64,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,7,32,3,65,1,114,54,2,4,32,2,32,4,106,34,2,32,3,54,2,0,32,2,32,2,40,2,4,65,126,113,54,2,4,12,1,11,32,4,32,9,65,1,113,32,2,114,65,2,114,54,2,4,32,2,32,4,106,34,2,32,2,40,2,4,65,1,114,54,2,4,65,0,33,3,65,0,33,7,11,35,1,65,164,215,0,106,34,2,32,7,54,2,20,32,2,32,3,54,2,8,12,1,11,65,0,33,2,32,7,65,2,113,13,1,32,7,65,120,113,32,8,106,34,11,32,5,73,13,1,32,11,32,5,107,33,12,32,6,40,2,12,33,3,2,64,32,7,65,255,1,77,4,64,32,6,40,2,8,34,2,32,3,70,4,64,35,1,65,164,215,0,106,34,2,32,2,40,2,0,65,126,32,7,65,3,118,119,113,54,2,0,12,2,11,32,2,32,3,54,2,12,32,3,32,2,54,2,8,12,1,11,32,6,40,2,24,33,10,2,64,32,3,32,6,71,4,64,32,6,40,2,8,34,2,32,3,54,2,12,32,3,32,2,54,2,8,12,1,11,2,64,32,6,40,2,20,34,2,4,127,32,6,65,20,106,5,32,6,40,2,16,34,2,69,13,1,32,6,65,16,106,11,33,8,3,64,32,8,33,7,32,2,34,3,65,20,106,33,8,32,2,40,2,20,34,2,13,0,32,3,65,16,106,33,8,32,3,40,2,16,34,2,13,0,11,32,7,65,0,54,2,0,12,1,11,65,0,33,3,11,32,10,69,13,0,2,64,35,1,65,164,215,0,106,34,8,32,6,40,2,28,34,7,65,2,116,106,34,2,40,2,176,2,32,6,70,4,64,32,2,32,3,54,2,176,2,32,3,13,1,32,8,32,8,40,2,4,65,126,32,7,119,113,54,2,4,12,2,11,2,64,32,6,32,10,40,2,16,70,4,64,32,10,32,3,54,2,16,12,1,11,32,10,32,3,54,2,20,11,32,3,69,13,1,11,32,3,32,10,54,2,24,32,6,40,2,16,34,2,4,64,32,3,32,2,54,2,16,32,2,32,3,54,2,24,11,32,6,40,2,20,34,2,69,13,0,32,3,32,2,54,2,20,32,2,32,3,54,2,24,11,32,12,65,15,77,4,64,32,4,32,9,65,1,113,32,11,114,65,2,114,54,2,4,32,4,32,11,106,34,2,32,2,40,2,4,65,1,114,54,2,4,12,1,11,32,4,32,5,32,9,65,1,113,114,65,2,114,54,2,4,32,4,32,5,106,34,7,32,12,65,3,114,54,2,4,32,4,32,11,106,34,2,32,2,40,2,4,65,1,114,54,2,4,32,7,32,12,16,92,11,32,4,33,2,11,32,2,11,34,2,4,64,32,2,65,8,106,15,11,32,1,16,34,34,4,69,4,64,65,0,15,11,32,4,32,0,65,124,65,120,32,0,65,4,107,40,2,0,34,2,65,3,113,27,32,2,65,120,113,106,34,2,32,1,32,1,32,2,75,27,16,36,26,32,0,16,50,32,4,11,159,2,0,32,0,69,4,64,65,0,15,11,2,127,2,64,32,0,4,127,32,1,65,255,0,77,13,1,2,64,35,1,65,148,214,0,106,40,2,96,40,2,0,69,4,64,32,1,65,128,127,113,65,128,191,3,70,13,3,12,1,11,32,1,65,255,15,77,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,1,32,0,32,1,65,6,118,65,192,1,114,58,0,0,65,2,12,4,11,32,1,65,128,64,113,65,128,192,3,71,32,1,65,128,176,3,79,113,69,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,2,32,0,32,1,65,12,118,65,224,1,114,58,0,0,32,0,32,1,65,6,118,65,63,113,65,128,1,114,58,0,1,65,3,12,4,11,32,1,65,128,128,4,107,65,255,255,63,77,4,64,32,0,32,1,65,63,113,65,128,1,114,58,0,3,32,0,32,1,65,18,118,65,240,1,114,58,0,0,32,0,32,1,65,6,118,65,63,113,65,128,1,114,58,0,2,32,0,32,1,65,12,118,65,63,113,65,128,1,114,58,0,1,65,4,12,4,11,11,35,1,65,216,213,0,106,65,25,54,2,0,65,127,5,65,1,11,12,1,11,32,0,32,1,58,0,0,65,1,11,11,196,3,1,4,127,35,0,65,160,1,107,34,4,36,0,32,4,32,0,32,4,65,158,1,106,32,1,27,34,6,54,2,148,1,32,4,32,1,65,1,107,34,0,65,0,32,0,32,1,77,27,54,2,152,1,32,4,65,0,65,144,1,252,11,0,32,4,65,127,54,2,76,32,4,35,2,65,29,106,54,2,36,32,4,65,127,54,2,80,32,4,32,4,65,159,1,106,54,2,44,32,4,32,4,65,148,1,106,54,2,84,32,6,65,0,58,0,0,35,0,65,208,1,107,34,5,36,0,32,5,32,3,54,2,204,1,32,5,65,160,1,106,34,0,65,0,65,40,252,11,0,32,5,32,5,40,2,204,1,54,2,200,1,2,64,65,0,32,2,32,5,65,200,1,106,32,5,65,208,0,106,32,0,35,2,34,0,65,27,106,34,6,32,0,65,28,106,34,0,16,98,65,0,72,4,64,65,127,33,0,12,1,11,32,4,40,2,76,65,0,72,32,4,32,4,40,2,0,34,1,65,95,113,54,2,0,2,127,2,64,2,64,32,4,40,2,48,69,4,64,32,4,65,208,0,54,2,48,32,4,65,0,54,2,28,32,4,66,0,55,3,16,32,4,40,2,44,33,7,32,4,32,5,54,2,44,12,1,11,32,4,40,2,16,13,1,11,65,127,32,4,16,66,13,1,26,11,32,4,32,2,32,5,65,200,1,106,32,5,65,208,0,106,32,5,65,160,1,106,32,6,32,0,16,98,11,33,2,32,7,4,64,32,4,65,0,65,0,32,4,40,2,36,17,4,0,26,32,4,65,0,54,2,48,32,4,32,7,54,2,44,32,4,65,0,54,2,28,32,4,40,2,20,33,0,32,4,66,0,55,3,16,32,2,65,127,32,0,27,33,2,11,32,4,32,4,40,2,0,34,0,32,1,65,32,113,114,54,2,0,65,127,32,2,32,0,65,32,113,27,33,0,13,0,11,32,5,65,208,1,106,36,0,32,4,65,160,1,106,36,0,32,0,11,188,2,0,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,1,65,9,107,14,18,0,8,9,10,8,9,1,2,3,4,10,9,10,10,8,9,5,6,7,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,40,2,0,54,2,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,50,1,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,51,1,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,48,0,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,49,0,0,55,3,0,15,11,32,2,32,2,40,2,0,65,7,106,65,120,113,34,1,65,8,106,54,2,0,32,0,32,1,43,3,0,57,3,0,15,11,32,0,32,2,32,3,17,5,0,11,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,52,2,0,55,3,0,15,11,32,2,32,2,40,2,0,34,1,65,4,106,54,2,0,32,0,32,1,53,2,0,55,3,0,15,11,32,2,32,2,40,2,0,65,7,106,65,120,113,34,1,65,8,106,54,2,0,32,0,32,1,41,3,0,55,3,0,11,111,1,5,127,32,0,40,2,0,34,3,44,0,0,65,48,107,34,1,65,9,75,4,64,65,0,15,11,3,64,65,127,33,4,32,2,65,204,153,179,230,0,77,4,64,65,127,32,1,32,2,65,10,108,34,5,106,32,1,32,5,65,255,255,255,255,7,115,75,27,33,4,11,32,0,32,3,65,1,106,34,5,54,2,0,32,3,44,0,1,32,4,33,2,32,5,33,3,65,48,107,34,1,65,10,73,13,0,11,32,2,11,156,19,2,19,127,2,126,35,0,65,64,106,34,8,36,0,32,8,32,1,54,2,60,32,8,65,41,106,33,23,32,8,65,39,106,33,24,32,8,65,40,106,33,18,2,64,2,64,2,64,2,64,3,64,65,0,33,7,3,64,32,1,33,13,32,7,32,14,65,255,255,255,255,7,115,74,13,2,32,7,32,14,106,33,14,2,64,2,64,2,64,2,64,2,64,32,1,34,7,45,0,0,34,11,4,64,3,64,2,64,2,64,32,11,65,255,1,113,34,1,69,4,64,32,7,33,1,12,1,11,32,1,65,37,71,13,1,32,7,33,11,3,64,32,11,45,0,1,65,37,71,4,64,32,11,33,1,12,2,11,32,7,65,1,106,33,7,32,11,45,0,2,32,11,65,2,106,34,1,33,11,65,37,70,13,0,11,11,32,7,32,13,107,34,7,32,14,65,255,255,255,255,7,115,34,25,74,13,10,32,0,4,64,32,0,32,13,32,7,16,14,11,32,7,13,8,32,8,32,1,54,2,60,32,1,65,1,106,33,7,65,127,33,16,2,64,32,1,44,0,1,65,48,107,34,9,65,9,75,13,0,32,1,45,0,2,65,36,71,13,0,32,1,65,3,106,33,7,65,1,33,19,32,9,33,16,11,32,8,32,7,54,2,60,65,0,33,12,2,64,32,7,44,0,0,34,11,65,32,107,34,1,65,31,75,4,64,32,7,33,9,12,1,11,32,7,33,9,65,1,32,1,116,34,1,65,137,209,4,113,69,13,0,3,64,32,8,32,7,65,1,106,34,9,54,2,60,32,1,32,12,114,33,12,32,7,44,0,1,34,11,65,32,107,34,1,65,32,79,13,1,32,9,33,7,65,1,32,1,116,34,1,65,137,209,4,113,13,0,11,11,2,64,32,11,65,42,70,4,64,2,127,2,64,32,9,44,0,1,65,48,107,34,1,65,9,75,13,0,32,9,45,0,2,65,36,71,13,0,2,127,32,0,69,4,64,32,4,32,1,65,2,116,106,65,10,54,2,0,65,0,12,1,11,32,3,32,1,65,3,116,106,40,2,0,11,33,15,32,9,65,3,106,33,1,65,1,12,1,11,32,19,13,6,32,9,65,1,106,33,1,32,0,69,4,64,32,8,32,1,54,2,60,65,0,33,19,65,0,33,15,12,3,11,32,2,32,2,40,2,0,34,7,65,4,106,54,2,0,32,7,40,2,0,33,15,65,0,11,33,19,32,8,32,1,54,2,60,32,15,65,0,78,13,1,65,0,32,15,107,33,15,32,12,65,128,192,0,114,33,12,12,1,11,32,8,65,60,106,16,97,34,15,65,0,72,13,11,32,8,40,2,60,33,1,11,65,0,33,7,65,127,33,10,2,127,65,0,32,1,45,0,0,65,46,71,13,0,26,32,1,45,0,1,65,42,70,4,64,2,127,2,64,32,1,44,0,2,65,48,107,34,9,65,9,75,13,0,32,1,45,0,3,65,36,71,13,0,32,1,65,4,106,33,1,2,127,32,0,69,4,64,32,4,32,9,65,2,116,106,65,10,54,2,0,65,0,12,1,11,32,3,32,9,65,3,116,106,40,2,0,11,12,1,11,32,19,13,6,32,1,65,2,106,33,1,65,0,32,0,69,13,0,26,32,2,32,2,40,2,0,34,9,65,4,106,54,2,0,32,9,40,2,0,11,33,10,32,8,32,1,54,2,60,32,10,65,0,78,12,1,11,32,8,32,1,65,1,106,54,2,60,32,8,65,60,106,16,97,33,10,32,8,40,2,60,33,1,65,1,11,33,20,3,64,32,7,33,21,65,28,33,9,32,1,34,22,44,0,0,34,7,65,251,0,107,65,70,73,13,12,32,1,65,1,106,33,1,35,1,32,21,65,58,108,106,32,7,106,65,207,43,106,45,0,0,34,7,65,1,107,65,255,1,113,65,8,73,13,0,11,32,8,32,1,54,2,60,2,64,32,7,65,27,71,4,64,32,7,69,13,13,32,16,65,0,78,4,64,32,0,69,4,64,32,4,32,16,65,2,116,106,32,7,54,2,0,12,13,11,32,8,32,3,32,16,65,3,116,106,41,3,0,55,3,48,12,2,11,32,0,69,13,9,32,8,65,48,106,32,7,32,2,32,6,16,96,12,1,11,32,16,65,0,78,13,12,65,0,33,7,32,0,69,13,9,11,32,0,45,0,0,65,32,113,13,12,32,12,65,255,255,123,113,34,11,32,12,32,12,65,128,192,0,113,27,33,12,35,1,33,17,65,0,33,16,32,18,33,9,2,64,2,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,22,45,0,0,34,22,192,34,7,65,83,113,32,7,32,22,65,15,113,65,3,70,27,32,7,32,21,27,34,7,65,216,0,107,14,33,4,23,23,23,23,23,23,23,23,16,23,9,6,16,16,16,23,6,23,23,23,23,2,5,3,23,23,10,23,1,23,23,4,0,11,2,64,32,7,65,193,0,107,14,7,16,23,11,23,16,16,16,0,11,32,7,65,211,0,70,13,11,12,22,11,32,8,41,3,48,33,26,35,1,12,5,11,65,0,33,7,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,21,14,8,0,1,2,3,4,29,5,6,29,11,32,8,40,2,48,32,14,54,2,0,12,28,11,32,8,40,2,48,32,14,54,2,0,12,27,11,32,8,40,2,48,32,14,172,55,3,0,12,26,11,32,8,40,2,48,32,14,59,1,0,12,25,11,32,8,40,2,48,32,14,58,0,0,12,24,11,32,8,40,2,48,32,14,54,2,0,12,23,11,32,8,40,2,48,32,14,172,55,3,0,12,22,11,65,8,32,10,32,10,65,8,77,27,33,10,32,12,65,8,114,33,12,65,248,0,33,7,11,35,1,33,17,32,18,33,1,32,7,65,32,113,33,13,32,8,41,3,48,34,26,34,27,66,0,82,4,64,3,64,32,1,65,1,107,34,1,35,1,65,224,47,106,32,27,167,65,15,113,106,45,0,0,32,13,114,58,0,0,32,27,66,15,86,32,27,66,4,136,33,27,13,0,11,11,32,1,33,13,32,26,80,13,3,32,12,65,8,113,69,13,3,35,1,32,7,65,4,118,106,33,17,65,2,33,16,12,3,11,32,18,33,1,32,8,41,3,48,34,26,34,27,66,0,82,4,64,3,64,32,1,65,1,107,34,1,32,27,167,65,7,113,65,48,114,58,0,0,32,27,66,7,86,32,27,66,3,136,33,27,13,0,11,11,32,1,33,13,32,12,65,8,113,69,4,64,35,1,33,17,12,3,11,32,10,32,23,32,13,107,34,1,32,1,32,10,72,27,33,10,35,1,33,17,12,2,11,32,8,41,3,48,34,26,66,0,83,4,64,32,8,66,0,32,26,125,34,26,55,3,48,65,1,33,16,35,1,12,1,11,32,12,65,128,16,113,4,64,65,1,33,16,35,1,65,1,106,12,1,11,35,1,34,1,65,2,106,32,1,32,12,65,1,113,34,16,27,11,33,17,32,26,32,18,16,35,33,13,11,32,20,32,10,65,0,72,113,13,18,32,12,65,255,255,123,113,32,12,32,20,27,33,12,2,64,32,26,66,0,82,13,0,32,10,13,0,32,18,33,13,65,0,33,10,12,15,11,32,10,32,26,80,32,18,32,13,107,106,34,1,32,1,32,10,72,27,33,10,12,14,11,32,8,45,0,48,33,7,12,12,11,32,8,40,2,48,34,1,35,1,34,17,65,246,10,106,32,1,27,34,13,34,1,65,0,65,255,255,255,255,7,32,10,32,10,65,255,255,255,255,7,79,27,34,7,16,100,34,9,32,1,107,32,7,32,9,27,34,1,32,13,106,33,9,32,10,65,0,78,13,10,32,9,45,0,0,13,16,35,1,33,17,12,10,11,32,8,41,3,48,34,26,66,0,82,13,1,65,0,33,7,12,10,11,32,10,4,64,32,8,40,2,48,12,2,11,65,0,33,7,32,0,65,32,32,15,65,0,32,12,16,15,12,2,11,32,8,65,0,54,2,12,32,8,32,26,62,2,8,32,8,32,8,65,8,106,34,7,54,2,48,65,127,33,10,32,7,11,33,11,65,0,33,7,3,64,2,64,32,11,40,2,0,34,9,69,13,0,32,8,65,4,106,32,9,16,94,34,9,65,0,72,13,16,32,9,32,10,32,7,107,75,13,0,32,11,65,4,106,33,11,32,7,32,9,106,34,7,32,10,73,13,1,11,11,65,61,33,9,32,7,65,0,72,13,13,32,0,65,32,32,15,32,7,32,12,16,15,32,7,69,4,64,65,0,33,7,12,1,11,65,0,33,9,32,8,40,2,48,33,11,3,64,32,11,40,2,0,34,13,69,13,1,32,8,65,4,106,34,10,32,13,16,94,34,13,32,9,106,34,9,32,7,75,13,1,32,0,32,10,32,13,16,14,32,11,65,4,106,33,11,32,7,32,9,75,13,0,11,11,32,0,65,32,32,15,32,7,32,12,65,128,192,0,115,16,15,32,15,32,7,32,7,32,15,72,27,33,7,12,9,11,32,20,32,10,65,0,72,113,13,10,65,61,33,9,32,0,32,8,43,3,48,32,15,32,10,32,12,32,7,32,5,17,14,0,34,7,65,0,78,13,8,12,11,11,32,7,45,0,1,33,11,32,7,65,1,106,33,7,12,0,11,0,11,32,0,13,10,32,19,69,13,4,65,1,33,7,3,64,32,4,32,7,65,2,116,106,40,2,0,34,0,4,64,32,3,32,7,65,3,116,106,32,0,32,2,32,6,16,96,65,1,33,14,32,7,65,1,106,34,7,65,10,71,13,1,12,12,11,11,32,7,65,10,79,4,64,65,1,33,14,12,11,11,3,64,32,4,32,7,65,2,116,106,40,2,0,13,1,65,1,33,14,32,7,65,1,106,34,7,65,10,71,13,0,11,12,10,11,65,28,33,9,12,7,11,32,11,33,12,32,1,33,10,12,1,11,32,8,32,7,58,0,39,35,1,33,17,65,1,33,10,32,24,33,13,32,11,33,12,11,32,10,32,9,32,13,107,34,11,32,10,32,11,74,27,34,10,32,16,65,255,255,255,255,7,115,74,13,3,65,61,33,9,32,15,32,10,32,16,106,34,1,32,1,32,15,72,27,34,7,32,25,75,13,4,32,0,65,32,32,7,32,1,32,12,16,15,32,0,32,17,32,16,16,14,32,0,65,48,32,7,32,1,32,12,65,128,128,4,115,16,15,32,0,65,48,32,10,32,11,65,0,16,15,32,0,32,13,32,11,16,14,32,0,65,32,32,7,32,1,32,12,65,128,192,0,115,16,15,32,8,40,2,60,33,1,12,1,11,11,11,65,0,33,14,12,3,11,65,61,33,9,11,35,1,65,216,213,0,106,32,9,54,2,0,11,65,127,33,14,11,32,8,65,64,107,36,0,32,14,11,126,2,1,127,1,126,32,0,189,34,3,66,52,136,167,65,255,15,113,34,2,65,255,15,71,4,124,32,2,69,4,64,32,1,32,0,68,0,0,0,0,0,0,0,0,97,4,127,65,0,5,32,0,68,0,0,0,0,0,0,240,67,162,32,1,16,99,33,0,32,1,40,2,0,65,64,106,11,54,2,0,32,0,15,11,32,1,32,2,65,254,7,107,54,2,0,32,3,66,255,255,255,255,255,255,255,135,128,127,131,66,128,128,128,128,128,128,128,240,63,132,191,5,32,0,11,11,229,1,1,2,127,32,2,65,0,71,33,3,2,64,2,64,2,64,32,0,65,3,113,69,13,0,32,2,69,13,0,32,1,65,255,1,113,33,4,3,64,32,0,45,0,0,32,4,70,13,2,32,2,65,1,107,34,2,65,0,71,33,3,32,0,65,1,106,34,0,65,3,113,69,13,1,32,2,13,0,11,11,32,3,69,13,1,2,64,32,1,65,255,1,113,34,3,32,0,45,0,0,70,13,0,32,2,65,4,73,13,0,32,3,65,129,130,132,8,108,33,3,3,64,65,128,130,132,8,32,0,40,2,0,32,3,115,34,4,107,32,4,114,65,128,129,130,132,120,113,65,128,129,130,132,120,71,13,2,32,0,65,4,106,33,0,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,32,1,65,255,1,113,33,1,3,64,32,1,32,0,45,0,0,70,4,64,32,0,15,11,32,0,65,1,106,33,0,32,2,65,1,107,34,2,13,0,11,11,65,0,11,125,1,3,127,2,64,2,64,32,0,34,1,65,3,113,69,13,0,32,1,45,0,0,69,4,64,65,0,15,11,3,64,32,1,65,1,106,34,1,65,3,113,69,13,1,32,1,45,0,0,13,0,11,12,1,11,3,64,32,1,34,2,65,4,106,33,1,65,128,130,132,8,32,2,40,2,0,34,3,107,32,3,114,65,128,129,130,132,120,113,65,128,129,130,132,120,70,13,0,11,3,64,32,2,34,1,65,1,106,33,2,32,1,45,0,0,13,0,11,11,32,1,32,0,107,11,104,1,3,127,32,0,69,4,64,65,0,15,11,2,127,35,1,65,176,43,106,33,1,32,0,4,64,3,64,32,1,34,2,40,2,0,34,3,4,64,32,1,65,4,106,33,1,32,0,32,3,71,13,1,11,11,32,2,65,0,32,3,27,12,1,11,32,1,33,2,3,64,32,2,34,0,65,4,106,33,2,32,0,40,2,0,13,0,11,32,1,32,0,32,1,107,65,124,113,106,11,65,0,71,11,66,1,1,127,32,0,65,255,255,7,77,4,64,35,1,65,240,12,106,34,1,32,1,32,0,65,8,118,106,45,0,0,65,5,116,106,32,0,65,3,118,65,31,113,106,45,0,0,32,0,65,7,113,118,65,1,113,15,11,32,0,65,254,255,11,73,11,194,1,1,3,127,2,64,32,2,40,2,16,34,3,4,127,32,3,5,32,2,16,66,13,1,32,2,40,2,16,11,32,2,40,2,20,34,4,107,32,1,73,4,64,32,2,32,0,32,1,32,2,40,2,36,17,4,0,15,11,2,64,2,64,32,2,40,2,80,65,0,72,13,0,32,1,69,13,0,32,1,33,3,3,64,32,0,32,3,106,34,5,65,1,107,45,0,0,65,10,71,4,64,32,3,65,1,107,34,3,13,1,12,2,11,11,32,2,32,0,32,3,32,2,40,2,36,17,4,0,34,4,32,3,73,13,2,32,1,32,3,107,33,1,32,2,40,2,20,33,4,12,1,11,32,0,33,5,65,0,33,3,11,32,4,32,5,32,1,16,36,26,32,2,32,2,40,2,20,32,1,106,54,2,20,32,1,32,3,106,33,4,11,32,4,11,128,1,1,2,127,35,0,65,16,107,34,2,36,0,32,2,32,1,58,0,15,2,64,2,64,32,0,40,2,16,34,3,4,127,32,3,5,32,0,16,66,13,2,32,0,40,2,16,11,32,0,40,2,20,34,3,70,13,0,32,0,40,2,80,32,1,65,255,1,113,70,13,0,32,0,32,3,65,1,106,54,2,20,32,3,32,1,58,0,0,12,1,11,32,0,32,2,65,15,106,65,1,32,0,40,2,36,17,4,0,65,1,71,13,0,32,2,45,0,15,26,11,32,2,65,16,106,36,0,11,110,1,4,127,2,64,32,0,47,1,32,34,5,69,13,0,32,0,40,2,60,33,6,65,1,33,0,65,1,33,3,3,64,2,64,2,64,32,1,32,6,32,0,65,2,116,106,40,2,0,34,0,32,2,16,27,65,1,106,14,2,3,0,1,11,32,0,32,2,106,45,0,0,13,0,32,3,33,4,12,2,11,32,3,65,1,106,34,3,65,255,255,3,113,34,0,32,5,77,13,0,11,11,32,4,65,255,255,3,113,11,178,4,1,14,127,2,64,32,0,40,2,180,9,34,3,69,13,0,2,127,32,3,65,26,116,65,31,117,65,226,4,113,32,3,65,1,113,13,0,26,65,226,4,32,3,45,0,45,65,2,113,13,0,26,32,3,40,2,32,11,32,2,75,13,0,65,1,15,11,32,0,40,2,132,9,34,0,40,2,0,34,13,32,1,65,5,116,106,34,7,40,2,0,34,8,40,2,4,33,12,32,8,40,2,156,1,34,4,32,7,40,2,8,73,4,64,32,7,32,4,54,2,8,11,2,64,32,0,40,2,4,34,14,4,64,32,8,40,2,160,1,33,15,65,0,33,0,3,64,2,64,32,0,32,1,70,13,0,32,13,32,0,65,5,116,106,34,9,40,2,28,13,0,32,9,40,2,0,34,6,40,2,4,34,16,32,12,73,13,0,32,6,40,2,152,1,34,11,33,5,32,6,47,1,0,34,10,69,4,64,32,11,32,11,65,244,3,106,32,6,40,2,20,27,33,5,11,32,6,40,2,156,1,34,4,32,9,40,2,8,34,3,73,4,64,32,9,32,4,54,2,8,32,4,33,3,11,32,10,69,13,0,32,2,32,5,73,13,0,2,64,32,2,32,5,75,4,64,65,1,33,10,32,4,32,3,107,65,1,106,32,2,32,5,107,108,65,136,14,77,13,1,12,5,11,32,6,40,2,160,1,32,15,76,13,1,11,32,7,40,2,28,13,0,32,6,47,1,0,32,8,47,1,0,71,13,0,32,12,32,16,71,13,0,32,11,32,8,40,2,152,1,71,13,0,35,1,65,148,12,106,33,5,32,7,40,2,12,33,3,2,64,32,9,40,2,12,34,4,69,13,0,32,4,65,1,113,13,0,32,4,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,4,65,48,106,32,4,40,2,36,27,33,5,11,35,1,65,148,12,106,33,4,2,64,32,3,69,13,0,32,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,35,1,65,148,12,106,32,3,65,48,106,32,3,40,2,36,27,33,4,11,32,5,40,2,24,33,6,2,64,32,4,40,2,24,34,3,65,25,79,4,64,32,3,32,6,71,13,2,32,5,40,2,0,33,5,32,4,40,2,0,33,4,12,1,11,32,3,32,6,71,13,1,11,32,5,32,4,32,3,16,18,13,0,65,1,15,11,32,0,65,1,106,34,0,32,14,71,13,0,11,11,65,0,33,10,11,32,10,11,197,31,2,12,127,3,126,35,0,65,128,1,107,34,7,36,0,2,64,32,1,40,2,0,34,6,69,4,64,65,1,33,9,12,1,11,32,2,40,2,0,34,5,69,13,0,2,127,32,5,65,26,116,65,31,117,65,226,4,113,32,5,65,1,113,13,0,26,65,226,4,32,5,45,0,45,65,2,113,13,0,26,32,5,40,2,32,11,33,4,32,6,65,8,118,33,10,32,5,65,8,118,33,11,2,64,2,64,2,64,32,6,65,1,113,69,4,64,32,6,45,0,45,65,2,113,69,4,64,32,4,32,6,40,2,32,34,3,73,13,2,12,4,11,65,226,4,33,3,32,4,65,226,4,73,13,1,12,3,11,32,6,65,32,113,34,3,69,13,1,32,4,65,225,4,75,13,1,11,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,9,12,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,2,40,2,8,32,2,40,2,4,106,32,1,77,13,0,32,2,40,2,56,32,1,65,2,116,106,40,2,0,33,4,11,32,0,65,132,1,106,33,1,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,4,32,7,32,4,54,2,0,32,1,65,128,8,35,1,65,143,4,106,32,7,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,9,12,3,11,65,1,33,9,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,226,4,65,0,32,3,27,33,3,11,2,64,2,64,2,64,32,5,65,1,113,69,4,64,32,5,45,0,45,65,2,113,4,127,65,226,4,5,32,5,40,2,32,11,32,3,75,13,1,32,5,40,2,36,13,2,12,3,11,32,5,65,32,113,69,13,2,32,3,65,225,4,75,13,2,11,32,0,40,2,96,69,4,64,32,0,40,2,140,10,69,13,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,1,77,13,0,32,2,40,2,56,32,1,65,2,116,106,40,2,0,33,3,11,32,0,65,132,1,106,33,1,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,4,11,32,7,32,4,54,2,20,32,7,32,3,54,2,16,32,1,65,128,8,35,1,65,143,4,106,32,7,65,16,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,13,2,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,5,40,2,60,33,8,11,2,64,2,64,2,64,2,64,32,6,65,1,113,69,4,64,32,6,40,2,36,13,1,65,0,33,3,32,8,65,0,74,13,2,12,4,11,32,8,65,0,74,13,1,65,0,33,3,12,3,11,32,8,32,6,40,2,60,76,13,1,11,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,1,33,9,12,3,11,32,0,40,2,160,9,33,1,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,2,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,1,40,2,8,32,1,40,2,4,106,32,2,77,13,0,32,1,40,2,56,32,2,65,2,116,106,40,2,0,33,9,11,65,0,33,2,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,2,11,35,1,65,171,10,106,33,4,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,4,12,1,11,65,0,33,4,32,1,40,2,8,32,1,40,2,4,106,32,3,77,13,0,32,1,40,2,56,32,3,65,2,116,106,40,2,0,33,4,11,32,0,65,132,1,106,33,1,65,0,33,8,2,64,32,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,6,40,2,60,33,8,11,32,7,32,8,54,2,44,32,7,32,4,54,2,40,32,7,32,2,54,2,36,32,7,32,9,54,2,32,32,1,65,128,8,35,1,65,164,9,106,32,7,65,32,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,32,0,40,2,140,10,69,4,64,65,1,33,9,12,3,11,65,1,33,9,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,5,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,6,40,2,60,33,3,11,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,9,11,32,3,32,9,74,4,64,2,64,32,0,40,2,96,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,2,11,32,0,40,2,160,9,33,1,35,1,65,171,10,106,33,9,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,2,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,9,12,1,11,65,0,33,9,32,1,40,2,8,32,1,40,2,4,106,32,2,77,13,0,32,1,40,2,56,32,2,65,2,116,106,40,2,0,33,9,11,65,0,33,2,2,64,32,6,65,1,113,13,0,32,6,40,2,36,69,13,0,32,6,40,2,60,33,2,11,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,6,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,1,40,2,8,32,1,40,2,4,106,32,6,77,13,0,32,1,40,2,56,32,6,65,2,116,106,40,2,0,33,3,11,32,0,65,132,1,106,33,1,65,0,33,8,2,64,32,5,65,1,113,13,0,32,5,40,2,36,69,13,0,32,5,40,2,60,33,8,11,32,7,32,8,54,2,60,32,7,32,3,54,2,56,32,7,32,2,54,2,52,32,7,32,9,54,2,48,32,1,65,128,8,35,1,65,164,9,106,32,7,65,48,106,16,11,26,32,0,40,2,96,34,2,4,64,32,0,40,2,92,65,0,32,1,32,2,17,3,0,11,65,0,33,9,32,0,40,2,140,10,69,13,1,3,64,2,64,2,64,32,1,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,13,1,12,4,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,3,11,32,3,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,9,2,64,32,6,65,1,113,4,64,32,6,65,32,113,69,13,1,12,2,11,32,6,45,0,45,65,2,113,13,1,32,6,40,2,32,13,1,11,32,7,32,1,41,2,0,55,3,120,32,7,32,2,41,2,0,55,3,112,2,127,32,0,65,136,9,106,34,1,40,2,12,33,2,32,1,32,1,40,2,16,34,3,65,1,106,34,4,32,1,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,20,32,1,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,1,32,2,54,2,12,32,2,32,3,65,3,116,106,32,7,41,2,120,55,2,0,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,3,65,1,106,34,4,32,1,40,2,20,34,8,75,4,127,65,8,32,8,65,1,116,34,3,32,4,32,3,32,4,75,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,20,32,1,40,2,16,34,3,65,1,106,5,32,4,11,54,2,16,32,1,32,2,54,2,12,32,2,32,3,65,3,116,106,32,7,41,2,112,55,2,0,65,0,32,1,40,2,16,34,2,69,13,0,26,3,64,32,1,32,2,65,1,107,34,3,54,2,16,32,7,32,1,40,2,12,34,4,32,3,65,3,116,106,41,2,0,34,17,55,2,112,32,1,32,2,65,2,107,34,2,54,2,16,32,7,32,4,32,2,65,3,116,106,41,2,0,34,15,55,2,120,32,15,66,8,136,33,16,32,17,167,33,3,32,15,167,34,8,65,1,113,34,12,4,127,32,16,167,65,255,1,113,5,32,8,47,1,40,11,33,13,2,64,2,64,2,127,2,64,32,3,65,1,113,34,14,4,64,32,3,65,128,254,3,113,65,8,118,34,4,32,13,65,255,255,3,113,77,13,1,65,127,12,2,11,32,3,47,1,40,34,4,32,13,65,255,255,3,113,77,13,0,65,127,12,1,11,2,64,2,127,32,12,4,64,65,0,32,4,32,16,167,65,255,1,113,79,13,1,26,12,2,11,32,4,32,8,47,1,40,73,13,1,32,8,40,2,36,11,33,13,65,0,33,4,2,64,32,14,13,0,32,13,32,3,40,2,36,34,4,79,13,0,65,127,12,2,11,32,12,13,3,32,4,32,8,40,2,36,34,3,79,13,2,11,65,1,11,32,1,65,0,54,2,16,12,3,11,32,3,69,13,0,3,64,32,3,65,1,107,34,3,65,3,116,34,2,32,7,40,2,112,34,4,32,4,40,2,36,65,3,116,107,106,41,2,0,33,15,32,2,32,7,40,2,120,34,4,32,4,40,2,36,65,3,116,107,106,41,2,0,33,16,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,4,65,1,106,34,8,32,1,40,2,20,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,8,65,3,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,1,32,8,54,2,20,32,1,40,2,16,34,4,65,1,106,5,32,8,11,54,2,16,32,1,32,2,54,2,12,32,2,32,4,65,3,116,106,32,16,55,2,0,32,1,40,2,12,33,2,32,1,32,1,40,2,16,34,4,65,1,106,34,8,32,1,40,2,20,34,12,75,4,127,65,8,32,12,65,1,116,34,4,32,8,32,4,32,8,75,27,34,4,32,4,65,8,77,27,34,8,65,3,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,1,32,8,54,2,20,32,1,40,2,16,34,4,65,1,106,5,32,8,11,54,2,16,32,1,32,2,54,2,12,32,2,32,4,65,3,116,106,32,15,55,2,0,32,3,13,0,11,32,1,40,2,16,33,2,11,32,2,13,0,11,65,0,11,33,2,32,0,40,2,96,33,1,2,127,2,64,2,64,2,64,2,64,32,2,65,1,106,14,3,0,2,1,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,5,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,84,32,7,32,1,54,2,80,65,128,8,35,1,65,190,4,106,32,7,65,208,0,106,16,11,26,12,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,12,4,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,100,32,7,32,1,54,2,96,65,128,8,35,1,65,190,4,106,32,7,65,224,0,106,16,11,26,65,1,12,2,11,2,64,32,1,13,0,32,0,40,2,140,10,13,0,65,0,33,9,12,3,11,32,0,40,2,160,9,33,2,35,1,65,171,10,106,33,1,2,64,2,64,2,64,32,6,65,1,113,4,127,32,10,65,255,1,113,5,32,6,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,1,12,1,11,65,0,33,1,32,2,40,2,8,32,2,40,2,4,106,32,3,77,13,0,32,2,40,2,56,32,3,65,2,116,106,40,2,0,33,1,11,32,0,65,132,1,106,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,5,65,1,113,4,127,32,11,65,255,1,113,5,32,5,47,1,40,11,65,255,255,3,113,34,5,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,2,40,2,8,32,2,40,2,4,106,32,5,77,13,0,32,2,40,2,56,32,5,65,2,116,106,40,2,0,33,3,11,32,7,32,3,54,2,68,32,7,32,1,54,2,64,65,128,8,35,1,65,231,4,106,32,7,65,64,107,16,11,26,11,65,0,11,33,9,32,0,40,2,96,34,1,4,64,32,0,40,2,92,65,0,32,0,65,132,1,106,32,1,17,3,0,11,2,64,32,0,40,2,140,10,69,13,0,32,0,65,132,1,106,33,1,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,0,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,0,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,11,32,7,65,128,1,106,36,0,32,9,11,243,2,1,10,127,2,64,32,0,40,2,8,34,7,65,1,107,34,1,69,13,0,32,0,40,2,4,33,8,32,7,33,4,3,64,32,4,33,2,32,8,32,1,34,4,65,28,108,106,34,5,40,2,0,40,2,0,33,1,2,127,2,64,2,64,32,2,32,7,70,4,64,32,1,65,1,113,13,1,12,2,11,2,64,2,127,32,1,65,1,113,34,9,4,64,32,1,65,2,113,13,7,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,34,3,65,1,113,13,6,32,3,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,0,40,2,0,40,2,8,34,10,40,2,84,32,10,47,1,36,32,3,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,5,11,32,9,69,13,1,11,32,1,65,3,118,65,1,113,12,1,11,32,1,47,1,44,65,2,118,65,1,113,11,13,1,2,64,32,0,40,2,0,40,2,8,34,1,40,2,32,69,13,0,32,1,40,2,64,32,8,32,2,65,28,108,106,65,56,107,40,2,0,40,2,0,47,1,66,65,2,116,106,34,2,47,1,2,34,3,69,13,0,32,1,40,2,68,32,2,47,1,0,65,2,116,106,34,1,32,3,65,2,116,106,33,2,3,64,2,64,32,1,45,0,3,69,4,64,32,5,40,2,20,32,1,45,0,2,70,13,1,11,32,2,32,1,65,4,106,34,1,75,13,1,12,2,11,11,32,1,47,1,0,33,6,12,2,11,32,4,65,1,107,34,1,13,0,11,11,32,6,11,211,9,2,29,127,1,126,2,64,32,0,40,2,4,34,8,32,0,40,2,8,34,27,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,4,65,1,113,13,0,32,27,33,13,3,64,32,4,40,2,36,69,13,1,32,0,40,2,0,40,2,8,33,10,32,4,47,1,66,34,5,4,127,32,10,40,2,84,32,10,47,1,36,32,5,108,65,1,116,106,5,65,0,11,33,28,32,9,65,4,107,40,2,0,33,15,2,64,2,64,32,13,65,1,107,34,5,69,13,0,32,4,47,1,44,34,11,65,1,113,13,0,32,11,65,4,113,13,1,32,8,32,5,65,28,108,106,34,5,65,28,107,40,2,0,40,2,0,47,1,66,34,11,69,13,1,32,15,32,10,40,2,84,32,10,47,1,36,32,11,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,15,12,1,11,32,15,65,1,106,33,15,11,32,4,40,2,36,34,24,69,13,1,65,0,32,4,32,24,65,3,116,107,34,31,32,4,65,1,113,27,33,32,32,9,65,24,107,40,2,0,33,12,32,9,65,20,107,40,2,0,33,5,32,9,65,16,107,40,2,0,33,4,65,0,33,6,65,0,33,29,3,64,32,15,33,22,32,29,33,11,32,4,33,9,32,5,33,10,32,12,33,19,2,127,32,32,32,6,34,25,65,3,116,106,34,23,40,2,0,34,7,65,1,113,34,26,4,64,32,7,65,2,113,65,1,118,34,20,33,6,32,7,65,3,118,65,1,113,12,1,11,32,7,47,1,44,34,20,65,1,113,33,6,32,20,65,2,118,65,1,113,11,4,127,32,11,5,32,28,4,64,32,28,32,11,65,1,116,106,47,1,0,32,6,114,65,0,71,34,20,33,6,11,32,11,65,1,106,11,33,29,2,127,2,127,2,64,32,26,69,4,64,32,7,40,2,36,13,1,65,0,12,2,11,32,6,32,22,106,33,15,32,23,45,0,7,34,6,33,12,32,9,33,4,32,10,12,2,11,32,7,40,2,56,11,33,12,65,0,32,9,32,7,40,2,20,34,5,27,33,4,32,6,32,22,106,32,12,106,33,15,32,7,40,2,24,33,12,32,7,40,2,16,33,6,32,5,32,10,106,11,33,5,32,4,32,12,106,33,4,32,6,32,19,106,33,12,32,24,32,25,65,1,106,34,6,75,4,64,2,127,32,31,32,6,65,3,116,106,41,2,0,34,33,167,34,14,65,1,113,4,64,32,33,66,32,136,167,65,255,1,113,33,21,32,33,66,48,136,167,65,255,1,113,33,16,32,33,66,40,136,167,65,15,113,12,1,11,32,14,40,2,12,33,21,32,14,40,2,4,33,16,32,14,40,2,8,11,34,17,32,5,106,33,5,32,12,32,16,106,33,12,65,0,32,4,32,17,27,32,21,106,33,4,11,2,127,32,26,4,64,32,19,32,23,45,0,7,34,30,106,33,21,32,9,33,17,32,10,12,1,11,65,0,32,9,32,7,40,2,20,34,14,27,33,17,32,7,40,2,16,32,19,106,33,21,32,7,40,2,24,33,30,32,10,32,14,106,11,33,14,65,0,33,16,2,127,65,0,32,1,32,21,79,13,0,26,65,1,32,2,32,14,73,13,0,26,32,2,32,14,70,32,17,32,30,106,32,3,75,113,11,33,17,2,64,32,26,13,0,32,7,40,2,36,69,13,0,32,7,40,2,48,33,16,11,2,64,32,17,4,64,32,20,65,1,113,4,64,32,0,32,13,65,1,106,34,4,32,0,40,2,12,34,1,75,4,127,65,8,32,1,65,1,116,34,1,32,4,32,1,32,4,75,27,34,1,32,1,65,8,77,27,34,2,65,28,108,33,1,2,127,32,8,4,64,32,8,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,8,32,0,32,2,54,2,12,32,0,40,2,8,34,13,65,1,106,5,32,4,11,54,2,8,32,0,32,8,54,2,4,32,8,32,13,65,28,108,106,34,0,32,22,54,2,24,32,0,32,11,54,2,20,32,0,32,25,54,2,16,32,0,32,9,54,2,12,32,0,32,10,54,2,8,32,0,32,19,54,2,4,32,0,32,23,54,2,0,32,18,173,15,11,32,16,69,13,1,32,0,32,13,65,1,106,34,4,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,8,4,64,32,8,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,8,32,0,32,5,54,2,12,32,0,40,2,8,34,13,65,1,106,5,32,4,11,54,2,8,32,0,32,8,54,2,4,32,8,32,13,65,28,108,106,34,4,32,22,54,2,24,32,4,32,11,54,2,20,32,4,32,25,54,2,16,32,4,32,9,54,2,12,32,4,32,10,54,2,8,32,4,32,19,54,2,4,32,4,32,23,54,2,0,32,0,40,2,4,34,8,32,0,40,2,8,34,13,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,4,65,1,113,69,13,3,12,4,11,32,20,65,1,113,4,64,32,18,65,1,106,33,18,12,1,11,32,16,32,18,106,33,18,11,32,6,32,24,71,13,0,11,11,11,32,0,32,27,54,2,8,66,127,11,144,5,2,11,127,1,126,35,0,65,224,0,107,34,1,36,0,2,64,32,0,40,2,4,34,7,32,0,40,2,8,34,5,65,28,108,106,34,6,65,28,107,40,2,0,34,9,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,0,40,2,0,34,10,40,2,8,33,4,32,2,47,1,66,34,3,4,127,32,4,40,2,84,32,4,47,1,36,32,3,108,65,1,116,106,5,65,0,11,33,11,32,6,65,4,107,40,2,0,33,3,2,64,2,64,32,5,65,1,107,34,8,69,13,0,32,2,47,1,44,34,2,65,1,113,13,0,32,2,65,4,113,13,1,32,7,32,8,65,28,108,106,34,2,65,28,107,40,2,0,40,2,0,47,1,66,34,8,69,13,1,32,3,32,4,40,2,84,32,4,47,1,36,32,8,108,65,1,116,106,32,2,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,3,12,1,11,32,3,65,1,106,33,3,11,32,9,41,2,0,33,12,32,1,32,10,54,2,32,32,1,32,12,55,3,24,32,1,32,6,65,24,107,34,4,40,2,8,54,2,44,32,1,32,4,41,2,0,55,2,36,32,1,32,11,54,2,60,32,1,32,3,54,2,56,32,1,66,0,55,3,48,65,0,33,3,32,12,167,34,4,69,13,0,32,4,40,2,36,69,13,0,32,1,66,0,55,3,16,32,1,66,0,55,3,8,32,1,66,0,55,3,0,32,1,65,24,106,32,1,65,64,107,32,1,65,223,0,106,16,37,69,4,64,12,1,11,65,0,33,4,3,64,32,1,40,2,64,33,2,2,64,32,1,45,0,95,4,127,65,2,5,32,2,40,2,0,34,6,65,1,113,13,1,32,6,40,2,36,69,13,1,32,6,40,2,48,69,13,1,65,1,11,33,3,32,1,32,1,41,2,84,55,3,16,32,1,32,1,41,2,76,55,3,8,32,1,32,1,41,2,68,55,3,0,32,2,33,4,11,32,1,65,24,106,32,1,65,64,107,32,1,65,223,0,106,16,37,13,0,11,32,4,69,4,64,65,0,33,3,12,1,11,32,0,32,5,65,1,106,34,2,32,0,40,2,12,34,6,75,4,127,65,8,32,6,65,1,116,34,5,32,2,32,2,32,5,73,27,34,2,32,2,65,8,77,27,34,5,65,28,108,33,2,2,127,32,7,4,64,32,7,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,7,32,0,32,5,54,2,12,32,0,40,2,8,34,5,65,1,106,5,32,2,11,54,2,8,32,0,32,7,54,2,4,32,7,32,5,65,28,108,106,34,0,32,4,54,2,0,32,0,32,1,41,3,0,55,2,4,32,0,32,1,41,3,8,55,2,12,32,0,32,1,41,3,16,55,2,20,11,32,1,65,224,0,106,36,0,32,3,11,135,1,1,5,127,32,0,65,0,54,2,16,32,1,40,2,16,33,2,32,1,40,2,0,33,3,32,1,40,2,4,33,4,32,1,40,2,8,33,5,32,1,40,2,20,33,6,32,0,32,1,40,2,12,59,1,16,32,0,32,6,54,2,0,32,0,65,224,1,35,7,40,2,0,17,0,0,34,1,54,2,4,32,0,66,129,128,128,128,128,1,55,2,8,32,1,65,0,54,2,24,32,1,66,0,55,2,16,32,1,32,5,54,2,12,32,1,32,4,54,2,8,32,1,32,3,54,2,4,32,1,32,2,54,2,0,11,211,3,1,6,127,35,0,65,224,0,107,34,5,36,0,65,1,33,8,65,2,33,9,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,65,0,33,9,65,0,33,8,12,1,11,32,4,40,2,72,32,1,65,3,108,106,34,6,45,0,0,65,229,0,113,33,8,32,6,45,0,1,65,1,116,33,9,11,32,2,40,2,0,33,6,32,2,40,2,4,34,7,65,3,116,65,204,0,106,34,10,32,2,40,2,8,65,3,116,75,4,64,32,6,32,10,35,6,40,2,0,17,1,0,33,6,32,2,32,10,65,3,118,54,2,8,32,2,32,6,54,2,0,32,2,40,2,4,33,7,11,32,5,66,0,55,3,80,32,5,66,0,55,3,72,32,5,65,64,107,34,2,66,0,55,3,0,32,5,66,0,55,3,32,32,5,65,0,54,2,40,32,5,65,1,54,2,92,32,5,66,0,55,3,56,32,5,65,0,59,1,46,32,5,66,0,55,3,24,32,5,66,0,55,3,8,32,5,32,3,59,1,22,32,5,32,1,59,1,48,32,5,32,8,32,9,114,65,255,1,113,65,24,65,0,32,1,65,253,255,3,75,27,114,59,1,44,32,5,32,7,54,2,52,32,6,32,7,65,3,116,106,34,1,32,5,40,2,92,54,2,0,32,1,32,5,41,3,80,55,2,28,32,1,32,5,41,3,72,55,2,20,32,1,32,2,41,3,0,55,2,12,32,1,32,5,41,3,56,55,2,4,32,1,32,5,40,2,52,54,2,36,32,1,32,5,47,1,48,59,1,40,32,1,32,5,47,1,46,59,1,42,32,1,32,5,47,1,44,59,1,44,32,1,32,5,40,2,40,54,1,62,32,1,32,5,41,3,32,55,1,54,32,1,32,5,41,3,24,55,1,46,32,1,32,5,47,1,22,59,1,66,32,1,32,5,41,3,8,55,2,68,32,0,65,0,54,2,4,32,0,32,1,54,2,0,32,5,32,0,41,2,0,55,3,0,32,5,32,4,16,21,32,5,65,224,0,106,36,0,11,135,4,2,6,127,1,126,32,1,65,0,54,2,4,2,64,32,0,40,2,4,34,2,69,13,0,3,64,2,127,32,0,40,2,0,32,2,65,3,116,106,34,4,65,8,107,40,2,0,34,6,65,1,113,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,4,64,32,4,65,4,107,40,2,0,33,5,32,0,32,2,65,1,107,54,2,4,32,1,40,2,0,33,2,32,1,32,1,40,2,4,34,4,65,1,106,34,3,32,1,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,4,32,3,32,3,32,4,73,27,34,3,32,3,65,8,77,27,34,4,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,1,32,4,54,2,8,32,1,40,2,4,34,4,65,1,106,5,32,3,11,54,2,4,32,1,32,2,54,2,0,32,2,32,4,65,3,116,106,34,2,32,5,54,2,4,32,2,32,6,54,2,0,32,0,40,2,4,34,2,13,1,11,11,32,1,40,2,4,34,0,65,2,73,13,0,65,0,33,2,32,0,65,1,118,34,3,65,1,71,4,64,32,3,65,254,255,255,255,7,113,33,6,65,0,33,3,3,64,32,1,40,2,0,34,4,32,2,65,3,116,34,5,106,34,7,41,2,0,33,8,32,7,32,4,32,1,40,2,4,32,2,65,127,115,106,65,3,116,34,7,106,41,2,0,55,2,0,32,1,40,2,0,32,7,106,32,8,55,2,0,32,1,40,2,0,34,4,32,5,106,34,5,41,2,8,33,8,32,5,32,4,32,1,40,2,4,32,2,65,254,255,255,255,1,115,106,65,3,116,34,5,106,41,2,0,55,2,8,32,1,40,2,0,32,5,106,32,8,55,2,0,32,2,65,2,106,33,2,32,3,65,2,106,34,3,32,6,71,13,0,11,11,32,0,65,2,113,69,13,0,32,1,40,2,0,34,0,32,2,65,3,116,106,34,3,41,2,0,33,8,32,3,32,0,32,1,40,2,4,32,2,65,127,115,106,65,3,116,34,2,106,41,2,0,55,2,0,32,1,40,2,0,32,2,106,32,8,55,2,0,11,11,203,3,2,10,127,1,126,32,1,65,127,54,2,0,32,2,65,127,54,2,0,32,3,65,127,54,2,0,2,64,32,0,40,2,28,69,4,64,12,1,11,32,0,65,60,106,33,14,3,64,2,64,32,0,40,2,24,32,7,65,4,116,106,34,8,47,1,14,34,11,65,128,128,1,113,13,0,32,14,33,5,32,8,47,1,4,34,6,32,0,40,2,52,73,4,64,32,0,40,2,48,32,6,65,12,108,106,33,5,11,32,11,65,255,31,113,34,6,32,5,40,2,4,79,13,0,32,5,40,2,0,32,6,65,28,108,106,34,5,40,2,8,33,12,32,5,40,2,4,33,10,32,5,40,2,0,33,6,2,64,2,64,2,64,32,5,40,2,16,41,2,0,34,15,167,34,5,65,1,113,4,64,32,0,40,2,104,32,6,32,15,66,56,136,167,34,5,106,73,13,1,12,2,11,32,0,40,2,104,32,5,40,2,16,32,6,106,79,13,1,65,0,32,12,32,5,40,2,20,34,13,27,33,12,32,10,32,13,106,33,10,32,5,40,2,24,33,5,11,32,10,32,0,40,2,88,34,13,73,13,0,32,10,32,13,71,13,1,32,0,40,2,92,32,5,32,12,106,73,13,1,11,32,8,32,11,65,1,106,65,255,31,113,32,11,65,128,224,2,113,114,59,1,14,32,7,65,1,107,33,7,12,1,11,2,64,2,64,32,9,69,13,0,32,6,32,2,40,2,0,34,5,73,13,0,32,5,32,6,71,13,1,32,3,40,2,0,32,8,47,1,12,77,13,1,11,32,0,40,2,0,40,2,60,32,8,47,1,10,65,20,108,106,47,1,18,33,5,2,64,32,4,4,64,32,4,32,5,65,130,1,113,65,128,1,70,58,0,0,12,1,11,32,5,65,128,1,113,13,2,11,32,1,32,7,54,2,0,32,2,32,6,54,2,0,32,3,32,8,47,1,12,54,2,0,11,65,1,33,9,11,32,7,65,1,106,34,7,32,0,40,2,28,73,13,0,11,11,32,9,11,178,7,2,18,127,1,126,35,0,65,16,107,34,5,36,0,32,0,65,60,106,33,13,2,127,3,64,32,5,65,0,58,0,3,32,0,32,5,65,4,106,32,5,65,12,106,32,5,65,8,106,32,5,65,3,106,16,115,33,19,2,64,2,64,32,0,40,2,40,34,7,4,64,65,0,33,4,32,5,40,2,12,33,14,32,5,40,2,8,33,16,65,0,33,10,3,64,2,64,2,64,2,64,2,64,32,0,40,2,36,34,9,32,10,65,4,116,34,11,106,34,6,47,1,4,34,3,32,0,40,2,52,73,4,64,32,6,47,1,14,34,15,65,255,31,113,34,8,32,0,40,2,48,32,3,65,12,108,106,34,3,40,2,4,79,13,1,32,6,65,14,106,33,17,12,3,11,32,6,47,1,14,34,15,65,255,31,113,34,8,32,0,40,2,64,79,13,1,32,6,65,14,106,33,17,32,13,33,3,12,2,11,32,3,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,32,0,40,2,40,33,7,11,32,7,32,10,65,127,115,106,65,4,116,34,3,4,64,32,9,32,11,106,34,6,32,6,65,16,106,32,3,252,10,0,0,11,32,0,32,0,40,2,40,65,1,107,34,7,54,2,40,12,1,11,32,3,40,2,0,32,8,65,28,108,106,34,3,40,2,8,33,11,32,3,40,2,4,33,9,32,3,40,2,0,33,8,2,127,65,1,2,127,32,3,40,2,16,41,2,0,34,21,167,34,3,65,1,113,4,64,32,11,33,18,32,9,32,0,40,2,104,32,8,32,21,66,56,136,167,34,3,106,73,13,1,26,65,1,12,2,11,65,1,32,0,40,2,104,32,3,40,2,16,32,8,106,79,13,1,26,65,0,32,11,32,3,40,2,20,34,12,27,33,18,32,3,40,2,24,33,3,32,9,32,12,106,11,34,12,32,0,40,2,88,34,20,73,13,0,26,32,12,32,20,70,32,0,40,2,92,32,3,32,18,106,79,113,11,33,3,2,64,2,64,32,8,32,0,40,2,108,79,13,0,32,9,32,0,40,2,96,34,12,75,13,0,32,3,32,9,32,12,70,32,11,32,0,40,2,100,79,113,114,65,1,71,13,1,11,32,17,32,15,65,1,106,65,255,31,113,32,15,65,128,224,3,113,114,59,1,0,32,0,40,2,40,33,7,12,1,11,2,64,2,127,32,8,32,14,73,4,64,32,6,47,1,12,12,1,11,32,8,32,14,71,13,1,32,16,32,6,47,1,12,34,3,77,13,1,32,3,11,33,16,32,8,33,14,32,6,33,4,11,32,10,65,1,106,33,10,11,32,7,32,10,75,13,0,11,32,4,13,1,11,32,5,45,0,3,65,1,71,13,1,32,0,40,2,24,34,3,69,13,1,32,3,32,5,40,2,4,65,4,116,106,33,4,11,32,4,40,2,0,34,7,65,127,70,4,64,32,0,32,0,40,2,136,1,34,7,65,1,106,54,2,136,1,32,4,32,7,54,2,0,11,32,1,32,7,54,2,0,32,1,32,4,47,1,12,59,1,4,32,4,47,1,4,34,3,32,0,40,2,52,73,4,64,32,0,40,2,48,32,3,65,12,108,106,33,13,11,32,1,32,13,40,2,0,54,2,8,32,1,32,13,40,2,4,59,1,6,32,2,32,4,47,1,14,65,255,31,113,54,2,0,32,4,32,4,47,1,14,34,1,65,1,106,65,255,31,113,32,1,65,128,224,3,113,114,59,1,14,65,1,12,2,11,2,64,32,0,40,2,76,13,0,32,0,40,2,52,34,3,32,0,40,2,72,79,32,19,113,69,13,0,32,3,32,0,40,2,24,32,5,40,2,4,34,4,65,4,116,106,34,3,47,1,4,34,6,75,4,64,32,0,40,2,48,32,6,65,12,108,106,65,127,54,2,4,32,0,65,1,54,2,76,11,32,0,40,2,28,32,4,65,127,115,106,65,4,116,34,4,4,64,32,3,32,3,65,16,106,32,4,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,11,32,0,65,1,16,119,13,0,32,0,40,2,40,13,0,11,65,0,11,32,5,65,16,106,36,0,11,253,4,2,4,127,2,126,2,64,2,64,32,1,45,0,15,65,192,0,113,13,0,32,0,32,1,65,127,16,72,34,0,69,13,1,32,2,47,1,6,34,6,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,5,65,1,106,34,4,32,0,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,1,4,64,32,1,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,4,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,5,65,28,108,106,34,1,32,3,41,2,0,55,2,0,32,1,32,6,54,2,24,32,1,32,9,55,2,16,32,1,32,8,55,2,8,32,2,47,1,8,34,6,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,5,65,1,106,34,4,32,0,40,2,8,34,7,75,4,127,65,8,32,7,65,1,116,34,5,32,4,32,4,32,5,73,27,34,4,32,4,65,8,77,27,34,5,65,28,108,33,4,2,127,32,1,4,64,32,1,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,8,32,0,40,2,4,34,5,65,1,106,5,32,4,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,5,65,28,108,106,34,1,32,3,41,2,0,55,2,0,32,1,32,6,54,2,24,32,1,32,9,55,2,16,32,1,32,8,55,2,8,32,2,47,1,10,34,5,65,255,255,3,70,13,0,32,0,40,2,0,33,1,32,0,32,0,40,2,4,34,4,65,1,106,34,2,32,0,40,2,8,34,6,75,4,127,65,8,32,6,65,1,116,34,4,32,2,32,2,32,4,73,27,34,2,32,2,65,8,77,27,34,4,65,28,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,4,54,2,8,32,0,40,2,4,34,4,65,1,106,5,32,2,11,54,2,4,32,0,32,1,54,2,0,32,3,41,2,8,33,8,32,3,41,2,16,33,9,32,1,32,4,65,28,108,106,34,0,32,3,41,2,0,55,2,0,32,0,32,5,54,2,24,32,0,32,9,55,2,16,32,0,32,8,55,2,8,11,15,11,32,1,32,1,47,1,14,65,128,128,1,114,59,1,14,11,241,2,1,10,127,32,0,40,2,80,32,0,40,2,0,40,2,60,32,1,47,1,0,34,9,65,20,108,106,47,1,12,34,10,107,33,7,32,0,40,2,24,33,4,2,64,2,64,32,0,40,2,28,34,3,69,13,0,32,3,33,2,3,64,32,4,32,2,65,4,116,106,34,6,65,8,107,47,1,0,34,8,32,7,73,4,64,32,2,33,5,12,2,11,2,64,32,7,32,8,71,13,0,32,6,65,4,107,47,1,0,34,8,32,1,47,1,2,34,11,70,4,64,32,6,65,6,107,47,1,0,32,9,70,13,4,11,32,8,32,11,75,13,0,32,2,33,5,12,2,11,32,2,65,1,107,34,2,13,0,11,11,32,1,47,1,2,33,6,32,3,65,1,106,34,1,32,0,40,2,32,75,4,64,32,1,65,4,116,33,2,2,127,32,4,4,64,32,4,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,4,32,0,32,1,54,2,32,32,0,40,2,28,33,3,11,65,128,160,126,65,128,32,32,10,65,1,70,27,33,2,32,5,65,4,116,33,1,2,64,32,3,32,5,77,13,0,32,3,32,5,107,65,4,116,34,5,69,13,0,32,1,32,4,106,34,3,65,16,106,32,3,32,5,252,10,0,0,11,32,1,32,4,106,34,1,32,2,59,0,14,32,1,32,6,59,0,12,32,1,32,9,59,0,10,32,1,32,7,59,0,8,32,1,66,255,255,255,255,255,255,63,55,0,0,32,0,32,4,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,11,11,139,65,2,31,127,1,126,35,0,65,160,1,107,34,7,36,0,32,0,65,60,106,33,29,32,0,65,4,106,33,20,32,0,65,144,1,106,33,30,3,64,2,64,32,0,45,0,158,1,34,6,65,1,71,13,0,32,0,40,2,28,34,4,69,13,0,32,0,40,2,52,33,3,32,0,40,2,24,33,5,2,64,32,4,34,2,65,1,113,69,13,0,32,0,32,2,65,1,107,34,2,54,2,28,32,3,32,5,32,2,65,4,116,106,47,1,4,34,9,77,13,0,32,0,40,2,48,32,9,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,4,65,1,70,13,0,3,64,32,0,32,2,65,1,107,34,4,54,2,28,32,5,32,4,65,4,116,106,47,1,4,34,4,32,3,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,32,2,65,2,107,34,2,54,2,28,32,5,32,2,65,4,116,106,47,1,4,34,4,32,3,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,2,13,0,11,11,32,0,32,0,40,2,152,1,65,1,106,34,2,65,0,32,2,65,228,0,71,27,34,4,54,2,152,1,2,64,32,0,40,2,140,1,34,2,69,13,0,32,2,40,2,4,69,13,0,32,0,32,0,40,2,8,32,0,40,2,12,65,28,108,106,65,24,107,40,2,0,54,2,148,1,11,2,64,32,6,32,15,114,65,1,113,69,4,64,32,2,69,13,1,32,4,13,1,32,2,40,2,4,34,2,69,13,1,32,30,32,2,17,0,0,69,13,1,65,0,33,15,11,32,7,65,160,1,106,36,0,32,15,65,1,113,15,11,2,64,32,0,2,127,2,64,32,0,45,0,157,1,65,1,70,4,64,65,0,33,15,32,0,45,0,156,1,65,1,71,13,3,65,0,33,8,65,0,33,2,65,0,32,0,40,2,28,34,9,69,13,2,26,3,64,2,64,2,64,32,0,40,2,0,40,2,60,32,0,40,2,24,34,4,32,2,65,4,116,106,34,3,47,1,10,65,20,108,106,47,1,12,34,5,65,255,255,3,70,4,64,32,0,40,2,80,34,5,32,3,47,1,8,79,65,0,32,5,27,13,1,32,0,40,2,36,33,4,32,0,32,0,40,2,40,34,6,65,1,106,34,5,32,0,40,2,44,34,10,75,4,127,65,8,32,10,65,1,116,34,6,32,5,32,5,32,6,73,27,34,5,32,5,65,8,77,27,34,6,65,4,116,33,5,2,127,32,4,4,64,32,4,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,4,32,0,32,6,54,2,44,32,0,40,2,40,34,6,65,1,106,5,32,5,11,54,2,40,32,0,32,4,54,2,36,32,4,32,6,65,4,116,106,34,4,32,3,41,2,0,55,2,0,32,4,32,3,41,2,8,55,2,8,65,1,33,15,32,8,65,1,106,33,8,12,2,11,32,0,40,2,80,32,3,47,1,8,32,5,106,79,13,0,32,3,47,1,4,34,4,32,0,40,2,52,73,4,64,32,0,40,2,48,32,4,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,8,65,1,106,33,8,12,1,11,32,8,69,4,64,65,0,33,8,12,1,11,32,4,32,2,32,8,107,65,4,116,106,34,4,32,3,41,2,0,55,2,0,32,4,32,3,41,2,8,55,2,8,11,32,9,32,2,65,1,106,34,2,71,13,0,11,12,1,11,65,0,33,8,2,127,65,0,2,127,32,0,40,2,8,34,4,32,0,40,2,12,34,3,65,28,108,106,34,2,65,28,107,40,2,0,34,16,40,2,0,34,5,65,1,113,4,64,32,5,65,3,118,65,1,113,12,1,11,32,5,47,1,44,65,2,118,65,1,113,11,13,0,26,32,3,65,2,73,4,64,32,0,47,1,20,12,1,11,65,0,32,2,65,56,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,26,32,20,40,2,0,40,2,8,34,6,40,2,84,32,6,47,1,36,32,5,108,65,1,116,106,32,2,65,8,107,40,2,0,65,1,116,106,47,1,0,11,33,11,32,2,65,24,107,40,2,0,33,14,32,2,65,20,107,40,2,0,33,9,32,2,65,16,107,40,2,0,33,17,32,7,32,20,40,2,0,34,13,54,2,156,1,32,7,32,16,54,2,152,1,32,7,32,11,34,12,54,2,148,1,32,7,32,17,54,2,144,1,32,7,32,9,54,2,140,1,32,7,32,14,54,2,136,1,65,1,33,18,2,127,32,3,65,2,72,4,64,65,1,33,5,65,0,33,19,65,0,12,1,11,2,64,2,64,32,3,65,2,107,34,2,69,13,0,3,64,2,64,32,4,32,2,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,32,13,40,2,8,34,6,40,2,84,32,6,47,1,36,32,5,108,65,1,116,106,32,3,40,2,20,65,1,116,106,47,1,0,34,8,69,13,0,32,3,33,4,12,3,11,2,127,32,3,40,2,0,40,2,0,34,5,65,1,113,4,64,32,5,65,1,118,65,1,113,12,1,11,32,5,47,1,44,65,1,113,11,69,4,64,32,2,65,1,107,34,2,69,13,2,12,1,11,11,32,3,33,4,11,65,0,33,8,11,2,64,2,64,32,4,40,2,0,34,19,69,4,64,65,1,33,5,65,0,33,19,12,1,11,32,4,40,2,12,33,10,32,4,40,2,8,33,3,32,4,40,2,4,33,15,2,127,32,19,41,2,0,34,33,167,34,2,65,1,113,4,64,32,10,32,33,66,56,136,167,34,2,106,33,6,32,3,12,1,11,32,2,40,2,24,65,0,32,10,32,2,40,2,20,34,4,27,106,33,6,32,2,40,2,16,33,2,32,3,32,4,106,11,33,4,65,0,33,5,32,2,32,15,106,34,21,32,0,40,2,104,34,24,77,32,2,69,32,21,32,24,70,113,69,113,13,1,2,64,32,4,32,0,40,2,88,34,21,75,13,0,32,4,32,21,71,34,4,69,32,0,40,2,92,34,21,32,6,73,113,13,0,32,2,13,2,32,4,13,2,32,6,32,21,71,13,2,11,32,15,32,0,40,2,108,79,13,1,32,3,32,0,40,2,96,34,2,73,13,0,32,2,32,3,70,32,10,32,0,40,2,100,73,113,33,18,11,32,13,12,1,11,65,0,33,18,32,13,11,33,22,2,127,32,16,41,2,0,34,33,167,34,2,65,1,113,34,6,4,64,32,17,32,33,66,56,136,167,34,3,106,33,16,32,9,12,1,11,32,2,40,2,24,65,0,32,17,32,2,40,2,20,34,4,27,106,33,16,32,2,40,2,16,33,3,32,4,32,9,106,11,33,10,32,3,32,14,106,33,4,65,0,33,21,2,127,65,0,32,18,69,13,0,26,32,0,40,2,104,34,15,32,4,79,4,64,65,0,32,3,69,32,4,32,15,70,113,69,13,1,26,11,2,64,32,10,32,0,40,2,88,34,15,75,13,0,32,10,32,15,71,34,15,69,32,0,40,2,92,34,24,32,16,73,113,13,0,65,0,32,3,13,1,26,65,0,32,15,13,1,26,65,0,32,16,32,24,71,13,1,26,11,65,0,32,14,32,0,40,2,108,79,13,0,26,65,1,32,9,32,0,40,2,96,34,15,73,13,0,26,32,9,32,15,70,32,17,32,0,40,2,100,73,113,11,33,24,2,64,32,0,40,2,128,1,34,25,32,4,79,32,3,69,32,4,32,25,70,113,69,113,13,0,2,64,32,10,32,0,40,2,112,34,15,75,13,0,32,10,32,15,71,34,15,69,32,0,40,2,116,34,23,32,16,73,113,13,0,32,3,13,1,32,15,13,1,32,16,32,23,71,13,1,11,32,14,32,0,40,2,132,1,79,13,0,65,1,33,21,32,9,32,0,40,2,120,34,3,73,13,0,32,3,32,9,70,32,17,32,0,40,2,124,73,113,33,21,11,65,0,33,15,2,64,32,14,32,25,73,13,0,32,0,40,2,112,34,3,32,9,79,4,64,32,3,32,9,71,13,1,32,17,32,0,40,2,116,73,13,1,11,32,4,32,0,40,2,132,1,75,13,0,32,0,40,2,120,34,4,32,10,77,4,64,32,4,32,10,71,13,1,32,16,32,0,40,2,124,75,13,1,11,32,0,45,0,156,1,65,1,71,13,0,2,127,2,64,32,12,69,4,64,32,6,4,64,32,2,65,128,254,3,113,65,8,118,33,11,12,2,11,32,2,47,1,40,33,11,11,65,255,255,3,32,11,65,255,255,3,70,13,1,26,11,32,13,40,2,8,40,2,76,32,11,65,1,116,106,47,1,0,11,33,28,65,1,33,16,2,64,2,64,2,64,32,12,65,254,255,3,107,14,2,0,2,1,11,65,0,33,16,12,1,11,32,12,4,64,32,13,40,2,8,40,2,72,32,12,65,3,108,106,45,0,1,65,0,71,33,16,12,1,11,32,6,4,64,32,2,65,2,118,65,1,113,33,16,12,1,11,32,2,47,1,44,65,1,118,65,1,113,33,16,11,32,6,4,127,32,2,65,5,118,65,1,113,5,32,2,47,1,44,65,9,118,65,1,113,11,33,25,32,7,66,0,55,3,120,32,7,66,0,55,3,112,32,7,65,8,54,2,108,32,7,65,240,0,106,33,31,65,0,33,11,32,7,40,2,108,33,32,32,7,65,0,59,1,130,1,32,7,65,0,54,2,108,32,7,65,0,58,0,135,1,32,7,65,0,58,0,134,1,32,7,65,0,58,0,133,1,2,64,32,20,40,2,8,34,4,65,1,107,34,2,69,13,0,32,20,40,2,4,33,23,32,20,40,2,0,40,2,8,33,9,3,64,32,4,33,3,32,23,32,2,34,4,65,28,108,106,33,10,32,23,32,3,65,28,108,106,65,56,107,40,2,0,34,17,40,2,0,47,1,66,34,2,4,127,32,9,40,2,84,32,9,47,1,36,32,2,108,65,1,116,106,5,65,0,11,33,12,2,64,2,64,2,127,32,10,40,2,0,34,26,40,2,0,34,6,65,1,113,34,14,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,13,0,32,12,69,13,0,32,12,32,10,40,2,20,65,1,116,106,47,1,0,34,2,13,1,11,32,14,4,64,32,6,65,128,254,3,113,65,8,118,33,2,12,1,11,32,6,47,1,40,33,2,11,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,2,1,0,11,32,9,40,2,72,32,2,65,3,108,106,33,6,32,20,40,2,8,32,3,71,4,64,32,6,45,0,0,65,1,113,13,4,11,32,6,45,0,2,65,1,113,69,13,1,32,11,32,32,79,13,1,32,31,32,11,65,1,116,106,32,2,59,1,0,32,7,32,11,65,1,106,34,11,54,2,108,12,1,11,32,3,32,20,40,2,8,71,13,2,11,2,64,32,7,45,0,135,1,13,0,32,17,40,2,0,40,2,36,33,27,2,127,32,26,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,33,2,32,10,40,2,16,65,1,106,34,3,32,27,79,13,0,32,10,40,2,20,32,2,69,106,33,14,3,64,2,64,2,64,2,127,32,17,40,2,0,34,2,32,2,40,2,36,65,3,116,107,32,3,65,3,116,106,40,2,0,34,6,65,1,113,34,13,4,64,32,6,65,3,118,65,1,113,12,1,11,32,6,47,1,44,65,2,118,65,1,113,11,13,0,32,12,69,13,0,32,12,32,14,65,1,116,106,47,1,0,34,2,13,1,11,32,13,4,64,32,6,65,128,254,3,113,65,8,118,33,2,12,1,11,32,6,47,1,40,33,2,11,32,14,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,1,3,0,11,32,9,40,2,72,32,2,65,3,108,106,34,2,45,0,0,65,1,113,69,13,0,32,2,45,0,1,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,7,65,1,113,13,3,32,13,69,13,1,12,4,11,32,13,13,3,32,6,40,2,36,69,13,0,32,6,40,2,48,69,13,0,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,6,32,6,40,2,52,13,2,11,32,6,47,1,44,65,2,118,65,1,113,12,3,11,32,7,65,1,58,0,135,1,32,7,45,0,134,1,13,4,11,32,7,65,1,58,0,134,1,12,3,11,32,6,65,3,118,65,1,113,11,69,106,33,14,32,3,65,1,106,34,3,32,27,71,13,0,11,11,2,64,2,127,32,26,40,2,0,34,2,65,1,113,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,13,0,32,9,40,2,32,69,13,0,32,9,40,2,68,32,9,40,2,64,32,17,40,2,0,47,1,66,65,2,116,106,34,3,47,1,0,65,2,116,106,34,2,32,3,47,1,2,34,6,65,2,116,106,33,12,32,7,47,1,130,1,34,3,69,4,64,32,6,69,13,1,32,2,33,3,3,64,2,64,32,3,45,0,3,69,4,64,32,10,40,2,20,32,3,45,0,2,70,13,1,11,32,3,65,4,106,34,3,32,12,73,13,1,12,3,11,11,32,7,32,3,47,1,0,34,3,59,1,130,1,32,3,69,13,1,11,32,6,69,13,0,3,64,2,64,32,2,47,1,0,32,3,71,13,0,32,10,40,2,20,32,2,45,0,2,79,13,0,32,7,65,1,58,0,133,1,12,2,11,32,2,65,4,106,34,2,32,12,73,13,0,11,11,32,4,65,1,107,34,2,13,0,11,11,2,127,65,0,32,5,13,0,26,2,64,32,8,69,4,64,32,19,40,2,0,34,2,65,1,113,4,64,32,2,65,128,254,3,113,65,8,118,33,8,12,2,11,32,2,47,1,40,33,8,11,32,8,65,255,255,3,113,65,255,255,3,71,13,0,65,1,12,1,11,32,22,40,2,8,40,2,76,32,8,65,255,255,3,113,65,1,116,106,47,1,0,65,255,255,3,70,11,33,6,32,0,40,2,0,34,2,47,1,160,1,33,8,2,64,32,28,65,255,255,3,113,34,12,65,255,255,3,70,34,19,13,0,32,8,65,255,255,3,113,69,4,64,65,0,33,8,12,1,11,65,0,33,3,32,7,40,2,108,33,9,32,7,47,1,130,1,33,10,32,18,69,32,6,114,65,1,113,33,11,3,64,32,2,40,2,60,32,2,40,2,72,32,3,65,6,108,106,34,4,47,1,0,65,20,108,106,34,5,47,1,12,33,8,32,0,40,2,80,33,17,2,64,2,64,32,4,45,0,4,65,1,70,4,64,32,24,13,1,12,2,11,32,11,13,1,11,32,5,47,1,4,34,14,65,0,32,10,32,14,71,27,13,0,65,0,32,5,47,1,2,32,9,27,13,0,32,0,40,2,84,32,17,32,8,107,73,13,0,32,0,32,4,16,118,32,0,40,2,0,33,2,11,32,3,65,1,106,34,3,32,2,47,1,160,1,34,8,73,13,0,11,11,2,64,32,2,40,2,76,34,9,32,8,65,255,255,3,113,34,3,107,34,8,69,13,0,32,2,40,2,60,33,4,32,2,40,2,72,33,5,32,8,65,1,71,4,64,3,64,32,8,65,1,118,34,10,32,3,106,34,11,32,3,32,12,32,4,32,5,32,11,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,27,33,3,32,8,32,10,107,34,8,65,1,75,13,0,11,11,2,64,32,12,32,4,32,5,32,3,65,6,108,106,47,1,0,65,20,108,106,47,1,0,34,8,77,13,0,32,3,65,1,106,34,3,32,9,79,13,0,32,4,32,5,32,3,65,6,108,106,47,1,0,65,20,108,106,47,1,0,33,8,11,32,12,32,8,65,255,255,3,113,71,13,0,32,0,40,2,80,32,4,32,5,32,3,65,6,108,106,34,8,47,1,0,65,20,108,106,34,4,47,1,12,107,33,5,32,7,47,1,130,1,33,9,32,18,69,32,6,114,65,1,113,33,6,3,64,2,64,2,64,32,8,45,0,4,65,1,70,4,64,32,24,13,1,12,2,11,32,6,13,1,11,32,4,47,1,4,34,4,65,0,32,4,32,9,71,27,13,0,32,5,32,0,40,2,84,75,13,0,32,0,32,8,16,118,32,0,40,2,0,33,2,11,32,3,65,1,106,34,3,32,2,40,2,76,70,13,1,32,2,40,2,60,32,2,40,2,72,32,3,65,6,108,106,34,8,47,1,0,65,20,108,106,34,4,47,1,0,32,12,70,13,0,11,11,32,0,40,2,28,69,13,0,32,12,65,255,255,3,71,33,23,32,7,45,0,133,1,33,26,32,7,45,0,135,1,33,27,32,7,45,0,134,1,65,1,115,33,22,65,0,33,9,3,64,32,7,32,9,65,4,116,34,13,32,0,40,2,24,106,34,4,54,2,104,32,0,40,2,0,40,2,60,33,3,32,4,32,4,47,1,14,34,6,65,255,191,127,113,34,10,59,1,14,65,1,33,2,2,64,32,0,40,2,80,32,3,32,4,47,1,10,65,20,108,34,8,106,34,11,47,1,12,32,4,47,1,8,106,71,4,64,32,9,33,3,12,1,11,2,127,32,11,47,1,0,34,2,69,4,64,32,11,47,1,18,34,5,65,128,4,113,65,9,118,34,2,32,19,114,32,16,114,65,1,113,4,64,32,25,32,23,32,2,27,12,2,11,32,5,65,1,115,12,1,11,32,11,47,1,18,33,5,65,0,32,2,32,12,71,13,0,26,32,5,65,128,4,113,69,32,25,114,11,32,5,65,4,113,69,32,22,114,113,33,2,32,6,65,128,32,113,69,32,5,65,2,113,69,32,16,65,127,115,114,113,2,127,2,64,32,11,47,1,2,34,18,69,13,0,65,0,34,3,32,7,40,2,108,34,17,69,13,1,26,3,64,32,7,65,240,0,106,32,3,65,1,116,106,47,1,0,32,18,70,13,1,32,3,65,1,106,34,3,32,17,71,13,0,11,65,0,12,1,11,32,2,11,33,3,32,27,113,33,6,32,11,47,1,4,34,2,4,64,32,6,32,26,113,32,6,32,2,32,7,47,1,130,1,70,34,2,27,33,6,32,2,32,3,113,33,3,11,2,127,2,64,2,64,2,64,2,64,2,64,32,11,47,1,16,34,2,4,64,32,0,40,2,0,40,2,120,32,2,65,1,116,106,33,2,3,64,32,2,47,1,0,34,18,69,13,2,32,7,65,64,107,32,7,41,2,144,1,55,3,0,32,7,32,7,41,2,152,1,55,3,72,32,7,32,7,41,2,136,1,55,3,56,32,7,65,208,0,106,32,7,65,56,106,32,18,16,59,32,2,65,2,106,33,2,32,7,40,2,96,69,13,0,11,12,3,11,32,3,65,1,113,13,1,12,2,11,32,3,65,1,113,69,13,1,11,65,0,33,18,2,64,32,6,65,1,113,69,13,0,2,64,32,5,65,192,0,113,13,0,32,0,40,2,0,40,2,60,32,8,106,34,2,47,1,32,34,3,65,255,255,3,70,13,1,32,3,32,2,47,1,12,77,13,1,32,2,45,0,39,65,1,113,69,13,0,32,2,47,1,0,13,1,11,35,0,65,16,107,34,4,36,0,32,0,40,2,24,33,2,32,4,32,7,40,2,104,34,3,41,2,8,55,3,8,32,4,32,3,41,2,0,55,3,0,32,3,32,2,107,34,8,65,4,117,33,18,32,4,65,255,255,3,54,2,4,2,127,32,3,40,2,4,65,255,255,3,71,4,64,65,0,32,0,32,4,32,18,16,72,34,2,69,13,1,26,32,3,47,1,4,34,3,32,0,40,2,52,79,4,127,32,0,65,60,106,5,32,0,40,2,48,32,3,65,12,108,106,11,34,5,40,2,0,33,17,32,2,40,2,0,33,3,2,64,32,5,40,2,4,34,10,32,2,40,2,4,34,5,106,34,14,32,2,40,2,8,77,13,0,32,14,65,28,108,33,6,2,127,32,3,4,64,32,3,32,6,35,6,40,2,0,17,1,0,12,1,11,32,6,35,7,40,2,0,17,0,0,11,33,3,32,2,32,14,54,2,8,32,2,40,2,4,34,14,32,5,77,13,0,32,14,32,5,107,65,28,108,34,14,69,13,0,32,3,32,6,106,32,3,32,5,65,28,108,106,32,14,252,10,0,0,11,2,64,32,10,69,13,0,32,10,65,28,108,33,6,32,3,32,5,65,28,108,106,33,5,32,17,4,64,32,6,69,13,1,32,5,32,17,32,6,252,10,0,0,12,1,11,32,6,69,13,0,32,5,65,0,32,6,252,11,0,11,32,2,32,3,54,2,0,32,2,32,2,40,2,4,32,10,106,54,2,4,32,0,40,2,24,33,2,11,32,0,40,2,28,34,5,65,1,106,34,3,32,0,40,2,32,75,4,64,32,3,65,4,116,33,5,2,127,32,2,4,64,32,2,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,32,32,0,40,2,28,33,5,11,2,64,32,18,65,1,106,34,3,32,5,79,4,64,32,3,65,4,116,33,6,12,1,11,32,3,65,4,116,33,6,32,5,32,3,107,65,4,116,34,5,69,13,0,32,2,32,8,106,65,32,106,32,2,32,6,106,32,5,252,10,0,0,11,32,2,32,6,106,34,5,32,4,41,3,0,55,0,0,32,5,32,4,41,3,8,55,0,8,32,0,32,2,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,32,7,32,2,32,8,106,54,2,104,32,0,40,2,24,32,3,65,4,116,106,11,32,4,65,16,106,36,0,65,0,71,33,18,32,7,40,2,104,34,4,47,1,14,33,10,11,2,64,32,10,193,65,0,78,13,0,2,64,32,0,40,2,12,34,2,65,2,78,4,64,32,0,40,2,8,33,5,2,64,32,2,65,2,107,34,2,69,4,64,65,0,33,6,12,1,11,3,64,2,64,32,5,32,2,65,28,108,106,34,3,65,28,107,40,2,0,40,2,0,47,1,66,34,6,4,64,32,20,40,2,0,40,2,8,34,8,40,2,84,32,8,47,1,36,32,6,108,65,1,116,106,32,3,40,2,20,65,1,116,106,47,1,0,34,6,13,1,11,65,0,33,6,2,127,32,3,40,2,0,40,2,0,34,8,65,1,113,4,64,32,8,65,1,118,65,1,113,12,1,11,32,8,47,1,44,65,1,113,11,13,0,32,2,65,1,107,34,2,13,1,12,2,11,11,32,3,33,5,11,32,5,41,2,4,33,33,32,5,40,2,12,33,3,32,5,40,2,0,33,2,32,7,32,20,40,2,0,54,2,100,32,7,32,2,54,2,96,32,7,32,6,54,2,92,32,7,32,3,54,2,88,32,7,32,33,55,2,80,32,2,13,1,11,32,4,32,10,65,128,128,1,114,59,1,14,12,1,11,32,4,32,10,65,255,255,1,113,59,1,14,32,11,33,3,3,64,32,3,34,2,65,20,107,33,3,32,2,65,2,107,45,0,0,65,24,113,13,0,32,2,65,8,107,47,1,0,13,0,11,32,2,65,14,107,47,1,0,65,255,255,3,70,13,0,32,7,32,7,41,2,96,55,3,48,32,7,32,7,41,2,88,55,3,40,32,7,32,7,41,2,80,55,3,32,32,0,32,4,32,3,32,7,65,32,106,16,117,11,32,11,47,1,6,65,255,255,3,71,4,64,32,7,32,7,41,2,152,1,55,3,24,32,7,32,7,41,2,144,1,55,3,16,32,7,32,7,41,2,136,1,55,3,8,32,0,32,4,32,11,32,7,65,8,106,16,117,11,32,4,47,1,14,34,2,65,128,128,1,113,13,1,32,4,32,4,47,1,10,65,1,106,34,3,59,1,10,32,0,40,2,0,40,2,60,32,3,65,255,255,3,113,65,20,108,106,33,3,32,4,2,127,2,64,32,11,47,1,0,13,0,32,11,47,1,18,65,1,113,13,0,32,3,45,0,18,65,2,113,69,13,0,32,2,65,128,32,114,12,1,11,32,2,65,255,223,2,113,11,59,1,14,32,1,4,64,32,3,45,0,18,65,7,118,32,15,114,33,15,11,65,127,32,9,65,127,70,13,3,26,32,9,65,1,106,33,10,32,9,33,2,3,64,2,64,2,64,32,0,40,2,0,40,2,60,32,0,40,2,24,34,8,32,2,65,4,116,34,28,106,34,3,47,1,10,34,4,65,20,108,106,34,17,47,1,14,34,5,65,255,255,3,70,4,64,32,2,33,6,12,1,11,32,17,47,1,18,34,11,65,16,113,4,64,32,3,32,5,59,1,10,12,2,11,32,2,33,6,32,11,65,8,113,4,64,32,3,32,4,65,1,106,59,1,10,32,2,65,1,107,33,6,11,32,7,32,3,41,2,8,55,3,88,32,7,32,3,41,2,0,55,3,80,32,7,65,255,255,3,54,2,84,32,3,40,2,4,65,255,255,3,71,4,64,32,0,32,7,65,208,0,106,32,2,16,72,34,4,69,13,1,32,29,33,5,32,3,47,1,4,34,3,32,0,40,2,52,73,4,64,32,0,40,2,48,32,3,65,12,108,106,33,5,11,32,5,40,2,0,33,14,32,4,40,2,0,33,3,2,64,32,5,40,2,4,34,8,32,4,40,2,4,34,5,106,34,13,32,4,40,2,8,77,13,0,32,13,65,28,108,33,11,2,127,32,3,4,64,32,3,32,11,35,6,40,2,0,17,1,0,12,1,11,32,11,35,7,40,2,0,17,0,0,11,33,3,32,4,32,13,54,2,8,32,4,40,2,4,34,13,32,5,77,13,0,32,13,32,5,107,65,28,108,34,13,69,13,0,32,3,32,11,106,32,3,32,5,65,28,108,106,32,13,252,10,0,0,11,2,64,32,8,69,13,0,32,8,65,28,108,33,11,32,3,32,5,65,28,108,106,33,5,32,14,4,64,32,11,69,13,1,32,5,32,14,32,11,252,10,0,0,12,1,11,32,11,69,13,0,32,5,65,0,32,11,252,11,0,11,32,4,32,3,54,2,0,32,4,32,4,40,2,4,32,8,106,54,2,4,32,0,40,2,24,33,8,11,32,0,40,2,28,34,3,65,1,106,34,4,32,0,40,2,32,75,4,64,32,4,65,4,116,33,3,2,127,32,8,4,64,32,8,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,8,32,0,32,4,54,2,32,32,0,40,2,28,33,3,11,2,64,32,2,65,1,106,34,2,32,3,79,4,64,32,2,65,4,116,33,5,12,1,11,32,2,65,4,116,33,5,32,3,32,2,107,65,4,116,34,4,69,13,0,32,8,32,28,106,65,32,106,32,5,32,8,106,32,4,252,10,0,0,11,32,5,32,8,106,34,4,32,7,41,3,80,55,0,0,32,4,32,7,41,3,88,55,0,8,32,0,32,8,54,2,24,32,0,32,0,40,2,28,65,1,106,54,2,28,32,8,32,2,65,4,116,106,34,2,32,17,47,1,14,59,1,10,32,18,65,1,106,33,18,32,10,65,1,106,33,10,32,17,45,0,18,65,32,113,69,13,0,32,2,32,2,47,1,14,65,128,32,114,59,1,14,11,32,6,65,1,106,33,2,11,32,2,32,10,73,13,0,11,12,2,11,65,0,33,18,32,6,65,1,113,13,1,32,4,47,1,4,34,2,32,0,40,2,52,79,13,0,32,0,40,2,48,32,2,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,40,2,28,32,9,65,127,115,106,65,4,116,34,2,4,64,32,0,40,2,24,32,13,106,34,4,32,4,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,32,9,65,1,107,12,1,11,32,9,11,33,3,32,18,65,1,106,33,2,11,32,2,32,3,106,34,9,32,0,40,2,28,34,8,73,13,0,11,65,0,33,6,32,8,69,13,0,3,64,2,64,32,6,65,4,116,34,25,32,0,40,2,24,106,34,12,45,0,15,65,192,0,113,69,4,64,2,64,2,64,32,6,34,5,65,1,106,34,4,32,8,79,13,0,3,64,32,0,40,2,24,34,23,32,4,65,4,116,106,34,16,47,1,8,32,12,47,1,8,71,13,1,32,16,47,1,12,32,12,47,1,12,71,13,1,32,29,33,10,32,0,40,2,52,34,2,32,12,47,1,4,34,3,75,4,64,32,0,40,2,48,32,3,65,12,108,106,33,10,11,32,29,33,9,32,2,32,16,47,1,4,34,17,77,34,26,69,4,64,32,0,40,2,48,32,17,65,12,108,106,33,9,11,65,1,33,18,32,7,65,1,58,0,104,32,7,65,1,58,0,80,32,9,40,2,4,33,14,65,0,33,3,2,64,2,64,2,64,2,64,32,10,40,2,4,34,27,4,64,65,1,33,11,65,0,33,2,3,64,2,64,2,64,32,3,32,14,73,4,64,2,64,2,64,32,10,40,2,0,32,2,65,28,108,106,34,13,40,2,16,34,22,32,9,40,2,0,32,3,65,28,108,106,34,19,40,2,16,34,28,70,4,64,32,13,40,2,24,32,19,40,2,24,71,13,1,32,3,65,1,106,33,3,32,2,65,1,106,33,2,12,5,11,32,13,40,2,0,34,13,32,19,40,2,0,34,19,73,13,3,32,13,32,19,77,4,64,2,127,32,22,41,2,0,34,33,167,34,22,65,1,113,4,64,32,33,66,56,136,167,12,1,11,32,22,40,2,16,11,32,13,106,33,13,32,13,2,127,32,28,41,2,0,34,33,167,34,22,65,1,113,4,64,32,33,66,56,136,167,12,1,11,32,22,40,2,16,11,32,19,106,34,19,75,13,4,32,13,32,19,79,13,1,11,12,1,11,32,2,65,1,106,33,2,65,0,33,11,11,32,3,65,1,106,33,3,65,0,33,18,12,2,11,32,7,32,11,58,0,104,32,7,32,18,58,0,80,32,7,65,232,0,106,33,2,12,4,11,32,2,65,1,106,33,2,65,0,33,11,11,32,2,32,27,73,13,0,11,32,7,32,11,58,0,104,32,7,32,18,58,0,80,11,32,7,65,208,0,106,33,2,32,3,32,14,73,13,0,32,18,13,1,12,2,11,32,2,65,0,58,0,0,32,7,45,0,80,69,13,1,11,32,12,47,1,10,32,16,47,1,10,70,4,64,32,26,4,127,32,8,5,32,0,40,2,48,32,17,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,32,0,40,2,28,11,32,5,107,65,4,116,65,32,107,34,2,4,64,32,16,32,23,32,5,65,4,116,106,65,32,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,54,2,28,12,2,11,32,16,32,16,47,1,14,65,128,192,0,114,59,1,14,11,32,7,45,0,104,65,1,70,4,64,32,12,47,1,10,32,16,47,1,10,70,4,64,32,12,47,1,4,34,2,32,0,40,2,52,73,4,64,32,0,40,2,48,32,2,65,12,108,106,65,127,54,2,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,0,40,2,28,32,6,65,127,115,106,65,4,116,34,2,4,64,32,0,40,2,24,32,25,106,34,4,32,4,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,32,6,65,1,107,33,6,12,5,11,32,12,32,12,47,1,14,65,128,192,0,114,59,1,14,11,32,4,33,5,11,32,5,65,1,106,34,4,32,0,40,2,28,34,8,73,13,0,11,11,32,0,40,2,0,40,2,60,32,12,47,1,10,65,20,108,106,47,1,12,65,255,255,3,71,13,0,32,12,45,0,15,65,32,113,13,0,32,0,40,2,36,33,2,32,0,32,0,40,2,40,34,8,65,1,106,34,4,32,0,40,2,44,34,3,75,4,127,65,8,32,3,65,1,116,34,3,32,4,32,3,32,4,75,27,34,4,32,4,65,8,77,27,34,3,65,4,116,33,4,2,127,32,2,4,64,32,2,32,4,35,6,40,2,0,17,1,0,12,1,11,32,4,35,7,40,2,0,17,0,0,11,33,2,32,0,32,3,54,2,44,32,0,40,2,40,34,8,65,1,106,5,32,4,11,54,2,40,32,0,32,2,54,2,36,32,2,32,8,65,4,116,106,34,2,32,12,41,2,0,55,2,0,32,2,32,12,41,2,8,55,2,8,32,0,40,2,28,32,12,32,0,40,2,24,107,65,127,115,65,4,118,106,65,4,116,34,2,4,64,32,12,32,12,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,32,6,65,1,107,33,6,65,1,33,15,11,32,6,65,1,106,33,6,12,1,11,32,8,32,6,65,127,115,106,65,4,116,34,2,4,64,32,12,32,12,65,16,106,32,2,252,10,0,0,11,32,0,32,0,40,2,28,65,1,107,34,8,54,2,28,11,32,6,32,8,73,13,0,11,11,2,64,2,64,2,64,32,21,69,13,0,2,64,32,24,4,64,32,0,40,2,80,32,0,40,2,84,73,13,1,11,32,0,40,2,28,34,4,4,64,32,0,40,2,24,33,3,32,0,40,2,0,40,2,60,33,5,65,0,33,2,3,64,32,5,32,3,32,2,65,4,116,106,34,6,47,1,10,65,20,108,106,47,1,12,34,9,65,255,255,3,71,4,64,32,0,40,2,80,32,6,47,1,8,32,9,106,73,13,3,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,32,0,40,2,80,32,0,40,2,84,79,13,1,32,0,45,0,156,1,13,1,32,0,40,2,8,32,0,40,2,12,65,28,108,106,65,28,107,40,2,0,40,2,0,34,2,65,1,113,13,0,32,2,45,0,44,65,3,113,13,0,32,2,40,2,36,69,13,0,2,64,2,64,2,64,32,0,40,2,0,34,4,40,2,148,1,34,3,14,2,4,0,1,11,32,2,47,1,40,33,10,32,4,40,2,144,1,33,9,65,0,33,2,12,1,11,32,2,47,1,40,33,10,32,4,40,2,144,1,33,9,65,0,33,2,3,64,32,2,32,3,65,1,118,34,4,32,2,106,34,2,32,9,32,2,65,1,116,106,47,1,0,32,10,65,255,255,3,113,75,27,33,2,32,3,32,4,107,34,3,65,1,75,13,0,11,11,32,9,32,2,65,1,116,106,47,1,0,32,10,65,255,255,3,113,71,13,1,11,65,0,33,2,32,20,16,71,65,1,107,14,2,2,1,0,11,32,0,65,1,58,0,157,1,12,5,11,65,1,33,2,32,0,32,0,40,2,80,65,1,106,54,2,80,11,32,0,32,2,58,0,156,1,12,3,11,32,0,40,2,28,32,8,107,11,54,2,28,11,2,64,2,64,2,64,32,20,35,2,65,11,106,16,70,65,1,107,14,2,1,0,2,11,32,0,45,0,156,1,69,4,64,32,0,65,1,58,0,156,1,32,0,32,0,40,2,80,65,1,106,54,2,80,11,32,0,65,0,58,0,157,1,12,2,11,32,0,45,0,156,1,65,1,70,4,64,32,0,65,0,58,0,156,1,32,0,32,0,40,2,80,65,1,107,54,2,80,11,32,0,65,0,58,0,157,1,12,1,11,32,0,40,2,12,34,4,65,1,107,34,2,4,64,2,64,32,4,65,2,107,34,3,4,64,32,0,40,2,8,33,6,3,64,32,2,33,4,2,64,2,127,32,6,32,3,34,2,65,28,108,106,34,5,40,2,0,40,2,0,34,3,65,1,113,4,64,32,3,65,2,113,13,5,32,3,65,3,118,65,1,113,12,1,11,32,3,47,1,44,34,3,65,1,113,13,4,32,3,65,2,118,65,1,113,11,13,0,32,5,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,20,40,2,0,40,2,8,34,9,40,2,84,32,9,47,1,36,32,3,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,13,3,11,32,2,65,1,107,34,3,13,0,11,11,65,1,33,4,11,32,0,32,4,54,2,12,32,0,32,0,40,2,80,65,1,107,54,2,80,5,32,0,65,1,58,0,158,1,11,12,0,11,0,11,225,1,1,3,127,2,127,32,0,40,2,40,69,4,64,65,0,32,0,65,0,16,119,69,13,1,26,11,32,0,40,2,36,34,3,40,2,0,34,2,65,127,70,4,64,32,0,32,0,40,2,136,1,34,2,65,1,106,54,2,136,1,32,3,32,2,54,2,0,11,32,1,32,2,54,2,0,32,1,32,3,47,1,12,59,1,4,2,64,32,3,47,1,4,34,2,32,0,40,2,52,79,4,64,32,0,40,2,64,33,2,32,0,40,2,60,33,4,12,1,11,32,0,40,2,48,32,2,65,12,108,106,34,4,40,2,4,33,2,32,4,65,127,54,2,4,32,4,40,2,0,33,4,32,0,32,0,40,2,76,65,1,106,54,2,76,11,32,1,32,2,59,1,6,32,1,32,4,54,2,8,32,0,40,2,40,65,4,116,65,16,107,34,1,4,64,32,3,32,3,65,16,106,32,1,252,10,0,0,11,32,0,32,0,40,2,40,65,1,107,54,2,40,65,1,11,11,87,1,3,127,2,64,2,64,32,2,40,2,0,34,3,32,2,40,2,4,34,4,114,69,4,64,32,2,66,127,55,2,0,12,1,11,32,1,40,2,0,34,5,32,3,75,13,1,32,3,32,5,71,13,0,32,1,40,2,4,32,4,75,13,1,11,32,0,32,1,41,2,0,55,2,112,32,0,32,2,41,2,0,55,2,120,11,11,87,1,3,127,2,64,2,64,32,2,40,2,0,34,3,32,2,40,2,4,34,4,114,69,4,64,32,2,66,127,55,2,0,12,1,11,32,1,40,2,0,34,5,32,3,75,13,1,32,3,32,5,71,13,0,32,1,40,2,4,32,4,75,13,1,11,32,0,32,1,41,2,0,55,2,88,32,0,32,2,41,2,0,55,2,96,11,11,102,1,3,127,32,0,40,2,76,34,3,4,64,3,64,32,0,40,2,72,32,2,65,6,108,106,34,4,47,1,2,32,1,70,4,64,32,3,32,2,65,127,115,106,65,6,108,34,3,4,64,32,4,32,4,65,6,106,32,3,252,10,0,0,11,32,0,32,0,40,2,76,65,1,107,34,3,54,2,76,32,2,65,1,107,33,2,11,32,2,65,1,106,34,2,32,3,73,13,0,11,11,11,171,2,1,4,127,2,64,32,0,40,2,16,34,4,69,13,0,32,0,40,2,12,33,5,3,64,2,64,32,2,32,5,32,3,65,3,116,106,34,6,40,2,4,70,4,64,32,0,40,2,0,32,6,40,2,0,106,32,1,32,2,16,27,69,13,1,11,32,3,65,1,106,34,3,32,4,71,13,1,12,2,11,11,32,3,65,127,70,13,0,32,0,40,2,64,34,4,69,13,0,32,0,40,2,60,33,5,65,0,33,2,32,3,65,255,255,3,113,33,1,3,64,2,64,32,1,32,5,32,2,65,20,108,106,34,0,47,1,6,70,4,64,32,0,65,255,255,3,59,1,6,32,0,47,1,8,34,3,65,255,255,3,70,13,1,32,0,65,255,255,3,59,1,8,32,0,32,3,59,1,6,32,0,47,1,10,34,3,65,255,255,3,70,13,1,32,0,65,255,255,3,59,1,10,32,0,32,3,59,1,8,12,1,11,32,1,32,0,47,1,8,71,4,64,32,0,47,1,10,32,1,71,13,1,32,0,65,255,255,3,59,1,10,12,1,11,32,0,65,255,255,3,59,1,8,32,0,47,1,10,34,3,65,255,255,3,70,13,0,32,0,65,255,255,3,59,1,10,32,0,32,3,59,1,8,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,11,133,1,1,4,127,32,0,40,2,112,34,5,69,4,64,65,0,15,11,2,127,65,127,32,0,40,2,108,34,3,40,2,0,32,1,75,13,0,26,2,64,3,64,32,5,32,2,34,4,65,1,106,34,2,71,4,64,32,1,32,3,32,2,65,3,116,106,40,2,0,79,13,1,12,2,11,11,32,3,32,4,65,3,116,106,47,1,4,12,1,11,32,3,32,4,65,3,116,106,47,1,4,11,34,2,32,0,40,2,64,79,4,64,65,0,15,11,32,0,40,2,60,32,2,65,20,108,106,45,0,18,65,7,118,11,35,1,1,127,32,0,40,2,100,32,1,75,4,127,32,0,40,2,96,32,1,65,28,108,106,45,0,24,5,65,0,11,65,1,113,11,80,1,3,127,32,0,40,2,76,34,2,69,4,64,65,1,15,11,32,0,40,2,72,33,3,65,0,33,0,3,64,2,64,32,1,32,3,32,0,65,6,108,106,34,4,47,1,2,71,13,0,32,4,45,0,4,65,1,70,13,0,65,0,15,11,32,0,65,1,106,34,0,32,2,71,13,0,11,65,1,11,16,0,32,0,40,2,96,32,1,65,28,108,106,40,2,20,11,16,0,32,0,40,2,96,32,1,65,28,108,106,40,2,16,11,54,1,1,127,32,0,40,2,96,32,1,65,28,108,106,34,1,40,2,8,33,3,32,2,32,1,40,2,12,34,1,54,2,0,32,1,69,4,64,65,0,15,11,32,0,40,2,84,32,3,65,3,116,106,11,45,1,1,127,32,0,40,2,36,32,1,65,255,255,3,113,65,3,116,106,34,1,40,2,0,33,3,32,0,40,2,24,32,2,32,1,40,2,4,54,2,0,32,3,106,11,47,1,1,127,32,2,65,255,255,3,113,34,2,32,0,40,2,48,32,1,65,12,108,106,34,0,40,2,4,73,4,127,32,0,40,2,0,32,2,106,45,0,0,5,65,0,11,11,45,1,1,127,32,0,40,2,12,32,1,65,255,255,3,113,65,3,116,106,34,1,40,2,0,33,3,32,0,40,2,0,32,2,32,1,40,2,4,54,2,0,32,3,106,11,7,0,32,0,40,2,40,11,7,0,32,0,40,2,16,11,7,0,32,0,40,2,100,11,132,88,2,27,127,1,126,35,0,65,128,1,107,34,7,36,0,2,64,2,64,32,0,4,64,32,0,40,2,0,65,16,107,65,124,75,13,1,11,32,4,65,6,54,2,0,12,1,11,65,164,1,35,7,34,5,40,2,0,17,0,0,34,6,65,0,65,156,1,252,11,0,32,6,65,0,54,2,160,1,32,6,32,0,54,2,156,1,32,6,65,16,32,5,40,2,0,17,0,0,34,0,54,2,120,32,6,65,8,54,2,128,1,32,6,32,6,40,2,124,34,5,65,1,106,54,2,124,32,0,32,5,65,1,116,106,65,0,59,1,0,32,7,66,0,55,2,40,32,7,32,1,32,2,106,54,2,36,32,7,32,1,54,2,32,32,7,32,1,54,2,28,32,7,65,28,106,34,0,16,12,26,32,0,16,13,2,64,32,7,40,2,28,34,10,32,7,40,2,36,73,4,64,3,64,32,6,40,2,96,33,1,32,6,40,2,88,33,5,32,6,40,2,64,33,0,2,64,32,6,40,2,100,34,8,65,1,106,34,2,32,6,40,2,104,34,11,77,4,64,32,8,33,14,12,1,11,65,8,32,11,65,1,116,34,11,32,2,32,2,32,11,73,27,34,2,32,2,65,8,77,27,34,11,65,28,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,104,32,6,40,2,100,34,14,65,1,106,33,2,32,7,40,2,28,33,10,11,32,6,32,2,54,2,100,32,6,32,1,54,2,96,32,7,65,0,58,0,26,32,7,65,0,59,1,24,32,7,40,2,32,33,2,32,1,32,14,65,28,108,106,34,1,65,0,58,0,24,32,1,65,0,54,2,20,32,1,65,0,54,2,12,32,1,32,5,54,2,8,32,1,65,0,54,2,4,32,1,32,0,54,2,0,32,1,32,10,32,2,107,54,2,16,32,1,32,7,47,1,24,59,0,25,32,1,32,7,45,0,26,58,0,27,32,7,65,0,54,2,20,32,7,66,0,55,2,12,32,4,32,6,32,7,65,28,106,65,0,65,0,32,7,65,12,106,16,31,54,2,0,32,6,40,2,60,33,1,32,6,32,6,40,2,64,34,10,65,1,106,34,2,32,6,40,2,68,34,11,75,4,127,65,8,32,11,65,1,116,34,11,32,2,32,2,32,11,73,27,34,2,32,2,65,8,77,27,34,11,65,20,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,68,32,6,40,2,64,34,10,65,1,106,5,32,2,11,54,2,64,32,6,32,1,54,2,60,32,7,65,255,255,3,59,1,52,32,7,65,127,54,2,48,32,1,32,10,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,7,40,2,48,54,1,6,32,1,32,7,47,1,52,59,1,10,32,1,66,255,255,255,255,15,55,1,12,32,6,40,2,96,32,6,40,2,100,65,28,108,106,34,2,65,24,107,34,18,32,6,40,2,64,32,0,107,54,2,0,32,2,65,16,107,32,6,40,2,88,32,5,107,54,2,0,32,2,65,8,107,32,7,40,2,28,32,7,40,2,32,107,34,1,54,2,0,32,4,40,2,0,34,5,4,64,32,5,65,127,70,4,64,32,4,65,1,54,2,0,11,32,3,32,1,54,2,0,32,7,40,2,12,34,0,69,13,3,32,0,35,8,40,2,0,17,2,0,12,3,11,32,6,40,2,48,33,1,32,2,65,28,107,32,6,32,6,40,2,52,34,10,65,1,106,34,9,32,6,40,2,56,34,5,75,4,127,65,8,32,5,65,1,116,34,5,32,9,32,5,32,9,75,27,34,5,32,5,65,8,77,27,34,11,65,12,108,33,5,2,127,32,1,4,64,32,1,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,1,32,6,32,11,54,2,56,32,6,40,2,52,34,10,65,1,106,5,32,9,11,54,2,52,32,6,32,1,54,2,48,32,1,32,10,65,12,108,106,34,1,32,7,41,2,12,55,2,0,32,1,32,7,40,2,20,54,2,8,65,255,255,3,33,9,3,64,2,127,2,64,32,6,40,2,60,34,2,32,0,65,20,108,106,34,1,47,1,0,13,0,32,1,47,1,12,13,0,32,1,47,1,4,13,0,32,2,32,0,65,1,106,34,12,65,20,108,106,34,15,47,1,0,69,13,0,32,15,47,1,12,65,1,71,13,0,32,15,45,0,18,65,2,113,13,0,32,1,47,1,14,12,1,11,32,1,33,15,32,0,33,12,32,9,11,33,16,32,6,40,2,64,33,1,32,15,47,1,12,34,5,69,33,11,32,12,33,0,2,64,3,64,32,0,65,1,106,34,0,32,1,79,13,1,32,2,32,0,65,20,108,106,34,13,45,0,18,65,16,113,13,1,32,13,47,1,12,32,5,71,13,0,11,65,0,33,11,11,32,15,47,1,0,33,13,2,64,32,6,40,2,76,34,5,32,6,47,1,160,1,34,0,107,34,1,69,4,64,32,6,40,2,72,33,9,12,1,11,32,6,40,2,72,33,9,32,1,65,1,71,4,64,3,64,32,1,65,1,118,34,17,32,0,106,34,10,32,0,32,13,32,2,32,9,32,10,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,27,33,0,32,1,32,17,107,34,1,65,1,75,13,0,11,11,32,0,32,13,32,2,32,9,32,0,65,6,108,106,47,1,0,65,20,108,106,47,1,0,75,106,33,0,11,2,64,32,0,32,5,79,13,0,3,64,32,2,32,9,32,0,65,6,108,106,34,1,47,1,0,65,20,108,106,47,1,0,32,13,71,13,1,32,1,47,1,2,32,8,65,255,255,3,113,79,13,1,32,0,65,1,106,34,0,32,5,71,13,0,11,32,5,33,0,11,32,5,65,1,106,34,1,32,6,40,2,80,75,4,64,32,1,65,6,108,33,2,2,127,32,9,4,64,32,9,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,9,32,6,32,1,54,2,80,32,6,40,2,76,33,5,11,32,0,65,6,108,33,1,2,64,32,0,32,5,79,13,0,32,5,32,0,107,65,6,108,34,0,69,13,0,32,1,32,9,106,34,2,65,6,106,32,2,32,0,252,10,0,0,11,32,1,32,9,106,34,0,65,0,58,0,5,32,0,32,11,58,0,4,32,0,32,8,59,0,2,32,0,32,12,59,0,0,32,6,32,9,54,2,72,32,6,32,6,40,2,76,65,1,106,54,2,76,32,15,47,1,0,69,4,64,32,6,32,6,47,1,160,1,65,1,106,59,1,160,1,11,32,15,47,1,14,34,0,65,255,255,3,71,4,64,32,16,33,9,12,1,11,65,255,255,3,33,9,32,16,65,255,255,3,113,34,0,65,255,255,3,71,13,0,11,40,2,0,34,0,32,0,32,18,40,2,0,106,65,1,107,34,11,73,4,64,32,6,40,2,60,33,1,3,64,2,64,32,1,32,0,65,20,108,34,16,106,34,2,45,0,18,65,8,113,69,13,0,32,2,47,1,14,34,8,65,255,255,3,70,13,0,32,0,32,8,77,13,0,32,1,32,8,65,20,108,106,34,2,47,1,14,34,5,65,255,255,3,70,13,0,32,5,32,8,77,13,0,32,5,32,11,79,13,0,32,6,40,2,64,33,5,32,7,32,2,41,1,0,55,3,48,32,7,32,2,41,1,6,55,1,54,32,2,47,1,12,33,13,32,2,40,1,16,33,2,2,64,32,5,65,1,106,34,14,32,6,40,2,68,34,18,77,4,64,32,5,33,15,12,1,11,32,1,65,8,32,18,65,1,116,34,1,32,14,32,1,32,14,75,27,34,1,32,1,65,8,77,27,34,18,65,20,108,35,6,40,2,0,17,1,0,33,1,32,6,32,18,54,2,68,32,6,40,2,64,34,15,65,1,106,33,14,11,32,6,32,14,54,2,64,32,6,32,1,54,2,60,32,1,32,15,65,20,108,106,34,1,32,7,41,3,48,55,1,0,32,7,41,1,54,33,32,32,1,32,2,54,1,16,32,1,65,255,255,3,59,1,14,32,1,32,32,55,1,6,32,7,65,255,255,3,59,1,8,32,7,65,127,54,2,4,32,6,40,2,60,33,1,32,6,32,6,40,2,64,34,14,65,1,106,34,2,32,6,40,2,68,34,18,75,4,127,65,8,32,18,65,1,116,34,18,32,2,32,2,32,18,73,27,34,2,32,2,65,8,77,27,34,18,65,20,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,6,32,18,54,2,68,32,6,40,2,64,34,14,65,1,106,5,32,2,11,54,2,64,32,6,32,1,54,2,60,32,1,32,14,65,20,108,106,34,1,65,0,54,1,2,32,1,65,0,59,1,0,32,1,32,7,40,2,4,54,1,6,32,1,32,7,47,1,8,59,1,10,32,1,65,128,128,192,0,54,1,16,32,1,32,8,65,1,106,59,1,14,32,1,32,13,59,1,12,32,6,40,2,60,34,1,32,16,106,32,5,59,1,14,11,32,0,65,1,106,34,0,32,11,71,13,0,11,11,32,7,40,2,28,34,10,32,7,40,2,36,73,13,0,11,11,65,0,33,18,2,64,32,6,40,2,76,34,2,69,4,64,12,1,11,65,0,33,0,65,0,33,9,3,64,2,64,32,6,40,2,72,32,0,65,6,108,106,34,1,45,0,4,13,0,32,6,40,2,60,32,1,47,1,0,65,20,108,106,47,1,0,69,13,0,2,64,32,25,65,1,106,34,1,32,9,77,13,0,65,8,32,9,65,1,116,34,2,32,1,32,1,32,2,73,27,34,2,32,2,65,8,77,27,34,9,65,1,116,33,2,32,23,4,64,32,23,32,2,35,6,40,2,0,17,1,0,33,23,12,1,11,32,2,35,7,40,2,0,17,0,0,33,23,11,32,23,32,25,65,1,116,106,32,0,59,1,0,32,6,40,2,76,33,2,32,1,33,25,11,32,0,65,1,106,34,0,32,2,73,13,0,11,11,2,64,2,64,2,64,32,6,40,2,64,69,4,64,65,1,33,30,12,1,11,65,0,33,16,65,0,33,12,65,0,33,15,3,64,2,127,32,6,40,2,60,32,18,65,20,108,106,34,5,47,1,12,34,8,65,255,255,3,70,4,64,32,5,32,5,47,1,18,65,128,3,114,59,1,18,32,18,65,1,106,12,1,11,32,5,32,5,47,1,18,34,11,65,191,127,113,65,192,0,65,0,32,5,47,1,6,65,255,255,3,71,27,114,34,14,59,1,18,2,64,32,18,65,1,106,34,0,32,6,40,2,64,34,1,79,13,0,32,6,40,2,60,32,0,65,20,108,106,34,2,47,1,12,34,13,65,255,255,3,71,32,8,32,13,73,113,33,13,2,64,2,64,2,64,2,64,32,5,47,1,0,34,19,4,64,32,13,69,13,5,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,11,65,192,0,114,59,1,18,11,32,2,32,2,47,1,18,65,128,3,114,59,1,18,32,18,65,2,106,34,10,32,6,40,2,64,34,1,79,13,3,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,8,65,255,255,3,70,13,3,32,8,32,5,47,1,12,75,13,1,12,2,11,32,13,69,13,4,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,11,65,192,0,114,34,14,59,1,18,32,6,40,2,64,33,1,11,32,18,65,2,106,34,10,32,1,79,13,3,3,64,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,11,65,255,255,3,70,13,2,32,8,32,11,79,13,2,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,14,65,192,0,114,34,14,59,1,18,32,6,40,2,64,33,1,11,32,10,65,1,106,34,10,32,1,73,13,0,11,12,1,11,3,64,32,2,47,1,6,65,255,255,3,71,4,64,32,5,32,5,47,1,18,65,192,0,114,59,1,18,11,32,2,32,2,47,1,18,65,128,3,114,59,1,18,32,10,65,1,106,34,10,32,6,40,2,64,34,1,79,13,1,32,6,40,2,60,32,10,65,20,108,106,34,2,47,1,12,34,8,65,255,255,3,70,13,1,32,8,32,5,47,1,12,75,13,0,11,11,32,19,69,13,1,11,2,64,32,12,65,1,106,34,1,32,15,77,13,0,65,8,32,15,65,1,116,34,2,32,1,32,1,32,2,73,27,34,2,32,2,65,8,77,27,34,15,65,2,116,33,2,32,16,4,64,32,16,32,2,35,6,40,2,0,17,1,0,33,16,12,1,11,32,2,35,7,40,2,0,17,0,0,33,16,11,32,16,32,12,65,2,116,106,32,18,54,2,0,32,1,33,12,32,0,12,2,11,32,5,47,1,2,34,2,69,13,0,32,6,40,2,156,1,34,11,40,2,0,65,15,73,13,0,65,0,33,8,2,127,65,0,32,2,65,253,255,3,75,13,0,26,65,0,32,11,40,2,72,32,2,65,3,108,106,45,0,2,65,1,113,69,13,0,26,32,11,40,2,160,1,32,11,40,2,156,1,32,2,65,2,116,106,34,2,47,1,0,65,1,116,106,33,8,32,2,47,1,2,11,33,14,32,0,32,1,79,13,0,32,6,40,2,60,33,11,32,0,33,10,3,64,32,11,32,10,65,20,108,106,34,13,47,1,12,34,2,65,255,255,3,70,13,1,32,2,32,5,47,1,12,34,18,77,13,1,2,64,32,18,65,1,106,32,2,71,13,0,32,13,47,1,0,34,13,69,13,0,65,0,33,2,32,14,4,64,3,64,32,13,32,8,32,2,65,1,116,106,47,1,0,70,13,2,32,2,65,1,106,34,2,32,14,71,13,0,11,11,32,6,40,2,112,34,13,69,13,0,32,6,40,2,108,33,18,65,0,33,2,3,64,32,18,32,2,65,3,116,106,34,19,47,1,4,32,10,73,4,64,32,13,32,2,65,1,106,34,2,71,13,1,12,2,11,11,32,3,32,19,40,2,0,54,2,0,65,0,33,19,32,16,33,18,12,7,11,32,10,65,1,106,34,10,32,1,71,13,0,11,11,32,0,11,33,18,32,18,32,6,40,2,64,73,13,0,11,32,12,69,4,64,65,1,33,30,32,16,33,18,12,1,11,32,7,65,64,107,33,11,65,0,33,14,65,0,33,13,65,0,33,5,3,64,32,6,40,2,60,32,16,32,26,65,2,116,106,40,2,0,65,20,108,106,47,1,0,33,8,65,0,33,0,32,7,65,0,59,1,72,32,11,66,0,55,3,0,32,7,66,0,55,3,56,32,7,66,0,55,3,48,32,13,34,1,33,2,2,64,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,8,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,8,32,14,32,0,65,28,108,106,47,1,0,34,1,70,13,1,32,0,32,1,32,8,73,106,33,2,11,32,5,32,13,65,1,106,34,0,73,4,64,32,0,65,28,108,33,1,2,127,32,14,4,64,32,14,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,14,32,0,33,5,11,32,2,65,28,108,33,1,2,64,32,2,32,13,79,13,0,32,13,32,2,107,65,28,108,34,2,69,13,0,32,1,32,14,106,34,13,65,28,106,32,13,32,2,252,10,0,0,11,32,1,32,14,106,34,1,32,8,59,0,0,32,1,32,7,41,3,48,55,0,2,32,1,32,7,41,3,56,55,0,10,32,1,32,11,41,3,0,55,0,18,32,1,32,7,47,1,72,59,0,26,32,0,33,13,11,32,26,65,1,106,34,26,32,12,71,13,0,11,32,16,33,18,32,12,33,26,12,1,11,65,0,33,5,65,0,33,13,65,0,33,14,11,32,6,40,2,156,1,34,8,47,1,4,32,8,47,1,12,34,10,75,4,64,32,7,65,64,107,33,11,3,64,2,64,32,10,65,254,255,3,71,4,64,32,8,40,2,72,32,10,65,3,108,106,45,0,0,65,1,113,13,1,11,65,0,33,0,32,7,65,0,59,1,72,32,11,66,0,55,3,0,32,7,66,0,55,3,56,32,7,66,0,55,3,48,32,13,34,1,33,2,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,10,32,14,32,0,65,28,108,106,47,1,0,73,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,10,32,14,32,0,65,28,108,106,47,1,0,34,1,70,13,1,32,0,32,1,32,10,73,106,33,2,11,32,5,32,13,65,1,106,34,0,73,4,64,32,0,65,28,108,33,1,2,127,32,14,4,64,32,14,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,14,32,0,33,5,11,32,2,65,28,108,33,1,2,64,32,2,32,13,79,13,0,32,13,32,2,107,65,28,108,34,2,69,13,0,32,1,32,14,106,34,8,65,28,106,32,8,32,2,252,10,0,0,11,32,1,32,14,106,34,1,32,10,59,0,0,32,1,32,7,47,1,72,59,0,26,32,1,32,11,41,3,0,55,0,18,32,1,32,7,41,3,56,55,0,10,32,1,32,7,41,3,48,55,0,2,32,6,40,2,156,1,33,8,32,0,33,13,11,32,10,65,1,106,34,10,32,8,47,1,4,73,13,0,11,11,32,8,40,2,20,65,129,2,108,65,2,35,9,40,2,0,17,1,0,33,28,32,6,40,2,156,1,34,20,47,1,20,65,254,255,3,113,4,64,65,1,33,15,3,64,2,127,32,20,40,2,24,34,29,32,15,77,4,64,32,20,40,2,44,32,20,40,2,48,32,15,32,29,107,65,2,116,106,40,2,0,65,1,116,106,34,8,65,2,106,33,27,32,8,47,1,0,12,1,11,32,20,40,2,40,32,20,40,2,4,32,15,108,65,1,116,106,65,2,107,33,8,65,0,33,27,65,0,11,33,24,65,0,33,10,65,255,255,3,33,16,65,0,33,11,65,0,33,19,3,64,2,64,2,64,2,64,2,64,2,64,2,64,32,15,32,29,73,4,64,32,20,40,2,4,33,1,3,64,32,1,32,16,65,1,106,34,16,65,255,255,3,113,34,0,77,13,7,32,8,47,1,2,33,5,32,8,65,2,106,34,17,33,8,32,5,69,13,0,11,12,1,11,32,8,65,2,106,34,17,32,27,71,13,1,32,24,65,255,255,3,113,69,13,5,32,8,65,6,106,34,17,32,8,47,1,4,65,1,116,106,33,27,32,24,65,1,107,33,24,32,8,47,1,2,33,5,32,8,47,1,6,34,16,33,0,11,32,20,40,2,12,32,0,75,13,1,32,17,33,8,12,3,11,32,17,47,1,0,33,16,12,1,11,32,20,40,2,52,32,5,65,255,255,3,113,65,3,116,106,34,0,65,8,106,33,19,32,0,45,0,0,33,10,65,0,33,11,11,32,10,69,4,64,32,17,33,8,32,11,33,5,12,1,11,65,0,33,12,3,64,2,64,2,64,2,64,32,19,32,12,65,3,116,106,34,21,45,0,0,14,2,1,0,2,11,32,6,40,2,156,1,34,2,40,2,76,32,21,47,1,2,34,1,65,1,116,106,34,8,65,2,106,33,5,65,0,33,0,2,64,32,2,40,2,80,34,2,47,1,0,34,9,65,1,107,65,255,255,3,113,32,1,79,13,0,3,64,2,64,32,0,65,2,106,33,22,32,2,32,0,65,1,116,106,47,1,2,33,0,32,9,65,255,255,3,113,32,1,70,13,0,32,1,32,2,32,0,32,22,106,34,0,65,1,116,106,47,1,0,34,9,65,1,107,65,255,255,3,113,75,13,1,12,2,11,11,32,2,32,22,65,1,116,106,34,8,32,8,32,0,65,1,116,106,34,5,79,13,2,11,32,13,69,13,1,3,64,32,8,47,1,0,33,2,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,2,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,11,2,64,32,14,32,0,65,28,108,106,34,0,47,1,0,32,2,71,13,0,32,0,40,2,16,33,1,32,0,40,2,20,34,2,4,64,32,15,32,1,32,2,65,6,108,106,65,6,107,47,1,0,70,13,1,11,32,0,32,2,65,1,106,34,9,32,0,40,2,24,34,22,75,4,127,65,8,32,22,65,1,116,34,2,32,9,32,2,32,9,75,27,34,2,32,2,65,8,77,27,34,9,65,6,108,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,9,54,2,24,32,0,40,2,20,34,2,65,1,106,5,32,9,11,54,2,20,32,0,32,1,54,2,16,32,21,45,0,1,33,9,32,21,47,1,6,33,22,32,1,32,2,65,6,108,106,34,0,65,0,58,0,5,32,0,32,22,59,1,2,32,0,32,15,59,1,0,32,0,32,9,65,128,1,114,58,0,4,11,32,8,65,2,106,34,8,32,5,73,13,0,11,12,1,11,32,21,45,0,4,13,0,32,28,32,21,47,1,2,65,130,4,108,106,34,0,47,1,0,34,1,4,64,32,1,65,255,1,75,13,1,32,15,32,0,32,1,65,1,116,106,47,1,0,70,13,1,11,32,0,32,1,65,1,106,34,1,59,1,0,32,0,32,1,65,255,255,3,113,65,1,116,106,32,15,59,1,0,11,32,12,65,1,106,34,12,32,10,71,13,0,11,32,17,33,8,12,2,11,65,0,33,10,65,0,33,11,32,5,65,255,255,3,113,34,0,69,13,1,2,64,32,0,32,15,70,13,0,32,28,32,0,65,130,4,108,106,34,0,47,1,0,34,1,4,64,32,1,65,255,1,75,13,1,32,15,32,0,32,1,65,1,116,106,47,1,0,70,13,1,11,32,0,32,1,65,1,106,34,1,59,1,0,32,0,32,1,65,255,255,3,113,65,1,116,106,32,15,59,1,0,11,32,6,40,2,156,1,34,1,40,2,0,65,14,79,4,64,32,5,33,11,32,15,32,1,40,2,132,1,32,15,65,1,116,106,47,1,0,71,13,2,11,32,1,40,2,76,32,16,65,255,255,3,113,34,2,65,1,116,106,34,17,65,2,106,33,12,65,0,33,0,2,64,32,1,40,2,80,34,1,47,1,0,34,9,65,1,107,65,255,255,3,113,32,2,79,13,0,3,64,2,64,32,0,65,2,106,33,21,32,1,32,0,65,1,116,106,47,1,2,33,0,32,9,65,255,255,3,113,32,2,70,13,0,32,2,32,1,32,0,32,21,106,34,0,65,1,116,106,47,1,0,34,9,65,1,107,65,255,255,3,113,75,13,1,12,2,11,11,32,5,33,11,32,1,32,21,65,1,116,106,34,17,32,17,32,0,65,1,116,106,34,12,79,13,2,11,32,5,33,11,32,13,69,13,1,3,64,32,17,47,1,0,33,2,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,5,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,2,75,27,33,0,32,1,32,5,107,34,1,65,1,75,13,0,11,11,2,64,32,14,32,0,65,28,108,106,34,0,47,1,0,32,2,71,13,0,32,0,40,2,4,33,1,32,0,40,2,8,34,2,4,64,32,15,32,1,32,2,65,1,116,106,65,2,107,47,1,0,70,13,1,11,32,0,32,2,65,1,106,34,9,32,0,40,2,12,34,5,75,4,127,65,8,32,5,65,1,116,34,2,32,9,32,2,32,9,75,27,34,2,32,2,65,8,77,27,34,5,65,1,116,33,2,2,127,32,1,4,64,32,1,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,1,32,0,32,5,54,2,12,32,0,40,2,8,34,2,65,1,106,5,32,9,11,54,2,8,32,0,32,1,54,2,4,32,1,32,2,65,1,116,106,32,15,59,1,0,11,32,17,65,2,106,34,17,32,12,73,13,0,11,12,1,11,11,32,15,65,1,106,34,15,32,6,40,2,156,1,34,20,47,1,20,73,13,0,11,11,2,64,32,13,69,4,64,65,0,33,13,65,0,33,20,12,1,11,65,0,33,24,65,0,33,11,65,0,33,20,3,64,2,64,32,14,32,24,65,28,108,106,34,8,40,2,20,34,1,69,4,64,32,8,40,2,4,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,8,65,0,54,2,12,32,8,66,0,55,2,4,32,13,32,24,65,127,115,106,65,28,108,34,0,4,64,32,8,32,8,65,28,106,32,0,252,10,0,0,11,32,13,65,1,107,33,13,12,1,11,32,8,40,2,16,33,2,2,64,32,1,32,11,77,4,64,32,1,65,6,108,33,0,12,1,11,32,1,65,6,108,33,0,2,127,32,20,4,64,32,20,32,0,35,6,40,2,0,17,1,0,12,1,11,32,0,35,7,40,2,0,17,0,0,11,33,20,32,1,33,11,11,32,0,4,64,32,20,32,2,32,0,252,10,0,0,11,3,64,2,64,32,20,32,1,65,1,107,34,19,65,6,108,106,34,0,45,0,4,65,255,0,113,34,1,65,2,73,4,64,32,19,33,1,12,1,11,32,28,32,0,47,1,0,65,130,4,108,106,34,2,47,1,0,34,21,69,4,64,32,19,33,1,12,1,11,32,0,47,1,2,33,5,32,2,65,2,106,33,27,32,1,65,1,107,33,12,65,0,33,17,3,64,32,27,32,17,65,1,116,106,47,1,0,33,9,32,8,40,2,16,33,10,65,0,33,2,32,8,40,2,20,34,16,33,0,2,64,2,64,2,64,2,64,32,16,34,1,14,2,2,1,0,11,3,64,2,64,2,64,32,9,32,10,32,0,65,1,118,34,29,32,2,106,34,1,65,6,108,106,34,15,47,1,0,34,22,75,13,0,32,9,32,22,73,13,1,32,15,45,0,4,34,22,65,255,0,113,34,31,32,12,73,13,0,32,22,192,65,0,72,13,1,32,12,32,31,73,13,1,32,15,47,1,2,32,5,75,13,1,11,32,1,33,2,11,32,0,32,29,107,34,0,65,1,75,13,0,11,11,2,64,2,64,32,9,32,10,32,2,65,6,108,106,34,0,47,1,0,34,1,75,13,0,32,1,32,9,75,4,64,32,2,33,1,12,3,11,32,0,45,0,4,34,1,65,255,0,113,34,15,32,12,73,13,0,32,1,192,65,0,72,4,64,32,2,33,1,12,3,11,32,12,32,15,73,4,64,32,2,33,1,12,3,11,32,5,32,0,47,1,2,34,0,77,13,1,11,32,2,65,1,106,33,1,12,1,11,32,2,33,1,32,0,32,5,75,13,0,32,19,33,1,12,1,11,32,16,65,1,106,34,0,32,8,40,2,24,75,4,64,32,0,65,6,108,33,2,2,127,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,10,32,8,32,0,54,2,24,32,8,40,2,20,33,16,11,32,1,65,6,108,33,0,2,64,32,1,32,16,79,13,0,32,16,32,1,107,65,6,108,34,1,69,13,0,32,0,32,10,106,34,2,65,6,106,32,2,32,1,252,10,0,0,11,32,0,32,10,106,34,0,65,0,58,0,5,32,0,32,12,58,0,4,32,0,32,5,59,0,2,32,0,32,9,59,0,0,32,8,32,10,54,2,16,32,8,32,8,40,2,20,65,1,106,54,2,20,2,64,32,19,65,1,106,34,1,32,11,77,13,0,65,8,32,11,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,11,65,6,108,33,0,32,20,4,64,32,20,32,0,35,6,40,2,0,17,1,0,33,20,12,1,11,32,0,35,7,40,2,0,17,0,0,33,20,11,32,20,32,19,65,6,108,106,34,0,65,0,58,0,5,32,0,32,12,58,0,4,32,0,32,5,59,1,2,32,0,32,9,59,1,0,32,1,33,19,11,32,17,65,1,106,34,17,32,21,71,13,0,11,11,32,1,13,0,11,32,24,65,1,106,33,24,11,32,13,32,24,75,13,0,11,11,32,7,65,48,106,65,0,65,204,0,252,11,0,65,1,33,19,2,64,32,30,13,0,65,0,33,11,32,3,2,127,3,64,2,64,2,64,32,6,40,2,60,32,18,32,11,65,2,116,106,47,1,0,34,19,65,20,108,106,34,2,47,1,0,34,8,65,255,255,3,70,13,0,2,64,32,13,4,64,65,0,33,0,32,13,34,1,65,2,79,4,64,3,64,32,0,32,1,65,1,118,34,5,32,0,106,34,0,32,14,32,0,65,28,108,106,47,1,0,32,8,75,27,33,0,32,1,32,5,107,34,1,65,1,75,13,0,11,11,32,14,32,0,65,28,108,106,34,16,47,1,0,32,8,70,13,1,11,32,19,65,1,106,33,5,32,6,40,2,108,33,2,65,0,33,1,2,64,2,64,2,64,32,6,40,2,112,34,0,14,2,2,1,0,11,3,64,32,1,32,0,65,1,118,34,8,32,1,106,34,1,32,5,32,2,32,1,65,3,116,106,47,1,4,73,27,33,1,32,0,32,8,107,34,0,65,1,75,13,0,11,11,32,1,32,5,32,2,32,1,65,3,116,106,47,1,4,34,0,71,32,0,32,19,77,113,106,33,0,11,32,2,32,0,65,3,116,106,12,4,11,32,2,47,1,12,33,17,32,7,40,2,48,33,12,32,7,40,2,84,33,0,32,7,40,2,52,34,2,32,7,40,2,88,34,9,106,34,1,32,7,40,2,92,34,5,75,4,64,32,1,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,1,54,2,92,32,1,33,5,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,9,65,2,116,106,33,9,32,12,4,64,32,2,69,13,1,32,9,32,12,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,9,65,0,32,2,252,11,0,11,32,7,65,0,54,2,52,32,7,40,2,72,33,9,32,5,32,7,40,2,76,34,2,32,1,106,34,12,73,4,64,32,12,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,12,54,2,92,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,1,65,2,116,106,33,1,32,9,4,64,32,2,69,13,1,32,1,32,9,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,1,65,0,32,2,252,11,0,11,32,7,32,0,54,2,84,32,7,32,12,54,2,88,32,7,65,0,54,2,76,32,16,40,2,8,4,64,32,19,65,1,106,33,9,65,0,33,2,3,64,32,16,40,2,4,32,2,65,1,116,106,47,1,0,33,1,2,127,32,7,40,2,88,34,0,4,64,32,7,32,0,65,1,107,34,0,54,2,88,32,7,40,2,84,32,0,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,0,66,0,55,1,4,32,0,32,8,59,1,2,32,0,32,1,59,1,0,32,0,32,8,59,1,68,32,0,32,9,59,1,66,32,0,65,1,59,1,64,32,0,66,0,55,1,12,32,0,66,0,55,1,20,32,0,66,0,55,1,28,32,0,66,0,55,1,36,32,0,66,0,55,1,44,32,0,66,0,55,1,52,32,0,65,0,54,1,60,32,7,40,2,48,33,1,32,7,40,2,52,34,10,65,1,106,34,5,32,7,40,2,56,34,12,75,4,64,65,8,32,12,65,1,116,34,12,32,5,32,5,32,12,73,27,34,12,32,12,65,8,77,27,34,15,65,2,116,33,12,2,127,32,1,4,64,32,1,32,12,35,6,40,2,0,17,1,0,12,1,11,32,12,35,7,40,2,0,17,0,0,11,33,1,32,7,32,15,54,2,56,11,32,7,32,5,54,2,52,32,7,32,1,54,2,48,32,1,32,10,65,2,116,106,32,0,54,2,0,32,2,65,1,106,34,2,32,16,40,2,8,73,13,0,11,11,32,7,65,0,58,0,120,32,6,32,14,32,13,32,7,65,48,106,16,76,32,7,45,0,120,65,1,70,4,64,32,19,65,1,106,34,0,32,6,40,2,64,34,9,79,13,1,3,64,32,6,40,2,60,32,0,65,20,108,106,34,1,47,1,12,34,2,32,17,77,13,2,32,2,65,255,255,3,70,13,2,32,1,47,1,18,34,2,65,16,113,69,4,64,32,1,32,2,65,239,252,3,113,59,1,18,32,6,40,2,64,33,9,11,32,0,65,1,106,34,0,32,9,73,13,0,11,12,1,11,32,7,40,2,100,33,9,32,7,40,2,112,69,13,1,65,0,33,0,32,9,69,13,0,3,64,2,64,32,6,40,2,60,32,7,40,2,96,32,0,65,1,116,106,47,1,0,65,20,108,106,34,1,47,1,12,34,2,65,255,255,3,70,13,0,32,2,32,17,77,13,0,32,1,47,1,18,34,2,65,16,113,13,0,32,1,32,2,65,239,252,3,113,59,1,18,32,7,40,2,100,33,9,11,32,0,65,1,106,34,0,32,9,73,13,0,11,11,65,1,33,19,32,11,65,1,106,34,11,32,26,71,13,1,12,3,11,11,32,9,4,64,32,7,40,2,96,32,9,65,1,116,106,65,2,107,47,1,0,33,19,11,32,6,40,2,108,33,8,65,0,33,0,32,6,40,2,112,34,5,33,1,2,64,2,64,2,64,32,5,34,2,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,8,32,0,65,3,116,106,47,1,4,32,19,65,255,255,3,113,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,0,32,8,32,0,65,3,116,106,47,1,4,32,19,65,255,255,3,113,73,106,33,2,11,32,8,32,2,32,5,65,1,107,32,2,32,5,73,27,65,3,116,106,11,40,2,0,54,2,0,65,0,33,19,11,65,0,33,11,2,64,32,6,40,2,100,69,4,64,65,0,33,17,12,1,11,65,0,33,16,65,0,33,17,3,64,65,0,33,8,2,64,32,6,40,2,96,32,11,65,28,108,106,34,3,40,2,8,34,5,32,5,32,3,40,2,12,106,34,9,79,13,0,3,64,2,64,32,6,40,2,84,32,5,65,3,116,106,34,0,40,2,0,65,1,71,13,0,32,0,40,2,4,33,12,65,0,33,0,32,8,34,1,33,2,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,65,255,255,3,113,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,17,32,0,65,1,116,106,47,1,0,34,1,32,12,65,255,255,3,113,34,2,70,13,1,32,0,32,1,32,2,73,106,33,2,11,32,16,32,8,65,1,106,34,0,73,4,64,32,0,65,1,116,33,1,2,127,32,17,4,64,32,17,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,17,32,0,33,16,11,32,2,65,1,116,33,1,2,64,32,2,32,8,79,13,0,32,8,32,2,107,65,1,116,34,2,69,13,0,32,1,32,17,106,34,8,65,2,106,32,8,32,2,252,10,0,0,11,32,1,32,17,106,32,12,59,0,0,32,0,33,8,11,32,5,65,1,106,34,5,32,9,71,13,0,11,32,3,40,2,0,34,5,32,5,32,3,40,2,4,106,34,3,79,13,0,32,8,69,13,0,32,8,65,1,71,4,64,3,64,65,0,33,0,32,8,33,1,2,64,32,6,40,2,60,32,5,65,20,108,106,34,2,47,1,6,34,12,65,255,255,3,70,13,0,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,2,64,32,17,32,0,65,1,116,106,47,1,0,32,12,70,13,0,65,0,33,0,32,8,33,1,32,2,47,1,8,34,12,65,255,255,3,70,13,1,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,32,17,32,0,65,1,116,106,47,1,0,32,12,70,13,0,65,0,33,0,32,8,33,1,32,2,47,1,10,34,12,65,255,255,3,70,13,1,3,64,32,0,32,1,65,1,118,34,9,32,0,106,34,0,32,17,32,0,65,1,116,106,47,1,0,32,12,75,27,33,0,32,1,32,9,107,34,1,65,1,75,13,0,11,32,17,32,0,65,1,116,106,47,1,0,32,12,71,13,1,11,32,2,32,2,47,1,18,65,255,254,3,113,59,1,18,11,32,5,65,1,106,34,5,32,3,71,13,0,12,2,11,0,11,3,64,2,64,32,6,40,2,60,32,5,65,20,108,106,34,0,47,1,6,34,1,65,255,255,3,70,13,0,2,64,32,1,32,17,47,1,0,34,1,70,13,0,32,0,47,1,8,34,2,65,255,255,3,70,13,1,32,1,32,2,70,13,0,32,0,47,1,10,34,2,65,255,255,3,70,13,1,32,1,32,2,71,13,1,11,32,0,32,0,47,1,18,65,255,254,3,113,59,1,18,11,32,5,65,1,106,34,5,32,3,71,13,0,11,11,32,11,65,1,106,34,11,32,6,40,2,100,73,13,0,11,11,2,64,32,6,40,2,64,69,13,0,3,64,65,1,33,8,32,6,40,2,64,34,2,65,1,107,34,0,69,13,1,3,64,32,2,33,1,2,64,32,6,40,2,60,34,3,32,0,34,2,65,20,108,106,34,5,47,1,12,65,255,255,3,70,13,0,32,5,45,0,18,65,128,1,113,13,0,3,64,2,64,32,3,32,0,65,20,108,106,47,1,14,34,0,65,255,255,3,70,13,0,32,0,32,2,73,13,0,32,3,32,0,65,20,108,106,45,0,18,65,128,1,113,69,13,1,12,2,11,11,32,3,32,1,65,20,108,106,34,1,65,22,107,34,3,47,1,0,34,0,65,16,113,13,0,32,0,65,128,1,113,69,13,0,32,1,65,28,107,47,1,0,65,255,255,3,70,13,0,32,3,32,0,65,239,254,3,113,59,1,0,65,0,33,8,11,32,2,65,1,107,34,0,13,0,11,32,8,65,1,113,69,13,0,11,11,32,7,65,0,58,0,120,32,25,4,64,65,0,33,11,3,64,32,23,32,11,65,1,116,106,47,1,0,32,6,40,2,72,33,12,32,7,40,2,48,33,3,32,7,40,2,84,33,0,32,7,40,2,52,34,2,32,7,40,2,88,34,8,106,34,1,32,7,40,2,92,34,10,75,4,64,32,1,65,2,116,33,5,2,127,32,0,4,64,32,0,32,5,35,6,40,2,0,17,1,0,12,1,11,32,5,35,7,40,2,0,17,0,0,11,33,0,32,7,32,1,54,2,92,32,1,33,10,11,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,8,65,2,116,106,33,5,32,3,4,64,32,2,69,13,1,32,5,32,3,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,5,65,0,32,2,252,11,0,11,32,7,65,0,54,2,52,32,7,40,2,72,33,5,32,10,32,7,40,2,76,34,2,32,1,106,34,3,73,4,64,32,3,65,2,116,33,8,2,127,32,0,4,64,32,0,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,0,32,7,32,3,54,2,92,11,65,6,108,2,64,32,2,69,13,0,32,2,65,2,116,33,2,32,0,32,1,65,2,116,106,33,1,32,5,4,64,32,2,69,13,1,32,1,32,5,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,1,65,0,32,2,252,11,0,11,32,12,106,33,5,32,7,32,0,54,2,84,32,7,32,3,54,2,88,65,0,33,16,32,7,65,0,54,2,76,32,13,4,64,3,64,2,64,2,64,2,64,32,14,32,16,65,28,108,106,34,2,47,1,0,34,0,65,254,255,3,107,14,2,1,2,0,11,32,6,40,2,156,1,40,2,72,32,0,65,3,108,106,34,0,45,0,0,65,1,113,13,1,32,0,45,0,1,65,1,113,13,1,11,32,2,40,2,8,69,13,0,65,0,33,9,3,64,32,2,40,2,4,32,9,65,1,116,106,47,1,0,33,3,32,5,47,1,0,33,8,32,2,47,1,0,33,1,2,127,32,7,40,2,88,34,0,4,64,32,7,32,0,65,1,107,34,0,54,2,88,32,7,40,2,84,32,0,65,2,116,106,40,2,0,12,1,11,65,198,0,35,7,40,2,0,17,0,0,11,34,0,66,0,55,1,4,32,0,32,1,59,1,2,32,0,32,3,59,1,0,32,0,32,1,59,1,68,32,0,32,8,59,1,66,32,0,65,1,59,1,64,32,0,66,0,55,1,12,32,0,66,0,55,1,20,32,0,66,0,55,1,28,32,0,66,0,55,1,36,32,0,66,0,55,1,44,32,0,66,0,55,1,52,32,0,65,0,54,1,60,32,7,40,2,48,33,1,32,7,40,2,52,34,12,65,1,106,34,3,32,7,40,2,56,34,8,75,4,64,65,8,32,8,65,1,116,34,8,32,3,32,3,32,8,73,27,34,8,32,8,65,8,77,27,34,10,65,2,116,33,8,2,127,32,1,4,64,32,1,32,8,35,6,40,2,0,17,1,0,12,1,11,32,8,35,7,40,2,0,17,0,0,11,33,1,32,7,32,10,54,2,56,11,32,7,32,3,54,2,52,32,7,32,1,54,2,48,32,1,32,12,65,2,116,106,32,0,54,2,0,32,9,65,1,106,34,9,32,2,40,2,8,73,13,0,11,11,32,16,65,1,106,34,16,32,13,71,13,0,11,11,32,6,32,14,32,13,32,7,65,48,106,16,76,32,7,40,2,112,34,12,4,64,32,6,40,2,96,32,5,47,1,2,65,28,108,106,65,1,58,0,24,32,6,40,2,144,1,33,10,32,6,40,2,148,1,33,5,65,0,33,15,3,64,32,7,40,2,108,32,15,65,1,116,106,47,1,0,33,3,65,0,33,0,32,5,34,1,33,2,2,64,2,64,2,64,2,64,32,1,14,2,2,1,0,11,3,64,32,0,32,1,65,1,118,34,2,32,0,106,34,0,32,10,32,0,65,1,116,106,47,1,0,32,3,75,27,33,0,32,1,32,2,107,34,1,65,1,75,13,0,11,11,32,3,32,10,32,0,65,1,116,106,47,1,0,34,1,70,13,1,32,0,32,1,32,3,73,106,33,2,11,32,5,65,1,106,34,0,32,6,40,2,152,1,75,4,64,32,0,65,1,116,33,1,2,127,32,10,4,64,32,10,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,10,32,6,32,0,54,2,152,1,32,6,40,2,148,1,33,5,11,32,2,65,1,116,33,0,2,64,32,2,32,5,79,13,0,32,5,32,2,107,65,1,116,34,1,69,13,0,32,0,32,10,106,34,2,65,2,106,32,2,32,1,252,10,0,0,11,32,0,32,10,106,32,3,59,0,0,32,6,32,10,54,2,144,1,32,6,32,6,40,2,148,1,65,1,106,34,5,54,2,148,1,32,7,40,2,112,33,12,11,32,15,65,1,106,34,15,32,12,73,13,0,11,11,32,11,65,1,106,34,11,32,25,71,13,0,11,11,2,64,2,64,32,13,4,64,65,0,33,1,3,64,32,14,32,1,65,28,108,106,34,0,40,2,4,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,12,32,0,66,0,55,2,4,32,0,40,2,16,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,1,65,1,106,34,1,32,13,71,13,0,11,12,1,11,32,14,69,13,1,11,32,14,35,8,40,2,0,17,2,0,11,32,7,40,2,48,33,1,2,64,2,64,32,7,40,2,52,34,2,4,64,65,0,33,9,65,0,33,0,32,2,65,4,79,4,64,32,2,65,124,113,33,8,65,0,33,14,3,64,32,1,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,14,65,4,106,34,14,32,8,71,13,0,11,11,32,2,65,3,113,34,2,69,13,1,3,64,32,1,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,9,65,1,106,34,9,32,2,71,13,0,11,12,1,11,32,1,69,13,1,11,32,1,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,48,32,7,40,2,60,33,2,2,64,2,64,32,7,40,2,64,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,60,32,7,40,2,72,33,2,2,64,2,64,32,7,40,2,76,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,65,0,33,0,32,7,65,0,54,2,72,32,7,40,2,84,33,2,2,64,2,64,32,7,40,2,88,34,1,4,64,32,1,65,4,79,4,64,32,1,65,124,113,33,8,65,0,33,10,3,64,32,2,32,0,65,2,116,106,34,3,40,2,0,35,8,34,5,40,2,0,17,2,0,32,3,40,2,4,32,5,40,2,0,17,2,0,32,3,40,2,8,32,5,40,2,0,17,2,0,32,3,40,2,12,32,5,40,2,0,17,2,0,32,0,65,4,106,33,0,32,10,65,4,106,34,10,32,8,71,13,0,11,11,32,1,65,3,113,34,3,69,13,1,65,0,33,1,3,64,32,2,32,0,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,0,65,1,106,33,0,32,1,65,1,106,34,1,32,3,71,13,0,11,12,1,11,32,2,69,13,1,11,32,2,35,8,40,2,0,17,2,0,11,32,7,40,2,96,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,108,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,20,4,64,32,20,35,8,40,2,0,17,2,0,11,32,17,4,64,32,17,35,8,40,2,0,17,2,0,11,32,28,35,8,40,2,0,17,2,0,11,32,23,4,64,32,23,35,8,40,2,0,17,2,0,11,32,18,4,64,32,18,35,8,40,2,0,17,2,0,11,32,19,69,4,64,32,4,65,5,54,2,0,12,1,11,32,6,40,2,132,1,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,6,65,0,54,2,140,1,32,6,66,0,55,2,132,1,12,1,11,32,6,16,75,65,0,33,6,11,32,7,65,128,1,106,36,0,32,6,11,168,2,1,9,127,32,1,40,2,16,34,6,32,0,40,2,4,75,4,64,65,1,15,11,32,1,40,2,0,34,3,47,1,0,33,9,32,0,40,2,0,34,4,40,2,0,33,5,32,4,40,2,4,34,7,33,2,2,64,3,64,32,2,69,13,1,32,5,32,2,65,1,107,34,2,65,20,108,106,34,8,40,2,12,34,10,32,6,73,13,1,32,6,32,10,71,13,0,32,8,47,1,16,32,9,71,13,0,11,65,0,15,11,32,7,65,1,106,34,2,32,4,40,2,8,34,8,75,4,64,65,8,32,8,65,1,116,34,3,32,2,32,2,32,3,73,27,34,2,32,2,65,8,77,27,34,3,65,20,108,33,2,2,127,32,5,4,64,32,5,32,2,35,6,40,2,0,17,1,0,12,1,11,32,2,35,7,40,2,0,17,0,0,11,33,5,32,4,32,3,54,2,8,32,1,40,2,0,33,3,32,0,40,2,0,34,4,40,2,4,34,7,65,1,106,33,2,11,32,4,32,2,54,2,4,32,4,32,5,54,2,0,32,3,40,2,12,33,1,32,5,32,7,65,20,108,106,34,0,32,3,41,2,4,55,2,0,32,0,65,0,59,1,18,32,0,32,9,59,1,16,32,0,32,6,54,2,12,32,0,32,1,54,2,8,65,0,11,51,1,1,127,32,0,16,41,32,0,65,0,54,2,160,9,2,64,32,1,4,64,32,1,40,2,0,65,16,107,65,125,73,13,1,11,32,0,32,1,54,2,160,9,65,1,33,2,11,32,2,11,236,7,1,10,127,35,0,65,32,107,34,3,36,0,32,0,4,64,32,0,16,41,32,0,65,0,54,2,160,9,32,0,40,2,132,9,33,1,35,0,65,16,107,34,6,36,0,32,1,40,2,12,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,1,65,0,54,2,20,32,1,66,0,55,2,12,11,32,1,40,2,24,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,1,65,0,54,2,32,32,1,66,0,55,2,24,11,32,1,40,2,48,32,1,65,36,106,34,8,32,1,40,2,52,16,26,32,1,40,2,4,34,2,4,64,3,64,32,1,40,2,0,32,5,65,5,116,106,34,4,40,2,0,4,64,32,1,40,2,52,33,7,32,4,40,2,12,4,64,32,6,32,4,41,2,12,55,3,8,32,7,32,6,65,8,106,16,10,11,32,4,40,2,20,4,64,32,6,32,4,41,2,20,55,3,0,32,7,32,6,16,10,11,32,4,40,2,4,34,2,4,64,32,2,40,2,0,34,10,4,64,32,10,35,8,40,2,0,17,2,0,32,4,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,4,40,2,0,32,8,32,7,16,26,32,1,40,2,4,33,2,11,32,5,65,1,106,34,5,32,2,73,13,0,11,11,65,0,33,2,32,1,65,0,54,2,4,32,1,40,2,36,34,5,4,64,2,64,32,1,40,2,40,4,64,3,64,32,1,40,2,36,32,2,65,2,116,106,40,2,0,35,8,40,2,0,17,2,0,32,2,65,1,106,34,2,32,1,40,2,40,73,13,0,11,32,8,40,2,0,34,5,69,13,1,11,32,5,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,44,32,1,66,0,55,2,36,11,32,1,40,2,0,34,2,4,64,32,2,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,32,6,65,16,106,36,0,32,0,40,2,168,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,176,9,32,0,66,0,55,2,168,9,11,32,0,40,2,160,10,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,168,10,32,0,66,0,55,2,160,10,11,32,0,40,2,152,10,4,64,32,3,32,0,65,152,10,106,41,2,0,55,3,24,32,0,65,136,9,106,32,3,65,24,106,16,10,32,0,66,0,55,2,152,10,11,32,0,40,2,68,35,8,40,2,0,17,2,0,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,3,32,1,41,2,0,55,3,16,32,0,65,136,9,106,32,3,65,16,106,16,10,11,32,0,40,2,232,9,4,64,32,3,32,0,65,232,9,106,41,2,0,55,3,8,32,0,65,136,9,106,32,3,65,8,106,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,0,40,2,136,9,34,1,4,64,2,64,32,0,40,2,140,9,4,64,3,64,32,0,40,2,136,9,32,9,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,9,65,1,106,34,9,32,0,40,2,140,9,73,13,0,11,32,0,40,2,136,9,34,1,69,13,1,11,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,144,9,32,0,66,0,55,2,136,9,11,32,0,40,2,148,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,32,0,65,0,54,2,156,9,32,0,66,0,55,2,148,9,11,32,0,40,2,244,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,252,9,32,0,66,0,55,2,244,9,32,0,40,2,188,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,196,9,32,0,66,0,55,2,188,9,32,0,40,2,200,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,208,9,32,0,66,0,55,2,200,9,32,0,40,2,212,9,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,65,0,54,2,220,9,32,0,66,0,55,2,212,9,32,0,35,8,40,2,0,17,2,0,11,32,3,65,32,106,36,0,11,179,1,2,5,127,1,126,32,0,41,2,0,34,8,66,32,136,167,33,3,32,8,167,33,4,2,64,32,1,40,2,0,34,5,32,2,40,2,4,34,7,79,4,64,32,3,32,2,40,2,32,32,3,32,2,40,2,24,107,34,6,65,0,32,3,32,6,79,27,106,32,4,32,2,40,2,20,34,6,75,27,33,3,32,2,40,2,28,32,4,32,6,107,34,6,65,0,32,4,32,6,79,27,106,33,4,32,2,40,2,8,32,5,32,7,107,106,33,5,12,1,11,32,5,32,2,40,2,0,77,13,0,32,2,41,2,28,34,8,66,32,136,167,33,3,32,2,40,2,8,33,5,32,8,167,33,4,11,32,0,32,4,173,32,3,173,66,32,134,132,55,2,0,32,1,32,5,54,2,0,11,27,0,32,0,32,1,16,93,33,0,2,64,32,1,69,13,0,32,0,13,0,16,67,0,11,32,0,11,27,0,32,0,32,1,16,42,33,1,2,64,32,0,69,13,0,32,1,13,0,16,67,0,11,32,1,11,192,1,1,3,127,35,0,65,32,107,34,3,36,0,32,0,40,2,72,4,64,32,0,40,2,96,33,2,2,64,32,1,4,64,32,2,69,13,1,32,3,32,0,40,2,0,34,2,54,2,0,32,0,65,132,1,106,34,4,65,128,8,35,1,65,154,11,65,253,8,32,2,65,32,107,65,223,0,73,27,106,32,3,16,11,26,32,0,40,2,92,65,1,32,4,32,0,40,2,96,17,3,0,12,1,11,32,2,69,13,0,32,3,32,0,40,2,0,34,2,54,2,16,32,0,65,132,1,106,34,4,65,128,8,35,1,65,174,11,65,143,9,32,2,65,32,107,65,223,0,73,27,106,32,3,65,16,106,16,11,26,32,0,40,2,92,65,1,32,4,32,0,40,2,96,17,3,0,11,32,0,32,1,16,65,11,32,3,65,32,106,36,0,11,105,1,2,127,2,64,32,0,40,2,104,34,1,32,0,40,2,100,70,13,0,32,1,69,13,0,32,0,40,2,32,32,0,40,2,68,32,1,65,24,108,106,34,1,40,2,16,71,13,0,32,1,65,4,107,40,2,0,33,2,32,0,32,1,65,16,107,41,2,0,55,2,60,32,0,32,2,54,2,56,15,11,32,0,32,0,41,2,32,55,2,56,32,0,65,64,107,32,0,40,2,40,54,2,0,11,250,5,2,9,127,1,126,35,0,65,16,107,34,5,36,0,32,0,65,1,58,0,120,2,64,32,0,45,0,128,1,13,0,32,0,40,2,32,34,8,32,0,40,2,40,34,3,107,33,1,32,0,40,2,36,33,4,32,3,4,64,32,0,65,0,54,2,124,32,0,65,0,58,0,128,1,11,32,0,65,0,54,2,40,32,0,32,4,54,2,36,32,0,32,1,54,2,32,32,0,40,2,68,33,6,2,64,2,127,32,0,40,2,100,34,4,4,64,3,64,2,64,32,6,32,2,65,24,108,106,34,7,40,2,20,34,9,32,1,77,13,0,32,9,32,7,40,2,16,34,3,77,13,0,32,1,32,3,77,4,64,32,0,32,7,41,2,0,55,2,36,32,0,32,3,54,2,32,32,3,33,1,11,32,0,32,2,54,2,104,65,0,33,2,32,0,40,2,72,69,13,4,32,0,40,2,108,34,3,32,1,77,4,64,32,1,32,0,40,2,112,32,3,106,73,13,5,11,32,0,65,0,54,2,72,65,0,12,3,11,32,2,65,1,106,34,2,32,4,71,13,0,11,11,32,0,32,4,54,2,104,32,6,32,4,65,24,108,106,34,3,65,4,107,40,2,0,33,1,32,3,65,16,107,41,2,0,33,10,32,0,65,0,54,2,72,32,0,32,10,55,2,36,32,0,32,1,54,2,32,65,1,11,33,2,32,0,65,0,54,2,112,11,32,0,65,1,58,0,128,1,32,0,65,0,54,2,0,32,0,32,2,54,2,116,32,0,65,0,54,2,124,32,0,32,1,54,2,108,32,0,40,2,80,33,3,32,0,40,2,76,33,2,32,5,32,0,41,2,36,55,3,8,32,0,32,2,32,1,32,5,65,8,106,32,0,65,240,0,106,34,4,32,3,17,6,0,34,2,54,2,72,32,0,40,2,112,34,1,69,4,64,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,12,1,11,32,0,40,2,104,32,0,40,2,100,70,13,0,2,64,32,0,40,2,32,32,0,40,2,108,107,34,3,32,1,70,4,64,32,0,65,0,54,2,0,32,0,65,1,54,2,116,12,1,11,32,0,32,2,32,3,106,32,1,32,3,107,34,1,32,0,35,1,65,208,211,0,106,32,0,40,2,84,34,3,65,2,116,106,32,0,65,216,0,106,32,3,65,3,73,27,40,2,0,34,3,17,4,0,54,2,116,32,0,40,2,0,33,2,2,64,32,1,65,3,75,13,0,32,2,65,127,71,13,0,32,0,32,0,40,2,32,34,1,54,2,108,32,0,40,2,80,33,2,32,0,40,2,76,33,6,32,5,32,0,41,2,36,55,3,0,32,0,32,6,32,1,32,5,32,4,32,2,17,6,0,34,2,54,2,72,32,0,32,0,40,2,112,34,1,4,127,32,2,5,32,0,65,0,54,2,72,32,0,32,0,40,2,100,54,2,104,65,0,11,32,1,32,0,32,3,17,4,0,54,2,116,32,0,40,2,0,33,2,11,32,2,65,127,71,13,0,32,0,65,1,54,2,116,11,3,64,32,0,40,2,32,32,8,79,13,1,32,0,40,2,104,32,0,40,2,100,70,13,1,32,0,40,2,72,69,13,1,32,0,65,0,16,65,32,0,40,2,104,32,0,40,2,100,71,13,0,11,11,32,0,40,2,124,32,5,65,16,106,36,0,11,27,1,1,127,32,0,16,34,33,1,2,64,32,0,69,13,0,32,1,13,0,16,67,0,11,32,1,11,43,1,2,127,32,0,40,2,104,34,2,32,0,40,2,100,73,4,127,32,0,40,2,32,32,0,40,2,68,32,2,65,24,108,106,40,2,16,70,5,65,0,11,11,13,0,32,0,40,2,104,32,0,40,2,100,70,11,77,1,2,127,32,1,45,0,0,33,2,2,64,32,0,45,0,0,34,3,69,13,0,32,2,32,3,71,13,0,3,64,32,1,45,0,1,33,2,32,0,45,0,1,34,3,69,13,1,32,1,65,1,106,33,1,32,0,65,1,106,33,0,32,2,32,3,70,13,0,11,11,32,3,32,2,107,11,23,0,32,0,65,48,107,65,10,73,32,0,65,32,114,65,225,0,107,65,6,73,114,11,130,2,1,2,127,2,64,2,64,2,64,2,64,32,1,32,0,34,3,115,65,3,113,13,0,32,2,65,0,71,33,4,2,64,32,1,65,3,113,69,13,0,32,2,69,13,0,3,64,32,3,32,1,45,0,0,34,4,58,0,0,32,4,69,13,5,32,3,65,1,106,33,3,32,2,65,1,107,34,2,65,0,71,33,4,32,1,65,1,106,34,1,65,3,113,69,13,1,32,2,13,0,11,11,32,4,69,13,2,32,1,45,0,0,69,13,3,32,2,65,4,73,13,0,3,64,65,128,130,132,8,32,1,40,2,0,34,4,107,32,4,114,65,128,129,130,132,120,113,65,128,129,130,132,120,71,13,2,32,3,32,4,54,2,0,32,3,65,4,106,33,3,32,1,65,4,106,33,1,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,1,11,3,64,32,3,32,1,45,0,0,34,4,58,0,0,32,4,69,13,2,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,65,0,33,2,11,32,3,65,0,32,2,16,51,26,32,0,11,232,2,1,2,127,2,64,32,0,32,1,70,13,0,32,1,32,0,32,2,106,34,4,107,65,0,32,2,65,1,116,107,77,4,64,32,0,32,1,32,2,16,36,15,11,32,0,32,1,115,65,3,113,33,3,2,64,2,64,32,0,32,1,73,4,64,32,3,4,64,32,0,33,3,12,3,11,32,0,65,3,113,69,4,64,32,0,33,3,12,2,11,32,0,33,3,3,64,32,2,69,13,4,32,3,32,1,45,0,0,58,0,0,32,1,65,1,106,33,1,32,2,65,1,107,33,2,32,3,65,1,106,34,3,65,3,113,13,0,11,12,1,11,2,64,32,3,13,0,32,4,65,3,113,4,64,3,64,32,2,69,13,5,32,0,32,2,65,1,107,34,2,106,34,3,32,1,32,2,106,45,0,0,58,0,0,32,3,65,3,113,13,0,11,11,32,2,65,3,77,13,0,3,64,32,0,32,2,65,4,107,34,2,106,32,1,32,2,106,40,2,0,54,2,0,32,2,65,3,75,13,0,11,11,32,2,69,13,2,3,64,32,0,32,2,65,1,107,34,2,106,32,1,32,2,106,45,0,0,58,0,0,32,2,13,0,11,12,2,11,32,2,65,3,77,13,0,3,64,32,3,32,1,40,2,0,54,2,0,32,1,65,4,106,33,1,32,3,65,4,106,33,3,32,2,65,4,107,34,2,65,3,75,13,0,11,11,32,2,69,13,0,3,64,32,3,32,1,45,0,0,58,0,0,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,32,0,11,11,0,32,0,65,0,16,49,32,0,71,11,73,1,1,127,35,0,65,16,107,34,3,36,0,32,3,32,2,54,2,12,32,0,40,2,96,4,64,32,0,65,132,1,106,34,2,65,128,8,32,1,32,3,40,2,12,16,95,26,32,0,40,2,92,65,1,32,2,32,0,40,2,96,17,3,0,11,32,3,65,16,106,36,0,11,73,1,2,127,32,0,16,101,32,0,106,33,3,2,64,32,2,69,13,0,3,64,32,1,45,0,0,34,4,69,13,1,32,3,32,4,58,0,0,32,3,65,1,106,33,3,32,1,65,1,106,33,1,32,2,65,1,107,34,2,13,0,11,11,32,3,65,0,58,0,0,32,0,11,13,0,32,0,65,32,70,32,0,65,9,70,114,11,11,0,32,0,65,1,16,49,32,0,71,11,4,0,35,0,11,16,0,35,0,32,0,107,65,112,113,34,0,36,0,32,0,11,6,0,32,0,36,0,11,10,0,32,0,65,48,107,65,10,73,11,8,0,32,0,65,1,16,49,11,8,0,32,0,65,0,16,49,11,7,0,32,0,47,1,28,11,25,0,35,12,40,2,0,69,4,64,35,13,32,1,54,2,0,35,12,32,0,54,2,0,11,11,168,1,1,5,127,32,0,40,2,84,34,3,40,2,0,33,5,32,3,40,2,4,34,4,32,0,40,2,20,32,0,40,2,28,34,7,107,34,6,32,4,32,6,73,27,34,6,4,64,32,5,32,7,32,6,16,36,26,32,3,32,3,40,2,0,32,6,106,34,5,54,2,0,32,3,32,3,40,2,4,32,6,107,34,4,54,2,4,11,32,4,32,2,32,2,32,4,75,27,34,4,4,64,32,5,32,1,32,4,16,36,26,32,3,32,3,40,2,0,32,4,106,34,5,54,2,0,32,3,32,3,40,2,4,32,4,107,54,2,4,11,32,5,65,0,58,0,0,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,2,11,188,2,1,6,127,2,64,2,64,2,64,32,0,45,0,20,69,4,64,32,0,47,1,28,33,3,32,0,40,2,4,33,1,32,0,40,2,0,34,4,40,2,4,33,6,3,64,32,0,32,3,65,1,106,34,3,59,1,28,32,1,65,2,106,33,1,32,6,32,3,65,255,255,3,113,34,5,77,13,2,32,0,32,1,47,1,0,34,2,59,1,14,32,2,69,13,0,11,32,0,32,1,54,2,4,12,3,11,32,0,32,0,40,2,4,34,1,65,2,106,34,2,54,2,4,32,0,40,2,8,32,2,70,4,64,32,0,47,1,18,34,2,69,13,2,32,0,32,2,65,1,107,59,1,18,32,1,47,1,2,33,2,32,0,32,1,65,6,106,34,3,54,2,4,32,0,32,2,59,1,14,32,0,32,3,32,1,47,1,4,65,1,116,106,54,2,8,32,0,32,1,47,1,6,34,5,59,1,28,32,0,40,2,0,33,4,12,3,11,32,0,32,2,47,1,0,59,1,28,65,1,15,11,32,0,32,1,54,2,4,11,65,0,15,11,32,5,32,4,40,2,12,73,4,64,32,4,40,2,52,32,2,65,3,116,106,34,1,45,0,0,33,2,32,0,65,0,59,1,30,32,0,32,1,65,8,106,54,2,24,32,0,32,2,59,1,32,65,1,15,11,32,0,32,2,59,1,30,32,0,65,0,59,1,32,65,1,11,178,5,2,6,126,4,127,32,1,32,1,40,2,0,65,7,106,65,120,113,34,1,65,16,106,54,2,0,32,0,32,1,41,3,0,33,3,32,1,41,3,8,33,6,35,0,65,32,107,34,0,36,0,32,6,66,255,255,255,255,255,255,63,131,33,2,2,126,32,6,66,48,136,66,255,255,1,131,34,4,167,34,8,65,129,248,0,107,65,253,15,77,4,64,32,2,66,4,134,32,3,66,60,136,132,33,2,32,8,65,128,248,0,107,173,33,4,2,64,32,3,66,255,255,255,255,255,255,255,255,15,131,34,3,66,129,128,128,128,128,128,128,128,8,90,4,64,32,2,66,1,124,33,2,12,1,11,32,3,66,128,128,128,128,128,128,128,128,8,82,13,0,32,2,66,1,131,32,2,124,33,2,11,66,0,32,2,32,2,66,255,255,255,255,255,255,255,7,86,34,1,27,33,2,32,1,173,32,4,124,12,1,11,2,64,32,2,32,3,132,80,13,0,32,4,66,255,255,1,82,13,0,32,2,66,4,134,32,3,66,60,136,132,66,128,128,128,128,128,128,128,4,132,33,2,66,255,15,12,1,11,32,8,65,254,135,1,75,4,64,66,0,33,2,66,255,15,12,1,11,65,128,248,0,65,129,248,0,32,4,80,34,9,27,34,10,32,8,107,34,1,65,240,0,74,4,64,66,0,33,2,66,0,12,1,11,32,2,32,2,66,128,128,128,128,128,128,192,0,132,32,9,27,33,2,65,0,33,9,32,8,32,10,71,4,64,32,3,33,4,32,2,33,5,2,64,65,128,1,32,1,107,34,8,65,192,0,113,4,64,32,3,32,8,65,64,106,173,134,33,5,66,0,33,4,12,1,11,32,8,69,13,0,32,5,32,8,173,34,7,134,32,4,65,192,0,32,8,107,173,136,132,33,5,32,4,32,7,134,33,4,11,32,0,32,4,55,3,16,32,0,32,5,55,3,24,32,0,41,3,16,32,0,41,3,24,132,66,0,82,33,9,11,2,64,32,1,65,192,0,113,4,64,32,2,32,1,65,64,106,173,136,33,3,66,0,33,2,12,1,11,32,1,69,13,0,32,2,65,192,0,32,1,107,173,134,32,3,32,1,173,34,4,136,132,33,3,32,2,32,4,136,33,2,11,32,0,32,3,55,3,0,32,0,32,2,55,3,8,32,0,41,3,8,66,4,134,32,0,41,3,0,34,3,66,60,136,132,33,2,2,64,32,9,173,32,3,66,255,255,255,255,255,255,255,255,15,131,132,34,3,66,129,128,128,128,128,128,128,128,8,90,4,64,32,2,66,1,124,33,2,12,1,11,32,3,66,128,128,128,128,128,128,128,128,8,82,13,0,32,2,66,1,131,32,2,124,33,2,11,32,2,66,128,128,128,128,128,128,128,8,133,32,2,32,2,66,255,255,255,255,255,255,255,7,86,34,1,27,33,2,32,1,173,11,33,3,32,0,65,32,106,36,0,32,6,66,128,128,128,128,128,128,128,128,128,127,131,32,3,66,52,134,132,32,2,132,191,57,3,0,11,220,23,3,18,127,1,124,3,126,35,0,65,176,4,107,34,11,36,0,32,11,65,0,54,2,44,2,64,32,1,189,34,25,66,0,83,4,64,35,1,65,10,106,33,20,65,1,33,16,32,1,154,34,1,189,33,25,12,1,11,32,4,65,128,16,113,4,64,35,1,65,13,106,33,20,65,1,33,16,12,1,11,35,1,65,10,106,34,6,65,6,106,32,6,65,1,106,32,4,65,1,113,34,16,27,33,20,32,16,69,33,23,11,2,64,32,25,66,128,128,128,128,128,128,128,248,255,0,131,66,128,128,128,128,128,128,128,248,255,0,81,4,64,32,0,65,32,32,2,32,16,65,3,106,34,7,32,4,65,255,255,123,113,16,15,32,0,32,20,32,16,16,14,32,0,35,1,34,6,65,135,8,106,32,6,65,177,10,106,32,5,65,32,113,34,3,27,32,6,65,180,8,106,32,6,65,189,10,106,32,3,27,32,1,32,1,98,27,65,3,16,14,32,0,65,32,32,2,32,7,32,4,65,128,192,0,115,16,15,32,2,32,7,32,2,32,7,74,27,33,13,12,1,11,32,11,65,16,106,33,17,2,64,2,64,2,64,32,1,32,11,65,44,106,16,99,34,1,32,1,160,34,1,68,0,0,0,0,0,0,0,0,98,4,64,32,11,32,11,40,2,44,34,6,65,1,107,54,2,44,32,5,65,32,114,34,21,65,225,0,71,13,1,12,3,11,32,5,65,32,114,34,21,65,225,0,70,13,2,32,11,40,2,44,33,12,12,1,11,32,11,32,6,65,29,107,34,12,54,2,44,32,1,68,0,0,0,0,0,0,176,65,162,33,1,11,65,6,32,3,32,3,65,0,72,27,33,10,32,11,65,48,106,65,160,2,65,0,32,12,65,0,78,27,106,34,14,33,7,3,64,32,7,32,1,252,3,34,3,54,2,0,32,7,65,4,106,33,7,32,1,32,3,184,161,68,0,0,0,0,101,205,205,65,162,34,1,68,0,0,0,0,0,0,0,0,98,13,0,11,2,64,32,12,65,0,76,4,64,32,12,33,9,32,7,33,6,32,14,33,8,12,1,11,32,14,33,8,32,12,33,9,3,64,65,29,32,9,32,9,65,29,79,27,33,3,2,64,32,7,65,4,107,34,6,32,8,73,13,0,32,3,173,33,27,66,0,33,25,3,64,32,6,32,6,53,2,0,32,27,134,32,25,124,34,26,32,26,66,128,148,235,220,3,128,34,25,66,128,148,235,220,3,126,125,62,2,0,32,6,65,4,107,34,6,32,8,79,13,0,11,32,26,66,128,148,235,220,3,84,13,0,32,8,65,4,107,34,8,32,25,62,2,0,11,3,64,32,8,32,7,34,6,73,4,64,32,6,65,4,107,34,7,40,2,0,69,13,1,11,11,32,11,32,11,40,2,44,32,3,107,34,9,54,2,44,32,6,33,7,32,9,65,0,74,13,0,11,11,32,9,65,0,72,4,64,32,10,65,25,106,65,9,110,65,1,106,33,18,32,21,65,230,0,70,33,19,3,64,65,9,65,0,32,9,107,34,3,32,3,65,9,79,27,33,13,2,64,32,6,32,8,77,4,64,65,0,65,4,32,8,40,2,0,27,33,7,12,1,11,65,128,148,235,220,3,32,13,118,33,22,65,127,32,13,116,65,127,115,33,15,65,0,33,9,32,8,33,7,3,64,32,7,32,7,40,2,0,34,3,32,13,118,32,9,106,54,2,0,32,3,32,15,113,32,22,108,33,9,32,7,65,4,106,34,7,32,6,73,13,0,11,65,0,65,4,32,8,40,2,0,27,33,7,32,9,69,13,0,32,6,32,9,54,2,0,32,6,65,4,106,33,6,11,32,11,32,11,40,2,44,32,13,106,34,9,54,2,44,32,14,32,7,32,8,106,34,8,32,19,27,34,3,32,18,65,2,116,106,32,6,32,6,32,3,107,65,2,117,32,18,74,27,33,6,32,9,65,0,72,13,0,11,11,65,0,33,9,2,64,32,6,32,8,77,13,0,32,14,32,8,107,65,2,117,65,9,108,33,9,65,10,33,7,32,8,40,2,0,34,3,65,10,73,13,0,3,64,32,9,65,1,106,33,9,32,3,32,7,65,10,108,34,7,79,13,0,11,11,32,10,32,9,65,0,32,21,65,230,0,71,27,107,32,21,65,231,0,70,32,10,65,0,71,113,107,34,3,32,6,32,14,107,65,2,117,65,9,108,65,9,107,72,4,64,32,11,65,48,106,65,132,96,65,164,98,32,12,65,0,72,27,106,32,3,65,128,200,0,106,34,12,65,9,109,34,3,65,2,116,106,33,13,65,10,33,7,32,12,32,3,65,9,108,107,34,3,65,7,76,4,64,3,64,32,7,65,10,108,33,7,32,3,65,1,106,34,3,65,8,71,13,0,11,11,2,64,32,13,40,2,0,34,12,32,12,32,7,110,34,18,32,7,108,107,34,15,69,32,13,65,4,106,34,3,32,6,70,113,13,0,2,64,32,18,65,1,113,69,4,64,68,0,0,0,0,0,0,64,67,33,1,32,7,65,128,148,235,220,3,71,13,1,32,8,32,13,79,13,1,32,13,65,4,107,45,0,0,65,1,113,69,13,1,11,68,1,0,0,0,0,0,64,67,33,1,11,68,0,0,0,0,0,0,224,63,68,0,0,0,0,0,0,240,63,68,0,0,0,0,0,0,248,63,32,3,32,6,70,27,68,0,0,0,0,0,0,248,63,32,15,32,7,65,1,118,34,3,70,27,32,3,32,15,75,27,33,24,2,64,32,23,13,0,32,20,45,0,0,65,45,71,13,0,32,24,154,33,24,32,1,154,33,1,11,32,13,32,12,32,15,107,34,3,54,2,0,32,1,32,24,160,32,1,97,13,0,32,13,32,3,32,7,106,34,3,54,2,0,32,3,65,128,148,235,220,3,79,4,64,3,64,32,13,65,0,54,2,0,32,8,32,13,65,4,107,34,13,75,4,64,32,8,65,4,107,34,8,65,0,54,2,0,11,32,13,32,13,40,2,0,65,1,106,34,3,54,2,0,32,3,65,255,147,235,220,3,75,13,0,11,11,32,14,32,8,107,65,2,117,65,9,108,33,9,65,10,33,7,32,8,40,2,0,34,3,65,10,73,13,0,3,64,32,9,65,1,106,33,9,32,3,32,7,65,10,108,34,7,79,13,0,11,11,32,13,65,4,106,34,3,32,6,32,3,32,6,73,27,33,6,11,3,64,32,6,34,12,32,8,77,34,7,69,4,64,32,6,65,4,107,34,6,40,2,0,69,13,1,11,11,2,64,32,21,65,231,0,71,4,64,32,4,65,8,113,33,19,12,1,11,32,9,65,127,115,65,127,32,10,65,1,32,10,27,34,6,32,9,74,32,9,65,123,74,113,34,3,27,32,6,106,33,10,65,127,65,126,32,3,27,32,5,106,33,5,32,4,65,8,113,34,19,13,0,65,119,33,6,2,64,32,7,13,0,32,12,65,4,107,40,2,0,34,15,69,13,0,65,10,33,3,65,0,33,6,32,15,65,10,112,13,0,3,64,32,6,34,7,65,1,106,33,6,32,15,32,3,65,10,108,34,3,112,69,13,0,11,32,7,65,127,115,33,6,11,32,12,32,14,107,65,2,117,65,9,108,33,3,32,5,65,95,113,65,198,0,70,4,64,65,0,33,19,32,10,32,3,32,6,106,65,9,107,34,3,65,0,32,3,65,0,74,27,34,3,32,3,32,10,74,27,33,10,12,1,11,65,0,33,19,32,10,32,3,32,9,106,32,6,106,65,9,107,34,3,65,0,32,3,65,0,74,27,34,3,32,3,32,10,74,27,33,10,11,65,127,33,13,32,10,65,253,255,255,255,7,65,254,255,255,255,7,32,10,32,19,114,34,15,27,74,13,1,32,10,32,15,65,0,71,106,65,1,106,33,22,2,64,32,5,65,95,113,34,7,65,198,0,70,4,64,32,9,32,22,65,255,255,255,255,7,115,74,13,3,32,9,65,0,32,9,65,0,74,27,33,6,12,1,11,32,17,32,9,32,9,65,31,117,34,3,115,32,3,107,173,32,17,16,35,34,6,107,65,1,76,4,64,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,17,32,6,107,65,2,72,13,0,11,11,32,6,65,2,107,34,18,32,5,58,0,0,32,6,65,1,107,65,45,65,43,32,9,65,0,72,27,58,0,0,32,17,32,18,107,34,6,32,22,65,255,255,255,255,7,115,74,13,2,11,32,6,32,22,106,34,3,32,16,65,255,255,255,255,7,115,74,13,1,32,0,65,32,32,2,32,3,32,16,106,34,9,32,4,16,15,32,0,32,20,32,16,16,14,32,0,65,48,32,2,32,9,32,4,65,128,128,4,115,16,15,2,64,2,64,2,64,32,7,65,198,0,70,4,64,32,11,65,16,106,65,9,114,33,5,32,14,32,8,32,8,32,14,75,27,34,3,33,8,3,64,32,8,53,2,0,32,5,16,35,33,6,2,64,32,3,32,8,71,4,64,32,6,32,11,65,16,106,77,13,1,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,12,1,11,32,5,32,6,71,13,0,32,6,65,1,107,34,6,65,48,58,0,0,11,32,0,32,6,32,5,32,6,107,16,14,32,8,65,4,106,34,8,32,14,77,13,0,11,32,15,4,64,32,0,35,1,65,239,10,106,65,1,16,14,11,32,8,32,12,79,13,1,32,10,65,0,76,13,1,3,64,32,8,53,2,0,32,5,16,35,34,6,32,11,65,16,106,75,4,64,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,11,32,0,32,6,65,9,32,10,32,10,65,9,78,27,16,14,32,10,65,9,107,33,6,32,8,65,4,106,34,8,32,12,79,13,3,32,10,65,9,74,32,6,33,10,13,0,11,12,2,11,2,64,32,10,65,0,72,13,0,32,12,32,8,65,4,106,32,8,32,12,73,27,33,3,32,11,65,16,106,65,9,114,33,12,32,8,33,7,3,64,32,12,32,7,53,2,0,32,12,16,35,34,6,70,4,64,32,6,65,1,107,34,6,65,48,58,0,0,11,2,64,32,7,32,8,71,4,64,32,6,32,11,65,16,106,77,13,1,3,64,32,6,65,1,107,34,6,65,48,58,0,0,32,6,32,11,65,16,106,75,13,0,11,12,1,11,32,0,32,6,65,1,16,14,32,6,65,1,106,33,6,32,10,32,19,114,69,13,0,32,0,35,1,65,239,10,106,65,1,16,14,11,32,0,32,6,32,12,32,6,107,34,5,32,10,32,5,32,10,72,27,16,14,32,10,32,5,107,33,10,32,7,65,4,106,34,7,32,3,79,13,1,32,10,65,0,78,13,0,11,11,32,0,65,48,32,10,65,18,106,65,18,65,0,16,15,32,0,32,18,32,17,32,18,107,16,14,12,2,11,32,10,33,6,11,32,0,65,48,32,6,65,9,106,65,9,65,0,16,15,11,32,0,65,32,32,2,32,9,32,4,65,128,192,0,115,16,15,32,2,32,9,32,2,32,9,74,27,33,13,12,1,11,32,20,32,5,65,26,116,65,31,117,65,9,113,106,33,9,2,64,32,3,65,11,75,13,0,65,12,32,3,107,33,6,68,0,0,0,0,0,0,48,64,33,24,3,64,32,24,68,0,0,0,0,0,0,48,64,162,33,24,32,6,65,1,107,34,6,13,0,11,32,9,45,0,0,65,45,70,4,64,32,24,32,1,154,32,24,161,160,154,33,1,12,1,11,32,1,32,24,160,32,24,161,33,1,11,32,17,32,11,40,2,44,34,7,32,7,65,31,117,34,6,115,32,6,107,173,32,17,16,35,34,6,70,4,64,32,6,65,1,107,34,6,65,48,58,0,0,32,11,40,2,44,33,7,11,32,16,65,2,114,33,10,32,5,65,32,113,33,12,32,6,65,2,107,34,14,32,5,65,15,106,58,0,0,32,6,65,1,107,65,45,65,43,32,7,65,0,72,27,58,0,0,32,4,65,8,113,69,32,3,65,0,76,113,33,8,32,11,65,16,106,33,7,3,64,32,7,34,5,32,1,252,2,34,6,35,1,65,224,47,106,106,45,0,0,32,12,114,58,0,0,32,1,32,6,183,161,68,0,0,0,0,0,0,48,64,162,33,1,2,64,32,7,65,1,106,34,7,32,11,65,16,106,107,65,1,71,13,0,32,1,68,0,0,0,0,0,0,0,0,97,32,8,113,13,0,32,5,65,46,58,0,1,32,5,65,2,106,33,7,11,32,1,68,0,0,0,0,0,0,0,0,98,13,0,11,65,127,33,13,32,3,65,253,255,255,255,7,32,10,32,17,32,14,107,34,8,106,34,6,107,74,13,0,32,0,65,32,32,2,32,6,32,3,65,2,106,32,7,32,11,65,16,106,34,5,107,34,7,32,7,65,2,107,32,3,72,27,32,7,32,3,27,34,3,106,34,6,32,4,16,15,32,0,32,9,32,10,16,14,32,0,65,48,32,2,32,6,32,4,65,128,128,4,115,16,15,32,0,32,5,32,7,16,14,32,0,65,48,32,3,32,7,107,65,0,65,0,16,15,32,0,32,14,32,8,16,14,32,0,65,32,32,2,32,6,32,4,65,128,192,0,115,16,15,32,2,32,6,32,2,32,6,74,27,33,13,11,32,11,65,176,4,106,36,0,32,13,11,179,1,1,5,127,32,2,32,1,40,2,20,34,6,73,4,64,2,127,32,1,40,2,24,34,4,32,2,77,4,64,32,1,40,2,44,32,1,40,2,48,32,2,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,3,65,2,106,33,5,32,3,47,1,0,12,1,11,32,1,40,2,40,32,1,40,2,4,32,2,108,65,1,116,106,65,2,107,33,3,65,0,11,33,7,32,0,65,0,54,0,21,32,0,32,7,59,1,18,32,0,65,0,59,1,16,32,0,65,0,54,2,12,32,0,32,5,54,2,8,32,0,32,3,54,2,4,32,0,32,1,54,2,0,32,0,66,255,255,3,55,2,28,32,0,32,2,32,4,79,58,0,20,32,0,65,0,54,0,24,11,32,2,32,6,73,11,177,1,1,5,127,32,1,32,0,40,2,0,34,2,40,2,20,34,5,73,4,64,2,127,32,2,40,2,24,34,3,32,1,77,4,64,32,2,40,2,44,32,2,40,2,48,32,1,32,3,107,65,2,116,106,40,2,0,65,1,116,106,34,2,65,2,106,33,4,32,2,47,1,0,12,1,11,32,2,40,2,40,32,2,40,2,4,32,1,108,65,1,116,106,65,2,107,33,2,65,0,11,33,6,32,0,65,0,54,0,21,32,0,32,6,59,1,18,32,0,65,0,59,1,16,32,0,65,0,54,2,12,32,0,32,4,54,2,8,32,0,32,2,54,2,4,32,0,66,255,255,3,55,2,28,32,0,32,1,32,3,79,58,0,20,32,0,65,0,54,0,24,11,32,1,32,5,73,11,250,2,1,7,127,35,0,65,32,107,34,3,36,0,32,3,32,0,40,2,28,34,4,54,2,16,32,0,40,2,20,33,5,32,3,32,2,54,2,28,32,3,32,1,54,2,24,32,3,32,5,32,4,107,34,1,54,2,20,32,1,32,2,106,33,5,65,2,33,7,2,127,2,64,2,64,2,64,32,0,40,2,60,32,3,65,16,106,34,1,65,2,32,3,65,12,106,16,0,34,4,4,127,35,1,65,216,213,0,106,32,4,54,2,0,65,127,5,65,0,11,4,64,32,1,33,4,12,1,11,3,64,32,5,32,3,40,2,12,34,6,70,13,2,32,6,65,0,72,4,64,32,1,33,4,12,4,11,32,1,65,8,65,0,32,6,32,1,40,2,4,34,8,75,34,9,27,106,34,4,32,6,32,8,65,0,32,9,27,107,34,8,32,4,40,2,0,106,54,2,0,32,1,65,12,65,4,32,9,27,106,34,1,32,1,40,2,0,32,8,107,54,2,0,32,5,32,6,107,33,5,32,0,40,2,60,32,4,34,1,32,7,32,9,107,34,7,32,3,65,12,106,16,0,34,6,4,127,35,1,65,216,213,0,106,32,6,54,2,0,65,127,5,65,0,11,69,13,0,11,11,32,5,65,127,71,13,1,11,32,0,32,0,40,2,44,34,1,54,2,28,32,0,32,1,54,2,20,32,0,32,1,32,0,40,2,48,106,54,2,16,32,2,12,1,11,32,0,65,0,54,2,28,32,0,66,0,55,3,16,32,0,32,0,40,2,0,65,32,114,54,2,0,65,0,32,7,65,2,70,13,0,26,32,2,32,4,40,2,4,107,11,32,3,65,32,106,36,0,11,78,1,1,127,32,0,40,2,60,35,0,65,16,107,34,0,36,0,32,1,32,2,65,255,1,113,32,0,65,8,106,16,2,34,2,4,127,35,1,65,216,213,0,106,32,2,54,2,0,65,127,5,65,0,11,33,2,32,0,41,3,8,33,1,32,0,65,16,106,36,0,66,127,32,1,32,2,27,11,31,0,32,0,40,2,60,16,4,34,0,4,127,35,1,65,216,213,0,106,32,0,54,2,0,65,127,5,65,0,11,11,135,10,1,3,127,35,0,65,128,1,107,34,16,36,0,35,1,65,212,213,0,106,34,18,40,2,0,34,17,69,4,64,32,18,16,73,34,17,54,2,0,11,32,17,32,14,54,2,72,32,16,35,11,34,17,40,2,0,54,2,120,32,16,32,17,40,2,12,65,1,116,54,2,112,32,16,32,17,40,2,8,54,2,108,32,16,32,1,54,2,124,32,16,32,17,40,2,16,54,2,116,32,16,32,17,40,2,4,65,1,116,54,2,104,32,16,32,3,65,1,116,54,2,100,32,16,32,2,54,2,96,32,16,32,5,65,1,116,54,2,92,32,16,32,4,54,2,88,32,16,32,9,65,1,116,54,2,84,32,16,32,8,54,2,80,32,16,32,11,65,1,116,54,2,76,32,16,32,10,54,2,72,35,1,65,212,213,0,106,34,2,40,2,0,32,16,32,16,41,2,96,55,3,48,32,16,32,16,41,2,88,55,3,40,32,16,65,48,106,32,16,65,40,106,16,122,32,2,40,2,0,33,1,32,7,65,127,32,7,27,34,3,32,6,79,4,64,32,1,32,3,54,2,108,32,1,32,6,54,2,104,11,32,16,32,16,41,2,80,55,3,32,32,16,32,16,41,2,72,55,3,24,32,2,40,2,0,32,16,65,32,106,32,16,65,24,106,16,121,32,2,40,2,0,33,1,32,13,65,127,32,13,27,34,3,32,12,79,4,64,32,1,32,3,54,2,132,1,32,1,32,12,54,2,128,1,11,32,2,40,2,0,32,14,54,2,72,32,2,40,2,0,32,15,54,2,84,32,16,32,16,41,2,112,55,3,8,32,16,32,16,41,2,120,55,3,16,32,16,32,16,41,2,104,55,3,0,32,2,40,2,0,34,1,65,0,54,2,40,32,1,65,0,54,2,28,32,16,40,2,16,33,5,32,16,40,2,8,33,6,32,16,40,2,4,33,7,32,16,40,2,0,33,8,32,16,40,2,20,33,3,32,1,32,16,40,2,12,59,1,20,32,1,32,3,54,2,4,32,1,65,0,54,2,12,32,1,40,2,8,33,3,32,1,40,2,16,4,127,65,0,5,2,127,32,3,4,64,32,3,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,3,32,1,65,8,54,2,16,32,1,40,2,12,11,33,4,32,1,32,3,54,2,8,32,1,32,4,65,1,106,54,2,12,32,3,32,4,65,28,108,106,34,3,65,0,54,2,24,32,3,66,0,55,2,16,32,3,32,6,54,2,12,32,3,32,7,54,2,8,32,3,32,8,54,2,4,32,3,32,5,54,2,0,2,64,32,1,40,2,52,34,5,65,255,255,3,113,34,3,69,13,0,32,1,40,2,48,33,6,65,0,33,7,65,0,33,4,32,3,65,8,79,4,64,32,5,65,248,255,3,113,33,9,65,0,33,8,3,64,32,6,32,4,65,12,108,106,34,3,65,127,54,2,88,32,3,65,127,54,2,76,32,3,65,127,54,2,64,32,3,65,127,54,2,52,32,3,65,127,54,2,40,32,3,65,127,54,2,28,32,3,65,127,54,2,16,32,3,65,127,54,2,4,32,4,65,8,106,33,4,32,8,65,8,106,34,8,32,9,71,13,0,11,11,32,5,65,7,113,34,3,69,13,0,3,64,32,6,32,4,65,12,108,106,65,127,54,2,4,32,4,65,1,106,33,4,32,7,65,1,106,34,7,32,3,71,13,0,11,11,32,1,65,1,58,0,156,1,32,1,32,5,54,2,76,32,1,65,0,54,2,136,1,32,1,65,0,59,0,157,1,32,1,65,0,54,2,80,32,1,65,0,58,0,159,1,32,1,32,0,54,2,0,32,1,66,0,55,2,140,1,32,1,66,0,55,2,148,1,65,0,33,7,65,0,33,6,32,2,40,2,0,32,16,65,60,106,32,16,65,56,106,16,116,4,64,65,0,33,15,65,0,33,5,65,0,33,17,3,64,2,64,32,17,65,3,106,34,3,32,16,47,1,66,65,6,108,106,34,0,32,5,77,13,0,65,8,32,5,65,1,116,34,1,32,0,32,0,32,1,73,27,34,0,32,0,65,8,77,27,34,5,65,2,116,33,0,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,33,7,12,1,11,32,0,35,7,40,2,0,17,0,0,33,7,11,65,0,33,13,32,16,47,1,66,65,24,108,65,12,106,34,0,4,64,32,7,32,17,65,2,116,106,65,0,32,0,252,11,0,11,32,16,47,1,64,33,1,32,7,32,15,65,2,116,106,34,0,32,16,47,1,66,34,2,54,2,4,32,0,32,1,54,2,0,32,0,32,16,40,2,56,54,2,8,32,15,65,3,106,33,15,32,2,4,64,3,64,32,7,32,15,65,2,116,106,34,0,32,16,40,2,68,32,13,65,28,108,106,34,1,40,2,24,54,2,0,32,1,40,2,0,33,4,32,1,40,2,8,33,8,32,1,40,2,16,33,9,32,1,40,2,4,33,10,32,0,32,1,40,2,12,54,2,20,32,0,32,10,54,2,12,32,0,32,9,54,2,4,32,0,32,8,65,1,118,54,2,16,32,0,32,4,65,1,118,54,2,8,32,15,65,6,106,33,15,32,13,65,1,106,34,13,32,2,71,13,0,11,11,32,6,65,1,106,33,6,32,2,65,6,108,32,3,106,33,17,35,1,65,212,213,0,106,40,2,0,32,16,65,60,106,32,16,65,56,106,16,116,13,0,11,11,35,11,34,0,35,1,65,212,213,0,106,40,2,0,45,0,159,1,54,2,8,32,0,32,7,54,2,4,32,0,32,6,54,2,0,32,16,65,128,1,106,36,0,11,9,0,32,0,40,2,4,16,5,11,12,0,32,0,35,8,40,2,0,17,2,0,11,181,10,1,3,127,35,0,65,144,1,107,34,16,36,0,35,1,65,212,213,0,106,34,18,40,2,0,34,17,69,4,64,32,18,16,73,34,17,54,2,0,11,32,17,32,14,65,127,32,14,27,54,2,72,32,16,35,11,34,17,40,2,0,54,2,136,1,32,16,32,17,40,2,12,65,1,116,54,2,128,1,32,16,32,17,40,2,8,54,2,124,32,16,32,1,54,2,140,1,32,16,32,17,40,2,16,54,2,132,1,32,16,32,17,40,2,4,65,1,116,54,2,120,32,16,32,3,65,1,116,54,2,116,32,16,32,2,54,2,112,32,16,32,5,65,1,116,54,2,108,32,16,32,4,54,2,104,32,16,32,9,65,1,116,54,2,100,32,16,32,8,54,2,96,32,16,32,11,65,1,116,54,2,92,32,16,32,10,54,2,88,35,1,34,3,65,212,213,0,106,34,2,40,2,0,32,16,32,16,41,2,112,55,3,56,32,16,32,16,41,2,104,55,3,48,32,16,65,56,106,32,16,65,48,106,16,122,32,2,40,2,0,33,1,32,7,65,127,32,7,27,34,4,32,6,79,4,64,32,1,32,4,54,2,108,32,1,32,6,54,2,104,11,32,16,32,16,41,2,96,55,3,40,32,16,32,16,41,2,88,55,3,32,32,2,40,2,0,32,16,65,40,106,32,16,65,32,106,16,121,32,2,40,2,0,33,1,32,13,65,127,32,13,27,34,4,32,12,79,4,64,32,1,32,4,54,2,132,1,32,1,32,12,54,2,128,1,11,32,2,40,2,0,32,14,54,2,72,32,2,40,2,0,32,15,54,2,84,32,16,32,16,41,2,128,1,55,3,16,32,16,32,16,41,2,136,1,55,3,24,32,16,32,3,65,232,211,0,106,41,3,0,55,3,80,32,16,32,16,41,2,120,55,3,8,32,16,65,208,0,106,33,5,32,16,40,2,24,33,6,32,16,40,2,16,33,7,32,16,40,2,12,33,8,32,16,40,2,8,33,9,32,16,40,2,28,33,3,32,16,40,2,20,33,4,32,2,40,2,0,34,1,65,0,54,2,40,32,1,65,0,54,2,28,32,1,32,4,59,1,20,32,1,32,3,54,2,4,32,1,65,0,54,2,12,32,1,40,2,8,33,3,32,1,40,2,16,4,127,65,0,5,2,127,32,3,4,64,32,3,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,3,32,1,65,8,54,2,16,32,1,40,2,12,11,33,4,32,1,32,3,54,2,8,32,1,32,4,65,1,106,54,2,12,32,3,32,4,65,28,108,106,34,3,65,0,54,2,24,32,3,66,0,55,2,16,32,3,32,7,54,2,12,32,3,32,8,54,2,8,32,3,32,9,54,2,4,32,3,32,6,54,2,0,2,64,32,1,40,2,52,34,6,65,255,255,3,113,34,3,69,13,0,32,1,40,2,48,33,7,65,0,33,8,65,0,33,4,32,3,65,8,79,4,64,32,6,65,248,255,3,113,33,10,65,0,33,9,3,64,32,7,32,4,65,12,108,106,34,3,65,127,54,2,88,32,3,65,127,54,2,76,32,3,65,127,54,2,64,32,3,65,127,54,2,52,32,3,65,127,54,2,40,32,3,65,127,54,2,28,32,3,65,127,54,2,16,32,3,65,127,54,2,4,32,4,65,8,106,33,4,32,9,65,8,106,34,9,32,10,71,13,0,11,11,32,6,65,7,113,34,3,69,13,0,3,64,32,7,32,4,65,12,108,106,65,127,54,2,4,32,4,65,1,106,33,4,32,8,65,1,106,34,8,32,3,71,13,0,11,11,32,1,65,1,58,0,156,1,32,1,32,6,54,2,76,32,1,65,0,54,2,136,1,32,1,65,0,59,0,157,1,32,1,65,0,54,2,80,32,1,65,0,58,0,159,1,32,1,32,0,54,2,0,32,1,66,0,55,2,140,1,32,1,66,0,55,2,148,1,32,5,4,64,32,1,32,5,54,2,140,1,32,1,32,5,40,2,0,54,2,144,1,11,65,0,33,7,65,0,33,6,32,2,40,2,0,32,16,65,196,0,106,16,120,4,64,65,0,33,15,65,0,33,5,65,0,33,17,3,64,2,64,32,17,65,2,106,34,3,32,16,47,1,74,65,6,108,106,34,0,32,5,77,13,0,65,8,32,5,65,1,116,34,1,32,0,32,0,32,1,73,27,34,0,32,0,65,8,77,27,34,5,65,2,116,33,0,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,33,7,12,1,11,32,0,35,7,40,2,0,17,0,0,33,7,11,65,0,33,13,32,16,47,1,74,65,24,108,65,8,106,34,0,4,64,32,7,32,17,65,2,116,106,65,0,32,0,252,11,0,11,32,16,47,1,72,33,0,32,7,32,15,65,2,116,106,34,1,32,16,47,1,74,34,2,54,2,4,32,1,32,0,54,2,0,32,15,65,2,106,33,15,32,2,4,64,3,64,32,7,32,15,65,2,116,106,34,0,32,16,40,2,76,32,13,65,28,108,106,34,1,40,2,24,54,2,0,32,1,40,2,0,33,4,32,1,40,2,8,33,8,32,1,40,2,16,33,9,32,1,40,2,4,33,10,32,0,32,1,40,2,12,54,2,20,32,0,32,10,54,2,12,32,0,32,9,54,2,4,32,0,32,8,65,1,118,54,2,16,32,0,32,4,65,1,118,54,2,8,32,15,65,6,106,33,15,32,13,65,1,106,34,13,32,2,71,13,0,11,11,32,6,65,1,106,33,6,32,2,65,6,108,32,3,106,33,17,35,1,65,212,213,0,106,40,2,0,32,16,65,196,0,106,16,120,13,0,11,11,35,11,34,0,35,1,65,212,213,0,106,40,2,0,45,0,159,1,54,2,8,32,0,32,7,54,2,4,32,0,32,6,54,2,0,32,16,65,144,1,106,36,0,11,217,1,1,3,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,40,2,20,40,2,8,33,3,2,127,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,65,255,255,3,32,0,65,16,118,34,2,65,255,255,3,70,13,2,26,32,0,65,128,254,3,113,65,8,118,12,1,11,65,255,255,3,32,0,47,1,42,34,2,65,255,255,3,70,13,1,26,32,0,47,1,40,11,33,0,32,3,32,2,32,0,65,255,255,3,113,16,43,11,32,1,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,90,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,3,118,65,1,113,12,1,11,32,0,47,1,44,65,2,118,65,1,113,11,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,5,118,65,1,113,12,1,11,32,0,47,1,44,65,9,118,65,1,113,11,32,1,65,48,106,36,0,11,222,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,2,64,32,1,40,2,12,34,0,65,255,255,3,113,69,4,64,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,128,254,3,113,65,8,118,33,0,12,2,11,32,0,47,1,40,33,0,11,32,0,65,255,255,3,113,65,255,255,3,71,13,0,65,1,12,1,11,32,1,40,2,20,40,2,8,40,2,76,32,0,65,255,255,3,113,65,1,116,106,47,1,0,65,255,255,3,70,11,32,1,65,48,106,36,0,11,170,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,26,116,65,31,117,65,226,4,113,12,1,11,65,226,4,32,0,45,0,45,65,2,113,13,0,26,32,0,40,2,32,11,65,0,71,32,1,65,48,106,36,0,11,155,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,4,118,65,1,113,12,1,11,32,0,47,1,44,65,5,118,65,1,113,11,32,1,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,61,32,1,65,48,106,36,0,11,209,6,1,8,127,35,0,65,160,1,107,34,7,36,0,32,7,35,11,34,8,40,2,0,54,2,152,1,32,7,32,8,40,2,12,65,1,116,54,2,144,1,32,7,32,0,54,2,156,1,32,7,32,7,41,2,152,1,55,3,88,32,7,32,8,40,2,16,54,2,148,1,32,7,32,7,41,2,144,1,55,3,80,32,7,32,8,40,2,8,54,2,140,1,32,7,32,8,40,2,4,65,1,116,54,2,136,1,32,7,32,7,41,2,136,1,55,3,72,35,1,65,192,213,0,106,32,7,65,200,0,106,16,38,32,6,65,1,116,34,0,65,127,32,0,32,5,114,34,0,27,33,11,32,5,65,127,32,0,27,33,10,32,4,65,1,116,33,12,65,0,33,4,65,0,33,6,65,0,33,8,3,64,65,0,33,0,3,64,32,7,65,240,0,106,35,1,65,192,213,0,106,16,16,2,64,2,64,2,64,32,0,65,1,113,69,4,64,32,7,65,64,107,32,7,41,2,128,1,55,3,0,32,7,32,7,41,2,120,55,3,56,32,7,32,7,41,2,112,55,3,48,32,7,65,232,0,106,32,7,65,48,106,16,63,32,3,32,7,40,2,104,34,0,77,4,64,32,0,32,3,71,13,2,32,7,40,2,108,32,12,75,13,2,11,35,1,65,192,213,0,106,34,0,16,28,13,5,32,0,16,52,69,13,2,32,7,65,240,0,106,32,0,16,16,11,35,1,65,192,213,0,106,34,0,16,28,13,4,32,0,16,52,69,13,1,65,1,33,0,12,3,11,32,7,32,7,41,2,128,1,55,3,40,32,7,32,7,41,2,120,55,3,32,32,7,32,7,41,2,112,55,3,24,32,7,32,7,40,2,28,54,2,96,32,7,32,7,40,2,32,54,2,100,32,10,32,7,40,2,96,34,0,73,13,0,32,0,32,10,70,4,64,32,11,32,7,40,2,100,77,13,1,11,32,7,32,7,41,2,128,1,55,3,16,32,7,32,7,41,2,120,55,3,8,32,7,32,7,41,2,112,55,3,0,65,0,33,0,32,7,16,62,33,5,2,64,32,2,69,4,64,32,6,33,5,12,1,11,2,64,3,64,32,1,32,0,65,2,116,106,40,2,0,34,9,32,5,70,13,1,32,5,32,9,73,4,64,32,6,33,5,12,3,11,32,0,65,1,106,34,0,32,2,71,13,0,11,32,6,33,5,12,1,11,2,64,32,6,65,5,106,34,5,32,8,77,13,0,65,8,32,8,65,1,116,34,0,32,5,32,0,32,5,75,27,34,0,32,0,65,8,77,27,34,8,65,2,116,33,0,32,4,4,64,32,4,32,0,35,6,40,2,0,17,1,0,33,4,12,1,11,32,0,35,7,40,2,0,17,0,0,33,4,11,32,4,32,6,65,2,116,106,34,0,66,0,55,2,0,32,0,65,0,54,2,16,32,0,66,0,55,2,8,32,7,40,2,112,33,6,32,7,40,2,120,33,9,32,7,40,2,128,1,33,13,32,7,40,2,116,33,14,32,4,32,5,65,2,116,106,34,0,65,4,107,32,7,40,2,124,54,2,0,32,0,65,12,107,32,14,54,2,0,32,0,65,20,107,32,13,54,2,0,32,0,65,8,107,32,9,65,1,118,54,2,0,32,0,65,16,107,32,6,65,1,118,54,2,0,11,65,0,33,0,35,1,65,192,213,0,106,16,44,4,64,32,5,33,6,12,3,11,35,1,65,192,213,0,106,16,28,4,64,32,5,33,6,12,3,11,35,1,65,192,213,0,106,16,52,13,1,32,5,33,6,11,35,11,34,0,32,4,54,2,4,32,0,32,6,65,5,110,54,2,0,32,7,65,160,1,106,36,0,15,11,65,1,33,0,32,5,33,6,12,0,11,0,11,0,11,186,1,1,5,127,32,1,32,0,40,2,20,73,4,64,65,36,35,7,40,2,0,17,0,0,33,2,2,127,32,0,40,2,24,34,4,32,1,77,4,64,32,0,40,2,44,32,0,40,2,48,32,1,32,4,107,65,2,116,106,40,2,0,65,1,116,106,34,3,65,2,106,33,5,32,3,47,1,0,12,1,11,32,0,40,2,40,32,0,40,2,4,32,1,108,65,1,116,106,65,2,107,33,3,65,0,11,33,6,32,2,65,0,54,0,21,32,2,32,6,59,1,18,32,2,65,0,59,1,16,32,2,65,0,54,2,12,32,2,32,5,54,2,8,32,2,32,3,54,2,4,32,2,32,0,54,2,0,32,2,66,255,255,3,55,2,28,32,2,32,1,32,4,79,58,0,20,32,2,65,0,54,0,24,11,32,2,11,160,3,1,8,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,1,41,2,120,55,3,72,32,1,32,2,40,2,16,54,2,116,32,1,65,64,107,32,1,41,2,112,55,3,0,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,1,41,2,104,55,3,56,65,0,33,0,2,64,32,1,40,2,72,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,52,33,0,11,2,64,32,0,34,3,69,4,64,65,0,33,2,12,1,11,65,4,32,3,65,5,108,16,42,33,2,32,1,32,1,41,2,120,55,3,48,32,1,32,1,41,2,112,55,3,40,32,1,32,1,41,2,104,55,3,32,35,1,65,192,213,0,106,34,0,32,1,65,32,106,16,38,32,0,16,44,26,32,2,33,0,3,64,32,1,65,208,0,106,35,1,65,192,213,0,106,16,16,32,1,32,1,41,2,96,55,3,24,32,1,32,1,41,2,88,55,3,16,32,1,32,1,41,2,80,55,3,8,32,1,65,8,106,16,61,4,64,32,1,40,2,80,33,4,32,1,40,2,88,33,5,32,1,40,2,96,33,6,32,1,40,2,84,33,7,32,0,32,1,40,2,92,54,2,16,32,0,32,7,54,2,8,32,0,32,6,54,2,0,32,0,32,5,65,1,118,54,2,12,32,0,32,4,65,1,118,54,2,4,32,8,65,1,106,34,8,32,3,70,13,2,32,0,65,20,106,33,0,11,35,1,65,192,213,0,106,16,28,13,0,11,11,35,11,34,0,32,2,54,2,4,32,0,32,3,54,2,0,32,1,65,128,1,106,36,0,11,205,3,1,8,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,1,41,2,120,55,3,48,32,1,32,2,40,2,16,54,2,116,32,1,32,1,41,2,112,55,3,40,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,1,41,2,104,55,3,32,65,0,33,0,2,64,32,1,40,2,48,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,33,0,11,2,64,32,0,34,4,69,4,64,65,0,33,0,12,1,11,65,4,32,4,65,5,108,16,42,33,0,32,1,32,1,41,2,120,55,3,24,32,1,32,1,41,2,112,55,3,16,32,1,32,1,41,2,104,55,3,8,35,1,65,192,213,0,106,34,2,32,1,65,8,106,16,38,32,2,16,44,26,32,1,65,208,0,106,32,2,16,16,32,1,40,2,80,33,2,32,1,40,2,88,33,5,32,1,40,2,96,33,3,32,1,40,2,84,33,6,32,0,32,1,40,2,92,54,2,16,32,0,32,6,54,2,8,32,0,32,3,54,2,0,32,0,32,5,65,1,118,54,2,12,32,0,32,2,65,1,118,54,2,4,32,4,65,1,70,13,0,65,1,33,5,32,0,33,2,3,64,35,1,65,192,213,0,106,34,3,16,28,26,32,1,65,56,106,32,3,16,16,32,1,40,2,56,33,3,32,1,40,2,64,33,6,32,1,40,2,72,33,7,32,1,40,2,60,33,8,32,2,32,1,40,2,68,54,2,36,32,2,32,8,54,2,28,32,2,32,7,54,2,20,32,2,32,6,65,1,118,54,2,32,32,2,32,3,65,1,118,54,2,24,32,2,65,20,106,33,2,32,5,65,1,106,34,5,32,4,71,13,0,11,11,35,11,34,2,32,0,54,2,4,32,2,32,4,54,2,0,32,1,65,128,1,106,36,0,11,172,2,2,7,127,1,126,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,35,0,65,32,107,34,0,36,0,32,1,40,2,20,40,2,8,33,2,32,1,40,2,16,41,2,0,33,8,65,1,33,3,2,64,2,64,2,64,32,1,47,1,12,34,4,65,254,255,3,107,14,2,0,2,1,11,65,0,33,3,12,1,11,32,2,40,2,72,32,4,65,3,108,106,45,0,0,33,3,11,32,0,32,8,55,3,16,32,0,32,8,55,3,8,32,0,65,8,106,32,0,65,31,106,65,1,32,2,65,0,32,4,32,3,65,1,113,34,5,35,1,65,161,10,106,34,6,16,48,65,1,106,34,7,35,7,40,2,0,17,0,0,33,3,32,0,32,0,41,3,16,55,3,0,32,0,32,3,32,7,32,2,65,0,32,4,32,5,32,6,16,48,26,32,0,65,32,106,36,0,32,1,65,48,106,36,0,32,3,11,122,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,91,32,1,65,48,106,36,0,65,1,118,11,123,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,40,2,0,32,1,65,48,106,36,0,65,1,118,11,150,1,1,2,127,35,0,65,64,106,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,56,32,1,32,2,40,2,12,65,1,116,54,2,48,32,1,32,0,54,2,60,32,1,32,1,41,2,56,55,3,24,32,1,32,2,40,2,16,54,2,52,32,1,32,1,41,2,48,55,3,16,32,1,32,2,40,2,8,54,2,44,32,1,32,2,40,2,4,65,1,116,54,2,40,32,1,32,1,41,2,40,55,3,8,32,1,65,32,106,32,1,65,8,106,16,63,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,36,65,1,118,54,2,4,32,1,65,64,107,36,0,11,158,1,1,2,127,35,0,65,64,106,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,56,32,1,32,2,40,2,12,65,1,116,54,2,48,32,1,32,0,54,2,60,32,1,32,1,41,2,56,55,3,24,32,1,32,2,40,2,16,54,2,52,32,1,32,1,41,2,48,55,3,16,32,1,32,2,40,2,8,54,2,44,32,1,32,2,40,2,4,65,1,116,54,2,40,32,1,32,1,41,2,40,55,3,8,32,1,32,1,40,2,12,54,2,32,32,1,32,1,40,2,16,54,2,36,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,36,65,1,118,54,2,4,32,1,65,64,107,36,0,11,215,2,1,6,127,35,0,65,240,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,104,32,1,32,2,40,2,12,65,1,116,54,2,96,32,1,32,0,54,2,108,32,1,32,2,40,2,8,54,2,92,32,1,32,2,40,2,16,54,2,100,32,1,32,2,40,2,4,65,1,116,54,2,88,32,1,32,2,40,2,24,65,1,116,54,2,84,32,1,32,2,40,2,20,54,2,80,32,2,40,2,32,33,0,32,2,40,2,28,33,3,32,1,32,1,41,2,104,55,3,40,32,1,32,1,41,2,96,55,3,32,32,1,32,3,54,2,72,32,1,32,1,41,2,88,55,3,24,32,1,32,0,65,1,116,54,2,76,32,1,32,1,41,2,80,55,3,16,32,1,32,1,41,2,72,55,3,8,35,0,65,32,107,34,0,36,0,32,1,40,2,12,33,3,32,1,40,2,8,33,4,32,1,40,2,20,33,5,32,1,40,2,16,33,6,32,0,32,1,41,2,40,55,3,24,32,0,32,1,41,2,32,55,3,16,32,0,32,1,41,2,24,55,3,8,32,1,65,48,106,32,0,65,8,106,32,6,32,5,32,4,32,3,65,0,16,85,32,0,65,32,106,36,0,32,2,32,1,40,2,60,54,2,16,32,2,32,1,40,2,52,54,2,8,32,2,32,1,40,2,64,54,2,0,32,2,32,1,40,2,56,65,1,118,54,2,12,32,2,32,1,40,2,48,65,1,118,54,2,4,32,1,65,240,0,106,36,0,11,215,2,1,6,127,35,0,65,240,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,104,32,1,32,2,40,2,12,65,1,116,54,2,96,32,1,32,0,54,2,108,32,1,32,2,40,2,8,54,2,92,32,1,32,2,40,2,16,54,2,100,32,1,32,2,40,2,4,65,1,116,54,2,88,32,1,32,2,40,2,24,65,1,116,54,2,84,32,1,32,2,40,2,20,54,2,80,32,2,40,2,32,33,0,32,2,40,2,28,33,3,32,1,32,1,41,2,104,55,3,40,32,1,32,1,41,2,96,55,3,32,32,1,32,3,54,2,72,32,1,32,1,41,2,88,55,3,24,32,1,32,0,65,1,116,54,2,76,32,1,32,1,41,2,80,55,3,16,32,1,32,1,41,2,72,55,3,8,35,0,65,32,107,34,0,36,0,32,1,40,2,12,33,3,32,1,40,2,8,33,4,32,1,40,2,20,33,5,32,1,40,2,16,33,6,32,0,32,1,41,2,40,55,3,24,32,0,32,1,41,2,32,55,3,16,32,0,32,1,41,2,24,55,3,8,32,1,65,48,106,32,0,65,8,106,32,6,32,5,32,4,32,3,65,1,16,85,32,0,65,32,106,36,0,32,2,32,1,40,2,60,54,2,16,32,2,32,1,40,2,52,54,2,8,32,2,32,1,40,2,64,54,2,0,32,2,32,1,40,2,56,65,1,118,54,2,12,32,2,32,1,40,2,48,65,1,118,54,2,4,32,1,65,240,0,106,36,0,11,134,2,1,4,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,32,2,40,2,24,65,1,116,33,4,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,32,4,65,0,16,86,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,88,1,1,127,35,1,65,200,211,0,106,36,6,35,1,65,192,211,0,106,36,7,35,1,65,204,211,0,106,36,8,35,1,65,196,211,0,106,36,9,35,1,65,136,213,0,106,36,10,35,1,65,144,213,0,106,34,0,36,11,35,1,65,148,219,0,106,36,12,35,1,65,152,219,0,106,36,13,32,0,65,0,65,140,6,252,11,0,11,134,2,1,4,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,32,2,40,2,24,65,1,116,33,4,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,32,4,65,1,16,86,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,159,2,1,3,127,35,0,65,128,1,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,120,32,1,32,2,40,2,12,65,1,116,54,2,112,32,1,32,0,54,2,124,32,1,32,2,40,2,8,54,2,108,32,1,32,2,40,2,16,54,2,116,32,1,32,2,40,2,4,65,1,116,54,2,104,32,1,32,2,40,2,20,54,2,96,32,1,32,2,40,2,24,65,1,116,54,2,80,32,1,32,2,40,2,28,54,2,84,32,1,32,2,40,2,32,65,1,116,54,2,88,32,2,40,2,36,33,3,32,1,32,1,41,2,120,55,3,48,32,1,32,1,41,2,112,55,3,40,32,1,32,0,54,2,100,32,1,32,1,41,2,104,55,3,32,32,1,32,3,54,2,92,32,1,32,1,41,2,96,55,3,24,32,1,32,1,41,2,88,55,3,16,32,1,32,1,41,2,80,55,3,8,32,1,65,56,106,32,1,65,32,106,32,1,65,8,106,16,24,32,2,32,1,40,2,68,54,2,16,32,2,32,1,40,2,60,54,2,8,32,2,32,1,40,2,72,54,2,0,32,2,32,1,40,2,64,65,1,118,54,2,12,32,2,32,1,40,2,56,65,1,118,54,2,4,32,1,65,128,1,106,36,0,11,224,4,2,6,127,2,126,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,3,40,2,0,54,2,72,32,1,65,64,107,34,2,32,3,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,3,40,2,16,54,2,68,32,1,32,2,41,2,0,55,3,16,32,1,32,3,40,2,8,54,2,60,32,1,32,3,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,144,1,107,34,0,36,0,2,127,32,1,40,2,28,34,2,40,2,0,34,4,65,1,113,4,64,32,2,45,0,5,65,15,113,33,5,32,2,45,0,4,33,6,32,2,45,0,6,12,1,11,32,4,40,2,12,33,6,32,4,40,2,8,33,5,32,4,40,2,4,11,33,4,32,0,32,2,54,2,140,1,32,0,32,2,54,2,136,1,32,0,65,0,54,2,132,1,32,0,32,6,54,2,128,1,32,0,32,5,54,2,124,32,0,32,4,54,2,120,2,64,32,2,32,1,40,2,24,34,4,71,4,64,32,0,32,0,41,2,128,1,55,3,80,32,0,32,0,41,2,136,1,55,3,88,32,0,32,0,41,2,120,55,3,72,32,0,32,1,41,2,16,55,3,56,32,0,65,64,107,32,1,41,2,24,55,3,0,32,0,32,1,41,2,8,55,3,48,32,0,65,224,0,106,32,0,65,200,0,106,32,0,65,48,106,16,24,2,64,32,0,40,2,112,34,2,32,4,70,13,0,32,2,69,13,0,3,64,32,0,32,0,41,2,112,34,7,55,3,136,1,32,0,32,0,41,2,104,34,8,55,3,128,1,32,0,32,8,55,3,32,32,0,32,7,55,3,40,32,0,32,0,41,2,96,34,7,55,3,120,32,0,32,7,55,3,24,32,0,32,1,41,2,16,55,3,8,32,0,32,1,41,2,24,55,3,16,32,0,32,1,41,2,8,55,3,0,32,0,65,224,0,106,32,0,65,24,106,32,0,16,24,32,0,40,2,112,34,2,32,4,70,13,1,32,2,13,0,11,11,32,1,32,0,41,3,120,55,2,32,32,1,32,0,41,3,136,1,55,2,48,32,1,32,0,41,3,128,1,55,2,40,12,1,11,32,1,66,0,55,2,32,32,1,66,0,55,2,48,32,1,66,0,55,2,40,11,32,0,65,144,1,106,36,0,32,3,32,1,40,2,44,54,2,16,32,3,32,1,40,2,36,54,2,8,32,3,32,1,40,2,48,54,2,0,32,3,32,1,40,2,40,65,1,118,54,2,12,32,3,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,157,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,1,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,56,65,1,106,33,0,11,32,1,65,48,106,36,0,32,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,0,16,88,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,0,16,89,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,1,16,88,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,238,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,65,1,16,89,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,197,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,32,2,65,32,106,32,2,65,8,106,32,1,65,255,255,3,113,16,59,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,240,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,2,41,2,24,55,3,24,32,0,32,2,41,2,16,55,3,16,32,0,32,2,41,2,8,55,3,8,32,2,65,32,106,32,0,65,8,106,32,1,65,0,16,60,32,0,65,32,106,36,0,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,42,1,2,127,2,64,32,0,40,2,32,34,3,69,13,0,32,1,32,3,75,13,0,32,0,40,2,60,32,1,65,2,116,106,40,2,0,33,2,11,32,2,11,240,1,1,3,127,35,0,65,208,0,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,72,32,2,65,64,107,34,4,32,3,40,2,12,65,1,116,54,2,0,32,2,32,0,54,2,76,32,2,32,2,41,2,72,55,3,24,32,2,32,3,40,2,16,54,2,68,32,2,32,4,41,2,0,55,3,16,32,2,32,3,40,2,8,54,2,60,32,2,32,3,40,2,4,65,1,116,54,2,56,32,2,32,2,41,2,56,55,3,8,35,0,65,32,107,34,0,36,0,32,0,32,2,41,2,24,55,3,24,32,0,32,2,41,2,16,55,3,16,32,0,32,2,41,2,8,55,3,8,32,2,65,32,106,32,0,65,8,106,32,1,65,1,16,60,32,0,65,32,106,36,0,32,3,32,2,40,2,44,54,2,16,32,3,32,2,40,2,36,54,2,8,32,3,32,2,40,2,48,54,2,0,32,3,32,2,40,2,40,65,1,118,54,2,12,32,3,32,2,40,2,32,65,1,118,54,2,4,32,2,65,208,0,106,36,0,11,154,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,0,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,52,33,0,11,32,1,65,48,106,36,0,32,0,11,154,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,65,0,33,0,2,64,32,1,40,2,16,40,2,0,34,2,65,1,113,13,0,32,2,40,2,36,69,13,0,32,2,40,2,48,33,0,11,32,1,65,48,106,36,0,32,0,11,156,1,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,2,127,32,1,40,2,16,40,2,0,34,0,65,1,113,4,64,32,0,65,128,254,3,113,65,8,118,12,1,11,32,0,47,1,40,11,65,255,255,3,113,32,1,65,48,106,36,0,11,250,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,65,0,16,87,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,250,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,2,40,2,20,65,1,116,33,3,35,0,65,32,107,34,0,36,0,32,0,32,1,41,2,24,55,3,24,32,0,32,1,41,2,16,55,3,16,32,0,32,1,41,2,8,55,3,8,32,1,65,32,106,32,0,65,8,106,32,3,65,1,16,87,32,0,65,32,106,36,0,32,2,32,1,40,2,44,54,2,16,32,2,32,1,40,2,36,54,2,8,32,2,32,1,40,2,48,54,2,0,32,2,32,1,40,2,40,65,1,118,54,2,12,32,2,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,137,4,1,9,127,35,0,65,128,1,107,34,2,36,0,32,2,35,11,34,3,40,2,0,54,2,120,32,2,32,3,40,2,12,65,1,116,54,2,112,32,2,32,0,54,2,124,32,2,32,2,41,2,120,55,3,48,32,2,32,3,40,2,16,54,2,116,32,2,32,2,41,2,112,55,3,40,32,2,32,3,40,2,8,54,2,108,32,2,32,3,40,2,4,65,1,116,54,2,104,32,2,32,2,41,2,104,55,3,32,32,2,65,212,0,106,32,2,65,32,106,16,112,2,64,32,1,69,4,64,65,0,33,3,12,1,11,32,2,32,2,41,2,120,55,3,24,32,2,32,2,41,2,112,55,3,16,32,2,32,2,41,2,104,55,3,8,32,2,65,212,0,106,34,0,32,2,65,8,106,16,38,32,0,16,44,26,65,0,33,0,65,0,33,3,3,64,32,3,33,4,2,64,3,64,32,2,65,212,0,106,34,3,16,109,32,1,70,13,1,32,3,16,28,13,0,11,32,4,33,3,12,2,11,32,2,65,60,106,32,2,65,212,0,106,34,3,16,16,32,3,16,28,2,64,32,4,65,5,106,34,3,32,0,77,13,0,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,2,116,33,6,32,5,4,64,32,5,32,6,35,6,40,2,0,17,1,0,33,5,12,1,11,32,6,35,7,40,2,0,17,0,0,33,5,11,32,5,32,4,65,2,116,106,34,4,66,0,55,2,0,32,4,65,0,54,2,16,32,4,66,0,55,2,8,32,2,40,2,60,33,6,32,2,40,2,68,33,8,32,2,40,2,76,33,9,32,2,40,2,64,33,10,32,5,32,3,65,2,116,106,34,4,65,4,107,32,2,40,2,72,54,2,0,32,4,65,12,107,32,10,54,2,0,32,4,65,20,107,32,9,54,2,0,32,4,65,8,107,32,8,65,1,118,54,2,0,32,4,65,16,107,32,6,65,1,118,54,2,0,13,0,11,11,32,2,40,2,88,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,2,65,0,54,2,96,32,2,66,0,55,2,88,35,11,34,0,32,5,54,2,4,32,0,32,3,65,5,110,54,2,0,32,2,65,128,1,106,36,0,11,173,8,1,13,127,35,0,65,48,107,34,4,36,0,32,4,35,11,34,5,40,2,0,54,2,40,32,4,32,5,40,2,12,65,1,116,54,2,32,32,4,32,0,54,2,44,32,4,32,4,41,2,40,55,3,16,32,4,32,5,40,2,16,54,2,36,32,4,32,4,41,2,32,55,3,8,32,4,32,5,40,2,8,54,2,28,32,4,32,5,40,2,4,65,1,116,54,2,24,32,4,32,4,41,2,24,55,3,0,2,127,2,64,32,4,40,2,16,34,0,40,2,0,34,2,65,1,113,13,0,32,4,40,2,20,33,12,3,64,32,0,33,5,32,2,40,2,36,69,13,1,65,0,33,11,32,2,47,1,66,34,0,4,64,32,12,40,2,8,34,7,40,2,84,32,7,47,1,36,32,0,108,65,1,116,106,33,11,11,32,2,40,2,36,34,14,69,13,1,2,127,32,2,32,14,65,3,116,107,34,0,40,2,0,34,3,65,1,113,34,7,69,4,64,32,3,47,1,44,65,2,118,65,1,113,12,1,11,32,3,65,3,118,65,1,113,11,34,8,69,33,9,65,0,33,2,2,64,32,8,13,0,32,11,69,13,0,32,11,47,1,0,33,2,65,1,33,9,11,2,64,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,1,2,0,11,32,2,69,4,64,32,7,69,4,64,32,3,47,1,44,34,7,65,1,113,69,13,2,32,7,65,1,118,65,1,113,69,13,2,12,3,11,32,3,65,2,113,69,13,1,32,3,65,2,118,65,1,113,13,2,12,1,11,32,12,40,2,8,40,2,72,32,2,65,3,108,106,45,0,1,65,1,113,13,1,11,65,0,33,10,32,0,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,2,40,2,52,34,10,73,13,2,12,1,11,65,1,33,10,32,1,69,13,2,11,65,1,33,6,32,14,65,1,70,13,3,3,64,65,0,33,2,2,127,32,0,32,6,65,3,116,106,34,7,40,2,0,34,3,65,1,113,34,8,4,64,32,3,65,3,118,65,1,113,12,1,11,32,3,47,1,44,65,2,118,65,1,113,11,69,4,64,32,11,4,127,32,11,32,9,65,1,116,106,47,1,0,5,65,0,11,33,2,32,9,65,1,106,33,9,11,2,127,2,64,2,64,2,64,2,64,2,64,32,2,65,254,255,3,107,14,2,2,1,0,11,2,64,32,2,69,4,64,32,8,69,13,1,32,3,65,2,113,69,13,3,32,3,65,2,118,65,1,113,13,2,12,3,11,32,12,40,2,8,40,2,72,32,2,65,3,108,106,45,0,1,65,1,113,69,13,2,12,1,11,32,3,47,1,44,34,8,65,1,113,69,13,1,32,8,65,1,118,65,1,113,69,13,1,11,32,1,32,10,71,13,1,12,6,11,65,0,33,3,32,7,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,10,107,34,8,32,2,40,2,52,34,3,79,13,1,32,7,33,0,32,8,33,1,12,4,11,32,10,65,1,106,12,1,11,32,3,32,10,106,11,33,10,32,6,65,1,106,34,6,32,14,71,13,0,11,12,3,11,2,127,65,0,32,12,40,2,8,34,7,40,2,32,69,13,0,26,65,0,32,7,40,2,64,32,5,40,2,0,47,1,66,65,2,116,106,34,5,47,1,2,34,8,69,13,0,26,32,9,65,1,107,33,3,32,7,40,2,68,32,5,47,1,0,65,2,116,106,34,6,32,8,65,2,116,106,33,5,3,64,2,64,32,6,45,0,3,13,0,32,3,32,6,45,0,2,71,13,0,32,7,40,2,60,32,6,47,1,0,65,2,116,106,40,2,0,12,2,11,32,6,65,4,106,34,6,32,5,71,13,0,11,65,0,11,34,5,32,13,32,5,27,33,13,32,2,65,1,113,69,13,1,12,2,11,11,32,3,65,1,113,4,127,32,3,65,3,118,65,1,113,5,32,3,47,1,44,65,2,118,65,1,113,11,13,0,2,64,32,12,40,2,8,34,0,40,2,32,69,13,0,32,0,40,2,64,32,5,40,2,0,47,1,66,65,2,116,106,34,1,47,1,2,34,5,69,13,0,32,9,65,1,107,33,7,32,0,40,2,68,32,1,47,1,0,65,2,116,106,34,6,32,5,65,2,116,106,33,1,3,64,2,64,32,6,45,0,3,13,0,32,7,32,6,45,0,2,71,13,0,32,0,40,2,60,32,6,47,1,0,65,2,116,106,40,2,0,34,0,32,13,32,0,27,12,4,11,32,6,65,4,106,34,6,32,1,71,13,0,11,11,32,13,12,1,11,65,0,11,32,4,65,48,106,36,0,11,170,7,1,13,127,35,0,65,48,107,34,3,36,0,32,3,35,11,34,4,40,2,0,54,2,40,32,3,32,4,40,2,12,65,1,116,54,2,32,32,3,32,0,54,2,44,32,3,32,3,41,2,40,55,3,16,32,3,32,4,40,2,16,54,2,36,32,3,32,3,41,2,32,55,3,8,32,3,32,4,40,2,8,54,2,28,32,3,32,4,40,2,4,65,1,116,54,2,24,32,3,32,3,41,2,24,55,3,0,2,127,2,64,32,3,40,2,16,34,0,40,2,0,34,2,65,1,113,13,0,32,3,40,2,20,33,13,3,64,32,0,33,4,32,2,40,2,36,69,13,1,65,0,33,10,32,2,47,1,66,34,0,4,64,32,13,40,2,8,34,5,40,2,84,32,5,47,1,36,32,0,108,65,1,116,106,33,10,11,32,2,40,2,36,34,14,69,13,1,2,127,32,2,32,14,65,3,116,107,34,0,40,2,0,34,2,65,1,113,34,5,69,4,64,32,2,47,1,44,65,2,118,65,1,113,12,1,11,32,2,65,3,118,65,1,113,11,34,8,69,33,9,65,0,33,6,2,64,32,8,13,0,32,10,69,13,0,32,10,47,1,0,65,0,71,33,6,65,1,33,9,11,2,64,2,64,2,64,2,127,32,5,69,4,64,32,2,47,1,44,65,1,113,12,1,11,32,2,65,1,118,65,1,113,11,32,6,114,65,1,113,69,4,64,65,0,33,6,32,0,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,2,40,2,48,34,6,79,13,1,12,2,11,65,1,33,6,32,1,69,13,2,11,65,1,33,7,32,14,65,1,70,13,3,3,64,65,0,33,11,2,127,32,0,32,7,65,3,116,106,34,5,40,2,0,34,2,65,1,113,34,8,4,64,32,2,65,3,118,65,1,113,12,1,11,32,2,47,1,44,65,2,118,65,1,113,11,69,4,64,32,10,4,127,32,10,32,9,65,1,116,106,47,1,0,65,0,71,5,65,0,11,33,11,32,9,65,1,106,33,9,11,2,127,2,64,2,64,32,8,4,127,32,2,65,1,118,65,1,113,5,32,2,47,1,44,65,1,113,11,32,11,114,65,1,113,4,64,32,1,32,6,71,13,1,12,6,11,65,0,33,11,32,5,40,2,0,34,2,65,1,113,13,1,32,2,40,2,36,69,13,1,32,1,32,6,107,34,8,32,2,40,2,48,34,11,79,13,1,32,5,33,0,32,8,33,1,12,4,11,32,6,65,1,106,12,1,11,32,6,32,11,106,11,33,6,32,7,65,1,106,34,7,32,14,71,13,0,11,12,3,11,2,127,65,0,32,13,40,2,8,34,5,40,2,32,69,13,0,26,65,0,32,5,40,2,64,32,4,40,2,0,47,1,66,65,2,116,106,34,4,47,1,2,34,8,69,13,0,26,32,9,65,1,107,33,6,32,5,40,2,68,32,4,47,1,0,65,2,116,106,34,7,32,8,65,2,116,106,33,4,3,64,2,64,32,7,45,0,3,13,0,32,6,32,7,45,0,2,71,13,0,32,5,40,2,60,32,7,47,1,0,65,2,116,106,40,2,0,12,2,11,32,7,65,4,106,34,7,32,4,71,13,0,11,65,0,11,34,4,32,12,32,4,27,33,12,32,2,65,1,113,69,13,1,12,2,11,11,32,2,65,1,113,4,127,32,2,65,3,118,65,1,113,5,32,2,47,1,44,65,2,118,65,1,113,11,13,0,2,64,32,13,40,2,8,34,0,40,2,32,69,13,0,32,0,40,2,64,32,4,40,2,0,47,1,66,65,2,116,106,34,1,47,1,2,34,4,69,13,0,32,9,65,1,107,33,5,32,0,40,2,68,32,1,47,1,0,65,2,116,106,34,2,32,4,65,2,116,106,33,1,3,64,2,64,32,2,45,0,3,13,0,32,5,32,2,45,0,2,71,13,0,32,0,40,2,60,32,2,47,1,0,65,2,116,106,40,2,0,34,0,32,12,32,0,27,12,4,11,32,2,65,4,106,34,2,32,1,71,13,0,11,11,32,12,12,1,11,65,0,11,32,3,65,48,106,36,0,11,119,1,2,127,35,0,65,48,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,40,32,1,32,2,40,2,12,65,1,116,54,2,32,32,1,32,0,54,2,44,32,1,32,1,41,2,40,55,3,16,32,1,32,2,40,2,16,54,2,36,32,1,32,1,41,2,32,55,3,8,32,1,32,2,40,2,8,54,2,28,32,1,32,2,40,2,4,65,1,116,54,2,24,32,1,32,1,41,2,24,55,3,0,32,1,16,62,32,1,65,48,106,36,0,11,117,1,1,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,41,3,0,55,2,32,32,1,32,0,41,3,8,55,2,40,32,1,65,4,106,32,1,65,28,106,16,16,32,0,32,1,40,2,16,54,2,16,32,0,32,1,40,2,8,54,2,8,32,0,32,1,40,2,20,54,2,0,32,0,32,1,40,2,12,65,1,118,54,2,12,32,0,32,1,40,2,4,65,1,118,54,2,4,32,1,65,48,106,36,0,11,69,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,40,2,16,32,1,40,2,20,65,28,108,106,65,4,107,40,2,0,32,1,65,32,106,36,0,11,243,1,1,7,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,65,0,33,0,32,1,40,2,20,34,5,65,2,79,4,64,32,1,40,2,16,33,6,65,1,33,3,3,64,2,64,2,127,2,64,2,64,32,6,32,3,65,28,108,106,34,4,40,2,0,40,2,0,34,2,65,1,113,4,64,32,2,65,2,113,13,1,32,2,65,3,118,65,1,113,12,3,11,32,2,47,1,44,34,2,65,1,113,69,13,1,11,32,0,65,1,106,33,0,12,2,11,32,2,65,2,118,65,1,113,11,13,0,32,4,65,28,107,40,2,0,40,2,0,47,1,66,34,2,69,13,0,32,0,32,1,40,2,12,40,2,8,34,7,40,2,84,32,7,47,1,36,32,2,108,65,1,116,106,32,4,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,0,11,32,3,65,1,106,34,3,32,5,71,13,0,11,11,32,1,65,32,106,36,0,32,0,11,56,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,109,32,1,65,32,106,36,0,11,103,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,91,32,1,65,208,0,106,36,0,65,1,118,11,101,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,40,2,8,32,1,65,208,0,106,36,0,65,1,118,11,125,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,16,32,1,32,1,41,2,44,55,3,8,32,1,32,1,41,2,36,55,3,0,32,1,65,28,106,32,1,16,63,32,0,32,1,40,2,28,54,2,0,32,0,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,136,1,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,16,32,1,32,1,41,2,44,55,3,8,32,1,32,1,41,2,36,55,3,0,32,1,32,1,40,2,4,54,2,28,32,1,32,1,40,2,8,54,2,32,32,0,32,1,40,2,28,54,2,0,32,0,32,1,40,2,32,65,1,118,54,2,4,32,1,65,208,0,106,36,0,11,66,1,1,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,41,3,0,55,2,32,32,1,32,0,41,3,8,55,2,40,32,1,65,4,106,32,1,65,28,106,16,16,32,1,40,2,20,32,1,65,48,106,36,0,11,133,1,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,2,127,32,1,40,2,24,40,2,0,34,0,65,1,113,4,64,32,0,65,5,118,65,1,113,12,1,11,32,0,47,1,44,65,9,118,65,1,113,11,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,61,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,90,32,1,65,208,0,106,36,0,11,100,1,1,127,35,0,65,208,0,107,34,1,36,0,32,1,32,0,54,2,60,32,1,35,11,34,0,41,3,0,55,2,64,32,1,32,0,41,3,8,55,2,72,32,1,65,36,106,32,1,65,60,106,16,16,32,1,32,1,41,2,52,55,3,24,32,1,32,1,41,2,44,55,3,16,32,1,32,1,41,2,36,55,3,8,32,1,65,8,106,16,62,32,1,65,208,0,106,36,0,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,52,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,202,7,2,12,127,1,126,35,0,65,32,107,34,3,36,0,32,3,32,0,54,2,12,32,3,35,11,34,13,41,3,0,55,2,16,32,3,32,13,41,3,8,55,2,24,32,1,33,9,35,0,65,208,0,107,34,2,36,0,32,3,40,2,20,33,0,32,3,40,2,16,33,7,3,64,32,7,32,0,65,1,107,34,1,65,28,108,106,34,8,40,2,24,33,11,32,8,40,2,0,40,2,0,33,6,2,64,2,64,32,1,69,4,64,65,1,33,5,32,6,65,1,113,69,13,1,65,0,33,4,12,2,11,2,64,2,127,32,6,65,1,113,34,12,4,64,32,6,65,2,113,4,64,65,0,33,4,65,1,33,5,12,5,11,32,6,65,3,118,65,1,113,12,1,11,65,1,33,5,32,6,47,1,44,34,4,65,1,113,13,2,32,4,65,2,118,65,1,113,11,13,0,32,8,65,28,107,40,2,0,40,2,0,47,1,66,34,5,69,13,0,65,0,33,4,32,3,40,2,12,40,2,8,34,10,40,2,84,32,10,47,1,36,32,5,108,65,1,116,106,32,8,40,2,20,65,1,116,106,47,1,0,65,0,71,33,5,32,12,69,13,1,12,2,11,65,0,33,5,65,0,33,4,32,12,13,1,11,32,6,40,2,36,69,4,64,65,0,33,4,12,1,11,32,6,40,2,56,33,4,11,2,64,2,64,32,9,32,11,73,13,0,32,5,32,11,106,32,4,106,32,9,77,13,0,3,64,2,64,2,64,2,64,32,7,32,0,65,28,108,106,34,8,65,28,107,40,2,0,34,11,40,2,0,34,5,65,1,113,4,64,32,3,40,2,12,33,1,12,1,11,32,3,40,2,12,33,1,32,5,40,2,36,13,1,11,32,2,32,1,54,2,16,32,2,66,0,55,3,8,32,2,65,0,54,2,44,32,2,66,0,55,2,36,32,2,66,0,55,2,28,32,2,66,0,55,2,20,12,1,11,32,1,40,2,8,33,6,32,5,47,1,66,34,4,4,127,32,6,40,2,84,32,6,47,1,36,32,4,108,65,1,116,106,5,65,0,11,33,12,32,8,65,4,107,40,2,0,33,4,2,64,2,64,32,0,65,1,107,34,10,69,13,0,32,5,47,1,44,34,5,65,1,113,13,0,32,5,65,4,113,13,1,32,7,32,10,65,28,108,106,34,5,65,28,107,40,2,0,40,2,0,47,1,66,34,10,69,13,1,32,4,32,6,40,2,84,32,6,47,1,36,32,10,108,65,1,116,106,32,5,40,2,20,65,1,116,106,47,1,0,65,0,71,106,33,4,12,1,11,32,4,65,1,106,33,4,11,32,11,41,2,0,33,14,32,2,32,1,54,2,16,32,2,32,14,55,3,8,32,2,32,8,65,24,107,34,1,40,2,8,54,2,28,32,2,32,1,41,2,0,55,2,20,32,2,32,12,54,2,44,32,2,66,0,55,3,32,32,2,32,4,54,2,40,32,4,32,9,75,13,3,11,3,64,32,2,65,8,106,32,2,65,48,106,32,2,65,207,0,106,16,37,69,13,3,32,2,40,2,40,32,9,77,13,0,11,32,3,32,0,65,1,106,34,1,32,3,40,2,24,34,4,75,4,127,65,8,32,4,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,1,65,28,108,33,0,2,127,32,7,4,64,32,7,32,0,35,6,40,2,0,17,1,0,12,1,11,32,0,35,7,40,2,0,17,0,0,11,33,7,32,3,32,1,54,2,24,32,3,40,2,20,34,0,65,1,106,5,32,1,11,54,2,20,32,3,32,7,54,2,16,32,7,32,0,65,28,108,106,34,0,32,2,41,2,48,55,2,0,32,0,32,2,40,2,72,54,2,24,32,0,32,2,65,64,107,41,2,0,55,2,16,32,0,32,2,41,2,56,55,2,8,32,2,45,0,79,65,1,70,4,64,32,2,40,2,72,32,9,70,13,3,11,32,3,40,2,16,33,7,32,3,40,2,20,33,0,12,0,11,0,11,32,0,65,2,73,13,0,32,3,32,1,54,2,20,32,1,33,0,12,1,11,11,32,2,65,208,0,106,36,0,32,13,32,3,41,2,16,55,3,0,32,13,32,3,41,2,24,55,3,8,32,3,65,32,106,36,0,11,243,4,2,13,127,1,126,35,0,65,32,107,34,6,36,0,32,6,32,0,54,2,12,32,6,35,11,34,9,41,3,0,55,2,16,32,6,32,9,41,3,8,55,2,24,65,1,33,11,2,64,32,6,65,12,106,34,10,35,2,65,12,106,16,70,34,13,69,13,0,32,10,40,2,4,32,10,40,2,8,65,28,108,106,34,0,65,24,107,34,2,40,2,0,13,0,32,0,65,16,107,40,2,0,69,13,0,32,0,65,12,107,40,2,0,33,7,32,0,65,56,107,40,2,0,34,1,45,0,0,65,1,113,69,4,64,32,1,40,2,0,34,1,32,1,40,2,36,65,3,116,107,33,3,11,32,0,65,48,107,41,2,0,33,14,32,0,65,52,107,40,2,0,33,1,32,2,32,7,4,127,2,127,32,3,40,2,0,34,2,65,1,113,4,64,32,1,32,3,45,0,7,34,2,106,33,8,32,14,66,32,136,167,33,4,32,14,167,12,1,11,65,0,32,14,66,32,136,167,32,2,40,2,20,34,5,27,33,4,32,2,40,2,16,32,1,106,33,8,32,2,40,2,24,33,2,32,5,32,14,167,106,11,173,32,2,32,4,106,173,66,32,134,132,33,14,65,1,33,2,32,7,65,1,71,4,64,3,64,2,64,32,3,32,2,65,3,116,106,34,4,40,2,0,34,1,65,1,113,4,64,32,4,45,0,7,34,1,32,4,45,0,6,106,33,12,32,4,45,0,5,65,15,113,33,5,32,4,45,0,4,33,4,12,1,11,65,0,32,1,40,2,12,32,1,40,2,20,34,5,27,33,4,32,1,40,2,16,32,1,40,2,4,106,33,12,32,5,32,1,40,2,8,106,33,5,32,1,40,2,24,33,1,11,32,5,32,14,167,106,173,32,1,32,4,106,65,0,32,14,66,32,136,167,32,5,27,106,173,66,32,134,132,33,14,32,8,32,12,106,33,8,32,2,65,1,106,34,2,32,7,71,13,0,11,11,2,127,32,3,32,7,65,3,116,106,34,2,40,2,0,34,3,65,1,113,4,64,32,2,45,0,5,65,15,113,33,1,32,2,45,0,4,33,5,32,2,45,0,6,12,1,11,32,3,40,2,12,33,5,32,3,40,2,8,33,1,32,3,40,2,4,11,32,1,32,14,167,106,173,65,0,32,14,66,32,136,167,32,1,27,32,5,106,173,66,32,134,132,33,14,32,8,106,5,32,1,11,54,2,0,32,0,65,20,107,32,14,55,2,0,11,2,64,2,64,2,64,32,13,65,1,107,14,2,0,2,1,11,3,64,32,10,16,111,65,1,70,13,0,11,12,1,11,65,0,33,11,11,32,9,32,6,41,2,16,55,3,0,32,9,32,6,41,2,24,55,3,8,32,6,65,32,106,36,0,32,11,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,28,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,135,1,2,2,127,1,126,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,0,40,2,0,54,2,32,32,1,32,0,41,2,4,55,2,36,32,1,32,0,40,2,12,34,2,54,2,44,32,1,32,0,40,2,16,65,1,116,54,2,24,32,1,32,2,54,2,20,32,1,32,1,41,2,20,55,3,8,32,1,65,28,106,65,0,32,1,40,2,8,32,1,40,2,12,16,110,32,0,32,1,41,2,32,55,3,0,32,0,32,1,41,2,40,55,3,8,32,1,65,48,106,36,0,66,0,82,11,102,2,2,127,1,126,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,40,2,0,54,2,16,32,1,32,0,41,2,4,55,2,20,32,1,32,0,40,2,12,34,2,54,2,28,32,1,65,12,106,32,2,65,1,116,65,0,65,0,16,110,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,66,0,82,11,95,1,3,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,33,2,3,64,32,2,16,111,34,3,65,1,70,13,0,11,32,3,65,2,70,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,78,1,1,127,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,1,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,15,11,65,0,33,2,32,0,40,2,8,32,0,40,2,4,106,32,1,77,13,0,32,0,40,2,56,32,1,65,2,116,106,40,2,0,33,2,11,32,2,11,76,1,2,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,65,12,106,16,44,32,0,32,1,41,2,16,55,3,0,32,0,32,1,41,2,24,55,3,8,32,1,65,32,106,36,0,11,186,2,1,5,127,35,0,65,48,107,34,2,36,0,32,2,32,0,54,2,28,32,2,35,11,34,3,41,3,0,55,2,32,32,2,32,3,41,3,8,55,2,40,32,2,32,3,41,3,16,55,2,12,32,2,32,3,41,3,24,55,2,20,32,2,32,1,54,2,8,32,2,32,2,40,2,8,54,2,28,32,2,47,1,24,33,0,32,2,65,0,54,2,36,32,2,32,0,59,1,44,32,2,40,2,32,33,0,32,2,40,2,12,33,6,2,64,2,64,32,2,40,2,16,34,4,32,2,40,2,40,75,4,64,32,4,65,28,108,33,1,2,127,32,0,4,64,32,0,32,1,35,6,40,2,0,17,1,0,12,1,11,32,1,35,7,40,2,0,17,0,0,11,33,0,32,2,32,4,54,2,40,32,2,40,2,36,34,5,69,13,1,32,5,65,28,108,34,5,69,13,1,32,0,32,1,106,32,0,32,5,252,10,0,0,12,1,11,32,4,69,13,1,32,4,65,28,108,33,1,11,32,6,4,64,32,1,69,13,1,32,0,32,6,32,1,252,10,0,0,12,1,11,32,1,69,13,0,32,0,65,0,32,1,252,11,0,11,32,2,32,0,54,2,32,32,2,32,2,40,2,36,32,4,106,54,2,36,32,3,32,2,41,2,32,55,3,0,32,3,32,2,41,2,40,55,3,8,32,2,65,48,106,36,0,11,217,1,2,8,127,1,126,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,2,40,2,32,33,4,32,2,41,3,24,33,9,32,2,40,2,20,33,5,32,2,40,2,4,33,6,32,2,40,2,8,33,7,32,2,40,2,16,33,8,32,1,32,1,41,2,72,55,3,24,32,1,32,8,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,7,54,2,60,32,1,32,6,65,1,116,54,2,56,32,1,32,5,54,2,40,32,1,32,9,55,2,44,32,1,32,4,54,2,52,32,1,32,0,54,2,36,32,1,32,1,41,2,56,55,3,8,32,1,65,36,106,32,1,65,8,106,16,38,32,2,32,1,41,2,40,55,3,0,32,2,32,1,41,2,48,55,3,8,32,1,65,208,0,106,36,0,11,83,1,1,127,35,0,65,32,107,34,1,36,0,32,1,32,0,54,2,12,32,1,35,11,34,0,41,3,0,55,2,16,32,1,32,0,41,3,8,55,2,24,32,1,40,2,16,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,1,65,0,54,2,24,32,1,66,0,55,2,16,32,1,65,32,106,36,0,11,205,1,1,5,127,35,0,65,48,107,34,1,36,0,32,1,32,0,54,2,28,32,1,35,11,34,3,41,3,0,55,2,32,32,1,32,3,41,3,8,55,2,40,65,0,33,0,32,1,65,0,54,2,24,32,1,32,1,40,2,28,54,2,8,32,1,47,1,44,33,2,32,1,65,0,54,2,20,32,1,32,2,59,1,24,2,64,32,1,40,2,36,34,4,69,13,0,32,1,40,2,32,33,5,32,4,65,28,108,34,2,35,7,40,2,0,17,0,0,33,0,32,1,32,4,54,2,20,32,5,4,64,32,2,69,13,1,32,0,32,5,32,2,252,10,0,0,12,1,11,32,2,69,13,0,32,0,65,0,32,2,252,11,0,11,32,1,32,0,54,2,12,32,1,32,4,54,2,16,32,3,32,1,41,2,12,55,3,0,32,3,32,1,41,2,20,55,3,8,32,1,65,48,106,36,0,11,154,1,1,3,127,35,0,65,208,0,107,34,1,36,0,32,1,35,11,34,2,40,2,0,54,2,72,32,1,65,64,107,34,3,32,2,40,2,12,65,1,116,54,2,0,32,1,32,0,54,2,76,32,1,32,1,41,2,72,55,3,24,32,1,32,2,40,2,16,54,2,68,32,1,32,3,41,2,0,55,3,16,32,1,32,2,40,2,8,54,2,60,32,1,32,2,40,2,4,65,1,116,54,2,56,32,1,32,1,41,2,56,55,3,8,32,1,65,36,106,32,1,65,8,106,16,112,32,2,32,1,41,2,40,55,3,0,32,2,32,1,41,2,48,55,3,8,32,1,65,208,0,106,36,0,11,206,48,2,27,127,3,126,35,0,65,16,107,34,24,36,0,35,0,65,64,106,34,7,36,0,32,7,65,0,54,2,60,32,7,66,0,55,2,36,32,7,66,0,55,2,28,2,127,32,0,40,2,0,34,2,65,1,113,4,64,32,0,45,0,4,33,13,32,0,45,0,6,33,12,32,0,45,0,5,65,15,113,12,1,11,32,2,40,2,12,33,13,32,2,40,2,4,33,12,32,2,40,2,8,11,33,8,32,7,65,0,59,1,60,32,7,32,0,54,2,44,32,7,65,224,1,35,7,40,2,0,17,0,0,34,2,54,2,48,32,7,66,129,128,128,128,128,1,55,2,52,32,2,65,0,54,2,24,32,2,66,0,55,2,16,32,2,32,13,54,2,12,32,2,32,8,54,2,8,32,2,32,12,54,2,4,32,2,32,0,54,2,0,2,127,32,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,4,33,13,32,1,45,0,6,33,12,32,1,45,0,5,65,15,113,12,1,11,32,2,40,2,12,33,13,32,2,40,2,4,33,12,32,2,40,2,8,11,33,2,32,7,65,0,59,1,40,32,7,32,1,54,2,24,32,7,40,2,28,33,8,32,7,40,2,36,69,4,64,2,127,32,8,4,64,32,8,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,8,32,7,65,8,54,2,36,11,32,7,65,1,54,2,32,32,7,32,8,54,2,28,32,8,65,0,54,2,24,32,8,66,0,55,2,16,32,8,32,13,54,2,12,32,8,32,2,54,2,8,32,8,32,12,54,2,4,32,8,32,1,54,2,0,32,7,65,0,54,2,16,32,7,66,0,55,3,8,32,0,40,2,12,32,0,40,2,16,32,1,40,2,12,32,1,40,2,16,32,7,65,8,106,16,84,32,0,34,19,40,2,8,33,2,35,0,65,224,0,107,34,5,36,0,32,7,65,0,54,2,52,32,7,40,2,48,33,0,32,7,40,2,56,4,127,65,0,5,2,127,32,0,4,64,32,0,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,0,32,7,65,8,54,2,56,32,7,40,2,52,11,33,8,32,7,32,0,54,2,48,32,7,32,8,65,1,106,54,2,52,32,5,65,0,54,2,8,32,5,66,0,55,3,0,32,0,32,8,65,28,108,106,34,0,32,19,54,2,0,32,0,32,5,41,3,0,55,2,4,32,0,32,5,40,2,8,54,2,12,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,5,32,7,40,2,60,54,2,56,32,5,32,7,41,2,52,55,3,48,32,7,41,2,44,33,29,32,5,65,0,54,2,76,32,5,32,29,55,3,40,32,5,66,0,55,2,68,32,5,65,1,54,2,64,32,5,32,2,54,2,60,32,7,65,0,54,2,32,32,7,40,2,28,33,0,32,7,40,2,36,69,4,64,2,127,32,0,4,64,32,0,65,224,1,35,6,40,2,0,17,1,0,12,1,11,65,224,1,35,7,40,2,0,17,0,0,11,33,0,32,7,65,8,54,2,36,32,7,40,2,32,33,4,11,32,7,32,0,54,2,28,32,7,32,4,65,1,106,54,2,32,32,5,65,0,54,2,88,32,5,66,0,55,3,80,32,0,32,4,65,28,108,106,34,0,32,1,34,22,54,2,0,32,0,32,5,41,3,80,55,2,4,32,0,32,5,40,2,88,54,2,12,32,0,65,0,54,2,24,32,0,66,0,55,2,16,32,5,32,7,40,2,40,54,2,16,32,5,32,7,41,2,32,55,3,8,32,7,41,2,24,33,29,32,5,65,0,54,2,36,32,5,32,29,55,3,0,32,5,66,0,55,2,28,32,5,65,1,54,2,24,32,5,32,2,54,2,20,32,5,40,2,44,32,5,40,2,48,34,11,65,28,108,106,34,0,65,24,107,40,2,0,33,8,32,0,65,20,107,41,2,0,33,30,32,5,45,0,68,69,4,64,32,30,167,33,13,32,30,66,32,136,167,33,4,2,127,32,0,65,28,107,40,2,0,34,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,5,65,15,113,33,0,32,1,45,0,4,33,12,32,1,45,0,6,12,1,11,32,2,40,2,12,33,12,32,2,40,2,8,33,0,32,2,40,2,4,11,32,8,106,33,8,32,0,32,13,106,173,65,0,32,4,32,0,27,32,12,106,173,66,32,134,132,33,30,11,32,5,40,2,4,32,5,40,2,8,34,15,65,28,108,106,34,0,65,24,107,40,2,0,33,13,32,0,65,20,107,41,2,0,34,29,167,33,12,32,29,66,32,136,167,33,4,2,127,32,0,65,28,107,40,2,0,34,1,40,2,0,34,2,65,1,113,4,64,32,1,45,0,5,65,15,113,33,0,32,1,45,0,4,33,6,32,1,45,0,6,12,1,11,32,2,40,2,12,33,6,32,2,40,2,8,33,0,32,2,40,2,4,11,33,1,32,0,32,12,106,173,65,0,32,4,32,0,27,32,6,106,173,66,32,134,132,33,29,2,127,2,64,32,1,32,13,106,34,2,32,8,75,4,64,32,30,33,31,32,29,33,30,32,8,33,0,32,2,33,8,12,1,11,32,29,33,31,65,0,32,8,32,2,34,0,77,13,1,26,11,65,192,1,35,7,40,2,0,17,0,0,34,10,32,8,54,2,20,32,10,32,0,54,2,16,32,10,32,30,55,2,8,32,10,32,31,55,2,0,65,8,33,17,32,30,33,29,32,8,33,2,65,1,11,33,13,65,0,33,12,3,64,32,11,65,1,107,33,4,2,127,2,64,2,64,2,64,32,5,45,0,68,34,16,65,1,70,4,64,32,4,13,1,12,3,11,32,11,69,13,2,12,1,11,32,11,65,2,107,33,4,11,32,5,40,2,60,33,6,32,5,40,2,44,33,9,3,64,32,9,32,4,34,0,65,28,108,106,34,1,40,2,0,33,14,65,0,33,4,2,64,32,0,69,13,0,32,1,65,28,107,40,2,0,40,2,0,47,1,66,34,3,69,13,0,32,6,40,2,84,32,6,47,1,36,32,3,108,65,1,116,106,32,1,40,2,20,65,1,116,106,47,1,0,33,4,11,2,64,2,127,32,14,40,2,0,34,3,65,1,113,4,64,32,3,65,1,118,65,1,113,12,1,11,32,3,47,1,44,65,1,113,11,13,0,32,4,65,255,255,3,113,13,0,32,0,65,1,107,33,4,32,0,69,13,2,12,1,11,11,32,3,65,8,118,33,9,32,14,45,0,7,33,20,32,1,40,2,4,12,1,11,65,0,33,3,65,0,33,9,65,0,33,20,65,0,33,4,65,0,11,33,27,32,15,65,1,107,33,1,2,127,2,64,2,64,2,64,32,5,45,0,28,34,25,65,1,70,4,64,32,1,13,1,12,3,11,32,15,69,13,2,12,1,11,32,15,65,2,107,33,1,11,32,5,40,2,20,33,18,32,5,40,2,4,33,26,3,64,32,26,32,1,34,0,65,28,108,106,34,14,40,2,0,33,21,65,0,33,1,2,64,32,0,69,13,0,32,14,65,28,107,40,2,0,40,2,0,47,1,66,34,6,69,13,0,32,18,40,2,84,32,18,47,1,36,32,6,108,65,1,116,106,32,14,40,2,20,65,1,116,106,47,1,0,33,1,11,2,64,2,127,32,21,40,2,0,34,6,65,1,113,4,64,32,6,65,1,118,65,1,113,12,1,11,32,6,47,1,44,65,1,113,11,13,0,32,1,65,255,255,3,113,13,0,32,0,65,1,107,33,1,32,0,69,13,2,12,1,11,11,32,6,65,8,118,33,0,32,21,45,0,7,33,18,32,14,40,2,4,12,1,11,65,0,33,6,65,0,33,0,65,0,33,18,65,0,33,1,65,0,11,33,26,32,3,65,1,113,34,14,4,127,32,9,65,255,1,113,5,32,3,47,1,40,11,33,28,2,127,2,64,2,64,2,64,2,64,2,64,2,127,32,6,65,1,113,34,21,69,4,64,32,3,65,0,71,33,9,32,6,47,1,40,33,0,65,1,12,1,11,32,3,32,6,114,69,13,3,32,3,65,0,71,33,9,32,0,65,255,1,113,33,0,32,6,65,0,71,11,69,13,0,32,9,69,13,0,32,4,65,255,255,3,113,32,1,65,255,255,3,113,71,13,0,32,28,65,255,255,3,113,34,4,32,0,65,255,255,3,113,71,13,0,32,3,65,1,113,69,4,64,32,3,40,2,16,33,20,11,32,6,65,1,113,69,4,64,32,6,40,2,16,33,18,11,32,14,4,127,32,3,65,16,118,5,32,3,47,1,42,11,32,21,4,127,32,6,65,16,118,5,32,6,47,1,42,11,33,15,65,0,33,9,65,0,33,1,32,14,69,4,64,32,3,45,0,44,65,192,0,113,65,6,118,33,1,11,32,21,69,4,64,32,6,45,0,44,65,192,0,113,65,6,118,33,9,11,2,127,32,3,65,26,116,65,31,117,65,226,4,113,32,14,13,0,26,65,226,4,32,3,45,0,45,65,2,113,13,0,26,32,3,40,2,32,11,33,25,2,127,32,6,65,26,116,65,31,117,65,226,4,113,32,21,13,0,26,65,226,4,32,6,45,0,45,65,2,113,13,0,26,32,6,40,2,32,11,33,6,32,26,32,27,71,13,3,32,4,65,255,255,3,70,13,3,32,18,32,20,71,13,3,65,255,255,3,113,34,0,65,255,255,3,70,13,3,32,15,65,255,255,3,113,34,4,65,255,255,3,70,13,3,32,0,69,32,4,69,115,13,3,32,6,32,25,71,13,3,32,1,32,9,115,13,3,32,14,4,127,32,3,65,4,118,65,1,113,5,32,3,47,1,44,65,5,118,65,1,113,11,13,3,32,1,69,13,2,35,1,65,148,12,106,33,0,2,64,32,5,40,2,72,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,0,11,35,1,65,148,12,106,33,4,2,64,32,5,40,2,32,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,4,32,1,65,48,106,32,1,40,2,36,27,33,4,11,32,0,40,2,24,33,3,32,4,40,2,24,34,1,65,25,79,4,64,32,1,32,3,71,13,4,32,0,40,2,0,33,0,32,4,40,2,0,33,4,12,2,11,32,1,32,3,70,13,1,12,3,11,32,5,40,2,44,32,11,65,28,108,106,34,0,65,16,107,40,2,0,33,2,32,0,65,20,107,40,2,0,33,3,32,0,65,24,107,40,2,0,33,9,32,5,40,2,4,32,15,65,28,108,106,34,6,65,16,107,40,2,0,33,11,32,6,65,20,107,40,2,0,33,15,32,6,65,24,107,40,2,0,33,14,2,126,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,4,40,2,0,34,1,65,1,113,4,64,32,9,32,4,45,0,6,106,33,0,32,3,32,4,45,0,5,65,15,113,34,1,106,33,3,32,4,45,0,4,65,0,32,2,32,1,27,106,33,2,32,16,13,1,32,0,32,4,45,0,7,34,4,106,12,3,11,32,1,40,2,12,65,0,32,2,32,1,40,2,8,34,0,27,106,33,2,32,0,32,3,106,33,3,32,1,40,2,4,32,9,106,33,0,32,16,69,13,1,11,32,3,173,32,2,173,66,32,134,132,12,2,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,33,4,32,1,40,2,16,32,0,106,11,33,0,32,3,173,32,2,32,4,106,173,66,32,134,132,11,2,126,2,127,2,64,2,64,32,6,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,14,32,1,45,0,6,106,33,4,32,15,32,1,45,0,5,65,15,113,34,3,106,33,2,32,1,45,0,4,65,0,32,11,32,3,27,106,33,6,32,25,13,1,32,4,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,11,32,3,40,2,8,34,1,27,106,33,6,32,1,32,15,106,33,2,32,3,40,2,4,32,14,106,33,4,32,25,69,13,1,11,32,2,173,32,6,173,66,32,134,132,12,2,11,65,0,32,6,32,3,40,2,20,34,1,27,33,6,32,1,32,2,106,33,2,32,3,40,2,24,33,1,32,3,40,2,16,32,4,106,11,33,4,32,2,173,32,1,32,6,106,173,66,32,134,132,11,32,0,32,4,73,34,1,27,33,29,32,0,32,4,32,1,27,33,2,12,3,11,32,0,32,4,32,1,16,18,13,1,11,32,5,40,2,44,32,11,65,28,108,106,34,4,65,24,107,40,2,0,33,6,2,127,32,4,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,34,11,4,64,32,6,32,1,45,0,6,106,34,0,32,16,13,1,26,32,0,32,1,45,0,7,106,12,1,11,32,3,40,2,4,32,6,106,34,0,32,16,13,0,26,32,3,40,2,16,32,0,106,11,33,9,2,64,32,12,32,7,40,2,12,34,15,79,13,0,32,7,40,2,8,33,14,32,12,33,0,3,64,32,8,32,14,32,0,65,24,108,106,34,20,40,2,20,79,4,64,32,15,32,0,65,1,106,34,0,71,13,1,12,2,11,11,32,20,40,2,16,32,9,73,13,1,11,32,4,65,16,107,40,2,0,33,9,32,4,65,20,107,40,2,0,33,0,2,127,2,64,2,64,32,11,4,64,32,6,32,1,45,0,6,106,33,2,32,0,32,1,45,0,5,65,15,113,34,4,106,33,0,32,1,45,0,4,65,0,32,9,32,4,27,106,33,4,32,16,13,1,32,2,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,9,32,3,40,2,8,34,1,27,106,33,4,32,0,32,1,106,33,0,32,3,40,2,4,32,6,106,33,2,32,16,69,13,1,11,32,0,173,32,4,173,66,32,134,132,33,29,65,0,12,4,11,65,0,32,4,32,3,40,2,20,34,1,27,33,4,32,0,32,1,106,33,0,32,3,40,2,24,33,1,32,3,40,2,16,32,2,106,11,33,2,32,0,173,32,1,32,4,106,173,66,32,134,132,33,29,65,0,12,2,11,32,5,65,40,106,32,8,16,47,32,5,32,8,16,47,33,0,4,64,65,0,32,0,13,2,26,32,5,40,2,44,32,5,40,2,48,65,28,108,106,34,0,65,16,107,40,2,0,33,3,32,0,65,20,107,40,2,0,33,1,32,0,65,24,107,40,2,0,33,2,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,0,40,2,0,34,4,65,1,113,4,64,32,2,32,0,45,0,6,106,33,2,32,1,32,0,45,0,5,65,15,113,34,4,106,33,1,32,0,45,0,4,65,0,32,3,32,4,27,106,33,3,32,5,45,0,68,13,1,32,2,32,0,45,0,7,34,0,106,12,3,11,32,4,40,2,12,65,0,32,3,32,4,40,2,8,34,0,27,106,33,3,32,0,32,1,106,33,1,32,4,40,2,4,32,2,106,33,2,32,5,45,0,68,65,1,71,13,1,11,32,1,173,32,3,173,66,32,134,132,33,29,12,3,11,65,0,32,3,32,4,40,2,20,34,0,27,33,3,32,0,32,1,106,33,1,32,4,40,2,24,33,0,32,4,40,2,16,32,2,106,11,33,2,32,1,173,32,0,32,3,106,173,66,32,134,132,33,29,12,1,11,32,0,4,64,32,5,40,2,4,32,5,40,2,8,65,28,108,106,34,0,65,16,107,40,2,0,33,3,32,0,65,20,107,40,2,0,33,1,32,0,65,24,107,40,2,0,33,2,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,0,40,2,0,34,4,65,1,113,4,64,32,2,32,0,45,0,6,106,33,2,32,1,32,0,45,0,5,65,15,113,34,4,106,33,1,32,0,45,0,4,65,0,32,3,32,4,27,106,33,3,32,5,45,0,28,13,1,32,2,32,0,45,0,7,34,0,106,12,3,11,32,4,40,2,12,65,0,32,3,32,4,40,2,8,34,0,27,106,33,3,32,0,32,1,106,33,1,32,4,40,2,4,32,2,106,33,2,32,5,45,0,28,65,1,71,13,1,11,32,1,173,32,3,173,66,32,134,132,33,29,12,3,11,65,0,32,3,32,4,40,2,20,34,0,27,33,3,32,0,32,1,106,33,1,32,4,40,2,24,33,0,32,4,40,2,16,32,2,106,11,33,2,32,1,173,32,0,32,3,106,173,66,32,134,132,33,29,12,1,11,32,5,40,2,44,32,5,40,2,48,65,28,108,106,34,0,65,16,107,40,2,0,33,2,32,0,65,20,107,40,2,0,33,3,32,0,65,24,107,40,2,0,33,9,32,5,40,2,4,32,5,40,2,8,65,28,108,106,34,6,65,16,107,40,2,0,33,11,32,6,65,20,107,40,2,0,33,16,32,6,65,24,107,40,2,0,33,15,2,126,2,127,2,64,2,64,32,0,65,28,107,40,2,0,34,4,40,2,0,34,1,65,1,113,4,64,32,9,32,4,45,0,6,106,33,0,32,3,32,4,45,0,5,65,15,113,34,1,106,33,3,32,4,45,0,4,65,0,32,2,32,1,27,106,33,2,32,5,45,0,68,13,1,32,0,32,4,45,0,7,34,4,106,12,3,11,32,1,40,2,12,65,0,32,2,32,1,40,2,8,34,0,27,106,33,2,32,0,32,3,106,33,3,32,1,40,2,4,32,9,106,33,0,32,5,45,0,68,65,1,71,13,1,11,32,3,173,32,2,173,66,32,134,132,12,2,11,65,0,32,2,32,1,40,2,20,34,4,27,33,2,32,3,32,4,106,33,3,32,1,40,2,24,33,4,32,1,40,2,16,32,0,106,11,33,0,32,3,173,32,2,32,4,106,173,66,32,134,132,11,2,126,2,127,2,64,2,64,32,6,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,15,32,1,45,0,6,106,33,4,32,16,32,1,45,0,5,65,15,113,34,3,106,33,2,32,1,45,0,4,65,0,32,11,32,3,27,106,33,6,32,5,45,0,28,13,1,32,4,32,1,45,0,7,34,1,106,12,3,11,32,3,40,2,12,65,0,32,11,32,3,40,2,8,34,1,27,106,33,6,32,1,32,16,106,33,2,32,3,40,2,4,32,15,106,33,4,32,5,45,0,28,65,1,71,13,1,11,32,2,173,32,6,173,66,32,134,132,12,2,11,65,0,32,6,32,3,40,2,20,34,1,27,33,6,32,1,32,2,106,33,2,32,3,40,2,24,33,1,32,3,40,2,16,32,4,106,11,33,4,32,2,173,32,1,32,6,106,173,66,32,134,132,11,32,0,32,4,73,34,1,27,33,29,32,0,32,4,32,1,27,33,2,65,0,12,1,11,65,1,11,33,15,65,0,33,4,2,64,32,5,40,2,48,34,0,69,13,0,3,64,32,5,40,2,44,32,0,34,4,65,28,108,106,34,1,65,24,107,40,2,0,33,0,2,127,32,1,65,28,107,40,2,0,34,1,40,2,0,34,3,65,1,113,4,64,32,0,32,1,45,0,6,106,34,0,32,5,45,0,68,13,1,26,32,0,32,1,45,0,7,106,12,1,11,32,3,40,2,4,32,0,106,34,0,32,5,45,0,68,13,0,26,32,3,40,2,16,32,0,106,11,32,2,75,13,1,32,5,65,40,106,16,74,32,5,40,2,48,34,0,13,0,11,65,0,33,4,11,2,64,3,64,32,5,40,2,8,34,0,4,64,32,5,40,2,4,32,0,65,28,108,106,34,3,65,24,107,40,2,0,33,1,2,127,32,3,65,28,107,40,2,0,34,3,40,2,0,34,6,65,1,113,4,64,32,1,32,3,45,0,6,106,34,1,32,5,45,0,28,13,1,26,32,1,32,3,45,0,7,106,12,1,11,32,6,40,2,4,32,1,106,34,1,32,5,45,0,28,13,0,26,32,6,40,2,16,32,1,106,11,32,2,75,13,2,32,5,16,74,12,1,11,11,65,0,33,0,11,32,5,45,0,68,33,6,32,5,40,2,64,34,1,32,5,40,2,24,34,3,75,4,64,32,5,40,2,60,33,11,32,5,40,2,44,33,14,3,64,32,4,4,127,2,64,2,64,2,127,32,14,32,4,65,28,108,106,34,9,65,28,107,40,2,0,40,2,0,34,16,65,1,113,4,64,32,16,65,1,118,65,1,113,12,1,11,32,16,47,1,44,65,1,113,11,69,4,64,32,4,65,1,70,13,2,32,9,65,56,107,40,2,0,40,2,0,47,1,66,34,16,69,13,2,32,11,40,2,84,32,11,47,1,36,32,16,108,65,1,116,106,32,9,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,2,32,6,65,1,113,69,13,1,12,2,11,32,6,65,1,113,13,1,11,32,1,65,1,107,33,1,11,65,0,32,6,32,9,65,12,107,40,2,0,27,33,6,32,4,65,1,107,5,65,0,11,33,4,32,1,32,3,75,13,0,11,11,32,5,32,6,58,0,68,32,5,32,4,54,2,48,32,5,32,1,54,2,64,32,5,45,0,28,33,4,32,1,32,3,73,4,64,32,5,40,2,20,33,9,32,5,40,2,4,33,16,3,64,32,0,4,127,2,64,2,64,2,127,32,16,32,0,65,28,108,106,34,6,65,28,107,40,2,0,40,2,0,34,11,65,1,113,4,64,32,11,65,1,118,65,1,113,12,1,11,32,11,47,1,44,65,1,113,11,69,4,64,32,0,65,1,70,13,2,32,6,65,56,107,40,2,0,40,2,0,47,1,66,34,11,69,13,2,32,9,40,2,84,32,9,47,1,36,32,11,108,65,1,116,106,32,6,65,8,107,40,2,0,65,1,116,106,47,1,0,69,13,2,32,4,65,1,113,69,13,1,12,2,11,32,4,65,1,113,13,1,11,32,3,65,1,107,33,3,11,65,0,32,4,32,6,65,12,107,40,2,0,27,33,4,32,0,65,1,107,5,65,0,11,33,0,32,1,32,3,73,13,0,11,11,32,5,32,4,58,0,28,32,5,32,0,54,2,8,32,5,32,3,54,2,24,2,64,32,15,69,4,64,32,13,33,1,12,1,11,2,64,32,13,69,13,0,32,8,32,10,32,13,65,24,108,106,34,0,65,4,107,34,1,40,2,0,75,13,0,32,1,32,2,54,2,0,32,0,65,16,107,32,29,55,2,0,32,13,33,1,12,1,11,32,2,32,8,77,4,64,32,13,33,1,12,1,11,2,64,32,13,65,1,106,34,1,32,17,77,13,0,65,8,32,17,65,1,116,34,0,32,1,32,0,32,1,75,27,34,0,32,0,65,8,77,27,34,17,65,24,108,33,0,32,10,4,64,32,10,32,0,35,6,40,2,0,17,1,0,33,10,12,1,11,32,0,35,7,40,2,0,17,0,0,33,10,11,32,10,32,13,65,24,108,106,34,0,32,2,54,2,20,32,0,32,8,54,2,16,32,0,32,29,55,2,8,32,0,32,30,55,2,0,11,32,12,32,7,40,2,12,34,0,32,0,32,12,73,27,33,8,3,64,2,64,32,8,32,12,34,0,70,4,64,32,8,33,0,12,1,11,32,0,65,1,106,33,12,32,7,40,2,8,32,0,65,24,108,106,40,2,20,32,2,77,13,1,11,11,32,5,40,2,48,34,11,4,64,32,2,33,8,32,29,33,30,32,1,33,13,32,0,33,12,32,5,40,2,8,34,15,13,1,11,11,2,127,32,19,40,2,0,34,8,65,1,113,4,64,32,19,45,0,5,65,15,113,33,3,32,19,45,0,4,33,2,32,19,45,0,7,34,0,32,19,45,0,6,106,12,1,11,65,0,32,8,40,2,12,32,8,40,2,20,34,0,27,33,2,32,0,32,8,40,2,8,106,33,3,32,8,40,2,24,33,0,32,8,40,2,16,32,8,40,2,4,106,11,33,8,32,3,173,32,0,32,2,106,173,66,32,134,132,33,29,2,127,32,22,40,2,0,34,2,65,1,113,4,64,32,22,45,0,7,34,0,32,22,45,0,6,106,33,3,32,22,45,0,4,33,12,32,22,45,0,5,65,15,113,12,1,11,65,0,32,2,40,2,12,32,2,40,2,20,34,13,27,33,12,32,2,40,2,16,32,2,40,2,4,106,33,3,32,2,40,2,24,33,0,32,13,32,2,40,2,8,106,11,173,32,0,32,12,106,173,66,32,134,132,33,30,2,64,32,3,32,8,75,4,64,2,64,32,1,69,13,0,32,8,32,10,32,1,65,24,108,106,34,0,65,4,107,34,2,40,2,0,75,13,0,32,2,32,3,54,2,0,32,0,65,16,107,32,30,55,2,0,32,1,33,0,12,2,11,2,64,32,1,65,1,106,34,0,32,17,77,13,0,65,8,32,17,65,1,116,34,2,32,0,32,0,32,2,73,27,34,2,32,2,65,8,77,27,65,24,108,33,2,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,33,10,12,1,11,32,2,35,7,40,2,0,17,0,0,33,10,11,32,10,32,1,65,24,108,106,34,1,32,3,54,2,20,32,1,32,8,54,2,16,32,1,32,30,55,2,8,32,1,32,29,55,2,0,12,1,11,32,3,32,8,79,4,64,32,1,33,0,12,1,11,2,64,32,1,69,13,0,32,3,32,10,32,1,65,24,108,106,34,0,65,4,107,34,2,40,2,0,75,13,0,32,2,32,8,54,2,0,32,0,65,16,107,32,29,55,2,0,32,1,33,0,12,1,11,2,64,32,1,65,1,106,34,0,32,17,77,13,0,65,8,32,17,65,1,116,34,2,32,0,32,0,32,2,73,27,34,2,32,2,65,8,77,27,65,24,108,33,2,32,10,4,64,32,10,32,2,35,6,40,2,0,17,1,0,33,10,12,1,11,32,2,35,7,40,2,0,17,0,0,33,10,11,32,10,32,1,65,24,108,106,34,1,32,8,54,2,20,32,1,32,3,54,2,16,32,1,32,29,55,2,8,32,1,32,30,55,2,0,11,32,7,32,5,41,3,40,55,2,44,32,7,32,5,40,2,56,54,2,60,32,7,32,5,41,3,48,55,2,52,32,7,32,5,40,2,16,54,2,40,32,7,32,5,41,3,8,55,2,32,32,7,32,5,41,3,0,55,2,24,32,7,32,10,54,2,4,32,5,65,224,0,106,36,0,32,24,32,0,54,2,12,32,7,40,2,8,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,48,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,28,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,7,40,2,4,32,7,65,64,107,36,0,33,1,32,24,40,2,12,4,64,3,64,32,1,32,23,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,23,65,1,106,34,23,32,24,40,2,12,34,0,73,13,0,11,32,0,33,23,11,35,11,34,0,32,1,54,2,4,32,0,32,23,54,2,0,32,24,65,16,106,36,0,11,180,1,1,4,127,35,0,65,16,107,34,3,36,0,32,3,32,0,40,2,16,34,1,54,2,12,32,1,65,24,35,9,40,2,0,17,1,0,33,1,32,0,40,2,16,65,24,108,34,4,4,64,32,1,32,0,40,2,12,32,4,252,10,0,0,11,32,3,40,2,12,4,64,3,64,32,1,32,2,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,2,65,1,106,34,2,32,3,40,2,12,34,0,73,13,0,11,32,0,33,2,11,35,11,34,0,32,1,54,2,4,32,0,32,2,54,2,0,32,3,65,16,106,36,0,11,177,22,2,34,127,6,126,35,0,65,48,107,34,18,36,0,32,18,35,11,34,3,40,2,24,65,1,116,54,2,12,32,18,32,3,40,2,28,65,1,116,54,2,16,32,18,32,3,40,2,32,65,1,116,54,2,20,32,18,32,3,53,2,0,32,3,53,2,4,66,33,134,132,55,2,24,32,18,32,3,53,2,8,32,3,53,2,12,66,33,134,132,55,2,32,32,18,32,3,53,2,16,32,3,53,2,20,66,33,134,132,55,2,40,32,18,65,12,106,33,2,65,0,33,3,35,0,65,48,107,34,11,36,0,32,0,34,23,40,2,16,4,64,3,64,32,23,40,2,12,32,3,65,24,108,106,32,2,16,79,32,3,65,1,106,34,3,32,23,40,2,16,73,13,0,11,11,32,11,66,0,55,3,40,32,11,66,0,55,3,32,32,11,66,0,55,3,24,32,11,32,23,41,2,0,55,3,8,32,11,65,24,106,33,24,35,0,65,48,107,34,13,36,0,65,192,2,35,7,40,2,0,17,0,0,33,8,32,2,40,2,0,33,0,32,2,41,2,12,33,38,32,2,40,2,4,33,3,32,2,41,2,20,33,37,32,2,40,2,8,33,1,32,8,32,2,41,2,28,55,2,32,32,8,32,1,54,2,28,32,8,32,37,55,2,20,32,8,32,3,54,2,16,32,8,32,38,55,2,8,32,8,32,0,54,2,4,32,8,32,11,65,8,106,54,2,0,65,1,33,0,65,8,33,25,3,64,2,126,32,8,32,0,65,1,107,34,3,65,40,108,106,34,2,40,2,0,34,19,40,2,0,34,1,65,1,113,34,4,4,64,32,19,45,0,7,34,0,173,66,32,134,33,36,32,19,45,0,6,33,5,65,1,33,26,32,19,45,0,5,34,15,65,15,113,173,32,19,49,0,4,66,32,134,132,12,1,11,32,1,45,0,45,65,1,113,69,33,26,32,1,40,2,4,33,5,32,19,45,0,5,33,15,32,1,41,2,20,33,36,32,1,40,2,16,33,0,32,1,41,2,8,11,33,35,32,0,32,5,106,33,7,2,64,32,2,40,2,4,34,9,32,7,32,4,4,127,32,15,65,240,1,113,65,4,118,5,32,1,40,2,28,11,34,15,106,34,1,75,4,64,32,3,33,0,12,1,11,32,2,41,2,32,33,37,32,2,40,2,28,33,16,32,2,40,2,24,33,17,32,2,40,2,20,33,14,32,2,41,2,8,33,40,2,64,32,2,40,2,16,34,12,32,9,71,13,0,32,9,32,16,71,13,0,32,1,32,9,71,13,0,32,3,33,0,12,1,11,32,35,66,32,136,167,33,1,32,37,66,32,136,167,33,22,32,35,167,33,2,2,127,32,5,32,12,79,4,64,32,37,167,32,2,32,14,107,34,4,65,0,32,2,32,4,79,27,106,173,32,1,32,1,32,17,107,34,4,65,0,32,1,32,4,79,27,32,22,106,32,2,32,14,75,27,173,66,32,134,132,33,35,32,16,32,12,107,32,5,106,33,5,32,0,12,1,11,32,36,167,33,10,32,36,66,32,136,167,33,6,32,5,32,9,75,4,64,32,12,32,5,107,33,4,66,0,33,36,32,16,33,5,32,37,33,35,65,0,32,0,32,4,65,0,32,4,32,12,77,27,34,4,77,13,1,26,32,6,32,6,32,17,32,17,32,1,107,34,1,65,0,32,1,32,17,77,27,32,2,32,14,73,27,107,34,1,65,0,32,1,32,6,77,27,32,10,32,14,32,2,107,34,2,65,0,32,2,32,14,77,27,34,2,75,27,173,66,32,134,32,10,32,2,107,34,2,65,0,32,2,32,10,77,27,173,132,33,36,32,0,32,4,107,12,1,11,2,64,32,7,32,9,75,13,0,32,7,32,9,70,32,9,32,12,70,113,13,0,32,0,12,1,11,65,0,33,4,32,16,32,5,107,34,0,65,0,32,0,32,16,77,27,33,20,32,22,32,22,32,1,107,34,0,65,0,32,0,32,22,77,27,32,37,167,34,0,32,2,75,27,33,21,32,0,32,2,107,34,2,65,0,32,0,32,2,79,27,33,2,66,0,33,39,32,7,32,12,75,4,64,65,0,32,1,32,10,27,32,6,106,34,0,32,0,32,17,107,34,1,65,0,32,0,32,1,79,27,32,35,32,36,124,167,34,0,32,14,75,27,173,66,32,134,32,0,32,14,107,34,1,65,0,32,0,32,1,79,27,173,132,33,39,32,7,32,12,107,33,4,11,32,39,66,32,136,167,65,0,32,21,32,39,167,34,0,27,106,173,66,32,134,32,0,32,2,106,173,132,33,36,32,4,32,20,106,11,33,7,32,13,32,19,41,2,0,34,38,55,3,16,32,38,66,32,136,167,33,0,2,64,32,38,167,34,4,65,1,113,4,64,32,4,33,2,12,1,11,32,4,34,2,40,2,0,65,1,70,13,0,32,2,40,2,36,65,3,116,65,204,0,106,34,0,35,7,40,2,0,17,0,0,33,10,32,0,4,64,32,10,32,2,32,2,40,2,36,65,3,116,107,32,0,252,10,0,0,11,32,10,32,4,40,2,36,34,0,65,3,116,106,33,2,65,0,33,1,2,64,32,0,4,64,3,64,32,10,32,1,65,3,116,106,40,2,0,34,6,65,1,113,69,4,64,32,6,32,6,40,2,0,65,1,106,54,2,0,32,6,40,2,0,26,32,4,40,2,36,33,0,11,32,1,65,1,106,34,1,32,0,73,13,0,12,2,11,0,11,32,4,45,0,44,65,192,0,113,69,13,0,32,4,40,2,48,33,1,32,13,32,4,41,2,68,55,3,40,32,13,32,4,41,2,60,55,3,32,32,13,32,4,41,2,52,55,3,24,2,64,32,4,40,2,72,34,0,65,25,73,13,0,32,0,35,7,40,2,0,17,0,0,33,1,32,4,40,2,72,34,0,69,13,0,32,1,32,4,40,2,48,32,0,252,10,0,0,11,32,2,32,1,54,2,48,32,2,32,13,41,3,24,55,2,52,32,2,32,13,41,3,32,55,2,60,32,2,32,13,41,3,40,55,2,68,11,32,2,65,1,54,2,0,32,13,32,13,41,3,16,55,3,8,32,24,32,13,65,8,106,16,10,65,0,33,0,11,2,64,2,64,32,2,65,1,113,4,64,2,64,32,15,65,15,75,13,0,32,5,65,254,1,75,13,0,32,35,66,255,255,255,255,239,31,86,13,0,32,35,66,240,255,255,255,15,131,66,0,82,13,0,32,7,65,254,1,75,13,0,32,36,66,255,255,255,255,239,31,86,13,0,32,36,66,255,255,255,255,15,131,66,0,82,13,0,32,35,66,32,136,167,32,35,167,65,8,116,65,128,30,113,32,0,65,128,224,3,113,114,32,5,65,16,116,114,114,32,7,65,24,116,114,33,0,12,2,11,2,127,32,24,40,2,4,34,1,4,64,32,24,32,1,65,1,107,34,1,54,2,4,32,24,40,2,0,32,1,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,34,1,66,0,55,2,32,32,1,32,15,54,2,28,32,1,32,36,55,2,20,32,1,32,7,54,2,16,32,1,32,35,55,2,8,32,1,32,5,54,2,4,32,1,65,1,54,2,0,32,1,32,2,65,16,118,59,1,42,32,1,32,2,65,128,254,3,113,65,8,118,59,1,40,32,1,32,1,47,1,44,65,128,241,3,113,32,2,65,1,118,65,7,113,32,2,65,224,0,113,65,4,116,114,114,59,1,44,12,2,11,32,2,32,36,55,2,20,32,2,32,7,54,2,16,32,2,32,35,55,2,8,32,2,32,5,54,2,4,11,32,2,33,1,11,2,64,32,1,65,1,113,4,64,32,1,65,16,114,33,1,12,1,11,32,1,32,1,47,1,44,65,32,114,59,1,44,11,32,19,32,1,173,32,0,173,66,32,134,132,55,2,0,32,1,65,1,113,4,64,32,3,33,0,12,1,11,32,1,40,2,36,34,34,69,4,64,32,3,33,0,12,1,11,32,40,66,32,136,167,33,27,32,40,167,33,28,32,35,167,33,31,66,0,33,35,65,0,33,2,65,0,33,1,3,64,32,19,40,2,0,34,0,32,0,40,2,36,65,3,116,107,32,2,65,3,116,106,34,20,45,0,5,33,4,2,127,32,20,40,2,0,34,0,65,1,113,34,5,4,64,32,4,65,15,113,33,15,32,20,45,0,4,33,32,32,20,45,0,7,34,33,32,20,45,0,6,106,12,1,11,65,0,32,0,40,2,12,32,0,40,2,20,34,7,27,33,32,32,7,32,0,40,2,8,106,33,15,32,0,40,2,24,33,33,32,0,40,2,16,32,0,40,2,4,106,11,34,10,32,1,106,33,7,32,35,66,32,136,167,33,21,32,35,167,33,6,2,64,32,9,32,5,4,127,32,4,65,240,1,113,65,4,118,5,32,0,40,2,28,11,32,7,106,75,4,64,32,3,33,0,12,1,11,2,64,2,64,32,1,32,12,77,4,64,32,2,69,13,2,32,1,32,12,71,13,2,32,10,69,13,2,32,26,32,6,32,31,75,114,13,1,12,2,11,32,26,32,6,32,31,75,114,69,13,1,11,32,5,4,64,32,3,33,0,12,4,11,32,0,45,0,45,65,1,113,69,4,64,32,3,33,0,12,4,11,32,17,32,22,70,4,64,32,3,33,0,12,4,11,32,6,32,14,77,13,0,32,3,33,0,12,3,11,66,0,33,36,65,0,33,10,65,0,33,4,66,0,33,35,32,1,32,9,73,4,64,32,9,32,1,107,33,4,32,28,32,6,107,34,0,65,0,32,0,32,28,77,27,173,32,27,32,27,32,21,107,34,0,65,0,32,0,32,27,77,27,32,6,32,28,73,27,173,66,32,134,132,33,35,11,32,1,32,12,73,4,64,32,12,32,1,107,33,10,32,14,32,6,107,34,0,65,0,32,0,32,14,77,27,173,32,17,32,17,32,21,107,34,0,65,0,32,0,32,17,77,27,32,6,32,14,73,27,173,66,32,134,132,33,36,11,2,127,32,1,32,16,79,4,64,66,0,33,39,65,0,12,1,11,32,37,66,32,136,167,34,0,32,0,32,21,107,34,5,65,0,32,0,32,5,79,27,32,37,167,34,0,32,6,75,27,173,66,32,134,32,0,32,6,107,34,5,65,0,32,0,32,5,79,27,173,132,33,39,32,16,32,1,107,11,33,5,2,127,32,7,32,9,75,4,64,32,40,33,38,32,9,12,1,11,32,40,33,38,32,9,32,7,32,9,70,32,9,32,12,70,113,13,0,26,32,37,33,38,32,4,34,10,33,5,32,35,34,36,33,39,32,16,11,33,16,2,64,32,3,65,1,106,34,0,32,25,77,13,0,65,8,32,25,65,1,116,34,1,32,0,32,0,32,1,73,27,34,1,32,1,65,8,77,27,34,25,65,40,108,33,1,32,8,4,64,32,8,32,1,35,6,40,2,0,17,1,0,33,8,12,1,11,32,1,35,7,40,2,0,17,0,0,33,8,11,32,8,32,3,65,40,108,106,34,3,32,39,55,2,32,32,3,32,5,54,2,28,32,3,32,36,55,2,20,32,3,32,10,54,2,16,32,3,32,35,55,2,8,32,3,32,4,54,2,4,32,3,32,20,54,2,0,32,0,33,3,32,38,33,37,11,32,6,32,15,106,173,32,32,32,33,106,65,0,32,21,32,15,27,106,173,66,32,134,132,33,35,32,7,33,1,32,2,65,1,106,34,2,32,34,71,13,0,11,11,32,0,13,0,11,32,8,4,64,32,8,35,8,40,2,0,17,2,0,11,32,11,32,11,41,2,8,55,2,16,32,13,65,48,106,36,0,32,23,32,11,41,3,16,55,2,0,32,11,40,2,24,34,0,4,64,2,64,32,11,40,2,28,34,2,69,13,0,65,0,33,3,32,2,65,4,79,4,64,32,2,65,124,113,33,5,3,64,32,0,32,3,65,3,116,106,34,1,40,2,0,35,8,34,4,40,2,0,17,2,0,32,1,40,2,8,32,4,40,2,0,17,2,0,32,1,40,2,16,32,4,40,2,0,17,2,0,32,1,40,2,24,32,4,40,2,0,17,2,0,32,3,65,4,106,33,3,32,29,65,4,106,34,29,32,5,71,13,0,11,11,32,2,65,3,113,34,2,69,13,0,3,64,32,0,32,3,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,3,65,1,106,33,3,32,30,65,1,106,34,30,32,2,71,13,0,11,11,32,0,35,8,40,2,0,17,2,0,11,32,11,40,2,36,34,0,4,64,32,0,35,8,40,2,0,17,2,0,11,32,11,65,48,106,36,0,32,18,65,48,106,36,0,11,252,1,2,6,127,1,126,35,0,65,48,107,34,1,36,0,35,11,34,2,40,2,20,32,1,32,2,40,2,28,65,1,116,54,2,44,32,1,32,2,40,2,24,54,2,40,32,1,32,1,41,2,40,55,3,8,65,1,116,33,6,32,1,41,2,8,33,7,2,127,32,0,40,2,0,34,3,65,1,113,4,64,32,0,45,0,5,65,15,113,33,4,32,0,45,0,4,33,5,32,0,45,0,6,12,1,11,32,3,40,2,12,33,5,32,3,40,2,8,33,4,32,3,40,2,4,11,33,3,32,1,32,0,54,2,36,32,1,32,0,54,2,32,32,1,65,0,54,2,28,32,1,32,3,32,6,106,54,2,16,32,1,32,4,32,7,167,106,54,2,20,32,1,65,0,32,7,66,32,136,167,32,4,27,32,5,106,54,2,24,32,2,32,1,40,2,28,54,2,16,32,2,32,1,40,2,20,54,2,8,32,2,32,1,40,2,32,54,2,0,32,2,32,1,40,2,24,65,1,118,54,2,12,32,2,32,1,40,2,16,65,1,118,54,2,4,32,1,65,48,106,36,0,11,181,1,1,4,127,35,0,65,32,107,34,1,36,0,2,127,32,0,40,2,0,34,2,65,1,113,4,64,32,0,45,0,5,65,15,113,33,3,32,0,45,0,4,33,4,32,0,45,0,6,12,1,11,32,2,40,2,12,33,4,32,2,40,2,8,33,3,32,2,40,2,4,11,33,2,32,1,32,0,54,2,28,32,1,32,0,54,2,24,32,1,65,0,54,2,20,32,1,32,4,54,2,16,32,1,32,3,54,2,12,32,1,32,2,54,2,8,35,11,34,0,32,1,40,2,20,54,2,16,32,0,32,1,40,2,12,54,2,8,32,0,32,1,40,2,24,54,2,0,32,0,32,1,40,2,16,65,1,118,54,2,12,32,0,32,1,40,2,8,65,1,118,54,2,4,32,1,65,32,106,36,0,11,136,1,1,3,127,35,0,65,16,107,34,2,36,0,35,11,34,3,2,127,2,64,2,64,32,1,65,253,255,3,75,13,0,32,0,40,2,0,65,15,73,13,0,32,0,40,2,72,32,1,65,3,108,106,45,0,2,65,1,113,13,1,11,32,2,65,0,54,2,12,65,0,12,1,11,32,0,40,2,156,1,32,1,65,2,116,106,34,1,47,1,0,33,4,32,2,32,1,47,1,2,54,2,12,32,0,40,2,160,1,32,4,65,1,116,106,11,54,2,4,32,3,32,2,40,2,12,54,2,0,32,2,65,16,106,36,0,11,72,1,3,127,35,0,65,16,107,34,1,36,0,32,1,32,0,40,2,0,65,15,79,4,127,32,0,40,2,152,1,33,2,32,0,40,2,148,1,5,65,0,11,54,2,12,35,11,34,3,32,2,54,2,4,32,3,32,1,40,2,12,54,2,0,32,1,65,16,106,36,0,11,68,1,1,127,35,11,32,0,65,164,1,106,65,0,32,0,40,2,0,65,14,75,27,34,0,4,127,35,11,34,1,32,0,45,0,0,54,2,4,32,1,32,0,45,0,1,54,2,8,32,1,32,0,45,0,2,54,2,12,65,3,5,65,0,11,54,2,0,11,11,0,32,0,32,1,16,68,65,2,73,11,9,0,32,0,32,1,16,68,69,11,192,2,1,6,127,35,0,65,16,107,34,3,36,0,32,3,65,0,54,2,12,32,3,32,0,40,2,100,54,2,12,32,0,40,2,68,33,1,32,3,40,2,12,34,2,65,24,108,34,0,16,34,33,4,32,0,4,64,32,4,32,1,32,0,252,10,0,0,11,2,64,32,2,69,13,0,65,0,33,1,32,2,65,1,71,4,64,32,2,65,126,113,33,5,3,64,32,4,32,1,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,32,0,32,0,40,2,40,65,1,118,54,2,40,32,0,32,0,40,2,44,65,1,118,54,2,44,32,0,32,0,40,2,28,65,1,118,54,2,28,32,0,32,0,40,2,36,65,1,118,54,2,36,32,1,65,2,106,33,1,32,6,65,2,106,34,6,32,5,71,13,0,11,11,32,2,65,1,113,69,13,0,32,4,32,1,65,24,108,106,34,0,32,0,40,2,16,65,1,118,54,2,16,32,0,32,0,40,2,20,65,1,118,54,2,20,32,0,32,0,40,2,4,65,1,118,54,2,4,32,0,32,0,40,2,12,65,1,118,54,2,12,11,35,11,34,0,32,4,54,2,4,32,0,32,2,54,2,0,32,3,65,16,106,36,0,11,14,0,32,0,40,2,4,32,0,45,0,8,16,6,11,55,0,32,0,32,1,65,1,118,32,2,40,2,0,32,2,40,2,4,65,1,118,32,3,16,7,32,3,65,254,207,0,32,3,40,2,0,65,1,116,34,1,32,1,65,255,207,0,75,27,54,2,0,32,0,11,215,207,1,2,51,127,4,126,35,0,65,48,107,34,29,36,0,32,29,66,1,55,2,40,32,29,32,1,54,2,32,32,29,35,2,65,21,106,54,2,36,2,64,32,4,4,64,32,4,65,1,71,4,64,32,4,65,126,113,33,1,3,64,32,3,32,7,65,24,108,106,34,8,32,8,40,2,16,65,1,116,54,2,16,32,8,32,8,40,2,20,65,1,116,54,2,20,32,8,32,8,40,2,4,65,1,116,54,2,4,32,8,32,8,40,2,12,65,1,116,54,2,12,32,8,32,8,40,2,40,65,1,116,54,2,40,32,8,32,8,40,2,44,65,1,116,54,2,44,32,8,32,8,40,2,28,65,1,116,54,2,28,32,8,32,8,40,2,36,65,1,116,54,2,36,32,7,65,2,106,33,7,32,9,65,2,106,34,9,32,1,71,13,0,11,11,32,4,65,1,113,4,64,32,3,32,7,65,24,108,106,34,1,32,1,40,2,16,65,1,116,54,2,16,32,1,32,1,40,2,20,65,1,116,54,2,20,32,1,32,1,40,2,4,65,1,116,54,2,4,32,1,32,1,40,2,12,65,1,116,54,2,12,11,32,0,32,3,32,4,16,56,26,32,3,16,50,12,1,11,32,0,65,0,65,0,16,56,26,11,32,29,32,29,41,2,40,55,3,24,32,29,32,29,41,2,32,55,3,16,32,29,35,1,65,220,211,0,106,41,2,0,55,3,8,35,0,65,16,107,34,40,36,0,32,0,32,29,41,2,8,34,56,62,2,180,10,32,0,32,56,55,2,172,10,32,40,32,29,41,2,24,55,3,8,32,40,32,29,41,2,16,55,3,0,65,0,33,1,65,0,33,9,35,0,65,144,2,107,34,10,36,0,2,64,32,0,34,5,40,2,160,9,34,23,69,13,0,32,40,40,2,4,69,13,0,32,5,32,40,41,2,0,55,2,76,32,5,32,40,41,2,8,55,2,84,32,5,65,0,54,2,72,32,5,66,0,55,2,108,32,5,40,2,68,33,8,2,127,32,5,40,2,100,34,13,4,64,32,5,40,2,32,33,7,3,64,2,64,32,8,32,1,65,24,108,106,34,4,40,2,20,34,0,32,7,77,13,0,32,0,32,4,40,2,16,34,3,77,13,0,32,3,32,7,79,4,64,32,5,32,4,41,2,0,55,2,36,32,5,32,3,54,2,32,11,32,5,32,1,54,2,104,65,0,12,3,11,32,1,65,1,106,34,1,32,13,71,13,0,11,11,32,5,32,13,54,2,104,32,8,32,13,65,24,108,106,34,1,65,4,107,40,2,0,33,0,32,1,65,16,107,41,2,0,33,56,32,5,65,0,54,2,72,32,5,32,56,55,2,36,32,5,32,0,54,2,32,32,5,66,0,55,2,108,65,1,11,33,0,32,5,65,0,54,2,192,10,32,5,65,0,54,2,164,10,32,5,65,0,54,2,0,32,5,32,0,54,2,116,32,5,65,0,54,2,148,10,32,5,65,160,10,106,33,54,2,64,2,64,2,64,2,64,2,64,32,5,45,0,197,10,13,0,32,5,40,2,136,10,13,0,32,5,40,2,132,9,40,2,0,34,3,40,2,0,34,0,47,1,0,65,1,71,13,0,32,0,40,2,156,1,34,1,32,3,40,2,8,34,0,73,4,64,32,3,32,1,54,2,8,12,2,11,32,0,32,1,70,13,1,11,2,64,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,65,153,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,41,0,7,55,0,139,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,153,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,41,0,7,55,0,139,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,45,0,197,10,69,13,1,12,2,11,2,64,32,23,40,2,104,69,13,0,32,23,40,2,112,34,0,69,13,0,32,5,32,0,17,11,0,54,2,136,10,11,65,0,33,1,32,5,45,0,196,10,13,2,32,2,4,64,32,2,40,2,0,34,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,11,32,5,32,2,41,2,0,55,2,152,10,32,2,40,2,12,32,2,40,2,16,32,5,40,2,68,32,5,40,2,100,32,54,16,84,32,2,41,2,0,33,56,32,5,66,0,55,2,128,10,65,0,33,2,32,5,65,0,54,2,248,9,32,5,40,2,244,9,33,1,32,5,40,2,252,9,69,4,64,2,127,32,1,4,64,32,1,65,128,1,35,6,40,2,0,17,1,0,12,1,11,65,128,1,35,7,40,2,0,17,0,0,11,33,1,32,5,65,8,54,2,252,9,32,5,40,2,248,9,33,2,11,32,5,32,1,54,2,244,9,32,5,32,2,65,1,106,54,2,248,9,32,1,32,2,65,4,116,106,34,0,66,0,55,2,8,32,0,32,56,55,2,0,2,64,2,64,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,17,65,4,116,106,34,0,65,16,107,40,2,0,34,4,65,1,113,13,0,32,4,40,2,36,34,7,69,13,0,32,0,65,4,107,40,2,0,33,1,32,5,32,17,65,1,106,34,3,32,5,40,2,252,9,34,0,75,4,127,32,2,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,4,116,35,6,40,2,0,17,1,0,33,2,32,5,32,0,54,2,252,9,32,4,40,2,36,33,7,32,5,40,2,248,9,34,17,65,1,106,5,32,3,11,54,2,248,9,32,5,32,2,54,2,244,9,32,4,32,7,65,3,116,107,41,2,0,33,56,32,2,32,17,65,4,116,106,34,0,32,1,54,2,12,32,0,65,0,54,2,8,32,0,32,56,55,2,0,12,1,11,32,5,66,0,55,2,128,10,32,5,65,0,54,2,248,9,11,2,64,2,64,2,64,32,5,40,2,96,34,0,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,34,0,41,0,137,3,55,0,132,1,32,5,32,0,45,0,153,3,58,0,148,1,32,5,32,0,41,0,145,3,55,0,140,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,34,1,41,0,137,3,55,0,132,1,32,5,32,1,45,0,153,3,58,0,148,1,32,5,32,1,41,0,145,3,55,0,140,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,0,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,65,140,10,106,33,17,32,5,40,2,140,10,34,1,69,13,4,32,5,40,2,160,9,33,0,32,10,32,5,41,2,152,10,55,3,184,1,32,10,65,184,1,106,65,0,32,0,65,0,32,1,16,55,65,10,32,5,40,2,140,10,16,9,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,140,10,106,33,17,11,32,5,40,2,164,10,69,13,1,32,5,65,132,1,106,33,0,3,64,32,5,40,2,160,10,33,1,2,64,32,5,40,2,96,69,4,64,32,17,40,2,0,69,13,1,11,32,10,32,1,32,14,65,24,108,106,41,2,16,55,3,160,1,32,0,65,128,8,35,1,65,225,2,106,32,10,65,160,1,106,16,11,26,32,5,40,2,96,34,1,4,64,32,5,40,2,92,65,0,32,0,32,1,17,3,0,11,32,0,33,2,32,17,40,2,0,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,17,40,2,0,16,9,32,2,45,0,0,33,1,11,32,1,192,32,17,40,2,0,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,14,65,1,106,34,14,32,5,40,2,164,10,73,13,0,11,12,1,11,32,5,66,0,55,2,128,10,32,5,65,0,54,2,248,9,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,2,32,5,35,1,65,184,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,47,0,8,59,0,140,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,184,8,106,34,0,41,0,0,55,0,132,1,32,5,32,0,47,0,8,59,0,140,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,1,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,69,13,3,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,244,9,106,33,55,32,5,65,132,1,106,33,23,3,64,2,64,32,5,40,2,132,9,34,2,40,2,4,34,0,69,4,64,65,1,33,14,65,127,33,27,12,1,11,32,0,65,1,70,33,14,32,2,40,2,0,33,7,65,0,33,17,2,64,2,64,3,64,2,64,32,7,32,17,65,5,116,34,46,106,34,1,40,2,28,13,0,3,64,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,32,1,40,2,0,34,0,41,2,8,33,56,32,0,47,1,0,33,0,32,10,32,2,40,2,4,54,2,132,1,32,10,32,0,54,2,136,1,32,10,32,56,55,2,140,1,32,10,32,17,54,2,128,1,32,23,65,128,8,35,1,65,185,1,106,32,10,65,128,1,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,23,32,0,17,3,0,11,32,23,33,2,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,65,0,33,51,35,0,65,224,3,107,34,6,36,0,32,17,65,5,116,34,16,32,5,40,2,132,9,40,2,0,106,34,0,40,2,16,33,20,32,0,40,2,12,33,25,32,0,40,2,0,34,0,40,2,4,33,41,32,0,47,1,0,33,13,32,6,66,0,55,3,248,2,32,6,65,0,54,2,240,2,32,6,66,0,55,3,232,2,2,64,32,14,65,1,113,4,64,2,64,32,5,40,2,248,9,34,2,69,13,0,32,5,65,244,9,106,33,24,32,5,65,132,1,106,33,1,32,25,65,48,106,33,18,32,25,69,32,25,114,65,1,113,33,8,3,64,32,24,40,2,0,32,2,65,4,116,106,34,2,65,16,107,40,2,0,34,0,69,13,1,32,0,65,8,118,33,21,32,2,65,12,107,40,2,0,33,3,32,2,65,4,107,40,2,0,33,15,2,127,32,0,65,1,113,34,19,4,64,32,3,65,16,118,65,255,1,113,32,3,65,24,118,106,33,11,32,21,65,255,1,113,12,1,11,32,0,40,2,16,32,0,40,2,4,106,33,11,32,0,47,1,40,11,33,2,32,15,32,41,75,4,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,3,11,32,5,40,2,160,9,33,3,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,3,40,2,8,32,3,40,2,4,106,32,0,77,13,0,32,3,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,144,2,32,1,65,128,8,35,1,65,235,6,106,32,6,65,144,2,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,2,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,5,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,11,32,15,106,65,127,32,2,65,255,255,3,113,27,33,12,2,64,2,64,2,64,32,15,32,41,73,4,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,3,77,13,0,32,4,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,160,2,32,1,65,128,8,35,1,65,206,6,106,32,6,65,160,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,35,1,65,148,12,106,33,9,2,64,32,5,40,2,128,10,34,2,69,13,0,32,2,65,1,113,13,0,32,2,45,0,44,65,192,0,113,69,13,0,32,9,32,2,65,48,106,32,2,40,2,36,27,33,9,11,32,9,40,2,24,33,7,2,64,2,64,2,64,2,127,35,1,65,148,12,106,34,2,32,8,13,0,26,32,2,32,25,45,0,44,65,192,0,113,69,13,0,26,32,2,32,18,32,25,40,2,36,27,11,34,4,40,2,24,34,2,65,25,79,4,64,32,2,32,7,71,13,2,32,9,40,2,0,33,9,32,4,40,2,0,33,4,12,1,11,32,2,32,7,71,13,1,11,32,9,32,4,32,2,16,18,69,13,1,11,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,3,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,3,77,13,0,32,4,40,2,56,32,3,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,224,2,32,1,65,128,8,35,1,65,252,5,106,32,6,65,224,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,2,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,5,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,2,64,2,64,2,127,2,64,2,64,2,64,32,19,4,64,32,0,65,16,113,69,13,1,35,1,65,196,3,106,12,4,11,35,1,65,196,3,106,32,0,47,1,44,34,2,65,32,113,13,3,26,32,0,47,1,40,65,255,255,3,71,13,1,35,1,65,226,7,106,12,3,11,32,0,65,32,113,69,13,1,35,1,65,142,8,106,12,2,11,35,1,65,142,8,106,32,2,65,128,4,113,13,1,26,32,2,65,24,113,69,13,0,35,1,65,208,8,106,12,1,11,32,5,40,2,192,10,34,9,32,5,40,2,164,10,34,7,79,13,1,32,5,40,2,160,10,33,4,3,64,32,15,32,4,32,9,65,24,108,106,34,2,40,2,20,79,4,64,32,7,32,9,65,1,106,34,9,71,13,1,12,3,11,11,32,2,40,2,16,32,12,79,13,1,35,1,65,219,8,106,11,33,3,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,19,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,9,40,2,8,32,9,40,2,4,106,32,4,77,13,0,32,9,40,2,56,32,4,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,180,2,32,6,32,3,54,2,176,2,32,1,65,128,8,35,1,65,138,7,106,32,6,65,176,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,6,32,3,54,2,148,3,32,6,32,0,54,2,144,3,32,6,2,127,2,64,32,0,65,1,113,4,64,32,21,65,255,1,113,33,11,12,1,11,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,11,65,254,255,3,73,13,0,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,1,11,2,64,2,64,32,5,40,2,160,9,34,16,40,2,24,34,2,32,13,77,4,64,32,16,40,2,44,32,16,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,8,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,4,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,18,4,127,32,2,32,18,65,1,116,106,65,0,33,9,3,64,32,2,47,1,0,32,11,70,13,4,32,2,65,2,106,33,2,32,9,65,1,106,34,9,32,18,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,4,65,1,106,34,4,32,8,71,13,0,11,12,2,11,32,16,40,2,40,32,16,40,2,4,32,13,108,65,1,116,106,32,11,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,16,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,32,6,32,6,41,2,144,3,55,3,216,2,32,5,32,13,32,6,65,216,2,106,32,6,65,232,2,106,16,81,33,2,32,5,40,2,96,33,4,2,64,32,2,69,4,64,32,4,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,4,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,4,40,2,8,32,4,40,2,4,106,32,0,77,13,0,32,4,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,35,1,65,171,10,106,33,3,2,64,2,64,2,64,32,11,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,3,12,1,11,65,0,33,3,32,4,40,2,8,32,4,40,2,4,106,32,11,77,13,0,32,4,40,2,56,32,11,65,2,116,106,40,2,0,33,3,11,32,6,32,3,54,2,212,2,32,6,32,2,54,2,208,2,32,1,65,128,8,35,1,65,145,5,106,32,6,65,208,2,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,2,64,32,4,69,4,64,32,5,40,2,140,10,69,13,1,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,1,113,4,127,32,21,65,255,1,113,5,32,0,47,1,40,11,65,255,255,3,113,34,4,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,9,40,2,8,32,9,40,2,4,106,32,4,77,13,0,32,9,40,2,56,32,4,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,192,2,32,1,65,128,8,35,1,65,185,6,106,32,6,65,192,2,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,51,32,0,65,1,113,13,8,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,12,8,11,2,64,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,1,65,4,116,106,34,0,65,16,107,40,2,0,34,3,65,1,113,13,0,3,64,32,3,40,2,36,34,9,69,13,1,32,0,65,4,107,40,2,0,33,4,32,5,32,1,65,1,106,34,7,32,5,40,2,252,9,34,0,75,4,127,32,2,65,8,32,0,65,1,116,34,0,32,7,32,0,32,7,75,27,34,0,32,0,65,8,77,27,34,0,65,4,116,35,6,40,2,0,17,1,0,33,2,32,5,32,0,54,2,252,9,32,3,40,2,36,33,9,32,5,40,2,248,9,34,1,65,1,106,5,32,7,11,54,2,248,9,32,5,32,2,54,2,244,9,32,3,32,9,65,3,116,107,41,2,0,33,56,32,2,32,1,65,4,116,106,34,0,32,4,54,2,12,32,0,65,0,54,2,8,32,0,32,56,55,2,0,32,5,40,2,244,9,34,2,32,5,40,2,248,9,34,1,65,4,116,106,34,0,65,16,107,40,2,0,34,3,65,1,113,69,13,0,11,11,32,24,16,40,12,5,11,2,64,32,5,40,2,244,9,34,3,32,5,40,2,248,9,34,9,65,4,116,106,34,2,65,16,107,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,69,13,0,32,2,65,4,107,40,2,0,33,4,32,9,65,1,106,34,11,32,5,40,2,252,9,34,2,75,4,64,32,3,65,8,32,2,65,1,116,34,2,32,11,32,2,32,11,75,27,34,2,32,2,65,8,77,27,34,2,65,4,116,35,6,40,2,0,17,1,0,33,3,32,5,32,2,54,2,252,9,32,5,40,2,248,9,34,9,65,1,106,33,11,32,7,40,2,36,33,12,11,32,5,32,11,54,2,248,9,32,5,32,3,54,2,244,9,32,7,32,12,65,3,116,107,41,2,0,33,56,32,3,32,9,65,4,116,106,34,2,32,4,54,2,12,32,2,65,0,54,2,8,32,2,32,56,55,2,0,12,3,11,32,24,16,40,32,5,32,17,16,80,26,32,5,40,2,132,9,40,2,0,32,16,106,40,2,0,47,1,0,33,13,12,2,11,32,12,32,41,77,13,0,32,5,40,2,244,9,34,3,32,5,40,2,248,9,34,9,65,4,116,106,34,2,65,16,107,40,2,0,34,7,65,1,113,13,0,32,7,40,2,36,34,12,69,13,0,32,2,65,4,107,40,2,0,33,4,32,9,65,1,106,34,11,32,5,40,2,252,9,34,2,75,4,64,32,3,65,8,32,2,65,1,116,34,2,32,11,32,2,32,11,75,27,34,2,32,2,65,8,77,27,34,2,65,4,116,35,6,40,2,0,17,1,0,33,3,32,5,32,2,54,2,252,9,32,5,40,2,248,9,34,9,65,1,106,33,11,32,7,40,2,36,33,12,11,32,5,32,11,54,2,248,9,32,5,32,3,54,2,244,9,32,7,32,12,65,3,116,107,41,2,0,33,56,32,3,32,9,65,4,116,106,34,2,32,4,54,2,12,32,2,65,0,54,2,8,32,2,32,56,55,2,0,12,1,11,32,24,16,40,11,32,5,40,2,248,9,34,2,13,0,11,32,6,32,0,54,2,144,3,11,32,6,66,0,55,3,248,2,11,2,64,32,5,40,2,224,9,34,9,69,13,0,65,0,33,0,2,64,32,5,40,2,240,9,32,41,71,13,0,35,1,65,148,12,106,34,0,33,3,2,64,32,5,40,2,232,9,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,3,11,35,1,65,148,12,106,34,0,33,1,2,64,32,25,69,13,0,32,25,65,1,113,13,0,32,25,45,0,44,65,192,0,113,69,13,0,32,0,32,25,65,48,106,32,25,40,2,36,27,33,1,11,32,3,40,2,24,33,2,2,64,32,1,40,2,24,34,4,65,25,79,4,64,65,0,33,0,32,2,32,4,71,13,2,32,3,40,2,0,33,3,32,1,40,2,0,33,1,12,1,11,65,0,33,0,32,2,32,4,71,13,1,11,32,3,32,1,32,4,16,18,13,0,32,5,65,224,9,106,33,7,32,5,40,2,160,9,33,8,32,6,2,127,2,64,32,9,65,1,113,4,64,32,9,65,128,254,3,113,65,8,118,33,1,12,1,11,32,9,47,1,40,34,1,65,254,255,3,73,13,0,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,1,11,2,64,2,64,32,8,40,2,24,34,0,32,13,77,4,64,32,8,40,2,44,32,8,40,2,48,32,13,32,0,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,4,69,4,64,65,0,33,2,12,3,11,32,0,65,2,106,33,11,65,0,33,12,3,64,32,11,65,4,106,33,2,32,11,47,1,2,34,9,4,127,32,2,32,9,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,1,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,9,71,13,0,11,5,32,2,11,33,11,65,0,33,2,32,12,65,1,106,34,12,32,4,71,13,0,11,12,2,11,32,8,40,2,40,32,8,40,2,4,32,13,108,65,1,116,106,32,1,65,1,116,106,47,1,0,33,2,12,1,11,32,11,47,1,0,33,2,11,32,6,32,8,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,0,45,0,0,54,2,236,2,32,6,32,0,45,0,1,58,0,240,2,32,0,65,8,106,11,54,2,232,2,32,6,32,7,41,2,0,55,3,136,2,32,5,32,13,32,6,65,136,2,106,32,6,65,232,2,106,16,81,69,13,1,32,7,40,2,0,34,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,32,7,40,2,0,33,0,11,32,5,40,2,228,9,33,3,12,2,11,65,0,33,3,12,1,11,65,0,33,0,65,0,33,3,11,32,6,32,3,54,2,252,2,32,6,32,0,54,2,248,2,32,5,65,180,10,106,33,22,32,5,65,232,9,106,33,34,32,5,65,224,9,106,33,36,32,5,65,136,9,106,33,33,32,5,65,132,1,106,33,1,32,0,65,8,118,33,16,32,0,69,33,2,32,25,69,32,25,114,65,1,113,33,21,32,17,65,5,116,33,47,32,5,65,64,107,33,52,2,64,3,64,32,13,69,33,18,32,13,65,6,108,33,53,32,13,65,2,116,33,24,2,64,32,6,2,127,2,64,3,64,32,2,65,1,113,4,64,2,64,2,64,32,5,40,2,160,9,34,0,40,2,88,32,24,32,53,32,0,40,2,0,65,15,73,27,106,34,0,47,1,0,34,4,65,255,255,3,70,4,64,2,64,2,64,32,5,40,2,96,34,0,69,4,64,32,5,40,2,140,10,13,1,65,0,33,2,12,4,11,32,1,35,1,65,251,9,106,34,2,41,0,0,55,0,0,32,1,32,2,41,0,30,55,0,30,32,1,32,2,41,0,24,55,0,24,32,1,32,2,41,0,16,55,0,16,32,1,32,2,41,0,8,55,0,8,65,0,33,2,32,5,40,2,92,65,0,32,1,32,0,17,3,0,32,5,40,2,140,10,69,13,3,12,1,11,32,1,35,1,65,251,9,106,34,0,41,0,0,55,0,0,32,1,32,0,41,0,30,55,0,30,32,1,32,0,41,0,24,55,0,24,32,1,32,0,41,0,16,55,0,16,32,1,32,0,41,0,8,55,0,8,11,32,1,33,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,69,13,4,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,0,47,1,2,33,48,32,5,40,2,132,9,40,2,0,32,47,106,34,0,40,2,12,33,39,32,0,40,2,0,34,0,41,2,8,33,58,32,0,40,2,4,34,9,33,0,32,5,40,2,32,32,9,71,4,64,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,58,55,2,36,32,5,32,9,54,2,32,32,5,40,2,68,33,8,2,64,2,127,32,5,40,2,100,34,12,4,64,3,64,2,64,32,8,32,2,65,24,108,106,34,7,40,2,20,34,0,32,9,77,13,0,32,0,32,7,40,2,16,34,3,77,13,0,32,3,32,9,34,0,79,4,64,32,5,32,7,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,12,71,13,0,11,11,32,5,32,12,54,2,104,32,8,32,12,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,32,39,65,48,106,33,28,65,0,33,12,32,39,69,32,39,114,65,1,113,33,19,65,0,33,8,65,0,33,43,65,0,33,32,65,0,33,49,65,0,33,44,65,0,33,45,65,0,33,27,65,0,33,35,65,0,33,37,65,0,33,50,32,18,33,16,2,127,2,64,2,64,2,64,2,127,3,64,2,64,32,5,41,2,36,34,59,66,32,136,167,33,30,32,5,40,2,96,33,2,32,59,167,33,31,2,64,32,48,4,127,32,5,41,2,124,33,57,2,64,32,2,69,4,64,32,5,40,2,140,10,69,13,1,11,32,6,32,30,54,2,248,1,32,6,32,31,54,2,244,1,32,6,32,48,54,2,240,1,32,1,65,128,8,35,1,65,231,0,106,32,6,65,240,1,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,16,64,65,0,33,2,32,5,40,2,136,10,2,127,32,39,69,4,64,65,0,33,11,65,0,12,1,11,32,28,32,39,40,2,72,34,11,65,25,73,13,0,26,32,28,40,2,0,11,32,11,32,5,40,2,160,9,40,2,128,1,17,3,0,32,5,40,2,136,10,32,5,32,5,40,2,160,9,34,3,40,2,104,32,3,40,2,16,32,48,108,106,32,3,40,2,120,17,4,0,33,3,32,5,45,0,196,10,13,9,2,64,32,5,40,2,56,34,2,13,0,32,52,40,2,0,69,13,0,2,64,32,5,40,2,104,34,2,32,5,40,2,100,70,13,0,32,2,69,13,0,32,5,40,2,32,32,5,40,2,68,32,2,65,24,108,106,34,7,40,2,16,71,13,0,32,7,65,4,107,40,2,0,33,2,32,5,32,7,65,16,107,41,2,0,55,2,60,32,5,32,2,54,2,56,12,1,11,32,5,32,5,41,2,32,34,56,55,2,56,32,5,32,5,40,2,40,54,2,64,32,56,167,33,2,11,32,5,40,2,44,32,2,75,4,64,32,5,32,5,41,2,56,55,2,44,32,5,32,5,40,2,64,54,2,52,11,32,5,40,2,32,65,5,65,1,32,5,40,2,0,65,127,70,27,106,34,2,32,12,32,2,32,12,75,27,33,12,2,64,32,3,69,13,0,32,5,40,2,136,10,32,1,32,5,40,2,160,9,40,2,124,17,1,0,33,35,32,35,2,127,35,1,65,148,12,106,34,2,32,19,13,0,26,32,2,32,39,45,0,44,65,192,0,113,69,13,0,26,32,2,32,28,32,39,40,2,36,27,11,34,2,40,2,24,71,4,64,65,1,33,27,12,4,11,32,35,65,25,79,4,127,32,2,40,2,0,5,32,2,11,32,1,32,35,16,18,34,2,65,0,71,33,27,32,5,40,2,56,32,0,75,13,3,32,2,13,3,32,5,40,2,160,9,34,26,32,13,32,26,40,2,108,32,5,47,1,4,65,1,116,106,47,1,0,34,15,16,43,33,11,2,64,32,16,65,1,113,13,0,2,64,32,5,40,2,132,9,40,2,0,32,47,106,34,7,40,2,0,34,2,40,2,152,1,69,13,0,3,64,32,2,47,1,144,1,69,13,2,32,2,40,2,20,34,42,69,13,2,2,127,32,42,65,1,113,34,3,4,64,32,2,45,0,27,32,2,47,1,24,32,2,45,0,26,65,16,116,114,65,128,128,252,7,113,65,16,118,106,12,1,11,32,42,40,2,16,32,42,40,2,4,106,11,13,1,32,2,40,2,156,1,32,7,40,2,8,77,13,2,2,64,32,3,4,64,32,42,65,32,113,69,13,1,12,4,11,32,42,45,0,45,65,2,113,13,3,32,42,40,2,32,13,3,11,32,2,40,2,16,34,2,13,0,11,12,1,11,32,11,32,13,71,13,4,11,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,15,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,26,40,2,8,32,26,40,2,4,106,32,15,77,13,0,32,26,40,2,56,32,15,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,224,1,32,1,65,128,8,35,1,65,214,5,106,32,6,65,224,1,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,40,2,32,32,0,71,4,64,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,59,55,2,36,32,5,32,0,54,2,32,32,5,40,2,68,33,15,2,64,2,127,32,5,40,2,100,34,26,4,64,3,64,2,64,32,15,32,2,65,24,108,106,34,11,40,2,20,34,7,32,0,77,13,0,32,7,32,11,40,2,16,34,3,77,13,0,32,0,32,3,77,4,64,32,5,32,11,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,26,71,13,0,11,11,32,5,32,26,54,2,104,32,15,32,26,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,32,5,32,57,55,2,124,32,5,40,2,96,5,32,2,11,69,4,64,32,5,40,2,140,10,69,13,1,11,32,6,32,30,54,2,216,1,32,6,32,31,54,2,212,1,32,6,32,4,65,255,255,3,113,54,2,208,1,32,1,65,128,8,35,1,65,144,1,106,32,6,65,208,1,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,5,16,64,32,5,32,4,65,255,255,3,113,32,5,40,2,160,9,40,2,92,17,1,0,33,7,2,64,32,5,40,2,56,34,2,13,0,32,52,40,2,0,69,13,0,2,64,32,5,40,2,104,34,0,32,5,40,2,100,70,13,0,32,0,69,13,0,32,5,40,2,32,32,5,40,2,68,32,0,65,24,108,106,34,0,40,2,16,71,13,0,32,0,65,4,107,40,2,0,33,2,32,5,32,0,65,16,107,41,2,0,55,2,60,32,5,32,2,54,2,56,12,1,11,32,5,32,5,41,2,32,34,56,55,2,56,32,5,32,5,40,2,40,54,2,64,32,56,167,33,2,11,32,5,40,2,44,32,2,75,4,64,32,5,32,5,41,2,56,55,2,44,32,5,32,5,40,2,64,54,2,52,11,32,5,40,2,32,34,0,65,5,65,1,32,5,40,2,0,65,127,70,27,106,34,3,32,12,32,3,32,12,75,27,33,12,2,64,2,64,32,7,69,4,64,32,16,65,1,113,69,4,64,32,0,32,9,70,32,5,40,2,160,9,40,2,88,34,0,47,1,2,33,48,32,0,47,1,0,33,4,65,1,33,16,32,9,33,0,13,5,65,0,33,2,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,58,55,2,36,32,5,32,0,54,2,32,32,5,40,2,68,33,11,2,64,2,127,32,5,40,2,100,34,15,4,64,3,64,2,64,32,11,32,2,65,24,108,106,34,7,40,2,20,34,0,32,9,77,13,0,32,0,32,7,40,2,16,34,3,77,13,0,32,3,32,9,34,0,79,4,64,32,5,32,7,41,2,0,55,2,36,32,5,32,3,54,2,32,32,3,33,0,11,32,5,32,2,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,0,32,5,40,2,108,34,3,73,13,3,26,65,0,34,2,32,0,32,5,40,2,112,32,3,106,79,13,3,26,12,4,11,32,2,65,1,106,34,2,32,15,71,13,0,11,11,32,5,32,15,54,2,104,32,11,32,15,65,24,108,106,34,2,65,4,107,40,2,0,33,0,32,5,32,2,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,12,5,11,32,50,13,2,2,64,32,5,40,2,96,34,2,69,4,64,32,5,40,2,140,10,69,13,3,32,1,35,1,34,2,65,235,7,106,34,0,41,0,0,55,0,0,32,1,32,0,40,0,24,54,0,24,32,1,32,2,41,0,251,7,55,0,16,32,1,32,2,41,0,243,7,55,0,8,12,1,11,32,1,35,1,34,3,65,235,7,106,34,0,41,0,0,55,0,0,32,1,32,0,40,0,24,54,0,24,32,1,32,3,41,0,251,7,55,0,16,32,1,32,3,41,0,243,7,55,0,8,32,5,40,2,92,65,0,32,1,32,2,17,3,0,32,5,40,2,140,10,69,13,2,11,32,1,33,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,65,0,33,11,65,0,32,50,69,13,4,26,12,5,11,32,5,40,2,32,33,0,32,5,40,2,0,33,37,32,5,40,2,44,34,8,33,49,32,5,40,2,52,34,43,33,44,32,5,40,2,48,34,32,33,45,11,32,0,32,8,70,4,64,32,5,32,5,40,2,24,17,0,0,4,64,32,5,65,255,255,3,59,1,4,32,0,33,8,12,5,11,32,5,65,0,32,5,40,2,8,17,5,0,32,5,40,2,32,33,0,11,32,5,40,2,40,33,44,32,5,40,2,36,33,45,65,1,33,50,32,0,33,8,65,1,33,16,12,1,11,11,32,50,13,1,32,5,40,2,56,33,2,32,5,45,0,120,33,11,65,1,11,33,7,32,5,47,1,4,33,4,32,5,40,2,48,33,19,32,5,40,2,52,33,16,32,6,32,5,40,2,44,34,0,32,9,107,34,3,65,0,32,0,32,3,79,27,54,2,144,3,32,6,32,16,32,16,32,58,66,32,136,167,107,34,3,65,0,32,3,32,16,77,27,32,19,32,58,167,34,3,75,27,173,66,32,134,32,19,32,3,107,34,3,65,0,32,3,32,19,77,27,173,132,55,2,148,3,32,52,40,2,0,33,8,32,5,40,2,60,33,9,32,6,32,2,32,0,107,34,3,65,0,32,2,32,3,79,27,54,2,128,3,32,6,32,9,32,19,107,34,3,65,0,32,3,32,9,77,27,173,32,8,32,8,32,16,107,34,3,65,0,32,3,32,8,77,27,32,9,32,19,75,27,173,66,32,134,132,55,2,132,3,32,12,32,2,107,33,30,32,5,40,2,160,9,33,3,32,7,69,13,1,32,3,40,2,108,32,4,65,1,116,106,47,1,0,33,4,65,0,33,12,12,2,11,32,45,32,32,107,34,0,65,0,32,0,32,45,77,27,173,32,44,32,44,32,43,107,34,0,65,0,32,0,32,44,77,27,32,32,32,45,73,27,173,66,32,134,132,33,57,32,43,32,43,32,58,66,32,136,167,107,34,0,65,0,32,0,32,43,77,27,32,32,32,58,167,34,0,75,27,173,66,32,134,32,32,32,0,107,34,0,65,0,32,0,32,32,77,27,173,132,33,56,32,8,32,49,107,34,0,65,0,32,0,32,8,77,27,33,7,32,49,32,9,107,34,0,65,0,32,0,32,49,77,27,33,4,32,12,32,8,107,33,3,2,127,32,5,40,2,140,9,34,0,4,64,32,5,32,0,65,1,107,34,0,54,2,140,9,32,5,40,2,136,9,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,0,32,6,66,0,55,3,152,3,32,6,66,0,55,3,160,3,65,0,33,2,32,6,65,0,54,2,168,3,32,6,65,1,54,2,212,3,32,6,32,4,54,2,208,3,32,6,32,56,55,3,128,3,32,6,32,7,54,2,200,3,32,6,32,57,55,3,216,3,32,6,32,3,54,2,196,3,32,6,65,0,54,2,192,3,32,6,65,0,54,2,188,3,32,6,65,255,255,3,59,1,184,3,32,6,32,13,59,1,182,3,32,6,65,3,59,1,180,3,32,6,65,0,59,1,178,3,32,6,66,0,55,3,144,3,32,0,32,6,40,2,212,3,54,2,0,32,0,32,6,40,2,208,3,54,2,4,32,0,32,6,41,3,128,3,55,2,8,32,0,32,6,40,2,200,3,54,2,16,32,0,32,6,41,3,216,3,55,2,20,32,0,32,6,40,2,196,3,54,2,28,32,0,32,6,40,2,192,3,54,2,32,32,0,32,6,40,2,188,3,54,2,36,32,0,32,6,47,1,184,3,59,1,40,32,0,32,6,47,1,182,3,59,1,42,32,0,32,6,47,1,180,3,34,3,59,1,44,32,0,32,6,47,1,178,3,59,1,46,32,0,32,6,40,2,168,3,54,2,72,32,0,65,64,107,32,6,41,3,160,3,55,2,0,32,0,32,6,41,3,152,3,55,2,56,32,0,32,6,41,3,144,3,55,2,48,32,0,32,37,54,2,48,32,0,32,3,65,24,114,59,1,44,65,0,33,4,65,0,33,11,32,0,33,7,32,0,65,8,118,12,2,11,65,0,33,12,32,4,69,13,0,32,4,32,3,47,1,100,71,13,0,32,5,40,2,32,32,0,71,4,64,65,0,33,3,32,5,65,0,58,0,128,1,32,5,65,0,54,2,124,32,5,32,0,54,2,32,32,5,32,5,41,2,48,55,2,36,32,5,40,2,68,33,19,2,64,2,127,32,5,40,2,100,34,15,4,64,3,64,2,64,32,19,32,3,65,24,108,106,34,16,40,2,20,34,8,32,0,77,13,0,32,8,32,16,40,2,16,34,9,77,13,0,32,0,32,9,77,4,64,32,5,32,16,41,2,0,55,2,36,32,5,32,9,54,2,32,32,9,33,0,11,32,5,32,3,54,2,104,32,5,40,2,72,69,4,64,65,0,33,3,12,5,11,65,0,32,0,32,5,40,2,108,34,9,73,13,3,26,65,0,34,3,32,0,32,5,40,2,112,32,9,106,79,13,3,26,12,4,11,32,3,65,1,106,34,3,32,15,71,13,0,11,11,32,5,32,15,54,2,104,32,19,32,15,65,24,108,106,34,3,65,4,107,40,2,0,33,0,32,5,32,3,65,16,107,41,2,0,55,2,36,32,5,32,0,54,2,32,65,1,11,33,3,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,3,54,2,116,11,32,5,16,64,32,5,65,0,32,5,40,2,160,9,40,2,96,17,1,0,69,4,64,32,5,40,2,160,9,33,3,12,1,11,32,5,40,2,160,9,33,3,65,1,33,12,32,5,40,2,56,32,2,71,13,0,32,5,47,1,4,33,9,2,64,2,64,32,3,40,2,24,34,0,32,13,77,4,64,32,3,40,2,44,32,3,40,2,48,32,13,32,0,107,65,2,116,106,40,2,0,65,1,116,106,34,0,47,1,0,34,15,69,13,2,32,0,65,2,106,33,0,65,0,33,16,3,64,32,0,65,4,106,33,2,32,0,47,1,2,34,31,4,127,32,2,32,31,65,1,116,106,65,0,33,8,3,64,32,2,47,1,0,32,9,70,13,4,32,2,65,2,106,33,2,32,8,65,1,106,34,8,32,31,71,13,0,11,5,32,2,11,33,0,32,16,65,1,106,34,16,32,15,71,13,0,11,12,2,11,32,3,40,2,40,32,3,40,2,4,32,13,108,65,1,116,106,32,9,65,1,116,106,33,0,11,32,0,47,1,0,69,13,0,32,9,33,4,12,1,11,32,3,40,2,0,65,15,73,13,0,32,3,40,2,88,32,53,106,47,1,4,34,0,69,13,0,32,3,47,1,144,1,34,8,69,13,0,32,8,32,0,32,8,108,34,2,106,33,16,32,3,40,2,140,1,33,8,3,64,32,9,32,8,32,2,65,1,116,106,47,1,0,34,0,70,4,64,32,9,33,4,12,2,11,32,0,69,13,1,32,2,65,1,106,34,2,32,16,73,13,0,11,11,32,6,32,6,40,2,152,3,54,2,200,1,32,6,32,6,40,2,136,3,54,2,184,1,32,6,32,6,41,2,144,3,55,3,192,1,32,6,32,6,41,2,128,3,55,3,176,1,32,7,33,9,32,11,65,1,113,33,7,65,0,33,11,35,0,65,224,0,107,34,15,36,0,65,1,33,16,65,1,33,8,2,64,2,64,2,64,2,64,32,4,65,255,255,3,113,34,19,65,254,255,3,107,14,2,1,2,0,11,32,3,40,2,72,32,19,65,3,108,106,34,0,45,0,1,33,8,32,0,45,0,0,33,16,32,19,69,33,11,32,19,65,255,1,75,13,1,32,9,13,1,32,30,65,15,75,13,1,32,6,40,2,192,1,34,4,65,254,1,75,13,1,32,6,40,2,196,1,34,3,65,15,75,13,1,32,6,40,2,200,1,34,2,65,254,1,75,13,1,32,6,40,2,176,1,34,0,65,254,1,75,13,1,32,6,40,2,180,1,13,1,32,6,40,2,184,1,65,254,1,75,13,1,32,6,32,0,58,0,223,3,32,6,32,4,58,0,222,3,32,6,32,2,58,0,220,3,32,6,32,13,59,1,218,3,32,6,32,19,58,0,217,3,32,6,32,3,65,15,113,32,30,65,4,116,114,58,0,221,3,32,6,32,8,65,2,116,65,0,65,8,32,19,27,106,65,192,0,65,0,32,12,27,106,32,16,65,1,116,106,65,1,114,58,0,216,3,12,2,11,65,0,33,16,65,0,33,8,11,2,127,32,33,40,2,4,34,0,4,64,32,33,32,0,65,1,107,34,0,54,2,4,32,33,40,2,0,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,0,32,15,65,1,54,2,92,32,15,32,6,40,2,200,1,54,2,88,32,15,32,6,41,2,192,1,55,3,80,32,15,32,6,40,2,184,1,54,2,72,32,6,41,2,176,1,33,56,32,15,66,0,55,3,16,32,15,66,0,55,3,24,32,15,65,0,54,2,32,32,15,32,56,55,3,64,32,15,32,30,54,2,60,32,15,65,0,54,2,56,32,15,65,0,54,2,52,32,15,32,19,59,1,48,32,15,32,13,59,1,46,32,15,65,0,59,1,42,32,15,66,0,55,3,8,32,15,32,8,65,1,116,32,16,106,65,255,1,113,65,128,2,65,0,32,7,27,65,192,0,65,0,32,9,27,114,65,128,8,65,0,32,12,27,114,65,4,65,0,32,11,27,114,114,59,1,44,32,0,32,15,40,2,92,54,2,0,32,0,32,15,40,2,88,54,2,12,32,0,32,15,41,3,80,55,2,4,32,0,32,15,40,2,72,54,2,24,32,0,32,15,41,3,64,55,2,16,32,0,32,15,40,2,60,54,2,28,32,0,32,15,40,2,56,54,2,32,32,0,32,15,40,2,52,54,2,36,32,0,32,15,47,1,48,59,1,40,32,0,32,15,47,1,46,59,1,42,32,0,32,15,47,1,44,59,1,44,32,0,32,15,47,1,42,59,1,46,32,0,32,15,40,2,32,54,2,72,32,0,65,64,107,32,15,41,3,24,55,2,0,32,0,32,15,41,3,16,55,2,56,32,0,32,15,41,3,8,55,2,48,32,6,65,0,54,2,220,3,32,6,32,0,54,2,216,3,11,32,15,65,224,0,106,36,0,32,6,41,3,216,3,34,56,66,48,136,167,32,6,40,2,220,3,33,2,32,6,40,2,216,3,33,0,32,56,167,33,7,32,9,4,64,32,7,32,35,54,2,72,32,7,65,48,106,33,9,32,35,65,25,79,4,64,32,9,32,35,35,7,40,2,0,17,0,0,34,9,54,2,0,11,32,35,4,64,32,9,32,1,32,35,252,10,0,0,11,32,7,32,7,47,1,44,65,255,254,3,113,65,128,1,65,0,32,27,27,114,59,1,44,11,32,56,66,56,136,167,33,11,65,255,1,113,33,4,32,56,66,8,136,167,11,33,3,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,5,40,2,160,9,33,9,35,1,65,171,10,106,33,12,2,64,2,64,2,64,32,7,65,1,113,4,127,32,3,65,255,1,113,5,32,7,47,1,40,11,65,255,255,3,113,34,3,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,12,12,1,11,32,9,40,2,56,32,3,65,2,116,106,40,2,0,33,12,11,32,1,35,1,65,201,10,106,34,3,41,0,0,55,0,0,32,1,32,3,41,0,13,55,0,13,32,1,32,3,41,0,8,55,0,8,65,0,33,9,65,20,33,3,2,64,32,12,45,0,0,34,8,69,13,0,3,64,2,127,2,64,2,64,2,64,2,64,2,64,2,64,32,8,65,255,1,113,34,16,65,9,107,14,5,0,1,2,3,4,5,11,32,1,32,3,106,65,220,232,1,59,0,0,32,3,65,2,106,12,5,11,32,1,32,3,106,65,220,220,1,59,0,0,32,3,65,2,106,12,4,11,32,1,32,3,106,65,220,236,1,59,0,0,32,3,65,2,106,12,3,11,32,1,32,3,106,65,220,204,1,59,0,0,32,3,65,2,106,12,2,11,32,1,32,3,106,65,220,228,1,59,0,0,32,3,65,2,106,12,1,11,32,16,65,220,0,70,4,64,32,1,32,3,106,65,220,184,1,59,0,0,32,3,65,2,106,12,1,11,32,1,32,3,106,32,8,58,0,0,32,3,65,1,106,11,33,3,32,12,32,9,65,1,106,34,9,106,45,0,0,34,8,69,13,1,32,3,65,128,8,72,13,0,11,11,65,128,8,32,3,107,33,9,32,1,32,3,106,32,6,32,7,65,1,113,4,127,32,4,32,11,106,5,32,7,40,2,16,32,7,40,2,4,106,11,54,2,160,1,32,9,35,1,65,159,2,106,32,6,65,160,1,106,16,11,26,32,5,40,2,96,34,3,4,64,32,5,40,2,92,65,0,32,1,32,3,17,3,0,11,32,1,33,8,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,8,45,0,0,34,3,65,34,70,13,0,32,3,65,220,0,70,13,0,32,3,69,13,4,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,8,45,0,0,33,3,11,32,3,192,32,5,40,2,140,10,16,9,32,8,65,1,106,33,8,12,0,11,0,11,65,0,33,0,11,32,6,32,2,54,2,252,2,32,6,32,0,54,2,248,2,32,5,45,0,196,10,4,64,65,0,33,2,12,7,11,32,6,2,127,2,64,32,0,4,64,32,0,65,1,113,69,4,64,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,11,32,21,69,4,64,32,25,32,25,40,2,0,65,1,106,54,2,0,32,25,40,2,0,26,11,32,36,40,2,0,4,64,32,6,32,36,41,2,0,55,3,152,1,32,33,32,6,65,152,1,106,16,10,11,32,34,40,2,0,4,64,32,6,32,34,41,2,0,55,3,144,1,32,33,32,6,65,144,1,106,16,10,11,32,5,32,41,54,2,240,9,32,5,32,2,54,2,228,9,32,5,32,0,54,2,224,9,32,5,32,20,54,2,236,9,32,5,32,25,54,2,232,9,32,5,40,2,160,9,33,19,32,6,45,0,248,2,34,0,65,1,113,4,64,32,6,45,0,249,2,34,16,33,8,12,2,11,32,6,40,2,248,2,34,0,65,8,118,33,16,32,0,47,1,40,34,8,65,254,255,3,73,13,1,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,2,11,32,0,65,8,118,33,16,2,64,2,64,32,5,40,2,160,9,34,8,40,2,24,34,2,32,13,77,4,64,32,8,40,2,44,32,8,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,11,65,0,33,12,3,64,32,11,65,4,106,33,2,32,11,47,1,2,34,7,4,127,32,2,32,7,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,69,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,7,71,13,0,11,5,32,2,11,33,11,65,0,33,2,32,12,65,1,106,34,12,32,9,71,13,0,11,12,2,11,32,8,40,2,40,32,8,40,2,4,32,13,108,65,1,116,106,47,1,0,33,2,12,1,11,32,11,47,1,0,33,2,11,32,6,32,8,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,12,1,11,2,64,2,64,32,19,40,2,24,34,2,32,13,77,4,64,32,19,40,2,44,32,19,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,11,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,9,71,13,0,11,12,2,11,32,19,40,2,40,32,19,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,19,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,11,32,5,32,41,54,2,184,10,32,5,32,5,45,0,198,10,58,0,188,10,32,5,32,5,40,2,148,10,65,1,106,34,2,65,0,32,2,65,227,0,77,27,34,2,54,2,148,10,2,64,32,2,13,0,32,5,40,2,176,10,34,2,69,13,0,32,22,32,2,17,0,0,69,13,0,65,0,33,2,32,6,40,2,248,2,69,13,6,32,6,32,6,41,3,248,2,55,3,136,1,32,33,32,6,65,136,1,106,16,10,12,6,11,2,64,32,6,40,2,236,2,34,19,69,13,0,32,6,40,2,248,2,34,0,65,8,118,33,16,65,0,33,3,65,127,33,11,32,6,40,2,232,2,33,7,65,0,33,8,3,64,32,7,32,8,65,3,116,106,34,2,46,1,4,33,15,32,2,47,1,2,33,9,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,2,45,0,0,14,4,0,1,2,3,6,11,32,15,65,128,2,113,13,5,32,5,40,2,96,33,3,32,15,65,1,113,4,64,2,64,32,3,69,4,64,32,13,33,9,32,5,40,2,140,10,69,13,14,32,1,35,1,65,239,9,106,34,2,41,0,0,55,0,0,32,1,32,2,40,0,8,54,0,8,12,1,11,32,1,35,1,65,239,9,106,34,2,41,0,0,55,0,0,32,1,32,2,40,0,8,54,0,8,32,5,40,2,92,65,0,32,1,32,3,17,3,0,32,13,33,9,32,5,40,2,140,10,69,13,13,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,32,13,33,9,12,15,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,3,69,4,64,32,5,40,2,140,10,69,13,12,11,32,6,32,9,54,2,96,32,1,65,128,8,35,1,65,169,2,106,32,6,65,224,0,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,5,40,2,140,10,69,13,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,69,13,14,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,2,47,1,6,33,4,32,2,45,0,1,33,12,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,4,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,9,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,5,40,2,160,9,34,3,40,2,8,32,3,40,2,4,106,32,9,77,13,0,32,3,40,2,56,32,9,65,2,116,106,40,2,0,33,2,11,32,6,32,12,54,2,116,32,6,32,2,54,2,112,32,1,65,128,8,35,1,65,29,106,32,6,65,240,0,106,16,11,26,32,5,40,2,96,34,2,4,64,32,5,40,2,92,65,0,32,1,32,2,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,3,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,6,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,2,64,32,5,40,2,96,34,2,69,4,64,32,5,40,2,140,10,69,13,3,32,1,35,1,34,0,40,0,130,3,54,0,0,32,1,32,0,40,0,133,3,54,0,3,12,1,11,32,1,35,1,34,0,40,0,130,3,54,0,0,32,1,32,0,40,0,133,3,54,0,3,32,5,40,2,92,65,0,32,1,32,2,17,3,0,32,5,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,65,1,33,2,2,64,32,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,5,32,6,65,248,2,106,65,0,32,5,65,244,9,106,16,54,11,32,6,32,6,41,3,248,2,55,3,128,1,32,5,32,17,32,6,65,128,1,106,16,82,32,51,69,13,10,32,5,65,244,9,106,16,40,12,10,11,32,6,32,6,41,3,248,2,55,3,120,32,5,32,17,32,6,65,248,0,106,16,78,65,1,33,2,12,9,11,65,1,33,3,32,11,32,5,32,17,32,9,32,12,32,15,32,4,32,19,65,1,71,32,0,69,16,77,34,2,32,2,65,127,70,27,33,11,11,32,8,65,1,106,34,8,32,19,71,13,0,11,32,11,65,127,71,4,64,32,5,40,2,132,9,32,11,32,17,16,39,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,32,6,40,2,248,2,34,0,65,8,118,33,16,32,5,40,2,132,9,40,2,0,32,47,106,40,2,0,47,1,0,33,13,65,1,33,2,32,0,69,13,6,32,5,40,2,160,9,33,18,32,0,65,1,113,4,64,32,16,65,255,1,113,33,8,12,4,11,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,8,65,254,255,3,73,13,3,32,6,65,0,58,0,240,2,32,6,65,0,54,2,236,2,65,0,12,4,11,32,3,65,1,113,69,13,0,32,6,40,2,248,2,4,64,32,6,32,6,41,3,248,2,55,3,48,32,33,32,6,65,48,106,16,10,11,32,5,40,2,132,9,40,2,0,32,17,65,5,116,106,65,2,54,2,28,65,1,33,2,12,6,11,2,64,2,64,2,64,32,0,65,1,113,34,15,4,64,65,1,33,2,32,0,65,192,0,113,13,1,32,0,33,4,12,3,11,32,6,40,2,248,2,34,4,65,8,118,33,16,65,0,33,2,32,4,45,0,45,65,4,113,69,13,2,32,4,47,1,40,34,9,32,5,40,2,160,9,34,11,47,1,100,34,8,71,13,1,12,2,11,32,5,40,2,160,9,34,11,47,1,100,34,8,32,16,65,255,1,113,70,4,64,32,0,33,4,12,2,11,32,16,65,255,1,113,33,9,32,0,33,4,11,2,64,32,11,40,2,0,65,15,73,13,0,32,11,40,2,88,32,53,106,47,1,4,34,2,69,13,0,32,11,47,1,144,1,34,3,69,13,0,32,3,32,2,32,3,108,34,2,106,33,12,32,11,40,2,140,1,33,7,3,64,32,9,32,7,32,2,65,1,116,106,47,1,0,34,3,70,4,64,32,0,33,2,12,3,11,32,3,69,13,1,32,2,65,1,106,34,2,32,12,73,13,0,11,11,32,8,65,254,255,3,79,4,64,32,6,65,0,58,0,240,2,32,6,66,0,55,3,232,2,32,0,33,2,12,1,11,2,64,2,64,32,11,40,2,24,34,2,32,13,77,4,64,32,11,40,2,44,32,11,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,19,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,31,4,127,32,2,32,31,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,31,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,19,71,13,0,11,12,2,11,32,11,40,2,40,32,11,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,11,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,9,45,0,0,34,3,54,2,236,2,32,9,45,0,1,33,2,32,6,32,9,65,8,106,54,2,232,2,32,6,32,2,58,0,240,2,32,3,69,4,64,32,0,33,2,12,1,11,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,15,4,127,32,16,65,255,1,113,5,32,6,40,2,248,2,47,1,40,11,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,11,40,2,8,32,11,40,2,4,106,32,0,77,13,0,32,11,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,8,32,11,40,2,8,32,11,40,2,4,106,73,4,127,32,11,40,2,56,32,8,65,2,116,106,40,2,0,5,65,0,11,54,2,36,32,6,32,2,54,2,32,32,1,65,128,8,35,1,65,208,3,106,32,6,65,32,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,1,33,3,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,3,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,3,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,3,65,1,106,33,3,12,0,11,0,11,32,6,32,6,41,3,248,2,34,56,55,3,128,3,32,56,66,32,136,33,57,2,64,32,56,167,34,3,65,1,113,4,64,32,3,33,0,12,1,11,32,3,34,0,40,2,0,65,1,70,13,0,32,0,40,2,36,65,3,116,65,204,0,106,34,2,35,7,40,2,0,17,0,0,33,9,32,2,4,64,32,9,32,0,32,0,40,2,36,65,3,116,107,32,2,252,10,0,0,11,32,9,32,3,40,2,36,34,8,65,3,116,106,33,0,65,0,33,2,2,64,32,8,4,64,3,64,32,9,32,2,65,3,116,106,40,2,0,34,4,65,1,113,69,4,64,32,4,32,4,40,2,0,65,1,106,54,2,0,32,4,40,2,0,26,32,3,40,2,36,33,8,11,32,2,65,1,106,34,2,32,8,73,13,0,12,2,11,0,11,32,3,45,0,44,65,192,0,113,69,13,0,32,3,40,2,48,33,2,32,6,32,3,41,2,68,55,3,160,3,32,6,32,3,41,2,60,55,3,152,3,32,6,32,3,41,2,52,55,3,144,3,2,64,32,3,40,2,72,34,4,65,25,73,13,0,32,4,35,7,40,2,0,17,0,0,33,2,32,3,40,2,72,34,4,69,13,0,32,2,32,3,40,2,48,32,4,252,10,0,0,11,32,0,32,2,54,2,48,32,0,32,6,41,3,144,3,55,2,52,32,0,32,6,41,3,152,3,55,2,60,32,0,32,6,41,3,160,3,55,2,68,11,32,0,65,1,54,2,0,32,6,32,6,41,3,128,3,55,3,24,32,33,32,6,65,24,106,16,10,66,0,33,57,11,65,1,33,2,65,1,33,3,2,64,2,64,2,64,32,5,40,2,160,9,34,4,47,1,100,34,9,65,254,255,3,107,14,2,0,2,1,11,65,0,33,2,65,0,33,3,12,1,11,32,4,40,2,72,32,9,65,3,108,106,34,3,45,0,1,33,2,32,3,45,0,0,33,3,11,2,64,32,0,65,1,113,4,64,32,0,65,249,1,113,32,2,65,2,116,114,32,3,65,1,116,106,65,255,1,113,32,0,65,128,128,124,113,32,9,65,8,116,65,128,254,3,113,114,114,33,0,12,1,11,32,0,32,9,59,1,40,32,0,32,0,47,1,44,65,252,255,3,113,32,3,32,2,65,1,116,114,65,255,1,113,114,59,1,44,11,32,6,32,0,173,34,56,32,57,66,32,134,132,55,3,248,2,32,56,66,8,136,167,33,16,65,0,33,2,12,1,11,11,32,5,32,17,16,80,4,64,32,5,40,2,132,9,40,2,0,32,47,106,40,2,0,47,1,0,33,13,32,6,32,6,41,3,248,2,55,3,8,32,33,32,6,65,8,106,16,10,65,1,33,2,32,4,33,0,12,4,11,2,64,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,1,11,32,2,65,1,113,4,127,32,16,65,255,1,113,5,32,6,40,2,248,2,47,1,40,11,33,0,32,5,40,2,160,9,33,3,35,1,65,171,10,106,33,2,2,64,2,64,2,64,32,0,65,255,255,3,113,34,0,65,254,255,3,107,14,2,0,2,1,11,35,1,65,170,10,106,33,2,12,1,11,65,0,33,2,32,3,40,2,8,32,3,40,2,4,106,32,0,77,13,0,32,3,40,2,56,32,0,65,2,116,106,40,2,0,33,2,11,32,6,32,2,54,2,16,32,1,65,128,8,35,1,65,196,7,106,32,6,65,16,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,1,32,0,17,3,0,11,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,1,45,0,0,34,2,65,34,70,13,0,32,2,65,220,0,70,13,0,32,2,13,1,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,1,45,0,0,33,2,11,32,2,192,32,5,40,2,140,10,16,9,32,1,65,1,106,33,1,12,0,11,0,11,32,5,40,2,132,9,40,2,0,32,17,65,5,116,106,34,0,32,6,41,3,248,2,55,2,20,65,1,33,2,32,0,65,1,54,2,28,32,0,32,0,40,2,0,40,2,156,1,54,2,8,12,4,11,2,64,2,64,32,18,40,2,24,34,2,32,13,77,4,64,32,18,40,2,44,32,18,40,2,48,32,13,32,2,107,65,2,116,106,40,2,0,65,1,116,106,34,2,47,1,0,34,9,69,4,64,65,0,33,2,12,3,11,32,2,65,2,106,33,12,65,0,33,7,3,64,32,12,65,4,106,33,2,32,12,47,1,2,34,11,4,127,32,2,32,11,65,1,116,106,65,0,33,3,3,64,32,2,47,1,0,32,8,70,13,4,32,2,65,2,106,33,2,32,3,65,1,106,34,3,32,11,71,13,0,11,5,32,2,11,33,12,65,0,33,2,32,7,65,1,106,34,7,32,9,71,13,0,11,12,2,11,32,18,40,2,40,32,18,40,2,4,32,13,108,65,1,116,106,32,8,65,1,116,106,47,1,0,33,2,12,1,11,32,12,47,1,0,33,2,11,32,6,32,18,40,2,52,32,2,65,255,255,3,113,65,3,116,106,34,2,45,0,0,54,2,236,2,32,6,32,2,45,0,1,58,0,240,2,32,2,65,8,106,11,54,2,232,2,65,0,33,2,12,1,11,11,2,64,32,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,5,32,6,65,248,2,106,32,13,32,5,65,244,9,106,16,54,32,5,40,2,160,9,32,13,2,127,32,6,45,0,248,2,65,1,113,4,64,32,6,40,2,248,2,33,0,32,6,45,0,249,2,12,1,11,32,6,40,2,248,2,34,0,47,1,40,11,65,255,255,3,113,16,43,33,9,11,32,6,40,2,252,2,33,12,2,64,2,64,2,64,2,64,32,0,65,1,113,4,64,32,6,32,0,173,32,12,173,66,32,134,132,55,3,216,3,65,1,33,4,32,0,65,3,118,32,15,115,65,1,113,13,1,32,5,40,2,132,9,32,6,32,6,41,3,216,3,55,3,72,32,17,32,6,65,200,0,106,65,0,32,9,65,255,255,3,113,16,23,12,4,11,32,0,40,2,36,33,2,32,6,32,0,173,32,12,173,66,32,134,132,34,56,55,3,216,3,2,64,32,15,65,1,113,32,0,45,0,44,65,4,113,65,2,118,70,13,0,32,2,13,0,32,2,69,33,4,32,6,32,56,55,3,128,3,32,0,40,2,0,65,1,70,4,64,32,0,33,7,12,3,11,32,0,40,2,36,65,3,116,65,204,0,106,34,1,35,7,40,2,0,17,0,0,33,8,32,1,4,64,32,8,32,0,32,0,40,2,36,65,3,116,107,32,1,252,10,0,0,11,32,8,32,0,40,2,36,34,1,65,3,116,106,33,7,2,64,32,1,4,64,65,0,33,2,3,64,32,8,32,2,65,3,116,106,40,2,0,34,3,65,1,113,69,4,64,32,3,32,3,40,2,0,65,1,106,54,2,0,32,3,40,2,0,26,32,0,40,2,36,33,1,11,32,2,65,1,106,34,2,32,1,73,13,0,11,12,1,11,32,0,45,0,44,65,192,0,113,69,13,0,32,0,40,2,48,33,2,32,6,32,0,41,2,68,55,3,160,3,32,6,32,0,41,2,60,55,3,152,3,32,6,32,0,41,2,52,55,3,144,3,2,64,32,0,40,2,72,34,1,65,25,73,13,0,32,1,35,7,40,2,0,17,0,0,33,2,32,0,40,2,72,34,1,69,13,0,32,2,32,0,40,2,48,32,1,252,10,0,0,11,32,7,32,2,54,2,48,32,7,32,6,41,3,144,3,55,2,52,32,7,32,6,41,3,152,3,55,2,60,32,7,32,6,41,3,160,3,55,2,68,11,32,7,65,1,54,2,0,32,6,32,6,41,3,128,3,55,3,80,32,33,32,6,65,208,0,106,16,10,65,0,33,12,32,7,33,0,12,2,11,32,5,40,2,132,9,32,6,32,6,41,3,216,3,55,3,88,32,17,32,6,65,216,0,106,32,2,65,0,71,32,9,65,255,255,3,113,16,23,12,2,11,32,0,33,7,11,32,6,32,7,65,1,113,4,127,32,7,65,119,113,65,8,65,0,32,15,65,1,113,27,114,5,32,0,32,0,47,1,44,65,251,255,3,113,65,4,65,0,32,15,65,1,113,27,114,59,1,44,32,7,11,34,0,173,32,12,173,66,32,134,132,34,56,55,3,216,3,32,5,40,2,132,9,32,6,32,56,55,3,64,32,17,32,6,65,64,107,32,4,65,1,115,32,9,65,255,255,3,113,16,23,32,7,65,1,113,13,1,11,32,0,45,0,44,65,192,0,113,69,13,0,32,5,40,2,132,9,33,7,2,64,32,0,65,1,113,69,4,64,32,0,40,2,36,34,9,4,64,3,64,32,0,32,9,65,3,116,107,33,4,32,9,33,2,3,64,2,64,2,64,32,4,32,2,65,1,107,34,2,65,3,116,106,34,3,40,2,0,34,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,1,40,2,36,33,9,32,3,40,2,4,33,12,32,1,33,0,12,1,11,32,2,13,1,11,11,32,9,13,0,11,11,32,7,40,2,0,32,17,65,5,116,106,33,2,32,0,69,13,1,32,0,65,1,113,13,1,32,0,32,0,40,2,0,65,1,106,54,2,0,32,0,40,2,0,26,12,1,11,32,7,40,2,0,32,17,65,5,116,106,33,2,65,0,33,0,65,0,33,12,11,32,2,40,2,12,4,64,32,7,40,2,52,32,6,32,2,41,2,12,55,3,56,32,6,65,56,106,16,10,11,32,2,32,12,54,2,16,32,2,32,0,54,2,12,11,65,1,33,2,32,51,69,13,0,32,5,65,244,9,106,16,40,11,32,6,65,224,3,106,36,0,32,2,69,13,3,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,32,38,32,5,40,2,132,9,34,2,40,2,0,34,7,32,46,106,34,1,40,2,0,40,2,4,34,9,73,4,64,32,9,33,38,12,2,11,32,17,65,0,32,9,32,38,70,27,69,4,64,32,1,40,2,28,13,2,12,1,11,11,32,38,33,9,11,65,0,33,14,32,17,65,1,106,34,17,32,2,40,2,4,34,0,73,13,0,11,65,0,33,7,65,127,33,27,65,0,33,34,32,0,69,4,64,65,1,33,14,12,3,11,3,64,2,64,32,2,40,2,0,32,7,65,5,116,106,34,8,40,2,28,34,1,65,2,70,4,64,32,2,32,7,16,17,12,1,11,32,8,40,2,0,34,13,40,2,152,1,33,2,2,64,32,1,65,1,70,34,4,69,4,64,32,13,47,1,0,13,1,32,13,40,2,20,13,1,11,32,2,65,244,3,106,33,2,11,32,13,40,2,156,1,34,0,32,8,40,2,8,34,3,73,4,64,32,8,32,0,54,2,8,32,0,33,3,11,32,13,40,2,160,1,33,11,32,1,65,1,70,4,127,65,1,5,32,2,32,27,32,2,32,27,73,27,32,27,32,13,47,1,0,34,1,27,33,27,32,1,69,11,33,15,32,7,69,4,64,65,1,33,7,12,1,11,32,2,65,228,0,106,32,2,32,4,27,33,24,32,0,32,3,107,65,1,106,33,12,65,0,33,17,3,64,32,5,40,2,132,9,34,21,40,2,0,34,8,32,17,65,5,116,34,19,106,34,22,40,2,0,34,2,40,2,152,1,33,1,2,64,32,22,40,2,28,34,16,65,1,70,34,18,69,4,64,32,1,33,4,32,2,47,1,0,13,1,32,2,40,2,20,13,1,11,32,1,65,244,3,106,33,4,11,32,2,40,2,156,1,34,0,32,22,40,2,8,34,14,73,4,64,32,22,32,0,54,2,8,32,0,33,14,11,32,2,40,2,160,1,33,3,65,0,33,13,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,18,13,0,32,15,32,2,47,1,0,65,0,71,34,13,113,69,13,0,32,4,32,24,73,13,1,12,6,11,32,4,65,228,0,106,32,4,32,18,27,33,4,32,13,32,15,114,69,4,64,32,4,32,24,77,13,3,12,4,11,32,4,32,24,79,4,64,32,4,32,24,77,13,2,32,4,32,24,107,32,12,108,65,136,14,75,13,4,12,3,11,32,0,32,14,107,65,1,106,32,24,32,4,107,108,65,137,14,73,13,5,11,32,8,32,7,65,5,116,34,3,106,34,4,40,2,0,4,64,32,21,40,2,52,33,1,32,4,40,2,12,4,64,32,10,32,4,41,2,12,55,3,88,32,1,32,10,65,216,0,106,16,10,11,32,4,40,2,20,4,64,32,10,32,4,41,2,20,55,3,80,32,1,32,10,65,208,0,106,16,10,11,32,4,40,2,4,34,2,4,64,32,2,40,2,0,34,0,4,64,32,0,35,8,40,2,0,17,2,0,32,4,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,4,40,2,0,32,21,65,36,106,32,1,16,26,32,21,40,2,0,33,8,11,32,21,40,2,4,32,7,65,127,115,106,65,5,116,34,1,4,64,32,3,32,8,106,34,0,32,0,65,32,106,32,1,252,10,0,0,11,32,21,32,21,40,2,4,65,1,107,54,2,4,12,6,11,32,3,32,11,78,13,3,11,32,8,32,7,65,5,116,106,33,18,2,64,32,16,13,0,32,18,40,2,28,13,0,32,2,47,1,0,34,4,32,18,40,2,0,34,3,47,1,0,71,13,0,32,2,40,2,4,32,3,40,2,4,71,13,0,32,1,32,3,40,2,152,1,71,13,0,35,1,65,148,12,106,34,0,33,14,32,18,40,2,12,33,13,2,64,32,22,40,2,12,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,14,11,35,1,65,148,12,106,34,0,33,8,2,64,32,13,69,13,0,32,13,65,1,113,13,0,32,13,45,0,44,65,192,0,113,69,13,0,32,0,32,13,65,48,106,32,13,40,2,36,27,33,8,11,32,14,40,2,24,33,0,2,64,32,8,40,2,24,34,1,65,25,79,4,64,32,0,32,1,71,13,2,32,14,40,2,0,33,14,32,8,40,2,0,33,8,12,1,11,32,0,32,1,71,13,1,11,32,14,32,8,32,1,16,18,13,0,32,3,47,1,144,1,4,127,65,0,33,2,3,64,32,21,40,2,52,33,4,32,22,40,2,0,32,10,32,3,32,2,65,4,116,106,34,0,41,2,24,55,3,120,32,10,32,0,41,2,16,55,3,112,32,10,65,240,0,106,32,4,16,32,32,2,65,1,106,34,2,32,18,40,2,0,34,3,47,1,144,1,73,13,0,11,32,22,40,2,0,34,2,47,1,0,5,32,4,11,65,255,255,3,113,13,4,32,22,32,2,40,2,156,1,54,2,8,32,21,32,7,16,17,12,5,11,32,10,32,18,41,2,24,55,3,208,1,32,10,32,18,41,2,16,55,3,200,1,32,10,32,18,41,2,8,55,3,192,1,32,10,32,18,41,2,0,55,3,184,1,32,18,32,22,41,2,0,55,2,0,32,18,32,22,41,2,8,55,2,8,32,18,32,22,41,2,16,55,2,16,32,18,32,22,41,2,24,55,2,24,32,21,40,2,0,32,19,106,34,0,32,10,41,3,184,1,55,2,0,32,0,32,10,41,3,192,1,55,2,8,32,0,32,10,41,3,200,1,55,2,16,32,0,32,10,41,3,208,1,55,2,24,12,1,11,32,21,40,2,52,33,1,32,22,40,2,12,4,64,32,10,32,22,41,2,12,55,3,104,32,1,32,10,65,232,0,106,16,10,11,32,22,40,2,20,4,64,32,10,32,22,41,2,20,55,3,96,32,1,32,10,65,224,0,106,16,10,11,32,22,40,2,4,34,2,4,64,32,2,40,2,0,34,0,4,64,32,0,35,8,40,2,0,17,2,0,32,22,40,2,4,33,2,11,32,2,65,0,54,2,8,32,2,66,0,55,2,0,32,2,35,8,40,2,0,17,2,0,11,32,22,40,2,0,32,21,65,36,106,32,1,16,26,32,21,40,2,4,32,17,65,127,115,106,65,5,116,34,1,4,64,32,21,40,2,0,32,19,106,34,0,32,0,65,32,106,32,1,252,10,0,0,11,32,21,32,21,40,2,4,65,1,107,54,2,4,32,17,65,1,107,33,17,32,7,65,1,107,33,7,11,65,1,33,34,12,3,11,32,16,13,2,32,8,32,7,65,5,116,106,34,13,40,2,28,13,2,32,2,47,1,0,34,4,32,13,40,2,0,34,3,47,1,0,71,13,2,32,2,40,2,4,32,3,40,2,4,71,13,2,32,1,32,3,40,2,152,1,71,13,2,35,1,65,148,12,106,34,0,33,14,32,13,40,2,12,33,18,2,64,32,22,40,2,12,34,1,69,13,0,32,1,65,1,113,13,0,32,1,45,0,44,65,192,0,113,69,13,0,32,0,32,1,65,48,106,32,1,40,2,36,27,33,14,11,35,1,65,148,12,106,34,0,33,8,2,64,32,18,69,13,0,32,18,65,1,113,13,0,32,18,45,0,44,65,192,0,113,69,13,0,32,0,32,18,65,48,106,32,18,40,2,36,27,33,8,11,32,14,40,2,24,33,0,2,64,32,8,40,2,24,34,1,65,25,79,4,64,32,0,32,1,71,13,4,32,14,40,2,0,33,14,32,8,40,2,0,33,8,12,1,11,32,0,32,1,71,13,3,11,32,14,32,8,32,1,16,18,13,2,32,3,47,1,144,1,4,127,65,0,33,2,3,64,32,21,40,2,52,33,4,32,22,40,2,0,32,10,32,3,32,2,65,4,116,106,34,0,41,2,24,55,3,72,32,10,32,0,41,2,16,55,3,64,32,10,65,64,107,32,4,16,32,32,2,65,1,106,34,2,32,13,40,2,0,34,3,47,1,144,1,73,13,0,11,32,22,40,2,0,34,2,47,1,0,5,32,4,11,65,255,255,3,113,13,0,32,22,32,2,40,2,156,1,54,2,8,11,32,21,32,7,16,17,11,65,1,33,34,32,7,65,1,107,34,7,33,17,11,32,17,65,1,106,34,17,32,7,73,13,0,11,32,7,65,1,106,33,7,11,32,7,32,5,40,2,132,9,34,2,40,2,4,34,26,73,13,0,11,32,26,65,6,75,4,64,3,64,32,2,65,6,16,17,32,5,40,2,132,9,34,2,40,2,4,34,26,65,6,75,13,0,11,65,1,33,34,11,65,0,33,11,65,0,33,2,32,26,4,64,3,64,2,64,32,11,65,5,116,34,36,32,5,40,2,132,9,34,0,40,2,0,106,40,2,28,65,1,71,4,64,65,1,33,2,12,1,11,2,64,2,64,32,2,65,1,113,13,0,32,5,40,2,144,10,65,5,75,13,0,32,5,40,2,96,69,4,64,32,5,40,2,140,10,69,13,2,11,32,10,32,11,54,2,48,32,23,65,128,8,35,1,65,59,106,32,10,65,48,106,16,11,26,32,5,40,2,96,34,0,4,64,32,5,40,2,92,65,0,32,23,32,0,17,3,0,11,32,23,33,2,32,5,40,2,140,10,69,13,1,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,0,32,11,16,17,32,26,65,1,107,33,26,32,11,65,1,107,33,11,65,1,33,34,12,1,11,32,5,40,2,132,9,40,2,0,32,36,106,34,1,40,2,0,34,0,40,2,152,1,33,27,2,64,32,1,40,2,28,65,1,71,4,64,32,0,47,1,0,13,1,32,0,40,2,20,13,1,11,32,27,65,244,3,106,33,27,11,32,1,65,0,54,2,28,32,1,41,2,20,33,56,32,1,66,0,55,2,20,32,10,32,56,55,3,176,1,32,5,40,2,132,9,40,2,4,33,18,32,5,32,11,65,0,16,83,26,32,56,167,33,0,32,5,40,2,132,9,34,2,40,2,4,34,31,32,11,75,4,64,32,2,40,2,0,32,36,106,40,2,0,34,1,40,2,4,33,12,32,1,41,2,8,34,57,66,32,136,167,33,22,32,56,66,8,136,167,33,32,32,57,167,33,46,65,0,33,37,32,0,33,3,32,11,33,8,3,64,2,64,32,37,4,64,65,1,33,37,12,1,11,65,0,33,37,32,5,40,2,160,9,34,7,47,1,12,65,254,255,3,113,69,13,0,32,8,65,5,116,34,21,32,5,40,2,132,9,40,2,0,106,40,2,0,47,1,0,33,30,65,1,33,17,3,64,2,64,2,64,32,17,65,253,255,3,75,13,0,2,64,2,64,32,7,40,2,24,34,20,32,30,77,4,64,32,7,40,2,44,32,7,40,2,48,32,30,32,20,107,65,2,116,106,40,2,0,65,1,116,106,34,1,47,1,0,34,16,69,4,64,65,0,33,1,12,3,11,32,1,65,2,106,33,4,65,0,33,13,3,64,32,4,65,4,106,33,1,32,4,47,1,2,34,19,4,127,32,1,32,19,65,1,116,106,65,0,33,2,3,64,32,17,32,1,47,1,0,70,13,4,32,1,65,2,106,33,1,32,2,65,1,106,34,2,32,19,71,13,0,11,5,32,1,11,33,4,65,0,33,1,32,13,65,1,106,34,13,32,16,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,30,108,65,1,116,106,32,17,65,1,116,106,47,1,0,33,1,12,1,11,32,4,47,1,0,33,1,11,32,7,40,2,52,34,24,32,1,65,255,255,3,113,65,3,116,106,34,2,45,0,0,34,1,69,13,0,32,2,32,1,65,3,116,106,34,1,45,0,0,13,0,32,30,32,1,65,8,106,34,1,65,6,107,47,1,0,32,1,65,4,107,45,0,0,65,1,113,27,34,15,65,255,255,3,113,34,1,69,13,0,32,1,32,30,70,13,0,2,64,2,64,32,3,65,1,113,4,64,32,32,65,255,1,113,33,4,65,1,33,3,12,1,11,32,10,40,2,176,1,34,0,65,8,118,33,32,32,0,33,3,32,0,65,196,0,65,40,32,0,40,2,36,27,106,47,1,0,34,4,65,253,255,3,75,13,1,11,2,64,2,64,32,1,32,20,79,4,64,32,7,40,2,44,32,7,40,2,48,32,1,32,20,107,65,2,116,106,40,2,0,65,1,116,106,34,1,47,1,0,34,19,69,4,64,65,0,33,1,12,3,11,32,1,65,2,106,33,13,65,0,33,14,3,64,32,13,65,4,106,33,1,32,13,47,1,2,34,20,4,127,32,1,32,20,65,1,116,106,65,0,33,2,3,64,32,1,47,1,0,32,4,70,13,4,32,1,65,2,106,33,1,32,2,65,1,106,34,2,32,20,71,13,0,11,5,32,1,11,33,13,65,0,33,1,32,14,65,1,106,34,14,32,19,71,13,0,11,12,2,11,32,7,40,2,40,32,7,40,2,4,32,1,108,65,1,116,106,32,4,65,1,116,106,47,1,0,33,1,12,1,11,32,13,47,1,0,33,1,11,32,24,32,1,65,255,255,3,113,65,3,116,106,34,1,45,0,0,69,13,1,32,1,45,0,8,65,1,71,13,1,2,64,32,5,40,2,32,32,12,70,4,64,32,5,40,2,100,33,7,32,5,40,2,104,33,1,32,12,33,14,12,1,11,65,0,33,1,32,5,65,0,54,2,124,32,5,65,0,58,0,128,1,32,5,32,57,55,2,36,32,5,32,12,54,2,32,32,5,40,2,68,33,4,2,64,2,127,32,5,40,2,100,34,7,4,64,3,64,2,64,32,4,32,1,65,24,108,106,34,3,40,2,20,34,2,32,12,77,13,0,32,2,32,3,40,2,16,34,0,77,13,0,32,0,32,12,34,14,79,4,64,32,5,32,3,41,2,0,55,2,36,32,5,32,0,54,2,32,32,0,33,14,11,32,5,32,1,54,2,104,32,5,40,2,72,69,4,64,65,0,33,2,12,5,11,65,0,32,14,32,5,40,2,108,34,0,73,13,3,26,65,0,34,2,32,14,32,5,40,2,112,32,0,106,79,13,3,26,12,4,11,32,1,65,1,106,34,1,32,7,71,13,0,11,11,32,5,32,7,54,2,104,32,4,32,7,65,24,108,106,34,0,65,4,107,40,2,0,33,14,32,5,32,0,65,16,107,41,2,0,55,2,36,32,5,32,14,54,2,32,32,7,33,1,65,1,11,33,2,32,5,65,0,54,2,72,32,5,66,0,55,2,108,11,32,5,65,0,54,2,0,32,5,32,2,54,2,116,11,2,127,2,64,32,1,32,7,70,13,0,32,1,69,13,0,32,14,32,5,40,2,68,32,1,65,24,108,106,34,1,40,2,16,71,13,0,32,1,65,4,107,40,2,0,33,0,32,5,32,1,65,16,107,41,2,0,34,56,55,2,60,32,5,32,0,54,2,56,32,56,66,32,136,167,33,14,32,56,167,12,1,11,32,5,32,5,41,2,32,55,2,56,32,5,32,5,40,2,40,54,2,64,32,5,40,2,64,33,14,32,5,40,2,56,33,0,32,5,40,2,60,11,33,20,2,127,32,10,40,2,176,1,34,1,65,1,113,4,64,32,10,45,0,182,1,32,10,45,0,183,1,106,33,13,32,10,45,0,181,1,65,4,118,12,1,11,32,1,40,2,16,32,1,40,2,4,106,33,13,32,1,40,2,28,11,33,19,32,10,32,5,40,2,132,9,34,28,40,2,0,34,7,32,21,106,34,1,41,2,24,55,3,208,1,32,10,32,1,41,2,16,55,3,200,1,32,10,32,1,41,2,8,55,3,192,1,32,10,32,1,41,2,0,55,3,184,1,32,28,32,28,40,2,4,34,3,65,1,106,34,2,32,28,40,2,8,34,1,75,4,127,32,7,65,8,32,1,65,1,116,34,1,32,2,32,1,32,2,75,27,34,1,32,1,65,8,77,27,34,1,65,5,116,35,6,40,2,0,17,1,0,33,7,32,28,32,1,54,2,8,32,28,40,2,4,34,3,65,1,106,5,32,2,11,54,2,4,32,28,32,7,54,2,0,32,7,32,3,65,5,116,106,34,1,32,10,41,3,184,1,55,2,0,32,1,32,10,41,3,208,1,55,2,24,32,1,32,10,41,3,200,1,55,2,16,32,1,32,10,41,3,192,1,55,2,8,32,28,40,2,0,32,28,40,2,4,34,4,65,5,116,106,34,24,65,32,107,40,2,0,34,1,4,64,32,1,32,1,40,2,148,1,65,1,106,54,2,148,1,11,32,14,32,22,107,34,1,65,0,32,1,32,14,77,27,33,16,32,20,32,46,75,33,7,32,20,32,20,32,46,107,34,3,73,33,2,32,0,32,12,107,34,1,32,0,75,33,0,2,64,32,24,65,20,107,40,2,0,34,20,69,13,0,32,20,65,1,113,13,0,32,20,32,20,40,2,0,65,1,106,54,2,0,32,20,40,2,0,26,32,28,40,2,4,33,4,11,32,14,32,16,32,7,27,33,20,65,0,32,3,32,2,27,33,16,65,0,32,1,32,0,27,33,14,32,13,32,19,106,33,7,32,24,65,28,107,65,0,54,2,0,32,5,40,2,160,9,40,2,72,32,17,65,3,108,106,34,0,45,0,1,33,3,32,0,45,0,0,33,2,2,126,2,64,32,17,65,255,1,75,13,0,32,14,65,254,1,75,13,0,32,16,65,15,75,13,0,32,20,65,254,1,75,13,0,32,7,65,15,75,13,0,32,3,65,2,116,32,2,65,1,116,106,65,1,114,65,255,1,113,32,17,65,8,116,114,33,1,32,7,65,12,116,32,16,65,8,116,114,32,14,65,16,116,114,32,20,114,173,66,32,134,12,1,11,32,16,173,32,20,173,66,32,134,132,33,56,2,127,32,5,40,2,140,9,34,0,4,64,32,5,32,0,65,1,107,34,0,54,2,140,9,32,5,40,2,136,9,32,0,65,3,116,106,40,2,0,12,1,11,65,204,0,35,7,40,2,0,17,0,0,11,33,1,32,10,66,0,55,3,192,1,32,10,66,0,55,3,200,1,32,10,65,0,54,2,208,1,32,10,32,14,54,2,136,2,32,10,32,56,55,3,128,2,32,10,65,0,54,2,248,1,32,10,65,0,54,2,244,1,32,10,65,0,54,2,240,1,32,10,32,7,54,2,236,1,32,10,65,0,54,2,232,1,32,10,65,0,54,2,228,1,32,10,32,17,59,1,224,1,32,10,65,0,59,1,222,1,32,10,65,0,59,1,218,1,32,10,66,0,55,3,184,1,32,10,65,1,54,2,140,2,32,10,32,3,65,1,116,32,2,106,65,255,1,113,59,1,220,1,32,1,32,10,40,2,140,2,54,2,0,32,1,32,10,40,2,136,2,54,2,4,32,1,32,10,41,3,128,2,55,2,8,32,1,32,10,40,2,248,1,54,2,16,32,1,32,10,40,2,244,1,54,2,20,32,1,32,10,40,2,240,1,54,2,24,32,1,32,10,40,2,236,1,54,2,28,32,1,32,10,40,2,232,1,54,2,32,32,1,32,10,40,2,228,1,54,2,36,32,1,32,10,47,1,224,1,59,1,40,32,1,32,10,47,1,222,1,59,1,42,32,1,32,10,47,1,220,1,59,1,44,32,1,32,10,47,1,218,1,59,1,46,32,1,32,10,40,2,208,1,54,2,72,32,1,65,64,107,32,10,41,3,200,1,55,2,0,32,1,32,10,41,3,192,1,55,2,56,32,1,32,10,41,3,184,1,55,2,48,66,0,11,33,56,32,4,65,1,107,33,24,2,64,32,1,65,1,113,4,64,32,1,65,32,114,33,1,12,1,11,32,1,32,1,47,1,44,65,128,4,114,59,1,44,11,32,24,65,5,116,34,16,32,5,40,2,132,9,34,2,40,2,0,106,34,7,40,2,0,33,3,2,127,32,2,40,2,40,34,0,4,64,32,2,32,0,65,1,107,34,0,54,2,40,32,2,40,2,36,32,0,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,20,32,15,59,1,0,32,20,65,2,106,65,0,65,146,1,252,11,0,32,20,66,0,55,2,152,1,32,20,65,1,54,2,148,1,32,20,65,0,54,2,160,1,2,64,2,127,2,64,32,3,4,64,32,20,32,56,32,1,173,132,55,2,20,32,20,32,3,54,2,16,32,20,65,1,59,1,144,1,32,20,32,3,41,2,4,55,2,4,32,20,32,3,40,2,12,54,2,12,32,20,32,3,40,2,152,1,34,0,54,2,152,1,32,20,32,3,40,2,160,1,34,4,54,2,160,1,32,20,32,3,40,2,156,1,34,19,54,2,156,1,32,1,65,1,113,34,3,13,1,32,20,32,1,45,0,45,65,2,113,4,127,65,226,4,5,32,1,40,2,32,11,32,0,106,54,2,152,1,65,0,32,1,40,2,12,32,1,40,2,20,34,2,27,33,0,32,1,40,2,16,32,1,40,2,4,106,33,13,32,2,32,1,40,2,8,106,33,14,32,1,40,2,24,12,2,11,32,20,66,0,55,2,4,32,20,65,0,54,2,12,12,2,11,32,20,32,0,32,1,65,26,116,65,31,117,65,226,4,113,106,54,2,152,1,32,56,66,32,136,167,65,255,1,113,33,0,32,56,66,40,136,167,65,15,113,33,14,32,56,66,48,136,167,33,13,65,0,11,33,2,32,20,32,20,40,2,4,32,13,106,54,2,4,32,20,32,20,40,2,8,32,14,106,173,32,0,32,2,106,65,0,32,20,40,2,12,32,14,27,106,173,66,32,134,132,55,2,8,2,64,32,3,69,4,64,65,0,33,14,32,20,32,1,40,2,36,34,0,4,127,32,1,40,2,56,5,65,0,11,32,19,106,32,1,47,1,44,65,1,113,106,32,1,47,1,40,65,254,255,3,70,106,54,2,156,1,32,0,69,13,1,32,1,40,2,60,33,14,12,1,11,32,20,32,19,32,1,65,1,118,65,1,113,106,54,2,156,1,65,0,33,14,11,32,20,32,4,32,14,106,54,2,160,1,11,32,7,32,20,54,2,0,32,5,32,24,2,127,32,10,45,0,176,1,65,1,113,4,64,65,1,33,0,32,10,45,0,177,1,34,32,12,1,11,32,10,40,2,176,1,34,0,65,8,118,33,32,32,0,40,2,36,69,4,64,32,0,47,1,40,12,1,11,32,0,47,1,68,11,65,255,255,3,113,16,83,13,2,32,5,40,2,160,9,33,7,11,32,0,33,3,11,32,17,65,1,106,34,17,32,7,47,1,12,73,13,1,12,2,11,11,2,64,2,64,32,5,40,2,96,13,0,32,5,40,2,140,10,13,0,65,1,33,37,12,1,11,65,0,33,1,32,17,32,5,40,2,160,9,34,2,40,2,8,32,2,40,2,4,106,73,4,64,32,2,40,2,56,32,17,65,2,116,106,40,2,0,33,1,11,32,10,32,5,40,2,132,9,40,2,0,32,16,106,40,2,0,47,1,0,54,2,36,32,10,32,1,54,2,32,32,23,65,128,8,35,1,65,184,2,106,32,10,65,32,106,16,11,26,32,5,40,2,96,34,1,4,64,32,5,40,2,92,65,0,32,23,32,1,17,3,0,11,65,1,33,37,32,23,33,2,32,5,40,2,140,10,69,13,0,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,69,13,3,12,1,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,0,33,3,11,32,5,40,2,132,9,34,2,40,2,0,32,8,65,5,116,106,34,4,40,2,0,33,7,2,127,32,2,40,2,40,34,1,4,64,32,2,32,1,65,1,107,34,1,54,2,40,32,2,40,2,36,32,1,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,1,65,0,65,148,1,252,11,0,32,1,66,0,55,2,152,1,32,1,65,1,54,2,148,1,32,1,65,0,54,2,160,1,2,64,32,7,4,64,32,1,66,0,55,2,20,32,1,32,7,54,2,16,32,1,65,1,59,1,144,1,32,1,65,0,54,2,28,32,1,32,7,41,2,4,55,2,4,32,1,32,7,40,2,12,54,2,12,32,1,32,7,40,2,152,1,54,2,152,1,32,1,32,7,40,2,160,1,54,2,160,1,32,1,32,7,40,2,156,1,34,2,54,2,156,1,12,1,11,32,1,66,0,55,2,4,65,0,33,2,32,1,65,0,54,2,12,11,32,4,32,1,54,2,0,32,4,32,2,54,2,8,32,18,32,8,65,1,106,32,8,32,11,70,27,34,8,32,31,73,13,0,11,32,5,40,2,132,9,33,2,11,2,64,32,18,32,31,79,13,0,32,18,33,1,32,2,40,2,0,32,36,106,40,2,28,13,0,3,64,2,64,32,5,40,2,132,9,34,12,40,2,0,34,2,32,36,106,34,19,40,2,28,13,0,32,2,32,18,65,5,116,106,34,16,40,2,28,13,0,32,19,40,2,0,34,4,47,1,0,34,2,32,16,40,2,0,34,7,47,1,0,71,13,0,32,4,40,2,4,32,7,40,2,4,71,13,0,32,4,40,2,152,1,32,7,40,2,152,1,71,13,0,35,1,65,148,12,106,33,13,32,16,40,2,12,33,8,2,64,32,19,40,2,12,34,3,69,13,0,32,3,65,1,113,13,0,32,3,45,0,44,65,192,0,113,69,13,0,32,13,32,3,65,48,106,32,3,40,2,36,27,33,13,11,35,1,65,148,12,106,33,14,2,64,32,8,69,13,0,32,8,65,1,113,13,0,32,8,45,0,44,65,192,0,113,69,13,0,32,14,32,8,65,48,106,32,8,40,2,36,27,33,14,11,32,13,40,2,24,33,3,2,64,32,14,40,2,24,34,8,65,25,79,4,64,32,3,32,8,71,13,2,32,13,40,2,0,33,13,32,14,40,2,0,33,14,12,1,11,32,3,32,8,71,13,1,11,32,13,32,14,32,8,16,18,13,0,32,7,47,1,144,1,4,127,65,0,33,4,3,64,32,12,40,2,52,33,8,32,19,40,2,0,32,10,32,7,32,4,65,4,116,106,34,2,41,2,24,55,3,24,32,10,32,2,41,2,16,55,3,16,32,10,65,16,106,32,8,16,32,32,4,65,1,106,34,4,32,16,40,2,0,34,7,47,1,144,1,73,13,0,11,32,19,40,2,0,34,4,47,1,0,5,32,2,11,65,255,255,3,113,69,4,64,32,19,32,4,40,2,156,1,54,2,8,11,32,12,32,18,16,17,11,32,1,65,1,106,34,1,32,31,71,13,0,11,32,5,40,2,132,9,33,2,11,65,12,35,7,40,2,0,17,0,0,33,1,32,10,65,16,54,2,132,2,32,10,32,1,54,2,128,2,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,10,65,184,1,106,32,2,32,11,35,2,65,6,106,32,10,65,128,2,106,65,127,16,25,32,2,40,2,0,32,36,106,34,3,40,2,4,34,1,4,64,32,1,40,2,0,34,2,4,64,32,2,35,8,40,2,0,17,2,0,32,3,40,2,4,33,1,11,32,1,65,0,54,2,8,32,1,66,0,55,2,0,32,1,35,8,40,2,0,17,2,0,11,32,3,32,10,40,2,128,2,54,2,4,2,64,32,0,65,1,113,13,0,32,10,40,2,176,1,40,2,36,69,13,0,32,5,32,10,65,176,1,106,65,0,32,55,16,54,11,32,10,32,10,41,3,176,1,55,3,8,32,5,32,11,32,10,65,8,106,16,82,32,5,40,2,140,10,34,0,4,64,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,11,65,1,33,2,11,32,11,65,1,106,34,11,32,26,73,13,0,11,11,65,0,33,14,32,34,69,13,2,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,3,32,23,35,1,65,194,8,106,34,0,41,0,0,55,0,0,32,23,32,0,45,0,8,58,0,8,12,2,11,32,23,35,1,65,194,8,106,34,0,41,0,0,55,0,0,32,23,32,0,45,0,8,58,0,8,32,5,40,2,92,65,0,32,23,32,1,17,3,0,32,5,40,2,140,10,13,1,12,2,11,65,0,33,1,32,5,45,0,196,10,13,4,12,5,11,32,23,33,2,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,40,2,140,10,34,0,69,13,3,32,5,40,2,132,9,32,5,40,2,160,9,32,0,16,29,35,1,65,235,11,106,32,5,40,2,140,10,16,20,12,3,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,2,64,32,5,40,2,180,9,34,0,69,13,0,2,127,32,0,65,26,116,65,31,117,65,226,4,113,32,0,65,1,113,13,0,26,65,226,4,32,0,45,0,45,65,2,113,13,0,26,32,0,40,2,32,11,32,27,79,13,0,32,5,40,2,132,9,16,57,12,2,11,2,64,32,5,40,2,192,10,34,1,32,5,40,2,164,10,34,2,79,13,0,32,54,40,2,0,33,0,3,64,32,0,32,1,65,24,108,106,40,2,20,32,9,75,13,1,32,5,32,1,65,1,106,34,1,54,2,192,10,32,1,32,2,71,13,0,11,11,32,14,69,13,0,11,11,2,64,32,5,45,0,197,10,13,0,32,5,41,2,180,9,33,56,32,5,65,0,54,2,152,9,32,56,167,34,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,0,40,2,0,65,1,71,13,0,32,5,40,2,148,9,33,1,65,0,33,2,32,5,40,2,156,9,69,4,64,2,127,32,1,4,64,32,1,65,192,0,35,6,40,2,0,17,1,0,12,1,11,65,192,0,35,7,40,2,0,17,0,0,11,33,1,32,5,65,8,54,2,156,9,32,5,40,2,152,9,33,2,11,32,5,32,1,54,2,148,9,32,5,32,2,65,1,106,54,2,152,9,32,1,32,2,65,3,116,106,32,56,55,2,0,11,2,127,2,64,2,64,32,5,40,2,152,9,34,17,4,64,32,5,65,148,9,106,33,11,32,5,65,180,10,106,33,23,3,64,32,5,32,5,40,2,148,10,65,1,106,34,0,65,0,32,0,65,227,0,77,27,34,0,54,2,148,10,2,64,32,0,13,0,32,5,40,2,176,10,34,0,69,13,0,32,23,32,0,17,0,0,13,3,32,5,40,2,152,9,33,17,11,32,10,32,11,40,2,0,32,17,65,3,116,106,65,8,107,41,2,0,34,56,55,3,184,1,2,64,32,56,167,34,14,47,1,64,69,13,0,32,14,65,8,107,40,2,0,33,1,32,14,32,14,40,2,36,65,3,116,107,40,2,0,34,0,65,1,113,4,127,65,0,5,32,0,47,1,64,11,32,1,65,1,113,4,127,65,0,5,32,1,47,1,64,11,107,34,1,65,2,72,13,0,3,64,32,5,40,2,160,9,33,13,32,10,32,10,41,3,184,1,55,3,0,65,0,33,8,35,0,65,48,107,34,18,36,0,32,11,40,2,4,33,7,32,18,32,10,41,2,0,34,56,55,3,40,2,64,32,1,34,0,65,1,118,34,1,69,13,0,32,56,167,34,12,47,1,40,33,4,3,64,2,64,32,12,40,2,0,65,1,75,13,0,32,12,40,2,36,34,2,65,2,73,13,0,32,12,32,2,65,3,116,107,34,3,41,2,0,34,56,167,34,9,65,1,113,13,0,32,9,40,2,36,34,2,65,2,73,13,0,32,9,40,2,0,65,1,75,13,0,32,9,47,1,40,32,4,71,13,0,32,9,32,2,65,3,116,107,41,2,0,34,57,167,34,12,65,1,113,13,0,32,12,40,2,36,65,2,73,13,0,32,12,40,2,0,65,1,75,13,0,32,12,47,1,40,32,4,71,13,0,32,3,32,57,55,2,0,32,9,32,9,40,2,36,65,3,116,107,32,12,65,8,107,34,2,41,2,0,55,2,0,32,2,32,56,55,2,0,32,11,40,2,0,33,9,32,11,32,11,40,2,4,34,38,65,1,106,34,3,32,11,40,2,8,34,2,75,4,127,65,8,32,2,65,1,116,34,2,32,3,32,2,32,3,75,27,34,2,32,2,65,8,77,27,34,2,65,3,116,33,3,2,127,32,9,4,64,32,9,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,9,32,11,32,2,54,2,8,32,11,40,2,4,34,38,65,1,106,5,32,3,11,54,2,4,32,11,32,9,54,2,0,32,9,32,38,65,3,116,106,32,18,41,3,40,55,2,0,32,18,32,57,66,32,136,62,2,44,32,18,32,12,54,2,40,32,8,65,1,106,34,8,32,1,71,13,1,11,11,32,11,40,2,4,34,12,32,7,77,13,0,3,64,32,11,32,12,65,1,107,34,2,54,2,4,32,18,32,11,40,2,0,32,2,65,3,116,106,41,2,0,34,56,55,3,40,32,18,32,56,167,34,2,32,2,40,2,36,65,3,116,107,41,2,0,34,56,55,3,32,32,18,32,56,167,65,8,107,41,2,0,34,56,55,3,16,32,18,32,56,55,3,24,32,18,65,16,106,32,13,16,21,32,18,32,18,41,3,32,55,3,8,32,18,65,8,106,32,13,16,21,32,18,32,18,41,3,40,55,3,0,32,18,32,13,16,21,32,11,40,2,4,34,12,32,7,75,13,0,11,11,32,18,65,48,106,36,0,32,5,32,5,40,2,148,10,65,16,32,1,32,1,65,16,77,27,65,4,118,65,255,1,113,106,34,2,65,0,32,2,65,227,0,77,27,34,2,54,2,148,10,2,64,32,2,13,0,32,5,40,2,176,10,34,2,69,13,0,32,23,32,2,17,0,0,13,5,11,32,0,65,3,75,13,0,11,32,5,40,2,152,9,33,17,11,32,5,32,17,65,1,107,34,17,54,2,152,9,32,14,40,2,36,34,2,4,64,65,0,33,1,3,64,2,64,32,14,32,2,65,3,116,107,32,1,65,3,116,106,41,2,0,34,56,167,34,0,65,1,113,13,0,32,0,40,2,36,69,13,0,32,0,40,2,0,65,1,71,13,0,32,5,40,2,148,9,33,2,32,5,32,5,40,2,152,9,34,14,65,1,106,34,3,32,5,40,2,156,9,34,0,75,4,127,65,8,32,0,65,1,116,34,0,32,3,32,0,32,3,75,27,34,0,32,0,65,8,77,27,34,0,65,3,116,33,3,2,127,32,2,4,64,32,2,32,3,35,6,40,2,0,17,1,0,12,1,11,32,3,35,7,40,2,0,17,0,0,11,33,2,32,5,32,0,54,2,156,9,32,5,40,2,152,9,34,14,65,1,106,5,32,3,11,54,2,152,9,32,5,32,2,54,2,148,9,32,2,32,14,65,3,116,106,32,56,55,2,0,32,10,40,2,184,1,34,14,40,2,36,33,2,11,32,1,65,1,106,34,1,32,2,73,13,0,11,32,5,40,2,152,9,33,17,11,32,17,13,0,11,11,32,5,65,0,58,0,197,10,2,64,32,5,40,2,96,34,1,69,4,64,32,5,40,2,140,10,69,13,3,32,5,35,1,65,203,8,106,34,0,40,0,0,54,0,132,1,32,5,32,0,45,0,4,58,0,136,1,32,5,65,132,1,106,33,2,12,1,11,32,5,35,1,65,203,8,106,34,0,40,0,0,54,0,132,1,32,5,32,0,45,0,4,58,0,136,1,32,5,40,2,92,65,0,32,5,65,132,1,106,34,2,32,1,17,3,0,32,5,40,2,140,10,69,13,2,11,3,64,2,64,2,64,32,2,45,0,0,34,1,65,34,70,13,0,32,1,65,220,0,70,13,0,32,1,13,1,32,5,41,2,180,9,33,56,32,5,40,2,160,9,34,1,32,5,40,2,140,10,34,0,69,13,5,26,32,10,32,56,55,3,184,1,32,10,65,184,1,106,65,0,32,1,65,0,32,0,16,55,65,10,32,5,40,2,140,10,16,9,12,4,11,65,220,0,32,5,40,2,140,10,16,9,32,2,45,0,0,33,1,11,32,1,192,32,5,40,2,140,10,16,9,32,2,65,1,106,33,2,12,0,11,0,11,32,5,65,1,58,0,197,10,65,0,33,1,12,3,11,32,5,41,2,180,9,33,56,32,5,40,2,160,9,11,33,0,32,5,40,2,68,33,3,32,5,40,2,100,33,4,65,20,35,7,40,2,0,17,0,0,34,1,32,0,54,2,8,32,1,32,56,55,2,0,32,1,32,4,65,24,35,9,40,2,0,17,1,0,34,2,54,2,12,32,4,65,24,108,34,0,4,64,32,2,32,3,32,0,252,10,0,0,11,32,1,32,4,54,2,16,32,5,66,0,55,2,180,9,32,5,16,41,12,1,11,32,5,16,41,11,32,10,65,144,2,106,36,0,32,5,66,0,55,2,172,10,32,40,65,16,106,36,0,32,29,65,48,106,36,0,32,1,11,7,0,32,0,40,2,32,11,11,0,32,1,65,1,70,32,2,16,8,11,62,1,1,127,35,0,65,16,107,34,2,36,0,32,2,32,0,54,2,8,32,2,35,2,65,20,106,65,0,32,1,27,54,2,12,32,2,32,2,41,2,8,55,3,0,32,0,32,2,41,2,0,55,2,92,32,2,65,16,106,36,0,11,199,8,2,7,127,1,126,35,11,33,6,35,0,65,16,107,34,5,36,0,65,1,65,200,10,35,9,40,2,0,17,1,0,34,0,35,2,34,1,54,2,28,32,0,32,1,65,1,106,54,2,24,32,0,32,1,65,2,106,54,2,20,32,0,32,1,65,3,106,54,2,16,32,0,32,1,65,4,106,54,2,12,32,0,32,1,65,5,106,54,2,8,32,0,66,0,55,2,0,32,0,65,32,106,65,0,65,228,8,252,11,0,32,0,65,0,65,24,35,6,40,2,0,17,1,0,34,1,54,2,68,32,1,35,1,65,252,11,106,34,2,41,2,16,55,2,16,32,1,32,2,41,2,8,55,2,8,32,1,32,2,41,2,0,55,2,0,32,0,65,1,54,2,100,2,64,2,64,32,0,40,2,68,34,3,40,2,20,34,4,32,0,40,2,32,34,1,77,13,0,32,4,32,3,40,2,16,34,2,77,13,0,32,1,32,2,77,4,64,32,0,32,3,41,2,0,55,2,36,32,0,32,2,54,2,32,32,2,33,1,11,65,0,33,2,32,0,65,0,54,2,104,32,0,40,2,72,69,13,1,32,0,40,2,108,34,3,32,1,77,4,64,32,1,32,0,40,2,112,32,3,106,73,13,2,11,32,0,65,0,54,2,72,32,0,66,0,55,2,108,12,1,11,65,1,33,2,32,0,65,1,54,2,104,32,3,41,2,8,33,7,32,0,65,0,54,2,72,32,0,32,7,55,2,36,32,0,32,4,54,2,32,32,0,66,0,55,2,108,11,32,0,65,0,54,2,176,9,32,0,65,0,54,2,0,32,0,32,2,54,2,116,32,0,66,0,55,2,168,9,32,0,65,192,0,35,7,34,1,40,2,0,17,0,0,54,2,168,9,32,0,65,4,54,2,176,9,65,128,2,32,1,40,2,0,17,0,0,33,1,32,0,66,0,55,2,148,9,32,0,66,128,128,128,128,128,4,55,2,140,9,32,0,32,1,54,2,136,9,32,0,65,156,9,106,65,0,54,2,0,65,1,65,56,35,9,40,2,0,17,1,0,34,1,66,0,55,2,0,32,1,66,0,55,2,40,32,1,66,0,55,2,32,32,1,66,0,55,2,24,32,1,66,0,55,2,16,32,1,66,0,55,2,8,32,1,65,128,1,35,7,40,2,0,17,0,0,54,2,0,32,1,65,4,54,2,8,32,1,40,2,12,33,2,32,1,40,2,20,65,3,77,4,64,2,127,32,2,4,64,32,2,65,192,0,35,6,40,2,0,17,1,0,12,1,11,65,192,0,35,7,40,2,0,17,0,0,11,33,2,32,1,65,4,54,2,20,11,32,1,32,2,54,2,12,32,1,40,2,24,33,2,32,1,40,2,32,65,3,77,4,64,2,127,32,2,4,64,32,2,65,224,0,35,6,40,2,0,17,1,0,12,1,11,65,224,0,35,7,40,2,0,17,0,0,11,33,2,32,1,65,4,54,2,32,11,32,1,32,2,54,2,24,32,1,40,2,36,33,2,32,1,40,2,44,65,49,77,4,64,2,127,32,2,4,64,32,2,65,200,1,35,6,40,2,0,17,1,0,12,1,11,65,200,1,35,7,40,2,0,17,0,0,11,33,2,32,1,65,50,54,2,44,11,32,1,32,0,65,136,9,106,34,3,54,2,52,32,1,32,2,54,2,36,2,127,32,1,40,2,40,34,4,4,64,32,1,32,4,65,1,107,34,4,54,2,40,32,2,32,4,65,2,116,106,40,2,0,12,1,11,65,164,1,35,7,40,2,0,17,0,0,11,34,2,65,1,59,1,0,32,2,65,2,106,65,0,65,146,1,252,11,0,32,2,66,0,55,2,4,32,2,65,1,54,2,148,1,32,2,65,0,54,2,12,32,2,66,0,55,2,152,1,32,2,65,0,54,2,160,1,32,1,32,2,54,2,48,32,1,16,57,32,0,66,0,55,2,244,9,32,0,66,0,55,2,180,9,32,0,32,1,54,2,132,9,32,0,65,252,9,106,66,0,55,2,0,32,0,65,132,10,106,65,0,54,2,0,32,0,66,0,55,2,148,10,32,0,66,0,55,2,136,10,32,0,65,0,54,2,160,9,32,0,65,156,10,106,66,0,55,2,0,32,0,65,164,10,106,66,0,55,2,0,32,0,65,0,54,2,192,10,32,0,65,195,10,106,65,0,54,0,0,32,0,65,224,9,106,33,1,32,0,40,2,224,9,4,64,32,5,32,1,41,2,0,55,3,8,32,3,32,5,65,8,106,16,10,11,32,0,40,2,232,9,4,64,32,5,32,0,65,232,9,106,41,2,0,55,3,0,32,3,32,5,16,10,11,32,1,66,0,55,2,0,32,1,65,0,54,2,16,32,1,66,0,55,2,8,32,5,65,16,106,36,0,32,6,65,128,208,0,65,1,16,42,54,2,4,32,6,32,0,54,2,0,11,20,1,1,127,35,11,34,0,66,143,128,128,128,208,1,55,3,0,32,0,11,106,1,3,127,32,2,32,0,47,1,0,34,3,65,8,116,32,3,65,8,118,114,34,4,65,255,255,3,113,34,5,54,2,0,65,2,33,3,2,64,32,1,65,1,70,13,0,32,4,65,128,248,3,113,65,128,176,3,71,13,0,32,0,47,1,2,34,0,65,128,248,3,113,65,128,184,3,71,13,0,32,2,32,5,65,10,116,32,0,106,65,128,184,255,26,107,54,2,0,65,4,33,3,11,32,3,11,88,1,2,127,32,2,32,0,47,1,0,34,3,54,2,0,65,2,33,4,2,64,32,1,65,1,70,13,0,32,3,65,128,248,3,113,65,128,176,3,71,13,0,32,0,47,1,2,34,0,65,128,248,3,113,65,128,184,3,71,13,0,32,2,32,3,65,10,116,32,0,106,65,128,184,255,26,107,54,2,0,65,4,33,4,11,32,4,11,205,2,1,4,127,32,2,32,0,44,0,0,34,3,65,255,1,113,34,4,54,2,0,65,1,33,5,2,64,32,3,65,0,72,4,64,2,64,32,1,65,1,70,13,0,2,64,32,3,65,96,79,4,64,2,64,32,3,65,111,77,4,64,32,2,32,4,65,15,113,34,4,54,2,0,35,1,65,222,10,106,32,4,106,45,0,0,32,0,45,0,1,34,3,65,5,118,118,65,1,113,69,13,4,32,3,65,63,113,33,6,65,2,33,3,12,1,11,32,2,32,4,65,240,1,107,34,4,54,2,0,32,3,65,116,75,13,3,35,1,65,176,12,106,32,0,45,0,1,34,3,65,4,118,106,44,0,0,32,4,118,65,1,113,69,13,3,32,2,32,3,65,63,113,32,4,65,6,116,114,34,4,54,2,0,65,2,33,5,32,1,65,2,70,13,3,65,3,33,3,32,0,45,0,2,65,128,127,115,34,6,65,255,1,113,65,63,75,13,3,11,32,2,32,6,65,255,1,113,32,4,65,6,116,114,34,4,54,2,0,32,3,32,1,34,5,71,13,1,12,2,11,32,3,65,66,73,13,1,32,2,32,4,65,31,113,34,4,54,2,0,65,1,33,3,11,32,0,32,3,106,45,0,0,65,128,127,115,65,255,1,113,34,0,65,63,77,13,2,32,3,33,5,11,32,2,65,127,54,2,0,11,32,5,15,11,32,2,32,4,65,6,116,32,0,114,54,2,0,32,3,65,1,106,11,24,1,1,127,32,0,40,2,0,65,15,79,4,127,32,0,40,2,136,1,5,65,0,11,11,165,2,1,9,127,35,0,65,32,107,34,2,36,0,32,0,4,64,32,2,66,0,55,3,24,32,2,66,0,55,3,16,32,2,66,0,55,3,8,32,2,32,0,41,2,0,55,3,0,32,2,65,8,106,32,2,16,10,32,2,40,2,8,34,4,4,64,2,64,32,2,40,2,12,34,3,69,13,0,32,3,65,4,79,4,64,32,3,65,124,113,33,9,3,64,32,4,32,1,65,3,116,106,34,5,40,2,0,35,8,34,6,40,2,0,17,2,0,32,5,40,2,8,32,6,40,2,0,17,2,0,32,5,40,2,16,32,6,40,2,0,17,2,0,32,5,40,2,24,32,6,40,2,0,17,2,0,32,1,65,4,106,33,1,32,8,65,4,106,34,8,32,9,71,13,0,11,11,32,3,65,3,113,34,3,69,13,0,3,64,32,4,32,1,65,3,116,106,40,2,0,35,8,40,2,0,17,2,0,32,1,65,1,106,33,1,32,7,65,1,106,34,7,32,3,71,13,0,11,11,32,4,35,8,40,2,0,17,2,0,11,32,2,40,2,20,34,1,4,64,32,1,35,8,40,2,0,17,2,0,11,32,0,40,2,12,35,8,34,1,40,2,0,17,2,0,32,0,32,1,40,2,0,17,2,0,11,32,2,65,32,106,36,0,11,139,1,2,4,127,1,126,32,0,40,2,0,34,1,65,1,113,69,4,64,32,1,32,1,40,2,0,65,1,106,54,2,0,32,1,40,2,0,26,11,32,0,40,2,12,33,3,32,0,40,2,16,33,1,32,0,41,2,0,33,5,32,0,40,2,8,33,2,65,20,35,7,40,2,0,17,0,0,34,0,32,2,54,2,8,32,0,32,5,55,2,0,32,0,32,1,65,24,35,9,40,2,0,17,1,0,34,2,54,2,12,32,1,65,24,108,34,4,4,64,32,2,32,3,32,4,252,10,0,0,11,32,0,32,1,54,2,16,32,0,11,192,4,2,7,127,1,126,35,0,65,16,107,33,3,2,64,32,0,40,2,0,34,5,69,13,0,32,0,40,2,24,34,6,65,255,1,113,65,255,1,70,13,0,32,5,65,1,113,69,4,64,32,5,32,5,40,2,36,65,3,116,107,33,4,11,32,3,32,0,40,2,20,54,2,8,32,3,32,0,41,2,12,55,3,0,32,0,40,2,28,33,5,32,1,32,4,32,6,65,3,116,106,34,4,54,2,0,32,1,32,3,40,2,8,54,2,12,32,1,32,3,41,3,0,55,2,4,32,1,65,0,54,2,24,32,1,32,5,54,2,20,32,1,32,6,54,2,16,32,2,2,127,32,4,40,2,0,34,1,65,1,113,4,64,32,1,65,1,118,65,1,113,12,1,11,32,1,47,1,44,65,1,113,11,34,1,58,0,0,2,127,32,4,40,2,0,34,3,65,1,113,4,64,32,4,45,0,5,65,15,113,33,5,32,3,65,8,113,65,3,118,33,6,32,4,45,0,4,33,7,32,4,45,0,6,12,1,11,32,3,45,0,44,65,4,113,65,2,118,33,6,32,3,40,2,12,33,7,32,3,40,2,8,33,5,32,3,40,2,4,11,33,3,32,0,32,0,40,2,24,65,1,107,34,8,54,2,24,65,1,33,4,32,0,65,1,32,0,40,2,20,34,9,32,7,107,32,0,40,2,12,34,7,69,32,9,65,0,71,113,32,5,65,0,71,114,34,5,27,54,2,20,32,0,65,0,32,0,40,2,16,32,5,27,54,2,16,32,0,65,0,32,7,32,3,107,32,5,27,54,2,12,2,64,32,6,13,0,32,0,40,2,36,34,3,69,13,0,32,2,32,1,32,3,32,0,40,2,28,34,1,65,1,116,106,47,1,0,114,65,0,71,58,0,0,32,1,69,13,0,32,0,32,1,65,1,107,54,2,28,11,32,8,32,0,40,2,0,34,1,40,2,36,34,2,79,13,0,2,127,32,1,32,2,65,3,116,107,32,8,65,3,116,106,41,2,0,34,10,167,34,2,65,1,113,4,64,65,0,33,3,32,10,66,56,136,167,34,1,12,1,11,32,2,40,2,20,65,0,71,33,3,32,2,40,2,24,33,1,32,2,40,2,16,11,33,2,32,0,65,1,32,0,40,2,20,34,5,32,1,107,32,3,32,0,40,2,12,34,6,69,32,5,65,0,71,113,114,34,1,27,54,2,20,32,0,65,0,32,0,40,2,16,32,1,27,54,2,16,32,0,65,0,32,6,32,2,107,32,1,27,54,2,12,11,32,4,11,7,0,32,0,40,2,0,11,16,0,65,0,65,2,32,1,40,2,0,47,1,144,1,27,11,74,1,1,127,32,1,40,2,8,69,4,64,65,0,15,11,32,0,45,0,0,4,64,65,1,15,11,65,1,33,2,2,64,32,1,40,2,4,40,2,0,34,1,65,1,113,13,0,32,1,47,1,40,65,255,255,3,71,13,0,32,0,65,1,58,0,0,65,3,33,2,11,32,2,11,24,0,32,1,40,2,16,69,4,64,65,0,15,11,65,3,65,1,32,1,45,0,20,27,11,18,0,65,3,65,0,32,1,40,2,16,32,0,40,2,0,70,27,11,7,0,32,0,40,2,20,11,13,0,32,0,40,2,8,32,0,40,2,4,106,11,228,1,0,35,1,65,192,211,0,106,35,2,65,13,106,54,2,0,35,1,65,196,211,0,106,35,2,65,14,106,54,2,0,35,1,65,200,211,0,106,35,2,65,15,106,54,2,0,35,1,65,204,211,0,106,35,2,65,16,106,54,2,0,35,1,65,208,211,0,106,35,2,65,17,106,54,2,0,35,1,65,212,211,0,106,35,2,65,18,106,54,2,0,35,1,65,216,211,0,106,35,2,65,19,106,54,2,0,35,1,65,224,211,0,106,35,2,65,22,106,54,2,0,35,1,65,236,211,0,106,35,2,65,23,106,54,2,0,35,1,65,132,212,0,106,35,2,65,24,106,54,2,0,35,1,65,156,212,0,106,35,2,65,25,106,54,2,0,35,1,65,160,212,0,106,35,2,65,26,106,54,2,0,35,1,65,164,212,0,106,35,1,65,164,215,0,106,54,2,0,35,1,65,136,213,0,106,35,1,65,248,211,0,106,54,2,0,35,1,65,140,213,0,106,35,5,54,2,0,11,66,1,3,127,35,1,34,1,65,148,214,0,106,34,0,32,1,65,252,213,0,106,54,2,96,32,0,35,4,34,2,35,3,107,54,2,56,32,0,32,2,54,2,52,32,0,65,42,54,2,24,32,0,32,1,65,240,211,0,106,40,2,0,54,2,60,11,11,151,85,1,0,35,1,11,144,85,45,43,32,32,32,48,88,48,120,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,114,101,100,117,99,101,32,115,121,109,58,37,115,44,32,99,104,105,108,100,95,99,111,117,110,116,58,37,117,0,114,101,115,117,109,101,32,118,101,114,115,105,111,110,58,37,117,0,114,101,109,111,118,101,100,32,112,97,117,115,101,100,32,118,101,114,115,105,111,110,58,37,117,0,108,101,120,95,101,120,116,101,114,110,97,108,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,117,109,110,58,37,117,0,108,101,120,95,105,110,116,101,114,110,97,108,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,117,109,110,58,37,117,0,112,114,111,99,101,115,115,32,118,101,114,115,105,111,110,58,37,117,44,32,118,101,114,115,105,111,110,95,99,111,117,110,116,58,37,117,44,32,115,116,97,116,101,58,37,100,44,32,114,111,119,58,37,117,44,32,99,111,108,58,37,117,0,114,101,99,111,118,101,114,95,116,111,95,112,114,101,118,105,111,117,115,32,115,116,97,116,101,58,37,117,44,32,100,101,112,116,104,58,37,117,0,44,32,115,105,122,101,58,37,117,0,115,104,105,102,116,32,115,116,97,116,101,58,37,117,0,114,101,99,111,118,101,114,95,119,105,116,104,95,109,105,115,115,105,110,103,32,115,121,109,98,111,108,58,37,115,44,32,115,116,97,116,101,58,37,117,0,100,105,102,102,101,114,101,110,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,32,37,117,32,45,32,37,117,0,97,99,99,101,112,116,0,112,97,114,115,101,95,97,102,116,101,114,95,101,100,105,116,0,92,116,0,97,98,111,114,116,105,110,103,32,114,101,100,117,99,101,32,119,105,116,104,32,116,111,111,32,109,97,110,121,32,118,101,114,115,105,111,110,115,0,104,97,115,95,99,104,97,110,103,101,115,0,115,119,105,116,99,104,32,102,114,111,109,95,107,101,121,119,111,114,100,58,37,115,44,32,116,111,95,119,111,114,100,95,116,111,107,101,110,58,37,115,0,115,116,97,116,101,95,109,105,115,109,97,116,99,104,32,115,121,109,58,37,115,0,115,101,108,101,99,116,95,115,109,97,108,108,101,114,95,101,114,114,111,114,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,115,101,108,101,99,116,95,101,97,114,108,105,101,114,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,115,101,108,101,99,116,95,101,120,105,115,116,105,110,103,32,115,121,109,98,111,108,58,37,115,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,0,99,97,110,116,95,114,101,117,115,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,44,32,102,105,114,115,116,95,108,101,97,102,95,115,121,109,98,111,108,58,37,115,0,115,107,105,112,95,116,111,107,101,110,32,115,121,109,98,111,108,58,37,115,0,105,103,110,111,114,101,95,101,109,112,116,121,95,101,120,116,101,114,110,97,108,95,116,111,107,101,110,32,115,121,109,98,111,108,58,37,115,0,114,101,117,115,97,98,108,101,95,110,111,100,101,95,104,97,115,95,100,105,102,102,101,114,101,110,116,95,101,120,116,101,114,110,97,108,95,115,99,97,110,110,101,114,95,115,116,97,116,101,32,115,121,109,98,111,108,58,37,115,0,114,101,117,115,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,112,97,115,116,95,114,101,117,115,97,98,108,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,98,101,102,111,114,101,95,114,101,117,115,97,98,108,101,95,110,111,100,101,32,115,121,109,98,111,108,58,37,115,0,99,97,110,116,95,114,101,117,115,101,95,110,111,100,101,95,37,115,32,116,114,101,101,58,37,115,0,98,114,101,97,107,100,111,119,110,95,116,111,112,95,111,102,95,115,116,97,99,107,32,116,114,101,101,58,37,115,0,100,101,116,101,99,116,95,101,114,114,111,114,32,108,111,111,107,97,104,101,97,100,58,37,115,0,40,37,115,0,105,115,95,101,114,114,111,114,0,115,107,105,112,95,117,110,114,101,99,111,103,110,105,122,101,100,95,99,104,97,114,97,99,116,101,114,0,110,97,110,0,92,110,0,105,115,95,109,105,115,115,105,110,103,0,114,101,115,117,109,101,95,112,97,114,115,105,110,103,0,114,101,99,111,118,101,114,95,101,111,102,0,105,110,102,0,110,101,119,95,112,97,114,115,101,0,99,111,110,100,101,110,115,101,0,100,111,110,101,0,105,115,95,102,114,97,103,105,108,101,0,99,111,110,116,97,105,110,115,95,100,105,102,102,101,114,101,110,116,95,105,110,99,108,117,100,101,100,95,114,97,110,103,101,0,115,107,105,112,32,99,104,97,114,97,99,116,101,114,58,37,100,0,99,111,110,115,117,109,101,32,99,104,97,114,97,99,116,101,114,58,37,100,0,115,101,108,101,99,116,95,104,105,103,104,101,114,95,112,114,101,99,101,100,101,110,99,101,32,115,121,109,98,111,108,58,37,115,44,32,112,114,101,99,58,37,100,44,32,111,118,101,114,95,115,121,109,98,111,108,58,37,115,44,32,111,116,104,101,114,95,112,114,101,99,58,37,100,0,115,104,105,102,116,95,101,120,116,114,97,0,110,111,95,108,111,111,107,97,104,101,97,100,95,97,102,116,101,114,95,110,111,110,95,116,101,114,109,105,110,97,108,95,101,120,116,114,97,0,95,95,82,79,79,84,95,95,0,95,69,82,82,79,82,0,78,65,78,0,77,73,83,83,73,78,71,0,73,78,70,0,73,78,86,65,76,73,68,0,108,101,120,101,100,95,108,111,111,107,97,104,101,97,100,32,115,121,109,58,0,32,48,48,48,48,48,48,48,48,48,48,48,48,16,48,48,0,46,0,40,37,115,41,0,40,110,117,108,108,41,0,40,78,85,76,76,41,0,40,34,37,115,34,41,0,39,92,116,39,0,39,92,114,39,0,39,92,110,39,0,115,107,105,112,32,99,104,97,114,97,99,116,101,114,58,39,37,99,39,0,99,111,110,115,117,109,101,32,99,104,97,114,97,99,116,101,114,58,39,37,99,39,0,39,92,48,39,0,34,37,115,34,0,40,77,73,83,83,73,78,71,32,0,40,85,78,69,88,80,69,67,84,69,68,32,0,37,115,58,32,0,10,10,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,15,15,15,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,18,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,17,34,35,36,17,37,38,39,40,41,42,43,44,17,45,46,47,16,16,48,16,16,16,16,16,16,16,49,50,51,16,52,53,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,54,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,55,17,17,17,17,56,17,57,58,59,60,61,62,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,63,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,64,65,17,66,67,68,69,70,71,72,73,74,17,75,76,77,78,79,80,81,16,82,83,84,85,86,87,88,89,90,91,92,93,16,94,95,96,16,17,17,17,97,98,99,16,16,16,16,16,16,16,16,16,16,17,17,17,17,100,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,101,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,102,103,16,16,104,105,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,106,17,17,107,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,108,109,16,16,16,16,16,16,16,16,16,110,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,111,112,113,114,16,16,16,16,16,16,16,16,115,116,117,16,16,16,16,16,118,119,16,16,16,16,120,16,16,121,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,254,255,255,7,254,255,255,7,0,0,0,0,0,4,32,4,255,255,127,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,195,255,3,0,31,80,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,223,188,64,215,255,255,251,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,255,255,255,127,2,255,255,255,255,255,1,0,0,0,0,255,191,182,0,255,255,255,135,7,0,0,0,255,7,255,255,255,255,255,255,255,254,255,195,255,255,255,255,255,255,255,255,255,255,255,255,239,31,254,225,255,159,0,0,255,255,255,255,255,255,0,224,255,255,255,255,255,255,255,255,255,255,255,255,3,0,255,255,255,255,255,7,48,4,255,255,255,252,255,31,0,0,255,255,255,1,255,7,0,0,0,0,0,0,255,255,223,63,0,0,240,255,248,3,255,255,255,255,255,255,255,255,255,239,255,223,225,255,207,255,254,255,239,159,249,255,255,253,197,227,159,89,128,176,207,255,3,16,238,135,249,255,255,253,109,195,135,25,2,94,192,255,63,0,238,191,251,255,255,253,237,227,191,27,1,0,207,255,0,30,238,159,249,255,255,253,237,227,159,25,192,176,207,255,2,0,236,199,61,214,24,199,255,195,199,29,129,0,192,255,0,0,239,223,253,255,255,253,255,227,223,29,96,7,207,255,0,0,239,223,253,255,255,253,239,227,223,29,96,64,207,255,6,0,239,223,253,255,255,255,255,231,223,93,240,128,207,255,0,252,236,255,127,252,255,255,251,47,127,128,95,255,192,255,12,0,254,255,255,255,255,127,255,7,63,32,255,3,0,0,0,0,214,247,255,255,175,255,255,59,95,32,255,243,0,0,0,0,1,0,0,0,255,3,0,0,255,254,255,255,255,31,254,255,3,255,255,254,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,249,255,3,255,255,255,255,255,255,255,255,255,63,255,255,255,255,191,32,255,255,255,255,255,247,255,255,255,255,255,255,255,255,255,61,127,61,255,255,255,255,255,61,255,255,255,255,61,127,61,255,127,255,255,255,255,255,255,255,61,255,255,255,255,255,255,255,255,7,0,0,0,0,255,255,0,0,255,255,255,255,255,255,255,255,255,255,63,63,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,255,255,254,255,255,7,255,255,255,255,255,255,255,255,255,199,255,1,255,223,15,0,255,255,15,0,255,255,15,0,255,223,13,0,255,255,255,255,255,255,207,255,255,1,128,16,255,3,0,0,0,0,255,3,255,255,255,255,255,255,255,255,255,255,255,1,255,255,255,255,255,7,255,255,255,255,255,255,255,255,63,0,255,255,255,127,255,15,255,1,192,255,255,255,255,63,31,0,255,255,255,255,255,15,255,255,255,3,255,3,0,0,0,0,255,255,255,15,255,255,255,255,255,255,255,127,254,255,31,0,255,3,255,3,128,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,239,255,239,15,255,3,0,0,0,0,255,255,255,255,255,243,255,255,255,255,255,255,191,255,3,0,255,255,255,255,255,255,127,0,255,227,255,255,255,255,255,63,255,1,255,255,255,255,255,231,0,0,0,0,0,222,111,4,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,31,0,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,255,31,0,0,0,0,0,0,0,0,0,0,0,0,132,252,47,62,80,189,255,243,224,67,0,0,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,255,255,255,3,0,0,255,255,255,255,255,127,255,255,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,120,12,0,255,255,255,255,191,32,255,255,255,255,255,255,255,128,0,0,255,255,127,0,127,127,127,127,127,127,127,127,255,255,255,255,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,0,254,3,62,31,254,255,255,255,255,255,255,255,255,255,127,224,254,255,255,255,255,255,255,255,255,255,255,247,224,255,255,255,255,255,254,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,63,255,31,255,255,255,15,0,0,255,255,255,255,255,127,240,143,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,252,255,255,255,255,255,255,255,255,255,255,255,255,249,255,255,255,255,255,255,124,0,0,0,0,0,128,255,191,255,255,255,255,0,0,0,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,47,0,255,3,0,0,252,232,255,255,255,255,255,7,255,255,255,255,7,0,255,255,255,31,255,255,255,255,255,255,247,255,0,128,255,3,255,255,255,127,255,255,255,255,255,255,127,0,255,63,255,3,255,255,127,252,255,255,255,255,255,255,255,127,5,0,0,56,255,255,60,0,126,126,126,0,127,127,255,255,255,255,255,247,255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,127,248,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,127,0,248,224,255,253,127,95,219,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,248,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,255,255,255,255,255,255,255,255,252,255,255,255,255,255,255,0,0,0,0,0,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,255,3,254,255,255,7,254,255,255,7,192,255,255,255,255,255,255,255,255,255,255,127,252,252,252,28,0,0,0,0,255,239,255,255,127,255,255,183,255,63,255,63,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,255,255,255,255,255,255,1,0,0,0,0,0,255,255,255,255,0,224,255,255,255,7,255,255,255,255,255,7,255,255,255,63,255,255,255,255,15,255,62,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,3,255,255,255,255,15,255,255,255,255,15,255,255,255,255,255,0,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,0,255,255,63,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,253,255,255,255,255,191,145,255,255,63,0,255,255,127,0,255,255,255,127,0,0,0,0,0,0,0,0,255,255,55,0,255,255,63,0,255,255,255,3,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,111,240,239,254,255,255,63,0,0,0,0,0,255,255,255,31,255,255,255,31,0,0,0,0,255,254,255,255,31,0,0,0,255,255,255,255,255,255,63,0,255,255,63,0,255,255,7,0,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,255,255,255,255,255,255,7,0,255,255,255,255,255,255,7,0,255,255,255,255,255,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,128,0,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,127,0,255,255,255,255,255,255,255,255,63,0,0,0,192,255,0,0,252,255,255,255,255,255,255,1,0,0,255,255,255,1,255,3,255,255,255,255,255,255,199,255,112,0,255,255,255,255,71,0,255,255,255,255,255,255,255,255,30,0,255,23,0,0,0,0,255,255,251,255,255,255,159,64,0,0,0,0,0,0,0,0,127,189,255,191,255,1,255,255,255,255,255,255,255,1,255,3,239,159,249,255,255,253,237,227,159,25,129,224,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,187,7,255,131,0,0,0,0,255,255,255,255,255,255,255,255,179,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,127,0,0,0,63,0,0,0,0,255,255,255,255,255,255,255,127,17,0,255,3,0,0,0,0,255,255,255,255,255,255,63,1,255,3,0,0,0,0,0,0,255,255,255,231,255,7,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,3,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,252,255,255,255,255,255,252,26,0,0,0,255,255,255,255,255,255,231,127,0,0,255,255,255,255,255,255,255,255,255,32,0,0,0,0,255,255,255,255,255,255,255,1,255,253,255,255,255,255,127,127,1,0,255,3,0,0,252,255,255,255,252,255,255,254,127,0,0,0,0,0,0,0,0,0,127,251,255,255,255,255,127,180,203,0,255,3,191,253,255,255,255,127,123,1,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,127,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,255,255,255,127,255,3,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,63,0,0,255,255,255,255,255,255,0,0,15,0,255,3,248,255,255,224,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,135,255,255,255,255,255,255,255,128,255,255,0,0,0,0,0,0,0,0,11,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,255,255,255,127,0,0,0,0,0,0,7,0,240,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,7,255,31,255,1,255,67,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,255,255,255,223,100,222,255,235,239,255,255,255,255,255,255,255,191,231,223,223,255,255,255,123,95,252,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,253,255,255,247,255,255,255,247,255,255,223,255,255,255,223,255,255,127,255,255,255,127,255,255,255,253,255,255,255,253,255,255,247,207,255,255,255,255,255,255,127,255,255,249,219,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,31,128,63,255,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,15,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,143,8,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,255,255,255,150,254,247,10,132,234,150,170,150,247,247,94,255,251,255,15,238,251,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,3,255,255,255,3,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,9,0,0,0,10,0,0,0,13,0,0,0,11,0,0,0,12,0,0,0,133,0,0,0,0,32,0,0,1,32,0,0,2,32,0,0,3,32,0,0,4,32,0,0,5,32,0,0,6,32,0,0,8,32,0,0,9,32,0,0,10,32,0,0,40,32,0,0,41,32,0,0,95,32,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,11,0,25,25,25,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,25,0,10,10,25,25,25,3,10,7,0,1,0,9,11,24,0,0,9,6,11,0,0,11,0,6,25,0,0,0,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,25,0,11,13,25,25,25,0,13,0,0,2,0,9,14,0,0,0,9,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,0,19,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,4,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,17,0,0,0,0,9,18,0,0,0,0,0,18,0,0,18,0,0,26,0,0,0,26,26,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,26,26,26,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,23,0,0,0,0,9,20,0,0,0,0,0,20,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,21,0,0,0,0,9,22,0,0,0,0,0,22,0,0,22,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0,8,0,0,86,1,0,0,57,0,0,0,0,0,0,0,0,0,0,0,1,32,0,0,0,224,255,255,0,191,29,0,0,231,2,0,0,121,0,0,2,36,0,0,1,1,0,0,0,255,255,255,0,0,0,0,1,2,0,0,0,254,255,255,1,57,255,255,0,24,255,255,1,135,255,255,0,212,254,255,0,195,0,0,1,210,0,0,1,206,0,0,1,205,0,0,1,79,0,0,1,202,0,0,1,203,0,0,1,207,0,0,0,97,0,0,1,211,0,0,1,209,0,0,0,163,0,0,1,213,0,0,0,130,0,0,1,214,0,0,1,218,0,0,1,217,0,0,1,219,0,0,0,56,0,0,3,0,0,0,0,177,255,255,1,159,255,255,1,200,255,255,2,40,36,0,0,0,0,0,1,1,0,0,0,255,255,255,0,51,255,255,0,38,255,255,1,126,255,255,1,43,42,0,1,93,255,255,1,40,42,0,0,63,42,0,1,61,255,255,1,69,0,0,1,71,0,0,0,31,42,0,0,28,42,0,0,30,42,0,0,46,255,255,0,50,255,255,0,54,255,255,0,53,255,255,0,79,165,0,0,75,165,0,0,49,255,255,0,40,165,0,0,68,165,0,0,47,255,255,0,45,255,255,0,247,41,0,0,65,165,0,0,253,41,0,0,43,255,255,0,42,255,255,0,231,41,0,0,67,165,0,0,42,165,0,0,187,255,255,0,39,255,255,0,185,255,255,0,37,255,255,0,21,165,0,0,18,165,0,2,36,76,0,0,0,0,0,1,32,0,0,0,224,255,255,1,1,0,0,0,255,255,255,0,84,0,0,1,116,0,0,1,38,0,0,1,37,0,0,1,64,0,0,1,63,0,0,0,218,255,255,0,219,255,255,0,225,255,255,0,192,255,255,0,193,255,255,1,8,0,0,0,194,255,255,0,199,255,255,0,209,255,255,0,202,255,255,0,248,255,255,0,170,255,255,0,176,255,255,0,7,0,0,0,140,255,255,1,196,255,255,0,160,255,255,1,249,255,255,2,26,112,0,1,1,0,0,0,255,255,255,1,32,0,0,0,224,255,255,1,80,0,0,1,15,0,0,0,241,255,255,0,0,0,0,1,48,0,0,0,208,255,255,1,1,0,0,0,255,255,255,0,0,0,0,0,192,11,0,1,96,28,0,0,0,0,0,1,208,151,0,1,8,0,0,0,248,255,255,2,5,138,0,0,0,0,0,1,64,244,255,0,158,231,255,0,194,137,0,0,219,231,255,0,146,231,255,0,147,231,255,0,156,231,255,0,157,231,255,0,164,231,255,0,0,0,0,0,56,138,0,0,4,138,0,0,230,14,0,1,1,0,0,0,255,255,255,0,0,0,0,0,197,255,255,1,65,226,255,2,29,143,0,0,8,0,0,1,248,255,255,0,0,0,0,0,86,0,0,1,170,255,255,0,74,0,0,0,100,0,0,0,128,0,0,0,112,0,0,0,126,0,0,0,9,0,0,1,182,255,255,1,247,255,255,0,219,227,255,1,156,255,255,1,144,255,255,1,128,255,255,1,130,255,255,2,5,172,0,0,0,0,0,1,16,0,0,0,240,255,255,1,28,0,0,1,1,0,0,1,163,226,255,1,65,223,255,1,186,223,255,0,228,255,255,2,11,177,0,1,1,0,0,0,255,255,255,1,48,0,0,0,208,255,255,0,0,0,0,1,9,214,255,1,26,241,255,1,25,214,255,0,213,213,255,0,216,213,255,1,228,213,255,1,3,214,255,1,225,213,255,1,226,213,255,1,193,213,255,0,0,0,0,0,160,227,255,0,0,0,0,1,1,0,0,0,255,255,255,2,12,188,0,0,0,0,0,1,1,0,0,0,255,255,255,1,188,90,255,1,160,3,0,1,252,117,255,1,216,90,255,0,48,0,0,1,177,90,255,1,181,90,255,1,191,90,255,1,238,90,255,1,214,90,255,1,235,90,255,1,208,255,255,1,189,90,255,1,200,117,255,0,0,0,0,0,48,104,255,0,96,252,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,40,0,0,0,216,255,255,0,0,0,0,1,64,0,0,0,192,255,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,32,0,0,0,224,255,255,0,0,0,0,1,34,0,0,0,222,255,255,48,12,49,13,120,14,127,15,128,16,129,17,134,18,137,19,138,19,142,20,143,21,144,22,147,19,148,23,149,24,150,25,151,26,154,27,156,25,157,28,158,29,159,30,166,31,169,31,174,31,177,32,178,32,183,33,191,34,197,35,200,35,203,35,221,36,242,35,246,37,247,38,32,45,58,46,61,47,62,48,63,49,64,49,67,50,68,51,69,52,80,53,81,54,82,55,83,56,84,57,89,58,91,59,92,60,97,61,99,62,101,63,102,64,104,65,105,66,106,64,107,67,108,68,111,66,113,69,114,70,117,71,125,72,130,73,135,74,137,75,138,76,139,76,140,77,146,78,157,79,158,80,69,87,123,29,124,29,125,29,127,88,134,89,136,90,137,90,138,90,140,91,142,92,143,92,172,93,173,94,174,94,175,94,194,95,204,96,205,97,206,97,207,98,208,99,209,100,213,101,214,102,215,103,240,104,241,105,242,106,243,107,244,108,245,109,249,110,253,45,254,45,255,45,80,105,81,105,82,105,83,105,84,105,85,105,86,105,87,105,88,105,89,105,90,105,91,105,92,105,93,105,94,105,95,105,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,192,117,207,118,128,137,129,138,130,139,133,140,134,141,112,157,113,157,118,158,119,158,120,159,121,159,122,160,123,160,124,161,125,161,179,162,186,163,187,163,188,164,190,165,195,162,204,164,218,166,219,166,229,106,234,167,235,167,236,110,243,162,248,168,249,168,250,169,251,169,252,164,38,176,42,177,43,178,78,179,132,8,98,186,99,187,100,188,101,189,102,190,109,191,110,192,111,193,112,194,126,195,127,195,125,207,141,208,148,209,171,210,172,211,173,212,176,213,177,214,178,215,196,216,197,217,198,218,7,8,9,10,11,12,6,6,6,6,6,6,6,6,6,6,13,6,6,14,6,6,6,6,6,6,6,6,15,16,17,18,6,19,6,6,6,6,6,6,6,6,6,6,20,21,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,22,23,6,6,6,24,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,25,6,6,6,6,26,6,6,6,6,6,6,6,27,6,6,6,6,6,6,6,6,6,6,6,28,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,29,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,30,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,1,0,84,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,43,43,43,43,43,43,43,7,43,43,91,86,86,86,86,86,86,86,74,86,86,5,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,36,80,121,49,80,49,80,49,56,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,78,49,2,78,13,13,78,3,78,0,36,110,0,78,49,38,110,81,78,36,80,78,57,20,129,27,29,29,83,49,80,49,80,13,49,80,49,80,49,80,27,83,36,80,49,2,92,123,92,123,92,123,92,123,92,123,20,121,92,123,92,123,92,45,43,73,3,72,3,120,92,123,20,0,150,10,1,43,40,6,6,0,42,6,42,42,43,7,187,181,43,30,0,43,7,43,43,43,1,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,42,43,43,43,43,43,43,43,43,43,43,43,43,43,205,70,205,43,0,37,43,7,1,6,1,85,86,86,86,86,86,85,86,86,2,36,129,129,129,129,129,21,129,129,129,0,0,43,0,178,209,178,209,178,209,178,209,0,0,205,204,1,0,215,215,215,215,215,131,129,129,129,129,129,129,129,129,129,129,172,172,172,172,172,172,172,172,172,172,28,0,0,0,0,0,49,80,49,80,49,80,49,80,49,80,49,2,0,0,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,78,49,80,49,80,78,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,2,135,166,135,166,135,166,135,166,135,166,135,166,135,166,135,166,42,43,43,43,43,43,43,43,43,43,43,43,43,0,0,0,84,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,86,86,86,86,86,86,86,86,86,86,86,86,12,0,12,42,43,43,43,43,43,43,43,43,43,43,43,43,43,7,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,86,86,108,129,21,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,7,108,3,65,43,43,86,86,86,86,86,86,86,86,86,86,86,86,86,86,44,86,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,108,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,86,122,158,38,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,37,6,1,43,43,79,86,86,44,43,127,86,86,57,43,43,85,86,86,43,43,79,86,86,44,43,127,86,86,129,55,117,91,123,92,43,43,79,86,86,2,172,4,0,0,57,43,43,85,86,86,43,43,79,86,86,44,43,43,86,86,50,19,129,87,0,111,129,126,201,215,126,45,129,129,14,126,57,127,111,87,0,129,129,126,21,0,126,3,43,43,43,43,43,43,43,43,43,43,43,43,7,43,36,43,151,43,43,43,43,43,43,43,43,43,42,43,43,43,43,43,86,86,86,86,86,128,129,129,129,129,57,187,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,201,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,208,13,0,78,49,2,180,193,193,215,215,36,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,49,80,215,215,83,193,71,212,215,215,215,5,43,43,43,43,43,43,43,43,43,43,43,43,7,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,49,80,49,80,49,80,49,80,49,80,49,80,49,80,13,0,0,0,0,0,36,80,49,80,49,80,49,80,49,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,121,92,123,92,123,79,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,123,92,45,43,43,121,20,92,123,92,45,121,42,92,39,92,123,92,123,92,123,164,0,10,180,92,123,92,123,79,3,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,7,0,72,86,86,86,86,86,86,86,86,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,43,43,85,86,86,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,43,43,43,7,0,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,7,0,0,0,0,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,43,43,43,43,43,43,43,43,43,43,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,43,43,43,43,43,43,43,43,43,43,85,86,86,86,86,86,86,86,86,86,86,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,39,81,111,119,0,0,0,0,0,0,0,0,0,0,124,0,0,127,0,0,0,0,0,0,0,0,131,142,146,151,0,170,0,0,0,0,0,0,0,0,0,0,180,196,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,201,0,0,0,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,222,0,0,0,0,225,0,0,0,0,0,0,0,228,0,0,0,0,0,0,0,0,0,0,0,231,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,234,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,237,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,32,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,26,0,0,0,164,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,41,0,0,0,0,0,0,0,42,16,115,111,117,114,99,101,77,97,112,112,105,110,103,85,82,76,24,119,101,98,45,116,114,101,101,45,115,105,116,116,101,114,46,119,97,115,109,46,109,97,112]),Et=new Uint8Array([0,97,115,109,1,0,0,0,0,16,8,100,121,108,105,110,107,46,48,1,5,240,22,4,1,0,1,28,6,96,1,127,0,96,0,0,96,0,1,127,96,2,127,127,1,127,96,1,127,1,127,96,2,127,127,0,2,90,4,3,101,110,118,13,95,95,109,101,109,111,114,121,95,98,97,115,101,3,127,0,3,101,110,118,12,95,95,116,97,98,108,101,95,98,97,115,101,3,127,0,3,101,110,118,6,109,101,109,111,114,121,2,0,1,3,101,110,118,25,95,95,105,110,100,105,114,101,99,116,95,102,117,110,99,116,105,111,110,95,116,97,98,108,101,1,112,0,1,3,5,4,1,1,2,3,7,67,3,17,95,95,119,97,115,109,95,99,97,108,108,95,99,116,111,114,115,0,0,24,95,95,119,97,115,109,95,97,112,112,108,121,95,100,97,116,97,95,114,101,108,111,99,115,0,1,16,116,114,101,101,95,115,105,116,116,101,114,95,106,115,111,110,0,2,9,7,1,0,35,1,11,1,3,10,246,18,4,3,0,1,11,240,4,1,1,127,35,0,65,152,21,106,35,0,65,176,8,106,54,2,0,35,0,65,156,21,106,35,0,54,2,0,35,0,65,160,21,106,35,0,65,208,5,106,54,2,0,35,0,65,164,21,106,35,0,65,144,11,106,54,2,0,35,0,65,168,21,106,35,0,65,128,22,106,34,0,54,2,0,35,0,65,172,21,106,35,0,65,228,22,106,54,2,0,35,0,65,176,21,106,35,0,65,180,6,106,54,2,0,35,0,65,180,21,106,35,0,65,188,6,106,54,2,0,35,0,65,184,21,106,35,0,65,208,6,106,54,2,0,35,0,65,188,21,106,35,0,65,160,7,106,54,2,0,35,0,65,192,21,106,35,0,65,210,7,106,54,2,0,35,0,65,196,21,106,35,0,65,224,7,106,54,2,0,35,0,65,200,21,106,35,0,65,192,18,106,54,2,0,35,0,65,204,21,106,35,1,54,2,0,35,0,65,244,21,106,35,0,65,240,7,106,54,2,0,32,0,35,0,65,128,18,106,54,2,0,35,0,65,132,22,106,35,0,65,146,17,106,54,2,0,35,0,65,136,22,106,35,0,65,184,18,106,54,2,0,35,0,65,140,22,106,35,0,65,144,17,106,54,2,0,35,0,65,144,22,106,35,0,65,136,18,106,54,2,0,35,0,65,148,22,106,35,0,65,134,18,106,54,2,0,35,0,65,152,22,106,35,0,65,132,18,106,54,2,0,35,0,65,156,22,106,35,0,65,186,18,106,54,2,0,35,0,65,160,22,106,35,0,65,159,17,106,54,2,0,35,0,65,164,22,106,35,0,65,240,17,106,54,2,0,35,0,65,168,22,106,35,0,65,203,17,106,54,2,0,35,0,65,172,22,106,35,0,65,222,17,106,54,2,0,35,0,65,176,22,106,35,0,65,234,17,106,54,2,0,35,0,65,180,22,106,35,0,65,210,17,106,54,2,0,35,0,65,184,22,106,35,0,65,183,17,106,54,2,0,35,0,65,188,22,106,35,0,65,174,17,106,54,2,0,35,0,65,192,22,106,35,0,65,227,17,106,54,2,0,35,0,65,196,22,106,35,0,65,191,17,106,54,2,0,35,0,65,200,22,106,35,0,65,198,17,106,54,2,0,35,0,65,204,22,106,35,0,65,152,17,106,54,2,0,35,0,65,208,22,106,35,0,65,215,17,106,54,2,0,35,0,65,212,22,106,35,0,65,158,17,106,54,2,0,35,0,65,216,22,106,35,0,65,152,18,106,54,2,0,35,0,65,220,22,106,35,0,65,169,18,106,54,2,0,35,0,65,224,22,106,35,0,65,138,18,106,54,2,0,35,0,65,232,22,106,35,0,65,148,17,106,54,2,0,35,0,65,236,22,106,35,0,65,228,17,106,54,2,0,11,8,0,35,0,65,240,20,106,11,244,13,1,6,127,3,64,32,0,40,2,0,33,2,65,2,33,5,32,0,32,0,40,2,24,17,4,0,33,7,65,0,33,3,65,0,33,6,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,32,1,65,255,255,3,113,14,44,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,46,47,48,21,22,23,24,25,26,27,28,29,35,36,37,38,39,40,41,42,43,44,45,61,11,32,7,13,66,3,64,32,2,32,3,65,1,116,34,1,35,0,65,192,19,106,106,47,1,0,70,13,50,32,3,65,26,73,33,1,32,3,65,2,106,33,3,32,1,13,0,11,65,1,33,3,65,20,33,1,32,2,65,32,70,32,2,65,9,107,65,5,73,114,13,67,32,2,65,49,107,65,9,79,13,59,12,64,11,2,64,2,64,2,64,2,64,32,2,65,31,76,4,64,65,1,33,3,65,2,33,1,32,4,33,6,32,2,14,14,64,1,1,1,1,1,1,1,1,36,71,36,36,36,1,11,2,64,32,2,65,32,107,14,3,36,1,3,0,11,32,2,65,47,70,13,3,32,2,65,220,0,70,13,1,11,65,0,33,3,12,33,11,65,18,33,1,12,68,11,65,28,33,1,12,67,11,12,28,11,2,64,2,64,32,2,65,9,107,65,5,73,13,0,65,28,33,1,32,4,33,6,32,2,65,32,107,14,3,0,60,67,1,11,65,1,33,3,65,2,33,1,12,66,11,32,2,65,47,71,13,57,65,3,33,1,12,65,11,32,2,65,42,70,13,60,32,2,65,47,71,13,56,12,59,11,32,2,65,42,70,13,57,32,2,65,47,70,13,46,12,54,11,32,2,65,42,70,13,56,12,53,11,32,2,65,45,70,4,64,65,19,33,1,12,62,11,32,2,65,48,107,65,10,79,13,53,12,51,11,32,2,65,48,70,4,64,65,35,33,1,12,61,11,32,2,65,49,107,65,9,79,13,52,12,58,11,32,2,65,225,0,71,13,51,65,11,33,1,12,59,11,32,2,65,229,0,71,13,50,65,39,33,1,12,58,11,32,2,65,229,0,71,13,49,65,40,33,1,12,57,11,32,2,65,236,0,71,13,48,65,15,33,1,12,56,11,32,2,65,236,0,71,13,47,65,41,33,1,12,55,11,32,2,65,236,0,71,13,46,65,12,33,1,12,54,11,32,2,65,242,0,71,13,45,65,16,33,1,12,53,11,32,2,65,243,0,71,13,44,65,10,33,1,12,52,11,32,2,65,245,0,71,13,43,65,9,33,1,12,51,11,32,2,65,245,0,71,13,42,65,13,33,1,12,50,11,3,64,32,3,65,1,116,34,1,35,0,65,128,20,106,106,47,1,0,32,2,71,4,64,32,3,65,16,73,33,1,32,3,65,2,106,33,3,32,1,13,1,12,43,11,11,35,0,32,1,106,65,130,20,106,47,1,0,33,1,65,0,33,3,12,49,11,32,2,65,48,107,65,10,79,13,40,12,37,11,32,7,13,46,3,64,32,2,32,3,65,1,116,34,1,35,0,65,176,20,106,106,47,1,0,70,13,32,32,3,65,24,73,33,1,32,3,65,2,106,33,3,32,1,13,0,11,65,1,33,3,65,20,33,1,32,2,65,32,70,32,2,65,9,107,65,5,73,114,13,47,32,2,65,49,107,65,9,73,13,44,12,39,11,65,3,33,5,12,26,11,65,4,33,5,12,25,11,65,5,33,5,12,24,11,65,6,33,5,12,23,11,65,7,33,5,12,22,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,23,32,2,65,34,71,13,6,12,23,11,32,2,65,42,70,13,29,32,2,65,47,70,32,2,65,220,0,71,114,13,5,12,22,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,22,32,2,65,34,71,13,29,12,22,11,32,2,65,42,70,13,27,32,2,65,47,70,13,4,32,2,65,220,0,71,13,28,12,21,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,41,76,4,64,32,2,69,32,2,65,10,70,114,13,21,32,2,65,34,71,13,28,12,21,11,32,2,65,42,70,13,26,32,2,65,220,0,71,13,27,12,20,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,31,76,4,64,32,2,65,13,75,13,3,65,1,32,2,116,34,1,65,128,244,0,113,13,5,32,1,65,129,8,113,69,13,3,12,20,11,65,1,33,6,2,64,32,2,65,32,107,14,3,5,3,32,0,11,32,2,65,47,71,13,1,11,65,29,33,1,12,37,11,32,2,65,220,0,70,13,17,11,65,33,33,1,12,35,11,65,0,33,3,11,65,32,33,1,12,33,11,32,0,65,8,59,1,4,32,0,32,0,40,2,12,17,0,0,65,33,33,1,65,1,33,4,32,2,65,33,76,4,64,32,2,69,13,14,65,1,33,6,32,2,65,10,71,13,33,12,26,11,32,2,65,34,70,13,13,65,1,33,6,32,2,65,220,0,71,13,32,12,25,11,65,9,33,5,12,11,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,32,2,65,46,70,4,64,65,1,33,4,12,16,11,65,1,33,4,32,2,65,95,113,65,197,0,71,13,11,12,16,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,46,70,13,14,32,2,65,95,113,65,197,0,70,13,15,32,2,65,48,107,65,10,73,13,27,12,10,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,32,2,65,95,113,65,197,0,70,4,64,65,1,33,4,12,15,11,65,1,33,4,32,2,65,48,107,65,10,73,13,13,12,9,11,32,0,65,10,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,65,48,107,65,10,73,13,16,12,8,11,65,11,33,5,12,6,11,65,12,33,5,12,5,11,65,13,33,5,12,4,11,65,14,33,5,12,3,11,32,0,65,14,59,1,4,32,0,32,0,40,2,12,17,0,0,65,1,33,4,32,2,69,32,2,65,10,70,114,13,3,12,17,11,65,0,33,5,12,1,11,65,1,33,5,11,32,0,32,5,59,1,4,32,0,32,0,40,2,12,17,0,0,11,65,1,33,6,12,11,11,35,0,32,1,106,65,194,19,106,47,1,0,33,1,65,0,33,3,12,17,11,65,42,33,1,12,16,11,35,0,32,1,106,65,178,20,106,47,1,0,33,1,65,0,33,3,12,15,11,65,37,33,1,12,14,11,65,6,33,1,12,13,11,65,30,33,1,12,12,11,65,31,33,1,12,11,11,11,65,38,33,1,12,9,11,32,2,13,4,11,32,4,33,6,11,32,6,65,1,113,15,11,65,4,33,1,12,5,11,65,43,33,1,12,4,11,65,5,33,1,12,3,11,65,0,33,3,11,65,36,33,1,12,1,11,65,21,33,1,11,32,0,32,3,32,0,40,2,8,17,5,0,12,0,11,0,11,11,247,22,1,0,35,0,11,240,22,2,0,3,0,1,0,14,0,37,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,39,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,41,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,7,0,3,0,1,0,14,0,7,0,1,0,1,0,9,0,1,0,5,0,11,0,1,0,7,0,29,0,1,0,16,0,8,0,3,0,17,0,19,0,20,0,13,0,4,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,43,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,45,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,7,0,3,0,1,0,14,0,7,0,1,0,1,0,9,0,1,0,5,0,11,0,1,0,7,0,28,0,1,0,16,0,8,0,3,0,17,0,19,0,20,0,13,0,4,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,47,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,2,0,3,0,1,0,14,0,49,0,11,0,0,0,1,0,2,0,3,0,5,0,6,0,7,0,10,0,11,0,12,0,13,0,5,0,3,0,1,0,14,0,11,0,1,0,7,0,51,0,1,0,3,0,20,0,1,0,18,0,31,0,1,0,20,0,4,0,53,0,1,0,7,0,57,0,1,0,14,0,18,0,1,0,21,0,55,0,2,0,8,0,9,0,4,0,57,0,1,0,14,0,59,0,1,0,7,0,19,0,1,0,21,0,61,0,2,0,8,0,9,0,4,0,57,0,1,0,14,0,63,0,1,0,7,0,19,0,1,0,21,0,65,0,2,0,8,0,9,0,4,0,3,0,1,0,14,0,68,0,1,0,2,0,70,0,1,0,3,0,22,0,1,0,23,0,4,0,3,0,1,0,14,0,72,0,1,0,2,0,74,0,1,0,6,0,24,0,1,0,24,0,4,0,3,0,1,0,14,0,68,0,1,0,2,0,76,0,1,0,3,0,25,0,1,0,23,0,4,0,3,0,1,0,14,0,11,0,1,0,7,0,27,0,1,0,18,0,31,0,1,0,20,0,4,0,3,0,1,0,14,0,72,0,1,0,2,0,78,0,1,0,6,0,26,0,1,0,24,0,4,0,3,0,1,0,14,0,80,0,1,0,2,0,83,0,1,0,3,0,25,0,1,0,23,0,4,0,3,0,1,0,14,0,85,0,1,0,2,0,88,0,1,0,6,0,26,0,1,0,24,0,2,0,3,0,1,0,14,0,83,0,2,0,2,0,3,0,2,0,3,0,1,0,14,0,90,0,2,0,2,0,3,0,2,0,3,0,1,0,14,0,88,0,2,0,2,0,6,0,2,0,3,0,1,0,14,0,92,0,1,0,0,0,2,0,3,0,1,0,14,0,94,0,1,0,4,0,0,0,0,0,17,0,0,0,34,0,0,0,51,0,0,0,78,0,0,0,95,0,0,0,112,0,0,0,139,0,0,0,156,0,0,0,173,0,0,0,189,0,0,0,203,0,0,0,217,0,0,0,231,0,0,0,244,0,0,0,1,1,0,0,14,1,0,0,27,1,0,0,40,1,0,0,53,1,0,0,66,1,0,0,74,1,0,0,82,1,0,0,90,1,0,0,97,1,0,0,0,0,0,0,0,0,2,0,1,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,0,1,1,1,1,0,1,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,14,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,14,0,15,0,16,0,17,0,18,0,19,0,20,0,21,0,22,0,23,0,24,0,25,0,26,0,27,0,28,0,29,0,30,0,31,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,1,0,1,0,1,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,7,0,0,0,0,0,0,0,9,0,0,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,30,0,2,0,8,0,0,0,8,0,8,0,0,0,2,0,0,0,0,0,15,0,7,0,0,0,0,0,0,0,9,0,0,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,0,0,3,0,8,0,0,0,8,0,8,0,0,0,3,0,0,0,0,0,17,0,19,0,0,0,0,0,0,0,22,0,0,0,25,0,0,0,0,0,28,0,28,0,28,0,28,0,3,0,0,0,3,0,8,0,0,0,8,0,8,0,0,0,3,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,9,0,31,0,11,0,0,0,0,0,13,0,13,0,13,0,13,0,3,0,0,0,21,0,8,0,0,0,8,0,8,0,0,0,0,0,0,0,0,0,33,0,33,0,33,0,33,0,33,0,33,0,33,0,33,0,0,0,0,0,33,0,33,0,33,0,33,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,35,0,35,0,35,0,35,0,35,0,35,0,35,0,0,0,0,0,35,0,35,0,35,0,35,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,1,0,15,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,16,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,4,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,17,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,8,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,15,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,16,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,4,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,17,0,0,1,0,0,2,1,0,0,0,0,0,0,1,2,22,0,0,0,0,0,0,0,8,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,9,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,20,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,20,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,16,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,19,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,4,17,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,19,0,0,0,0,0,1,1,0,0,0,0,0,0,1,4,19,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,7,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,18,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,19,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,21,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,21,0,0,0,0,0,0,0,19,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,23,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,11,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,10,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,14,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,12,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,15,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,23,0,0,0,0,0,0,0,23,0,0,1,0,0,1,1,0,0,0,0,0,0,1,2,23,0,0,0,0,0,2,1,0,0,0,0,0,0,1,2,24,0,0,0,0,0,0,0,10,0,0,1,0,0,1,1,0,0,0,0,0,0,1,2,24,0,0,0,0,0,1,1,0,0,0,0,0,0,1,3,18,0,0,0,1,0,1,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,13,0,0,0,0,0,125,0,123,0,107,101,121,0,97,114,114,97,121,0,95,115,116,114,105,110,103,95,99,111,110,116,101,110,116,0,100,111,99,117,109,101,110,116,0,99,111,109,109,101,110,116,0,111,98,106,101,99,116,0,112,97,105,114,0,110,117,109,98,101,114,0,110,117,108,108,0,115,116,114,105,110,103,0,116,114,117,101,0,95,118,97,108,117,101,0,102,97,108,115,101,0,101,115,99,97,112,101,95,115,101,113,117,101,110,99,101,0,101,110,100,0,93,0,91,0,58,0,97,114,114,97,121,95,114,101,112,101,97,116,49,0,100,111,99,117,109,101,110,116,95,114,101,112,101,97,116,49,0,111,98,106,101,99,116,95,114,101,112,101,97,116,49,0,44,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,28,0,44,0,23,0,45,0,7,0,47,0,3,0,48,0,35,0,58,0,25,0,91,0,26,0,92,0,18,0,93,0,27,0,102,0,8,0,110,0,17,0,116,0,14,0,123,0,22,0,125,0,24,0,0,0,0,0,0,0,0,0,34,0,34,0,47,0,34,0,92,0,34,0,98,0,34,0,102,0,34,0,110,0,34,0,114,0,34,0,116,0,34,0,117,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,28,0,44,0,23,0,45,0,7,0,47,0,3,0,48,0,35,0,58,0,25,0,91,0,26,0,93,0,27,0,102,0,8,0,110,0,17,0,116,0,14,0,123,0,22,0,125,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,25,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,32,0,0,0,7,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,48,4,0,0,0,0,0,0,208,2,0,0,144,5,0,0,0,11,0,0,100,11,0,0,52,3,0,0,60,3,0,0,80,3,0,0,160,3,0,0,210,3,0,0,224,3,0,0,64,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,3,0,0,0,0,0,0,0,0,0,0,0,9,0,0,146,8,0,0,56,9,0,0,144,8,0,0,8,9,0,0,6,9,0,0,4,9,0,0,58,9,0,0,159,8,0,0,240,8,0,0,203,8,0,0,222,8,0,0,234,8,0,0,210,8,0,0,183,8,0,0,174,8,0,0,227,8,0,0,191,8,0,0,198,8,0,0,152,8,0,0,215,8,0,0,158,8,0,0,24,9,0,0,41,9,0,0,10,9,0,0,0,0,0,0,148,8,0,0,228,8,0,0]);let St=null,Ot=null;const At=async e=>{if(null===St&&null===Ot)Ot=vt.iX.init({wasmBinary:wt,locateFile:e=>e}).then(()=>vt.TM.load(Et)).then(e=>{const t=new vt.iX;return t.setLanguage(e),t}).finally(()=>{Ot=null}),St=await Ot;else if(null===St&&null!==Ot)St=await Ot;else if(null===St)throw new Je("Error while initializing web-tree-sitter and loading tree-sitter-json grammar.");return St.parse(e)};const Ct=class extends be{constructor(e,t,s){super(e,t,s),this.element="annotation"}get code(){if(this.hasAttributesProperty("code"))return this.attributes.get("code")}set code(e){this.attributes.set("code",e)}},It=e=>({type:e.nodeType,startPosition:e.startPosition,endPosition:e.endPosition,startIndex:e.startIndex,endIndex:e.endIndex,text:e.nodeText,isNamed:e.nodeIsNamed,isMissing:e.nodeIsMissing,hasError:e.currentNode.hasError,fieldName:e.currentFieldName}),Tt=(e,t,s)=>{s.sourceMap&&(t.startLine=e.startPosition.row,t.startCharacter=e.startPosition.column,t.startOffset=e.startIndex,t.endLine=e.endPosition.row,t.endCharacter=e.endPosition.column,t.endOffset=e.endIndex)},Pt=(e,t)=>{const s={indent:e.indent};return t&&Object.assign(s,t),{json:s}},Ft=(e,t)=>{const s=t-e;return s>0?s:2},Mt=(e,t,s)=>{const n=It(e);if(!n.isNamed&&n.isMissing){const e=n.type||n.text,t=new Ct(`(Missing ${e})`);return t.classes.push("warning"),Tt(n,t,s),s.annotations.push(t),null}const r=t[n.type];return r?r(e,s):null},Bt=(e,t,s)=>{const n=[];if(e.gotoFirstChild()){do{const r=Mt(e,t,s);null!==r&&n.push(r)}while(e.gotoNextSibling());e.gotoParent()}return n},jt={};var kt;Object.assign(jt,(kt=jt,{document(e,t){const s=It(e),n=new ct;Tt(s,n,t);const r=Bt(e,kt,t);for(const e of r)n.push(e);const i=n.findElements(rt);i.length>0&&i[0].classes.push("result");for(const e of t.annotations)n.push(e);return t.annotations=[],n},object(e,t){const s=It(e),n=new Ie;if(Tt(s,n,t),t.style&&0===t.indent&&e.gotoFirstChild()){do{if("pair"===e.nodeType){t.indent=Ft(s.startPosition.column,e.startPosition.column);break}}while(e.gotoNextSibling());e.gotoParent()}const r=Bt(e,kt,t);for(const e of r)n.push(e);return t.style&&(n.style=Pt(t)),n},array(e,t){const s=It(e),n=new ke;Tt(s,n,t);const r=Bt(e,kt,t);for(const e of r)n.push(e);return t.style&&(n.style=Pt(t)),n},pair(e,t){const s=It(e);let n=null,r=null;if(e.gotoFirstChild()){do{const s=e.currentFieldName;"key"===s?n=Mt(e,kt,t):"value"===s?r=Mt(e,kt,t):"ERROR"===e.nodeType&&Mt(e,kt,t)}while(e.gotoNextSibling());e.gotoParent()}const i=new Ce(n??new be(""),r??new be(""));return Tt(s,i,t),i},string(e,t){const s=It(e);let n;try{n=new be(JSON.parse(s.text))}catch(e){n=new be(s.text),e instanceof Error&&n.meta.set("jsonParse",{isError:!0,errorType:e.name,errorMessage:e.message})}return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},number(e,t){const s=It(e),n=new Be(Number(s.text));return t.style&&(n.style=Pt(t,{rawContent:s.text})),Tt(s,n,t),n},null(e,t){const s=It(e),n=new Me;return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},true(e,t){const s=It(e),n=new je(!0);return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},false(e,t){const s=It(e),n=new je(!1);return t.style&&(n.style=Pt(t)),Tt(s,n,t),n},ERROR(e,t){const s=It(e),n=s.hasError?`(Error ${s.text})`:`(Unexpected ${s.text})`,r=new Ct(n);return r.classes.push("error"),Tt(s,r,t),t.annotations.push(r),null}}));const Nt=(e,{sourceMap:t=!1,style:s=!1}={})=>{const n=e.walk(),r={sourceMap:t,style:s,indent:0,annotations:[]},i=Mt(n,jt,r);if(null===i){const e=new ct;for(const t of r.annotations)e.push(t);return e}return i},Rt=/(?<true>^\s*true\s*$)|(?<false>^\s*false\s*$)|(?<null>^\s*null\s*$)|(?<number>^\s*\d+\s*$)|(?<object>^\s*{\s*)|(?<array>^\s*\[\s*)|(?<string>^\s*"(((?=\\)\\(["\\/bfnrt]|u[0-9a-fA-F]{4}))|[^"\\\x00-\x1F\x7F])*"\s*$)/,qt=(new He,async(e,{strict:t=!1}={})=>t?(async e=>{if(0===e.trim().length)return!1;try{return JSON.parse(e),!0}catch{return!1}})(e):(async e=>{if(!Rt.test(e))return!1;let t=null;try{return t=await At(e),"ERROR"!==t.rootNode.type}catch{return!1}finally{t?.delete()}})(e)),$t=async(e,{sourceMap:t=!1,style:s=!1,strict:n=!1}={})=>{if(n&&t)throw new ze("Cannot use sourceMap with strict parsing. Strict parsing does not support source maps.");if(n&&s)throw new ze("Cannot use style with strict parsing. Strict parsing does not support style preservation.");return n?(async e=>{const t=new ct;if(0===e.trim().length)return t;let s=JSON.parse(e);const n=xt(s);return s=null,n.classes.push("result"),t.push(n),t})(e):(async(e,{sourceMap:t=!1,style:s=!1}={})=>{const n=await At(e);try{return Nt(n,{sourceMap:t,style:s})}finally{n.delete()}})(e,{sourceMap:t,style:s})};var Dt=r(function(e,t){return m(function(s,n){return s[n]=e(t[n],n,t),s},{},V(t))});const Vt=Dt;const Lt=n(function(e){return null==e});var Ut=r(function(e,t){if(0===e.length||Lt(t))return!1;for(var s=t,n=0;n<e.length;){if(Lt(s)||!B(e[n],s))return!1;s=s[e[n]],n+=1}return!0});const Ht=Ut;var Wt=r(function(e,t){return Ht([e],t)});const Gt=Wt;const Zt=i(function(e,t,s){return e(u(t,s))});function Jt(e,t){for(var s=t,n=0;n<e.length;n+=1){if(null==s)return;var r=e[n];s=a(r)?c(r,s):s[r]}return s}const zt=r(Jt);function Xt(e,t){return function(){return t.call(this,e.apply(this,arguments))}}function Qt(e,t,s){for(var n=0,r=s.length;n<r;){if((t=e["@@transducer/step"](t,s[n]))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}n+=1}return e["@@transducer/result"](t)}var Kt=r(function(e,t){return T(e.length,function(){return e.apply(t,arguments)})});const Yt=Kt;function es(e,t,s){for(var n=s.next();!n.done;){if((t=e["@@transducer/step"](t,n.value))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}n=s.next()}return e["@@transducer/result"](t)}function ts(e,t,s,n){return e["@@transducer/result"](s[n](Yt(e["@@transducer/step"],e),t))}const ss=b(Qt,ts,es);var ns=function(){function e(e){this.f=e}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(e){return e},e.prototype["@@transducer/step"]=function(e,t){return this.f(e,t)},e}();const rs=i(function(e,t,s){return ss("function"==typeof e?new ns(e):e,t,s)});function is(e,t){return function(){var s=arguments.length;if(0===s)return t();var n=arguments[s-1];return _(n)||"function"!=typeof n[e]?t.apply(this,arguments):n[e].apply(n,Array.prototype.slice.call(arguments,0,s-1))}}const os=i(is("slice",function(e,t,s){return Array.prototype.slice.call(s,e,t)}));const as=n(is("tail",os(1,1/0)));function cs(){if(0===arguments.length)throw new Error("pipe requires at least one argument");return T(arguments[0].length,rs(Xt,arguments[0],as(arguments)))}var ls=function(e,t){switch(arguments.length){case 0:return ls;case 1:return function t(s){return 0===arguments.length?t:K(e,s)};default:return K(e,t)}};const us=ls;function ds(e,t){return function(e,t,s){var n,r;if("function"==typeof e.indexOf)switch(typeof t){case"number":if(0===t){for(n=1/t;s<e.length;){if(0===(r=e[s])&&1/r===n)return s;s+=1}return-1}if(t!=t){for(;s<e.length;){if("number"==typeof(r=e[s])&&r!=r)return s;s+=1}return-1}return e.indexOf(t,s);case"string":case"boolean":case"function":case"undefined":return e.indexOf(t,s);case"object":if(null===t)return e.indexOf(t,s)}for(;s<e.length;){if(se(e[s],t))return s;s+=1}return-1}(t,e,0)>=0}function hs(e){return'"'+e.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0").replace(/"/g,'\\"')+'"'}var ps=function(e){return(e<10?"0":"")+e};const ms="function"==typeof Date.prototype.toISOString?function(e){return e.toISOString()}:function(e){return e.getUTCFullYear()+"-"+ps(e.getUTCMonth()+1)+"-"+ps(e.getUTCDate())+"T"+ps(e.getUTCHours())+":"+ps(e.getUTCMinutes())+":"+ps(e.getUTCSeconds())+"."+(e.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"};function _s(e){return"[object Object]"===Object.prototype.toString.call(e)}var gs=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){return this.f(t)?this.xf["@@transducer/step"](e,t):e},e}();function fs(e){return function(t){return new gs(e,t)}}var ys=r(E(["fantasy-land/filter","filter"],fs,function(e,t){return _s(t)?m(function(s,n){return e(t[n])&&(s[n]=t[n]),s},{},V(t)):(s=t,"[object Map]"===Object.prototype.toString.call(s)?function(e,t){for(var s=new Map,n=t.entries(),r=n.next();!r.done;)e(r.value[1])&&s.set(r.value[0],r.value[1]),r=n.next();return s}(e,t):function(e,t){for(var s=0,n=t.length,r=[];s<n;)e(t[s])&&(r[r.length]=t[s]),s+=1;return r}(e,t));var s}));const bs=ys;const xs=r(function(e,t){return bs((s=e,function(){return!s.apply(this,arguments)}),t);var s});function vs(e,t){var s=function(s){var n=t.concat([e]);return ds(s,n)?"<Circular>":vs(s,n)},n=function(e,t){return S(function(t){return hs(t)+": "+s(e[t])},t.slice().sort())};switch(Object.prototype.toString.call(e)){case"[object Arguments]":return"(function() { return arguments; }("+S(s,e).join(", ")+"))";case"[object Array]":return"["+S(s,e).concat(n(e,xs(function(e){return/^\d+$/.test(e)},V(e)))).join(", ")+"]";case"[object Boolean]":return"object"==typeof e?"new Boolean("+s(e.valueOf())+")":e.toString();case"[object Date]":return"new Date("+(isNaN(e.valueOf())?s(NaN):hs(ms(e)))+")";case"[object Map]":return"new Map("+s(Array.from(e))+")";case"[object Null]":return"null";case"[object Number]":return"object"==typeof e?"new Number("+s(e.valueOf())+")":1/e==-1/0?"-0":e.toString(10);case"[object Set]":return"new Set("+s(Array.from(e).sort())+")";case"[object String]":return"object"==typeof e?"new String("+s(e.valueOf())+")":hs(e);case"[object Undefined]":return"undefined";default:if("function"==typeof e.toString){var r=e.toString();if("[object Object]"!==r)return r}return"{"+n(e,V(e)).join(", ")+"}"}}const ws=n(function(e){return vs(e,[])});const Es=i(function(e,t,s){return e(Jt(t,s))});function Ss(e){var t=Object.prototype.toString.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t}const Os=r(function(e,t){return e&&t});const As=r(function(e,t){return Ss(e)?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:J(Os)(e,t)});const Cs=se(null);const Is=z(Cs);function Ts(e){return Ts="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ts(e)}const Ps=function(e){return"object"===Ts(e)};const Fs=M(1,As(Is,Ps));const Ms=r(function(e,t){if(e===t)return t;function s(e,t){if(e>t!=t>e)return t>e?t:e}var n=s(e,t);if(void 0!==n)return n;var r=s(typeof e,typeof t);if(void 0!==r)return r===typeof e?e:t;var i=ws(e),o=s(i,ws(t));return void 0!==o&&o===i?e:t});const Bs=r(function(e,t){return U(u(e),t)});const js=n(function(e){return M(rs(Ms,0,Bs("length",e)),function(){for(var t=0,s=e.length;t<s;){if(e[t].apply(this,arguments))return!0;t+=1}return!1})});const ks=M(1,cs(Y,us("GeneratorFunction")));const Ns=M(1,cs(Y,us("AsyncFunction")));const Rs=js([cs(Y,us("Function")),ks,Ns]);var qs=cs(Y,us("Object")),$s=cs(ws,se(ws(Object))),Ds=Es(As(Rs,$s),["constructor"]);const Vs=M(1,function(e){if(!Fs(e)||!qs(e))return!1;var t=Object.getPrototypeOf(e);return!!Cs(t)||Ds(t)});const Ls=M(1,cs(Y,us("String")));var Us=n(function(e){return M(e.length,e)});const Hs=Us;const Ws=r(function(e,t){return M(e+1,function(){var s=arguments[e];if(null!=s&&Ss(s[t]))return s[t].apply(s,Array.prototype.slice.call(arguments,0,e));throw new TypeError(ws(s)+' does not have a method named "'+t+'"')})});const Gs=Ws(1,"split");var Zs=function(){function e(e,t){this.xf=t,this.f=e}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){if(this.f){if(this.f(t))return e;this.f=null}return this.xf["@@transducer/step"](e,t)},e}();function Js(e){return function(t){return new Zs(e,t)}}const zs=r(E(["dropWhile"],Js,function(e,t){for(var s=0,n=t.length;s<n&&e(t[s]);)s+=1;return os(s,1/0,t)}));const Xs=Ws(1,"join");var Qs=n(function(e){return M(e.length,function(t,s){var n=Array.prototype.slice.call(arguments,0);return n[0]=s,n[1]=t,e.apply(this,n)})});const Ks=Qs(r(ds));const Ys=Hs(function(e,t){return cs(Gs(""),zs(Ks(e)),Xs(""))(t)}),en=new WeakMap,tn=e=>{if(en.has(e))return en.get(e);const t={},s=(e,n,r)=>("string"==typeof e.element&&(t[e.element]=e.$visitor?[...r,"$visitor"]:r),Vt((e,t)=>{const i=[...r,t];if(Vs(e)&&Gt("$ref",e)&&Zt(Ls,"$ref",e)){const t=zt(["$ref"],e),s=Ys("#/",t),r=zt(s.split("/"),n),{$ref:i,...o}=e;return Object.keys(o).length>0&&Vs(r)?{...r,...o}:r}return Vs(e)?s(e,n,i):e},e)),n=s(e,e,[]);return n.elementMap=t,en.set(e,n),n},sn=function(){const e=rn,t=nn,s=this,n="parser.js: Parser(): ";s.ast=void 0,s.stats=void 0,s.trace=void 0,s.callbacks=[];let r,i,o,a,c,l,u,d=0,h=0,p=0,m=0,_=0,g=new function(){this.state=e.ACTIVE,this.phraseLength=0,this.refresh=()=>{this.state=e.ACTIVE,this.phraseLength=0}};s.parse=(f,y,x,v)=>{const w=`${n}parse(): `;d=0,h=0,p=0,m=0,_=0,r=void 0,i=void 0,o=void 0,a=void 0,g.refresh(),c=void 0,l=void 0,u=void 0,a=t.stringToChars(x),r=f.rules,i=f.udts;const E=y.toLowerCase();let S;for(const e in r)if(r.hasOwnProperty(e)&&E===r[e].lower){S=r[e].index;break}if(void 0===S)throw new Error(`${w}start rule name '${startRule}' not recognized`);(()=>{const e=`${n}initializeCallbacks(): `;let t,o;for(c=[],l=[],t=0;t<r.length;t+=1)c[t]=void 0;for(t=0;t<i.length;t+=1)l[t]=void 0;const a=[];for(t=0;t<r.length;t+=1)a.push(r[t].lower);for(t=0;t<i.length;t+=1)a.push(i[t].lower);for(const n in s.callbacks)if(s.callbacks.hasOwnProperty(n)){if(t=a.indexOf(n.toLowerCase()),t<0)throw new Error(`${e}syntax callback '${n}' not a rule or udt name`);if(o=s.callbacks[n]?s.callbacks[n]:void 0,"function"!=typeof o&&void 0!==o)throw new Error(`${e}syntax callback[${n}] must be function reference or falsy)`);t<r.length?c[t]=o:l[t-r.length]=o}})(),s.trace&&s.trace.init(r,i,a),s.stats&&s.stats.init(r,i),s.ast&&s.ast.init(r,i,a),u=v,o=[{type:e.RNM,index:S}],b(0,0),o=void 0;let O=!1;switch(g.state){case e.ACTIVE:throw new Error(`${w}final state should never be 'ACTIVE'`);case e.NOMATCH:O=!1;break;case e.EMPTY:case e.MATCH:O=g.phraseLength===a.length;break;default:throw new Error("unrecognized state")}return{success:O,state:g.state,stateName:e.idName(g.state),length:a.length,matched:g.phraseLength,maxMatched:_,maxTreeDepth:p,nodeHits:m}};const f=(t,s,r,i)=>{if(s.phraseLength>r){let e=`${n}opRNM(${t.name}): callback function error: `;throw e+=`sysData.phraseLength: ${s.phraseLength}`,e+=` must be <= remaining chars: ${r}`,new Error(e)}switch(s.state){case e.ACTIVE:if(!i)throw new Error(`${n}opRNM(${t.name}): callback function return error. ACTIVE state not allowed.`);break;case e.EMPTY:s.phraseLength=0;break;case e.MATCH:0===s.phraseLength&&(s.state=e.EMPTY);break;case e.NOMATCH:s.phraseLength=0;break;default:throw new Error(`${n}opRNM(${t.name}): callback function return error. Unrecognized return state: ${s.state}`)}},y=(t,c)=>{let h,p,m;const _=o[t],f=i[_.index];g.UdtIndex=f.index,d||(m=s.ast&&s.ast.udtDefined(_.index),m&&(p=r.length+_.index,h=s.ast.getLength(),s.ast.down(p,f.name)));const y=a.length-c;l[_.index](g,a,c,u),((t,s,r)=>{if(s.phraseLength>r){let e=`${n}opUDT(${t.name}): callback function error: `;throw e+=`sysData.phraseLength: ${s.phraseLength}`,e+=` must be <= remaining chars: ${r}`,new Error(e)}switch(s.state){case e.ACTIVE:throw new Error(`${n}opUDT(${t.name}) ACTIVE state return not allowed.`);case e.EMPTY:if(!t.empty)throw new Error(`${n}opUDT(${t.name}) may not return EMPTY.`);s.phraseLength=0;break;case e.MATCH:if(0===s.phraseLength){if(!t.empty)throw new Error(`${n}opUDT(${t.name}) may not return EMPTY.`);s.state=e.EMPTY}break;case e.NOMATCH:s.phraseLength=0;break;default:throw new Error(`${n}opUDT(${t.name}): callback function return error. Unrecognized return state: ${s.state}`)}})(f,g,y),d||m&&(g.state===e.NOMATCH?s.ast.setLength(h):s.ast.up(p,f.name,c,g.phraseLength))},b=(t,i)=>{const l=`${n}opExecute(): `,x=o[t];switch(m+=1,h>p&&(p=h),h+=1,g.refresh(),s.trace&&s.trace.down(x,i),x.type){case e.ALT:((t,s)=>{const n=o[t];for(let t=0;t<n.children.length&&(b(n.children[t],s),g.state===e.NOMATCH);t+=1);})(t,i);break;case e.CAT:((t,n)=>{let r,i,a,c;const l=o[t];s.ast&&(i=s.ast.getLength()),r=!0,a=n,c=0;for(let t=0;t<l.children.length;t+=1){if(b(l.children[t],a),g.state===e.NOMATCH){r=!1;break}a+=g.phraseLength,c+=g.phraseLength}r?(g.state=0===c?e.EMPTY:e.MATCH,g.phraseLength=c):(g.state=e.NOMATCH,g.phraseLength=0,s.ast&&s.ast.setLength(i))})(t,i);break;case e.REP:((t,n)=>{let r,i,c,l;const u=o[t];if(0===u.max)return g.state=e.EMPTY,void(g.phraseLength=0);for(i=n,c=0,l=0,s.ast&&(r=s.ast.getLength());!(i>=a.length)&&(b(t+1,i),g.state!==e.NOMATCH)&&g.state!==e.EMPTY&&(l+=1,c+=g.phraseLength,i+=g.phraseLength,l!==u.max););g.state===e.EMPTY||l>=u.min?(g.state=0===c?e.EMPTY:e.MATCH,g.phraseLength=c):(g.state=e.NOMATCH,g.phraseLength=0,s.ast&&s.ast.setLength(r))})(t,i);break;case e.RNM:((t,n)=>{let i,l,h;const p=o[t],m=r[p.index],_=c[m.index];if(d||(l=s.ast&&s.ast.ruleDefined(p.index),l&&(i=s.ast.getLength(),s.ast.down(p.index,r[p.index].name))),_){const t=a.length-n;_(g,a,n,u),f(m,g,t,!0),g.state===e.ACTIVE&&(h=o,o=m.opcodes,b(0,n),o=h,_(g,a,n,u),f(m,g,t,!1))}else h=o,o=m.opcodes,b(0,n,g),o=h;d||l&&(g.state===e.NOMATCH?s.ast.setLength(i):s.ast.up(p.index,m.name,n,g.phraseLength))})(t,i);break;case e.TRG:((t,s)=>{const n=o[t];g.state=e.NOMATCH,s<a.length&&n.min<=a[s]&&a[s]<=n.max&&(g.state=e.MATCH,g.phraseLength=1)})(t,i);break;case e.TBS:((t,s)=>{const n=o[t],r=n.string.length;if(g.state=e.NOMATCH,s+r<=a.length){for(let e=0;e<r;e+=1)if(a[s+e]!==n.string[e])return;g.state=e.MATCH,g.phraseLength=r}})(t,i);break;case e.TLS:((t,s)=>{let n;const r=o[t];g.state=e.NOMATCH;const i=r.string.length;if(0!==i){if(s+i<=a.length){for(let e=0;e<i;e+=1)if(n=a[s+e],n>=65&&n<=90&&(n+=32),n!==r.string[e])return;g.state=e.MATCH,g.phraseLength=i}}else g.state=e.EMPTY})(t,i);break;case e.UDT:y(t,i);break;case e.AND:((t,s)=>{switch(d+=1,b(t+1,s),d-=1,g.phraseLength=0,g.state){case e.EMPTY:case e.MATCH:g.state=e.EMPTY;break;case e.NOMATCH:g.state=e.NOMATCH;break;default:throw new Error(`opAND: invalid state ${g.state}`)}})(t,i);break;case e.NOT:((t,s)=>{switch(d+=1,b(t+1,s),d-=1,g.phraseLength=0,g.state){case e.EMPTY:case e.MATCH:g.state=e.NOMATCH;break;case e.NOMATCH:g.state=e.EMPTY;break;default:throw new Error(`opNOT: invalid state ${g.state}`)}})(t,i);break;default:throw new Error(`${l}unrecognized operator`)}d||i+g.phraseLength>_&&(_=i+g.phraseLength),s.stats&&s.stats.collect(x,g),s.trace&&s.trace.up(x,g.state,i,g.phraseLength),h-=1}},nn={stringToChars:e=>[...e].map(e=>e.codePointAt(0)),charsToString:(e,t,s)=>{let n=e;for(;!(void 0===t||t<0);){if(void 0===s){n=e.slice(t);break}if(s<=0)return"";n=e.slice(t,t+s);break}return String.fromCodePoint(...n)}},rn={ALT:1,CAT:2,REP:3,RNM:4,TRG:5,TBS:6,TLS:7,UDT:11,AND:12,NOT:13,ACTIVE:100,MATCH:101,EMPTY:102,NOMATCH:103,SEM_PRE:200,SEM_POST:201,SEM_OK:300,idName:e=>{switch(e){case rn.ALT:return"ALT";case rn.CAT:return"CAT";case rn.REP:return"REP";case rn.RNM:return"RNM";case rn.TRG:return"TRG";case rn.TBS:return"TBS";case rn.TLS:return"TLS";case rn.UDT:return"UDT";case rn.AND:return"AND";case rn.NOT:return"NOT";case rn.ACTIVE:return"ACTIVE";case rn.EMPTY:return"EMPTY";case rn.MATCH:return"MATCH";case rn.NOMATCH:return"NOMATCH";case rn.SEM_PRE:return"SEM_PRE";case rn.SEM_POST:return"SEM_POST";case rn.SEM_OK:return"SEM_OK";default:return"UNRECOGNIZED STATE"}}};function on(){this.grammarObject="grammarObject",this.rules=[],this.rules[0]={name:"json-pointer",lower:"json-pointer",index:0,isBkr:!1},this.rules[1]={name:"reference-token",lower:"reference-token",index:1,isBkr:!1},this.rules[2]={name:"unescaped",lower:"unescaped",index:2,isBkr:!1},this.rules[3]={name:"escaped",lower:"escaped",index:3,isBkr:!1},this.rules[4]={name:"array-location",lower:"array-location",index:4,isBkr:!1},this.rules[5]={name:"array-index",lower:"array-index",index:5,isBkr:!1},this.rules[6]={name:"array-dash",lower:"array-dash",index:6,isBkr:!1},this.rules[7]={name:"slash",lower:"slash",index:7,isBkr:!1},this.udts=[],this.rules[0].opcodes=[],this.rules[0].opcodes[0]={type:3,min:0,max:1/0},this.rules[0].opcodes[1]={type:2,children:[2,3]},this.rules[0].opcodes[2]={type:4,index:7},this.rules[0].opcodes[3]={type:4,index:1},this.rules[1].opcodes=[],this.rules[1].opcodes[0]={type:3,min:0,max:1/0},this.rules[1].opcodes[1]={type:1,children:[2,3]},this.rules[1].opcodes[2]={type:4,index:2},this.rules[1].opcodes[3]={type:4,index:3},this.rules[2].opcodes=[],this.rules[2].opcodes[0]={type:1,children:[1,2,3]},this.rules[2].opcodes[1]={type:5,min:0,max:46},this.rules[2].opcodes[2]={type:5,min:48,max:125},this.rules[2].opcodes[3]={type:5,min:127,max:1114111},this.rules[3].opcodes=[],this.rules[3].opcodes[0]={type:2,children:[1,2]},this.rules[3].opcodes[1]={type:7,string:[126]},this.rules[3].opcodes[2]={type:1,children:[3,4]},this.rules[3].opcodes[3]={type:7,string:[48]},this.rules[3].opcodes[4]={type:7,string:[49]},this.rules[4].opcodes=[],this.rules[4].opcodes[0]={type:1,children:[1,2]},this.rules[4].opcodes[1]={type:4,index:5},this.rules[4].opcodes[2]={type:4,index:6},this.rules[5].opcodes=[],this.rules[5].opcodes[0]={type:1,children:[1,2]},this.rules[5].opcodes[1]={type:6,string:[48]},this.rules[5].opcodes[2]={type:2,children:[3,4]},this.rules[5].opcodes[3]={type:5,min:49,max:57},this.rules[5].opcodes[4]={type:3,min:0,max:1/0},this.rules[5].opcodes[5]={type:5,min:48,max:57},this.rules[6].opcodes=[],this.rules[6].opcodes[0]={type:7,string:[45]},this.rules[7].opcodes=[],this.rules[7].opcodes[0]={type:7,string:[47]},this.toString=function(){let e="";return e+="; JavaScript Object Notation (JSON) Pointer ABNF syntax\n",e+="; https://datatracker.ietf.org/doc/html/rfc6901\n",e+="json-pointer = *( slash reference-token ) ; MODIFICATION: surrogate text rule used\n",e+="reference-token = *( unescaped / escaped )\n",e+="unescaped = %x00-2E / %x30-7D / %x7F-10FFFF\n",e+=" ; %x2F ('/') and %x7E ('~') are excluded from 'unescaped'\n",e+='escaped = "~" ( "0" / "1" )\n',e+=" ; representing '~' and '/', respectively\n",e+="\n",e+="; https://datatracker.ietf.org/doc/html/rfc6901#section-4\n",e+="array-location = array-index / array-dash\n",e+="array-index = %x30 / ( %x31-39 *(%x30-39) )\n",e+=' ; "0", or digits without a leading "0"\n',e+='array-dash = "-"\n',e+="\n",e+="; Surrogate named rules\n",e+='slash = "/"\n','; JavaScript Object Notation (JSON) Pointer ABNF syntax\n; https://datatracker.ietf.org/doc/html/rfc6901\njson-pointer = *( slash reference-token ) ; MODIFICATION: surrogate text rule used\nreference-token = *( unescaped / escaped )\nunescaped = %x00-2E / %x30-7D / %x7F-10FFFF\n ; %x2F (\'/\') and %x7E (\'~\') are excluded from \'unescaped\'\nescaped = "~" ( "0" / "1" )\n ; representing \'~\' and \'/\', respectively\n\n; https://datatracker.ietf.org/doc/html/rfc6901#section-4\narray-location = array-index / array-dash\narray-index = %x30 / ( %x31-39 *(%x30-39) )\n ; "0", or digits without a leading "0"\narray-dash = "-"\n\n; Surrogate named rules\nslash = "/"\n'}}class an extends Error{constructor(e,t=void 0){if(super(e,t),this.name=this.constructor.name,"string"==typeof e&&(this.message=e),"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack,null!=t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"cause")&&!("cause"in this)){const{cause:e}=t;this.cause=e,e instanceof Error&&"stack"in e&&(this.stack=`${this.stack}\nCAUSE: ${e.stack}`)}if(null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}}const cn=an;new on;new on,new sn,new on,new sn,new on,new sn,new on,new sn;const ln=e=>{if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("Reference token must be a string or number");return String(e).replace(/~/g,"~0").replace(/\//g,"~1")};const un=class extends cn{},dn=e=>{if(!Array.isArray(e))throw new TypeError("Reference tokens must be a list of strings or numbers");try{return 0===e.length?"":`/${e.map(e=>{if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("Reference token must be a string or number");return ln(String(e))}).join("/")}`}catch(t){throw new un("Unexpected error during JSON Pointer compilation",{cause:t,referenceTokens:e})}};class hn extends Error{constructor(e,t=void 0){if(super(e,t),this.name=this.constructor.name,"string"==typeof e&&(this.message=e),"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack,null!=t&&"object"==typeof t&&Object.hasOwn(t,"cause")&&!("cause"in this)){const{cause:e}=t;this.cause=e,e instanceof Error&&"stack"in e&&(this.stack=`${this.stack}\nCAUSE: ${e.stack}`)}if(null!=t&&"object"==typeof t){const{cause:e,...s}=t;Object.assign(this,s)}}}const pn=hn;new function(){this.grammarObject="grammarObject",this.rules=[],this.rules[0]={name:"jsonpath-query",lower:"jsonpath-query",index:0,isBkr:!1},this.rules[1]={name:"segments",lower:"segments",index:1,isBkr:!1},this.rules[2]={name:"B",lower:"b",index:2,isBkr:!1},this.rules[3]={name:"S",lower:"s",index:3,isBkr:!1},this.rules[4]={name:"root-identifier",lower:"root-identifier",index:4,isBkr:!1},this.rules[5]={name:"selector",lower:"selector",index:5,isBkr:!1},this.rules[6]={name:"name-selector",lower:"name-selector",index:6,isBkr:!1},this.rules[7]={name:"string-literal",lower:"string-literal",index:7,isBkr:!1},this.rules[8]={name:"double-quoted",lower:"double-quoted",index:8,isBkr:!1},this.rules[9]={name:"single-quoted",lower:"single-quoted",index:9,isBkr:!1},this.rules[10]={name:"ESC",lower:"esc",index:10,isBkr:!1},this.rules[11]={name:"unescaped",lower:"unescaped",index:11,isBkr:!1},this.rules[12]={name:"escapable",lower:"escapable",index:12,isBkr:!1},this.rules[13]={name:"hexchar",lower:"hexchar",index:13,isBkr:!1},this.rules[14]={name:"non-surrogate",lower:"non-surrogate",index:14,isBkr:!1},this.rules[15]={name:"high-surrogate",lower:"high-surrogate",index:15,isBkr:!1},this.rules[16]={name:"low-surrogate",lower:"low-surrogate",index:16,isBkr:!1},this.rules[17]={name:"HEXDIG",lower:"hexdig",index:17,isBkr:!1},this.rules[18]={name:"wildcard-selector",lower:"wildcard-selector",index:18,isBkr:!1},this.rules[19]={name:"index-selector",lower:"index-selector",index:19,isBkr:!1},this.rules[20]={name:"int",lower:"int",index:20,isBkr:!1},this.rules[21]={name:"DIGIT1",lower:"digit1",index:21,isBkr:!1},this.rules[22]={name:"slice-selector",lower:"slice-selector",index:22,isBkr:!1},this.rules[23]={name:"start",lower:"start",index:23,isBkr:!1},this.rules[24]={name:"end",lower:"end",index:24,isBkr:!1},this.rules[25]={name:"step",lower:"step",index:25,isBkr:!1},this.rules[26]={name:"filter-selector",lower:"filter-selector",index:26,isBkr:!1},this.rules[27]={name:"logical-expr",lower:"logical-expr",index:27,isBkr:!1},this.rules[28]={name:"logical-or-expr",lower:"logical-or-expr",index:28,isBkr:!1},this.rules[29]={name:"logical-and-expr",lower:"logical-and-expr",index:29,isBkr:!1},this.rules[30]={name:"basic-expr",lower:"basic-expr",index:30,isBkr:!1},this.rules[31]={name:"paren-expr",lower:"paren-expr",index:31,isBkr:!1},this.rules[32]={name:"logical-not-op",lower:"logical-not-op",index:32,isBkr:!1},this.rules[33]={name:"test-expr",lower:"test-expr",index:33,isBkr:!1},this.rules[34]={name:"filter-query",lower:"filter-query",index:34,isBkr:!1},this.rules[35]={name:"rel-query",lower:"rel-query",index:35,isBkr:!1},this.rules[36]={name:"current-node-identifier",lower:"current-node-identifier",index:36,isBkr:!1},this.rules[37]={name:"comparison-expr",lower:"comparison-expr",index:37,isBkr:!1},this.rules[38]={name:"literal",lower:"literal",index:38,isBkr:!1},this.rules[39]={name:"comparable",lower:"comparable",index:39,isBkr:!1},this.rules[40]={name:"comparison-op",lower:"comparison-op",index:40,isBkr:!1},this.rules[41]={name:"singular-query",lower:"singular-query",index:41,isBkr:!1},this.rules[42]={name:"rel-singular-query",lower:"rel-singular-query",index:42,isBkr:!1},this.rules[43]={name:"abs-singular-query",lower:"abs-singular-query",index:43,isBkr:!1},this.rules[44]={name:"singular-query-segments",lower:"singular-query-segments",index:44,isBkr:!1},this.rules[45]={name:"name-segment",lower:"name-segment",index:45,isBkr:!1},this.rules[46]={name:"index-segment",lower:"index-segment",index:46,isBkr:!1},this.rules[47]={name:"number",lower:"number",index:47,isBkr:!1},this.rules[48]={name:"frac",lower:"frac",index:48,isBkr:!1},this.rules[49]={name:"exp",lower:"exp",index:49,isBkr:!1},this.rules[50]={name:"true",lower:"true",index:50,isBkr:!1},this.rules[51]={name:"false",lower:"false",index:51,isBkr:!1},this.rules[52]={name:"null",lower:"null",index:52,isBkr:!1},this.rules[53]={name:"function-name",lower:"function-name",index:53,isBkr:!1},this.rules[54]={name:"function-name-first",lower:"function-name-first",index:54,isBkr:!1},this.rules[55]={name:"function-name-char",lower:"function-name-char",index:55,isBkr:!1},this.rules[56]={name:"LCALPHA",lower:"lcalpha",index:56,isBkr:!1},this.rules[57]={name:"function-expr",lower:"function-expr",index:57,isBkr:!1},this.rules[58]={name:"function-argument",lower:"function-argument",index:58,isBkr:!1},this.rules[59]={name:"segment",lower:"segment",index:59,isBkr:!1},this.rules[60]={name:"child-segment",lower:"child-segment",index:60,isBkr:!1},this.rules[61]={name:"bracketed-selection",lower:"bracketed-selection",index:61,isBkr:!1},this.rules[62]={name:"member-name-shorthand",lower:"member-name-shorthand",index:62,isBkr:!1},this.rules[63]={name:"name-first",lower:"name-first",index:63,isBkr:!1},this.rules[64]={name:"name-char",lower:"name-char",index:64,isBkr:!1},this.rules[65]={name:"DIGIT",lower:"digit",index:65,isBkr:!1},this.rules[66]={name:"ALPHA",lower:"alpha",index:66,isBkr:!1},this.rules[67]={name:"descendant-segment",lower:"descendant-segment",index:67,isBkr:!1},this.rules[68]={name:"normalized-path",lower:"normalized-path",index:68,isBkr:!1},this.rules[69]={name:"normal-index-segment",lower:"normal-index-segment",index:69,isBkr:!1},this.rules[70]={name:"normal-selector",lower:"normal-selector",index:70,isBkr:!1},this.rules[71]={name:"normal-name-selector",lower:"normal-name-selector",index:71,isBkr:!1},this.rules[72]={name:"normal-single-quoted",lower:"normal-single-quoted",index:72,isBkr:!1},this.rules[73]={name:"normal-unescaped",lower:"normal-unescaped",index:73,isBkr:!1},this.rules[74]={name:"normal-escapable",lower:"normal-escapable",index:74,isBkr:!1},this.rules[75]={name:"normal-hexchar",lower:"normal-hexchar",index:75,isBkr:!1},this.rules[76]={name:"normal-HEXDIG",lower:"normal-hexdig",index:76,isBkr:!1},this.rules[77]={name:"normal-index-selector",lower:"normal-index-selector",index:77,isBkr:!1},this.rules[78]={name:"dot-prefix",lower:"dot-prefix",index:78,isBkr:!1},this.rules[79]={name:"double-dot-prefix",lower:"double-dot-prefix",index:79,isBkr:!1},this.rules[80]={name:"left-bracket",lower:"left-bracket",index:80,isBkr:!1},this.rules[81]={name:"right-bracket",lower:"right-bracket",index:81,isBkr:!1},this.rules[82]={name:"left-paren",lower:"left-paren",index:82,isBkr:!1},this.rules[83]={name:"right-paren",lower:"right-paren",index:83,isBkr:!1},this.rules[84]={name:"comma",lower:"comma",index:84,isBkr:!1},this.rules[85]={name:"colon",lower:"colon",index:85,isBkr:!1},this.rules[86]={name:"dquote",lower:"dquote",index:86,isBkr:!1},this.rules[87]={name:"squote",lower:"squote",index:87,isBkr:!1},this.rules[88]={name:"questionmark",lower:"questionmark",index:88,isBkr:!1},this.rules[89]={name:"disjunction",lower:"disjunction",index:89,isBkr:!1},this.rules[90]={name:"conjunction",lower:"conjunction",index:90,isBkr:!1},this.udts=[],this.rules[0].opcodes=[],this.rules[0].opcodes[0]={type:2,children:[1,2]},this.rules[0].opcodes[1]={type:4,index:4},this.rules[0].opcodes[2]={type:4,index:1},this.rules[1].opcodes=[],this.rules[1].opcodes[0]={type:3,min:0,max:1/0},this.rules[1].opcodes[1]={type:2,children:[2,3]},this.rules[1].opcodes[2]={type:4,index:3},this.rules[1].opcodes[3]={type:4,index:59},this.rules[2].opcodes=[],this.rules[2].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[2].opcodes[1]={type:6,string:[32]},this.rules[2].opcodes[2]={type:6,string:[9]},this.rules[2].opcodes[3]={type:6,string:[10]},this.rules[2].opcodes[4]={type:6,string:[13]},this.rules[3].opcodes=[],this.rules[3].opcodes[0]={type:3,min:0,max:1/0},this.rules[3].opcodes[1]={type:4,index:2},this.rules[4].opcodes=[],this.rules[4].opcodes[0]={type:7,string:[36]},this.rules[5].opcodes=[],this.rules[5].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[5].opcodes[1]={type:4,index:6},this.rules[5].opcodes[2]={type:4,index:18},this.rules[5].opcodes[3]={type:4,index:22},this.rules[5].opcodes[4]={type:4,index:19},this.rules[5].opcodes[5]={type:4,index:26},this.rules[6].opcodes=[],this.rules[6].opcodes[0]={type:4,index:7},this.rules[7].opcodes=[],this.rules[7].opcodes[0]={type:1,children:[1,6]},this.rules[7].opcodes[1]={type:2,children:[2,3,5]},this.rules[7].opcodes[2]={type:4,index:86},this.rules[7].opcodes[3]={type:3,min:0,max:1/0},this.rules[7].opcodes[4]={type:4,index:8},this.rules[7].opcodes[5]={type:4,index:86},this.rules[7].opcodes[6]={type:2,children:[7,8,10]},this.rules[7].opcodes[7]={type:4,index:87},this.rules[7].opcodes[8]={type:3,min:0,max:1/0},this.rules[7].opcodes[9]={type:4,index:9},this.rules[7].opcodes[10]={type:4,index:87},this.rules[8].opcodes=[],this.rules[8].opcodes[0]={type:1,children:[1,2,3,6]},this.rules[8].opcodes[1]={type:4,index:11},this.rules[8].opcodes[2]={type:6,string:[39]},this.rules[8].opcodes[3]={type:2,children:[4,5]},this.rules[8].opcodes[4]={type:4,index:10},this.rules[8].opcodes[5]={type:6,string:[34]},this.rules[8].opcodes[6]={type:2,children:[7,8]},this.rules[8].opcodes[7]={type:4,index:10},this.rules[8].opcodes[8]={type:4,index:12},this.rules[9].opcodes=[],this.rules[9].opcodes[0]={type:1,children:[1,2,3,6]},this.rules[9].opcodes[1]={type:4,index:11},this.rules[9].opcodes[2]={type:6,string:[34]},this.rules[9].opcodes[3]={type:2,children:[4,5]},this.rules[9].opcodes[4]={type:4,index:10},this.rules[9].opcodes[5]={type:6,string:[39]},this.rules[9].opcodes[6]={type:2,children:[7,8]},this.rules[9].opcodes[7]={type:4,index:10},this.rules[9].opcodes[8]={type:4,index:12},this.rules[10].opcodes=[],this.rules[10].opcodes[0]={type:6,string:[92]},this.rules[11].opcodes=[],this.rules[11].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[11].opcodes[1]={type:5,min:32,max:33},this.rules[11].opcodes[2]={type:5,min:35,max:38},this.rules[11].opcodes[3]={type:5,min:40,max:91},this.rules[11].opcodes[4]={type:5,min:93,max:55295},this.rules[11].opcodes[5]={type:5,min:57344,max:1114111},this.rules[12].opcodes=[],this.rules[12].opcodes[0]={type:1,children:[1,2,3,4,5,6,7,8]},this.rules[12].opcodes[1]={type:6,string:[98]},this.rules[12].opcodes[2]={type:6,string:[102]},this.rules[12].opcodes[3]={type:6,string:[110]},this.rules[12].opcodes[4]={type:6,string:[114]},this.rules[12].opcodes[5]={type:6,string:[116]},this.rules[12].opcodes[6]={type:7,string:[47]},this.rules[12].opcodes[7]={type:7,string:[92]},this.rules[12].opcodes[8]={type:2,children:[9,10]},this.rules[12].opcodes[9]={type:6,string:[117]},this.rules[12].opcodes[10]={type:4,index:13},this.rules[13].opcodes=[],this.rules[13].opcodes[0]={type:1,children:[1,2]},this.rules[13].opcodes[1]={type:4,index:14},this.rules[13].opcodes[2]={type:2,children:[3,4,5,6]},this.rules[13].opcodes[3]={type:4,index:15},this.rules[13].opcodes[4]={type:7,string:[92]},this.rules[13].opcodes[5]={type:6,string:[117]},this.rules[13].opcodes[6]={type:4,index:16},this.rules[14].opcodes=[],this.rules[14].opcodes[0]={type:1,children:[1,11]},this.rules[14].opcodes[1]={type:2,children:[2,9]},this.rules[14].opcodes[2]={type:1,children:[3,4,5,6,7,8]},this.rules[14].opcodes[3]={type:4,index:65},this.rules[14].opcodes[4]={type:7,string:[97]},this.rules[14].opcodes[5]={type:7,string:[98]},this.rules[14].opcodes[6]={type:7,string:[99]},this.rules[14].opcodes[7]={type:7,string:[101]},this.rules[14].opcodes[8]={type:7,string:[102]},this.rules[14].opcodes[9]={type:3,min:3,max:3},this.rules[14].opcodes[10]={type:4,index:17},this.rules[14].opcodes[11]={type:2,children:[12,13,14]},this.rules[14].opcodes[12]={type:7,string:[100]},this.rules[14].opcodes[13]={type:5,min:48,max:55},this.rules[14].opcodes[14]={type:3,min:2,max:2},this.rules[14].opcodes[15]={type:4,index:17},this.rules[15].opcodes=[],this.rules[15].opcodes[0]={type:2,children:[1,2,7]},this.rules[15].opcodes[1]={type:7,string:[100]},this.rules[15].opcodes[2]={type:1,children:[3,4,5,6]},this.rules[15].opcodes[3]={type:7,string:[56]},this.rules[15].opcodes[4]={type:7,string:[57]},this.rules[15].opcodes[5]={type:7,string:[97]},this.rules[15].opcodes[6]={type:7,string:[98]},this.rules[15].opcodes[7]={type:3,min:2,max:2},this.rules[15].opcodes[8]={type:4,index:17},this.rules[16].opcodes=[],this.rules[16].opcodes[0]={type:2,children:[1,2,7]},this.rules[16].opcodes[1]={type:7,string:[100]},this.rules[16].opcodes[2]={type:1,children:[3,4,5,6]},this.rules[16].opcodes[3]={type:7,string:[99]},this.rules[16].opcodes[4]={type:7,string:[100]},this.rules[16].opcodes[5]={type:7,string:[101]},this.rules[16].opcodes[6]={type:7,string:[102]},this.rules[16].opcodes[7]={type:3,min:2,max:2},this.rules[16].opcodes[8]={type:4,index:17},this.rules[17].opcodes=[],this.rules[17].opcodes[0]={type:1,children:[1,2,3,4,5,6,7]},this.rules[17].opcodes[1]={type:4,index:65},this.rules[17].opcodes[2]={type:7,string:[97]},this.rules[17].opcodes[3]={type:7,string:[98]},this.rules[17].opcodes[4]={type:7,string:[99]},this.rules[17].opcodes[5]={type:7,string:[100]},this.rules[17].opcodes[6]={type:7,string:[101]},this.rules[17].opcodes[7]={type:7,string:[102]},this.rules[18].opcodes=[],this.rules[18].opcodes[0]={type:7,string:[42]},this.rules[19].opcodes=[],this.rules[19].opcodes[0]={type:4,index:20},this.rules[20].opcodes=[],this.rules[20].opcodes[0]={type:1,children:[1,2]},this.rules[20].opcodes[1]={type:7,string:[48]},this.rules[20].opcodes[2]={type:2,children:[3,5,6]},this.rules[20].opcodes[3]={type:3,min:0,max:1},this.rules[20].opcodes[4]={type:7,string:[45]},this.rules[20].opcodes[5]={type:4,index:21},this.rules[20].opcodes[6]={type:3,min:0,max:1/0},this.rules[20].opcodes[7]={type:4,index:65},this.rules[21].opcodes=[],this.rules[21].opcodes[0]={type:5,min:49,max:57},this.rules[22].opcodes=[],this.rules[22].opcodes[0]={type:2,children:[1,5,6,7,11]},this.rules[22].opcodes[1]={type:3,min:0,max:1},this.rules[22].opcodes[2]={type:2,children:[3,4]},this.rules[22].opcodes[3]={type:4,index:23},this.rules[22].opcodes[4]={type:4,index:3},this.rules[22].opcodes[5]={type:4,index:85},this.rules[22].opcodes[6]={type:4,index:3},this.rules[22].opcodes[7]={type:3,min:0,max:1},this.rules[22].opcodes[8]={type:2,children:[9,10]},this.rules[22].opcodes[9]={type:4,index:24},this.rules[22].opcodes[10]={type:4,index:3},this.rules[22].opcodes[11]={type:3,min:0,max:1},this.rules[22].opcodes[12]={type:2,children:[13,14]},this.rules[22].opcodes[13]={type:4,index:85},this.rules[22].opcodes[14]={type:3,min:0,max:1},this.rules[22].opcodes[15]={type:2,children:[16,17]},this.rules[22].opcodes[16]={type:4,index:3},this.rules[22].opcodes[17]={type:4,index:25},this.rules[23].opcodes=[],this.rules[23].opcodes[0]={type:4,index:20},this.rules[24].opcodes=[],this.rules[24].opcodes[0]={type:4,index:20},this.rules[25].opcodes=[],this.rules[25].opcodes[0]={type:4,index:20},this.rules[26].opcodes=[],this.rules[26].opcodes[0]={type:2,children:[1,2,3]},this.rules[26].opcodes[1]={type:4,index:88},this.rules[26].opcodes[2]={type:4,index:3},this.rules[26].opcodes[3]={type:4,index:27},this.rules[27].opcodes=[],this.rules[27].opcodes[0]={type:4,index:28},this.rules[28].opcodes=[],this.rules[28].opcodes[0]={type:2,children:[1,2]},this.rules[28].opcodes[1]={type:4,index:29},this.rules[28].opcodes[2]={type:3,min:0,max:1/0},this.rules[28].opcodes[3]={type:2,children:[4,5,6,7]},this.rules[28].opcodes[4]={type:4,index:3},this.rules[28].opcodes[5]={type:4,index:89},this.rules[28].opcodes[6]={type:4,index:3},this.rules[28].opcodes[7]={type:4,index:29},this.rules[29].opcodes=[],this.rules[29].opcodes[0]={type:2,children:[1,2]},this.rules[29].opcodes[1]={type:4,index:30},this.rules[29].opcodes[2]={type:3,min:0,max:1/0},this.rules[29].opcodes[3]={type:2,children:[4,5,6,7]},this.rules[29].opcodes[4]={type:4,index:3},this.rules[29].opcodes[5]={type:4,index:90},this.rules[29].opcodes[6]={type:4,index:3},this.rules[29].opcodes[7]={type:4,index:30},this.rules[30].opcodes=[],this.rules[30].opcodes[0]={type:1,children:[1,2,3]},this.rules[30].opcodes[1]={type:4,index:31},this.rules[30].opcodes[2]={type:4,index:37},this.rules[30].opcodes[3]={type:4,index:33},this.rules[31].opcodes=[],this.rules[31].opcodes[0]={type:2,children:[1,5,6,7,8,9]},this.rules[31].opcodes[1]={type:3,min:0,max:1},this.rules[31].opcodes[2]={type:2,children:[3,4]},this.rules[31].opcodes[3]={type:4,index:32},this.rules[31].opcodes[4]={type:4,index:3},this.rules[31].opcodes[5]={type:4,index:82},this.rules[31].opcodes[6]={type:4,index:3},this.rules[31].opcodes[7]={type:4,index:27},this.rules[31].opcodes[8]={type:4,index:3},this.rules[31].opcodes[9]={type:4,index:83},this.rules[32].opcodes=[],this.rules[32].opcodes[0]={type:7,string:[33]},this.rules[33].opcodes=[],this.rules[33].opcodes[0]={type:2,children:[1,5]},this.rules[33].opcodes[1]={type:3,min:0,max:1},this.rules[33].opcodes[2]={type:2,children:[3,4]},this.rules[33].opcodes[3]={type:4,index:32},this.rules[33].opcodes[4]={type:4,index:3},this.rules[33].opcodes[5]={type:1,children:[6,7]},this.rules[33].opcodes[6]={type:4,index:34},this.rules[33].opcodes[7]={type:4,index:57},this.rules[34].opcodes=[],this.rules[34].opcodes[0]={type:1,children:[1,2]},this.rules[34].opcodes[1]={type:4,index:35},this.rules[34].opcodes[2]={type:4,index:0},this.rules[35].opcodes=[],this.rules[35].opcodes[0]={type:2,children:[1,2]},this.rules[35].opcodes[1]={type:4,index:36},this.rules[35].opcodes[2]={type:4,index:1},this.rules[36].opcodes=[],this.rules[36].opcodes[0]={type:7,string:[64]},this.rules[37].opcodes=[],this.rules[37].opcodes[0]={type:2,children:[1,2,3,4,5]},this.rules[37].opcodes[1]={type:4,index:39},this.rules[37].opcodes[2]={type:4,index:3},this.rules[37].opcodes[3]={type:4,index:40},this.rules[37].opcodes[4]={type:4,index:3},this.rules[37].opcodes[5]={type:4,index:39},this.rules[38].opcodes=[],this.rules[38].opcodes[0]={type:1,children:[1,2,3,4,5]},this.rules[38].opcodes[1]={type:4,index:47},this.rules[38].opcodes[2]={type:4,index:7},this.rules[38].opcodes[3]={type:4,index:50},this.rules[38].opcodes[4]={type:4,index:51},this.rules[38].opcodes[5]={type:4,index:52},this.rules[39].opcodes=[],this.rules[39].opcodes[0]={type:1,children:[1,2,3]},this.rules[39].opcodes[1]={type:4,index:41},this.rules[39].opcodes[2]={type:4,index:57},this.rules[39].opcodes[3]={type:4,index:38},this.rules[40].opcodes=[],this.rules[40].opcodes[0]={type:1,children:[1,2,3,4,5,6]},this.rules[40].opcodes[1]={type:7,string:[61,61]},this.rules[40].opcodes[2]={type:7,string:[33,61]},this.rules[40].opcodes[3]={type:7,string:[60,61]},this.rules[40].opcodes[4]={type:7,string:[62,61]},this.rules[40].opcodes[5]={type:7,string:[60]},this.rules[40].opcodes[6]={type:7,string:[62]},this.rules[41].opcodes=[],this.rules[41].opcodes[0]={type:1,children:[1,2]},this.rules[41].opcodes[1]={type:4,index:42},this.rules[41].opcodes[2]={type:4,index:43},this.rules[42].opcodes=[],this.rules[42].opcodes[0]={type:2,children:[1,2]},this.rules[42].opcodes[1]={type:4,index:36},this.rules[42].opcodes[2]={type:4,index:44},this.rules[43].opcodes=[],this.rules[43].opcodes[0]={type:2,children:[1,2]},this.rules[43].opcodes[1]={type:4,index:4},this.rules[43].opcodes[2]={type:4,index:44},this.rules[44].opcodes=[],this.rules[44].opcodes[0]={type:3,min:0,max:1/0},this.rules[44].opcodes[1]={type:2,children:[2,3]},this.rules[44].opcodes[2]={type:4,index:3},this.rules[44].opcodes[3]={type:1,children:[4,5]},this.rules[44].opcodes[4]={type:4,index:45},this.rules[44].opcodes[5]={type:4,index:46},this.rules[45].opcodes=[],this.rules[45].opcodes[0]={type:1,children:[1,5]},this.rules[45].opcodes[1]={type:2,children:[2,3,4]},this.rules[45].opcodes[2]={type:4,index:80},this.rules[45].opcodes[3]={type:4,index:6},this.rules[45].opcodes[4]={type:4,index:81},this.rules[45].opcodes[5]={type:2,children:[6,7]},this.rules[45].opcodes[6]={type:4,index:78},this.rules[45].opcodes[7]={type:4,index:62},this.rules[46].opcodes=[],this.rules[46].opcodes[0]={type:2,children:[1,2,3]},this.rules[46].opcodes[1]={type:4,index:80},this.rules[46].opcodes[2]={type:4,index:19},this.rules[46].opcodes[3]={type:4,index:81},this.rules[47].opcodes=[],this.rules[47].opcodes[0]={type:2,children:[1,4,6]},this.rules[47].opcodes[1]={type:1,children:[2,3]},this.rules[47].opcodes[2]={type:4,index:20},this.rules[47].opcodes[3]={type:7,string:[45,48]},this.rules[47].opcodes[4]={type:3,min:0,max:1},this.rules[47].opcodes[5]={type:4,index:48},this.rules[47].opcodes[6]={type:3,min:0,max:1},this.rules[47].opcodes[7]={type:4,index:49},this.rules[48].opcodes=[],this.rules[48].opcodes[0]={type:2,children:[1,2]},this.rules[48].opcodes[1]={type:7,string:[46]},this.rules[48].opcodes[2]={type:3,min:1,max:1/0},this.rules[48].opcodes[3]={type:4,index:65},this.rules[49].opcodes=[],this.rules[49].opcodes[0]={type:2,children:[1,2,6]},this.rules[49].opcodes[1]={type:7,string:[101]},this.rules[49].opcodes[2]={type:3,min:0,max:1},this.rules[49].opcodes[3]={type:1,children:[4,5]},this.rules[49].opcodes[4]={type:7,string:[45]},this.rules[49].opcodes[5]={type:7,string:[43]},this.rules[49].opcodes[6]={type:3,min:1,max:1/0},this.rules[49].opcodes[7]={type:4,index:65},this.rules[50].opcodes=[],this.rules[50].opcodes[0]={type:6,string:[116,114,117,101]},this.rules[51].opcodes=[],this.rules[51].opcodes[0]={type:6,string:[102,97,108,115,101]},this.rules[52].opcodes=[],this.rules[52].opcodes[0]={type:6,string:[110,117,108,108]},this.rules[53].opcodes=[],this.rules[53].opcodes[0]={type:2,children:[1,2]},this.rules[53].opcodes[1]={type:4,index:54},this.rules[53].opcodes[2]={type:3,min:0,max:1/0},this.rules[53].opcodes[3]={type:4,index:55},this.rules[54].opcodes=[],this.rules[54].opcodes[0]={type:4,index:56},this.rules[55].opcodes=[],this.rules[55].opcodes[0]={type:1,children:[1,2,3]},this.rules[55].opcodes[1]={type:4,index:54},this.rules[55].opcodes[2]={type:7,string:[95]},this.rules[55].opcodes[3]={type:4,index:65},this.rules[56].opcodes=[],this.rules[56].opcodes[0]={type:5,min:97,max:122},this.rules[57].opcodes=[],this.rules[57].opcodes[0]={type:2,children:[1,2,3,4,13,14]},this.rules[57].opcodes[1]={type:4,index:53},this.rules[57].opcodes[2]={type:4,index:82},this.rules[57].opcodes[3]={type:4,index:3},this.rules[57].opcodes[4]={type:3,min:0,max:1},this.rules[57].opcodes[5]={type:2,children:[6,7]},this.rules[57].opcodes[6]={type:4,index:58},this.rules[57].opcodes[7]={type:3,min:0,max:1/0},this.rules[57].opcodes[8]={type:2,children:[9,10,11,12]},this.rules[57].opcodes[9]={type:4,index:3},this.rules[57].opcodes[10]={type:4,index:84},this.rules[57].opcodes[11]={type:4,index:3},this.rules[57].opcodes[12]={type:4,index:58},this.rules[57].opcodes[13]={type:4,index:3},this.rules[57].opcodes[14]={type:4,index:83},this.rules[58].opcodes=[],this.rules[58].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[58].opcodes[1]={type:4,index:27},this.rules[58].opcodes[2]={type:4,index:34},this.rules[58].opcodes[3]={type:4,index:57},this.rules[58].opcodes[4]={type:4,index:38},this.rules[59].opcodes=[],this.rules[59].opcodes[0]={type:1,children:[1,2]},this.rules[59].opcodes[1]={type:4,index:60},this.rules[59].opcodes[2]={type:4,index:67},this.rules[60].opcodes=[],this.rules[60].opcodes[0]={type:1,children:[1,2]},this.rules[60].opcodes[1]={type:4,index:61},this.rules[60].opcodes[2]={type:2,children:[3,4]},this.rules[60].opcodes[3]={type:4,index:78},this.rules[60].opcodes[4]={type:1,children:[5,6]},this.rules[60].opcodes[5]={type:4,index:18},this.rules[60].opcodes[6]={type:4,index:62},this.rules[61].opcodes=[],this.rules[61].opcodes[0]={type:2,children:[1,2,3,4,10,11]},this.rules[61].opcodes[1]={type:4,index:80},this.rules[61].opcodes[2]={type:4,index:3},this.rules[61].opcodes[3]={type:4,index:5},this.rules[61].opcodes[4]={type:3,min:0,max:1/0},this.rules[61].opcodes[5]={type:2,children:[6,7,8,9]},this.rules[61].opcodes[6]={type:4,index:3},this.rules[61].opcodes[7]={type:4,index:84},this.rules[61].opcodes[8]={type:4,index:3},this.rules[61].opcodes[9]={type:4,index:5},this.rules[61].opcodes[10]={type:4,index:3},this.rules[61].opcodes[11]={type:4,index:81},this.rules[62].opcodes=[],this.rules[62].opcodes[0]={type:2,children:[1,2]},this.rules[62].opcodes[1]={type:4,index:63},this.rules[62].opcodes[2]={type:3,min:0,max:1/0},this.rules[62].opcodes[3]={type:4,index:64},this.rules[63].opcodes=[],this.rules[63].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[63].opcodes[1]={type:4,index:66},this.rules[63].opcodes[2]={type:7,string:[95]},this.rules[63].opcodes[3]={type:5,min:128,max:55295},this.rules[63].opcodes[4]={type:5,min:57344,max:1114111},this.rules[64].opcodes=[],this.rules[64].opcodes[0]={type:1,children:[1,2]},this.rules[64].opcodes[1]={type:4,index:63},this.rules[64].opcodes[2]={type:4,index:65},this.rules[65].opcodes=[],this.rules[65].opcodes[0]={type:5,min:48,max:57},this.rules[66].opcodes=[],this.rules[66].opcodes[0]={type:1,children:[1,2]},this.rules[66].opcodes[1]={type:5,min:65,max:90},this.rules[66].opcodes[2]={type:5,min:97,max:122},this.rules[67].opcodes=[],this.rules[67].opcodes[0]={type:2,children:[1,2]},this.rules[67].opcodes[1]={type:4,index:79},this.rules[67].opcodes[2]={type:1,children:[3,4,5]},this.rules[67].opcodes[3]={type:4,index:61},this.rules[67].opcodes[4]={type:4,index:18},this.rules[67].opcodes[5]={type:4,index:62},this.rules[68].opcodes=[],this.rules[68].opcodes[0]={type:2,children:[1,2]},this.rules[68].opcodes[1]={type:4,index:4},this.rules[68].opcodes[2]={type:3,min:0,max:1/0},this.rules[68].opcodes[3]={type:4,index:69},this.rules[69].opcodes=[],this.rules[69].opcodes[0]={type:2,children:[1,2,3]},this.rules[69].opcodes[1]={type:4,index:80},this.rules[69].opcodes[2]={type:4,index:70},this.rules[69].opcodes[3]={type:4,index:81},this.rules[70].opcodes=[],this.rules[70].opcodes[0]={type:1,children:[1,2]},this.rules[70].opcodes[1]={type:4,index:71},this.rules[70].opcodes[2]={type:4,index:77},this.rules[71].opcodes=[],this.rules[71].opcodes[0]={type:2,children:[1,2,4]},this.rules[71].opcodes[1]={type:4,index:87},this.rules[71].opcodes[2]={type:3,min:0,max:1/0},this.rules[71].opcodes[3]={type:4,index:72},this.rules[71].opcodes[4]={type:4,index:87},this.rules[72].opcodes=[],this.rules[72].opcodes[0]={type:1,children:[1,2]},this.rules[72].opcodes[1]={type:4,index:73},this.rules[72].opcodes[2]={type:2,children:[3,4]},this.rules[72].opcodes[3]={type:4,index:10},this.rules[72].opcodes[4]={type:4,index:74},this.rules[73].opcodes=[],this.rules[73].opcodes[0]={type:1,children:[1,2,3,4]},this.rules[73].opcodes[1]={type:5,min:32,max:38},this.rules[73].opcodes[2]={type:5,min:40,max:91},this.rules[73].opcodes[3]={type:5,min:93,max:55295},this.rules[73].opcodes[4]={type:5,min:57344,max:1114111},this.rules[74].opcodes=[],this.rules[74].opcodes[0]={type:1,children:[1,2,3,4,5,6,7,8]},this.rules[74].opcodes[1]={type:6,string:[98]},this.rules[74].opcodes[2]={type:6,string:[102]},this.rules[74].opcodes[3]={type:6,string:[110]},this.rules[74].opcodes[4]={type:6,string:[114]},this.rules[74].opcodes[5]={type:6,string:[116]},this.rules[74].opcodes[6]={type:7,string:[39]},this.rules[74].opcodes[7]={type:7,string:[92]},this.rules[74].opcodes[8]={type:2,children:[9,10]},this.rules[74].opcodes[9]={type:6,string:[117]},this.rules[74].opcodes[10]={type:4,index:75},this.rules[75].opcodes=[],this.rules[75].opcodes[0]={type:2,children:[1,2,3]},this.rules[75].opcodes[1]={type:7,string:[48]},this.rules[75].opcodes[2]={type:7,string:[48]},this.rules[75].opcodes[3]={type:1,children:[4,7,10,13]},this.rules[75].opcodes[4]={type:2,children:[5,6]},this.rules[75].opcodes[5]={type:7,string:[48]},this.rules[75].opcodes[6]={type:5,min:48,max:55},this.rules[75].opcodes[7]={type:2,children:[8,9]},this.rules[75].opcodes[8]={type:7,string:[48]},this.rules[75].opcodes[9]={type:6,string:[98]},this.rules[75].opcodes[10]={type:2,children:[11,12]},this.rules[75].opcodes[11]={type:7,string:[48]},this.rules[75].opcodes[12]={type:5,min:101,max:102},this.rules[75].opcodes[13]={type:2,children:[14,15]},this.rules[75].opcodes[14]={type:7,string:[49]},this.rules[75].opcodes[15]={type:4,index:76},this.rules[76].opcodes=[],this.rules[76].opcodes[0]={type:1,children:[1,2]},this.rules[76].opcodes[1]={type:4,index:65},this.rules[76].opcodes[2]={type:5,min:97,max:102},this.rules[77].opcodes=[],this.rules[77].opcodes[0]={type:1,children:[1,2]},this.rules[77].opcodes[1]={type:7,string:[48]},this.rules[77].opcodes[2]={type:2,children:[3,4]},this.rules[77].opcodes[3]={type:4,index:21},this.rules[77].opcodes[4]={type:3,min:0,max:1/0},this.rules[77].opcodes[5]={type:4,index:65},this.rules[78].opcodes=[],this.rules[78].opcodes[0]={type:7,string:[46]},this.rules[79].opcodes=[],this.rules[79].opcodes[0]={type:7,string:[46,46]},this.rules[80].opcodes=[],this.rules[80].opcodes[0]={type:7,string:[91]},this.rules[81].opcodes=[],this.rules[81].opcodes[0]={type:7,string:[93]},this.rules[82].opcodes=[],this.rules[82].opcodes[0]={type:7,string:[40]},this.rules[83].opcodes=[],this.rules[83].opcodes[0]={type:7,string:[41]},this.rules[84].opcodes=[],this.rules[84].opcodes[0]={type:7,string:[44]},this.rules[85].opcodes=[],this.rules[85].opcodes[0]={type:7,string:[58]},this.rules[86].opcodes=[],this.rules[86].opcodes[0]={type:6,string:[34]},this.rules[87].opcodes=[],this.rules[87].opcodes[0]={type:6,string:[39]},this.rules[88].opcodes=[],this.rules[88].opcodes[0]={type:7,string:[63]},this.rules[89].opcodes=[],this.rules[89].opcodes[0]={type:7,string:[124,124]},this.rules[90].opcodes=[],this.rules[90].opcodes[0]={type:7,string:[38,38]},this.toString=function(){let e="";return e+="; JSONPath: Query Expressions for JSON\n",e+="; https://www.rfc-editor.org/rfc/rfc9535\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.1.1\n",e+="jsonpath-query = root-identifier segments\n",e+="segments = *(S segment)\n",e+="\n",e+="B = %x20 / ; Space\n",e+=" %x09 / ; Horizontal tab\n",e+=" %x0A / ; Line feed or New line\n",e+=" %x0D ; Carriage return\n",e+="S = *B ; optional blank space\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.2.1\n",e+='root-identifier = "$"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3\n",e+="selector = name-selector /\n",e+=" wildcard-selector /\n",e+=" slice-selector /\n",e+=" index-selector /\n",e+=" filter-selector\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.1.1\n",e+="name-selector = string-literal\n",e+="\n",e+='string-literal = dquote *double-quoted dquote / ; "string", MODIFICATION: surrogate text rule used\n',e+=" squote *single-quoted squote ; 'string', MODIFICATION: surrogate text rule used\n",e+="\n",e+="double-quoted = unescaped /\n",e+=" %x27 / ; '\n",e+=' ESC %x22 / ; \\"\n',e+=" ESC escapable\n",e+="\n",e+="single-quoted = unescaped /\n",e+=' %x22 / ; "\n',e+=" ESC %x27 / ; \\'\n",e+=" ESC escapable\n",e+="\n",e+="ESC = %x5C ; \\ backslash\n",e+="\n",e+="unescaped = %x20-21 / ; see RFC 8259\n",e+=' ; omit 0x22 "\n',e+=" %x23-26 /\n",e+=" ; omit 0x27 '\n",e+=" %x28-5B /\n",e+=" ; omit 0x5C \\\n",e+=" %x5D-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="\n",e+="escapable = %x62 / ; b BS backspace U+0008\n",e+=" %x66 / ; f FF form feed U+000C\n",e+=" %x6E / ; n LF line feed U+000A\n",e+=" %x72 / ; r CR carriage return U+000D\n",e+=" %x74 / ; t HT horizontal tab U+0009\n",e+=' "/" / ; / slash (solidus) U+002F\n',e+=' "\\" / ; \\ backslash (reverse solidus) U+005C\n',e+=" (%x75 hexchar) ; uXXXX U+XXXX\n",e+="\n",e+="hexchar = non-surrogate /\n",e+=' (high-surrogate "\\" %x75 low-surrogate)\n',e+='non-surrogate = ((DIGIT / "A"/"B"/"C" / "E"/"F") 3HEXDIG) /\n',e+=' ("D" %x30-37 2HEXDIG )\n',e+='high-surrogate = "D" ("8"/"9"/"A"/"B") 2HEXDIG\n',e+='low-surrogate = "D" ("C"/"D"/"E"/"F") 2HEXDIG\n',e+="\n",e+='HEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.2.1\n",e+='wildcard-selector = "*"\n',e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.3.1\n",e+="index-selector = int ; decimal integer\n",e+="\n",e+='int = "0" /\n',e+=' (["-"] DIGIT1 *DIGIT) ; - optional\n',e+="DIGIT1 = %x31-39 ; 1-9 non-zero digit\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.4.1\n",e+="slice-selector = [start S] colon S [end S] [colon [S step ]] ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="start = int ; included in selection\n",e+="end = int ; not included in selection\n",e+="step = int ; default: 1\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.5.1\n",e+="filter-selector = questionmark S logical-expr ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="logical-expr = logical-or-expr\n",e+="logical-or-expr = logical-and-expr *(S disjunction S logical-and-expr) ; MODIFICATION: surrogate text rule used\n",e+=" ; disjunction\n",e+=" ; binds less tightly than conjunction\n",e+="logical-and-expr = basic-expr *(S conjunction S basic-expr) ; MODIFICATION: surrogate text rule used\n",e+=" ; conjunction\n",e+=" ; binds more tightly than disjunction\n",e+="\n",e+="basic-expr = paren-expr /\n",e+=" comparison-expr /\n",e+=" test-expr\n",e+="\n",e+="paren-expr = [logical-not-op S] left-paren S logical-expr S right-paren ; MODIFICATION: surrogate text rule used\n",e+=" ; parenthesized expression\n",e+='logical-not-op = "!" ; logical NOT operator\n',e+="\n",e+="test-expr = [logical-not-op S]\n",e+=" (filter-query / ; existence/non-existence\n",e+=" function-expr) ; LogicalType or NodesType\n",e+="filter-query = rel-query / jsonpath-query\n",e+="rel-query = current-node-identifier segments\n",e+='current-node-identifier = "@"\n',e+="\n",e+="comparison-expr = comparable S comparison-op S comparable\n",e+="literal = number / string-literal /\n",e+=" true / false / null\n",e+="comparable = singular-query / ; singular query value\n",e+=" function-expr / ; ValueType\n",e+=" literal\n",e+=" ; MODIFICATION: https://www.rfc-editor.org/errata/eid8352\n",e+='comparison-op = "==" / "!=" /\n',e+=' "<=" / ">=" /\n',e+=' "<" / ">"\n',e+="\n",e+="singular-query = rel-singular-query / abs-singular-query\n",e+="rel-singular-query = current-node-identifier singular-query-segments\n",e+="abs-singular-query = root-identifier singular-query-segments\n",e+="singular-query-segments = *(S (name-segment / index-segment))\n",e+="name-segment = (left-bracket name-selector right-bracket) / ; MODIFICATION: surrogate text rule used\n",e+=" (dot-prefix member-name-shorthand) ; MODIFICATION: surrogate text rule used\n",e+="index-segment = left-bracket index-selector right-bracket ; MODIFICATION: surrogate text rule used\n",e+="\n",e+='number = (int / "-0") [ frac ] [ exp ] ; decimal number\n',e+='frac = "." 1*DIGIT ; decimal fraction\n',e+='exp = "e" [ "-" / "+" ] 1*DIGIT ; decimal exponent\n',e+="true = %x74.72.75.65 ; true\n",e+="false = %x66.61.6c.73.65 ; false\n",e+="null = %x6e.75.6c.6c ; null\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.4\n",e+="function-name = function-name-first *function-name-char\n",e+="function-name-first = LCALPHA\n",e+='function-name-char = function-name-first / "_" / DIGIT\n',e+='LCALPHA = %x61-7A ; "a".."z"\n',e+="\n",e+="function-expr = function-name left-paren S [function-argument ; MODIFICATION: surrogate text rule used\n",e+=" *(S comma S function-argument)] S right-paren ; MODIFICATION: surrogate text rule used\n",e+="function-argument = logical-expr / ; MODIFICATION: https://www.rfc-editor.org/errata/eid8343\n",e+=" filter-query / ; (includes singular-query)\n",e+=" function-expr /\n",e+=" literal\n",e+="\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5\n",e+="segment = child-segment / descendant-segment\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.1.1\n",e+="child-segment = bracketed-selection /\n",e+=" (dot-prefix ; MODIFICATION: surrogate text rule used\n",e+=" (wildcard-selector /\n",e+=" member-name-shorthand))\n",e+="\n",e+="bracketed-selection = left-bracket S selector *(S comma S selector) S right-bracket\n",e+=" ; MODIFICATION: surrogate text rule used\n",e+="\n",e+="member-name-shorthand = name-first *name-char\n",e+="name-first = ALPHA /\n",e+=' "_" /\n',e+=" %x80-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="name-char = name-first / DIGIT\n",e+="\n",e+="DIGIT = %x30-39 ; 0-9\n",e+="ALPHA = %x41-5A / %x61-7A ; A-Z / a-z\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.2.1\n",e+="descendant-segment = double-dot-prefix (bracketed-selection / ; MODIFICATION: surrogate text rule used\n",e+=" wildcard-selector /\n",e+=" member-name-shorthand)\n",e+="\n",e+="; https://www.rfc-editor.org/rfc/rfc9535#name-normalized-paths\n",e+="normalized-path = root-identifier *(normal-index-segment)\n",e+="normal-index-segment = left-bracket normal-selector right-bracket ; MODIFICATION: surrogate text rule used\n",e+="normal-selector = normal-name-selector / normal-index-selector\n",e+="normal-name-selector = squote *normal-single-quoted squote ; 'string', MODIFICATION: surrogate text rule used\n",e+="normal-single-quoted = normal-unescaped /\n",e+=" ESC normal-escapable\n",e+="normal-unescaped = ; omit %x0-1F control codes\n",e+=" %x20-26 /\n",e+=" ; omit 0x27 '\n",e+=" %x28-5B /\n",e+=" ; omit 0x5C \\\n",e+=" %x5D-D7FF /\n",e+=" ; skip surrogate code points\n",e+=" %xE000-10FFFF\n",e+="\n",e+="normal-escapable = %x62 / ; b BS backspace U+0008\n",e+=" %x66 / ; f FF form feed U+000C\n",e+=" %x6E / ; n LF line feed U+000A\n",e+=" %x72 / ; r CR carriage return U+000D\n",e+=" %x74 / ; t HT horizontal tab U+0009\n",e+=" \"'\" / ; ' apostrophe U+0027\n",e+=' "\\" / ; \\ backslash (reverse solidus) U+005C\n',e+=" (%x75 normal-hexchar)\n",e+=" ; certain values u00xx U+00XX\n",e+='normal-hexchar = "0" "0"\n',e+=" (\n",e+=' ("0" %x30-37) / ; "00"-"07"\n',e+=" ; omit U+0008-U+000A BS HT LF\n",e+=' ("0" %x62) / ; "0b"\n',e+=" ; omit U+000C-U+000D FF CR\n",e+=' ("0" %x65-66) / ; "0e"-"0f"\n',e+=' ("1" normal-HEXDIG)\n',e+=" )\n",e+='normal-HEXDIG = DIGIT / %x61-66 ; "0"-"9", "a"-"f"\n',e+='normal-index-selector = "0" / (DIGIT1 *DIGIT)\n',e+=" ; non-negative decimal integer\n",e+="\n",e+="; Surrogate named rules\n",e+='dot-prefix = "."\n',e+='double-dot-prefix = ".."\n',e+='left-bracket = "["\n',e+='right-bracket = "]"\n',e+='left-paren = "("\n',e+='right-paren = ")"\n',e+='comma = ","\n',e+='colon = ":"\n',e+='dquote = %x22 ; "\n',e+="squote = %x27 ; '\n",e+='questionmark = "?"\n',e+='disjunction = "||"\n',e+='conjunction = "&&"\n','; JSONPath: Query Expressions for JSON\n; https://www.rfc-editor.org/rfc/rfc9535\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.1.1\njsonpath-query = root-identifier segments\nsegments = *(S segment)\n\nB = %x20 / ; Space\n %x09 / ; Horizontal tab\n %x0A / ; Line feed or New line\n %x0D ; Carriage return\nS = *B ; optional blank space\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.2.1\nroot-identifier = "$"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3\nselector = name-selector /\n wildcard-selector /\n slice-selector /\n index-selector /\n filter-selector\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.1.1\nname-selector = string-literal\n\nstring-literal = dquote *double-quoted dquote / ; "string", MODIFICATION: surrogate text rule used\n squote *single-quoted squote ; \'string\', MODIFICATION: surrogate text rule used\n\ndouble-quoted = unescaped /\n %x27 / ; \'\n ESC %x22 / ; \\"\n ESC escapable\n\nsingle-quoted = unescaped /\n %x22 / ; "\n ESC %x27 / ; \\\'\n ESC escapable\n\nESC = %x5C ; \\ backslash\n\nunescaped = %x20-21 / ; see RFC 8259\n ; omit 0x22 "\n %x23-26 /\n ; omit 0x27 \'\n %x28-5B /\n ; omit 0x5C \\\n %x5D-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\n\nescapable = %x62 / ; b BS backspace U+0008\n %x66 / ; f FF form feed U+000C\n %x6E / ; n LF line feed U+000A\n %x72 / ; r CR carriage return U+000D\n %x74 / ; t HT horizontal tab U+0009\n "/" / ; / slash (solidus) U+002F\n "\\" / ; \\ backslash (reverse solidus) U+005C\n (%x75 hexchar) ; uXXXX U+XXXX\n\nhexchar = non-surrogate /\n (high-surrogate "\\" %x75 low-surrogate)\nnon-surrogate = ((DIGIT / "A"/"B"/"C" / "E"/"F") 3HEXDIG) /\n ("D" %x30-37 2HEXDIG )\nhigh-surrogate = "D" ("8"/"9"/"A"/"B") 2HEXDIG\nlow-surrogate = "D" ("C"/"D"/"E"/"F") 2HEXDIG\n\nHEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.2.1\nwildcard-selector = "*"\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.3.1\nindex-selector = int ; decimal integer\n\nint = "0" /\n (["-"] DIGIT1 *DIGIT) ; - optional\nDIGIT1 = %x31-39 ; 1-9 non-zero digit\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.4.1\nslice-selector = [start S] colon S [end S] [colon [S step ]] ; MODIFICATION: surrogate text rule used\n\nstart = int ; included in selection\nend = int ; not included in selection\nstep = int ; default: 1\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.3.5.1\nfilter-selector = questionmark S logical-expr ; MODIFICATION: surrogate text rule used\n\nlogical-expr = logical-or-expr\nlogical-or-expr = logical-and-expr *(S disjunction S logical-and-expr) ; MODIFICATION: surrogate text rule used\n ; disjunction\n ; binds less tightly than conjunction\nlogical-and-expr = basic-expr *(S conjunction S basic-expr) ; MODIFICATION: surrogate text rule used\n ; conjunction\n ; binds more tightly than disjunction\n\nbasic-expr = paren-expr /\n comparison-expr /\n test-expr\n\nparen-expr = [logical-not-op S] left-paren S logical-expr S right-paren ; MODIFICATION: surrogate text rule used\n ; parenthesized expression\nlogical-not-op = "!" ; logical NOT operator\n\ntest-expr = [logical-not-op S]\n (filter-query / ; existence/non-existence\n function-expr) ; LogicalType or NodesType\nfilter-query = rel-query / jsonpath-query\nrel-query = current-node-identifier segments\ncurrent-node-identifier = "@"\n\ncomparison-expr = comparable S comparison-op S comparable\nliteral = number / string-literal /\n true / false / null\ncomparable = singular-query / ; singular query value\n function-expr / ; ValueType\n literal\n ; MODIFICATION: https://www.rfc-editor.org/errata/eid8352\ncomparison-op = "==" / "!=" /\n "<=" / ">=" /\n "<" / ">"\n\nsingular-query = rel-singular-query / abs-singular-query\nrel-singular-query = current-node-identifier singular-query-segments\nabs-singular-query = root-identifier singular-query-segments\nsingular-query-segments = *(S (name-segment / index-segment))\nname-segment = (left-bracket name-selector right-bracket) / ; MODIFICATION: surrogate text rule used\n (dot-prefix member-name-shorthand) ; MODIFICATION: surrogate text rule used\nindex-segment = left-bracket index-selector right-bracket ; MODIFICATION: surrogate text rule used\n\nnumber = (int / "-0") [ frac ] [ exp ] ; decimal number\nfrac = "." 1*DIGIT ; decimal fraction\nexp = "e" [ "-" / "+" ] 1*DIGIT ; decimal exponent\ntrue = %x74.72.75.65 ; true\nfalse = %x66.61.6c.73.65 ; false\nnull = %x6e.75.6c.6c ; null\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.4\nfunction-name = function-name-first *function-name-char\nfunction-name-first = LCALPHA\nfunction-name-char = function-name-first / "_" / DIGIT\nLCALPHA = %x61-7A ; "a".."z"\n\nfunction-expr = function-name left-paren S [function-argument ; MODIFICATION: surrogate text rule used\n *(S comma S function-argument)] S right-paren ; MODIFICATION: surrogate text rule used\nfunction-argument = logical-expr / ; MODIFICATION: https://www.rfc-editor.org/errata/eid8343\n filter-query / ; (includes singular-query)\n function-expr /\n literal\n\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5\nsegment = child-segment / descendant-segment\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.1.1\nchild-segment = bracketed-selection /\n (dot-prefix ; MODIFICATION: surrogate text rule used\n (wildcard-selector /\n member-name-shorthand))\n\nbracketed-selection = left-bracket S selector *(S comma S selector) S right-bracket\n ; MODIFICATION: surrogate text rule used\n\nmember-name-shorthand = name-first *name-char\nname-first = ALPHA /\n "_" /\n %x80-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\nname-char = name-first / DIGIT\n\nDIGIT = %x30-39 ; 0-9\nALPHA = %x41-5A / %x61-7A ; A-Z / a-z\n\n; https://www.rfc-editor.org/rfc/rfc9535#section-2.5.2.1\ndescendant-segment = double-dot-prefix (bracketed-selection / ; MODIFICATION: surrogate text rule used\n wildcard-selector /\n member-name-shorthand)\n\n; https://www.rfc-editor.org/rfc/rfc9535#name-normalized-paths\nnormalized-path = root-identifier *(normal-index-segment)\nnormal-index-segment = left-bracket normal-selector right-bracket ; MODIFICATION: surrogate text rule used\nnormal-selector = normal-name-selector / normal-index-selector\nnormal-name-selector = squote *normal-single-quoted squote ; \'string\', MODIFICATION: surrogate text rule used\nnormal-single-quoted = normal-unescaped /\n ESC normal-escapable\nnormal-unescaped = ; omit %x0-1F control codes\n %x20-26 /\n ; omit 0x27 \'\n %x28-5B /\n ; omit 0x5C \\\n %x5D-D7FF /\n ; skip surrogate code points\n %xE000-10FFFF\n\nnormal-escapable = %x62 / ; b BS backspace U+0008\n %x66 / ; f FF form feed U+000C\n %x6E / ; n LF line feed U+000A\n %x72 / ; r CR carriage return U+000D\n %x74 / ; t HT horizontal tab U+0009\n "\'" / ; \' apostrophe U+0027\n "\\" / ; \\ backslash (reverse solidus) U+005C\n (%x75 normal-hexchar)\n ; certain values u00xx U+00XX\nnormal-hexchar = "0" "0"\n (\n ("0" %x30-37) / ; "00"-"07"\n ; omit U+0008-U+000A BS HT LF\n ("0" %x62) / ; "0b"\n ; omit U+000C-U+000D FF CR\n ("0" %x65-66) / ; "0e"-"0f"\n ("1" normal-HEXDIG)\n )\nnormal-HEXDIG = DIGIT / %x61-66 ; "0"-"9", "a"-"f"\nnormal-index-selector = "0" / (DIGIT1 *DIGIT)\n ; non-negative decimal integer\n\n; Surrogate named rules\ndot-prefix = "."\ndouble-dot-prefix = ".."\nleft-bracket = "["\nright-bracket = "]"\nleft-paren = "("\nright-paren = ")"\ncomma = ","\ncolon = ":"\ndquote = %x22 ; "\nsquote = %x27 ; \'\nquestionmark = "?"\ndisjunction = "||"\nconjunction = "&&"\n'}};const mn=class extends pn{},_n=e=>{if(!Array.isArray(e))throw new mn("Selectors must be an array, got: "+typeof e,{selectors:e});try{return`$${e.map(e=>{if("string"==typeof e)return`['${(e=>{if("string"!=typeof e)throw new TypeError("Selector must be a string");let t="";for(const s of e){const e=s.codePointAt(0);switch(e){case 8:t+="\\b";break;case 9:t+="\\t";break;case 10:t+="\\n";break;case 12:t+="\\f";break;case 13:t+="\\r";break;case 39:t+="\\'";break;case 92:t+="\\\\";break;default:t+=e<=31?`\\u${e.toString(16).padStart(4,"0")}`:s}}return t})(e)}']`;if("number"==typeof e){if(!Number.isSafeInteger(e)||e<0)throw new TypeError(`Index selector must be a non-negative safe integer, got: ${e}`);return`[${e}]`}throw new TypeError("Selector must be a string or non-negative integer, got: "+typeof e)}).join("")}`}catch(t){throw new mn("Failed to compile normalized JSONPath",{cause:t,selectors:e})}},gn=(e,t,s,n)=>{const{realm:r}=e,{value:i}=s;if(r.isObject(t)&&r.hasProperty(t,i)){n(r.getProperty(t,i),i)}},fn=(e,t,s,n)=>{const{realm:r}=e,{value:i}=s;if(!r.isArray(t))return;const o=r.getLength(t),a=((e,t)=>e>=0?e:t+e)(i,o);if(a>=0&&a<o){n(r.getElement(t,a),a)}},yn=(e,t,s,n)=>{const{realm:r}=e;for(const[e,s]of r.entries(t))n(s,e)},bn=(e,t)=>e>=0?Math.min(e,t):Math.max(t+e,0),xn=(e,t,s,n)=>{const{realm:r}=e,{start:i,end:o,step:a}=s;if(!r.isArray(t))return;const c=((e,t,s,n)=>{const r=s??1;if(0===r)return null;let i,o;if(r>0){const s=0,r=n,a=null!==e?bn(e,n):s,c=null!==t?bn(t,n):r;i=Math.max(a,0),o=Math.min(c,n)}else{const s=n-1,r=-n-1,a=null!==e?e>=0?Math.min(e,n-1):Math.max(n+e,-1):s,c=null!==t?t>=0?Math.min(t,n-1):Math.max(n+t,-1):r;o=Math.min(a,n-1),i=Math.max(c,-1)}return{lower:i,upper:o,step:r}})(i,o,a,r.getLength(t));if(null===c)return;const{lower:l,upper:u,step:d}=c;if(d>0)for(let e=l;e<u;e+=d){n(r.getElement(t,e),e)}else for(let e=u;e>l;e+=d){n(r.getElement(t,e),e)}},vn=(e,t,s,n)=>n.value,wn=(e,t,s)=>{const{realm:n}=e,{selector:r}=s;switch(r.type){case"NameSelector":{const{value:e}=r;return n.isObject(t)&&n.hasProperty(t,e)?n.getProperty(t,e):void 0}case"IndexSelector":{const{value:e}=r;if(!n.isArray(t))return;const s=n.getLength(t),i=e>=0?e:s+e;return i>=0&&i<s?n.getElement(t,i):void 0}default:return}},En=(e,t,s,n)=>{const{selectors:r}=s;for(const s of r)kn(e,t,s,n)},Sn=(e,t,s)=>{const n=[],r=e=>{n.push(e)},{selector:i}=s;switch(i.type){case"BracketedSelection":En(e,t,i,r);break;case"NameSelector":case"WildcardSelector":case"IndexSelector":case"SliceSelector":case"FilterSelector":kn(e,t,i,r)}return n},On=(e,t,s,n)=>{let r=s;for(const t of n){const s=[];if("DescendantSegment"===t.type){const n=r=>{const{realm:i}=e,o=Sn(e,r,t);s.push(...o);for(const[,e]of i.entries(r))n(e)};for(const e of r)n(e)}else for(const n of r){const r=Sn(e,n,t);s.push(...r)}r=s}return r},An=(e,t,s,n)=>{const{query:r}=n;let i;switch(r.type){case"RelQuery":i=((e,t,s,n)=>{const{segments:r}=n;return 0===r.length?[s]:On(e,0,[s],r)})(e,0,s,r);break;case"JsonPathQuery":i=((e,t,s,n)=>{const{segments:r}=n;return 0===r.length?[t]:On(e,0,[t],r)})(e,t,0,r);break;default:i=[]}return o=i,Object.defineProperty(o,"_isNodelist",{value:!0,enumerable:!1,writable:!1}),o;var o};let Cn;const In=(e,t,s,n)=>{const{name:r,arguments:i}=n,o=e.functions[r];if("function"!=typeof o)return;const a=i.map(n=>((e,t,s,n)=>{switch(n.type){case"Literal":case"RelSingularQuery":case"AbsSingularQuery":case"FunctionExpr":return Tn(e,t,s,n);case"FilterQuery":return An(e,t,s,n);case"TestExpr":return"FilterQuery"===n.expression.type?An(e,t,s,n.expression):"FunctionExpr"===n.expression.type?Tn(e,t,s,n.expression):Cn(e,t,s,n);case"LogicalOrExpr":case"LogicalAndExpr":case"LogicalNotExpr":case"ComparisonExpr":return Cn(e,t,s,n);default:return}})(e,t,s,n));return o(e.realm,...a)},Tn=(e,t,s,n)=>{switch(n.type){case"Literal":return vn(e,t,s,n);case"RelSingularQuery":return((e,t,s,n)=>{let r=s;for(const t of n.segments)if(r=wn(e,r,t),void 0===r)return;return r})(e,0,s,n);case"AbsSingularQuery":return((e,t,s,n)=>{let r=t;for(const t of n.segments)if(r=wn(e,r,t),void 0===r)return;return r})(e,t,0,n);case"FunctionExpr":return In(e,t,s,n);default:return}},Pn=(e,t,s,n)=>{const{left:r,op:i,right:o}=n,a=Tn(e,t,s,r),c=Tn(e,t,s,o);return e.realm.compare(a,i,c)},Fn=e=>Array.isArray(e),Mn=(e,t,s,n)=>{switch(n.type){case"LogicalOrExpr":return!!Mn(e,t,s,n.left)||Mn(e,t,s,n.right);case"LogicalAndExpr":return!!Mn(e,t,s,n.left)&&Mn(e,t,s,n.right);case"LogicalNotExpr":return!Mn(e,t,s,n.expression);case"TestExpr":{const{expression:r}=n;if("FilterQuery"===r.type){return An(e,t,s,r).length>0}if("FunctionExpr"===r.type){const n=In(e,t,s,r);return"boolean"==typeof n?n:void 0!==n&&(Fn(n)?n.length>0:Boolean(n))}return!1}case"ComparisonExpr":return Pn(e,t,s,n);default:return!1}};Cn=Mn;const Bn=Mn,jn=(e,t,s,n)=>{const{realm:r,root:i}=e,{expression:o}=s;for(const[s,a]of r.entries(t)){Bn(e,i,a,o)&&n(a,s)}},kn=(e,t,s,n)=>{switch(s.type){case"NameSelector":gn(e,t,s,n);break;case"IndexSelector":fn(e,t,s,n);break;case"WildcardSelector":yn(e,t,s,n);break;case"SliceSelector":xn(e,t,s,n);break;case"FilterSelector":jn(e,t,s,n)}};new Map;class Nn{node;key;index;parent;parentPath;inList;#e=!1;#t=!1;#s=!1;#n=!1;#r;#i=!1;constructor(e,t,s,n,r){this.node=e,this.parent=t,this.parentPath=s,this.key=n,this.index=r&&"number"==typeof n?n:void 0,this.inList=r}get shouldSkip(){return this.#e}get shouldStop(){return this.#t}get removed(){return this.#s}isRoot(){return null===this.parentPath}get depth(){let e=0,t=this.parentPath;for(;null!==t;)e+=1,t=t.parentPath;return e}getAncestry(){const e=[];let t=this.parentPath;for(;null!==t;)e.push(t),t=t.parentPath;return e}getAncestorNodes(){return this.getAncestry().map(e=>e.node)}getPathKeys(){const e=[];let t=this;for(;null!==t&&void 0!==t.key;){const{key:s,parent:n,parentPath:r}=t;if(nt(n)&&"value"===s){if(!Qe(n.key))throw new TypeError("MemberElement.key must be a StringElement");e.unshift(n.key.toValue())}else tt(r?.node)&&"number"==typeof s&&e.unshift(s);t=t.parentPath}return e}formatPath(e="jsonpointer"){const t=this.getPathKeys();return 0===t.length?"jsonpath"===e?"$":"":"jsonpath"===e?_n(t):dn(t)}findParent(e){let t=this.parentPath;for(;null!==t;){if(e(t))return t;t=t.parentPath}return null}find(e){return e(this)?this:this.findParent(e)}skip(){this.#e=!0}stop(){this.#t=!0}replaceWith(e){this.#i&&console.warn("Warning: replaceWith() called on a stale Path. This path belongs to a node whose visit has already completed. The replacement will have no effect. To replace a parent node, do so from the parent's own visitor."),this.#n=!0,this.#r=e,this.node=e}remove(){this.#i&&console.warn("Warning: remove() called on a stale Path. This path belongs to a node whose visit has already completed. The removal will have no effect. To remove a parent node, do so from the parent's own visitor."),this.#s=!0}_getReplacementNode(){return this.#r}_wasReplaced(){return this.#n}_reset(){this.#e=!1,this.#t=!1,this.#s=!1,this.#n=!1,this.#r=void 0}_markStale(){this.#i=!0}}const Rn=r(function(e,t){return e||t});const qn=M(1,As(Is,r(function(e,t){return Ss(e)?function(){return e.apply(this,arguments)||t.apply(this,arguments)}:J(Rn)(e,t)})(Ps,Rs)));const $n=M(1,As(qn,cs(ws,se("[object Promise]")))),Dn=e=>{const t=e?.element;return void 0===t||"element"===t?"Element":`${t.charAt(0).toUpperCase()}${t.slice(1)}Element`},Vn=e=>Xe(e),Ln=e=>yt(e),Un=(e,t,s)=>{nt(e)?e.value=s:Array.isArray(e)?e[t]=null===s?void 0:s:null===s?delete e[t]:e[t]=s},Hn=e=>nt(e)?["key","value"]:tt(e)||st(e)?["content"]:[],Wn=(e,t)=>{if(void 0!==e[t])return e[t];const s=t.length;for(const n in e){if(!n.includes("|"))continue;const r=n.indexOf(t);if(-1===r)continue;const i=0===r||"|"===n[r-1],o=r+s===n.length||"|"===n[r+s];if(i&&o)return e[n]}},Gn=(e,t,s)=>{if(void 0===t)return null;const n=e,r=s?"leave":"enter",i=Wn(n,t);if(!s&&"function"==typeof i)return i;if(null!=i){const e=i[r];if("function"==typeof e)return e}const o=n[r];if("function"==typeof o)return o;if(null!=o){const e=Wn(o,t);if("function"==typeof e)return e}return null},Zn=(e,t={})=>{const{visitFnGetter:s=Gn,nodeTypeGetter:n=Dn,exposeEdits:r=!1}=t,i=Symbol("internal-skip"),o=Symbol("break"),a=new Array(e.length).fill(i);return{enter(t){let c=t.node,l=!1;for(let u=0;u<e.length;u+=1)if(a[u]===i){const i=s(e[u],n(c),!1);if("function"==typeof i){const s=zn(t,c),n=i.call(e[u],s);if($n(n))throw new lt("Async visitor not supported in sync mode",{visitor:e[u],visitFn:i});if(s.shouldStop&&(a[u]=o),s.shouldSkip&&(a[u]=c),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();if(!r)return t.replaceWith(e),e;c=e,l=!0}else if(void 0!==n){if(!r)return t.replaceWith(n),n;c=n,l=!0}}}if(a.every(e=>e===o)&&t.stop(),l)return t.replaceWith(c),c},leave(t){const r=t.node;for(let c=0;c<e.length;c+=1)if(a[c]===i){const i=s(e[c],n(r),!0);if("function"==typeof i){const s=zn(t,r),n=i.call(e[c],s);if($n(n))throw new lt("Async visitor not supported in sync mode",{visitor:e[c],visitFn:i});if(s.shouldStop&&(a[c]=o),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();return t.replaceWith(e),e}if(void 0!==n)return t.replaceWith(n),n}}else a[c]===r&&(a[c]=i);a.every(e=>e===o)&&t.stop()}}},Jn=(e,t={})=>{const{visitFnGetter:s=Gn,nodeTypeGetter:n=Dn,exposeEdits:r=!1}=t,i=Symbol("internal-skip"),o=Symbol("break"),a=new Array(e.length).fill(i);return{async enter(t){let c=t.node,l=!1;for(let u=0;u<e.length;u+=1)if(a[u]===i){const i=s(e[u],n(c),!1);if("function"==typeof i){const s=zn(t,c),n=await i.call(e[u],s);if(s.shouldStop&&(a[u]=o),s.shouldSkip&&(a[u]=c),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();if(!r)return t.replaceWith(e),e;c=e,l=!0}else if(void 0!==n){if(!r)return t.replaceWith(n),n;c=n,l=!0}}}if(a.every(e=>e===o)&&t.stop(),l)return t.replaceWith(c),c},async leave(t){const r=t.node;for(let c=0;c<e.length;c+=1)if(a[c]===i){const i=s(e[c],n(r),!0);if("function"==typeof i){const s=zn(t,r),n=await i.call(e[c],s);if(s.shouldStop&&(a[c]=o),s.removed)return void t.remove();if(s._wasReplaced()){const e=s._getReplacementNode();return t.replaceWith(e),e}if(void 0!==n)return t.replaceWith(n),n}}else a[c]===r&&(a[c]=i);a.every(e=>e===o)&&t.stop()}}};function zn(e,t){return new Nn(t,e.parent,e.parentPath,e.key,e.inList)}function*Xn(e,t,s){const{keyMap:n,state:r,nodeTypeGetter:i,nodePredicate:o,nodeCloneFn:a,detectCycles:c,mutable:l,mutationFn:u}=s,d="function"==typeof n;let h,p,m=Array.isArray(e),_=[e],g=-1,f=[],y=e,b=null,x=null;const v=[];do{g+=1;const e=g===_.length;let s;const w=e&&0!==f.length;if(e){if(s=0===v.length?void 0:b?.key,y=p,p=v.pop(),x=b?.parentPath?.parentPath??null,w)if(l)for(const[e,t]of f)u(y,e,t);else if(m){y=y.slice();let e=0;for(const[t,s]of f){const n=t-e;null===s?(y.splice(n,1),e+=1):y[n]=s}}else{y=a(y);for(const[e,t]of f)y[e]=t}if(void 0!==h){g=h.index,_=h.keys,f=h.edits;const e=h.inArray;if(x=h.parentPath,h=h.prev,w&&!l){const t=e?g:_[g];f.push([t,y])}m=e}}else if(void 0!==p&&(s=m?g:_[g],y=p[s],void 0===y))continue;if(!Array.isArray(y)){if(!o(y))throw new lt(`Invalid AST Node: ${String(y)}`,{node:y});if(c&&v.includes(y))continue;b=new Nn(y,p,x,s,m);const n=Gn(t,i(y),e);if(n){for(const[e,s]of Object.entries(r))t[e]=s;const i=yield{visitFn:n,path:b,isLeaving:e};if(b.shouldStop)break;if(b.shouldSkip&&!e)continue;if(b.removed){if(f.push([s,null]),!e)continue}else if(b._wasReplaced()){const t=b._getReplacementNode();if(f.push([s,t]),!e){if(!o(t))continue;y=t}}else if(void 0!==i&&(f.push([s,i]),!e)){if(!o(i))continue;y=i}b._markStale()}}if(!e){if(h={inArray:m,index:g,keys:_,edits:f,parentPath:x,prev:h},m=Array.isArray(y),m)_=y;else if(d)_=n(y);else{const e=i(y);_=void 0!==e?n[e]??[]:[]}g=-1,f=[],void 0!==p&&v.push(p),p=y,x=b}}while(void 0!==h);return 0!==f.length?f.at(-1)[1]:e}Zn[Symbol.for("nodejs.util.promisify.custom")]=Jn;const Qn=(e,t,s={})=>{const n=Xn(e,t,{keyMap:s.keyMap??Hn,state:s.state??{},nodeTypeGetter:s.nodeTypeGetter??Dn,nodePredicate:s.nodePredicate??Vn,nodeCloneFn:s.nodeCloneFn??Ln,detectCycles:s.detectCycles??!0,mutable:s.mutable??!1,mutationFn:s.mutationFn??Un});let r=n.next();for(;!r.done;){const e=r.value,s=e.visitFn.call(t,e.path);if($n(s))throw new lt("Async visitor not supported in sync mode",{visitor:t,visitFn:e.visitFn});r=n.next(s)}return r.value},Kn=async(e,t,s={})=>{const n=Xn(e,t,{keyMap:s.keyMap??Hn,state:s.state??{},nodeTypeGetter:s.nodeTypeGetter??Dn,nodePredicate:s.nodePredicate??Vn,nodeCloneFn:s.nodeCloneFn??Ln,detectCycles:s.detectCycles??!0,mutable:s.mutable??!1,mutationFn:s.mutationFn??Un});let r=n.next();for(;!r.done;){const e=r.value,s=await e.visitFn.call(t,e.path);r=n.next(s)}return r.value};Qn[Symbol.for("nodejs.util.promisify.custom")]=Kn,Nn.prototype.traverse=function(e,t){return Qn(this.node,e,t)},Nn.prototype.traverseAsync=function(e,t){return Kn(this.node,e,t)};var Yn=i(function(e,t,s){var n,r={};for(n in s=s||{},t=t||{})B(n,t)&&(r[n]=B(n,s)?e(n,t[n],s[n]):t[n]);for(n in s)B(n,s)&&!B(n,r)&&(r[n]=s[n]);return r});const er=Yn;var tr=i(function e(t,s,n){return er(function(s,n,r){return _s(n)&&_s(r)?e(t,n,r):t(s,n,r)},s,n)});const sr=tr;const nr=r(function(e,t){return sr(function(e,t,s){return s},e,t)});const rr=os(0,-1);var ir=r(function(e,t){return e.apply(this,t)});const or=ir;const ar=z(Rs);var cr=n(function(e){return null!=e&&"function"==typeof e["fantasy-land/empty"]?e["fantasy-land/empty"]():null!=e&&null!=e.constructor&&"function"==typeof e.constructor["fantasy-land/empty"]?e.constructor["fantasy-land/empty"]():null!=e&&"function"==typeof e.empty?e.empty():null!=e&&null!=e.constructor&&"function"==typeof e.constructor.empty?e.constructor.empty():e==Set||e instanceof Set?new Set:e==Map||e instanceof Map?new Map:_(e)?[]:g(e)?"":_s(e)?{}:k(e)?function(){return arguments}():function(e){var t=Object.prototype.toString.call(e);return"[object Uint8ClampedArray]"===t||"[object Int8Array]"===t||"[object Uint8Array]"===t||"[object Int16Array]"===t||"[object Uint16Array]"===t||"[object Int32Array]"===t||"[object Uint32Array]"===t||"[object Float32Array]"===t||"[object Float64Array]"===t||"[object BigInt64Array]"===t||"[object BigUint64Array]"===t}(e)?e.constructor.from(""):void 0});const lr=cr;const ur=n(function(e){return null!=e&&se(e,lr(e))});const dr=M(1,Rs(Array.isArray)?Array.isArray:cs(Y,us("Array")));const hr=As(dr,ur);const pr=M(3,function(e,t,s){var n=zt(e,s),r=zt(rr(e),s);if(!ar(n)&&!hr(e)){var i=Yt(n,r);return or(i,t)}});const mr=class extends be{constructor(e,t,s){super(e,t,s),this.element="comment"}},_r=e=>e instanceof Re,gr=e=>e instanceof Ne,fr=new He,yr={isElement:Xe,isStringElement:Qe,isNumberElement:Ke,isNullElement:Ye,isBooleanElement:et,isArrayElement:tt,isObjectElement:st,isMemberElement:nt,isPrimitiveElement:rt,isLinkElement:_r,isRefElement:gr,isAnnotationElement:e=>e instanceof Ct,isCommentElement:e=>e instanceof mr,isParseResultElement:e=>e instanceof ct,isSourceMapElement:e=>e instanceof Se,hasElementStyle:it,hasElementSourceMap:ot,includesSymbols:(e,t)=>{if(0===t.length)return!0;if(!e.hasAttributesProperty("symbols"))return!1;const s=e.attributes.get("symbols");return!!tt(s)&&t.every(e=>s.includes(e))},includesClasses:at},br={toolboxCreator:()=>({predicates:yr,namespace:fr}),visitorOptions:{exposeEdits:!0}},xr=(e,t,s={})=>{if(0===t.length)return e;const n=nr(br,s),{toolboxCreator:r,visitorOptions:i}=n,o=r(),a=t.map(e=>e(o)),c=Zn(a.map(d({},"visitor")),i);a.forEach(pr(["pre"],[]));const l=Qn(e,c);return a.forEach(pr(["post"],[])),l};xr[Symbol.for("nodejs.util.promisify.custom")]=async(e,t,s={})=>{if(0===t.length)return e;const n=nr(br,s),{toolboxCreator:r,visitorOptions:i}=n,o=r(),a=t.map(e=>e(o)),c=Jn(a.map(d({},"visitor")),i);await Promise.allSettled(a.map(pr(["pre"],[])));const l=await Kn(e,c);return await Promise.allSettled(a.map(pr(["post"],[]))),l};var vr=i(function e(t,s,n){if(0===t.length)return s;var r=t[0];if(t.length>1){var i=l(r,n);(Lt(i)||"object"!=typeof i)&&(i=a(t[1])?[]:{}),s=e(Array.prototype.slice.call(t,1),s,i)}return function(e,t,s){if(a(e)&&_(s)){var n=e<0?s.length+e:e,r=[].concat(s);return r[n]=t,r}var i={};for(var o in s)i[o]=s[o];return i[e]=t,i}(r,s,n)});const wr=vr;const Er=i(function(e,t,s){var n=Array.prototype.slice.call(s,0);return n.splice(e,t),n});var Sr=i(function(e,t,s){return wr([e],t,s)});const Or=Sr;var Ar=r(function e(t,s){if(null==s)return s;switch(t.length){case 0:return s;case 1:return function(e,t){if(null==t)return t;if(a(e)&&_(t))return Er(e,1,t);var s={};for(var n in t)s[n]=t[n];return delete s[e],s}(t[0],s);default:var n=t[0],r=Array.prototype.slice.call(t,1);return null==s[n]?function(e,t){if(a(e)&&_(t))return[].concat(t);var s={};for(var n in t)s[n]=t[n];return s}(n,s):Or(n,e(r,s[n]),s)}});const Cr=Ar,Ir=e=>{if(!Xe(e))return e;if(Qe(e)||Ke(e)||et(e)||Ye(e))return e.toValue();const t=new WeakMap,s=e=>{if(!Xe(e))return e;if(st(e)){if(t.has(e))return t.get(e);const n={};return t.set(e,n),e.forEach((e,t)=>{const r=s(t),i=s(e);"string"==typeof r&&(n[r]=i)}),n}if(tt(e)){if(t.has(e))return t.get(e);const n=[];return t.set(e,n),e.forEach(e=>n.push(s(e))),n}return gr(e)?String(e.toValue()):_r(e)?Qe(e.href)?e.href.toValue():"":e.toValue()};return s(e)},Tr=e=>{const t=e.isMetaEmpty?void 0:e.meta.cloneDeep(),s=e.isAttributesEmpty?void 0:_t(e.attributes);return new e.constructor(void 0,t,s)},Pr=(e,t)=>t.clone&&t.isMergeableElement(e)?Mr(Tr(e),e,t):e,Fr={clone:!0,isMergeableElement:e=>st(e)||tt(e),arrayElementMerge:(e,t,s)=>new(0,e.constructor)(e.concat(t).map(e=>Pr(e,s))),objectElementMerge:(e,t,s)=>{const n=st(e)?Tr(e):Tr(t);return st(e)&&e.forEach((e,t,r)=>{const i=yt(r);i.value=Pr(e,s),n.content.push(i)}),t.forEach((t,r,i)=>{const o=Ir(r);let a;if(st(e)&&e.hasKey(o)&&s.isMergeableElement(t)){const n=e.get(o);a=yt(i),a.value=((e,t)=>{if("function"!=typeof t.customMerge)return Mr;const s=t.customMerge(e,t);return"function"==typeof s?s:Mr})(r,s)(n,t,s)}else a=yt(i),a.value=Pr(t,s);n.remove(o),n.content.push(a)}),n},customMerge:void 0,customMetaMerge:void 0,customAttributesMerge:void 0},Mr=(e,t,s)=>{const n={...Fr,...s};n.isMergeableElement=n.isMergeableElement??Fr.isMergeableElement,n.arrayElementMerge=n.arrayElementMerge??Fr.arrayElementMerge,n.objectElementMerge=n.objectElementMerge??Fr.objectElementMerge;const r=tt(t);if(!(r===tt(e)))return Pr(t,n);const i=r&&"function"==typeof n.arrayElementMerge?n.arrayElementMerge(e,t,n):n.objectElementMerge(e,t,n);return e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty?t.isMetaEmpty||(i.meta=t.meta.cloneDeep()):i.meta=e.meta.cloneDeep():i.meta=(e=>"function"!=typeof e.customMetaMerge?e=>e.cloneDeep():e.customMetaMerge)(n)(e.meta,t.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty?t.isAttributesEmpty||(i.attributes=_t(t.attributes)):i.attributes=_t(e.attributes):i.attributes=(e=>"function"!=typeof e.customAttributesMerge?e=>_t(e):e.customAttributesMerge)(n)(e.attributes,t.attributes),i};Mr.all=(e,t)=>{if(!Array.isArray(e))throw new TypeError("First argument of deepmerge should be an array.");return 0===e.length?new Ie:e.reduce((e,s)=>Mr(e,s,t),Tr(e[0]))};const Br=Mr;const jr=class{element;consume=!1;consumeSafe=!1;constructor(e){Object.assign(this,e)}copyMetaAndAttributes(e,t){e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty||(t.meta=e.meta.cloneDeep()):t.meta=t.meta.merge(e.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty||(t.attributes=_t(e.attributes)):t.attributes=Br(t.attributes,e.attributes),Se.transfer(e,t),Pe.transfer(e,t)}};const kr=class extends jr{enter(e){this.element=this.consume?e.node:_t(e.node),e.stop()}};const Nr=n(function(e){return M(rs(Ms,0,Bs("length",e)),function(){for(var t=0,s=e.length;t<s;){if(!e[t].apply(this,arguments))return!1;t+=1}return!0})});const Rr=n(function(e){return!ur(e)});var qr=z(qn);const $r=Nr([Ls,qr,Rr]);const Dr=r(function(e,t){for(var s={},n=0;n<e.length;)e[n]in t&&(s[e[n]]=t[e[n]]),n+=1;return s});const Vr=class extends jr{specObj;passingOptionsNames=["specObj","parent","consume"];constructor({specObj:e,...t}){super({...t}),this.specObj=e}retrievePassingOptions(){return Dr(this.passingOptionsNames,this)}retrieveFixedFields(e){const t=zt(["visitors",...e,"fixedFields"],this.specObj);return"object"==typeof t&&null!==t?Object.keys(t):[]}retrieveVisitor(e){return Es(Rs,["visitors",...e],this.specObj)?zt(["visitors",...e],this.specObj):zt(["visitors",...e,"$visitor"],this.specObj)}retrieveVisitorInstance(e,t={}){const s=this.retrievePassingOptions();return new(this.retrieveVisitor(e))({...s,...t})}toRefractedElement(e,t,s={}){const n=this.retrieveVisitorInstance(e,s);return n instanceof kr&&n?.constructor===kr?this.consume?t:_t(t):(Qn(t,n,s),n.element)}};const Lr=class extends Vr{specPath;ignoredFields;constructor({specPath:e,ignoredFields:t,...s}){super({...s}),this.specPath=e,this.ignoredFields=t||[]}ObjectElement(e){const t=e.node,s=this.specPath(t),n=this.retrieveFixedFields(s);t.forEach((e,t,r)=>{const i=Ir(t);if(Qe(t)&&n.includes(i)&&!this.ignoredFields.includes(i)){const n=this.toRefractedElement([...s,"fixedFields",i],e),o=new Ce(this.consume?t:_t(t),n);this.copyMetaAndAttributes(r,o),this.element.content.push(o),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else this.ignoredFields.includes(i)||this.element.content.push(this.consume?r:_t(r))}),this.copyMetaAndAttributes(t,this.element),e.stop()}},Ur=(e,t,s=[])=>{const n=Object.getOwnPropertyDescriptors(t);for(let e of s)delete n[e];Object.defineProperties(e,n)},Hr=(e,t=[e])=>{const s=Object.getPrototypeOf(e);return null===s?t:Hr(s,[...t,s])},Wr=(e,t,s=[])=>{var n;const r=null!==(n=((...e)=>{if(0===e.length)return;let t;const s=e.map(e=>Hr(e));for(;s.every(e=>e.length>0);){const e=s.map(e=>e.pop()),n=e[0];if(!e.every(e=>e===n))break;t=n}return t})(...e))&&void 0!==n?n:Object.prototype,i=Object.create(r),o=Hr(r);for(let t of e){let e=Hr(t);for(let t=e.length-1;t>=0;t--){let n=e[t];-1===o.indexOf(n)&&(Ur(i,n,["constructor",...s]),o.push(n))}}return i.constructor=t,i},Gr=e=>e.filter((t,s)=>e.indexOf(t)==s),Zr=(e,t)=>{const s=t.map(e=>Hr(e));let n=0,r=!0;for(;r;){r=!1;for(let i=t.length-1;i>=0;i--){const t=s[i][n];if(null!=t&&(r=!0,null!=Object.getOwnPropertyDescriptor(t,e)))return s[i][0]}n++}},Jr=(e,t=Object.prototype)=>new Proxy({},{getPrototypeOf:()=>t,setPrototypeOf(){throw Error("Cannot set prototype of Proxies created by ts-mixer")},getOwnPropertyDescriptor:(t,s)=>Object.getOwnPropertyDescriptor(Zr(s,e)||{},s),defineProperty(){throw new Error("Cannot define new properties on Proxies created by ts-mixer")},has:(s,n)=>void 0!==Zr(n,e)||void 0!==t[n],get:(s,n)=>(Zr(n,e)||t)[n],set(t,s,n){const r=Zr(s,e);if(void 0===r)throw new Error("Cannot set new properties on Proxies created by ts-mixer");return r[s]=n,!0},deleteProperty(){throw new Error("Cannot delete properties on Proxies created by ts-mixer")},ownKeys:()=>e.map(Object.getOwnPropertyNames).reduce((e,t)=>t.concat(e.filter(e=>t.indexOf(e)<0)))}),zr=null,Xr="copy",Qr="copy",Kr="deep",Yr=new WeakMap,ei=e=>Yr.get(e),ti=(e,t)=>{var s,n;const r=Gr([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)]),i={};for(let o of r)i[o]=Gr([...null!==(s=null==e?void 0:e[o])&&void 0!==s?s:[],...null!==(n=null==t?void 0:t[o])&&void 0!==n?n:[]]);return i},si=(e,t)=>{var s,n,r,i;return{property:ti(null!==(s=null==e?void 0:e.property)&&void 0!==s?s:{},null!==(n=null==t?void 0:t.property)&&void 0!==n?n:{}),method:ti(null!==(r=null==e?void 0:e.method)&&void 0!==r?r:{},null!==(i=null==t?void 0:t.method)&&void 0!==i?i:{})}},ni=(e,t)=>{var s,n,r,i,o,a;return{class:Gr([...null!==(s=null==e?void 0:e.class)&&void 0!==s?s:[],...null!==(n=null==t?void 0:t.class)&&void 0!==n?n:[]]),static:si(null!==(r=null==e?void 0:e.static)&&void 0!==r?r:{},null!==(i=null==t?void 0:t.static)&&void 0!==i?i:{}),instance:si(null!==(o=null==e?void 0:e.instance)&&void 0!==o?o:{},null!==(a=null==t?void 0:t.instance)&&void 0!==a?a:{})}},ri=new Map,ii=(...e)=>{const t=((...e)=>{var t;const s=new Set,n=new Set([...e]);for(;n.size>0;)for(let e of n){const r=[...Hr(e.prototype).map(e=>e.constructor),...null!==(t=ei(e))&&void 0!==t?t:[]].filter(e=>!s.has(e));for(let e of r)n.add(e);s.add(e),n.delete(e)}return[...s]})(...e).map(e=>ri.get(e)).filter(e=>!!e);return 0==t.length?{}:1==t.length?t[0]:t.reduce((e,t)=>ni(e,t))},oi=e=>{let t=ri.get(e);return t||(t={},ri.set(e,t)),t};function ai(...e){var t,s,n;const r=e.map(e=>e.prototype),i=zr;if(null!==i){const e=r.map(e=>e[i]).filter(e=>"function"==typeof e),t=function(...t){for(let s of e)s.apply(this,t)},s={[i]:t};r.push(s)}function o(...t){for(const s of e)Ur(this,new s(...t));null!==i&&"function"==typeof this[i]&&this[i].apply(this,t)}var a,c;o.prototype="copy"===Qr?Wr(r,o):(a=r,c=o,Jr([...a,{constructor:c}])),Object.setPrototypeOf(o,"copy"===Xr?Wr(e,null,["prototype"]):Jr(e,Function.prototype));let l=o;if("none"!==Kr){const r="deep"===Kr?ii(...e):((...e)=>{const t=e.map(e=>oi(e));return 0===t.length?{}:1===t.length?t[0]:t.reduce((e,t)=>ni(e,t))})(...e);for(let e of null!==(t=null==r?void 0:r.class)&&void 0!==t?t:[]){const t=e(l);t&&(l=t)}ci(null!==(s=null==r?void 0:r.static)&&void 0!==s?s:{},l),ci(null!==(n=null==r?void 0:r.instance)&&void 0!==n?n:{},l.prototype)}var u,d;return u=l,d=e,Yr.set(u,d),l}const ci=(e,t)=>{const s=e.property,n=e.method;if(s)for(let e in s)for(let n of s[e])n(t,e);if(n)for(let e in n)for(let s of n[e])s(t,e,Object.getOwnPropertyDescriptor(t,e))};const li=function(){return!1};const ui=class extends Vr{specPath;ignoredFields;fieldPatternPredicate=li;constructor({specPath:e,ignoredFields:t,fieldPatternPredicate:s,...n}){super({...n}),this.specPath=e,this.ignoredFields=t||[],"function"==typeof s&&(this.fieldPatternPredicate=s)}ObjectElement(e){const t=e.node;t.forEach((e,t,s)=>{const n=Ir(t);if(!this.ignoredFields.includes(n)&&this.fieldPatternPredicate(n)){const n=this.specPath(e),r=this.toRefractedElement(n,e),i=new Ce(this.consume?t:_t(t),r);this.copyMetaAndAttributes(s,i),i.classes.push("patterned-field"),this.element.content.push(i),this.consume&&this.consumeSafe&&!s.isFrozen&&(s.value=void 0)}else this.ignoredFields.includes(n)||this.element.content.push(this.consume?s:_t(s))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const di=class extends ui{constructor(e){super(e),this.fieldPatternPredicate=$r}};const hi=class{parent;constructor({parent:e}){this.parent=e}},pi=ai(Lr,hi,kr),mi=ai(Lr,kr),_i=ai(Lr,kr),gi=ai(Lr,kr),fi=ai(Vr,hi,kr),yi=ai(Vr,hi,kr),bi=ai(Vr,hi,kr),xi=ai(Vr,hi,kr),vi=ai(Vr,hi,kr),wi=ai(di,hi,kr),Ei=ai(di,hi,kr),Si=ai(di,hi,kr),Oi=ai(di,hi,kr);const Ai=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft4"}get idField(){return this.get("id")}set idField(e){this.set("id",e)}get $schema(){return this.get("$schema")}set $schema(e){this.set("$schema",e)}get multipleOf(){return this.get("multipleOf")}set multipleOf(e){this.set("multipleOf",e)}get maximum(){return this.get("maximum")}set maximum(e){this.set("maximum",e)}get exclusiveMaximum(){return this.get("exclusiveMaximum")}set exclusiveMaximum(e){this.set("exclusiveMaximum",e)}get minimum(){return this.get("minimum")}set minimum(e){this.set("minimum",e)}get exclusiveMinimum(){return this.get("exclusiveMinimum")}set exclusiveMinimum(e){this.set("exclusiveMinimum",e)}get maxLength(){return this.get("maxLength")}set maxLength(e){this.set("maxLength",e)}get minLength(){return this.get("minLength")}set minLength(e){this.set("minLength",e)}get pattern(){return this.get("pattern")}set pattern(e){this.set("pattern",e)}get additionalItems(){return this.get("additionalItems")}set additionalItems(e){this.set("additionalItems",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get maxItems(){return this.get("maxItems")}set maxItems(e){this.set("maxItems",e)}get minItems(){return this.get("minItems")}set minItems(e){this.set("minItems",e)}get uniqueItems(){return this.get("uniqueItems")}set uniqueItems(e){this.set("uniqueItems",e)}get maxProperties(){return this.get("maxProperties")}set maxProperties(e){this.set("maxProperties",e)}get minProperties(){return this.get("minProperties")}set minProperties(e){this.set("minProperties",e)}get required(){return this.get("required")}set required(e){this.set("required",e)}get properties(){return this.get("properties")}set properties(e){this.set("properties",e)}get additionalProperties(){return this.get("additionalProperties")}set additionalProperties(e){this.set("additionalProperties",e)}get patternProperties(){return this.get("patternProperties")}set patternProperties(e){this.set("patternProperties",e)}get dependencies(){return this.get("dependencies")}set dependencies(e){this.set("dependencies",e)}get enum(){return this.get("enum")}set enum(e){this.set("enum",e)}get type(){return this.get("type")}set type(e){this.set("type",e)}get allOf(){return this.get("allOf")}set allOf(e){this.set("allOf",e)}get anyOf(){return this.get("anyOf")}set anyOf(e){this.set("anyOf",e)}get oneOf(){return this.get("oneOf")}set oneOf(e){this.set("oneOf",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get definitions(){return this.get("definitions")}set definitions(e){this.set("definitions",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get default(){return this.get("default")}set default(e){this.set("default",e)}get format(){return this.get("format")}set format(e){this.set("format",e)}get base(){return this.get("base")}set base(e){this.set("base",e)}get linksField(){return this.get("links")}set linksField(e){this.set("links",e)}get media(){return this.get("media")}set media(e){this.set("media",e)}get readOnly(){return this.get("readOnly")}set readOnly(e){this.set("readOnly",e)}};const Ci=class extends pi{constructor(e){super(e),this.element=new Ai,this.consumeSafe=!0,this.specPath=ne(["document","objects","JSONSchema"])}get defaultDialectIdentifier(){return"http://json-schema.org/draft-04/schema#"}ObjectElement(e){const t=e.node;return this.handleDialectIdentifier(t),this.handleSchemaIdentifier(t),this.parent=this.element,Lr.prototype.ObjectElement.call(this,e)}handleDialectIdentifier(e){if(ie(this.parent)&&!Qe(e.get("$schema")))this.element.meta.set("inheritedDialectIdentifier",this.defaultDialectIdentifier);else if(this.parent instanceof Ai&&!Qe(e.get("$schema"))){const e=o(this.parent.meta.get("inheritedDialectIdentifier"),Ir(this.parent.$schema));this.element.meta.set("inheritedDialectIdentifier",e)}}handleSchemaIdentifier(e,t="id"){const s=void 0!==this.parent?[...this.parent.meta.get("ancestorsSchemaIdentifiers")??[]]:[],n=Ir(e.get(t));$r(n)&&s.push(n),this.element.meta.set("ancestorsSchemaIdentifiers",s)}},Ii=e=>st(e)&&e.hasKey("$ref");const Ti=class extends xi{ObjectElement(e){const t=e.node,s=Ii(t)?["document","objects","JSONReference"]:["document","objects","JSONSchema"];this.element=this.toRefractedElement(s,t),e.stop()}ArrayElement(e){const t=e.node;this.element=new ke,this.element.classes.push("json-schema-items"),t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Pi=class extends kr{ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-required")}};const Fi=class extends Oi{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-properties"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Mi=class extends Si{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-patternProperties"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Bi=class extends Ei{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-dependencies"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const ji=class extends kr{ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-enum")}};const ki=class extends kr{StringElement(e){super.enter(e),this.element.classes.push("json-schema-type")}ArrayElement(e){super.enter(e),this.element.classes.push("json-schema-type")}};const Ni=class extends fi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-allOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Ri=class extends yi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-anyOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const qi=class extends bi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-oneOf")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"],s=this.toRefractedElement(t,e);this.element.push(s)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const $i=class extends wi{constructor(e){super(e),this.element=new Ie,this.element.classes.push("json-schema-definitions"),this.specPath=e=>Ii(e)?["document","objects","JSONReference"]:["document","objects","JSONSchema"]}};const Di=class extends vi{constructor(e){super(e),this.element=new ke,this.element.classes.push("json-schema-links")}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","LinkDescription"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Vi=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="JSONReference",this.classes.push("json-reference")}get $ref(){return this.get("$ref")}set $ref(e){this.set("$ref",e)}};const Li=class extends mi{constructor(e){super(e),this.element=new Vi,this.specPath=ne(["document","objects","JSONReference"])}ObjectElement(e){Lr.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&this.element.classes.push("reference-element")}};const Ui=class extends kr{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};const Hi=function(){return!0};const Wi=i(function(e,t,s){return M(Math.max(e.length,t.length,s.length),function(){return e.apply(this,arguments)?t.apply(this,arguments):s.apply(this,arguments)})});const Gi=n(function(e){return function(t,s){return e(t,s)?-1:e(s,t)?1:0}});var Zi=r(function(e,t){return Array.prototype.slice.call(t,0).sort(e)});const Ji=Zi;const zi=n(function(e){return c(0,e)});function Xi(e){return e&&e["@@transducer/reduced"]?e:{"@@transducer/value":e,"@@transducer/reduced":!0}}const Qi=n(Xi);const Ki=z(Lt);const Yi=As(dr,Rr);function eo(e){return function(e){if(Array.isArray(e))return to(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return to(e,t);var s={}.toString.call(e).slice(8,-1);return"Object"===s&&e.constructor&&(s=e.constructor.name),"Map"===s||"Set"===s?Array.from(e):"Arguments"===s||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s)?to(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function to(e,t){(null==t||t>e.length)&&(t=e.length);for(var s=0,n=Array(t);s<t;s++)n[s]=e[s];return n}var so=cs(Ji(Gi(function(e,t){return e.length>t.length})),zi,u("length")),no=Hs(function(e,t,s){var n=s.apply(void 0,eo(e));return Ki(n)?Qi(n):t});const ro=Wi(Yi,function(e){var t=so(e);return M(t,function(){for(var t=arguments.length,s=new Array(t),n=0;n<t;n++)s[n]=arguments[n];return rs(no(s),void 0,e)})},re);const io=class extends Vr{alternator;constructor({alternator:e,...t}){super({...t}),this.alternator=e}enter(e){const t=e.node,s=this.alternator.map(({predicate:e,specPath:t})=>Wi(e,ne(t),re)),n=ro(s)(t);this.element=this.toRefractedElement(n,t),e.stop()}};const oo=class extends io{constructor(e){super(e),this.alternator=[{predicate:Ii,specPath:["document","objects","JSONReference"]},{predicate:Hi,specPath:["document","objects","JSONSchema"]}]}};const ao=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="media"}get binaryEncoding(){return this.get("binaryEncoding")}set binaryEncoding(e){this.set("binaryEncoding",e)}get type(){return this.get("type")}set type(e){this.set("type",e)}};const co=class extends gi{constructor(e){super(e),this.element=new ao,this.specPath=ne(["document","objects","Media"])}};const lo=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="linkDescription"}get href(){return this.get("href")}set href(e){this.set("href",e)}get rel(){return this.get("rel")}set rel(e){this.set("rel",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get mediaType(){return this.get("mediaType")}set mediaType(e){this.set("mediaType",e)}get method(){return this.get("method")}set method(e){this.set("method",e)}get encType(){return this.get("encType")}set encType(e){this.set("encType",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}};const uo=class extends _i{constructor(e){super(e),this.element=new lo,this.specPath=ne(["document","objects","LinkDescription"])}},ho={visitors:{value:kr,JSONSchemaOrJSONReferenceVisitor:oo,document:{objects:{JSONSchema:{element:"JSONSchemaDraft4",$visitor:Ci,fixedFields:{id:{$ref:"#/visitors/value",alias:"idField"},$schema:{$ref:"#/visitors/value"},multipleOf:{$ref:"#/visitors/value"},maximum:{$ref:"#/visitors/value"},exclusiveMaximum:{$ref:"#/visitors/value"},minimum:{$ref:"#/visitors/value"},exclusiveMinimum:{$ref:"#/visitors/value"},maxLength:{$ref:"#/visitors/value"},minLength:{$ref:"#/visitors/value"},pattern:{$ref:"#/visitors/value"},additionalItems:oo,items:{$visitor:Ti,alias:"itemsField"},maxItems:{$ref:"#/visitors/value"},minItems:{$ref:"#/visitors/value"},uniqueItems:{$ref:"#/visitors/value"},maxProperties:{$ref:"#/visitors/value"},minProperties:{$ref:"#/visitors/value"},required:Pi,properties:Fi,additionalProperties:oo,patternProperties:Mi,dependencies:Bi,enum:ji,type:ki,allOf:Ni,anyOf:Ri,oneOf:qi,not:oo,definitions:$i,title:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},default:{$ref:"#/visitors/value"},format:{$ref:"#/visitors/value"},base:{$ref:"#/visitors/value"},links:{$visitor:Di,alias:"linksField"},media:{$ref:"#/visitors/document/objects/Media"},readOnly:{$ref:"#/visitors/value"}}},JSONReference:{element:"JSONReference",$visitor:Li,fixedFields:{$ref:Ui}},Media:{element:"media",$visitor:co,fixedFields:{binaryEncoding:{$ref:"#/visitors/value"},type:{$ref:"#/visitors/value"}}},LinkDescription:{element:"linkDescription",$visitor:uo,fixedFields:{href:{$ref:"#/visitors/value"},rel:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},targetSchema:oo,mediaType:{$ref:"#/visitors/value"},method:{$ref:"#/visitors/value"},encType:{$ref:"#/visitors/value"},schema:oo}}}}}},po=tn(ho),mo=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(Ai,"fixedFields",{get:()=>mo(po.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(Vi,"fixedFields",{get:()=>mo(po.visitors.document.objects.JSONReference.fixedFields),enumerable:!0}),Object.defineProperty(ao,"fixedFields",{get:()=>mo(po.visitors.document.objects.Media.fixedFields),enumerable:!0}),Object.defineProperty(lo,"fixedFields",{get:()=>mo(po.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const _o=class extends Ai{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft6"}get idField(){throw new ze("id keyword from Core vocabulary has been renamed to $id.")}set idField(e){throw new ze("id keyword from Core vocabulary has been renamed to $id.")}get $id(){return this.get("$id")}set $id(e){this.set("$id",e)}get exclusiveMaximum(){return this.get("exclusiveMaximum")}set exclusiveMaximum(e){this.set("exclusiveMaximum",e)}get exclusiveMinimum(){return this.get("exclusiveMinimum")}set exclusiveMinimum(e){this.set("exclusiveMinimum",e)}get containsField(){return this.get("contains")}set containsField(e){this.set("contains",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get propertyNames(){return this.get("propertyNames")}set propertyNames(e){this.set("propertyNames",e)}get const(){return this.get("const")}set const(e){this.set("const",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const go=class extends Ci{constructor(e){super(e),this.element=new _o}get defaultDialectIdentifier(){return"http://json-schema.org/draft-06/schema#"}BooleanElement(e){this.enter(e),this.element.classes.push("boolean-json-schema")}handleSchemaIdentifier(e,t="$id"){return super.handleSchemaIdentifier(e,t)}};const fo=class extends Ti{BooleanElement(e){this.element=this.toRefractedElement(["document","objects","JSONSchema"],e.node),e.stop()}};const yo=class extends kr{ArrayElement(e){this.enter(e),this.element.classes.push("json-schema-examples")}};const bo=class extends lo{get hrefSchema(){return this.get("hrefSchema")}set hrefSchema(e){this.set("hrefSchema",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get schema(){throw new ze("schema keyword from Hyper-Schema vocabulary has been renamed to submissionSchema.")}set schema(e){throw new ze("schema keyword from Hyper-Schema vocabulary has been renamed to submissionSchema.")}get submissionSchema(){return this.get("submissionSchema")}set submissionSchema(e){this.set("submissionSchema",e)}get method(){throw new ze("method keyword from Hyper-Schema vocabulary has been removed.")}set method(e){throw new ze("method keyword from Hyper-Schema vocabulary has been removed.")}get encType(){throw new ze("encType keyword from Hyper-Schema vocabulary has been renamed to submissionEncType.")}set encType(e){throw new ze("encType keyword from Hyper-Schema vocabulary has been renamed to submissionEncType.")}get submissionEncType(){return this.get("submissionEncType")}set submissionEncType(e){this.set("submissionEncType",e)}};const xo=class extends uo{constructor(e){super(e),this.element=new bo}},vo=cs(wr(["visitors","document","objects","JSONSchema","element"],"JSONSchemaDraft6"),wr(["visitors","document","objects","JSONSchema","$visitor"],go),Cr(["visitors","document","objects","JSONSchema","fixedFields","id"]),wr(["visitors","document","objects","JSONSchema","fixedFields","$id"],{$ref:"#/visitors/value"}),wr(["visitors","document","objects","JSONSchema","fixedFields","contains"],{$visitor:ho.visitors.JSONSchemaOrJSONReferenceVisitor,alias:"containsField"}),wr(["visitors","document","objects","JSONSchema","fixedFields","items"],{$visitor:fo,alias:"itemsField"}),wr(["visitors","document","objects","JSONSchema","fixedFields","propertyNames"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","const"],{$ref:"#/visitors/value"}),wr(["visitors","document","objects","JSONSchema","fixedFields","examples"],yo),wr(["visitors","document","objects","LinkDescription","$visitor"],xo),wr(["visitors","document","objects","LinkDescription","fixedFields","hrefSchema"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","schema"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionSchema"],ho.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","method"]),Cr(["visitors","document","objects","LinkDescription","fixedFields","encType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionEncType"],{$ref:"#/visitors/value"}))(ho),wo=tn(vo),Eo=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(_o,"fixedFields",{get:()=>Eo(wo.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(bo,"fixedFields",{get:()=>Eo(wo.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const So=class extends _o{constructor(e,t,s){super(e,t,s),this.element="JSONSchemaDraft7"}get $comment(){return this.get("$comment")}set $comment(e){this.set("$comment",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get if(){return this.get("if")}set if(e){this.set("if",e)}get then(){return this.get("then")}set then(e){this.set("then",e)}get else(){return this.get("else")}set else(e){this.set("else",e)}get not(){return this.get("not")}set not(e){this.set("not",e)}get contentEncoding(){return this.get("contentEncoding")}set contentEncoding(e){this.set("contentEncoding",e)}get contentMediaType(){return this.get("contentMediaType")}set contentMediaType(e){this.set("contentMediaType",e)}get media(){throw new ze('media keyword from Hyper-Schema vocabulary has been moved to validation vocabulary as "contentMediaType" / "contentEncoding"')}set media(e){throw new ze('media keyword from Hyper-Schema vocabulary has been moved to validation vocabulary as "contentMediaType" / "contentEncoding"')}get writeOnly(){return this.get("writeOnly")}set writeOnly(e){this.set("writeOnly",e)}};const Oo=class extends go{constructor(e){super(e),this.element=new So}get defaultDialectIdentifier(){return"http://json-schema.org/draft-07/schema#"}};const Ao=class extends bo{get anchor(){return this.get("anchor")}set anchor(e){this.set("anchor",e)}get anchorPointer(){return this.get("anchorPointer")}set anchorPointer(e){this.set("anchorPointer",e)}get templatePointers(){return this.get("templatePointers")}set templatePointers(e){this.set("templatePointers",e)}get templateRequired(){return this.get("templateRequired")}set templateRequired(e){this.set("templateRequired",e)}get targetSchema(){return this.get("targetSchema")}set targetSchema(e){this.set("targetSchema",e)}get mediaType(){throw new ze("mediaType keyword from Hyper-Schema vocabulary has been renamed to targetMediaType.")}set mediaType(e){throw new ze("mediaType keyword from Hyper-Schema vocabulary has been renamed to targetMediaType.")}get targetMediaType(){return this.get("targetMediaType")}set targetMediaType(e){this.set("targetMediaType",e)}get targetHints(){return this.get("targetHints")}set targetHints(e){this.set("targetHints",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get $comment(){return this.get("$comment")}set $comment(e){this.set("$comment",e)}get hrefSchema(){return this.get("hrefSchema")}set hrefSchema(e){this.set("hrefSchema",e)}get headerSchema(){return this.get("headerSchema")}set headerSchema(e){this.set("headerSchema",e)}get submissionSchema(){return this.get("submissionSchema")}set submissionSchema(e){this.set("submissionSchema",e)}get submissionEncType(){throw new ze("submissionEncType keyword from Hyper-Schema vocabulary has been renamed to submissionMediaType.")}set submissionEncType(e){throw new ze("submissionEncType keyword from Hyper-Schema vocabulary has been renamed to submissionMediaType.")}get submissionMediaType(){return this.get("submissionMediaType")}set submissionMediaType(e){this.set("submissionMediaType",e)}};const Co=class extends xo{constructor(e){super(e),this.element=new Ao}},Io=cs(wr(["visitors","document","objects","JSONSchema","element"],"JSONSchemaDraft7"),wr(["visitors","document","objects","JSONSchema","$visitor"],Oo),wr(["visitors","document","objects","JSONSchema","fixedFields","$comment"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","if"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","then"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),wr(["visitors","document","objects","JSONSchema","fixedFields","else"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","JSONSchema","fixedFields","media"]),wr(["visitors","document","objects","JSONSchema","fixedFields","contentEncoding"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","contentMediaType"],vo.visitors.value),wr(["visitors","document","objects","JSONSchema","fixedFields","writeOnly"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","$visitor"],Co),wr(["visitors","document","objects","LinkDescription","fixedFields","anchor"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","anchorPointer"],vo.visitors.value),Cr(["visitors","document","objects","LinkDescription","fixedFields","mediaType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","targetMediaType"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","targetHints"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","description"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","$comment"],vo.visitors.value),wr(["visitors","document","objects","LinkDescription","fixedFields","headerSchema"],vo.visitors.JSONSchemaOrJSONReferenceVisitor),Cr(["visitors","document","objects","LinkDescription","fixedFields","submissionEncType"]),wr(["visitors","document","objects","LinkDescription","fixedFields","submissionMediaType"],vo.visitors.value))(vo);const To=class{element;consume=!1;consumeSafe=!1;constructor(e){Object.assign(this,e)}copyMetaAndAttributes(e,t){e.isMetaEmpty||t.isMetaEmpty?e.isMetaEmpty||(t.meta=e.meta.cloneDeep()):t.meta=t.meta.merge(e.meta),e.isAttributesEmpty||t.isAttributesEmpty?e.isAttributesEmpty||(t.attributes=_t(e.attributes)):t.attributes=Br(t.attributes,e.attributes),Se.transfer(e,t),Pe.transfer(e,t)}};const Po=class extends To{enter(e){this.element=this.consume?e.node:_t(e.node),e.stop()}};const Fo=class extends To{specObj;passingOptionsNames=["specObj","consume"];constructor({specObj:e,...t}){super({...t}),this.specObj=e}retrievePassingOptions(){return Dr(this.passingOptionsNames,this)}retrieveFixedFields(e){const t=zt(["visitors",...e,"fixedFields"],this.specObj);return"object"==typeof t&&null!==t?Object.keys(t):[]}retrieveVisitor(e){return Es(Rs,["visitors",...e],this.specObj)?zt(["visitors",...e],this.specObj):zt(["visitors",...e,"$visitor"],this.specObj)}retrieveVisitorInstance(e,t={}){const s=this.retrievePassingOptions();return new(this.retrieveVisitor(e))({...s,...t})}toRefractedElement(e,t,s={}){const n=this.retrieveVisitorInstance(e,s);return n instanceof Po&&n?.constructor===Po?this.consume?t:_t(t):(Qn(t,n),n.element)}};const Mo=class extends Fo{MemberElement(e){const t=e.node;this.element=_t(t),this.element.classes.push("specification-extension"),e.stop()}};const Bo=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="asyncApi2",this.classes.push("api")}get asyncapi(){return this.get("asyncapi")}set asyncapi(e){this.set("asyncapi",e)}get idField(){return this.get("id")}set idField(e){this.set("id",e)}get info(){return this.get("info")}set info(e){this.set("info",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get defaultContentType(){return this.get("defaultContentType")}set defaultContentType(e){this.set("defaultContentType",e)}get channels(){return this.get("channels")}set channels(e){this.set("channels",e)}get components(){return this.get("components")}set components(e){this.set("components",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}};var jo=function(){function e(e,t){this.xf=t,this.n=e,this.i=0}return e.prototype["@@transducer/init"]=O,e.prototype["@@transducer/result"]=A,e.prototype["@@transducer/step"]=function(e,t){this.i+=1;var s=0===this.n?e:this.xf["@@transducer/step"](e,t);return this.n>=0&&this.i>=this.n?Xi(s):s},e}();function ko(e){return function(t){return new jo(e,t)}}const No=r(E(["take"],ko,function(e,t){return os(0,e<0?1/0:e,t)}));const Ro=r(function(e,t){return se(No(e.length,t),e)}),qo=e=>st(e)&&e.hasKey("$ref"),$o=e=>Qe(e.key)&&Ro("x-",Ir(e.key));const Do=class extends Fo{specPath;ignoredFields;canSupportSpecificationExtensions=!0;specificationExtensionPredicate=$o;constructor({specPath:e,ignoredFields:t,canSupportSpecificationExtensions:s,specificationExtensionPredicate:n,...r}){super({...r}),this.specPath=e,this.ignoredFields=t||[],"boolean"==typeof s&&(this.canSupportSpecificationExtensions=s),"function"==typeof n&&(this.specificationExtensionPredicate=n)}ObjectElement(e){const t=e.node,s=this.specPath(t),n=this.retrieveFixedFields(s);t.forEach((e,t,r)=>{const i=Ir(t);if(Qe(t)&&n.includes(i)&&!this.ignoredFields.includes(i)){const n=this.toRefractedElement([...s,"fixedFields",i],e),o=new Ce(this.consume?t:_t(t),n);this.copyMetaAndAttributes(r,o),this.element.content.push(o),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else if(this.canSupportSpecificationExtensions&&this.specificationExtensionPredicate(r)){const e=this.toRefractedElement(["document","extension"],r);this.element.content.push(e),this.consume&&this.consumeSafe&&!r.isFrozen&&(r.value=void 0)}else this.ignoredFields.includes(i)||this.element.content.push(this.consume?r:_t(r))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Vo=class extends Fo{specPath;ignoredFields;fieldPatternPredicate=li;canSupportSpecificationExtensions=!1;specificationExtensionPredicate=$o;constructor({specPath:e,ignoredFields:t,fieldPatternPredicate:s,canSupportSpecificationExtensions:n,specificationExtensionPredicate:r,...i}){super({...i}),this.specPath=e,this.ignoredFields=t||[],"function"==typeof s&&(this.fieldPatternPredicate=s),"boolean"==typeof n&&(this.canSupportSpecificationExtensions=n),"function"==typeof r&&(this.specificationExtensionPredicate=r)}ObjectElement(e){const t=e.node;t.forEach((e,t,s)=>{const n=Ir(t);if(this.canSupportSpecificationExtensions&&this.specificationExtensionPredicate(s)){const e=this.toRefractedElement(["document","extension"],s);this.element.content.push(e)}else if(!this.ignoredFields.includes(n)&&this.fieldPatternPredicate(n)){const n=this.specPath(e),r=this.toRefractedElement(n,e),i=new Ce(this.consume?t:_t(t),r);this.copyMetaAndAttributes(s,i),i.classes.push("patterned-field"),this.element.content.push(i),this.consume&&this.consumeSafe&&!s.isFrozen&&(s.value=void 0)}else this.ignoredFields.includes(n)||this.element.content.push(this.consume?s:_t(s))}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Lo=class extends Vo{constructor(e){super(e),this.fieldPatternPredicate=$r}};const Uo=class extends Fo{alternator;constructor({alternator:e,...t}){super({...t}),this.alternator=e}enter(e){const t=e.node,s=this.alternator.map(({predicate:e,specPath:t})=>Wi(e,ne(t),re)),n=ro(s)(t);this.element=this.toRefractedElement(n,t),e.stop()}},Ho=ai(Fo,Po),Wo=ai(Do,Po),Go=ai(Vo,Po),Zo=ai(Lo,Po),Jo=(ai(Do,Vo),ai(Uo,Po));const zo=class extends Wo{constructor(e){super(e),this.element=new Bo,this.consumeSafe=!0,this.specPath=ne(["document","objects","AsyncApi"]),this.canSupportSpecificationExtensions=!0}};const Xo=class extends be{constructor(e,t,s){super(e,t,s),this.element="asyncApiVersion",this.classes.push("spec-version"),this.classes.push("version")}};const Qo=class extends Ho{StringElement(e){const t=e.node,s=new Xo(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const Ko=class extends be{constructor(e,t,s){super(e,t,s),this.element="identifier"}};const Yo=class extends Ho{StringElement(e){const t=e.node,s=new Ko(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const ea=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="info",this.classes.push("info")}get title(){return this.get("title")}set title(e){this.set("title",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get termsOfService(){return this.get("termsOfService")}set termsOfService(e){this.set("termsOfService",e)}get version(){return this.get("version")}set version(e){this.set("version",e)}get license(){return this.get("license")}set license(e){this.set("license",e)}get contact(){return this.get("contact")}set contact(e){this.set("contact",e)}};const ta=class extends Wo{constructor(e){super(e),this.element=new ea,this.specPath=ne(["document","objects","Info"]),this.canSupportSpecificationExtensions=!0}};const sa=class extends Po{StringElement(e){const t=e.node;this.element=new be(Ir(t)),this.copyMetaAndAttributes(t,this.element),this.element.classes.push("api-version"),this.element.classes.push("version"),e.stop()}};const na=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="contact"}get name(){return this.get("name")}set name(e){this.set("name",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}get email(){return this.get("email")}set email(e){this.set("email",e)}};const ra=class extends Wo{constructor(e){super(e),this.element=new na,this.specPath=ne(["document","objects","Contact"]),this.canSupportSpecificationExtensions=!0}};const ia=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="correlationID"}get description(){return this.get("description")}set description(e){this.set("description",e)}get location(){return this.get("location")}set location(e){this.set("location",e)}};const oa=class extends Wo{constructor(e){super(e),this.element=new ia,this.specPath=ne(["document","objects","CorrelationID"]),this.canSupportSpecificationExtensions=!0}};const aa=class extends be{constructor(e,t,s){super(e,t,s),this.element="defaultContentType"}};const ca=class extends Ho{StringElement(e){const t=e.node,s=new aa(Ir(t));this.copyMetaAndAttributes(t,s),this.element=s,e.stop()}};const la=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="license"}get name(){return this.get("name")}set name(e){this.set("name",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}};const ua=class extends Wo{constructor(e){super(e),this.element=new la,this.specPath=ne(["document","objects","License"]),this.canSupportSpecificationExtensions=!0}};const da=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="oAuthFlows"}get implicit(){return this.get("implicit")}set implicit(e){this.set("implicit",e)}get password(){return this.get("password")}set password(e){this.set("password",e)}get clientCredentials(){return this.get("clientCredentials")}set clientCredentials(e){this.set("clientCredentials",e)}get authorizationCode(){return this.get("authorizationCode")}set authorizationCode(e){this.set("authorizationCode",e)}};const ha=class extends Wo{constructor(e){super(e),this.element=new da,this.specPath=ne(["document","objects","OAuthFlows"]),this.canSupportSpecificationExtensions=!0}};const pa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="oAuthFlow"}get authorizationUrl(){return this.get("authorizationUrl")}set authorizationUrl(e){this.set("authorizationUrl",e)}get tokenUrl(){return this.get("tokenUrl")}set tokenUrl(e){this.set("tokenUrl",e)}get refreshUrl(){return this.get("refreshUrl")}set refreshUrl(e){this.set("refreshUrl",e)}get scopes(){return this.get("scopes")}set scopes(e){this.set("scopes",e)}};const ma=class extends Wo{constructor(e){super(e),this.element=new pa,this.specPath=ne(["document","objects","OAuthFlow"]),this.canSupportSpecificationExtensions=!0}};class _a extends Ie{static primaryClass="oauth-flow-scopes";constructor(e,t,s){super(e,t,s),this.classes.push(_a.primaryClass)}}const ga=_a;const fa=class extends Zo{constructor(e){super(e),this.element=new ga,this.specPath=ne(["value"])}};const ya=r(function(e,t){if(s=e,"[object RegExp]"!==Object.prototype.toString.call(s))throw new TypeError("‘test’ requires a value of type RegExp as its first argument; received "+ws(e));var s;return ae(e).test(t)});const ba=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="servers"}};const xa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channelBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const va=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channelItem"}get $ref(){return this.get("$ref")}set $ref(e){this.set("$ref",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get subscribe(){return this.get("subscribe")}set subscribe(e){this.set("subscribe",e)}get publish(){return this.get("publish")}set publish(e){this.set("publish",e)}get parameters(){return this.get("parameters")}set parameters(e){this.set("parameters",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const wa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="channels"}};const Ea=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="components"}get schemas(){return this.get("schemas")}set schemas(e){this.set("schemas",e)}get servers(){return this.get("servers")}set servers(e){this.set("servers",e)}get serverVariables(){return this.get("serverVariables")}set serverVariables(e){this.set("serverVariables",e)}get messages(){return this.get("messages")}set messages(e){this.set("messages",e)}get securitySchemes(){return this.get("securitySchemes")}set securitySchemes(e){this.set("securitySchemes",e)}get parameters(){return this.get("parameters")}set parameters(e){this.set("parameters",e)}get correlationIds(){return this.get("correlationIds")}set correlationIds(e){this.set("correlationIds",e)}get operationTraits(){return this.get("operationTraits")}set operationTraits(e){this.set("operationTraits",e)}get messageTraits(){return this.get("messageTraits")}set messageTraits(e){this.set("messageTraits",e)}get serverBindings(){return this.get("serverBindings")}set serverBindings(e){this.set("serverBindings",e)}get channelBindings(){return this.get("channelBindings")}set channelBindings(e){this.set("channelBindings",e)}get operationBindings(){return this.get("operationBindings")}set operationBindings(e){this.set("operationBindings",e)}get messageBindings(){return this.get("messageBindings")}set messageBindings(e){this.set("messageBindings",e)}};const Sa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operation"}get operationId(){return this.get("operationId")}set operationId(e){this.set("operationId",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get traits(){return this.get("traits")}set traits(e){this.set("traits",e)}get message(){return this.get("message")}set message(e){this.set("message",e)}};const Oa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="parameter"}get description(){return this.get("description")}set description(e){this.set("description",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}get location(){return this.get("location")}set location(e){this.set("location",e)}};const Aa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="parameters"}};const Ca=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="reference",this.classes.push("json-reference"),this.classes.push("asyncapi-reference")}set $ref(e){this.set("$ref",e)}get $ref(){return this.get("$ref")}},Ia=tn(Io),Ta=e=>Object.entries(e).map(([e,t])=>Vs(t)?{name:e,...t}:{name:e,$visitor:t});Object.defineProperty(So,"fixedFields",{get:()=>Ta(Ia.visitors.document.objects.JSONSchema.fixedFields),enumerable:!0}),Object.defineProperty(Ao,"fixedFields",{get:()=>Ta(Ia.visitors.document.objects.LinkDescription.fixedFields),enumerable:!0});const Pa=class extends So{constructor(e,t,s){super(e,t,s),this.element="schema",this.classes.push("json-schema-draft-7")}get not(){return this.get("not")}get if(){return this.get("if")}set if(e){this.set("if",e)}get then(){return this.get("then")}set then(e){this.set("then",e)}get else(){return this.get("else")}set else(e){this.set("else",e)}get itemsField(){return this.get("items")}set itemsField(e){this.set("items",e)}get additionalItems(){return this.get("additionalItems")}set additionalItems(e){this.set("additionalItems",e)}get contains(){return this.get("contains")}set contains(e){this.set("contains",e)}get propertyNames(){return this.get("propertyNames")}set propertyNames(e){this.set("propertyNames",e)}get discriminator(){return this.get("discriminator")}get externalDocs(){return this.get("externalDocs")}get deprecated(){return this.get("deprecated")}};const Fa=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="securityRequirement"}};const Ma=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="server"}get url(){return this.get("url")}set url(e){this.set("url",e)}get protocol(){return this.get("protocol")}set protocol(e){this.set("protocol",e)}get protocolVersion(){return this.get("protocolVersion")}set protocolVersion(e){this.set("protocolVersion",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get variables(){return this.get("variables")}set variables(e){this.set("variables",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const Ba=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="serverBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const ja=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="serverVariable"}get enum(){return this.get("enum")}set enum(e){this.set("enum",e)}get default(){return this.get("default")}set default(e){this.set("default",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const ka=e=>et(e)&&at(e,["boolean-json-schema"]),Na=e=>e instanceof Bo,Ra=e=>e instanceof Xo,qa=e=>e instanceof xa,$a=e=>e instanceof va,Da=e=>e instanceof wa,Va=e=>e instanceof Ea,La=e=>e instanceof na,Ua=e=>e instanceof Ko,Ha=e=>e instanceof ea,Wa=e=>e instanceof la,Ga=e=>e instanceof Sa,Za=e=>e instanceof Oa,Ja=e=>e instanceof Aa,za=e=>e instanceof Ca,Xa=e=>e instanceof Pa,Qa=e=>e instanceof Fa,Ka=e=>e instanceof Ma,Ya=e=>e instanceof Ba,ec=e=>e instanceof ba,tc=e=>e instanceof ja;const sc=class extends Go{constructor(e){super(e),this.element=new ba,this.element.classes.push("servers"),this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Server"],this.canSupportSpecificationExtensions=!1,this.fieldPatternPredicate=ya(/^[A-Za-z0-9_-]+$/)}ObjectElement(e){Go.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","server")})}};const nc=class extends Wo{constructor(e){super(e),this.element=new Ma,this.specPath=ne(["document","objects","Server"]),this.canSupportSpecificationExtensions=!0}};const rc=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("server-url")}};const ic=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","ServerBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","serverBindings")}};class oc extends Ie{static primaryClass="server-variables";constructor(e,t,s){super(e,t,s),this.classes.push(oc.primaryClass)}}const ac=oc;const cc=class extends Zo{constructor(e){super(e),this.element=new ac,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerVariable"]}};class lc extends ke{static primaryClass="server-security";constructor(e,t,s){super(e,t,s),this.classes.push(lc.primaryClass)}}const uc=lc;const dc=class extends Ho{constructor(e){super(e),this.element=new uc}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const hc=class extends Wo{constructor(e){super(e),this.element=new ja,this.specPath=ne(["document","objects","ServerVariable"]),this.canSupportSpecificationExtensions=!0}};const pc=class extends Wo{constructor(e){super(e),this.element=new Ba,this.specPath=ne(["document","objects","ServerBindings"]),this.canSupportSpecificationExtensions=!0}};const mc=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="securityScheme"}get type(){return this.get("type")}set type(e){this.set("type",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get in(){return this.get("in")}set in(e){this.set("in",e)}get scheme(){return this.get("scheme")}set scheme(e){this.set("scheme",e)}get bearerFormat(){return this.get("bearerFormat")}set bearerFormat(e){this.set("bearerFormat",e)}get flows(){return this.get("flows")}set flows(e){this.set("flows",e)}get openIdConnectUrl(){return this.get("openIdConnectUrl")}set openIdConnectUrl(e){this.set("openIdConnectUrl",e)}};const _c=class extends Wo{constructor(e){super(e),this.element=new mc,this.specPath=ne(["document","objects","SecurityScheme"]),this.canSupportSpecificationExtensions=!0}};const gc=class extends Zo{constructor(e){super(e),this.element=new Fa,this.specPath=ne(["value"])}};const fc=class extends Wo{constructor(e){super(e),this.element=new Ca,this.specPath=ne(["document","objects","Reference"]),this.canSupportSpecificationExtensions=!1}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&this.element.classes.push("reference-element")}};const yc=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};const bc=class extends Wo{constructor(e){super(e),this.specPath=ne(["document","objects","Schema"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){this.element=new Pa,Wo.prototype.ObjectElement.call(this,e)}BooleanElement(e){super.enter(e),this.element.classes.push("boolean-json-schema")}},xc=Io.visitors.JSONSchemaOrJSONReferenceVisitor;const vc=class extends xc{enter(e){xc.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}},wc=Io.visitors.document.objects.JSONSchema.fixedFields.allOf;const Ec=class extends wc{ArrayElement(e){wc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Sc=Io.visitors.document.objects.JSONSchema.fixedFields.anyOf;const Oc=class extends Sc{ArrayElement(e){Sc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Ac=Io.visitors.document.objects.JSONSchema.fixedFields.oneOf;const Cc=class extends Ac{ArrayElement(e){Ac.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Ic=Io.visitors.document.objects.JSONSchema.fixedFields.definitions;const Tc=class extends Ic{ObjectElement(e){Ic.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Pc=Io.visitors.document.objects.JSONSchema.fixedFields.dependencies;const Fc=class extends Pc{ObjectElement(e){Pc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Mc=Io.visitors.document.objects.JSONSchema.fixedFields.items.$visitor;const Bc=class extends Mc{ObjectElement(e){Mc.prototype.ObjectElement.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}ArrayElement(e){Mc.prototype.ArrayElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},jc=Io.visitors.document.objects.JSONSchema.fixedFields.patternProperties;const kc=class extends jc{ObjectElement(e){jc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},Nc=Io.visitors.document.objects.JSONSchema.fixedFields.properties;const Rc=class extends Nc{ObjectElement(e){Nc.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}},qc=U(e=>e===Io.visitors.JSONSchemaOrJSONReferenceVisitor?vc:e,Io.visitors.document.objects.JSONSchema.fixedFields);const $c=class extends Go{constructor(e){super(e),this.element=new Aa,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Parameter"],this.canSupportSpecificationExtensions=!1,this.fieldPatternPredicate=e=>"string"==typeof e&&/^[A-Za-z0-9_-]+$/.test(e)}ObjectElement(e){Go.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","parameter")})}};const Dc=class extends Wo{constructor(e){super(e),this.element=new Oa,this.specPath=ne(["document","objects","Parameter"]),this.canSupportSpecificationExtensions=!0}};const Vc=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const Lc=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="externalDocumentation"}get description(){return this.get("description")}set description(e){this.set("description",e)}get url(){return this.get("url")}set url(e){this.set("url",e)}};const Uc=class extends Wo{constructor(e){super(e),this.element=new Lc,this.specPath=ne(["document","objects","ExternalDocumentation"]),this.canSupportSpecificationExtensions=!0}};const Hc=class extends Wo{constructor(e){super(e),this.element=new Ea,this.specPath=ne(["document","objects","Components"]),this.canSupportSpecificationExtensions=!0}};class Wc extends Ie{static primaryClass="components-schemas";constructor(e,t,s){super(e,t,s),this.classes.push(Wc.primaryClass)}}const Gc=Wc;const Zc=class extends Zo{constructor(e){super(e),this.element=new Gc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Schema"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","schema")})}};class Jc extends Ie{static primaryClass="components-servers";constructor(e,t,s){super(e,t,s),this.classes.push(Jc.primaryClass)}}const zc=Jc;const Xc=class extends Zo{constructor(e){super(e),this.element=new zc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Server"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","server")})}};class Qc extends Ie{static primaryClass="components-server-variables";constructor(e,t,s){super(e,t,s),this.classes.push(Qc.primaryClass)}}const Kc=Qc;const Yc=class extends Zo{constructor(e){super(e),this.element=new Kc,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerVariable"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","serverVariable")})}};class el extends Ie{static primaryClass="components-channels";constructor(e,t,s){super(e,t,s),this.classes.push(el.primaryClass)}}const tl=el;const sl=class extends Zo{constructor(e){super(e),this.element=new tl,this.specPath=ne(["document","objects","ChannelItem"])}};class nl extends Ie{static primaryClass="components-messages";constructor(e,t,s){super(e,t,s),this.classes.push(nl.primaryClass)}}const rl=nl;const il=class extends Zo{constructor(e){super(e),this.element=new rl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Message"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","message")})}};class ol extends Ie{static primaryClass="components-security-schemes";constructor(e,t,s){super(e,t,s),this.classes.push(ol.primaryClass)}}const al=ol;const cl=class extends Zo{constructor(e){super(e),this.element=new al,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","SecurityScheme"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","securityScheme")})}};class ll extends Ie{static primaryClass="components-parameters";constructor(e,t,s){super(e,t,s),this.classes.push(ll.primaryClass)}}const ul=ll;const dl=class extends Zo{constructor(e){super(e),this.element=new ul,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","Parameter"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","parameter")})}};class hl extends Ie{static primaryClass="components-correlation-ids";constructor(e,t,s){super(e,t,s),this.classes.push(hl.primaryClass)}}const pl=hl;const ml=class extends Zo{constructor(e){super(e),this.element=new pl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","CorrelationID"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","correlationID")})}};class _l extends Ie{static primaryClass="components-operation-traits";constructor(e,t,s){super(e,t,s),this.classes.push(_l.primaryClass)}}const gl=_l;const fl=class extends Zo{constructor(e){super(e),this.element=new gl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","OperationTrait"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","operationTrait")})}};class yl extends Ie{static primaryClass="components-message-traits";constructor(e,t,s){super(e,t,s),this.classes.push(yl.primaryClass)}}const bl=yl;const xl=class extends Zo{constructor(e){super(e),this.element=new bl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","MessageTrait"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","messageTrait")})}};class vl extends Ie{static primaryClass="components-server-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(vl.primaryClass)}}const wl=vl;const El=class extends Zo{constructor(e){super(e),this.element=new wl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ServerBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","serverBindings")})}};class Sl extends Ie{static primaryClass="components-channel-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Sl.primaryClass)}}const Ol=Sl;const Al=class extends Zo{constructor(e){super(e),this.element=new Ol,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","ChannelBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","channelBindings")})}};class Cl extends Ie{static primaryClass="components-operation-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Cl.primaryClass)}}const Il=Cl;const Tl=class extends Zo{constructor(e){super(e),this.element=new Il,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","OperationBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","operationBindings")})}};class Pl extends Ie{static primaryClass="components-message-bindings";constructor(e,t,s){super(e,t,s),this.classes.push(Pl.primaryClass)}}const Fl=Pl;const Ml=class extends Zo{constructor(e){super(e),this.element=new Fl,this.specPath=e=>qo(e)?["document","objects","Reference"]:["document","objects","MessageBindings"]}ObjectElement(e){Zo.prototype.ObjectElement.call(this,e),this.element.filter(za).forEach(e=>{e.meta.set("referenced-element","messageBindings")})}};const Bl=class extends Wo{constructor(e){super(e),this.element=new Sa,this.specPath=ne(["document","objects","Operation"])}};class jl extends ke{static primaryClass="operation-security";constructor(e,t,s){super(e,t,s),this.classes.push(jl.primaryClass)}}const kl=jl;const Nl=class extends Ho{constructor(e){super(e),this.element=new kl}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Rl=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","OperationBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","operationBindings")}};class ql extends ke{static primaryClass="operation-traits";constructor(e,t,s){super(e,t,s),this.classes.push(ql.primaryClass)}}const $l=ql;const Dl=class extends Ho{constructor(e){super(e),this.element=new $l}ArrayElement(e){const t=e.node;t.forEach(e=>{let t;qo(e)?(t=this.toRefractedElement(["document","objects","Reference"],e),t.meta.set("referenced-element","operationTrait")):t=this.toRefractedElement(["document","objects","OperationTrait"],e),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};class Vl extends Ie{static primaryClass="operation-message-map";constructor(e,t,s){super(e,t,s),this.classes.push(Vl.primaryClass)}get oneOf(){return this.get("oneOf")}set oneOf(e){this.set("oneOf",e)}}const Ll=Vl;class Ul extends ke{static primaryClass="operation-message";constructor(e,t,s){super(e,t,s),this.classes.push(Ul.primaryClass)}}const Hl=Ul;const Wl=class extends Ho{ObjectElement(e){const t=e.node;if(qo(t))this.element=this.toRefractedElement(["document","objects","Reference"],t),this.element.meta.set("referenced-element","message");else if(tt(t.get("oneOf"))){this.element=new Ll;const e=new Hl;t.get("oneOf").forEach(t=>{let s;const n=t;qo(n)?(s=this.toRefractedElement(["document","objects","Reference"],n),s.meta.set("referenced-element","message")):s=this.toRefractedElement(["document","objects","Message"],n),e.push(s)}),this.element.oneOf=e}else this.element=this.toRefractedElement(["document","objects","Message"],t);this.copyMetaAndAttributes(t,this.element),e.stop()}};const Gl=class extends ke{constructor(e,t,s){super(e,t,s),this.element="tags"}};const Zl=class extends Ho{constructor(e){super(e),this.element=new Gl}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","Tag"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Jl=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="tag"}get name(){return this.get("name")}set name(e){this.set("name",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}};const zl=class extends Wo{constructor(e){super(e),this.element=new Jl,this.specPath=ne(["document","objects","Tag"]),this.canSupportSpecificationExtensions=!0}};const Xl=class extends Zo{constructor(e){super(e),this.element=new wa,this.specPath=ne(["document","objects","ChannelItem"])}};const Ql=class extends Wo{constructor(e){super(e),this.element=new xa,this.specPath=ne(["document","objects","ChannelBindings"]),this.canSupportSpecificationExtensions=!0}};const Kl=class extends Wo{constructor(e){super(e),this.element=new va,this.specPath=ne(["document","objects","ChannelItem"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e),Qe(this.element.$ref)&&(this.element.classes.push("reference-element"),this.element.meta.set("referenced-element","channelItem"))}};const Yl=class extends Po{StringElement(e){super.enter(e),this.element.classes.push("reference-value")}};class eu extends ke{static primaryClass="channel-item-server-names-list";constructor(e,t,s){super(e,t,s),this.classes.push(eu.primaryClass)}}const tu=eu;const su=class extends Ho{constructor(e){super(e),this.element=new tu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=_t(e);Qe(t)&&t.classes.push("server-name"),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const nu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","ChannelBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","channelBindings")}};const ru=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const iu=class extends Wo{constructor(e){super(e),this.element=new ru,this.specPath=ne(["document","objects","MessageBindings"]),this.canSupportSpecificationExtensions=!0}};const ou=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageExample"}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get payload(){return this.get("payload")}set payload(e){this.set("payload",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}};const au=class extends Wo{constructor(e){super(e),this.element=new ou,this.specPath=ne(["document","objects","MessageExample"]),this.canSupportSpecificationExtensions=!0}};const cu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="messageTrait"}get messageId(){return this.get("messageId")}set messageId(e){this.set("messageId",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get correlationId(){return this.get("correlationId")}set correlationId(e){this.set("correlationId",e)}get schemaFormat(){return this.get("schemaFormat")}set schemaFormat(e){this.set("schemaFormat",e)}get contentType(){return this.get("contentType")}set contentType(e){this.set("contentType",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}};const lu=class extends Wo{constructor(e){super(e),this.element=new cu,this.specPath=ne(["document","objects","MessageTrait"]),this.canSupportSpecificationExtensions=!0}};const uu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const du=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","CorrelationID"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","correlationID")}};const hu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","MessageBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","messageBindings")}};class pu extends ke{static primaryClass="message-trait-examples";constructor(e,t,s){super(e,t,s),this.classes.push(pu.primaryClass)}}const mu=pu;const _u=class extends Ho{constructor(e){super(e),this.element=new mu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","MessageExample"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const gu=n(function(e){return c(-1,e)});const fu=class extends ze{};const yu=class extends Array{unknownMediaType="application/octet-stream";filterByFormat(){throw new fu("filterByFormat method in MediaTypes class is not yet implemented.")}findBy(){throw new fu("findBy method in MediaTypes class is not yet implemented.")}latest(){throw new fu("latest method in MediaTypes class is not yet implemented.")}};class bu extends yu{filterByFormat(e="generic"){const t="generic"===e?"asyncapi;version":e;return this.filter(e=>e.includes(t))}findBy(e="2.6.0",t="generic"){const s="generic"===t?`vnd.aai.asyncapi;version=${e}`:`vnd.aai.asyncapi+${t};version=${e}`;return this.find(e=>e.includes(s))||this.unknownMediaType}latest(e="generic"){return gu(this.filterByFormat(e))}}const xu=new bu("application/vnd.aai.asyncapi;version=2.0.0","application/vnd.aai.asyncapi+json;version=2.0.0","application/vnd.aai.asyncapi+yaml;version=2.0.0","application/vnd.aai.asyncapi;version=2.1.0","application/vnd.aai.asyncapi+json;version=2.1.0","application/vnd.aai.asyncapi+yaml;version=2.1.0","application/vnd.aai.asyncapi;version=2.2.0","application/vnd.aai.asyncapi+json;version=2.2.0","application/vnd.aai.asyncapi+yaml;version=2.2.0","application/vnd.aai.asyncapi;version=2.3.0","application/vnd.aai.asyncapi+json;version=2.3.0","application/vnd.aai.asyncapi+yaml;version=2.3.0","application/vnd.aai.asyncapi;version=2.4.0","application/vnd.aai.asyncapi+json;version=2.4.0","application/vnd.aai.asyncapi+yaml;version=2.4.0","application/vnd.aai.asyncapi;version=2.5.0","application/vnd.aai.asyncapi+json;version=2.5.0","application/vnd.aai.asyncapi+yaml;version=2.5.0","application/vnd.aai.asyncapi;version=2.6.0","application/vnd.aai.asyncapi+json;version=2.6.0","application/vnd.aai.asyncapi+yaml;version=2.6.0");const vu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="message"}get messageId(){return this.get("messageId")}set messageId(e){this.set("messageId",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get payload(){return this.get("payload")}set payload(e){this.set("payload",e)}get correlationId(){return this.get("correlationId")}set correlationId(e){this.set("correlationId",e)}get schemaFormat(){return this.get("schemaFormat")}set schemaFormat(e){this.set("schemaFormat",e)}get contentType(){return this.get("contentType")}set contentType(e){this.set("contentType",e)}get name(){return this.get("name")}set name(e){this.set("name",e)}get title(){return this.get("title")}set title(e){this.set("title",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}get examples(){return this.get("examples")}set examples(e){this.set("examples",e)}get traits(){return this.get("traits")}set traits(e){this.set("traits",e)}};const wu=class extends Wo{constructor(e){super(e),this.element=new vu,this.specPath=ne(["document","objects","Message"]),this.canSupportSpecificationExtensions=!0}ObjectElement(e){Wo.prototype.ObjectElement.call(this,e);const t=e.node,s=this.element.get("payload"),n=o(xu.latest(),Ir(t.get("schemaFormat")));if(xu.includes(n)&&qo(s)){const e=this.toRefractedElement(["document","objects","Reference"],s);e.meta.set("referenced-element","schema"),this.element.payload=e}else xu.includes(n)&&st(this.element.payload)&&(this.element.payload=this.toRefractedElement(["document","objects","Schema"],s))}};const Eu=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","Schema"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","schema")}};const Su=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","CorrelationID"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","correlationID")}};const Ou=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","MessageBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","messageBindings")}};class Au extends ke{static primaryClass="message-examples";constructor(e,t,s){super(e,t,s),this.classes.push(Au.primaryClass)}}const Cu=Au;const Iu=class extends Ho{constructor(e){super(e),this.element=new Cu}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","MessageExample"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};class Tu extends ke{static primaryClass="message-traits";constructor(e,t,s){super(e,t,s),this.classes.push(Tu.primaryClass)}}const Pu=Tu;const Fu=class extends Ho{constructor(e){super(e),this.element=new Pu}ArrayElement(e){const t=e.node;t.forEach(e=>{let t;qo(e)?(t=this.toRefractedElement(["document","objects","Reference"],e),t.meta.set("referenced-element","messageTrait")):t=this.toRefractedElement(["document","objects","MessageTrait"],e),this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const Mu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operationBindings"}get http(){return this.get("http")}set http(e){this.set("http",e)}get ws(){return this.get("ws")}set ws(e){this.set("ws",e)}get kafka(){return this.get("kafka")}set kafka(e){this.set("kafka",e)}get anypointmq(){return this.get("anypointmq")}set anypointmq(e){this.set("anypointmq",e)}get amqp(){return this.get("amqp")}set amqp(e){this.set("amqp",e)}get amqp1(){return this.get("amqp1")}set amqp1(e){this.set("amqp1",e)}get mqtt(){return this.get("mqtt")}set mqtt(e){this.set("mqtt",e)}get mqtt5(){return this.get("mqtt5")}set mqtt5(e){this.set("mqtt5",e)}get nats(){return this.get("nats")}set nats(e){this.set("nats",e)}get jms(){return this.get("jms")}set jms(e){this.set("jms",e)}get sns(){return this.get("sns")}set sns(e){this.set("sns",e)}get solace(){return this.get("solace")}set solace(e){this.set("solace",e)}get sqs(){return this.get("sqs")}set sqs(e){this.set("sqs",e)}get stomp(){return this.get("stomp")}set stomp(e){this.set("stomp",e)}get redis(){return this.get("redis")}set redis(e){this.set("redis",e)}get mercure(){return this.get("mercure")}set mercure(e){this.set("mercure",e)}get googlepubsub(){return this.get("googlepubsub")}set googlepubsub(e){this.set("googlepubsub",e)}get ibmmq(){return this.get("ibmmq")}set ibmmq(e){this.set("ibmmq",e)}};const Bu=class extends Wo{constructor(e){super(e),this.element=new Mu,this.specPath=ne(["document","objects","OperationBindings"]),this.canSupportSpecificationExtensions=!0}};const ju=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="operationTrait"}get operationId(){return this.get("operationId")}set operationId(e){this.set("operationId",e)}get summary(){return this.get("summary")}set summary(e){this.set("summary",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get security(){return this.get("security")}set security(e){this.set("security",e)}get tags(){return this.get("tags")}set tags(e){this.set("tags",e)}get externalDocs(){return this.get("externalDocs")}set externalDocs(e){this.set("externalDocs",e)}get bindings(){return this.get("bindings")}set bindings(e){this.set("bindings",e)}};const ku=class extends Wo{constructor(e){super(e),this.element=new ju,this.specPath=ne(["document","objects","OperationTrait"]),this.canSupportSpecificationExtensions=!0}};class Nu extends ke{static primaryClass="operation-trait-security";constructor(e,t,s){super(e,t,s),this.classes.push(Nu.primaryClass)}}const Ru=Nu;const qu=class extends Ho{constructor(e){super(e),this.element=new Ru}ArrayElement(e){const t=e.node;t.forEach(e=>{const t=this.toRefractedElement(["document","objects","SecurityRequirement"],e);this.element.push(t)}),this.copyMetaAndAttributes(t,this.element),e.stop()}};const $u=class extends Jo{constructor(e){super(e),this.alternator=[{predicate:qo,specPath:["document","objects","Reference"]},{predicate:Hi,specPath:["document","objects","OperationBindings"]}]}ObjectElement(e){Uo.prototype.enter.call(this,e),za(this.element)&&this.element.meta.set("referenced-element","operationBindings")}};const Du=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpChannelBinding",this.classes.push("channel-binding")}get is(){return this.get("is")}set is(e){this.set("is",e)}get exchange(){return this.get("exchange")}set exchange(e){this.set("exchange",e)}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Vu=class extends Wo{constructor(e){super(e),this.element=new Du,this.specPath=ne(["document","objects","bindings","amqp","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Lu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpMessageBinding",this.classes.push("message-binding")}get contentEncoding(){return this.get("contentEncoding")}set contentEncoding(e){this.set("contentEncoding",e)}get messageType(){return this.get("messageType")}set messageType(e){this.set("messageType",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Uu=class extends Wo{constructor(e){super(e),this.element=new Lu,this.specPath=ne(["document","objects","bindings","amqp","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Hu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpOperationBinding",this.classes.push("operation-binding")}get expiration(){return this.get("expiration")}set expiration(e){this.set("expiration",e)}get userId(){return this.get("userId")}set userId(e){this.set("userId",e)}get cc(){return this.get("cc")}set cc(e){this.set("cc",e)}get priority(){return this.get("priority")}set priority(e){this.set("priority",e)}get deliveryMode(){return this.get("deliveryMode")}set deliveryMode(e){this.set("deliveryMode",e)}get mandatory(){return this.get("mandatory")}set mandatory(e){this.set("mandatory",e)}get bcc(){return this.get("bcc")}set bcc(e){this.set("bcc",e)}get replyTo(){return this.get("replyTo")}set replyTo(e){this.set("replyTo",e)}get timestamp(){return this.get("timestamp")}set timestamp(e){this.set("timestamp",e)}get ack(){return this.get("ack")}set ack(e){this.set("ack",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Wu=class extends Wo{constructor(e){super(e),this.element=new Hu,this.specPath=ne(["document","objects","bindings","amqp","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Gu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqpServerBinding",this.classes.push("server-binding")}};const Zu=class extends Wo{constructor(e){super(e),this.element=new Gu,this.specPath=ne(["document","objects","bindings","amqp","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ju=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1ChannelBinding",this.classes.push("channel-binding")}};const zu=class extends Wo{constructor(e){super(e),this.element=new Ju,this.specPath=ne(["document","objects","bindings","amqp1","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Xu=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1MessageBinding",this.classes.push("message-binding")}};const Qu=class extends Wo{constructor(e){super(e),this.element=new Xu,this.specPath=ne(["document","objects","bindings","amqp1","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Ku=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1OperationBinding",this.classes.push("operation-binding")}};const Yu=class extends Wo{constructor(e){super(e),this.element=new Ku,this.specPath=ne(["document","objects","bindings","amqp1","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const ed=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="amqp1ServerBinding",this.classes.push("server-binding")}};const td=class extends Wo{constructor(e){super(e),this.element=new ed,this.specPath=ne(["document","objects","bindings","amqp1","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const sd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqChannelBinding",this.classes.push("channel-binding")}get destination(){return this.get("destination")}set destination(e){this.set("destination",e)}get destinationType(){return this.get("destinationType")}set destinationType(e){this.set("destinationType",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const nd=class extends Wo{constructor(e){super(e),this.element=new sd,this.specPath=ne(["document","objects","bindings","anypointmq","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const rd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqMessageBinding",this.classes.push("message-binding")}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const id=class extends Wo{constructor(e){super(e),this.element=new rd,this.specPath=ne(["document","objects","bindings","anypointmq","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const od=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqOperationBinding",this.classes.push("operation-binding")}};const ad=class extends Wo{constructor(e){super(e),this.element=new od,this.specPath=ne(["document","objects","bindings","anypointmq","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const cd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="anypointmqServerBinding",this.classes.push("server-binding")}};const ld=class extends Wo{constructor(e){super(e),this.element=new cd,this.specPath=ne(["document","objects","bindings","anypointmq","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const ud=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpChannelBinding",this.classes.push("channel-binding")}};const dd=class extends Wo{constructor(e){super(e),this.element=new ud,this.specPath=ne(["document","objects","bindings","http","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const hd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpMessageBinding",this.classes.push("message-binding")}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const pd=class extends Wo{constructor(e){super(e),this.element=new hd,this.specPath=ne(["document","objects","bindings","http","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const md=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpOperationBinding",this.classes.push("operation-binding")}get type(){return this.get("type")}set type(e){this.set("type",e)}get method(){return this.get("method")}set method(e){this.set("method",e)}get query(){return this.get("query")}set query(e){this.set("query",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const _d=class extends Wo{constructor(e){super(e),this.element=new md,this.specPath=ne(["document","objects","bindings","http","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const gd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="httpServerBinding",this.classes.push("server-binding")}};const fd=class extends Wo{constructor(e){super(e),this.element=new gd,this.specPath=ne(["document","objects","bindings","http","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const yd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubChannelBinding",this.classes.push("channel-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get labels(){return this.get("labels")}set labels(e){this.set("labels",e)}get messageRetentionDuration(){return this.get("messageRetentionDuration")}set messageRetentionDuration(e){this.set("messageRetentionDuration",e)}get messageStoragePolicy(){return this.get("messageStoragePolicy")}set messageStoragePolicy(e){this.set("messageStoragePolicy",e)}get schemaSettings(){return this.get("schemaSettings")}set schemaSettings(e){this.set("schemaSettings",e)}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}};const bd=class extends Wo{constructor(e){super(e),this.element=new yd,this.specPath=ne(["document","objects","bindings","googlepubsub","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const xd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubMessageBinding",this.classes.push("message-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get attributesField(){return this.get("attributes")}set attributesField(e){this.set("attributes",e)}get orderingKey(){return this.get("orderingKey")}set orderingKey(e){this.set("orderingKey",e)}get schema(){return this.get("schema")}set schema(e){this.set("schema",e)}};const vd=class extends Wo{constructor(e){super(e),this.element=new xd,this.specPath=ne(["document","objects","bindings","googlepubusb","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const wd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubOperationBinding",this.classes.push("operation-binding")}};const Ed=class extends Wo{constructor(e){super(e),this.element=new wd,this.specPath=ne(["document","objects","bindings","googlepubsub","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Sd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="googlepubsubServerBinding",this.classes.push("server-binding")}};const Od=class extends Wo{constructor(e){super(e),this.element=new Sd,this.specPath=ne(["document","objects","bindings","googlepubsub","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ad=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqChannelBinding",this.classes.push("channel-binding")}get destinationType(){return this.get("destinationType")}set destinationType(e){this.set("destinationType",e)}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}get maxMsgLength(){return this.get("maxMsgLength")}set maxMsgLength(e){this.set("maxMsgLength",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Cd=class extends Wo{constructor(e){super(e),this.element=new Ad,this.specPath=ne(["document","objects","bindings","ibmmq","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Id=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqMessageBinding",this.classes.push("message-binding")}get type(){return this.get("type")}set type(e){this.set("type",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get description(){return this.get("description")}set description(e){this.set("description",e)}get expiry(){return this.get("expiry")}set expiry(e){this.set("expiry",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Td=class extends Wo{constructor(e){super(e),this.element=new Id,this.specPath=ne(["document","objects","bindings","ibmmq","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Pd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqOperationBinding",this.classes.push("operation-binding")}};const Fd=class extends Wo{constructor(e){super(e),this.element=new Pd,this.specPath=ne(["document","objects","bindings","ibmmq","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Md=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="ibmmqServerBinding",this.classes.push("server-binding")}get groupId(){return this.get("groupId")}set groupId(e){this.set("groupId",e)}get ccdtQueueManagerName(){return this.get("ccdtQueueManagerName")}set ccdtQueueManagerName(e){this.set("ccdtQueueManagerName",e)}get cipherSpec(){return this.get("cipherSpec")}set cipherSpec(e){this.set("cipherSpec",e)}get multiEndpointServer(){return this.get("multiEndpointServer")}set multiEndpointServer(e){this.set("multiEndpointServer",e)}get heartBeatInterval(){return this.get("heartBeatInterval")}set heartBeatInterval(e){this.set("heartBeatInterval",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Bd=class extends Wo{constructor(e){super(e),this.element=new Md,this.specPath=ne(["document","objects","bindings","ibmmq","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const jd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsChannelBinding",this.classes.push("channel-binding")}};const kd=class extends Wo{constructor(e){super(e),this.element=new jd,this.specPath=ne(["document","objects","bindings","jms","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Nd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsMessageBinding",this.classes.push("message-binding")}};const Rd=class extends Wo{constructor(e){super(e),this.element=new Nd,this.specPath=ne(["document","objects","bindings","jms","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const qd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsOperationBinding",this.classes.push("operation-binding")}};const $d=class extends Wo{constructor(e){super(e),this.element=new qd,this.specPath=ne(["document","objects","bindings","jms","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Dd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="jmsServerBinding",this.classes.push("server-binding")}};const Vd=class extends Wo{constructor(e){super(e),this.element=new Dd,this.specPath=ne(["document","objects","bindings","jms","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ld=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaChannelBinding",this.classes.push("channel-binding")}get topic(){return this.get("topic")}set topic(e){this.set("topic",e)}get partitions(){return this.get("partitions")}set partitions(e){this.set("partitions",e)}get replicas(){return this.get("replicas")}set replicas(e){this.set("replicas",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Ud=class extends Wo{constructor(e){super(e),this.element=new Ld,this.specPath=ne(["document","objects","bindings","kafka","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Hd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaMessageBinding",this.classes.push("message-binding")}get key(){return this.get("key")}set key(e){this.set("key",e)}get schemaIdLocation(){return this.get("schemaIdLocation")}set schemaIdLocation(e){this.set("schemaIdLocation",e)}get schemaIdPayloadEncoding(){return this.get("schemaIdPayloadEncoding")}set schemaIdPayloadEncoding(e){this.set("schemaIdPayloadEncoding",e)}get schemaLookupStrategy(){return this.get("schemaLookupStrategy")}set schemaLookupStrategy(e){this.set("schemaLookupStrategy",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Wd=class extends Wo{constructor(e){super(e),this.element=new Hd,this.specPath=ne(["document","objects","bindings","kafka","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Gd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaOperationBinding",this.classes.push("operation-binding")}get groupId(){return this.get("groupId")}set groupId(e){this.set("groupId",e)}get clientId(){return this.get("clientId")}set clientId(e){this.set("clientId",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Zd=class extends Wo{constructor(e){super(e),this.element=new Gd,this.specPath=ne(["document","objects","bindings","kafka","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Jd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="kafkaServerBinding",this.classes.push("server-binding")}get schemaRegistryUrl(){return this.get("schemaRegistryUrl")}set schemaRegistryUrl(e){this.set("schemaRegistryUrl",e)}get schemaRegistryVendor(){return this.get("schemaRegistryVendor")}set schemaRegistryVendor(e){this.set("schemaRegistryVendor",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const zd=class extends Wo{constructor(e){super(e),this.element=new Jd,this.specPath=ne(["document","objects","bindings","kafka","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Xd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureChannelBinding",this.classes.push("channel-binding")}};const Qd=class extends Wo{constructor(e){super(e),this.element=new Xd,this.specPath=ne(["document","objects","bindings","mercure","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Kd=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureMessageBinding",this.classes.push("message-binding")}};const Yd=class extends Wo{constructor(e){super(e),this.element=new Kd,this.specPath=ne(["document","objects","bindings","mercure","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const eh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureOperationBinding",this.classes.push("operation-binding")}};const th=class extends Wo{constructor(e){super(e),this.element=new eh,this.specPath=ne(["document","objects","bindings","mercure","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const sh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mercureServerBinding",this.classes.push("server-binding")}};const nh=class extends Wo{constructor(e){super(e),this.element=new sh,this.specPath=ne(["document","objects","bindings","mercure","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const rh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttChannelBinding",this.classes.push("channel-binding")}};const ih=class extends Wo{constructor(e){super(e),this.element=new rh,this.specPath=ne(["document","objects","bindings","mqtt","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const oh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttMessageBinding",this.classes.push("message-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const ah=class extends Wo{constructor(e){super(e),this.element=new oh,this.specPath=ne(["document","objects","bindings","mqtt","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const ch=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttOperationBinding",this.classes.push("operation-binding")}get qos(){return this.get("qos")}set qos(e){this.set("qos",e)}get retain(){return this.get("retain")}set retain(e){this.set("retain",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const lh=class extends Wo{constructor(e){super(e),this.element=new ch,this.specPath=ne(["document","objects","bindings","mqtt","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const uh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqttServerBinding",this.classes.push("server-binding")}get clientId(){return this.get("clientId")}set clientId(e){this.set("clientId",e)}get cleanSession(){return this.get("cleanSession")}set cleanSession(e){this.set("cleanSession",e)}get lastWill(){return this.get("lastWill")}set lastWill(e){this.set("lastWill",e)}get keepAlive(){return this.get("keepAlive")}set keepAlive(e){this.set("keepAlive",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const dh=class extends Wo{constructor(e){super(e),this.element=new uh,this.specPath=ne(["document","objects","bindings","mqtt","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const hh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5ChannelBinding",this.classes.push("channel-binding")}};const ph=class extends Wo{constructor(e){super(e),this.element=new hh,this.specPath=ne(["document","objects","bindings","mqtt5","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const mh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5MessageBinding",this.classes.push("message-binding")}};const _h=class extends Wo{constructor(e){super(e),this.element=new mh,this.specPath=ne(["document","objects","bindings","mqtt5","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const gh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5OperationBinding",this.classes.push("operation-binding")}};const fh=class extends Wo{constructor(e){super(e),this.element=new gh,this.specPath=ne(["document","objects","bindings","mqtt5","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const yh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="mqtt5ServerBinding",this.classes.push("server-binding")}};const bh=class extends Wo{constructor(e){super(e),this.element=new yh,this.specPath=ne(["document","objects","bindings","mqtt5","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const xh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsChannelBinding",this.classes.push("channel-binding")}};const vh=class extends Wo{constructor(e){super(e),this.element=new xh,this.specPath=ne(["document","objects","bindings","nats","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const wh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsMessageBinding",this.classes.push("message-binding")}};const Eh=class extends Wo{constructor(e){super(e),this.element=new wh,this.specPath=ne(["document","objects","bindings","nats","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Sh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsOperationBinding",this.classes.push("operation-binding")}get queue(){return this.get("queue")}set queue(e){this.set("queue",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Oh=class extends Wo{constructor(e){super(e),this.element=new Sh,this.specPath=ne(["document","objects","bindings","nats","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Ah=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="natsServerBinding",this.classes.push("server-binding")}};const Ch=class extends Wo{constructor(e){super(e),this.element=new Ah,this.specPath=ne(["document","objects","bindings","nats","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Ih=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarChannelBinding",this.classes.push("channel-binding")}get namespace(){return this.get("namespace")}set namespace(e){this.set("namespace",e)}get persistence(){return this.get("persistence")}set persistence(e){this.set("persistence",e)}get compaction(){return this.get("compaction")}set compaction(e){this.set("compaction",e)}get"geo-replication"(){return this.get("geo-replication")}set"geo-replication"(e){this.set("geo-replication",e)}get retention(){return this.get("retention")}set retention(e){this.set("retention",e)}get ttl(){return this.get("ttl")}set ttl(e){this.set("ttl",e)}get deduplication(){return this.get("deduplication")}set deduplication(e){this.set("deduplication",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Th=class extends Wo{constructor(e){super(e),this.element=new Ih,this.specPath=ne(["document","objects","bindings","pulsar","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Ph=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarMessageBinding",this.classes.push("message-binding")}};const Fh=class extends Wo{constructor(e){super(e),this.element=new Ph,this.specPath=ne(["document","objects","bindings","pulsar","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Mh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarOperationBinding",this.classes.push("operation-binding")}};const Bh=class extends Wo{constructor(e){super(e),this.element=new Mh,this.specPath=ne(["document","objects","bindings","pulsar","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const jh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="pulsarServerBinding",this.classes.push("server-binding")}get tenant(){return this.get("tenant")}set tenant(e){this.set("tenant",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const kh=class extends Wo{constructor(e){super(e),this.element=new jh,this.specPath=ne(["document","objects","bindings","pulsar","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Nh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisChannelBinding",this.classes.push("channel-binding")}};const Rh=class extends Wo{constructor(e){super(e),this.element=new Nh,this.specPath=ne(["document","objects","bindings","redis","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const qh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisMessageBinding",this.classes.push("message-binding")}};const $h=class extends Wo{constructor(e){super(e),this.element=new qh,this.specPath=ne(["document","objects","bindings","redis","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Dh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisOperationBinding",this.classes.push("operation-binding")}};const Vh=class extends Wo{constructor(e){super(e),this.element=new Dh,this.specPath=ne(["document","objects","bindings","redis","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Lh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="redisServerBinding",this.classes.push("server-binding")}};const Uh=class extends Wo{constructor(e){super(e),this.element=new Lh,this.specPath=ne(["document","objects","bindings","redis","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Hh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsChannelBinding",this.classes.push("channel-binding")}};const Wh=class extends Wo{constructor(e){super(e),this.element=new Hh,this.specPath=ne(["document","objects","bindings","sns","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Gh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsMessageBinding",this.classes.push("message-binding")}};const Zh=class extends Wo{constructor(e){super(e),this.element=new Gh,this.specPath=ne(["document","objects","bindings","sns","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Jh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsOperationBinding",this.classes.push("operation-binding")}};const zh=class extends Wo{constructor(e){super(e),this.element=new Jh,this.specPath=ne(["document","objects","bindings","sns","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Xh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="snsServerBinding",this.classes.push("server-binding")}};const Qh=class extends Wo{constructor(e){super(e),this.element=new Xh,this.specPath=ne(["document","objects","bindings","sns","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const Kh=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceChannelBinding",this.classes.push("channel-binding")}};const Yh=class extends Wo{constructor(e){super(e),this.element=new Kh,this.specPath=ne(["document","objects","bindings","solace","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const ep=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceMessageBinding",this.classes.push("message-binding")}};const tp=class extends Wo{constructor(e){super(e),this.element=new ep,this.specPath=ne(["document","objects","bindings","solace","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const sp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceOperationBinding",this.classes.push("operation-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get destinations(){return this.get("destinations")}set destinations(e){this.set("destinations",e)}};const np=class extends Wo{constructor(e){super(e),this.element=new sp,this.specPath=ne(["document","objects","bindings","solace","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const rp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="solaceServerBinding",this.classes.push("server-binding")}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}get msgVpn(){return this.get("msgVpn")}set msgVpn(e){this.set("msgVpn",e)}};const ip=class extends Wo{constructor(e){super(e),this.element=new rp,this.specPath=ne(["document","objects","bindings","solace","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const op=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsChannelBinding",this.classes.push("channel-binding")}};const ap=class extends Wo{constructor(e){super(e),this.element=new op,this.specPath=ne(["document","objects","bindings","sqs","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const cp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsMessageBinding",this.classes.push("message-binding")}};const lp=class extends Wo{constructor(e){super(e),this.element=new cp,this.specPath=ne(["document","objects","bindings","sqs","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const up=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsOperationBinding",this.classes.push("operation-binding")}};const dp=class extends Wo{constructor(e){super(e),this.element=new up,this.specPath=ne(["document","objects","bindings","sqs","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const hp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="sqsServerBinding",this.classes.push("server-binding")}};const pp=class extends Wo{constructor(e){super(e),this.element=new hp,this.specPath=ne(["document","objects","bindings","sqs","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const mp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompChannelBinding",this.classes.push("channel-binding")}};const _p=class extends Wo{constructor(e){super(e),this.element=new mp,this.specPath=ne(["document","objects","bindings","stomp","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const gp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompMessageBinding",this.classes.push("message-binding")}};const fp=class extends Wo{constructor(e){super(e),this.element=new gp,this.specPath=ne(["document","objects","bindings","stomp","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const yp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompOperationBinding",this.classes.push("operation-binding")}};const bp=class extends Wo{constructor(e){super(e),this.element=new yp,this.specPath=ne(["document","objects","bindings","stomp","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const xp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="stompServerBinding",this.classes.push("server-binding")}};const vp=class extends Wo{constructor(e){super(e),this.element=new xp,this.specPath=ne(["document","objects","bindings","stomp","ServerBinding"]),this.canSupportSpecificationExtensions=!1}};const wp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketChannelBinding",this.classes.push("channel-binding")}get method(){return this.get("method")}set method(e){this.set("method",e)}get query(){return this.get("query")}set query(e){this.set("query",e)}get headers(){return this.get("headers")}set headers(e){this.set("headers",e)}get bindingVersion(){return this.get("bindingVersion")}set bindingVersion(e){this.set("bindingVersion",e)}};const Ep=class extends Wo{constructor(e){super(e),this.element=new wp,this.specPath=ne(["document","objects","bindings","ws","ChannelBinding"]),this.canSupportSpecificationExtensions=!1}};const Sp=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketMessageBinding",this.classes.push("message-binding")}};const Op=class extends Wo{constructor(e){super(e),this.element=new Sp,this.specPath=ne(["document","objects","bindings","ws","MessageBinding"]),this.canSupportSpecificationExtensions=!1}};const Ap=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketOperationBinding",this.classes.push("operation-binding")}};const Cp=class extends Wo{constructor(e){super(e),this.element=new Ap,this.specPath=ne(["document","objects","bindings","ws","OperationBinding"]),this.canSupportSpecificationExtensions=!1}};const Ip=class extends Ie{constructor(e,t,s){super(e,t,s),this.element="webSocketServerBinding",this.classes.push("server-binding")}};const Tp=class extends Wo{constructor(e){super(e),this.element=new Ip,this.specPath=ne(["document","objects","bindings","ws","ServerBinding"]),this.canSupportSpecificationExtensions=!1}},Pp={element:"reference",$visitor:fc,fixedFields:{$ref:yc}},Fp={element:"schema",$visitor:bc,fixedFields:{...qc,allOf:Ec,anyOf:Oc,oneOf:Cc,items:{$visitor:Bc,alias:"itemsField"},properties:Rc,patternProperties:kc,dependencies:Fc,definitions:Tc,discriminator:{$ref:"#/visitors/value"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},deprecated:{$ref:"#/visitors/value"}}},Mp={visitors:{value:Po,document:{objects:{AsyncApi:{element:"asyncApi2",$visitor:zo,fixedFields:{asyncapi:{$ref:"#/visitors/document/objects/AsyncApiVersion"},id:{$visitor:Yo,alias:"idField"},info:{$ref:"#/visitors/document/objects/Info"},servers:{$ref:"#/visitors/document/objects/Servers"},defaultContentType:{$ref:"#/visitors/document/objects/DefaultContentType"},channels:{$ref:"#/visitors/document/objects/Channels"},components:{$ref:"#/visitors/document/objects/Components"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"}}},AsyncApiVersion:{element:"asyncApiVersion",$visitor:Qo},Identifier:{element:"identifier",$visitor:Yo},Info:{element:"info",$visitor:ta,fixedFields:{title:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},termsOfService:{$ref:"#/visitors/value"},version:sa,contact:{$ref:"#/visitors/document/objects/Contact"},license:{$ref:"#/visitors/document/objects/License"}}},Contact:{element:"contact",$visitor:ra,fixedFields:{name:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"},email:{$ref:"#/visitors/value"}}},License:{element:"license",$visitor:ua,fixedFields:{name:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"}}},Servers:{element:"servers",$visitor:sc},Server:{element:"server",$visitor:nc,fixedFields:{url:rc,protocol:{$ref:"#/visitors/value"},protocolVersion:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},variables:cc,security:dc,tags:{$ref:"#/visitors/document/objects/Tags"},bindings:ic}},ServerVariable:{element:"serverVariable",$visitor:hc,fixedFields:{enum:{$ref:"#/visitors/value"},default:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},examples:{$ref:"#/visitors/value"}}},DefaultContentType:{element:"defaultContentType",$visitor:ca},Channels:{element:"channels",$visitor:Xl},ChannelItem:{element:"channelItem",$visitor:Kl,fixedFields:{$ref:Yl,description:{$ref:"#/visitors/value"},servers:su,subscribe:{$ref:"#/visitors/document/objects/Operation"},publish:{$ref:"#/visitors/document/objects/Operation"},parameters:{$ref:"#/visitors/document/objects/Parameters"},bindings:nu}},Operation:{element:"operation",$visitor:Bl,fixedFields:{operationId:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},security:Nl,tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:Rl,traits:Dl,message:Wl}},OperationTrait:{element:"operationTrait",$visitor:ku,fixedFields:{operationId:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},security:qu,tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:$u}},Message:{element:"message",$visitor:wu,fixedFields:{messageId:{$ref:"#/visitors/value"},headers:Eu,payload:{$ref:"#/visitors/value"},correlationId:Su,schemaFormat:{$ref:"#/visitors/value"},contentType:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:Ou,examples:Iu,traits:Fu}},MessageTrait:{element:"messageTrait",$visitor:lu,fixedFields:{messageId:{$ref:"#/visitors/value"},headers:uu,correlationId:du,schemaFormat:{$ref:"#/visitors/value"},contentType:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},title:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},tags:{$ref:"#/visitors/document/objects/Tags"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"},bindings:hu,examples:_u}},MessageExample:{element:"messageExample",$visitor:au,fixedFields:{headers:{$ref:"#/visitors/value"},payload:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},summary:{$ref:"#/visitors/value"}}},Tags:{element:"tags",$visitor:Zl},Tag:{element:"tag",$visitor:zl,fixedFields:{name:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},externalDocs:{$ref:"#/visitors/document/objects/ExternalDocumentation"}}},ExternalDocumentation:{element:"externalDocumentation",$visitor:Uc,fixedFields:{description:{$ref:"#/visitors/value"},url:{$ref:"#/visitors/value"}}},Components:{element:"components",$visitor:Hc,fixedFields:{schemas:Zc,servers:Xc,serverVariables:Yc,channels:sl,messages:il,securitySchemes:cl,parameters:dl,correlationIds:ml,operationTraits:fl,messageTraits:xl,serverBindings:El,channelBindings:Al,operationBindings:Tl,messageBindings:Ml}},JSONReference:Pp,Reference:Pp,JSONSchema:Fp,Schema:Fp,LinkDescription:Io.visitors.document.objects.LinkDescription,SecurityScheme:{element:"securityScheme",$visitor:_c,fixedFields:{type:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},name:{$ref:"#/visitors/value"},in:{$ref:"#/visitors/value"},scheme:{$ref:"#/visitors/value"},bearerFormat:{$ref:"#/visitors/value"},flows:{$ref:"#/visitors/document/objects/OAuthFlows"},openIdConnectUrl:{$ref:"#/visitors/value"}}},SecurityRequirement:{element:"securityRequirement",$visitor:gc},OAuthFlows:{element:"oAuthFlows",$visitor:ha,fixedFields:{implicit:{$ref:"#/visitors/document/objects/OAuthFlow"},password:{$ref:"#/visitors/document/objects/OAuthFlow"},clientCredentials:{$ref:"#/visitors/document/objects/OAuthFlow"},authorizationCode:{$ref:"#/visitors/document/objects/OAuthFlow"}}},OAuthFlow:{element:"oAuthFlow",$visitor:ma,fixedFields:{authorizationUrl:{$ref:"#/visitors/value"},tokenUrl:{$ref:"#/visitors/value"},refreshUrl:{$ref:"#/visitors/value"},scopes:fa}},ServerBindings:{element:"serverBindings",$visitor:pc,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/ServerBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/ServerBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/ServerBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/ServerBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/ServerBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/ServerBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/ServerBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/ServerBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/ServerBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/ServerBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/ServerBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/ServerBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/ServerBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/ServerBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/ServerBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/ServerBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/ServerBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/ServerBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/ServerBinding"}}},Parameters:{element:"parameters",$visitor:$c},Parameter:{element:"parameter",$visitor:Dc,fixedFields:{description:{$ref:"#/visitors/value"},schema:Vc,location:{$ref:"#/visitors/value"}}},ChannelBindings:{element:"channelBindings",$visitor:Ql,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/ChannelBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/ChannelBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/ChannelBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/ChannelBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/ChannelBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/ChannelBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/ChannelBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/ChannelBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/ChannelBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/ChannelBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/ChannelBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/ChannelBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/ChannelBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/ChannelBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/ChannelBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/ChannelBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/ChannelBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/ChannelBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/ChannelBinding"}}},OperationBindings:{element:"operationBindings",$visitor:Bu,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/OperationBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/OperationBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/OperationBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/OperationBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/OperationBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/OperationBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/OperationBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/OperationBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/OperationBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/OperationBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/OperationBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/OperationBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/OperationBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/OperationBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/OperationBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/OperationBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/OperationBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/OperationBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/OperationBinding"}}},MessageBindings:{element:"messageBindings",$visitor:iu,fixedFields:{http:{$ref:"#/visitors/document/objects/bindings/http/MessageBinding"},ws:{$ref:"#/visitors/document/objects/bindings/ws/MessageBinding"},kafka:{$ref:"#/visitors/document/objects/bindings/kafka/MessageBinding"},anypointmq:{$ref:"#/visitors/document/objects/bindings/anypointmq/MessageBinding"},amqp:{$ref:"#/visitors/document/objects/bindings/amqp/MessageBinding"},amqp1:{$ref:"#/visitors/document/objects/bindings/amqp1/MessageBinding"},mqtt:{$ref:"#/visitors/document/objects/bindings/mqtt/MessageBinding"},mqtt5:{$ref:"#/visitors/document/objects/bindings/mqtt5/MessageBinding"},nats:{$ref:"#/visitors/document/objects/bindings/nats/MessageBinding"},jms:{$ref:"#/visitors/document/objects/bindings/jms/MessageBinding"},sns:{$ref:"#/visitors/document/objects/bindings/sns/MessageBinding"},solace:{$ref:"#/visitors/document/objects/bindings/solace/MessageBinding"},sqs:{$ref:"#/visitors/document/objects/bindings/sqs/MessageBinding"},stomp:{$ref:"#/visitors/document/objects/bindings/stomp/MessageBinding"},redis:{$ref:"#/visitors/document/objects/bindings/redis/MessageBinding"},mercure:{$ref:"#/visitors/document/objects/bindings/mercure/MessageBinding"},ibmmq:{$ref:"#/visitors/document/objects/bindings/ibmmq/MessageBinding"},googlepubsub:{$ref:"#/visitors/document/objects/bindings/googlepubsub/MessageBinding"},pulsar:{$ref:"#/visitors/document/objects/bindings/pulsar/MessageBinding"}}},CorrelationID:{element:"correlationID",$visitor:oa,fixedFields:{description:{$ref:"#/visitors/value"},location:{$ref:"#/visitors/value"}}},bindings:{http:{ServerBinding:{element:"httpServerBinding",$visitor:fd},ChannelBinding:{element:"httpChannelBinding",$visitor:dd},OperationBinding:{element:"httpOperationBinding",$visitor:_d,fixedFields:{type:{$ref:"#/visitors/value"},method:{$ref:"#/visitors/value"},query:vc,bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"httpMessageBinding",$visitor:pd,fixedFields:{headers:vc,bindingVersion:{$ref:"#/visitors/value"}}}},ws:{ServerBinding:{element:"webSocketServerBinding",$visitor:Tp},ChannelBinding:{element:"webSocketChannelBinding",$visitor:Ep,fixedFields:{method:{$ref:"#/visitors/value"},query:vc,headers:vc,bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"webSocketOperationBinding",$visitor:Cp},MessageBinding:{element:"webSocketMessageBinding",$visitor:Op}},kafka:{ServerBinding:{element:"kafkaServerBinding",$visitor:zd,fixedFields:{schemaRegistryUrl:{$ref:"#/visitors/value"},schemaRegistryVendor:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"kafkaChannelBinding",$visitor:Ud,fixedFields:{topic:{$ref:"#/visitors/value"},partitions:{$ref:"#/visitors/value"},replicas:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"kafkaOperationBinding",$visitor:Zd,fixedFields:{groupId:vc,clientId:vc,bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"kafkaMessageBinding",$visitor:Wd,fixedFields:{key:vc,schemaIdLocation:{$ref:"#/visitors/value"},schemaIdPayloadEncoding:{$ref:"#/visitors/value"},schemaLookupStrategy:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}}},anypointmq:{ServerBinding:{element:"anypointmqServerBinding",$visitor:ld},ChannelBinding:{element:"anypointmqChannelBinding",$visitor:nd,fixedFields:{destination:{$ref:"#/visitors/value"},destinationType:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"anypointmqOperationBinding",$visitor:ad},MessageBinding:{element:"anypointmqMessageBinding",$visitor:id,fixedFields:{headers:vc,bindingVersion:{$ref:"#/visitors/value"}}}},amqp:{ServerBinding:{element:"amqpServerBinding",$visitor:Zu},ChannelBinding:{element:"amqpChannelBinding",$visitor:Vu,fixedFields:{is:{$ref:"#/visitors/value"},exchange:{$ref:"#/visitors/value"},queue:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"amqpOperationBinding",$visitor:Wu,fixedFields:{expiration:{$ref:"#/visitors/value"},userId:{$ref:"#/visitors/value"},cc:{$ref:"#/visitors/value"},priority:{$ref:"#/visitors/value"},deliveryMode:{$ref:"#/visitors/value"},mandatory:{$ref:"#/visitors/value"},bcc:{$ref:"#/visitors/value"},replyTo:{$ref:"#/visitors/value"},timestamp:{$ref:"#/visitors/value"},ack:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"amqpMessageBinding",$visitor:Uu,fixedFields:{contentEncoding:{$ref:"#/visitors/value"},messageType:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}}},amqp1:{ServerBinding:{element:"amqp1ServerBinding",$visitor:td},ChannelBinding:{element:"amqp1ChannelBinding",$visitor:zu},OperationBinding:{element:"amqp1OperationBinding",$visitor:Yu},MessageBinding:{element:"amqp1MessageBinding",$visitor:Qu}},mqtt:{ServerBinding:{element:"mqttServerBinding",$visitor:dh,fixedFields:{clientId:{$ref:"#/visitors/value"},cleanSession:{$ref:"#/visitors/value"},lastWill:{$ref:"#/visitors/value"},keepAlive:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"mqttChannelBinding",$visitor:ih},OperationBinding:{element:"mqttOperationBinding",$visitor:lh,fixedFields:{qos:{$ref:"#/visitors/value"},retain:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"mqttMessageBinding",$visitor:ah,fixedFields:{bindingVersion:{$ref:"#/visitors/value"}}}},mqtt5:{ServerBinding:{element:"mqtt5ServerBinding",$visitor:bh},ChannelBinding:{element:"mqtt5ChannelBinding",$visitor:ph},OperationBinding:{element:"mqtt5OperationBinding",$visitor:fh},MessageBinding:{element:"mqtt5MessageBinding",$visitor:_h}},nats:{ServerBinding:{element:"natsServerBinding",$visitor:Ch},ChannelBinding:{element:"natsChannelBinding",$visitor:vh},OperationBinding:{element:"natsOperationBinding",$visitor:Oh,fixedFields:{queue:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"natsMessageBinding",$visitor:Eh}},pulsar:{ServerBinding:{element:"pulsarServerBinding",$visitor:kh,fixedFields:{tenant:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"pulsarChannelBinding",$visitor:Th,fixedFields:{namespace:{$ref:"#/visitors/value"},persistence:{$ref:"#/visitors/value"},compaction:{$ref:"#/visitors/value"},"geo-replication":{$ref:"#/visitors/value"},retention:{$ref:"#/visitors/value"},ttl:{$ref:"#/visitors/value"},deduplication:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"pulsarOperationBinding",$visitor:Bh},MessageBinding:{element:"pulsarMessageBinding",$visitor:Fh}},jms:{ServerBinding:{element:"jmsServerBinding",$visitor:Vd},ChannelBinding:{element:"jmsChannelBinding",$visitor:kd},OperationBinding:{element:"jmsOperationBinding",$visitor:$d},MessageBinding:{element:"jmsMessageBinding",$visitor:Rd}},sns:{ServerBinding:{element:"snsServerBinding",$visitor:Qh},ChannelBinding:{element:"snsChannelBinding",$visitor:Wh},OperationBinding:{element:"snsOperationBinding",$visitor:zh},MessageBinding:{element:"snsMessageBinding",$visitor:Zh}},solace:{ServerBinding:{element:"solaceServerBinding",$visitor:ip,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},msgVpn:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"solaceChannelBinding",$visitor:Yh},OperationBinding:{element:"solaceOperationBinding",$visitor:np,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},destinations:{$ref:"#/visitors/value"}}},MessageBinding:{element:"solaceMessageBinding",$visitor:tp}},sqs:{ServerBinding:{element:"sqsServerBinding",$visitor:pp},ChannelBinding:{element:"sqsChannelBinding",$visitor:ap},OperationBinding:{element:"sqsOperationBinding",$visitor:dp},MessageBinding:{element:"sqsMessageBinding",$visitor:lp}},stomp:{ServerBinding:{element:"stompServerBinding",$visitor:vp},ChannelBinding:{element:"stompChannelBinding",$visitor:_p},OperationBinding:{element:"stompOperationBinding",$visitor:bp},MessageBinding:{element:"stompMessageBinding",$visitor:fp}},redis:{ServerBinding:{element:"redisServerBinding",$visitor:Uh},ChannelBinding:{element:"redisChannelBinding",$visitor:Rh},OperationBinding:{element:"redisOperationBinding",$visitor:Vh},MessageBinding:{element:"redisMessageBinding",$visitor:$h}},mercure:{ServerBinding:{element:"mercureServerBinding",$visitor:nh},ChannelBinding:{element:"mercureChannelBinding",$visitor:Qd},OperationBinding:{element:"mercureOperationBinding",$visitor:th},MessageBinding:{element:"mercureMessageBinding",$visitor:Yd}},googlepubsub:{ServerBinding:{element:"googlepubsubServerBinding",$visitor:Od},ChannelBinding:{element:"googlepubsubChannelBinding",$visitor:bd,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},labels:{$ref:"#/visitors/value"},messageRetentionDuration:{$ref:"#/visitors/value"},messageStoragePolicy:{$ref:"#/visitors/value"},schemaSettings:{$ref:"#/visitors/value"},topic:{$ref:"#/visitors/value"}}},OperationBinding:{element:"googlepubsubOperationBinding",$visitor:Ed},MessageBinding:{element:"googlepubsubMessageBinding",$visitor:vd,fixedFields:{bindingVersion:{$ref:"#/visitors/value"},attributes:{$ref:"#/visitors/value",alias:"attributesField"},orderingKey:{$ref:"#/visitors/value"},schema:{$ref:"#/visitors/value"}}}},ibmmq:{ServerBinding:{element:"ibmmqServerBinding",$visitor:Bd,fixedFields:{groupId:{$ref:"#/visitors/value"},ccdtQueueManagerName:{$ref:"#/visitors/value"},cipherSpec:{$ref:"#/visitors/value"},multiEndpointServer:{$ref:"#/visitors/value"},heartBeatInterval:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},ChannelBinding:{element:"ibmmqChannelBinding",$visitor:Cd,fixedFields:{destinationType:{$ref:"#/visitors/value"},queue:{$ref:"#/visitors/value"},topic:{$ref:"#/visitors/value"},maxMsgLength:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},MessageBinding:{element:"ibmmqMessageBinding",$visitor:Td,fixedFields:{type:{$ref:"#/visitors/value"},headers:{$ref:"#/visitors/value"},description:{$ref:"#/visitors/value"},expiry:{$ref:"#/visitors/value"},bindingVersion:{$ref:"#/visitors/value"}}},OperationBinding:{element:"ibmmqOperationBinding",$visitor:Fd}}}},extension:{$visitor:Mo}}}},Bp={namespace:e=>{const{base:t}=e;return t.register("asyncApi2",Bo),t.register("asyncApiVersion",Xo),t.register("channelBindings",xa),t.register("channelItem",va),t.register("channels",wa),t.register("components",Ea),t.register("contact",na),t.register("correlationID",ia),t.register("defaultContentType",aa),t.register("externalDocumentation",Lc),t.register("identifier",Ko),t.register("info",ea),t.register("license",la),t.register("message",vu),t.register("messageBindings",ru),t.register("messageExample",ou),t.register("messageTrait",cu),t.register("oAuthFlow",pa),t.register("oAuthFlows",da),t.register("operation",Sa),t.register("operationBindings",Mu),t.register("operationTrait",ju),t.register("parameter",Oa),t.register("parameters",Aa),t.register("reference",Ca),t.register("schema",Pa),t.register("securityRequirement",Fa),t.register("securityScheme",mc),t.register("server",Ma),t.register("serverBindings",Ba),t.register("servers",ba),t.register("serverVariable",ja),t.register("tag",Jl),t.register("tags",Gl),t.register("amqpChannelBinding",Du),t.register("amqpMessageBinding",Lu),t.register("amqpOperationBinding",Hu),t.register("amqpServerBinding",Gu),t.register("amqp1ChannelBinding",Ju),t.register("amqp1MessageBinding",Xu),t.register("amqp1OperationBinding",Ku),t.register("amqp1ServerBinding",ed),t.register("anypointmqChannelBinding",sd),t.register("anypointmqMessageBinding",rd),t.register("anypointmqOperationBinding",od),t.register("anypointmqServerBinding",cd),t.register("googlepubsubChannelBinding",yd),t.register("googlepubsubMessageBinding",xd),t.register("googlepubsubOperationBinding",wd),t.register("googlepubsubServerBinding",Sd),t.register("httpChannelBinding",ud),t.register("httpMessageBinding",hd),t.register("httpOperationBinding",md),t.register("httpServerBinding",gd),t.register("ibmmqChannelBinding",Ad),t.register("ibmmqMessageBinding",Id),t.register("ibmmqOperationBinding",Pd),t.register("ibmmqServerBinding",Md),t.register("jmsChannelBinding",jd),t.register("jmsMessageBinding",Nd),t.register("jmsOperationBinding",qd),t.register("jmsServerBinding",Dd),t.register("kafkaChannelBinding",Ld),t.register("kafkaMessageBinding",Hd),t.register("kafkaOperationBinding",Gd),t.register("kafkaServerBinding",Jd),t.register("mercureChannelBinding",Xd),t.register("mercureMessageBinding",Kd),t.register("mercureOperationBinding",eh),t.register("mercureServerBinding",sh),t.register("mqttChannelBinding",rh),t.register("mqttMessageBinding",oh),t.register("mqttOperationBinding",ch),t.register("mqttServerBinding",uh),t.register("mqtt5ChannelBinding",hh),t.register("mqtt5MessageBinding",mh),t.register("mqtt5OperationBinding",gh),t.register("mqtt5ServerBinding",yh),t.register("natsChannelBinding",xh),t.register("natsMessageBinding",wh),t.register("natsOperationBinding",Sh),t.register("natsServerBinding",Ah),t.register("pulsarChannelBinding",Ih),t.register("pulsarMessageBinding",Ph),t.register("pulsarOperationBinding",Mh),t.register("pulsarServerBinding",jh),t.register("redisChannelBinding",Nh),t.register("redisMessageBinding",qh),t.register("redisOperationBinding",Dh),t.register("redisServerBinding",Lh),t.register("snsChannelBinding",Hh),t.register("snsMessageBinding",Gh),t.register("snsOperationBinding",Jh),t.register("snsServerBinding",Xh),t.register("solaceChannelBinding",Kh),t.register("solaceMessageBinding",ep),t.register("solaceOperationBinding",sp),t.register("solaceServerBinding",rp),t.register("sqsChannelBinding",op),t.register("sqsMessageBinding",cp),t.register("sqsOperationBinding",up),t.register("sqsServerBinding",hp),t.register("stompChannelBinding",mp),t.register("stompMessageBinding",gp),t.register("stompOperationBinding",yp),t.register("stompServerBinding",xp),t.register("webSocketChannelBinding",wp),t.register("webSocketMessageBinding",Sp),t.register("webSocketOperationBinding",Ap),t.register("webSocketServerBinding",Ip),t}},jp=()=>{const s=new He,n={...e,...t,isStringElement:Qe};return s.use(Bp),{predicates:n,namespace:s}},kp=(e,{element:t="asyncApi2",plugins:s=[],specificationObj:n=Mp,consume:r=!1}={})=>{const i=xt(e),o=tn(n),a=o.elementMap[t];if(!a)throw new Error(`Unknown element type: "${t}"`);const c=new(zt(a,o))({specObj:o,consume:r});return Qn(i,c),xr(c.element,s,{toolboxCreator:jp})},Np=new bu(...xu.filterByFormat("generic"),...xu.filterByFormat("json")),Rp=/"asyncapi"\s*:\s*"(?<version_json>2\.(?:[1-9]\d*|0)\.(?:[1-9]\d*|0))"/,qp=async(e,t={})=>Rp.test(e)&&await qt(e,t),$p=async(e,t={})=>{const s=d({},"refractorOpts",t),n=p(["refractorOpts"],t),r=await $t(e,n),{result:i}=r;if(oe(i)){const e=((e,t={})=>kp(e,{...t,element:"asyncApi2"}))(i,{consume:!0,...s});e.classes.push("result"),r.replaceResult(e)}return r},Dp=(new He).use(Bp)})(),__webpack_exports__})());