diff --git a/example/generate_trie.dart b/example/generate_trie.dart new file mode 100644 index 0000000..7fe9e91 --- /dev/null +++ b/example/generate_trie.dart @@ -0,0 +1,18 @@ +import 'package:dart_style/dart_style.dart'; +import 'package:html/src/constants.dart'; + +/// Run this file to generate package:html/src/trie.dart +void main() { + final root = {}; + for (final entity in entities.keys) { + var node = root; + for (final charCode in entity.codeUnits) { + node = (node[charCode] ??= {}) as Map; + } + } + final source = + 'const entitiesTrieRoot = $root;'.replaceAll('{}', '{}'); + final formatted = DartFormatter().format(source); + // trimRight() because print adds its own newline + print(formatted.trimRight()); +} diff --git a/lib/parser.dart b/lib/parser.dart index 7498598..217af87 100644 --- a/lib/parser.dart +++ b/lib/parser.dart @@ -3959,6 +3959,9 @@ class ParseError implements SourceSpanException { @override String toString({dynamic color}) { + if (span == null) { + return message; + } final res = span!.message(message, color: color); return span!.sourceUrl == null ? 'ParserError on $res' : 'On $res'; } diff --git a/lib/src/constants.dart b/lib/src/constants.dart index abd483b..6667b1f 100644 --- a/lib/src/constants.dart +++ b/lib/src/constants.dart @@ -393,10 +393,54 @@ const mathmlTextIntegrationPointElements = [ Pair(Namespaces.mathml, 'mtext') ]; -const spaceCharacters = ' \n\r\t\u000C'; +abstract final class Charcode { + static const int kNull = 0x00; -const int newLine = 10; -const int returnCode = 13; + /// '\t' + static const int kTab = 0x09; + + /// '\n' + static const int kLineFeed = 0x0A; + static const int kFormFeed = 0x0C; + + /// '\r' + static const int kCarriageReturn = 0x0D; + + /// ' ' + static const int kSpace = 0x20; + + /// '"' + static const int kDoubleQuote = 0x22; + + /// '&' + static const int kAmpersand = 0x26; + + /// "'" + static const int kSingleQuote = 0x27; + + /// '-' + static const int kHyphen = 0x2D; + + /// '<' + static const int kLessThan = 0x3C; + + /// '=' + static const int kEquals = 0x3D; + + /// '>' + static const int kGreaterThan = 0x3E; + + /// '`' + static const int kGraveAccent = 0x60; +} + +const spaceCharacters = { + Charcode.kSpace, + Charcode.kLineFeed, + Charcode.kCarriageReturn, + Charcode.kTab, + Charcode.kFormFeed +}; bool isWhitespace(String? char) { if (char == null) return false; @@ -405,11 +449,11 @@ bool isWhitespace(String? char) { bool isWhitespaceCC(int charCode) { switch (charCode) { - case 9: // '\t' - case newLine: // '\n' - case 12: // '\f' - case returnCode: // '\r' - case 32: // ' ' + case Charcode.kTab: + case Charcode.kLineFeed: + case Charcode.kFormFeed: + case Charcode.kCarriageReturn: + case Charcode.kSpace: return true; } return false; @@ -424,7 +468,60 @@ const List tableInsertModeElements = [ ]; // TODO(jmesserly): remove these in favor of the test functions -const asciiLetters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; +const asciiLetters = { + 0x41, + 0x42, + 0x43, + 0x44, + 0x45, + 0x46, + 0x47, + 0x48, + 0x49, + 0x4A, + 0x4B, + 0x4C, + 0x4D, + 0x4E, + 0x4F, + 0x50, + 0x51, + 0x52, + 0x53, + 0x54, + 0x55, + 0x56, + 0x57, + 0x58, + 0x59, + 0x5A, + 0x61, + 0x62, + 0x63, + 0x64, + 0x65, + 0x66, + 0x67, + 0x68, + 0x69, + 0x6A, + 0x6B, + 0x6C, + 0x6D, + 0x6E, + 0x6F, + 0x70, + 0x71, + 0x72, + 0x73, + 0x74, + 0x75, + 0x76, + 0x77, + 0x78, + 0x79, + 0x7A, +}; const _zeroCode = 48; const _lowerACode = 97; @@ -482,8 +579,16 @@ extension AsciiUpperToLower on String { /// Converts ASCII characters to lowercase. /// /// Unlike [String.toLowerCase] does not touch non-ASCII characters. - String toAsciiLowerCase() => - String.fromCharCodes(codeUnits.map(_asciiToLower)); + String toAsciiLowerCase() { + for (final c in codeUnits) { + if (c >= _upperACode && c <= _upperZCode) { + // Some character is ASCII uppercase + return String.fromCharCodes(codeUnits.map(_asciiToLower)); + } + } + // No modification needed + return this; + } static int _asciiToLower(int c) => (c >= _upperACode && c <= _upperZCode) ? c + _lowerACode - _upperACode diff --git a/lib/src/html_input_stream.dart b/lib/src/html_input_stream.dart index abae4cf..ee2ee79 100644 --- a/lib/src/html_input_stream.dart +++ b/lib/src/html_input_stream.dart @@ -86,17 +86,22 @@ class HtmlInputStream { errors = Queue(); _offset = 0; - _chars = []; final rawChars = _rawChars ??= _decodeBytes(charEncodingName!, _rawBytes!); + // Optimistically allocate array, trim it later if there are changes + _chars = List.filled(rawChars.length, 0, growable: true); var skipNewline = false; var wasSurrogatePair = false; + var deletedChars = 0; for (var i = 0; i < rawChars.length; i++) { var c = rawChars[i]; if (skipNewline) { skipNewline = false; - if (c == newLine) continue; + if (c == Charcode.kLineFeed) { + deletedChars++; + continue; + } } final isSurrogatePair = _isSurrogatePair(rawChars, i); @@ -111,20 +116,24 @@ class HtmlInputStream { } wasSurrogatePair = isSurrogatePair; - if (c == returnCode) { + if (c == Charcode.kCarriageReturn) { skipNewline = true; - c = newLine; + c = Charcode.kLineFeed; } - _chars.add(c); + _chars[i - deletedChars] = c; + } + if (deletedChars > 0) { + // Remove the null bytes from the end + _chars.removeRange(_chars.length - deletedChars, _chars.length); } // Free decoded characters if they aren't needed anymore. if (_rawBytes != null) _rawChars = null; - // TODO(sigmund): Don't parse the file at all if spans aren't being - // generated. - fileInfo = SourceFile.decoded(_chars, url: sourceUrl); + if (generateSpans) { + fileInfo = SourceFile.decoded(_chars, url: sourceUrl); + } } void detectEncoding([bool parseMeta = true]) { @@ -212,6 +221,11 @@ class HtmlInputStream { : String.fromCharCode(_chars[_offset++]); } + int? peekCodeUnit() { + if (_offset >= _chars.length) return null; + return _chars[_offset]; + } + String? peekChar() { if (_offset >= _chars.length) return eof; return _isSurrogatePair(_chars, _offset) @@ -233,12 +247,46 @@ class HtmlInputStream { bool _isTrailSurrogate(int code) => (code & 0xFC00) == 0xDC00; /// Returns a string of characters from the stream up to but not - /// including any character in 'characters' or EOF. - String charsUntil(String characters, [bool opposite = false]) { + /// including any character in 'characters' or EOF. These functions rely + /// on the charCode(s) being single-codepoint. + String charsUntil(Set charCodes, [bool opposite = false]) { + final start = _offset; + int? c; + while ((c = peekCodeUnit()) != null && charCodes.contains(c!) == opposite) { + _offset += 1; + } + + return String.fromCharCodes(_chars.sublist(start, _offset)); + } + + String charsUntil1(int charCode, [bool opposite = false]) { + final start = _offset; + int? c; + while ((c = peekCodeUnit()) != null && (charCode == c!) == opposite) { + _offset += 1; + } + + return String.fromCharCodes(_chars.sublist(start, _offset)); + } + + String charsUntil2(int charCode1, int charCode2, [bool opposite = false]) { + final start = _offset; + int? c; + while ((c = peekCodeUnit()) != null && + (charCode1 == c! || charCode2 == c) == opposite) { + _offset += 1; + } + + return String.fromCharCodes(_chars.sublist(start, _offset)); + } + + String charsUntil3(int charCode1, int charCode2, int charCode3, + [bool opposite = false]) { final start = _offset; - String? c; - while ((c = peekChar()) != null && characters.contains(c!) == opposite) { - _offset += c.codeUnits.length; + int? c; + while ((c = peekCodeUnit()) != null && + (charCode1 == c! || charCode2 == c || charCode3 == c) == opposite) { + _offset += 1; } return String.fromCharCodes(_chars.sublist(start, _offset)); @@ -257,6 +305,8 @@ class HtmlInputStream { // TODO(jmesserly): the Python code used a regex to check for this. But // Dart doesn't let you create a regexp with invalid characters. bool _invalidUnicode(int c) { + // Fast return for common ASCII characters + if (0x0020 <= c && c <= 0x007E) return false; if (0x0001 <= c && c <= 0x0008) return true; if (0x000E <= c && c <= 0x001F) return true; if (0x007F <= c && c <= 0x009F) return true; diff --git a/lib/src/tokenizer.dart b/lib/src/tokenizer.dart index 3bed0b0..d483310 100644 --- a/lib/src/tokenizer.dart +++ b/lib/src/tokenizer.dart @@ -5,22 +5,10 @@ import '../parser.dart' show HtmlParser; import 'constants.dart'; import 'html_input_stream.dart'; import 'token.dart'; +import 'trie.dart'; import 'utils.dart'; -// Group entities by their first character, for faster lookups - -// TODO(jmesserly): we could use a better data structure here like a trie, if -// we had it implemented in Dart. -Map> entitiesByFirstChar = (() { - final result = >{}; - for (var k in entities.keys) { - result.putIfAbsent(k[0], () => []).add(k); - } - return result; -})(); - // TODO(jmesserly): lots of ways to make this faster: -// - use char codes everywhere instead of 1-char strings // - use switch instead of contains, indexOf // - use switch instead of the sequential if tests // - avoid string concat @@ -293,18 +281,11 @@ class HtmlTokenizer implements Iterator { // // Consume characters and compare to these to a substring of the // entity names in the list until the substring no longer matches. - var filteredEntityList = entitiesByFirstChar[charStack[0]!] ?? const []; + dynamic node = entitiesTrieRoot[charStack.last?.codeUnitAt(0)]; - while (charStack.last != eof) { - final name = charStack.join(); - filteredEntityList = filteredEntityList - .where((e) => e.startsWith(name)) - .toList(growable: false); - - if (filteredEntityList.isEmpty) { - break; - } + while (node != null && charStack.last != eof) { charStack.add(stream.char()); + node = (node as Map)[charStack.last?.codeUnitAt(0)]; } // At this point we have a string that starts with some characters @@ -422,7 +403,8 @@ class HtmlTokenizer implements Iterator { // have already been appended to lastFourChars and will have broken // any sequences } else { - final chars = stream.charsUntil('&<\u0000'); + final chars = stream.charsUntil3( + Charcode.kAmpersand, Charcode.kLessThan, Charcode.kNull); _addToken(CharactersToken('$data$chars')); } return true; @@ -453,7 +435,7 @@ class HtmlTokenizer implements Iterator { _addToken(SpaceCharactersToken( '$data${stream.charsUntil(spaceCharacters, true)}')); } else { - final chars = stream.charsUntil('&<'); + final chars = stream.charsUntil2(Charcode.kAmpersand, Charcode.kLessThan); _addToken(CharactersToken('$data$chars')); } return true; @@ -476,7 +458,7 @@ class HtmlTokenizer implements Iterator { // Tokenization ends. return false; } else { - final chars = stream.charsUntil('<\u0000'); + final chars = stream.charsUntil2(Charcode.kLessThan, Charcode.kNull); _addToken(CharactersToken('$data$chars')); } return true; @@ -493,7 +475,7 @@ class HtmlTokenizer implements Iterator { // Tokenization ends. return false; } else { - final chars = stream.charsUntil('<\u0000'); + final chars = stream.charsUntil2(Charcode.kLessThan, Charcode.kNull); _addToken(CharactersToken('$data$chars')); } return true; @@ -508,7 +490,7 @@ class HtmlTokenizer implements Iterator { _addToken(ParseErrorToken('invalid-codepoint')); _addToken(CharactersToken('\uFFFD')); } else { - _addToken(CharactersToken('$data${stream.charsUntil("\u0000")}')); + _addToken(CharactersToken('$data${stream.charsUntil1(Charcode.kNull)}')); } return true; } @@ -781,7 +763,8 @@ class HtmlTokenizer implements Iterator { } else if (data == eof) { state = dataState; } else { - final chars = stream.charsUntil('<-\u0000'); + final chars = stream.charsUntil3( + Charcode.kLessThan, Charcode.kHyphen, Charcode.kNull); _addToken(CharactersToken('$data$chars')); } return true; @@ -1179,7 +1162,8 @@ class HtmlTokenizer implements Iterator { state = dataState; } else { _attributeValue.write(data); - _attributeValue.write(stream.charsUntil('"&')); + _attributeValue.write( + stream.charsUntil2(Charcode.kDoubleQuote, Charcode.kAmpersand)); } return true; } @@ -1201,7 +1185,8 @@ class HtmlTokenizer implements Iterator { state = dataState; } else { _attributeValue.write(data); - _attributeValue.write(stream.charsUntil("'&")); + _attributeValue.write( + stream.charsUntil2(Charcode.kSingleQuote, Charcode.kAmpersand)); } return true; } @@ -1229,7 +1214,16 @@ class HtmlTokenizer implements Iterator { _attributeValue.write('\uFFFD'); } else { _attributeValue.write(data); - _attributeValue.write(stream.charsUntil("&>\"'=<`$spaceCharacters")); + _attributeValue.write(stream.charsUntil(const { + Charcode.kAmpersand, + Charcode.kGreaterThan, + Charcode.kDoubleQuote, + Charcode.kSingleQuote, + Charcode.kEquals, + Charcode.kLessThan, + Charcode.kGraveAccent, + ...spaceCharacters + })); } return true; } @@ -1275,7 +1269,7 @@ class HtmlTokenizer implements Iterator { // Make a new comment token and give it as value all the characters // until the first > or EOF (charsUntil checks for EOF automatically) // and emit it. - var data = stream.charsUntil('>'); + var data = stream.charsUntil1(Charcode.kGreaterThan); data = data.replaceAll('\u0000', '\uFFFD'); _addToken(CommentToken(data)); @@ -1394,7 +1388,9 @@ class HtmlTokenizer implements Iterator { _addToken(currentToken!); state = dataState; } else { - currentStringToken.add(data!).add(stream.charsUntil('-\u0000')); + currentStringToken + .add(data!) + .add(stream.charsUntil2(Charcode.kHyphen, Charcode.kNull)); } return true; } diff --git a/lib/src/trie.dart b/lib/src/trie.dart new file mode 100644 index 0000000..7d760e7 --- /dev/null +++ b/lib/src/trie.dart @@ -0,0 +1,13972 @@ +const entitiesTrieRoot = { + 65: { + 69: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 77: { + 80: {59: {}} + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 98: { + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 108: { + 112: { + 104: { + 97: {59: {}} + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + } + }, + 110: { + 100: {59: {}} + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 112: { + 108: { + 121: { + 70: { + 117: { + 110: { + 99: { + 116: { + 105: { + 111: { + 110: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 114: { + 105: { + 110: { + 103: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 115: { + 105: { + 103: { + 110: {59: {}} + } + } + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: { + 109: { + 108: {59: {}} + } + } + }, + 66: { + 97: { + 99: { + 107: { + 115: { + 108: { + 97: { + 115: { + 104: {59: {}} + } + } + } + } + } + }, + 114: { + 118: {59: {}}, + 119: { + 101: { + 100: {59: {}} + } + } + } + }, + 99: { + 121: {59: {}} + }, + 101: { + 99: { + 97: { + 117: { + 115: { + 101: {59: {}} + } + } + } + }, + 114: { + 110: { + 111: { + 117: { + 108: { + 108: { + 105: { + 115: {59: {}} + } + } + } + } + } + } + }, + 116: { + 97: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: { + 109: { + 112: { + 101: { + 113: {59: {}} + } + } + } + } + }, + 67: { + 72: { + 99: { + 121: {59: {}} + } + }, + 79: { + 80: { + 89: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 112: { + 59: {}, + 105: { + 116: { + 97: { + 108: { + 68: { + 105: { + 102: { + 102: { + 101: { + 114: { + 101: { + 110: { + 116: { + 105: { + 97: { + 108: { + 68: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 121: { + 108: { + 101: { + 121: { + 115: {59: {}} + } + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 111: { + 110: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 100: { + 105: { + 108: { + 108: { + 97: {59: {}} + } + } + } + }, + 110: { + 116: { + 101: { + 114: { + 68: { + 111: { + 116: {59: {}} + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 105: {59: {}} + }, + 105: { + 114: { + 99: { + 108: { + 101: { + 68: { + 111: { + 116: {59: {}} + } + }, + 77: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + }, + 80: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 84: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + }, + 108: { + 111: { + 99: { + 107: { + 119: { + 105: { + 115: { + 101: { + 67: { + 111: { + 110: { + 116: { + 111: { + 117: { + 114: { + 73: { + 110: { + 116: { + 101: { + 103: { + 114: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 101: { + 67: { + 117: { + 114: { + 108: { + 121: { + 68: { + 111: { + 117: { + 98: { + 108: { + 101: { + 81: { + 117: { + 111: { + 116: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 81: { + 117: { + 111: { + 116: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 108: { + 111: { + 110: { + 59: {}, + 101: {59: {}} + } + } + }, + 110: { + 103: { + 114: { + 117: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 105: { + 110: { + 116: {59: {}} + } + }, + 116: { + 111: { + 117: { + 114: { + 73: { + 110: { + 116: { + 101: { + 103: { + 114: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 112: { + 102: {59: {}}, + 114: { + 111: { + 100: { + 117: { + 99: { + 116: {59: {}} + } + } + } + } + } + }, + 117: { + 110: { + 116: { + 101: { + 114: { + 67: { + 108: { + 111: { + 99: { + 107: { + 119: { + 105: { + 115: { + 101: { + 67: { + 111: { + 110: { + 116: { + 111: { + 117: { + 114: { + 73: { + 110: { + 116: { + 101: { + 103: { + 114: { + 97: { + 108: { + 59: {} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 114: { + 111: { + 115: { + 115: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: { + 112: { + 59: {}, + 67: { + 97: { + 112: {59: {}} + } + } + } + } + }, + 68: { + 68: { + 59: {}, + 111: { + 116: { + 114: { + 97: { + 104: { + 100: {59: {}} + } + } + } + } + } + }, + 74: { + 99: { + 121: {59: {}} + } + }, + 83: { + 99: { + 121: {59: {}} + } + }, + 90: { + 99: { + 121: {59: {}} + } + }, + 97: { + 103: { + 103: { + 101: { + 114: {59: {}} + } + } + }, + 114: { + 114: {59: {}} + }, + 115: { + 104: { + 118: {59: {}} + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 121: {59: {}} + }, + 101: { + 108: { + 59: {}, + 116: { + 97: {59: {}} + } + } + }, + 102: { + 114: {59: {}} + }, + 105: { + 97: { + 99: { + 114: { + 105: { + 116: { + 105: { + 99: { + 97: { + 108: { + 65: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 68: { + 111: { + 116: {59: {}}, + 117: { + 98: { + 108: { + 101: { + 65: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 71: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 109: { + 111: { + 110: { + 100: {59: {}} + } + } + } + }, + 102: { + 102: { + 101: { + 114: { + 101: { + 110: { + 116: { + 105: { + 97: { + 108: { + 68: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 116: { + 59: {}, + 68: { + 111: { + 116: {59: {}} + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + }, + 117: { + 98: { + 108: { + 101: { + 67: { + 111: { + 110: { + 116: { + 111: { + 117: { + 114: { + 73: { + 110: { + 116: { + 101: { + 103: { + 114: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 68: { + 111: { + 116: {59: {}}, + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: {59: {}} + } + } + } + } + }, + 111: { + 110: { + 103: { + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 84: { + 101: { + 101: {59: {}} + } + } + } + } + } + } + }, + 85: { + 112: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 68: { + 111: { + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 114: { + 116: { + 105: { + 99: { + 97: { + 108: { + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 85: { + 112: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 66: { + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 76: { + 101: { + 102: { + 116: { + 82: { + 105: { + 103: { + 104: { + 116: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 59: {}, + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + }, + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + } + }, + 69: { + 78: { + 71: {59: {}} + }, + 84: { + 72: {59: {}} + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 108: { + 101: { + 109: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + }, + 112: { + 116: { + 121: { + 83: { + 109: { + 97: { + 108: { + 108: { + 83: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 114: { + 121: { + 83: { + 109: { + 97: { + 108: { + 108: { + 83: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 115: { + 105: { + 108: { + 111: { + 110: {59: {}} + } + } + } + } + }, + 113: { + 117: { + 97: { + 108: { + 59: {}, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + }, + 105: { + 108: { + 105: { + 98: { + 114: { + 105: { + 117: { + 109: {59: {}} + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 105: { + 109: {59: {}} + } + }, + 116: { + 97: {59: {}} + }, + 117: { + 109: { + 108: {59: {}} + } + }, + 120: { + 105: { + 115: { + 116: { + 115: {59: {}} + } + } + }, + 112: { + 111: { + 110: { + 101: { + 110: { + 116: { + 105: { + 97: { + 108: { + 69: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 70: { + 99: { + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 105: { + 108: { + 108: { + 101: { + 100: { + 83: { + 109: { + 97: { + 108: { + 108: { + 83: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 114: { + 121: { + 83: { + 109: { + 97: { + 108: { + 108: { + 83: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 114: { + 65: { + 108: { + 108: {59: {}} + } + } + }, + 117: { + 114: { + 105: { + 101: { + 114: { + 116: { + 114: { + 102: {59: {}} + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 71: { + 74: { + 99: { + 121: {59: {}} + } + }, + 84: {59: {}}, + 97: { + 109: { + 109: { + 97: { + 59: {}, + 100: {59: {}} + } + } + } + }, + 98: { + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 103: {59: {}}, + 111: { + 112: { + 102: {59: {}} + } + }, + 114: { + 101: { + 97: { + 116: { + 101: { + 114: { + 69: { + 113: { + 117: { + 97: { + 108: { + 59: {}, + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + } + } + } + } + } + }, + 70: { + 117: { + 108: { + 108: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: {59: {}} + }, + 72: { + 65: { + 82: { + 68: { + 99: { + 121: {59: {}} + } + } + } + }, + 97: { + 99: { + 101: { + 107: {59: {}} + } + }, + 116: {59: {}} + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + } + }, + 102: { + 114: {59: {}} + }, + 105: { + 108: { + 98: { + 101: { + 114: { + 116: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 114: { + 105: { + 122: { + 111: { + 110: { + 116: { + 97: { + 108: { + 76: { + 105: { + 110: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 117: { + 109: { + 112: { + 68: { + 111: { + 119: { + 110: { + 72: { + 117: { + 109: { + 112: {59: {}} + } + } + } + } + } + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 73: { + 69: { + 99: { + 121: {59: {}} + } + }, + 74: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 79: { + 99: { + 121: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 109: { + 59: {}, + 97: { + 99: { + 114: {59: {}} + }, + 103: { + 105: { + 110: { + 97: { + 114: { + 121: { + 73: {59: {}} + } + } + } + } + } + } + }, + 112: { + 108: { + 105: { + 101: { + 115: {59: {}} + } + } + } + } + }, + 110: { + 116: { + 59: {}, + 101: { + 103: { + 114: { + 97: { + 108: {59: {}} + } + } + }, + 114: { + 115: { + 101: { + 99: { + 116: { + 105: { + 111: { + 110: {59: {}} + } + } + } + } + } + } + } + } + }, + 118: { + 105: { + 115: { + 105: { + 98: { + 108: { + 101: { + 67: { + 111: { + 109: { + 109: { + 97: {59: {}} + } + } + } + }, + 84: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + }, + 116: { + 97: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: { + 107: { + 99: { + 121: {59: {}} + } + }, + 109: { + 108: {59: {}} + } + } + }, + 74: { + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 101: { + 114: { + 99: { + 121: {59: {}} + } + } + } + }, + 117: { + 107: { + 99: { + 121: {59: {}} + } + } + } + }, + 75: { + 72: { + 99: { + 121: {59: {}} + } + }, + 74: { + 99: { + 121: {59: {}} + } + }, + 97: { + 112: { + 112: { + 97: {59: {}} + } + } + }, + 99: { + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 76: { + 74: { + 99: { + 121: {59: {}} + } + }, + 84: {59: {}}, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 109: { + 98: { + 100: { + 97: {59: {}} + } + } + }, + 110: { + 103: {59: {}} + }, + 112: { + 108: { + 97: { + 99: { + 101: { + 116: { + 114: { + 102: {59: {}} + } + } + } + } + } + } + }, + 114: { + 114: {59: {}} + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 101: { + 102: { + 116: { + 65: { + 110: { + 103: { + 108: { + 101: { + 66: { + 114: { + 97: { + 99: { + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 114: { + 114: { + 111: { + 119: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 67: { + 101: { + 105: { + 108: { + 105: { + 110: { + 103: {59: {}} + } + } + } + } + } + }, + 68: { + 111: { + 117: { + 98: { + 108: { + 101: { + 66: { + 114: { + 97: { + 99: { + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 119: { + 110: { + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 70: { + 108: { + 111: { + 111: { + 114: {59: {}} + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 59: {}, + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + }, + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 85: { + 112: { + 68: { + 111: { + 119: { + 110: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 115: { + 69: { + 113: { + 117: { + 97: { + 108: { + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 70: { + 117: { + 108: { + 108: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 108: { + 59: {}, + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 109: { + 105: { + 100: { + 111: { + 116: {59: {}} + } + } + } + }, + 111: { + 110: { + 103: { + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 112: { + 102: {59: {}} + }, + 119: { + 101: { + 114: { + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 104: {59: {}}, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 116: {59: {}} + }, + 77: { + 97: { + 112: {59: {}} + }, + 99: { + 121: {59: {}} + }, + 101: { + 100: { + 105: { + 117: { + 109: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 108: { + 108: { + 105: { + 110: { + 116: { + 114: { + 102: {59: {}} + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 105: { + 110: { + 117: { + 115: { + 80: { + 108: { + 117: { + 115: {59: {}} + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: {59: {}} + }, + 78: { + 74: { + 99: { + 121: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 101: { + 103: { + 97: { + 116: { + 105: { + 118: { + 101: { + 77: { + 101: { + 100: { + 105: { + 117: { + 109: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 84: { + 104: { + 105: { + 99: { + 107: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + }, + 110: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 114: { + 121: { + 84: { + 104: { + 105: { + 110: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 116: { + 101: { + 100: { + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: { + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: { + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 119: { + 76: { + 105: { + 110: { + 101: {59: {}} + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 66: { + 114: { + 101: { + 97: { + 107: {59: {}} + } + } + } + }, + 110: { + 66: { + 114: { + 101: { + 97: { + 107: { + 105: { + 110: { + 103: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 112: { + 102: {59: {}} + }, + 116: { + 59: {}, + 67: { + 111: { + 110: { + 103: { + 114: { + 117: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + } + } + }, + 117: { + 112: { + 67: { + 97: { + 112: {59: {}} + } + } + } + } + }, + 68: { + 111: { + 117: { + 98: { + 108: { + 101: { + 86: { + 101: { + 114: { + 116: { + 105: { + 99: { + 97: { + 108: { + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 69: { + 108: { + 101: { + 109: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 113: { + 117: { + 97: { + 108: { + 59: {}, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 120: { + 105: { + 115: { + 116: { + 115: {59: {}} + } + } + } + } + }, + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 70: { + 117: { + 108: { + 108: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 72: { + 117: { + 109: { + 112: { + 68: { + 111: { + 119: { + 110: { + 72: { + 117: { + 109: { + 112: {59: {}} + } + } + } + } + } + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 76: { + 101: { + 102: { + 116: { + 84: { + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 115: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 78: { + 101: { + 115: { + 116: { + 101: { + 100: { + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: { + 71: { + 114: { + 101: { + 97: { + 116: { + 101: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 76: { + 101: { + 115: { + 115: { + 76: { + 101: { + 115: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 80: { + 114: { + 101: { + 99: { + 101: { + 100: { + 101: { + 115: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 82: { + 101: { + 118: { + 101: { + 114: { + 115: { + 101: { + 69: { + 108: { + 101: { + 109: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 105: { + 103: { + 104: { + 116: { + 84: { + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 83: { + 113: { + 117: { + 97: { + 114: { + 101: { + 83: { + 117: { + 98: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 112: { + 101: { + 114: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 117: { + 98: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 99: { + 99: { + 101: { + 101: { + 100: { + 115: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 112: { + 101: { + 114: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 70: { + 117: { + 108: { + 108: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 114: { + 116: { + 105: { + 99: { + 97: { + 108: { + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: {59: {}} + }, + 79: { + 69: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 98: { + 108: { + 97: { + 99: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + }, + 101: { + 103: { + 97: {59: {}} + } + }, + 105: { + 99: { + 114: { + 111: { + 110: {59: {}} + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 112: { + 101: { + 110: { + 67: { + 117: { + 114: { + 108: { + 121: { + 68: { + 111: { + 117: { + 98: { + 108: { + 101: { + 81: { + 117: { + 111: { + 116: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 81: { + 117: { + 111: { + 116: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 114: {59: {}}, + 115: { + 99: { + 114: {59: {}} + }, + 108: { + 97: { + 115: { + 104: {59: {}} + } + } + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + }, + 109: { + 101: { + 115: {59: {}} + } + } + } + }, + 117: { + 109: { + 108: {59: {}} + } + }, + 118: { + 101: { + 114: { + 66: { + 97: { + 114: {59: {}} + }, + 114: { + 97: { + 99: { + 101: {59: {}}, + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + }, + 80: { + 97: { + 114: { + 101: { + 110: { + 116: { + 104: { + 101: { + 115: { + 105: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 80: { + 97: { + 114: { + 116: { + 105: { + 97: { + 108: { + 68: {59: {}} + } + } + } + } + } + }, + 99: { + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 104: { + 105: {59: {}} + }, + 105: {59: {}}, + 108: { + 117: { + 115: { + 77: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + } + } + } + }, + 111: { + 105: { + 110: { + 99: { + 97: { + 114: { + 101: { + 112: { + 108: { + 97: { + 110: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 112: { + 102: {59: {}} + } + }, + 114: { + 59: {}, + 101: { + 99: { + 101: { + 100: { + 101: { + 115: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 105: { + 109: { + 101: {59: {}} + } + }, + 111: { + 100: { + 117: { + 99: { + 116: {59: {}} + } + } + }, + 112: { + 111: { + 114: { + 116: { + 105: { + 111: { + 110: { + 59: {}, + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 105: {59: {}} + } + }, + 81: { + 85: { + 79: { + 84: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 82: { + 66: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 69: { + 71: {59: {}} + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 110: { + 103: {59: {}} + }, + 114: { + 114: { + 59: {}, + 116: { + 108: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 101: { + 59: {}, + 118: { + 101: { + 114: { + 115: { + 101: { + 69: { + 108: { + 101: { + 109: { + 101: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 113: { + 117: { + 105: { + 108: { + 105: { + 98: { + 114: { + 105: { + 117: { + 109: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 85: { + 112: { + 69: { + 113: { + 117: { + 105: { + 108: { + 105: { + 98: { + 114: { + 105: { + 117: { + 109: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 111: {59: {}} + }, + 105: { + 103: { + 104: { + 116: { + 65: { + 110: { + 103: { + 108: { + 101: { + 66: { + 114: { + 97: { + 99: { + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 114: { + 114: { + 111: { + 119: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 67: { + 101: { + 105: { + 108: { + 105: { + 110: { + 103: {59: {}} + } + } + } + } + } + }, + 68: { + 111: { + 117: { + 98: { + 108: { + 101: { + 66: { + 114: { + 97: { + 99: { + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 119: { + 110: { + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 70: { + 108: { + 111: { + 111: { + 114: {59: {}} + } + } + } + }, + 84: { + 101: { + 101: { + 59: {}, + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + }, + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 85: { + 112: { + 68: { + 111: { + 119: { + 110: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 86: { + 101: { + 99: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 86: { + 101: { + 99: { + 116: { + 111: { + 114: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 117: { + 110: { + 100: { + 73: { + 109: { + 112: { + 108: { + 105: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 104: {59: {}} + }, + 117: { + 108: { + 101: { + 68: { + 101: { + 108: { + 97: { + 121: { + 101: { + 100: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 83: { + 72: { + 67: { + 72: { + 99: { + 121: {59: {}} + } + } + }, + 99: { + 121: {59: {}} + } + }, + 79: { + 70: { + 84: { + 99: { + 121: {59: {}} + } + } + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 59: {}, + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 104: { + 111: { + 114: { + 116: { + 68: { + 111: { + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 85: { + 112: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 105: { + 103: { + 109: { + 97: {59: {}} + } + } + }, + 109: { + 97: { + 108: { + 108: { + 67: { + 105: { + 114: { + 99: { + 108: { + 101: {59: {}} + } + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 113: { + 114: { + 116: {59: {}} + }, + 117: { + 97: { + 114: { + 101: { + 59: {}, + 73: { + 110: { + 116: { + 101: { + 114: { + 115: { + 101: { + 99: { + 116: { + 105: { + 111: { + 110: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 83: { + 117: { + 98: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 112: { + 101: { + 114: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 85: { + 110: { + 105: { + 111: { + 110: {59: {}} + } + } + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: { + 97: { + 114: {59: {}} + } + }, + 117: { + 98: { + 59: {}, + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 99: { + 99: { + 101: { + 101: { + 100: { + 115: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 83: { + 108: { + 97: { + 110: { + 116: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + }, + 104: { + 84: { + 104: { + 97: { + 116: {59: {}} + } + } + } + } + }, + 109: {59: {}}, + 112: { + 59: {}, + 101: { + 114: { + 115: { + 101: { + 116: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + } + }, + 115: { + 101: { + 116: {59: {}} + } + } + } + } + }, + 84: { + 72: { + 79: { + 82: { + 78: {59: {}} + } + } + }, + 82: { + 65: { + 68: { + 69: {59: {}} + } + } + }, + 83: { + 72: { + 99: { + 121: {59: {}} + } + }, + 99: { + 121: {59: {}} + } + }, + 97: { + 98: {59: {}}, + 117: {59: {}} + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 104: { + 101: { + 114: { + 101: { + 102: { + 111: { + 114: { + 101: {59: {}} + } + } + } + } + }, + 116: { + 97: {59: {}} + } + }, + 105: { + 99: { + 107: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + }, + 110: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + }, + 105: { + 108: { + 100: { + 101: { + 59: {}, + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + }, + 70: { + 117: { + 108: { + 108: { + 69: { + 113: { + 117: { + 97: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 114: { + 105: { + 112: { + 108: { + 101: { + 68: { + 111: { + 116: {59: {}} + } + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + } + }, + 85: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 114: { + 114: { + 59: {}, + 111: { + 99: { + 105: { + 114: {59: {}} + } + } + } + } + } + }, + 98: { + 114: { + 99: { + 121: {59: {}} + }, + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 98: { + 108: { + 97: { + 99: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + } + }, + 110: { + 100: { + 101: { + 114: { + 66: { + 97: { + 114: {59: {}} + }, + 114: { + 97: { + 99: { + 101: {59: {}}, + 107: { + 101: { + 116: {59: {}} + } + } + } + } + } + }, + 80: { + 97: { + 114: { + 101: { + 110: { + 116: { + 104: { + 101: { + 115: { + 105: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 105: { + 111: { + 110: { + 59: {}, + 80: { + 108: { + 117: { + 115: {59: {}} + } + } + } + } + } + } + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 65: { + 114: { + 114: { + 111: { + 119: { + 59: {}, + 66: { + 97: { + 114: {59: {}} + } + }, + 68: { + 111: { + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 68: { + 111: { + 119: { + 110: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 69: { + 113: { + 117: { + 105: { + 108: { + 105: { + 98: { + 114: { + 105: { + 117: { + 109: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 84: { + 101: { + 101: { + 59: {}, + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + }, + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 100: { + 111: { + 119: { + 110: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 112: { + 101: { + 114: { + 76: { + 101: { + 102: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 65: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 115: { + 105: { + 59: {}, + 108: { + 111: { + 110: {59: {}} + } + } + } + } + }, + 114: { + 105: { + 110: { + 103: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: { + 109: { + 108: {59: {}} + } + } + }, + 86: { + 68: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 98: { + 97: { + 114: {59: {}} + } + }, + 99: { + 121: {59: {}} + }, + 100: { + 97: { + 115: { + 104: { + 59: {}, + 108: {59: {}} + } + } + } + }, + 101: { + 101: {59: {}}, + 114: { + 98: { + 97: { + 114: {59: {}} + } + }, + 116: { + 59: {}, + 105: { + 99: { + 97: { + 108: { + 66: { + 97: { + 114: {59: {}} + } + }, + 76: { + 105: { + 110: { + 101: {59: {}} + } + } + }, + 83: { + 101: { + 112: { + 97: { + 114: { + 97: { + 116: { + 111: { + 114: {59: {}} + } + } + } + } + } + } + } + }, + 84: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + } + } + } + } + } + }, + 121: { + 84: { + 104: { + 105: { + 110: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 118: { + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + } + } + }, + 87: { + 99: { + 105: { + 114: { + 99: {59: {}} + } + } + }, + 101: { + 100: { + 103: { + 101: {59: {}} + } + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 88: { + 102: { + 114: {59: {}} + }, + 105: {59: {}}, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 89: { + 65: { + 99: { + 121: {59: {}} + } + }, + 73: { + 99: { + 121: {59: {}} + } + }, + 85: { + 99: { + 121: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: { + 109: { + 108: {59: {}} + } + } + }, + 90: { + 72: { + 99: { + 121: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 114: { + 111: { + 87: { + 105: { + 100: { + 116: { + 104: { + 83: { + 112: { + 97: { + 99: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 116: { + 97: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 97: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 98: { + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 59: {}, + 69: {59: {}}, + 100: {59: {}}, + 105: { + 114: { + 99: {59: {}} + } + }, + 117: { + 116: { + 101: {59: {}} + } + }, + 121: {59: {}} + }, + 101: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 102: { + 59: {}, + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 108: { + 101: { + 102: { + 115: { + 121: { + 109: {59: {}} + } + } + }, + 112: { + 104: {59: {}} + } + }, + 112: { + 104: { + 97: {59: {}} + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + }, + 108: { + 103: {59: {}} + } + }, + 112: {59: {}} + }, + 110: { + 100: { + 59: {}, + 97: { + 110: { + 100: {59: {}} + } + }, + 100: {59: {}}, + 115: { + 108: { + 111: { + 112: { + 101: {59: {}} + } + } + } + }, + 118: {59: {}} + }, + 103: { + 59: {}, + 101: {59: {}}, + 108: { + 101: {59: {}} + }, + 109: { + 115: { + 100: { + 59: {}, + 97: { + 97: {59: {}}, + 98: {59: {}}, + 99: {59: {}}, + 100: {59: {}}, + 101: {59: {}}, + 102: {59: {}}, + 103: {59: {}}, + 104: {59: {}} + } + } + } + }, + 114: { + 116: { + 59: {}, + 118: { + 98: { + 59: {}, + 100: {59: {}} + } + } + } + }, + 115: { + 112: { + 104: {59: {}} + }, + 116: {59: {}} + }, + 122: { + 97: { + 114: { + 114: {59: {}} + } + } + } + } + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 59: {}, + 69: {59: {}}, + 97: { + 99: { + 105: { + 114: {59: {}} + } + } + }, + 101: {59: {}}, + 105: { + 100: {59: {}} + }, + 111: { + 115: {59: {}} + }, + 112: { + 114: { + 111: { + 120: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + } + }, + 114: { + 105: { + 110: { + 103: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 116: {59: {}}, + 121: { + 109: { + 112: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: { + 109: { + 108: {59: {}} + } + }, + 119: { + 99: { + 111: { + 110: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 105: { + 110: { + 116: {59: {}} + } + } + } + }, + 98: { + 78: { + 111: { + 116: {59: {}} + } + }, + 97: { + 99: { + 107: { + 99: { + 111: { + 110: { + 103: {59: {}} + } + } + }, + 101: { + 112: { + 115: { + 105: { + 108: { + 111: { + 110: {59: {}} + } + } + } + } + } + }, + 112: { + 114: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 115: { + 105: { + 109: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + } + }, + 114: { + 118: { + 101: { + 101: {59: {}} + } + }, + 119: { + 101: { + 100: { + 59: {}, + 103: { + 101: {59: {}} + } + } + } + } + } + }, + 98: { + 114: { + 107: { + 59: {}, + 116: { + 98: { + 114: { + 107: {59: {}} + } + } + } + } + } + }, + 99: { + 111: { + 110: { + 103: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 113: { + 117: { + 111: {59: {}} + } + } + }, + 101: { + 99: { + 97: { + 117: { + 115: { + 59: {}, + 101: {59: {}} + } + } + } + }, + 109: { + 112: { + 116: { + 121: { + 118: {59: {}} + } + } + } + }, + 112: { + 115: { + 105: {59: {}} + } + }, + 114: { + 110: { + 111: { + 117: {59: {}} + } + } + }, + 116: { + 97: {59: {}}, + 104: {59: {}}, + 119: { + 101: { + 101: { + 110: {59: {}} + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 105: { + 103: { + 99: { + 97: { + 112: {59: {}} + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 117: { + 112: {59: {}} + } + }, + 111: { + 100: { + 111: { + 116: {59: {}} + } + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + }, + 115: { + 113: { + 99: { + 117: { + 112: {59: {}} + } + } + }, + 116: { + 97: { + 114: {59: {}} + } + } + }, + 116: { + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 117: { + 112: {59: {}} + } + } + } + } + } + } + } + } + }, + 117: { + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + } + }, + 118: { + 101: { + 101: {59: {}} + } + }, + 119: { + 101: { + 100: { + 103: { + 101: {59: {}} + } + } + } + } + } + }, + 107: { + 97: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 108: { + 97: { + 99: { + 107: { + 108: { + 111: { + 122: { + 101: { + 110: { + 103: { + 101: {59: {}} + } + } + } + } + } + }, + 115: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + }, + 116: { + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 110: { + 107: {59: {}} + } + }, + 107: { + 49: { + 50: {59: {}}, + 52: {59: {}} + }, + 51: { + 52: {59: {}} + } + }, + 111: { + 99: { + 107: {59: {}} + } + } + }, + 110: { + 101: { + 59: {}, + 113: { + 117: { + 105: { + 118: {59: {}} + } + } + } + }, + 111: { + 116: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 116: { + 59: {}, + 116: { + 111: { + 109: {59: {}} + } + } + }, + 119: { + 116: { + 105: { + 101: {59: {}} + } + } + }, + 120: { + 68: { + 76: {59: {}}, + 82: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + }, + 72: { + 59: {}, + 68: {59: {}}, + 85: {59: {}}, + 100: {59: {}}, + 117: {59: {}} + }, + 85: { + 76: {59: {}}, + 82: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + }, + 86: { + 59: {}, + 72: {59: {}}, + 76: {59: {}}, + 82: {59: {}}, + 104: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + }, + 98: { + 111: { + 120: {59: {}} + } + }, + 100: { + 76: {59: {}}, + 82: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + }, + 104: { + 59: {}, + 68: {59: {}}, + 85: {59: {}}, + 100: {59: {}}, + 117: {59: {}} + }, + 109: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + }, + 117: { + 76: {59: {}}, + 82: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + }, + 118: { + 59: {}, + 72: {59: {}}, + 76: {59: {}}, + 82: {59: {}}, + 104: {59: {}}, + 108: {59: {}}, + 114: {59: {}} + } + } + }, + 112: { + 114: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 114: { + 101: { + 118: { + 101: {59: {}} + } + }, + 118: { + 98: { + 97: { + 114: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 101: { + 109: { + 105: {59: {}} + } + }, + 105: { + 109: { + 59: {}, + 101: {59: {}} + } + }, + 111: { + 108: { + 59: {}, + 98: {59: {}}, + 104: { + 115: { + 117: { + 98: {59: {}} + } + } + } + } + } + }, + 117: { + 108: { + 108: { + 59: {}, + 101: { + 116: {59: {}} + } + } + }, + 109: { + 112: { + 59: {}, + 69: {59: {}}, + 101: { + 59: {}, + 113: {59: {}} + } + } + } + } + }, + 99: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 112: { + 59: {}, + 97: { + 110: { + 100: {59: {}} + } + }, + 98: { + 114: { + 99: { + 117: { + 112: {59: {}} + } + } + } + }, + 99: { + 97: { + 112: {59: {}} + }, + 117: { + 112: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 115: {59: {}} + }, + 114: { + 101: { + 116: {59: {}} + }, + 111: { + 110: {59: {}} + } + } + }, + 99: { + 97: { + 112: { + 115: {59: {}} + }, + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 117: { + 112: { + 115: { + 59: {}, + 115: { + 109: {59: {}} + } + } + } + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + }, + 109: { + 112: { + 116: { + 121: { + 118: {59: {}} + } + } + } + }, + 110: { + 116: { + 59: {}, + 101: { + 114: { + 100: { + 111: { + 116: {59: {}} + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 99: { + 121: {59: {}} + }, + 101: { + 99: { + 107: { + 59: {}, + 109: { + 97: { + 114: { + 107: {59: {}} + } + } + } + } + } + }, + 105: {59: {}} + }, + 105: { + 114: { + 59: {}, + 69: {59: {}}, + 99: { + 59: {}, + 101: { + 113: {59: {}} + }, + 108: { + 101: { + 97: { + 114: { + 114: { + 111: { + 119: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + }, + 100: { + 82: {59: {}}, + 83: {59: {}}, + 97: { + 115: { + 116: {59: {}} + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + } + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + } + } + } + } + }, + 101: {59: {}}, + 102: { + 110: { + 105: { + 110: { + 116: {59: {}} + } + } + } + }, + 109: { + 105: { + 100: {59: {}} + } + }, + 115: { + 99: { + 105: { + 114: {59: {}} + } + } + } + } + }, + 108: { + 117: { + 98: { + 115: { + 59: {}, + 117: { + 105: { + 116: {59: {}} + } + } + } + } + } + }, + 111: { + 108: { + 111: { + 110: { + 59: {}, + 101: { + 59: {}, + 113: {59: {}} + } + } + } + }, + 109: { + 109: { + 97: { + 59: {}, + 116: {59: {}} + } + }, + 112: { + 59: {}, + 102: { + 110: {59: {}} + }, + 108: { + 101: { + 109: { + 101: { + 110: { + 116: {59: {}} + } + } + }, + 120: { + 101: { + 115: {59: {}} + } + } + } + } + } + }, + 110: { + 103: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + }, + 105: { + 110: { + 116: {59: {}} + } + } + }, + 112: { + 102: {59: {}}, + 114: { + 111: { + 100: {59: {}} + } + }, + 121: { + 59: {}, + 115: { + 114: {59: {}} + } + } + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + }, + 111: { + 115: { + 115: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 117: { + 98: { + 59: {}, + 101: {59: {}} + }, + 112: { + 59: {}, + 101: {59: {}} + } + } + }, + 116: { + 100: { + 111: { + 116: {59: {}} + } + } + }, + 117: { + 100: { + 97: { + 114: { + 114: { + 108: {59: {}}, + 114: {59: {}} + } + } + } + }, + 101: { + 112: { + 114: {59: {}} + }, + 115: { + 99: {59: {}} + } + }, + 108: { + 97: { + 114: { + 114: { + 59: {}, + 112: {59: {}} + } + } + } + }, + 112: { + 59: {}, + 98: { + 114: { + 99: { + 97: { + 112: {59: {}} + } + } + } + }, + 99: { + 97: { + 112: {59: {}} + }, + 117: { + 112: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 111: { + 114: {59: {}} + }, + 115: {59: {}} + }, + 114: { + 97: { + 114: { + 114: { + 59: {}, + 109: {59: {}} + } + } + }, + 108: { + 121: { + 101: { + 113: { + 112: { + 114: { + 101: { + 99: {59: {}} + } + } + }, + 115: { + 117: { + 99: { + 99: {59: {}} + } + } + } + } + }, + 118: { + 101: { + 101: {59: {}} + } + }, + 119: { + 101: { + 100: { + 103: { + 101: {59: {}} + } + } + } + } + } + }, + 114: { + 101: { + 110: {59: {}} + } + }, + 118: { + 101: { + 97: { + 114: { + 114: { + 111: { + 119: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 118: { + 101: { + 101: {59: {}} + } + }, + 119: { + 101: { + 100: {59: {}} + } + } + }, + 119: { + 99: { + 111: { + 110: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 105: { + 110: { + 116: {59: {}} + } + } + }, + 121: { + 108: { + 99: { + 116: { + 121: {59: {}} + } + } + } + } + }, + 100: { + 65: { + 114: { + 114: {59: {}} + } + }, + 72: { + 97: { + 114: {59: {}} + } + }, + 97: { + 103: { + 103: { + 101: { + 114: {59: {}} + } + } + }, + 108: { + 101: { + 116: { + 104: {59: {}} + } + } + }, + 114: { + 114: {59: {}} + }, + 115: { + 104: { + 59: {}, + 118: {59: {}} + } + } + }, + 98: { + 107: { + 97: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 108: { + 97: { + 99: {59: {}} + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 59: {}, + 97: { + 103: { + 103: { + 101: { + 114: {59: {}} + } + } + }, + 114: { + 114: {59: {}} + } + }, + 111: { + 116: { + 115: { + 101: { + 113: {59: {}} + } + } + } + } + }, + 101: { + 103: {59: {}}, + 108: { + 116: { + 97: {59: {}} + } + }, + 109: { + 112: { + 116: { + 121: { + 118: {59: {}} + } + } + } + } + }, + 102: { + 105: { + 115: { + 104: { + 116: {59: {}} + } + } + }, + 114: {59: {}} + }, + 104: { + 97: { + 114: { + 108: {59: {}}, + 114: {59: {}} + } + } + }, + 105: { + 97: { + 109: { + 59: {}, + 111: { + 110: { + 100: { + 59: {}, + 115: { + 117: { + 105: { + 116: {59: {}} + } + } + } + } + } + }, + 115: {59: {}} + } + }, + 101: {59: {}}, + 103: { + 97: { + 109: { + 109: { + 97: {59: {}} + } + } + } + }, + 115: { + 105: { + 110: {59: {}} + } + }, + 118: { + 59: {}, + 105: { + 100: { + 101: { + 59: {}, + 111: { + 110: { + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + }, + 111: { + 110: { + 120: {59: {}} + } + } + } + }, + 106: { + 99: { + 121: {59: {}} + } + }, + 108: { + 99: { + 111: { + 114: { + 110: {59: {}} + } + }, + 114: { + 111: { + 112: {59: {}} + } + } + } + }, + 111: { + 108: { + 108: { + 97: { + 114: {59: {}} + } + } + }, + 112: { + 102: {59: {}} + }, + 116: { + 59: {}, + 101: { + 113: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + } + }, + 109: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 115: { + 113: { + 117: { + 97: { + 114: { + 101: {59: {}} + } + } + } + } + } + }, + 117: { + 98: { + 108: { + 101: { + 98: { + 97: { + 114: { + 119: { + 101: { + 100: { + 103: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 119: { + 110: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 100: { + 111: { + 119: { + 110: { + 97: { + 114: { + 114: { + 111: { + 119: { + 115: {59: {}} + } + } + } + } + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 114: { + 98: { + 107: { + 97: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + }, + 99: { + 111: { + 114: { + 110: {59: {}} + } + }, + 114: { + 111: { + 112: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}}, + 121: {59: {}} + }, + 111: { + 108: {59: {}} + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 116: { + 100: { + 111: { + 116: {59: {}} + } + }, + 114: { + 105: { + 59: {}, + 102: {59: {}} + } + } + }, + 117: { + 97: { + 114: { + 114: {59: {}} + } + }, + 104: { + 97: { + 114: {59: {}} + } + } + }, + 119: { + 97: { + 110: { + 103: { + 108: { + 101: {59: {}} + } + } + } + } + }, + 122: { + 99: { + 121: {59: {}} + }, + 105: { + 103: { + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + } + } + } + } + }, + 101: { + 68: { + 68: { + 111: { + 116: {59: {}} + } + }, + 111: { + 116: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 115: { + 116: { + 101: { + 114: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 105: { + 114: { + 59: {}, + 99: {59: {}} + } + }, + 111: { + 108: { + 111: { + 110: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: {59: {}}, + 102: { + 68: { + 111: { + 116: {59: {}} + } + }, + 114: {59: {}} + }, + 103: { + 59: {}, + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + }, + 115: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + } + }, + 108: { + 59: {}, + 105: { + 110: { + 116: { + 101: { + 114: { + 115: {59: {}} + } + } + } + } + }, + 108: {59: {}}, + 115: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + }, + 112: { + 116: { + 121: { + 59: {}, + 115: { + 101: { + 116: {59: {}} + } + }, + 118: {59: {}} + } + } + }, + 115: { + 112: { + 49: { + 51: {59: {}}, + 52: {59: {}} + }, + 59: {} + } + } + }, + 110: { + 103: {59: {}}, + 115: { + 112: {59: {}} + } + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 97: { + 114: { + 59: {}, + 115: { + 108: {59: {}} + } + } + }, + 108: { + 117: { + 115: {59: {}} + } + }, + 115: { + 105: { + 59: {}, + 108: { + 111: { + 110: {59: {}} + } + }, + 118: {59: {}} + } + } + }, + 113: { + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 111: { + 108: { + 111: { + 110: {59: {}} + } + } + } + }, + 115: { + 105: { + 109: {59: {}} + }, + 108: { + 97: { + 110: { + 116: { + 103: { + 116: { + 114: {59: {}} + } + }, + 108: { + 101: { + 115: { + 115: {59: {}} + } + } + } + } + } + } + } + }, + 117: { + 97: { + 108: { + 115: {59: {}} + } + }, + 101: { + 115: { + 116: {59: {}} + } + }, + 105: { + 118: { + 59: {}, + 68: { + 68: {59: {}} + } + } + } + }, + 118: { + 112: { + 97: { + 114: { + 115: { + 108: {59: {}} + } + } + } + } + } + }, + 114: { + 68: { + 111: { + 116: {59: {}} + } + }, + 97: { + 114: { + 114: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 105: { + 109: {59: {}} + } + }, + 116: { + 97: {59: {}}, + 104: {59: {}} + }, + 117: { + 109: { + 108: {59: {}} + }, + 114: { + 111: {59: {}} + } + }, + 120: { + 99: { + 108: {59: {}} + }, + 105: { + 115: { + 116: {59: {}} + } + }, + 112: { + 101: { + 99: { + 116: { + 97: { + 116: { + 105: { + 111: { + 110: {59: {}} + } + } + } + } + } + } + }, + 111: { + 110: { + 101: { + 110: { + 116: { + 105: { + 97: { + 108: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 102: { + 97: { + 108: { + 108: { + 105: { + 110: { + 103: { + 100: { + 111: { + 116: { + 115: { + 101: { + 113: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 99: { + 121: {59: {}} + }, + 101: { + 109: { + 97: { + 108: { + 101: {59: {}} + } + } + } + }, + 102: { + 105: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 108: { + 105: { + 103: {59: {}} + }, + 108: { + 105: { + 103: {59: {}} + } + } + }, + 114: {59: {}} + }, + 105: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 106: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 108: { + 97: { + 116: {59: {}} + }, + 108: { + 105: { + 103: {59: {}} + } + }, + 116: { + 110: { + 115: {59: {}} + } + } + }, + 110: { + 111: { + 102: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 114: { + 97: { + 108: { + 108: {59: {}} + } + }, + 107: { + 59: {}, + 118: {59: {}} + } + } + }, + 112: { + 97: { + 114: { + 116: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + } + }, + 114: { + 97: { + 99: { + 49: { + 50: {59: {}}, + 51: {59: {}}, + 52: {59: {}}, + 53: {59: {}}, + 54: {59: {}}, + 56: {59: {}} + }, + 50: { + 51: {59: {}}, + 53: {59: {}} + }, + 51: { + 52: {59: {}}, + 53: {59: {}}, + 56: {59: {}} + }, + 52: { + 53: {59: {}} + }, + 53: { + 54: {59: {}}, + 56: {59: {}} + }, + 55: { + 56: {59: {}} + } + }, + 115: { + 108: {59: {}} + } + }, + 111: { + 119: { + 110: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 103: { + 69: { + 59: {}, + 108: {59: {}} + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 109: { + 109: { + 97: { + 59: {}, + 100: {59: {}} + } + } + }, + 112: {59: {}} + }, + 98: { + 114: { + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 59: {}, + 108: {59: {}}, + 113: { + 59: {}, + 113: {59: {}}, + 115: { + 108: { + 97: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 115: { + 59: {}, + 99: { + 99: {59: {}} + }, + 100: { + 111: { + 116: { + 59: {}, + 111: { + 59: {}, + 108: {59: {}} + } + } + } + }, + 108: { + 59: {}, + 101: { + 115: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 59: {}, + 103: {59: {}} + }, + 105: { + 109: { + 101: { + 108: {59: {}} + } + } + }, + 106: { + 99: { + 121: {59: {}} + } + }, + 108: { + 59: {}, + 69: {59: {}}, + 97: {59: {}}, + 106: {59: {}} + }, + 110: { + 69: {59: {}}, + 97: { + 112: { + 59: {}, + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 101: { + 59: {}, + 113: { + 59: {}, + 113: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 105: { + 109: { + 59: {}, + 101: {59: {}}, + 108: {59: {}} + } + } + }, + 116: { + 59: {}, + 99: { + 99: {59: {}}, + 105: { + 114: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 108: { + 80: { + 97: { + 114: {59: {}} + } + } + }, + 113: { + 117: { + 101: { + 115: { + 116: {59: {}} + } + } + } + }, + 114: { + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + }, + 114: { + 114: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 113: { + 108: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 113: { + 108: { + 101: { + 115: { + 115: {59: {}} + } + } + } + } + } + }, + 108: { + 101: { + 115: { + 115: {59: {}} + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + } + }, + 118: { + 101: { + 114: { + 116: { + 110: { + 101: { + 113: { + 113: {59: {}} + } + } + } + } + } + }, + 110: { + 69: {59: {}} + } + } + }, + 104: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 105: { + 114: { + 115: { + 112: {59: {}} + } + } + }, + 108: { + 102: {59: {}} + }, + 109: { + 105: { + 108: { + 116: {59: {}} + } + } + }, + 114: { + 100: { + 99: { + 121: {59: {}} + } + }, + 114: { + 59: {}, + 99: { + 105: { + 114: {59: {}} + } + }, + 119: {59: {}} + } + } + }, + 98: { + 97: { + 114: {59: {}} + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + } + }, + 101: { + 97: { + 114: { + 116: { + 115: { + 59: {}, + 117: { + 105: { + 116: {59: {}} + } + } + } + } + } + }, + 108: { + 108: { + 105: { + 112: {59: {}} + } + } + }, + 114: { + 99: { + 111: { + 110: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 107: { + 115: { + 101: { + 97: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 119: { + 97: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + }, + 111: { + 97: { + 114: { + 114: {59: {}} + } + }, + 109: { + 116: { + 104: { + 116: {59: {}} + } + } + }, + 111: { + 107: { + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 112: { + 102: {59: {}} + }, + 114: { + 98: { + 97: { + 114: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 108: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 121: { + 98: { + 117: { + 108: { + 108: {59: {}} + } + } + }, + 112: { + 104: { + 101: { + 110: {59: {}} + } + } + } + } + }, + 105: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 59: {}, + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 101: { + 99: { + 121: {59: {}} + }, + 120: { + 99: { + 108: {59: {}} + } + } + }, + 102: { + 102: {59: {}}, + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 105: { + 59: {}, + 105: { + 105: { + 110: { + 116: {59: {}} + } + }, + 110: { + 116: {59: {}} + } + }, + 110: { + 102: { + 105: { + 110: {59: {}} + } + } + }, + 111: { + 116: { + 97: {59: {}} + } + } + }, + 106: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + }, + 103: { + 101: {59: {}}, + 108: { + 105: { + 110: { + 101: {59: {}} + } + } + }, + 112: { + 97: { + 114: { + 116: {59: {}} + } + } + } + }, + 116: { + 104: {59: {}} + } + }, + 111: { + 102: {59: {}} + }, + 112: { + 101: { + 100: {59: {}} + } + } + }, + 110: { + 59: {}, + 99: { + 97: { + 114: { + 101: {59: {}} + } + } + }, + 102: { + 105: { + 110: { + 59: {}, + 116: { + 105: { + 101: {59: {}} + } + } + } + } + }, + 111: { + 100: { + 111: { + 116: {59: {}} + } + } + }, + 116: { + 59: {}, + 99: { + 97: { + 108: {59: {}} + } + }, + 101: { + 103: { + 101: { + 114: { + 115: {59: {}} + } + } + }, + 114: { + 99: { + 97: { + 108: {59: {}} + } + } + } + }, + 108: { + 97: { + 114: { + 104: { + 107: {59: {}} + } + } + } + }, + 112: { + 114: { + 111: { + 100: {59: {}} + } + } + } + } + }, + 111: { + 99: { + 121: {59: {}} + }, + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + }, + 116: { + 97: {59: {}} + } + }, + 112: { + 114: { + 111: { + 100: {59: {}} + } + } + }, + 113: { + 117: { + 101: { + 115: { + 116: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 105: { + 110: { + 59: {}, + 69: {59: {}}, + 100: { + 111: { + 116: {59: {}} + } + }, + 115: { + 59: {}, + 118: {59: {}} + }, + 118: {59: {}} + } + } + }, + 116: { + 59: {}, + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + } + }, + 117: { + 107: { + 99: { + 121: {59: {}} + } + }, + 109: { + 108: {59: {}} + } + } + }, + 106: { + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 109: { + 97: { + 116: { + 104: {59: {}} + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 101: { + 114: { + 99: { + 121: {59: {}} + } + } + } + }, + 117: { + 107: { + 99: { + 121: {59: {}} + } + } + } + }, + 107: { + 97: { + 112: { + 112: { + 97: { + 59: {}, + 118: {59: {}} + } + } + } + }, + 99: { + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 103: { + 114: { + 101: { + 101: { + 110: {59: {}} + } + } + } + }, + 104: { + 99: { + 121: {59: {}} + } + }, + 106: { + 99: { + 121: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 108: { + 65: { + 97: { + 114: { + 114: {59: {}} + } + }, + 114: { + 114: {59: {}} + }, + 116: { + 97: { + 105: { + 108: {59: {}} + } + } + } + }, + 66: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 69: { + 59: {}, + 103: {59: {}} + }, + 72: { + 97: { + 114: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 101: { + 109: { + 112: { + 116: { + 121: { + 118: {59: {}} + } + } + } + } + }, + 103: { + 114: { + 97: { + 110: {59: {}} + } + } + }, + 109: { + 98: { + 100: { + 97: {59: {}} + } + } + }, + 110: { + 103: { + 59: {}, + 100: {59: {}}, + 108: { + 101: {59: {}} + } + } + }, + 112: {59: {}}, + 113: { + 117: { + 111: {59: {}} + } + }, + 114: { + 114: { + 59: {}, + 98: { + 59: {}, + 102: { + 115: {59: {}} + } + }, + 102: { + 115: {59: {}} + }, + 104: { + 107: {59: {}} + }, + 108: { + 112: {59: {}} + }, + 112: { + 108: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 116: { + 108: {59: {}} + } + } + }, + 116: { + 59: {}, + 97: { + 105: { + 108: {59: {}} + } + }, + 101: { + 59: {}, + 115: {59: {}} + } + } + }, + 98: { + 97: { + 114: { + 114: {59: {}} + } + }, + 98: { + 114: { + 107: {59: {}} + } + }, + 114: { + 97: { + 99: { + 101: {59: {}}, + 107: {59: {}} + } + }, + 107: { + 101: {59: {}}, + 115: { + 108: { + 100: {59: {}}, + 117: {59: {}} + } + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + }, + 105: { + 108: {59: {}} + } + }, + 117: { + 98: {59: {}} + }, + 121: {59: {}} + }, + 100: { + 99: { + 97: {59: {}} + }, + 113: { + 117: { + 111: { + 59: {}, + 114: {59: {}} + } + } + }, + 114: { + 100: { + 104: { + 97: { + 114: {59: {}} + } + } + }, + 117: { + 115: { + 104: { + 97: { + 114: {59: {}} + } + } + } + } + }, + 115: { + 104: {59: {}} + } + }, + 101: { + 59: {}, + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 59: {}, + 116: { + 97: { + 105: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 117: { + 112: {59: {}} + } + } + } + } + } + } + } + }, + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 115: {59: {}} + } + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 59: {}, + 115: {59: {}} + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 115: {59: {}} + } + } + } + } + } + } + }, + 115: { + 113: { + 117: { + 105: { + 103: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 116: { + 104: { + 114: { + 101: { + 101: { + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 103: {59: {}}, + 113: { + 59: {}, + 113: {59: {}}, + 115: { + 108: { + 97: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 115: { + 59: {}, + 99: { + 99: {59: {}} + }, + 100: { + 111: { + 116: { + 59: {}, + 111: { + 59: {}, + 114: {59: {}} + } + } + } + }, + 103: { + 59: {}, + 101: { + 115: {59: {}} + } + }, + 115: { + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 113: { + 103: { + 116: { + 114: {59: {}} + } + }, + 113: { + 103: { + 116: { + 114: {59: {}} + } + } + } + } + }, + 103: { + 116: { + 114: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + } + } + }, + 102: { + 105: { + 115: { + 104: { + 116: {59: {}} + } + } + }, + 108: { + 111: { + 111: { + 114: {59: {}} + } + } + }, + 114: {59: {}} + }, + 103: { + 59: {}, + 69: {59: {}} + }, + 104: { + 97: { + 114: { + 100: {59: {}}, + 117: { + 59: {}, + 108: {59: {}} + } + } + }, + 98: { + 108: { + 107: {59: {}} + } + } + }, + 106: { + 99: { + 121: {59: {}} + } + }, + 108: { + 59: {}, + 97: { + 114: { + 114: {59: {}} + } + }, + 99: { + 111: { + 114: { + 110: { + 101: { + 114: {59: {}} + } + } + } + } + }, + 104: { + 97: { + 114: { + 100: {59: {}} + } + } + }, + 116: { + 114: { + 105: {59: {}} + } + } + }, + 109: { + 105: { + 100: { + 111: { + 116: {59: {}} + } + } + }, + 111: { + 117: { + 115: { + 116: { + 59: {}, + 97: { + 99: { + 104: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 110: { + 69: {59: {}}, + 97: { + 112: { + 59: {}, + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 101: { + 59: {}, + 113: { + 59: {}, + 113: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 111: { + 97: { + 110: { + 103: {59: {}} + }, + 114: { + 114: {59: {}} + } + }, + 98: { + 114: { + 107: {59: {}} + } + }, + 110: { + 103: { + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + }, + 109: { + 97: { + 112: { + 115: { + 116: { + 111: {59: {}} + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 111: { + 112: { + 97: { + 114: { + 114: { + 111: { + 119: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 112: { + 97: { + 114: {59: {}} + }, + 102: {59: {}}, + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + }, + 119: { + 97: { + 115: { + 116: {59: {}} + } + }, + 98: { + 97: { + 114: {59: {}} + } + } + }, + 122: { + 59: {}, + 101: { + 110: { + 103: { + 101: {59: {}} + } + } + }, + 102: {59: {}} + } + }, + 112: { + 97: { + 114: { + 59: {}, + 108: { + 116: {59: {}} + } + } + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + }, + 99: { + 111: { + 114: { + 110: { + 101: { + 114: {59: {}} + } + } + } + } + }, + 104: { + 97: { + 114: { + 59: {}, + 100: {59: {}} + } + } + }, + 109: {59: {}}, + 116: { + 114: { + 105: {59: {}} + } + } + }, + 115: { + 97: { + 113: { + 117: { + 111: {59: {}} + } + } + }, + 99: { + 114: {59: {}} + }, + 104: {59: {}}, + 105: { + 109: { + 59: {}, + 101: {59: {}}, + 103: {59: {}} + } + }, + 113: { + 98: {59: {}}, + 117: { + 111: { + 59: {}, + 114: {59: {}} + } + } + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 116: { + 59: {}, + 99: { + 99: {59: {}}, + 105: { + 114: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 104: { + 114: { + 101: { + 101: {59: {}} + } + } + }, + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + }, + 108: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 113: { + 117: { + 101: { + 115: { + 116: {59: {}} + } + } + } + }, + 114: { + 80: { + 97: { + 114: {59: {}} + } + }, + 105: { + 59: {}, + 101: {59: {}}, + 102: {59: {}} + } + } + }, + 117: { + 114: { + 100: { + 115: { + 104: { + 97: { + 114: {59: {}} + } + } + } + }, + 117: { + 104: { + 97: { + 114: {59: {}} + } + } + } + } + }, + 118: { + 101: { + 114: { + 116: { + 110: { + 101: { + 113: { + 113: {59: {}} + } + } + } + } + } + }, + 110: { + 69: {59: {}} + } + } + }, + 109: { + 68: { + 68: { + 111: { + 116: {59: {}} + } + } + }, + 97: { + 99: { + 114: {59: {}} + }, + 108: { + 101: {59: {}}, + 116: { + 59: {}, + 101: { + 115: { + 101: {59: {}} + } + } + } + }, + 112: { + 59: {}, + 115: { + 116: { + 111: { + 59: {}, + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 117: { + 112: {59: {}} + } + } + } + } + }, + 114: { + 107: { + 101: { + 114: {59: {}} + } + } + } + }, + 99: { + 111: { + 109: { + 109: { + 97: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 101: { + 97: { + 115: { + 117: { + 114: { + 101: { + 100: { + 97: { + 110: { + 103: { + 108: { + 101: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 111: {59: {}} + }, + 105: { + 99: { + 114: { + 111: {59: {}} + } + }, + 100: { + 59: {}, + 97: { + 115: { + 116: {59: {}} + } + }, + 99: { + 105: { + 114: {59: {}} + } + }, + 100: { + 111: { + 116: {59: {}} + } + } + }, + 110: { + 117: { + 115: { + 59: {}, + 98: {59: {}}, + 100: { + 59: {}, + 117: {59: {}} + } + } + } + } + }, + 108: { + 99: { + 112: {59: {}} + }, + 100: { + 114: {59: {}} + } + }, + 110: { + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + } + }, + 111: { + 100: { + 101: { + 108: { + 115: {59: {}} + } + } + }, + 112: { + 102: {59: {}} + } + }, + 112: {59: {}}, + 115: { + 99: { + 114: {59: {}} + }, + 116: { + 112: { + 111: { + 115: {59: {}} + } + } + } + }, + 117: { + 59: {}, + 108: { + 116: { + 105: { + 109: { + 97: { + 112: {59: {}} + } + } + } + } + }, + 109: { + 97: { + 112: {59: {}} + } + } + } + }, + 110: { + 71: { + 103: {59: {}}, + 116: { + 59: {}, + 118: {59: {}} + } + }, + 76: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 108: {59: {}}, + 116: { + 59: {}, + 118: {59: {}} + } + }, + 82: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 86: { + 68: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + } + }, + 97: { + 98: { + 108: { + 97: {59: {}} + } + }, + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 110: { + 103: {59: {}} + }, + 112: { + 59: {}, + 69: {59: {}}, + 105: { + 100: {59: {}} + }, + 111: { + 115: {59: {}} + }, + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + }, + 116: { + 117: { + 114: { + 59: {}, + 97: { + 108: { + 59: {}, + 115: {59: {}} + } + } + } + } + } + }, + 98: { + 115: { + 112: {59: {}} + }, + 117: { + 109: { + 112: { + 59: {}, + 101: {59: {}} + } + } + } + }, + 99: { + 97: { + 112: {59: {}}, + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 111: { + 110: { + 103: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + } + } + }, + 117: { + 112: {59: {}} + }, + 121: {59: {}} + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 101: { + 59: {}, + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 104: { + 107: {59: {}} + }, + 114: { + 59: {}, + 111: { + 119: {59: {}} + } + } + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 113: { + 117: { + 105: { + 118: {59: {}} + } + } + }, + 115: { + 101: { + 97: { + 114: {59: {}} + } + }, + 105: { + 109: {59: {}} + } + }, + 120: { + 105: { + 115: { + 116: { + 59: {}, + 115: {59: {}} + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 103: { + 69: {59: {}}, + 101: { + 59: {}, + 113: { + 59: {}, + 113: {59: {}}, + 115: { + 108: { + 97: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 115: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 116: { + 59: {}, + 114: {59: {}} + } + }, + 104: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 114: {59: {}} + } + }, + 112: { + 97: { + 114: {59: {}} + } + } + }, + 105: { + 59: {}, + 115: { + 59: {}, + 100: {59: {}} + }, + 118: {59: {}} + }, + 106: { + 99: { + 121: {59: {}} + } + }, + 108: { + 65: { + 114: { + 114: {59: {}} + } + }, + 69: {59: {}}, + 97: { + 114: { + 114: {59: {}} + } + }, + 100: { + 114: {59: {}} + }, + 101: { + 59: {}, + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 113: { + 59: {}, + 113: {59: {}}, + 115: { + 108: { + 97: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 115: { + 59: {}, + 115: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 116: { + 59: {}, + 114: { + 105: { + 59: {}, + 101: {59: {}} + } + } + } + }, + 109: { + 105: { + 100: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + }, + 116: { + 59: {}, + 105: { + 110: { + 59: {}, + 69: {59: {}}, + 100: { + 111: { + 116: {59: {}} + } + }, + 118: { + 97: {59: {}}, + 98: {59: {}}, + 99: {59: {}} + } + } + }, + 110: { + 105: { + 59: {}, + 118: { + 97: {59: {}}, + 98: {59: {}}, + 99: {59: {}} + } + } + } + } + }, + 112: { + 97: { + 114: { + 59: {}, + 97: { + 108: { + 108: { + 101: { + 108: {59: {}} + } + } + } + }, + 115: { + 108: {59: {}} + }, + 116: {59: {}} + } + }, + 111: { + 108: { + 105: { + 110: { + 116: {59: {}} + } + } + } + }, + 114: { + 59: {}, + 99: { + 117: { + 101: {59: {}} + } + }, + 101: { + 59: {}, + 99: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + }, + 114: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 114: { + 59: {}, + 99: {59: {}}, + 119: {59: {}} + } + } + }, + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 116: { + 114: { + 105: { + 59: {}, + 101: {59: {}} + } + } + } + }, + 115: { + 99: { + 59: {}, + 99: { + 117: { + 101: {59: {}} + } + }, + 101: {59: {}}, + 114: {59: {}} + }, + 104: { + 111: { + 114: { + 116: { + 109: { + 105: { + 100: {59: {}} + } + }, + 112: { + 97: { + 114: { + 97: { + 108: { + 108: { + 101: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 105: { + 109: { + 59: {}, + 101: { + 59: {}, + 113: {59: {}} + } + } + }, + 109: { + 105: { + 100: {59: {}} + } + }, + 112: { + 97: { + 114: {59: {}} + } + }, + 113: { + 115: { + 117: { + 98: { + 101: {59: {}} + }, + 112: { + 101: {59: {}} + } + } + } + }, + 117: { + 98: { + 59: {}, + 69: {59: {}}, + 101: {59: {}}, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + } + }, + 99: { + 99: { + 59: {}, + 101: { + 113: {59: {}} + } + } + }, + 112: { + 59: {}, + 69: {59: {}}, + 101: {59: {}}, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + } + } + } + }, + 116: { + 103: { + 108: {59: {}} + }, + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + }, + 108: { + 103: {59: {}} + }, + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 108: { + 101: { + 102: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 117: { + 59: {}, + 109: { + 59: {}, + 101: { + 114: { + 111: {59: {}} + } + }, + 115: { + 112: {59: {}} + } + } + }, + 118: { + 68: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 72: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 97: { + 112: {59: {}} + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 103: { + 101: {59: {}}, + 116: {59: {}} + }, + 105: { + 110: { + 102: { + 105: { + 110: {59: {}} + } + } + } + }, + 108: { + 65: { + 114: { + 114: {59: {}} + } + }, + 101: {59: {}}, + 116: { + 59: {}, + 114: { + 105: { + 101: {59: {}} + } + } + } + }, + 114: { + 65: { + 114: { + 114: {59: {}} + } + }, + 116: { + 114: { + 105: { + 101: {59: {}} + } + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 119: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 104: { + 107: {59: {}} + }, + 114: { + 59: {}, + 111: { + 119: {59: {}} + } + } + } + }, + 110: { + 101: { + 97: { + 114: {59: {}} + } + } + } + } + }, + 111: { + 83: {59: {}}, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 115: { + 116: {59: {}} + } + }, + 99: { + 105: { + 114: { + 59: {}, + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + }, + 98: { + 108: { + 97: { + 99: {59: {}} + } + } + }, + 105: { + 118: {59: {}} + }, + 111: { + 116: {59: {}} + }, + 115: { + 111: { + 108: { + 100: {59: {}} + } + } + } + }, + 101: { + 108: { + 105: { + 103: {59: {}} + } + } + }, + 102: { + 99: { + 105: { + 114: {59: {}} + } + }, + 114: {59: {}} + }, + 103: { + 111: { + 110: {59: {}} + }, + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + }, + 116: {59: {}} + }, + 104: { + 98: { + 97: { + 114: {59: {}} + } + }, + 109: {59: {}} + }, + 105: { + 110: { + 116: {59: {}} + } + }, + 108: { + 97: { + 114: { + 114: {59: {}} + } + }, + 99: { + 105: { + 114: {59: {}} + }, + 114: { + 111: { + 115: { + 115: {59: {}} + } + } + } + }, + 105: { + 110: { + 101: {59: {}} + } + }, + 116: {59: {}} + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + }, + 101: { + 103: { + 97: {59: {}} + } + }, + 105: { + 99: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 100: {59: {}}, + 110: { + 117: { + 115: {59: {}} + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 112: { + 97: { + 114: {59: {}} + }, + 101: { + 114: { + 112: {59: {}} + } + }, + 108: { + 117: { + 115: {59: {}} + } + } + }, + 114: { + 59: {}, + 97: { + 114: { + 114: {59: {}} + } + }, + 100: { + 59: {}, + 101: { + 114: { + 59: {}, + 111: { + 102: {59: {}} + } + } + }, + 102: {59: {}}, + 109: {59: {}} + }, + 105: { + 103: { + 111: { + 102: {59: {}} + } + } + }, + 111: { + 114: {59: {}} + }, + 115: { + 108: { + 111: { + 112: { + 101: {59: {}} + } + } + } + }, + 118: {59: {}} + }, + 115: { + 99: { + 114: {59: {}} + }, + 108: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 111: { + 108: {59: {}} + } + }, + 116: { + 105: { + 108: { + 100: { + 101: {59: {}} + } + }, + 109: { + 101: { + 115: { + 59: {}, + 97: { + 115: {59: {}} + } + } + } + } + } + }, + 117: { + 109: { + 108: {59: {}} + } + }, + 118: { + 98: { + 97: { + 114: {59: {}} + } + } + } + }, + 112: { + 97: { + 114: { + 59: {}, + 97: { + 59: {}, + 108: { + 108: { + 101: { + 108: {59: {}} + } + } + } + }, + 115: { + 105: { + 109: {59: {}} + }, + 108: {59: {}} + }, + 116: {59: {}} + } + }, + 99: { + 121: {59: {}} + }, + 101: { + 114: { + 99: { + 110: { + 116: {59: {}} + } + }, + 105: { + 111: { + 100: {59: {}} + } + }, + 109: { + 105: { + 108: {59: {}} + } + }, + 112: {59: {}}, + 116: { + 101: { + 110: { + 107: {59: {}} + } + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 105: { + 59: {}, + 118: {59: {}} + }, + 109: { + 109: { + 97: { + 116: {59: {}} + } + } + }, + 111: { + 110: { + 101: {59: {}} + } + } + }, + 105: { + 59: {}, + 116: { + 99: { + 104: { + 102: { + 111: { + 114: { + 107: {59: {}} + } + } + } + } + } + }, + 118: {59: {}} + }, + 108: { + 97: { + 110: { + 99: { + 107: { + 59: {}, + 104: {59: {}} + } + }, + 107: { + 118: {59: {}} + } + } + }, + 117: { + 115: { + 59: {}, + 97: { + 99: { + 105: { + 114: {59: {}} + } + } + }, + 98: {59: {}}, + 99: { + 105: { + 114: {59: {}} + } + }, + 100: { + 111: {59: {}}, + 117: {59: {}} + }, + 101: {59: {}}, + 109: { + 110: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 116: { + 119: { + 111: {59: {}} + } + } + } + } + }, + 109: {59: {}}, + 111: { + 105: { + 110: { + 116: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 112: { + 102: {59: {}} + }, + 117: { + 110: { + 100: {59: {}} + } + } + }, + 114: { + 59: {}, + 69: {59: {}}, + 97: { + 112: {59: {}} + }, + 99: { + 117: { + 101: {59: {}} + } + }, + 101: { + 59: {}, + 99: { + 59: {}, + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 99: { + 117: { + 114: { + 108: { + 121: { + 101: { + 113: {59: {}} + } + } + } + } + } + }, + 101: { + 113: {59: {}} + }, + 110: { + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 101: { + 113: { + 113: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + } + }, + 105: { + 109: { + 101: { + 59: {}, + 115: {59: {}} + } + } + }, + 110: { + 69: {59: {}}, + 97: { + 112: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 111: { + 100: {59: {}}, + 102: { + 97: { + 108: { + 97: { + 114: {59: {}} + } + } + }, + 108: { + 105: { + 110: { + 101: {59: {}} + } + } + }, + 115: { + 117: { + 114: { + 102: {59: {}} + } + } + } + }, + 112: { + 59: {}, + 116: { + 111: {59: {}} + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 117: { + 114: { + 101: { + 108: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 105: {59: {}} + }, + 117: { + 110: { + 99: { + 115: { + 112: {59: {}} + } + } + } + } + }, + 113: { + 102: { + 114: {59: {}} + }, + 105: { + 110: { + 116: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 112: { + 114: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: { + 97: { + 116: { + 101: { + 114: { + 110: { + 105: { + 111: { + 110: { + 115: {59: {}} + } + } + } + } + } + }, + 105: { + 110: { + 116: {59: {}} + } + } + } + }, + 101: { + 115: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + }, + 111: { + 116: {59: {}} + } + } + }, + 114: { + 65: { + 97: { + 114: { + 114: {59: {}} + } + }, + 114: { + 114: {59: {}} + }, + 116: { + 97: { + 105: { + 108: {59: {}} + } + } + } + }, + 66: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 72: { + 97: { + 114: {59: {}} + } + }, + 97: { + 99: { + 101: {59: {}}, + 117: { + 116: { + 101: {59: {}} + } + } + }, + 100: { + 105: { + 99: {59: {}} + } + }, + 101: { + 109: { + 112: { + 116: { + 121: { + 118: {59: {}} + } + } + } + } + }, + 110: { + 103: { + 59: {}, + 100: {59: {}}, + 101: {59: {}}, + 108: { + 101: {59: {}} + } + } + }, + 113: { + 117: { + 111: {59: {}} + } + }, + 114: { + 114: { + 59: {}, + 97: { + 112: {59: {}} + }, + 98: { + 59: {}, + 102: { + 115: {59: {}} + } + }, + 99: {59: {}}, + 102: { + 115: {59: {}} + }, + 104: { + 107: {59: {}} + }, + 108: { + 112: {59: {}} + }, + 112: { + 108: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 116: { + 108: {59: {}} + }, + 119: {59: {}} + } + }, + 116: { + 97: { + 105: { + 108: {59: {}} + } + }, + 105: { + 111: { + 59: {}, + 110: { + 97: { + 108: { + 115: {59: {}} + } + } + } + } + } + } + }, + 98: { + 97: { + 114: { + 114: {59: {}} + } + }, + 98: { + 114: { + 107: {59: {}} + } + }, + 114: { + 97: { + 99: { + 101: {59: {}}, + 107: {59: {}} + } + }, + 107: { + 101: {59: {}}, + 115: { + 108: { + 100: {59: {}}, + 117: {59: {}} + } + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + }, + 105: { + 108: {59: {}} + } + }, + 117: { + 98: {59: {}} + }, + 121: {59: {}} + }, + 100: { + 99: { + 97: {59: {}} + }, + 108: { + 100: { + 104: { + 97: { + 114: {59: {}} + } + } + } + }, + 113: { + 117: { + 111: { + 59: {}, + 114: {59: {}} + } + } + }, + 115: { + 104: {59: {}} + } + }, + 101: { + 97: { + 108: { + 59: {}, + 105: { + 110: { + 101: {59: {}} + } + }, + 112: { + 97: { + 114: { + 116: {59: {}} + } + } + }, + 115: {59: {}} + } + }, + 99: { + 116: {59: {}} + }, + 103: {59: {}} + }, + 102: { + 105: { + 115: { + 104: { + 116: {59: {}} + } + } + }, + 108: { + 111: { + 111: { + 114: {59: {}} + } + } + }, + 114: {59: {}} + }, + 104: { + 97: { + 114: { + 100: {59: {}}, + 117: { + 59: {}, + 108: {59: {}} + } + } + }, + 111: { + 59: {}, + 118: {59: {}} + } + }, + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 59: {}, + 116: { + 97: { + 105: { + 108: {59: {}} + } + } + } + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 117: { + 112: {59: {}} + } + } + } + } + } + } + } + }, + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 115: {59: {}} + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 115: { + 113: { + 117: { + 105: { + 103: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + }, + 116: { + 104: { + 114: { + 101: { + 101: { + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + }, + 110: { + 103: {59: {}} + }, + 115: { + 105: { + 110: { + 103: { + 100: { + 111: { + 116: { + 115: { + 101: { + 113: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 108: { + 97: { + 114: { + 114: {59: {}} + } + }, + 104: { + 97: { + 114: {59: {}} + } + }, + 109: {59: {}} + }, + 109: { + 111: { + 117: { + 115: { + 116: { + 59: {}, + 97: { + 99: { + 104: { + 101: {59: {}} + } + } + } + } + } + } + } + }, + 110: { + 109: { + 105: { + 100: {59: {}} + } + } + }, + 111: { + 97: { + 110: { + 103: {59: {}} + }, + 114: { + 114: {59: {}} + } + }, + 98: { + 114: { + 107: {59: {}} + } + }, + 112: { + 97: { + 114: {59: {}} + }, + 102: {59: {}}, + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + } + } + }, + 112: { + 97: { + 114: { + 59: {}, + 103: { + 116: {59: {}} + } + } + }, + 112: { + 111: { + 108: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 115: { + 97: { + 113: { + 117: { + 111: {59: {}} + } + } + }, + 99: { + 114: {59: {}} + }, + 104: {59: {}}, + 113: { + 98: {59: {}}, + 117: { + 111: { + 59: {}, + 114: {59: {}} + } + } + } + }, + 116: { + 104: { + 114: { + 101: { + 101: {59: {}} + } + } + }, + 105: { + 109: { + 101: { + 115: {59: {}} + } + } + }, + 114: { + 105: { + 59: {}, + 101: {59: {}}, + 102: {59: {}}, + 108: { + 116: { + 114: { + 105: {59: {}} + } + } + } + } + } + }, + 117: { + 108: { + 117: { + 104: { + 97: { + 114: {59: {}} + } + } + } + } + }, + 120: {59: {}} + }, + 115: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 98: { + 113: { + 117: { + 111: {59: {}} + } + } + }, + 99: { + 59: {}, + 69: {59: {}}, + 97: { + 112: {59: {}}, + 114: { + 111: { + 110: {59: {}} + } + } + }, + 99: { + 117: { + 101: {59: {}} + } + }, + 101: { + 59: {}, + 100: { + 105: { + 108: {59: {}} + } + } + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 110: { + 69: {59: {}}, + 97: { + 112: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 112: { + 111: { + 108: { + 105: { + 110: { + 116: {59: {}} + } + } + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: { + 59: {}, + 98: {59: {}}, + 101: {59: {}} + } + } + }, + 101: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 104: { + 107: {59: {}} + }, + 114: { + 59: {}, + 111: { + 119: {59: {}} + } + } + } + }, + 99: { + 116: {59: {}} + }, + 109: { + 105: {59: {}} + }, + 115: { + 119: { + 97: { + 114: {59: {}} + } + } + }, + 116: { + 109: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + }, + 110: {59: {}} + } + }, + 120: { + 116: {59: {}} + } + }, + 102: { + 114: { + 59: {}, + 111: { + 119: { + 110: {59: {}} + } + } + } + }, + 104: { + 97: { + 114: { + 112: {59: {}} + } + }, + 99: { + 104: { + 99: { + 121: {59: {}} + } + }, + 121: {59: {}} + }, + 111: { + 114: { + 116: { + 109: { + 105: { + 100: {59: {}} + } + }, + 112: { + 97: { + 114: { + 97: { + 108: { + 108: { + 101: { + 108: {59: {}} + } + } + } + } + } + } + } + } + } + }, + 121: {59: {}} + }, + 105: { + 103: { + 109: { + 97: { + 59: {}, + 102: {59: {}}, + 118: {59: {}} + } + } + }, + 109: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 59: {}, + 113: {59: {}} + }, + 103: { + 59: {}, + 69: {59: {}} + }, + 108: { + 59: {}, + 69: {59: {}} + }, + 110: { + 101: {59: {}} + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + } + } + }, + 108: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 109: { + 97: { + 108: { + 108: { + 115: { + 101: { + 116: { + 109: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + } + } + } + } + } + }, + 115: { + 104: { + 112: {59: {}} + } + } + }, + 101: { + 112: { + 97: { + 114: { + 115: { + 108: {59: {}} + } + } + } + } + }, + 105: { + 100: {59: {}}, + 108: { + 101: {59: {}} + } + }, + 116: { + 59: {}, + 101: { + 59: {}, + 115: {59: {}} + } + } + }, + 111: { + 102: { + 116: { + 99: { + 121: {59: {}} + } + } + }, + 108: { + 59: {}, + 98: { + 59: {}, + 97: { + 114: {59: {}} + } + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 97: { + 100: { + 101: { + 115: { + 59: {}, + 117: { + 105: { + 116: {59: {}} + } + } + } + } + }, + 114: {59: {}} + } + }, + 113: { + 99: { + 97: { + 112: { + 59: {}, + 115: {59: {}} + } + }, + 117: { + 112: { + 59: {}, + 115: {59: {}} + } + } + }, + 115: { + 117: { + 98: { + 59: {}, + 101: {59: {}}, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + }, + 112: { + 59: {}, + 101: {59: {}}, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + } + } + }, + 117: { + 59: {}, + 97: { + 114: { + 101: {59: {}}, + 102: {59: {}} + } + }, + 102: {59: {}} + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 101: { + 116: { + 109: { + 110: {59: {}} + } + } + }, + 109: { + 105: { + 108: { + 101: {59: {}} + } + } + }, + 116: { + 97: { + 114: { + 102: {59: {}} + } + } + } + }, + 116: { + 97: { + 114: { + 59: {}, + 102: {59: {}} + } + }, + 114: { + 97: { + 105: { + 103: { + 104: { + 116: { + 101: { + 112: { + 115: { + 105: { + 108: { + 111: { + 110: {59: {}} + } + } + } + } + } + }, + 112: { + 104: { + 105: {59: {}} + } + } + } + } + } + } + }, + 110: { + 115: {59: {}} + } + } + }, + 117: { + 98: { + 59: {}, + 69: {59: {}}, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + }, + 109: { + 117: { + 108: { + 116: {59: {}} + } + } + }, + 110: { + 69: {59: {}}, + 101: {59: {}} + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + }, + 110: { + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + }, + 105: { + 109: {59: {}} + }, + 117: { + 98: {59: {}}, + 112: {59: {}} + } + } + }, + 99: { + 99: { + 59: {}, + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 99: { + 117: { + 114: { + 108: { + 121: { + 101: { + 113: {59: {}} + } + } + } + } + } + }, + 101: { + 113: {59: {}} + }, + 110: { + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 101: { + 113: { + 113: {59: {}} + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + } + }, + 109: {59: {}}, + 110: { + 103: {59: {}} + }, + 112: { + 49: {59: {}}, + 50: {59: {}}, + 51: {59: {}}, + 59: {}, + 69: {59: {}}, + 100: { + 111: { + 116: {59: {}} + }, + 115: { + 117: { + 98: {59: {}} + } + } + }, + 101: { + 59: {}, + 100: { + 111: { + 116: {59: {}} + } + } + }, + 104: { + 115: { + 111: { + 108: {59: {}} + }, + 117: { + 98: {59: {}} + } + } + }, + 108: { + 97: { + 114: { + 114: {59: {}} + } + } + }, + 109: { + 117: { + 108: { + 116: {59: {}} + } + } + }, + 110: { + 69: {59: {}}, + 101: {59: {}} + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 115: { + 101: { + 116: { + 59: {}, + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + }, + 110: { + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + }, + 105: { + 109: {59: {}} + }, + 117: { + 98: {59: {}}, + 112: {59: {}} + } + } + } + }, + 119: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 104: { + 107: {59: {}} + }, + 114: { + 59: {}, + 111: { + 119: {59: {}} + } + } + } + }, + 110: { + 119: { + 97: { + 114: {59: {}} + } + } + } + }, + 122: { + 108: { + 105: { + 103: {59: {}} + } + } + } + }, + 116: { + 97: { + 114: { + 103: { + 101: { + 116: {59: {}} + } + } + }, + 117: {59: {}} + }, + 98: { + 114: { + 107: {59: {}} + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 101: { + 100: { + 105: { + 108: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 108: { + 114: { + 101: { + 99: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 101: { + 114: { + 101: { + 52: {59: {}}, + 102: { + 111: { + 114: { + 101: {59: {}} + } + } + } + } + }, + 116: { + 97: { + 59: {}, + 115: { + 121: { + 109: {59: {}} + } + }, + 118: {59: {}} + } + } + }, + 105: { + 99: { + 107: { + 97: { + 112: { + 112: { + 114: { + 111: { + 120: {59: {}} + } + } + } + } + }, + 115: { + 105: { + 109: {59: {}} + } + } + } + }, + 110: { + 115: { + 112: {59: {}} + } + } + }, + 107: { + 97: { + 112: {59: {}} + }, + 115: { + 105: { + 109: {59: {}} + } + } + }, + 111: { + 114: { + 110: {59: {}} + } + } + }, + 105: { + 108: { + 100: { + 101: {59: {}} + } + }, + 109: { + 101: { + 115: { + 59: {}, + 98: { + 59: {}, + 97: { + 114: {59: {}} + } + }, + 100: {59: {}} + } + } + }, + 110: { + 116: {59: {}} + } + }, + 111: { + 101: { + 97: {59: {}} + }, + 112: { + 59: {}, + 98: { + 111: { + 116: {59: {}} + } + }, + 99: { + 105: { + 114: {59: {}} + } + }, + 102: { + 59: {}, + 111: { + 114: { + 107: {59: {}} + } + } + } + }, + 115: { + 97: {59: {}} + } + }, + 112: { + 114: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 114: { + 97: { + 100: { + 101: {59: {}} + } + }, + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 59: {}, + 100: { + 111: { + 119: { + 110: {59: {}} + } + } + }, + 108: { + 101: { + 102: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + }, + 113: {59: {}}, + 114: { + 105: { + 103: { + 104: { + 116: { + 59: {}, + 101: { + 113: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: {59: {}}, + 109: { + 105: { + 110: { + 117: { + 115: {59: {}} + } + } + } + }, + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 115: { + 98: {59: {}} + }, + 116: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 112: { + 101: { + 122: { + 105: { + 117: { + 109: {59: {}} + } + } + } + } + } + }, + 115: { + 99: { + 114: {59: {}}, + 121: {59: {}} + }, + 104: { + 99: { + 121: {59: {}} + } + }, + 116: { + 114: { + 111: { + 107: {59: {}} + } + } + } + }, + 119: { + 105: { + 120: { + 116: {59: {}} + } + }, + 111: { + 104: { + 101: { + 97: { + 100: { + 108: { + 101: { + 102: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 117: { + 65: { + 114: { + 114: {59: {}} + } + }, + 72: { + 97: { + 114: {59: {}} + } + }, + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + }, + 114: { + 114: {59: {}} + } + }, + 98: { + 114: { + 99: { + 121: {59: {}} + }, + 101: { + 118: { + 101: {59: {}} + } + } + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 100: { + 97: { + 114: { + 114: {59: {}} + } + }, + 98: { + 108: { + 97: { + 99: {59: {}} + } + } + }, + 104: { + 97: { + 114: {59: {}} + } + } + }, + 102: { + 105: { + 115: { + 104: { + 116: {59: {}} + } + } + }, + 114: {59: {}} + }, + 103: { + 114: { + 97: { + 118: { + 101: {59: {}} + } + } + } + }, + 104: { + 97: { + 114: { + 108: {59: {}}, + 114: {59: {}} + } + }, + 98: { + 108: { + 107: {59: {}} + } + } + }, + 108: { + 99: { + 111: { + 114: { + 110: { + 59: {}, + 101: { + 114: {59: {}} + } + } + } + }, + 114: { + 111: { + 112: {59: {}} + } + } + }, + 116: { + 114: { + 105: {59: {}} + } + } + }, + 109: { + 97: { + 99: { + 114: {59: {}} + } + }, + 108: {59: {}} + }, + 111: { + 103: { + 111: { + 110: {59: {}} + } + }, + 112: { + 102: {59: {}} + } + }, + 112: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + }, + 100: { + 111: { + 119: { + 110: { + 97: { + 114: { + 114: { + 111: { + 119: {59: {}} + } + } + } + } + } + } + } + }, + 104: { + 97: { + 114: { + 112: { + 111: { + 111: { + 110: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + }, + 108: { + 117: { + 115: {59: {}} + } + }, + 115: { + 105: { + 59: {}, + 104: {59: {}}, + 108: { + 111: { + 110: {59: {}} + } + } + } + }, + 117: { + 112: { + 97: { + 114: { + 114: { + 111: { + 119: { + 115: {59: {}} + } + } + } + } + } + } + } + }, + 114: { + 99: { + 111: { + 114: { + 110: { + 59: {}, + 101: { + 114: {59: {}} + } + } + } + }, + 114: { + 111: { + 112: {59: {}} + } + } + }, + 105: { + 110: { + 103: {59: {}} + } + }, + 116: { + 114: { + 105: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 116: { + 100: { + 111: { + 116: {59: {}} + } + }, + 105: { + 108: { + 100: { + 101: {59: {}} + } + } + }, + 114: { + 105: { + 59: {}, + 102: {59: {}} + } + } + }, + 117: { + 97: { + 114: { + 114: {59: {}} + } + }, + 109: { + 108: {59: {}} + } + }, + 119: { + 97: { + 110: { + 103: { + 108: { + 101: {59: {}} + } + } + } + } + } + }, + 118: { + 65: { + 114: { + 114: {59: {}} + } + }, + 66: { + 97: { + 114: { + 59: {}, + 118: {59: {}} + } + } + }, + 68: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 97: { + 110: { + 103: { + 114: { + 116: {59: {}} + } + } + }, + 114: { + 101: { + 112: { + 115: { + 105: { + 108: { + 111: { + 110: {59: {}} + } + } + } + } + } + }, + 107: { + 97: { + 112: { + 112: { + 97: {59: {}} + } + } + } + }, + 110: { + 111: { + 116: { + 104: { + 105: { + 110: { + 103: {59: {}} + } + } + } + } + } + }, + 112: { + 104: { + 105: {59: {}} + }, + 105: {59: {}}, + 114: { + 111: { + 112: { + 116: { + 111: {59: {}} + } + } + } + } + }, + 114: { + 59: {}, + 104: { + 111: {59: {}} + } + }, + 115: { + 105: { + 103: { + 109: { + 97: {59: {}} + } + } + }, + 117: { + 98: { + 115: { + 101: { + 116: { + 110: { + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + } + } + }, + 112: { + 115: { + 101: { + 116: { + 110: { + 101: { + 113: { + 59: {}, + 113: {59: {}} + } + } + } + } + } + } + } + } + }, + 116: { + 104: { + 101: { + 116: { + 97: {59: {}} + } + } + }, + 114: { + 105: { + 97: { + 110: { + 103: { + 108: { + 101: { + 108: { + 101: { + 102: { + 116: {59: {}} + } + } + }, + 114: { + 105: { + 103: { + 104: { + 116: {59: {}} + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + 99: { + 121: {59: {}} + }, + 100: { + 97: { + 115: { + 104: {59: {}} + } + } + }, + 101: { + 101: { + 59: {}, + 98: { + 97: { + 114: {59: {}} + } + }, + 101: { + 113: {59: {}} + } + }, + 108: { + 108: { + 105: { + 112: {59: {}} + } + } + }, + 114: { + 98: { + 97: { + 114: {59: {}} + } + }, + 116: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 108: { + 116: { + 114: { + 105: {59: {}} + } + } + }, + 110: { + 115: { + 117: { + 98: {59: {}}, + 112: {59: {}} + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 112: { + 114: { + 111: { + 112: {59: {}} + } + } + }, + 114: { + 116: { + 114: { + 105: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 117: { + 98: { + 110: { + 69: {59: {}}, + 101: {59: {}} + } + }, + 112: { + 110: { + 69: {59: {}}, + 101: {59: {}} + } + } + } + }, + 122: { + 105: { + 103: { + 122: { + 97: { + 103: {59: {}} + } + } + } + } + } + }, + 119: { + 99: { + 105: { + 114: { + 99: {59: {}} + } + } + }, + 101: { + 100: { + 98: { + 97: { + 114: {59: {}} + } + }, + 103: { + 101: { + 59: {}, + 113: {59: {}} + } + } + }, + 105: { + 101: { + 114: { + 112: {59: {}} + } + } + } + }, + 102: { + 114: {59: {}} + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 112: {59: {}}, + 114: { + 59: {}, + 101: { + 97: { + 116: { + 104: {59: {}} + } + } + } + }, + 115: { + 99: { + 114: {59: {}} + } + } + }, + 120: { + 99: { + 97: { + 112: {59: {}} + }, + 105: { + 114: { + 99: {59: {}} + } + }, + 117: { + 112: {59: {}} + } + }, + 100: { + 116: { + 114: { + 105: {59: {}} + } + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 114: {59: {}} + } + } + }, + 105: {59: {}}, + 108: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 114: {59: {}} + } + } + }, + 109: { + 97: { + 112: {59: {}} + } + }, + 110: { + 105: { + 115: {59: {}} + } + }, + 111: { + 100: { + 111: { + 116: {59: {}} + } + }, + 112: { + 102: {59: {}}, + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 105: { + 109: { + 101: {59: {}} + } + } + } + }, + 114: { + 65: { + 114: { + 114: {59: {}} + } + }, + 97: { + 114: { + 114: {59: {}} + } + } + }, + 115: { + 99: { + 114: {59: {}} + }, + 113: { + 99: { + 117: { + 112: {59: {}} + } + } + } + }, + 117: { + 112: { + 108: { + 117: { + 115: {59: {}} + } + } + }, + 116: { + 114: { + 105: {59: {}} + } + } + }, + 118: { + 101: { + 101: {59: {}} + } + }, + 119: { + 101: { + 100: { + 103: { + 101: {59: {}} + } + } + } + } + }, + 121: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + }, + 121: {59: {}} + } + }, + 99: { + 105: { + 114: { + 99: {59: {}} + } + }, + 121: {59: {}} + }, + 101: { + 110: {59: {}} + }, + 102: { + 114: {59: {}} + }, + 105: { + 99: { + 121: {59: {}} + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 117: { + 99: { + 121: {59: {}} + }, + 109: { + 108: {59: {}} + } + } + }, + 122: { + 97: { + 99: { + 117: { + 116: { + 101: {59: {}} + } + } + } + }, + 99: { + 97: { + 114: { + 111: { + 110: {59: {}} + } + } + }, + 121: {59: {}} + }, + 100: { + 111: { + 116: {59: {}} + } + }, + 101: { + 101: { + 116: { + 114: { + 102: {59: {}} + } + } + }, + 116: { + 97: {59: {}} + } + }, + 102: { + 114: {59: {}} + }, + 104: { + 99: { + 121: {59: {}} + } + }, + 105: { + 103: { + 114: { + 97: { + 114: { + 114: {59: {}} + } + } + } + } + }, + 111: { + 112: { + 102: {59: {}} + } + }, + 115: { + 99: { + 114: {59: {}} + } + }, + 119: { + 106: {59: {}}, + 110: { + 106: {59: {}} + } + } + } +}; diff --git a/pubspec.yaml b/pubspec.yaml index 64eaed9..fb7ba78 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,5 +16,6 @@ dependencies: dev_dependencies: dart_flutter_team_lints: ^3.0.0 + dart_style: ^2.3.6 path: ^1.8.0 test: ^1.16.6 diff --git a/test/parser_feature_test.dart b/test/parser_feature_test.dart index 7156146..8349b41 100644 --- a/test/parser_feature_test.dart +++ b/test/parser_feature_test.dart @@ -77,9 +77,6 @@ On line 4, column 3 of ParseError: Unexpected DOCTYPE. Ignored. expect(parser.errors.length, 1); final error = parser.errors[0]; expect(error.errorCode, 'unexpected-doctype'); - expect(error.span!.start.line, 3); - // Note: error position is at the end, not the beginning - expect(error.span!.start.column, 17); }); test('text spans should have the correct length', () { @@ -254,14 +251,8 @@ On line 4, column 3 of ParseError: Unexpected DOCTYPE. Ignored. expect(parser.errors[0].errorCode, 'expected-doctype-but-got-chars'); expect(parser.errors[0].message, 'Unexpected non-space characters. Expected DOCTYPE.'); - expect( - parser.errors[0].toString(), - 'ParserError on line 1, column 4: Unexpected non-space characters. ' - 'Expected DOCTYPE.\n' - ' ╷\n' - '1 │ foo\n' - ' │ ^\n' - ' ╵'); + expect(parser.errors[0].toString(), + 'Unexpected non-space characters. Expected DOCTYPE.'); }); test('Element.text', () { diff --git a/test/trie_test.dart b/test/trie_test.dart new file mode 100644 index 0000000..e23ae37 --- /dev/null +++ b/test/trie_test.dart @@ -0,0 +1,49 @@ +import 'package:html/src/constants.dart'; +import 'package:html/src/trie.dart'; +import 'package:test/test.dart'; + +/// Some tests to ensure the [entities] and [entitiesTrieRoot] are in sync. +void main() { + test('All entities are in trie', () { + for (final entity in entities.keys) { + Map? node = entitiesTrieRoot; + for (final codeUnit in entity.codeUnits) { + node = node?[codeUnit] as Map?; + } + expect(node, isNotNull, reason: 'trie should contain $entity'); + } + }); + + test('Trie does not contain non-entity paths', () { + Map deepCopyMapOfMaps(Map src) { + return { + for (final pair in src.entries) + pair.key: deepCopyMapOfMaps(pair.value as Map) + }; + } + + final root = deepCopyMapOfMaps(entitiesTrieRoot); + // Iterate from longest to shortest to clean up trie as we go + outer: + for (final entityString in entities.keys.toList() + ..sort((a, b) => b.length.compareTo(a.length))) { + final codeUnits = entityString.codeUnits; + var node = root; + final path = [root]; + for (final codeUnit in codeUnits) { + final newNode = node[codeUnit] as Map?; + if (newNode == null) { + // This path was already cleaned up, this entityString must be a prefix of a longer one. + continue outer; + } + path.add(node = newNode); + } + for (var i = codeUnits.length - 1; i >= 0; i--) { + if (path[i + 1].isEmpty) { + path[i].remove(codeUnits[i]); + } + } + } + expect(root, isEmpty, reason: 'trie root contains some dead paths'); + }); +}