diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..8c773879 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,19 @@ +version: 2 +updates: +- package-ecosystem: bundler + directory: "/" + schedule: + interval: daily + time: "13:00" + open-pull-requests-limit: 10 +- package-ecosystem: npm + directory: "/Tools/GitHub-style-generator" + schedule: + interval: daily + time: "13:00" + open-pull-requests-limit: 10 + ignore: + - dependency-name: y18n + versions: + - 4.0.1 + - 4.0.2 diff --git a/.gitignore b/.gitignore index 91dc81e1..8ec45878 100644 --- a/.gitignore +++ b/.gitignore @@ -170,14 +170,18 @@ xcuserdata # This needs to be included explicitly because we excluded *.lock previously. !Podfile.lock +!Gemfile.lock +*.py[co] Build/ Pods/ +Tools/__pycache__/ Dependency/version/version.h Dependency/peg-markdown-highlight/pmh_parser_core.c Dependency/peg-markdown-highlight/pmh_parser.c Dependency/peg-markdown-highlight/*.o Dependency/peg-markdown-highlight/greg/*.o +Dependency/peg-markdown-highlight/greg/*.o-* Dependency/peg-markdown-highlight/greg/greg # Generated by build script diff --git a/.gitmodules b/.gitmodules index 7bdfeb8f..b24c3265 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "Dependency/prism"] path = Dependency/prism - url = https://github.com/LeaVerou/prism.git + url = https://github.com/PrismJS/prism.git diff --git a/.travis.yml b/.travis.yml index ce0f9e8b..4c3a6c48 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,20 @@ +osx_image: xcode10.1 language: objective-c -before_install: - - "gem install cocoapods --no-rdoc --no-ri --version 0.34.4" -xcode_workspace: MacDown.xcworkspace -xcode_scheme: MacDown +cache: +- bundler +- cocoapods +env: + global: + - LOCALIZATION_OUT=Build/Localizations + - secure: Vyar5YYP3n5CXQWiGxxT2QGYCcZgrSECmMb0BxeaG60KrKfDuXIoj6+rL/VqSImIlaF7qiVHkhHQba8Gf9QHhktUtfK4PQLfE0DzogoFVp8IXaTVEg9wBDnHAiqdadMmY3Vt2blnIIBLiV5+lFWxuSYlX27TTlr1ieev9Z+fMC0= +install: +- bundle install +- travis_wait bundle exec pod install +- python -m pip install --user transifex-client +before_script: +- set -o pipefail +script: +- xcodebuild -workspace MacDown.xcworkspace -scheme MacDown test | xcpretty +- xcodebuild -exportLocalizations -localizationPath "$LOCALIZATION_OUT" +after_success: +- python Tools/travis_push_transifex.py diff --git a/.tx/config b/.tx/config new file mode 100644 index 00000000..4ba24184 --- /dev/null +++ b/.tx/config @@ -0,0 +1,9 @@ +[main] +host = https://www.transifex.com +lang_map = zh_TW:zh-Hant, zh_CN:zh-Hans + +[macdown.macdownxliff] +file_filter = Build/Localizations/.xliff +source_lang = en +type = XLIFF + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0565b2b3..1ed67965 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,16 +27,16 @@ Exception: If a URL in a comment is too long, it can go over the limit. This hap * Braces go in separate lines. ([Allman style](http://en.wikipedia.org/wiki/Indent_style#Allman_style).) * If only one statement is contained inside the block, omit braces unless... - * This is part of a if-(else if-)else structure. All brace styles in the same structure should match (i.e. either non or all of them omit braces). + * This is part of an if-(else if-)else structure. All brace styles in the same structure should match (i.e. either non or all of them omit braces). #### Stetements Inside `if`, `while`, etc. * Prefer implicit boolean conversion when it makes sense. - * `if (str.length)` is better than `if (str.length != 0)` if you wants to know whether a string is empty. - * The same applies when checking for object `nil`-ness. + * `if (str.length)` is better than `if (str.length != 0)` if you want to know whether a string is empty. + * The same applies when checking for an object’s `nil`-ness. * If what you want to compare against is *zero as a number*, not emptiness, such as for `NSRange` position, `NSPoint` coordinates, etc., *do* use the `== 0`/`!= 0` expression. -* If statements need to span multiple lines, prefer putting logical operators in the *beginning* of the line. +* If statements need to span multiple lines, prefer putting logical operators at the *beginning* of the line. Yes: ```c @@ -88,7 +88,7 @@ Exception: If a URL in a comment is too long, it can go over the limit. This hap Always use *four spaces* instead of tabs for indentation. Trailing whitespaces should be removed. You can turn on the **Automatically trim trailing whitespace** option in Xcode to let it do the job for you. -Try to ensure that there’s a trailing newline in the end of a file. This is not strictly enforced since there are not easy ways to do that (except checking manually), but I’d appriciate the effort. +Try to ensure that there’s a trailing newline in the end of a file. This is not strictly enforced since there are no easy ways to do that (except checking manually), but I’d appriciate the effort. ## Version Control @@ -96,16 +96,16 @@ MacDown uses Git for source control, and is hosted on GitHub. ### Commit Messages -[General rules](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) apply. If you absolutely need to, the first line of the message *can* go as long as 72 (instead of 50), but it must not exceed it. +[General rules](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) apply. If you absolutely need to, the first line of the message *can* go as long as 72 (instead of 50) characters, but it must not exceed it. -Xcode’s commit window does not do a good job indicating whether your commit message is well-formed. I seldom use it personally, but if you do, you can check whether the commit message is good after you push to GitHub—If you see the first line of you commit message gets truncated, it is too long. +Xcode’s commit window does not do a good job indicating whether your commit message is well-formed. I seldom use it personally, but if you do, you can check whether the commit message is good after you push to GitHub—If you see the first line of your commit message getting truncated, it is too long. ### Pull Requests Please rebase your branch to `master` when you submit the pull request. There can be some nagging bugs when Git tries to merge files that are not code, particularly `.xib` and project files. When in doubt, always consider splitting changes into smaller commits so that you won’t need to re-apply your changes when things break. -Under certain circumstances I may wish you perform furthur rebasing and/or squashing *after* you submit your pull request, or even perform them myself instead of merging your commits as-is. Don’t worry—you will always get full credits for your contribution. +Under certain circumstances I may wish you to perform further rebasing and/or squashing *after* you submit your pull request, or even perform them myself instead of merging your commits as-is. Don’t worry—you will always get full credits for your contribution. ## More to Come -This style guide is a work in progress. Please feel free to ask is you have any questions about it. I’ll add more rules if there’s ambiguity. \ No newline at end of file +This style guide is a work in progress. Please feel free to ask if you have any questions about it. I’ll add more rules if there’s ambiguity. diff --git a/Dependency/peg-markdown-highlight/HGMarkdownHighlighter.m b/Dependency/peg-markdown-highlight/HGMarkdownHighlighter.m index ffd41207..d98b3404 100644 --- a/Dependency/peg-markdown-highlight/HGMarkdownHighlighter.m +++ b/Dependency/peg-markdown-highlight/HGMarkdownHighlighter.m @@ -31,18 +31,13 @@ @interface HGMarkdownHighlighter () { NSFontTraitMask _clearFontTraitMask; pmh_element **_cachedElements; - NSString *_currentHighlightText; - BOOL _workerThreadResultsInvalid; + NSOperationQueue *_parseHighlightsQueue; BOOL _styleDependenciesPending; NSMutableArray *_styleParsingErrors; - CGFloat _defaultTextSize; - + CGFloat _defaultTextSize; } -@property(strong) NSTimer *updateTimer; -@property(strong) NSTimer *highlightTimer; @property(copy) NSColor *defaultTextColor; -@property(strong) NSThread *workerThread; @property(strong) NSDictionary *defaultTypingAttributes; - (NSFontTraitMask) getClearFontTraitMask:(NSFontTraitMask)currentFontTraitMask; @@ -58,7 +53,6 @@ - (id) init return nil; _cachedElements = NULL; - _currentHighlightText = NULL; _styleDependenciesPending = NO; _styleParsingErrors = [NSMutableArray array]; @@ -67,6 +61,9 @@ - (id) init _waitInterval = 0.5; _extensions = pmh_EXT_NONE; + _parseHighlightsQueue = [[NSOperationQueue alloc] init]; + _parseHighlightsQueue.maxConcurrentOperationCount = 1; // serial queue + return self; } @@ -102,12 +99,12 @@ - (instancetype) initWithTextView:(NSTextView *)textView #pragma mark - -- (pmh_element **) parse +- (pmh_element **) parseText:(NSString *)markdown { pmh_element **result = NULL; - if (_currentHighlightText) + if (markdown) { - pmh_markdown_to_elements((char *)[_currentHighlightText UTF8String], self.extensions, &result); + pmh_markdown_to_elements((char *)[markdown UTF8String], self.extensions, &result); pmh_sort_elements_by_pos(result); } return result; @@ -118,17 +115,17 @@ - (pmh_element **) parse // NSString character offsets (NSString uses UTF-16 units as characters, so // sometimes two characters (a "surrogate pair") are needed to represent one // code point): -- (void) convertOffsets:(pmh_element **)elements +- (void) convertOffsets:(pmh_element **)elements text:(NSString *)markdown { // Walk through the whole string only once, and gather all surrogate pair indexes // (technically, the indexes of the high characters (which come before the low // characters) in each pair): - NSMutableArray *surrogatePairIndexes = [NSMutableArray arrayWithCapacity:(_currentHighlightText.length / 4)]; - NSUInteger strLen = _currentHighlightText.length; + NSMutableArray *surrogatePairIndexes = [NSMutableArray arrayWithCapacity:(markdown.length / 4)]; + NSUInteger strLen = markdown.length; NSUInteger i = 0; while (i < strLen) { - if (CFStringIsSurrogateHighCharacter([_currentHighlightText characterAtIndex:i])) + if (CFStringIsSurrogateHighCharacter([markdown characterAtIndex:i])) [surrogatePairIndexes addObject:@(i)]; i++; } @@ -171,59 +168,24 @@ - (void) convertOffsets:(pmh_element **)elements } } - -- (void) threadParseAndHighlight +- (void) requestParsing { - @autoreleasepool { - - pmh_element **result = [self parse]; - [self convertOffsets:result]; - - [self - performSelectorOnMainThread:@selector(parserDidParse:) - withObject:[NSValue valueWithPointer:result] - waitUntilDone:YES]; - - } -} + [_parseHighlightsQueue cancelAllOperations]; + [_parseHighlightsQueue addOperationWithBlock:^{ + // Fetch the markdown (from the main thread) + __block NSString *markdown = nil; + dispatch_sync(dispatch_get_main_queue(), ^{ + markdown = [[self.targetTextView string] copy]; + }); -- (void) threadDidExit:(NSNotification *)notification -{ - [[NSNotificationCenter defaultCenter] - removeObserver:self - name:NSThreadWillExitNotification - object:self.workerThread]; - _currentHighlightText = nil; - self.workerThread = nil; - if (_workerThreadResultsInvalid) - [self - performSelectorOnMainThread:@selector(requestParsing) - withObject:nil - waitUntilDone:NO]; -} + pmh_element **result = [self parseText:markdown]; + [self convertOffsets:result text:markdown]; -- (void) requestParsing -{ - if (self.workerThread != nil) { - _workerThreadResultsInvalid = YES; - return; - } - - self.workerThread = [[NSThread alloc] - initWithTarget:self - selector:@selector(threadParseAndHighlight) - object:nil]; - - [[NSNotificationCenter defaultCenter] - addObserver:self - selector:@selector(threadDidExit:) - name:NSThreadWillExitNotification - object:self.workerThread]; - - _currentHighlightText = [[self.targetTextView string] copy]; - - _workerThreadResultsInvalid = NO; - [self.workerThread start]; + dispatch_sync(dispatch_get_main_queue(), ^{ + [self cacheElementList:result]; + [self applyVisibleRangeHighlighting]; + }); + }]; } @@ -258,7 +220,9 @@ - (void) clearHighlightingForRange:(NSRange)range [textStorage applyFontTraits:_clearFontTraitMask range:range]; [textStorage removeAttribute:NSBackgroundColorAttributeName range:range]; [textStorage removeAttribute:NSLinkAttributeName range:range]; - if (self.targetTextView.typingAttributes && self.resetTypingAttributes) + if (self.targetTextView.typingAttributes + && self.resetTypingAttributes + && self.defaultTypingAttributes[NSParagraphStyleAttributeName]) { [textStorage addAttribute:NSParagraphStyleAttributeName value:self.defaultTypingAttributes[NSParagraphStyleAttributeName] @@ -437,54 +401,34 @@ - (void) clearElementsCache [self cacheElementList:NULL]; } - - -- (void) parserDidParse:(NSValue *)resultPointer -{ - if (_workerThreadResultsInvalid) - return; - [self cacheElementList:(pmh_element **)[resultPointer pointerValue]]; - [self applyVisibleRangeHighlighting]; -} - - -- (void) textViewUpdateTimerFire:(NSTimer*)timer -{ - self.updateTimer = nil; - [self requestParsing]; -} - -- (void)highlightTimerFire:(NSTimer *)timer -{ - self.highlightTimer = nil; - [self applyVisibleRangeHighlighting]; -} - - -- (void) textViewTextDidChange:(NSNotification *)notification +- (void)textViewTextDidChange:(NSNotification *)notification { - if (self.updateTimer != nil) - [self.updateTimer invalidate], self.updateTimer = nil; - self.updateTimer = [NSTimer - timerWithTimeInterval:self.waitInterval - target:self - selector:@selector(textViewUpdateTimerFire:) - userInfo:nil - repeats:NO - ]; - [[NSRunLoop currentRunLoop] addTimer:self.updateTimer forMode:NSRunLoopCommonModes]; + if (!self.waitInterval) { + [self requestParsing]; + } + else { + // Use GCD timers to prevent delays from UI interactions + dispatch_time_t delayTime = dispatch_time(DISPATCH_TIME_NOW, self.waitInterval * NSEC_PER_SEC); + dispatch_after(delayTime, dispatch_get_main_queue(), ^{ + [self requestParsing]; + }); + } } - (void) textViewDidScroll:(NSNotification *)notification { if (_cachedElements == NULL) return; - [self.highlightTimer invalidate]; - self.highlightTimer = nil; - self.highlightTimer = [NSTimer scheduledTimerWithTimeInterval:0.05 - target:self - selector:@selector(highlightTimerFire:) - userInfo:NULL repeats:NO]; + + [_parseHighlightsQueue cancelAllOperations]; + [_parseHighlightsQueue addOperationWithBlock:^{ + // No need to over render, set a delay + usleep(1000000 * 0.1); + + dispatch_async(dispatch_get_main_queue(), ^{ + [self applyVisibleRangeHighlighting]; + }); + }]; } diff --git a/Dependency/peg-markdown-highlight/Makefile b/Dependency/peg-markdown-highlight/Makefile index b50b48c8..2b183bd3 100644 --- a/Dependency/peg-markdown-highlight/Makefile +++ b/Dependency/peg-markdown-highlight/Makefile @@ -12,11 +12,13 @@ pmh_parser_core.c : pmh_grammar.leg $(GREG) pmh_parser.c : pmh_parser_core.c pmh_parser_head.c pmh_parser_foot.c tools/combine_parser_files.sh ./tools/combine_parser_files.sh > $@ -.PHONY: clean test +.PHONY: install clean distclean + +isntall: ALL clean: rm -f pmh_parser_core.c pmh_parser.c *.o; \ rm -rf *.dSYM; \ make -C $(GREGDIR) spotless -distclean: clean +distclean: clean \ No newline at end of file diff --git a/Dependency/peg-markdown-highlight/peg-markdown-highlight.xcodeproj/project.pbxproj b/Dependency/peg-markdown-highlight/peg-markdown-highlight.xcodeproj/project.pbxproj index 737a7db3..07e82882 100644 --- a/Dependency/peg-markdown-highlight/peg-markdown-highlight.xcodeproj/project.pbxproj +++ b/Dependency/peg-markdown-highlight/peg-markdown-highlight.xcodeproj/project.pbxproj @@ -50,11 +50,11 @@ 1F8A8367195348C500B6BF69 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0510; + LastUpgradeCheck = 0920; }; buildConfigurationList = 1F8A836A195348C500B6BF69 /* Build configuration list for PBXProject "peg-markdown-highlight" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -72,6 +72,30 @@ 1F8A8368195348C500B6BF69 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; ONLY_ACTIVE_ARCH = YES; }; name = Debug; @@ -79,6 +103,29 @@ 1F8A8369195348C500B6BF69 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; }; name = Release; }; diff --git a/Dependency/peg-markdown-highlight/pmh_grammar.leg b/Dependency/peg-markdown-highlight/pmh_grammar.leg index 7a224b67..1ef7401a 100644 --- a/Dependency/peg-markdown-highlight/pmh_grammar.leg +++ b/Dependency/peg-markdown-highlight/pmh_grammar.leg @@ -390,6 +390,7 @@ Inline = Str | Endline | UlOrStarLine | Space + | Math | Strong | Emph | Image @@ -406,7 +407,7 @@ Space = Spacechar+ Str = NormalChar (NormalChar | '_'+ &Alphanumeric)* -EscapedChar = '\\' !Newline [-\\`~|*_{}[\]()#+.!><] +EscapedChar = '\\' !Newline [-\\`~|*_{}[\]()#+.!><$] Entity = < s:LocMarker ( HexEntity | DecEntity | CharEntity ) > @@ -431,39 +432,37 @@ UlLine = "____" '_'* | Spacechar '_'+ &Spacechar Emph = EmphStar | EmphUl -OneStarOpen = !StarLine < '*' > !Spacechar !Newline { $$ = elem(pmh_NO_TYPE); } -OneStarClose = !Spacechar !Newline Inline !StrongStar < '*' > { $$ = elem(pmh_NO_TYPE); } +Whitespace = Spacechar | Newline -EmphStar = s:OneStarOpen - ( !OneStarClose Inline )* - OneStarClose +EmphStar = < s:LocMarker + '*' !Whitespace + ( !'*' Inline + | StrongStar + )+ + '*' > { ADD(elem_s(pmh_EMPH)); } -OneUlOpen = !UlLine < '_' > !Spacechar !Newline { $$ = elem(pmh_NO_TYPE); } -OneUlClose = !Spacechar !Newline Inline !StrongUl < '_' > !Alphanumeric { $$ = elem(pmh_NO_TYPE); } - -EmphUl = s:OneUlOpen - ( !OneUlClose Inline )* - OneUlClose +EmphUl = < s:LocMarker + '_' !Whitespace + ( !'_' Inline + | StrongUl + )+ + '_' > { ADD(elem_s(pmh_EMPH)); } Strong = StrongStar | StrongUl -TwoStarOpen = !StarLine < "**" > !Spacechar !Newline { $$ = elem(pmh_NO_TYPE); } -TwoStarClose = !Spacechar !Newline Inline < "**" > { $$ = elem(pmh_NO_TYPE); } - -StrongStar = s:TwoStarOpen - ( !TwoStarClose Inline )* - TwoStarClose +StrongStar = < s:LocMarker + "**" !Whitespace + ( !"**" Inline )+ + "**" > { ADD(elem_s(pmh_STRONG)); } -TwoUlOpen = !UlLine < "__" > !Spacechar !Newline { $$ = elem(pmh_NO_TYPE); } -TwoUlClose = !Spacechar !Newline Inline < "__" > !Alphanumeric { $$ = elem(pmh_NO_TYPE); } - -StrongUl = s:TwoUlOpen - ( !TwoUlClose Inline )* - TwoUlClose - { ADD(elem_s(pmh_STRONG)); } +StrongUl = < s:LocMarker + "__" !Whitespace + ( !"__" Inline )+ + "__" > + { ADD(elem_s(pmh_STRONG)); } Image = '!' ( ExplicitLink | ReferenceLink ) { @@ -484,8 +483,8 @@ ReferenceLinkDouble = < s:Label Spnl !"[]" l:Label > pmh_realelement *reference = GET_REF(l->label); if (reference) { $$ = elem_s(pmh_LINK); - $$->label = strdup(l->label); - $$->address = strdup(reference->address); + $$->label = strdup_or_null(l->label); + $$->address = strdup_or_null(reference->address); } else $$ = NULL; FREE_LABEL(s); @@ -497,8 +496,8 @@ ReferenceLinkSingle = < s:Label (Spnl "[]")? > pmh_realelement *reference = GET_REF(s->label); if (reference) { $$ = elem_s(pmh_LINK); - $$->label = strdup(s->label); - $$->address = strdup(reference->address); + $$->label = strdup_or_null(s->label); + $$->address = strdup_or_null(reference->address); } else $$ = NULL; FREE_LABEL(s); @@ -508,7 +507,7 @@ ExplicitLink = < s:Label Spnl '(' Sp l:Source Spnl Title Sp ')' > { $$ = elem_s(pmh_LINK); if (l->address != NULL) - $$->address = strdup(l->address); + $$->address = strdup_or_null(l->address); FREE_LABEL(s); FREE_ADDRESS(l); } @@ -551,8 +550,8 @@ Reference = < s:LocMarker NonindentSpace !"[]" l:Label ':' Spnl r:RefSrc RefTitle > BlankLine+ { pmh_realelement *el = elem_s(pmh_REFERENCE); - el->label = strdup(l->label); - el->address = strdup(r->address); + el->label = strdup_or_null(l->label); + el->address = strdup_or_null(r->address); ADD(el); FREE_LABEL(l); FREE_ADDRESS(r); @@ -621,7 +620,7 @@ Nonspacechar = !Spacechar !Newline . Newline = '\n' | '\r' '\n'? Sp = Spacechar* Spnl = Sp (Newline Sp)? -SpecialChar = '*' | '_' | '`' | '&' | '[' | ']' | '(' | ')' | '<' | '!' | '#' | '\\' | '\'' | '"' | '~' | ExtendedSpecialChar +SpecialChar = '$' | '*' | '_' | '`' | '&' | '[' | ']' | '(' | ')' | '<' | '!' | '#' | '\\' | '\'' | '"' | '~' | ExtendedSpecialChar NormalChar = !( SpecialChar | Spacechar | Newline ) . # Not used anywhere in grammar: #NonAlphanumeric = [\000-\057\072-\100\133-\140\173-\177] @@ -675,6 +674,15 @@ InlineNote = &{ EXT(pmh_EXT_NOTES) } RawNoteBlock = ( !BlankLine OptionallyIndentedLine )+ ( BlankLine* ) + +# Addon for math +# either do nothing with math (pmh_NO_TYPE) or highlight it as code (pmh_CODE) +# so that there is no wrong highlighing within MATH +Math = Dollar1Math | Dollar2Math + +Dollar1Math = < "$" ( !'$' . )+ "$" > { ADD(elem(pmh_CODE)); } +Dollar2Math = < "$$" (!'$' .)+ "$$" > { ADD(elem(pmh_CODE)); } + %% diff --git a/Dependency/peg-markdown-highlight/pmh_parser_foot.c b/Dependency/peg-markdown-highlight/pmh_parser_foot.c index 0be8f5a4..0ee07891 100644 --- a/Dependency/peg-markdown-highlight/pmh_parser_foot.c +++ b/Dependency/peg-markdown-highlight/pmh_parser_foot.c @@ -40,3 +40,4 @@ static void parse_references(parser_data *p_data) p_data->head_elems[pmh_REFERENCE] = NULL; } +#pragma clang diagnostic pop diff --git a/Dependency/peg-markdown-highlight/pmh_parser_head.c b/Dependency/peg-markdown-highlight/pmh_parser_head.c index 6591b88b..fefc8212 100644 --- a/Dependency/peg-markdown-highlight/pmh_parser_head.c +++ b/Dependency/peg-markdown-highlight/pmh_parser_head.c @@ -25,13 +25,19 @@ #endif +char *strdup_or_null(char *s) +{ + return (s == NULL) ? NULL : strdup(s); +} + // Alias strdup to _strdup on MSVC: #ifdef _MSC_VER #define strdup _strdup #endif - +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunreachable-code" // Internal language element occurrence structure, containing // both public and private members: @@ -703,9 +709,9 @@ static pmh_realelement *mk_element(parser_data *p_data, pmh_element_type type, static pmh_realelement *copy_element(parser_data *p_data, pmh_realelement *elem) { pmh_realelement *result = mk_element(p_data, elem->type, elem->pos, elem->end); - result->label = (elem->label == NULL) ? NULL : strdup(elem->label); - result->text = (elem->text == NULL) ? NULL : strdup(elem->text); - result->address = (elem->address == NULL) ? NULL : strdup(elem->address); + result->label = strdup_or_null(elem->label); + result->text = strdup_or_null(elem->text); + result->address = strdup_or_null(elem->address); return result; } @@ -715,7 +721,7 @@ static pmh_realelement *mk_etext(parser_data *p_data, char *string) pmh_realelement *result; assert(string != NULL); result = mk_element(p_data, pmh_EXTRA_TEXT, 0,0); - result->text = strdup(string); + result->text = strdup_or_null(string); return result; } diff --git a/Dependency/peg-markdown-highlight/pmh_styleparser.c b/Dependency/peg-markdown-highlight/pmh_styleparser.c index 97564f52..3ad4737a 100644 --- a/Dependency/peg-markdown-highlight/pmh_styleparser.c +++ b/Dependency/peg-markdown-highlight/pmh_styleparser.c @@ -469,13 +469,16 @@ static void interpret_and_add_style(style_parser_data *p_data, pmh_element_type type = pmh_element_type_from_name(style_rule_name); if (type == pmh_NO_TYPE) { - if (EQUALS(style_rule_name, "editor")) - isEditorType = true, type = pmh_NO_TYPE; - else if (EQUALS(style_rule_name, "editor-current-line")) - isCurrentLineType = true, type = pmh_NO_TYPE; - else if (EQUALS(style_rule_name, "editor-selection")) - isSelectionType = true, type = pmh_NO_TYPE; - else { + if (EQUALS(style_rule_name, "editor")) { + isEditorType = true; + type = pmh_NO_TYPE; + } else if (EQUALS(style_rule_name, "editor-current-line")) { + isCurrentLineType = true; + type = pmh_NO_TYPE; + } else if (EQUALS(style_rule_name, "editor-selection")) { + isSelectionType = true; + type = pmh_NO_TYPE; + } else { report_error(p_data, style_rule_line_number, "Style rule '%s' is not a language element type name or " "one of the following: 'editor', 'editor-current-line', " diff --git a/Dependency/prism b/Dependency/prism index 46b75132..bd479f1d 160000 --- a/Dependency/prism +++ b/Dependency/prism @@ -1 +1 @@ -Subproject commit 46b75132625e7b33dfb02359e92d27fbc55560dd +Subproject commit bd479f1d5ff0855b4c50168c1a82c91b2db191f2 diff --git a/Dependency/version/Makefile b/Dependency/version/Makefile index 8c8cbd3c..d4c4ebc3 100644 --- a/Dependency/version/Makefile +++ b/Dependency/version/Makefile @@ -3,9 +3,11 @@ ALL: version.h version.h: bash ../../Tools/generate_version_header.sh -.PHONY: ALL clean distclean +.PHONY: install clean distclean + +install: ALL clean: - rm version.h + -rm version.h 2>/dev/null distclean: clean diff --git a/Dependency/version/version.xcodeproj/project.pbxproj b/Dependency/version/version.xcodeproj/project.pbxproj index b901615c..fb731a6a 100644 --- a/Dependency/version/version.xcodeproj/project.pbxproj +++ b/Dependency/version/version.xcodeproj/project.pbxproj @@ -40,7 +40,7 @@ 1FCD71091A20BA3A00C028B5 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0610; + LastUpgradeCheck = 0920; ORGANIZATIONNAME = uranusjr; TargetAttributes = { 1FCD710D1A20BA3A00C028B5 = { @@ -50,7 +50,7 @@ }; buildConfigurationList = 1FCD710C1A20BA3A00C028B5 /* Build configuration list for PBXProject "version" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -68,6 +68,30 @@ 1FCD710E1A20BA3A00C028B5 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; ONLY_ACTIVE_ARCH = YES; }; name = Debug; @@ -75,6 +99,29 @@ 1FCD710F1A20BA3A00C028B5 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; }; name = Release; }; @@ -118,6 +165,7 @@ 1FCD71121A20BA3A00C028B5 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/Gemfile b/Gemfile new file mode 100644 index 00000000..a1ed95a4 --- /dev/null +++ b/Gemfile @@ -0,0 +1,4 @@ +source 'https://rubygems.org/' + +gem 'cocoapods', '~> 1.10' +gem 'travis', '~> 1.10' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 00000000..d6b486d3 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,128 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.3) + activesupport (5.2.4.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 0.7, < 2) + minitest (~> 5.1) + tzinfo (~> 1.1) + addressable (2.7.0) + public_suffix (>= 2.0.2, < 5.0) + algoliasearch (1.27.5) + httpclient (~> 2.8, >= 2.8.3) + json (>= 1.5.1) + atomos (0.1.3) + claide (1.0.3) + cocoapods (1.10.1) + addressable (~> 2.6) + claide (>= 1.0.2, < 2.0) + cocoapods-core (= 1.10.1) + cocoapods-deintegrate (>= 1.0.3, < 2.0) + cocoapods-downloader (>= 1.4.0, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.4.0, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (>= 2.3.0, < 3.0) + gh_inspector (~> 1.0) + molinillo (~> 0.6.6) + nap (~> 1.0) + ruby-macho (~> 1.4) + xcodeproj (>= 1.19.0, < 2.0) + cocoapods-core (1.10.1) + activesupport (> 5.0, < 6) + addressable (~> 2.6) + algoliasearch (~> 1.0) + concurrent-ruby (~> 1.1) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + netrc (~> 0.11) + public_suffix + typhoeus (~> 1.0) + cocoapods-deintegrate (1.0.4) + cocoapods-downloader (1.4.0) + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.0) + cocoapods-trunk (1.5.0) + nap (>= 0.8, < 2.0) + netrc (~> 0.11) + cocoapods-try (1.2.0) + colored2 (3.1.2) + concurrent-ruby (1.1.7) + escape (0.0.4) + ethon (0.12.0) + ffi (>= 1.3.0) + faraday (1.1.0) + multipart-post (>= 1.2, < 3) + ruby2_keywords + faraday_middleware (1.0.0) + faraday (~> 1.0) + ffi (1.14.2) + fourflusher (2.3.1) + fuzzy_match (2.0.4) + gh (0.18.0) + activesupport (~> 5.0) + addressable (~> 2.4) + faraday (~> 1.0) + faraday_middleware (~> 1.0) + multi_json (~> 1.0) + net-http-persistent (~> 2.9) + net-http-pipeline + gh_inspector (1.1.3) + highline (2.0.3) + httpclient (2.8.3) + i18n (1.8.7) + concurrent-ruby (~> 1.0) + json (2.5.1) + json_pure (2.3.1) + launchy (2.4.3) + addressable (~> 2.3) + minitest (5.14.3) + molinillo (0.6.6) + multi_json (1.15.0) + multipart-post (2.1.1) + nanaimo (0.3.0) + nap (1.1.0) + net-http-persistent (2.9.4) + net-http-pipeline (1.0.1) + netrc (0.11.0) + public_suffix (4.0.6) + pusher-client (0.6.2) + json + websocket (~> 1.0) + ruby-macho (1.4.0) + ruby2_keywords (0.0.2) + thread_safe (0.3.6) + travis (1.10.0) + faraday (~> 1.0) + faraday_middleware (~> 1.0) + gh (~> 0.13) + highline (~> 2.0) + json_pure (~> 2.3) + launchy (~> 2.1, < 2.5.0) + pusher-client (~> 0.4) + typhoeus (1.4.0) + ethon (>= 0.9.0) + tzinfo (1.2.9) + thread_safe (~> 0.1) + websocket (1.2.8) + xcodeproj (1.19.0) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.3.0) + +PLATFORMS + ruby + +DEPENDENCIES + cocoapods (~> 1.10) + travis (~> 1.10) + +BUNDLED WITH + 1.17.3 diff --git a/LICENSE/graphviz.txt b/LICENSE/graphviz.txt new file mode 100644 index 00000000..b0476ee9 --- /dev/null +++ b/LICENSE/graphviz.txt @@ -0,0 +1,86 @@ +Eclipse Public License - v 1.0 +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and + +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. + +"Program" means the Contributions distributed in accordance with this Agreement. + +"Recipient" means anyone who receives the Program under this Agreement, including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. + +c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the Program. + +Contributors may not remove or alter any copyright notices contained within the Program. + +Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. + +Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. diff --git a/LICENSE/mermaid.txt b/LICENSE/mermaid.txt new file mode 100644 index 00000000..d08da61b --- /dev/null +++ b/LICENSE/mermaid.txt @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 - 2017 Knut Sveidqvist + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/MacDown.xcodeproj/project.pbxproj b/MacDown.xcodeproj/project.pbxproj index 8cc1779b..81f315a6 100644 --- a/MacDown.xcodeproj/project.pbxproj +++ b/MacDown.xcodeproj/project.pbxproj @@ -29,21 +29,32 @@ 1F0F3BFC195F75F200FC0B3B /* MathJax in Resources */ = {isa = PBXBuildFile; fileRef = 1F0F3BFB195F75F200FC0B3B /* MathJax */; }; 1F23A92119928E650052DB78 /* MPMathJaxListener.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F23A92019928E650052DB78 /* MPMathJaxListener.m */; }; 1F25E1C31A50F4F10029371D /* MPColorTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F25E1C21A50F4F10029371D /* MPColorTests.m */; }; + 1F2649B01A7406DB00EF6AF3 /* NSDocumentController+Document.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F2649AF1A7406DB00EF6AF3 /* NSDocumentController+Document.m */; }; 1F27896B1973BEB100EE696A /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1F2789691973BEB100EE696A /* Localizable.strings */; }; - 1F2A17281A1BB3E30055A107 /* NSUserDefaults+Suite.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F2A17271A1BB3E30055A107 /* NSUserDefaults+Suite.m */; }; + 1F3386E61A6B999600FC88C4 /* DOMNode+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F3386E51A6B999600FC88C4 /* DOMNode+Text.m */; }; 1F33F2A11A3B4B660001C849 /* MPDocumentSplitView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F33F2A01A3B4B660001C849 /* MPDocumentSplitView.m */; }; 1F33F2A41A3B56D20001C849 /* NSColor+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F33F2A31A3B56D20001C849 /* NSColor+HTML.m */; }; + 1F3619E61F36DA0F00EDA15A /* MPTerminalPreferencesViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1F3619E81F36DA0F00EDA15A /* MPTerminalPreferencesViewController.xib */; }; 1F396E6619B0EA17000D3EFC /* MPEditorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F396E6519B0EA17000D3EFC /* MPEditorView.m */; }; 1F3A47521953E84700293259 /* help.md in Resources */ = {isa = PBXBuildFile; fileRef = 1F3A47511953E84700293259 /* help.md */; }; + 1F3FC87C1C854E1C000965E1 /* NSPasteboard+Types.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F3FC87B1C854E1C000965E1 /* NSPasteboard+Types.m */; }; + 1F3FC8AA1C85AE9F000965E1 /* MacDown.sdef in Resources */ = {isa = PBXBuildFile; fileRef = 1F3FC8A91C85AE9F000965E1 /* MacDown.sdef */; }; + 1F41FF7B1C8EEE9200FD9886 /* Templates in Resources */ = {isa = PBXBuildFile; fileRef = 1F41FF7A1C8EEE9200FD9886 /* Templates */; }; 1F4C8E9A194AE0B9004BF82E /* MarkdownDocument.icns in Resources */ = {isa = PBXBuildFile; fileRef = 1F4C8E99194AE0B9004BF82E /* MarkdownDocument.icns */; }; 1F51C9A5194565050015A96F /* MPPreferencesTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FCDCA311944F96E00B1F966 /* MPPreferencesTests.m */; }; + 1F59491B1AB57C78007394CB /* syntax_highlighting.json in Resources */ = {isa = PBXBuildFile; fileRef = 1F59491A1AB57C78007394CB /* syntax_highlighting.json */; }; + 1F59491E1AB57D87007394CB /* NSJSONSerialization+File.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F59491D1AB57D87007394CB /* NSJSONSerialization+File.m */; }; + 1F5A37101C868EC0006E63E7 /* MPPlugIn.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A370F1C868EC0006E63E7 /* MPPlugIn.m */; }; + 1F5A37141C869C81006E63E7 /* MPPlugInController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A37131C869C81006E63E7 /* MPPlugInController.m */; }; 1F64CCC9195F5AB900CE619A /* MPAsset.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F64CCC8195F5AB900CE619A /* MPAsset.m */; }; + 1F847BC61DCC9DB600A47385 /* NSUserDefaults+Suite.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F847BC51DCC9DB600A47385 /* NSUserDefaults+Suite.m */; }; 1F8858BC1A2D8D82008DC543 /* MPArgumentProcessor.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8858BB1A2D8D82008DC543 /* MPArgumentProcessor.m */; }; 1F8A82D919533E9300B6BF69 /* Prism in Resources */ = {isa = PBXBuildFile; fileRef = 1F8A82D819533E9300B6BF69 /* Prism */; }; - 1F8A835D1953454F00B6BF69 /* HGMarkdownHighlighter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A83581953454F00B6BF69 /* HGMarkdownHighlighter.m */; settings = {COMPILER_FLAGS = "-Xanalyzer -analyzer-disable-checker"; }; }; + 1F8A835D1953454F00B6BF69 /* HGMarkdownHighlighter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A83581953454F00B6BF69 /* HGMarkdownHighlighter.m */; }; 1F8A835E1953454F00B6BF69 /* HGMarkdownHighlightingStyle.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A835A1953454F00B6BF69 /* HGMarkdownHighlightingStyle.m */; }; - 1F8A83621953461800B6BF69 /* pmh_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A83611953461800B6BF69 /* pmh_parser.c */; settings = {COMPILER_FLAGS = "-Wno-conversion -Xanalyzer -analyzer-disable-checker"; }; }; + 1F8A83621953461800B6BF69 /* pmh_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A83611953461800B6BF69 /* pmh_parser.c */; settings = {COMPILER_FLAGS = "-Wno-conversion"; }; }; 1F8A8364195346B200B6BF69 /* pmh_styleparser.c in Sources */ = {isa = PBXBuildFile; fileRef = 1F8A8363195346B200B6BF69 /* pmh_styleparser.c */; settings = {COMPILER_FLAGS = "-Wno-conversion"; }; }; + 1F96BD801E584A03005E0456 /* MPHomebrewSubprocessController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F96BD7F1E584A03005E0456 /* MPHomebrewSubprocessController.m */; }; 1F9A14EC194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9A14E9194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.m */; }; 1F9A14ED194EEE9900D1C6A9 /* MPMainController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9A14EB194EEE9900D1C6A9 /* MPMainController.m */; }; 1F9A14EF194EEEDD00D1C6A9 /* Styles in Resources */ = {isa = PBXBuildFile; fileRef = 1F9A14EE194EEEDD00D1C6A9 /* Styles */; }; @@ -51,7 +62,7 @@ 1FA6CDB91952D2CD008D5CA0 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 1FA6CDB81952D2CD008D5CA0 /* dsa_pub.pem */; }; 1FA6DE251941CC9E000409FB /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FA6DE241941CC9E000409FB /* Cocoa.framework */; }; 1FA6DE481941CC9E000409FB /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FA6DE241941CC9E000409FB /* Cocoa.framework */; }; - 1FBBD4BE194C952300BB3C88 /* MPExportPanelAccessoryViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1FBBD4BC194C952300BB3C88 /* MPExportPanelAccessoryViewController.xib */; }; + 1FB3C0241E5061A2002AEB6A /* MPExportPanelAccessoryViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1FB3C0221E5061A2002AEB6A /* MPExportPanelAccessoryViewController.xib */; }; 1FBBD4CB194CA36500BB3C88 /* hoedown_html_patch.c in Sources */ = {isa = PBXBuildFile; fileRef = 1FBBD4CA194CA36500BB3C88 /* hoedown_html_patch.c */; }; 1FBDFE9C196170FE00BEEA70 /* Extensions in Resources */ = {isa = PBXBuildFile; fileRef = 1FBDFE9B196170FE00BEEA70 /* Extensions */; }; 1FBDFEA11962A25A00BEEA70 /* MPGeneralPreferencesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FBDFE9F1962A25A00BEEA70 /* MPGeneralPreferencesViewController.m */; }; @@ -60,6 +71,7 @@ 1FC29F5C1944FC2600D616C7 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FC29F5B1944FC2600D616C7 /* XCTest.framework */; }; 1FC29F5E1944FC4F00D616C7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1FCDCA321944F96E00B1F966 /* InfoPlist.strings */; }; 1FCE066419633D6C00DC83B4 /* Data in Resources */ = {isa = PBXBuildFile; fileRef = 1FCE066319633D6B00DC83B4 /* Data */; }; + 1FEAFEA21DCE762C008C4E8C /* NSUserDefaults+Suite.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F847BC51DCC9DB600A47385 /* NSUserDefaults+Suite.m */; }; 1FF1420219A8987500CF8A6A /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FF1420119A8987500CF8A6A /* JavaScriptCore.framework */; }; 1FF1420419A8A24800CF8A6A /* MPUtilityTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FF1420319A8A24800CF8A6A /* MPUtilityTests.m */; }; 1FF207631941CF22005B5654 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FF207621941CF22005B5654 /* WebKit.framework */; }; @@ -71,11 +83,14 @@ 1FFEB3271972DAB400B2254F /* MPHTMLTabularizeTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FFEB3261972DAB400B2254F /* MPHTMLTabularizeTests.m */; }; 1FFEB32B19737D6E00B2254F /* YAMLSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FFEB32A19737D6E00B2254F /* YAMLSerialization.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc -Wno-unused-variable"; }; }; 1FFF301D1948A5320009AF24 /* MPStringLookupTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1FFF301C1948A5320009AF24 /* MPStringLookupTests.m */; }; - 5318159056384894AA42DB4F /* libPods-MacDownTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AEAF42BBDCEC4012B5092BB3 /* libPods-MacDownTests.a */; }; - 5807564D5F35BA9758A64530 /* libPods-macdown-cmd.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4AFCF7AEBCE081BD528ABC3D /* libPods-macdown-cmd.a */; }; + 3028039E1FD84EAC0055B0DA /* contribute.md in Resources */ = {isa = PBXBuildFile; fileRef = 3028039D1FD84EAB0055B0DA /* contribute.md */; }; + 770BB49E962A302D0715A6A5 /* libPods-MacDown.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 42F926DD38559C7CEDB6E42F /* libPods-MacDown.a */; }; + 852D523C1E260A6400BA7162 /* MPTerminalPreferencesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 852D523A1E260A6400BA7162 /* MPTerminalPreferencesViewController.m */; }; + 85E24E5C1E5019C00056E696 /* MPToolbarController.m in Sources */ = {isa = PBXBuildFile; fileRef = 85E24E5B1E5019C00056E696 /* MPToolbarController.m */; }; 905EF1A9196164CA00FC3CE9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 905EF1A8196164CA00FC3CE9 /* Foundation.framework */; }; 905EF1B7196164F300FC3CE9 /* macdown in Copy Command Line Utility */ = {isa = PBXBuildFile; fileRef = 905EF1A7196164CA00FC3CE9 /* macdown */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; - B49728377A904875B2963C38 /* libPods-MacDown.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C5C1FBBB3ED456285901D31 /* libPods-MacDown.a */; }; + B5C5C1666A506FEA86435D25 /* libPods-macdown-cmd.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 263367245B2D78A42C2F19D7 /* libPods-macdown-cmd.a */; }; + EBFE3157737058F5A63699C8 /* libPods-MacDownTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C949FDE45493AE77DAD9BF4 /* libPods-MacDownTests.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -110,13 +125,14 @@ /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ - 905EF1A5196164CA00FC3CE9 /* CopyFiles */ = { + 905EF1A5196164CA00FC3CE9 /* Copy Files */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = /usr/share/man/man1/; dstSubfolderSpec = 0; files = ( ); + name = "Copy Files"; runOnlyForDeploymentPostprocessing = 1; }; 905EF1B6196164E300FC3CE9 /* Copy Command Line Utility */ = { @@ -133,8 +149,46 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 0D0EC0DE9FEA22F962083921 /* Pods-MacDownTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDownTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-MacDownTests/Pods-MacDownTests.release.xcconfig"; sourceTree = ""; }; + 1A198D1BA59D710201DD3BC8 /* Pods-MacDown.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDown.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MacDown/Pods-MacDown.debug.xcconfig"; sourceTree = ""; }; 1F002A21195B3DAE008B8D93 /* MPRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPRenderer.h; sourceTree = ""; }; 1F002A22195B3DAE008B8D93 /* MPRenderer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPRenderer.m; sourceTree = ""; }; + 1F05E8AB1F36E53B00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MainMenu.strings; sourceTree = ""; }; + 1F05E8AC1F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F05E8AD1F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8AE1F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8AF1F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B01F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B11F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B21F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/MPDocument.strings; sourceTree = ""; }; + 1F05E8B31F36E53C00E4D06C /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = fr; path = Localization/fr.lproj/Credits.rtf; sourceTree = ""; }; + 1F05E8B41F36E56200E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MainMenu.strings; sourceTree = ""; }; + 1F05E8B51F36E56200E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F05E8B61F36E56200E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B71F36E56200E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B81F36E56300E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8B91F36E56300E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8BA1F36E56300E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = is.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F05E8BB1F36E56300E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/MPDocument.strings; sourceTree = ""; }; + 1F05E8BC1F36E56300E4D06C /* is */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = is; path = Localization/is.lproj/Credits.rtf; sourceTree = ""; }; + 1F05E8BD1F36E58700E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F05E8BE1F36E58700E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F05E8BF1F36E58700E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C01F36E58700E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C11F36E58800E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C21F36E58800E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C31F36E58800E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "ko-KR.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C41F36E58800E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/MPDocument.strings"; sourceTree = ""; }; + 1F05E8C51F36E58800E4D06C /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "ko-KR"; path = "Localization/ko-KR.lproj/Credits.rtf"; sourceTree = ""; }; + 1F05E8C61F36E5A900E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F05E8C71F36E5A900E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F05E8C81F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8C91F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8CA1F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8CB1F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8CC1F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F05E8CD1F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/MPDocument.strings"; sourceTree = ""; }; + 1F05E8CE1F36E5AA00E4D06C /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "pt-BR"; path = "Localization/pt-BR.lproj/Credits.rtf"; sourceTree = ""; }; 1F0D9D5E194AC7CF008E1856 /* NSString+Lookup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Lookup.h"; sourceTree = ""; }; 1F0D9D5F194AC7CF008E1856 /* NSString+Lookup.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Lookup.m"; sourceTree = ""; }; 1F0D9D60194AC7CF008E1856 /* NSTextView+Autocomplete.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTextView+Autocomplete.h"; sourceTree = ""; }; @@ -165,27 +219,91 @@ 1F0D9DAE194AC905008E1856 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Code/main.m; sourceTree = ""; }; 1F0D9DB5194ACA33008E1856 /* MacDown-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "MacDown-Prefix.pch"; path = "Code/MacDown-Prefix.pch"; sourceTree = ""; }; 1F0F3BFB195F75F200FC0B3B /* MathJax */ = {isa = PBXFileReference; lastKnownFileType = folder; name = MathJax; path = Resources/MathJax; sourceTree = ""; }; + 1F20EA242099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/Localizable.strings"; sourceTree = ""; }; + 1F20EA252099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F20EA262099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F20EA272099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F20EA282099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "nb-NO.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F20EA292099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F20EA2A2099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F20EA2B2099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F20EA2C2099A18A00C81510 /* nb-NO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nb-NO"; path = "Localization/nb-NO.lproj/MPDocument.strings"; sourceTree = ""; }; 1F23A91F19928E650052DB78 /* MPMathJaxListener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPMathJaxListener.h; sourceTree = ""; }; 1F23A92019928E650052DB78 /* MPMathJaxListener.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPMathJaxListener.m; sourceTree = ""; }; 1F25E1C21A50F4F10029371D /* MPColorTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPColorTests.m; sourceTree = ""; }; - 1F27896A1973BEB100EE696A /* Base */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = Base; path = Localization/Base.lproj/Localizable.strings; sourceTree = ""; }; - 1F2A17261A1BB3E30055A107 /* NSUserDefaults+Suite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSUserDefaults+Suite.h"; path = "macdown-cmd/NSUserDefaults+Suite.h"; sourceTree = SOURCE_ROOT; }; - 1F2A17271A1BB3E30055A107 /* NSUserDefaults+Suite.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSUserDefaults+Suite.m"; path = "macdown-cmd/NSUserDefaults+Suite.m"; sourceTree = SOURCE_ROOT; }; + 1F2649AE1A7406DB00EF6AF3 /* NSDocumentController+Document.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDocumentController+Document.h"; sourceTree = ""; }; + 1F2649AF1A7406DB00EF6AF3 /* NSDocumentController+Document.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDocumentController+Document.m"; sourceTree = ""; }; + 1F2ABCFC1F381089005FB620 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F2ABCFD1F38108C005FB620 /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F2ABCFE1F38108E005FB620 /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F2ABCFF1F381090005FB620 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F2ABD001F381094005FB620 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = Localization/fr.lproj/Localizable.strings; sourceTree = ""; }; + 1F2ABD011F381096005FB620 /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = Localization/is.lproj/Localizable.strings; sourceTree = ""; }; + 1F2ABD021F381099005FB620 /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "Localization/ko-KR.lproj/Localizable.strings"; sourceTree = ""; }; + 1F2ABD031F38109A005FB620 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "Localization/pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; + 1F2ABD041F38113B005FB620 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F2ABD051F38113C005FB620 /* is */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = is; path = is.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F2ABD061F38113E005FB620 /* ko-KR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ko-KR"; path = "ko-KR.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F2ABD071F381140005FB620 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F3386E41A6B999600FC88C4 /* DOMNode+Text.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DOMNode+Text.h"; sourceTree = ""; }; + 1F3386E51A6B999600FC88C4 /* DOMNode+Text.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "DOMNode+Text.m"; sourceTree = ""; }; 1F33F29F1A3B4B660001C849 /* MPDocumentSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDocumentSplitView.h; sourceTree = ""; }; 1F33F2A01A3B4B660001C849 /* MPDocumentSplitView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPDocumentSplitView.m; sourceTree = ""; }; 1F33F2A21A3B56D20001C849 /* NSColor+HTML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSColor+HTML.h"; sourceTree = ""; }; 1F33F2A31A3B56D20001C849 /* NSColor+HTML.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSColor+HTML.m"; sourceTree = ""; }; + 1F3619E71F36DA0F00EDA15A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MPTerminalPreferencesViewController.xib; sourceTree = ""; }; + 1F3619EA1F36DA1300EDA15A /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F3619EC1F36DA1400EDA15A /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F3619EE1F36DA1600EDA15A /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F3619F01F36DA1700EDA15A /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F3619F21F36DA1800EDA15A /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F3619F41F36DA1A00EDA15A /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "it-IT.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F3619F61F36DA1C00EDA15A /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F3619F81F36DA1D00EDA15A /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1F3619FA1F36DA1F00EDA15A /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; 1F396E6419B0EA17000D3EFC /* MPEditorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPEditorView.h; sourceTree = ""; }; 1F396E6519B0EA17000D3EFC /* MPEditorView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPEditorView.m; sourceTree = ""; }; 1F3A47511953E84700293259 /* help.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = help.md; path = Resources/help.md; sourceTree = ""; }; + 1F3FC87A1C854E1C000965E1 /* NSPasteboard+Types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPasteboard+Types.h"; sourceTree = ""; }; + 1F3FC87B1C854E1C000965E1 /* NSPasteboard+Types.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSPasteboard+Types.m"; sourceTree = ""; }; + 1F3FC8A91C85AE9F000965E1 /* MacDown.sdef */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = MacDown.sdef; path = Resources/MacDown.sdef; sourceTree = ""; }; + 1F41FF7A1C8EEE9200FD9886 /* Templates */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Templates; path = Resources/Templates; sourceTree = ""; }; 1F4C8E99194AE0B9004BF82E /* MarkdownDocument.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = MarkdownDocument.icns; path = Resources/MarkdownDocument.icns; sourceTree = ""; }; 1F51C9A1194564670015A96F /* libPods-MacDown-PAPreferences.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-MacDown-PAPreferences.a"; path = "../../../../Library/Developer/Xcode/DerivedData/MacDown-ggdtxvuybojeqbhjydkhilziizrv/Build/Products/Debug/libPods-MacDown-PAPreferences.a"; sourceTree = ""; }; + 1F56013E2099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/Localizable.strings"; sourceTree = ""; }; + 1F56013F2099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F5601402099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F5601412099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "de-DE.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F5601422099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F5601432099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F5601442099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F5601452099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F5601462099A1E60035F207 /* de-DE */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "de-DE"; path = "Localization/de-DE.lproj/MPDocument.strings"; sourceTree = ""; }; + 1F59491A1AB57C78007394CB /* syntax_highlighting.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = syntax_highlighting.json; path = Resources/syntax_highlighting.json; sourceTree = ""; }; + 1F59491C1AB57D87007394CB /* NSJSONSerialization+File.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSJSONSerialization+File.h"; sourceTree = ""; }; + 1F59491D1AB57D87007394CB /* NSJSONSerialization+File.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSJSONSerialization+File.m"; sourceTree = ""; }; + 1F5A370E1C868EC0006E63E7 /* MPPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPlugIn.h; sourceTree = ""; }; + 1F5A370F1C868EC0006E63E7 /* MPPlugIn.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPPlugIn.m; sourceTree = ""; }; + 1F5A37121C869C81006E63E7 /* MPPlugInController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPPlugInController.h; path = Code/Application/MPPlugInController.h; sourceTree = ""; }; + 1F5A37131C869C81006E63E7 /* MPPlugInController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPPlugInController.m; path = Code/Application/MPPlugInController.m; sourceTree = ""; }; 1F64CCC7195F5AB900CE619A /* MPAsset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAsset.h; sourceTree = ""; }; 1F64CCC8195F5AB900CE619A /* MPAsset.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAsset.m; sourceTree = ""; }; + 1F6B58F21F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F6B58F31F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F6B58F41F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F6B58F51F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F6B58F61F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F6B58F71F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F6B58F81F5D2EA2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "nl-NL.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F6B58F91F5D2EA3006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/MPDocument.strings"; sourceTree = ""; }; + 1F6B58FA1F5D2ED2006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "nl-NL.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F6B58FB1F5D2EE5006559CB /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/Localizable.strings"; sourceTree = ""; }; 1F70CCD81978F03E00703429 /* MPAutosaving.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPAutosaving.h; sourceTree = ""; }; + 1F847BC31DCC9DA800A47385 /* MPGlobals.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPGlobals.h; sourceTree = ""; }; + 1F847BC41DCC9DB600A47385 /* NSUserDefaults+Suite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults+Suite.h"; sourceTree = ""; }; + 1F847BC51DCC9DB600A47385 /* NSUserDefaults+Suite.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSUserDefaults+Suite.m"; sourceTree = ""; }; 1F8858BA1A2D8D82008DC543 /* MPArgumentProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPArgumentProcessor.h; path = "macdown-cmd/MPArgumentProcessor.h"; sourceTree = SOURCE_ROOT; }; 1F8858BB1A2D8D82008DC543 /* MPArgumentProcessor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPArgumentProcessor.m; path = "macdown-cmd/MPArgumentProcessor.m"; sourceTree = SOURCE_ROOT; }; - 1F8858BD1A2D8ED4008DC543 /* MPGlobals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPGlobals.h; path = "macdown-cmd/MPGlobals.h"; sourceTree = SOURCE_ROOT; }; 1F8A82D819533E9300B6BF69 /* Prism */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Prism; path = Resources/Prism; sourceTree = ""; }; 1F8A83571953454F00B6BF69 /* HGMarkdownHighlighter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HGMarkdownHighlighter.h; path = "Dependency/peg-markdown-highlight/HGMarkdownHighlighter.h"; sourceTree = SOURCE_ROOT; }; 1F8A83581953454F00B6BF69 /* HGMarkdownHighlighter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HGMarkdownHighlighter.m; path = "Dependency/peg-markdown-highlight/HGMarkdownHighlighter.m"; sourceTree = SOURCE_ROOT; }; @@ -197,12 +315,89 @@ 1F8A8363195346B200B6BF69 /* pmh_styleparser.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = pmh_styleparser.c; path = "Dependency/peg-markdown-highlight/pmh_styleparser.c"; sourceTree = SOURCE_ROOT; }; 1F8A8365195346B600B6BF69 /* pmh_styleparser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = pmh_styleparser.h; path = "Dependency/peg-markdown-highlight/pmh_styleparser.h"; sourceTree = SOURCE_ROOT; }; 1F8A837E195348C500B6BF69 /* peg-markdown-highlight.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "peg-markdown-highlight.xcodeproj"; path = "Dependency/peg-markdown-highlight/peg-markdown-highlight.xcodeproj"; sourceTree = SOURCE_ROOT; }; + 1F90340D1EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MainMenu.strings; sourceTree = ""; }; + 1F90340E1EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F90340F1EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F9034101EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F9034111EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F9034121EC556A900D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F9034131EC556AA00D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/MPDocument.strings; sourceTree = ""; }; + 1F9034141EC556AA00D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = de; path = Localization/de.lproj/Credits.rtf; sourceTree = ""; }; + 1F9034151EC556AA00D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034161EC556AA00D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = Localization/de.lproj/Localizable.strings; sourceTree = ""; }; + 1F9034171EC556AA00D97F9C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034181EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MainMenu.strings; sourceTree = ""; }; + 1F9034191EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F90341A1EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F90341B1EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F90341C1EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F90341D1EC556C900D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F90341E1EC556CA00D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/MPDocument.strings; sourceTree = ""; }; + 1F90341F1EC556CA00D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = es; path = Localization/es.lproj/Credits.rtf; sourceTree = ""; }; + 1F9034201EC556CA00D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034211EC556CA00D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = Localization/es.lproj/Localizable.strings; sourceTree = ""; }; + 1F9034221EC556CA00D97F9C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034231EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F9034241EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F9034251EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F9034261EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F9034271EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F9034281EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F9034291EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/MPDocument.strings"; sourceTree = ""; }; + 1F90342A1EC556E400D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "it-IT"; path = "Localization/it-IT.lproj/Credits.rtf"; sourceTree = ""; }; + 1F90342B1EC556E500D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F90342C1EC556E500D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "Localization/it-IT.lproj/Localizable.strings"; sourceTree = ""; }; + 1F90342D1EC556E500D97F9C /* it-IT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "it-IT"; path = "it-IT.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1F90342E1EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MainMenu.strings; sourceTree = ""; }; + 1F90342F1EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F9034301EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F9034311EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F9034321EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F9034331EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F9034341EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/MPDocument.strings; sourceTree = ""; }; + 1F9034351EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = ja; path = Localization/ja.lproj/Credits.rtf; sourceTree = ""; }; + 1F9034361EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034371EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = Localization/ja.lproj/Localizable.strings; sourceTree = ""; }; + 1F9034381EC556EC00D97F9C /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034391EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MainMenu.strings; sourceTree = ""; }; + 1F90343A1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F90343B1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F90343C1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F90343D1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F90343E1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F90343F1EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/MPDocument.strings; sourceTree = ""; }; + 1F9034401EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = sk; path = Localization/sk.lproj/Credits.rtf; sourceTree = ""; }; + 1F9034411EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034421EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = Localization/sk.lproj/Localizable.strings; sourceTree = ""; }; + 1F9034431EC556F300D97F9C /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F9034441EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MainMenu.strings; sourceTree = ""; }; + 1F9034451EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1F9034461EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1F9034471EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1F9034481EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1F9034491EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1F90344A1EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/MPDocument.strings; sourceTree = ""; }; + 1F90344B1EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = ar; path = Localization/ar.lproj/Credits.rtf; sourceTree = ""; }; + 1F90344C1EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F90344D1EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = Localization/ar.lproj/Localizable.strings; sourceTree = ""; }; + 1F90344E1EC5576E00D97F9C /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/InfoPlist.strings; sourceTree = ""; }; + 1F96BD7E1E584A03005E0456 /* MPHomebrewSubprocessController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPHomebrewSubprocessController.h; sourceTree = ""; }; + 1F96BD7F1E584A03005E0456 /* MPHomebrewSubprocessController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPHomebrewSubprocessController.m; sourceTree = ""; }; 1F9A14E8194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPExportPanelAccessoryViewController.h; path = Code/Application/MPExportPanelAccessoryViewController.h; sourceTree = ""; }; 1F9A14E9194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPExportPanelAccessoryViewController.m; path = Code/Application/MPExportPanelAccessoryViewController.m; sourceTree = ""; }; 1F9A14EA194EEE9900D1C6A9 /* MPMainController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPMainController.h; path = Code/Application/MPMainController.h; sourceTree = ""; }; 1F9A14EB194EEE9900D1C6A9 /* MPMainController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPMainController.m; path = Code/Application/MPMainController.m; sourceTree = ""; }; 1F9A14EE194EEEDD00D1C6A9 /* Styles */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Styles; path = Resources/Styles; sourceTree = ""; }; 1F9A14F3194EF6A600D1C6A9 /* Themes */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Themes; path = Resources/Themes; sourceTree = ""; }; + 1F9F351C2099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/Localizable.strings"; sourceTree = ""; }; + 1F9F351D2099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1F9F351E2099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MainMenu.strings"; sourceTree = ""; }; + 1F9F351F2099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1F9F35202099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "sk-SK.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + 1F9F35212099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1F9F35222099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1F9F35232099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1F9F35242099A1FC00C4B4F1 /* sk-SK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sk-SK"; path = "Localization/sk-SK.lproj/MPDocument.strings"; sourceTree = ""; }; 1FA6CDB81952D2CD008D5CA0 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dsa_pub.pem; path = Resources/dsa_pub.pem; sourceTree = ""; }; 1FA6DE211941CC9E000409FB /* MacDown.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacDown.app; sourceTree = BUILT_PRODUCTS_DIR; }; 1FA6DE241941CC9E000409FB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; @@ -210,15 +405,67 @@ 1FA6DE281941CC9E000409FB /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; 1FA6DE291941CC9E000409FB /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 1FA6DE451941CC9E000409FB /* MacDownTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MacDownTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 1FBBD4BD194C952300BB3C88 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = MacDown/Localization/Base.lproj/MPExportPanelAccessoryViewController.xib; sourceTree = SOURCE_ROOT; }; + 1FA9196B1E4723A200850517 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = Localization/en.lproj/Localizable.strings; sourceTree = ""; }; + 1FB3C0231E5061A2002AEB6A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Localization/Base.lproj/MPExportPanelAccessoryViewController.xib; sourceTree = ""; }; + 1FB813A32099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/Localizable.strings; sourceTree = ""; }; + 1FB813A42099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1FB813A52099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MainMenu.strings; sourceTree = ""; }; + 1FB813A62099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = et.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1FB813A72099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1FB813A82099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1FB813A92099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1FB813AA2099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1FB813AB2099A228004EC5D7 /* et */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = et; path = Localization/et.lproj/MPDocument.strings; sourceTree = ""; }; 1FBBD4C9194CA35900BB3C88 /* hoedown_html_patch.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hoedown_html_patch.h; sourceTree = ""; }; 1FBBD4CA194CA36500BB3C88 /* hoedown_html_patch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hoedown_html_patch.c; sourceTree = ""; }; + 1FBD430D2099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/Localizable.strings; sourceTree = ""; }; + 1FBD430E2099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1FBD430F2099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MainMenu.strings; sourceTree = ""; }; + 1FBD43102099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + 1FBD43112099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1FBD43122099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1FBD43132099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1FBD43142099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1FBD43152099A1A200B348CD /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = Localization/tr.lproj/MPDocument.strings; sourceTree = ""; }; 1FBDFE9B196170FE00BEEA70 /* Extensions */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Extensions; path = Resources/Extensions; sourceTree = ""; }; 1FBDFE9E1962A25A00BEEA70 /* MPGeneralPreferencesViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPGeneralPreferencesViewController.h; sourceTree = ""; }; 1FBDFE9F1962A25A00BEEA70 /* MPGeneralPreferencesViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPGeneralPreferencesViewController.m; sourceTree = ""; }; 1FBDFEA41962A27300BEEA70 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = MacDown/Localization/Base.lproj/MPGeneralPreferencesViewController.xib; sourceTree = SOURCE_ROOT; }; 1FBE8E0E1A11DB1E003E1EF4 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = "macdown-cmd/main.m"; sourceTree = SOURCE_ROOT; }; 1FC29F5B1944FC2600D616C7 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + 1FCBDF0B1E536C8400C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MainMenu.strings; sourceTree = ""; }; + 1FCBDF0C1E536C8400C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + 1FCBDF0D1E536C8400C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + 1FCBDF0E1E536C8400C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + 1FCBDF0F1E536C8400C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + 1FCBDF101E536C8500C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + 1FCBDF111E536C8500C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/MPDocument.strings; sourceTree = ""; }; + 1FCBDF121E536C8500C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = sv; path = Localization/sv.lproj/Credits.rtf; sourceTree = ""; }; + 1FCBDF131E536C8500C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/InfoPlist.strings; sourceTree = ""; }; + 1FCBDF141E536C8900C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/InfoPlist.strings; sourceTree = ""; }; + 1FCBDF151E536C9F00C0F56B /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = Localization/sv.lproj/Localizable.strings; sourceTree = ""; }; + 1FCBDF161E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MainMenu.strings"; sourceTree = ""; }; + 1FCBDF171E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1FCBDF181E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF191E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF1A1E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF1B1E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF1C1E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/MPDocument.strings"; sourceTree = ""; }; + 1FCBDF1D1E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/Credits.rtf"; sourceTree = ""; }; + 1FCBDF1E1E536CAE00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1FCBDF1F1E536CAF00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "Localization/zh-Hant.lproj/Localizable.strings"; sourceTree = ""; }; + 1FCBDF201E536CAF00C0F56B /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1FCBDF211E536CB600C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MainMenu.strings"; sourceTree = ""; }; + 1FCBDF221E536CB600C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + 1FCBDF231E536CB600C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF241E536CB600C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF251E536CB600C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF261E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + 1FCBDF271E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/MPDocument.strings"; sourceTree = ""; }; + 1FCBDF281E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/Credits.rtf"; sourceTree = ""; }; + 1FCBDF291E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/InfoPlist.strings"; sourceTree = ""; }; + 1FCBDF2A1E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "Localization/zh-Hans.lproj/Localizable.strings"; sourceTree = ""; }; + 1FCBDF2B1E536CB700C0F56B /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/InfoPlist.strings"; sourceTree = ""; }; 1FCD71131A20BA3A00C028B5 /* version.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = version.xcodeproj; sourceTree = ""; }; 1FCD711A1A20BE2F00C028B5 /* version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = version.h; path = Dependency/version/version.h; sourceTree = SOURCE_ROOT; }; 1FCDCA301944F96E00B1F966 /* MacDownTests-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "MacDownTests-Info.plist"; sourceTree = ""; }; @@ -238,17 +485,46 @@ 1FFEB32919737D6E00B2254F /* YAMLSerialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = YAMLSerialization.h; sourceTree = ""; }; 1FFEB32A19737D6E00B2254F /* YAMLSerialization.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = YAMLSerialization.m; sourceTree = ""; }; 1FFF301C1948A5320009AF24 /* MPStringLookupTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPStringLookupTests.m; sourceTree = ""; }; - 481332E4A369446F177A8DF0 /* Pods-MacDown.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDown.release.xcconfig"; path = "Pods/Target Support Files/Pods-MacDown/Pods-MacDown.release.xcconfig"; sourceTree = ""; }; - 4AFCF7AEBCE081BD528ABC3D /* libPods-macdown-cmd.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-macdown-cmd.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 632F686FDE66C78EBA2ABB7B /* Pods-macdown-cmd.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-macdown-cmd.debug.xcconfig"; path = "Pods/Target Support Files/Pods-macdown-cmd/Pods-macdown-cmd.debug.xcconfig"; sourceTree = ""; }; - 7C5C1FBBB3ED456285901D31 /* libPods-MacDown.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MacDown.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 263367245B2D78A42C2F19D7 /* libPods-macdown-cmd.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-macdown-cmd.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3028039D1FD84EAB0055B0DA /* contribute.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = contribute.md; path = Resources/contribute.md; sourceTree = ""; }; + 39EFCAE04F60154F0C8C5469 /* Pods-MacDown.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDown.release.xcconfig"; path = "Pods/Target Support Files/Pods-MacDown/Pods-MacDown.release.xcconfig"; sourceTree = ""; }; + 3C949FDE45493AE77DAD9BF4 /* libPods-MacDownTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MacDownTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3D175F0F1974282400A5EFE8 /* WebView+WebViewPrivateHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WebView+WebViewPrivateHeaders.h"; sourceTree = ""; }; + 42F926DD38559C7CEDB6E42F /* libPods-MacDown.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MacDown.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4DBAA63927A60EB2150642B3 /* Pods-macdown-cmd.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-macdown-cmd.debug.xcconfig"; path = "Pods/Target Support Files/Pods-macdown-cmd/Pods-macdown-cmd.debug.xcconfig"; sourceTree = ""; }; + 7A8EA75FA95818275755F0B6 /* Pods-macdown-cmd.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-macdown-cmd.release.xcconfig"; path = "Pods/Target Support Files/Pods-macdown-cmd/Pods-macdown-cmd.release.xcconfig"; sourceTree = ""; }; + 852D52391E260A6400BA7162 /* MPTerminalPreferencesViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPTerminalPreferencesViewController.h; sourceTree = ""; }; + 852D523A1E260A6400BA7162 /* MPTerminalPreferencesViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPTerminalPreferencesViewController.m; sourceTree = ""; }; + 85E24E5A1E5019C00056E696 /* MPToolbarController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPToolbarController.h; path = Code/Application/MPToolbarController.h; sourceTree = ""; }; + 85E24E5B1E5019C00056E696 /* MPToolbarController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPToolbarController.m; path = Code/Application/MPToolbarController.m; sourceTree = ""; }; + 8CDC5EA0050D2F722FB1AADD /* Pods-MacDownTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDownTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MacDownTests/Pods-MacDownTests.debug.xcconfig"; sourceTree = ""; }; 905EF1A7196164CA00FC3CE9 /* macdown */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = macdown; sourceTree = BUILT_PRODUCTS_DIR; }; 905EF1A8196164CA00FC3CE9 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; - A9105A2DE3384B0DB400BAD1 /* Pods-MacDown.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDown.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MacDown/Pods-MacDown.debug.xcconfig"; sourceTree = ""; }; - AEAF42BBDCEC4012B5092BB3 /* libPods-MacDownTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MacDownTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - BDCDF2E157FE72C2ED7438DD /* Pods-MacDownTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDownTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-MacDownTests/Pods-MacDownTests.release.xcconfig"; sourceTree = ""; }; - E352E0A2562DCE60302D805E /* Pods-MacDownTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MacDownTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MacDownTests/Pods-MacDownTests.debug.xcconfig"; sourceTree = ""; }; - E87590C145FF88E3F084D54C /* Pods-macdown-cmd.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-macdown-cmd.release.xcconfig"; path = "Pods/Target Support Files/Pods-macdown-cmd/Pods-macdown-cmd.release.xcconfig"; sourceTree = ""; }; + E70ECDD4241C933C00537A46 /* ru-RU */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-RU"; path = "Localization/ru-RU.lproj/Localizable.strings"; sourceTree = ""; }; + E70ECDD5241C933C00537A46 /* ru-RU */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-RU"; path = "Localization/ru-RU.lproj/MainMenu.strings"; sourceTree = ""; }; + E70ECDD6241C933C00537A46 /* ru-RU */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-RU"; path = "Localization/ru-RU.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + E70ECDD7241C933C00537A46 /* ru-RU */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-RU"; path = "Localization/ru-RU.lproj/MPDocument.strings"; sourceTree = ""; }; + E744518A241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPExportPanelAccessoryViewController.strings; sourceTree = ""; }; + E744518B241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/Localizable.strings; sourceTree = ""; }; + E744518C241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MainMenu.strings; sourceTree = ""; }; + E744518D241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/MPTerminalPreferencesViewController.strings; sourceTree = ""; }; + E744518E241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPHtmlPreferencesViewController.strings; sourceTree = ""; }; + E744518F241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPEditorPreferencesViewController.strings; sourceTree = ""; }; + E7445190241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPGeneralPreferencesViewController.strings; sourceTree = ""; }; + E7445191241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPDocument.strings; sourceTree = ""; }; + E7445192241C934C00D9ABD9 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = Localization/cs.lproj/MPMarkdownPreferencesViewController.strings; sourceTree = ""; }; + E7543774241C935F00F181F1 /* nl-NL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "nl-NL"; path = "Localization/nl-NL.lproj/InfoPlist.strings"; sourceTree = ""; }; + E77E5D6A241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/Localizable.strings"; sourceTree = ""; }; + E77E5D6B241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPExportPanelAccessoryViewController.strings"; sourceTree = ""; }; + E77E5D6C241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MainMenu.strings"; sourceTree = ""; }; + E77E5D6D241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPHtmlPreferencesViewController.strings"; sourceTree = ""; }; + E77E5D6E241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "da-DK.lproj/MPTerminalPreferencesViewController.strings"; sourceTree = ""; }; + E77E5D6F241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPEditorPreferencesViewController.strings"; sourceTree = ""; }; + E77E5D70241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPGeneralPreferencesViewController.strings"; sourceTree = ""; }; + E77E5D71241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPMarkdownPreferencesViewController.strings"; sourceTree = ""; }; + E77E5D72241C935100699B5A /* da-DK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "da-DK"; path = "Localization/da-DK.lproj/MPDocument.strings"; sourceTree = ""; }; + E7D458CB241C933800411A36 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = Localization/fi.lproj/MainMenu.strings; sourceTree = ""; }; + E7DD09F1241C9368008FBC25 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = Localization/da.lproj/MainMenu.strings; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -259,7 +535,7 @@ 1FF1420219A8987500CF8A6A /* JavaScriptCore.framework in Frameworks */, 1FF207631941CF22005B5654 /* WebKit.framework in Frameworks */, 1FA6DE251941CC9E000409FB /* Cocoa.framework in Frameworks */, - B49728377A904875B2963C38 /* libPods-MacDown.a in Frameworks */, + 770BB49E962A302D0715A6A5 /* libPods-MacDown.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -269,7 +545,7 @@ files = ( 1FA6DE481941CC9E000409FB /* Cocoa.framework in Frameworks */, 1FC29F5C1944FC2600D616C7 /* XCTest.framework in Frameworks */, - 5318159056384894AA42DB4F /* libPods-MacDownTests.a in Frameworks */, + EBFE3157737058F5A63699C8 /* libPods-MacDownTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -278,7 +554,7 @@ buildActionMask = 2147483647; files = ( 905EF1A9196164CA00FC3CE9 /* Foundation.framework in Frameworks */, - 5807564D5F35BA9758A64530 /* libPods-macdown-cmd.a in Frameworks */, + B5C5C1666A506FEA86435D25 /* libPods-macdown-cmd.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -288,14 +564,25 @@ 1F0D9D5D194AC7CF008E1856 /* Extension */ = { isa = PBXGroup; children = ( + 1F3386E41A6B999600FC88C4 /* DOMNode+Text.h */, + 1F3386E51A6B999600FC88C4 /* DOMNode+Text.m */, 1F33F2A21A3B56D20001C849 /* NSColor+HTML.h */, 1F33F2A31A3B56D20001C849 /* NSColor+HTML.m */, + 1F2649AE1A7406DB00EF6AF3 /* NSDocumentController+Document.h */, + 1F2649AF1A7406DB00EF6AF3 /* NSDocumentController+Document.m */, + 1F59491C1AB57D87007394CB /* NSJSONSerialization+File.h */, + 1F59491D1AB57D87007394CB /* NSJSONSerialization+File.m */, 1FFEB3231972D88900B2254F /* NSObject+HTMLTabularize.h */, 1FFEB3241972D88900B2254F /* NSObject+HTMLTabularize.m */, + 1F3FC87A1C854E1C000965E1 /* NSPasteboard+Types.h */, + 1F3FC87B1C854E1C000965E1 /* NSPasteboard+Types.m */, 1F0D9D5E194AC7CF008E1856 /* NSString+Lookup.h */, 1F0D9D5F194AC7CF008E1856 /* NSString+Lookup.m */, 1F0D9D60194AC7CF008E1856 /* NSTextView+Autocomplete.h */, 1F0D9D61194AC7CF008E1856 /* NSTextView+Autocomplete.m */, + 1F847BC41DCC9DB600A47385 /* NSUserDefaults+Suite.h */, + 1F847BC51DCC9DB600A47385 /* NSUserDefaults+Suite.m */, + 3D175F0F1974282400A5EFE8 /* WebView+WebViewPrivateHeaders.h */, 1FBBD4C9194CA35900BB3C88 /* hoedown_html_patch.h */, 1FBBD4CA194CA36500BB3C88 /* hoedown_html_patch.c */, ); @@ -306,11 +593,16 @@ 1F0D9D62194AC7CF008E1856 /* Utility */ = { isa = PBXGroup; children = ( - 1F0D9D63194AC7CF008E1856 /* MPUtilities.h */, - 1F0D9D64194AC7CF008E1856 /* MPUtilities.m */, 1F70CCD81978F03E00703429 /* MPAutosaving.h */, + 1F847BC31DCC9DA800A47385 /* MPGlobals.h */, + 1F96BD7E1E584A03005E0456 /* MPHomebrewSubprocessController.h */, + 1F96BD7F1E584A03005E0456 /* MPHomebrewSubprocessController.m */, 1F23A91F19928E650052DB78 /* MPMathJaxListener.h */, 1F23A92019928E650052DB78 /* MPMathJaxListener.m */, + 1F5A370E1C868EC0006E63E7 /* MPPlugIn.h */, + 1F5A370F1C868EC0006E63E7 /* MPPlugIn.m */, + 1F0D9D63194AC7CF008E1856 /* MPUtilities.h */, + 1F0D9D64194AC7CF008E1856 /* MPUtilities.m */, ); name = Utility; path = Code/Utility; @@ -333,6 +625,9 @@ 1F0D9D6C194AC7F7008E1856 /* MPHtmlPreferencesViewController.h */, 1F0D9D6D194AC7F7008E1856 /* MPHtmlPreferencesViewController.m */, 1F0D9D87194AC83C008E1856 /* MPHtmlPreferencesViewController.xib */, + 852D52391E260A6400BA7162 /* MPTerminalPreferencesViewController.h */, + 852D523A1E260A6400BA7162 /* MPTerminalPreferencesViewController.m */, + 1F3619E81F36DA0F00EDA15A /* MPTerminalPreferencesViewController.xib */, 1F0D9D72194AC7F7008E1856 /* MPPreferences.h */, 1F0D9D73194AC7F7008E1856 /* MPPreferences.m */, ); @@ -370,9 +665,11 @@ 1F4C8E9B194AE0C3004BF82E /* Resources */ = { isa = PBXGroup; children = ( + 3028039D1FD84EAB0055B0DA /* contribute.md */, 1FCE066319633D6B00DC83B4 /* Data */, 1F9A14EE194EEEDD00D1C6A9 /* Styles */, 1F9A14F3194EF6A600D1C6A9 /* Themes */, + 1F41FF7A1C8EEE9200FD9886 /* Templates */, 1FBDFE9B196170FE00BEEA70 /* Extensions */, 1F0F3BFB195F75F200FC0B3B /* MathJax */, 1F8A82D819533E9300B6BF69 /* Prism */, @@ -380,6 +677,8 @@ 1F0D9DA6194AC8CB008E1856 /* Credits.rtf */, 1FA6CDB81952D2CD008D5CA0 /* dsa_pub.pem */, 1F3A47511953E84700293259 /* help.md */, + 1F59491A1AB57C78007394CB /* syntax_highlighting.json */, + 1F3FC8A91C85AE9F000965E1 /* MacDown.sdef */, ); name = Resources; sourceTree = ""; @@ -436,7 +735,11 @@ 1F9A14EB194EEE9900D1C6A9 /* MPMainController.m */, 1F9A14E8194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.h */, 1F9A14E9194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.m */, - 1FBBD4BC194C952300BB3C88 /* MPExportPanelAccessoryViewController.xib */, + 1FB3C0221E5061A2002AEB6A /* MPExportPanelAccessoryViewController.xib */, + 1F5A37121C869C81006E63E7 /* MPPlugInController.h */, + 1F5A37131C869C81006E63E7 /* MPPlugInController.m */, + 85E24E5A1E5019C00056E696 /* MPToolbarController.h */, + 85E24E5B1E5019C00056E696 /* MPToolbarController.m */, ); name = Application; sourceTree = ""; @@ -450,7 +753,7 @@ 905EF1AA196164CA00FC3CE9 /* macdown-cmd */, 1FA6DE231941CC9E000409FB /* Frameworks */, 1FA6DE221941CC9E000409FB /* Products */, - FF36D9424F9F1EFC35FA3D33 /* Pods */, + AC6D1A361B8B63012D598BC7 /* Pods */, ); sourceTree = ""; usesTabs = 0; @@ -475,9 +778,9 @@ 1FA6DE241941CC9E000409FB /* Cocoa.framework */, 905EF1A8196164CA00FC3CE9 /* Foundation.framework */, 1FA6DE261941CC9E000409FB /* Other Frameworks */, - 7C5C1FBBB3ED456285901D31 /* libPods-MacDown.a */, - AEAF42BBDCEC4012B5092BB3 /* libPods-MacDownTests.a */, - 4AFCF7AEBCE081BD528ABC3D /* libPods-macdown-cmd.a */, + 42F926DD38559C7CEDB6E42F /* libPods-MacDown.a */, + 3C949FDE45493AE77DAD9BF4 /* libPods-MacDownTests.a */, + 263367245B2D78A42C2F19D7 /* libPods-macdown-cmd.a */, ); name = Frameworks; sourceTree = ""; @@ -574,27 +877,23 @@ 905EF1AA196164CA00FC3CE9 /* macdown-cmd */ = { isa = PBXGroup; children = ( - 1F2A17261A1BB3E30055A107 /* NSUserDefaults+Suite.h */, - 1F2A17271A1BB3E30055A107 /* NSUserDefaults+Suite.m */, 1FCD711A1A20BE2F00C028B5 /* version.h */, - 1F8858BD1A2D8ED4008DC543 /* MPGlobals.h */, 1F8858BA1A2D8D82008DC543 /* MPArgumentProcessor.h */, 1F8858BB1A2D8D82008DC543 /* MPArgumentProcessor.m */, 1FBE8E0E1A11DB1E003E1EF4 /* main.m */, ); - name = "macdown-cmd"; - path = "MacDown-cmd"; + path = "macdown-cmd"; sourceTree = ""; }; - FF36D9424F9F1EFC35FA3D33 /* Pods */ = { + AC6D1A361B8B63012D598BC7 /* Pods */ = { isa = PBXGroup; children = ( - A9105A2DE3384B0DB400BAD1 /* Pods-MacDown.debug.xcconfig */, - 481332E4A369446F177A8DF0 /* Pods-MacDown.release.xcconfig */, - E352E0A2562DCE60302D805E /* Pods-MacDownTests.debug.xcconfig */, - BDCDF2E157FE72C2ED7438DD /* Pods-MacDownTests.release.xcconfig */, - 632F686FDE66C78EBA2ABB7B /* Pods-macdown-cmd.debug.xcconfig */, - E87590C145FF88E3F084D54C /* Pods-macdown-cmd.release.xcconfig */, + 1A198D1BA59D710201DD3BC8 /* Pods-MacDown.debug.xcconfig */, + 39EFCAE04F60154F0C8C5469 /* Pods-MacDown.release.xcconfig */, + 8CDC5EA0050D2F722FB1AADD /* Pods-MacDownTests.debug.xcconfig */, + 0D0EC0DE9FEA22F962083921 /* Pods-MacDownTests.release.xcconfig */, + 4DBAA63927A60EB2150642B3 /* Pods-macdown-cmd.debug.xcconfig */, + 7A8EA75FA95818275755F0B6 /* Pods-macdown-cmd.release.xcconfig */, ); name = Pods; sourceTree = ""; @@ -606,14 +905,16 @@ isa = PBXNativeTarget; buildConfigurationList = 1FA6DE551941CC9E000409FB /* Build configuration list for PBXNativeTarget "MacDown" */; buildPhases = ( - A4C68C7905CF45C89A0CC47D /* Check Pods Manifest.lock */, + B4334ECDC0751C835C1600D7 /* [CP] Check Pods Manifest.lock */, 1FA6DE1D1941CC9E000409FB /* Sources */, 1FA6DE1E1941CC9E000409FB /* Frameworks */, 1FF16580199A6C950080D9A5 /* Fetch Prism Resources */, + E7FD807B2106CA8F0087F0A8 /* Transpile Styles */, 1FA6DE1F1941CC9E000409FB /* Resources */, - 46C28C219A3C4CCD94797747 /* Copy Pods Resources */, 1F8A82A81952F19B00B6BF69 /* Update Build Number */, 905EF1B6196164E300FC3CE9 /* Copy Command Line Utility */, + C5B8C48273E72106885CA8C4 /* [CP] Embed Pods Frameworks */, + 1E02F0A95AAEBCEF65493F5F /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -630,11 +931,10 @@ isa = PBXNativeTarget; buildConfigurationList = 1FA6DE581941CC9E000409FB /* Build configuration list for PBXNativeTarget "MacDownTests" */; buildPhases = ( - 694A3D57598E431C90D512B9 /* Check Pods Manifest.lock */, + 655CCD821E310F9767572216 /* [CP] Check Pods Manifest.lock */, 1FA6DE411941CC9E000409FB /* Sources */, 1FA6DE421941CC9E000409FB /* Frameworks */, 1FA6DE431941CC9E000409FB /* Resources */, - 72CBA169CC684D3CB9F83627 /* Copy Pods Resources */, ); buildRules = ( ); @@ -650,11 +950,10 @@ isa = PBXNativeTarget; buildConfigurationList = 905EF1B3196164CA00FC3CE9 /* Build configuration list for PBXNativeTarget "macdown-cmd" */; buildPhases = ( - 8354BB1F574EFC071D91C89B /* Check Pods Manifest.lock */, + 6C852F8D7610992AEEA172AE /* [CP] Check Pods Manifest.lock */, 905EF1A3196164CA00FC3CE9 /* Sources */, 905EF1A4196164CA00FC3CE9 /* Frameworks */, - 905EF1A5196164CA00FC3CE9 /* CopyFiles */, - 38BEB4F8BD690E8970217D44 /* Copy Pods Resources */, + 905EF1A5196164CA00FC3CE9 /* Copy Files */, ); buildRules = ( ); @@ -673,7 +972,7 @@ isa = PBXProject; attributes = { CLASSPREFIX = MP; - LastUpgradeCheck = 0610; + LastUpgradeCheck = 0920; ORGANIZATIONNAME = "Tzu-ping Chung "; TargetAttributes = { 1FA6DE441941CC9E000409FB = { @@ -683,11 +982,35 @@ }; buildConfigurationList = 1FA6DE1C1941CC9E000409FB /* Build configuration list for PBXProject "MacDown" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, Base, + sv, + "zh-Hant", + "zh-Hans", + de, + es, + "it-IT", + ja, + sk, + ar, + fr, + is, + "ko-KR", + "pt-BR", + "nl-NL", + "nb-NO", + tr, + "de-DE", + "sk-SK", + et, + fi, + "ru-RU", + cs, + "da-DK", + da, ); mainGroup = 1FA6DE181941CC9E000409FB; productRefGroup = 1FA6DE221941CC9E000409FB /* Products */; @@ -726,16 +1049,21 @@ 1F3A47521953E84700293259 /* help.md in Resources */, 1F0D9DB4194AC9EE008E1856 /* MainMenu.xib in Resources */, 1FBDFE9C196170FE00BEEA70 /* Extensions in Resources */, - 1FBBD4BE194C952300BB3C88 /* MPExportPanelAccessoryViewController.xib in Resources */, + 1F41FF7B1C8EEE9200FD9886 /* Templates in Resources */, 1FA6CDB91952D2CD008D5CA0 /* dsa_pub.pem in Resources */, 1F27896B1973BEB100EE696A /* Localizable.strings in Resources */, 1F0D9DAD194AC8EF008E1856 /* Images.xcassets in Resources */, 1F0D9DAA194AC8CB008E1856 /* Credits.rtf in Resources */, 1FBDFEA51962A27300BEEA70 /* MPGeneralPreferencesViewController.xib in Resources */, 1F0F3BFC195F75F200FC0B3B /* MathJax in Resources */, + 1F3619E61F36DA0F00EDA15A /* MPTerminalPreferencesViewController.xib in Resources */, 1F4C8E9A194AE0B9004BF82E /* MarkdownDocument.icns in Resources */, + 1F59491B1AB57C78007394CB /* syntax_highlighting.json in Resources */, 1F0D9DAB194AC8CB008E1856 /* InfoPlist.strings in Resources */, 1FCE066419633D6C00DC83B4 /* Data in Resources */, + 1F3FC8AA1C85AE9F000965E1 /* MacDown.sdef in Resources */, + 1FB3C0241E5061A2002AEB6A /* MPExportPanelAccessoryViewController.xib in Resources */, + 3028039E1FD84EAC0055B0DA /* contribute.md in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -753,124 +1081,141 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 1F8A82A81952F19B00B6BF69 /* Update Build Number */ = { + 1E02F0A95AAEBCEF65493F5F /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-MacDown/Pods-MacDown-resources.sh", + "${PODS_ROOT}/MASPreferences/Framework/en.lproj/MASPreferencesWindow.xib", ); - name = "Update Build Number"; + name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MASPreferencesWindow.nib", ); runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/bash; - shellScript = "bash Tools/update_build_number.sh"; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MacDown/Pods-MacDown-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 1FF16580199A6C950080D9A5 /* Fetch Prism Resources */ = { + 1F8A82A81952F19B00B6BF69 /* Update Build Number */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Fetch Prism Resources"; + name = "Update Build Number"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "SOURCE=$PWD/Dependency/prism\nTARGET=$PWD/MacDown/Resources/Prism\ncp -r $SOURCE/components $TARGET\ncp -r $SOURCE/themes $TARGET\ncp -r $SOURCE/components.js $TARGET"; + shellPath = /bin/bash; + shellScript = "bash Tools/update_build_number.sh\n"; showEnvVarsInLog = 0; }; - 38BEB4F8BD690E8970217D44 /* Copy Pods Resources */ = { + 1FF16580199A6C950080D9A5 /* Fetch Prism Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Copy Pods Resources"; + name = "Fetch Prism Resources"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-macdown-cmd/Pods-macdown-cmd-resources.sh\"\n"; + shellScript = "SOURCE=\"$PWD/Dependency/prism\"\nTARGET=\"$PWD/MacDown/Resources/Prism\"\nrm -rf \"$TARGET\"\nmkdir -p \"$TARGET\"\ncp -r \"$SOURCE/components\" \"$TARGET\"\ncp -r \"$SOURCE/themes\" \"$TARGET\"\ncp -r \"$SOURCE/plugins\" \"$TARGET\"\ncp -r \"$SOURCE/components.js\" \"$TARGET\"\n"; showEnvVarsInLog = 0; }; - 46C28C219A3C4CCD94797747 /* Copy Pods Resources */ = { + 655CCD821E310F9767572216 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); - name = "Copy Pods Resources"; + name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-MacDownTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-MacDown/Pods-MacDown-resources.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 694A3D57598E431C90D512B9 /* Check Pods Manifest.lock */ = { + 6C852F8D7610992AEEA172AE /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); - name = "Check Pods Manifest.lock"; + name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-macdown-cmd-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 72CBA169CC684D3CB9F83627 /* Copy Pods Resources */ = { + B4334ECDC0751C835C1600D7 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); - name = "Copy Pods Resources"; + name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-MacDown-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-MacDownTests/Pods-MacDownTests-resources.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 8354BB1F574EFC071D91C89B /* Check Pods Manifest.lock */ = { + C5B8C48273E72106885CA8C4 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-MacDown/Pods-MacDown-frameworks.sh", + "${PODS_ROOT}/Sparkle/Sparkle.framework", + "${PODS_ROOT}/Sparkle/Sparkle.framework.dSYM", ); - name = "Check Pods Manifest.lock"; + name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Sparkle.framework", + "${DWARF_DSYM_FOLDER_PATH}/Sparkle.framework.dSYM", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MacDown/Pods-MacDown-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - A4C68C7905CF45C89A0CC47D /* Check Pods Manifest.lock */ = { + E7FD807B2106CA8F0087F0A8 /* Transpile Styles */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Check Pods Manifest.lock"; + name = "Transpile Styles"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + shellScript = "make -C \"$PROJECT_DIR/Tools/GitHub-style-generator/\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -884,28 +1229,38 @@ 1F0D9D7A194AC7F7008E1856 /* MPMarkdownPreferencesViewController.m in Sources */, 1F0D9D7D194AC7F7008E1856 /* MPPreferencesViewController.m in Sources */, 1F33F2A41A3B56D20001C849 /* NSColor+HTML.m in Sources */, + 1F5A37141C869C81006E63E7 /* MPPlugInController.m in Sources */, 1F0D9D65194AC7CF008E1856 /* NSString+Lookup.m in Sources */, + 1F3FC87C1C854E1C000965E1 /* NSPasteboard+Types.m in Sources */, 1F8A835E1953454F00B6BF69 /* HGMarkdownHighlightingStyle.m in Sources */, 1F33F2A11A3B4B660001C849 /* MPDocumentSplitView.m in Sources */, 1F23A92119928E650052DB78 /* MPMathJaxListener.m in Sources */, + 1F2649B01A7406DB00EF6AF3 /* NSDocumentController+Document.m in Sources */, 1F0D9D67194AC7CF008E1856 /* MPUtilities.m in Sources */, + 852D523C1E260A6400BA7162 /* MPTerminalPreferencesViewController.m in Sources */, 1F0D9D78194AC7F7008E1856 /* MPHtmlPreferencesViewController.m in Sources */, 1F0D9D7C194AC7F7008E1856 /* MPPreferences.m in Sources */, 1F0D9DAF194AC905008E1856 /* main.m in Sources */, 1F0D9D66194AC7CF008E1856 /* NSTextView+Autocomplete.m in Sources */, + 1F59491E1AB57D87007394CB /* NSJSONSerialization+File.m in Sources */, 1FFEB32B19737D6E00B2254F /* YAMLSerialization.m in Sources */, 1F64CCC9195F5AB900CE619A /* MPAsset.m in Sources */, 1FFEB3251972D88900B2254F /* NSObject+HTMLTabularize.m in Sources */, 1F9A14EC194EEE9900D1C6A9 /* MPExportPanelAccessoryViewController.m in Sources */, + 85E24E5C1E5019C00056E696 /* MPToolbarController.m in Sources */, + 1F5A37101C868EC0006E63E7 /* MPPlugIn.m in Sources */, 1FBDFEA11962A25A00BEEA70 /* MPGeneralPreferencesViewController.m in Sources */, 1F9A14ED194EEE9900D1C6A9 /* MPMainController.m in Sources */, 1F002A23195B3DAE008B8D93 /* MPRenderer.m in Sources */, 1FBBD4CB194CA36500BB3C88 /* hoedown_html_patch.c in Sources */, 1F8A8364195346B200B6BF69 /* pmh_styleparser.c in Sources */, 1F0D9D93194AC852008E1856 /* MPDocument.m in Sources */, + 1F96BD801E584A03005E0456 /* MPHomebrewSubprocessController.m in Sources */, 1F0D9D76194AC7F7008E1856 /* MPEditorPreferencesViewController.m in Sources */, 1F8A83621953461800B6BF69 /* pmh_parser.c in Sources */, 1F8A835D1953454F00B6BF69 /* HGMarkdownHighlighter.m in Sources */, + 1F847BC61DCC9DB600A47385 /* NSUserDefaults+Suite.m in Sources */, + 1F3386E61A6B999600FC88C4 /* DOMNode+Text.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -926,9 +1281,9 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1F8858BC1A2D8D82008DC543 /* MPArgumentProcessor.m in Sources */, 1FBE8E0F1A11DB1E003E1EF4 /* main.m in Sources */, - 1F2A17281A1BB3E30055A107 /* NSUserDefaults+Suite.m in Sources */, + 1F8858BC1A2D8D82008DC543 /* MPArgumentProcessor.m in Sources */, + 1FEAFEA21DCE762C008C4E8C /* NSUserDefaults+Suite.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -962,6 +1317,30 @@ isa = PBXVariantGroup; children = ( 1F0D9D82194AC83C008E1856 /* Base */, + 1FCBDF0B1E536C8400C0F56B /* sv */, + 1FCBDF161E536CAE00C0F56B /* zh-Hant */, + 1FCBDF211E536CB600C0F56B /* zh-Hans */, + 1F90340D1EC556A900D97F9C /* de */, + 1F9034181EC556C900D97F9C /* es */, + 1F9034231EC556E400D97F9C /* it-IT */, + 1F90342E1EC556EC00D97F9C /* ja */, + 1F9034391EC556F300D97F9C /* sk */, + 1F9034441EC5576E00D97F9C /* ar */, + 1F05E8AB1F36E53B00E4D06C /* fr */, + 1F05E8B41F36E56200E4D06C /* is */, + 1F05E8BD1F36E58700E4D06C /* ko-KR */, + 1F05E8C61F36E5A900E4D06C /* pt-BR */, + 1F6B58F21F5D2EA2006559CB /* nl-NL */, + 1F20EA262099A18A00C81510 /* nb-NO */, + 1FBD430F2099A1A200B348CD /* tr */, + 1F5601402099A1E60035F207 /* de-DE */, + 1F9F351E2099A1FC00C4B4F1 /* sk-SK */, + 1FB813A52099A228004EC5D7 /* et */, + E7D458CB241C933800411A36 /* fi */, + E70ECDD5241C933C00537A46 /* ru-RU */, + E744518C241C934C00D9ABD9 /* cs */, + E77E5D6C241C935100699B5A /* da-DK */, + E7DD09F1241C9368008FBC25 /* da */, ); name = MainMenu.xib; sourceTree = ""; @@ -970,6 +1349,28 @@ isa = PBXVariantGroup; children = ( 1F0D9D84194AC83C008E1856 /* Base */, + 1FCBDF111E536C8500C0F56B /* sv */, + 1FCBDF1C1E536CAE00C0F56B /* zh-Hant */, + 1FCBDF271E536CB700C0F56B /* zh-Hans */, + 1F9034131EC556AA00D97F9C /* de */, + 1F90341E1EC556CA00D97F9C /* es */, + 1F9034291EC556E400D97F9C /* it-IT */, + 1F9034341EC556EC00D97F9C /* ja */, + 1F90343F1EC556F300D97F9C /* sk */, + 1F90344A1EC5576E00D97F9C /* ar */, + 1F05E8B21F36E53C00E4D06C /* fr */, + 1F05E8BB1F36E56300E4D06C /* is */, + 1F05E8C41F36E58800E4D06C /* ko-KR */, + 1F05E8CD1F36E5AA00E4D06C /* pt-BR */, + 1F6B58F91F5D2EA3006559CB /* nl-NL */, + 1F20EA2C2099A18A00C81510 /* nb-NO */, + 1FBD43152099A1A200B348CD /* tr */, + 1F5601462099A1E60035F207 /* de-DE */, + 1F9F35242099A1FC00C4B4F1 /* sk-SK */, + 1FB813AB2099A228004EC5D7 /* et */, + E70ECDD7241C933C00537A46 /* ru-RU */, + E7445191241C934C00D9ABD9 /* cs */, + E77E5D72241C935100699B5A /* da-DK */, ); name = MPDocument.xib; path = ../..; @@ -979,6 +1380,27 @@ isa = PBXVariantGroup; children = ( 1F0D9D86194AC83C008E1856 /* Base */, + 1FCBDF0F1E536C8400C0F56B /* sv */, + 1FCBDF1A1E536CAE00C0F56B /* zh-Hant */, + 1FCBDF251E536CB600C0F56B /* zh-Hans */, + 1F9034111EC556A900D97F9C /* de */, + 1F90341C1EC556C900D97F9C /* es */, + 1F9034271EC556E400D97F9C /* it-IT */, + 1F9034321EC556EC00D97F9C /* ja */, + 1F90343D1EC556F300D97F9C /* sk */, + 1F9034481EC5576E00D97F9C /* ar */, + 1F05E8AF1F36E53C00E4D06C /* fr */, + 1F05E8B81F36E56300E4D06C /* is */, + 1F05E8C11F36E58800E4D06C /* ko-KR */, + 1F05E8CA1F36E5AA00E4D06C /* pt-BR */, + 1F6B58F61F5D2EA2006559CB /* nl-NL */, + 1F20EA292099A18A00C81510 /* nb-NO */, + 1FBD43122099A1A200B348CD /* tr */, + 1F5601432099A1E60035F207 /* de-DE */, + 1F9F35212099A1FC00C4B4F1 /* sk-SK */, + 1FB813A82099A228004EC5D7 /* et */, + E744518F241C934C00D9ABD9 /* cs */, + E77E5D6F241C935100699B5A /* da-DK */, ); name = MPEditorPreferencesViewController.xib; path = ../..; @@ -988,6 +1410,27 @@ isa = PBXVariantGroup; children = ( 1F0D9D88194AC83C008E1856 /* Base */, + 1FCBDF101E536C8500C0F56B /* sv */, + 1FCBDF1B1E536CAE00C0F56B /* zh-Hant */, + 1FCBDF261E536CB700C0F56B /* zh-Hans */, + 1F9034121EC556A900D97F9C /* de */, + 1F90341D1EC556C900D97F9C /* es */, + 1F9034281EC556E400D97F9C /* it-IT */, + 1F9034331EC556EC00D97F9C /* ja */, + 1F90343E1EC556F300D97F9C /* sk */, + 1F9034491EC5576E00D97F9C /* ar */, + 1F05E8B01F36E53C00E4D06C /* fr */, + 1F05E8B91F36E56300E4D06C /* is */, + 1F05E8C21F36E58800E4D06C /* ko-KR */, + 1F05E8CB1F36E5AA00E4D06C /* pt-BR */, + 1F6B58F71F5D2EA2006559CB /* nl-NL */, + 1F20EA272099A18A00C81510 /* nb-NO */, + 1FBD43112099A1A200B348CD /* tr */, + 1F5601422099A1E60035F207 /* de-DE */, + 1F9F351F2099A1FC00C4B4F1 /* sk-SK */, + 1FB813A72099A228004EC5D7 /* et */, + E744518E241C934C00D9ABD9 /* cs */, + E77E5D6D241C935100699B5A /* da-DK */, ); name = MPHtmlPreferencesViewController.xib; path = ../..; @@ -997,6 +1440,28 @@ isa = PBXVariantGroup; children = ( 1F0D9D8A194AC83C008E1856 /* Base */, + 1FCBDF0E1E536C8400C0F56B /* sv */, + 1FCBDF191E536CAE00C0F56B /* zh-Hant */, + 1FCBDF241E536CB600C0F56B /* zh-Hans */, + 1F9034101EC556A900D97F9C /* de */, + 1F90341B1EC556C900D97F9C /* es */, + 1F9034261EC556E400D97F9C /* it-IT */, + 1F9034311EC556EC00D97F9C /* ja */, + 1F90343C1EC556F300D97F9C /* sk */, + 1F9034471EC5576E00D97F9C /* ar */, + 1F05E8AE1F36E53C00E4D06C /* fr */, + 1F05E8B71F36E56200E4D06C /* is */, + 1F05E8C01F36E58700E4D06C /* ko-KR */, + 1F05E8C91F36E5AA00E4D06C /* pt-BR */, + 1F6B58F51F5D2EA2006559CB /* nl-NL */, + 1F20EA2B2099A18A00C81510 /* nb-NO */, + 1FBD43142099A1A200B348CD /* tr */, + 1F5601452099A1E60035F207 /* de-DE */, + 1F9F35232099A1FC00C4B4F1 /* sk-SK */, + 1FB813AA2099A228004EC5D7 /* et */, + E70ECDD6241C933C00537A46 /* ru-RU */, + E7445192241C934C00D9ABD9 /* cs */, + E77E5D71241C935100699B5A /* da-DK */, ); name = MPMarkdownPreferencesViewController.xib; path = ../..; @@ -1006,6 +1471,19 @@ isa = PBXVariantGroup; children = ( 1F0D9DA7194AC8CB008E1856 /* en */, + 1FCBDF121E536C8500C0F56B /* sv */, + 1FCBDF1D1E536CAE00C0F56B /* zh-Hant */, + 1FCBDF281E536CB700C0F56B /* zh-Hans */, + 1F9034141EC556AA00D97F9C /* de */, + 1F90341F1EC556CA00D97F9C /* es */, + 1F90342A1EC556E400D97F9C /* it-IT */, + 1F9034351EC556EC00D97F9C /* ja */, + 1F9034401EC556F300D97F9C /* sk */, + 1F90344B1EC5576E00D97F9C /* ar */, + 1F05E8B31F36E53C00E4D06C /* fr */, + 1F05E8BC1F36E56300E4D06C /* is */, + 1F05E8C51F36E58800E4D06C /* ko-KR */, + 1F05E8CE1F36E5AA00E4D06C /* pt-BR */, ); name = Credits.rtf; sourceTree = ""; @@ -1014,6 +1492,20 @@ isa = PBXVariantGroup; children = ( 1F0D9DA9194AC8CB008E1856 /* en */, + 1FCBDF131E536C8500C0F56B /* sv */, + 1FCBDF1E1E536CAE00C0F56B /* zh-Hant */, + 1FCBDF291E536CB700C0F56B /* zh-Hans */, + 1F9034151EC556AA00D97F9C /* de */, + 1F9034201EC556CA00D97F9C /* es */, + 1F90342B1EC556E500D97F9C /* it-IT */, + 1F9034361EC556EC00D97F9C /* ja */, + 1F9034411EC556F300D97F9C /* sk */, + 1F90344C1EC5576E00D97F9C /* ar */, + 1F2ABCFC1F381089005FB620 /* pt-BR */, + 1F2ABCFD1F38108C005FB620 /* ko-KR */, + 1F2ABCFE1F38108E005FB620 /* is */, + 1F2ABCFF1F381090005FB620 /* fr */, + E7543774241C935F00F181F1 /* nl-NL */, ); name = InfoPlist.strings; sourceTree = ""; @@ -1021,32 +1513,140 @@ 1F2789691973BEB100EE696A /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( - 1F27896A1973BEB100EE696A /* Base */, + 1FA9196B1E4723A200850517 /* en */, + 1FCBDF151E536C9F00C0F56B /* sv */, + 1FCBDF1F1E536CAF00C0F56B /* zh-Hant */, + 1FCBDF2A1E536CB700C0F56B /* zh-Hans */, + 1F9034161EC556AA00D97F9C /* de */, + 1F9034211EC556CA00D97F9C /* es */, + 1F90342C1EC556E500D97F9C /* it-IT */, + 1F9034371EC556EC00D97F9C /* ja */, + 1F9034421EC556F300D97F9C /* sk */, + 1F90344D1EC5576E00D97F9C /* ar */, + 1F2ABD001F381094005FB620 /* fr */, + 1F2ABD011F381096005FB620 /* is */, + 1F2ABD021F381099005FB620 /* ko-KR */, + 1F2ABD031F38109A005FB620 /* pt-BR */, + 1F6B58FB1F5D2EE5006559CB /* nl-NL */, + 1F20EA242099A18A00C81510 /* nb-NO */, + 1FBD430D2099A1A200B348CD /* tr */, + 1F56013E2099A1E60035F207 /* de-DE */, + 1F9F351C2099A1FC00C4B4F1 /* sk-SK */, + 1FB813A32099A228004EC5D7 /* et */, + E70ECDD4241C933C00537A46 /* ru-RU */, + E744518B241C934C00D9ABD9 /* cs */, + E77E5D6A241C935100699B5A /* da-DK */, ); name = Localizable.strings; sourceTree = ""; }; - 1FBBD4BC194C952300BB3C88 /* MPExportPanelAccessoryViewController.xib */ = { + 1F3619E81F36DA0F00EDA15A /* MPTerminalPreferencesViewController.xib */ = { isa = PBXVariantGroup; children = ( - 1FBBD4BD194C952300BB3C88 /* Base */, + 1F3619E71F36DA0F00EDA15A /* Base */, + 1F3619EA1F36DA1300EDA15A /* sv */, + 1F3619EC1F36DA1400EDA15A /* zh-Hant */, + 1F3619EE1F36DA1600EDA15A /* zh-Hans */, + 1F3619F01F36DA1700EDA15A /* de */, + 1F3619F21F36DA1800EDA15A /* es */, + 1F3619F41F36DA1A00EDA15A /* it-IT */, + 1F3619F61F36DA1C00EDA15A /* ja */, + 1F3619F81F36DA1D00EDA15A /* sk */, + 1F3619FA1F36DA1F00EDA15A /* ar */, + 1F05E8B11F36E53C00E4D06C /* fr */, + 1F05E8BA1F36E56300E4D06C /* is */, + 1F05E8C31F36E58800E4D06C /* ko-KR */, + 1F05E8CC1F36E5AA00E4D06C /* pt-BR */, + 1F6B58F81F5D2EA2006559CB /* nl-NL */, + 1F20EA282099A18A00C81510 /* nb-NO */, + 1FBD43102099A1A200B348CD /* tr */, + 1F5601412099A1E60035F207 /* de-DE */, + 1F9F35202099A1FC00C4B4F1 /* sk-SK */, + 1FB813A62099A228004EC5D7 /* et */, + E744518D241C934C00D9ABD9 /* cs */, + E77E5D6E241C935100699B5A /* da-DK */, + ); + name = MPTerminalPreferencesViewController.xib; + path = ../../Localization; + sourceTree = ""; + }; + 1FB3C0221E5061A2002AEB6A /* MPExportPanelAccessoryViewController.xib */ = { + isa = PBXVariantGroup; + children = ( + 1FB3C0231E5061A2002AEB6A /* Base */, + 1FCBDF0C1E536C8400C0F56B /* sv */, + 1FCBDF171E536CAE00C0F56B /* zh-Hant */, + 1FCBDF221E536CB600C0F56B /* zh-Hans */, + 1F90340E1EC556A900D97F9C /* de */, + 1F9034191EC556C900D97F9C /* es */, + 1F9034241EC556E400D97F9C /* it-IT */, + 1F90342F1EC556EC00D97F9C /* ja */, + 1F90343A1EC556F300D97F9C /* sk */, + 1F9034451EC5576E00D97F9C /* ar */, + 1F05E8AC1F36E53C00E4D06C /* fr */, + 1F05E8B51F36E56200E4D06C /* is */, + 1F05E8BE1F36E58700E4D06C /* ko-KR */, + 1F05E8C71F36E5A900E4D06C /* pt-BR */, + 1F6B58F31F5D2EA2006559CB /* nl-NL */, + 1F20EA252099A18A00C81510 /* nb-NO */, + 1FBD430E2099A1A200B348CD /* tr */, + 1F56013F2099A1E60035F207 /* de-DE */, + 1F9F351D2099A1FC00C4B4F1 /* sk-SK */, + 1FB813A42099A228004EC5D7 /* et */, + E744518A241C934C00D9ABD9 /* cs */, + E77E5D6B241C935100699B5A /* da-DK */, ); name = MPExportPanelAccessoryViewController.xib; - path = Code/Document; sourceTree = ""; }; 1FBDFEA31962A27300BEEA70 /* MPGeneralPreferencesViewController.xib */ = { isa = PBXVariantGroup; children = ( 1FBDFEA41962A27300BEEA70 /* Base */, + 1FCBDF0D1E536C8400C0F56B /* sv */, + 1FCBDF181E536CAE00C0F56B /* zh-Hant */, + 1FCBDF231E536CB600C0F56B /* zh-Hans */, + 1F90340F1EC556A900D97F9C /* de */, + 1F90341A1EC556C900D97F9C /* es */, + 1F9034251EC556E400D97F9C /* it-IT */, + 1F9034301EC556EC00D97F9C /* ja */, + 1F90343B1EC556F300D97F9C /* sk */, + 1F9034461EC5576E00D97F9C /* ar */, + 1F05E8AD1F36E53C00E4D06C /* fr */, + 1F05E8B61F36E56200E4D06C /* is */, + 1F05E8BF1F36E58700E4D06C /* ko-KR */, + 1F05E8C81F36E5AA00E4D06C /* pt-BR */, + 1F6B58F41F5D2EA2006559CB /* nl-NL */, + 1F20EA2A2099A18A00C81510 /* nb-NO */, + 1FBD43132099A1A200B348CD /* tr */, + 1F5601442099A1E60035F207 /* de-DE */, + 1F9F35222099A1FC00C4B4F1 /* sk-SK */, + 1FB813A92099A228004EC5D7 /* et */, + E7445190241C934C00D9ABD9 /* cs */, + E77E5D70241C935100699B5A /* da-DK */, ); name = MPGeneralPreferencesViewController.xib; + path = ../..; sourceTree = ""; }; 1FCDCA321944F96E00B1F966 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( 1FCDCA331944F96E00B1F966 /* en */, + 1FCBDF141E536C8900C0F56B /* sv */, + 1FCBDF201E536CAF00C0F56B /* zh-Hant */, + 1FCBDF2B1E536CB700C0F56B /* zh-Hans */, + 1F9034171EC556AA00D97F9C /* de */, + 1F9034221EC556CA00D97F9C /* es */, + 1F90342D1EC556E500D97F9C /* it-IT */, + 1F9034381EC556EC00D97F9C /* ja */, + 1F9034431EC556F300D97F9C /* sk */, + 1F90344E1EC5576E00D97F9C /* ar */, + 1F2ABD041F38113B005FB620 /* fr */, + 1F2ABD051F38113C005FB620 /* is */, + 1F2ABD061F38113E005FB620 /* ko-KR */, + 1F2ABD071F381140005FB620 /* pt-BR */, + 1F6B58FA1F5D2ED2006559CB /* nl-NL */, ); name = InfoPlist.strings; sourceTree = ""; @@ -1058,22 +1658,35 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -1096,23 +1709,35 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -1126,14 +1751,16 @@ }; 1FA6DE561941CC9E000409FB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A9105A2DE3384B0DB400BAD1 /* Pods-MacDown.debug.xcconfig */; + baseConfigurationReference = 1A198D1BA59D710201DD3BC8 /* Pods-MacDown.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = ""; COMBINE_HIDPI_IMAGES = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "MacDown/Code/MacDown-Prefix.pch"; INFOPLIST_FILE = "MacDown/MacDown-Info.plist"; MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_BUNDLE_IDENTIFIER = "com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower}-debug"; PRODUCT_NAME = MacDown; SDKROOT = macosx; WRAPPER_EXTENSION = app; @@ -1142,14 +1769,16 @@ }; 1FA6DE571941CC9E000409FB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 481332E4A369446F177A8DF0 /* Pods-MacDown.release.xcconfig */; + baseConfigurationReference = 39EFCAE04F60154F0C8C5469 /* Pods-MacDown.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = ""; COMBINE_HIDPI_IMAGES = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "MacDown/Code/MacDown-Prefix.pch"; INFOPLIST_FILE = "MacDown/MacDown-Info.plist"; MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_BUNDLE_IDENTIFIER = "com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower}"; PRODUCT_NAME = MacDown; SDKROOT = macosx; WRAPPER_EXTENSION = app; @@ -1158,7 +1787,7 @@ }; 1FA6DE591941CC9E000409FB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E352E0A2562DCE60302D805E /* Pods-MacDownTests.debug.xcconfig */; + baseConfigurationReference = 8CDC5EA0050D2F722FB1AADD /* Pods-MacDownTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/MacDown.app/Contents/MacOS/MacDown"; CLANG_ENABLE_MODULES = NO; @@ -1179,6 +1808,7 @@ "$(USER_LIBRARY_DIR)/Developer/Xcode/DerivedData/MacDown-ggdtxvuybojeqbhjydkhilziizrv/Build/Products/Debug", ); MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_BUNDLE_IDENTIFIER = "com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower}"; PRODUCT_NAME = MacDownTests; TEST_HOST = "$(BUNDLE_LOADER)"; WRAPPER_EXTENSION = xctest; @@ -1187,7 +1817,7 @@ }; 1FA6DE5A1941CC9E000409FB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = BDCDF2E157FE72C2ED7438DD /* Pods-MacDownTests.release.xcconfig */; + baseConfigurationReference = 0D0EC0DE9FEA22F962083921 /* Pods-MacDownTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/MacDown.app/Contents/MacOS/MacDown"; CLANG_ENABLE_MODULES = NO; @@ -1204,6 +1834,7 @@ "$(USER_LIBRARY_DIR)/Developer/Xcode/DerivedData/MacDown-ggdtxvuybojeqbhjydkhilziizrv/Build/Products/Debug", ); MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_BUNDLE_IDENTIFIER = "com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower}"; PRODUCT_NAME = MacDownTests; TEST_HOST = "$(BUNDLE_LOADER)"; WRAPPER_EXTENSION = xctest; @@ -1212,7 +1843,7 @@ }; 905EF1B1196164CA00FC3CE9 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 632F686FDE66C78EBA2ABB7B /* Pods-macdown-cmd.debug.xcconfig */; + baseConfigurationReference = 4DBAA63927A60EB2150642B3 /* Pods-macdown-cmd.debug.xcconfig */; buildSettings = { GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ""; @@ -1227,7 +1858,7 @@ }; 905EF1B2196164CA00FC3CE9 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E87590C145FF88E3F084D54C /* Pods-macdown-cmd.release.xcconfig */; + baseConfigurationReference = 7A8EA75FA95818275755F0B6 /* Pods-macdown-cmd.release.xcconfig */; buildSettings = { GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = ""; diff --git a/MacDown.xcodeproj/xcshareddata/xcschemes/MacDown.xcscheme b/MacDown.xcodeproj/xcshareddata/xcschemes/MacDown.xcscheme index f4364d15..e5486feb 100644 --- a/MacDown.xcodeproj/xcshareddata/xcschemes/MacDown.xcscheme +++ b/MacDown.xcodeproj/xcshareddata/xcschemes/MacDown.xcscheme @@ -1,6 +1,6 @@ + shouldUseLaunchSchemeArgsEnv = "YES"> @@ -48,17 +48,21 @@ ReferencedContainer = "container:MacDown.xcodeproj"> + + - + - + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/MacDown.xcworkspace/xcshareddata/MacDown.xcscmblueprint b/MacDown.xcworkspace/xcshareddata/MacDown.xcscmblueprint new file mode 100644 index 00000000..2b9378bc --- /dev/null +++ b/MacDown.xcworkspace/xcshareddata/MacDown.xcscmblueprint @@ -0,0 +1,37 @@ +{ + "DVTSourceControlWorkspaceBlueprintPrimaryRemoteRepositoryKey" : "D29B2AF65723D6330588EAE1AA18C06828F4C6B0", + "DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey" : { + + }, + "DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey" : { + "9635D08B964B59C48EA8E6805E0CB50B3BAF24BE" : 0, + "2F1767954F6E41A8A969AD0C1FD6055664A8E4E6" : 0, + "D29B2AF65723D6330588EAE1AA18C06828F4C6B0" : 0 + }, + "DVTSourceControlWorkspaceBlueprintIdentifierKey" : "24769B53-F963-4503-96C3-3E34905014BD", + "DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey" : { + "9635D08B964B59C48EA8E6805E0CB50B3BAF24BE" : "c\/hoedown\/hoedown", + "2F1767954F6E41A8A969AD0C1FD6055664A8E4E6" : "macdown\/Dependency\/prism\/", + "D29B2AF65723D6330588EAE1AA18C06828F4C6B0" : "macdown\/" + }, + "DVTSourceControlWorkspaceBlueprintNameKey" : "MacDown", + "DVTSourceControlWorkspaceBlueprintVersion" : 204, + "DVTSourceControlWorkspaceBlueprintRelativePathToProjectKey" : "MacDown.xcworkspace", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey" : [ + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/LeaVerou\/prism.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "2F1767954F6E41A8A969AD0C1FD6055664A8E4E6" + }, + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/hoedown\/hoedown.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "9635D08B964B59C48EA8E6805E0CB50B3BAF24BE" + }, + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "ssh:\/\/github.com\/uranusjr\/macdown.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "D29B2AF65723D6330588EAE1AA18C06828F4C6B0" + } + ] +} \ No newline at end of file diff --git a/MacDown.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/MacDown.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..949b6789 --- /dev/null +++ b/MacDown.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + BuildSystemType + Original + + diff --git a/MacDown/Code/Application/MPMainController.h b/MacDown/Code/Application/MPMainController.h index 9c708da1..ee2be4c0 100644 --- a/MacDown/Code/Application/MPMainController.h +++ b/MacDown/Code/Application/MPMainController.h @@ -11,6 +11,6 @@ @interface MPMainController : NSObject -@property (nonatomic, readonly) MPPreferences *prefereces; +@property (nonatomic, readonly) MPPreferences *preferences; @end diff --git a/MacDown/Code/Application/MPMainController.m b/MacDown/Code/Application/MPMainController.m index e712500b..5a46edce 100644 --- a/MacDown/Code/Application/MPMainController.m +++ b/MacDown/Code/Application/MPMainController.m @@ -9,12 +9,86 @@ #import "MPMainController.h" #import #import +#import "MPGlobals.h" #import "MPUtilities.h" +#import "NSDocumentController+Document.h" +#import "NSUserDefaults+Suite.h" #import "MPPreferences.h" #import "MPGeneralPreferencesViewController.h" #import "MPMarkdownPreferencesViewController.h" #import "MPEditorPreferencesViewController.h" #import "MPHtmlPreferencesViewController.h" +#import "MPTerminalPreferencesViewController.h" +#import "MPDocument.h" + + +static NSString * const kMPTreatLastSeenStampKey = @"treatLastSeenStamp"; + + +NS_INLINE void MPOpenBundledFile(NSString *resource, NSString *extension) +{ + NSURL *source = [[NSBundle mainBundle] URLForResource:resource + withExtension:extension]; + NSString *filename = source.absoluteString.lastPathComponent; + NSURL *target = [NSURL fileURLWithPathComponents:@[NSTemporaryDirectory(), + filename]]; + BOOL ok = NO; + NSFileManager *manager = [NSFileManager defaultManager]; + [manager removeItemAtURL:target error:NULL]; + ok = [manager copyItemAtURL:source toURL:target error:NULL]; + + if (!ok) + return; + NSDocumentController *c = [NSDocumentController sharedDocumentController]; + [c openDocumentWithContentsOfURL:target display:YES completionHandler: + ^(NSDocument *document, BOOL wasOpen, NSError *error) { + if (!document || wasOpen || error) + return; + NSRect frame = [NSScreen mainScreen].visibleFrame; + for (NSWindowController *wc in document.windowControllers) + [wc.window setFrame:frame display:YES]; + }]; +} + +NS_INLINE void treat() +{ + NSDictionary *info = MPGetDataMap(@"treats"); + NSString *name = info[@"name"]; + if (![NSUserName().lowercaseString hasPrefix:name] + && ![NSFullUserName().lowercaseString hasPrefix:name]) + return; + + NSDictionary *data = info[@"data"]; + NSCalendar *calendar = [NSCalendar currentCalendar]; + NSCalendarUnit unit = + NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear; + NSDateComponents *comps = [calendar components:unit fromDate:[NSDate date]]; + + NSString *key = + [NSString stringWithFormat:@"%02ld%02ld", comps.month, comps.day]; + if (!data[key]) // No matching treat. + return; + + NSString *stamp = [NSString stringWithFormat:@"%ld%02ld%02ld", + comps.year, comps.month, comps.day]; + + // User has seen this treat today. + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + if ([[defaults objectForKey:kMPTreatLastSeenStampKey] isEqual:stamp]) + return; + + [defaults setObject:stamp forKey:kMPTreatLastSeenStampKey]; + NSArray *components = @[NSTemporaryDirectory(), key]; + NSURL *url = [NSURL fileURLWithPathComponents:components]; + [data[key] writeToURL:url atomically:NO]; + + // Make sure this is opened last and immediately visible. + NSDocumentController *c = [NSDocumentController sharedDocumentController]; + [[NSOperationQueue mainQueue] addOperationWithBlock:^{ + [c openDocumentWithContentsOfURL:url display:YES + completionHandler:MPDocumentOpenCompletionEmpty]; + }]; +} @interface MPMainController () @@ -26,7 +100,91 @@ @implementation MPMainController @synthesize preferencesWindowController = _preferencesWindowController; -- (MPPreferences *)prefereces +- (void)applicationDidFinishLaunching:(NSNotification *)notification +{ + // Using private API [WebCache setDisabled:YES] to disable WebView's cache + id webCacheClass = (id)NSClassFromString(@"WebCache"); + if (webCacheClass) { +// Ignoring "undeclared selector" warning +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wundeclared-selector" + BOOL setDisabledValue = YES; + NSMethodSignature *signature = [webCacheClass methodSignatureForSelector:@selector(setDisabled:)]; + NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature]; + invocation.selector = @selector(setDisabled:); + invocation.target = [webCacheClass class]; + [invocation setArgument:&setDisabledValue atIndex:2]; + [invocation invoke]; +#pragma clang diagnostic pop + } + [[NSAppleEventManager sharedAppleEventManager] + setEventHandler:self + andSelector:@selector(openUrlSchemeAppleEvent:withReplyEvent:) + forEventClass:kInternetEventClass andEventID:kAEGetURL]; +} + +// Open a file from a browser with url of the form : +// "x-macdown://open?url=file:///path/to/a/file&line=123&column=45" +- (void)openUrlSchemeAppleEvent:(NSAppleEventDescriptor *)event + withReplyEvent:(NSAppleEventDescriptor *)reply +{ + NSString *urlString = [[event paramDescriptorForKeyword:keyDirectObject] stringValue]; + if (!urlString) { + return; + } + NSURL *url = [[NSURL alloc] initWithString:urlString]; + if (!url) { + return; + } + NSURLComponents *urlComponents = [NSURLComponents componentsWithURL:url + resolvingAgainstBaseURL:NO]; + if (!urlComponents) { + return; + } + NSString *host = urlComponents.host; + if (!host || ![host isEqualToString:@"open"]) { + return; + } + NSArray *queryItems = urlComponents.queryItems; + if (!queryItems) { + return; + } + NSString *fileParam = [self valueForKey:@"url" fromQueryItems:queryItems]; + if (!fileParam) { + return; + } + // FIXME: Could not figure out how to place the insertion point at a given + // line and column. + /* Unused */ NSString *lineParam = [self valueForKey:@"line" + fromQueryItems:queryItems]; + /* Unused */ NSString *columnParam = [self valueForKey:@"column" + fromQueryItems:queryItems]; + NSLog(@"%@:%@:%@", fileParam, lineParam, columnParam); + + NSURL *target = [NSURL URLWithString:fileParam]; + if (!target) { + return; + } + NSDocumentController *c = [NSDocumentController sharedDocumentController]; + [c openDocumentWithContentsOfURL:target display:YES completionHandler: + ^(NSDocument *document, BOOL wasOpen, NSError *error) { + if (!document || wasOpen || error) + return; + NSRect frame = [NSScreen mainScreen].visibleFrame; + for (NSWindowController *wc in document.windowControllers) + [wc.window setFrame:frame display:YES]; + }]; + +} + +- (NSString *)valueForKey:(NSString *)key fromQueryItems:(NSArray *)queryItems +{ + NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name=%@", key]; + NSURLQueryItem *queryItem = [[queryItems filteredArrayUsingPredicate:predicate] firstObject]; + return queryItem.value; +} + +- (MPPreferences *)preferences { return [MPPreferences sharedInstance]; } @@ -40,6 +198,7 @@ - (NSWindowController *)preferencesWindowController [[MPMarkdownPreferencesViewController alloc] init], [[MPEditorPreferencesViewController alloc] init], [[MPHtmlPreferencesViewController alloc] init], + [[MPTerminalPreferencesViewController alloc] init], ]; NSString *title = NSLocalizedString(@"Preferences", @"Preferences window title."); @@ -58,27 +217,12 @@ - (IBAction)showPreferencesWindow:(id)sender - (IBAction)showHelp:(id)sender { - NSDocumentController *c = - [NSDocumentController sharedDocumentController]; - NSURL *source = [[NSBundle mainBundle] URLForResource:@"help" - withExtension:@"md"]; - NSURL *target = [NSURL fileURLWithPathComponents:@[NSTemporaryDirectory(), - @"help.md"]]; - BOOL ok = NO; - NSFileManager *manager = [NSFileManager defaultManager]; - [manager removeItemAtURL:target error:NULL]; - ok = [manager copyItemAtURL:source toURL:target error:NULL]; - if (ok) - { - [c openDocumentWithContentsOfURL:target display:YES completionHandler: - ^(NSDocument *document, BOOL wasOpen, NSError *error) { - if (!document || wasOpen || error) - return; - NSRect frame = [NSScreen mainScreen].visibleFrame; - for (NSWindowController *wc in document.windowControllers) - [wc.window setFrame:frame display:YES]; - }]; - } + MPOpenBundledFile(@"help", @"md"); +} + +- (IBAction)showContributing:(id)sender +{ + MPOpenBundledFile(@"contribute", @"md"); } @@ -93,9 +237,8 @@ - (instancetype)init NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; [center addObserver:self selector:@selector(showFirstLaunchTips) name:MPDidDetectFreshInstallationNotification - object:self.prefereces]; + object:self.preferences]; [self copyFiles]; - [self openPendingFiles]; return self; } @@ -104,7 +247,16 @@ - (instancetype)init - (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender { - return !self.prefereces.supressesUntitledDocumentOnLaunch; + if (self.preferences.filesToOpen.count || self.preferences.pipedContentFileToOpen) + return NO; + return !self.preferences.supressesUntitledDocumentOnLaunch; +} + +- (void)applicationDidBecomeActive:(NSNotification *)notification +{ + [self openPendingPipedContent]; + [self openPendingFiles]; + treat(); } @@ -112,7 +264,7 @@ - (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender - (NSString *)feedURLStringForUpdater:(SUUpdater *)updater { - if (self.prefereces.updateIncludesPreReleases) + if (self.preferences.updateIncludesPreReleases) return [NSBundle mainBundle].infoDictionary[@"SUBetaFeedURL"]; return [NSBundle mainBundle].infoDictionary[@"SUFeedURL"]; } @@ -160,22 +312,43 @@ - (void)copyFiles - (void)openPendingFiles { NSDocumentController *c = [NSDocumentController sharedDocumentController]; - for (NSString *path in self.prefereces.filesToOpenOnNextLaunch) + + for (NSString *path in self.preferences.filesToOpen) { - NSURL *url = [NSURL URLWithString:path]; + NSURL *url = [NSURL fileURLWithPath:path]; if ([url checkResourceIsReachableAndReturnError:NULL]) { [c openDocumentWithContentsOfURL:url display:YES - completionHandler:NULL]; + completionHandler:MPDocumentOpenCompletionEmpty]; } else { - NSDocument *doc = [c openUntitledDocumentAndDisplay:YES error:NULL]; - doc.draft = YES; - doc.fileURL = url; + [c createNewEmptyDocumentForURL:url display:YES error:NULL]; } } - self.prefereces.filesToOpenOnNextLaunch = nil; + + self.preferences.filesToOpen = nil; + [self.preferences synchronize]; +} + +- (void)openPendingPipedContent { + NSDocumentController *c = [NSDocumentController sharedDocumentController]; + + if (self.preferences.pipedContentFileToOpen) { + NSURL *pipedContentFileToOpenURL = [NSURL fileURLWithPath:self.preferences.pipedContentFileToOpen]; + NSError *readPipedContentError; + NSString *pipedContentString = [NSString stringWithContentsOfURL:pipedContentFileToOpenURL encoding:NSUTF8StringEncoding error:&readPipedContentError]; + + NSError *openDocumentError; + MPDocument *document = (MPDocument *)[c openUntitledDocumentAndDisplay:YES error:&openDocumentError]; + + if (document && openDocumentError == nil && readPipedContentError == nil) { + document.markdown = pipedContentString; + } + + self.preferences.pipedContentFileToOpen = nil; + [self.preferences synchronize]; + } } @@ -184,6 +357,7 @@ - (void)openPendingFiles - (void)showFirstLaunchTips { [self showHelp:nil]; + [self showContributing:nil]; } diff --git a/MacDown/Code/Application/MPPlugInController.h b/MacDown/Code/Application/MPPlugInController.h new file mode 100644 index 00000000..119375af --- /dev/null +++ b/MacDown/Code/Application/MPPlugInController.h @@ -0,0 +1,15 @@ +// +// MPPlugInController.h +// MacDown +// +// Created by Tzu-ping Chung on 02/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import + +@interface MPPlugInController : NSObject + +@property (weak) IBOutlet NSDocumentController *documentController; + +@end diff --git a/MacDown/Code/Application/MPPlugInController.m b/MacDown/Code/Application/MPPlugInController.m new file mode 100644 index 00000000..669bd392 --- /dev/null +++ b/MacDown/Code/Application/MPPlugInController.m @@ -0,0 +1,74 @@ +// +// MPPlugInController.m +// MacDown +// +// Created by Tzu-ping Chung on 02/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import "NSString+Lookup.h" +#import "MPPlugIn.h" +#import "MPPlugInController.h" +#import "MPUtilities.h" + + +@implementation MPPlugInController + +- (instancetype)init +{ + self = [super init]; + if (!self) + return nil; + + id q = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0); + dispatch_async(q, ^{ + for (MPPlugIn *plugin in [self buildPlugIns]) + [plugin plugInDidInitialize]; + }); + return self; +} + + +#pragma mark - NSMenuDelegate + +- (void)menuNeedsUpdate:(NSMenu *)menu +{ + [menu removeAllItems]; + for (MPPlugIn *plugin in [self buildPlugIns]) + { + NSMenuItem *item = [menu addItemWithTitle:plugin.name + action:@selector(invokePlugIn:) + keyEquivalent:@""]; + item.target = self; + item.representedObject = plugin; + } +} + + +#pragma mark - Private + +- (void)invokePlugIn:(NSMenuItem *)item +{ + MPPlugIn *plugin = item.representedObject; + if (![plugin run:item]) + NSLog(@"Failed to run plugin %@", plugin.name); +} + +- (NSArray *)buildPlugIns +{ + NSArray *paths = MPListEntriesForDirectory(kMPPlugInsDirectoryName, nil); + NSMutableArray *plugins = [NSMutableArray arrayWithCapacity:paths.count]; + for (NSString *path in paths) + { + if (![path hasExtension:kMPPlugInFileExtension]) + continue; + NSBundle *bundle = [NSBundle bundleWithPath:path]; + MPPlugIn *plugin = [[MPPlugIn alloc] initWithBundle:bundle]; + if (!plugin) + continue; + [plugins addObject:plugin]; + } + return [plugins copy]; +} + +@end diff --git a/MacDown/Code/Application/MPToolbarController.h b/MacDown/Code/Application/MPToolbarController.h new file mode 100644 index 00000000..96d43a17 --- /dev/null +++ b/MacDown/Code/Application/MPToolbarController.h @@ -0,0 +1,16 @@ +// +// MPToolbarController.h +// MacDown +// +// Created by Niklas Berglund on 2017-02-12. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import +#import "MPDocument.h" + +@interface MPToolbarController : NSObject + +@property (weak) IBOutlet MPDocument *document; + +@end diff --git a/MacDown/Code/Application/MPToolbarController.m b/MacDown/Code/Application/MPToolbarController.m new file mode 100644 index 00000000..a6caddd9 --- /dev/null +++ b/MacDown/Code/Application/MPToolbarController.m @@ -0,0 +1,302 @@ +// +// MPToolbarController.m +// MacDown +// +// Created by Niklas Berglund on 2017-02-12. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import "MPToolbarController.h" + +// Because we're creating selectors for methods which aren't in this class +#pragma GCC diagnostic ignored "-Wundeclared-selector" +#pragma clang diagnostic ignored "-Wundeclared-selector" + + +static CGFloat itemWidth = 37; + + +@implementation MPToolbarController +{ + NSArray *toolbarItems; + NSArray *toolbarItemIdentifiers; + + /** + * Map toolbar item identifier to it's NSToolbarItem or NSToolbarItemGroup object + */ + NSMutableDictionary *toolbarItemIdentifierObjectDictionary; +} + +- (id)init +{ + self = [super init]; + + if (!self) + { + return nil; + } + + self->toolbarItemIdentifierObjectDictionary = [NSMutableDictionary new]; + [self setupToolbarItems]; + + return self; +} + + +#pragma mark - Private + +- (void)setupToolbarItems +{ + // Set up layout drop down alternatives. title will be set in validateUserInterfaceItem: + NSMenuItem *toggleEditorMenuItem = [[NSMenuItem alloc] initWithTitle:@"" action:@selector(toggleEditorPane:) keyEquivalent:@"e"]; + NSMenuItem *togglePreviewMenuItem = [[NSMenuItem alloc] initWithTitle:@"" action:@selector(togglePreviewPane:) keyEquivalent:@"p"]; + + // Set up all available toolbar items + self->toolbarItems = @[ + [self toolbarItemGroupWithIdentifier:@"indent-group" separated:YES label:NSLocalizedString(@"Shift Left/Right", @"") items:@[ + [self toolbarItemWithIdentifier:@"shift-left" label:NSLocalizedString(@"Shift Left", @"Shift text to the left toolbar button") icon:@"ToolbarIconShiftLeft" action:@selector(unindent:)], + [self toolbarItemWithIdentifier:@"shift-right" label:NSLocalizedString(@"Shift Right", @"Shift text to the right toolbar button") icon:@"ToolbarIconShiftRight" action:@selector(indent:)] + ] + ], + [self toolbarItemGroupWithIdentifier:@"text-formatting-group" separated:NO label:NSLocalizedString(@"Text Styles", @"") items:@[ + [self toolbarItemWithIdentifier:@"bold" label:NSLocalizedString(@"Strong", @"Strong toolbar button") icon:@"ToolbarIconBold" action:@selector(toggleStrong:)], + [self toolbarItemWithIdentifier:@"italic" label:NSLocalizedString(@"Emphasize", @"Emphasize toolbar button") icon:@"ToolbarIconItalic" action:@selector(toggleEmphasis:)], + [self toolbarItemWithIdentifier:@"underline" label:NSLocalizedString(@"Underline", @"Underline toolbar button") icon:@"ToolbarIconUnderlined" action:@selector(toggleUnderline:)] + ] + ], + [self toolbarItemGroupWithIdentifier:@"heading-group" separated:NO label:NSLocalizedString(@"Headings", @"") items:@[ + [self toolbarItemWithIdentifier:@"heading1" label:NSLocalizedString(@"Heading 1", @"Heading 1 toolbar button") icon:@"ToolbarIconHeading1" action:@selector(convertToH1:)], + [self toolbarItemWithIdentifier:@"heading2" label:NSLocalizedString(@"Heading 2", @"Heading 2 toolbar button") icon:@"ToolbarIconHeading2" action:@selector(convertToH2:)], + [self toolbarItemWithIdentifier:@"heading3" label:NSLocalizedString(@"Heading 3", @"Heading 3 toolbar button") icon:@"ToolbarIconHeading3" action:@selector(convertToH3:)] + ] + ], + [self toolbarItemGroupWithIdentifier:@"list-group" separated:YES label:NSLocalizedString(@"Ordered/Unordered List", @"") items:@[ + [self toolbarItemWithIdentifier:@"unordered-list" label:NSLocalizedString(@"Unordered List", @"Unordered list toolbar button") icon:@"ToolbarIconUnorderedList" action:@selector(toggleUnorderedList:)], + [self toolbarItemWithIdentifier:@"ordered-list" label:NSLocalizedString(@"Ordered List", @"Ordered list toolbar button") icon:@"ToolbarIconOrderedList" action:@selector(toggleOrderedList:)] + ] + ], + [self toolbarItemWithIdentifier:@"blockquote" label:NSLocalizedString(@"Blockquote", @"Blockquote toolbar button") icon:@"ToolbarIconBlockquote" action:@selector(toggleBlockquote:)], + [self toolbarItemWithIdentifier:@"code" label:NSLocalizedString(@"Inline Code", @"Inline code toolbar button") icon:@"ToolbarIconInlineCode" action:@selector(toggleInlineCode:)], + [self toolbarItemWithIdentifier:@"link" label:NSLocalizedString(@"Link", @"Link toolbar button") icon:@"ToolbarIconLink" action:@selector(toggleLink:)], + [self toolbarItemWithIdentifier:@"image" label:NSLocalizedString(@"Image", @"Image toolbar button") icon:@"ToolbarIconImage" action:@selector(toggleImage:)], + [self toolbarItemWithIdentifier:@"copy-html" label:NSLocalizedString(@"Copy HTML", @"Copy HTML toolbar button") icon:@"ToolbarIconCopyHTML" action:@selector(copyHtml:)], + [self toolbarItemWithIdentifier:@"comment" label:NSLocalizedString(@"Comment", @"Comment toolbar button") icon:@"ToolbarIconComment" action:@selector(toggleComment:)], + [self toolbarItemWithIdentifier:@"highlight" label:NSLocalizedString(@"Highlight", @"Highlight toolbar button") icon:@"ToolbarIconHighlight" action:@selector(toggleHighlight:)], + [self toolbarItemWithIdentifier:@"strikethrough" label:NSLocalizedString(@"Strikethrough", @"Strikethrough toolbar button") icon:@"ToolbarIconStrikethrough" action:@selector(toggleStrikethrough:)], + [self toolbarItemDropDownWithIdentifier:@"layout" label:NSLocalizedString(@"Layout", @"Layout toolbar button") icon:@"ToolbarIconEditorAndPreview" menuItems: + @[ + toggleEditorMenuItem, togglePreviewMenuItem + ] + ] + ]; + + self->toolbarItemIdentifiers = [self toolbarItemIdentifiersFromItemsArray:self->toolbarItems]; +} + +/** + * Returns an array with all item identifiers for the toolbar items in the passed in _toolbarItemsArray_. + */ +- (NSArray *)toolbarItemIdentifiersFromItemsArray:(NSArray *)toolbarItemsArray { + NSMutableArray *orderedIdentifiers = [NSMutableArray new]; + + for (NSToolbarItem *item in self->toolbarItems) { + [orderedIdentifiers addObject:item.itemIdentifier]; + } + + return [orderedIdentifiers copy]; +} + +- (void)selectedToolbarItemGroupItem:(NSSegmentedControl *)sender +{ + NSInteger selectedIndex = sender.selectedSegment; + + NSToolbarItemGroup *selectedGroup = self->toolbarItemIdentifierObjectDictionary[sender.identifier]; + NSToolbarItem *selectedItem = selectedGroup.subitems[selectedIndex]; + + // Invoke the toolbar item's action + // Must convert to IMP to let the compiler know about the method definition + MPDocument *document = self.document; + IMP imp = [document methodForSelector:selectedItem.action]; + void (*impFunc)(id) = (void *)imp; + impFunc(document); +} + + +#pragma mark - NSToolbarDelegate +- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar +{ + // From toolbar item dictionary(setupToolbarItems) + //NSArray *orderedToolbarItemIdentifiers = [self orderedToolbarDefaultItemKeysForDictionary:self->toolbarItems]; + NSArray *orderedToolbarItemIdentifiers = [self toolbarItemIdentifiersFromItemsArray:self->toolbarItems]; + + // Mixed identifiers from dictionary and space at below specified indices + NSMutableArray *defaultItemIdentifiers = [NSMutableArray new]; + + // Add space after the specified toolbar item indices + int spaceAfterIndices[] = {}; // No space in the default set + int flexibleSpaceAfterIndices[] = {2, 3, 5, 7, 11}; + int i = 0; + int j = 0; + int k = 0; + + for (NSString *itemIdentifier in orderedToolbarItemIdentifiers) + { + // exclude some toolbar items from the default toolbar + if ([itemIdentifier isEqual: @"comment"] + || [itemIdentifier isEqual: @"highlight"] + || [itemIdentifier isEqual: @"strikethrough"]) { + // do nothing here + }else { + [defaultItemIdentifiers addObject:itemIdentifier]; + } + + if (i == spaceAfterIndices[j]) + { + [defaultItemIdentifiers addObject:NSToolbarSpaceItemIdentifier]; + j++; + } + + if (i == flexibleSpaceAfterIndices[k]) + { + [defaultItemIdentifiers addObject:NSToolbarFlexibleSpaceItemIdentifier]; + k++; + } + + i++; + } + + return [defaultItemIdentifiers copy]; +} + +- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar +{ + return self->toolbarItemIdentifiers; +} + +- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar +{ + return [self toolbarAllowedItemIdentifiers:toolbar]; +} + +- (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag +{ + NSToolbarItem *item; + + for (NSToolbarItem *currentItem in self->toolbarItems) { + if ([currentItem.itemIdentifier isEqualToString:itemIdentifier]) { + item = currentItem; + break; + } + } + + return item; +} + + +#pragma mark - Toolbar item factory methods + +/** + * Factory method for creating and configuring a NSToolbarItemGroup object. + */ +- (NSToolbarItemGroup *)toolbarItemGroupWithIdentifier:(NSString *)itemIdentifier separated:(BOOL)separated label:(NSString *)label items:(NSArray *)items { + NSToolbarItemGroup *itemGroup = [[NSToolbarItemGroup alloc] initWithItemIdentifier:itemIdentifier]; + itemGroup.subitems = items; + itemGroup.label = label; + itemGroup.paletteLabel = label; + + CGFloat itemGroupWidth = itemWidth * items.count; + + NSSegmentedControl *segmentedControl = [[NSSegmentedControl alloc] init]; + segmentedControl.identifier = itemIdentifier; + segmentedControl.segmentStyle = separated ? NSSegmentStyleSeparated : NSSegmentStyleTexturedRounded; + segmentedControl.trackingMode = NSSegmentSwitchTrackingMomentary; + segmentedControl.segmentCount = items.count; + segmentedControl.target = self; + segmentedControl.action = @selector(selectedToolbarItemGroupItem:); + + int segmentIndex = 0; + + for (NSToolbarItem *subItem in items) + { + [segmentedControl setImage:subItem.image forSegment:segmentIndex]; + [segmentedControl setImageScaling:NSImageScaleProportionallyDown forSegment:segmentIndex]; + [segmentedControl setWidth:itemWidth-4 forSegment:segmentIndex]; + if (@available(macOS 10.13, *)) { + [segmentedControl setToolTip:subItem.label forSegment:segmentIndex]; + } + + segmentIndex++; + } + + itemGroup.maxSize = NSMakeSize(itemGroupWidth, 25); + itemGroup.view = segmentedControl; + + [self->toolbarItemIdentifierObjectDictionary setObject:itemGroup forKey:itemIdentifier]; + + return itemGroup; +} + +/** + * Factory method for creating and configuring a NSToolbarItem object. + */ +- (NSToolbarItem *)toolbarItemWithIdentifier:(NSString *)itemIdentifier label:(NSString *)label icon:(NSString *)iconImageName action:(SEL)action { + NSToolbarItem *toolbarItem = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; + toolbarItem.label = label; + toolbarItem.paletteLabel = label; + toolbarItem.toolTip = label; + + NSImage *itemImage = [NSImage imageNamed:iconImageName]; + [itemImage setTemplate:YES]; + [itemImage setSize:CGSizeMake(19, 19)]; + NSButton *itemButton = [[NSButton alloc] initWithFrame:NSMakeRect(0, 0, itemWidth, 27)]; + itemButton.image = itemImage; + itemButton.imageScaling = NSImageScaleProportionallyDown; + itemButton.bezelStyle = NSBezelStyleTexturedRounded; + itemButton.focusRingType = NSFocusRingTypeDefault; + itemButton.target = self.document; + itemButton.action = action; + + toolbarItem.view = itemButton; + + [self->toolbarItemIdentifierObjectDictionary setObject:toolbarItem forKey:itemIdentifier]; + + return toolbarItem; +} + +/** + * Factory method for creating and configuring a NSToolbarItem object with a NSPopupButton holding menu options as passed in the menuItems parameter. + */ +- (NSToolbarItem *)toolbarItemDropDownWithIdentifier:(NSString *)itemIdentifier label:(NSString *)label icon:(NSString *)iconImageName menuItems:(NSArray *)menuItems { + NSToolbarItem *toolbarItem = [[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier]; + toolbarItem.label = label; + toolbarItem.paletteLabel = label; + toolbarItem.toolTip = label; + + NSImage *itemImage = [NSImage imageNamed:iconImageName]; + [itemImage setTemplate:YES]; + [itemImage setSize:CGSizeMake(19, 19)]; + + NSPopUpButton *popupButton = [[NSPopUpButton alloc] initWithFrame:NSMakeRect(0, 0, 42, 27) pullsDown:YES]; + popupButton.bezelStyle = NSBezelStyleTexturedRounded; + popupButton.focusRingType = NSFocusRingTypeDefault; + //popupButton.imageScaling = NSImageScaleProportionallyDown; + + // First item's image is displayed as button image, therefor we need a dummy with the icon + [popupButton addItemWithTitle:@""]; + [[popupButton lastItem] setImage:itemImage]; + + for (NSMenuItem *menuItem in menuItems) { + [popupButton addItemWithTitle:menuItem.title]; + [[popupButton lastItem] setTarget:self.document]; + [[popupButton lastItem] setAction:menuItem.action]; + } + + toolbarItem.view = popupButton; + + [self->toolbarItemIdentifierObjectDictionary setObject:toolbarItem forKey:itemIdentifier]; + + return toolbarItem; +} + + +@end diff --git a/MacDown/Code/Document/MPAsset.m b/MacDown/Code/Document/MPAsset.m index 0b7b3245..4e3d92ff 100644 --- a/MacDown/Code/Document/MPAsset.m +++ b/MacDown/Code/Document/MPAsset.m @@ -11,6 +11,7 @@ #import "MPUtilities.h" +NSString * const kMPPlainType = @"text/plain"; NSString * const kMPCSSType = @"text/css"; NSString * const kMPJavaScriptType = @"text/javascript"; NSString * const kMPMathJaxConfigType = @"text/x-mathjax-config"; @@ -18,12 +19,24 @@ @interface MPAsset () @property (strong) NSURL *url; -@property (copy) NSString *typeName; +@property (copy, nonatomic) NSString *typeName; +@property (readonly) NSString *defaultTypeName; @end @implementation MPAsset +- (NSString *)typeName +{ + return _typeName ? _typeName : self.defaultTypeName; +} + +- (NSString *)defaultTypeName +{ + return kMPPlainType; +} + + + (instancetype)assetWithURL:(NSURL *)url andType:(NSString *)typeName { return [[self alloc] initWithURL:url andType:typeName]; @@ -41,7 +54,7 @@ - (instancetype)initWithURL:(NSURL *)url andType:(NSString *)typeName - (instancetype)init { - return [self initWithURL:nil andType:@"text/plain"]; + return [self initWithURL:nil andType:nil]; } - (NSString *)templateForOption:(MPAssetOption)option @@ -92,6 +105,11 @@ - (NSString *)htmlForOption:(MPAssetOption)option @implementation MPStyleSheet +- (NSString *)defaultTypeName +{ + return kMPCSSType; +} + + (instancetype)CSSWithURL:(NSURL *)url { return [super assetWithURL:url andType:kMPCSSType]; @@ -125,6 +143,11 @@ - (NSString *)templateForOption:(MPAssetOption)option @implementation MPScript +- (NSString *)defaultTypeName +{ + return kMPJavaScriptType; +} + + (instancetype)javaScriptWithURL:(NSURL *)url { return [super assetWithURL:url andType:kMPJavaScriptType]; diff --git a/MacDown/Code/Document/MPDocument.h b/MacDown/Code/Document/MPDocument.h index e6bf9efc..387f4675 100644 --- a/MacDown/Code/Document/MPDocument.h +++ b/MacDown/Code/Document/MPDocument.h @@ -13,7 +13,10 @@ @interface MPDocument : NSDocument @property (nonatomic, readonly) MPPreferences *preferences; +@property (readonly) BOOL previewVisible; +@property (readonly) BOOL editorVisible; -- (IBAction)toggleTOCRendering:(id)sender; +@property (nonatomic, readwrite) NSString *markdown; +@property (nonatomic, readonly) NSString *html; @end diff --git a/MacDown/Code/Document/MPDocument.m b/MacDown/Code/Document/MPDocument.m index cc8155be..acbc77ff 100644 --- a/MacDown/Code/Document/MPDocument.m +++ b/MacDown/Code/Document/MPDocument.m @@ -15,8 +15,11 @@ #import "MPUtilities.h" #import "MPAutosaving.h" #import "NSColor+HTML.h" +#import "NSDocumentController+Document.h" +#import "NSPasteboard+Types.h" #import "NSString+Lookup.h" #import "NSTextView+Autocomplete.h" +#import "DOMNode+Text.h" #import "MPPreferences.h" #import "MPDocumentSplitView.h" #import "MPEditorView.h" @@ -25,12 +28,14 @@ #import "MPEditorPreferencesViewController.h" #import "MPExportPanelAccessoryViewController.h" #import "MPMathJaxListener.h" +#import "WebView+WebViewPrivateHeaders.h" +#import "MPToolbarController.h" +#import +static NSString * const kMPDefaultAutosaveName = @"Untitled"; -static NSString * const kMPRendersTOCPropertyKey = @"Renders TOC"; - -static NSString *MPEditorPreferenceKeyWithValueKey(NSString *key) +NS_INLINE NSString *MPEditorPreferenceKeyWithValueKey(NSString *key) { if (!key.length) return @"editor"; @@ -39,7 +44,7 @@ return [NSString stringWithFormat:@"editor%@%@", first, rest]; } -static NSDictionary *MPEditorKeysToObserve() +NS_INLINE NSDictionary *MPEditorKeysToObserve() { static NSDictionary *keys = nil; static dispatch_once_t token; @@ -56,7 +61,7 @@ return keys; } -static NSSet *MPEditorPreferencesToObserve() +NS_INLINE NSSet *MPEditorPreferencesToObserve() { static NSSet *keys = nil; static dispatch_once_t token; @@ -72,28 +77,47 @@ return keys; } -static NSString *MPAutosavePropertyKey( - id object, NSString *propertyName) +NS_INLINE NSString *MPRectStringForAutosaveName(NSString *name) +{ + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + NSString *key = [NSString stringWithFormat:@"NSWindow Frame %@", name]; + NSString *rectString = [defaults objectForKey:key]; + return rectString; +} + +NS_INLINE NSColor *MPGetWebViewBackgroundColor(WebView *webview) +{ + DOMDocument *doc = webview.mainFrameDocument; + DOMNodeList *nodes = [doc getElementsByTagName:@"body"]; + if (!nodes.length) + return nil; + + id bodyNode = [nodes item:0]; + DOMCSSStyleDeclaration *style = [doc getComputedStyle:bodyNode + pseudoElement:nil]; + return [NSColor colorWithHTMLName:[style backgroundColor]]; +} + + +@implementation NSURL (Convert) + +- (NSString *)absoluteBaseURLString { - NSString *className = NSStringFromClass([object class]); - return [NSString stringWithFormat:@"%@ %@ %@", className, propertyName, - object.autosaveName]; + // Remove fragment (#anchor) and query string. + NSString *base = self.absoluteString; + base = [base componentsSeparatedByString:@"?"].firstObject; + base = [base componentsSeparatedByString:@"#"].firstObject; + return base; } +@end + -@implementation NSString (WordCount) +@implementation WebView (Shortcut) -- (NSUInteger)numberOfWords +- (NSScrollView *)enclosingScrollView { - __block NSUInteger count = 0; - NSStringEnumerationOptions options = - NSStringEnumerationByWords | NSStringEnumerationSubstringNotRequired; - [self enumerateSubstringsInRange:NSMakeRange(0, self.length) - options:options usingBlock: - ^(NSString *str, NSRange strRange, NSRange enclosingRange, BOOL *stop) { - count++; - }]; - return count; + return self.mainFrame.frameView.documentView.enclosingScrollView; } @end @@ -135,47 +159,22 @@ - (int)rendererFlags int flags = 0; if (self.htmlTaskList) flags |= HOEDOWN_HTML_USE_TASK_LIST; + if (self.htmlLineNumbers) + flags |= HOEDOWN_HTML_BLOCKCODE_LINE_NUMBERS; if (self.htmlHardWrap) flags |= HOEDOWN_HTML_HARD_WRAP; + if (self.htmlCodeBlockAccessory == MPCodeBlockAccessoryCustom) + flags |= HOEDOWN_HTML_BLOCKCODE_INFORMATION; return flags; } @end -@implementation DOMNode (Text) - -- (NSString *)nodeText -{ - NSMutableString *text = [NSMutableString string]; - switch (self.nodeType) - { - case 1: - case 9: - case 11: - if ([self respondsToSelector:@selector(tagName)]) - { - NSString *tagName = [(id)self tagName].uppercaseString; - if ([tagName isEqualToString:@"SCRIPT"] - || [tagName isEqualToString:@"STYLE"] - || [tagName isEqualToString:@"HEAD"]) - break; - } - for (DOMNode *c = self.firstChild; c; c = c.nextSibling) - [text appendString:c.nodeText]; - break; - case 3: - case 4: - return self.nodeValue; - default: - break; - } - return text; -} - -@end - @interface MPDocument () = 101100 + WebEditingDelegate, WebFrameLoadDelegate, WebPolicyDelegate, WebResourceLoadDelegate, +#endif MPAutosaving, MPRendererDataSource, MPRendererDelegate> typedef NS_ENUM(NSUInteger, MPWordCountType) { @@ -184,12 +183,14 @@ typedef NS_ENUM(NSUInteger, MPWordCountType) { MPWordCountTypeCharacterNoSpaces, }; +@property (weak) IBOutlet NSToolbar *toolbar; @property (weak) IBOutlet MPDocumentSplitView *splitView; @property (weak) IBOutlet NSView *editorContainer; @property (unsafe_unretained) IBOutlet MPEditorView *editor; @property (weak) IBOutlet NSLayoutConstraint *editorPaddingBottom; @property (weak) IBOutlet WebView *preview; @property (weak) IBOutlet NSPopUpButton *wordCountWidget; +@property (strong) IBOutlet MPToolbarController *toolbarController; @property (copy, nonatomic) NSString *autosaveName; @property (strong) HGMarkdownHighlighter *highlighter; @property (strong) MPRenderer *renderer; @@ -198,9 +199,9 @@ typedef NS_ENUM(NSUInteger, MPWordCountType) { @property BOOL copying; @property BOOL printing; @property BOOL shouldHandleBoundsChange; -@property (nonatomic) BOOL rendersTOC; -@property (readonly) BOOL previewVisible; -@property (readonly) BOOL editorVisible; +@property BOOL isPreviewReady; +@property (strong) NSURL *currentBaseUrl; +@property CGFloat lastPreviewScrollTop; @property (nonatomic, readonly) BOOL needsHtml; @property (nonatomic) NSUInteger totalWords; @property (nonatomic) NSUInteger totalCharacters; @@ -208,11 +209,19 @@ typedef NS_ENUM(NSUInteger, MPWordCountType) { @property (strong) NSMenuItem *wordsMenuItem; @property (strong) NSMenuItem *charMenuItem; @property (strong) NSMenuItem *charNoSpacesMenuItem; +@property (nonatomic) BOOL needsToUnregister; +@property (nonatomic) BOOL alreadyRenderingInWeb; +@property (nonatomic) BOOL renderToWebPending; +@property (strong) NSArray *webViewHeaderLocations; +@property (strong) NSArray *editorHeaderLocations; +@property (nonatomic) BOOL inLiveScroll; // Store file content in initializer until nib is loaded. @property (copy) NSString *loadedString; +- (void)scaleWebview; - (void)syncScrollers; +-(void) updateHeaderLocations; @end @@ -220,12 +229,25 @@ static void (^MPGetPreviewLoadingCompletionHandler(MPDocument *doc))() { __weak MPDocument *weakObj = doc; return ^{ - NSWindow *window = weakObj.preview.window; + WebView *webView = weakObj.preview; + NSWindow *window = webView.window; @synchronized(window) { if (window.isFlushWindowDisabled) [window enableFlushWindow]; } - [weakObj syncScrollers]; + [weakObj scaleWebview]; + if (weakObj.preferences.editorSyncScrolling) + { + [weakObj updateHeaderLocations]; + [weakObj syncScrollers]; + } + else + { + NSClipView *contentView = webView.enclosingScrollView.contentView; + NSRect bounds = contentView.bounds; + bounds.origin.y = weakObj.lastPreviewScrollTop; + contentView.bounds = bounds; + } }; } @@ -239,6 +261,26 @@ - (MPPreferences *)preferences return [MPPreferences sharedInstance]; } +- (NSString *)markdown +{ + return self.editor.string; +} + +- (void)setMarkdown:(NSString *)markdown +{ + self.editor.string = markdown; +} + +- (NSString *)html +{ + return self.renderer.currentHtml; +} + +- (BOOL)toolbarVisible +{ + return self.windowForSheet.toolbar.visible; +} + - (BOOL)previewVisible { return (self.preview.frame.size.width != 0.0); @@ -293,19 +335,6 @@ - (void)setAutosaveName:(NSString *)autosaveName self.splitView.autosaveName = autosaveName; } -- (BOOL)rendersTOC -{ - NSString *key = MPAutosavePropertyKey(self, kMPRendersTOCPropertyKey); - BOOL value = [[NSUserDefaults standardUserDefaults] boolForKey:key]; - return value; -} - -- (void)setRendersTOC:(BOOL)rendersTOC -{ - NSString *key = MPAutosavePropertyKey(self, kMPRendersTOCPropertyKey); - [[NSUserDefaults standardUserDefaults] setBool:rendersTOC forKey:key]; -} - #pragma mark - Override @@ -315,8 +344,10 @@ - (instancetype)init if (!self) return nil; + self.isPreviewReady = NO; self.shouldHandleBoundsChange = YES; self.previousSplitRatio = -1.0; + return self; } @@ -332,7 +363,7 @@ - (void)windowControllerDidLoadNib:(NSWindowController *)controller NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; // All files use their absolute path to keep their window states. - NSString *autosaveName = @"Untitled"; + NSString *autosaveName = kMPDefaultAutosaveName; if (self.fileURL) autosaveName = self.fileURL.absoluteString; controller.window.frameAutosaveName = autosaveName; @@ -340,21 +371,19 @@ - (void)windowControllerDidLoadNib:(NSWindowController *)controller // Perform initial resizing manually because for some reason untitled // documents do not pick up the autosaved frame automatically in 10.10. - NSString *key = - [NSString stringWithFormat:@"NSWindow Frame %@", autosaveName]; - NSString *rectString = [defaults objectForKey:key]; - [controller.window setFrameFromString:rectString]; + NSString *rectString = MPRectStringForAutosaveName(autosaveName); + if (!rectString) + rectString = MPRectStringForAutosaveName(kMPDefaultAutosaveName); + if (rectString) + [controller.window setFrameFromString:rectString]; self.highlighter = [[HGMarkdownHighlighter alloc] initWithTextView:self.editor - waitInterval:0.1]; + waitInterval:0.0]; self.renderer = [[MPRenderer alloc] init]; self.renderer.dataSource = self; self.renderer.delegate = self; - [self setupEditor:nil]; - [self redrawDivider]; - for (NSString *key in MPEditorPreferencesToObserve()) { [defaults addObserver:self forKeyPath:key @@ -366,32 +395,42 @@ - (void)windowControllerDidLoadNib:(NSWindowController *)controller options:NSKeyValueObservingOptionNew context:NULL]; } + self.editor.postsFrameChangedNotifications = YES; self.preview.frameLoadDelegate = self; self.preview.policyDelegate = self; self.preview.editingDelegate = self; + self.preview.resourceLoadDelegate = self; NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; - [center addObserver:self selector:@selector(textDidChange:) + [center addObserver:self selector:@selector(editorTextDidChange:) name:NSTextDidChangeNotification object:self.editor]; [center addObserver:self selector:@selector(userDefaultsDidChange:) name:NSUserDefaultsDidChangeNotification object:[NSUserDefaults standardUserDefaults]]; - [center addObserver:self selector:@selector(boundsDidChange:) + [center addObserver:self selector:@selector(editorBoundsDidChange:) name:NSViewBoundsDidChangeNotification object:self.editor.enclosingScrollView.contentView]; + [center addObserver:self selector:@selector(editorFrameDidChange:) + name:NSViewFrameDidChangeNotification object:self.editor]; [center addObserver:self selector:@selector(didRequestEditorReload:) name:MPDidRequestEditorSetupNotification object:nil]; [center addObserver:self selector:@selector(didRequestPreviewReload:) name:MPDidRequestPreviewRenderNotification object:nil]; - - if (self.loadedString) + [center addObserver:self selector:@selector(willStartLiveScroll:) + name:NSScrollViewWillStartLiveScrollNotification + object:self.editor.enclosingScrollView]; + [center addObserver:self selector:@selector(didEndLiveScroll:) + name:NSScrollViewDidEndLiveScrollNotification + object:self.editor.enclosingScrollView]; + if (kCFCoreFoundationVersionNumber >= kCFCoreFoundationVersionNumber10_9) { - self.editor.string = self.loadedString; - self.loadedString = nil; - [self.renderer parseAndRenderNow]; - [self.highlighter parseAndHighlightNow]; + [center addObserver:self selector:@selector(previewDidLiveScroll:) + name:NSScrollViewDidEndLiveScrollNotification + object:self.preview.enclosingScrollView]; } + self.needsToUnregister = YES; + self.wordsMenuItem = [[NSMenuItem alloc] initWithTitle:@"" action:NULL keyEquivalent:@""]; self.charMenuItem = [[NSMenuItem alloc] initWithTitle:@"" action:NULL @@ -408,48 +447,56 @@ - (void)windowControllerDidLoadNib:(NSWindowController *)controller [wordCountWidget selectItemAtIndex:self.preferences.editorWordCountType]; wordCountWidget.alphaValue = 0.9; wordCountWidget.hidden = !self.preferences.editorShowWordCount; + wordCountWidget.enabled = NO; + + // These needs to be queued until after the window is shown, so that editor + // can have the correct dimention for size-limiting and stuff. See + // https://github.com/uranusjr/macdown/issues/236 + [[NSOperationQueue mainQueue] addOperationWithBlock:^{ + [self setupEditor:nil]; + [self redrawDivider]; + [self reloadFromLoadedString]; + }]; } -- (void)canCloseDocumentWithDelegate:(id)delegate - shouldCloseSelector:(SEL)selector contextInfo:(void *)context +- (void)reloadFromLoadedString { - selector = @selector(document:shouldClose:contextInfo:); - [super canCloseDocumentWithDelegate:delegate shouldCloseSelector:selector - contextInfo:context]; + if (self.loadedString && self.editor && self.renderer && self.highlighter) + { + self.editor.string = self.loadedString; + self.loadedString = nil; + [self.renderer parseAndRenderNow]; + [self.highlighter parseAndHighlightNow]; + } } -- (void)document:(NSDocument *)doc shouldClose:(BOOL)shouldClose - contextInfo:(void *)contextInfo +- (void)close { - if (!shouldClose) - return; + if (self.needsToUnregister) + { + // Close can be called multiple times, but this can only be done once. + // http://www.cocoabuilder.com/archive/cocoa/240166-nsdocument-close-method-calls-itself.html + self.needsToUnregister = NO; - // Need to cleanup these so that callbacks won't crash the app. - [self.highlighter deactivate]; - self.highlighter.targetTextView = nil; - self.highlighter = nil; - self.renderer = nil; - self.preview.frameLoadDelegate = nil; - self.preview.policyDelegate = nil; + // Need to cleanup these so that callbacks won't crash the app. + [self.highlighter deactivate]; + self.highlighter.targetTextView = nil; + self.highlighter = nil; + self.renderer = nil; + self.preview.frameLoadDelegate = nil; + self.preview.policyDelegate = nil; - NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; - [center removeObserver:self name:NSTextDidChangeNotification - object:self.editor]; - [center removeObserver:self name:NSUserDefaultsDidChangeNotification - object:[NSUserDefaults standardUserDefaults]]; - [center removeObserver:self name:NSViewBoundsDidChangeNotification - object:self.editor.enclosingScrollView.contentView]; - [center removeObserver:self name:MPDidRequestPreviewRenderNotification - object:nil]; - [center removeObserver:self name:MPDidRequestEditorSetupNotification - object:nil]; - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - for (NSString *key in MPEditorPreferencesToObserve()) - [defaults removeObserver:self forKeyPath:key]; - for (NSString *key in MPEditorKeysToObserve()) - [self.editor removeObserver:self forKeyPath:key]; + [[NSNotificationCenter defaultCenter] removeObserver:self]; + + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + + for (NSString *key in MPEditorPreferencesToObserve()) + [defaults removeObserver:self forKeyPath:key]; + for (NSString *key in MPEditorKeysToObserve()) + [self.editor removeObserver:self forKeyPath:key]; + } - [self close]; + [super close]; } + (BOOL)autosavesInPlace @@ -462,6 +509,16 @@ + (NSArray *)writableTypes return @[@"net.daringfireball.markdown"]; } +- (BOOL)isDocumentEdited +{ + // Prevent save dialog on an unnamed, empty document. The file will still + // show as modified (because it is), but no save dialog will be presented + // when the user closes it. + if (!self.presentedItemURL && !self.editor.string.length) + return NO; + return [super isDocumentEdited]; +} + - (BOOL)writeToURL:(NSURL *)url ofType:(NSString *)typeName error:(NSError *__autoreleasing *)outError { @@ -494,18 +551,56 @@ - (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName return NO; self.loadedString = content; + [self reloadFromLoadedString]; return YES; } - (BOOL)prepareSavePanel:(NSSavePanel *)savePanel { - NSString *fileName = self.presumedFileName; - if (fileName) + savePanel.extensionHidden = NO; + if (self.fileURL && self.fileURL.isFileURL) + { + NSString *path = self.fileURL.path; + + // Use path of parent directory if this is a file. Otherwise this is it. + BOOL isDir = NO; + BOOL exists = [[NSFileManager defaultManager] fileExistsAtPath:path + isDirectory:&isDir]; + if (!exists || !isDir) + path = [path stringByDeletingLastPathComponent]; + + savePanel.directoryURL = [NSURL fileURLWithPath:path]; + } + else { - fileName = [fileName stringByAppendingPathExtension:@"md"]; - savePanel.nameFieldStringValue = fileName; + // Suggest a file name for new documents. + NSString *fileName = self.presumedFileName; + if (fileName && ![fileName hasExtension:@"md"]) + { + fileName = [fileName stringByAppendingPathExtension:@"md"]; + savePanel.nameFieldStringValue = fileName; + } } - savePanel.allowedFileTypes = nil; // Allow all extensions. + + // Get supported extensions from plist + static NSMutableArray *supportedExtensions = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + supportedExtensions = [NSMutableArray array]; + NSDictionary *infoDict = [NSBundle mainBundle].infoDictionary; + for (NSDictionary *docType in infoDict[@"CFBundleDocumentTypes"]) + { + NSArray *exts = docType[@"CFBundleTypeExtensions"]; + if (exts.count) + { + [supportedExtensions addObjectsFromArray:exts]; + } + } + }); + + savePanel.allowedFileTypes = supportedExtensions; + savePanel.allowsOtherFileTypes = YES; // Allow all extensions. + return [super prepareSavePanel:savePanel]; } @@ -560,7 +655,16 @@ - (BOOL)validateUserInterfaceItem:(id)item { BOOL result = [super validateUserInterfaceItem:item]; SEL action = item.action; - if (action == @selector(togglePreivewPane:)) + if (action == @selector(toggleToolbar:)) + { + NSMenuItem *it = ((NSMenuItem *)item); + it.title = self.toolbarVisible ? + NSLocalizedString(@"Hide Toolbar", + @"Toggle reveal toolbar") : + NSLocalizedString(@"Show Toolbar", + @"Toggle reveal toolbar"); + } + else if (action == @selector(togglePreviewPane:)) { NSMenuItem *it = ((NSMenuItem *)item); it.hidden = (!self.previewVisible && self.previousSplitRatio < 0.0); @@ -580,11 +684,6 @@ - (BOOL)validateUserInterfaceItem:(id)item NSLocalizedString(@"Restore Editor Pane", @"Toggle editor pane menu item"); } - else if (action == @selector(toggleTOCRendering:)) - { - NSInteger state = self.rendersTOC ? NSOnState : NSOffState; - ((NSMenuItem *)item).state = state; - } return result; } @@ -594,6 +693,7 @@ - (BOOL)validateUserInterfaceItem:(id)item - (void)splitViewDidResizeSubviews:(NSNotification *)notification { [self redrawDivider]; + self.editor.editable = self.editorVisible; } @@ -603,6 +703,8 @@ - (BOOL)textView:(NSTextView *)textView doCommandBySelector:(SEL)commandSelector { if (commandSelector == @selector(insertTab:)) return ![self textViewShouldInsertTab:textView]; + else if (commandSelector == @selector(insertBacktab:)) + return ![self textViewShouldInsertBacktab:textView]; else if (commandSelector == @selector(insertNewline:)) return ![self textViewShouldInsertNewline:textView]; else if (commandSelector == @selector(deleteBackward:)) @@ -627,10 +729,20 @@ - (BOOL)textView:(NSTextView *)textView shouldChangeTextInRange:(NSRange)range strikethroughEnabled:strikethrough]) return NO; } + + // For every change, set the typing attributes + if (range.location > 0) { + NSRange prevRange = range; + prevRange.location -= 1; + prevRange.length = 1; + + NSDictionary *attr = [[textView attributedString] fontAttributesInRange:prevRange]; + [textView setTypingAttributes:attr]; + } + return YES; } - #pragma mark - Fake NSTextViewDelegate - (BOOL)textViewShouldInsertTab:(NSTextView *)textView @@ -648,14 +760,22 @@ - (BOOL)textViewShouldInsertTab:(NSTextView *)textView return YES; } +- (BOOL)textViewShouldInsertBacktab:(NSTextView *)textView +{ + [self unindent:nil]; + return NO; +} + - (BOOL)textViewShouldInsertNewline:(NSTextView *)textView { if ([textView insertMappedContent]) return NO; - if ([textView completeNextListItem: + + BOOL inserts = self.preferences.editorInsertPrefixInBlock; + if (inserts && [textView completeNextListItem: self.preferences.editorAutoIncrementNumberedLists]) return NO; - if ([textView completeNextBlockquoteLine]) + if (inserts && [textView completeNextBlockquoteLine]) return NO; if ([textView completeNextIndentedLine]) return NO; @@ -664,15 +784,16 @@ - (BOOL)textViewShouldInsertNewline:(NSTextView *)textView - (BOOL)textViewShouldDeleteBackward:(NSTextView *)textView { + NSRange selectedRange = textView.selectedRange; if (self.preferences.editorCompleteMatchingCharacters) { - NSUInteger location = self.editor.selectedRange.location; + NSUInteger location = selectedRange.location; if ([textView deleteMatchingCharactersAround:location]) return NO; } - if (self.preferences.editorConvertTabs) + if (self.preferences.editorConvertTabs && !selectedRange.length) { - NSUInteger location = self.editor.selectedRange.location; + NSUInteger location = selectedRange.location; if ([textView unindentForSpacesBefore:location]) return NO; } @@ -709,6 +830,23 @@ - (BOOL)textViewShouldMoveToLeftEndOfLine:(NSTextView *)textView } +#pragma mark - WebResourceLoadDelegate + +- (NSURLRequest *)webView:(WebView *)sender resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse fromDataSource:(WebDataSource *)dataSource +{ + + if ([[request.URL lastPathComponent] isEqualToString:@"MathJax.js"]) + { + NSURLComponents *origComps = [NSURLComponents componentsWithURL:[request URL] resolvingAgainstBaseURL:YES]; + NSURLComponents *updatedComps = [NSURLComponents componentsWithURL:[[NSBundle mainBundle] URLForResource:@"MathJax" withExtension:@"js" subdirectory:@"MathJax"] resolvingAgainstBaseURL:NO]; + [updatedComps setQueryItems:[origComps queryItems]]; + + request = [NSURLRequest requestWithURL:[updatedComps URL]]; + } + + return request; +} + #pragma mark - WebFrameLoadDelegate - (void)webView:(WebView *)sender didCommitLoadForFrame:(WebFrame *)frame @@ -740,16 +878,32 @@ - (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame NSOperationQueue *queue = [NSOperationQueue mainQueue]; [queue addOperationWithBlock:callback]; } - + + self.isPreviewReady = YES; + // Update word count if (self.preferences.editorShowWordCount) [self updateWordCount]; + + self.alreadyRenderingInWeb = NO; + + if (self.renderToWebPending) + [self.renderer parseAndRenderNow]; + + self.renderToWebPending = NO; } - (void)webView:(WebView *)sender didFailLoadWithError:(NSError *)error forFrame:(WebFrame *)frame { [self webView:sender didFinishLoadForFrame:frame]; + + self.alreadyRenderingInWeb = NO; + + if (self.renderToWebPending) + [self.renderer parseAndRenderNow]; + + self.renderToWebPending = NO; } @@ -763,13 +917,25 @@ - (void)webView:(WebView *)webView switch ([information[WebActionNavigationTypeKey] integerValue]) { case WebNavigationTypeLinkClicked: - [listener ignore]; - [[NSWorkspace sharedWorkspace] openURL:request.URL]; + // If the target is exactly as the current one, ignore. + if ([self.currentBaseUrl isEqual:request.URL]) + { + [listener ignore]; + return; + } + // If this is a different page, intercept and handle ourselves. + else if (![self isCurrentBaseUrl:request.URL]) + { + [listener ignore]; + [self openOrCreateFileForUrl:request.URL]; + return; + } + // Otherwise this is somewhere else on the same page. Jump there. break; default: - [listener use]; break; } + [listener use]; } @@ -802,6 +968,10 @@ - (NSUInteger)webView:(WebView *)webView #pragma mark - MPRendererDataSource +- (BOOL)rendererLoading { + return self.preview.loading; +} + - (NSString *)rendererMarkdown:(MPRenderer *)renderer { return self.editor.string; @@ -828,7 +998,7 @@ - (BOOL)rendererHasSmartyPants:(MPRenderer *)renderer - (BOOL)rendererRendersTOC:(MPRenderer *)renderer { - return self.rendersTOC; + return self.preferences.htmlRendersTOC; } - (NSString *)rendererStyleName:(MPRenderer *)renderer @@ -846,6 +1016,21 @@ - (BOOL)rendererHasSyntaxHighlighting:(MPRenderer *)renderer return self.preferences.htmlSyntaxHighlighting; } +- (BOOL)rendererHasMermaid:(MPRenderer *)renderer +{ + return self.preferences.htmlMermaid; +} + +- (BOOL)rendererHasGraphviz:(MPRenderer *)renderer +{ + return self.preferences.htmlGraphviz; +} + +- (MPCodeBlockAccessoryType)rendererCodeBlockAccesory:(MPRenderer *)renderer +{ + return self.preferences.htmlCodeBlockAccessory; +} + - (BOOL)rendererHasMathJax:(MPRenderer *)renderer { return self.preferences.htmlMathJax; @@ -858,6 +1043,17 @@ - (NSString *)rendererHighlightingThemeName:(MPRenderer *)renderer - (void)renderer:(MPRenderer *)renderer didProduceHTMLOutput:(NSString *)html { + if (self.alreadyRenderingInWeb) + { + self.renderToWebPending = YES; + return; + } + + if (self.printing) + return; + + self.alreadyRenderingInWeb = YES; + // Delayed copying for -copyHtml. if (self.copying) { @@ -866,18 +1062,64 @@ - (void)renderer:(MPRenderer *)renderer didProduceHTMLOutput:(NSString *)html [pasteboard clearContents]; [pasteboard writeObjects:@[self.renderer.currentHtml]]; } - self.manualRender = self.preferences.markdownManualRender; + NSURL *baseUrl = self.fileURL; - if (!baseUrl) + if (!baseUrl) // Unsaved doument; just use the default URL. baseUrl = self.preferences.htmlDefaultDirectoryUrl; - if (!self.printing) - [self.preview.mainFrame loadHTMLString:html baseURL:baseUrl]; + + self.manualRender = self.preferences.markdownManualRender; + +#if 0 + // Unfortunately this DOM-replacing causes a lot of problems... + // 1. MathJax needs to be triggered. + // 2. Prism rendering is lost. + // 3. Potentially more. + // Essentially all JavaScript needs to be run again after we replace + // the DOM. I have no idea how many more problems there are, so we'll have + // to back off from the path for now... :( + + // If we're working on the same document, try not to reload. + if (self.isPreviewReady && [self.currentBaseUrl isEqualTo:baseUrl]) + { + // HACK: Ideally we should only inject the parts that changed, and only + // get the parts we need. For now we only get a complete HTML codument, + // and rely on regex to get the parts we want in the DOM. + + // Use the existing tree if available, and replace the content. + DOMDocument *doc = self.preview.mainFrame.DOMDocument; + DOMNodeList *htmlNodes = [doc getElementsByTagName:@"html"]; + if (htmlNodes.length >= 1) + { + static NSString *pattern = @"(.*)"; + static int opts = NSRegularExpressionDotMatchesLineSeparators; + + // Find things inside the tag. + NSRegularExpression *regex = + [[NSRegularExpression alloc] initWithPattern:pattern + options:opts error:NULL]; + NSTextCheckingResult *result = + [regex firstMatchInString:html options:0 + range:NSMakeRange(0, html.length)]; + html = [html substringWithRange:[result rangeAtIndex:1]]; + + // Replace everything in the old tag. + DOMElement *htmlNode = (DOMElement *)[htmlNodes item:0]; + htmlNode.innerHTML = html; + + return; + } + } +#endif + + // Reload the page if there's not valid tree to work with. + [self.preview.mainFrame loadHTMLString:html baseURL:baseUrl]; + self.currentBaseUrl = baseUrl; } #pragma mark - Notification handler -- (void)textDidChange:(NSNotification *)notification +- (void)editorTextDidChange:(NSNotification *)notification { if (self.needsHtml) [self.renderer parseAndRenderLater]; @@ -898,29 +1140,45 @@ - (void)userDefaultsDidChange:(NSNotification *)notification } else { - [renderer parseNowWithCommand:@selector(parseIfPreferencesChanged) - completionHandler:^{ - [renderer render]; - }]; + [renderer parseIfPreferencesChanged]; [renderer renderIfPreferencesChanged]; } } -- (void)boundsDidChange:(NSNotification *)notification +- (void)editorFrameDidChange:(NSNotification *)notification +{ + if (self.preferences.editorWidthLimited) + [self adjustEditorInsets]; +} + +- (void)willStartLiveScroll:(NSNotification *)notification +{ + [self updateHeaderLocations]; + _inLiveScroll = YES; +} + +-(void)didEndLiveScroll:(NSNotification *)notification +{ + _inLiveScroll = NO; +} + +- (void)editorBoundsDidChange:(NSNotification *)notification { if (!self.shouldHandleBoundsChange) return; - self.shouldHandleBoundsChange = NO; - CGFloat clipWidth = [notification.object frame].size.width; - NSRect editorFrame = self.editor.frame; - if (editorFrame.size.width != clipWidth) + if (self.preferences.editorSyncScrolling) { - editorFrame.size.width = clipWidth; - self.editor.frame = editorFrame; + @synchronized(self) { + self.shouldHandleBoundsChange = NO; + if(!_inLiveScroll){ + [self updateHeaderLocations]; + } + + [self syncScrollers]; + self.shouldHandleBoundsChange = YES; + } } - [self syncScrollers]; - self.shouldHandleBoundsChange = YES; } - (void)didRequestEditorReload:(NSNotification *)notification @@ -935,6 +1193,12 @@ - (void)didRequestPreviewReload:(NSNotification *)notification [self render:nil]; } +- (void)previewDidLiveScroll:(NSNotification *)notification +{ + NSClipView *contentView = self.preview.enclosingScrollView.contentView; + self.lastPreviewScrollTop = contentView.bounds.origin.y; +} + #pragma mark - KVO @@ -1104,27 +1368,53 @@ - (IBAction)toggleComment:(id)sender - (IBAction)toggleLink:(id)sender { - if ([self.editor toggleForMarkupPrefix:@"[" suffix:@"]()"]) + BOOL inserted = [self.editor toggleForMarkupPrefix:@"[" suffix:@"]()"]; + if (!inserted) + return; + + NSRange selectedRange = self.editor.selectedRange; + NSUInteger location = selectedRange.location + selectedRange.length + 2; + selectedRange = NSMakeRange(location, 0); + + NSPasteboard *pb = [NSPasteboard generalPasteboard]; + NSString *url = [pb URLForType:NSPasteboardTypeString].absoluteString; + if (url) { - NSRange selectedRange = self.editor.selectedRange; - NSUInteger location = selectedRange.location + selectedRange.length + 2; - self.editor.selectedRange = NSMakeRange(location, 0); + [self.editor insertText:url replacementRange:selectedRange]; + selectedRange.length = url.length; } + self.editor.selectedRange = selectedRange; } - (IBAction)toggleImage:(id)sender { - if ([self.editor toggleForMarkupPrefix:@"![" suffix:@"]()"]) + BOOL inserted = [self.editor toggleForMarkupPrefix:@"![" suffix:@"]()"]; + if (!inserted) + return; + + NSRange selectedRange = self.editor.selectedRange; + NSUInteger location = selectedRange.location + selectedRange.length + 2; + selectedRange = NSMakeRange(location, 0); + + NSPasteboard *pb = [NSPasteboard generalPasteboard]; + NSString *url = [pb URLForType:NSPasteboardTypeString].absoluteString; + if (url) { - NSRange selectedRange = self.editor.selectedRange; - NSUInteger location = selectedRange.location + selectedRange.length + 2; - self.editor.selectedRange = NSMakeRange(location, 0); + [self.editor insertText:url replacementRange:selectedRange]; + selectedRange.length = url.length; } + self.editor.selectedRange = selectedRange; +} + +- (IBAction)toggleOrderedList:(id)sender +{ + [self.editor toggleBlockWithPattern:@"^[0-9]+ \\S" prefix:@"1. "]; } - (IBAction)toggleUnorderedList:(id)sender { - [self.editor toggleBlockWithPattern:@"^[\\*\\+-] \\S" prefix:@"* "]; + NSString *marker = self.preferences.editorUnorderedListMarker; + [self.editor toggleBlockWithPattern:@"^[\\*\\+-] \\S" prefix:marker]; } - (IBAction)toggleBlockquote:(id)sender @@ -1178,36 +1468,19 @@ - (IBAction)setEqualSplit:(id)sender [self setSplitViewDividerLocation:0.5]; } -- (IBAction)togglePreivewPane:(id)sender +- (IBAction)toggleToolbar:(id)sender { - if (self.previewVisible) - { - self.previousSplitRatio = self.splitView.dividerLocation; - BOOL editorOnRight = self.preferences.editorOnRight; - [self setSplitViewDividerLocation:(editorOnRight ? 0.0 : 1.0)]; - } - else - { - if (self.previousSplitRatio >= 0.0) - [self setSplitViewDividerLocation:self.previousSplitRatio]; - } + [self.windowForSheet toggleToolbarShown:sender]; +} + +- (IBAction)togglePreviewPane:(id)sender +{ + [self toggleSplitterCollapsingEditorPane:NO]; } - (IBAction)toggleEditorPane:(id)sender { - if (self.editorVisible) - { - self.previousSplitRatio = self.splitView.dividerLocation; - if (self.preferences.editorOnRight) - [self setSplitViewDividerLocation:1.0]; - else - [self setSplitViewDividerLocation:0.0]; - } - else - { - if (self.previousSplitRatio >= 0.0) - [self setSplitViewDividerLocation:self.previousSplitRatio]; - } + [self toggleSplitterCollapsingEditorPane:YES]; } - (IBAction)render:(id)sender @@ -1215,16 +1488,38 @@ - (IBAction)render:(id)sender [self.renderer parseAndRenderLater]; } -- (IBAction)toggleTOCRendering:(id)sender + +#pragma mark - Private + +- (void)toggleSplitterCollapsingEditorPane:(BOOL)forEditorPane { - BOOL nextState = NO; - if ([sender state] == NSOffState) - nextState = YES; - self.rendersTOC = nextState; -} + BOOL isVisible = forEditorPane ? self.editorVisible : self.previewVisible; + BOOL editorOnRight = self.preferences.editorOnRight; + float targetRatio = ((forEditorPane == editorOnRight) ? 1.0 : 0.0); -#pragma mark - Private + if (isVisible) + { + CGFloat oldRatio = self.splitView.dividerLocation; + if (oldRatio != 0.0 && oldRatio != 1.0) + { + // We don't want to save these values, since they are meaningless. + // The user should be able to switch between 100% editor and 100% + // preview without losing the old ratio. + self.previousSplitRatio = oldRatio; + } + [self setSplitViewDividerLocation:targetRatio]; + } + else + { + // We have an inconsistency here, let's just go back to 0.5, + // otherwise nothing will happen + if (self.previousSplitRatio < 0.0) + self.previousSplitRatio = 0.5; + + [self setSplitViewDividerLocation:self.previousSplitRatio]; + } +} - (void)setupEditor:(NSString *)changedKey { @@ -1243,18 +1538,7 @@ - (void)setupEditor:(NSString *)changedKey || [changedKey isEqualToString:@"editorWidthLimited"] || [changedKey isEqualToString:@"editorMaximumWidth"]) { - CGFloat x = self.preferences.editorHorizontalInset; - CGFloat y = self.preferences.editorVerticalInset; - if (self.preferences.editorWidthLimited) - { - CGFloat editorWidth = self.editor.frame.size.width; - CGFloat maxWidth = self.preferences.editorMaximumWidth; - if (editorWidth > 2 * x + maxWidth) - x = (editorWidth - maxWidth) * 0.45; - // We tend to expect things in an editor to shift to left a bit. - // Hence the 0.45 instead of 0.5 (which whould feel a bit too much). - } - self.editor.textContainerInset = NSMakeSize(x, y); + [self adjustEditorInsets]; } if (!changedKey || [changedKey isEqualToString:@"editorBaseFontInfo"] @@ -1264,9 +1548,11 @@ - (void)setupEditor:(NSString *)changedKey NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init]; style.lineSpacing = self.preferences.editorLineSpacing; self.editor.defaultParagraphStyle = [style copy]; - self.editor.font = [self.preferences.editorBaseFont copy]; + NSFont *font = [self.preferences.editorBaseFont copy]; + if (font) + self.editor.font = font; self.editor.textColor = nil; - self.editor.backgroundColor = nil; + self.editor.backgroundColor = [NSColor clearColor]; self.highlighter.styles = nil; [self.highlighter readClearTextStylesFromTextView]; @@ -1282,12 +1568,17 @@ - (void)setupEditor:(NSString *)changedKey }]; } - CGColorRef backgroundCGColor = self.editor.backgroundColor.CGColor; - CALayer *layer = [CALayer layer]; - layer.backgroundColor = backgroundCGColor; + CGColorRef backgroundCGColor = self.editor.backgroundColor.CGColor; + if (backgroundCGColor) + layer.backgroundColor = backgroundCGColor; self.editorContainer.layer = layer; } + + if ([changedKey isEqualToString:@"editorBaseFontInfo"]) + { + [self scaleWebview]; + } if (!changedKey || [changedKey isEqualToString:@"editorShowWordCount"]) { @@ -1355,51 +1646,210 @@ - (void)setupEditor:(NSString *)changedKey self.editor.automaticLinkDetectionEnabled = NO; } +- (void)adjustEditorInsets +{ + CGFloat x = self.preferences.editorHorizontalInset; + CGFloat y = self.preferences.editorVerticalInset; + if (self.preferences.editorWidthLimited) + { + CGFloat editorWidth = self.editor.frame.size.width; + CGFloat maxWidth = self.preferences.editorMaximumWidth; + if (editorWidth > 2 * x + maxWidth) + x = (editorWidth - maxWidth) * 0.45; + // We tend to expect things in an editor to shift to left a bit. + // Hence the 0.45 instead of 0.5 (which whould feel a bit too much). + } + self.editor.textContainerInset = NSMakeSize(x, y); +} + - (void)redrawDivider { - // Request divider redraw to match editor's background color. - NSColor *color = self.editor.backgroundColor; if (!self.editorVisible) { - // If the editor is NOT visible, detect preview's background color via + // If the editor is not visible, detect preview's background color via // DOM query and use it instead. This is more expensive; we should try // to avoid it. // TODO: Is it possible to cache this until the user switches the style? // Will need to take account of the user MODIFIES the style without // switching. Complicated. This will do for now. - DOMDocument *doc = self.preview.mainFrameDocument; - id body = [[doc getElementsByTagName:@"body"] item:0]; - DOMCSSStyleDeclaration *style = [doc getComputedStyle:body - pseudoElement:nil]; - color = [NSColor colorWithHTMLName:[style backgroundColor]]; + self.splitView.dividerColor = MPGetWebViewBackgroundColor(self.preview); + } + else if (!self.previewVisible) + { + // If the editor is visible, match its background color. + self.splitView.dividerColor = self.editor.backgroundColor; + } + else + { + // If both sides are visible, draw a default "transparent" divider. + // This works around the possibile problem of divider's color being too + // similar to both the editor and preview and being obscured. + self.splitView.dividerColor = nil; } - self.splitView.dividerColor = color; } -- (void)syncScrollers +- (void)scaleWebview { - if (!self.preferences.editorSyncScrolling) + if (!self.preferences.previewZoomRelativeToBaseFontSize) + return; + + CGFloat fontSize = self.preferences.editorBaseFontSize; + if (fontSize <= 0.0) return; - NSRect contentBounds = [self.editor.enclosingScrollView.contentView bounds]; - NSRect realContentRect = self.editor.contentRect; + static const CGFloat defaultSize = 14.0; + CGFloat scale = fontSize / defaultSize; + +#if 0 + // Sadly, this doesn’t work correctly. + // It looks fine, but selections are offset relative to the mouse cursor. + NSScrollView *previewScrollView = + self.preview.mainFrame.frameView.documentView.enclosingScrollView; + NSClipView *previewContentView = previewScrollView.contentView; + [previewContentView scaleUnitSquareToSize:NSMakeSize(scale, scale)]; + [previewContentView setNeedsDisplay:YES]; +#else + // Warning: this is private webkit API and NOT App Store-safe! + [self.preview setPageSizeMultiplier:scale]; +#endif +} + +-(void) updateHeaderLocations +{ + CGFloat offset = NSMinY(self.preview.enclosingScrollView.contentView.bounds); + NSMutableArray *locations = [NSMutableArray array]; - CGFloat ratio = 0.0; - if (realContentRect.size.height > contentBounds.size.height) + _webViewHeaderLocations = [[self.preview.mainFrame.javaScriptContext evaluateScript:@"var arr = Array.prototype.slice.call(document.querySelectorAll(\"h1, h2, h3, h4, h5, h6, img:only-child\")); arr.map(function(n){ return n.getBoundingClientRect().top })"] toArray]; + + // add offset to all numbers + for (NSNumber *location in _webViewHeaderLocations) { - ratio = contentBounds.origin.y / - (realContentRect.size.height - contentBounds.size.height); + [locations addObject:@([location floatValue] + offset)]; } + + _webViewHeaderLocations = [locations copy]; + - NSScrollView *previewScrollView = - self.preview.mainFrame.frameView.documentView.enclosingScrollView; - NSClipView *previewContentView = previewScrollView.contentView; - NSView *previewDocumentView = previewScrollView.documentView; - NSRect previewContentBounds = previewContentView.bounds; - previewContentBounds.origin.y = - ratio * (previewDocumentView.frame.size.height - - previewContentBounds.size.height); - previewContentView.bounds = previewContentBounds; + // Next, cache the locations of all of the reference nodes in the editor view. + NSInteger characterCount = 0; + NSLayoutManager *layoutManager = [self.editor layoutManager]; + NSArray *documentLines = [self.editor.string componentsSeparatedByString:@"\n"]; + [locations removeAllObjects]; + + // These are the patterns for markdown headers and images respectively. we're only going to + // handle images that are not inline with other text/images + NSRegularExpression *dashRegex = [NSRegularExpression regularExpressionWithPattern:@"^([-]+)$" options:0 error:nil]; + NSRegularExpression *headerRegex = [NSRegularExpression regularExpressionWithPattern:@"^(#+)\\s" options:0 error:nil]; + NSRegularExpression *imgRegex = [NSRegularExpression regularExpressionWithPattern:@"^!\\[[^\\]]*\\]\\([^)]*\\)$" options:0 error:nil]; + BOOL previousLineHadContent = NO; + + CGFloat editorContentHeight = ceilf(NSHeight(self.editor.enclosingScrollView.documentView.bounds)); + CGFloat editorVisibleHeight = ceilf(NSHeight(self.editor.enclosingScrollView.contentView.bounds)); + + // We start by splitting our document into lines, and then searching + // line by line for headers or images. + for (NSInteger lineNumber = 0; lineNumber < [documentLines count]; lineNumber++) + { + NSString *line = documentLines[lineNumber]; + + if ((previousLineHadContent && [dashRegex numberOfMatchesInString:line options:0 range:NSMakeRange(0, [line length])]) || + [imgRegex numberOfMatchesInString:line options:0 range:NSMakeRange(0, [line length])] || + [headerRegex numberOfMatchesInString:line options:0 range:NSMakeRange(0, [line length])]) + { + // Calculate where this header/image appears vertically in the editor + NSRange glyphRange = [layoutManager glyphRangeForCharacterRange:NSMakeRange(characterCount, [line length]) actualCharacterRange:nil]; + NSRect topRect = [layoutManager boundingRectForGlyphRange:glyphRange inTextContainer:[self.editor textContainer]]; + CGFloat headerY = NSMidY(topRect); + + if(headerY <= editorContentHeight - editorVisibleHeight){ + [locations addObject:@(headerY)]; + } + } + + previousLineHadContent = [line length] && ![dashRegex numberOfMatchesInString:line options:0 range:NSMakeRange(0, [line length])]; + + characterCount += [line length] + 1; + } + + _editorHeaderLocations = [locations copy]; +} + +- (void)syncScrollers +{ + CGFloat editorContentHeight = ceilf(NSHeight(self.editor.enclosingScrollView.documentView.bounds)); + CGFloat editorVisibleHeight = ceilf(NSHeight(self.editor.enclosingScrollView.contentView.bounds)); + CGFloat previewContentHeight = ceilf(NSHeight(self.preview.enclosingScrollView.documentView.bounds)); + CGFloat previewVisibleHeight = ceilf(NSHeight(self.preview.enclosingScrollView.contentView.bounds)); + NSInteger relativeHeaderIndex = -1; // -1 is start of document, before any other header + CGFloat currY = NSMinY(self.editor.enclosingScrollView.contentView.bounds); + CGFloat minY = 0; + CGFloat maxY = 0; + + // align the documents at the middle of the screen, except at top/bottom of document + CGFloat topTaper = MAX(0, MIN(1.0, currY / editorVisibleHeight)); + CGFloat bottomTaper = 1.0 - MAX(0, MIN(1.0, (currY - editorContentHeight + 2 * editorVisibleHeight) / editorVisibleHeight)); + CGFloat adjustmentForScroll = topTaper * bottomTaper * editorVisibleHeight / 2; + + // We start by splitting our document into lines, and then searching + // line by line for headers or images. + for (NSNumber *headerYNum in _editorHeaderLocations) { + CGFloat headerY = [headerYNum floatValue]; + headerY -= adjustmentForScroll; + + if (headerY < currY) + { + // The header is before our current scroll position. the closest + // of these will be our first reference node + relativeHeaderIndex += 1; + minY = headerY; + } else if (maxY == 0 && headerY < editorContentHeight - editorVisibleHeight) + { + // Skip any headers that are within the last screen of the editor. + // we'll interpolate to the end of the document in that case. + maxY = headerY; + } + } + + // Usually, we'll be scrolling between two reference nodes, but toward the end + // of the document we'll ignore nodes and reference the end of the document instead + BOOL interpolateToEndOfDocument = NO; + + if (maxY == 0) + { + // We only have a reference node before our current position, + // but not after, so we'll use the end of the document. + maxY = editorContentHeight - editorVisibleHeight + adjustmentForScroll; + interpolateToEndOfDocument = YES; + } + + // We are currently at currY offset, between minY and maxY, which represent + // headers indexed by relativeHeaderIndex and relativeHeaderIndex+1. + currY = MAX(0, currY - minY); + maxY -= minY; + minY -= minY; + CGFloat percentScrolledBetweenHeaders = MAX(0, MIN(1.0, currY / maxY)); + + // Now that we know where the editor position is relative to two reference nodes, + // we need to find the positions of those nodes in the HTML preview + CGFloat topHeaderY = 0; + CGFloat bottomHeaderY = previewContentHeight - previewVisibleHeight; + + // Find the Y positions in the preview window that we're scrolling between + if ([_webViewHeaderLocations count] > relativeHeaderIndex) + { + topHeaderY = floorf([_webViewHeaderLocations[relativeHeaderIndex] doubleValue]) - adjustmentForScroll; + } + + if (!interpolateToEndOfDocument && [_webViewHeaderLocations count] > relativeHeaderIndex + 1) + { + bottomHeaderY = ceilf([_webViewHeaderLocations[relativeHeaderIndex + 1] doubleValue]) - adjustmentForScroll; + } + + // Now we scroll percentScrolledBetweenHeaders percent between those two positions in the webview + CGFloat previewY = topHeaderY + (bottomHeaderY - topHeaderY) * percentScrolledBetweenHeaders; + NSRect contentBounds = self.preview.enclosingScrollView.contentView.bounds; + contentBounds.origin.y = previewY; + self.preview.enclosingScrollView.contentView.bounds = contentBounds; } - (void)setSplitViewDividerLocation:(CGFloat)ratio @@ -1426,7 +1876,7 @@ - (NSString *)presumedFileName title = string.titleString; if (!title) - return nil; + return NSLocalizedString(@"Untitled", @"default filename if no title can be determined"); static NSRegularExpression *regex = nil; static dispatch_once_t onceToken; @@ -1443,22 +1893,115 @@ - (NSString *)presumedFileName - (void)updateWordCount { - NSString *text = self.preview.mainFrame.DOMDocument.nodeText; - NSCharacterSet *sp = [NSCharacterSet whitespaceAndNewlineCharacterSet]; - NSArray *comps = [text componentsSeparatedByCharactersInSet:sp]; + DOMNodeTextCount count = self.preview.mainFrame.DOMDocument.textCount; + + self.totalWords = count.words; + self.totalCharacters = count.characters; + self.totalCharactersNoSpaces = count.characterWithoutSpaces; + + if (self.isPreviewReady) + self.wordCountWidget.enabled = YES; +} + +- (BOOL)isCurrentBaseUrl:(NSURL *)another +{ + NSString *mine = self.currentBaseUrl.absoluteBaseURLString; + NSString *theirs = another.absoluteBaseURLString; + return mine == theirs || [mine isEqualToString:theirs]; +} + + +#define OPEN_FAIL_ALERT_INFORMATIVE NSLocalizedString( \ +@"Please check the path of your link is correct. Turn on \ +“Automatically create link targets” If you want MacDown to \ +create nonexistent link targets for you.", \ +@"preview navigation error information") + +#define AUTO_CREATE_FAIL_ALERT_INFORMATIVE NSLocalizedString( \ +@"MacDown can’t create a file for the clicked link because \ +the current file is not saved anywhere yet. Save the \ +current file somewhere to enable this feature.", \ +@"preview navigation error information") + + +- (void)openOrCreateFileForUrl:(NSURL *)url +{ + // Simply open the file if it is not local, or exists already. + BOOL file = url.isFileURL; + BOOL reachable = !file || [url checkResourceIsReachableAndReturnError:NULL]; + + // If the file is local but doesn't exist, check if a file with + // the .md extension exists. + if (file && !reachable && [url.pathExtension isEqualToString:@""]) + { + NSURL *markdownURL = [url URLByAppendingPathExtension:@"md"]; + if ([markdownURL checkResourceIsReachableAndReturnError:NULL]) + { + reachable = YES; + url = markdownURL; + } + } + + if (reachable) + { + [[NSWorkspace sharedWorkspace] openURL:url]; + return; + } - NSString *trimmedDocument = [text stringByTrimmingCharactersInSet:sp]; - NSString *noWhitespace = [comps componentsJoinedByString:@""]; + // Show an error if the user doesn't want us to create it automatically. + if (!self.preferences.createFileForLinkTarget) + { + NSAlert *alert = [[NSAlert alloc] init]; + NSString *template = NSLocalizedString( + @"File not found at path:\n%@", + @"preview navigation error message"); + alert.messageText = [NSString stringWithFormat:template, url.path]; + alert.informativeText = OPEN_FAIL_ALERT_INFORMATIVE; + [alert runModal]; + return; + } + + // We can only create a file if the current file is saved. (Why?) + if (!self.fileURL) + { + NSAlert *alert = [[NSAlert alloc] init]; + NSString *template = NSLocalizedString( + @"Can’t create file:\n%@", @"preview navigation error message"); + alert.messageText = [NSString stringWithFormat:template, + url.lastPathComponent]; + alert.informativeText = AUTO_CREATE_FAIL_ALERT_INFORMATIVE; + [alert runModal]; + } + + // Try to created the file. + NSDocumentController *controller = + [NSDocumentController sharedDocumentController]; - self.totalWords = text.numberOfWords; - self.totalCharacters = trimmedDocument.length; - self.totalCharactersNoSpaces = noWhitespace.length; + NSError *error = nil; + id doc = [controller createNewEmptyDocumentForURL:url + display:YES error:&error]; + if (!doc) + { + NSAlert *alert = [[NSAlert alloc] init]; + NSString *template = NSLocalizedString( + @"Can’t create file:\n%@", + @"preview navigation error message"); + alert.messageText = + [NSString stringWithFormat:template, url.lastPathComponent]; + template = NSLocalizedString( + @"An error occurred while creating the file:\n%@", + @"preview navigation error information"); + alert.informativeText = + [NSString stringWithFormat:template, error.localizedDescription]; + [alert runModal]; + } } + - (void)document:(NSDocument *)doc didPrint:(BOOL)ok context:(void *)context { if ([doc respondsToSelector:@selector(setPrinting:)]) - [(id)doc setPrinting:NO]; + ((MPDocument *)doc).printing = NO; if (context) { NSInvocation *invocation = (__bridge NSInvocation *)context; diff --git a/MacDown/Code/Document/MPRenderer.h b/MacDown/Code/Document/MPRenderer.h index de8928a7..2415864f 100644 --- a/MacDown/Code/Document/MPRenderer.h +++ b/MacDown/Code/Document/MPRenderer.h @@ -11,6 +11,14 @@ @protocol MPRendererDelegate; +typedef NS_ENUM(NSUInteger, MPCodeBlockAccessoryType) +{ + MPCodeBlockAccessoryNone = 0, + MPCodeBlockAccessoryLanguageName, + MPCodeBlockAccessoryCustom, +}; + + @interface MPRenderer : NSObject @property (nonatomic) int rendererFlags; @@ -19,10 +27,7 @@ - (void)parseAndRenderNow; - (void)parseAndRenderLater; -- (void)parseNowWithCommand:(SEL)action completionHandler:(void(^)())handler; -- (void)parseLaterWithCommand:(SEL)action completionHandler:(void(^)())handler; - (void)parseIfPreferencesChanged; -- (void)parse; - (void)renderIfPreferencesChanged; - (void)render; @@ -35,6 +40,7 @@ @protocol MPRendererDataSource +- (BOOL)rendererLoading; - (NSString *)rendererMarkdown:(MPRenderer *)renderer; - (NSString *)rendererHTMLTitle:(MPRenderer *)renderer; @@ -48,6 +54,9 @@ - (NSString *)rendererStyleName:(MPRenderer *)renderer; - (BOOL)rendererDetectsFrontMatter:(MPRenderer *)renderer; - (BOOL)rendererHasSyntaxHighlighting:(MPRenderer *)renderer; +- (BOOL)rendererHasMermaid:(MPRenderer *)renderer; +- (BOOL)rendererHasGraphviz:(MPRenderer *)renderer; +- (MPCodeBlockAccessoryType)rendererCodeBlockAccesory:(MPRenderer *)renderer; - (BOOL)rendererHasMathJax:(MPRenderer *)renderer; - (NSString *)rendererHighlightingThemeName:(MPRenderer *)renderer; - (void)renderer:(MPRenderer *)renderer didProduceHTMLOutput:(NSString *)html; diff --git a/MacDown/Code/Document/MPRenderer.m b/MacDown/Code/Document/MPRenderer.m index 15a20d7f..f797444f 100644 --- a/MacDown/Code/Document/MPRenderer.m +++ b/MacDown/Code/Document/MPRenderer.m @@ -10,23 +10,56 @@ #import #import #import +#import #import "hoedown_html_patch.h" +#import "NSJSONSerialization+File.h" #import "NSObject+HTMLTabularize.h" #import "NSString+Lookup.h" #import "MPUtilities.h" #import "MPAsset.h" +#import "MPPreferences.h" - +// Warning: If the version of MathJax is ever updated, please check the status +// of https://github.com/mathjax/MathJax/issues/548. If the fix has been merged +// in to MathJax, then the WebResourceLoadDelegate can be removed from MPDocument +// and MathJax.js can be removed from this project. static NSString * const kMPMathJaxCDN = - @"http://cdn.mathjax.org/mathjax/latest/MathJax.js" + @"https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.3/MathJax.js" @"?config=TeX-AMS-MML_HTMLorMML"; static NSString * const kMPPrismScriptDirectory = @"Prism/components"; static NSString * const kMPPrismThemeDirectory = @"Prism/themes"; +static NSString * const kMPPrismPluginDirectory = @"Prism/plugins"; static size_t kMPRendererNestingLevel = SIZE_MAX; static int kMPRendererTOCLevel = 6; // h1 to h6. -static NSArray *MPPrismScriptURLsForLanguage(NSString *language) +NS_INLINE NSURL *MPExtensionURL(NSString *name, NSString *extension) +{ + NSBundle *bundle = [NSBundle mainBundle]; + NSURL *url = [bundle URLForResource:name withExtension:extension + subdirectory:@"Extensions"]; + return url; +} + +NS_INLINE NSURL *MPPrismPluginURL(NSString *name, NSString *extension) +{ + NSBundle *bundle = [NSBundle mainBundle]; + NSString *dirPath = + [NSString stringWithFormat:@"%@/%@", kMPPrismPluginDirectory, name]; + + NSString *filename = [NSString stringWithFormat:@"prism-%@.min", name]; + NSURL *url = [bundle URLForResource:filename withExtension:extension + subdirectory:dirPath]; + if (url) + return url; + + filename = [NSString stringWithFormat:@"prism-%@", name]; + url = [bundle URLForResource:filename withExtension:extension + subdirectory:dirPath]; + return url; +} + +NS_INLINE NSArray *MPPrismScriptURLsForLanguage(NSString *language) { NSURL *baseUrl = nil; NSURL *extraUrl = nil; @@ -60,7 +93,7 @@ return urls; } -static NSString *MPHTMLFromMarkdown( +NS_INLINE NSString *MPHTMLFromMarkdown( NSString *text, int flags, BOOL smartypants, NSString *frontMatter, hoedown_renderer *htmlRenderer, hoedown_renderer *tocRenderer) { @@ -111,7 +144,7 @@ return result; } -static NSString *MPGetHTML( +NS_INLINE NSString *MPGetHTML( NSString *title, NSString *body, NSArray *styles, MPAssetOption styleopt, NSArray *scripts, MPAssetOption scriptopt) { @@ -129,23 +162,38 @@ if (s) [scriptTags addObject:s]; } - NSString *style = [styleTags componentsJoinedByString:@"\n"]; - NSString *script = [scriptTags componentsJoinedByString:@"\n"]; - static NSString *f = - (@"\n\n" - @"\n\n%@%@\n\n" - @"\n%@\n%@\n\n\n\n"); + MPPreferences *preferences = [MPPreferences sharedInstance]; + static NSString *f = nil; + static dispatch_once_t token; + dispatch_once(&token, ^{ + NSBundle *bundle = [NSBundle mainBundle]; + NSURL *url = [bundle URLForResource:preferences.htmlTemplateName + withExtension:@".handlebars" + subdirectory:@"Templates"]; + f = [NSString stringWithContentsOfURL:url + encoding:NSUTF8StringEncoding error:NULL]; + }); + NSCAssert(f.length, @"Could not read template"); + + NSString *titleTag = @""; if (title.length) - title = [NSString stringWithFormat:@"%@\n", title]; - else - title = @""; - NSString *html = [NSString stringWithFormat:f, title, style, body, script]; + titleTag = [NSString stringWithFormat:@"%@", title]; + + NSDictionary *context = @{ + @"title": title ? title : @"", + @"titleTag": titleTag ? titleTag : @"", + @"styleTags": styleTags ? styleTags : @[], + @"body": body ? body : @"", + @"scriptTags": scriptTags ? scriptTags : @[], + }; + NSString *html = [HBHandlebars renderTemplateString:f withContext:context + error:NULL]; return html; } -static inline BOOL MPAreNilableStringsEqual(NSString *s1, NSString *s2) +NS_INLINE BOOL MPAreNilableStringsEqual(NSString *s1, NSString *s2) { // The == part takes care of cases where s1 and s2 are both nil. return ([s1 isEqualToString:s2] || s1 == s2); @@ -159,24 +207,59 @@ @interface MPRenderer () @property (readonly) NSArray *prismStylesheets; @property (readonly) NSArray *prismScripts; @property (readonly) NSArray *mathjaxScripts; +@property (readonly) NSArray *mermaidStylesheets; +@property (readonly) NSArray *mermaidScripts; +@property (readonly) NSArray *graphvizScripts; @property (readonly) NSArray *stylesheets; @property (readonly) NSArray *scripts; @property (copy) NSString *currentHtml; -@property (strong) NSTimer *parseDelayTimer; +@property (strong) NSOperationQueue *parseQueue; @property int extensions; @property BOOL smartypants; @property BOOL TOC; @property (copy) NSString *styleName; @property BOOL frontMatter; @property BOOL syntaxHighlighting; +@property BOOL mermaid; +@property BOOL graphviz; +@property MPCodeBlockAccessoryType codeBlockAccesory; +@property BOOL lineNumbers; @property BOOL manualRender; @property (copy) NSString *highlightingThemeName; @end -static hoedown_buffer *language_addition(const hoedown_buffer *language, - void *owner) +NS_INLINE void add_to_languages( + NSString *lang, NSMutableArray *languages, NSDictionary *languageMap) +{ + // Move language to root of dependencies. + NSUInteger index = [languages indexOfObject:lang]; + if (index != NSNotFound) + [languages removeObjectAtIndex:index]; + [languages insertObject:lang atIndex:0]; + + // Add dependencies of this language. + id require = languageMap[lang][@"require"]; + if ([require isKindOfClass:[NSString class]]) + { + add_to_languages(require, languages, languageMap); + } + else if ([require isKindOfClass:[NSArray class]]) + { + for (NSString *lang in require) + add_to_languages(lang, languages, languageMap); + } + else if (require) + { + NSLog(@"Unknown Prism langauge requirement " + @"%@ dropped for unknown format", require); + } +} + + +NS_INLINE hoedown_buffer *language_addition( + const hoedown_buffer *language, void *owner) { MPRenderer *renderer = (__bridge MPRenderer *)owner; NSString *lang = [[NSString alloc] initWithBytes:language->data @@ -187,26 +270,17 @@ @interface MPRenderer () static NSDictionary *languageMap = nil; static dispatch_once_t token; dispatch_once(&token, ^{ - aliasMap = @{ - @"c++": @"cpp", - @"coffee": @"coffeescript", - @"coffee-script": @"coffeescript", - @"cs": @"csharp", - @"html": @"markup", - @"js": @"javascript", - @"json": @"javascript", - @"objective-c": @"objectivec", - @"obj-c": @"objectivec", - @"objc": @"objectivec", - @"py": @"python", - @"rb": @"ruby", - @"sh": @"bash", - @"xml": @"markup", - }; - NSBundle *bundle = [NSBundle mainBundle]; - NSURL *url = [bundle URLForResource:@"components" withExtension:@"js" - subdirectory:@"Prism"]; + NSURL *url = [bundle URLForResource:@"syntax_highlighting" + withExtension:@"json"]; + NSDictionary *info = + [NSJSONSerialization JSONObjectWithFileAtURL:url options:0 + error:NULL]; + + aliasMap = info[@"aliases"]; + + url = [bundle URLForResource:@"components" withExtension:@"js" + subdirectory:@"Prism"]; NSString *code = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:NULL]; @@ -225,27 +299,19 @@ @interface MPRenderer () } // Walk dependencies to include all required scripts. - NSMutableArray *languages = renderer.currentLanguages; - while (lang) - { - NSUInteger index = [languages indexOfObject:lang]; - if (index != NSNotFound) - [languages removeObjectAtIndex:index]; - [languages insertObject:lang atIndex:0]; - lang = languageMap[lang][@"require"]; - } + add_to_languages(lang, renderer.currentLanguages, languageMap); return mapped; } -static hoedown_renderer *MPCreateHTMLRenderer(MPRenderer *renderer) +NS_INLINE hoedown_renderer *MPCreateHTMLRenderer(MPRenderer *renderer) { int flags = renderer.rendererFlags; hoedown_renderer *htmlRenderer = hoedown_html_renderer_new( flags, kMPRendererTOCLevel); htmlRenderer->blockcode = hoedown_patch_render_blockcode; htmlRenderer->listitem = hoedown_patch_render_listitem; - + hoedown_html_renderer_state_extra *extra = hoedown_malloc(sizeof(hoedown_html_renderer_state_extra)); extra->language_addition = language_addition; @@ -255,7 +321,15 @@ @interface MPRenderer () return htmlRenderer; } -static void MPFreeHTMLRenderer(hoedown_renderer *htmlRenderer) +NS_INLINE hoedown_renderer *MPCreateHTMLTOCRenderer() +{ + hoedown_renderer *tocRenderer = + hoedown_html_toc_renderer_new(kMPRendererTOCLevel); + tocRenderer->header = hoedown_patch_render_toc_header; + return tocRenderer; +} + +NS_INLINE void MPFreeHTMLRenderer(hoedown_renderer *htmlRenderer) { hoedown_html_renderer_state_extra *extra = ((hoedown_html_renderer_state *)htmlRenderer->opaque)->opaque; @@ -275,6 +349,8 @@ - (instancetype)init self.currentHtml = @""; self.currentLanguages = [NSMutableArray array]; + self.parseQueue = [[NSOperationQueue alloc] init]; + self.parseQueue.maxConcurrentOperationCount = 1; // Serial queue return self; } @@ -296,7 +372,24 @@ - (NSArray *)baseStylesheets - (NSArray *)prismStylesheets { NSString *name = [self.delegate rendererHighlightingThemeName:self]; - return @[[MPStyleSheet CSSWithURL:MPHighlightingThemeURLForName(name)]]; + MPAsset *stylesheet = + [MPStyleSheet CSSWithURL:MPHighlightingThemeURLForName(name)]; + + NSMutableArray *stylesheets = [NSMutableArray arrayWithObject:stylesheet]; + + if (self.rendererFlags & HOEDOWN_HTML_BLOCKCODE_LINE_NUMBERS) + { + NSURL *url = MPPrismPluginURL(@"line-numbers", @"css"); + [stylesheets addObject:[MPStyleSheet CSSWithURL:url]]; + } + if ([self.delegate rendererCodeBlockAccesory:self] + == MPCodeBlockAccessoryLanguageName) + { + NSURL *url = MPPrismPluginURL(@"show-language", @"css"); + [stylesheets addObject:[MPStyleSheet CSSWithURL:url]]; + } + + return stylesheets; } - (NSArray *)prismScripts @@ -311,6 +404,18 @@ - (NSArray *)prismScripts for (NSURL *url in MPPrismScriptURLsForLanguage(language)) [scripts addObject:[MPScript javaScriptWithURL:url]]; } + + if (self.rendererFlags & HOEDOWN_HTML_BLOCKCODE_LINE_NUMBERS) + { + NSURL *url = MPPrismPluginURL(@"line-numbers", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } + if ([self.delegate rendererCodeBlockAccesory:self] + == MPCodeBlockAccessoryLanguageName) + { + NSURL *url = MPPrismPluginURL(@"show-language", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } return scripts; } @@ -319,9 +424,8 @@ - (NSArray *)mathjaxScripts NSMutableArray *scripts = [NSMutableArray array]; NSURL *url = [NSURL URLWithString:kMPMathJaxCDN]; NSBundle *bundle = [NSBundle mainBundle]; - MPEmbeddedScript *script = nil; - script = - [MPEmbeddedScript assetWithURL:[bundle URLForResource:@"callback" + MPEmbeddedScript *script = + [MPEmbeddedScript assetWithURL:[bundle URLForResource:@"init" withExtension:@"js" subdirectory:@"MathJax"] andType:kMPMathJaxConfigType]; @@ -330,11 +434,71 @@ - (NSArray *)mathjaxScripts return scripts; } +- (NSArray *)mermaidStylesheets +{ + NSMutableArray *stylesheets = [NSMutableArray array]; + + NSURL *url = MPExtensionURL(@"mermaid.forest", @"css"); + [stylesheets addObject:[MPStyleSheet CSSWithURL:url]]; + + return stylesheets; +} + +- (NSArray *)mermaidScripts +{ + // TODO + NSMutableArray *scripts = [NSMutableArray array]; + + { + NSURL *url = MPExtensionURL(@"mermaid.min", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } + { + NSURL *url = MPExtensionURL(@"mermaid.init", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } + + return scripts; +} + +- (NSArray *)graphvizScripts +{ + // TODO + NSMutableArray *scripts = [NSMutableArray array]; + + { + NSURL *url = MPExtensionURL(@"viz", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } + { + NSURL *url = MPExtensionURL(@"viz.init", @"js"); + [scripts addObject:[MPScript javaScriptWithURL:url]]; + } + + return scripts; +} + - (NSArray *)stylesheets { + id delegate = self.delegate; + NSMutableArray *stylesheets = [self.baseStylesheets mutableCopy]; - if ([self.delegate rendererHasSyntaxHighlighting:self]) + if ([delegate rendererHasSyntaxHighlighting:self]) + { [stylesheets addObjectsFromArray:self.prismStylesheets]; + // mermaid + if ([delegate rendererHasMermaid:self]) + { + [stylesheets addObjectsFromArray:self.mermaidStylesheets]; + } + + } + + if ([delegate rendererCodeBlockAccesory:self] == MPCodeBlockAccessoryCustom) + { + NSURL *url = MPExtensionURL(@"show-information", @"css"); + [stylesheets addObject:[MPStyleSheet CSSWithURL:url]]; + } return stylesheets; } @@ -344,42 +508,67 @@ - (NSArray *)scripts NSMutableArray *scripts = [NSMutableArray array]; if (self.rendererFlags & HOEDOWN_HTML_USE_TASK_LIST) { - NSBundle *bundle = [NSBundle mainBundle]; - NSURL *url = [bundle URLForResource:@"tasklist" withExtension:@"js" - subdirectory:@"Extensions"]; + NSURL *url = MPExtensionURL(@"tasklist", @"js"); [scripts addObject:[MPScript javaScriptWithURL:url]]; } if ([d rendererHasSyntaxHighlighting:self]) + { [scripts addObjectsFromArray:self.prismScripts]; + // mermaid + if ([d rendererHasMermaid:self]) + { + [scripts addObjectsFromArray:self.mermaidScripts]; + } + // graphviz + if ([d rendererHasGraphviz:self]) + { + [scripts addObjectsFromArray:self.graphvizScripts]; + } + } if ([d rendererHasMathJax:self]) [scripts addObjectsFromArray:self.mathjaxScripts]; return scripts; } #pragma mark - Public + +- (void)parseAndRenderWithMaxDelay:(NSTimeInterval)maxDelay { + [self.parseQueue cancelAllOperations]; + [self.parseQueue addOperationWithBlock:^{ + // Fetch the markdown (from the main thread) + __block NSString *markdown; + dispatch_sync(dispatch_get_main_queue(), ^{ + markdown = [[self.dataSource rendererMarkdown:self] copy]; + }); -- (void)parseAndRenderNow -{ - [self parseNowWithCommand:@selector(parse) completionHandler:^{ - [self render]; - }]; -} - -- (void)parseAndRenderLater -{ - [self parseLaterWithCommand:@selector(parse) completionHandler:^{ - [self render]; + // Parse in backgound + [self parseMarkdown:markdown]; + + // Wait untils is renderer has finished loading OR until the maxDelay has passed + // This should result in overall faster update times + NSDate *start = [NSDate date]; + __block BOOL rendererIsLoading = true; + while (rendererIsLoading || [start timeIntervalSinceNow] >= maxDelay) { + dispatch_sync(dispatch_get_main_queue(), ^{ + rendererIsLoading = [self.dataSource rendererLoading]; + }); + } + + // Render on main thread + dispatch_async(dispatch_get_main_queue(), ^{ + [self render]; + }); }]; } -- (void)parseNowWithCommand:(SEL)action completionHandler:(void(^)())handler +- (void)parseAndRenderNow { - [self parseLater:0.0 withCommand:action completionHandler:handler]; + [self parseAndRenderWithMaxDelay:0]; } -- (void)parseLaterWithCommand:(SEL)action completionHandler:(void(^)())handler +- (void)parseAndRenderLater { - [self parseLater:0.5 withCommand:action completionHandler:handler]; + [self parseAndRenderWithMaxDelay:0.5]; } - (void)parseIfPreferencesChanged @@ -389,28 +578,21 @@ - (void)parseIfPreferencesChanged || [delegate rendererHasSmartyPants:self] != self.smartypants || [delegate rendererRendersTOC:self] != self.TOC || [delegate rendererDetectsFrontMatter:self] != self.frontMatter) - [self parse]; -} - -- (void)parse -{ - void(^nextAction)() = nil; - if (self.parseDelayTimer.isValid) { - nextAction = self.parseDelayTimer.userInfo[@"next"]; - [self.parseDelayTimer invalidate]; + [self parseMarkdown:[self.dataSource rendererMarkdown:self]]; } +} +- (void)parseMarkdown:(NSString *)markdown { [self.currentLanguages removeAllObjects]; - + id delegate = self.delegate; int extensions = [delegate rendererExtensions:self]; BOOL smartypants = [delegate rendererHasSmartyPants:self]; BOOL hasFrontMatter = [delegate rendererDetectsFrontMatter:self]; BOOL hasTOC = [delegate rendererRendersTOC:self]; - + id frontMatter = nil; - NSString *markdown = [self.dataSource rendererMarkdown:self]; if (hasFrontMatter) { NSUInteger offset = 0; @@ -420,21 +602,18 @@ - (void)parse hoedown_renderer *htmlRenderer = MPCreateHTMLRenderer(self); hoedown_renderer *tocRenderer = NULL; if (hasTOC) - tocRenderer = hoedown_html_toc_renderer_new(kMPRendererTOCLevel); + tocRenderer = MPCreateHTMLTOCRenderer(); self.currentHtml = MPHTMLFromMarkdown( - markdown, extensions, smartypants, [frontMatter HTMLTable], - htmlRenderer, tocRenderer); + markdown, extensions, smartypants, [frontMatter HTMLTable], + htmlRenderer, tocRenderer); if (tocRenderer) - hoedown_html_renderer_free(tocRenderer); + hoedown_html_renderer_free(tocRenderer); MPFreeHTMLRenderer(htmlRenderer); - + self.extensions = extensions; self.smartypants = smartypants; self.TOC = hasTOC; self.frontMatter = hasFrontMatter; - - if (nextAction) - nextAction(); } - (void)renderIfPreferencesChanged @@ -443,12 +622,18 @@ - (void)renderIfPreferencesChanged id d = self.delegate; if ([d rendererHasSyntaxHighlighting:self] != self.syntaxHighlighting) changed = YES; + else if ([d rendererHasMermaid:self] != self.mermaid) + changed = YES; + else if ([d rendererHasGraphviz:self] != self.graphviz) + changed = YES; else if (!MPAreNilableStringsEqual( [d rendererHighlightingThemeName:self], self.highlightingThemeName)) changed = YES; else if (!MPAreNilableStringsEqual( [d rendererStyleName:self], self.styleName)) changed = YES; + else if ([d rendererCodeBlockAccesory:self] != self.codeBlockAccesory) + changed = YES; if (changed) [self render]; @@ -466,7 +651,10 @@ - (void)render self.styleName = [delegate rendererStyleName:self]; self.syntaxHighlighting = [delegate rendererHasSyntaxHighlighting:self]; + self.mermaid = [delegate rendererHasMermaid:self]; + self.graphviz = [delegate rendererHasGraphviz:self]; self.highlightingThemeName = [delegate rendererHighlightingThemeName:self]; + self.codeBlockAccesory = [delegate rendererCodeBlockAccesory:self]; } - (NSString *)HTMLForExportWithStyles:(BOOL)withStyles @@ -488,6 +676,16 @@ - (NSString *)HTMLForExportWithStyles:(BOOL)withStyles scriptsOption = MPAssetEmbedded; [styles addObjectsFromArray:self.prismStylesheets]; [scripts addObjectsFromArray:self.prismScripts]; + if ([self.delegate rendererHasMermaid:self]) + { + [styles addObjectsFromArray:self.mermaidStylesheets]; + [scripts addObjectsFromArray:self.mermaidScripts]; + } + if ([self.delegate rendererHasGraphviz:self]) + { + [scripts addObjectsFromArray:self.graphvizScripts]; + } + } if ([self.delegate rendererHasMathJax:self]) { @@ -503,18 +701,4 @@ - (NSString *)HTMLForExportWithStyles:(BOOL)withStyles return html; } - -#pragma mark - Private - -- (void)parseLater:(NSTimeInterval)delay - withCommand:(SEL)action completionHandler:(void(^)())handler -{ - self.parseDelayTimer = - [NSTimer scheduledTimerWithTimeInterval:delay - target:self - selector:action - userInfo:@{@"next": handler} - repeats:NO]; -} - @end diff --git a/MacDown/Code/Extension/DOMNode+Text.h b/MacDown/Code/Extension/DOMNode+Text.h new file mode 100644 index 00000000..3fe7d129 --- /dev/null +++ b/MacDown/Code/Extension/DOMNode+Text.h @@ -0,0 +1,25 @@ +// +// DOMNode+Text.h +// MacDown +// +// Created by Tzu-ping Chung on 18/1. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import + +struct DOMNodeTextCount +{ + NSUInteger words; + NSUInteger characters; + NSUInteger characterWithoutSpaces; +}; + +typedef struct DOMNodeTextCount DOMNodeTextCount; + + +@interface DOMNode (Text) + +@property (readonly, nonatomic) DOMNodeTextCount textCount; + +@end diff --git a/MacDown/Code/Extension/DOMNode+Text.m b/MacDown/Code/Extension/DOMNode+Text.m new file mode 100644 index 00000000..93006fbb --- /dev/null +++ b/MacDown/Code/Extension/DOMNode+Text.m @@ -0,0 +1,133 @@ +// +// DOMNode+Text.m +// MacDown +// +// Created by Tzu-ping Chung on 18/1. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import "DOMNode+Text.h" + +typedef NS_ENUM(NSUInteger, DOMNodeTextCountingOption) +{ + DOMNodeTextCountWords, + DOMNodeTextCountCharacters, + DOMNodeTextCountCharactersWithoutWhiteSpaces, +}; + +NS_INLINE NSUInteger MPGetNodeTextCount(DOMNode *, DOMNodeTextCountingOption); + +@implementation NSString (WordCount) + +- (NSUInteger)numberOfWords +{ + __block NSUInteger count = 0; + NSStringEnumerationOptions options = + NSStringEnumerationByWords | NSStringEnumerationSubstringNotRequired; + [self enumerateSubstringsInRange:NSMakeRange(0, self.length) + options:options usingBlock: + ^(NSString *str, NSRange strRange, NSRange enclosingRange, BOOL *stop) { + count++; + }]; + return count; +} + +- (NSUInteger)lengthWithoutNewlines +{ + static NSCharacterSet *sp = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + sp = [NSCharacterSet newlineCharacterSet]; + }); + + NSUInteger length = 0; + for (NSString *comp in [self componentsSeparatedByCharactersInSet:sp]) + length += comp.length; + return length; +} + + +- (NSUInteger)lengthWithoutWhitespacesAndNewlines +{ + static NSCharacterSet *sp = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + sp = [NSCharacterSet whitespaceAndNewlineCharacterSet]; + }); + + NSUInteger length = 0; + for (NSString *comp in [self componentsSeparatedByCharactersInSet:sp]) + length += comp.length; + return length; +} + +@end + + +NS_INLINE NSUInteger MPGetChildrenNodetextCount( + DOMNode *node, DOMNodeTextCountingOption opt) +{ + NSUInteger count = 0; + for (DOMNode *c = node.firstChild; c; c = c.nextSibling) + count += MPGetNodeTextCount(c, opt); + return count; +} + + +NS_INLINE NSUInteger MPGetNodeTextCount( + DOMNode *node, DOMNodeTextCountingOption opt) +{ + switch (node.nodeType) + { + case 1: + case 9: + case 11: + if ([node respondsToSelector:@selector(tagName)]) + { + NSString *tagName = [(id)node tagName].uppercaseString; + if ([tagName isEqualToString:@"SCRIPT"] + || [tagName isEqualToString:@"STYLE"] + || [tagName isEqualToString:@"HEAD"]) + return 0; + if (opt == DOMNodeTextCountWords + && [tagName isEqualToString:@"CODE"]) + { + // A PRE-CODE combo, i.e. a code block. Exclude. + if ([node.parentElement.tagName isEqualToString:@"PRE"]) + return 0; + // An inline code counts as ONE word if it has content. + return MPGetChildrenNodetextCount(node, opt) ? 1 : 0; + } + } + return MPGetChildrenNodetextCount(node, opt); + case 3: + case 4: + switch (opt) + { + case DOMNodeTextCountWords: + return node.nodeValue.numberOfWords; + case DOMNodeTextCountCharacters: + return node.nodeValue.lengthWithoutNewlines; + case DOMNodeTextCountCharactersWithoutWhiteSpaces: + return node.nodeValue.lengthWithoutWhitespacesAndNewlines; + } + default: + break; + } + return 0; +} + + +@implementation DOMNode (Text) + +- (DOMNodeTextCount)textCount +{ + DOMNodeTextCount count; + count.words = MPGetNodeTextCount(self, DOMNodeTextCountWords); + count.characters = MPGetNodeTextCount(self, DOMNodeTextCountCharacters); + count.characterWithoutSpaces = + MPGetNodeTextCount(self, DOMNodeTextCountCharactersWithoutWhiteSpaces); + return count; +} + +@end \ No newline at end of file diff --git a/MacDown/Code/Extension/NSDocumentController+Document.h b/MacDown/Code/Extension/NSDocumentController+Document.h new file mode 100644 index 00000000..00a8f5d4 --- /dev/null +++ b/MacDown/Code/Extension/NSDocumentController+Document.h @@ -0,0 +1,16 @@ +// +// NSDocumentController+Document.h +// MacDown +// +// Created by Tzu-ping Chung on 25/1. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import + +@interface NSDocumentController (Document) + +- (__kindof NSDocument *)createNewEmptyDocumentForURL:(NSURL *)url + display:(BOOL)display error:(NSError * __autoreleasing *)error; + +@end diff --git a/MacDown/Code/Extension/NSDocumentController+Document.m b/MacDown/Code/Extension/NSDocumentController+Document.m new file mode 100644 index 00000000..f9b5f8a2 --- /dev/null +++ b/MacDown/Code/Extension/NSDocumentController+Document.m @@ -0,0 +1,30 @@ +// +// NSDocumentController+Document.m +// MacDown +// +// Created by Tzu-ping Chung on 25/1. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import "NSDocumentController+Document.h" + +@implementation NSDocumentController (Document) + +- (__kindof NSDocument *)createNewEmptyDocumentForURL:(NSURL *)url + display:(BOOL)display error:(NSError * __autoreleasing *)error +{ + [[NSFileManager defaultManager] createFileAtPath:[url path] + contents:[NSData data] + attributes:nil]; + + NSDocument *doc = [self openUntitledDocumentAndDisplay:display + error:error]; + if (!doc) + return doc; + + doc.draft = YES; + doc.fileURL = url; + return doc; +} + +@end diff --git a/MacDown/Code/Extension/NSJSONSerialization+File.h b/MacDown/Code/Extension/NSJSONSerialization+File.h new file mode 100644 index 00000000..b3ba91aa --- /dev/null +++ b/MacDown/Code/Extension/NSJSONSerialization+File.h @@ -0,0 +1,16 @@ +// +// NSJSONSerialization+File.h +// MacDown +// +// Created by Tzu-ping Chung on 15/3. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import + +@interface NSJSONSerialization (File) + ++ (id)JSONObjectWithFileAtURL:(NSURL *)url options:(NSJSONReadingOptions)opt + error:(NSError *__autoreleasing *)error; + +@end diff --git a/MacDown/Code/Extension/NSJSONSerialization+File.m b/MacDown/Code/Extension/NSJSONSerialization+File.m new file mode 100644 index 00000000..0924032f --- /dev/null +++ b/MacDown/Code/Extension/NSJSONSerialization+File.m @@ -0,0 +1,23 @@ +// +// NSJSONSerialization+File.m +// MacDown +// +// Created by Tzu-ping Chung on 15/3. +// Copyright (c) 2015 Tzu-ping Chung . All rights reserved. +// + +#import "NSJSONSerialization+File.h" + +@implementation NSJSONSerialization (File) + ++ (id)JSONObjectWithFileAtURL:(NSURL *)url options:(NSJSONReadingOptions)opt + error:(NSError *__autoreleasing *)error +{ + NSInputStream *stream = [NSInputStream inputStreamWithURL:url]; + [stream open]; + id obj = [self JSONObjectWithStream:stream options:opt error:error]; + [stream close]; + return obj; +} + +@end diff --git a/MacDown/Code/Extension/NSPasteboard+Types.h b/MacDown/Code/Extension/NSPasteboard+Types.h new file mode 100644 index 00000000..54a339f4 --- /dev/null +++ b/MacDown/Code/Extension/NSPasteboard+Types.h @@ -0,0 +1,15 @@ +// +// NSPasteboard+Types.h +// MacDown +// +// Created by Tzu-ping Chung on 01/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import + +@interface NSPasteboard (Types) + +- (NSURL *)URLForType:(NSString *)dataType; + +@end diff --git a/MacDown/Code/Extension/NSPasteboard+Types.m b/MacDown/Code/Extension/NSPasteboard+Types.m new file mode 100644 index 00000000..f01ae74e --- /dev/null +++ b/MacDown/Code/Extension/NSPasteboard+Types.m @@ -0,0 +1,40 @@ +// +// NSPasteboard+Types.m +// MacDown +// +// Created by Tzu-ping Chung on 01/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import "NSPasteboard+Types.h" + + +@implementation NSPasteboard (Types) + +- (NSURL *)URLForType:(NSString *)dataType +{ + NSString *string = [self stringForType:dataType]; + + static NSRegularExpression *schemeRegex = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + schemeRegex = [NSRegularExpression + regularExpressionWithPattern:@"^(?:https?|file)$" + options:NSRegularExpressionCaseInsensitive + error:NULL]; + }); + + + NSURL *url = [NSURL URLWithString:string]; + if (!url) + return nil; + NSString *scheme = url.scheme; + if (!scheme) + return nil; + NSRange matchRange = [schemeRegex + rangeOfFirstMatchInString:scheme options:0 + range:NSMakeRange(0, scheme.length)]; + return (matchRange.location != NSNotFound) ? url : nil; +} + +@end diff --git a/MacDown/Code/Extension/NSString+Lookup.h b/MacDown/Code/Extension/NSString+Lookup.h index 365e41fd..f56374a7 100644 --- a/MacDown/Code/Extension/NSString+Lookup.h +++ b/MacDown/Code/Extension/NSString+Lookup.h @@ -19,4 +19,6 @@ - (id)frontMatter:(NSUInteger *)contentOffset; - (NSString *)titleString; +- (BOOL)hasExtension:(NSString *)extension; + @end diff --git a/MacDown/Code/Extension/NSString+Lookup.m b/MacDown/Code/Extension/NSString+Lookup.m index b7ac66be..fd972a29 100644 --- a/MacDown/Code/Extension/NSString+Lookup.m +++ b/MacDown/Code/Extension/NSString+Lookup.m @@ -15,24 +15,23 @@ @implementation NSString (Lookup) - (NSInteger)locationOfFirstNewlineBefore:(NSUInteger)location { - NSUInteger length = self.length; - if (location > length) - location = length; - NSInteger p = location - 1; - while (p >= 0 && !MPCharacterIsNewline([self characterAtIndex:p])) - p--; - return p; + if (location > self.length) + location = self.length; + NSUInteger start; + [self getLineStart:&start end:NULL contentsEnd:NULL + forRange:NSMakeRange(location, 0)]; + return start - 1; } - (NSUInteger)locationOfFirstNewlineAfter:(NSUInteger)location { - NSUInteger length = self.length; - if (location >= length) - return length; - NSInteger p = location + 1; - while (p < length && !MPCharacterIsNewline([self characterAtIndex:p])) - p++; - return p; + location++; + if (location > self.length) + location = self.length; + NSUInteger end; + [self getLineStart:NULL end:NULL contentsEnd:&end + forRange:NSMakeRange(location, 0)]; + return end; } - (NSUInteger)locationOfFirstNonWhitespaceCharacterInLineBefore:(NSUInteger)loc @@ -55,9 +54,11 @@ - (NSArray *)matchesForPattern:(NSString *)p - (id)frontMatter:(NSUInteger *)contentOffset { + static NSString *pattern = + @"^-{3}[\r\n]+(.*?[\r\n]+)((?:-{3})|(?:\\.{3}))"; NSRegularExpressionOptions op = NSRegularExpressionDotMatchesLineSeparators; NSRegularExpression *regex = - [NSRegularExpression regularExpressionWithPattern:@"^---\n(.*?\n)---" + [NSRegularExpression regularExpressionWithPattern:pattern options:op error:NULL]; NSTextCheckingResult *result = [regex firstMatchInString:self options:0 @@ -110,4 +111,9 @@ - (NSString *)titleString return nil; } -@end \ No newline at end of file +- (BOOL)hasExtension:(NSString *)extension +{ + return [self.pathExtension isEqualToString:extension]; +} + +@end diff --git a/MacDown/Code/Extension/NSTextView+Autocomplete.m b/MacDown/Code/Extension/NSTextView+Autocomplete.m index 0ebac563..b27df5ad 100644 --- a/MacDown/Code/Extension/NSTextView+Autocomplete.m +++ b/MacDown/Code/Extension/NSTextView+Autocomplete.m @@ -15,6 +15,14 @@ static const unichar kMPRightSingleQuotation = L'\u2019'; static const unichar kMPLeftDoubleQuotation = L'\u201c'; static const unichar kMPRightDoubleQuotation = L'\u201d'; +static const unichar kMPLeftAngleSingleQuotation = L'\u2039'; +static const unichar kMPRightAngleSingleQuotation = L'\u203a'; +static const unichar kMPLeftAngleDoubleQuotation = L'\u00ab'; +static const unichar kMPRightAngleDoubleQuotation = L'\u00bb'; +static const unichar kMPLeftAngleSingleBracket = L'\u3008'; +static const unichar kMPRightAngleSingleBracket = L'\u3009'; +static const unichar kMPLeftAngleDoubleBracket = L'\u300a'; +static const unichar kMPRightAngleDoubleBracket = L'\u300b'; static const unichar kMPMatchingCharactersMap[][2] = { {L'(', L')'}, @@ -28,6 +36,10 @@ {L'\u300e', L'\u300f'}, // white corner brackets {kMPLeftSingleQuotation, kMPRightSingleQuotation}, {kMPLeftDoubleQuotation, kMPRightDoubleQuotation}, + {kMPLeftAngleSingleQuotation, kMPRightAngleSingleQuotation}, // Latin Single Guillemet + {kMPLeftAngleDoubleQuotation, kMPRightAngleDoubleQuotation}, // Latin Double Guillemet + {kMPLeftAngleSingleBracket, kMPRightAngleSingleBracket}, // East Asian Single Guillemet + {kMPLeftAngleDoubleBracket, kMPRightAngleDoubleBracket}, // East Asian Double Guillemet {L'\0', L'\0'}, }; @@ -314,17 +326,21 @@ - (void)toggleBlockWithPattern:(NSString *)pattern prefix:(NSString *)prefix NSRange lineRange = [content lineRangeForRange:selectedRange]; NSString *toProcess = [content substringWithRange:lineRange]; + BOOL hasTrailingNewline = NO; + if ([toProcess hasSuffix:@"\n"]) + { + toProcess = [toProcess substringToIndex:(toProcess.length - 1)]; + hasTrailingNewline = YES; + } + NSArray *lines = [toProcess componentsSeparatedByString:@"\n"]; BOOL isMarked = YES; for (NSString *line in lines) { - NSUInteger lineLength = line.length; - if (!lineLength) - continue; NSRange matchRange = [regex rangeOfFirstMatchInString:line options:0 - range:NSMakeRange(0, lineLength)]; + range:NSMakeRange(0, line.length)]; if (matchRange.location == NSNotFound) { isMarked = NO; @@ -339,27 +355,38 @@ - (void)toggleBlockWithPattern:(NSString *)pattern prefix:(NSString *)prefix [lines enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) { NSString *line = obj; if (line.length) - { totalShift += prefixLength; - if (!isMarked) - line = [prefix stringByAppendingString:line]; - else - line = [line substringFromIndex:prefixLength]; - } + if (!isMarked) + line = [prefix stringByAppendingString:line]; + else + line = [line substringFromIndex:prefixLength]; [modLines addObject:line]; }]; + NSString *processed = [modLines componentsJoinedByString:@"\n"]; + if (hasTrailingNewline) + processed = [NSString stringWithFormat:@"%@\n", processed]; [self insertText:processed replacementRange:lineRange]; if (!isMarked) { selectedRange.location += prefixLength; - selectedRange.length += totalShift - prefixLength; + if (selectedRange.length + totalShift >= prefixLength) + selectedRange.length += totalShift - prefixLength; + else // Underflow. + selectedRange.length = 0; } else { - selectedRange.location -= prefixLength; - selectedRange.length -= totalShift - prefixLength; + if (prefixLength <= selectedRange.location) + selectedRange.location -= prefixLength; + else // Underflow. + selectedRange.location = 0; + if (totalShift - prefixLength <= selectedRange.length) + selectedRange.length -= totalShift - prefixLength; + else // Underflow. + selectedRange.length = 0; + if (selectedRange.location < lineRange.location) { selectedRange.length -= lineRange.location - selectedRange.location; @@ -384,17 +411,20 @@ - (void)indentSelectedLinesWithPadding:(NSString *)padding [lines enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) { NSString *line = obj; if (line.length) - { totalShift += paddingLength; - line = [padding stringByAppendingString:line]; - } - [modLines addObject:line]; + [modLines addObject:[padding stringByAppendingString:line]]; }]; + if ([modLines.lastObject isEqualToString:padding]) + { + [modLines removeLastObject]; + [modLines addObject:@""]; + } NSString *processed = [modLines componentsJoinedByString:@"\n"]; [self insertText:processed replacementRange:lineRange]; selectedRange.location += paddingLength; - selectedRange.length += totalShift - paddingLength; + selectedRange.length += + (totalShift > paddingLength) ? totalShift - paddingLength : 0; self.selectedRange = selectedRange; } @@ -404,17 +434,22 @@ - (void)unindentSelectedLines NSRange selectedRange = self.selectedRange; NSRange lineRange = [content lineRangeForRange:selectedRange]; + // Get the lines to unindent. NSString *toProcess = [content substringWithRange:lineRange]; NSArray *lines = [toProcess componentsSeparatedByString:@"\n"]; + + // This will hold the modified lines. NSMutableArray *modLines = [NSMutableArray arrayWithCapacity:lines.count]; - __block NSUInteger firstShift = 0; - __block NSUInteger totalShift = 0; + // Unindent the lines one by one, and put them in the new array. + __block NSUInteger firstShift = 0; // Indentation of the first line. + __block NSUInteger totalShift = 0; // Indents removed in total. [lines enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) { NSString *line = obj; NSUInteger lineLength = line.length; NSUInteger shift = 0; - for (shift = 0; shift <= 4; shift++) + + for (shift = 0; shift < 4; shift++) { if (shift >= lineLength) break; @@ -431,9 +466,13 @@ - (void)unindentSelectedLines line = [line substringFromIndex:shift]; [modLines addObject:line]; }]; + + // Join the processed lines, and replace the original with them. NSString *processed = [modLines componentsJoinedByString:@"\n"]; [self insertText:processed replacementRange:lineRange]; + // Modify the selection range so that the same text (minus removed spaces) + // are selected. selectedRange.location -= firstShift; selectedRange.length -= totalShift - firstShift; self.selectedRange = selectedRange; @@ -445,14 +484,12 @@ - (BOOL)insertMappedContent NSUInteger contentLength = content.length; if (contentLength > 20) return NO; + static NSDictionary *map = nil; - if (!map) - { - NSBundle *bundle = [NSBundle mainBundle]; - NSString *filePath = [bundle pathForResource:@"data" ofType:@"map" - inDirectory:@"Data"]; - map = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath]; - } + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + map = MPGetDataMap(@"data"); + }); NSData *mapped = map[content]; if (!mapped) return NO; diff --git a/macdown-cmd/NSUserDefaults+Suite.h b/MacDown/Code/Extension/NSUserDefaults+Suite.h similarity index 84% rename from macdown-cmd/NSUserDefaults+Suite.h rename to MacDown/Code/Extension/NSUserDefaults+Suite.h index bf84aa29..8666f255 100644 --- a/macdown-cmd/NSUserDefaults+Suite.h +++ b/MacDown/Code/Extension/NSUserDefaults+Suite.h @@ -11,6 +11,7 @@ @interface NSUserDefaults (Suite) - (instancetype)initWithSuiteNamed:(NSString *)suiteName; +- (id)objectForKey:(NSString *)key inSuiteNamed:(NSString *)suiteName; - (void)setObject:(id)value forKey:(NSString *)key inSuiteNamed:(NSString *)suiteName; diff --git a/macdown-cmd/NSUserDefaults+Suite.m b/MacDown/Code/Extension/NSUserDefaults+Suite.m similarity index 68% rename from macdown-cmd/NSUserDefaults+Suite.m rename to MacDown/Code/Extension/NSUserDefaults+Suite.m index e4d0b37e..b2f1d9c0 100644 --- a/macdown-cmd/NSUserDefaults+Suite.m +++ b/MacDown/Code/Extension/NSUserDefaults+Suite.m @@ -19,6 +19,15 @@ - (instancetype)initWithSuiteNamed:(NSString *)suiteName return self; } +- (id)objectForKey:(NSString *)key inSuiteNamed:(NSString *)suiteName +{ + id value = (__bridge id)CFPreferencesCopyValue( + (__bridge CFStringRef)key, + (__bridge CFStringRef)suiteName, + kCFPreferencesCurrentUser, kCFPreferencesAnyHost); + return value; +} + - (void)setObject:(id)value forKey:(NSString *)key inSuiteNamed:(NSString *)suiteName { diff --git a/MacDown/Code/Extension/WebView+WebViewPrivateHeaders.h b/MacDown/Code/Extension/WebView+WebViewPrivateHeaders.h new file mode 100644 index 00000000..a6d511d0 --- /dev/null +++ b/MacDown/Code/Extension/WebView+WebViewPrivateHeaders.h @@ -0,0 +1,26 @@ +// +// WebView+WebViewPrivateHeaders.h +// MacDown +// +// Created by Jan on 14.07.14. +// Copyright (c) 2014 Tzu-ping Chung . All rights reserved. +// + +#import + +@interface WebView (WebViewPrivateHeaders) + +/*! + @method setPageSizeMultiplier: + @abstract Change the zoom factor of the page in views managed by this webView. + @param multiplier A fractional percentage value, 1.0 is 100%. + */ +- (void)setPageSizeMultiplier:(float)multiplier; + +/*! + @method pageSizeMultiplier + @result The page size multipler. + */ +- (float)pageSizeMultiplier; + +@end diff --git a/MacDown/Code/Extension/hoedown_html_patch.c b/MacDown/Code/Extension/hoedown_html_patch.c index 8ba0ee53..906decbf 100644 --- a/MacDown/Code/Extension/hoedown_html_patch.c +++ b/MacDown/Code/Extension/hoedown_html_patch.c @@ -13,6 +13,8 @@ #include "hoedown_html_patch.h" #define USE_XHTML(opt) (opt->flags & HOEDOWN_HTML_USE_XHTML) +#define USE_BLOCKCODE_INFORMATION(opt) \ + (opt->flags & HOEDOWN_HTML_BLOCKCODE_INFORMATION) #define USE_TASK_LIST(opt) (opt->flags & HOEDOWN_HTML_USE_TASK_LIST) // rndr_blockcode from HEAD. The "language-" prefix in class in needed to make @@ -23,31 +25,67 @@ void hoedown_patch_render_blockcode( { if (ob->size) hoedown_buffer_putc(ob, '\n'); - if (lang) { - hoedown_html_renderer_state_extra *extra = - ((hoedown_html_renderer_state *)data->opaque)->opaque; - hoedown_buffer *mapped = NULL; - if (extra->language_addition) - mapped = extra->language_addition(lang, extra->owner); - HOEDOWN_BUFPUTSL(ob, "
data, mapped->size, 0);
-            hoedown_buffer_free(mapped);
-        }
-        else
+    hoedown_html_renderer_state *state = data->opaque;
+    hoedown_html_renderer_state_extra *extra = state->opaque;
+
+    hoedown_buffer *front = NULL;
+    hoedown_buffer *back = NULL;
+    if (lang && USE_BLOCKCODE_INFORMATION(state))
+    {
+        front = hoedown_buffer_new(lang->size);
+        back = hoedown_buffer_new(lang->size);
+
+        hoedown_buffer *current = front;
+        for (size_t i = 0; i < lang->size; i++)
         {
-            hoedown_escape_html(ob, lang->data, lang->size, 0);
+            uint8_t c = lang->data[i];
+            if (current == front && c == ':')
+                current = back;
+            else
+                hoedown_buffer_putc(current, c);
         }
-		HOEDOWN_BUFPUTSL(ob, "\">");
-	} else {
-		HOEDOWN_BUFPUTSL(ob, "
");
-	}
+        lang = front;
+    }
+
+    hoedown_buffer *mapped = NULL;
+    if (lang && extra->language_addition)
+    {
+        mapped = extra->language_addition(lang, extra->owner);
+        if (mapped)
+            lang = mapped;
+    }
+
+    HOEDOWN_BUFPUTSL(ob, "
flags & HOEDOWN_HTML_BLOCKCODE_LINE_NUMBERS) + HOEDOWN_BUFPUTSL(ob, " class=\"line-numbers\""); + if (back && back->size) + { + HOEDOWN_BUFPUTSL(ob, " data-information=\""); + hoedown_buffer_put(ob, back->data, back->size); + HOEDOWN_BUFPUTSL(ob, "\""); + } + HOEDOWN_BUFPUTSL(ob, ">size) + hoedown_escape_html(ob, lang->data, lang->size, 0); + else + HOEDOWN_BUFPUTSL(ob, "none"); + HOEDOWN_BUFPUTSL(ob, "\">"); if (text) - hoedown_escape_html(ob, text->data, text->size, 0); + { + // Remove last newline to prevent prism from adding a blank line at the + // end of code blocks. + size_t size = text->size; + if (size > 0 && text->data[size - 1] == '\n') + size--; + hoedown_escape_html(ob, text->data, size, 0); + } + + HOEDOWN_BUFPUTSL(ob, "
\n"); - HOEDOWN_BUFPUTSL(ob, "
\n"); + hoedown_buffer_free(mapped); + hoedown_buffer_free(front); + hoedown_buffer_free(back); } // Supports task list syntax if HOEDOWN_HTML_USE_TASK_LIST is on. @@ -105,3 +143,43 @@ void hoedown_patch_render_listitem( } HOEDOWN_BUFPUTSL(ob, "\n"); } + +// Adds a "toc" class to the outmost UL element to support TOC styling. +void hoedown_patch_render_toc_header( + hoedown_buffer *ob, const hoedown_buffer *content, int level, + const hoedown_renderer_data *data) +{ + hoedown_html_renderer_state *state = data->opaque; + + if (level <= state->toc_data.nesting_level) { + /* set the level offset if this is the first header + * we're parsing for the document */ + if (state->toc_data.current_level == 0) + state->toc_data.level_offset = level - 1; + + level -= state->toc_data.level_offset; + + if (level > state->toc_data.current_level) { + while (level > state->toc_data.current_level) { + if (state->toc_data.current_level == 0) + HOEDOWN_BUFPUTSL(ob, "
    \n
  • \n"); + else + HOEDOWN_BUFPUTSL(ob, "
      \n
    • \n"); + state->toc_data.current_level++; + } + } else if (level < state->toc_data.current_level) { + HOEDOWN_BUFPUTSL(ob, "
    • \n"); + while (level < state->toc_data.current_level) { + HOEDOWN_BUFPUTSL(ob, "
    \n
  • \n"); + state->toc_data.current_level--; + } + HOEDOWN_BUFPUTSL(ob,"
  • \n"); + } else { + HOEDOWN_BUFPUTSL(ob,"
  • \n
  • \n"); + } + + hoedown_buffer_printf(ob, "", state->toc_data.header_count++); + if (content) hoedown_buffer_put(ob, content->data, content->size); + HOEDOWN_BUFPUTSL(ob, "\n"); + } +} diff --git a/MacDown/Code/Extension/hoedown_html_patch.h b/MacDown/Code/Extension/hoedown_html_patch.h index 3582a6b6..159553ff 100644 --- a/MacDown/Code/Extension/hoedown_html_patch.h +++ b/MacDown/Code/Extension/hoedown_html_patch.h @@ -10,6 +10,8 @@ #define MacDown_hoedown_html_patch_h static unsigned int HOEDOWN_HTML_USE_TASK_LIST = (1 << 4); +static unsigned int HOEDOWN_HTML_BLOCKCODE_LINE_NUMBERS = (1 << 5); +static unsigned int HOEDOWN_HTML_BLOCKCODE_INFORMATION = (1 << 6); typedef struct hoedown_buffer hoedown_buffer; @@ -30,4 +32,8 @@ void hoedown_patch_render_listitem( hoedown_buffer *ob, const hoedown_buffer *text, hoedown_list_flags flags, const hoedown_renderer_data *data); +void hoedown_patch_render_toc_header( + hoedown_buffer *ob, const hoedown_buffer *content, int level, + const hoedown_renderer_data *data); + #endif diff --git a/MacDown/Code/Preferences/MPEditorPreferencesViewController.m b/MacDown/Code/Preferences/MPEditorPreferencesViewController.m index c3713041..200a230e 100644 --- a/MacDown/Code/Preferences/MPEditorPreferencesViewController.m +++ b/MacDown/Code/Preferences/MPEditorPreferencesViewController.m @@ -25,9 +25,9 @@ @interface MPEditorPreferencesViewController () @implementation MPEditorPreferencesViewController -#pragma mark - MASPrefernecesViewController +#pragma mark - MASPreferencesViewController -- (NSString *)identifier +- (NSString *)viewIdentifier { return @"EditorPreferences"; } @@ -69,7 +69,7 @@ - (void)loadThemes NSArray *itemTitles = MPListEntriesForDirectory( kMPThemesDirectoryName, - MPFileNameHasSuffixProcessor(kMPThemeFileExtension) + MPFileNameHasExtensionProcessor(kMPThemeFileExtension) ); [self.themeSelect addItemWithTitle:@""]; diff --git a/MacDown/Code/Preferences/MPGeneralPreferencesViewController.m b/MacDown/Code/Preferences/MPGeneralPreferencesViewController.m index 7ac32626..bd1ff757 100644 --- a/MacDown/Code/Preferences/MPGeneralPreferencesViewController.m +++ b/MacDown/Code/Preferences/MPGeneralPreferencesViewController.m @@ -17,9 +17,9 @@ @interface MPGeneralPreferencesViewController () @implementation MPGeneralPreferencesViewController -#pragma mark - MASPrefernecesViewController +#pragma mark - MASPreferencesViewController -- (NSString *)identifier +- (NSString *)viewIdentifier { return @"GeneralPreferences"; } diff --git a/MacDown/Code/Preferences/MPHtmlPreferencesViewController.m b/MacDown/Code/Preferences/MPHtmlPreferencesViewController.m index 7ad86c55..89c8d1b4 100644 --- a/MacDown/Code/Preferences/MPHtmlPreferencesViewController.m +++ b/MacDown/Code/Preferences/MPHtmlPreferencesViewController.m @@ -11,7 +11,7 @@ #import "MPPreferences.h" -static NSString *MPPrismDefaultThemeName() +NS_INLINE NSString *MPPrismDefaultThemeName() { return NSLocalizedString(@"(Default)", @"Prism theme title"); } @@ -26,9 +26,9 @@ @interface MPHtmlPreferencesViewController () @implementation MPHtmlPreferencesViewController -#pragma mark - MASPrefernecesViewController +#pragma mark - MASPreferencesViewController -- (NSString *)identifier +- (NSString *)viewIdentifier { return @"HtmlPreferences"; } @@ -110,7 +110,7 @@ - (void)loadStylesheets NSArray *itemTitles = MPListEntriesForDirectory( kMPStylesDirectoryName, - MPFileNameHasSuffixProcessor(kMPStyleFileExtension) + MPFileNameHasExtensionProcessor(kMPStyleFileExtension) ); [self.stylesheetSelect addItemWithTitle:@""]; diff --git a/MacDown/Code/Preferences/MPMarkdownPreferencesViewController.m b/MacDown/Code/Preferences/MPMarkdownPreferencesViewController.m index 688ddfac..94e2343d 100644 --- a/MacDown/Code/Preferences/MPMarkdownPreferencesViewController.m +++ b/MacDown/Code/Preferences/MPMarkdownPreferencesViewController.m @@ -11,9 +11,9 @@ @implementation MPMarkdownPreferencesViewController -#pragma mark - MASPrefernecesViewController +#pragma mark - MASPreferencesViewController -- (NSString *)identifier +- (NSString *)viewIdentifier { return @"MarkdownPreferences"; } diff --git a/MacDown/Code/Preferences/MPPreferences.h b/MacDown/Code/Preferences/MPPreferences.h index 60f511a7..e14d2621 100644 --- a/MacDown/Code/Preferences/MPPreferences.h +++ b/MacDown/Code/Preferences/MPPreferences.h @@ -11,13 +11,14 @@ extern NSString * const MPDidDetectFreshInstallationNotification; + @interface MPPreferences : PAPreferences @property (assign) NSString *firstVersionInstalled; @property (assign) NSString *latestVersionInstalled; @property (assign) BOOL updateIncludesPreReleases; -@property (assign) NSArray *filesToOpenOnNextLaunch; @property (assign) BOOL supressesUntitledDocumentOnLaunch; +@property (assign) BOOL createFileForLinkTarget; // Extension flags. @property (assign) BOOL extensionIntraEmphasis; @@ -37,6 +38,7 @@ extern NSString * const MPDidDetectFreshInstallationNotification; @property (assign) NSDictionary *editorBaseFontInfo; @property (assign) BOOL editorAutoIncrementNumberedLists; @property (assign) BOOL editorConvertTabs; +@property (assign) BOOL editorInsertPrefixInBlock; @property (assign) BOOL editorCompleteMatchingCharacters; @property (assign) BOOL editorSyncScrolling; @property (assign) BOOL editorSmartHome; @@ -51,7 +53,11 @@ extern NSString * const MPDidDetectFreshInstallationNotification; @property (assign) NSInteger editorWordCountType; @property (assign) BOOL editorScrollsPastEnd; @property (assign) BOOL editorEnsuresNewlineAtEndOfFile; +@property (assign) NSInteger editorUnorderedListMarkerType; + +@property (assign) BOOL previewZoomRelativeToBaseFontSize; +@property (assign) NSString *htmlTemplateName; @property (assign) NSString *htmlStyleName; @property (assign) BOOL htmlDetectFrontMatter; @property (assign) BOOL htmlTaskList; @@ -60,11 +66,23 @@ extern NSString * const MPDidDetectFreshInstallationNotification; @property (assign) BOOL htmlMathJaxInlineDollar; @property (assign) BOOL htmlSyntaxHighlighting; @property (assign) NSString *htmlHighlightingThemeName; +@property (assign) BOOL htmlLineNumbers; +@property (assign) BOOL htmlGraphviz; +@property (assign) BOOL htmlMermaid; +@property (assign) NSInteger htmlCodeBlockAccessory; @property (assign) NSURL *htmlDefaultDirectoryUrl; +@property (assign) BOOL htmlRendersTOC; // Calculated values. +@property (readonly) NSString *editorBaseFontName; +@property (readonly) CGFloat editorBaseFontSize; @property (nonatomic, assign) NSFont *editorBaseFont; +@property (readonly) NSString *editorUnorderedListMarker; - (instancetype)init; +// Convinience methods. +@property (nonatomic, assign) NSArray *filesToOpen; +@property (nonatomic, assign) NSString *pipedContentFileToOpen; + @end diff --git a/MacDown/Code/Preferences/MPPreferences.m b/MacDown/Code/Preferences/MPPreferences.m index ed7c1512..4f54f8e9 100644 --- a/MacDown/Code/Preferences/MPPreferences.m +++ b/MacDown/Code/Preferences/MPPreferences.m @@ -7,6 +7,17 @@ // #import "MPPreferences.h" +#import "NSUserDefaults+Suite.h" +#import "MPGlobals.h" + + +typedef NS_ENUM(NSUInteger, MPUnorderedListMarkerType) +{ + MPUnorderedListMarkerAsterisk = 0, + MPUnorderedListMarkerPlusSign = 1, + MPUnorderedListMarkerMinusSign = 2, +}; + NSString * const MPDidDetectFreshInstallationNotification = @@ -62,8 +73,8 @@ - (instancetype)init @dynamic firstVersionInstalled; @dynamic latestVersionInstalled; @dynamic updateIncludesPreReleases; -@dynamic filesToOpenOnNextLaunch; @dynamic supressesUntitledDocumentOnLaunch; +@dynamic createFileForLinkTarget; @dynamic extensionIntraEmphasis; @dynamic extensionTables; @@ -81,6 +92,7 @@ - (instancetype)init @dynamic editorAutoIncrementNumberedLists; @dynamic editorConvertTabs; +@dynamic editorInsertPrefixInBlock; @dynamic editorCompleteMatchingCharacters; @dynamic editorSyncScrolling; @dynamic editorSmartHome; @@ -95,7 +107,11 @@ - (instancetype)init @dynamic editorWordCountType; @dynamic editorScrollsPastEnd; @dynamic editorEnsuresNewlineAtEndOfFile; +@dynamic editorUnorderedListMarkerType; +@dynamic previewZoomRelativeToBaseFontSize; + +@dynamic htmlTemplateName; @dynamic htmlStyleName; @dynamic htmlDetectFrontMatter; @dynamic htmlTaskList; @@ -105,25 +121,80 @@ - (instancetype)init @dynamic htmlSyntaxHighlighting; @dynamic htmlDefaultDirectoryUrl; @dynamic htmlHighlightingThemeName; +@dynamic htmlLineNumbers; +@dynamic htmlGraphviz; +@dynamic htmlMermaid; +@dynamic htmlCodeBlockAccessory; +@dynamic htmlRendersTOC; // Private preference. @dynamic editorBaseFontInfo; +- (NSString *)editorBaseFontName +{ + return [self.editorBaseFontInfo[kMPDefaultEditorFontNameKey] copy]; +} + +- (CGFloat)editorBaseFontSize +{ + NSDictionary *info = self.editorBaseFontInfo; + return [info[kMPDefaultEditorFontPointSizeKey] doubleValue]; +} + - (NSFont *)editorBaseFont { - NSDictionary *info = [self.editorBaseFontInfo copy]; - NSFont *font = [NSFont fontWithName:info[@"name"] - size:[info[@"size"] doubleValue]]; - return font; + return [NSFont fontWithName:self.editorBaseFontName + size:self.editorBaseFontSize]; } - (void)setEditorBaseFont:(NSFont *)font { - NSDictionary *info = - @{@"name": font.fontName, @"size": @(font.pointSize)}; + NSDictionary *info = @{ + kMPDefaultEditorFontNameKey: font.fontName, + kMPDefaultEditorFontPointSizeKey: @(font.pointSize) + }; self.editorBaseFontInfo = info; } +- (NSString *)editorUnorderedListMarker +{ + switch (self.editorUnorderedListMarkerType) + { + case MPUnorderedListMarkerAsterisk: + return @"* "; + case MPUnorderedListMarkerPlusSign: + return @"+ "; + case MPUnorderedListMarkerMinusSign: + return @"- "; + default: + return @"* "; + } +} + +- (NSArray *)filesToOpen +{ + return [self.userDefaults objectForKey:kMPFilesToOpenKey + inSuiteNamed:kMPApplicationSuiteName]; +} + +- (void)setFilesToOpen:(NSArray *)filesToOpen +{ + [self.userDefaults setObject:filesToOpen + forKey:kMPFilesToOpenKey + inSuiteNamed:kMPApplicationSuiteName]; +} + +- (NSString *)pipedContentFileToOpen { + return [self.userDefaults objectForKey:kMPPipedContentFileToOpen + inSuiteNamed:kMPApplicationSuiteName]; +} + +- (void)setPipedContentFileToOpen:(NSString *)pipedContentFileToOpenPath { + [self.userDefaults setObject:pipedContentFileToOpenPath + forKey:kMPPipedContentFileToOpen + inSuiteNamed:kMPApplicationSuiteName]; +} + #pragma mark - Private @@ -152,29 +223,55 @@ - (void)cleanupObsoleteAutosaveValues [defaults removeObjectForKey:key]; } +/** Load app-default preferences on first launch. + * + * Preferences that need to be initialized manually are put here, and will be + * applied when the user launches MacDown the first time. + * + * Avoid putting preferences that doe not need initialization here. E.g. a + * boolean preference defaults to `NO` implicitly (because `nil.booleanValue` is + * `NO` in Objective-C), thus does not need initialization. + * + * Note that since this is called only when the user launches the app the first + * time, new preferences that breaks backward compatibility should NOT be put + * here. An example would be adding a boolean config to turn OFF an existing + * functionality. If you add the defualt-loading code here, existing users + * upgrading from an old version will not have this method invoked, thus + * effecting app behavior. + * + * @see -loadDefaultUserDefaults + */ - (void)loadDefaultPreferences { self.extensionIntraEmphasis = YES; self.extensionTables = YES; self.extensionFencedCode = YES; self.extensionFootnotes = YES; - self.editorBaseFontInfo = [NSDictionary dictionaryWithObjectsAndKeys: - kMPDefaultEditorFontName, kMPDefaultEditorFontNameKey, - @(kMPDefaultEditorFontPointSize), kMPDefaultEditorFontPointSizeKey, - nil]; + self.editorBaseFontInfo = @{ + kMPDefaultEditorFontNameKey: kMPDefaultEditorFontName, + kMPDefaultEditorFontPointSizeKey: @(kMPDefaultEditorFontPointSize), + }; self.editorStyleName = kMPDefaultEditorThemeName; self.editorHorizontalInset = kMPDefaultEditorHorizontalInset; self.editorVerticalInset = kMPDefaultEditorVerticalInset; self.editorLineSpacing = kMPDefaultEditorLineSpacing; self.editorSyncScrolling = kMPDefaultEditorSyncScrolling; - self.editorOnRight = NO; - self.editorShowWordCount = NO; - self.editorWordCountType = 0; self.htmlStyleName = kMPDefaultHtmlStyleName; self.htmlDefaultDirectoryUrl = [NSURL fileURLWithPath:NSHomeDirectory() isDirectory:YES]; } +/** Load default preferences when the app launches. + * + * Preferences that need to be initialized manually are put here, and will be + * applied when the user launches MacDown. + * + * This differs from -loadDefaultPreferences in that it is invoked *every time* + * MacDown is launched, making it suitable to perform backward-compatibility + * checks. + * + * @see -loadDefaultPreferences + */ - (void)loadDefaultUserDefaults { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; @@ -182,6 +279,10 @@ - (void)loadDefaultUserDefaults self.editorMaximumWidth = 1000.0; if (![defaults objectForKey:@"editorAutoIncrementNumberedLists"]) self.editorAutoIncrementNumberedLists = YES; + if (![defaults objectForKey:@"editorInsertPrefixInBlock"]) + self.editorInsertPrefixInBlock = YES; + if (![defaults objectForKey:@"htmlTemplateName"]) + self.htmlTemplateName = @"Default"; } @end diff --git a/MacDown/Code/Preferences/MPTerminalPreferencesViewController.h b/MacDown/Code/Preferences/MPTerminalPreferencesViewController.h new file mode 100644 index 00000000..84c3b032 --- /dev/null +++ b/MacDown/Code/Preferences/MPTerminalPreferencesViewController.h @@ -0,0 +1,15 @@ +// +// MPTerminalPreferencesViewController.h +// MacDown +// +// Created by Niklas Berglund on 2017-01-11. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import "MPPreferencesViewController.h" +#import + +@interface MPTerminalPreferencesViewController : MPPreferencesViewController + + +@end diff --git a/MacDown/Code/Preferences/MPTerminalPreferencesViewController.m b/MacDown/Code/Preferences/MPTerminalPreferencesViewController.m new file mode 100644 index 00000000..fc1b1a59 --- /dev/null +++ b/MacDown/Code/Preferences/MPTerminalPreferencesViewController.m @@ -0,0 +1,209 @@ +// +// MPTerminalPreferencesViewController.m +// MacDown +// +// Created by Niklas Berglund on 2017-01-11. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import "MPGlobals.h" +#import "MPHomebrewSubprocessController.h" +#import "MPPreferences.h" +#import "MPTerminalPreferencesViewController.h" +#import "MPUtilities.h" + + +NS_INLINE NSColor *MPGetInstallationIndicatorColor(BOOL installed) +{ + static NSColor *installedColor = nil; + static NSColor *uninstalledColor = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + installedColor = [NSColor colorWithDeviceRed:0.357 green:0.659 + blue:0.192 alpha:1.000]; + uninstalledColor = [NSColor colorWithDeviceRed:0.897 green:0.231 + blue:0.21 alpha:1.000]; + }); + if (installed) + return installedColor; + else + return uninstalledColor; +} + + +@interface MPTerminalPreferencesViewController () + +@property (weak) IBOutlet NSTextField *supportIndicator; +@property (weak) IBOutlet NSTextField *supportTextField; +@property (weak) IBOutlet NSTextField *infoTextField; +@property (weak) IBOutlet NSTextField *locationTextField; +@property (weak) IBOutlet NSButton *installUninstallButton; + +@property (nonatomic) NSURL *shellUtilityURL; + +@end + +@implementation MPTerminalPreferencesViewController + + +#pragma mark - Accessors. + +- (void)setShellUtilityURL:(NSURL *)url +{ + _shellUtilityURL = url; + if (url) + { + self.supportIndicator.textColor = MPGetInstallationIndicatorColor(YES); + self.supportTextField.stringValue = NSLocalizedString( + @"Shell utility installed", + @"Label stating that shell utility has been installed"); + self.locationTextField.stringValue = url.path; + self.locationTextField.font = + [NSFont fontWithName:@"Menlo" + size:self.locationTextField.font.pointSize]; + self.installUninstallButton.title = NSLocalizedString( + @"Uninstall", @"Uninstall shell utility button"); + self.installUninstallButton.action = @selector(uninstallShellUtility); + } + else + { + self.supportIndicator.textColor = MPGetInstallationIndicatorColor(NO); + self.supportTextField.stringValue = NSLocalizedString( + @"Shell utility not installed", + @"Label stating that shell utility has not been installed"); + self.locationTextField.stringValue = NSLocalizedString( + @"", + @"Displayed when shell utility is not installed"); + + NSFont *font = + [NSFont systemFontOfSize:self.locationTextField.font.pointSize]; + self.locationTextField.font = + [[NSFontManager sharedFontManager] convertFont:font + toHaveTrait:NSFontItalicTrait]; + self.installUninstallButton.title = NSLocalizedString( + @"Install", @"Install shell utility button"); + self.installUninstallButton.action = @selector(installShellUtility); + } +} + + +- (void)viewDidLoad +{ + [super viewDidLoad]; + [self highlightMacdownInInfo]; + + self.installUninstallButton.target = self; + self.shellUtilityURL = nil; +} + +- (void)viewWillAppear +{ + [self lookForShellUtility]; +} + +#pragma mark - MASPreferencesViewController + +- (NSString *)viewIdentifier +{ + return @"TerminalPreferences"; +} + +- (NSImage *)toolbarItemImage +{ + return [NSImage imageNamed:@"PreferencesTerminal"]; +} + +- (NSString *)toolbarItemLabel +{ + return NSLocalizedString(@"Terminal", @"Preference pane title."); +} + +#pragma mark - Private methods + +/** + * Searches for the the macdown shell utility and invokes foundShellUtilityAtURL: if found. + */ +- (void)lookForShellUtility +{ + __weak MPTerminalPreferencesViewController *weakSelf = self; + MPDetectHomebrewPrefixWithCompletionhandler(^(NSString *output) { + NSString *macdownPath = MPCommandInstallationPath; + if (output) + { + NSCharacterSet *padding = + [NSCharacterSet whitespaceAndNewlineCharacterSet]; + NSString *prefix = [output stringByTrimmingCharactersInSet:padding]; + macdownPath = + [prefix stringByAppendingPathComponent:@"bin/macdown"]; + } + + if ([[NSFileManager defaultManager] fileExistsAtPath:macdownPath]) + weakSelf.shellUtilityURL = [NSURL fileURLWithPath:macdownPath]; + }); +} + +- (void)installShellUtility +{ + // URL for macdown utility in .app bundle + NSURL *sharedSupportURL = [NSBundle mainBundle].sharedSupportURL; + NSString *utilityBundlePath = + [sharedSupportURL URLByAppendingPathComponent:@"bin/macdown"].path; + + NSFileManager *fm = [NSFileManager defaultManager]; + if ([fm fileExistsAtPath:utilityBundlePath]) + { + BOOL ok = [fm createSymbolicLinkAtPath:MPCommandInstallationPath + withDestinationPath:utilityBundlePath error:NULL]; + if (ok) + [self lookForShellUtility]; + // TODO: Handle install failure. + } +} + +- (void)uninstallShellUtility +{ + NSURL *url = self.shellUtilityURL; + if (!url) + return; + BOOL ok = [[NSFileManager defaultManager] removeItemAtURL:url error:NULL]; + if (ok) + self.shellUtilityURL = nil; + // TODO: Handle removal failure. +} + +/** + * Highlights all occurences of "macdown" in the info-text + */ +- (void)highlightMacdownInInfo +{ + NSString *infoString = self.infoTextField.stringValue; + NSMutableAttributedString *attributedInfoString = + [[NSMutableAttributedString alloc] initWithString:infoString]; + + NSRange searchRange = NSMakeRange(0, infoString.length); + CGFloat infoFontSize = self.infoTextField.font.pointSize; + NSFont *highlightFont = [NSFont fontWithName:@"Menlo" size:infoFontSize]; + + while (searchRange.location < infoString.length) + { + searchRange.length = infoString.length - searchRange.location; + NSRange foundRange = + [infoString rangeOfString:@"macdown" + options:NSLiteralSearch range:searchRange]; + + if (foundRange.location != NSNotFound) + { + [attributedInfoString addAttribute:NSFontAttributeName value:highlightFont range:foundRange]; + + searchRange.location = foundRange.location + foundRange.length; + } + else // Found all occurences + { + break; + } + } + + self.infoTextField.attributedStringValue = attributedInfoString; +} + +@end diff --git a/macdown-cmd/MPGlobals.h b/MacDown/Code/Utility/MPGlobals.h similarity index 52% rename from macdown-cmd/MPGlobals.h rename to MacDown/Code/Utility/MPGlobals.h index 2457958e..a54e1f05 100644 --- a/macdown-cmd/MPGlobals.h +++ b/MacDown/Code/Utility/MPGlobals.h @@ -10,9 +10,20 @@ // These should match the main bundle's values. static NSString * const kMPApplicationName = @"MacDown"; + +#ifdef DEBUG +static NSString * const kMPApplicationBundleIdentifier = @"com.uranusjr.macdown-debug"; +#else +static NSString * const kMPApplicationBundleIdentifier = @"com.uranusjr.macdown"; +#endif + static NSString * const kMPApplicationSuiteName = @"com.uranusjr.macdown"; +static NSString * const MPCommandInstallationPath = @"/usr/local/bin/macdown"; static NSString * const kMPCommandName = @"macdown"; static NSString * const kMPHelpKey = @"help"; static NSString * const kMPVersionKey = @"version"; + +static NSString * const kMPFilesToOpenKey = @"filesToOpenOnNextLaunch"; +static NSString * const kMPPipedContentFileToOpen = @"pipedContentFileToOpenOnNextLaunch"; diff --git a/MacDown/Code/Utility/MPHomebrewSubprocessController.h b/MacDown/Code/Utility/MPHomebrewSubprocessController.h new file mode 100644 index 00000000..76a151b5 --- /dev/null +++ b/MacDown/Code/Utility/MPHomebrewSubprocessController.h @@ -0,0 +1,20 @@ +// +// MPHomebrewSubprocessController.h +// MacDown +// +// Created by Tzu-ping Chung on 18/2. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import + + +@interface MPHomebrewSubprocessController : NSObject + +- (instancetype)initWithArguments:(NSArray *)args; +- (void)runWithCompletionHandler:(void(^)(NSString *))handler; + +@end + + +void MPDetectHomebrewPrefixWithCompletionhandler(void(^handler)(NSString *)); diff --git a/MacDown/Code/Utility/MPHomebrewSubprocessController.m b/MacDown/Code/Utility/MPHomebrewSubprocessController.m new file mode 100644 index 00000000..fa010256 --- /dev/null +++ b/MacDown/Code/Utility/MPHomebrewSubprocessController.m @@ -0,0 +1,93 @@ +// +// MPHomebrewSubprocessController.m +// MacDown +// +// Created by Tzu-ping Chung on 18/2. +// Copyright © 2017 Tzu-ping Chung . All rights reserved. +// + +#import "MPHomebrewSubprocessController.h" + + +@interface MPHomebrewSubprocessController () + +@property (readonly) NSTask *task; +@property (readwrite) void(^completionHandler)(NSString *); + +@end + + +@implementation MPHomebrewSubprocessController + +- (instancetype)initWithArguments:(NSArray *)args +{ + self = [super init]; + if (!self) + return nil; + + NSPipe *stdoutPipe = [[NSPipe alloc] init]; + NSFileHandle *stdoutReadHandle = stdoutPipe.fileHandleForReading; + + _task = [[NSTask alloc] init]; + _task.launchPath = @"brew"; + if (args) + _task.arguments = args; + _task.standardOutput = stdoutPipe; + + NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; + [center addObserver:self + selector:@selector(homebrewReadDidComplete:) + name:NSFileHandleReadToEndOfFileCompletionNotification + object:stdoutReadHandle]; + [stdoutReadHandle readToEndOfFileInBackgroundAndNotify]; + + return self; +} + +- (instancetype)init +{ + return [self initWithArguments:nil]; +} + +- (void)dealloc +{ + NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; + [center removeObserver:self + name:NSFileHandleReadToEndOfFileCompletionNotification + object:nil]; +} + +- (void)runWithCompletionHandler:(void(^)(NSString *))handler +{ + self.completionHandler = handler; + @try + { + [self.task launch]; + } + @catch (NSException *exception) // Homebrew not installed. + { + if (handler) + handler(nil); + } +} + +- (void)homebrewReadDidComplete:(NSNotification *)notification +{ + NSData *outData = notification.userInfo[NSFileHandleNotificationDataItem]; + NSString *output = [[NSString alloc] initWithData:outData + encoding:NSUTF8StringEncoding]; + if (self.completionHandler) + self.completionHandler(output); +} + +@end + + +void MPDetectHomebrewPrefixWithCompletionhandler(void(^handler)(NSString *)) +{ + NSArray *args = @[@"--prefix"]; + MPHomebrewSubprocessController *c = + [[MPHomebrewSubprocessController alloc] initWithArguments:args]; + [c runWithCompletionHandler:handler]; +} + diff --git a/MacDown/Code/Utility/MPMathJaxListener.h b/MacDown/Code/Utility/MPMathJaxListener.h index f1e1fbf8..1f57a5fd 100644 --- a/MacDown/Code/Utility/MPMathJaxListener.h +++ b/MacDown/Code/Utility/MPMathJaxListener.h @@ -10,7 +10,7 @@ @interface MPMathJaxListener : NSObject -- (void)addCallback:(void (^)())block forKey:(NSString *)key; +- (void)addCallback:(void (^)(void))block forKey:(NSString *)key; - (void)invokeCallbackForKey:(NSString *)key; @end diff --git a/MacDown/Code/Utility/MPMathJaxListener.m b/MacDown/Code/Utility/MPMathJaxListener.m index d692e85f..7bf839e0 100644 --- a/MacDown/Code/Utility/MPMathJaxListener.m +++ b/MacDown/Code/Utility/MPMathJaxListener.m @@ -21,7 +21,7 @@ - (NSMutableDictionary *)callbacks return _callbacks; } -- (void)addCallback:(void (^)())block forKey:(NSString *)key +- (void)addCallback:(void (^)(void))block forKey:(NSString *)key { self.callbacks[key] = block; } @@ -31,7 +31,7 @@ - (void)invokeCallbackForKey:(NSString *)key id object = self.callbacks[key]; if (object) { - void (^block)() = object; + void (^block)(void) = object; block(); } } diff --git a/MacDown/Code/Utility/MPPlugIn.h b/MacDown/Code/Utility/MPPlugIn.h new file mode 100644 index 00000000..582ba568 --- /dev/null +++ b/MacDown/Code/Utility/MPPlugIn.h @@ -0,0 +1,21 @@ +// +// MPPlugIn.h +// MacDown +// +// Created by Tzu-ping Chung on 02/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import +#import "MPDOcument.h" + +@interface MPPlugIn : NSObject + +@property (nonatomic, readonly) NSString *name; + +- (instancetype)initWithBundle:(NSBundle *)bundle; +- (BOOL)run:(id)sender; + +- (void)plugInDidInitialize; + +@end diff --git a/MacDown/Code/Utility/MPPlugIn.m b/MacDown/Code/Utility/MPPlugIn.m new file mode 100644 index 00000000..e8c7285d --- /dev/null +++ b/MacDown/Code/Utility/MPPlugIn.m @@ -0,0 +1,66 @@ +// +// MPPlugIn.m +// MacDown +// +// Created by Tzu-ping Chung on 02/3. +// Copyright © 2016 Tzu-ping Chung . All rights reserved. +// + +#import "MPPlugIn.h" + + +@interface MPPlugIn () +@property (nonatomic) id content; +@end + + +@implementation MPPlugIn + +- (void)setName:(NSString *)name +{ + _name = name; +} + +- (instancetype)initWithBundle:(NSBundle *)bundle +{ + self = [super init]; + if (!self) + return nil; + + if (!bundle.isLoaded) + { + NSError *e = nil; + BOOL ok = [bundle loadAndReturnError:&e]; + if (!ok) + return nil; + } + Class plugInClass = bundle.principalClass; + if (!plugInClass) + return nil; + self.content = [[plugInClass alloc] init]; + + if ([self.content respondsToSelector:@selector(name)]) + self.name = [self.content name]; + if (!self.name) + { + NSURL *url = bundle.bundleURL; + self.name = url.lastPathComponent.stringByDeletingPathExtension; + } + + return self; +} + +- (void)plugInDidInitialize +{ + if ([self.content respondsToSelector:@selector(plugInDidInitialize)]) + [self.content plugInDidInitialize]; +} + +- (BOOL)run:(id)sender +{ + if ([self.content respondsToSelector:@selector(run:)]) + return [self.content run:sender]; + return NO; +} + +@end diff --git a/MacDown/Code/Utility/MPUtilities.h b/MacDown/Code/Utility/MPUtilities.h index 1f16b115..523456ba 100644 --- a/MacDown/Code/Utility/MPUtilities.h +++ b/MacDown/Code/Utility/MPUtilities.h @@ -12,6 +12,8 @@ extern NSString * const kMPStylesDirectoryName; extern NSString * const kMPStyleFileExtension; extern NSString * const kMPThemesDirectoryName; extern NSString * const kMPThemeFileExtension; +extern NSString * const kMPPlugInsDirectoryName; +extern NSString * const kMPPlugInFileExtension; NSString *MPDataDirectory(NSString *relativePath); NSString *MPPathToDataFile(NSString *name, NSString *dirPath); @@ -21,7 +23,7 @@ NSArray *MPListEntriesForDirectory( ); // Block factory for MPListEntriesForDirectory -NSString *(^MPFileNameHasSuffixProcessor(NSString *suffix))(NSString *path); +NSString *(^MPFileNameHasExtensionProcessor(NSString *ext))(NSString *path); BOOL MPCharacterIsWhitespace(unichar character); BOOL MPCharacterIsNewline(unichar character); @@ -32,4 +34,13 @@ NSString *MPThemePathForName(NSString *name); NSURL *MPHighlightingThemeURLForName(NSString *name); NSString *MPReadFileOfPath(NSString *path); +NSDictionary *MPGetDataMap(NSString *name); + id MPGetObjectFromJavaScript(NSString *code, NSString *variableName); + + +static void (^MPDocumentOpenCompletionEmpty)( + NSDocument *doc, BOOL wasOpen, NSError *error) = ^( + NSDocument *doc, BOOL wasOpen, NSError *error) { + +}; diff --git a/MacDown/Code/Utility/MPUtilities.m b/MacDown/Code/Utility/MPUtilities.m index 4af31250..c6a546fa 100644 --- a/MacDown/Code/Utility/MPUtilities.m +++ b/MacDown/Code/Utility/MPUtilities.m @@ -7,12 +7,15 @@ // #import "MPUtilities.h" +#import "NSString+Lookup.h" #import NSString * const kMPStylesDirectoryName = @"Styles"; -NSString * const kMPStyleFileExtension = @".css"; +NSString * const kMPStyleFileExtension = @"css"; NSString * const kMPThemesDirectoryName = @"Themes"; -NSString * const kMPThemeFileExtension = @".style"; +NSString * const kMPThemeFileExtension = @"style"; +NSString * const kMPPlugInsDirectoryName = @"PlugIns"; +NSString * const kMPPlugInFileExtension = @"plugin"; static NSString *MPDataRootDirectory() { @@ -68,17 +71,14 @@ return [items copy]; } -NSString *(^MPFileNameHasSuffixProcessor(NSString *suffix))(NSString *path) +NSString *(^MPFileNameHasExtensionProcessor(NSString *ext))(NSString *path) { id block = ^(NSString *absPath) { NSFileManager *manager = [NSFileManager defaultManager]; NSString *name = absPath.lastPathComponent; NSString *processed = nil; - if ([name hasSuffix:suffix] && [manager fileExistsAtPath:absPath]) - { - NSUInteger end = name.length - suffix.length; - processed = [name substringToIndex:end]; - } + if ([name hasExtension:ext] && [manager fileExistsAtPath:absPath]) + processed = name.stringByDeletingPathExtension; return processed; }; return block; @@ -111,16 +111,16 @@ BOOL MPStringIsNewline(NSString *str) { if (!name) return nil; - if (![name hasSuffix:kMPStyleFileExtension]) - name = [NSString stringWithFormat:@"%@%@", name, kMPStyleFileExtension]; + if (![name hasExtension:kMPStyleFileExtension]) + name = [name stringByAppendingPathExtension:kMPStyleFileExtension]; NSString *path = MPPathToDataFile(name, kMPStylesDirectoryName); return path; } NSString *MPThemePathForName(NSString *name) { - if (![name hasSuffix:kMPThemeFileExtension]) - name = [NSString stringWithFormat:@"%@%@", name, kMPThemeFileExtension]; + if (![name hasExtension:kMPThemeFileExtension]) + name = [name stringByAppendingPathExtension:kMPThemeFileExtension]; NSString *path = MPPathToDataFile(name, kMPThemesDirectoryName); return path; } @@ -128,8 +128,8 @@ BOOL MPStringIsNewline(NSString *str) NSURL *MPHighlightingThemeURLForName(NSString *name) { name = [NSString stringWithFormat:@"prism-%@", [name lowercaseString]]; - if ([name hasSuffix:@".css"]) - name = [name substringToIndex:name.length - 4]; + if ([name hasExtension:@"css"]) + name = name.stringByDeletingPathExtension; NSBundle *bundle = [NSBundle mainBundle]; NSURL *url = [bundle URLForResource:name withExtension:@"css" @@ -155,6 +155,14 @@ BOOL MPStringIsNewline(NSString *str) return s; } +NSDictionary *MPGetDataMap(NSString *name) +{ + NSBundle *bundle = [NSBundle mainBundle]; + NSString *filePath = [bundle pathForResource:name ofType:@"map" + inDirectory:@"Data"]; + return [NSKeyedUnarchiver unarchiveObjectWithFile:filePath]; +} + id MPGetObjectFromJavaScript(NSString *code, NSString *variableName) { if (!code.length) diff --git a/MacDown/Code/View/MPEditorView.m b/MacDown/Code/View/MPEditorView.m index 562f319e..6c7804ac 100644 --- a/MacDown/Code/View/MPEditorView.m +++ b/MacDown/Code/View/MPEditorView.m @@ -27,6 +27,8 @@ @interface MPEditorView () @implementation MPEditorView +#pragma mark - Accessors + @synthesize contentRect = _contentRect; @synthesize scrollsPastEnd = _scrollsPastEnd; @@ -37,6 +39,60 @@ - (BOOL)scrollsPastEnd } } +- (void)awakeFromNib { + [self registerForDraggedTypes:[NSArray arrayWithObjects: NSDragPboard, nil]]; + [super awakeFromNib]; +} + +- (NSDragOperation)draggingEntered:(id )sender { + NSPasteboard *pboard; + NSDragOperation sourceDragMask; + + sourceDragMask = [sender draggingSourceOperationMask]; + pboard = [sender draggingPasteboard]; + + if ([pboard canReadItemWithDataConformingToTypes:[NSArray arrayWithObjects:@"public.jpeg", nil]]) { + if (sourceDragMask & NSDragOperationLink) { + return NSDragOperationLink; + } else if (sourceDragMask & NSDragOperationCopy) { + return NSDragOperationCopy; + } + } + + return NSDragOperationNone; +} + +- (BOOL)performDragOperation:(id )sender { + NSPasteboard *pboard; + NSDragOperation sourceDragMask; + + sourceDragMask = [sender draggingSourceOperationMask]; + pboard = [sender draggingPasteboard]; + + if ( [[pboard types] containsObject:NSFilenamesPboardType] ) { + NSArray *files = [pboard propertyListForType:NSFilenamesPboardType]; + + /* Load data of file. */ + NSError *error; + NSData *fileData = [NSData dataWithContentsOfFile: files[0] + options: NSMappedRead + error: &error]; + if (!error) { + // convert to base64 representation + NSString *dataString = [fileData base64Encoding]; + + // insert into text. + NSInteger insertionPoint = [[[self selectedRanges] objectAtIndex:0] rangeValue].location; + [self setString:[NSString stringWithFormat:@"%@![](data:image/jpeg;base64,%@)%@", [[self string] substringToIndex:insertionPoint], dataString, [[self string] substringFromIndex:insertionPoint]]]; + [self didChangeText]; + } else { + return NO; + } + } + return YES; +} + + - (void)setScrollsPastEnd:(BOOL)scrollsPastEnd { @synchronized(self) { @@ -106,6 +162,9 @@ - (void)setString:(NSString *)string } } + +#pragma mark - Overrides + /** Overriden to perform extra operation on text change. * * Updates content height, and invoke the resizing method to apply it. @@ -119,6 +178,9 @@ - (void)didChangeText [self updateContentGeometry]; } + +#pragma mark - Private + - (void)updateContentGeometry { static NSCharacterSet *visibleCharacterSet = nil; diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128.png index fc6fac3e..cfce2f7f 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png index 7617cb2e..c9de35d6 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16.png index 2a16652c..0414ecb4 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png index 5db30299..a8c9fad2 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256.png index e4998fb4..76baf400 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png index 4df56eb5..b902bb0d 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32.png index e55100aa..2e0390f6 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png index 0336ed3f..c32320e9 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512.png index 7b35a865..f97cf7d8 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512.png differ diff --git a/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png b/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png index ff8bd791..87914542 100644 Binary files a/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png and b/MacDown/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png differ diff --git a/MacDown/Images.xcassets/Contents.json b/MacDown/Images.xcassets/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/MacDown/Images.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Preferences Icons/Contents.json b/MacDown/Images.xcassets/Preferences Icons/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/MacDown/Images.xcassets/Preferences Icons/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/Contents.json b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/Contents.json index b4941498..064a6d04 100644 --- a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/Contents.json +++ b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/Contents.json @@ -1,14 +1,14 @@ { "images" : [ { - "idiom" : "universal", - "scale" : "1x", - "filename" : "PreferencesEditor.png" + "idiom" : "mac", + "filename" : "PreferencesEditor.png", + "scale" : "1x" }, { - "idiom" : "universal", - "scale" : "2x", - "filename" : "PreferencesEditor@2x.png" + "idiom" : "mac", + "filename" : "PreferencesEditor@2x.png", + "scale" : "2x" } ], "info" : { diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor.png index 4fa0003e..08480e1a 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor@2x.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor@2x.png index 7ce98205..b0d61b0e 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor@2x.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesEditor.imageset/PreferencesEditor@2x.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/Contents.json b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/Contents.json index 36204057..71d7b428 100644 --- a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/Contents.json +++ b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/Contents.json @@ -1,14 +1,14 @@ { "images" : [ { - "idiom" : "universal", - "scale" : "1x", - "filename" : "PreferencesGeneral.png" + "idiom" : "mac", + "filename" : "PreferencesGeneral.png", + "scale" : "1x" }, { - "idiom" : "universal", - "scale" : "2x", - "filename" : "PreferencesGeneral@2x.png" + "idiom" : "mac", + "filename" : "PreferencesGeneral@2x.png", + "scale" : "2x" } ], "info" : { diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral.png index 2dad7b31..827da27f 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral@2x.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral@2x.png index 8d51bdfb..daf660e0 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral@2x.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesGeneral.imageset/PreferencesGeneral@2x.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/Contents.json b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/Contents.json index 264b5075..400e7f0b 100644 --- a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/Contents.json +++ b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/Contents.json @@ -1,14 +1,14 @@ { "images" : [ { - "idiom" : "universal", - "scale" : "1x", - "filename" : "PreferencesMarkdown.png" + "idiom" : "mac", + "filename" : "PreferencesMarkdown.png", + "scale" : "1x" }, { - "idiom" : "universal", - "scale" : "2x", - "filename" : "PreferencesMarkdown@2x.png" + "idiom" : "mac", + "filename" : "PreferencesMarkdown@2x.png", + "scale" : "2x" } ], "info" : { diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown.png index 19cf8c0b..a109f7dc 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown@2x.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown@2x.png index 81beac3f..b41da2d7 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown@2x.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesMarkdown.imageset/PreferencesMarkdown@2x.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/Contents.json b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/Contents.json index 46e0e1c5..a9c681fd 100644 --- a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/Contents.json +++ b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/Contents.json @@ -1,14 +1,14 @@ { "images" : [ { - "idiom" : "universal", - "scale" : "1x", - "filename" : "PreferencesRendering.png" + "idiom" : "mac", + "filename" : "PreferencesRendering.png", + "scale" : "1x" }, { - "idiom" : "universal", - "scale" : "2x", - "filename" : "PreferencesRendering@2x.png" + "idiom" : "mac", + "filename" : "PreferencesRendering@2x.png", + "scale" : "2x" } ], "info" : { diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering.png index 164fdc56..e2cc4bb7 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering@2x.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering@2x.png index 59c988f9..fcd15260 100644 Binary files a/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering@2x.png and b/MacDown/Images.xcassets/Preferences Icons/PreferencesRendering.imageset/PreferencesRendering@2x.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/Contents.json b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/Contents.json new file mode 100644 index 00000000..2208d916 --- /dev/null +++ b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/Contents.json @@ -0,0 +1,18 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "PreferencesTerminal.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "PreferencesTerminal@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal.png new file mode 100644 index 00000000..64a4fe64 Binary files /dev/null and b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal.png differ diff --git a/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal@2x.png b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal@2x.png new file mode 100644 index 00000000..019db94a Binary files /dev/null and b/MacDown/Images.xcassets/Preferences Icons/PreferencesTerminal.imageset/PreferencesTerminal@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/Contents.json new file mode 100644 index 00000000..abb8573e --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconBlockquote.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconBlockquote@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote.png new file mode 100644 index 00000000..4203404b Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote@2x.png new file mode 100644 index 00000000..f7352c1d Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBlockquote.imageset/ToolbarIconBlockquote@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/Contents.json new file mode 100644 index 00000000..ca96705a --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconBold.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconBold@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold.png new file mode 100644 index 00000000..f87a5e05 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold@2x.png new file mode 100644 index 00000000..c7c7f2c2 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconBold.imageset/ToolbarIconBold@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/Contents.json new file mode 100644 index 00000000..3a5ef088 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconComment.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconComment@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment.png new file mode 100644 index 00000000..fdde5339 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment@2x.png new file mode 100644 index 00000000..50a0820c Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconComment.imageset/ToolbarIconComment@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/Contents.json new file mode 100644 index 00000000..15568ad7 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconCopyHTML.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconCopyHTML@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML.png new file mode 100644 index 00000000..3825f7b9 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML@2x.png new file mode 100644 index 00000000..3c1a07bf Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconCopyHTML.imageset/ToolbarIconCopyHTML@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/Contents.json new file mode 100644 index 00000000..3cbd8bb2 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconEditorAndPreview.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconEditorAndPreview@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview.png new file mode 100644 index 00000000..4b1bb828 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview@2x.png new file mode 100644 index 00000000..8957bf29 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconEditorAndPreview.imageset/ToolbarIconEditorAndPreview@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/Contents.json new file mode 100644 index 00000000..7e78c1c2 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading1.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading1@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1.png new file mode 100644 index 00000000..df3c467a Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1@2x.png new file mode 100644 index 00000000..0511ec2f Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading1.imageset/ToolbarIconHeading1@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/Contents.json new file mode 100644 index 00000000..31346206 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading2.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading2@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2.png new file mode 100644 index 00000000..e18bfae4 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2@2x.png new file mode 100644 index 00000000..34bbf21f Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading2.imageset/ToolbarIconHeading2@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/Contents.json new file mode 100644 index 00000000..82de5ae7 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading3.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHeading3@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3.png new file mode 100644 index 00000000..c4658d62 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3@2x.png new file mode 100644 index 00000000..bce7ee3c Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHeading3.imageset/ToolbarIconHeading3@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/Contents.json new file mode 100644 index 00000000..57054edb --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHideEditor.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHideEditor@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor.png new file mode 100644 index 00000000..11dc7b1e Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor@2x.png new file mode 100644 index 00000000..fa579a83 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHideEditor.imageset/ToolbarIconHideEditor@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/Contents.json new file mode 100644 index 00000000..91470fa0 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHidePreview.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHidePreview@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview.png new file mode 100644 index 00000000..520445d6 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview@2x.png new file mode 100644 index 00000000..76512ab1 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHidePreview.imageset/ToolbarIconHidePreview@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/Contents.json new file mode 100644 index 00000000..ae68c6b7 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconHighlight.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconHighlight@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight.png new file mode 100644 index 00000000..368d28af Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight@2x.png new file mode 100644 index 00000000..7a6129df Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconHighlight.imageset/ToolbarIconHighlight@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/Contents.json new file mode 100644 index 00000000..640635e3 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconImage.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconImage@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage.png new file mode 100644 index 00000000..8b073018 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage@2x.png new file mode 100644 index 00000000..29ab647c Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconImage.imageset/ToolbarIconImage@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/Contents.json new file mode 100644 index 00000000..ab9d5136 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconInlineCode.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconInlineCode@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode.png new file mode 100644 index 00000000..59eff3ad Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode@2x.png new file mode 100644 index 00000000..6133348a Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconInlineCode.imageset/ToolbarIconInlineCode@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/Contents.json new file mode 100644 index 00000000..4c30e03d --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconItalic.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconItalic@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic.png new file mode 100644 index 00000000..7057a13e Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic@2x.png new file mode 100644 index 00000000..bf016130 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconItalic.imageset/ToolbarIconItalic@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/Contents.json new file mode 100644 index 00000000..205fbc8b --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconLink.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconLink@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink.png new file mode 100644 index 00000000..9ff28e79 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink@2x.png new file mode 100644 index 00000000..ac2366fa Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconLink.imageset/ToolbarIconLink@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/Contents.json new file mode 100644 index 00000000..b9b40746 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconOrderedList.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconOrderedList@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList.png new file mode 100644 index 00000000..6f1bde6b Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList@2x.png new file mode 100644 index 00000000..addab558 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconOrderedList.imageset/ToolbarIconOrderedList@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/Contents.json new file mode 100644 index 00000000..3175d09f --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconShiftLeft.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconShiftLeft@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft.png new file mode 100644 index 00000000..27ca83f7 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft@2x.png new file mode 100644 index 00000000..bda3349d Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftLeft.imageset/ToolbarIconShiftLeft@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/Contents.json new file mode 100644 index 00000000..f7865c0a --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconShiftRight.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconShiftRight@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight.png new file mode 100644 index 00000000..ddef49e5 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight@2x.png new file mode 100644 index 00000000..5c339efa Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconShiftRight.imageset/ToolbarIconShiftRight@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/Contents.json new file mode 100644 index 00000000..f60ed71a --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconStrikethrough.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconStrikethrough@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough.png new file mode 100644 index 00000000..d0a0a0df Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough@2x.png new file mode 100644 index 00000000..ea31c01f Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconStrikethrough.imageset/ToolbarIconStrikethrough@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/Contents.json new file mode 100644 index 00000000..e2830335 --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconUnderlined.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconUnderlined@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined.png new file mode 100644 index 00000000..7b55681c Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined@2x.png new file mode 100644 index 00000000..636ccaac Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnderlined.imageset/ToolbarIconUnderlined@2x.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/Contents.json b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/Contents.json new file mode 100644 index 00000000..4bc5c8ee --- /dev/null +++ b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "mac", + "filename" : "ToolbarIconUnorderedList.png", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "ToolbarIconUnorderedList@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList.png new file mode 100644 index 00000000..856b5eb1 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList.png differ diff --git a/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList@2x.png b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList@2x.png new file mode 100644 index 00000000..c43c6d42 Binary files /dev/null and b/MacDown/Images.xcassets/Toolbar Icons/ToolbarIconUnorderedList.imageset/ToolbarIconUnorderedList@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/Contents.json new file mode 100644 index 00000000..c07ea731 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconBlockquote@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/TouchBarIconBlockquote@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/TouchBarIconBlockquote@2x.png new file mode 100644 index 00000000..fd0a0bad Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconBlockquote.imageset/TouchBarIconBlockquote@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/Contents.json new file mode 100644 index 00000000..1433ea9b --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconComment@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/TouchBarIconComment@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/TouchBarIconComment@2x.png new file mode 100644 index 00000000..958e2fb1 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconComment.imageset/TouchBarIconComment@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/Contents.json new file mode 100644 index 00000000..f291fdb2 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconCopyHTML@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/TouchBarIconCopyHTML@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/TouchBarIconCopyHTML@2x.png new file mode 100644 index 00000000..1460a4a6 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconCopyHTML.imageset/TouchBarIconCopyHTML@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/Contents.json new file mode 100644 index 00000000..1d90c190 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconEditorAndPreview@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/TouchBarIconEditorAndPreview@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/TouchBarIconEditorAndPreview@2x.png new file mode 100644 index 00000000..c4c830b7 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconEditorAndPreview.imageset/TouchBarIconEditorAndPreview@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/Contents.json new file mode 100644 index 00000000..56c181bb --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconHeadings@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/TouchBarIconHeadings@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/TouchBarIconHeadings@2x.png new file mode 100644 index 00000000..eed0d18d Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHeadings.imageset/TouchBarIconHeadings@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/Contents.json new file mode 100644 index 00000000..98b4a3c3 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconHideEditor@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/TouchBarIconHideEditor@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/TouchBarIconHideEditor@2x.png new file mode 100644 index 00000000..a866479f Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHideEditor.imageset/TouchBarIconHideEditor@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/Contents.json new file mode 100644 index 00000000..ec6e5f1e --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconHidePreview@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/TouchBarIconHidePreview@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/TouchBarIconHidePreview@2x.png new file mode 100644 index 00000000..f7d5fd52 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHidePreview.imageset/TouchBarIconHidePreview@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/Contents.json new file mode 100644 index 00000000..1cf82823 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconHighlight@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/TouchBarIconHighlight@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/TouchBarIconHighlight@2x.png new file mode 100644 index 00000000..503760f7 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconHighlight.imageset/TouchBarIconHighlight@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/Contents.json new file mode 100644 index 00000000..17a9e6bd --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconImage@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/TouchBarIconImage@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/TouchBarIconImage@2x.png new file mode 100644 index 00000000..0e0fc416 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconImage.imageset/TouchBarIconImage@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/Contents.json new file mode 100644 index 00000000..a82328c4 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconInlineCode@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/TouchBarIconInlineCode@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/TouchBarIconInlineCode@2x.png new file mode 100644 index 00000000..e44adab3 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconInlineCode.imageset/TouchBarIconInlineCode@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/Contents.json new file mode 100644 index 00000000..50f173b3 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconLink@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/TouchBarIconLink@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/TouchBarIconLink@2x.png new file mode 100644 index 00000000..074f1322 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconLink.imageset/TouchBarIconLink@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/Contents.json new file mode 100644 index 00000000..834907b4 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconOrderedList@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/TouchBarIconOrderedList@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/TouchBarIconOrderedList@2x.png new file mode 100644 index 00000000..668ebb7f Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconOrderedList.imageset/TouchBarIconOrderedList@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/Contents.json new file mode 100644 index 00000000..6bb3df3a --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconShiftLeft@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/TouchBarIconShiftLeft@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/TouchBarIconShiftLeft@2x.png new file mode 100644 index 00000000..bebfaea9 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftLeft.imageset/TouchBarIconShiftLeft@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/Contents.json new file mode 100644 index 00000000..60f85cc0 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconShiftRight@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/TouchBarIconShiftRight@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/TouchBarIconShiftRight@2x.png new file mode 100644 index 00000000..b6744db0 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconShiftRight.imageset/TouchBarIconShiftRight@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/Contents.json new file mode 100644 index 00000000..40cbb3b5 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconStrikethrough@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/TouchBarIconStrikethrough@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/TouchBarIconStrikethrough@2x.png new file mode 100644 index 00000000..160bfa6d Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconStrikethrough.imageset/TouchBarIconStrikethrough@2x.png differ diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/Contents.json b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/Contents.json new file mode 100644 index 00000000..63471258 --- /dev/null +++ b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/Contents.json @@ -0,0 +1,20 @@ +{ + "images" : [ + { + "idiom" : "mac", + "scale" : "1x" + }, + { + "idiom" : "mac", + "filename" : "TouchBarIconUnorderedList@2x.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" + } +} \ No newline at end of file diff --git a/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/TouchBarIconUnorderedList@2x.png b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/TouchBarIconUnorderedList@2x.png new file mode 100644 index 00000000..f418c3c2 Binary files /dev/null and b/MacDown/Images.xcassets/TouchBar Icons/TouchBarIconUnorderedList.imageset/TouchBarIconUnorderedList@2x.png differ diff --git a/MacDown/Localization/Base.lproj/Localizable.strings b/MacDown/Localization/Base.lproj/Localizable.strings deleted file mode 100644 index 414b6649..00000000 Binary files a/MacDown/Localization/Base.lproj/Localizable.strings and /dev/null differ diff --git a/MacDown/Localization/Base.lproj/MPDocument.xib b/MacDown/Localization/Base.lproj/MPDocument.xib index 00a8ffdd..0cfe945f 100644 --- a/MacDown/Localization/Base.lproj/MPDocument.xib +++ b/MacDown/Localization/Base.lproj/MPDocument.xib @@ -1,9 +1,12 @@ - - + + - - + + + + + @@ -13,27 +16,29 @@ + + - + - + - + - + @@ -43,15 +48,339 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - @@ -73,14 +402,14 @@ - + - + - - - + + + @@ -125,10 +454,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MacDown/Localization/Base.lproj/MPEditorPreferencesViewController.xib b/MacDown/Localization/Base.lproj/MPEditorPreferencesViewController.xib index 682058e5..ecbaef13 100644 --- a/MacDown/Localization/Base.lproj/MPEditorPreferencesViewController.xib +++ b/MacDown/Localization/Base.lproj/MPEditorPreferencesViewController.xib @@ -1,8 +1,11 @@ - - + + - + + + + @@ -16,35 +19,35 @@ - - + + - - + + - - + + - - + + - - + + @@ -52,7 +55,7 @@ - - + + - - - - - - - + - + @@ -91,17 +88,17 @@ - - + + - - - + + + @@ -120,9 +117,9 @@ - - - + + + @@ -142,30 +139,30 @@ - + - + - - + + - - - + + + @@ -179,14 +176,14 @@ - + - - - + + + @@ -212,21 +209,48 @@ - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/MacDown/Localization/Base.lproj/MPGeneralPreferencesViewController.xib b/MacDown/Localization/Base.lproj/MPGeneralPreferencesViewController.xib index bc0bb5a7..454499c4 100644 --- a/MacDown/Localization/Base.lproj/MPGeneralPreferencesViewController.xib +++ b/MacDown/Localization/Base.lproj/MPGeneralPreferencesViewController.xib @@ -1,8 +1,9 @@ - + - + + @@ -14,12 +15,12 @@ - + - + @@ -39,22 +40,22 @@ - - - - + + + + - - - + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -166,7 +179,7 @@ - + diff --git a/MacDown/Localization/Base.lproj/MPHtmlPreferencesViewController.xib b/MacDown/Localization/Base.lproj/MPHtmlPreferencesViewController.xib index c7597f5f..3fba7005 100644 --- a/MacDown/Localization/Base.lproj/MPHtmlPreferencesViewController.xib +++ b/MacDown/Localization/Base.lproj/MPHtmlPreferencesViewController.xib @@ -1,8 +1,9 @@ - - + + - + + @@ -16,11 +17,11 @@ - + - - + + @@ -28,24 +29,18 @@ - - + + - - - - - - - + - + @@ -57,16 +52,8 @@ - - - - - - - - - + @@ -78,18 +65,16 @@ - + + + + - - - - - - - - - + - + - - - - - + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MacDown/Localization/Base.lproj/MPMarkdownPreferencesViewController.xib b/MacDown/Localization/Base.lproj/MPMarkdownPreferencesViewController.xib index dc6cf10f..87256644 100644 --- a/MacDown/Localization/Base.lproj/MPMarkdownPreferencesViewController.xib +++ b/MacDown/Localization/Base.lproj/MPMarkdownPreferencesViewController.xib @@ -16,7 +16,7 @@ - + @@ -45,7 +45,7 @@ - + @@ -58,7 +58,7 @@ - + @@ -159,7 +159,7 @@ - + @@ -176,7 +176,7 @@ - + @@ -196,7 +196,7 @@ - + diff --git a/MacDown/Localization/Base.lproj/MPTerminalPreferencesViewController.xib b/MacDown/Localization/Base.lproj/MPTerminalPreferencesViewController.xib new file mode 100644 index 00000000..51e29a1a --- /dev/null +++ b/MacDown/Localization/Base.lproj/MPTerminalPreferencesViewController.xib @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MacDown/Localization/Base.lproj/MainMenu.xib b/MacDown/Localization/Base.lproj/MainMenu.xib index 62c23b37..ad3ef6c3 100644 --- a/MacDown/Localization/Base.lproj/MainMenu.xib +++ b/MacDown/Localization/Base.lproj/MainMenu.xib @@ -1,8 +1,8 @@ - - + + - + @@ -370,12 +370,6 @@ - - - - - - @@ -397,7 +391,7 @@ - + @@ -406,6 +400,13 @@ + + + + + + + @@ -439,7 +440,7 @@ - + NSNegateBoolean @@ -449,7 +450,7 @@ - + NSNegateBoolean @@ -459,7 +460,7 @@ - + NSNegateBoolean @@ -520,6 +521,11 @@ + + + + + @@ -563,6 +569,14 @@ DQ + + + + + + + + @@ -598,6 +612,12 @@ DQ + + + + + + @@ -610,6 +630,11 @@ DQ + + + + + diff --git a/MacDown/Localization/ar.lproj/Credits.rtf b/MacDown/Localization/ar.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/ar.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/ar.lproj/InfoPlist.strings b/MacDown/Localization/ar.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/ar.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/ar.lproj/Localizable.strings b/MacDown/Localization/ar.lproj/Localizable.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPDocument.strings b/MacDown/Localization/ar.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/ar.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/ar.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/ar.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/ar.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/ar.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/ar.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ar.lproj/MainMenu.strings b/MacDown/Localization/ar.lproj/MainMenu.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/cs.lproj/Localizable.strings b/MacDown/Localization/cs.lproj/Localizable.strings new file mode 100644 index 00000000..189551da --- /dev/null +++ b/MacDown/Localization/cs.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Výchozí)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Citace"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ znak (bez mezer);%@ znaků (bez mezer)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ znak;%@ znaků"; + +/* Comment toolbar button */ +"Comment" = "Komentář"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopírovat HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Zvýraznění"; + +/* Preference pane title. */ +"General" = "Hlavní"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Nadpis 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Nadpis 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Nadpis 3"; + +/* No comment provided by engineer. */ +"Headings" = "Nadpisy"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Skrýt panel editoru"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Skrýt panel náhledu"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Skrýt panel nástrojů"; + +/* Highlight toolbar button */ +"Highlight" = "Zvýraznění"; + +/* Image toolbar button */ +"Image" = "Obraz"; + +/* Inline code toolbar button */ +"Inline Code" = "Řádkový kód"; + +/* Install shell utility button */ +"Install" = "Instalovat"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Vzhled"; + +/* Link toolbar button */ +"Link" = "Odkaz"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Číslovaný seznam"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Číslovaný/Nečíslovaný seznam"; + +/* Preferences window title. */ +"Preferences" = "Předvolby"; + +/* Preference pane title. */ +"Rendering" = "Vytváří se náhled"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Obnovit panel editoru"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Obnovit panel náhledu"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Podpora pro Shell nainstalována"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Podpora pro Shell nebyla nainstalována"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Posunout vlevo"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Posunout vlevo/vpravo"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Posunout vpravo"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Zobrazit panel nástrojů"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Přeškrtnutí"; + +/* Strong toolbar button */ +"Strong" = "Silný"; + +/* Preference pane title. */ +"Terminal" = "Terminál"; + +/* No comment provided by engineer. */ +"Text Styles" = "Textové styly"; + +/* Underline toolbar button */ +"Underline" = "Podtržení"; + +/* Uninstall shell utility button */ +"Uninstall" = "Odinstalovat"; + +/* Unordered list toolbar button */ +"Unordered List" = "Nečíslovaný seznam"; + +/* default filename if no title can be determined */ +"Untitled" = "Bez názvu"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ slovo;%@ slov"; + diff --git a/MacDown/Localization/cs.lproj/MPDocument.strings b/MacDown/Localization/cs.lproj/MPDocument.strings new file mode 100644 index 00000000..0b4c151d --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Text"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/cs.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/cs.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..c7dd859c --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Odrážka seznamu"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← přechod na první viditelný znak na řádku"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (mínus)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Chování"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Změnit…"; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Přidat prázdný řádek na konec dokumentu"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Omezit šířku editoru na"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (hvěždička)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Textové vložky:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Základní písmo:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Zobrazit ve Finderu"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Znovu načíst"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Řádkování:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Přejít na konec"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Automatické dokončování"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Automatické číslování v číslovaných seznamech"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Vzhled:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Vložit mezery místo tabulátoru"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Automaticky vložit prefix před aktuální blok"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (plus)"; + diff --git a/MacDown/Localization/cs.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/cs.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..a1ba7a55 --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Včetně zvýraznění syntaxe"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Včetně stylů"; + diff --git a/MacDown/Localization/cs.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/cs.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e33c43ba --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synchronizovat posuvníky editoru a náhledu"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Přesunout editor vpravo"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Aktualizovat"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Automaticky vytvářet odkazy na neexistující soubory"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Otevřít dokumenty při spuštění"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Chování"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Živý náhled během psaní"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Zobrazit počet slov"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Včetně testovacích verzí"; + diff --git a/MacDown/Localization/cs.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/cs.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..b786c16c --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Zobrazit ve Finderu"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Znovu načíst"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Matematická syntaxe vyžaduje internetové připojení."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Matematická syntaxe kompatibilní s TeX"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Vzhled:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Měřítko náhledů je podle velikosti základního písma"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mořská panna"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Zvýraznění syntaxe bloků kódu"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Výchozí cesta"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Použít znak dolar ($) jako oddělovač"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Detekovat Jekyll prostředí"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Vlastní"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Seznam úkolů"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Detekovat obsah"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Žádný"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Jméno jazyka"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Zobrazovat prázdné řádky"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Příslušenství:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Zobrazit čísla řádků"; + diff --git a/MacDown/Localization/cs.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/cs.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..733a7def --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Zápatí"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citovat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Zvýraznění"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Zvýraznění uprostřed slova"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Zamknutý blok kódu"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Podtržení"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Horní index"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Přeškrtnutí"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Automatické propojení"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Blokové formátování"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formátování dokumentu"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Řádkové formátování"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabulka"; + diff --git a/MacDown/Localization/cs.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/cs.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..2c4cfcae --- /dev/null +++ b/MacDown/Localization/cs.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Umístění:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Podpora pro Shell není nainstalovaná"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Zapnutím Podrory pro Shell, můžete používat progam macdown pro otevírání dokumentů z Shellu."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Instalovat"; + diff --git a/MacDown/Localization/cs.lproj/MainMenu.strings b/MacDown/Localization/cs.lproj/MainMenu.strings new file mode 100644 index 00000000..52075a30 --- /dev/null +++ b/MacDown/Localization/cs.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Hlavička 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Hledat"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Spustit režim celé obrazovky"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Velká písmena"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Zvýraznění"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Pravopis"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Řeč"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Hledat"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Ukončit MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Zvýraznění"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Co je MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exporotvat"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Úpravy"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Opakovat akci"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Ověřit aktualizace…"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Přeškrtnutí"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Záměny"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Inteligentní kopírování/vkládání"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Automaticky opravovat pravopis"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Podtržení"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Tisknout…"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Okno"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Main Menu"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Hlavička 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Soubor"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Zásuvné moduly"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Předvolby…"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Hledat výběr"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Uložit jako…"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Velká písmena"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Hlavička 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Převést na malá písmena"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Soubor"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Odvolat akci"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Pravopis a gramatika"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Zavřít"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Převést na"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Zobrazení"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Nápověda"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Záměny"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Zobrazit panel nástrojů"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Posunout vpravo"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Odkaz"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Vložit"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Zobrazit pravopis a gramatiku"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Nahrazovat text"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Vlevo 1:1 Vpravo"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Inteligentní uvozovky"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Zkontrolovat dokument"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Služby"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Komentář"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Převést na"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Otevřít…"; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Řádkový kód"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Nečíslovaný seznam"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Číslovaný seznam"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formát"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Posunout vlevo"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Přispět do projektu MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Vrátit"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Zobrazit vše"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Hlavička 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Převést vše do popředí"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Kontrolovat gramatiku a pravopis"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formát"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Hlavička 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Služby"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Vlevo 3:1 Vpravo"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Otevřít poslední položku"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Skrýt MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Hledat předchozí"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimalizovat"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Zastavit předčítání"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Smazat"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Zásuvné moduly"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Uložit…"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Hledat další"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Vzhled stránky…"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Přepnout velikost"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Silný"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Kontrolovat pravopis při psaní"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Inteligentní pomlčky"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Vybrat vše"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Přejít na výběr"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exporotvat"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Skrýt panel náhledu"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Okno"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Detektor dat"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopírovat HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Citace"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Otevřít poslední položku"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Velká počáteční písmena"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Nápověda k MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Vyjmout"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Skrýt ostatní"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Náhled Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Obraz"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Převést na velká písmena"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Vyprázdnit nabídku"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Vlevo 1:3 Vpravo"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Úpravy"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nový"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Skrýt panel editoru"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Hlavička 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Nápověda"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopírovat"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Odstavec"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Řeč"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Zobrazení"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Hledat…"; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Hledat a nahradit…"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Spustit předčítání"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Zobrazit záměny"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nový odstavec"; + diff --git a/MacDown/Localization/da-DK.lproj/Localizable.strings b/MacDown/Localization/da-DK.lproj/Localizable.strings new file mode 100644 index 00000000..09ef34bf --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Standard)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Citat"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ tegn (uden mellemrum);%@ tegn (uden mellemrum)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ tegn;%@ tegn"; + +/* Comment toolbar button */ +"Comment" = "Kommentar"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopier HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Kursiv"; + +/* Preference pane title. */ +"General" = "Generelt"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Overskrift 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Overskrift 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Overskrift 3"; + +/* No comment provided by engineer. */ +"Headings" = "Overskrifter"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Skjul editor"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Skjul preview"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Skjul værktøjslinje"; + +/* Highlight toolbar button */ +"Highlight" = "Fremhæve"; + +/* Image toolbar button */ +"Image" = "Billede"; + +/* Inline code toolbar button */ +"Inline Code" = "Inline kode"; + +/* Install shell utility button */ +"Install" = "Installer"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Layout"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Nummereret liste"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Nummereret liste/Punktopstilling"; + +/* Preferences window title. */ +"Preferences" = "Indstillinger"; + +/* Preference pane title. */ +"Rendering" = "Genererer"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Gendan editorpanel"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Gendan preview-panel"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Shell utility installeret"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Shell utility er ikke installeret"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Ryk til venstre"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Ryk til venstre/højre"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Ryk til højre"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Vis værktøjslinje"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Gennemstreget"; + +/* Strong toolbar button */ +"Strong" = "Fed"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Tekstformater"; + +/* Underline toolbar button */ +"Underline" = "Understreg"; + +/* Uninstall shell utility button */ +"Uninstall" = "Afinstaller"; + +/* Unordered list toolbar button */ +"Unordered List" = "Punktopstilling"; + +/* default filename if no title can be determined */ +"Untitled" = "Uden navn"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ ord;%@ ord"; + diff --git a/MacDown/Localization/da-DK.lproj/MPDocument.strings b/MacDown/Localization/da-DK.lproj/MPDocument.strings new file mode 100644 index 00000000..12669781 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Tekst"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/da-DK.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/da-DK.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..aa27bb41 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Listemarkør:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← springer til første ikke-blanke tegn i linjen"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Minus)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Opførsel"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Skift..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Indsæt linieskift i slutningen af arkiv ved arkivering"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Begræns linjebredde til"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Asterisk)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Tekstindryk:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Grundskrifttype"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Vis"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Genindlæs"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Linjeafstand:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Rul forbi enden"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Autofuldfør matchende tegn"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Automatisk nummerforøgelse i nummererede lister"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Erstat tabulatortegn med mellemrum"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Indsæt automatisk linjepræfiks for den aktuelle blok"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (plus)"; + diff --git a/MacDown/Localization/da-DK.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/da-DK.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..5576f048 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Inkluder syntaksfremhævelse"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Inkluder formater"; + diff --git a/MacDown/Localization/da-DK.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/da-DK.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..b52a69b1 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synkroniser preview- og editor rulleskakter"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Flyt editorpanel til højre"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Opdater"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Opret automatisk filer til link-mål"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Åbn MacDown med tomt dokument"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Opførsel"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Opdater preview automatisk"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Vis ordantal"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Inkluder pre-releases"; + diff --git a/MacDown/Localization/da-DK.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/da-DK.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..c29583df --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Vis"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Genindlæs"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Matematik support kræver internetforbindelse"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "TeX-lignende matematik syntaks"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Skaler preview baseret skriftstørrelse i editoren"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Syntaksfremhævet kodeblok"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Standardsti:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Brug dollartegn ($) som inline skilletegn"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Opdag Jekyll front-matter"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Brugerdefineret"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Syntaks for opgaveliste"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Registrer indholdsfortegnelse"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Ingen"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Sprog"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Vis linjeskift"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Tilbehør:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Vis linjenumre"; + diff --git a/MacDown/Localization/da-DK.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/da-DK.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..bedc9442 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Fodnote"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Fremhæv"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Intra-ord fremhævelse"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Afgrænset kodeblok"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Understreg"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Hævet skrift"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Gennemstreg"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Autolink"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Blokformattering"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Dokumentformatering"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Inline formatering"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabel"; + diff --git a/MacDown/Localization/da-DK.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/da-DK.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..46013b09 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Lokation:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Shell-support ikke installeret"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Ved at aktivere shell support kan du bruge macdown-værktøjet til at åbne MacDown og dokumenter fra en shell."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installer"; + diff --git a/MacDown/Localization/da-DK.lproj/MainMenu.strings b/MacDown/Localization/da-DK.lproj/MainMenu.strings new file mode 100644 index 00000000..8037dfe3 --- /dev/null +++ b/MacDown/Localization/da-DK.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Overskrift 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Find"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Start fuld skærm"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Forvandlinger"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Fremhæv"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Stavekontrol"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Tale"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Find"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Slut MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Kursiv"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Om MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Eksporter"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Rediger"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Gentag"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Søg efter opdateringer..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Gennemstreget"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Erstatninger"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Smart kopiering/indsættelse"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Ret stavefejl automatisk"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Understreget"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Udskriv..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Vindue"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Hovedmenu"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Overskrift 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Udvidelser"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Indstillinger..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Søg med det valgte"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Arkiver som..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Forvandlinger"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Overskrift 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Skift til små bogstaver"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Fortryd"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Stavekontrol og grammatik"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Luk"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Konverter til"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Oversigt"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hjælp"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Erstatninger"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Vis værktøjslinje"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Ryk til højre"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Link"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Sæt ind"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Vis stavekontrol og grammatik"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Udskift tekst"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Venstre 1:1 Højre"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Typografiske anførselstegn"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Kontroller dokument nu"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Tjenester"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Kommentar"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Konverter til"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Åbn..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Indlejret kode"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Punktopstilling"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Nummereret liste"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Ryk til venstre"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Bidragere til MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Tilbage til forrige arkivering"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Vis alle"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Overskrift 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Anbring alle forrest"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Kontroller grammatik under stavekontrol"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Overskrift 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Tjenester"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Venstre 3:1 Højre"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Åbn seneste"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Skjul MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Søg forrige"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimer"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Stop oplæsning"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Slet"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Udvidelser"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Arkiver..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Find næste"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Sidelayout..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoom"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Fed skrift"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Løbende stavekontrol"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Typografiske tankestreger"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Vælg alt"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Hop til Markeringen"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Eksporter"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Skjul preview"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Vindue"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Datadetektorer"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopier HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Citat"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Åbn seneste"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Til store bogstaver"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Hjælp til MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Klip"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Skjul andre"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Generer Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Billede"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Til store bogstaver"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Ryd menu"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Venstre 1:3 Højre"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Rediger"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nyt"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Skjul editor"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Overskrift 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hjælp"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopier"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Afsnit"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Tale"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Oversigt"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Find..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Find og erstat..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Start oplæsning"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Vis erstatninger"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nyt afsnit"; + diff --git a/MacDown/Localization/da.lproj/MainMenu.strings b/MacDown/Localization/da.lproj/MainMenu.strings new file mode 100644 index 00000000..4a99ea5f --- /dev/null +++ b/MacDown/Localization/da.lproj/MainMenu.strings @@ -0,0 +1,27 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Overskrift 2"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Luk"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Vis"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hjælp"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Åben..."; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Vis Alle"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Overskrift 1"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Venstre 3:1 Højre"; + diff --git a/MacDown/Localization/de-DE.lproj/Localizable.strings b/MacDown/Localization/de-DE.lproj/Localizable.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPDocument.strings b/MacDown/Localization/de-DE.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/de-DE.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/de-DE.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/de-DE.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/de-DE.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/de-DE.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/de-DE.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de-DE.lproj/MainMenu.strings b/MacDown/Localization/de-DE.lproj/MainMenu.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/de.lproj/Credits.rtf b/MacDown/Localization/de.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/de.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/de.lproj/InfoPlist.strings b/MacDown/Localization/de.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/de.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/de.lproj/Localizable.strings b/MacDown/Localization/de.lproj/Localizable.strings new file mode 100644 index 00000000..799108c3 --- /dev/null +++ b/MacDown/Localization/de.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Standard)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Block-Zitat"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ Zeichen (ohne Leerzeichen);%@ Zeichen (ohne Leerzeichen)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ Zeichen;%@ Zeichen"; + +/* Comment toolbar button */ +"Comment" = "Kommentieren"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "HTML kopieren"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Hervorheben"; + +/* Preference pane title. */ +"General" = "Allgemein"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Überschrift 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Überschrift 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Überschrift 3"; + +/* No comment provided by engineer. */ +"Headings" = "Überschriften"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Editor ausblenden"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Vorschau ausblenden"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Toolbar ausblenden"; + +/* Highlight toolbar button */ +"Highlight" = "Markiert"; + +/* Image toolbar button */ +"Image" = "Bild"; + +/* Inline code toolbar button */ +"Inline Code" = "Inline Code"; + +/* Install shell utility button */ +"Install" = "Installieren"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Layout"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Sortierte Liste"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Sortierte/Unsortierte Liste"; + +/* Preferences window title. */ +"Preferences" = "Einstellungen"; + +/* Preference pane title. */ +"Rendering" = "Vorschau"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Editor einblenden"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Vorschau einblenden"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Shell-Erweiterung installiert"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Shell-Erweiterung nicht installiert"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Ausrücken"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Aus-/Einrücken"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Einrücken"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Toolbar anzeigen"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Durchstreichen"; + +/* Strong toolbar button */ +"Strong" = "Fett"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Textstile"; + +/* Underline toolbar button */ +"Underline" = "Unterstreichen"; + +/* Uninstall shell utility button */ +"Uninstall" = "Deinstallieren"; + +/* Unordered list toolbar button */ +"Unordered List" = "Unsortierte Liste"; + +/* default filename if no title can be determined */ +"Untitled" = "Ohne Titel"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ Wort;%@ Wörter"; + diff --git a/MacDown/Localization/de.lproj/MPDocument.strings b/MacDown/Localization/de.lproj/MPDocument.strings new file mode 100644 index 00000000..0b4c151d --- /dev/null +++ b/MacDown/Localization/de.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Text"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/de.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/de.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..6d0b000e --- /dev/null +++ b/MacDown/Localization/de.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Zeichen für Listen:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← springt zu erstem Nicht-Whitespace-Zeichen in der Zeile"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Minus-Zeichen)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Verhalten"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Ändern … "; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Beim Speichern Zeilenumbruch am Ende hinzufügen"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Breite des Editors beschränken auf"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Sternchen)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Abstand zum Rand:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Basis-Schriftart:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Öffnen"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Aktualisieren"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Zeilenabstand:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Über letzte Zeile hinaus scrollen"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Umschließende Zeichen automatisch ergänzen"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Nummerierung in geordneten Listen automatisch erhöhen"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Design:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Leerzeichen anstelle von Tabs einfügen"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Für aktuellen Block Zeilen-Präfix automatisch einfügen"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Plus-Zeichen)"; + diff --git a/MacDown/Localization/de.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/de.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..332fc2b1 --- /dev/null +++ b/MacDown/Localization/de.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Syntax-Hervorhebung einbinden"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Stile einbinden"; + diff --git a/MacDown/Localization/de.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/de.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..051258a5 --- /dev/null +++ b/MacDown/Localization/de.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Vorschau mit dem Editor scrollen"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Editor auf der rechten Seite"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Aktualisierungen"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Automatisch Dateien für Links erzeugen"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Bei Programmstart neues Dokument erstellen"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Verhalten"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Vorschau während des Tippens aktualisieren"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Wortanzahl einblenden"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Vorabversionen nutzen"; + diff --git a/MacDown/Localization/de.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/de.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..e4908db0 --- /dev/null +++ b/MacDown/Localization/de.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Öffnen"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Neu laden"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Vorschau benötigt Internetverbindung"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "TeX-ähnliche Mathematik-Syntax"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Design:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Schriftgröße der Vorschau an Editor anpassen"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Syntax-Hervorhebung für Code-Blöcke"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Standardpfad:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Dollar-Zeichen ($) als Inline-Trennzeichen"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Jekyll Front Matter erkennen"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Benutzerdefiniert"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Aufgabenlisten-Syntax"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Token für Inhaltsverzeichnis erkennen"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Keine"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Sprachenname"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Zeilenumbrüche beibehalten"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Zusatz:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Zeilennummer anzeigen"; + diff --git a/MacDown/Localization/de.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/de.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..79d003d4 --- /dev/null +++ b/MacDown/Localization/de.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Fußnote"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Zitat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Markierung"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Intelligente Anführungszeichen"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Hervorhebung innerhalb von Wörtern"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Abgetrennte (fenced) Code-Blöcke"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Unterstrichen"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Hochgestellt"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Durchgestrichen"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Automatische Links"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Block-Formatierung"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Dokumentformatierung"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Inline-Formatierung"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabellen"; + diff --git a/MacDown/Localization/de.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/de.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..79884c80 --- /dev/null +++ b/MacDown/Localization/de.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Ort:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Shell-Unterstützung nicht installiert"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Durch aktivieren der Shell-Unterstützung kannst du die macdown Erweiterung verwenden, um MacDown und Dokumente mit Shell zu öffnen."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installieren"; + diff --git a/MacDown/Localization/de.lproj/MainMenu.strings b/MacDown/Localization/de.lproj/MainMenu.strings new file mode 100644 index 00000000..b6e8ba69 --- /dev/null +++ b/MacDown/Localization/de.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Überschrift 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Suchen"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Vollbildmodus"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformationen"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Markiert"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Rechtscheibung"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Sprachausgabe"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Suchen"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "MacDown beenden"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Kursiv"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Über MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exportieren"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Bearbeiten"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Wiederholen"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Auf Aktualisierungen prüfen …"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Durchgestrichen"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Ersetzungen"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Intelligentes Kopieren/Einfügen"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Rechtschreibung automatisch korrigieren"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Unterstrichen"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Drucken …"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Fenster"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Hauptmenü"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Überschrift 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Ablage"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Einstellungen …"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Auswahl für Suche übernehmen"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Sichern als …"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformationen"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Überschrift 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Kleinbuchstaben"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML …"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Ablage"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Widerrufen"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Rechtschreibung und Grammatik"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Schließen"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Ändern in"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Darstellung"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hilfe"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Ersetzungen"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Toolbar anzeigen"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Nach rechts verschieben"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Link"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Einfügen"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Rechtschreibung und Grammatik einblenden"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Textersetzung"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Links 1:1 Rechts"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Intelligente Anführungszeichen"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Dokument jetzt prüfen"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Dienste"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Kommentar"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Ändern in"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Öffnen … "; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Inline-Code"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Ungeordnete Liste"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Geordnete Liste"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formatieren"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Nach links verschieben"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Zu MacDown beitragen"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Zurück zur letzten Version"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Alle einblenden"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Überschrift 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Alle nach vorne bringen"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Rechtschreib- und Grammatikprüfung"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Überschrift 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Dienste"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Links 3:1 Rechts"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Benutzte Dokumente"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "MacDown ausblenden"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Weitersuchen (rückwärts)"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimieren"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Sprachausgabe stoppen"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Löschen"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Sichern …"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Weitersuchen (vorwärts)"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Papierformat …"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoomen"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Fett"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Während der Texteingabe prüfen"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Intelligente Bindestriche"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Alles auswählen"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Auswahl anzeigen"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exportieren"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Vorschau ausblenden"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Fenster"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Datenerkennung"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "HTML kopieren"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Block-Zitat"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Benutzte Dokumente"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Großschreiben"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown-Hilfe"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Ausschneiden"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Andere ausblenden"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Markdown rendern"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Bild"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Großbuchstaben"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Bereinige Menü"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Links 1:3 Rechts"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Bearbeiten"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Neu"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Editor ausblenden"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Überschrift 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hilfe"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopieren"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF …"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Absatz"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Sprachausgabe"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Darstellung"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Suchen … "; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Suchen und Ersetzen …"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Sprachausgabe starten"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Ersetzungen einblenden"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Neuer Absatz"; + diff --git a/MacDown/Localization/en.lproj/Credits.rtf b/MacDown/Localization/en.lproj/Credits.rtf index 9be4db81..9ace71f2 100644 --- a/MacDown/Localization/en.lproj/Credits.rtf +++ b/MacDown/Localization/en.lproj/Credits.rtf @@ -1,11 +1,11 @@ -{\rtf1\ansi\ansicpg1252\cocoartf1343\cocoasubrtf160 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} {\colortbl;\red255\green255\blue255;} {\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} {\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} {\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} \paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \f0\fs24 \cf0 \ Open source Markdown editor for OS X. @@ -17,43 +17,84 @@ Open source Markdown editor for OS X. {\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt \b0\fs24 Tzu-ping Chung}} \b0\fs24 \ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \fs28 \cf0 \ @@ -75,11 +116,11 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI \b0\fs24 \ Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt \b\fs28 \cf0 DMTemplates}} \b\fs28 \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ \ @@ -90,22 +131,23 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ \ \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt -\b\fs28 DTCoreText}}\ +\b\fs28 \cf0 DTCoreText}}\ Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ \ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ \ -\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720 +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 \ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ and/or other materials provided with the distribution.\ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \cf0 \ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ \ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt \b\fs28 \cf0 GBCli}}\ Copyright \'a9 2012 by Tomaz Kragelj\ @@ -117,7 +159,7 @@ The above copyright notice and this permission notice shall be included in all c \ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt \b\fs28 \cf0 Hoedown}}\ Copyright \'a9 2008, Natacha Port\'e9\ @@ -131,7 +173,7 @@ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH RE {\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt \b\fs28 Hoextdown}} \b\fs28 \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ \ @@ -141,19 +183,19 @@ The above copyright notice and this permission notice shall be included in all c \ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt \b\fs28 \cf0 LibYAML}}\ Copyright \'a9 2006 Kirill Simonov\ \ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 \cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ \ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ \ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ \ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt \b\fs28 \cf0 M13OrderedDictionary}}\ Copyright \'a9 2013 Brandon McQuilkin\ @@ -163,16 +205,16 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ \ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \cf0 \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt \b\fs28 \cf0 JJPluralForm}} \fs28 \fs24 by Lin Junjie\ This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt \b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ MASPreferences is licensed under the 2-clause BSD license.\ @@ -187,7 +229,7 @@ Redistribution and use in source and binary forms, with or without modification, \ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt \b\fs28 \cf0 PAPreferences}}\ Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ @@ -200,14 +242,14 @@ Redistribution and use in source and binary forms, with or without modification, \ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt \b\fs28 \cf0 PEG Markdown Highlight}}\ Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ \ PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt \b\fs28 \cf0 peg-markdown}}\ markdown in c, implemented using PEG grammar\ @@ -216,7 +258,7 @@ ODF output code \'a9 2011 Fletcher T. Penney\ \ peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \b \cf0 The GPL \b0 \ @@ -249,7 +291,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI \ {\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt \b\fs28 Sparkle}}\ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 \cf0 Copyright \'a9 2006 Andy Matuschak\ \ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ @@ -258,7 +300,7 @@ The above copyright notice and this permission notice shall be included in all c \ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ \ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 \b \cf0 EXTERNAL LICENSES \b0 \ @@ -274,7 +316,7 @@ Redistribution and use in source and binary forms, with or without modification, \ THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ \ -\pard\pardeftab720 +\pard\pardeftab720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt \b\fs28 \cf0 YAML.framework}}\ Copyright \'a9 2010 Mirek Rusin\ @@ -284,13 +326,13 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ \ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \cf0 \ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 {\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt \b\fs28 \cf0 Mou}} by Chen Luo\ The following editor theme and CSS files are extracted from Mou.app:\ -\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720 +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 \ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ {\listtext \'95 }Mou Fresh Air+\ {\listtext \'95 }Mou Night\ @@ -306,7 +348,7 @@ The following editor theme and CSS files are extracted from Mou.app:\ {\listtext \'95 }Clearness Dark\ {\listtext \'95 }GitHub\ {\listtext \'95 }GirHub2\ -\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720 +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 \cf0 Used under permission.\ \ {\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt diff --git a/MacDown/Localization/en.lproj/Localizable.strings b/MacDown/Localization/en.lproj/Localizable.strings new file mode 100644 index 00000000..89733c24 --- /dev/null +++ b/MacDown/Localization/en.lproj/Localizable.strings @@ -0,0 +1,15 @@ +/* + Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. +*/ + +"JJ_PLURAL_FORM_RULE" = "1"; + +"WORDS_PLURAL_STRING" = "%@ word;%@ words"; + +"CHARACTERS_PLURAL_STRING" = "%@ character;%@ characters"; + +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ character (no spaces);%@ characters (no spaces)"; diff --git a/MacDown/Localization/es.lproj/Credits.rtf b/MacDown/Localization/es.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/es.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/es.lproj/InfoPlist.strings b/MacDown/Localization/es.lproj/InfoPlist.strings new file mode 100644 index 00000000..118868f0 --- /dev/null +++ b/MacDown/Localization/es.lproj/InfoPlist.strings @@ -0,0 +1,3 @@ +/* Copyright (human-readable) */ +"NSHumanReadableCopyright" = "Copyright © 2014–2020 Tzu-ping Chung."; + diff --git a/MacDown/Localization/es.lproj/Localizable.strings b/MacDown/Localization/es.lproj/Localizable.strings new file mode 100644 index 00000000..611837ce --- /dev/null +++ b/MacDown/Localization/es.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Predeterminado)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Cita"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ carácter (sin espacios);%@ caracteres (sin espacios)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ carácter;%@ caracteres"; + +/* Comment toolbar button */ +"Comment" = "Comentario"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Copiar HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Enfatizar"; + +/* Preference pane title. */ +"General" = "General"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Encabezado 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Encabezado 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Encabezado 3"; + +/* No comment provided by engineer. */ +"Headings" = "Encabezados"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Ocultar el editor"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Ocultar la vista previa"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Ocultar barra de herramientas"; + +/* Highlight toolbar button */ +"Highlight" = "Resaltar"; + +/* Image toolbar button */ +"Image" = "Imagen"; + +/* Inline code toolbar button */ +"Inline Code" = "Código en linea"; + +/* Install shell utility button */ +"Install" = "Instalar"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Diseño"; + +/* Link toolbar button */ +"Link" = "Enlace"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Lista ordenada"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Lista ordenada/no ordenada"; + +/* Preferences window title. */ +"Preferences" = "Preferencias"; + +/* Preference pane title. */ +"Rendering" = "Visualización"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Volver a mostrar el editor"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Volver a mostrar la vista previa"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Utilidad de terminal instalada"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Utilidad de terminal no instalada"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Desplazar a la izquierda"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Desplazar a izquierda/derecha"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Desplazar a la derecha"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Mostrar barra de herramientas"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Tachado"; + +/* Strong toolbar button */ +"Strong" = "Negrita"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Estilos de texto"; + +/* Underline toolbar button */ +"Underline" = "Subrayado"; + +/* Uninstall shell utility button */ +"Uninstall" = "Desinstalar"; + +/* Unordered list toolbar button */ +"Unordered List" = "Lista no ordenada"; + +/* default filename if no title can be determined */ +"Untitled" = "Sin título"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ palabra;%@ palabras"; + diff --git a/MacDown/Localization/es.lproj/MPDocument.strings b/MacDown/Localization/es.lproj/MPDocument.strings new file mode 100644 index 00000000..25fa5935 --- /dev/null +++ b/MacDown/Localization/es.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Texto"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/es.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/es.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..0b01be65 --- /dev/null +++ b/MacDown/Localization/es.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Símbolo de lista:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← salta al primer carácter de tipo no-espacio-en-blanco"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Signo menos)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Comportamiento"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Modificar..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Asegurar un salto de línea en el final del fichero al guardar"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Limitar el ancho del editor a"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Asterisco)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Márgenes del texto:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Tipo de letra base:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Mostrar"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Recargar"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Interlineado:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Desplazar después del final"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Completar automáticamente caracteres coincidentes"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Incrementar automáticamente la numeración en listas ordenadas"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Insertar espacios en lugar de tabuladores"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Insertar automáticamente un prefijo de línea para el bloque actual"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Signo más)"; + diff --git a/MacDown/Localization/es.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/es.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..6534fa04 --- /dev/null +++ b/MacDown/Localization/es.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Incluir resaltado de sintaxis"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Incluir estilos"; + diff --git a/MacDown/Localization/es.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/es.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..754b6a7f --- /dev/null +++ b/MacDown/Localization/es.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Sincronizar la barra de desplazamiento de la vista previa al desplazar el editor"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Desplazar el editor a la derecha"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Actualizar"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Crear automáticamente los archivos apuntados por los enlaces"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Asegurar un documento abierto al iniciar"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Comportamiento"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Actualizar la previsualización automáticamente al teclear"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Mostrar el recuento de palabras"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Incluir versiones preliminares"; + diff --git a/MacDown/Localization/es.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/es.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..824a5438 --- /dev/null +++ b/MacDown/Localization/es.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Mostrar"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Recargar"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "El soporte para ecuaciones requiere una conexión a Internet."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Sintaxis de ecuaciones tipo TeX"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Escalar la previsualización en función del tamaño de letra del editor"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Bloque de código con resaltado de sintaxis"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Ruta por defecto:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Usar el símbolo del dólar ($) como delimitador en línea"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Detectar cabeceras de Jekyll"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Personalizado"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Sintaxis de lista de tareas"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Detectar token de tabla de contenidos"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Ninguno"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Nombre del lenguaje"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Visualizar el salto de línea literalmente"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Accesorio:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Mostrar los números de línea"; + diff --git a/MacDown/Localization/es.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/es.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..0e454c96 --- /dev/null +++ b/MacDown/Localization/es.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Nota al pie"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Cita"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Destacar"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Énfasis intra-palabra"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Bloque de código cercado"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Subrayado"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Superíndice"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Tachado"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Autoenlace"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Formato de bloque"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formato del documento"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Formato en línea"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabla"; + diff --git a/MacDown/Localization/es.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/es.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..3df8d8af --- /dev/null +++ b/MacDown/Localization/es.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Posición"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Soporte de línea de comandos no instalado"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Activando el soporte de línea de comandos puedes usar la utilidad macdown para abrir MacDown y documentos desde un terminal."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Instalar"; + diff --git a/MacDown/Localization/es.lproj/MainMenu.strings b/MacDown/Localization/es.lproj/MainMenu.strings new file mode 100644 index 00000000..070bb88c --- /dev/null +++ b/MacDown/Localization/es.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Encabezado 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Buscar"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Usar pantalla completa"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformaciones"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Destacar"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Ortografía"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Habla"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Buscar"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Salir de MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Enfatizar"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Acerca de MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exportar"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Editar"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Rehacer"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Buscar actualizaciones..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Tachado"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Sustituciones"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Copiar/Pegar inteligente"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Corregir ortografía automáticamente"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Subrayado"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Imprimir..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Ventana"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Menú principal"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Encabezado 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Archivo"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Preferencias..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Usar la selección para buscar"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Guardar como..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformaciones"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Encabezado 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Convertir a minúsculas"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Archivo"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Deshacer"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Ortografía y gramática"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Cerrar"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Convertir a"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Ver"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Ayuda"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Sustituciones"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Mostrar barra de herramientas"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Desplazar a la derecha"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Enlace"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Pegar"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Mostrar ortografía y gramática"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Reemplazo de texto"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Izquierda 1:1 Derecha"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Comillas inteligentes"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Comprobar el documento ahora"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Servicios"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Comentario"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Convertir a"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Abrir..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Código en línea"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Lista no ordenada"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Lista ordenada"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formato"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Desplazar a la izquierda"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Contribuir a MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Volver a la versión guardada"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Mostrar todos"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Encabezado 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Traer todo al frente"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Comprobar gramática con ortografía"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formato"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Encabezado 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Servicios"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Izquierda 3:1 Derecha"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Abrir reciente"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Ocultar MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Buscar el anterior"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimizar"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Dejar de hablar"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Borrar"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Guardar..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Buscar siguiente"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Configuración de página..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoom"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Negrita"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Comprobar ortografía al escribir"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Guiones inteligentes"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Seleccionar todo"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Saltar a la selección"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exportar"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Ocultar la vista previa"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Ventana"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Detectores de datos"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Copiar HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = " Cita de bloque"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Abrir reciente"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Convertir a mayúsculas"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Ayuda de MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Cortar"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Ocultar el resto"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Visualizar Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Imagen"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Convertir a mayúsculas"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Vaciar menú"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Izquierda 1:3 Derecha"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Editar"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nuevo"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Ocultar el editor"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Encabezado 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Ayuda"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Copiar"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Párrafo"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Habla"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Vista"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Buscar..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Buscar y reemplazar..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Empezar a hablar"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Mostrar sustituciones"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nuevo párrafo"; + diff --git a/MacDown/Localization/et.lproj/Localizable.strings b/MacDown/Localization/et.lproj/Localizable.strings new file mode 100644 index 00000000..95e15970 --- /dev/null +++ b/MacDown/Localization/et.lproj/Localizable.strings @@ -0,0 +1,112 @@ +/* Prism theme title */ +"(Default)" = "(Vaikeväärtus)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Plokktsitaat"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ märki (ilma tühikuteta);%@ märki (ilma tühikuteta)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ märki;%@ märki"; + +/* Comment toolbar button */ +"Comment" = "Kommentaar"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopeeri HTML"; + +/* Preference pane title. */ +"Editor" = "Redaktor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Rõhuta"; + +/* Preference pane title. */ +"General" = "Üldine"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Pealkiri 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Pealkiri 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Pealkiri 3"; + +/* No comment provided by engineer. */ +"Headings" = "Pealkirjad"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Peida redaktori paan"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Peida eelvaade"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Peida tööriistariba"; + +/* Highlight toolbar button */ +"Highlight" = "Esiletõstmine"; + +/* Image toolbar button */ +"Image" = "Pilt"; + +/* Install shell utility button */ +"Install" = "Paigalda"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Paigutus"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Ordered list toolbar button */ +"Ordered List" = "Nummerdatud loetelu"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Nummerdatud/Nummerdamata loetelu"; + +/* Preferences window title. */ +"Preferences" = "Eelistused"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Näita tööriistariba"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Läbijoonitud"; + +/* Strong toolbar button */ +"Strong" = "Paks"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Tekstistiilid"; + +/* Underline toolbar button */ +"Underline" = "Allajoonitud"; + +/* Uninstall shell utility button */ +"Uninstall" = "Eemalda"; + +/* Unordered list toolbar button */ +"Unordered List" = "Nummerdamata loetelu"; + +/* default filename if no title can be determined */ +"Untitled" = "Pealkirjata"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ sõna;%@ sõna"; + diff --git a/MacDown/Localization/et.lproj/MPDocument.strings b/MacDown/Localization/et.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/et.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/et.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..df836d19 --- /dev/null +++ b/MacDown/Localization/et.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Nimekirja marker:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← hüppab reas esimese märgi juurde, mis pole tühik"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (miinusmärk)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Käitumine"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Muuda..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Veendu, et faili lõpus oleks salvestamisel tühi rida"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (tärn)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Teksti sisestamine:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Näita"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Laadi uuesti"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Reavahed:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Teema:"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (pluss märk)"; + diff --git a/MacDown/Localization/et.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/et.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..bd7ed15c --- /dev/null +++ b/MacDown/Localization/et.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,3 @@ +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Kaasa stiilid"; + diff --git a/MacDown/Localization/et.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/et.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..69c0c84b --- /dev/null +++ b/MacDown/Localization/et.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,15 @@ +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Pane redaktor paremale"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Uuenda"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Käitumine"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Uuenda eelvaadet kirjutamise ajal"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Näita sõnade arvu"; + diff --git a/MacDown/Localization/et.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/et.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..81394d1b --- /dev/null +++ b/MacDown/Localization/et.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Näita"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Laadi uuesti"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Teema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Muuda eelvaate suurust vastavalt redaktori tekstisuurusele"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Merineitsi"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Vaikimisi asukoht:"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Tuvasta Jekyll front-matter"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Kohandatud"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Ülesannete nimekirja süntaks"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Pole"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Keele nimi"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Näita reanumbreid"; + diff --git a/MacDown/Localization/et.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/et.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..df4f3c70 --- /dev/null +++ b/MacDown/Localization/et.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,30 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Allmärkus"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Tsitaat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Esiletõstmine"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Sõnasisene rõhk"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Alljoonitud"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Ülaindeks"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Läbijoonitud"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Automaatne linkimine"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Dokumendi vormindamine"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabel"; + diff --git a/MacDown/Localization/et.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/et.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..cced854d --- /dev/null +++ b/MacDown/Localization/et.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Asukoht:"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Paigalda"; + diff --git a/MacDown/Localization/et.lproj/MainMenu.strings b/MacDown/Localization/et.lproj/MainMenu.strings new file mode 100644 index 00000000..1e62a3db --- /dev/null +++ b/MacDown/Localization/et.lproj/MainMenu.strings @@ -0,0 +1,333 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Pealkiri 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Otsi"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Sisesne täisekraanile"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Esiletõstmine"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Õigekiri"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Kõne"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Otsi"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Sulge MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Rõhuta"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Info MacDown kohta"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Ekspordi"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Muuda"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Tee uuesti"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Kontrolli uuendusi..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Läbijoonitud"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Nutikas kopeerimine"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Paranda õigekiri automaatselt"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Jooni alla"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Prindi..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Aken"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Peamenüü"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Pealkiri 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Fail"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Pluginad"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Eelistused..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Kasuta otsimiseks valikut"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Salvesta kui..."; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Pealkiri 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Tee väiketähtedeks"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Fail"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Samm tagasi"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Õigekiri ja grammatika"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Sulge"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Konverdi"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Vaade"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Abiinfo"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Asendused"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Näita tööriistariba"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "ink"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Aseta"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Näita õigekirja ja grammatikat"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Teksti asendamine"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Vasak 1:1 Parem"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Nutikad jutumärgid"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Kontrolli dokumenti kohe"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Teenused"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Kommentaar"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Konverdi"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Ava..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Põimitud kood"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Nummerdamata loetelu"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Nummerdatud loetelu"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Vorming"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "MacDowni aitamine"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Taasta salvestatud versioon"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Näita kõiki"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Pealkiri 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Too kõik ette"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Kontrolli õigekirja ja grammatikat"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Vorming"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Pealkiri 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Teenused"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Vasak 3:1 Parem"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Ava hiljutised"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Peida MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Otsi eelmist"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimeeri"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Peata rääkimine"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Kustuta"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Pluginad"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Salvesta..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Leia järgmine"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Lehekülje seadistamine..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Suurendus"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Paks"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Kontrolli õigekirja kirjutamise ajal"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Nutikad sidekriipsud"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Vali kõik"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Mine valiku juurde"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Ekspordi"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Peida eelvaade"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Aken"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Andmeühendused"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopeeri HTML"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Ava hiljutised"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Kõik suurtähtedeks"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown abiinfo"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Lõika"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Peida teised"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Pilt"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Tee suurtähtedeks"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Tühjenda menüü"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Vasak 1:3 Parem"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Muuda"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Uus"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Peida redaktori paan"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Pealkiri 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Abiinfo"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopeeri"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Lõik"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Kõne"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Vaade"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Otsi..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Otsi ja asenda..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Alusta rääkimist"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Näita asendusi"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Uus lõik"; + diff --git a/MacDown/Localization/fi.lproj/MainMenu.strings b/MacDown/Localization/fi.lproj/MainMenu.strings new file mode 100644 index 00000000..5e2f5f83 --- /dev/null +++ b/MacDown/Localization/fi.lproj/MainMenu.strings @@ -0,0 +1,48 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Otsikko 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Etsi"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Siirry koko näytön tilaan"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Muunnokset"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Korosta"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Oikeinkirjoitus"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Puhe"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Etsi"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Lopeta MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Painota"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Tietoja MacDownista"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Vie"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Muokkaa"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Tee uudelleen"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Tarkista päivitykset…"; + diff --git a/MacDown/Localization/fr.lproj/Credits.rtf b/MacDown/Localization/fr.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/fr.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/fr.lproj/InfoPlist.strings b/MacDown/Localization/fr.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/fr.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/fr.lproj/Localizable.strings b/MacDown/Localization/fr.lproj/Localizable.strings new file mode 100644 index 00000000..f2f2aeef --- /dev/null +++ b/MacDown/Localization/fr.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Par défaut)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Bloc de citation"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ charactère (sans espaces);%@ charactères (sans espaces)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ charactère;%@ charactères"; + +/* Comment toolbar button */ +"Comment" = "Commentaire"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Copier le HTML"; + +/* Preference pane title. */ +"Editor" = "Éditeur"; + +/* Emphasize toolbar button */ +"Emphasize" = "Emphase"; + +/* Preference pane title. */ +"General" = "Général"; + +/* Heading 1 toolbar button */ +"Heading 1" = "En-tête 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "En-tête 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "En-tête 3"; + +/* No comment provided by engineer. */ +"Headings" = "En-têtes"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Masquer l’éditeur"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Masquer la Prévisualisation"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Masquer la barre d’outils"; + +/* Highlight toolbar button */ +"Highlight" = "Surligner"; + +/* Image toolbar button */ +"Image" = "Image"; + +/* Inline code toolbar button */ +"Inline Code" = "Code en ligne"; + +/* Install shell utility button */ +"Install" = "Installer"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Disposition"; + +/* Link toolbar button */ +"Link" = "Lien"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Liste ordonnée"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Liste ordonnée/non-ordonnée"; + +/* Preferences window title. */ +"Preferences" = "Préférences"; + +/* Preference pane title. */ +"Rendering" = "Compilation"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Restaurer l’éditeur"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Restaurer la prévisualisation"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Utilitaire terminal installé"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Utilitaire terminal non installé"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Diminuer le retrait"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Diminuer/Augmenter le retrait"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Augmenter le retrait"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Afficher la barre d’outils"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Barré"; + +/* Strong toolbar button */ +"Strong" = "Fort"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Styles de texte"; + +/* Underline toolbar button */ +"Underline" = "Souligner"; + +/* Uninstall shell utility button */ +"Uninstall" = "Désinstaller"; + +/* Unordered list toolbar button */ +"Unordered List" = "Liste non-ordonnée"; + +/* default filename if no title can be determined */ +"Untitled" = "Sans titre"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ mot;%@ mots"; + diff --git a/MacDown/Localization/fr.lproj/MPDocument.strings b/MacDown/Localization/fr.lproj/MPDocument.strings new file mode 100644 index 00000000..78dd4cd8 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPDocument.strings @@ -0,0 +1,3 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Texte"; + diff --git a/MacDown/Localization/fr.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/fr.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..44dedc5b --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Puce de liste :"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← va vers le premier caractère de la ligne qui n’est pas un espace"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Signe moins)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Comportement"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Modifier…"; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Forcer l'insertion d'une nouvelle ligne en fin de fichier à la sauvegarde"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Limiter la largeur de l’éditeur à"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Astérisque)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Marges :"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Police de base :"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Révéler"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Actualiser"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Interligne :"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Défilement au-delà de la fin"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Compléter automatiquement les caractères correspondants"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Incrémenter automatiquement le numéro dans les listes ordonnées"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Thème :"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Insérer des espaces plutôt que des tabulations"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Insérer automatiquement le préfixe de ligne pour le bloc courant"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Signe plus)"; + diff --git a/MacDown/Localization/fr.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/fr.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..a299abc7 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Inclure la coloration syntaxique"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Inclure les styles"; + diff --git a/MacDown/Localization/fr.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/fr.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..85f78308 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synchroniser le défilement de la prévisualisation quand l'éditeur défile"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Afficher l’éditeur à droite"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Mettre à jour"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Créer automatiquement les fichiers des cibles de lien"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Forcer l’ouverture d’un document vierge au démarrage"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Comportement"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Mettre à jour automatiquement la prévisualisation à la saisie"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Afficher le compteur de mots"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Inclure les pré-versions"; + diff --git a/MacDown/Localization/fr.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/fr.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..abe4a0e0 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Révéler"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Actualiser"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Le support mathématique requiert une connexion internet."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Syntaxe mathématique TeX-like"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS :"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Thème :"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Ajuster la prévisualisation en fonction de la taille de texte de l'éditeur"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Bloc de code avec coloration syntaxique"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Chemin d’accès par défaut :"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Utiliser le signe dollar ($) en tant que délimiteur en ligne"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Détecter le front-matter de Jekyll"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Personnalisé"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Syntaxe de liste de tâches"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Détecter le token de table des matières"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Aucun"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Nom du langage"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Prendre en compte les sauts de ligne dans l'éditeur"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Accessoire :"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Afficher les numéros de ligne"; + diff --git a/MacDown/Localization/fr.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/fr.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..aab0509a --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Note de bas de page"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citation"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Surligner"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Italique au sein d’un mot"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Bloc de code"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Souligner"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Exposant"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Barré"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Lien automatique"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Formattage en bloc"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formattage de document"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Formattage en ligne"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tableau"; + diff --git a/MacDown/Localization/fr.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/fr.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..c21627b3 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Chemin :"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Support du terminal non installé"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "En activant le support du terminal vous pouvez utiliser l’utilitaire macdown pour ouvrir MacDown et des documents directement depuis le terminal."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installer"; + diff --git a/MacDown/Localization/fr.lproj/MainMenu.strings b/MacDown/Localization/fr.lproj/MainMenu.strings new file mode 100644 index 00000000..3ebdc686 --- /dev/null +++ b/MacDown/Localization/fr.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "En-tête 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Rechercher"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Activer le mode plein écran"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformations"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Surligner"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Orthographe"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Dictée"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Rechercher"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Quitter MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Emphase"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "À propos de MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exporter"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Édition"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Rétablir"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Vérifier les mises à jour"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Barré"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Remplacements"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Copier/Coller intelligent"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Corriger l’orthographe automatiquement"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Souligner"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Imprimer…"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Fenêtre"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Menu Principal"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "En-tête 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Fichier"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Extensions"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Préférences…"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Rechercher la sélection"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Enregistrer sous…"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformations"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "En-tête 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Mettre en minuscule"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Fichier"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Annuler"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Orthographe et grammaire"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Fermer"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Convertir vers"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Présentation"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Aide"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Substitutions"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Afficher la barre d’outils"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Augmenter le retrait"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Lien"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Coller"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Afficher l’orthographe et la grammaire"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Remplacement de texte"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Gauche 1:1 Right"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Citations intelligentes"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Vérifier maintenant le document"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Services"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Commentaire"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Convertir vers"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Ouvrir…"; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Code en ligne"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Liste non-ordonnée"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Liste ordonnée"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Diminuer le retrait"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Contribue à MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Revenir à la version sauvegardée"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Tout afficher"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "En-tête 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Tout ramener au premier plan"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Vérifier la grammaire et l’orthographe"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "En-tête 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Services"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Gauche 3:1 Droite"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Documents récents"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Masquer MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Rechercher le précédent"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Réduire"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Arrêter Dictée"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Supprimer"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Extensions"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Sauvegarder…"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Trouver le suivant"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Mise en page…"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Agrandir"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Fort"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Vérifier l’orthographe à la saisie"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Tirets intelligents"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Tout sélectionner"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Sauter à la sélection"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exporter"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Masquer la prévisualisation"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Fenêtre"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Détecteurs de données"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Copier le HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Bloc de citation"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Documents récents"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Majuscule"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Aide MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Couper"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Masquer les autres"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Compiler le Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Image"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Mettre en majuscule"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Effacer les fichiers récents"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Gauche 1:3 Droite"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Édition"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nouveau"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Masquer l’éditeur"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "En-tête 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Aide"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Copier"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Paragraphe"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Dicter"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Afficher"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Rechercher…"; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Rechercher et remplacer…"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Démarrer Dictée"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Afficher les remplacements"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nouveau paragraphe"; + diff --git a/MacDown/Localization/is.lproj/Credits.rtf b/MacDown/Localization/is.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/is.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/is.lproj/InfoPlist.strings b/MacDown/Localization/is.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/is.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/is.lproj/Localizable.strings b/MacDown/Localization/is.lproj/Localizable.strings new file mode 100644 index 00000000..e057c45a --- /dev/null +++ b/MacDown/Localization/is.lproj/Localizable.strings @@ -0,0 +1,64 @@ +/* Prism theme title */ +"(Default)" = "(Sjálfgefið)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ stafur (án bila);%@ stafir (án bila)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ stafur;%@ stafir"; + +/* Preference pane title. */ +"Editor" = "Ritill"; + +/* Preference pane title. */ +"General" = "Almennt"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Fela ritilsspjald"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Fela forskoðunarspjald"; + +/* Install shell utility button */ +"Install" = "Setja upp"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Preferences window title. */ +"Preferences" = "Stillingar"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Endurheimta ritilsspjald"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Endurheimta forskoðunarspjald"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Tól fyrir skel uppsett"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Tól fyrir skel ekki uppsett"; + +/* Preference pane title. */ +"Terminal" = "Skel"; + +/* Uninstall shell utility button */ +"Uninstall" = "Fjarlægja"; + +/* default filename if no title can be determined */ +"Untitled" = "Ónefnt"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ orð;%@ orð"; + diff --git a/MacDown/Localization/is.lproj/MPDocument.strings b/MacDown/Localization/is.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/is.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/is.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..855d64ed --- /dev/null +++ b/MacDown/Localization/is.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,39 @@ +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Mínus merkið)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Hegðun"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Breyta..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Tryggja að ný lína er á enda skráarinnar við vistun"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Takmarka vídd ritils við"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Stjarna)"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Grunnleturgerð:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Endurhlaða"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Línubil:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Þema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Nota bil í stað flipa"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Plús merkið)"; + diff --git a/MacDown/Localization/is.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/is.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/is.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/is.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e7b1804f --- /dev/null +++ b/MacDown/Localization/is.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Hafa ritilinn hægra megin"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Uppfærsla"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Tryggja að skrá sé opin við ræsingu"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Hegðun"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Uppfæra forskoðunina sjálfvirkt á meðan þú skrifar"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Sýna orðafjölda"; + diff --git a/MacDown/Localization/is.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/is.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..b1fd3f80 --- /dev/null +++ b/MacDown/Localization/is.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Endurhlaða"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Þema:"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Enginn"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Aukabúnaður:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Sýna línunúmer"; + diff --git a/MacDown/Localization/is.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/is.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..9881d71c --- /dev/null +++ b/MacDown/Localization/is.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Tilvitnun"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Merkja"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Undirstrikað"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Neðanmálsgrein"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Yfirstrikað"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Snið skjals"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tafla"; + diff --git a/MacDown/Localization/is.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/is.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..bf791d04 --- /dev/null +++ b/MacDown/Localization/is.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,15 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Staðsetning:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Stuðningur fyrir skel er ekki uppsett"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Setja upp"; + diff --git a/MacDown/Localization/is.lproj/MainMenu.strings b/MacDown/Localization/is.lproj/MainMenu.strings new file mode 100644 index 00000000..0755853d --- /dev/null +++ b/MacDown/Localization/is.lproj/MainMenu.strings @@ -0,0 +1,306 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Fyrirsögn 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Finna"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Fylla skjáinn"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Umbreytingar"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Merkja"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Stafsetning"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Tal"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Finna"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Loka MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Áhersla"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Um MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Flytja út"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Breyta"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Endurgera"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Leita að uppfærslum..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Yfirstrika"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Snjöll afritun/líming"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Leiðrétta stafsetningu sjálfvirkt"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Undirstrika"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Prenta..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Gluggi"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Aðalvalmynd"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Fyrirsögn 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Skrá"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Viðbætur"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Stillingar..."; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Vista sem..."; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Fyrirsögn 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Gera að lágstöfum"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Skrá"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Afturkalla"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Stafsetning og málfar"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Loka"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Breyta í"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Skoða"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hjálp"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Hlekkur"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Líma"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Vinstri 1:1 Hægri"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Snjallar tilvitnanir"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Þjónustur"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Athugasemd"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Breyta í"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Opna..."; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Óraðaður listi"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Raðaður listi"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Snið"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Snúa aftur í vistað"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Sýna allt"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Fyrirsögn 3"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Fara yfir málfræði með stafsetningu"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Snið"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Fyrirsögn 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Þjónustur"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Vinstri 3:1 Hægri"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Opna nýlegt"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Fela MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Finna síðasta"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Hætta að tala"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Eyða"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Viðbætur"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Vista..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Finna næsta"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Uppsetning blaðsíðu..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Þysja"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Feitletrað"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Fara yfir stafsetningu á meðan skrifað er"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Snjöll bandstrik"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Velja allt"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Flytja út"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Fela forskoðunarspjald"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Gluggi"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Gagnaskynjarar"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Afrita HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Tilvitnun"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Opna nýlegt"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown Hjálp"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Klippa"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Fela aðra"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Útbúa Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Mynd"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Breyta í hástafi"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Hreinsa valmynd"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Vinstri 1:3 Hægri"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Breyta"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nýtt"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Fela ritilsspjald"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Fyrirsögn 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hjálp"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Afrita"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Málsgrein"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Tal"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Skoða"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Finna..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Finna og skipta út..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Byrja að tala"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Sýna útskiptingar"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Ný málsgrein"; + diff --git a/MacDown/Localization/it-IT.lproj/Credits.rtf b/MacDown/Localization/it-IT.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/it-IT.lproj/InfoPlist.strings b/MacDown/Localization/it-IT.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/it-IT.lproj/Localizable.strings b/MacDown/Localization/it-IT.lproj/Localizable.strings new file mode 100644 index 00000000..36f118d9 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/Localizable.strings @@ -0,0 +1,112 @@ +/* Prism theme title */ +"(Default)" = "(Predefinito)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Blocco citazione"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "Carattere %@ (senza spazi);caratteri %@ (senza spazi)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "Carattere %@;%@ Caratteri"; + +/* Comment toolbar button */ +"Comment" = "Commento"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Copia HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Preference pane title. */ +"General" = "Generale"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Nascondi Editor"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Nascondi Anteprima"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Nascondi barra degli strumenti"; + +/* Highlight toolbar button */ +"Highlight" = "Evidenzia"; + +/* Image toolbar button */ +"Image" = "Immagine"; + +/* Install shell utility button */ +"Install" = "Installa"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Layout"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Lista ordinata"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Lista ordinata/non ordinata"; + +/* Preferences window title. */ +"Preferences" = "Preferenze"; + +/* Preference pane title. */ +"Rendering" = "Resa grafica"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Ripristina Editor"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Ripristina Anteprima"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Supporto Shell installato"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Supporto Shell non installato"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Mostra barra degli strumenti"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Barrato"; + +/* Preference pane title. */ +"Terminal" = "Terminale"; + +/* No comment provided by engineer. */ +"Text Styles" = "Stili del testo"; + +/* Underline toolbar button */ +"Underline" = "Sottolinea"; + +/* Uninstall shell utility button */ +"Uninstall" = "Disinstalla"; + +/* Unordered list toolbar button */ +"Unordered List" = "Lista non ordinata"; + +/* default filename if no title can be determined */ +"Untitled" = "Senza Titolo"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ parola;%@ parole"; + diff --git a/MacDown/Localization/it-IT.lproj/MPDocument.strings b/MacDown/Localization/it-IT.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/it-IT.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/it-IT.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..bb3b06ea --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Marcatori di lista:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← vai al primo carattere della riga"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Segno meno)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Comportamento"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Modifica..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Inserisci una riga vuota alla fine del file al salvataggio"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Limita larghezza editor a"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Asterisco)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Box di Testo:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Font predefinito"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "x"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Mostra"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Ricarica"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Interlinea"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Scorri oltre la fine del file"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Auto-completa caratteri corrispondenti"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Numerazione crescente automatica nelle liste"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Inserisci spazi al posto di tab"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Inserisci automaticamente il prefisso della linea per il blocco corrente"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Segno più)"; + diff --git a/MacDown/Localization/it-IT.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/it-IT.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..66165556 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Evidenzia la sintassi"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Includi stili"; + diff --git a/MacDown/Localization/it-IT.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/it-IT.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..d309469a --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Sincronizza le barra di scorrimento dell'editor e dell'anteprima"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Visualizza l'editor a destra"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Aggiorna"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Crea automaticamente file per link di destinazione"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Crea un documento al'apertura"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Comportamento"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Aggiorna automaticamente l'anteprima mentre scrivi"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Mostra conta parole"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Includi versioni pre-rilascio"; + diff --git a/MacDown/Localization/it-IT.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/it-IT.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..47fb72d0 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,51 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Mostra"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Ricarica"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Il supporto a math richiede la connessione internet"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Sintassi matematica in stile TeX"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Ridimensiona anteprima in base alla dimensione del carattere"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Blocco di codice con sintassi evidenziata"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Percorso predefinito:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Usa il simbolo dollaro ($) come delimitatore di linea"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Personalizzato"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Sintassi lista di azioni"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Identifica simboli per sommario"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Nessuno"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Nome linguaggio"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Crea nuova riga con Invio"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Mostra numero linea"; + diff --git a/MacDown/Localization/it-IT.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/it-IT.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..c94845b3 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,39 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Note a piè pagina"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citazione"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Evidenzia"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Enfasi tra le parole"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Blocco di codice fenced"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Sottolinea"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Apice"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Barrato"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Collega automaticamente"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Formattazione del blocco"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formattazione doocumento"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Formattazione in linea"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabella"; + diff --git a/MacDown/Localization/it-IT.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/it-IT.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..ac7a07d0 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,9 @@ +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Supporto alla shell non installato"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Attivando il supporto della shell potrai usare l'utility macdown per aprire documenti di MacDown direttamente dalla shell."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installa"; + diff --git a/MacDown/Localization/it-IT.lproj/MainMenu.strings b/MacDown/Localization/it-IT.lproj/MainMenu.strings new file mode 100644 index 00000000..18df84c6 --- /dev/null +++ b/MacDown/Localization/it-IT.lproj/MainMenu.strings @@ -0,0 +1,345 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Titolo 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Trova"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Modalità Schermo Intero"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Trasformazioni"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Evidenzia"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Ortografia"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Comandi vocali"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Trova"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Chiudi MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Enfatizza"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Informazioni su MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Esporta"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Modifica"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Ripristina"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Controlla aggiornamenti..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Barrato"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Sostituzioni"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Copia/Incolla Intelligente"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Correggi Ortografia Automaticamente"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Sottolinea"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Stampa..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Finestra"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Menu Principale"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Titolo 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "File"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Preferenze..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Usa Selezione per Trovare"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Salva come..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Trasformazioni"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Titolo 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Trasforma in Minuscolo"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "File"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Annulla"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Ortografia e Grammatica"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Chiudi"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Converti in"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Vista"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Aiuto"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Sostituzioni"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Mostra barra degli strumenti"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Collegamento"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Incolla"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Mostra Ortografia e Grammatica"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Sostituzione Testo"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Sinistra-Destra 1:1"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Citazioni Intelligenti "; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Controlla Documento Ora"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Servizi"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Commento"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Converti in"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Apri..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Codice in Linea"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Elenco Puntato"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Elenco Numerato"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formatta"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Contribuisci allo sviluppo di MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Ripristina File Salvato"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Mostra Tutto"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Titolo 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Porta tutto in primo piano"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Controlla Grammatica con Ortografia"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formato"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Titolo 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Servizi"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Sinistra 3:1 Destra"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Apri Recente"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Nascondi MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Trova Precedente"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimizza"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Interrompi Riproduzione"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Elimina"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Salva..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Trova Successivo"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Impostazione Pagina..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Ingrandimento"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Marcato"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Controlla Ortografia Durante la Scrittura"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Trattini intelligenti"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Seleziona Tutto"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Vai alla Selezione"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Esporta"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Nascondi Pannello Anteprima"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Finestra"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Identificatore Dati"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Copia HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Blocco Citazione"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Apri Recente"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Capitalizza"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Aiuto MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Taglia"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Nascondi Altri"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Crea Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Immagine"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Rendi Maiuscolo"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Sinistra 1:3 Destra"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Modifica"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nuovo"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Nascondi Editor"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Titolo 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Aiuto"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Copia"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Paragrafo"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Dettatura"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Vista"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Trova..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Trova e Sostituisci..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Inizia Riproduzione"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Mostra Sostituzioni"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nuovo Paragrafo"; + diff --git a/MacDown/Localization/ja.lproj/Credits.rtf b/MacDown/Localization/ja.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/ja.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/ja.lproj/InfoPlist.strings b/MacDown/Localization/ja.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/ja.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/ja.lproj/Localizable.strings b/MacDown/Localization/ja.lproj/Localizable.strings new file mode 100644 index 00000000..27803a0d --- /dev/null +++ b/MacDown/Localization/ja.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(デフォルト)"; + +/* Displayed when shell utility is not installed */ +"" = "<未インストール>"; + +/* Blockquote toolbar button */ +"Blockquote" = "ブロック引用"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ 文字 (スペースなし);%@ 文字列 (スペースなし)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ 文字;%@ 文字列"; + +/* Comment toolbar button */ +"Comment" = "コメント"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "HTML をコピー"; + +/* Preference pane title. */ +"Editor" = "エディタ"; + +/* Emphasize toolbar button */ +"Emphasize" = "強調"; + +/* Preference pane title. */ +"General" = "一般"; + +/* Heading 1 toolbar button */ +"Heading 1" = "見出し 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "見出し 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "見出し 3"; + +/* No comment provided by engineer. */ +"Headings" = "見出し"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "エディタペインを隠す"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "プレビューペインを隠す"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "ツールバーを隠す"; + +/* Highlight toolbar button */ +"Highlight" = "ハイライト"; + +/* Image toolbar button */ +"Image" = "画像"; + +/* Inline code toolbar button */ +"Inline Code" = "インラインコード"; + +/* Install shell utility button */ +"Install" = "インストール"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "レイアウト"; + +/* Link toolbar button */ +"Link" = "リンク"; + +/* Preference pane title. */ +"Markdown" = "マークダウン"; + +/* Ordered list toolbar button */ +"Ordered List" = "番号付きリスト"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "番号付き/箇条書きリスト"; + +/* Preferences window title. */ +"Preferences" = "環境設定"; + +/* Preference pane title. */ +"Rendering" = "レンダリング"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "エディタペインを表示"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "プレビューペインを表示"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "コマンドラインツール インストール済み"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "コマンドラインツール 未インストール"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "左にシフト"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "左/右にシフト"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "右にシフト"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "ツールバーを表示"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "打ち消し線"; + +/* Strong toolbar button */ +"Strong" = "強い強調"; + +/* Preference pane title. */ +"Terminal" = "ターミナル"; + +/* No comment provided by engineer. */ +"Text Styles" = "テキストスタイル"; + +/* Underline toolbar button */ +"Underline" = "下線"; + +/* Uninstall shell utility button */ +"Uninstall" = "アンインストール"; + +/* Unordered list toolbar button */ +"Unordered List" = "箇条書きリスト"; + +/* default filename if no title can be determined */ +"Untitled" = "名称未設定"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ word;%@ words"; + diff --git a/MacDown/Localization/ja.lproj/MPDocument.strings b/MacDown/Localization/ja.lproj/MPDocument.strings new file mode 100644 index 00000000..49caefa8 --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "テキスト"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/ja.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/ja.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..547211fd --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "リストマーカー:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← で行の最初の非空白文字にジャンプ"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (マイナス)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "動作"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "変更…"; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "保存時にファイル末尾が必ず改行になるようにする"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "エディタの最大幅を設定"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (アスタリスク)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "テキスト領域:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "フォント:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "表示"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "リロード"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "行間:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "最終行の先までスクロール可能にする"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "対応する括弧等を自動的に補完"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "番号付きリストの数字を自動的にインクリメント"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "テーマ:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "タブをスペースに自動的に展開"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "改行時にリストや引用のプレフィックスを自動挿入"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (プラス)"; + diff --git a/MacDown/Localization/ja.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/ja.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..65faf06a --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "シンタックスハイライトを含める"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "スタイルを含める"; + diff --git a/MacDown/Localization/ja.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/ja.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..35d5f219 --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "エディタと連動してプレビューもスクロール"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "エディタを右側に表示"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "アップデート"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "リンク先のファイルを自動的に作成"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "起動時に必ずドキュメントを開く"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "動作"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "プレビューを自動的に更新"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "単語数を表示"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "プレリリースを含める"; + diff --git a/MacDown/Localization/ja.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/ja.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..fada86d1 --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "表示"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "リロード"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "数式のサポートにはインターネット接続が必要です."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "LaTeX 風の数式シンタックス"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "テーマ:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "エディタのフォントサイズに応じてプレビューを拡大"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "コードブロックをシンタックスハイライト"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "デフォルトパス:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "ドルマーク ($) をインラインデリミタとして使用"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Jekyll のフロントマッタを検出"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "カスタム"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "チェックリストシンタックス"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "目次シンタックス"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "なし"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "言語名"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "改行をそのまま表示"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "アクセサリ:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "行番号を表示"; + diff --git a/MacDown/Localization/ja.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/ja.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..1cef70db --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "脚注"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "引用"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "ハイライト"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "単語内強調"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "別行立てコードブロック"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "下線"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "上付き文字"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "打ち消し線"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "自動リンク"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "ブロックフォーマット"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "ドキュメントフォーマット"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "インラインフォーマット"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "表組み"; + diff --git a/MacDown/Localization/ja.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/ja.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..686e9128 --- /dev/null +++ b/MacDown/Localization/ja.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "場所:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "コマンドラインツール 未インストール"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "コマンドラインツールをインストールすると macdown コマンドを用いて MacDown をシェルから起動することができます."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "インストール"; + diff --git a/MacDown/Localization/ja.lproj/MainMenu.strings b/MacDown/Localization/ja.lproj/MainMenu.strings new file mode 100644 index 00000000..c0386c69 --- /dev/null +++ b/MacDown/Localization/ja.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "見出し 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "検索"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "フルスクリーンにする"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "変換"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "ハイライト"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "スペル"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "スピーチ"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "検索"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "MacDown を終了"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "強調"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "MacDown について"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "エクスポート"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "編集"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "やり直す"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "アップデートを確認…"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "打ち消し線"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "置換"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "スマートコピー/ペースト"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "スペルを自動的に修正"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "下線"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "印刷…"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "ウィンドウ"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "メインメニュー"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "見出し 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "ファイル"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "プラグイン"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "環境設定…"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "選択部分を検索"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "別名で保存…"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "変換"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "見出し 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "小文字にする"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "ファイル"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "取り消す"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "スペルと文法"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "閉じる"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "見出しレベルを変更"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "表示"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "ヘルプ"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "置換"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "ツールバーを表示"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "右へシフト"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "リンク"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "ペースト"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "スペルと文法を表示"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "テキスト置換"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "左ペイン 1:1 右ペイン"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "スマート引用符"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "書類を今すぐチェック"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "サービス"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "コメント"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "見出しレベルを変更"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "開く…"; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "インラインコード"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "箇条書きリスト"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "番号付きリスト"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "フォーマット"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "左へシフト"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "MacDown にコントリビュート"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "保存時の状態に戻す"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "すべてを表示"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "見出し 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "すべてを前面に"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "スペルと一緒に文法をチェック"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "フォーマット"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "見出し 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "サービス"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "左ペイン 3:1 右ペイン"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "最近使った項目を開く"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "MacDown を隠す"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "前を検索"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "最小化"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "読み上げを停止"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "削除"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "プラグイン"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "保存…"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "次を検索"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "ページ設定…"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "拡大/縮小"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "強い強調"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "入力中にスペルチェック"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "スマートダッシュ記号"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "すべてを選択"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "選択部分へ移動"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "エクスポート"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "プレビューペインを隠す"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "ウィンドウ"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "データ検出"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "HTML をコピー"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "ブロック引用"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "最近使った項目を開く"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "語頭を大文字にする"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown ヘルプ"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "カット"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "ほかを隠す"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "レンダリング"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "画像"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "大文字にする"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "メニューをクリア"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "左ペイン 1:3 右ペイン"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "編集"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "新規"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "エディタペインを隠す"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "見出し 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "ヘルプ"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "コピー"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "段落"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "スピーチ"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "表示"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "検索…"; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "検索と置換…"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "読み上げを開始"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "置換を表示"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "新しい段落"; + diff --git a/MacDown/Localization/ko-KR.lproj/Credits.rtf b/MacDown/Localization/ko-KR.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/ko-KR.lproj/InfoPlist.strings b/MacDown/Localization/ko-KR.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/ko-KR.lproj/Localizable.strings b/MacDown/Localization/ko-KR.lproj/Localizable.strings new file mode 100644 index 00000000..3babc30c --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/Localizable.strings @@ -0,0 +1,82 @@ +/* Preference pane title. */ +"Editor" = "편집기"; + +/* Heading 1 toolbar button */ +"Heading 1" = "제목 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "제목 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "제목 3"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "편집 창 가리기"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "미리보기 창 가리기"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "도구 막대 가리기"; + +/* Highlight toolbar button */ +"Highlight" = "강조"; + +/* Image toolbar button */ +"Image" = "이미지"; + +/* Inline code toolbar button */ +"Inline Code" = "인라인 코드"; + +/* Install shell utility button */ +"Install" = "설치"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Link toolbar button */ +"Link" = "링크"; + +/* Preference pane title. */ +"Markdown" = "마크다운"; + +/* Ordered list toolbar button */ +"Ordered List" = "순서가 있는 목록"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "순서가 있는/순서가 없는 목록"; + +/* Preferences window title. */ +"Preferences" = "환경설정"; + +/* Preference pane title. */ +"Rendering" = "렌더링"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "편집 창 복구"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "미리보기 창 복구"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "도구 막대 보이기"; + +/* Strong toolbar button */ +"Strong" = "굵게"; + +/* Preference pane title. */ +"Terminal" = "터미널"; + +/* Underline toolbar button */ +"Underline" = "밑줄"; + +/* Unordered list toolbar button */ +"Unordered List" = "순서가 없는 목록"; + +/* default filename if no title can be determined */ +"Untitled" = "제목없음"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPDocument.strings b/MacDown/Localization/ko-KR.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ko-KR.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/ko-KR.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..9050649d --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,33 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "목록 마커:"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "-(빼기 기호)"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "변경..."; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "*(별표)"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "기본 서체:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "x"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "나타내기"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "불러오기"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "행 간격"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "테마:"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+(더하기 기호)"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/ko-KR.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..46f6da11 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "문법 강조 포함"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "스타일 포함"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/ko-KR.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..50b82021 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "업데이트"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "단어수 보기"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/ko-KR.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..b9826861 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "테마:"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "기본 경로:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "행 번호 보이기"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/ko-KR.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..fc8d8af5 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "인용"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "코드 펜스"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "밑줄"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "테이블"; + diff --git a/MacDown/Localization/ko-KR.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/ko-KR.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/ko-KR.lproj/MainMenu.strings b/MacDown/Localization/ko-KR.lproj/MainMenu.strings new file mode 100644 index 00000000..3e95a0e8 --- /dev/null +++ b/MacDown/Localization/ko-KR.lproj/MainMenu.strings @@ -0,0 +1,267 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "헤더 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "찾기"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "전체 화면 시작"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "변환"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "강조"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "음성"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "찾기"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "MacDown 종료"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "MacDown에 관하여"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "내보내기"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "수정"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "다시실행"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "업데이트 확인..."; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "대체"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "스마트 복사하기/붙이기"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "맞춤법 자동 수정"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "인쇄..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "창"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "메인 메뉴"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "헤더 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "파일"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "플러그인"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "환경설정..."; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "다른 이름으로 저장..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "변환"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "헤더 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "소문자로 만들기"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "파일"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "실행취소"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "맞춤법 및 문법"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "닫기"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "변환하기"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "보기"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "도움말"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "대체"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "링크"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "붙여넣기"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "맞춤법 및 문법 보기"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "텍스트 대체"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "좌측 1:1 우측"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "스마트 인용"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "지금 도큐멘트 검사 "; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "열기..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "인라인 코드"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "모두 보여주기"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "헤더 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "앞으로 모두 가져오기"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "맞춤법 및 문법 검사"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "헤더 1"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "좌측 3:1 우측"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "기본 서체:"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "MacDown 가리기"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "이전 찾기"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "최소화"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "말하기 중단"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "삭제"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "플러그인"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "저장..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "다음 찾기"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "페이지 설정..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "확대"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "입력하는 동안 맞춤법 검사"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "스마트 대시"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "모두 선택"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "내보내기"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "창"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "최근 파일"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown 도움말"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "오려두기"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "기타 가리기"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "이미지"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "대문자로 만들기"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "좌측 1:3 우측"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "편집"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "편집창"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "헤더 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "도움말"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "복사"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "본문"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "말하기"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "보기"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "찾기..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "말하기 시작"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "대체 보기"; + diff --git a/MacDown/Localization/nb-NO.lproj/Localizable.strings b/MacDown/Localization/nb-NO.lproj/Localizable.strings new file mode 100644 index 00000000..9cffb8ae --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Standard)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Blokksitat"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ tegn (uten mellomrom);%@ tegn (uten mellomrom)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ tegn;%@ tegn"; + +/* Comment toolbar button */ +"Comment" = "Kommentar"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopier HTML"; + +/* Preference pane title. */ +"Editor" = "Redigerer"; + +/* Emphasize toolbar button */ +"Emphasize" = "Uthev"; + +/* Preference pane title. */ +"General" = "Generelt"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Overskrift 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Overskrift 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Overskrift 3"; + +/* No comment provided by engineer. */ +"Headings" = "Overskrifter"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Skjul redigeringsvindu"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Skjul forhåndsvisningsvindu"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Skjul verktøylinje"; + +/* Highlight toolbar button */ +"Highlight" = "Marker"; + +/* Image toolbar button */ +"Image" = "Bilde"; + +/* Inline code toolbar button */ +"Inline Code" = "Inline-kode"; + +/* Install shell utility button */ +"Install" = "Installer"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Layout"; + +/* Link toolbar button */ +"Link" = "Lenke"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Nummerert liste"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Nummerert liste/punktliste"; + +/* Preferences window title. */ +"Preferences" = "Valg"; + +/* Preference pane title. */ +"Rendering" = "Formattering"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Gjenopprett redigeringsvindu"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Gjenopprett forhåndsvisningsvindu"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Terminalverktøy installert"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Terminalverktøy ikke installert"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Dytt til venstre"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Dytt til venstre/høyre"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Dytt til høyre"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Vis verktøylinje"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Gjennomstrek"; + +/* Strong toolbar button */ +"Strong" = "Sterk"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Tekststiler"; + +/* Underline toolbar button */ +"Underline" = "Understrek"; + +/* Uninstall shell utility button */ +"Uninstall" = "Avinstaller"; + +/* Unordered list toolbar button */ +"Unordered List" = "Punktliste"; + +/* default filename if no title can be determined */ +"Untitled" = "Uten navn"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ ord;%@ ord"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPDocument.strings b/MacDown/Localization/nb-NO.lproj/MPDocument.strings new file mode 100644 index 00000000..12669781 --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Tekst"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/nb-NO.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..7f7c8034 --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Listemarkør:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← hopper til det første tegnet som ikke er mellomrom eller enter på linja"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Minustegn)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Oppførsel"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Endre..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Sikre at fila ender på ei ny linje under lagring"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Begrens redigeringsvinduets bredde til"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Asterisk)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Innfelt tekst:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Grunnfont:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Vis"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Last inn på nytt"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Linjemellomrom:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Rull forbi slutten"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Auto-fullfør passende tegn"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Øk nummereringer i sorterte lister automatisk"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Sett inn mellomrom i stedet for tabulatorer"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Sett inn linjeprefiks for den gjeldende blokka automatisk"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Plusstegn)"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/nb-NO.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..25a5d22e --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Inkluder syntaksmarkering"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Inkluder stiler"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/nb-NO.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..cbad8e42 --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synkroniser forhåndsvisningas rulling med redigeringsvinduet"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Plasser redigeringsvinduet til høyre"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Oppdater"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Lag filer for lenkemål automatisk"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Sikre at et dokument er åpent ved oppstart"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Oppførsel"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Oppdater forhåndsvisning automatisk under skriving"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Vis antall ord"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Inkluder forhåndsutgivelser"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/nb-NO.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..6a0b4868 --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Vis"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Last inn på nytt"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Støtte for matte krever internettilkobling"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "TeX-aktig mattesyntaks"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Skaler forhåndsvisning basert på skriftstørrelse i redingeringsvinduet"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Syntaksmarkert kodeblokk"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Standardplassering:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Bruk dollartegn ($) som inline-skilletegn"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Gjenkjenn front-matter for Jekyll"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Tilpassa"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Syntaks for oppgaveliste"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Gjenkjenn innholdsfortegnelse"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Ingen"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Språknavn"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Vis ny linje bokstavelig"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Tilbehør:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Vis linjenumre"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/nb-NO.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..6e3cf6ba --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Fotnote"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Sitat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Merka tekst"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Utheva tekst inne i ord"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Inngjerda kodeblokk"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Understrek"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Heva skrift"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Gjennomstrek"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Autolenking"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Blokkformatering"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Dokumentformatering"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Inline-formatering"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabell"; + diff --git a/MacDown/Localization/nb-NO.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/nb-NO.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..18e216cc --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Plassering:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Terminalstøtte ikke installert"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Ved å aktivere terminalstøtte kan du bruke macdown-verktøyet for å åpne MacDown og dokumenter fra en terminal."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installer"; + diff --git a/MacDown/Localization/nb-NO.lproj/MainMenu.strings b/MacDown/Localization/nb-NO.lproj/MainMenu.strings new file mode 100644 index 00000000..3e8eae4d --- /dev/null +++ b/MacDown/Localization/nb-NO.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Overskrift 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Finn"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Gå til fullskjermmodus"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Endre bokstavtype"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Marker"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Stavekontroll"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Tale"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Finn"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Avslutt MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Uthev"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Om MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Eksporter"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Rediger"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Utfør likevel"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Se etter oppdateringer"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Gjennomstreket"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Automatiske endringer"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Smart kopier / lim inn"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Korriger stavemåte automatisk"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Understrek"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Skriv ut..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Vindu"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Hovedmeny"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Overskrift 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Utvidelser"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Valg..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Bruk markering for Finn"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Arkiver som..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Endre bokstavtype"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Overskrift 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Bruk små bokstaver"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Angre"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Stavekontroll og grammatikk"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Lukk"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Konverter til"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Vis"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hjelp"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Automatiske endringer"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Vis verktøylinje"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Dytt til høyre"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Lenke"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Lim inn"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Vis stavekontroll og grammatikk"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Teksterstatning"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Venstre 1:1 Høyre"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Smarte anførselstegn"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Kontroller dokument nå"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Tjenester"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Kommentar"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Konverter til"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Åpne..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Inline-kode"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Punktliste"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Nummerert liste"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Dytt til venstre"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Bidra til MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Tilbakestill til lagret"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Vis alle"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Overskrift 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Legg alle øverst"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Kontroller grammatikk og stavemåte"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Overskrift 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Tjenester"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Venstre 3:1 Høyre"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Åpne sist brukte"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Skjul MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Finn forrige"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimer"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Stopp tale"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Slett"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Utvidelser"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Lagre..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Finn neste"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Utskriftsformat..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoom"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Sterk"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Kontroller stavemåte mens du skriver"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Smarte tankestreker"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Velg alt"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Hopp til markering"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Eksporter"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Skjul forhåndsvisningsvindu"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Vindu"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Datadetektorer"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopier HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Blokksitat"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Åpne sist brukte"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Bruk stor forbokstav"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Hjelp for MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Klipp ut"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Skjul andre"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Formater Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Bilde"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Bruk store bokstaver"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Tøm meny"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Venstre 1:3 Høyre"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Rediger"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Ny"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Skjul redigeringsvindu"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Overskrift 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hjelp"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopier"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Avsnitt"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Tale"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Vis"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Finn..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Søk og erstatt..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Start tale"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Vis automatiske endringer"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nytt avsnitt"; + diff --git a/MacDown/Localization/nl-NL.lproj/InfoPlist.strings b/MacDown/Localization/nl-NL.lproj/InfoPlist.strings new file mode 100644 index 00000000..118868f0 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/InfoPlist.strings @@ -0,0 +1,3 @@ +/* Copyright (human-readable) */ +"NSHumanReadableCopyright" = "Copyright © 2014–2020 Tzu-ping Chung."; + diff --git a/MacDown/Localization/nl-NL.lproj/Localizable.strings b/MacDown/Localization/nl-NL.lproj/Localizable.strings new file mode 100644 index 00000000..4f38f173 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Standaard)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Blokcitaat"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@-teken (geen spaties);%@-tekens (geen spaties)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@-teken;%@-tekens"; + +/* Comment toolbar button */ +"Comment" = "Opmerking"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopieer HTML"; + +/* Preference pane title. */ +"Editor" = "Bewerker"; + +/* Emphasize toolbar button */ +"Emphasize" = "Benadruk"; + +/* Preference pane title. */ +"General" = "Algemeen"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Kop 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Kop 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Kop 3"; + +/* No comment provided by engineer. */ +"Headings" = "Koppen"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Verberg bewerkpaneel"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Verberg voorbeeldpaneel"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Verberg werkbalk"; + +/* Highlight toolbar button */ +"Highlight" = "Markeer"; + +/* Image toolbar button */ +"Image" = "Afbeelding"; + +/* Inline code toolbar button */ +"Inline Code" = "Ingesloten code"; + +/* Install shell utility button */ +"Install" = "Installeer"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Indeling"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Geordende lijst"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Ongeordende lijst"; + +/* Preferences window title. */ +"Preferences" = "Voorkeuren"; + +/* Preference pane title. */ +"Rendering" = "Rendering"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Herstel bewerkpaneel"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Herstel voorbeeldpaneel"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Shell-hulpmiddel is geïnstalleerd"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Shell-hulpmiddel is niet geïnstalleerd"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Linker shifttoets"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Linker-/rechtershifttoets"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Rechter shifttoets"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Toon werkbalk"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Haal door"; + +/* Strong toolbar button */ +"Strong" = "Vetgedrukt"; + +/* Preference pane title. */ +"Terminal" = "Terminalvenster"; + +/* No comment provided by engineer. */ +"Text Styles" = "Tekststijlen"; + +/* Underline toolbar button */ +"Underline" = "Onderstreep"; + +/* Uninstall shell utility button */ +"Uninstall" = "Deïnstalleer"; + +/* Unordered list toolbar button */ +"Unordered List" = "Ongeordende lijst"; + +/* default filename if no title can be determined */ +"Untitled" = "Naamloos"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ woord;%@ woorden"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPDocument.strings b/MacDown/Localization/nl-NL.lproj/MPDocument.strings new file mode 100644 index 00000000..0ba9da87 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Tekst"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "K1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "K5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "K4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "K6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "K2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "K3"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/nl-NL.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..27e8047b --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Lijstmarkering:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← springt naar eerste niet-witruimteteken op de regel"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (minteken)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Gedrag"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Wijzig..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Pas nieuwe regel toe aan einde van bestand bij opslaan"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Beperk breedte van bewerker tot"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (sterretje)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Tekstinvoegingen:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Hoofdlettertype:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Toon"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Herlaad"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Regelafstand:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Scroll voorbij het einde"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Vervolledig overeenkomende tekens automatisch"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Voeg automatisch nummers toe aan geordende lijsten"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Thema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Voeg spaties in in plaats van tabs"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Voeg automatisch regelvoorvoegsel toe voor huidig blok"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (plusteken)"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/nl-NL.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..cb92f0aa --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Inclusief syntaxmarkering"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Inclusief stijlen"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/nl-NL.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..a2c102b2 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Sychroniseer voorbeeldscrollbalk tijdens scrollen"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Plaats bewerkpaneel rechts"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Werk bij"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Creëer automatisch bestanden voor linkdoelen"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Open document bij opstarten"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Gedrag"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Werk voorbeeld automatisch bij tijdens typen"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Toon woordtelling"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Inclusief vroegtijdige uitgaven"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/nl-NL.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..9b24adb7 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Toon"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Herlaad"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Voor wiskunde-ondersteuning is een internetverbinding vereist."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "TeX-achtige wiskundesyntax"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Thema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Schaal voorbeeld gebaseerd op lettertypegrootte van bewerker"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Zeemeermin"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Codeblok met gemarkeerde syntax"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Standaardpad:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Gebruik dollarteken ($) als regelbeperking"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Detecteer Jekyll front-matter"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Aangepast"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Taaklijstsyntax"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Detecteer inhoudsopgavenummer"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Geen"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Naam van taal"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Render nieuwe regel letterlijk"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Accessoire:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Toon regelnummers"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/nl-NL.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..e4f3de9d --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Voetnoot"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citaat"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Markeer"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Slimmerik"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Benadruk woorden"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Afgesloten codeblok"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Onderstreep"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Superscript"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Haal door"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Link automatisch"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Blokopmaak"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Documentopmaak"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Regelopmaak"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabel"; + diff --git a/MacDown/Localization/nl-NL.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/nl-NL.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..0e44d341 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Locatie:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Shell-ondersteuning is niet geïnstalleerd"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Door shell-ondersteuning te activeren, kun je het macdown-hulpmiddel gebruiken om MacDown en documenten te openen vanuit een shell."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Installeer"; + diff --git a/MacDown/Localization/nl-NL.lproj/MainMenu.strings b/MacDown/Localization/nl-NL.lproj/MainMenu.strings new file mode 100644 index 00000000..3a218cb9 --- /dev/null +++ b/MacDown/Localization/nl-NL.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Kop 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Zoek"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Schakel volledig scherm in"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformaties"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Markeer"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Spelling"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Spraak"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Zoek"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Sluit MacDown af"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Benadruk"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Over MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exporteer"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Bewerk"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Opnieuw"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Controleer op updates..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Haal door"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Tekstvervanging"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Slim kopiëren/plakken"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Corrigeer spelling automatisch"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Onderstreep"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Druk af..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Venster"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Hoofdmenu"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Kop 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Bestand"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Voorkeuren..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Gebruik selectie voor zoeken"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Sla op als..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformaties"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Kop 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Zet om naar kleine letters"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Bestand"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Maak ongedaan"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Spelling en grammatica"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Sluit"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Converteer naar"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Weergave"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hulp"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Tekstvervanging"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Toon werkbalk"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Rechter shifttoets"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Link"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Plak"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Toon spelling en grammatica"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Tekstvervanging"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Links 1:1 Rechts"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Slimme aanhalingstekens"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Controleer document"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Diensten"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Opmerking"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Converteer naar"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Open..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Ingesloten code"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Ongeordende lijst"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Geordende lijst"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Opmaak"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Linker shifttoets"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Draag bij aan MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Herstel naar opgeslagen"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Toon alles"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Kop 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Breng alle vensters naar voorgrond"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Controleer grammatica én spelling"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Opmaak"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Kop 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Diensten"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Links 3:1 Rechts"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Open recent bestand"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Verberg MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Zoek vorige"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimaliseer"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Stop met praten"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Verwijder"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Sla op..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Zoek volgende"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Pagina-instelling..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoom"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Vetgedrukt"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Controleer spelling tijdens typen"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Slimme gedachtestreepjes"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Selecteer alles"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Spring naar selectie"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exporteer"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Verberg voorbeeldpaneel"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Venster"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Gegevensdetectie"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopieer HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Blokcitaat"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Open recent bestand"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Hoofdletters"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown - Hulp"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Knip"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Verberg andere"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Render markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Afbeelding"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Zet om naar hoofdletters"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Schoon menu op"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Links 1:3 Rechts"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Bewerk"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nieuw"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Verberg bewerkpaneel"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Kop 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hulp"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopieer"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Paragraaf"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Spraak"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Weergave"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Zoek..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Zoek en vervang..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Start met praten"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Toon tekstvervangingen"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nieuwe paragraaf"; + diff --git a/MacDown/Localization/pt-BR.lproj/Credits.rtf b/MacDown/Localization/pt-BR.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/pt-BR.lproj/InfoPlist.strings b/MacDown/Localization/pt-BR.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/pt-BR.lproj/Localizable.strings b/MacDown/Localization/pt-BR.lproj/Localizable.strings new file mode 100644 index 00000000..db9ee354 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(Padrão)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "Bloco de citação"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ caractere (sem espaços);%@ caracteres (sem espaços)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ caractere;%@ caracteres"; + +/* Comment toolbar button */ +"Comment" = "Comentário"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Copiar HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Itálico"; + +/* Preference pane title. */ +"General" = "Geral"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Título 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Título 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Título 3"; + +/* No comment provided by engineer. */ +"Headings" = "Títulos"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Esconder o Painel de Edição"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Esconder o Painel de Visualização"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "Ocultar Barra de Ferramentas"; + +/* Highlight toolbar button */ +"Highlight" = "Realçar"; + +/* Image toolbar button */ +"Image" = "Imagem"; + +/* Inline code toolbar button */ +"Inline Code" = "Código na linha"; + +/* Install shell utility button */ +"Install" = "Instalar"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Layout"; + +/* Link toolbar button */ +"Link" = "Link"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "Lista Ordenada"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "Lista Ordenada/Não Ordenada"; + +/* Preferences window title. */ +"Preferences" = "Preferências"; + +/* Preference pane title. */ +"Rendering" = "Renderização"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Mostrar o Painel de Edição"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Mostrar o Painel de Visualização"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Utilitário do Shell instalado"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Utilitário do Shell não instalado"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "Shift Esquerdo"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "Shift Esquerdo/Direito"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Shift Direito"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "Mostrar Barra de Ferramentas"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Tachado"; + +/* Strong toolbar button */ +"Strong" = "Negrito"; + +/* Preference pane title. */ +"Terminal" = "Terminal"; + +/* No comment provided by engineer. */ +"Text Styles" = "Estilos de Texto"; + +/* Underline toolbar button */ +"Underline" = "Sublinhado"; + +/* Uninstall shell utility button */ +"Uninstall" = "Desinstalar"; + +/* Unordered list toolbar button */ +"Unordered List" = "List Não Ordenada"; + +/* default filename if no title can be determined */ +"Untitled" = "Sem Título"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ palavra;%@ palavras"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPDocument.strings b/MacDown/Localization/pt-BR.lproj/MPDocument.strings new file mode 100644 index 00000000..25fa5935 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Texto"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/pt-BR.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..9b6cec85 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Marcador de lista:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← vai para o primeiro caractere que não seja espaço na linha"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Sinal de menos)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Comportamento"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Alterar..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Garantir nova linha no final do arquivo ao salvar"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Limitar a largura do editor em"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Asterisco)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Margens do texto:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Fonte base:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Mostrar"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Recarregar"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Espaçamento da linha:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Rolagem após o fim do texto"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Auto-completar caracteres correspondentes"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Incrementar a numeração automaticamente nas listas ordenadas"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Inserir espaços em vez de tabs"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Inserir automaticamente o prefixo da linha para o bloco atual"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Sinal de mais)"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/pt-BR.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..37dc8533 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Incluir realce de sintaxe"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Incluir estilos"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/pt-BR.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..47cbf840 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Sincronizar a rolagem da visualização quando o editor rolar"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Colocar o editor na direita"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Atualizar"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Criar automaticamente arquivos para os links de destino"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Garantir abertura de novo documento na inicialização"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Comportamento"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Atualizar visualização automaticamente com a digitação"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Mostrar contagem de palavras"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Incluir pré-lançamentos"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/pt-BR.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..58c7f5d0 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Mostrar"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Recarregar"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "O suporte para equações exige conexão com a Internet."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Sintaxe matemática similar ao TeX"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Escalar a visualização baseada no tamanho da fonte do editor"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Realce de sintaxe para o bloco de código"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Diretório padrão:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Utilizar o sinal de dólar ($) como um delimitador em linha"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "Detectar o cabeçalho Jekyll"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Customizado"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Habilitar sintaxe da lista de tarefas"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "Detectar o token do índice"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Nenhum"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Nome da linguagem"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "Renderizar quebras de linha literalmente"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Acessório:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Mostrar a numeração das linhas"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/pt-BR.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..330ef4e8 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Nota de rodapé"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citação"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Realce"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Itálico dentro de palavras"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "Blocos de código-fonte delimitados"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Sublinhado"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Sobrescrito"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Tachado"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "Links automáticos"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Formatação de bloco"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formatação de documento"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Formatação de linha"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabela"; + diff --git a/MacDown/Localization/pt-BR.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/pt-BR.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..d3ec3de4 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Localização:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Suporte ao shell não instalado"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "Ao ativar o suporte ao shell, você poderá utilizar o utilitário macdown para abrir o MacDown e documentos através de um shell."; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Instalar"; + diff --git a/MacDown/Localization/pt-BR.lproj/MainMenu.strings b/MacDown/Localization/pt-BR.lproj/MainMenu.strings new file mode 100644 index 00000000..1f478f37 --- /dev/null +++ b/MacDown/Localization/pt-BR.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Título 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Buscar"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Entrar em Tela Cheia"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Maiúsculas/Minúsculas"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Realce"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Ortografia"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Fala"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Buscar"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Encerrar MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Itálico"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Sobre o MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exportar"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Editar"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Refazer"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Verificar Atualizações..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Tachado"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Substituições"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Copiar/Colar Inteligente"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Corrigir Ortografia Automaticamente"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Sublinhado"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Imprimir..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Janela"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Menu Principal"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Título 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Arquivo"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Preferências..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Usar Seleção para Buscar"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Salvar Como..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Maiúsculas/Minúsculas"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Título 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Tudo em Minúsculas"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Arquivo"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Desfazer"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Ortografia e Gramática"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Fechar"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Converter Para"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Visualizar"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Ajuda"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Substituições"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Mostrar Barra de Ferramentas"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Deslocar para Direita"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Link"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Colar"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Mostrar Ortografia e Gramática"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Substituição de Texto"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Esquerda 1:1 Direita"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Aspas Inteligentes"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Verificar o Documento Agora"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Serviços"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Comentário"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Converter Para"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Abrir..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Código na Linha"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Lista Não-Ordenada"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Lista Ordenada"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formatar"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Deslocar para Esquerda"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "Contribuindo com o MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Reverter para Salvo"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Mostrar Tudo"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Título 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Trazer Todas para a Frente"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Verificar Gramática com Ortografia"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formatar"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Título 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Serviços"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Esquerda 3:1 Direita"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Abrir Recente"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Ocultar MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Buscar Anterior"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimizar"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Parar de Falar"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Apagar"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Plug-ins"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Salvar..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Buscar Seguinte"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Configurar Página..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Ampliar/Reduzir"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Negrito"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Verificar Ortografia ao Escrever"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Hifens Inteligentes"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Selecionar Tudo"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Saltar para Seleção"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exportar"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Esconder o Painel de Visualização"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Janela"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Detectores de Dados"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Copiar HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Citação em Bloco"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Abrir Recente"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Letras Iniciais em Maiúsculas"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "Ajuda MacDown"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Cortar"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Ocultar Outros"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Renderizar Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Imagem"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Tudo em Maiúsculas"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Limpar Menu"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Esquerda 1:3 Direita"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Editar"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Novo"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Esconder o Painel de Edição"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Título 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Ajuda"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Copiar"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Parágrafo"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Fala"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Visualizar"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Buscar..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Buscar e Substituir..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Começar a Falar"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Mostrar Substituições"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Novo Parágrafo"; + diff --git a/MacDown/Localization/ru-RU.lproj/Localizable.strings b/MacDown/Localization/ru-RU.lproj/Localizable.strings new file mode 100644 index 00000000..d77c6aa4 --- /dev/null +++ b/MacDown/Localization/ru-RU.lproj/Localizable.strings @@ -0,0 +1,21 @@ +/* Highlight toolbar button */ +"Highlight" = "Выделить"; + +/* Image toolbar button */ +"Image" = "Картинка"; + +/* Install shell utility button */ +"Install" = "Установить"; + +/* Ordered list toolbar button */ +"Ordered List" = "Нумерованный список"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "Сместить вправо"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Зачеркнуть"; + +/* Unordered list toolbar button */ +"Unordered List" = "Маркированный список"; + diff --git a/MacDown/Localization/ru-RU.lproj/MPDocument.strings b/MacDown/Localization/ru-RU.lproj/MPDocument.strings new file mode 100644 index 00000000..6a85441f --- /dev/null +++ b/MacDown/Localization/ru-RU.lproj/MPDocument.strings @@ -0,0 +1,3 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Текст"; + diff --git a/MacDown/Localization/ru-RU.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/ru-RU.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..a93f3507 --- /dev/null +++ b/MacDown/Localization/ru-RU.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,3 @@ +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Зачеркнуть"; + diff --git a/MacDown/Localization/ru-RU.lproj/MainMenu.strings b/MacDown/Localization/ru-RU.lproj/MainMenu.strings new file mode 100644 index 00000000..048de42b --- /dev/null +++ b/MacDown/Localization/ru-RU.lproj/MainMenu.strings @@ -0,0 +1,165 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Заголовок 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Найти"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Развернуть на весь экран"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Преобразования"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Выделить"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Правописание"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Найти"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Выйти из MacDown"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "О приложении MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Экспортировать"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Редактировать"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Повторить"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Проверить наличие обновлений..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Зачеркнуть"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Автоматически исправлять орфографические ошибки"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Подчеркнуть"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Напечатать..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Окно"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Главное меню"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Заголовок 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Файл"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Плагины"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Настройки..."; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Сохранить как..."; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Заголовок 6"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Файл"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Отменить"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Орфография и грамматика"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Закрыть"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Помощь"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Ссылка"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Открыть..."; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Сместить влево"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Показать все"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Заголовок 3"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Заголовок 1"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Свернуть MacDown"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Свернуть"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Удалить"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Плагины"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Сохранить..."; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Выбрать все"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Экспортировать"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Окно"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Картинка"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Редактировать"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Новый"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Заголовок 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Помощь"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Скопировать"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Найти..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Найти и заменить..."; + diff --git a/MacDown/Localization/sk-SK.lproj/Localizable.strings b/MacDown/Localization/sk-SK.lproj/Localizable.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPDocument.strings b/MacDown/Localization/sk-SK.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/sk-SK.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/sk-SK.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/sk-SK.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/sk-SK.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/sk-SK.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/sk-SK.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk-SK.lproj/MainMenu.strings b/MacDown/Localization/sk-SK.lproj/MainMenu.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk.lproj/Credits.rtf b/MacDown/Localization/sk.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/sk.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/sk.lproj/InfoPlist.strings b/MacDown/Localization/sk.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/sk.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/sk.lproj/Localizable.strings b/MacDown/Localization/sk.lproj/Localizable.strings new file mode 100644 index 00000000..a7e0fb1b --- /dev/null +++ b/MacDown/Localization/sk.lproj/Localizable.strings @@ -0,0 +1,91 @@ +/* Prism theme title */ +"(Default)" = "(Prednastavené)"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ znak (bez medzier);%@ znakov (bez medzier)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ znak;%@ znakov"; + +/* Comment toolbar button */ +"Comment" = "Komentár"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "Kopírovať HTML"; + +/* Preference pane title. */ +"Editor" = "Editor"; + +/* Emphasize toolbar button */ +"Emphasize" = "Zdôrazniť"; + +/* Preference pane title. */ +"General" = "Všeobecné"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Nadpis 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Nadpis 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Nadpis 3"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Schovať panel \"Editor\""; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Schovať panel \"Náhľad\""; + +/* Highlight toolbar button */ +"Highlight" = "Zvýrazniť"; + +/* Image toolbar button */ +"Image" = "Obrázok"; + +/* Install shell utility button */ +"Install" = "Inštalovať"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "Rozloženie"; + +/* Link toolbar button */ +"Link" = "Odkaz"; + +/* Preference pane title. */ +"Rendering" = "Vykresľovanie"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Obnoviť panel \"Editor\""; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Obnoviť panel \"Náhľad\""; + +/* Strikethrough toolbar button */ +"Strikethrough" = "Prečiarknuť"; + +/* Strong toolbar button */ +"Strong" = "Tučné"; + +/* Preference pane title. */ +"Terminal" = "Terminál"; + +/* Underline toolbar button */ +"Underline" = "Podčiarknuť"; + +/* Uninstall shell utility button */ +"Uninstall" = "Odinštalovať"; + +/* default filename if no title can be determined */ +"Untitled" = "Bez názvu"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ slovo;%@ slov"; + diff --git a/MacDown/Localization/sk.lproj/MPDocument.strings b/MacDown/Localization/sk.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sk.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/sk.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..c3c178fb --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Značka zoznamu:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← skočí na prvý znak v riadku"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Znak mínus)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Správanie"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Zmeniť..."; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "Zabezpečiť nový riadok na konci súboru po uložení"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Obmedziť šírku editora na"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (Hviezdička)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "Odsadenia textu:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Základné písmo:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Odhaliť"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Načítať"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Riadkovanie:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "Rolovať za koniec"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Automatické dopĺňanie zodpovedajúcich znakov"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "Automatické zvyšovanie číslovania v usporiadaných zoznamoch"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Téma:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Vkladať medzery namiesto tabov"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "Automaticky vložiť odsadenie riadku pre aktuálny blok"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Znak plus)"; + diff --git a/MacDown/Localization/sk.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/sk.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..c39919f9 --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "Zahrnúť zvýraznenie syntaxe"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "Zahrnúť štýly"; + diff --git a/MacDown/Localization/sk.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/sk.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..e393129c --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synchronizovať posuvník ukážky pri rolovaní editora"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Editor umiestniť na pravú stranu"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Aktualizovať"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "Automaticky vytvárať súbory pre ciele odkazov"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Správanie"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Automaticky aktualizovať náhľad počas písania"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Zobraziť počet slov"; + diff --git a/MacDown/Localization/sk.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/sk.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..70bd4eab --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Odhaliť"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Načítať"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Podpora matematiky vyžaduje internetové pripojenie."; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Téma:"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "Syntakticky zvýraznený blok kódov"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Prednastavená cesta:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Použite znak dolára ($) ako oddeľovač v riadku"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Vlastné"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Žiadne"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Názov jazyka"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "Príslušenstvo:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Zobraziť čísla riadkov"; + diff --git a/MacDown/Localization/sk.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/sk.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..b249c1e2 --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Poznámka pod čiarou"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citát"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "Zvýrazniť"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Podčiarknuť"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Horný index"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Prečiarknuť"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Formátovanie bloku"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Formátovanie dokumentu"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabuľka"; + diff --git a/MacDown/Localization/sk.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/sk.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..05db673e --- /dev/null +++ b/MacDown/Localization/sk.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Umiestnenie:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "Podpora shell-u nie je nainštalovaná"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Inštalovať"; + diff --git a/MacDown/Localization/sk.lproj/MainMenu.strings b/MacDown/Localization/sk.lproj/MainMenu.strings new file mode 100644 index 00000000..0af41a21 --- /dev/null +++ b/MacDown/Localization/sk.lproj/MainMenu.strings @@ -0,0 +1,294 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Nadpis 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Násjť"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Na celú obrazovku"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformácie:"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Zvýrazniť"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Reč"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Násjť"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Ukončiť MacDown"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "O MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exportovať"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Skontrolovať aktualizácie..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Preškrtnuté"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Náhrady"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Automaticky opravovať pravopis"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Podčiarknuť"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Tlač..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Okno"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Hlavné menu"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Nadpis 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Súbor"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Zásuvné moduly"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Uložiť ako..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformácie"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Nadpis 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Malými písmenami"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Súbor"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Pravopis a gramatika"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Zatvoriť"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Konvertovať na"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Pomoc"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Náhrady"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Posunúť vpravo"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Odkaz"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Vložiť"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Zobraziť pravopis a gramatiku"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Vľavo 1:1 vpravo"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Skontrolovať dokument teraz"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Služby"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Komentár"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Konvertovať na"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Otvoriť..."; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Nezoradený zoznam"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Zoradený zoznam"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Formát"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Posunúť vľavo"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Vrátiť sa k uloženému"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Zobraziť všetko"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Nadpis 3"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formát"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Nadpis 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Služby"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Vľavo 3:1 vpravo"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Otvoriť nedávne"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Schovať MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Nájsť predchádzajúce"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimalizovať"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Prestať hovoriť"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Zmazať"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Zásuvné moduly"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Uložiť..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Násjť ďalšie"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Nastavenie strany..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Priblíženie"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Tučné"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Kontrolovať pravopis počas písania"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Inteligentné pomlčky"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Označiť všetko"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Skočiť na výber"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exportovať"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Schovať panel \"Náhľad\""; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Okno"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopírovať HTML"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Otvoriť nedávne"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Veľkými písmenami"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown pomocník"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Vystrihnúť"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Schovať ostatné"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Obrázok"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Veľkými písmenami"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Vyčistiť ponuku"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Vľavo 1:3 vpravo"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Upraviť"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Nový"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Schovať panel \"Editor\""; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Nadpis 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Pomoc"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopírovať"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Odsek"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Reč"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Nájsť..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Nájsť a nahradiť..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Začať hovoriť"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Zobraziť náhrady"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Nový odsek"; + diff --git a/MacDown/Localization/sv.lproj/Credits.rtf b/MacDown/Localization/sv.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/sv.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/sv.lproj/InfoPlist.strings b/MacDown/Localization/sv.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/sv.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/sv.lproj/Localizable.strings b/MacDown/Localization/sv.lproj/Localizable.strings new file mode 100644 index 00000000..4ab34e06 --- /dev/null +++ b/MacDown/Localization/sv.lproj/Localizable.strings @@ -0,0 +1,39 @@ +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ character (inga mellanslag);%@ tecken (inga mellanslag)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ tecken;%@ tecken"; + +/* Preference pane title. */ +"Editor" = "Redigering"; + +/* Preference pane title. */ +"General" = "Allmänt"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Dölj redigerings-vy"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Dölj förhandsvisnings-vy"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Preferences window title. */ +"Preferences" = "Inställningar"; + +/* Preference pane title. */ +"Rendering" = "Rendering"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "Återställ redigerings-vy"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "Återställ förhandsvisnings-vy"; + +/* default filename if no title can be determined */ +"Untitled" = "Namnlöst"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ ord;%@ ord"; + diff --git a/MacDown/Localization/sv.lproj/MPDocument.strings b/MacDown/Localization/sv.lproj/MPDocument.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sv.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/sv.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..61937fb2 --- /dev/null +++ b/MacDown/Localization/sv.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,30 @@ +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (minus)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Beteende"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Ändra…"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Begränsa redigerings-vyn's bredd till"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (asterisk)"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Visa"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Ladda om"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Rad-avstånd:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (plus)"; + diff --git a/MacDown/Localization/sv.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/sv.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sv.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/sv.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..f1cbb2bc --- /dev/null +++ b/MacDown/Localization/sv.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Synkronisera förhandsvisnings-scrollning med regierings-vyn's scrollning"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Redigerings-vy till höger"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Uppdatera"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "Öppna dokument vid start"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Uppdatera förhandsvisning automatiskt när du skriver"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Visa antal ord"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "Inkludera förhands-versioner"; + diff --git a/MacDown/Localization/sv.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/sv.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..0cb70ff0 --- /dev/null +++ b/MacDown/Localization/sv.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,39 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Visa fil"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Ladda om"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Matematik-stöd kräver Internet-uppkoppling"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "Matematik-synax liknande TeX"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "Förhandsvisning skalas baserat på redigeraren's font-storlek"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Standard-sökväg:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "Använd dollar-tecken ($) som inline delimiter"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "Checklist-syntax"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Ingen"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Språknamn"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Visa radnummer"; + diff --git a/MacDown/Localization/sv.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/sv.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..4cfd4bf3 --- /dev/null +++ b/MacDown/Localization/sv.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,30 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Fotnot"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Citat"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Understrykning"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "Superscript"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Genomstrykning"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "Block-formattering"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Dokument-formattering"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "Inline-formattering"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tabell"; + diff --git a/MacDown/Localization/sv.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/sv.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/sv.lproj/MainMenu.strings b/MacDown/Localization/sv.lproj/MainMenu.strings new file mode 100644 index 00000000..ac93a67f --- /dev/null +++ b/MacDown/Localization/sv.lproj/MainMenu.strings @@ -0,0 +1,249 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Rubrik 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Sök"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Helskärmsläge"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Stavning"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Tal"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Sök"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Avsluta MacDown"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "Om MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Exportera"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Redigera"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Gör om"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Kolla efter uppdateringar..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Genomstrykt"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Rätta stavning automatiskt"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Understrykt"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Skriv ut…"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Fönster"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Huvudmeny"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Rubrik 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Plugins"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Inställningar..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Använd markering för sökning"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Spara som"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Rubrik 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Små bokstäver"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Arkiv"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Ångra"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Stavning och grammatik"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Stäng"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Hjälp"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Länk"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Klistra in"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Visa stavning och grammatik"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Vänster 1:1 höger"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Tjänster"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Kommentar"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Konvertera till"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Öppna…"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Onumrerad lista"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Numrerad lista"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Rubrik 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Lägg alla överst"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Kontrollera grammatik tillsammans med stavning"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Formattera"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Rubrik 1"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Vänster 3:1 höger"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Öppna senaste"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Göm MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Sök föregående"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimera"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Ta bort"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Spara…"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Sök nästa"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zooma"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Kontrollera stavning medan jag skriver"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Exportera"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Fönster"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "Kopiera HTML"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Öppna senaste"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Börja med stor bokstav"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown hjälp"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Klipp ut"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Dölj andra"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "Rendera Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Bild"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Stora bokstäver"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Vänster 1:3 höger"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Redigera"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Ny"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Dölj redigerings-vy"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Rubrik 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Hjälp"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopiera"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Paragraf"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Innehåll"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Sök…"; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Sök och ersätt…"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Ny paragraf"; + diff --git a/MacDown/Localization/tr.lproj/Localizable.strings b/MacDown/Localization/tr.lproj/Localizable.strings new file mode 100644 index 00000000..29507be8 --- /dev/null +++ b/MacDown/Localization/tr.lproj/Localizable.strings @@ -0,0 +1,64 @@ +/* Prism theme title */ +"(Default)" = "(Varsayılan)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ karakter;%@ karakter"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "HTML Olarak Kopyala"; + +/* Preference pane title. */ +"Editor" = "Editör"; + +/* Emphasize toolbar button */ +"Emphasize" = "Vurgula"; + +/* Preference pane title. */ +"General" = "Genel"; + +/* Heading 1 toolbar button */ +"Heading 1" = "Başlık 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "Başlık 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "Başlık 3"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "Editör Alanını Gizle"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "Önizleme Alanını Gizle"; + +/* Install shell utility button */ +"Install" = "Yükle"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Link toolbar button */ +"Link" = "Bağlantı"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Preferences window title. */ +"Preferences" = "Tercihler"; + +/* Uninstall shell utility button */ +"Uninstall" = "Kaldır"; + +/* default filename if no title can be determined */ +"Untitled" = "Adsız"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ kelime;%@ kelime"; + diff --git a/MacDown/Localization/tr.lproj/MPDocument.strings b/MacDown/Localization/tr.lproj/MPDocument.strings new file mode 100644 index 00000000..9aa32e00 --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "Metin"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/tr.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/tr.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..caad3edd --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,48 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "Liste İşareti:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← satırdaki ilk boşluk harici karaktere atlar"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (Eksi işareti)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "Davranış"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "Değiştir..."; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "Editör genişliğini sınırla:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "Taban font:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "Göster"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "Yeniden Yükle"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "Satır boşluğu:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "En sona kaydır"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "Eşleşen karakterleri otomatik olarak tamamla"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "Tema:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Sekme yerine boşluk ekle"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (Artı işareti)"; + diff --git a/MacDown/Localization/tr.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/tr.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..e69de29b diff --git a/MacDown/Localization/tr.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/tr.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..3af9ced4 --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "Editör kaydırıldığında önizlemeyi de kaydır"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "Editörü sağa yerleştir"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "Güncelle"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "Davranış"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "Yazdıkça önizlemeyi otomatik olarak güncelle"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "Kelime sayısını göster"; + diff --git a/MacDown/Localization/tr.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/tr.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..bc5b5564 --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,36 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "Göster"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "Yeniden Yükle"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "Matematik desteği Internet bağlantısı gerektirir."; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "TeX-vari matematik sözdizimi"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "Tema:"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "Varsayılan yol:"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "Özel"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "Hiçbiri"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "Dil adı"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "Satır sayılarını göster"; + diff --git a/MacDown/Localization/tr.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/tr.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..86f78697 --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "Dipnot"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "Alıntı"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "Kelime içi vurgu"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "Altı çizili"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "Üstü çizili"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "Döküman biçimlendirmesi"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "Tablo"; + diff --git a/MacDown/Localization/tr.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/tr.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..8455c01c --- /dev/null +++ b/MacDown/Localization/tr.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "Konum:"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "Yükle"; + diff --git a/MacDown/Localization/tr.lproj/MainMenu.strings b/MacDown/Localization/tr.lproj/MainMenu.strings new file mode 100644 index 00000000..8688dcae --- /dev/null +++ b/MacDown/Localization/tr.lproj/MainMenu.strings @@ -0,0 +1,351 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "Başlık 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Bul"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "Tam Ekrana Geç"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Dönüşümler"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "Belirt"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "İmla"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Konuşma"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Bul"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "MacDown'dan Çık"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "Vurgula"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "MacDown Hakkında"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "Dışa Aktar"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Düzenle"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Yinele"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "Güncellemeleri Kontrol Et..."; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "Üstü Çizili"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Dönüştürücüler"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Akıllı Kopyala/Yapıştır"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "İmlayı Otomatik Düzelt"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "Altı çizili"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Yazdır..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Pencere"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Ana Menü"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "Başlık 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "Dosya"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "Eklentiler"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Tercihler..."; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Farklı Kaydet..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Dönüşümler"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "Başlık 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Ufak Harfe Çevir"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "Dosya"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Geri Al"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "İmla ve Dilbilgisi"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Kapat"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "Dönüştür"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "Görünüm"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Yardım"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Dönüştürücüler"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "Araç Çubuğunu Göster"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "Sağa Kaydır"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "Bağlantı"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Yapıştır"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "İmla ve Dilbilgisi Hatalarını Göster"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = " Metin Değiştir"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "Sol 1:1 Sağ"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Akıllı Tırnak İşareti"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Dökümanı Şimdi Kontrol Et"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Servisler"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "Yorum"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "Dönüştür"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Aç..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "Satıriçi Kod"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "Sırasız Liste"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "Sıralı Liste"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Düzen"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "Sola Kaydır"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "MacDown'a Katkı Sağlama Yolları"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Kaydedilene Geri Çevir"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Tümünü Göster"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "Başlık 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Tümünü Öne Getir"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Dilbilgisini Hecelemesiyle Beraber Kontrol Et"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "Düzen"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "Başlık 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Servisler"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "Sol 3:1 Sağ"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Son Kullanılanlardan Aç"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "MacDown'u Gizle"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Öncekini Bul"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Küçült"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Konuşmayı Durdur"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Sil"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "Eklentiler"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Kaydet..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Sonrakini Bul"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Sayfa Ayarı..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Yakınlaştır"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "Baskın"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Yazarken Yazımı Kontrol Et"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Akıllı Tire"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Tümünü Seç"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Seçime Atla"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "Dışa Aktar"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "Önizleme Alanını Gizle"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Pencere"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Veri Algılayıcılar"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "HTML Olarak Kopyala"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "Blok Alıntı"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Son Kullanılanlardan Aç"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Büyük Harfle Başlat"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown Yardımı"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Kes"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Diğerlerini Gizle"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "MarkDown'u İşle"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "Görsel"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Hepsini Büyük Harf Yap"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Menü'yü Temizle"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "Sol 1:3 Sağ"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Düzenle"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "Yeni"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "Editör Alanını Gizle"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "Başlık 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Yardım"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Kopyala"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "Paragraf"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Konuşma"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "Görüntüle"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Bul..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Bul ve Değiştir..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Konuşmaya Başla"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Değişimleri Göster"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "Yeni Paragraf"; + diff --git a/MacDown/Localization/zh-Hans.lproj/Credits.rtf b/MacDown/Localization/zh-Hans.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/zh-Hans.lproj/InfoPlist.strings b/MacDown/Localization/zh-Hans.lproj/InfoPlist.strings new file mode 100644 index 00000000..f3931acc --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/InfoPlist.strings @@ -0,0 +1,3 @@ +/* Copyright (human-readable) */ +"NSHumanReadableCopyright" = "版权所有 © 2014–2020 Tzu-ping Chung."; + diff --git a/MacDown/Localization/zh-Hans.lproj/Localizable.strings b/MacDown/Localization/zh-Hans.lproj/Localizable.strings new file mode 100644 index 00000000..3d3da98c --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/Localizable.strings @@ -0,0 +1,142 @@ +/* Prism theme title */ +"(Default)" = "(默认)"; + +/* Displayed when shell utility is not installed */ +"" = ""; + +/* Blockquote toolbar button */ +"Blockquote" = "引用"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ 个字符(不含空白);%@ 个字符(不含空白)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ 个字符;%@ 个字符"; + +/* Comment toolbar button */ +"Comment" = "注释"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "拷贝 HTML 代码"; + +/* Preference pane title. */ +"Editor" = "编辑器"; + +/* Emphasize toolbar button */ +"Emphasize" = "强调"; + +/* Preference pane title. */ +"General" = "一般"; + +/* Heading 1 toolbar button */ +"Heading 1" = "一级标题"; + +/* Heading 2 toolbar button */ +"Heading 2" = "二级标题"; + +/* Heading 3 toolbar button */ +"Heading 3" = "三级标题"; + +/* No comment provided by engineer. */ +"Headings" = "标题"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "隐藏编辑窗口"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "隐藏预览窗口"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "隐藏工具栏"; + +/* Highlight toolbar button */ +"Highlight" = "高亮"; + +/* Image toolbar button */ +"Image" = "图片"; + +/* Inline code toolbar button */ +"Inline Code" = "行内代码"; + +/* Install shell utility button */ +"Install" = "安装"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "布局"; + +/* Link toolbar button */ +"Link" = "链接"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "有序列表"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "有序/无须列表"; + +/* Preferences window title. */ +"Preferences" = "偏好设置"; + +/* Preference pane title. */ +"Rendering" = "渲染"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "恢复编辑窗格"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "恢复预览窗口"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Shell 工具已安装"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Shell 工具未安装"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "向左缩进"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "缩进"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "向右缩进"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "显示工具栏"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "删除线"; + +/* Strong toolbar button */ +"Strong" = "强调"; + +/* Preference pane title. */ +"Terminal" = "终端"; + +/* No comment provided by engineer. */ +"Text Styles" = "文本样式"; + +/* Underline toolbar button */ +"Underline" = "下划线"; + +/* Uninstall shell utility button */ +"Uninstall" = "卸载"; + +/* Unordered list toolbar button */ +"Unordered List" = "无序列表"; + +/* default filename if no title can be determined */ +"Untitled" = "未命名"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ 个词;%@ 个词"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPDocument.strings b/MacDown/Localization/zh-Hans.lproj/MPDocument.strings new file mode 100644 index 00000000..209144a7 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "文本"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "H1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "H5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "H4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "H6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "H2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "H3"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..1efbd7d6 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "列表标志:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← 跳至本行的第一个非空白字符"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (减号)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "行为"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "更改…"; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "在保存时确保文末有换行符"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "限制编辑窗口最大宽度为:"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (星号)"; + +/* Class = "NSTextFieldCell"; title = "Text insets:"; ObjectID = "Ee6-Cj-SWW"; */ +"Ee6-Cj-SWW.title" = "字符空间:"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "默认字体:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "文件夹"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "重新加载"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "行间距"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "滚动可超过文档底部"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "自动补全匹配字符"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "自动增加有序列表的序号"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "主题:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "使用空格而不是制表符"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "在当前代码块中自动插入行前缀"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (加号)"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..c5f01788 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "包括语法高亮"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "包括样式"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..2106eb0e --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "预览窗口同步滚动"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "编辑窗口置于右侧"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "更新"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "自动创建链接目标文件"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "保证启动时有打开的文档"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "行为"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "打字时自动更新预览"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "显示字词统计"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "包括预发行版本"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..f9625334 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,63 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "显示"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "重新载入"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "数学支持需要网络连接。"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "类 TeX 数学语法"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "主题:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "依编辑器字体大小缩放预览"; + +/* Class = "NSButtonCell"; title = "Mermaid"; ObjectID = "bda-Ft-ecb"; */ +"bda-Ft-ecb.title" = "Mermaid 流程图"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "语法高亮的代码块"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "默认路径:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "使用美元符号($)作为行内分隔符"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "检测 Jekyll 头部参数"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "自定义"; + +/* Class = "NSButtonCell"; title = "Task list syntax"; ObjectID = "kBf-iW-HlH"; */ +"kBf-iW-HlH.title" = "任务清单语法"; + +/* Class = "NSButtonCell"; title = "Graphviz"; ObjectID = "Lnj-HG-QHi"; */ +"Lnj-HG-QHi.title" = "Graphviz 图形"; + +/* Class = "NSButtonCell"; title = "Detect table of contents token"; ObjectID = "nvS-dZ-eHT"; */ +"nvS-dZ-eHT.title" = "检测目录标记"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "无"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "语言名称"; + +/* Class = "NSButtonCell"; title = "Render newline literally"; ObjectID = "Sty-qG-J6K"; */ +"Sty-qG-J6K.title" = "回车直接换行"; + +/* Class = "NSTextFieldCell"; title = "Accessory:"; ObjectID = "wNy-ka-IZm"; */ +"wNy-ka-IZm.title" = "附加:"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "显示行数"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..8dee1df3 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,42 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "脚注"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "引用"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = "高亮"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Intra-word emphasis"; ObjectID = "D7l-nP-P0y"; */ +"D7l-nP-P0y.title" = "单词内强调"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "围栏式代码块"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "下划线"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "上标"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "删除线"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "自动链接"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "代码块格式"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "文档格式"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "行内格式"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "表格"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/zh-Hans.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..4372420d --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,18 @@ +/* Class = "NSTextFieldCell"; title = ""; ObjectID = "0H2-qZ-OjP"; */ +"0H2-qZ-OjP.title" = ""; + +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "位置:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "未安装 shell 支持"; + +/* Class = "NSTextFieldCell"; title = "●"; ObjectID = "Me9-q2-eWj"; */ +"Me9-q2-eWj.title" = "●"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "启用 Shell 支持即可在 Shell 中使用 MacDown 工具打开 MacDown 和文档。"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "安装"; + diff --git a/MacDown/Localization/zh-Hans.lproj/MainMenu.strings b/MacDown/Localization/zh-Hans.lproj/MainMenu.strings new file mode 100644 index 00000000..a93ac311 --- /dev/null +++ b/MacDown/Localization/zh-Hans.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "二级标题"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "查找"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "进入全屏"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "大小写转换"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "高亮"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "拼写"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "语音"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "查找"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "退出 MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "强调"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "关于 MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "导出到"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "编辑"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "重做"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "检查更新…"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "删除线"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "同义词"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "智能复制/粘贴"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "自动纠正拼写"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "下划线"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "打印..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "窗口"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "主菜单"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "四级标题"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "文件"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "插件"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "偏好设置…"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "在所选范围中查找"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "另存为…"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "大小写转换"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "六级标题"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "小写"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML…"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "文件"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "撤消"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "拼写和语法"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "关闭"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "转换为"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "视图"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "帮助"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "同义词"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "显示工具栏"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "向右缩进"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "链接"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "粘贴"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "显示拼写和语法"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "文本替换"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "左 1:1 右"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "智能处理引号"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "立即检查文档"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "服务"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "注释"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "转换为"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "打开..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "行内代码"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "无序列表"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "有序列表"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "格式"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "向左缩进"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "向 MarkDown 贡献"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "恢复至上次保存"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "显示全部"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "三级标题"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "前置全部窗口"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "检查拼写和语法"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "格式"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "一级标题"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "服务"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = "左 3:1 右"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "打开最近使用"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "隐藏 MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "查找上一个"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "最小化"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "停止朗读"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "删除"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "插件"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "保存…"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "查找下一个"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "页面设置…"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "缩放"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "加粗"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "输入时检查拼写"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "智能处理破折号"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "全选"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "转到所选范围"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "导出"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "隐藏预览窗口"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "窗口"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "数据检测器"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "拷贝 HTML 代码"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "引用"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "打开最近使用"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "首字母大写"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown 帮助"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "剪切"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "隐藏其他"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "渲染 Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "图片"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "大写"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "清空菜单"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "左 1:3 右"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "编辑"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "新建"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "隐藏编辑窗口"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "五级标题"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "帮助"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "拷贝"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF…"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "段落"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "语音"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "视图"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "查找..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "查找和替换"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "开始朗读"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "显示同义词"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "新段落"; + diff --git a/MacDown/Localization/zh-Hant.lproj/Credits.rtf b/MacDown/Localization/zh-Hant.lproj/Credits.rtf new file mode 100644 index 00000000..9ace71f2 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/Credits.rtf @@ -0,0 +1,410 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fnil\fcharset128 HiraginoSans-W3;} +{\colortbl;\red255\green255\blue255;} +{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1} +{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +\paperw11900\paperh16840\vieww15960\viewh12940\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\f0\fs24 \cf0 \ +Open source Markdown editor for OS X. +\fs28 \ +\ + +\b\fs32 Contributors +\fs28 \ +{\field{\*\fldinst{HYPERLINK "https://uranusjr.com/"}}{\fldrslt +\b0\fs24 Tzu-ping Chung}} +\b0\fs24 \ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/garrow"}}{\fldrslt \cf0 Garrow Bedrossian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://james-brooks.co.uk/"}}{\fldrslt \cf0 James Brooks}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jcomo"}}{\fldrslt \cf0 Jonathan Como}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hszcg"}}{\fldrslt \cf0 Chenguang Zhang}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mdznr.com/"}}{\fldrslt \cf0 Matt Zanchelli}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://henrian.com/"}}{\fldrslt \cf0 Christopher Brown}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://dlackty.org/"}}{\fldrslt \cf0 Richard Lee}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://aaronraimist.com/"}}{\fldrslt \cf0 Aaron Raimist}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.zoonref.com/"}}{\fldrslt \cf0 Amornchai Kanokpullwad}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.alexkaessner.de/"}}{\fldrslt \cf0 Alexander K\'e4\'dfner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Mowsh"}}{\fldrslt \cf0 Joseph Stevens}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/xcodejam"}}{\fldrslt \cf0 wenbi}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/yangjian"}}{\fldrslt \cf0 Yang Jian}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://kevinsalter.me/"}}{\fldrslt \cf0 Kevin Salter}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/JanX2"}}{\fldrslt \cf0 Jan}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/brovador"}}{\fldrslt \cf0 Jes\'fas Bart\'fas}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/airdrummingfool"}}{\fldrslt \cf0 Tommy Goode}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/sorig"}}{\fldrslt \cf0 Esben S\'f8rig}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/bostaunieux"}}{\fldrslt \cf0 Damien Angelos}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.saurabhg.com/"}}{\fldrslt \cf0 Saurabh Garg}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://type.so/"}}{\fldrslt +\f1 \cf0 \'8f\'ac\'8e\'71\'8c\'87\'9d\'47}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 Cedar McKay}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Jmuccigr"}}{\fldrslt \cf0 John Muccigrosso}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://twitter.com/getaaron"}}{\fldrslt \cf0 Aaron Brager}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tbrannam"}}{\fldrslt \cf0 Todd Brannam}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ohthetrees"}}{\fldrslt \cf0 ohthetrees}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.raizlabs.com/"}}{\fldrslt \cf0 Blake Skinner}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://waldo.jaquith.org/"}}{\fldrslt \cf0 Waldo Jaquith}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://www.fabiancanas.com/"}}{\fldrslt \cf0 Fabian Ca\'f1as}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://yulli.org/"}}{\fldrslt \cf0 Justin Kim}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/ronhippler"}}{\fldrslt \cf0 Andreas Hippler}}\ +{\field{\*\fldinst{HYPERLINK "http://orta.io/"}}{\fldrslt Orta}}\ +{\field{\*\fldinst{HYPERLINK "https://cattail.me/"}}{\fldrslt Chiyu Zhong}}\ +{\field{\*\fldinst{HYPERLINK "https://github.com/timtylin"}}{\fldrslt Tim T.Y. Lin}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/franklinyu"}}{\fldrslt \cf0 Franklin Yu}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mcw0933"}}{\fldrslt \cf0 Matt C. Wilson}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://klurig.hk/"}}{\fldrslt \cf0 Niklas Berglund}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tinglou"}}{\fldrslt \cf0 Ting Lou}}\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://www.loopingz.com/"}}{\fldrslt \cf0 Remi Cattiau}}\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\fs28 \cf0 \ + +\b\fs32 License +\b0\fs28 \ + +\fs24 The MIT License (MIT)\ +\ +Copyright \'a9 2014 Tzu-ping Chung\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b\fs32 Acknowledgement +\b0\fs24 \ +Portions of this software may utilise the following materials, the use of which is hereby acknowledged:\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mierau/DMTemplates"}}{\fldrslt +\b\fs28 \cf0 DMTemplates}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 Dustin Mierau\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Cocoanetics/DTCoreText"}}{\fldrslt +\b\fs28 \cf0 DTCoreText}}\ +Copyright \'a9 2011, Oliver Drobnik All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls1\ilvl0\cf0 - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. \ +- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation\ +and/or other materials provided with the distribution.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/tomaz/GBCli"}}{\fldrslt +\b\fs28 \cf0 GBCli}}\ +Copyright \'a9 2012 by Tomaz Kragelj\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ +copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 \cf0 Hoedown}}\ +Copyright \'a9 2008, Natacha Port\'e9\ +Copyright \'a9 2011, Vicent Mart\'ed\ +Copyright \'a9 2013, Devin Torres and the Hoedown authors\ +\ +Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.\ +\ +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/hoedown/hoedown"}}{\fldrslt +\b\fs28 Hoextdown}} +\b\fs28 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b0\fs24 \cf0 Copyright \'a9 2014 kjdev\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://pyyaml.org/wiki/LibYAML"}}{\fldrslt +\b\fs28 \cf0 LibYAML}}\ +Copyright \'a9 2006 Kirill Simonov\ +\ +\pard\pardeftab720\partightenfactor0 +\cf0 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/Marxon13/M13OrderedDictionary"}}{\fldrslt +\b\fs28 \cf0 M13OrderedDictionary}}\ +Copyright \'a9 2013 Brandon McQuilkin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/junjie/JJPluralForm"}}{\fldrslt +\b\fs28 \cf0 JJPluralForm}} +\fs28 +\fs24 by Lin Junjie\ +This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at {\field{\*\fldinst{HYPERLINK "http://mozilla.org/MPL/2.0/"}}{\fldrslt http://mozilla.org/MPL/2.0/}}.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/shpakovski/MASPreferences"}}{\fldrslt +\b\fs28 \cf0 MASPreferences}} by Vadim Shpakovski\ +MASPreferences is licensed under the 2-clause BSD license.\ +\ +Copyright \'a9 2011-2014, Vadim Shpakovski All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ +\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/dhennessy/PAPreferences"}}{\fldrslt +\b\fs28 \cf0 PAPreferences}}\ +Copyright \'a9 2014, Denis Hennessy (Peer Assembly - {\field{\*\fldinst{HYPERLINK "http://peerassembly.com/"}}{\fldrslt http://peerassembly.com}})\ +All rights reserved.\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\ + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ + * Neither the name of Peer Assembly, Denis Hennessy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\ +\ +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PEER ASSEMBLY OR DENIS HENNESSY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://hasseg.org/peg-markdown-highlight/"}}{\fldrslt +\b\fs28 \cf0 PEG Markdown Highlight}}\ +Copyright 2011 Ali Rantakari -- <{\field{\*\fldinst{HYPERLINK "http://hasseg.org/"}}{\fldrslt http://hasseg.org}}>\ +\ +PEG-Markdown-Highlight is licensed under the same terms as peg-markdown (see below for more information).\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/jgm/peg-markdown"}}{\fldrslt +\b\fs28 \cf0 peg-markdown}}\ +markdown in c, implemented using PEG grammar\ +Copyright \'a9 2008-2011 John MacFarlane\ +ODF output code \'a9 2011 Fletcher T. Penney\ +\ +peg-markdown is released under both the GPL and MIT licenses. You may pick the license that best fits your needs.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 + +\b \cf0 The GPL +\b0 \ +\ +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\ +\ +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\ +\ + +\b The MIT License +\b0 \ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://prismjs.com/"}}{\fldrslt +\b\fs28 Prism}}\ +Copyright \'a9 2012-2013 Lea Verou\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org/"}}{\fldrslt +\b\fs28 Sparkle}}\ +\pard\pardeftab720\partightenfactor0 +\cf0 Copyright \'a9 2006 Andy Matuschak\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +\pard\pardeftab720\partightenfactor0 + +\b \cf0 EXTERNAL LICENSES +\b0 \ +\ +License for bspatch.c and bsdiff.c, from bsdiff 4.3 (:\ +\ +Copyright 2003-2005 Colin Percival\ +All rights reserved\ +\ +Redistribution and use in source and binary forms, with or without modification, are permitted providing that the following conditions are met:\ +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\ +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\ +\ +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\ +\ +\pard\pardeftab720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "https://github.com/mirek/YAML.framework"}}{\fldrslt +\b\fs28 \cf0 YAML.framework}}\ +Copyright \'a9 2010 Mirek Rusin\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +{\field{\*\fldinst{HYPERLINK "http://mouapp.com/"}}{\fldrslt +\b\fs28 \cf0 Mou}} by Chen Luo\ +The following editor theme and CSS files are extracted from Mou.app:\ +\pard\tx220\tx720\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\li720\fi-720\partightenfactor0 +\ls2\ilvl0\cf0 {\listtext \'95 }Mou Fresh Air\ +{\listtext \'95 }Mou Fresh Air+\ +{\listtext \'95 }Mou Night\ +{\listtext \'95 }Mou Night+\ +{\listtext \'95 }Mou Paper\ +{\listtext \'95 }Mou Paper+\ +{\listtext \'95 }Tomorrow\ +{\listtext \'95 }Tomorrow Blue\ +{\listtext \'95 }Tomorrow+\ +{\listtext \'95 }Writer\ +{\listtext \'95 }Writer+\ +{\listtext \'95 }Clearness\ +{\listtext \'95 }Clearness Dark\ +{\listtext \'95 }GitHub\ +{\listtext \'95 }GirHub2\ +\pard\tx566\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\partightenfactor0 +\cf0 Used under permission.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/CodeCatalyst/mou-theme-solarized"}}{\fldrslt +\b\fs28 Solarized Theme for Mou}} by John Yanarella\ +Copyright \'a9 2012 CodeCatalyst, LLC\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ + +\b Solarized +\b0 \ +\ +Copyright \'a9 2011 Ethan Schoonover\ +\ +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\ +\ +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\ +\ +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\ +\ +{\field{\*\fldinst{HYPERLINK "https://github.com/dcurtis/markdown-mark"}}{\fldrslt +\b\fs28 Markdown Mark}}\ +DEDICATED TO THE PUBLIC DOMAIN\ +\ +The Markdown Mark has been dedicated to the public domain. It is protected by the Creative Commons CC0 Universal Public Domain Dedication license. You can read the entire license below or at http://creativecommons.org/publicdomain/zero/1.0/deed.en.\ +\ +CC0 UNIVERSAL PUBLIC DOMAIN DEDICATION LICENSE\ +\ +Statement of Purpose\ +\ +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").\ +\ +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.\ +\ +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.\ +\ +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:\ +a. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;\ +b. moral rights retained by the original author(s) and/or performer(s);\ +c. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;\ +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;\ +d. rights protecting the extraction, dissemination, use and reuse of data in a Work;\ +e. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and\ +f. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.\ +\ +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.\ +\ +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.\ +\ +4. Limitations and Disclaimers.\ +\ +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.\ +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.\ +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.\ +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.} \ No newline at end of file diff --git a/MacDown/Localization/zh-Hant.lproj/InfoPlist.strings b/MacDown/Localization/zh-Hant.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDown/Localization/zh-Hant.lproj/Localizable.strings b/MacDown/Localization/zh-Hant.lproj/Localizable.strings new file mode 100644 index 00000000..0b6ec9c6 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/Localizable.strings @@ -0,0 +1,139 @@ +/* Prism theme title */ +"(Default)" = "(預設)"; + +/* Blockquote toolbar button */ +"Blockquote" = "引用"; + +/* (No Comment) */ +"CHARACTERS_NO_SPACES_PLURAL_STRING" = "%@ 字數 (不含空白);%@ 字數 (不含空白)"; + +/* (No Comment) */ +"CHARACTERS_PLURAL_STRING" = "%@ 個字元;%@ 個字元"; + +/* Comment toolbar button */ +"Comment" = "註解"; + +/* Copy HTML toolbar button */ +"Copy HTML" = "複製 HTML"; + +/* Preference pane title. */ +"Editor" = "編輯器"; + +/* Emphasize toolbar button */ +"Emphasize" = "斜體"; + +/* Preference pane title. */ +"General" = "一般"; + +/* Heading 1 toolbar button */ +"Heading 1" = "標題 1"; + +/* Heading 2 toolbar button */ +"Heading 2" = "標題 2"; + +/* Heading 3 toolbar button */ +"Heading 3" = "標題 3"; + +/* No comment provided by engineer. */ +"Headings" = "標題"; + +/* Toggle editor pane menu item */ +"Hide Editor Pane" = "隱藏編輯區"; + +/* Toggle preview pane menu item */ +"Hide Preview Pane" = "隱藏預覽區"; + +/* Toggle reveal toolbar */ +"Hide Toolbar" = "隱藏工具列"; + +/* Highlight toolbar button */ +"Highlight" = "高亮"; + +/* Image toolbar button */ +"Image" = "圖片"; + +/* Inline code toolbar button */ +"Inline Code" = "行內程式碼"; + +/* Install shell utility button */ +"Install" = "安裝"; + +/* Localizable.strings + MacDown + + Created by Tzu-ping Chung on 14/7. + Copyright (c) 2014 Tzu-ping Chung . All rights reserved. */ +"JJ_PLURAL_FORM_RULE" = "1"; + +/* Layout toolbar button */ +"Layout" = "排版"; + +/* Link toolbar button */ +"Link" = "連結"; + +/* Preference pane title. */ +"Markdown" = "Markdown"; + +/* Ordered list toolbar button */ +"Ordered List" = "有序列表"; + +/* No comment provided by engineer. */ +"Ordered/Unordered List" = "有序/無序清單"; + +/* Preferences window title. */ +"Preferences" = "偏好設定..."; + +/* Preference pane title. */ +"Rendering" = "渲染"; + +/* Toggle editor pane menu item */ +"Restore Editor Pane" = "顯示編輯區"; + +/* Toggle preview pane menu item */ +"Restore Preview Pane" = "顯示預覽區"; + +/* Label stating that shell utility has been installed */ +"Shell utility installed" = "Shell 工具已安裝"; + +/* Label stating that shell utility has not been installed */ +"Shell utility not installed" = "Shell 工具未安裝"; + +/* Shift text to the left toolbar button */ +"Shift Left" = "向左縮排"; + +/* No comment provided by engineer. */ +"Shift Left/Right" = "向左/向右縮排"; + +/* Shift text to the right toolbar button */ +"Shift Right" = "向右縮排"; + +/* Toggle reveal toolbar */ +"Show Toolbar" = "顯示工具列"; + +/* Strikethrough toolbar button */ +"Strikethrough" = "刪除線"; + +/* Strong toolbar button */ +"Strong" = "粗體"; + +/* Preference pane title. */ +"Terminal" = "終端機"; + +/* No comment provided by engineer. */ +"Text Styles" = "文字樣式"; + +/* Underline toolbar button */ +"Underline" = "底線"; + +/* Uninstall shell utility button */ +"Uninstall" = "解除安裝"; + +/* Unordered list toolbar button */ +"Unordered List" = "無序列表"; + +/* default filename if no title can be determined */ +"Untitled" = "未命名"; + +/* (No Comment) */ +"WORDS_PLURAL_STRING" = "%@ 個字;%@ 個字"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPDocument.strings b/MacDown/Localization/zh-Hant.lproj/MPDocument.strings new file mode 100644 index 00000000..92ee77a1 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPDocument.strings @@ -0,0 +1,21 @@ +/* Class = "NSButtonCell"; title = "Text"; ObjectID = "dPo-OZ-Hdz"; */ +"dPo-OZ-Hdz.title" = "文字"; + +/* Class = "NSButtonCell"; title = "H1"; ObjectID = "H5W-Wu-gPZ"; */ +"H5W-Wu-gPZ.title" = "標題 1"; + +/* Class = "NSButtonCell"; title = "H5"; ObjectID = "KTn-mr-UBa"; */ +"KTn-mr-UBa.title" = "標題 5"; + +/* Class = "NSButtonCell"; title = "H4"; ObjectID = "QiC-vC-KbR"; */ +"QiC-vC-KbR.title" = "標題 4"; + +/* Class = "NSButtonCell"; title = "H6"; ObjectID = "r5a-yJ-MY2"; */ +"r5a-yJ-MY2.title" = "標題 6"; + +/* Class = "NSButtonCell"; title = "H2"; ObjectID = "rdq-e7-ugg"; */ +"rdq-e7-ugg.title" = "標題 2"; + +/* Class = "NSButtonCell"; title = "H3"; ObjectID = "xRF-se-t13"; */ +"xRF-se-t13.title" = "標題 3"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPEditorPreferencesViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPEditorPreferencesViewController.strings new file mode 100644 index 00000000..2be7f1ab --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPEditorPreferencesViewController.strings @@ -0,0 +1,60 @@ +/* Class = "NSTextFieldCell"; title = "List marker:"; ObjectID = "0Bc-iD-VCh"; */ +"0Bc-iD-VCh.title" = "列表標記:"; + +/* Class = "NSButtonCell"; title = "⌘← jumps to first non-whitespace character in line"; ObjectID = "2Yf-FT-MDH"; */ +"2Yf-FT-MDH.title" = "⌘← 跳至行內第一個非空白字元"; + +/* Class = "NSMenuItem"; title = "- (Minus sign)"; ObjectID = "2yJ-j5-PLm"; */ +"2yJ-j5-PLm.title" = "- (減號)"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "6JP-Pc-JFd"; */ +"6JP-Pc-JFd.title" = "行為"; + +/* Class = "NSButtonCell"; title = "Change…"; ObjectID = "8bz-cc-gLF"; */ +"8bz-cc-gLF.title" = "更改⋯"; + +/* Class = "NSButtonCell"; title = "Ensure newline at end of file on save"; ObjectID = "9Wp-5V-GeQ"; */ +"9Wp-5V-GeQ.title" = "儲存時確認檔案末尾包含空行"; + +/* Class = "NSButtonCell"; title = "Limit editor width to"; ObjectID = "bhL-NA-9No"; */ +"bhL-NA-9No.title" = "限制編輯器寬度"; + +/* Class = "NSMenuItem"; title = "* (Asterisk)"; ObjectID = "bnJ-BQ-mHV"; */ +"bnJ-BQ-mHV.title" = "* (星號)"; + +/* Class = "NSTextFieldCell"; title = "Base font:"; ObjectID = "eXF-SL-hBq"; */ +"eXF-SL-hBq.title" = "基礎字型:"; + +/* Class = "NSTextFieldCell"; title = "×"; ObjectID = "g5w-Qw-Khw"; */ +"g5w-Qw-Khw.title" = "×"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[0] = "Reveal"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[0]" = "顯示"; + +/* Class = "NSSegmentedCell"; GHX-3h-1HI.ibShadowedLabels[1] = "Reload"; ObjectID = "GHX-3h-1HI"; */ +"GHX-3h-1HI.ibShadowedLabels[1]" = "重整"; + +/* Class = "NSTextFieldCell"; title = "Line spacing:"; ObjectID = "InD-Fc-CTS"; */ +"InD-Fc-CTS.title" = "行距:"; + +/* Class = "NSButtonCell"; title = "Scroll past end"; ObjectID = "nBR-LK-G9a"; */ +"nBR-LK-G9a.title" = "捲動超過檔案末端"; + +/* Class = "NSButtonCell"; title = "Auto-complete matching characters"; ObjectID = "o4K-iG-sGA"; */ +"o4K-iG-sGA.title" = "自動補完成對字元"; + +/* Class = "NSButtonCell"; title = "Auto-increment numbering in ordered lists"; ObjectID = "UPm-G1-Bc6"; */ +"UPm-G1-Bc6.title" = "自動遞增列表數字"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "vA9-IT-8Z7"; */ +"vA9-IT-8Z7.title" = "主題:"; + +/* Class = "NSButtonCell"; title = "Insert spaces instead of tabs"; ObjectID = "XSN-mi-gbk"; */ +"XSN-mi-gbk.title" = "Tab 鍵插入空白"; + +/* Class = "NSButtonCell"; title = "Automatically insert line prefix for the current block"; ObjectID = "zGb-kg-2CJ"; */ +"zGb-kg-2CJ.title" = "根據當下區塊自動插入行前綴"; + +/* Class = "NSMenuItem"; title = "+ (Plus sign)"; ObjectID = "zX4-JY-wTT"; */ +"zX4-JY-wTT.title" = "+ (加號)"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPExportPanelAccessoryViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPExportPanelAccessoryViewController.strings new file mode 100644 index 00000000..4da6fb96 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPExportPanelAccessoryViewController.strings @@ -0,0 +1,6 @@ +/* Class = "NSButtonCell"; title = "Include syntax highlighting"; ObjectID = "1f7-JB-VR1"; */ +"1f7-JB-VR1.title" = "包含語法高亮"; + +/* Class = "NSButtonCell"; title = "Include styles"; ObjectID = "fod-Ff-UTI"; */ +"fod-Ff-UTI.title" = "包含樣式"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPGeneralPreferencesViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPGeneralPreferencesViewController.strings new file mode 100644 index 00000000..1755ca3f --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPGeneralPreferencesViewController.strings @@ -0,0 +1,27 @@ +/* Class = "NSButtonCell"; title = "Sync preview scrollbar when editor scrolls"; ObjectID = "2Uj-Sx-FjV"; */ +"2Uj-Sx-FjV.title" = "編輯器捲動時同步預覽捲軸"; + +/* Class = "NSButtonCell"; title = "Put editor on the right"; ObjectID = "bUn-PQ-5Ez"; */ +"bUn-PQ-5Ez.title" = "將編輯器置於右側"; + +/* Class = "NSBox"; title = "Update"; ObjectID = "eLn-fW-Agu"; */ +"eLn-fW-Agu.title" = "更新"; + +/* Class = "NSButtonCell"; title = "Automatically create files for link targets"; ObjectID = "hpF-zP-3cM"; */ +"hpF-zP-3cM.title" = "自動新增檔案於連結目標"; + +/* Class = "NSButtonCell"; title = "Ensure open document on launch"; ObjectID = "l9N-wk-WRY"; */ +"l9N-wk-WRY.title" = "啟動時永遠開啟文件"; + +/* Class = "NSBox"; title = "Behavior"; ObjectID = "Nma-PL-ZvX"; */ +"Nma-PL-ZvX.title" = "行為"; + +/* Class = "NSButtonCell"; title = "Update preview automatically as you type"; ObjectID = "npz-xj-plX"; */ +"npz-xj-plX.title" = "輸入時自動更新預覽"; + +/* Class = "NSButtonCell"; title = "Show word count"; ObjectID = "oeW-bF-ybW"; */ +"oeW-bF-ybW.title" = "顯示字數統計"; + +/* Class = "NSButtonCell"; title = "Include pre-releases"; ObjectID = "vbz-fv-8BX"; */ +"vbz-fv-8BX.title" = "包含預發行版"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPHtmlPreferencesViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPHtmlPreferencesViewController.strings new file mode 100644 index 00000000..9edfeefa --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPHtmlPreferencesViewController.strings @@ -0,0 +1,45 @@ +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[0] = "Reveal"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[0]" = "顯示"; + +/* Class = "NSSegmentedCell"; 0rH-I9-Dxr.ibShadowedLabels[1] = "Reload"; ObjectID = "0rH-I9-Dxr"; */ +"0rH-I9-Dxr.ibShadowedLabels[1]" = "重讀"; + +/* Class = "NSTextFieldCell"; title = "Math support requires Internet connection."; ObjectID = "5Ch-dG-juL"; */ +"5Ch-dG-juL.title" = "數學式支援需要網路連線。"; + +/* Class = "NSButtonCell"; title = "TeX-like math syntax"; ObjectID = "6vg-3f-KWk"; */ +"6vg-3f-KWk.title" = "類 TeX 數學語法"; + +/* Class = "NSTextFieldCell"; title = "CSS:"; ObjectID = "9I3-I7-HLu"; */ +"9I3-I7-HLu.title" = "CSS:"; + +/* Class = "NSTextFieldCell"; title = "Theme:"; ObjectID = "a6o-qD-AIp"; */ +"a6o-qD-AIp.title" = "主題:"; + +/* Class = "NSButtonCell"; title = "Scale preview based on editor font size"; ObjectID = "aWw-Wb-pBl"; */ +"aWw-Wb-pBl.title" = "依視窗大小自動縮放內容"; + +/* Class = "NSButtonCell"; title = "Syntax highlighted code block"; ObjectID = "BuQ-02-oQB"; */ +"BuQ-02-oQB.title" = "程式碼區塊語法高亮"; + +/* Class = "NSTextFieldCell"; title = "Default path:"; ObjectID = "e1A-Mm-svq"; */ +"e1A-Mm-svq.title" = "預設路徑:"; + +/* Class = "NSButtonCell"; title = "Use dollar sign ($) as inline delimiter"; ObjectID = "GF9-Dm-IoB"; */ +"GF9-Dm-IoB.title" = "使用美元符號($)作為行内分隔號"; + +/* Class = "NSButtonCell"; title = "Detect Jekyll front-matter"; ObjectID = "iXi-Pv-mFl"; */ +"iXi-Pv-mFl.title" = "偵測 Jekyll 開頭參數"; + +/* Class = "NSMenuItem"; title = "Custom"; ObjectID = "Jmq-wq-Dux"; */ +"Jmq-wq-Dux.title" = "自訂"; + +/* Class = "NSMenuItem"; title = "None"; ObjectID = "pWW-vM-8JK"; */ +"pWW-vM-8JK.title" = "無"; + +/* Class = "NSMenuItem"; title = "Language name"; ObjectID = "qFd-cs-OtZ"; */ +"qFd-cs-OtZ.title" = "語言名稱"; + +/* Class = "NSButtonCell"; title = "Show line numbers"; ObjectID = "WZa-V6-vvf"; */ +"WZa-V6-vvf.title" = "顯示行數"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPMarkdownPreferencesViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPMarkdownPreferencesViewController.strings new file mode 100644 index 00000000..18df7682 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPMarkdownPreferencesViewController.strings @@ -0,0 +1,39 @@ +/* Class = "NSButtonCell"; title = "Footnote"; ObjectID = "0yU-vT-72e"; */ +"0yU-vT-72e.title" = "註腳"; + +/* Class = "NSButtonCell"; title = "Quote"; ObjectID = "2lB-hq-5eX"; */ +"2lB-hq-5eX.title" = "引言"; + +/* Class = "NSButtonCell"; title = "Highlight"; ObjectID = "8kI-gm-5Lo"; */ +"8kI-gm-5Lo.title" = " 高亮"; + +/* Class = "NSButtonCell"; title = "Smartypants"; ObjectID = "aSK-nR-xMr"; */ +"aSK-nR-xMr.title" = "Smartypants"; + +/* Class = "NSButtonCell"; title = "Fenced code block"; ObjectID = "ELg-sx-vIf"; */ +"ELg-sx-vIf.title" = "圍欄式程式碼區"; + +/* Class = "NSButtonCell"; title = "Underline"; ObjectID = "Gdr-Ro-ZnW"; */ +"Gdr-Ro-ZnW.title" = "底線"; + +/* Class = "NSButtonCell"; title = "Superscript"; ObjectID = "k2n-VN-cKT"; */ +"k2n-VN-cKT.title" = "上標"; + +/* Class = "NSButtonCell"; title = "Strikethrough"; ObjectID = "RjP-zE-c6b"; */ +"RjP-zE-c6b.title" = "刪除線"; + +/* Class = "NSButtonCell"; title = "Autolink"; ObjectID = "Roe-rh-8f9"; */ +"Roe-rh-8f9.title" = "自動連結"; + +/* Class = "NSBox"; title = "Block formatting"; ObjectID = "TXy-fD-S4Y"; */ +"TXy-fD-S4Y.title" = "程式碼區塊格式"; + +/* Class = "NSBox"; title = "Document formatting"; ObjectID = "x36-52-U0p"; */ +"x36-52-U0p.title" = "文件格式"; + +/* Class = "NSBox"; title = "Inline formatting"; ObjectID = "Ycc-Px-jbu"; */ +"Ycc-Px-jbu.title" = "行內格式"; + +/* Class = "NSButtonCell"; title = "Table"; ObjectID = "z8g-3M-hbc"; */ +"z8g-3M-hbc.title" = "表格"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MPTerminalPreferencesViewController.strings b/MacDown/Localization/zh-Hant.lproj/MPTerminalPreferencesViewController.strings new file mode 100644 index 00000000..91717151 --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MPTerminalPreferencesViewController.strings @@ -0,0 +1,12 @@ +/* Class = "NSTextFieldCell"; title = "Location:"; ObjectID = "EJe-0p-X4m"; */ +"EJe-0p-X4m.title" = "位置:"; + +/* Class = "NSTextFieldCell"; title = "Shell support not installed"; ObjectID = "g7m-Fr-pUo"; */ +"g7m-Fr-pUo.title" = "未安裝 Shell 插件"; + +/* Class = "NSTextFieldCell"; title = "By activating shell support you can use the macdown utility to open MacDown and documents from a shell."; ObjectID = "W5n-x2-ygz"; */ +"W5n-x2-ygz.title" = "啟用 Shell 工具後即可在 Shell 中使用 MacDown 工具打開 MacDown 和文件。"; + +/* Class = "NSButtonCell"; title = "Install"; ObjectID = "XiC-FP-TWZ"; */ +"XiC-FP-TWZ.title" = "安裝"; + diff --git a/MacDown/Localization/zh-Hant.lproj/MainMenu.strings b/MacDown/Localization/zh-Hant.lproj/MainMenu.strings new file mode 100644 index 00000000..7a5e992c --- /dev/null +++ b/MacDown/Localization/zh-Hant.lproj/MainMenu.strings @@ -0,0 +1,354 @@ +/* Class = "NSMenuItem"; title = "Header 2"; ObjectID = "0WP-T5-QxP"; */ +"0WP-T5-QxP.title" = "標題 2"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "搜尋"; + +/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "1gz-YB-DZE"; */ +"1gz-YB-DZE.title" = "進入全螢幕模式"; + +/* Class = "NSMenuItem"; title = "MacDown"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "大小寫轉換"; + +/* Class = "NSMenuItem"; title = "Highlight"; ObjectID = "2Os-ij-Aup"; */ +"2Os-ij-Aup.title" = "高亮"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "拼字"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "語音"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "搜尋"; + +/* Class = "NSMenuItem"; title = "Quit MacDown"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "離開 MacDown"; + +/* Class = "NSMenuItem"; title = "Emphasize"; ObjectID = "4UH-k2-fgy"; */ +"4UH-k2-fgy.title" = "斜體"; + +/* Class = "NSMenuItem"; title = "About MacDown"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "關於 MacDown"; + +/* Class = "NSMenuItem"; title = "Export"; ObjectID = "5mp-ev-1el"; */ +"5mp-ev-1el.title" = "輸出"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "編輯"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "還原"; + +/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "8xL-1V-VPX"; */ +"8xL-1V-VPX.title" = "檢查更新"; + +/* Class = "NSMenuItem"; title = "Strikethrough"; ObjectID = "9CN-Qi-Fln"; */ +"9CN-Qi-Fln.title" = "刪除線"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "同義詞"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "智慧複製/貼上"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "自動校正拼寫"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "98U-cK-P7J"; */ +"98U-cK-P7J.title" = "底線"; + +/* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "列印..."; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "視窗"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "主目錄"; + +/* Class = "NSMenuItem"; title = "Header 4"; ObjectID = "B98-b8-che"; */ +"B98-b8-che.title" = "標題 4"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "檔案"; + +/* Class = "NSMenuItem"; title = "Plug-ins"; ObjectID = "bMu-UN-Yfx"; */ +"bMu-UN-Yfx.title" = "外掛"; + +/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "偏好設定..."; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "搜尋選取範圍"; + +/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "另存新檔..."; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "大小寫轉換"; + +/* Class = "NSMenuItem"; title = "Header 6"; ObjectID = "D4C-PE-qJi"; */ +"D4C-PE-qJi.title" = "標題 6"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "小寫"; + +/* Class = "NSMenuItem"; title = "HTML…"; ObjectID = "dGm-Yl-i3Z"; */ +"dGm-Yl-i3Z.title" = "HTML..."; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "檔案"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "還原"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "拼字及文法檢查"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "關閉"; + +/* Class = "NSMenuItem"; title = "Convert To"; ObjectID = "e8h-vX-NQb"; */ +"e8h-vX-NQb.title" = "轉換為"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "EQZ-Zp-VNE"; */ +"EQZ-Zp-VNE.title" = "檢視"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "說明"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "同義詞"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "fKI-yk-0lv"; */ +"fKI-yk-0lv.title" = "顯示工具列"; + +/* Class = "NSMenuItem"; title = "Shift Right"; ObjectID = "g9Y-GM-gdh"; */ +"g9Y-GM-gdh.title" = "向右縮排"; + +/* Class = "NSMenuItem"; title = "Link"; ObjectID = "GIg-Wo-P8m"; */ +"GIg-Wo-P8m.title" = "超連結"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "貼上"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "顯示拼字和文法"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "替換文字"; + +/* Class = "NSMenuItem"; title = "Left 1:1 Right"; ObjectID = "hOV-YQ-vzy"; */ +"hOV-YQ-vzy.title" = "左 1:1 右"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "智慧引用"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "立即檢查"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "服務"; + +/* Class = "NSMenuItem"; title = "Comment"; ObjectID = "i8c-gf-w29"; */ +"i8c-gf-w29.title" = "註解"; + +/* Class = "NSMenu"; title = "Convert To"; ObjectID = "I8Y-e8-XDx"; */ +"I8Y-e8-XDx.title" = "轉換為"; + +/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "開啟..."; + +/* Class = "NSMenuItem"; title = "Inline Code"; ObjectID = "iRQ-Q6-N4K"; */ +"iRQ-Q6-N4K.title" = "行內程式碼"; + +/* Class = "NSMenuItem"; title = "Unordered List"; ObjectID = "jn0-Kb-yH6"; */ +"jn0-Kb-yH6.title" = "無序清單"; + +/* Class = "NSMenuItem"; title = "Ordered List"; ObjectID = "jn0-Kb-yH7"; */ +"jn0-Kb-yH7.title" = "有序清單"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "格式"; + +/* Class = "NSMenuItem"; title = "Shift Left"; ObjectID = "Jzs-tR-jkL"; */ +"Jzs-tR-jkL.title" = "向左縮排"; + +/* Class = "NSMenuItem"; title = "Contributing to MacDown"; ObjectID = "K3J-v5-s91"; */ +"K3J-v5-s91.title" = "一起打造 MacDown"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "還原至上次儲存項目"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "顯示全部"; + +/* Class = "NSMenuItem"; title = "Header 3"; ObjectID = "kSO-QG-dHa"; */ +"kSO-QG-dHa.title" = "標題 3"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "全部移至最上層"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "檢查拼字和文法"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "N43-55-MPb"; */ +"N43-55-MPb.title" = "格式"; + +/* Class = "NSMenuItem"; title = "Header 1"; ObjectID = "NLm-rz-EyT"; */ +"NLm-rz-EyT.title" = "標題 1"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "服務"; + +/* Class = "NSMenuItem"; title = "Left 3:1 Right"; ObjectID = "NZX-Ev-sWt"; */ +"NZX-Ev-sWt.title" = " 左 3:1 右"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "開啟最近的檔案"; + +/* Class = "NSMenuItem"; title = "Hide MacDown"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "隱藏 MacDown"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "尋找上一個"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "最小化"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "停止語音"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "刪除"; + +/* Class = "NSMenu"; title = "Plug-ins"; ObjectID = "Ppl-BS-KtG"; */ +"Ppl-BS-KtG.title" = "外掛"; + +/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "另存新檔..."; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "尋找下一個"; + +/* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "頁面設定..."; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "放大"; + +/* Class = "NSMenuItem"; title = "Strong"; ObjectID = "Rb9-MG-IjX"; */ +"Rb9-MG-IjX.title" = "粗替"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "在輸入時同步檢查拼字"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "智慧破折號"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "選取全部"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "跳至所選範圍"; + +/* Class = "NSMenu"; title = "Export"; ObjectID = "SJM-Pp-ywb"; */ +"SJM-Pp-ywb.title" = "輸出"; + +/* Class = "NSMenuItem"; title = "Hide Preview Pane"; ObjectID = "T74-vt-YUA"; */ +"T74-vt-YUA.title" = "隱藏預覽區"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "視窗"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "資料檢查器"; + +/* Class = "NSMenuItem"; title = "Copy HTML"; ObjectID = "ts7-v5-Htm"; */ +"ts7-v5-Htm.title" = "複製 HTML"; + +/* Class = "NSMenuItem"; title = "Blockquote"; ObjectID = "twd-Mb-qNx"; */ +"twd-Mb-qNx.title" = "引用"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "開啟最近的檔案"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "大寫"; + +/* Class = "NSMenuItem"; title = "MacDown Help"; ObjectID = "ugx-EN-xKu"; */ +"ugx-EN-xKu.title" = "MacDown 說明"; + +/* Class = "NSMenu"; title = "MacDown"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "MacDown"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "剪下"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "隱藏其他"; + +/* Class = "NSMenuItem"; title = "Render Markdown"; ObjectID = "Vh1-jg-bbV"; */ +"Vh1-jg-bbV.title" = "渲染 Markdown"; + +/* Class = "NSMenuItem"; title = "Image"; ObjectID = "VkR-aw-5AU"; */ +"VkR-aw-5AU.title" = "圖片"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "大寫"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "清除選單"; + +/* Class = "NSMenuItem"; title = "Left 1:3 Right"; ObjectID = "VW7-VH-9yl"; */ +"VW7-VH-9yl.title" = "左 1:3 右"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "編輯"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "新增文件"; + +/* Class = "NSMenuItem"; title = "Hide Editor Pane"; ObjectID = "wHk-AQ-iOQ"; */ +"wHk-AQ-iOQ.title" = "隱藏編輯區"; + +/* Class = "NSMenuItem"; title = "Header 5"; ObjectID = "wlq-BA-PKH"; */ +"wlq-BA-PKH.title" = "標題 5"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "說明"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "複製"; + +/* Class = "NSMenuItem"; title = "PDF…"; ObjectID = "XFN-MJ-RrW"; */ +"XFN-MJ-RrW.title" = "PDF..."; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "xN5-GU-ASF"; */ +"xN5-GU-ASF.title" = "段落"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "語音"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "xSb-2f-W1r"; */ +"xSb-2f-W1r.title" = "檢視"; + +/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "搜尋..."; + +/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "搜尋並取代..."; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "啟動語音"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "顯示同義字"; + +/* Class = "NSMenuItem"; title = "New Paragraph"; ObjectID = "zHE-JL-8eu"; */ +"zHE-JL-8eu.title" = "新增段落"; + diff --git a/MacDown/MacDown-Info.plist b/MacDown/MacDown-Info.plist index 4204faad..90ff8b8f 100644 --- a/MacDown/MacDown-Info.plist +++ b/MacDown/MacDown-Info.plist @@ -4,12 +4,25 @@ CFBundleDevelopmentRegion en + CFBundleURLTypes + + + CFBundleURLName + Macdown custom control + CFBundleURLSchemes + + x-macdown + + + + CFBundleDocumentTypes CFBundleTypeExtensions md + markdown CFBundleTypeIconFile MarkdownDocument @@ -43,7 +56,7 @@ Editor LSItemContentTypes - public.text + public.plain-text LSTypeIsPackage 0 @@ -67,10 +80,8 @@ CFBundleExecutable ${EXECUTABLE_NAME} - CFBundleIconFile - CFBundleIdentifier - com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower} + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -87,16 +98,42 @@ public.app-category.productivity LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + NSExceptionDomains + + cdnjs.cloudflare.com + + NSExceptionRequiresForwardSecrecy + + NSIncludesSubdomains + + + uranusjr.com + + NSIncludesSubdomains + + NSThirdPartyExceptionAllowsInsecureHTTPLoads + + + + + NSAppleScriptEnabled + NSHumanReadableCopyright - Copyright © 2014 Tzu-ping Chung. + Copyright © 2014–2020 Tzu-ping Chung. NSMainNibFile MainMenu NSPrincipalClass NSApplication + OSAScriptingDefinition + MacDown.sdef SUBetaFeedURL - http://macdown.uranusjr.com/sparkle/macdown/testing/appcast.xml + https://macdown.uranusjr.com/sparkle/macdown/testing/appcast.xml SUFeedURL - http://macdown.uranusjr.com/sparkle/macdown/appcast.xml + https://macdown.uranusjr.com/sparkle/macdown/stable/appcast.xml SUPublicDSAKeyFile dsa_pub.pem UTExportedTypeDeclarations diff --git a/MacDown/Resources/Data/treats.map b/MacDown/Resources/Data/treats.map new file mode 100644 index 00000000..0c92f177 Binary files /dev/null and b/MacDown/Resources/Data/treats.map differ diff --git a/MacDown/Resources/Extensions/mermaid.forest.css b/MacDown/Resources/Extensions/mermaid.forest.css new file mode 100755 index 00000000..71f8c325 --- /dev/null +++ b/MacDown/Resources/Extensions/mermaid.forest.css @@ -0,0 +1,350 @@ +/* Flowchart variables */ +/* Sequence Diagram variables */ +/* Gantt chart variables */ +.mermaid .label { + font-family: 'trebuchet ms', verdana, arial; + color: #333; +} +.node rect, +.node circle, +.node ellipse, +.node polygon { + fill: #cde498; + stroke: #13540c; + stroke-width: 1px; +} +.edgePath .path { + stroke: green; + stroke-width: 1.5px; +} +.cluster rect { + fill: #cdffb2 !important; + rx: 4 !important; + stroke: #6eaa49 !important; + stroke-width: 1px !important; +} +.cluster text { + fill: #333; +} +.actor { + stroke: #13540c; + fill: #cde498; +} +text.actor { + fill: black; + stroke: none; +} +.actor-line { + stroke: grey; +} +.messageLine0 { + stroke-width: 1.5; + stroke-dasharray: "2 2"; + marker-end: "url(#arrowhead)"; + stroke: #333; +} +.messageLine1 { + stroke-width: 1.5; + stroke-dasharray: "2 2"; + stroke: #333; +} +#arrowhead { + fill: #333; +} +#crosshead path { + fill: #333 !important; + stroke: #333 !important; +} +.messageText { + fill: #333; + stroke: none; +} +.labelBox { + stroke: #326932; + fill: #cde498; +} +.labelText { + fill: black; + stroke: none; +} +.loopText { + fill: black; + stroke: none; +} +.loopLine { + stroke-width: 2; + stroke-dasharray: "2 2"; + marker-end: "url(#arrowhead)"; + stroke: #326932; +} +.note { + stroke: #6eaa49; + fill: #fff5ad; +} +.noteText { + fill: black; + stroke: none; + font-family: 'trebuchet ms', verdana, arial; + font-size: 14px; +} +/** Section styling */ +.section { + stroke: none; + opacity: 0.2; +} +.section0 { + fill: #6eaa49; +} +.section2 { + fill: #6eaa49; +} +.section1, +.section3 { + fill: white; + opacity: 0.2; +} +.sectionTitle0 { + fill: #333; +} +.sectionTitle1 { + fill: #333; +} +.sectionTitle2 { + fill: #333; +} +.sectionTitle3 { + fill: #333; +} +.sectionTitle { + text-anchor: start; + font-size: 11px; + text-height: 14px; +} +/* Grid and axis */ +.grid .tick { + stroke: lightgrey; + opacity: 0.3; + shape-rendering: crispEdges; +} +.grid path { + stroke-width: 0; +} +/* Today line */ +.today { + fill: none; + stroke: red; + stroke-width: 2px; +} +/* Task styling */ +/* Default task */ +.task { + stroke-width: 2; +} +.taskText { + text-anchor: middle; + font-size: 11px; +} +.taskTextOutsideRight { + fill: black; + text-anchor: start; + font-size: 11px; +} +.taskTextOutsideLeft { + fill: black; + text-anchor: end; + font-size: 11px; +} +/* Specific task settings for the sections*/ +.taskText0, +.taskText1, +.taskText2, +.taskText3 { + fill: white; +} +.task0, +.task1, +.task2, +.task3 { + fill: #487e3a; + stroke: #13540c; +} +.taskTextOutside0, +.taskTextOutside2 { + fill: black; +} +.taskTextOutside1, +.taskTextOutside3 { + fill: black; +} +/* Active task */ +.active0, +.active1, +.active2, +.active3 { + fill: #cde498; + stroke: #13540c; +} +.activeText0, +.activeText1, +.activeText2, +.activeText3 { + fill: black !important; +} +/* Completed task */ +.done0, +.done1, +.done2, +.done3 { + stroke: grey; + fill: lightgrey; + stroke-width: 2; +} +.doneText0, +.doneText1, +.doneText2, +.doneText3 { + fill: black !important; +} +/* Tasks on the critical line */ +.crit0, +.crit1, +.crit2, +.crit3 { + stroke: #ff8888; + fill: red; + stroke-width: 2; +} +.activeCrit0, +.activeCrit1, +.activeCrit2, +.activeCrit3 { + stroke: #ff8888; + fill: #cde498; + stroke-width: 2; +} +.doneCrit0, +.doneCrit1, +.doneCrit2, +.doneCrit3 { + stroke: #ff8888; + fill: lightgrey; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; +} +.doneCritText0, +.doneCritText1, +.doneCritText2, +.doneCritText3 { + fill: black !important; +} +.activeCritText0, +.activeCritText1, +.activeCritText2, +.activeCritText3 { + fill: black !important; +} +.titleText { + text-anchor: middle; + font-size: 18px; + fill: black; +} +/* + + +*/ +g.classGroup text { + fill: #13540c; + stroke: none; + font-family: 'trebuchet ms', verdana, arial; + font-size: 14px; +} +g.classGroup rect { + fill: #cde498; + stroke: #13540c; +} +g.classGroup line { + stroke: #13540c; + stroke-width: 1; +} +svg .classLabel .box { + stroke: none; + stroke-width: 0; + fill: #cde498; + opacity: 0.5; +} +svg .classLabel .label { + fill: #13540c; +} +.relation { + stroke: #13540c; + stroke-width: 1; + fill: none; +} +.composition { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +#compositionStart { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +#compositionEnd { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +.aggregation { + fill: #cde498; + stroke: #13540c; + stroke-width: 1; +} +#aggregationStart { + fill: #cde498; + stroke: #13540c; + stroke-width: 1; +} +#aggregationEnd { + fill: #cde498; + stroke: #13540c; + stroke-width: 1; +} +#dependencyStart { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +#dependencyEnd { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +#extensionStart { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +#extensionEnd { + fill: #13540c; + stroke: #13540c; + stroke-width: 1; +} +text { + font-family: 'trebuchet ms', verdana, arial; + font-size: 14px; +} +div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial; + font-size: 12px; + background: #cdffb2; + border: 1px solid #6eaa49; + border-radius: 2px; + pointer-events: none; + z-index: 100; +} diff --git a/MacDown/Resources/Extensions/mermaid.init.js b/MacDown/Resources/Extensions/mermaid.init.js new file mode 100644 index 00000000..70df7dac --- /dev/null +++ b/MacDown/Resources/Extensions/mermaid.init.js @@ -0,0 +1,36 @@ +// init mermaid + +(function () { + + mermaid.initialize({ + startOnLoad:false, + flowchart:{ + htmlLabels: false, + useMaxWidth: true + } + }); + + var init = function() { + var domAll = document.querySelectorAll(".language-mermaid"); + for (var i = 0; i < domAll.length; i++) { + var dom = domAll[i]; + var graphSource = dom.innerText || dom.textContent; + + dom = dom.parentElement; + if (dom.tagName === "PRE") { + dom = dom.parentElement; + } + + var insertSvg = function(svgCode, bindFunctions){ + this.innerHTML = svgCode; + }; + var graph = mermaid.render('graphDiv' + i, graphSource, insertSvg.bind(dom)) + } + }; + + if (typeof window.addEventListener != "undefined") { + window.addEventListener("load", init, false); + } else { + window.attachEvent("onload", init); + } +})(); diff --git a/MacDown/Resources/Extensions/mermaid.min.js b/MacDown/Resources/Extensions/mermaid.min.js new file mode 100644 index 00000000..0a72f337 --- /dev/null +++ b/MacDown/Resources/Extensions/mermaid.min.js @@ -0,0 +1,49 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.mermaid=e():t.mermaid=e()}(window,(function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=509)}([function(t,e,n){"use strict";n.r(e);var r=function(t,e){return te?1:t>=e?0:NaN},i=function(t){var e;return 1===t.length&&(e=t,t=function(t,n){return r(e(t),n)}),{left:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)<0?r=o+1:i=o}return r},right:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)>0?i=o:r=o+1}return r}}};var o=i(r),a=o.right,s=o.left,u=a,c=function(t,e){null==e&&(e=f);for(var n=0,r=t.length-1,i=t[0],o=new Array(r<0?0:r);nt?1:e>=t?0:NaN},d=function(t){return null===t?NaN:+t},p=function(t,e){var n,r,i=t.length,o=0,a=-1,s=0,u=0;if(null==e)for(;++a1)return u/(o-1)},g=function(t,e){var n=p(t,e);return n?Math.sqrt(n):n},y=function(t,e){var n,r,i,o=t.length,a=-1;if(null==e){for(;++a=n)for(r=i=n;++an&&(r=n),i=n)for(r=i=n;++an&&(r=n),i0)return[t];if((r=e0)for(t=Math.ceil(t/a),e=Math.floor(e/a),o=new Array(i=Math.ceil(e-t+1));++s=0?(o>=k?10:o>=E?5:o>=A?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=k?10:o>=E?5:o>=A?2:1)}function M(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),o=r/i;return o>=k?i*=10:o>=E?i*=5:o>=A&&(i*=2),el;)h.pop(),--d;var p,g=new Array(d+1);for(i=0;i<=d;++i)(p=g[i]=[]).x0=i>0?h[i-1]:f,p.x1=i=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,o=Math.floor(i),a=+n(t[o],o,t);return a+(+n(t[o+1],o+1,t)-a)*(i-o)}},R=function(t,e,n){return t=v.call(t,d).sort(r),Math.ceil((n-e)/(2*(O(t,.75)-O(t,.25))*Math.pow(t.length,-1/3)))},I=function(t,e,n){return Math.ceil((n-e)/(3.5*g(t)*Math.pow(t.length,-1/3)))},N=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++or&&(r=n)}else for(;++o=n)for(r=n;++or&&(r=n);return r},B=function(t,e){var n,r=t.length,i=r,o=-1,a=0;if(null==e)for(;++o=0;)for(e=(r=t[i]).length;--e>=0;)n[--a]=r[e];return n},F=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++on&&(r=n)}else for(;++o=n)for(r=n;++on&&(r=n);return r},q=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},j=function(t,e){if(n=t.length){var n,i,o=0,a=0,s=t[a];for(null==e&&(e=r);++o=0&&(n=t.slice(r+1),t=t.slice(0,r)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))}function dt(t,e){for(var n,r=0,i=t.length;r0)for(var n,r,i=new Array(n),o=0;o=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),bt.hasOwnProperty(e)?{space:bt[e],local:t}:t};function vt(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===yt&&e.documentElement.namespaceURI===yt?e.createElement(t):e.createElementNS(n,t)}}function _t(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}var wt=function(t){var e=mt(t);return(e.local?_t:vt)(e)};function xt(){}var kt=function(t){return null==t?xt:function(){return this.querySelector(t)}};function Et(){return[]}var At=function(t){return null==t?Et:function(){return this.querySelectorAll(t)}},St=function(t){return function(){return this.matches(t)}},Tt=function(t){return new Array(t.length)};function Mt(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}Mt.prototype={constructor:Mt,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var Dt="$";function Ct(t,e,n,r,i,o){for(var a,s=0,u=e.length,c=o.length;se?1:t>=e?0:NaN}function It(t){return function(){this.removeAttribute(t)}}function Nt(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Bt(t,e){return function(){this.setAttribute(t,e)}}function Lt(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Pt(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function Ft(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}var qt=function(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView};function jt(t){return function(){this.style.removeProperty(t)}}function Ut(t,e,n){return function(){this.style.setProperty(t,e,n)}}function zt(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function Yt(t,e){return t.style.getPropertyValue(e)||qt(t).getComputedStyle(t,null).getPropertyValue(e)}function Vt(t){return function(){delete this[t]}}function Ht(t,e){return function(){this[t]=e}}function $t(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function Gt(t){return t.trim().split(/^|\s+/)}function Wt(t){return t.classList||new Kt(t)}function Kt(t){this._node=t,this._names=Gt(t.getAttribute("class")||"")}function Xt(t,e){for(var n=Wt(t),r=-1,i=e.length;++r=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function ee(){this.textContent=""}function ne(t){return function(){this.textContent=t}}function re(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function ie(){this.innerHTML=""}function oe(t){return function(){this.innerHTML=t}}function ae(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function se(){this.nextSibling&&this.parentNode.appendChild(this)}function ue(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function ce(){return null}function fe(){var t=this.parentNode;t&&t.removeChild(this)}function le(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function he(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}var de={},pe=null;"undefined"!=typeof document&&("onmouseenter"in document.documentElement||(de={mouseenter:"mouseover",mouseleave:"mouseout"}));function ge(t,e,n){return t=ye(t,e,n),function(e){var n=e.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||t.call(this,e)}}function ye(t,e,n){return function(r){var i=pe;pe=r;try{t.call(this,this.__data__,e,n)}finally{pe=i}}}function be(t){return t.trim().split(/^|\s+/).map((function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}))}function me(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r=w&&(w=_+1);!(v=b[w])&&++w=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=Rt);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o1?this.each((null==e?jt:"function"==typeof e?zt:Ut)(t,e,null==n?"":n)):Yt(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?Vt:"function"==typeof e?$t:Ht)(t,e)):this.node()[t]},classed:function(t,e){var n=Gt(t+"");if(arguments.length<2){for(var r=Wt(this.node()),i=-1,o=n.length;++il}u.mouse("drag")}function g(){Me(pe.view).on("mousemove.drag mouseup.drag",null),ze(pe.view,n),je(),u.mouse("end")}function y(){if(i.apply(this,arguments)){var t,e,n=pe.changedTouches,r=o.apply(this,arguments),a=n.length;for(t=0;t>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?new mn(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?new mn(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=rn.exec(t))?new mn(e[1],e[2],e[3],1):(e=on.exec(t))?new mn(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=an.exec(t))?gn(e[1],e[2],e[3],e[4]):(e=sn.exec(t))?gn(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=un.exec(t))?xn(e[1],e[2]/100,e[3]/100,1):(e=cn.exec(t))?xn(e[1],e[2]/100,e[3]/100,e[4]):fn.hasOwnProperty(t)?pn(fn[t]):"transparent"===t?new mn(NaN,NaN,NaN,0):null}function pn(t){return new mn(t>>16&255,t>>8&255,255&t,1)}function gn(t,e,n,r){return r<=0&&(t=e=n=NaN),new mn(t,e,n,r)}function yn(t){return t instanceof Je||(t=dn(t)),t?new mn((t=t.rgb()).r,t.g,t.b,t.opacity):new mn}function bn(t,e,n,r){return 1===arguments.length?yn(t):new mn(t,e,n,null==r?1:r)}function mn(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function vn(){return"#"+wn(this.r)+wn(this.g)+wn(this.b)}function _n(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}function wn(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function xn(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new An(t,e,n,r)}function kn(t){if(t instanceof An)return new An(t.h,t.s,t.l,t.opacity);if(t instanceof Je||(t=dn(t)),!t)return new An;if(t instanceof An)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),a=NaN,s=o-i,u=(o+i)/2;return s?(a=e===o?(n-r)/s+6*(n0&&u<1?0:a,new An(a,s,u,t.opacity)}function En(t,e,n,r){return 1===arguments.length?kn(t):new An(t,e,n,null==r?1:r)}function An(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function Sn(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function Tn(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}Xe(Je,dn,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:ln,formatHex:ln,formatHsl:function(){return kn(this).formatHsl()},formatRgb:hn,toString:hn}),Xe(mn,bn,Ze(Je,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new mn(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new mn(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vn,formatHex:vn,formatRgb:_n,toString:_n})),Xe(An,En,Ze(Je,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new An(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new An(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new mn(Sn(t>=240?t-240:t+120,i,r),Sn(t,i,r),Sn(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));var Mn=function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,s=r180||n<-180?n-360*Math.round(n/360):n):Cn(isNaN(t)?e:t)}function In(t){return 1==(t=+t)?Nn:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):Cn(isNaN(e)?n:e)}}function Nn(t,e){var n=e-t;return n?On(t,n):Cn(isNaN(t)?e:t)}var Bn=function t(e){var n=In(e);function r(t,e){var r=n((t=bn(t)).r,(e=bn(e)).r),i=n(t.g,e.g),o=n(t.b,e.b),a=Nn(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=o(e),t.opacity=a(e),t+""}}return r.gamma=t,r}(1);function Ln(t){return function(e){var n,r,i=e.length,o=new Array(i),a=new Array(i),s=new Array(i);for(n=0;no&&(i=e.slice(o,i),s[a]?s[a]+=i:s[++a]=i),(n=n[0])===(r=r[0])?s[a]?s[a]+=r:s[++a]=r:(s[++a]=null,u.push({i:a,x:Un(n,r)})),o=Vn.lastIndex;return o180?e+=360:e-t>180&&(t+=360),o.push({i:n.push(i(n)+"rotate(",null,r)-2,x:Un(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(o.rotate,a.rotate,s,u),function(t,e,n,o){t!==e?o.push({i:n.push(i(n)+"skewX(",null,r)-2,x:Un(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(o.skewX,a.skewX,s,u),function(t,e,n,r,o,a){if(t!==n||e!==r){var s=o.push(i(o)+"scale(",null,",",null,")");a.push({i:s-4,x:Un(t,n)},{i:s-2,x:Un(e,r)})}else 1===n&&1===r||o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,u),o=a=null,function(t){for(var e,n=-1,r=u.length;++n_r?Math.pow(t,1/3):t/vr+br}function Sr(t){return t>mr?t*t*t:vr*(t-br)}function Tr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Mr(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Dr(t){if(t instanceof Rr)return new Rr(t.h,t.c,t.l,t.opacity);if(t instanceof Er||(t=wr(t)),0===t.a&&0===t.b)return new Rr(NaN,0=0&&e._call.call(null,t),e=e._next;--Qr}function di(){ii=(ri=ai.now())+oi,Qr=ti=0;try{hi()}finally{Qr=0,function(){var t,e,n=Xr,r=1/0;for(;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:Xr=e);Zr=t,gi(r)}(),ii=0}}function pi(){var t=ai.now(),e=t-ri;e>ni&&(oi-=e,ri=t)}function gi(t){Qr||(ti&&(ti=clearTimeout(ti)),t-ii>24?(t<1/0&&(ti=setTimeout(di,t-ai.now()-oi)),ei&&(ei=clearInterval(ei))):(ei||(ri=ai.now(),ei=setInterval(pi,ni)),Qr=1,si(di)))}fi.prototype=li.prototype={constructor:fi,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?ui():+n)+(null==e?0:+e),this._next||Zr===this||(Zr?Zr._next=this:Xr=this,Zr=this),this._call=t,this._time=n,gi()},stop:function(){this._call&&(this._call=null,this._time=1/0,gi())}};var yi=function(t,e,n){var r=new fi;return e=null==e?0:+e,r.restart((function(n){r.stop(),t(n+e)}),e,n),r},bi=function(t,e,n){var r=new fi,i=e;return null==e?(r.restart(t,e,n),r):(e=+e,n=null==n?ui():+n,r.restart((function o(a){a+=i,r.restart(o,i+=e,n),t(a)}),e,n),r)},mi=gt("start","end","cancel","interrupt"),vi=[],_i=0,wi=1,xi=2,ki=3,Ei=4,Ai=5,Si=6,Ti=function(t,e,n,r,i,o){var a=t.__transition;if(a){if(n in a)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function o(u){var c,f,l,h;if(n.state!==wi)return s();for(c in i)if((h=i[c]).name===n.name){if(h.state===ki)return yi(o);h.state===Ei?(h.state=Si,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete i[c]):+c_i)throw new Error("too late; already scheduled");return n}function Di(t,e){var n=Ci(t,e);if(n.state>ki)throw new Error("too late; already running");return n}function Ci(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}var Oi=function(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o)(n=o[i]).name===e?(r=n.state>xi&&n.state=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?Mi:Di;return function(){var a=o(this,t),s=a.on;s!==r&&(i=(r=s).copy()).on(e,n),a.on=i}}var Xi=Te.prototype.constructor;function Zi(t){return function(){this.style.removeProperty(t)}}function Ji(t,e,n){var r,i;function o(){var o=e.apply(this,arguments);return o!==i&&(r=(i=o)&&function(t,e,n){return function(r){this.style.setProperty(t,e(r),n)}}(t,o,n)),r}return o._value=e,o}var Qi=0;function to(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function eo(t){return Te().transition(t)}function no(){return++Qi}var ro=Te.prototype;function io(t){return+t}function oo(t){return t*t}function ao(t){return t*(2-t)}function so(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function uo(t){return t*t*t}function co(t){return--t*t*t+1}function fo(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}to.prototype=eo.prototype={constructor:to,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=kt(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;awi&&n.name===e)return new to([[t]],Wo,e,+r);return null},Xo=function(t){return function(){return t}},Zo=function(t,e,n){this.target=t,this.type=e,this.selection=n};function Jo(){pe.stopImmediatePropagation()}var Qo=function(){pe.preventDefault(),pe.stopImmediatePropagation()},ta={name:"drag"},ea={name:"space"},na={name:"handle"},ra={name:"center"};function ia(t){return[+t[0],+t[1]]}function oa(t){return[ia(t[0]),ia(t[1])]}var aa={name:"x",handles:["w","e"].map(pa),input:function(t,e){return null==t?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},sa={name:"y",handles:["n","s"].map(pa),input:function(t,e){return null==t?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},ua={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(pa),input:function(t){return null==t?null:oa(t)},output:function(t){return t}},ca={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},fa={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},la={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},ha={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},da={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function pa(t){return{type:t}}function ga(){return!pe.ctrlKey&&!pe.button}function ya(){var t=this.ownerSVGElement||this;return t.hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function ba(){return navigator.maxTouchPoints||"ontouchstart"in this}function ma(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function va(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function _a(){return ka(aa)}function wa(){return ka(sa)}var xa=function(){return ka(ua)};function ka(t){var e,n=ya,r=ga,i=ba,o=!0,a=gt(u,"start","brush","end"),s=6;function u(e){var n=e.property("__brush",g).selectAll(".overlay").data([pa("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",ca.overlay).merge(n).each((function(){var t=ma(this).extent;Me(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])})),e.selectAll(".selection").data([pa("selection")]).enter().append("rect").attr("class","selection").attr("cursor",ca.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove(),r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return ca[t.type]})),e.each(c).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",h).filter(i).on("touchstart.brush",h).on("touchmove.brush",d).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function c(){var t=Me(this),e=ma(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",(function(t){return"e"===t.type[t.type.length-1]?e[1][0]-s/2:e[0][0]-s/2})).attr("y",(function(t){return"s"===t.type[0]?e[1][1]-s/2:e[0][1]-s/2})).attr("width",(function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+s:s})).attr("height",(function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+s:s}))):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function f(t,e,n){return!n&&t.__brush.emitter||new l(t,e)}function l(t,e){this.that=t,this.args=e,this.state=t.__brush,this.active=0}function h(){if((!e||pe.touches)&&r.apply(this,arguments)){var n,i,a,s,u,l,h,d,p,g,y,b,m=this,v=pe.target.__data__.type,_="selection"===(o&&pe.metaKey?v="overlay":v)?ta:o&&pe.altKey?ra:na,w=t===sa?null:ha[v],x=t===aa?null:da[v],k=ma(m),E=k.extent,A=k.selection,S=E[0][0],T=E[0][1],M=E[1][0],D=E[1][1],C=0,O=0,R=w&&x&&o&&pe.shiftKey,I=pe.touches?(b=pe.changedTouches[0].identifier,function(t){return Pe(t,pe.touches,b)}):Be,N=I(m),B=N,L=f(m,arguments,!0).beforestart();"overlay"===v?(A&&(p=!0),k.selection=A=[[n=t===sa?S:N[0],a=t===aa?T:N[1]],[u=t===sa?M:n,h=t===aa?D:a]]):(n=A[0][0],a=A[0][1],u=A[1][0],h=A[1][1]),i=n,s=a,l=u,d=h;var P=Me(m).attr("pointer-events","none"),F=P.selectAll(".overlay").attr("cursor",ca[v]);if(pe.touches)L.moved=j,L.ended=z;else{var q=Me(pe.view).on("mousemove.brush",j,!0).on("mouseup.brush",z,!0);o&&q.on("keydown.brush",(function(){switch(pe.keyCode){case 16:R=w&&x;break;case 18:_===na&&(w&&(u=l-C*w,n=i+C*w),x&&(h=d-O*x,a=s+O*x),_=ra,U());break;case 32:_!==na&&_!==ra||(w<0?u=l-C:w>0&&(n=i-C),x<0?h=d-O:x>0&&(a=s-O),_=ea,F.attr("cursor",ca.selection),U());break;default:return}Qo()}),!0).on("keyup.brush",(function(){switch(pe.keyCode){case 16:R&&(g=y=R=!1,U());break;case 18:_===ra&&(w<0?u=l:w>0&&(n=i),x<0?h=d:x>0&&(a=s),_=na,U());break;case 32:_===ea&&(pe.altKey?(w&&(u=l-C*w,n=i+C*w),x&&(h=d-O*x,a=s+O*x),_=ra):(w<0?u=l:w>0&&(n=i),x<0?h=d:x>0&&(a=s),_=na),F.attr("cursor",ca[v]),U());break;default:return}Qo()}),!0),Ue(pe.view)}Jo(),Oi(m),c.call(m),L.start()}function j(){var t=I(m);!R||g||y||(Math.abs(t[0]-B[0])>Math.abs(t[1]-B[1])?y=!0:g=!0),B=t,p=!0,Qo(),U()}function U(){var t;switch(C=B[0]-N[0],O=B[1]-N[1],_){case ea:case ta:w&&(C=Math.max(S-n,Math.min(M-u,C)),i=n+C,l=u+C),x&&(O=Math.max(T-a,Math.min(D-h,O)),s=a+O,d=h+O);break;case na:w<0?(C=Math.max(S-n,Math.min(M-n,C)),i=n+C,l=u):w>0&&(C=Math.max(S-u,Math.min(M-u,C)),i=n,l=u+C),x<0?(O=Math.max(T-a,Math.min(D-a,O)),s=a+O,d=h):x>0&&(O=Math.max(T-h,Math.min(D-h,O)),s=a,d=h+O);break;case ra:w&&(i=Math.max(S,Math.min(M,n-C*w)),l=Math.max(S,Math.min(M,u+C*w))),x&&(s=Math.max(T,Math.min(D,a-O*x)),d=Math.max(T,Math.min(D,h+O*x)))}l1e-6)if(Math.abs(f*s-u*c)>1e-6&&i){var h=n-o,d=r-a,p=s*s+u*u,g=h*h+d*d,y=Math.sqrt(p),b=Math.sqrt(l),m=i*Math.tan((Na-Math.acos((p+l-g)/(2*y*b)))/2),v=m/b,_=m/y;Math.abs(v-1)>1e-6&&(this._+="L"+(t+v*c)+","+(e+v*f)),this._+="A"+i+","+i+",0,0,"+ +(f*h>c*d)+","+(this._x1=t+_*s)+","+(this._y1=e+_*u)}else this._+="L"+(this._x1=t)+","+(this._y1=e);else;},arc:function(t,e,n,r,i,o){t=+t,e=+e,o=!!o;var a=(n=+n)*Math.cos(r),s=n*Math.sin(r),u=t+a,c=e+s,f=1^o,l=o?r-i:i-r;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+u+","+c:(Math.abs(this._x1-u)>1e-6||Math.abs(this._y1-c)>1e-6)&&(this._+="L"+u+","+c),n&&(l<0&&(l=l%Ba+Ba),l>La?this._+="A"+n+","+n+",0,1,"+f+","+(t-a)+","+(e-s)+"A"+n+","+n+",0,1,"+f+","+(this._x1=u)+","+(this._y1=c):l>1e-6&&(this._+="A"+n+","+n+",0,"+ +(l>=Na)+","+f+","+(this._x1=t+n*Math.cos(i))+","+(this._y1=e+n*Math.sin(i))))},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};var qa=Fa;function ja(t){return t.source}function Ua(t){return t.target}function za(t){return t.radius}function Ya(t){return t.startAngle}function Va(t){return t.endAngle}var Ha=function(){var t=ja,e=Ua,n=za,r=Ya,i=Va,o=null;function a(){var a,s=Ra.call(arguments),u=t.apply(this,s),c=e.apply(this,s),f=+n.apply(this,(s[0]=u,s)),l=r.apply(this,s)-Ta,h=i.apply(this,s)-Ta,d=f*Ea(l),p=f*Aa(l),g=+n.apply(this,(s[0]=c,s)),y=r.apply(this,s)-Ta,b=i.apply(this,s)-Ta;if(o||(o=a=qa()),o.moveTo(d,p),o.arc(0,0,f,l,h),l===y&&h===b||(o.quadraticCurveTo(0,0,g*Ea(y),g*Aa(y)),o.arc(0,0,g,y,b)),o.quadraticCurveTo(0,0,d,p),o.closePath(),a)return o=null,a+""||null}return a.radius=function(t){return arguments.length?(n="function"==typeof t?t:Ia(+t),a):n},a.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:Ia(+t),a):r},a.endAngle=function(t){return arguments.length?(i="function"==typeof t?t:Ia(+t),a):i},a.source=function(e){return arguments.length?(t=e,a):t},a.target=function(t){return arguments.length?(e=t,a):e},a.context=function(t){return arguments.length?(o=null==t?null:t,a):o},a};function $a(){}function Ga(t,e){var n=new $a;if(t instanceof $a)t.each((function(t,e){n.set(e,t)}));else if(Array.isArray(t)){var r,i=-1,o=t.length;if(null==e)for(;++i=r.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var u,c,f,l=-1,h=n.length,d=r[i++],p=Wa(),g=a();++lr.length)return n;var a,s=i[o-1];return null!=e&&o>=r.length?a=n.entries():(a=[],n.each((function(e,n){a.push({key:n,values:t(e,o)})}))),null!=s?a.sort((function(t,e){return s(t.key,e.key)})):a}(o(t,0,Ja,Qa),0)},key:function(t){return r.push(t),n},sortKeys:function(t){return i[r.length-1]=t,n},sortValues:function(e){return t=e,n},rollup:function(t){return e=t,n}}};function Xa(){return{}}function Za(t,e,n){t[e]=n}function Ja(){return Wa()}function Qa(t,e,n){t.set(e,n)}function ts(){}var es=Wa.prototype;function ns(t,e){var n=new ts;if(t instanceof ts)t.each((function(t){n.add(t)}));else if(t){var r=-1,i=t.length;if(null==e)for(;++rr!=d>r&&n<(h-c)*(r-f)/(d-f)+c&&(i=-i)}return i}function ds(t,e,n){var r,i,o,a;return function(t,e,n){return(e[0]-t[0])*(n[1]-t[1])==(n[0]-t[0])*(e[1]-t[1])}(t,e,n)&&(i=t[r=+(t[0]===e[0])],o=n[r],a=e[r],i<=o&&o<=a||a<=o&&o<=i)}var ps=function(){},gs=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]],ys=function(){var t=1,e=1,n=D,r=s;function i(t){var e=n(t);if(Array.isArray(e))e=e.slice().sort(us);else{var r=y(t),i=r[0],a=r[1];e=M(i,a,e),e=x(Math.floor(i/e)*e,Math.floor(a/e)*e,e)}return e.map((function(e){return o(t,e)}))}function o(n,i){var o=[],s=[];return function(n,r,i){var o,s,u,c,f,l,h=new Array,d=new Array;o=s=-1,c=n[0]>=r,gs[c<<1].forEach(p);for(;++o=r,gs[u|c<<1].forEach(p);gs[c<<0].forEach(p);for(;++s=r,f=n[s*t]>=r,gs[c<<1|f<<2].forEach(p);++o=r,l=f,f=n[s*t+o+1]>=r,gs[u|c<<1|f<<2|l<<3].forEach(p);gs[c|f<<3].forEach(p)}o=-1,f=n[s*t]>=r,gs[f<<2].forEach(p);for(;++o=r,gs[f<<2|l<<3].forEach(p);function p(t){var e,n,r=[t[0][0]+o,t[0][1]+s],u=[t[1][0]+o,t[1][1]+s],c=a(r),f=a(u);(e=d[c])?(n=h[f])?(delete d[e.end],delete h[n.start],e===n?(e.ring.push(u),i(e.ring)):h[e.start]=d[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete d[e.end],e.ring.push(u),d[e.end=f]=e):(e=h[f])?(n=d[c])?(delete h[e.start],delete d[n.end],e===n?(e.ring.push(u),i(e.ring)):h[n.start]=d[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete h[e.start],e.ring.unshift(r),h[e.start=c]=e):h[c]=d[f]={start:c,end:f,ring:[r,u]}}gs[f<<3].forEach(p)}(n,i,(function(t){r(t,n,i),cs(t)>0?o.push([t]):s.push(t)})),s.forEach((function(t){for(var e,n=0,r=o.length;n0&&a0&&s0&&o>0))throw new Error("invalid size");return t=r,e=o,i},i.thresholds=function(t){return arguments.length?(n="function"==typeof t?t:Array.isArray(t)?fs(ss.call(t)):fs(t),i):n},i.smooth=function(t){return arguments.length?(r=t?s:ps,i):r===s},i};function bs(t,e,n){for(var r=t.width,i=t.height,o=1+(n<<1),a=0;a=n&&(s>=o&&(u-=t.data[s-o+a*r]),e.data[s-n+a*r]=u/Math.min(s+1,r-1+o-s,o))}function ms(t,e,n){for(var r=t.width,i=t.height,o=1+(n<<1),a=0;a=n&&(s>=o&&(u-=t.data[a+(s-o)*r]),e.data[a+(s-n)*r]=u/Math.min(s+1,i-1+o-s,o))}function vs(t){return t[0]}function _s(t){return t[1]}function ws(){return 1}var xs=function(){var t=vs,e=_s,n=ws,r=960,i=500,o=20,a=2,s=3*o,u=r+2*s>>a,c=i+2*s>>a,f=fs(20);function l(r){var i=new Float32Array(u*c),l=new Float32Array(u*c);r.forEach((function(r,o,f){var l=+t(r,o,f)+s>>a,h=+e(r,o,f)+s>>a,d=+n(r,o,f);l>=0&&l=0&&h>a),ms({width:u,height:c,data:l},{width:u,height:c,data:i},o>>a),bs({width:u,height:c,data:i},{width:u,height:c,data:l},o>>a),ms({width:u,height:c,data:l},{width:u,height:c,data:i},o>>a),bs({width:u,height:c,data:i},{width:u,height:c,data:l},o>>a),ms({width:u,height:c,data:l},{width:u,height:c,data:i},o>>a);var d=f(i);if(!Array.isArray(d)){var p=N(i);d=M(0,p,d),(d=x(0,Math.floor(p/d)*d,d)).shift()}return ys().thresholds(d).size([u,c])(i).map(h)}function h(t){return t.value*=Math.pow(2,-2*a),t.coordinates.forEach(d),t}function d(t){t.forEach(p)}function p(t){t.forEach(g)}function g(t){t[0]=t[0]*Math.pow(2,a)-s,t[1]=t[1]*Math.pow(2,a)-s}function y(){return u=r+2*(s=3*o)>>a,c=i+2*s>>a,l}return l.x=function(e){return arguments.length?(t="function"==typeof e?e:fs(+e),l):t},l.y=function(t){return arguments.length?(e="function"==typeof t?t:fs(+t),l):e},l.weight=function(t){return arguments.length?(n="function"==typeof t?t:fs(+t),l):n},l.size=function(t){if(!arguments.length)return[r,i];var e=Math.ceil(t[0]),n=Math.ceil(t[1]);if(!(e>=0||e>=0))throw new Error("invalid size");return r=e,i=n,y()},l.cellSize=function(t){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return a=Math.floor(Math.log(t)/Math.LN2),y()},l.thresholds=function(t){return arguments.length?(f="function"==typeof t?t:Array.isArray(t)?fs(ss.call(t)):fs(t),l):f},l.bandwidth=function(t){if(!arguments.length)return Math.sqrt(o*(o+1));if(!((t=+t)>=0))throw new Error("invalid bandwidth");return o=Math.round((Math.sqrt(4*t*t+1)-1)/2),y()},l},ks={},Es={},As=34,Ss=10,Ts=13;function Ms(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+"]"})).join(",")+"}")}function Ds(t){var e=Object.create(null),n=[];return t.forEach((function(t){for(var r in t)r in e||n.push(e[r]=r)})),n}function Cs(t,e){var n=t+"",r=n.length;return r9999?"+"+Cs(e,6):Cs(e,4))+"-"+Cs(t.getUTCMonth()+1,2)+"-"+Cs(t.getUTCDate(),2)+(o?"T"+Cs(n,2)+":"+Cs(r,2)+":"+Cs(i,2)+"."+Cs(o,3)+"Z":i?"T"+Cs(n,2)+":"+Cs(r,2)+":"+Cs(i,2)+"Z":r||n?"T"+Cs(n,2)+":"+Cs(r,2)+"Z":"")}var Rs=function(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var r,i=[],o=t.length,a=0,s=0,u=o<=0,c=!1;function f(){if(u)return Es;if(c)return c=!1,ks;var e,r,i=a;if(t.charCodeAt(i)===As){for(;a++=o?u=!0:(r=t.charCodeAt(a++))===Ss?c=!0:r===Ts&&(c=!0,t.charCodeAt(a)===Ss&&++a),t.slice(i+1,e-1).replace(/""/g,'"')}for(;a=(o=(g+b)/2))?g=o:b=o,(f=n>=(a=(y+m)/2))?y=a:m=a,i=d,!(d=d[l=f<<1|c]))return i[l]=p,t;if(s=+t._x.call(null,d.data),u=+t._y.call(null,d.data),e===s&&n===u)return p.next=d,i?i[l]=p:t._root=p,t;do{i=i?i[l]=new Array(4):t._root=new Array(4),(c=e>=(o=(g+b)/2))?g=o:b=o,(f=n>=(a=(y+m)/2))?y=a:m=a}while((l=f<<1|c)==(h=(u>=a)<<1|s>=o));return i[h]=d,i[l]=p,t}var du=function(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i};function pu(t){return t[0]}function gu(t){return t[1]}function yu(t,e,n){var r=new bu(null==e?pu:e,null==n?gu:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function bu(t,e,n,r,i,o){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function mu(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}var vu=yu.prototype=bu.prototype;function _u(t){return t.x+t.vx}function wu(t){return t.y+t.vy}vu.copy=function(){var t,e,n=new bu(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return n;if(!r.length)return n._root=mu(r),n;for(t=[{source:r,target:n._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(e=r.source[i])&&(e.length?t.push({source:e,target:r.target[i]=new Array(4)}):r.target[i]=mu(e));return n},vu.add=function(t){var e=+this._x.call(null,t),n=+this._y.call(null,t);return hu(this.cover(e,n),e,n,t)},vu.addAll=function(t){var e,n,r,i,o=t.length,a=new Array(o),s=new Array(o),u=1/0,c=1/0,f=-1/0,l=-1/0;for(n=0;nf&&(f=r),il&&(l=i));if(u>f||c>l)return this;for(this.cover(u,c).cover(f,l),n=0;nt||t>=i||r>e||e>=o;)switch(s=(eh||(o=u.y0)>d||(a=u.x1)=b)<<1|t>=y)&&(u=p[p.length-1],p[p.length-1]=p[p.length-1-c],p[p.length-1-c]=u)}else{var m=t-+this._x.call(null,g.data),v=e-+this._y.call(null,g.data),_=m*m+v*v;if(_=(s=(p+y)/2))?p=s:y=s,(f=a>=(u=(g+b)/2))?g=u:b=u,e=d,!(d=d[l=f<<1|c]))return this;if(!d.length)break;(e[l+1&3]||e[l+2&3]||e[l+3&3])&&(n=e,h=l)}for(;d.data!==t;)if(r=d,!(d=d.next))return this;return(i=d.next)&&delete d.next,r?(i?r.next=i:delete r.next,this):e?(i?e[l]=i:delete e[l],(d=e[0]||e[1]||e[2]||e[3])&&d===(e[3]||e[2]||e[1]||e[0])&&!d.length&&(n?n[h]=d:this._root=d),this):(this._root=i,this)},vu.removeAll=function(t){for(var e=0,n=t.length;eu+d||ic+d||os.index){var p=u-a.x-a.vx,g=c-a.y-a.vy,y=p*p+g*g;yt.r&&(t.r=t[e].r)}function s(){if(e){var r,i,o=e.length;for(n=new Array(o),r=0;r1?(null==n?s.remove(t):s.set(t,d(n)),e):s.get(t)},find:function(e,n,r){var i,o,a,s,u,c=0,f=t.length;for(null==r?r=1/0:r*=r,c=0;c1?(c.on(t,n),e):c.on(t)}}},Ou=function(){var t,e,n,r,i=fu(-30),o=1,a=1/0,s=.81;function u(r){var i,o=t.length,a=yu(t,Su,Tu).visitAfter(f);for(n=r,i=0;i=a)){(t.data!==e||t.next)&&(0===f&&(d+=(f=lu())*f),0===l&&(d+=(l=lu())*l),d1?r[0]+r.slice(2):r,+t.slice(n+1)]},Lu=function(t){return(t=Bu(Math.abs(t)))?t[1]:NaN},Pu=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Fu(t){if(!(e=Pu.exec(t)))throw new Error("invalid format: "+t);var e;return new qu({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function qu(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}Fu.prototype=qu.prototype,qu.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var ju,Uu,zu,Yu,Vu=function(t){t:for(var e,n=t.length,r=1,i=-1;r0){if(!+t[r])break t;i=0}}return i>0?t.slice(0,i)+t.slice(e+1):t},Hu=function(t,e){var n=Bu(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")},$u={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return Hu(100*t,e)},r:Hu,s:function(t,e){var n=Bu(t,e);if(!n)return t+"";var r=n[0],i=n[1],o=i-(ju=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Bu(t,Math.max(0,e+o-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},Gu=function(t){return t},Wu=Array.prototype.map,Ku=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"],Xu=function(t){var e,n,r=void 0===t.grouping||void 0===t.thousands?Gu:(e=Wu.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,s=e[0],u=0;i>0&&s>0&&(u+s+1>r&&(s=Math.max(1,r-u)),o.push(t.substring(i-=s,i+s)),!((u+=s+1)>r));)s=e[a=(a+1)%e.length];return o.reverse().join(n)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",s=void 0===t.numerals?Gu:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(Wu.call(t.numerals,String)),u=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"-":t.minus+"",f=void 0===t.nan?"NaN":t.nan+"";function l(t){var e=(t=Fu(t)).fill,n=t.align,l=t.sign,h=t.symbol,d=t.zero,p=t.width,g=t.comma,y=t.precision,b=t.trim,m=t.type;"n"===m?(g=!0,m="g"):$u[m]||(void 0===y&&(y=12),b=!0,m="g"),(d||"0"===e&&"="===n)&&(d=!0,e="0",n="=");var v="$"===h?i:"#"===h&&/[boxX]/.test(m)?"0"+m.toLowerCase():"",_="$"===h?o:/[%p]/.test(m)?u:"",w=$u[m],x=/[defgprs%]/.test(m);function k(t){var i,o,u,h=v,k=_;if("c"===m)k=w(t)+k,t="";else{var E=(t=+t)<0;if(t=isNaN(t)?f:w(Math.abs(t),y),b&&(t=Vu(t)),E&&0==+t&&(E=!1),h=(E?"("===l?l:c:"-"===l||"("===l?"":l)+h,k=("s"===m?Ku[8+ju/3]:"")+k+(E&&"("===l?")":""),x)for(i=-1,o=t.length;++i(u=t.charCodeAt(i))||u>57){k=(46===u?a+t.slice(i+1):t.slice(i))+k,t=t.slice(0,i);break}}g&&!d&&(t=r(t,1/0));var A=h.length+t.length+k.length,S=A>1)+h+t+k+S.slice(A);break;default:t=S+h+t+k}return s(t)}return y=void 0===y?6:/[gprs]/.test(m)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),k.toString=function(){return t+""},k}return{format:l,formatPrefix:function(t,e){var n=l(((t=Fu(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(Lu(e)/3))),i=Math.pow(10,-r),o=Ku[8+r/3];return function(t){return n(i*t)+o}}}};function Zu(t){return Uu=Xu(t),zu=Uu.format,Yu=Uu.formatPrefix,Uu}Zu({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});var Ju=function(t){return Math.max(0,-Lu(Math.abs(t)))},Qu=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Lu(e)/3)))-Lu(Math.abs(t)))},tc=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,Lu(e)-Lu(t))+1},ec=function(){return new nc};function nc(){this.reset()}nc.prototype={constructor:nc,reset:function(){this.s=this.t=0},add:function(t){ic(rc,t,this.t),ic(this,rc.s,this.s),this.s?this.t+=rc.t:this.s=rc.t},valueOf:function(){return this.s}};var rc=new nc;function ic(t,e,n){var r=t.s=e+n,i=r-e,o=r-i;t.t=e-o+(n-i)}var oc=1e-6,ac=1e-12,sc=Math.PI,uc=sc/2,cc=sc/4,fc=2*sc,lc=180/sc,hc=sc/180,dc=Math.abs,pc=Math.atan,gc=Math.atan2,yc=Math.cos,bc=Math.ceil,mc=Math.exp,vc=(Math.floor,Math.log),_c=Math.pow,wc=Math.sin,xc=Math.sign||function(t){return t>0?1:t<0?-1:0},kc=Math.sqrt,Ec=Math.tan;function Ac(t){return t>1?0:t<-1?sc:Math.acos(t)}function Sc(t){return t>1?uc:t<-1?-uc:Math.asin(t)}function Tc(t){return(t=wc(t/2))*t}function Mc(){}function Dc(t,e){t&&Oc.hasOwnProperty(t.type)&&Oc[t.type](t,e)}var Cc={Feature:function(t,e){Dc(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r=0?1:-1,i=r*n,o=yc(e=(e*=hc)/2+cc),a=wc(e),s=Fc*a,u=Pc*o+s*yc(i),c=s*r*wc(i);jc.add(gc(c,u)),Lc=t,Pc=o,Fc=a}var Gc=function(t){return Uc.reset(),qc(t,zc),2*Uc};function Wc(t){return[gc(t[1],t[0]),Sc(t[2])]}function Kc(t){var e=t[0],n=t[1],r=yc(n);return[r*yc(e),r*wc(e),wc(n)]}function Xc(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Zc(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Jc(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Qc(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function tf(t){var e=kc(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var ef,nf,rf,of,af,sf,uf,cf,ff,lf,hf=ec(),df={point:pf,lineStart:yf,lineEnd:bf,polygonStart:function(){df.point=mf,df.lineStart=vf,df.lineEnd=_f,hf.reset(),zc.polygonStart()},polygonEnd:function(){zc.polygonEnd(),df.point=pf,df.lineStart=yf,df.lineEnd=bf,jc<0?(ef=-(rf=180),nf=-(of=90)):hf>oc?of=90:hf<-oc&&(nf=-90),lf[0]=ef,lf[1]=rf},sphere:function(){ef=-(rf=180),nf=-(of=90)}};function pf(t,e){ff.push(lf=[ef=t,rf=t]),eof&&(of=e)}function gf(t,e){var n=Kc([t*hc,e*hc]);if(cf){var r=Zc(cf,n),i=Zc([r[1],-r[0],0],r);tf(i),i=Wc(i);var o,a=t-af,s=a>0?1:-1,u=i[0]*lc*s,c=dc(a)>180;c^(s*afof&&(of=o):c^(s*af<(u=(u+360)%360-180)&&uof&&(of=e)),c?twf(ef,rf)&&(rf=t):wf(t,rf)>wf(ef,rf)&&(ef=t):rf>=ef?(trf&&(rf=t)):t>af?wf(ef,t)>wf(ef,rf)&&(rf=t):wf(t,rf)>wf(ef,rf)&&(ef=t)}else ff.push(lf=[ef=t,rf=t]);eof&&(of=e),cf=n,af=t}function yf(){df.point=gf}function bf(){lf[0]=ef,lf[1]=rf,df.point=pf,cf=null}function mf(t,e){if(cf){var n=t-af;hf.add(dc(n)>180?n+(n>0?360:-360):n)}else sf=t,uf=e;zc.point(t,e),gf(t,e)}function vf(){zc.lineStart()}function _f(){mf(sf,uf),zc.lineEnd(),dc(hf)>oc&&(ef=-(rf=180)),lf[0]=ef,lf[1]=rf,cf=null}function wf(t,e){return(e-=t)<0?e+360:e}function xf(t,e){return t[0]-e[0]}function kf(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:ewf(r[0],r[1])&&(r[1]=i[1]),wf(i[0],r[1])>wf(r[0],r[1])&&(r[0]=i[0])):o.push(r=i);for(a=-1/0,e=0,r=o[n=o.length-1];e<=n;r=i,++e)i=o[e],(s=wf(r[1],i[0]))>a&&(a=s,ef=i[0],rf=r[1])}return ff=lf=null,ef===1/0||nf===1/0?[[NaN,NaN],[NaN,NaN]]:[[ef,nf],[rf,of]]},Uf={sphere:Mc,point:zf,lineStart:Vf,lineEnd:Gf,polygonStart:function(){Uf.lineStart=Wf,Uf.lineEnd=Kf},polygonEnd:function(){Uf.lineStart=Vf,Uf.lineEnd=Gf}};function zf(t,e){t*=hc;var n=yc(e*=hc);Yf(n*yc(t),n*wc(t),wc(e))}function Yf(t,e,n){Sf+=(t-Sf)/++Ef,Tf+=(e-Tf)/Ef,Mf+=(n-Mf)/Ef}function Vf(){Uf.point=Hf}function Hf(t,e){t*=hc;var n=yc(e*=hc);Pf=n*yc(t),Ff=n*wc(t),qf=wc(e),Uf.point=$f,Yf(Pf,Ff,qf)}function $f(t,e){t*=hc;var n=yc(e*=hc),r=n*yc(t),i=n*wc(t),o=wc(e),a=gc(kc((a=Ff*o-qf*i)*a+(a=qf*r-Pf*o)*a+(a=Pf*i-Ff*r)*a),Pf*r+Ff*i+qf*o);Af+=a,Df+=a*(Pf+(Pf=r)),Cf+=a*(Ff+(Ff=i)),Of+=a*(qf+(qf=o)),Yf(Pf,Ff,qf)}function Gf(){Uf.point=zf}function Wf(){Uf.point=Xf}function Kf(){Zf(Bf,Lf),Uf.point=zf}function Xf(t,e){Bf=t,Lf=e,t*=hc,e*=hc,Uf.point=Zf;var n=yc(e);Pf=n*yc(t),Ff=n*wc(t),qf=wc(e),Yf(Pf,Ff,qf)}function Zf(t,e){t*=hc;var n=yc(e*=hc),r=n*yc(t),i=n*wc(t),o=wc(e),a=Ff*o-qf*i,s=qf*r-Pf*o,u=Pf*i-Ff*r,c=kc(a*a+s*s+u*u),f=Sc(c),l=c&&-f/c;Rf+=l*a,If+=l*s,Nf+=l*u,Af+=f,Df+=f*(Pf+(Pf=r)),Cf+=f*(Ff+(Ff=i)),Of+=f*(qf+(qf=o)),Yf(Pf,Ff,qf)}var Jf=function(t){Ef=Af=Sf=Tf=Mf=Df=Cf=Of=Rf=If=Nf=0,qc(t,Uf);var e=Rf,n=If,r=Nf,i=e*e+n*n+r*r;return isc?t+Math.round(-t/fc)*fc:t,e]}function nl(t,e,n){return(t%=fc)?e||n?tl(il(t),ol(e,n)):il(t):e||n?ol(e,n):el}function rl(t){return function(e,n){return[(e+=t)>sc?e-fc:e<-sc?e+fc:e,n]}}function il(t){var e=rl(t);return e.invert=rl(-t),e}function ol(t,e){var n=yc(t),r=wc(t),i=yc(e),o=wc(e);function a(t,e){var a=yc(e),s=yc(t)*a,u=wc(t)*a,c=wc(e),f=c*n+s*r;return[gc(u*i-f*o,s*n-c*r),Sc(f*i+u*o)]}return a.invert=function(t,e){var a=yc(e),s=yc(t)*a,u=wc(t)*a,c=wc(e),f=c*i-u*o;return[gc(u*i+c*o,s*n+f*r),Sc(f*n-s*r)]},a}el.invert=el;var al=function(t){function e(e){return(e=t(e[0]*hc,e[1]*hc))[0]*=lc,e[1]*=lc,e}return t=nl(t[0]*hc,t[1]*hc,t.length>2?t[2]*hc:0),e.invert=function(e){return(e=t.invert(e[0]*hc,e[1]*hc))[0]*=lc,e[1]*=lc,e},e};function sl(t,e,n,r,i,o){if(n){var a=yc(e),s=wc(e),u=r*n;null==i?(i=e+r*fc,o=e-u/2):(i=ul(a,i),o=ul(a,o),(r>0?io)&&(i+=r*fc));for(var c,f=i;r>0?f>o:f1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}},ll=function(t,e){return dc(t[0]-e[0])=0;--o)i.point((f=c[o])[0],f[1]);else r(h.x,h.p.x,-1,i);h=h.p}c=(h=h.o).z,d=!d}while(!h.v);i.lineEnd()}}};function pl(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r=0?1:-1,A=E*k,S=A>sc,T=g*w;if(gl.add(gc(T*E*wc(A),y*x+T*yc(A))),a+=S?k+E*fc:k,S^d>=n^v>=n){var M=Zc(Kc(h),Kc(m));tf(M);var D=Zc(o,M);tf(D);var C=(S^k>=0?-1:1)*Sc(D[2]);(r>C||r===C&&(M[0]||M[1]))&&(s+=S^k>=0?1:-1)}}return(a<-oc||a0){for(l||(i.polygonStart(),l=!0),i.lineStart(),t=0;t1&&2&u&&h.push(h.pop().concat(h.shift())),a.push(h.filter(vl))}return h}};function vl(t){return t.length>1}function _l(t,e){return((t=t.x)[0]<0?t[1]-uc-oc:uc-t[1])-((e=e.x)[0]<0?e[1]-uc-oc:uc-e[1])}var wl=ml((function(){return!0}),(function(t){var e,n=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(o,a){var s=o>0?sc:-sc,u=dc(o-n);dc(u-sc)0?uc:-uc),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(s,r),t.point(o,r),e=0):i!==s&&u>=sc&&(dc(n-i)oc?pc((wc(e)*(o=yc(r))*wc(n)-wc(r)*(i=yc(e))*wc(t))/(i*o*a)):(e+r)/2}(n,r,o,a),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(s,r),e=0),t.point(n=o,r=a),i=s},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var i;if(null==t)i=n*uc,r.point(-sc,i),r.point(0,i),r.point(sc,i),r.point(sc,0),r.point(sc,-i),r.point(0,-i),r.point(-sc,-i),r.point(-sc,0),r.point(-sc,i);else if(dc(t[0]-e[0])>oc){var o=t[0]0,i=dc(e)>oc;function o(t,n){return yc(t)*yc(n)>e}function a(t,n,r){var i=[1,0,0],o=Zc(Kc(t),Kc(n)),a=Xc(o,o),s=o[0],u=a-s*s;if(!u)return!r&&t;var c=e*a/u,f=-e*s/u,l=Zc(i,o),h=Qc(i,c);Jc(h,Qc(o,f));var d=l,p=Xc(h,d),g=Xc(d,d),y=p*p-g*(Xc(h,h)-1);if(!(y<0)){var b=kc(y),m=Qc(d,(-p-b)/g);if(Jc(m,h),m=Wc(m),!r)return m;var v,_=t[0],w=n[0],x=t[1],k=n[1];w<_&&(v=_,_=w,w=v);var E=w-_,A=dc(E-sc)0^m[1]<(dc(m[0]-_)sc^(_<=m[0]&&m[0]<=w)){var S=Qc(d,(-p+b)/g);return Jc(S,h),[m,Wc(S)]}}}function s(e,n){var i=r?t:sc-t,o=0;return e<-i?o|=1:e>i&&(o|=2),n<-i?o|=4:n>i&&(o|=8),o}return ml(o,(function(t){var e,n,u,c,f;return{lineStart:function(){c=u=!1,f=1},point:function(l,h){var d,p=[l,h],g=o(l,h),y=r?g?0:s(l,h):g?s(l+(l<0?sc:-sc),h):0;if(!e&&(c=u=g)&&t.lineStart(),g!==u&&(!(d=a(e,p))||ll(e,d)||ll(p,d))&&(p[0]+=oc,p[1]+=oc,g=o(p[0],p[1])),g!==u)f=0,g?(t.lineStart(),d=a(p,e),t.point(d[0],d[1])):(d=a(e,p),t.point(d[0],d[1]),t.lineEnd()),e=d;else if(i&&e&&r^g){var b;y&n||!(b=a(p,e,!0))||(f=0,r?(t.lineStart(),t.point(b[0][0],b[0][1]),t.point(b[1][0],b[1][1]),t.lineEnd()):(t.point(b[1][0],b[1][1]),t.lineEnd(),t.lineStart(),t.point(b[0][0],b[0][1])))}!g||e&&ll(e,p)||t.point(p[0],p[1]),e=p,u=g,n=y},lineEnd:function(){u&&t.lineEnd(),e=null},clean:function(){return f|(c&&u)<<1}}}),(function(e,r,i,o){sl(o,t,n,i,e,r)}),r?[0,-t]:[-sc,t-sc])},kl=function(t,e,n,r,i,o){var a,s=t[0],u=t[1],c=0,f=1,l=e[0]-s,h=e[1]-u;if(a=n-s,l||!(a>0)){if(a/=l,l<0){if(a0){if(a>f)return;a>c&&(c=a)}if(a=i-s,l||!(a<0)){if(a/=l,l<0){if(a>f)return;a>c&&(c=a)}else if(l>0){if(a0)){if(a/=h,h<0){if(a0){if(a>f)return;a>c&&(c=a)}if(a=o-u,h||!(a<0)){if(a/=h,h<0){if(a>f)return;a>c&&(c=a)}else if(h>0){if(a0&&(t[0]=s+c*l,t[1]=u+c*h),f<1&&(e[0]=s+f*l,e[1]=u+f*h),!0}}}}},El=1e9,Al=-El;function Sl(t,e,n,r){function i(i,o){return t<=i&&i<=n&&e<=o&&o<=r}function o(i,o,s,c){var f=0,l=0;if(null==i||(f=a(i,s))!==(l=a(o,s))||u(i,o)<0^s>0)do{c.point(0===f||3===f?t:n,f>1?r:e)}while((f=(f+s+4)%4)!==l);else c.point(o[0],o[1])}function a(r,i){return dc(r[0]-t)0?0:3:dc(r[0]-n)0?2:1:dc(r[1]-e)0?1:0:i>0?3:2}function s(t,e){return u(t.x,e.x)}function u(t,e){var n=a(t,1),r=a(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(a){var u,c,f,l,h,d,p,g,y,b,m,v=a,_=fl(),w={point:x,lineStart:function(){w.point=k,c&&c.push(f=[]);b=!0,y=!1,p=g=NaN},lineEnd:function(){u&&(k(l,h),d&&y&&_.rejoin(),u.push(_.result()));w.point=x,y&&v.lineEnd()},polygonStart:function(){v=_,u=[],c=[],m=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,i=c.length;nr&&(h-o)*(r-a)>(d-a)*(t-o)&&++e:d<=r&&(h-o)*(r-a)<(d-a)*(t-o)&&--e;return e}(),n=m&&e,i=(u=P(u)).length;(n||i)&&(a.polygonStart(),n&&(a.lineStart(),o(null,null,1,a),a.lineEnd()),i&&dl(u,s,e,o,a),a.polygonEnd());v=a,u=c=f=null}};function x(t,e){i(t,e)&&v.point(t,e)}function k(o,a){var s=i(o,a);if(c&&f.push([o,a]),b)l=o,h=a,d=s,b=!1,s&&(v.lineStart(),v.point(o,a));else if(s&&y)v.point(o,a);else{var u=[p=Math.max(Al,Math.min(El,p)),g=Math.max(Al,Math.min(El,g))],_=[o=Math.max(Al,Math.min(El,o)),a=Math.max(Al,Math.min(El,a))];kl(u,_,t,e,n,r)?(y||(v.lineStart(),v.point(u[0],u[1])),v.point(_[0],_[1]),s||v.lineEnd(),m=!1):s&&(v.lineStart(),v.point(o,a),m=!1)}p=o,g=a,y=s}return w}}var Tl,Ml,Dl,Cl=function(){var t,e,n,r=0,i=0,o=960,a=500;return n={stream:function(n){return t&&e===n?t:t=Sl(r,i,o,a)(e=n)},extent:function(s){return arguments.length?(r=+s[0][0],i=+s[0][1],o=+s[1][0],a=+s[1][1],t=e=null,n):[[r,i],[o,a]]}}},Ol=ec(),Rl={sphere:Mc,point:Mc,lineStart:function(){Rl.point=Nl,Rl.lineEnd=Il},lineEnd:Mc,polygonStart:Mc,polygonEnd:Mc};function Il(){Rl.point=Rl.lineEnd=Mc}function Nl(t,e){Tl=t*=hc,Ml=wc(e*=hc),Dl=yc(e),Rl.point=Bl}function Bl(t,e){t*=hc;var n=wc(e*=hc),r=yc(e),i=dc(t-Tl),o=yc(i),a=r*wc(i),s=Dl*n-Ml*r*o,u=Ml*n+Dl*r*o;Ol.add(gc(kc(a*a+s*s),u)),Tl=t,Ml=n,Dl=r}var Ll=function(t){return Ol.reset(),qc(t,Rl),+Ol},Pl=[null,null],Fl={type:"LineString",coordinates:Pl},ql=function(t,e){return Pl[0]=t,Pl[1]=e,Ll(Fl)},jl={Feature:function(t,e){return zl(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r0&&(i=ql(t[o],t[o-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))oc})).map(u)).concat(x(bc(o/d)*d,i,d).filter((function(t){return dc(t%g)>oc})).map(c))}return b.lines=function(){return m().map((function(t){return{type:"LineString",coordinates:t}}))},b.outline=function(){return{type:"Polygon",coordinates:[f(r).concat(l(a).slice(1),f(n).reverse().slice(1),l(s).reverse().slice(1))]}},b.extent=function(t){return arguments.length?b.extentMajor(t).extentMinor(t):b.extentMinor()},b.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],s=+t[0][1],a=+t[1][1],r>n&&(t=r,r=n,n=t),s>a&&(t=s,s=a,a=t),b.precision(y)):[[r,s],[n,a]]},b.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],o=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),o>i&&(n=o,o=i,i=n),b.precision(y)):[[e,o],[t,i]]},b.step=function(t){return arguments.length?b.stepMajor(t).stepMinor(t):b.stepMinor()},b.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],b):[p,g]},b.stepMinor=function(t){return arguments.length?(h=+t[0],d=+t[1],b):[h,d]},b.precision=function(h){return arguments.length?(y=+h,u=Kl(o,i,90),c=Xl(e,t,y),f=Kl(s,a,90),l=Xl(r,n,y),b):y},b.extentMajor([[-180,-90+oc],[180,90-oc]]).extentMinor([[-180,-80-oc],[180,80+oc]])}function Jl(){return Zl()()}var Ql,th,eh,nh,rh=function(t,e){var n=t[0]*hc,r=t[1]*hc,i=e[0]*hc,o=e[1]*hc,a=yc(r),s=wc(r),u=yc(o),c=wc(o),f=a*yc(n),l=a*wc(n),h=u*yc(i),d=u*wc(i),p=2*Sc(kc(Tc(o-r)+a*u*Tc(i-n))),g=wc(p),y=p?function(t){var e=wc(t*=p)/g,n=wc(p-t)/g,r=n*f+e*h,i=n*l+e*d,o=n*s+e*c;return[gc(i,r)*lc,gc(o,kc(r*r+i*i))*lc]}:function(){return[n*lc,r*lc]};return y.distance=p,y},ih=function(t){return t},oh=ec(),ah=ec(),sh={point:Mc,lineStart:Mc,lineEnd:Mc,polygonStart:function(){sh.lineStart=uh,sh.lineEnd=lh},polygonEnd:function(){sh.lineStart=sh.lineEnd=sh.point=Mc,oh.add(dc(ah)),ah.reset()},result:function(){var t=oh/2;return oh.reset(),t}};function uh(){sh.point=ch}function ch(t,e){sh.point=fh,Ql=eh=t,th=nh=e}function fh(t,e){ah.add(nh*t-eh*e),eh=t,nh=e}function lh(){fh(Ql,th)}var hh=sh,dh=1/0,ph=dh,gh=-dh,yh=gh;var bh,mh,vh,_h,wh={point:function(t,e){tgh&&(gh=t);eyh&&(yh=e)},lineStart:Mc,lineEnd:Mc,polygonStart:Mc,polygonEnd:Mc,result:function(){var t=[[dh,ph],[gh,yh]];return gh=yh=-(ph=dh=1/0),t}},xh=0,kh=0,Eh=0,Ah=0,Sh=0,Th=0,Mh=0,Dh=0,Ch=0,Oh={point:Rh,lineStart:Ih,lineEnd:Lh,polygonStart:function(){Oh.lineStart=Ph,Oh.lineEnd=Fh},polygonEnd:function(){Oh.point=Rh,Oh.lineStart=Ih,Oh.lineEnd=Lh},result:function(){var t=Ch?[Mh/Ch,Dh/Ch]:Th?[Ah/Th,Sh/Th]:Eh?[xh/Eh,kh/Eh]:[NaN,NaN];return xh=kh=Eh=Ah=Sh=Th=Mh=Dh=Ch=0,t}};function Rh(t,e){xh+=t,kh+=e,++Eh}function Ih(){Oh.point=Nh}function Nh(t,e){Oh.point=Bh,Rh(vh=t,_h=e)}function Bh(t,e){var n=t-vh,r=e-_h,i=kc(n*n+r*r);Ah+=i*(vh+t)/2,Sh+=i*(_h+e)/2,Th+=i,Rh(vh=t,_h=e)}function Lh(){Oh.point=Rh}function Ph(){Oh.point=qh}function Fh(){jh(bh,mh)}function qh(t,e){Oh.point=jh,Rh(bh=vh=t,mh=_h=e)}function jh(t,e){var n=t-vh,r=e-_h,i=kc(n*n+r*r);Ah+=i*(vh+t)/2,Sh+=i*(_h+e)/2,Th+=i,Mh+=(i=_h*t-vh*e)*(vh+t),Dh+=i*(_h+e),Ch+=3*i,Rh(vh=t,_h=e)}var Uh=Oh;function zh(t){this._context=t}zh.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,fc)}},result:Mc};var Yh,Vh,Hh,$h,Gh,Wh=ec(),Kh={point:Mc,lineStart:function(){Kh.point=Xh},lineEnd:function(){Yh&&Zh(Vh,Hh),Kh.point=Mc},polygonStart:function(){Yh=!0},polygonEnd:function(){Yh=null},result:function(){var t=+Wh;return Wh.reset(),t}};function Xh(t,e){Kh.point=Zh,Vh=$h=t,Hh=Gh=e}function Zh(t,e){$h-=t,Gh-=e,Wh.add(kc($h*$h+Gh*Gh)),$h=t,Gh=e}var Jh=Kh;function Qh(){this._string=[]}function td(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}Qh.prototype={_radius:4.5,_circle:td(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=td(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}};var ed=function(t,e){var n,r,i=4.5;function o(t){return t&&("function"==typeof i&&r.pointRadius(+i.apply(this,arguments)),qc(t,n(r))),r.result()}return o.area=function(t){return qc(t,n(hh)),hh.result()},o.measure=function(t){return qc(t,n(Jh)),Jh.result()},o.bounds=function(t){return qc(t,n(wh)),wh.result()},o.centroid=function(t){return qc(t,n(Uh)),Uh.result()},o.projection=function(e){return arguments.length?(n=null==e?(t=null,ih):(t=e).stream,o):t},o.context=function(t){return arguments.length?(r=null==t?(e=null,new Qh):new zh(e=t),"function"!=typeof i&&r.pointRadius(i),o):e},o.pointRadius=function(t){return arguments.length?(i="function"==typeof t?t:(r.pointRadius(+t),+t),o):i},o.projection(t).context(e)},nd=function(t){return{stream:rd(t)}};function rd(t){return function(e){var n=new id;for(var r in t)n[r]=t[r];return n.stream=e,n}}function id(){}function od(t,e,n){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),qc(n,t.stream(wh)),e(wh.result()),null!=r&&t.clipExtent(r),t}function ad(t,e,n){return od(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],o=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),a=+e[0][0]+(r-o*(n[1][0]+n[0][0]))/2,s=+e[0][1]+(i-o*(n[1][1]+n[0][1]))/2;t.scale(150*o).translate([a,s])}),n)}function sd(t,e,n){return ad(t,[[0,0],e],n)}function ud(t,e,n){return od(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),o=(r-i*(n[1][0]+n[0][0]))/2,a=-i*n[0][1];t.scale(150*i).translate([o,a])}),n)}function cd(t,e,n){return od(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),o=-i*n[0][0],a=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([o,a])}),n)}id.prototype={constructor:id,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var fd=16,ld=yc(30*hc),hd=function(t,e){return+e?function(t,e){function n(r,i,o,a,s,u,c,f,l,h,d,p,g,y){var b=c-r,m=f-i,v=b*b+m*m;if(v>4*e&&g--){var _=a+h,w=s+d,x=u+p,k=kc(_*_+w*w+x*x),E=Sc(x/=k),A=dc(dc(x)-1)e||dc((b*D+m*C)/v-.5)>.3||a*h+s*d+u*p2?t[2]%360*hc:0,T()):[y*lc,b*lc,m*lc]},A.angle=function(t){return arguments.length?(v=t%360*hc,T()):v*lc},A.precision=function(t){return arguments.length?(a=hd(s,E=t*t),M()):kc(E)},A.fitExtent=function(t,e){return ad(A,t,e)},A.fitSize=function(t,e){return sd(A,t,e)},A.fitWidth=function(t,e){return ud(A,t,e)},A.fitHeight=function(t,e){return cd(A,t,e)},function(){return e=t.apply(this,arguments),A.invert=e.invert&&S,T()}}function md(t){var e=0,n=sc/3,r=bd(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*hc,n=t[1]*hc):[e*lc,n*lc]},i}function vd(t,e){var n=wc(t),r=(n+wc(e))/2;if(dc(r)=.12&&i<.234&&r>=-.425&&r<-.214?s:i>=.166&&i<.234&&r>=-.214&&r<-.115?u:a).invert(t)},f.stream=function(n){return t&&e===n?t:(r=[a.stream(e=n),s.stream(n),u.stream(n)],i=r.length,t={point:function(t,e){for(var n=-1;++n0?e<-uc+oc&&(e=-uc+oc):e>uc-oc&&(e=uc-oc);var n=i/_c(Rd(e),r);return[n*wc(r*t),i-n*yc(r*t)]}return o.invert=function(t,e){var n=i-e,o=xc(r)*kc(t*t+n*n);return[gc(t,dc(n))/r*xc(n),2*pc(_c(i/o,1/r))-uc]},o}var Nd=function(){return md(Id).scale(109.5).parallels([30,30])};function Bd(t,e){return[t,e]}Bd.invert=Bd;var Ld=function(){return yd(Bd).scale(152.63)};function Pd(t,e){var n=yc(t),r=t===e?wc(t):(n-yc(e))/(e-t),i=n/r+t;if(dc(r)oc&&--i>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]};var Zd=function(){return yd(Xd).scale(175.295)};function Jd(t,e){return[yc(e)*wc(t),wc(e)]}Jd.invert=Ed(Sc);var Qd=function(){return yd(Jd).scale(249.5).clipAngle(90+oc)};function tp(t,e){var n=yc(e),r=1+yc(t)*n;return[n*wc(t)/r,wc(e)/r]}tp.invert=Ed((function(t){return 2*pc(t)}));var ep=function(){return yd(tp).scale(250).clipAngle(142)};function np(t,e){return[vc(Ec((uc+e)/2)),-t]}np.invert=function(t,e){return[-e,2*pc(mc(t))-uc]};var rp=function(){var t=Od(np),e=t.center,n=t.rotate;return t.center=function(t){return arguments.length?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)};function ip(t,e){return t.parent===e.parent?1:2}function op(t,e){return t+e.x}function ap(t,e){return Math.max(t,e.y)}var sp=function(){var t=ip,e=1,n=1,r=!1;function i(i){var o,a=0;i.eachAfter((function(e){var n=e.children;n?(e.x=function(t){return t.reduce(op,0)/t.length}(n),e.y=function(t){return 1+t.reduce(ap,0)}(n)):(e.x=o?a+=t(e,o):0,e.y=0,o=e)}));var s=function(t){for(var e;e=t.children;)t=e[0];return t}(i),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(i),c=s.x-t(s,u)/2,f=u.x+t(u,s)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e,t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-c)/(f-c)*e,t.y=(1-(i.y?t.y/i.y:1))*n})}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i};function up(t){var e=0,n=t.children,r=n&&n.length;if(r)for(;--r>=0;)e+=n[r].value;else e=1;t.value=e}function cp(t,e){var n,r,i,o,a,s=new dp(t),u=+t.value&&(s.value=t.value),c=[s];for(null==e&&(e=fp);n=c.pop();)if(u&&(n.value=+n.data.value),(i=e(n.data))&&(a=i.length))for(n.children=new Array(a),o=a-1;o>=0;--o)c.push(r=n.children[o]=new dp(i[o])),r.parent=n,r.depth=n.depth+1;return s.eachBefore(hp)}function fp(t){return t.children}function lp(t){t.data=t.data.data}function hp(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function dp(t){this.data=t,this.depth=this.height=0,this.parent=null}dp.prototype=cp.prototype={constructor:dp,count:function(){return this.eachAfter(up)},each:function(t){var e,n,r,i,o=this,a=[o];do{for(e=a.reverse(),a=[];o=e.pop();)if(t(o),n=o.children)for(r=0,i=n.length;r=0;--n)i.push(e[n]);return this},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;t=n.pop(),e=r.pop();for(;t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return cp(this).eachBefore(lp)}};var pp=Array.prototype.slice;var gp=function(t){for(var e,n,r=0,i=(t=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t}(pp.call(t))).length,o=[];r0&&n*n>r*r+i*i}function vp(t,e){for(var n=0;n(a*=a)?(r=(c+a-i)/(2*c),o=Math.sqrt(Math.max(0,a/c-r*r)),n.x=t.x-r*s-o*u,n.y=t.y-r*u+o*s):(r=(c+i-a)/(2*c),o=Math.sqrt(Math.max(0,i/c-r*r)),n.x=e.x+r*s-o*u,n.y=e.y+r*u+o*s)):(n.x=e.x+n.r,n.y=e.y)}function Ep(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function Ap(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,o=(e.y*n.r+n.y*e.r)/r;return i*i+o*o}function Sp(t){this._=t,this.next=null,this.previous=null}function Tp(t){if(!(i=t.length))return 0;var e,n,r,i,o,a,s,u,c,f,l;if((e=t[0]).x=0,e.y=0,!(i>1))return e.r;if(n=t[1],e.x=-n.r,n.x=e.r,n.y=0,!(i>2))return e.r+n.r;kp(n,e,r=t[2]),e=new Sp(e),n=new Sp(n),r=new Sp(r),e.next=r.previous=n,n.next=e.previous=r,r.next=n.previous=e;t:for(s=3;s0)throw new Error("cycle");return o}return n.id=function(e){return arguments.length?(t=Cp(e),n):t},n.parentId=function(t){return arguments.length?(e=Cp(t),n):e},n};function Gp(t,e){return t.parent===e.parent?1:2}function Wp(t){var e=t.children;return e?e[0]:t.t}function Kp(t){var e=t.children;return e?e[e.length-1]:t.t}function Xp(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function Zp(t,e,n){return t.a.parent===e.parent?t.a:n}function Jp(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}Jp.prototype=Object.create(dp.prototype);var Qp=function(){var t=Gp,e=1,n=1,r=null;function i(i){var u=function(t){for(var e,n,r,i,o,a=new Jp(t,0),s=[a];e=s.pop();)if(r=e._.children)for(e.children=new Array(o=r.length),i=o-1;i>=0;--i)s.push(n=e.children[i]=new Jp(r[i],i)),n.parent=e;return(a.parent=new Jp(null,0)).children=[a],a}(i);if(u.eachAfter(o),u.parent.m=-u.z,u.eachBefore(a),r)i.eachBefore(s);else{var c=i,f=i,l=i;i.eachBefore((function(t){t.xf.x&&(f=t),t.depth>l.depth&&(l=t)}));var h=c===f?1:t(c,f)/2,d=h-c.x,p=e/(f.x+h+d),g=n/(l.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p,t.y=t.depth*g}))}return i}function o(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,o=i.length;--o>=0;)(e=i[o]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var o=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-o):e.z=o}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,o=e,a=e,s=n,u=o.parent.children[0],c=o.m,f=a.m,l=s.m,h=u.m;s=Kp(s),o=Wp(o),s&&o;)u=Wp(u),(a=Kp(a)).a=e,(i=s.z+l-o.z-c+t(s._,o._))>0&&(Xp(Zp(s,e,r),e,i),c+=i,f+=i),l+=s.m,c+=o.m,h+=u.m,f+=a.m;s&&!Kp(a)&&(a.t=s,a.m+=l-f),o&&!Wp(u)&&(u.t=o,u.m+=c-h,r=e)}return r}(e,i,e.parent.A||r[0])}function a(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i},tg=function(t,e,n,r,i){for(var o,a=t.children,s=-1,u=a.length,c=t.value&&(i-n)/t.value;++sh&&(h=s),y=f*f*g,(d=Math.max(h/y,y/l))>p){f-=s;break}p=d}b.push(a={value:f,dice:u1?e:1)},n}(eg),ig=function(){var t=rg,e=!1,n=1,r=1,i=[0],o=Op,a=Op,s=Op,u=Op,c=Op;function f(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(l),i=[0],e&&t.eachBefore(Fp),t}function l(e){var n=i[e.depth],r=e.x0+n,f=e.y0+n,l=e.x1-n,h=e.y1-n;l=n-1){var f=s[e];return f.x0=i,f.y0=o,f.x1=a,void(f.y1=u)}var l=c[e],h=r/2+l,d=e+1,p=n-1;for(;d>>1;c[g]u-o){var m=(i*b+a*y)/r;t(e,d,y,i,o,m,u),t(d,n,b,m,o,a,u)}else{var v=(o*b+u*y)/r;t(e,d,y,i,o,a,v),t(d,n,b,i,v,a,u)}}(0,u,t.value,e,n,r,i)},ag=function(t,e,n,r,i){(1&t.depth?tg:qp)(t,e,n,r,i)},sg=function t(e){function n(t,n,r,i,o){if((a=t._squarify)&&a.ratio===e)for(var a,s,u,c,f,l=-1,h=a.length,d=t.value;++l1?e:1)},n}(eg),ug=function(t){for(var e,n=-1,r=t.length,i=t[r-1],o=0;++n1&&fg(t[n[r-2]],t[n[r-1]],t[i])<=0;)--r;n[r++]=i}return n.slice(0,r)}var dg=function(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e=0;--e)c.push(t[r[o[e]][2]]);for(e=+s;es!=c>s&&a<(u-n)*(s-r)/(c-r)+n&&(f=!f),u=n,c=r;return f},gg=function(t){for(var e,n,r=-1,i=t.length,o=t[i-1],a=o[0],s=o[1],u=0;++r1);return t+n*o*Math.sqrt(-2*Math.log(i)/i)}}return n.source=t,n}(yg),vg=function t(e){function n(){var t=mg.source(e).apply(this,arguments);return function(){return Math.exp(t())}}return n.source=t,n}(yg),_g=function t(e){function n(t){return function(){for(var n=0,r=0;rr&&(e=n,n=r,r=e),function(t){return Math.max(n,Math.min(r,t))}}function Fg(t,e,n){var r=t[0],i=t[1],o=e[0],a=e[1];return i2?qg:Fg,i=o=null,l}function l(e){return isNaN(e=+e)?n:(i||(i=r(a.map(t),s,u)))(t(c(e)))}return l.invert=function(n){return c(e((o||(o=r(s,a.map(t),Un)))(n)))},l.domain=function(t){return arguments.length?(a=Sg.call(t,Ig),c===Bg||(c=Pg(a)),f()):a.slice()},l.range=function(t){return arguments.length?(s=Tg.call(t),f()):s.slice()},l.rangeRound=function(t){return s=Tg.call(t),u=Qn,f()},l.clamp=function(t){return arguments.length?(c=t?Pg(a):Bg,l):c!==Bg},l.interpolate=function(t){return arguments.length?(u=t,f()):u},l.unknown=function(t){return arguments.length?(n=t,l):n},function(n,r){return t=n,e=r,f()}}function zg(t,e){return Ug()(t,e)}var Yg=function(t,e,n,r){var i,o=M(t,e,n);switch((r=Fu(null==r?",f":r)).type){case"s":var a=Math.max(Math.abs(t),Math.abs(e));return null!=r.precision||isNaN(i=Qu(o,a))||(r.precision=i),Yu(r,a);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(i=tc(o,Math.max(Math.abs(t),Math.abs(e))))||(r.precision=i-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(i=Ju(o))||(r.precision=i-2*("%"===r.type))}return zu(r)};function Vg(t){var e=t.domain;return t.ticks=function(t){var n=e();return S(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){var r=e();return Yg(r[0],r[r.length-1],null==t?10:t,n)},t.nice=function(n){null==n&&(n=10);var r,i=e(),o=0,a=i.length-1,s=i[o],u=i[a];return u0?r=T(s=Math.floor(s/r)*r,u=Math.ceil(u/r)*r,n):r<0&&(r=T(s=Math.ceil(s*r)/r,u=Math.floor(u*r)/r,n)),r>0?(i[o]=Math.floor(s/r)*r,i[a]=Math.ceil(u/r)*r,e(i)):r<0&&(i[o]=Math.ceil(s*r)/r,i[a]=Math.floor(u*r)/r,e(i)),t},t}function Hg(){var t=zg(Bg,Bg);return t.copy=function(){return jg(t,Hg())},kg.apply(t,arguments),Vg(t)}function $g(t){var e;function n(t){return isNaN(t=+t)?e:t}return n.invert=n,n.domain=n.range=function(e){return arguments.length?(t=Sg.call(e,Ig),n):t.slice()},n.unknown=function(t){return arguments.length?(e=t,n):e},n.copy=function(){return $g(t).unknown(e)},t=arguments.length?Sg.call(t,Ig):[0,1],Vg(n)}var Gg=function(t,e){var n,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a0){for(;hu)break;g.push(l)}}else for(;h=1;--f)if(!((l=c*f)u)break;g.push(l)}}else g=S(h,d,Math.min(d-h,p)).map(n);return r?g.reverse():g},r.tickFormat=function(t,i){if(null==i&&(i=10===o?".0e":","),"function"!=typeof i&&(i=zu(i)),t===1/0)return i;null==t&&(t=10);var a=Math.max(1,o*t/r.ticks().length);return function(t){var r=t/n(Math.round(e(t)));return r*o0?i[r-1]:e[0],r=r?[i[r-1],n]:[i[a-1],i[a]]},a.unknown=function(e){return arguments.length?(t=e,a):a},a.thresholds=function(){return i.slice()},a.copy=function(){return dy().domain([e,n]).range(o).unknown(t)},kg.apply(Vg(a),arguments)}function py(){var t,e=[.5],n=[0,1],r=1;function i(i){return i<=i?n[u(e,i,0,r)]:t}return i.domain=function(t){return arguments.length?(e=Tg.call(t),r=Math.min(e.length,n.length-1),i):e.slice()},i.range=function(t){return arguments.length?(n=Tg.call(t),r=Math.min(e.length,n.length-1),i):n.slice()},i.invertExtent=function(t){var r=n.indexOf(t);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return py().domain(e).range(n).unknown(t)},kg.apply(i,arguments)}var gy=new Date,yy=new Date;function by(t,e,n,r){function i(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return i.floor=function(e){return t(e=new Date(+e)),e},i.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},i.round=function(t){var e=i(t),n=i.ceil(t);return t-e0))return s;do{s.push(a=new Date(+n)),e(n,o),t(n)}while(a=e)for(;t(e),!n(e);)e.setTime(e-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););}))},n&&(i.count=function(e,r){return gy.setTime(+e),yy.setTime(+r),t(gy),t(yy),Math.floor(n(gy,yy))},i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?i.filter(r?function(e){return r(e)%t==0}:function(e){return i.count(0,e)%t==0}):i:null}),i}var my=by((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));my.every=function(t){return isFinite(t=Math.floor(t))&&t>0?by((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)})):null};var vy=my,_y=my.range,wy=by((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),xy=wy,ky=wy.range,Ey=6e4,Ay=6048e5;function Sy(t){return by((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ey)/Ay}))}var Ty=Sy(0),My=Sy(1),Dy=Sy(2),Cy=Sy(3),Oy=Sy(4),Ry=Sy(5),Iy=Sy(6),Ny=Ty.range,By=My.range,Ly=Dy.range,Py=Cy.range,Fy=Oy.range,qy=Ry.range,jy=Iy.range,Uy=by((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ey)/864e5}),(function(t){return t.getDate()-1})),zy=Uy,Yy=Uy.range,Vy=by((function(t){t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds()-t.getMinutes()*Ey)}),(function(t,e){t.setTime(+t+36e5*e)}),(function(t,e){return(e-t)/36e5}),(function(t){return t.getHours()})),Hy=Vy,$y=Vy.range,Gy=by((function(t){t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds())}),(function(t,e){t.setTime(+t+e*Ey)}),(function(t,e){return(e-t)/Ey}),(function(t){return t.getMinutes()})),Wy=Gy,Ky=Gy.range,Xy=by((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+1e3*e)}),(function(t,e){return(e-t)/1e3}),(function(t){return t.getUTCSeconds()})),Zy=Xy,Jy=Xy.range,Qy=by((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));Qy.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?by((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t})):Qy:null};var tb=Qy,eb=Qy.range;function nb(t){return by((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/Ay}))}var rb=nb(0),ib=nb(1),ob=nb(2),ab=nb(3),sb=nb(4),ub=nb(5),cb=nb(6),fb=rb.range,lb=ib.range,hb=ob.range,db=ab.range,pb=sb.range,gb=ub.range,yb=cb.range,bb=by((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/864e5}),(function(t){return t.getUTCDate()-1})),mb=bb,vb=bb.range,_b=by((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));_b.every=function(t){return isFinite(t=Math.floor(t))&&t>0?by((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null};var wb=_b,xb=_b.range;function kb(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function Eb(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Ab(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function Sb(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,s=t.months,u=t.shortMonths,c=Fb(i),f=qb(i),l=Fb(o),h=qb(o),d=Fb(a),p=qb(a),g=Fb(s),y=qb(s),b=Fb(u),m=qb(u),v={a:function(t){return a[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return u[t.getMonth()]},B:function(t){return s[t.getMonth()]},c:null,d:om,e:om,f:fm,H:am,I:sm,j:um,L:cm,m:lm,M:hm,p:function(t){return i[+(t.getHours()>=12)]},Q:jm,s:Um,S:dm,u:pm,U:gm,V:ym,w:bm,W:mm,x:null,X:null,y:vm,Y:_m,Z:wm,"%":qm},_={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return u[t.getUTCMonth()]},B:function(t){return s[t.getUTCMonth()]},c:null,d:xm,e:xm,f:Tm,H:km,I:Em,j:Am,L:Sm,m:Mm,M:Dm,p:function(t){return i[+(t.getUTCHours()>=12)]},Q:jm,s:Um,S:Cm,u:Om,U:Rm,V:Im,w:Nm,W:Bm,x:null,X:null,y:Lm,Y:Pm,Z:Fm,"%":qm},w={a:function(t,e,n){var r=d.exec(e.slice(n));return r?(t.w=p[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=l.exec(e.slice(n));return r?(t.w=h[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=b.exec(e.slice(n));return r?(t.m=m[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=y[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,n,r){return E(t,e,n,r)},d:Kb,e:Kb,f:em,H:Zb,I:Zb,j:Xb,L:tm,m:Wb,M:Jb,p:function(t,e,n){var r=c.exec(e.slice(n));return r?(t.p=f[r[0].toLowerCase()],n+r[0].length):-1},Q:rm,s:im,S:Qb,u:Ub,U:zb,V:Yb,w:jb,W:Vb,x:function(t,e,r){return E(t,n,e,r)},X:function(t,e,n){return E(t,r,e,n)},y:$b,Y:Hb,Z:Gb,"%":nm};function x(t,e){return function(n){var r,i,o,a=[],s=-1,u=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in o||(o.w=1),"Z"in o?(i=(r=Eb(Ab(o.y))).getUTCDay(),r=i>4||0===i?ib.ceil(r):ib(r),r=mb.offset(r,7*(o.V-1)),o.y=r.getUTCFullYear(),o.m=r.getUTCMonth(),o.d=r.getUTCDate()+(o.w+6)%7):(i=(r=e(Ab(o.y))).getDay(),r=i>4||0===i?My.ceil(r):My(r),r=zy.offset(r,7*(o.V-1)),o.y=r.getFullYear(),o.m=r.getMonth(),o.d=r.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),i="Z"in o?Eb(Ab(o.y)).getUTCDay():e(Ab(o.y)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(i+5)%7:o.w+7*o.U-(i+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,Eb(o)):e(o)}}function E(t,e,n,r){for(var i,o,a=0,s=e.length,u=n.length;a=u)return-1;if(37===(i=e.charCodeAt(a++))){if(i=e.charAt(a++),!(o=w[i in Rb?e.charAt(a++):i])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return(v.x=x(n,v),v.X=x(r,v),v.c=x(e,v),_.x=x(n,_),_.X=x(r,_),_.c=x(e,_),{format:function(t){var e=x(t+="",v);return e.toString=function(){return t},e},parse:function(t){var e=k(t+="",kb);return e.toString=function(){return t},e},utcFormat:function(t){var e=x(t+="",_);return e.toString=function(){return t},e},utcParse:function(t){var e=k(t,Eb);return e.toString=function(){return t},e}})}var Tb,Mb,Db,Cb,Ob,Rb={"-":"",_:" ",0:"0"},Ib=/^\s*\d+/,Nb=/^%/,Bb=/[\\^$*+?|[\]().{}]/g;function Lb(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o68?1900:2e3),n+r[0].length):-1}function Gb(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Wb(t,e,n){var r=Ib.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Kb(t,e,n){var r=Ib.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Xb(t,e,n){var r=Ib.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Zb(t,e,n){var r=Ib.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Jb(t,e,n){var r=Ib.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Qb(t,e,n){var r=Ib.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function tm(t,e,n){var r=Ib.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function em(t,e,n){var r=Ib.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function nm(t,e,n){var r=Nb.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function rm(t,e,n){var r=Ib.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function im(t,e,n){var r=Ib.exec(e.slice(n));return r?(t.Q=1e3*+r[0],n+r[0].length):-1}function om(t,e){return Lb(t.getDate(),e,2)}function am(t,e){return Lb(t.getHours(),e,2)}function sm(t,e){return Lb(t.getHours()%12||12,e,2)}function um(t,e){return Lb(1+zy.count(vy(t),t),e,3)}function cm(t,e){return Lb(t.getMilliseconds(),e,3)}function fm(t,e){return cm(t,e)+"000"}function lm(t,e){return Lb(t.getMonth()+1,e,2)}function hm(t,e){return Lb(t.getMinutes(),e,2)}function dm(t,e){return Lb(t.getSeconds(),e,2)}function pm(t){var e=t.getDay();return 0===e?7:e}function gm(t,e){return Lb(Ty.count(vy(t),t),e,2)}function ym(t,e){var n=t.getDay();return t=n>=4||0===n?Oy(t):Oy.ceil(t),Lb(Oy.count(vy(t),t)+(4===vy(t).getDay()),e,2)}function bm(t){return t.getDay()}function mm(t,e){return Lb(My.count(vy(t),t),e,2)}function vm(t,e){return Lb(t.getFullYear()%100,e,2)}function _m(t,e){return Lb(t.getFullYear()%1e4,e,4)}function wm(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Lb(e/60|0,"0",2)+Lb(e%60,"0",2)}function xm(t,e){return Lb(t.getUTCDate(),e,2)}function km(t,e){return Lb(t.getUTCHours(),e,2)}function Em(t,e){return Lb(t.getUTCHours()%12||12,e,2)}function Am(t,e){return Lb(1+mb.count(wb(t),t),e,3)}function Sm(t,e){return Lb(t.getUTCMilliseconds(),e,3)}function Tm(t,e){return Sm(t,e)+"000"}function Mm(t,e){return Lb(t.getUTCMonth()+1,e,2)}function Dm(t,e){return Lb(t.getUTCMinutes(),e,2)}function Cm(t,e){return Lb(t.getUTCSeconds(),e,2)}function Om(t){var e=t.getUTCDay();return 0===e?7:e}function Rm(t,e){return Lb(rb.count(wb(t),t),e,2)}function Im(t,e){var n=t.getUTCDay();return t=n>=4||0===n?sb(t):sb.ceil(t),Lb(sb.count(wb(t),t)+(4===wb(t).getUTCDay()),e,2)}function Nm(t){return t.getUTCDay()}function Bm(t,e){return Lb(ib.count(wb(t),t),e,2)}function Lm(t,e){return Lb(t.getUTCFullYear()%100,e,2)}function Pm(t,e){return Lb(t.getUTCFullYear()%1e4,e,4)}function Fm(){return"+0000"}function qm(){return"%"}function jm(t){return+t}function Um(t){return Math.floor(+t/1e3)}function zm(t){return Tb=Sb(t),Mb=Tb.format,Db=Tb.parse,Cb=Tb.utcFormat,Ob=Tb.utcParse,Tb}zm({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var Ym=Date.prototype.toISOString?function(t){return t.toISOString()}:Cb("%Y-%m-%dT%H:%M:%S.%LZ");var Vm=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:Ob("%Y-%m-%dT%H:%M:%S.%LZ"),Hm=1e3,$m=60*Hm,Gm=60*$m,Wm=24*Gm,Km=7*Wm,Xm=30*Wm,Zm=365*Wm;function Jm(t){return new Date(t)}function Qm(t){return t instanceof Date?+t:+new Date(+t)}function tv(t,e,n,r,o,a,s,u,c){var f=zg(Bg,Bg),l=f.invert,h=f.domain,d=c(".%L"),p=c(":%S"),g=c("%I:%M"),y=c("%I %p"),b=c("%a %d"),m=c("%b %d"),v=c("%B"),_=c("%Y"),w=[[s,1,Hm],[s,5,5*Hm],[s,15,15*Hm],[s,30,30*Hm],[a,1,$m],[a,5,5*$m],[a,15,15*$m],[a,30,30*$m],[o,1,Gm],[o,3,3*Gm],[o,6,6*Gm],[o,12,12*Gm],[r,1,Wm],[r,2,2*Wm],[n,1,Km],[e,1,Xm],[e,3,3*Xm],[t,1,Zm]];function x(i){return(s(i)1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return z_.h=360*t-100,z_.s=1.5-1.5*e,z_.l=.8-.9*e,z_+""},V_=bn(),H_=Math.PI/3,$_=2*Math.PI/3,G_=function(t){var e;return t=(.5-t)*Math.PI,V_.r=255*(e=Math.sin(t))*e,V_.g=255*(e=Math.sin(t+H_))*e,V_.b=255*(e=Math.sin(t+$_))*e,V_+""},W_=function(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-14825.05*t)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+707.56*t)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-6838.66*t)))))))+")"};function K_(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var X_=K_(Sv("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Z_=K_(Sv("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),J_=K_(Sv("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Q_=K_(Sv("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921")),tw=function(t){return function(){return t}},ew=Math.abs,nw=Math.atan2,rw=Math.cos,iw=Math.max,ow=Math.min,aw=Math.sin,sw=Math.sqrt,uw=1e-12,cw=Math.PI,fw=cw/2,lw=2*cw;function hw(t){return t>=1?fw:t<=-1?-fw:Math.asin(t)}function dw(t){return t.innerRadius}function pw(t){return t.outerRadius}function gw(t){return t.startAngle}function yw(t){return t.endAngle}function bw(t){return t&&t.padAngle}function mw(t,e,n,r,i,o,a){var s=t-n,u=e-r,c=(a?o:-o)/sw(s*s+u*u),f=c*u,l=-c*s,h=t+f,d=e+l,p=n+f,g=r+l,y=(h+p)/2,b=(d+g)/2,m=p-h,v=g-d,_=m*m+v*v,w=i-o,x=h*g-p*d,k=(v<0?-1:1)*sw(iw(0,w*w*_-x*x)),E=(x*v-m*k)/_,A=(-x*m-v*k)/_,S=(x*v+m*k)/_,T=(-x*m+v*k)/_,M=E-y,D=A-b,C=S-y,O=T-b;return M*M+D*D>C*C+O*O&&(E=S,A=T),{cx:E,cy:A,x01:-f,y01:-l,x11:E*(i/w-1),y11:A*(i/w-1)}}var vw=function(){var t=dw,e=pw,n=tw(0),r=null,i=gw,o=yw,a=bw,s=null;function u(){var u,c,f,l=+t.apply(this,arguments),h=+e.apply(this,arguments),d=i.apply(this,arguments)-fw,p=o.apply(this,arguments)-fw,g=ew(p-d),y=p>d;if(s||(s=u=qa()),huw)if(g>lw-uw)s.moveTo(h*rw(d),h*aw(d)),s.arc(0,0,h,d,p,!y),l>uw&&(s.moveTo(l*rw(p),l*aw(p)),s.arc(0,0,l,p,d,y));else{var b,m,v=d,_=p,w=d,x=p,k=g,E=g,A=a.apply(this,arguments)/2,S=A>uw&&(r?+r.apply(this,arguments):sw(l*l+h*h)),T=ow(ew(h-l)/2,+n.apply(this,arguments)),M=T,D=T;if(S>uw){var C=hw(S/l*aw(A)),O=hw(S/h*aw(A));(k-=2*C)>uw?(w+=C*=y?1:-1,x-=C):(k=0,w=x=(d+p)/2),(E-=2*O)>uw?(v+=O*=y?1:-1,_-=O):(E=0,v=_=(d+p)/2)}var R=h*rw(v),I=h*aw(v),N=l*rw(x),B=l*aw(x);if(T>uw){var L,P=h*rw(_),F=h*aw(_),q=l*rw(w),j=l*aw(w);if(g1?0:f<-1?cw:Math.acos(f))/2),$=sw(L[0]*L[0]+L[1]*L[1]);M=ow(T,(l-$)/(H-1)),D=ow(T,(h-$)/(H+1))}}E>uw?D>uw?(b=mw(q,j,R,I,h,D,y),m=mw(P,F,N,B,h,D,y),s.moveTo(b.cx+b.x01,b.cy+b.y01),Duw&&k>uw?M>uw?(b=mw(N,B,P,F,l,-M,y),m=mw(R,I,q,j,l,-M,y),s.lineTo(b.cx+b.x01,b.cy+b.y01),M=f;--l)s.point(y[l],b[l]);s.lineEnd(),s.areaEnd()}g&&(y[c]=+t(h,c,u),b[c]=+n(h,c,u),s.point(e?+e(h,c,u):y[c],r?+r(h,c,u):b[c]))}if(d)return s=null,d+""||null}function c(){return Ew().defined(i).curve(a).context(o)}return u.x=function(n){return arguments.length?(t="function"==typeof n?n:tw(+n),e=null,u):t},u.x0=function(e){return arguments.length?(t="function"==typeof e?e:tw(+e),u):t},u.x1=function(t){return arguments.length?(e=null==t?null:"function"==typeof t?t:tw(+t),u):e},u.y=function(t){return arguments.length?(n="function"==typeof t?t:tw(+t),r=null,u):n},u.y0=function(t){return arguments.length?(n="function"==typeof t?t:tw(+t),u):n},u.y1=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:tw(+t),u):r},u.lineX0=u.lineY0=function(){return c().x(t).y(n)},u.lineY1=function(){return c().x(t).y(r)},u.lineX1=function(){return c().x(e).y(n)},u.defined=function(t){return arguments.length?(i="function"==typeof t?t:tw(!!t),u):i},u.curve=function(t){return arguments.length?(a=t,null!=o&&(s=a(o)),u):a},u.context=function(t){return arguments.length?(null==t?o=s=null:s=a(o=t),u):o},u},Sw=function(t,e){return et?1:e>=t?0:NaN},Tw=function(t){return t},Mw=function(){var t=Tw,e=Sw,n=null,r=tw(0),i=tw(lw),o=tw(0);function a(a){var s,u,c,f,l,h=a.length,d=0,p=new Array(h),g=new Array(h),y=+r.apply(this,arguments),b=Math.min(lw,Math.max(-lw,i.apply(this,arguments)-y)),m=Math.min(Math.abs(b)/h,o.apply(this,arguments)),v=m*(b<0?-1:1);for(s=0;s0&&(d+=l);for(null!=e?p.sort((function(t,n){return e(g[t],g[n])})):null!=n&&p.sort((function(t,e){return n(a[t],a[e])})),s=0,c=d?(b-h*v)/d:0;s0?l*c:0)+v,g[u]={data:a[u],index:s,value:l,startAngle:y,endAngle:f,padAngle:m};return g}return a.value=function(e){return arguments.length?(t="function"==typeof e?e:tw(+e),a):t},a.sortValues=function(t){return arguments.length?(e=t,n=null,a):e},a.sort=function(t){return arguments.length?(n=t,e=null,a):n},a.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:tw(+t),a):r},a.endAngle=function(t){return arguments.length?(i="function"==typeof t?t:tw(+t),a):i},a.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:tw(+t),a):o},a},Dw=Ow(ww);function Cw(t){this._curve=t}function Ow(t){function e(e){return new Cw(t(e))}return e._curve=t,e}function Rw(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(Ow(t)):e()._curve},t}Cw.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};var Iw=function(){return Rw(Ew().curve(Dw))},Nw=function(){var t=Aw().curve(Dw),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,o=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return Rw(n())},delete t.lineX0,t.lineEndAngle=function(){return Rw(r())},delete t.lineX1,t.lineInnerRadius=function(){return Rw(i())},delete t.lineY0,t.lineOuterRadius=function(){return Rw(o())},delete t.lineY1,t.curve=function(t){return arguments.length?e(Ow(t)):e()._curve},t},Bw=function(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]},Lw=Array.prototype.slice;function Pw(t){return t.source}function Fw(t){return t.target}function qw(t){var e=Pw,n=Fw,r=xw,i=kw,o=null;function a(){var a,s=Lw.call(arguments),u=e.apply(this,s),c=n.apply(this,s);if(o||(o=a=qa()),t(o,+r.apply(this,(s[0]=u,s)),+i.apply(this,s),+r.apply(this,(s[0]=c,s)),+i.apply(this,s)),a)return o=null,a+""||null}return a.source=function(t){return arguments.length?(e=t,a):e},a.target=function(t){return arguments.length?(n=t,a):n},a.x=function(t){return arguments.length?(r="function"==typeof t?t:tw(+t),a):r},a.y=function(t){return arguments.length?(i="function"==typeof t?t:tw(+t),a):i},a.context=function(t){return arguments.length?(o=null==t?null:t,a):o},a}function jw(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function Uw(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e,n=(n+i)/2,r,n,r,i)}function zw(t,e,n,r,i){var o=Bw(e,n),a=Bw(e,n=(n+i)/2),s=Bw(r,n),u=Bw(r,i);t.moveTo(o[0],o[1]),t.bezierCurveTo(a[0],a[1],s[0],s[1],u[0],u[1])}function Yw(){return qw(jw)}function Vw(){return qw(Uw)}function Hw(){var t=qw(zw);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t}var $w={draw:function(t,e){var n=Math.sqrt(e/cw);t.moveTo(n,0),t.arc(0,0,n,0,lw)}},Gw={draw:function(t,e){var n=Math.sqrt(e/5)/2;t.moveTo(-3*n,-n),t.lineTo(-n,-n),t.lineTo(-n,-3*n),t.lineTo(n,-3*n),t.lineTo(n,-n),t.lineTo(3*n,-n),t.lineTo(3*n,n),t.lineTo(n,n),t.lineTo(n,3*n),t.lineTo(-n,3*n),t.lineTo(-n,n),t.lineTo(-3*n,n),t.closePath()}},Ww=Math.sqrt(1/3),Kw=2*Ww,Xw={draw:function(t,e){var n=Math.sqrt(e/Kw),r=n*Ww;t.moveTo(0,-n),t.lineTo(r,0),t.lineTo(0,n),t.lineTo(-r,0),t.closePath()}},Zw=Math.sin(cw/10)/Math.sin(7*cw/10),Jw=Math.sin(lw/10)*Zw,Qw=-Math.cos(lw/10)*Zw,tx={draw:function(t,e){var n=Math.sqrt(.8908130915292852*e),r=Jw*n,i=Qw*n;t.moveTo(0,-n),t.lineTo(r,i);for(var o=1;o<5;++o){var a=lw*o/5,s=Math.cos(a),u=Math.sin(a);t.lineTo(u*n,-s*n),t.lineTo(s*r-u*i,u*r+s*i)}t.closePath()}},ex={draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}},nx=Math.sqrt(3),rx={draw:function(t,e){var n=-Math.sqrt(e/(3*nx));t.moveTo(0,2*n),t.lineTo(-nx*n,-n),t.lineTo(nx*n,-n),t.closePath()}},ix=Math.sqrt(3)/2,ox=1/Math.sqrt(12),ax=3*(ox/2+1),sx={draw:function(t,e){var n=Math.sqrt(e/ax),r=n/2,i=n*ox,o=r,a=n*ox+n,s=-o,u=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(s,u),t.lineTo(-.5*r-ix*i,ix*r+-.5*i),t.lineTo(-.5*o-ix*a,ix*o+-.5*a),t.lineTo(-.5*s-ix*u,ix*s+-.5*u),t.lineTo(-.5*r+ix*i,-.5*i-ix*r),t.lineTo(-.5*o+ix*a,-.5*a-ix*o),t.lineTo(-.5*s+ix*u,-.5*u-ix*s),t.closePath()}},ux=[$w,Gw,Xw,ex,tx,rx,sx],cx=function(){var t=tw($w),e=tw(64),n=null;function r(){var r;if(n||(n=r=qa()),t.apply(this,arguments).draw(n,+e.apply(this,arguments)),r)return n=null,r+""||null}return r.type=function(e){return arguments.length?(t="function"==typeof e?e:tw(e),r):t},r.size=function(t){return arguments.length?(e="function"==typeof t?t:tw(+t),r):e},r.context=function(t){return arguments.length?(n=null==t?null:t,r):n},r},fx=function(){};function lx(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function hx(t){this._context=t}hx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:lx(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:lx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var dx=function(t){return new hx(t)};function px(t){this._context=t}px.prototype={areaStart:fx,areaEnd:fx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:lx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var gx=function(t){return new px(t)};function yx(t){this._context=t}yx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:lx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var bx=function(t){return new yx(t)};function mx(t,e){this._basis=new hx(t),this._beta=e}mx.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0)for(var r,i=t[0],o=e[0],a=t[n]-i,s=e[n]-o,u=-1;++u<=n;)r=u/n,this._basis.point(this._beta*t[u]+(1-this._beta)*(i+r*a),this._beta*e[u]+(1-this._beta)*(o+r*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var vx=function t(e){function n(t){return 1===e?new hx(t):new mx(t,e)}return n.beta=function(e){return t(+e)},n}(.85);function _x(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function wx(t,e){this._context=t,this._k=(1-e)/6}wx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:_x(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:_x(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xx=function t(e){function n(t){return new wx(t,e)}return n.tension=function(e){return t(+e)},n}(0);function kx(t,e){this._context=t,this._k=(1-e)/6}kx.prototype={areaStart:fx,areaEnd:fx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:_x(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Ex=function t(e){function n(t){return new kx(t,e)}return n.tension=function(e){return t(+e)},n}(0);function Ax(t,e){this._context=t,this._k=(1-e)/6}Ax.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:_x(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Sx=function t(e){function n(t){return new Ax(t,e)}return n.tension=function(e){return t(+e)},n}(0);function Tx(t,e,n){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>uw){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>uw){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*c+t._x1*t._l23_2a-e*t._l12_2a)/f,a=(a*c+t._y1*t._l23_2a-n*t._l12_2a)/f}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function Mx(t,e){this._context=t,this._alpha=e}Mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Tx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Dx=function t(e){function n(t){return e?new Mx(t,e):new wx(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function Cx(t,e){this._context=t,this._alpha=e}Cx.prototype={areaStart:fx,areaEnd:fx,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Tx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Ox=function t(e){function n(t){return e?new Cx(t,e):new kx(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function Rx(t,e){this._context=t,this._alpha=e}Rx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Tx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Ix=function t(e){function n(t){return e?new Rx(t,e):new Ax(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function Nx(t){this._context=t}Nx.prototype={areaStart:fx,areaEnd:fx,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}};var Bx=function(t){return new Nx(t)};function Lx(t){return t<0?-1:1}function Px(t,e,n){var r=t._x1-t._x0,i=e-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(n-t._y1)/(i||r<0&&-0),s=(o*i+a*r)/(r+i);return(Lx(o)+Lx(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(s))||0}function Fx(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function qx(t,e,n){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,s=(o-r)/3;t._context.bezierCurveTo(r+s,i+s*e,o-s,a-s*n,o,a)}function jx(t){this._context=t}function Ux(t){this._context=new zx(t)}function zx(t){this._context=t}function Yx(t){return new jx(t)}function Vx(t){return new Ux(t)}function Hx(t){this._context=t}function $x(t){var e,n,r=t.length-1,i=new Array(r),o=new Array(r),a=new Array(r);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(a[e]-i[e+1])/o[e];for(o[r-1]=(t[r]+i[r-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,e)}}this._x=t,this._y=e}};var Kx=function(t){return new Wx(t,.5)};function Xx(t){return new Wx(t,0)}function Zx(t){return new Wx(t,1)}var Jx=function(t,e){if((i=t.length)>1)for(var n,r,i,o=1,a=t[e[0]],s=a.length;o=0;)n[e]=e;return n};function tk(t,e){return t[e]}var ek=function(){var t=tw([]),e=Qx,n=Jx,r=tk;function i(i){var o,a,s=t.apply(this,arguments),u=i.length,c=s.length,f=new Array(c);for(o=0;o0){for(var n,r,i,o=0,a=t[0].length;o0)for(var n,r,i,o,a,s,u=0,c=t[e[0]].length;u=0?(r[0]=o,r[1]=o+=i):i<0?(r[1]=a,r[0]=a+=i):r[0]=o},ik=function(t,e){if((n=t.length)>0){for(var n,r=0,i=t[e[0]],o=i.length;r0&&(r=(n=t[e[0]]).length)>0){for(var n,r,i,o=0,a=1;ao&&(o=e,r=n);return r}var uk=function(t){var e=t.map(ck);return Qx(t).sort((function(t,n){return e[t]-e[n]}))};function ck(t){for(var e,n=0,r=-1,i=t.length;++r0)){if(o/=h,h<0){if(o0){if(o>l)return;o>f&&(f=o)}if(o=r-u,h||!(o<0)){if(o/=h,h<0){if(o>l)return;o>f&&(f=o)}else if(h>0){if(o0)){if(o/=d,d<0){if(o0){if(o>l)return;o>f&&(f=o)}if(o=i-c,d||!(o<0)){if(o/=d,d<0){if(o>l)return;o>f&&(f=o)}else if(d>0){if(o0||l<1)||(f>0&&(t[0]=[u+f*h,c+f*d]),l<1&&(t[1]=[u+l*h,c+l*d]),!0)}}}}}function Sk(t,e,n,r,i){var o=t[1];if(o)return!0;var a,s,u=t[0],c=t.left,f=t.right,l=c[0],h=c[1],d=f[0],p=f[1],g=(l+d)/2,y=(h+p)/2;if(p===h){if(g=r)return;if(l>d){if(u){if(u[1]>=i)return}else u=[g,n];o=[g,i]}else{if(u){if(u[1]1)if(l>d){if(u){if(u[1]>=i)return}else u=[(n-s)/a,n];o=[(i-s)/a,i]}else{if(u){if(u[1]=r)return}else u=[e,a*e+s];o=[r,a*r+s]}else{if(u){if(u[0]=-Wk)){var d=u*u+c*c,p=f*f+l*l,g=(l*d-c*p)/h,y=(u*p-f*d)/h,b=Ok.pop()||new Rk;b.arc=t,b.site=i,b.x=g+a,b.y=(b.cy=y+s)+Math.sqrt(g*g+y*y),t.circle=b;for(var m=null,v=Hk._;v;)if(b.yGk)s=s.L;else{if(!((i=o-zk(s,a))>Gk)){r>-Gk?(e=s.P,n=s):i>-Gk?(e=s,n=s.N):e=n=s;break}if(!s.R){e=s;break}s=s.R}!function(t){Vk[t.index]={site:t,halfedges:[]}}(t);var u=Pk(t);if(Yk.insert(e,u),e||n){if(e===n)return Nk(e),n=Pk(e.site),Yk.insert(u,n),u.edge=n.edge=xk(e.site,u.site),Ik(e),void Ik(n);if(n){Nk(e),Nk(n);var c=e.site,f=c[0],l=c[1],h=t[0]-f,d=t[1]-l,p=n.site,g=p[0]-f,y=p[1]-l,b=2*(h*y-d*g),m=h*h+d*d,v=g*g+y*y,_=[(y*m-d*v)/b+f,(h*v-g*m)/b+l];Ek(n.edge,c,p,_),u.edge=xk(c,t,null,_),n.edge=xk(t,p,null,_),Ik(e),Ik(n)}else u.edge=xk(e.site,u.site)}}function Uk(t,e){var n=t.site,r=n[0],i=n[1],o=i-e;if(!o)return r;var a=t.P;if(!a)return-1/0;var s=(n=a.site)[0],u=n[1],c=u-e;if(!c)return s;var f=s-r,l=1/o-1/c,h=f/c;return l?(-h+Math.sqrt(h*h-2*l*(f*f/(-2*c)-u+c/2+i-o/2)))/l+r:(r+s)/2}function zk(t,e){var n=t.N;if(n)return Uk(n,e);var r=t.site;return r[1]===e?r[0]:1/0}var Yk,Vk,Hk,$k,Gk=1e-6,Wk=1e-12;function Kk(t,e){return e[1]-t[1]||e[0]-t[0]}function Xk(t,e){var n,r,i,o=t.sort(Kk).pop();for($k=[],Vk=new Array(t.length),Yk=new wk,Hk=new wk;;)if(i=Ck,o&&(!i||o[1]Gk||Math.abs(i[0][1]-i[1][1])>Gk)||delete $k[o]}(a,s,u,c),function(t,e,n,r){var i,o,a,s,u,c,f,l,h,d,p,g,y=Vk.length,b=!0;for(i=0;iGk||Math.abs(g-h)>Gk)&&(u.splice(s,0,$k.push(kk(a,d,Math.abs(p-t)Gk?[t,Math.abs(l-t)Gk?[Math.abs(h-r)Gk?[n,Math.abs(l-n)Gk?[Math.abs(h-e)=s)return null;var u=t-i.site[0],c=e-i.site[1],f=u*u+c*c;do{i=o.cells[r=a],a=null,i.halfedges.forEach((function(n){var r=o.edges[n],s=r.left;if(s!==i.site&&s||(s=r.right)){var u=t-s[0],c=e-s[1],l=u*u+c*c;lr?(r+i)/2:Math.min(0,r)||Math.max(0,i),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}var lE=function(){var t,e,n=oE,r=aE,i=fE,o=uE,a=cE,s=[0,1/0],u=[[-1/0,-1/0],[1/0,1/0]],c=250,f=ur,l=gt("start","zoom","end"),h=500,d=150,p=0;function g(t){t.property("__zoom",sE).on("wheel.zoom",x).on("mousedown.zoom",k).on("dblclick.zoom",E).filter(a).on("touchstart.zoom",A).on("touchmove.zoom",S).on("touchend.zoom touchcancel.zoom",T).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function y(t,e){return(e=Math.max(s[0],Math.min(s[1],e)))===t.k?t:new tE(e,t.x,t.y)}function b(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new tE(t.k,r,i)}function m(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function v(t,e,n){t.on("start.zoom",(function(){_(this,arguments).start()})).on("interrupt.zoom end.zoom",(function(){_(this,arguments).end()})).tween("zoom",(function(){var t=this,i=arguments,o=_(t,i),a=r.apply(t,i),s=null==n?m(a):"function"==typeof n?n.apply(t,i):n,u=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),c=t.__zoom,l="function"==typeof e?e.apply(t,i):e,h=f(c.invert(s).concat(u/c.k),l.invert(s).concat(u/l.k));return function(t){if(1===t)t=l;else{var e=h(t),n=u/e[2];t=new tE(n,s[0]-e[0]*n,s[1]-e[1]*n)}o.zoom(null,t)}}))}function _(t,e,n){return!n&&t.__zooming||new w(t,e)}function w(t,e){this.that=t,this.args=e,this.active=0,this.extent=r.apply(t,e),this.taps=0}function x(){if(n.apply(this,arguments)){var t=_(this,arguments),e=this.__zoom,r=Math.max(s[0],Math.min(s[1],e.k*Math.pow(2,o.apply(this,arguments)))),a=Be(this);if(t.wheel)t.mouse[0][0]===a[0]&&t.mouse[0][1]===a[1]||(t.mouse[1]=e.invert(t.mouse[0]=a)),clearTimeout(t.wheel);else{if(e.k===r)return;t.mouse=[a,e.invert(a)],Oi(this),t.start()}iE(),t.wheel=setTimeout((function(){t.wheel=null,t.end()}),d),t.zoom("mouse",i(b(y(e,r),t.mouse[0],t.mouse[1]),t.extent,u))}}function k(){if(!e&&n.apply(this,arguments)){var t=_(this,arguments,!0),r=Me(pe.view).on("mousemove.zoom",(function(){if(iE(),!t.moved){var e=pe.clientX-a,n=pe.clientY-s;t.moved=e*e+n*n>p}t.zoom("mouse",i(b(t.that.__zoom,t.mouse[0]=Be(t.that),t.mouse[1]),t.extent,u))}),!0).on("mouseup.zoom",(function(){r.on("mousemove.zoom mouseup.zoom",null),ze(pe.view,t.moved),iE(),t.end()}),!0),o=Be(this),a=pe.clientX,s=pe.clientY;Ue(pe.view),rE(),t.mouse=[o,this.__zoom.invert(o)],Oi(this),t.start()}}function E(){if(n.apply(this,arguments)){var t=this.__zoom,e=Be(this),o=t.invert(e),a=t.k*(pe.shiftKey?.5:2),s=i(b(y(t,a),e,o),r.apply(this,arguments),u);iE(),c>0?Me(this).transition().duration(c).call(v,s,e):Me(this).call(g.transform,s)}}function A(){if(n.apply(this,arguments)){var e,r,i,o,a=pe.touches,s=a.length,u=_(this,arguments,pe.changedTouches.length===s);for(rE(),r=0;rl&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},A={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 5;case 1:case 2:case 3:case 4:break;case 5:return this.begin("ID"),10;case 6:return e.yytext=e.yytext.trim(),this.begin("ALIAS"),41;case 7:return this.popState(),this.popState(),this.begin("LINE"),12;case 8:return this.popState(),this.popState(),5;case 9:return this.begin("LINE"),20;case 10:return this.begin("LINE"),22;case 11:return this.begin("LINE"),23;case 12:return this.begin("LINE"),24;case 13:return this.begin("LINE"),29;case 14:return this.begin("LINE"),26;case 15:return this.begin("LINE"),28;case 16:return this.popState(),13;case 17:return 21;case 18:return 36;case 19:return 37;case 20:return 32;case 21:return 30;case 22:return this.begin("ID"),15;case 23:return this.begin("ID"),16;case 24:return 18;case 25:return 6;case 26:return 35;case 27:return 5;case 28:return e.yytext=e.yytext.trim(),41;case 29:return 44;case 30:return 45;case 31:return 42;case 32:return 43;case 33:return 46;case 34:return 47;case 35:return 48;case 36:return 39;case 37:return 40;case 38:return 5;case 39:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:participant\b)/i,/^(?:[^\->:\n,;]+?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:and\b)/i,/^(?:[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\b)/i,/^(?:sequenceDiagram\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?::[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[2,3,16],inclusive:!1},ALIAS:{rules:[2,3,7,8],inclusive:!1},ID:{rules:[2,3,6],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,9,10,11,12,13,14,15,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],inclusive:!0}}};function S(){this.yy={}}return E.lexer=A,S.prototype=E,E.Parser=S,new S}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e){"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},function(t,e,n){var r=n(8),i=r.Buffer;function o(t,e){for(var n in t)e[n]=t[n]}function a(t,e,n){return i(t,e,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=r:(o(r,e),e.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(t,e,n){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,n)},a.alloc=function(t,e,n){if("number"!=typeof t)throw new TypeError("Argument must be a number");var r=i(t);return void 0!==e?"string"==typeof n?r.fill(e,n):r.fill(e):r.fill(0),r},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return r.SlowBuffer(t)}},function(t,e,n){var r;try{r={cloneDeep:n(348),constant:n(99),defaults:n(176),each:n(100),filter:n(150),find:n(349),flatten:n(178),forEach:n(148),forIn:n(354),has:n(106),isUndefined:n(161),last:n(355),map:n(162),mapValues:n(356),max:n(357),merge:n(359),min:n(364),minBy:n(365),now:n(366),pick:n(183),range:n(184),reduce:n(164),sortBy:n(373),uniqueId:n(185),values:n(169),zipObject:n(378)}}catch(t){}r||(r=window._),t.exports=r},function(t,e,n){(function(t){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function o(t,e,n){if(o.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var a;"object"==typeof t?t.exports=o:e.BN=o,o.BN=o,o.wordSize=26;try{a=n(457).Buffer}catch(t){}function s(t,e,n){for(var r=0,i=Math.min(t.length,n),o=e;o=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return r}function u(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"==typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"==typeof t)return this._initNumber(t,e,n);if("object"==typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initArray=function(t,e,n){if(r("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=6)i=s(t,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==e&&(i=s(t,e,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,s=Math.min(o,o-a)+n,c=0,f=n;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;n.words[0]=s;for(var c=1;c>>26,l=67108863&u,h=Math.min(c,e.length-1),d=Math.max(0,c-t.length+1);d<=h;d++){var p=c-d|0;f+=(a=(i=0|t.words[p])*(o=0|e.words[d])+l)/67108864|0,l=67108863&a}n.words[c]=0|l,u=0|f}return 0!==u?n.words[c]=0|u:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?c[6-u.length]+u+n:u+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var h=f[t],d=l[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(d).toString(t);n=(p=p.idivn(d)).isZero()?g+n:c[h-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r(void 0!==a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===e,c=new t(o),f=this.clone();if(u){for(s=0;!f.isZero();s++)a=f.andln(255),f.iushrn(8),c[s]=a;for(;s=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0==(8191&e)&&(n+=13,e>>>=13),0==(127&e)&&(n+=7,e>>>=7),0==(15&e)&&(n+=4,e>>>=4),0==(3&e)&&(n+=2,e>>>=2),0==(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"==typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"==typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,d=0|a[1],p=8191&d,g=d>>>13,y=0|a[2],b=8191&y,m=y>>>13,v=0|a[3],_=8191&v,w=v>>>13,x=0|a[4],k=8191&x,E=x>>>13,A=0|a[5],S=8191&A,T=A>>>13,M=0|a[6],D=8191&M,C=M>>>13,O=0|a[7],R=8191&O,I=O>>>13,N=0|a[8],B=8191&N,L=N>>>13,P=0|a[9],F=8191&P,q=P>>>13,j=0|s[0],U=8191&j,z=j>>>13,Y=0|s[1],V=8191&Y,H=Y>>>13,$=0|s[2],G=8191&$,W=$>>>13,K=0|s[3],X=8191&K,Z=K>>>13,J=0|s[4],Q=8191&J,tt=J>>>13,et=0|s[5],nt=8191&et,rt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ct=st>>>13,ft=0|s[8],lt=8191&ft,ht=ft>>>13,dt=0|s[9],pt=8191&dt,gt=dt>>>13;n.negative=t.negative^e.negative,n.length=19;var yt=(c+(r=Math.imul(l,U))|0)+((8191&(i=(i=Math.imul(l,z))+Math.imul(h,U)|0))<<13)|0;c=((o=Math.imul(h,z))+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,z))+Math.imul(g,U)|0,o=Math.imul(g,z);var bt=(c+(r=r+Math.imul(l,V)|0)|0)+((8191&(i=(i=i+Math.imul(l,H)|0)+Math.imul(h,V)|0))<<13)|0;c=((o=o+Math.imul(h,H)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(b,U),i=(i=Math.imul(b,z))+Math.imul(m,U)|0,o=Math.imul(m,z),r=r+Math.imul(p,V)|0,i=(i=i+Math.imul(p,H)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,H)|0;var mt=(c+(r=r+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,W)|0)+Math.imul(h,G)|0))<<13)|0;c=((o=o+Math.imul(h,W)|0)+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(_,U),i=(i=Math.imul(_,z))+Math.imul(w,U)|0,o=Math.imul(w,z),r=r+Math.imul(b,V)|0,i=(i=i+Math.imul(b,H)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,H)|0,r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(g,G)|0,o=o+Math.imul(g,W)|0;var vt=(c+(r=r+Math.imul(l,X)|0)|0)+((8191&(i=(i=i+Math.imul(l,Z)|0)+Math.imul(h,X)|0))<<13)|0;c=((o=o+Math.imul(h,Z)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(k,U),i=(i=Math.imul(k,z))+Math.imul(E,U)|0,o=Math.imul(E,z),r=r+Math.imul(_,V)|0,i=(i=i+Math.imul(_,H)|0)+Math.imul(w,V)|0,o=o+Math.imul(w,H)|0,r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,W)|0)+Math.imul(m,G)|0,o=o+Math.imul(m,W)|0,r=r+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Z)|0)+Math.imul(g,X)|0,o=o+Math.imul(g,Z)|0;var _t=(c+(r=r+Math.imul(l,Q)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(h,Q)|0))<<13)|0;c=((o=o+Math.imul(h,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(S,U),i=(i=Math.imul(S,z))+Math.imul(T,U)|0,o=Math.imul(T,z),r=r+Math.imul(k,V)|0,i=(i=i+Math.imul(k,H)|0)+Math.imul(E,V)|0,o=o+Math.imul(E,H)|0,r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(w,G)|0,o=o+Math.imul(w,W)|0,r=r+Math.imul(b,X)|0,i=(i=i+Math.imul(b,Z)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Z)|0,r=r+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,Q)|0,o=o+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,rt)|0)+Math.imul(h,nt)|0))<<13)|0;c=((o=o+Math.imul(h,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(D,U),i=(i=Math.imul(D,z))+Math.imul(C,U)|0,o=Math.imul(C,z),r=r+Math.imul(S,V)|0,i=(i=i+Math.imul(S,H)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,H)|0,r=r+Math.imul(k,G)|0,i=(i=i+Math.imul(k,W)|0)+Math.imul(E,G)|0,o=o+Math.imul(E,W)|0,r=r+Math.imul(_,X)|0,i=(i=i+Math.imul(_,Z)|0)+Math.imul(w,X)|0,o=o+Math.imul(w,Z)|0,r=r+Math.imul(b,Q)|0,i=(i=i+Math.imul(b,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,o=o+Math.imul(g,rt)|0;var xt=(c+(r=r+Math.imul(l,ot)|0)|0)+((8191&(i=(i=i+Math.imul(l,at)|0)+Math.imul(h,ot)|0))<<13)|0;c=((o=o+Math.imul(h,at)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,z))+Math.imul(I,U)|0,o=Math.imul(I,z),r=r+Math.imul(D,V)|0,i=(i=i+Math.imul(D,H)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,H)|0,r=r+Math.imul(S,G)|0,i=(i=i+Math.imul(S,W)|0)+Math.imul(T,G)|0,o=o+Math.imul(T,W)|0,r=r+Math.imul(k,X)|0,i=(i=i+Math.imul(k,Z)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Z)|0,r=r+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(w,Q)|0,o=o+Math.imul(w,tt)|0,r=r+Math.imul(b,nt)|0,i=(i=i+Math.imul(b,rt)|0)+Math.imul(m,nt)|0,o=o+Math.imul(m,rt)|0,r=r+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(g,ot)|0,o=o+Math.imul(g,at)|0;var kt=(c+(r=r+Math.imul(l,ut)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(h,ut)|0))<<13)|0;c=((o=o+Math.imul(h,ct)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(B,U),i=(i=Math.imul(B,z))+Math.imul(L,U)|0,o=Math.imul(L,z),r=r+Math.imul(R,V)|0,i=(i=i+Math.imul(R,H)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,H)|0,r=r+Math.imul(D,G)|0,i=(i=i+Math.imul(D,W)|0)+Math.imul(C,G)|0,o=o+Math.imul(C,W)|0,r=r+Math.imul(S,X)|0,i=(i=i+Math.imul(S,Z)|0)+Math.imul(T,X)|0,o=o+Math.imul(T,Z)|0,r=r+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,r=r+Math.imul(_,nt)|0,i=(i=i+Math.imul(_,rt)|0)+Math.imul(w,nt)|0,o=o+Math.imul(w,rt)|0,r=r+Math.imul(b,ot)|0,i=(i=i+Math.imul(b,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0,r=r+Math.imul(p,ut)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,ut)|0,o=o+Math.imul(g,ct)|0;var Et=(c+(r=r+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,ht)|0)+Math.imul(h,lt)|0))<<13)|0;c=((o=o+Math.imul(h,ht)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(F,U),i=(i=Math.imul(F,z))+Math.imul(q,U)|0,o=Math.imul(q,z),r=r+Math.imul(B,V)|0,i=(i=i+Math.imul(B,H)|0)+Math.imul(L,V)|0,o=o+Math.imul(L,H)|0,r=r+Math.imul(R,G)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(I,G)|0,o=o+Math.imul(I,W)|0,r=r+Math.imul(D,X)|0,i=(i=i+Math.imul(D,Z)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,Z)|0,r=r+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,tt)|0)+Math.imul(T,Q)|0,o=o+Math.imul(T,tt)|0,r=r+Math.imul(k,nt)|0,i=(i=i+Math.imul(k,rt)|0)+Math.imul(E,nt)|0,o=o+Math.imul(E,rt)|0,r=r+Math.imul(_,ot)|0,i=(i=i+Math.imul(_,at)|0)+Math.imul(w,ot)|0,o=o+Math.imul(w,at)|0,r=r+Math.imul(b,ut)|0,i=(i=i+Math.imul(b,ct)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ct)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,ht)|0)+Math.imul(g,lt)|0,o=o+Math.imul(g,ht)|0;var At=(c+(r=r+Math.imul(l,pt)|0)|0)+((8191&(i=(i=i+Math.imul(l,gt)|0)+Math.imul(h,pt)|0))<<13)|0;c=((o=o+Math.imul(h,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(F,V),i=(i=Math.imul(F,H))+Math.imul(q,V)|0,o=Math.imul(q,H),r=r+Math.imul(B,G)|0,i=(i=i+Math.imul(B,W)|0)+Math.imul(L,G)|0,o=o+Math.imul(L,W)|0,r=r+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Z)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Z)|0,r=r+Math.imul(D,Q)|0,i=(i=i+Math.imul(D,tt)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,tt)|0,r=r+Math.imul(S,nt)|0,i=(i=i+Math.imul(S,rt)|0)+Math.imul(T,nt)|0,o=o+Math.imul(T,rt)|0,r=r+Math.imul(k,ot)|0,i=(i=i+Math.imul(k,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,r=r+Math.imul(_,ut)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(w,ut)|0,o=o+Math.imul(w,ct)|0,r=r+Math.imul(b,lt)|0,i=(i=i+Math.imul(b,ht)|0)+Math.imul(m,lt)|0,o=o+Math.imul(m,ht)|0;var St=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((o=o+Math.imul(g,gt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(F,G),i=(i=Math.imul(F,W))+Math.imul(q,G)|0,o=Math.imul(q,W),r=r+Math.imul(B,X)|0,i=(i=i+Math.imul(B,Z)|0)+Math.imul(L,X)|0,o=o+Math.imul(L,Z)|0,r=r+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,r=r+Math.imul(D,nt)|0,i=(i=i+Math.imul(D,rt)|0)+Math.imul(C,nt)|0,o=o+Math.imul(C,rt)|0,r=r+Math.imul(S,ot)|0,i=(i=i+Math.imul(S,at)|0)+Math.imul(T,ot)|0,o=o+Math.imul(T,at)|0,r=r+Math.imul(k,ut)|0,i=(i=i+Math.imul(k,ct)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ct)|0,r=r+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,ht)|0)+Math.imul(w,lt)|0,o=o+Math.imul(w,ht)|0;var Tt=(c+(r=r+Math.imul(b,pt)|0)|0)+((8191&(i=(i=i+Math.imul(b,gt)|0)+Math.imul(m,pt)|0))<<13)|0;c=((o=o+Math.imul(m,gt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(F,X),i=(i=Math.imul(F,Z))+Math.imul(q,X)|0,o=Math.imul(q,Z),r=r+Math.imul(B,Q)|0,i=(i=i+Math.imul(B,tt)|0)+Math.imul(L,Q)|0,o=o+Math.imul(L,tt)|0,r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(I,nt)|0,o=o+Math.imul(I,rt)|0,r=r+Math.imul(D,ot)|0,i=(i=i+Math.imul(D,at)|0)+Math.imul(C,ot)|0,o=o+Math.imul(C,at)|0,r=r+Math.imul(S,ut)|0,i=(i=i+Math.imul(S,ct)|0)+Math.imul(T,ut)|0,o=o+Math.imul(T,ct)|0,r=r+Math.imul(k,lt)|0,i=(i=i+Math.imul(k,ht)|0)+Math.imul(E,lt)|0,o=o+Math.imul(E,ht)|0;var Mt=(c+(r=r+Math.imul(_,pt)|0)|0)+((8191&(i=(i=i+Math.imul(_,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((o=o+Math.imul(w,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(F,Q),i=(i=Math.imul(F,tt))+Math.imul(q,Q)|0,o=Math.imul(q,tt),r=r+Math.imul(B,nt)|0,i=(i=i+Math.imul(B,rt)|0)+Math.imul(L,nt)|0,o=o+Math.imul(L,rt)|0,r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,r=r+Math.imul(D,ut)|0,i=(i=i+Math.imul(D,ct)|0)+Math.imul(C,ut)|0,o=o+Math.imul(C,ct)|0,r=r+Math.imul(S,lt)|0,i=(i=i+Math.imul(S,ht)|0)+Math.imul(T,lt)|0,o=o+Math.imul(T,ht)|0;var Dt=(c+(r=r+Math.imul(k,pt)|0)|0)+((8191&(i=(i=i+Math.imul(k,gt)|0)+Math.imul(E,pt)|0))<<13)|0;c=((o=o+Math.imul(E,gt)|0)+(i>>>13)|0)+(Dt>>>26)|0,Dt&=67108863,r=Math.imul(F,nt),i=(i=Math.imul(F,rt))+Math.imul(q,nt)|0,o=Math.imul(q,rt),r=r+Math.imul(B,ot)|0,i=(i=i+Math.imul(B,at)|0)+Math.imul(L,ot)|0,o=o+Math.imul(L,at)|0,r=r+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ct)|0,r=r+Math.imul(D,lt)|0,i=(i=i+Math.imul(D,ht)|0)+Math.imul(C,lt)|0,o=o+Math.imul(C,ht)|0;var Ct=(c+(r=r+Math.imul(S,pt)|0)|0)+((8191&(i=(i=i+Math.imul(S,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((o=o+Math.imul(T,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(F,ot),i=(i=Math.imul(F,at))+Math.imul(q,ot)|0,o=Math.imul(q,at),r=r+Math.imul(B,ut)|0,i=(i=i+Math.imul(B,ct)|0)+Math.imul(L,ut)|0,o=o+Math.imul(L,ct)|0,r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,ht)|0)+Math.imul(I,lt)|0,o=o+Math.imul(I,ht)|0;var Ot=(c+(r=r+Math.imul(D,pt)|0)|0)+((8191&(i=(i=i+Math.imul(D,gt)|0)+Math.imul(C,pt)|0))<<13)|0;c=((o=o+Math.imul(C,gt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(F,ut),i=(i=Math.imul(F,ct))+Math.imul(q,ut)|0,o=Math.imul(q,ct),r=r+Math.imul(B,lt)|0,i=(i=i+Math.imul(B,ht)|0)+Math.imul(L,lt)|0,o=o+Math.imul(L,ht)|0;var Rt=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(I,pt)|0))<<13)|0;c=((o=o+Math.imul(I,gt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,r=Math.imul(F,lt),i=(i=Math.imul(F,ht))+Math.imul(q,lt)|0,o=Math.imul(q,ht);var It=(c+(r=r+Math.imul(B,pt)|0)|0)+((8191&(i=(i=i+Math.imul(B,gt)|0)+Math.imul(L,pt)|0))<<13)|0;c=((o=o+Math.imul(L,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863;var Nt=(c+(r=Math.imul(F,pt))|0)+((8191&(i=(i=Math.imul(F,gt))+Math.imul(q,pt)|0))<<13)|0;return c=((o=Math.imul(q,gt))+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,u[0]=yt,u[1]=bt,u[2]=mt,u[3]=vt,u[4]=_t,u[5]=wt,u[6]=xt,u[7]=kt,u[8]=Et,u[9]=At,u[10]=St,u[11]=Tt,u[12]=Mt,u[13]=Dt,u[14]=Ct,u[15]=Ot,u[16]=Rt,u[17]=It,u[18]=Nt,0!==c&&(u[19]=c,n.length++),n};function p(t,e,n){return(new g).mulp(t,e,n)}function g(t,e){this.x=t,this.y=e}Math.imul||(d=h),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?d(this,t,e):n<63?h(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=s,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):p(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},g.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==f||c>=i);c--){var l=0|this.words[c];this.words[c]=f<<26-o|l>>>o,f=l&s}return u&&0!==f&&(u.words[u.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"==typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"==typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===s)return this.strip();for(r(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var s,u=r.length-i.length;if("mod"!==e){(s=new o(null)).length=u+1,s.words=new Array(s.length);for(var c=0;c=0;l--){var h=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(h=Math.min(h/a|0,67108863),r._ishlnsubmul(i,h,l);0!==r.negative;)h--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);s&&(s.words[l]=h)}return s&&s.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:s||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(i=s.div.neg()),"div"!==e&&(a=s.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(a=s.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:s.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,s},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),s=new o(0),u=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var f=n.clone(),l=e.clone();!e.isZero();){for(var h=0,d=1;0==(e.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(e.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(f),a.isub(l)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0==(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(f),u.isub(l)),s.iushrn(1),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(s),a.isub(u)):(n.isub(e),s.isub(i),u.isub(a))}return{a:s,b:u,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),s=new o(0),u=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,f=1;0==(e.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(u),a.iushrn(1);for(var l=0,h=1;0==(n.words[0]&h)&&l<26;++l,h<<=1);if(l>0)for(n.iushrn(l);l-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(s)):(n.isub(e),s.isub(a))}return(i=0===e.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"==typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new x(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var y={k256:null,p224:null,p192:null,p25519:null};function b(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function v(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function x(t){if("string"==typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function k(t){x.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}b.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},b.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):n.strip(),n},b.prototype.split=function(t,e){t.iushrn(this.n,0,e)},b.prototype.imulK=function(t){return t.imul(this.k)},i(m,b),m.prototype.split=function(t,e){for(var n=Math.min(t.length,9),r=0;r>>22,i=o}i>>>=22,t.words[r-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},m.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(y[t])return y[t];var e;if("k256"===t)e=new m;else if("p224"===t)e=new v;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new w}return y[t]=e,e},x.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},x.prototype._verify2=function(t,e){r(0==(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},x.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},x.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},x.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},x.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},x.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},x.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},x.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},x.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},x.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},x.prototype.isqr=function(t){return this.imul(t,t.clone())},x.prototype.sqr=function(t){return this.mul(t,t)},x.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2==1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var s=new o(1).toRed(this),u=s.redNeg(),c=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,c).cmp(u);)f.redIAdd(u);for(var l=this.pow(f,i),h=this.pow(t,i.addn(1).iushrn(1)),d=this.pow(t,i),p=a;0!==d.cmp(s);){for(var g=d,y=0;0!==g.cmp(s);y++)g=g.redSqr();r(y=0;r--){for(var c=e.words[r],f=u-1;f>=0;f--){var l=c>>f&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==a?(a<<=1,a|=l,(4===++s||0===r&&0===f)&&(i=this.mul(i,n[a]),s=0,a=0)):s=0}u=26}return i},x.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},x.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new k(t)},i(k,x),k.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},k.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},k.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},k.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},k.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(9)(t))},function(t,e){var n=Array.isArray;t.exports=n},function(t,e){var n,r,i=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(t){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var u,c=[],f=!1,l=-1;function h(){f&&u&&(f=!1,u.length?c=u.concat(c):l=-1,c.length&&d())}function d(){if(!f){var t=s(h);f=!0;for(var e=c.length;e;){for(u=c,c=[];++l1)for(var n=1;n + * @license MIT + */ +var r=n(419),i=n(420),o=n(191);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function p(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return z(t).length;default:if(r)return U(t).length;e=(""+e).toLowerCase(),r=!0}}function g(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return C(this,e,n);case"utf8":case"utf-8":return S(this,e,n);case"ascii":return M(this,e,n);case"latin1":case"binary":return D(this,e,n);case"base64":return A(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function y(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function b(t,e,n,r,i){if(0===t.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof e&&(e=u.from(e,r)),u.isBuffer(e))return 0===e.length?-1:m(t,e,n,r,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):m(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function m(t,e,n,r,i){var o,a=1,s=t.length,u=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var f=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var l=!0,h=0;hi&&(r=i):r=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(e,t.length-n),t,n,r)}function A(t,e,n){return 0===e&&n===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,n))}function S(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+l<=n)switch(l){case 1:c<128&&(f=c);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(f=u);break;case 3:o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(f=u);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(f=u)}null===f?(f=65533,l=1):f>65535&&(f-=65536,r.push(f>>>10&1023|55296),f=56320|1023&f),r.push(f),i+=l}return function(t){var e=t.length;if(e<=T)return String.fromCharCode.apply(String,t);var n="",r=0;for(;r0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},u.prototype.compare=function(t,e,n,r,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),s=Math.min(o,a),c=this.slice(r,i),f=t.slice(e,n),l=0;li)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return v(this,t,e,n);case"utf8":case"utf-8":return _(this,t,e,n);case"ascii":return w(this,t,e,n);case"latin1":case"binary":return x(this,t,e,n);case"base64":return k(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var T=4096;function M(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,n,r,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function N(t,e,n,r){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-n,2);i>>8*(r?i:1-i)}function B(t,e,n,r){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-n,4);i>>8*(r?i:3-i)&255}function L(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function P(t,e,n,r,o){return o||L(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function F(t,e,n,r,o){return o||L(t,0,n,8),i.write(t,e,n,r,52,8),n+8}u.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(i*=256);)r+=this[t+--e]*i;return r},u.prototype.readUInt8=function(t,e){return e||R(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||R(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||R(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||R(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||R(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||R(t,e,this.length);for(var r=this[t],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*e)),r},u.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||R(t,e,this.length);for(var r=e,i=1,o=this[t+--r];r>0&&(i*=256);)o+=this[t+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||R(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||R(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(t,e){e||R(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(t,e){return e||R(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||R(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||R(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||R(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||R(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||R(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,n,r){(t=+t,e|=0,n|=0,r)||I(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+n},u.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):N(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):N(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):B(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):B(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);I(this,t,e,n,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+n},u.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);I(this,t,e,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+n},u.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):N(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):N(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):B(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):B(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,n){return P(this,t,e,!0,n)},u.prototype.writeFloatBE=function(t,e,n){return P(this,t,e,!1,n)},u.prototype.writeDoubleLE=function(t,e,n){return F(this,t,e,!0,n)},u.prototype.writeDoubleBE=function(t,e,n){return F(this,t,e,!1,n)},u.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e=0;--i)t[i+e]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function z(t){return r.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(q,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function Y(t,e,n,r){for(var i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}}).call(this,n(11))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,n){"use strict";var r=n(4),i=n(19).Graph;function o(t,e,n,i){var o;do{o=r.uniqueId(i)}while(t.hasNode(o));return n.dummy=e,t.setNode(o,n),o}function a(t){return r.max(r.map(t.nodes(),(function(e){var n=t.node(e).rank;if(!r.isUndefined(n))return n})))}t.exports={addDummyNode:o,simplify:function(t){var e=(new i).setGraph(t.graph());return r.forEach(t.nodes(),(function(n){e.setNode(n,t.node(n))})),r.forEach(t.edges(),(function(n){var r=e.edge(n.v,n.w)||{weight:0,minlen:1},i=t.edge(n);e.setEdge(n.v,n.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})})),e},asNonCompoundGraph:function(t){var e=new i({multigraph:t.isMultigraph()}).setGraph(t.graph());return r.forEach(t.nodes(),(function(n){t.children(n).length||e.setNode(n,t.node(n))})),r.forEach(t.edges(),(function(n){e.setEdge(n,t.edge(n))})),e},successorWeights:function(t){var e=r.map(t.nodes(),(function(e){var n={};return r.forEach(t.outEdges(e),(function(e){n[e.w]=(n[e.w]||0)+t.edge(e).weight})),n}));return r.zipObject(t.nodes(),e)},predecessorWeights:function(t){var e=r.map(t.nodes(),(function(e){var n={};return r.forEach(t.inEdges(e),(function(e){n[e.v]=(n[e.v]||0)+t.edge(e).weight})),n}));return r.zipObject(t.nodes(),e)},intersectRect:function(t,e){var n,r,i=t.x,o=t.y,a=e.x-i,s=e.y-o,u=t.width/2,c=t.height/2;if(!a&&!s)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(s)*u>Math.abs(a)*c?(s<0&&(c=-c),n=c*a/s,r=c):(a<0&&(u=-u),n=u,r=u*s/a);return{x:i+n,y:o+r}},buildLayerMatrix:function(t){var e=r.map(r.range(a(t)+1),(function(){return[]}));return r.forEach(t.nodes(),(function(n){var i=t.node(n),o=i.rank;r.isUndefined(o)||(e[o][i.order]=n)})),e},normalizeRanks:function(t){var e=r.min(r.map(t.nodes(),(function(e){return t.node(e).rank})));r.forEach(t.nodes(),(function(n){var i=t.node(n);r.has(i,"rank")&&(i.rank-=e)}))},removeEmptyRanks:function(t){var e=r.min(r.map(t.nodes(),(function(e){return t.node(e).rank}))),n=[];r.forEach(t.nodes(),(function(r){var i=t.node(r).rank-e;n[i]||(n[i]=[]),n[i].push(r)}));var i=0,o=t.graph().nodeRankFactor;r.forEach(n,(function(e,n){r.isUndefined(e)&&n%o!=0?--i:i&&r.forEach(e,(function(e){t.node(e).rank+=i}))}))},addBorderNode:function(t,e,n,r){var i={width:0,height:0};arguments.length>=4&&(i.rank=n,i.order=r);return o(t,"border",i,e)},maxRank:a,partition:function(t,e){var n={lhs:[],rhs:[]};return r.forEach(t,(function(t){e(t)?n.lhs.push(t):n.rhs.push(t)})),n},time:function(t,e){var n=r.now();try{return e()}finally{console.log(t+" time: "+(r.now()-n)+"ms")}},notime:function(t,e){return e()}}},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var r;try{r={clone:n(235),constant:n(99),each:n(100),filter:n(150),has:n(106),isArray:n(6),isEmpty:n(311),isFunction:n(37),isUndefined:n(161),keys:n(27),map:n(162),reduce:n(164),size:n(314),transform:n(320),union:n(321),values:n(169)}}catch(t){}r||(r=window._),t.exports=r},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,n){var r=n(43);t.exports={isSubgraph:function(t,e){return!!t.children(e).length},edgeToId:function(t){return o(t.v)+":"+o(t.w)+":"+o(t.name)},applyStyle:function(t,e){e&&t.attr("style",e)},applyClass:function(t,e,n){e&&t.attr("class",e).attr("class",n+" "+t.attr("class"))},applyTransition:function(t,e){var n=e.graph();if(r.isPlainObject(n)){var i=n.transition;if(r.isFunction(i))return i(t)}return t}};var i=/:/g;function o(t){return t?String(t).replace(i,"\\:"):""}},function(t,e){function n(t,e){if(!t)throw new Error(e||"Assertion failed")}t.exports=n,n.equal=function(t,e,n){if(t!=e)throw new Error(n||"Assertion failed: "+t+" != "+e)}},function(t,e,n){"use strict";var r=e,i=n(5),o=n(15),a=n(213);r.assert=o,r.toArray=a.toArray,r.zero2=a.zero2,r.toHex=a.toHex,r.encode=a.encode,r.getNAF=function(t,e){for(var n=[],r=1<=0;){var o;if(i.isOdd()){var a=i.andln(r-1);o=a>(r>>1)-1?(r>>1)-a:a,i.isubn(o)}else o=0;n.push(o);for(var s=0!==i.cmpn(0)&&0===i.andln(r-1)?e+1:1,u=1;u0||e.cmpn(-i)>0;){var o,a,s,u=t.andln(3)+r&3,c=e.andln(3)+i&3;if(3===u&&(u=-1),3===c&&(c=-1),0==(1&u))o=0;else o=3!==(s=t.andln(7)+r&7)&&5!==s||2!==c?u:-u;if(n[0].push(o),0==(1&c))a=0;else a=3!==(s=e.andln(7)+i&7)&&5!==s||2!==u?c:-c;n[1].push(a),2*r===o+1&&(r=1-r),2*i===a+1&&(i=1-i),t.iushrn(1),e.iushrn(1)}return n},r.cachedProperty=function(t,e,n){var r="_"+e;t.prototype[e]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(t){return"string"==typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new i(t,"hex","le")}},function(t,e,n){ +/** + * @license + * Copyright (c) 2012-2013 Chris Pettitt + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +t.exports={graphlib:n(346),dagre:n(175),intersect:n(403),render:n(405),util:n(14),version:n(417)}},function(t,e,n){var r=n(131),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();t.exports=o},function(t,e,n){var r;try{r=n(22)}catch(t){}r||(r=window.graphlib),t.exports=r},function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,e,n){"use strict";var r=n(15),i=n(2);function o(t,e){return 55296==(64512&t.charCodeAt(e))&&(!(e<0||e+1>=t.length)&&56320==(64512&t.charCodeAt(e+1)))}function a(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function s(t){return 1===t.length?"0"+t:t}function u(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}e.inherits=i,e.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var n=[];if("string"==typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(t="0"+t),i=0;i>6|192,n[r++]=63&a|128):o(t,i)?(a=65536+((1023&a)<<10)+(1023&t.charCodeAt(++i)),n[r++]=a>>18|240,n[r++]=a>>12&63|128,n[r++]=a>>6&63|128,n[r++]=63&a|128):(n[r++]=a>>12|224,n[r++]=a>>6&63|128,n[r++]=63&a|128)}else for(i=0;i>>0}return a},e.split32=function(t,e){for(var n=new Array(4*t.length),r=0,i=0;r>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},e.rotr32=function(t,e){return t>>>e|t<<32-e},e.rotl32=function(t,e){return t<>>32-e},e.sum32=function(t,e){return t+e>>>0},e.sum32_3=function(t,e,n){return t+e+n>>>0},e.sum32_4=function(t,e,n,r){return t+e+n+r>>>0},e.sum32_5=function(t,e,n,r,i){return t+e+n+r+i>>>0},e.sum64=function(t,e,n,r){var i=t[e],o=r+t[e+1]>>>0,a=(o>>0,t[e+1]=o},e.sum64_hi=function(t,e,n,r){return(e+r>>>0>>0},e.sum64_lo=function(t,e,n,r){return e+r>>>0},e.sum64_4_hi=function(t,e,n,r,i,o,a,s){var u=0,c=e;return u+=(c=c+r>>>0)>>0)>>0)>>0},e.sum64_4_lo=function(t,e,n,r,i,o,a,s){return e+r+o+s>>>0},e.sum64_5_hi=function(t,e,n,r,i,o,a,s,u,c){var f=0,l=e;return f+=(l=l+r>>>0)>>0)>>0)>>0)>>0},e.sum64_5_lo=function(t,e,n,r,i,o,a,s,u,c){return e+r+o+s+c>>>0},e.rotr64_hi=function(t,e,n){return(e<<32-n|t>>>n)>>>0},e.rotr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0},e.shr64_hi=function(t,e,n){return t>>>n},e.shr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0}},function(t,e,n){var r=n(234);t.exports={Graph:r.Graph,json:n(336),alg:n(337),version:r.version}},function(t,e,n){(function(t){t.exports=function(){"use strict";var e,r;function i(){return e.apply(null,arguments)}function o(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function a(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function s(t){return void 0===t}function u(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function c(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function f(t,e){var n,r=[];for(n=0;n>>0,r=0;rAt(t)?(o=t+1,a=s-At(t)):(o=t,a=s),{year:o,dayOfYear:a}}function Vt(t,e,n){var r,i,o=zt(t.year(),e,n),a=Math.floor((t.dayOfYear()-o-1)/7)+1;return a<1?r=a+Ht(i=t.year()-1,e,n):a>Ht(t.year(),e,n)?(r=a-Ht(t.year(),e,n),i=t.year()+1):(i=t.year(),r=a),{week:r,year:i}}function Ht(t,e,n){var r=zt(t,e,n),i=zt(t+1,e,n);return(At(t)-r+i)/7}V("w",["ww",2],"wo","week"),V("W",["WW",2],"Wo","isoWeek"),N("week","w"),N("isoWeek","W"),F("week",5),F("isoWeek",5),ft("w",J),ft("ww",J,W),ft("W",J),ft("WW",J,W),gt(["w","ww","W","WW"],(function(t,e,n,r){e[r.substr(0,1)]=k(t)})),V("d",0,"do","day"),V("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),V("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),V("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),V("e",0,0,"weekday"),V("E",0,0,"isoWeekday"),N("day","d"),N("weekday","e"),N("isoWeekday","E"),F("day",11),F("weekday",11),F("isoWeekday",11),ft("d",J),ft("e",J),ft("E",J),ft("dd",(function(t,e){return e.weekdaysMinRegex(t)})),ft("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),ft("dddd",(function(t,e){return e.weekdaysRegex(t)})),gt(["dd","ddd","dddd"],(function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:p(n).invalidWeekday=t})),gt(["d","e","E"],(function(t,e,n,r){e[r]=k(t)}));var $t="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Gt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Wt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Kt=ut,Xt=ut,Zt=ut;function Jt(){function t(t,e){return e.length-t.length}var e,n,r,i,o,a=[],s=[],u=[],c=[];for(e=0;e<7;e++)n=d([2e3,1]).day(e),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),o=this.weekdays(n,""),a.push(r),s.push(i),u.push(o),c.push(r),c.push(i),c.push(o);for(a.sort(t),s.sort(t),u.sort(t),c.sort(t),e=0;e<7;e++)s[e]=ht(s[e]),u[e]=ht(u[e]),c[e]=ht(c[e]);this._weekdaysRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Qt(){return this.hours()%12||12}function te(t,e){V(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function ee(t,e){return e._meridiemParse}V("H",["HH",2],0,"hour"),V("h",["hh",2],0,Qt),V("k",["kk",2],0,(function(){return this.hours()||24})),V("hmm",0,0,(function(){return""+Qt.apply(this)+q(this.minutes(),2)})),V("hmmss",0,0,(function(){return""+Qt.apply(this)+q(this.minutes(),2)+q(this.seconds(),2)})),V("Hmm",0,0,(function(){return""+this.hours()+q(this.minutes(),2)})),V("Hmmss",0,0,(function(){return""+this.hours()+q(this.minutes(),2)+q(this.seconds(),2)})),te("a",!0),te("A",!1),N("hour","h"),F("hour",13),ft("a",ee),ft("A",ee),ft("H",J),ft("h",J),ft("k",J),ft("HH",J,W),ft("hh",J,W),ft("kk",J,W),ft("hmm",Q),ft("hmmss",tt),ft("Hmm",Q),ft("Hmmss",tt),pt(["H","HH"],vt),pt(["k","kk"],(function(t,e,n){var r=k(t);e[vt]=24===r?0:r})),pt(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),pt(["h","hh"],(function(t,e,n){e[vt]=k(t),p(n).bigHour=!0})),pt("hmm",(function(t,e,n){var r=t.length-2;e[vt]=k(t.substr(0,r)),e[_t]=k(t.substr(r)),p(n).bigHour=!0})),pt("hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[vt]=k(t.substr(0,r)),e[_t]=k(t.substr(r,2)),e[wt]=k(t.substr(i)),p(n).bigHour=!0})),pt("Hmm",(function(t,e,n){var r=t.length-2;e[vt]=k(t.substr(0,r)),e[_t]=k(t.substr(r))})),pt("Hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[vt]=k(t.substr(0,r)),e[_t]=k(t.substr(r,2)),e[wt]=k(t.substr(i))}));var ne,re=Dt("Hours",!0),ie={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Nt,monthsShort:Bt,week:{dow:0,doy:6},weekdays:$t,weekdaysMin:Wt,weekdaysShort:Gt,meridiemParse:/[ap]\.?m?\.?/i},oe={},ae={};function se(t){return t?t.toLowerCase().replace("_","-"):t}function ue(e){var r=null;if(!oe[e]&&void 0!==t&&t&&t.exports)try{r=ne._abbr,n(233)("./"+e),ce(r)}catch(e){}return oe[e]}function ce(t,e){var n;return t&&((n=s(e)?le(t):fe(t,e))?ne=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),ne._abbr}function fe(t,e){if(null!==e){var n,r=ie;if(e.abbr=t,null!=oe[t])D("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=oe[t]._config;else if(null!=e.parentLocale)if(null!=oe[e.parentLocale])r=oe[e.parentLocale]._config;else{if(null==(n=ue(e.parentLocale)))return ae[e.parentLocale]||(ae[e.parentLocale]=[]),ae[e.parentLocale].push({name:t,config:e}),null;r=n._config}return oe[t]=new R(O(r,e)),ae[t]&&ae[t].forEach((function(t){fe(t.name,t.config)})),ce(t),oe[t]}return delete oe[t],null}function le(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return ne;if(!o(t)){if(e=ue(t))return e;t=[t]}return function(t){for(var e,n,r,i,o=0;o=e&&E(i,n,!0)>=e-1)break;e--}o++}return ne}(t)}function he(t){var e,n=t._a;return n&&-2===p(t).overflow&&(e=n[bt]<0||11Rt(n[yt],n[bt])?mt:n[vt]<0||24Ht(n,o,a)?p(t)._overflowWeeks=!0:null!=u?p(t)._overflowWeekday=!0:(s=Yt(n,r,i,o,a),t._a[yt]=s.year,t._dayOfYear=s.dayOfYear)}(t),null!=t._dayOfYear&&(a=de(t._a[yt],r[yt]),(t._dayOfYear>At(a)||0===t._dayOfYear)&&(p(t)._overflowDayOfYear=!0),n=Ut(a,0,t._dayOfYear),t._a[bt]=n.getUTCMonth(),t._a[mt]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=s[e]=r[e];for(;e<7;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[vt]&&0===t._a[_t]&&0===t._a[wt]&&0===t._a[xt]&&(t._nextDay=!0,t._a[vt]=0),t._d=(t._useUTC?Ut:function(t,e,n,r,i,o,a){var s=new Date(t,e,n,r,i,o,a);return t<100&&0<=t&&isFinite(s.getFullYear())&&s.setFullYear(t),s}).apply(null,s),o=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[vt]=24),t._w&&void 0!==t._w.d&&t._w.d!==o&&(p(t).weekdayMismatch=!0)}}var ge=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ye=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,be=/Z|[+-]\d\d(?::?\d\d)?/,me=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],ve=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],_e=/^\/?Date\((\-?\d+)/i;function we(t){var e,n,r,i,o,a,s=t._i,u=ge.exec(s)||ye.exec(s);if(u){for(p(t).iso=!0,e=0,n=me.length;en.valueOf():n.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},fn.isLocal=function(){return!!this.isValid()&&!this._isUTC},fn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},fn.isUtc=Ue,fn.isUTC=Ue,fn.zoneAbbr=function(){return this._isUTC?"UTC":""},fn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},fn.dates=S("dates accessor is deprecated. Use date instead.",rn),fn.months=S("months accessor is deprecated. Use month instead",Pt),fn.years=S("years accessor is deprecated. Use year instead",Mt),fn.zone=S("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),fn.isDSTShifted=S("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!s(this._isDSTShifted))return this._isDSTShifted;var t={};if(m(t,this),(t=Se(t))._a){var e=t._isUTC?d(t._a):Me(t._a);this._isDSTShifted=this.isValid()&&0l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},l={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 10;case 1:case 2:case 3:break;case 4:this.begin("href");break;case 5:this.popState();break;case 6:return 23;case 7:this.begin("callbackname");break;case 8:this.popState();break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 21;case 11:this.popState();break;case 12:return 22;case 13:this.begin("click");break;case 14:this.popState();break;case 15:return 20;case 16:return 4;case 17:return 11;case 18:return 12;case 19:return 13;case 20:return 14;case 21:return"date";case 22:return 15;case 23:return 16;case 24:return 18;case 25:return 19;case 26:return":";case 27:return 6;case 28:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{callbackargs:{rules:[11,12],inclusive:!1},callbackname:{rules:[8,9,10],inclusive:!1},href:{rules:[5,6],inclusive:!1},click:{rules:[14,15],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,7,13,16,17,18,19,20,21,22,23,24,25,26,27,28],inclusive:!0}}};function h(){this.yy={}}return f.lexer=l,h.prototype=f,f.Parser=h,new h}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){var r=n(134),i=n(95),o=n(24);t.exports=function(t){return o(t)?r(t):i(t)}},function(t,e){},function(t,e,n){(function(t){function n(t,e){for(var n=0,r=t.length-1;r>=0;r--){var i=t[r];"."===i?t.splice(r,1):".."===i?(t.splice(r,1),n++):n&&(t.splice(r,1),n--)}if(e)for(;n--;n)t.unshift("..");return t}function r(t,e){if(t.filter)return t.filter(e);for(var n=[],r=0;r=-1&&!i;o--){var a=o>=0?arguments[o]:t.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(e=a+"/"+e,i="/"===a.charAt(0))}return(i?"/":"")+(e=n(r(e.split("/"),(function(t){return!!t})),!i).join("/"))||"."},e.normalize=function(t){var o=e.isAbsolute(t),a="/"===i(t,-1);return(t=n(r(t.split("/"),(function(t){return!!t})),!o).join("/"))||o||(t="."),t&&a&&(t+="/"),(o?"/":"")+t},e.isAbsolute=function(t){return"/"===t.charAt(0)},e.join=function(){var t=Array.prototype.slice.call(arguments,0);return e.normalize(r(t,(function(t,e){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t})).join("/"))},e.relative=function(t,n){function r(t){for(var e=0;e=0&&""===t[n];n--);return e>n?[]:t.slice(e,n-e+1)}t=e.resolve(t).substr(1),n=e.resolve(n).substr(1);for(var i=r(t.split("/")),o=r(n.split("/")),a=Math.min(i.length,o.length),s=a,u=0;u=1;--o)if(47===(e=t.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":t.slice(0,r)},e.basename=function(t,e){var n=function(t){"string"!=typeof t&&(t+="");var e,n=0,r=-1,i=!0;for(e=t.length-1;e>=0;--e)if(47===t.charCodeAt(e)){if(!i){n=e+1;break}}else-1===r&&(i=!1,r=e+1);return-1===r?"":t.slice(n,r)}(t);return e&&n.substr(-1*e.length)===e&&(n=n.substr(0,n.length-e.length)),n},e.extname=function(t){"string"!=typeof t&&(t+="");for(var e=-1,n=0,r=-1,i=!0,o=0,a=t.length-1;a>=0;--a){var s=t.charCodeAt(a);if(47!==s)-1===r&&(i=!1,r=a+1),46===s?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!i){n=a+1;break}}return-1===e||-1===r||0===o||1===o&&e===r-1&&e===n+1?"":t.slice(e,r)};var i="b"==="ab".substr(-1)?function(t,e,n){return t.substr(e,n)}:function(t,e,n){return e<0&&(e=t.length+e),t.substr(e,n)}}).call(this,n(7))},function(t,e,n){var r;if(!r)try{r=n(0)}catch(t){}r||(r=window.d3),t.exports=r},function(t,e,n){var r=n(3).Buffer,i=n(112).Transform,o=n(117).StringDecoder;function a(t){i.call(this),this.hashMode="string"==typeof t,this.hashMode?this[t]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(2)(a,i),a.prototype.update=function(t,e,n){"string"==typeof t&&(t=r.from(t,e));var i=this._update(t);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(t,e,n){var r;try{this.hashMode?this._update(t):this.push(this._update(t))}catch(t){r=t}finally{n(r)}},a.prototype._flush=function(t){var e;try{this.push(this.__final())}catch(t){e=t}t(e)},a.prototype._finalOrDigest=function(t){var e=this.__final()||r.alloc(0);return t&&(e=this._toString(e,t,!0)),e},a.prototype._toString=function(t,e,n){if(this._decoder||(this._decoder=new o(e),this._encoding=e),this._encoding!==e)throw new Error("can't switch encodings");var r=this._decoder.write(t);return n&&(r+=this._decoder.end()),r},t.exports=a},function(t,e,n){var r=n(246),i=n(251);t.exports=function(t,e){var n=i(t,e);return r(n)?n:void 0}},function(t,e,n){var r=n(38),i=n(247),o=n(248),a="[object Null]",s="[object Undefined]",u=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?s:a:u&&u in Object(t)?i(t):o(t)}},function(t,e){t.exports=function(t){return t}},function(t,e,n){"use strict";var r=n(78),i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};t.exports=l;var o=n(54);o.inherits=n(2);var a=n(193),s=n(116);o.inherits(l,a);for(var u=i(s.prototype),c=0;co)throw new RangeError("requested too many random bytes");var n=a.allocUnsafe(t);if(t>0)if(t>i)for(var u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return t?o.toString(t):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},function(t,e,n){(function(t,r){var i=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,12],n=[1,15],r=[1,13],i=[1,14],o=[1,17],a=[1,18],s=[1,19],u=[6,8],c=[1,28],f=[1,29],l=[1,30],h=[1,31],d=[1,32],p=[1,33],g=[6,8,13,18,26,29,30,31,32,33,34],y=[6,8,13,18,22,26,29,30,31,32,33,34,48,49,50],b=[26,48,49,50],m=[26,33,34,48,49,50],v=[26,29,30,31,32,48,49,50],_=[6,8,13],w=[1,50],x={trace:function(){},yy:{},symbols_:{error:2,mermaidDoc:3,graphConfig:4,CLASS_DIAGRAM:5,NEWLINE:6,statements:7,EOF:8,statement:9,className:10,alphaNumToken:11,relationStatement:12,LABEL:13,classStatement:14,methodStatement:15,annotationStatement:16,CLASS:17,STRUCT_START:18,members:19,STRUCT_STOP:20,ANNOTATION_START:21,ANNOTATION_END:22,MEMBER:23,SEPARATOR:24,relation:25,STR:26,relationType:27,lineType:28,AGGREGATION:29,EXTENSION:30,COMPOSITION:31,DEPENDENCY:32,LINE:33,DOTTED_LINE:34,commentToken:35,textToken:36,graphCodeTokens:37,textNoTagsToken:38,TAGSTART:39,TAGEND:40,"==":41,"--":42,PCT:43,DEFAULT:44,SPACE:45,MINUS:46,keywords:47,UNICODE_TEXT:48,NUM:49,ALPHA:50,$accept:0,$end:1},terminals_:{2:"error",5:"CLASS_DIAGRAM",6:"NEWLINE",8:"EOF",13:"LABEL",17:"CLASS",18:"STRUCT_START",20:"STRUCT_STOP",21:"ANNOTATION_START",22:"ANNOTATION_END",23:"MEMBER",24:"SEPARATOR",26:"STR",29:"AGGREGATION",30:"EXTENSION",31:"COMPOSITION",32:"DEPENDENCY",33:"LINE",34:"DOTTED_LINE",37:"graphCodeTokens",39:"TAGSTART",40:"TAGEND",41:"==",42:"--",43:"PCT",44:"DEFAULT",45:"SPACE",46:"MINUS",47:"keywords",48:"UNICODE_TEXT",49:"NUM",50:"ALPHA"},productions_:[0,[3,1],[4,4],[7,1],[7,2],[7,3],[10,2],[10,1],[9,1],[9,2],[9,1],[9,1],[9,1],[14,2],[14,5],[16,4],[19,1],[19,2],[15,1],[15,2],[15,1],[15,1],[12,3],[12,4],[12,4],[12,5],[25,3],[25,2],[25,2],[25,1],[27,1],[27,1],[27,1],[27,1],[28,1],[28,1],[35,1],[35,1],[36,1],[36,1],[36,1],[36,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[11,1],[11,1],[11,1]],performAction:function(t,e,n,r,i,o,a){var s=o.length-1;switch(i){case 6:this.$=o[s-1]+o[s];break;case 7:this.$=o[s];break;case 8:r.addRelation(o[s]);break;case 9:o[s-1].title=r.cleanupLabel(o[s]),r.addRelation(o[s-1]);break;case 13:r.addClass(o[s]);break;case 14:r.addClass(o[s-3]),r.addMembers(o[s-3],o[s-1]);break;case 15:r.addAnnotation(o[s],o[s-2]);break;case 16:this.$=[o[s]];break;case 17:o[s].push(o[s-1]),this.$=o[s];break;case 18:break;case 19:r.addMember(o[s-1],r.cleanupLabel(o[s]));break;case 20:case 21:break;case 22:this.$={id1:o[s-2],id2:o[s],relation:o[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 23:this.$={id1:o[s-3],id2:o[s],relation:o[s-1],relationTitle1:o[s-2],relationTitle2:"none"};break;case 24:this.$={id1:o[s-3],id2:o[s],relation:o[s-2],relationTitle1:"none",relationTitle2:o[s-1]};break;case 25:this.$={id1:o[s-4],id2:o[s],relation:o[s-2],relationTitle1:o[s-3],relationTitle2:o[s-1]};break;case 26:this.$={type1:o[s-2],type2:o[s],lineType:o[s-1]};break;case 27:this.$={type1:"none",type2:o[s],lineType:o[s-1]};break;case 28:this.$={type1:o[s-1],type2:"none",lineType:o[s]};break;case 29:this.$={type1:"none",type2:"none",lineType:o[s]};break;case 30:this.$=r.relationType.AGGREGATION;break;case 31:this.$=r.relationType.EXTENSION;break;case 32:this.$=r.relationType.COMPOSITION;break;case 33:this.$=r.relationType.DEPENDENCY;break;case 34:this.$=r.lineType.LINE;break;case 35:this.$=r.lineType.DOTTED_LINE}},table:[{3:1,4:2,5:[1,3]},{1:[3]},{1:[2,1]},{6:[1,4]},{7:5,9:6,10:11,11:16,12:7,14:8,15:9,16:10,17:e,21:n,23:r,24:i,48:o,49:a,50:s},{8:[1,20]},{6:[1,21],8:[2,3]},t(u,[2,8],{13:[1,22]}),t(u,[2,10]),t(u,[2,11]),t(u,[2,12]),t(u,[2,18],{25:23,27:26,28:27,13:[1,25],26:[1,24],29:c,30:f,31:l,32:h,33:d,34:p}),{10:34,11:16,48:o,49:a,50:s},t(u,[2,20]),t(u,[2,21]),{11:35,48:o,49:a,50:s},t(g,[2,7],{11:16,10:36,48:o,49:a,50:s}),t(y,[2,49]),t(y,[2,50]),t(y,[2,51]),{1:[2,2]},{7:37,8:[2,4],9:6,10:11,11:16,12:7,14:8,15:9,16:10,17:e,21:n,23:r,24:i,48:o,49:a,50:s},t(u,[2,9]),{10:38,11:16,26:[1,39],48:o,49:a,50:s},{25:40,27:26,28:27,29:c,30:f,31:l,32:h,33:d,34:p},t(u,[2,19]),{28:41,33:d,34:p},t(b,[2,29],{27:42,29:c,30:f,31:l,32:h}),t(m,[2,30]),t(m,[2,31]),t(m,[2,32]),t(m,[2,33]),t(v,[2,34]),t(v,[2,35]),t(u,[2,13],{18:[1,43]}),{22:[1,44]},t(g,[2,6]),{8:[2,5]},t(_,[2,22]),{10:45,11:16,48:o,49:a,50:s},{10:46,11:16,26:[1,47],48:o,49:a,50:s},t(b,[2,28],{27:48,29:c,30:f,31:l,32:h}),t(b,[2,27]),{19:49,23:w},{10:51,11:16,48:o,49:a,50:s},t(_,[2,24]),t(_,[2,23]),{10:52,11:16,48:o,49:a,50:s},t(b,[2,26]),{20:[1,53]},{19:54,20:[2,16],23:w},t(u,[2,15]),t(_,[2,25]),t(u,[2,14]),{20:[2,17]}],defaultActions:{2:[2,1],20:[2,2],37:[2,5],54:[2,17]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],o=[],a=this.table,s="",u=0,c=0,f=0,l=2,h=1,d=o.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var b=p.yylloc;o.push(b);var m=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||h)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,w,x,k,E,A,S,T,M,D={};;){if(x=n[n.length-1],this.defaultActions[x]?k=this.defaultActions[x]:(null==_&&(_=v()),k=a[x]&&a[x][_]),void 0===k||!k.length||!k[0]){var C="";for(A in M=[],a[x])this.terminals_[A]&&A>l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},k={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:break;case 1:return 6;case 2:break;case 3:return 5;case 4:return this.begin("struct"),18;case 5:return this.popState(),20;case 6:break;case 7:return"MEMBER";case 8:return 17;case 9:return 21;case 10:return 22;case 11:this.begin("string");break;case 12:this.popState();break;case 13:return"STR";case 14:case 15:return 30;case 16:case 17:return 32;case 18:return 31;case 19:return 29;case 20:return 33;case 21:return 34;case 22:return 13;case 23:return 46;case 24:return"DOT";case 25:return"PLUS";case 26:return 43;case 27:case 28:return"EQUALS";case 29:return 50;case 30:return"PUNCTUATION";case 31:return 49;case 32:return 48;case 33:return 45;case 34:return 8}},rules:[/^(?:%%[^\n]*)/,/^(?:\n+)/,/^(?:\s+)/,/^(?:classDiagram\b)/,/^(?:[\{])/,/^(?:\})/,/^(?:[\n])/,/^(?:[^\{\}\n]*)/,/^(?:class\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:--)/,/^(?:\.\.)/,/^(?::[^\n;]+)/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:[!"#$%&'*+,-.`?\\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:$)/],conditions:{string:{rules:[12,13],inclusive:!1},struct:{rules:[5,6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,8,9,10,11,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34],inclusive:!0}}};function E(){this.yy={}}return x.lexer=k,E.prototype=x,x.Parser=E,new E}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){(function(t,r){var i=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,2],n=[1,3],r=[1,4],i=[2,4],o=[1,9],a=[1,11],s=[1,13],u=[1,14],c=[1,15],f=[1,16],l=[1,21],h=[1,17],d=[1,18],p=[1,19],g=[1,20],y=[1,22],b=[1,4,5,13,14,16,18,19,21,22,23,24,25,28],m=[1,4,5,11,12,13,14,16,18,19,21,22,23,24,25,28],v=[4,5,13,14,16,18,19,21,22,23,24,25,28],_={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,idStatement:10,DESCR:11,"--\x3e":12,HIDE_EMPTY:13,scale:14,WIDTH:15,COMPOSIT_STATE:16,STRUCT_START:17,STRUCT_STOP:18,STATE_DESCR:19,AS:20,ID:21,FORK:22,JOIN:23,CONCURRENT:24,note:25,notePosition:26,NOTE_TEXT:27,EDGE_STATE:28,left_of:29,right_of:30,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",11:"DESCR",12:"--\x3e",13:"HIDE_EMPTY",14:"scale",15:"WIDTH",16:"COMPOSIT_STATE",17:"STRUCT_START",18:"STRUCT_STOP",19:"STATE_DESCR",20:"AS",21:"ID",22:"FORK",23:"JOIN",24:"CONCURRENT",25:"note",27:"NOTE_TEXT",28:"EDGE_STATE",29:"left_of",30:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,4],[9,4],[10,1],[10,1],[26,1],[26,1]],performAction:function(t,e,n,r,i,o,a){var s=o.length-1;switch(i){case 3:return r.setRootDoc(o[s]),o[s];case 4:this.$=[];break;case 5:"nl"!=o[s]&&(o[s-1].push(o[s]),this.$=o[s-1]);break;case 6:case 7:this.$=o[s];break;case 8:this.$="nl";break;case 9:this.$={stmt:"state",id:o[s],type:"default",description:""};break;case 10:this.$={stmt:"state",id:o[s-1],type:"default",description:o[s].trim()};break;case 11:this.$={stmt:"relation",state1:{stmt:"state",id:o[s-2],type:"default",description:""},state2:{stmt:"state",id:o[s],type:"default",description:""}};break;case 12:this.$={stmt:"relation",state1:{stmt:"state",id:o[s-3],type:"default",description:""},state2:{stmt:"state",id:o[s-1],type:"default",description:""},description:o[s].substr(1).trim()};break;case 16:this.$={stmt:"state",id:o[s-3],type:"default",description:"",doc:o[s-1]};break;case 17:var u=o[s],c=o[s-2].trim();if(o[s].match(":")){var f=o[s].split(":");u=f[0],c=[c,f[1]]}this.$={stmt:"state",id:u,type:"default",description:c};break;case 18:this.$={stmt:"state",id:o[s-3],type:"default",description:o[s-5],doc:o[s-1]};break;case 19:this.$={stmt:"state",id:o[s],type:"fork"};break;case 20:this.$={stmt:"state",id:o[s],type:"join"};break;case 21:this.$={stmt:"state",id:r.getDividerId(),type:"divider"};break;case 22:this.$={stmt:"state",id:o[s-1].trim(),note:{position:o[s-2].trim(),text:o[s].trim()}};break;case 24:case 25:this.$=o[s]}},table:[{3:1,4:e,5:n,6:r},{1:[3]},{3:5,4:e,5:n,6:r},{3:6,4:e,5:n,6:r},t([1,4,5,13,14,16,19,21,22,23,24,25,28],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:o,5:a,8:8,9:10,10:12,13:s,14:u,16:c,19:f,21:l,22:h,23:d,24:p,25:g,28:y},t(b,[2,5]),{9:23,10:12,13:s,14:u,16:c,19:f,21:l,22:h,23:d,24:p,25:g,28:y},t(b,[2,7]),t(b,[2,8]),t(b,[2,9],{11:[1,24],12:[1,25]}),t(b,[2,13]),{15:[1,26]},t(b,[2,15],{17:[1,27]}),{20:[1,28]},t(b,[2,19]),t(b,[2,20]),t(b,[2,21]),{26:29,27:[1,30],29:[1,31],30:[1,32]},t(m,[2,24]),t(m,[2,25]),t(b,[2,6]),t(b,[2,10]),{10:33,21:l,28:y},t(b,[2,14]),t(v,i,{7:34}),{21:[1,35]},{21:[1,36]},{20:[1,37]},{21:[2,26]},{21:[2,27]},t(b,[2,11],{11:[1,38]}),{4:o,5:a,8:8,9:10,10:12,13:s,14:u,16:c,18:[1,39],19:f,21:l,22:h,23:d,24:p,25:g,28:y},t(b,[2,17],{17:[1,40]}),{27:[1,41]},{21:[1,42]},t(b,[2,12]),t(b,[2,16]),t(v,i,{7:43}),t(b,[2,22]),t(b,[2,23]),{4:o,5:a,8:8,9:10,10:12,13:s,14:u,16:c,18:[1,44],19:f,21:l,22:h,23:d,24:p,25:g,28:y},t(b,[2,18])],defaultActions:{5:[2,1],6:[2,2],31:[2,26],32:[2,27]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],o=[],a=this.table,s="",u=0,c=0,f=0,l=2,h=1,d=o.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var b=p.yylloc;o.push(b);var m=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||h)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,w,x,k,E,A,S,T,M,D={};;){if(x=n[n.length-1],this.defaultActions[x]?k=this.defaultActions[x]:(null==_&&(_=v()),k=a[x]&&a[x][_]),void 0===k||!k.length||!k[0]){var C="";for(A in M=[],a[x])this.terminals_[A]&&A>l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},w={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 5;case 1:case 2:case 3:case 4:break;case 5:return this.pushState("SCALE"),14;case 6:return 15;case 7:this.popState();break;case 8:this.pushState("STATE");break;case 9:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),22;case 10:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),23;case 11:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),22;case 12:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),23;case 13:this.begin("STATE_STRING");break;case 14:return this.popState(),this.pushState("STATE_ID"),"AS";case 15:return this.popState(),"ID";case 16:this.popState();break;case 17:return"STATE_DESCR";case 18:return 16;case 19:this.popState();break;case 20:return this.popState(),this.pushState("struct"),17;case 21:return this.popState(),18;case 22:break;case 23:return this.begin("NOTE"),25;case 24:return this.popState(),this.pushState("NOTE_ID"),29;case 25:return this.popState(),this.pushState("NOTE_ID"),30;case 26:this.popState(),this.pushState("FLOATING_NOTE");break;case 27:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 28:break;case 29:return"NOTE_TEXT";case 30:return this.popState(),"ID";case 31:return this.popState(),this.pushState("NOTE_TEXT"),21;case 32:return this.popState(),e.yytext=e.yytext.substr(2).trim(),27;case 33:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),27;case 34:return 6;case 35:return 13;case 36:return 28;case 37:return 21;case 38:return e.yytext=e.yytext.trim(),11;case 39:return 12;case 40:return 24;case 41:return 5;case 42:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:["])/i,/^(?:as\s*)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:\s*[^:;]+end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[2,3],inclusive:!1},struct:{rules:[2,3,8,21,22,23,36,37,38,39,40],inclusive:!1},FLOATING_NOTE_ID:{rules:[30],inclusive:!1},FLOATING_NOTE:{rules:[27,28,29],inclusive:!1},NOTE_TEXT:{rules:[32,33],inclusive:!1},NOTE_ID:{rules:[31],inclusive:!1},NOTE:{rules:[24,25,26],inclusive:!1},SCALE:{rules:[6,7],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[15],inclusive:!1},STATE_STRING:{rules:[16,17],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[2,3,9,10,11,12,13,14,18,19,20],inclusive:!1},ID:{rules:[2,3],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,8,20,23,34,35,36,37,38,39,41,42],inclusive:!0}}};function x(){this.yy={}}return _.lexer=w,x.prototype=_,_.Parser=x,new x}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){(function(t,n){(function(){var r,i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",s="__lodash_hash_undefined__",u=500,c="__lodash_placeholder__",f=1,l=2,h=4,d=1,p=2,g=1,y=2,b=4,m=8,v=16,_=32,w=64,x=128,k=256,E=512,A=30,S="...",T=800,M=16,D=1,C=2,O=1/0,R=9007199254740991,I=17976931348623157e292,N=NaN,B=4294967295,L=B-1,P=B>>>1,F=[["ary",x],["bind",g],["bindKey",y],["curry",m],["curryRight",v],["flip",E],["partial",_],["partialRight",w],["rearg",k]],q="[object Arguments]",j="[object Array]",U="[object AsyncFunction]",z="[object Boolean]",Y="[object Date]",V="[object DOMException]",H="[object Error]",$="[object Function]",G="[object GeneratorFunction]",W="[object Map]",K="[object Number]",X="[object Null]",Z="[object Object]",J="[object Proxy]",Q="[object RegExp]",tt="[object Set]",et="[object String]",nt="[object Symbol]",rt="[object Undefined]",it="[object WeakMap]",ot="[object WeakSet]",at="[object ArrayBuffer]",st="[object DataView]",ut="[object Float32Array]",ct="[object Float64Array]",ft="[object Int8Array]",lt="[object Int16Array]",ht="[object Int32Array]",dt="[object Uint8Array]",pt="[object Uint8ClampedArray]",gt="[object Uint16Array]",yt="[object Uint32Array]",bt=/\b__p \+= '';/g,mt=/\b(__p \+=) '' \+/g,vt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,_t=/&(?:amp|lt|gt|quot|#39);/g,wt=/[&<>"']/g,xt=RegExp(_t.source),kt=RegExp(wt.source),Et=/<%-([\s\S]+?)%>/g,At=/<%([\s\S]+?)%>/g,St=/<%=([\s\S]+?)%>/g,Tt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Mt=/^\w*$/,Dt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ct=/[\\^$.*+?()[\]{}|]/g,Ot=RegExp(Ct.source),Rt=/^\s+|\s+$/g,It=/^\s+/,Nt=/\s+$/,Bt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Lt=/\{\n\/\* \[wrapped with (.+)\] \*/,Pt=/,? & /,Ft=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,qt=/\\(\\)?/g,jt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ut=/\w*$/,zt=/^[-+]0x[0-9a-f]+$/i,Yt=/^0b[01]+$/i,Vt=/^\[object .+?Constructor\]$/,Ht=/^0o[0-7]+$/i,$t=/^(?:0|[1-9]\d*)$/,Gt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Wt=/($^)/,Kt=/['\n\r\u2028\u2029\\]/g,Xt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Zt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Jt="[\\ud800-\\udfff]",Qt="["+Zt+"]",te="["+Xt+"]",ee="\\d+",ne="[\\u2700-\\u27bf]",re="[a-z\\xdf-\\xf6\\xf8-\\xff]",ie="[^\\ud800-\\udfff"+Zt+ee+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",oe="\\ud83c[\\udffb-\\udfff]",ae="[^\\ud800-\\udfff]",se="(?:\\ud83c[\\udde6-\\uddff]){2}",ue="[\\ud800-\\udbff][\\udc00-\\udfff]",ce="[A-Z\\xc0-\\xd6\\xd8-\\xde]",fe="(?:"+re+"|"+ie+")",le="(?:"+ce+"|"+ie+")",he="(?:"+te+"|"+oe+")"+"?",de="[\\ufe0e\\ufe0f]?"+he+("(?:\\u200d(?:"+[ae,se,ue].join("|")+")[\\ufe0e\\ufe0f]?"+he+")*"),pe="(?:"+[ne,se,ue].join("|")+")"+de,ge="(?:"+[ae+te+"?",te,se,ue,Jt].join("|")+")",ye=RegExp("['’]","g"),be=RegExp(te,"g"),me=RegExp(oe+"(?="+oe+")|"+ge+de,"g"),ve=RegExp([ce+"?"+re+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[Qt,ce,"$"].join("|")+")",le+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[Qt,ce+fe,"$"].join("|")+")",ce+"?"+fe+"+(?:['’](?:d|ll|m|re|s|t|ve))?",ce+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ee,pe].join("|"),"g"),_e=RegExp("[\\u200d\\ud800-\\udfff"+Xt+"\\ufe0e\\ufe0f]"),we=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,xe=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ke=-1,Ee={};Ee[ut]=Ee[ct]=Ee[ft]=Ee[lt]=Ee[ht]=Ee[dt]=Ee[pt]=Ee[gt]=Ee[yt]=!0,Ee[q]=Ee[j]=Ee[at]=Ee[z]=Ee[st]=Ee[Y]=Ee[H]=Ee[$]=Ee[W]=Ee[K]=Ee[Z]=Ee[Q]=Ee[tt]=Ee[et]=Ee[it]=!1;var Ae={};Ae[q]=Ae[j]=Ae[at]=Ae[st]=Ae[z]=Ae[Y]=Ae[ut]=Ae[ct]=Ae[ft]=Ae[lt]=Ae[ht]=Ae[W]=Ae[K]=Ae[Z]=Ae[Q]=Ae[tt]=Ae[et]=Ae[nt]=Ae[dt]=Ae[pt]=Ae[gt]=Ae[yt]=!0,Ae[H]=Ae[$]=Ae[it]=!1;var Se={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Te=parseFloat,Me=parseInt,De="object"==typeof t&&t&&t.Object===Object&&t,Ce="object"==typeof self&&self&&self.Object===Object&&self,Oe=De||Ce||Function("return this")(),Re=e&&!e.nodeType&&e,Ie=Re&&"object"==typeof n&&n&&!n.nodeType&&n,Ne=Ie&&Ie.exports===Re,Be=Ne&&De.process,Le=function(){try{var t=Ie&&Ie.require&&Ie.require("util").types;return t||Be&&Be.binding&&Be.binding("util")}catch(t){}}(),Pe=Le&&Le.isArrayBuffer,Fe=Le&&Le.isDate,qe=Le&&Le.isMap,je=Le&&Le.isRegExp,Ue=Le&&Le.isSet,ze=Le&&Le.isTypedArray;function Ye(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Ve(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i-1}function Xe(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function vn(t,e){for(var n=t.length;n--&&an(e,t[n],0)>-1;);return n}var _n=ln({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),wn=ln({"&":"&","<":"<",">":">",'"':""","'":"'"});function xn(t){return"\\"+Se[t]}function kn(t){return _e.test(t)}function En(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function An(t,e){return function(n){return t(e(n))}}function Sn(t,e){for(var n=-1,r=t.length,i=0,o=[];++n",""":'"',"'":"'"});var Rn=function t(e){var n,Xt=(e=null==e?Oe:Rn.defaults(Oe.Object(),e,Rn.pick(Oe,xe))).Array,Zt=e.Date,Jt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,ne=e.RegExp,re=e.String,ie=e.TypeError,oe=Xt.prototype,ae=Qt.prototype,se=ee.prototype,ue=e["__core-js_shared__"],ce=ae.toString,fe=se.hasOwnProperty,le=0,he=(n=/[^.]+$/.exec(ue&&ue.keys&&ue.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",de=se.toString,pe=ce.call(ee),ge=Oe._,me=ne("^"+ce.call(fe).replace(Ct,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),_e=Ne?e.Buffer:r,Se=e.Symbol,De=e.Uint8Array,Ce=_e?_e.allocUnsafe:r,Re=An(ee.getPrototypeOf,ee),Ie=ee.create,Be=se.propertyIsEnumerable,Le=oe.splice,nn=Se?Se.isConcatSpreadable:r,ln=Se?Se.iterator:r,In=Se?Se.toStringTag:r,Nn=function(){try{var t=qo(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),Bn=e.clearTimeout!==Oe.clearTimeout&&e.clearTimeout,Ln=Zt&&Zt.now!==Oe.Date.now&&Zt.now,Pn=e.setTimeout!==Oe.setTimeout&&e.setTimeout,Fn=te.ceil,qn=te.floor,jn=ee.getOwnPropertySymbols,Un=_e?_e.isBuffer:r,zn=e.isFinite,Yn=oe.join,Vn=An(ee.keys,ee),Hn=te.max,$n=te.min,Gn=Zt.now,Wn=e.parseInt,Kn=te.random,Xn=oe.reverse,Zn=qo(e,"DataView"),Jn=qo(e,"Map"),Qn=qo(e,"Promise"),tr=qo(e,"Set"),er=qo(e,"WeakMap"),nr=qo(ee,"create"),rr=er&&new er,ir={},or=la(Zn),ar=la(Jn),sr=la(Qn),ur=la(tr),cr=la(er),fr=Se?Se.prototype:r,lr=fr?fr.valueOf:r,hr=fr?fr.toString:r;function dr(t){if(Ms(t)&&!bs(t)&&!(t instanceof br)){if(t instanceof yr)return t;if(fe.call(t,"__wrapped__"))return ha(t)}return new yr(t)}var pr=function(){function t(){}return function(e){if(!Ts(e))return{};if(Ie)return Ie(e);t.prototype=e;var n=new t;return t.prototype=r,n}}();function gr(){}function yr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=r}function br(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=B,this.__views__=[]}function mr(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Br(t,e,n,i,o,a){var s,u=e&f,c=e&l,d=e&h;if(n&&(s=o?n(t,i,o,a):n(t)),s!==r)return s;if(!Ts(t))return t;var p=bs(t);if(p){if(s=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&fe.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!u)return no(t,s)}else{var g=zo(t),y=g==$||g==G;if(ws(t))return Xi(t,u);if(g==Z||g==q||y&&!o){if(s=c||y?{}:Vo(t),!u)return c?function(t,e){return ro(t,Uo(t),e)}(t,function(t,e){return t&&ro(e,ou(e),t)}(s,t)):function(t,e){return ro(t,jo(t),e)}(t,Or(s,t))}else{if(!Ae[g])return o?t:{};s=function(t,e,n){var r=t.constructor;switch(e){case at:return Zi(t);case z:case Y:return new r(+t);case st:return function(t,e){var n=e?Zi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case ut:case ct:case ft:case lt:case ht:case dt:case pt:case gt:case yt:return Ji(t,n);case W:return new r;case K:case et:return new r(t);case Q:return function(t){var e=new t.constructor(t.source,Ut.exec(t));return e.lastIndex=t.lastIndex,e}(t);case tt:return new r;case nt:return i=t,lr?ee(lr.call(i)):{}}var i}(t,g,u)}}a||(a=new xr);var b=a.get(t);if(b)return b;a.set(t,s),Is(t)?t.forEach((function(r){s.add(Br(r,e,n,r,t,a))})):Ds(t)&&t.forEach((function(r,i){s.set(i,Br(r,e,n,i,t,a))}));var m=p?r:(d?c?Ro:Oo:c?ou:iu)(t);return He(m||t,(function(r,i){m&&(r=t[i=r]),Mr(s,i,Br(r,e,n,i,t,a))})),s}function Lr(t,e,n){var i=n.length;if(null==t)return!i;for(t=ee(t);i--;){var o=n[i],a=e[o],s=t[o];if(s===r&&!(o in t)||!a(s))return!1}return!0}function Pr(t,e,n){if("function"!=typeof t)throw new ie(a);return ia((function(){t.apply(r,n)}),e)}function Fr(t,e,n,r){var o=-1,a=Ke,s=!0,u=t.length,c=[],f=e.length;if(!u)return c;n&&(e=Ze(e,gn(n))),r?(a=Xe,s=!1):e.length>=i&&(a=bn,s=!1,e=new wr(e));t:for(;++o-1},vr.prototype.set=function(t,e){var n=this.__data__,r=Dr(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},_r.prototype.clear=function(){this.size=0,this.__data__={hash:new mr,map:new(Jn||vr),string:new mr}},_r.prototype.delete=function(t){var e=Po(this,t).delete(t);return this.size-=e?1:0,e},_r.prototype.get=function(t){return Po(this,t).get(t)},_r.prototype.has=function(t){return Po(this,t).has(t)},_r.prototype.set=function(t,e){var n=Po(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},wr.prototype.add=wr.prototype.push=function(t){return this.__data__.set(t,s),this},wr.prototype.has=function(t){return this.__data__.has(t)},xr.prototype.clear=function(){this.__data__=new vr,this.size=0},xr.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},xr.prototype.get=function(t){return this.__data__.get(t)},xr.prototype.has=function(t){return this.__data__.has(t)},xr.prototype.set=function(t,e){var n=this.__data__;if(n instanceof vr){var r=n.__data__;if(!Jn||r.length0&&n(s)?e>1?Vr(s,e-1,n,r,i):Je(i,s):r||(i[i.length]=s)}return i}var Hr=so(),$r=so(!0);function Gr(t,e){return t&&Hr(t,e,iu)}function Wr(t,e){return t&&$r(t,e,iu)}function Kr(t,e){return We(e,(function(e){return Es(t[e])}))}function Xr(t,e){for(var n=0,i=(e=$i(e,t)).length;null!=t&&ne}function ti(t,e){return null!=t&&fe.call(t,e)}function ei(t,e){return null!=t&&e in ee(t)}function ni(t,e,n){for(var i=n?Xe:Ke,o=t[0].length,a=t.length,s=a,u=Xt(a),c=1/0,f=[];s--;){var l=t[s];s&&e&&(l=Ze(l,gn(e))),c=$n(l.length,c),u[s]=!n&&(e||o>=120&&l.length>=120)?new wr(s&&l):r}l=t[0];var h=-1,d=u[0];t:for(;++h=s)return u;var c=n[r];return u*("desc"==c?-1:1)}}return t.index-e.index}(t,e,n)}))}function mi(t,e,n){for(var r=-1,i=e.length,o={};++r-1;)s!==t&&Le.call(s,u,1),Le.call(t,u,1);return t}function _i(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;$o(i)?Le.call(t,i,1):Fi(t,i)}}return t}function wi(t,e){return t+qn(Kn()*(e-t+1))}function xi(t,e){var n="";if(!t||e<1||e>R)return n;do{e%2&&(n+=t),(e=qn(e/2))&&(t+=t)}while(e);return n}function ki(t,e){return oa(ta(t,e,Cu),t+"")}function Ei(t){return Er(du(t))}function Ai(t,e){var n=du(t);return ua(n,Nr(e,0,n.length))}function Si(t,e,n,i){if(!Ts(t))return t;for(var o=-1,a=(e=$i(e,t)).length,s=a-1,u=t;null!=u&&++oi?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var o=Xt(i);++r>>1,a=t[o];null!==a&&!Bs(a)&&(n?a<=e:a=i){var f=e?null:ko(t);if(f)return Tn(f);s=!1,o=bn,c=new wr}else c=e?[]:u;t:for(;++r=i?t:Ci(t,e,n)}var Ki=Bn||function(t){return Oe.clearTimeout(t)};function Xi(t,e){if(e)return t.slice();var n=t.length,r=Ce?Ce(n):new t.constructor(n);return t.copy(r),r}function Zi(t){var e=new t.constructor(t.byteLength);return new De(e).set(new De(t)),e}function Ji(t,e){var n=e?Zi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Qi(t,e){if(t!==e){var n=t!==r,i=null===t,o=t==t,a=Bs(t),s=e!==r,u=null===e,c=e==e,f=Bs(e);if(!u&&!f&&!a&&t>e||a&&s&&c&&!u&&!f||i&&s&&c||!n&&c||!o)return 1;if(!i&&!a&&!f&&t1?n[o-1]:r,s=o>2?n[2]:r;for(a=t.length>3&&"function"==typeof a?(o--,a):r,s&&Go(n[0],n[1],s)&&(a=o<3?r:a,o=1),e=ee(e);++i-1?o[a?e[s]:s]:r}}function ho(t){return Co((function(e){var n=e.length,i=n,o=yr.prototype.thru;for(t&&e.reverse();i--;){var s=e[i];if("function"!=typeof s)throw new ie(a);if(o&&!u&&"wrapper"==No(s))var u=new yr([],!0)}for(i=u?i:n;++i1&&m.reverse(),l&&cu))return!1;var f=a.get(t);if(f&&a.get(e))return f==e;var l=-1,h=!0,g=n&p?new wr:r;for(a.set(t,e),a.set(e,t);++l-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(Bt,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return He(F,(function(n){var r="_."+n[0];e&n[1]&&!Ke(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(Lt);return e?e[1].split(Pt):[]}(r),n)))}function sa(t){var e=0,n=0;return function(){var i=Gn(),o=M-(i-n);if(n=i,o>0){if(++e>=T)return arguments[0]}else e=0;return t.apply(r,arguments)}}function ua(t,e){var n=-1,i=t.length,o=i-1;for(e=e===r?i:e;++n1?t[e-1]:r;return n="function"==typeof n?(t.pop(),n):r,Ra(t,n)}));function qa(t){var e=dr(t);return e.__chain__=!0,e}function ja(t,e){return e(t)}var Ua=Co((function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,o=function(e){return Ir(e,t)};return!(e>1||this.__actions__.length)&&i instanceof br&&$o(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:ja,args:[o],thisArg:r}),new yr(i,this.__chain__).thru((function(t){return e&&!t.length&&t.push(r),t}))):this.thru(o)}));var za=io((function(t,e,n){fe.call(t,n)?++t[n]:Rr(t,n,1)}));var Ya=lo(ya),Va=lo(ba);function Ha(t,e){return(bs(t)?He:qr)(t,Lo(e,3))}function $a(t,e){return(bs(t)?$e:jr)(t,Lo(e,3))}var Ga=io((function(t,e,n){fe.call(t,n)?t[n].push(e):Rr(t,n,[e])}));var Wa=ki((function(t,e,n){var r=-1,i="function"==typeof e,o=vs(t)?Xt(t.length):[];return qr(t,(function(t){o[++r]=i?Ye(e,t,n):ri(t,e,n)})),o})),Ka=io((function(t,e,n){Rr(t,n,e)}));function Xa(t,e){return(bs(t)?Ze:hi)(t,Lo(e,3))}var Za=io((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ja=ki((function(t,e){if(null==t)return[];var n=e.length;return n>1&&Go(t,e[0],e[1])?e=[]:n>2&&Go(e[0],e[1],e[2])&&(e=[e[0]]),bi(t,Vr(e,1),[])})),Qa=Ln||function(){return Oe.Date.now()};function ts(t,e,n){return e=n?r:e,e=t&&null==e?t.length:e,Ao(t,x,r,r,r,r,e)}function es(t,e){var n;if("function"!=typeof e)throw new ie(a);return t=Us(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=r),n}}var ns=ki((function(t,e,n){var r=g;if(n.length){var i=Sn(n,Bo(ns));r|=_}return Ao(t,r,e,n,i)})),rs=ki((function(t,e,n){var r=g|y;if(n.length){var i=Sn(n,Bo(rs));r|=_}return Ao(e,r,t,n,i)}));function is(t,e,n){var i,o,s,u,c,f,l=0,h=!1,d=!1,p=!0;if("function"!=typeof t)throw new ie(a);function g(e){var n=i,a=o;return i=o=r,l=e,u=t.apply(a,n)}function y(t){var n=t-f;return f===r||n>=e||n<0||d&&t-l>=s}function b(){var t=Qa();if(y(t))return m(t);c=ia(b,function(t){var n=e-(t-f);return d?$n(n,s-(t-l)):n}(t))}function m(t){return c=r,p&&i?g(t):(i=o=r,u)}function v(){var t=Qa(),n=y(t);if(i=arguments,o=this,f=t,n){if(c===r)return function(t){return l=t,c=ia(b,e),h?g(t):u}(f);if(d)return Ki(c),c=ia(b,e),g(f)}return c===r&&(c=ia(b,e)),u}return e=Ys(e)||0,Ts(n)&&(h=!!n.leading,s=(d="maxWait"in n)?Hn(Ys(n.maxWait)||0,e):s,p="trailing"in n?!!n.trailing:p),v.cancel=function(){c!==r&&Ki(c),l=0,i=f=o=c=r},v.flush=function(){return c===r?u:m(Qa())},v}var os=ki((function(t,e){return Pr(t,1,e)})),as=ki((function(t,e,n){return Pr(t,Ys(e)||0,n)}));function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new ie(a);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(ss.Cache||_r),n}function us(t){if("function"!=typeof t)throw new ie(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=_r;var cs=Gi((function(t,e){var n=(e=1==e.length&&bs(e[0])?Ze(e[0],gn(Lo())):Ze(Vr(e,1),gn(Lo()))).length;return ki((function(r){for(var i=-1,o=$n(r.length,n);++i=e})),ys=ii(function(){return arguments}())?ii:function(t){return Ms(t)&&fe.call(t,"callee")&&!Be.call(t,"callee")},bs=Xt.isArray,ms=Pe?gn(Pe):function(t){return Ms(t)&&Jr(t)==at};function vs(t){return null!=t&&Ss(t.length)&&!Es(t)}function _s(t){return Ms(t)&&vs(t)}var ws=Un||Yu,xs=Fe?gn(Fe):function(t){return Ms(t)&&Jr(t)==Y};function ks(t){if(!Ms(t))return!1;var e=Jr(t);return e==H||e==V||"string"==typeof t.message&&"string"==typeof t.name&&!Os(t)}function Es(t){if(!Ts(t))return!1;var e=Jr(t);return e==$||e==G||e==U||e==J}function As(t){return"number"==typeof t&&t==Us(t)}function Ss(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=R}function Ts(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ms(t){return null!=t&&"object"==typeof t}var Ds=qe?gn(qe):function(t){return Ms(t)&&zo(t)==W};function Cs(t){return"number"==typeof t||Ms(t)&&Jr(t)==K}function Os(t){if(!Ms(t)||Jr(t)!=Z)return!1;var e=Re(t);if(null===e)return!0;var n=fe.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ce.call(n)==pe}var Rs=je?gn(je):function(t){return Ms(t)&&Jr(t)==Q};var Is=Ue?gn(Ue):function(t){return Ms(t)&&zo(t)==tt};function Ns(t){return"string"==typeof t||!bs(t)&&Ms(t)&&Jr(t)==et}function Bs(t){return"symbol"==typeof t||Ms(t)&&Jr(t)==nt}var Ls=ze?gn(ze):function(t){return Ms(t)&&Ss(t.length)&&!!Ee[Jr(t)]};var Ps=_o(li),Fs=_o((function(t,e){return t<=e}));function qs(t){if(!t)return[];if(vs(t))return Ns(t)?Cn(t):no(t);if(ln&&t[ln])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[ln]());var e=zo(t);return(e==W?En:e==tt?Tn:du)(t)}function js(t){return t?(t=Ys(t))===O||t===-O?(t<0?-1:1)*I:t==t?t:0:0===t?t:0}function Us(t){var e=js(t),n=e%1;return e==e?n?e-n:e:0}function zs(t){return t?Nr(Us(t),0,B):0}function Ys(t){if("number"==typeof t)return t;if(Bs(t))return N;if(Ts(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ts(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Rt,"");var n=Yt.test(t);return n||Ht.test(t)?Me(t.slice(2),n?2:8):zt.test(t)?N:+t}function Vs(t){return ro(t,ou(t))}function Hs(t){return null==t?"":Li(t)}var $s=oo((function(t,e){if(Zo(e)||vs(e))ro(e,iu(e),t);else for(var n in e)fe.call(e,n)&&Mr(t,n,e[n])})),Gs=oo((function(t,e){ro(e,ou(e),t)})),Ws=oo((function(t,e,n,r){ro(e,ou(e),t,r)})),Ks=oo((function(t,e,n,r){ro(e,iu(e),t,r)})),Xs=Co(Ir);var Zs=ki((function(t,e){t=ee(t);var n=-1,i=e.length,o=i>2?e[2]:r;for(o&&Go(e[0],e[1],o)&&(i=1);++n1),e})),ro(t,Ro(t),n),r&&(n=Br(n,f|l|h,Mo));for(var i=e.length;i--;)Fi(n,e[i]);return n}));var cu=Co((function(t,e){return null==t?{}:function(t,e){return mi(t,e,(function(e,n){return tu(t,n)}))}(t,e)}));function fu(t,e){if(null==t)return{};var n=Ze(Ro(t),(function(t){return[t]}));return e=Lo(e),mi(t,n,(function(t,n){return e(t,n[0])}))}var lu=Eo(iu),hu=Eo(ou);function du(t){return null==t?[]:yn(t,iu(t))}var pu=co((function(t,e,n){return e=e.toLowerCase(),t+(n?gu(e):e)}));function gu(t){return ku(Hs(t).toLowerCase())}function yu(t){return(t=Hs(t))&&t.replace(Gt,_n).replace(be,"")}var bu=co((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),mu=co((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),vu=uo("toLowerCase");var _u=co((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var wu=co((function(t,e,n){return t+(n?" ":"")+ku(e)}));var xu=co((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),ku=uo("toUpperCase");function Eu(t,e,n){return t=Hs(t),(e=n?r:e)===r?function(t){return we.test(t)}(t)?function(t){return t.match(ve)||[]}(t):function(t){return t.match(Ft)||[]}(t):t.match(e)||[]}var Au=ki((function(t,e){try{return Ye(t,r,e)}catch(t){return ks(t)?t:new Jt(t)}})),Su=Co((function(t,e){return He(e,(function(e){e=fa(e),Rr(t,e,ns(t[e],t))})),t}));function Tu(t){return function(){return t}}var Mu=ho(),Du=ho(!0);function Cu(t){return t}function Ou(t){return ui("function"==typeof t?t:Br(t,f))}var Ru=ki((function(t,e){return function(n){return ri(n,t,e)}})),Iu=ki((function(t,e){return function(n){return ri(t,n,e)}}));function Nu(t,e,n){var r=iu(e),i=Kr(e,r);null!=n||Ts(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Kr(e,iu(e)));var o=!(Ts(n)&&"chain"in n&&!n.chain),a=Es(t);return He(i,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__),i=n.__actions__=no(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,Je([this.value()],arguments))})})),t}function Bu(){}var Lu=bo(Ze),Pu=bo(Ge),Fu=bo(en);function qu(t){return Wo(t)?fn(fa(t)):function(t){return function(e){return Xr(e,t)}}(t)}var ju=vo(),Uu=vo(!0);function zu(){return[]}function Yu(){return!1}var Vu=yo((function(t,e){return t+e}),0),Hu=xo("ceil"),$u=yo((function(t,e){return t/e}),1),Gu=xo("floor");var Wu,Ku=yo((function(t,e){return t*e}),1),Xu=xo("round"),Zu=yo((function(t,e){return t-e}),0);return dr.after=function(t,e){if("function"!=typeof e)throw new ie(a);return t=Us(t),function(){if(--t<1)return e.apply(this,arguments)}},dr.ary=ts,dr.assign=$s,dr.assignIn=Gs,dr.assignInWith=Ws,dr.assignWith=Ks,dr.at=Xs,dr.before=es,dr.bind=ns,dr.bindAll=Su,dr.bindKey=rs,dr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return bs(t)?t:[t]},dr.chain=qa,dr.chunk=function(t,e,n){e=(n?Go(t,e,n):e===r)?1:Hn(Us(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var o=0,a=0,s=Xt(Fn(i/e));oo?0:o+n),(i=i===r||i>o?o:Us(i))<0&&(i+=o),i=n>i?0:zs(i);n>>0)?(t=Hs(t))&&("string"==typeof e||null!=e&&!Rs(e))&&!(e=Li(e))&&kn(t)?Wi(Cn(t),0,n):t.split(e,n):[]},dr.spread=function(t,e){if("function"!=typeof t)throw new ie(a);return e=null==e?0:Hn(Us(e),0),ki((function(n){var r=n[e],i=Wi(n,0,e);return r&&Je(i,r),Ye(t,this,i)}))},dr.tail=function(t){var e=null==t?0:t.length;return e?Ci(t,1,e):[]},dr.take=function(t,e,n){return t&&t.length?Ci(t,0,(e=n||e===r?1:Us(e))<0?0:e):[]},dr.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Ci(t,(e=i-(e=n||e===r?1:Us(e)))<0?0:e,i):[]},dr.takeRightWhile=function(t,e){return t&&t.length?ji(t,Lo(e,3),!1,!0):[]},dr.takeWhile=function(t,e){return t&&t.length?ji(t,Lo(e,3)):[]},dr.tap=function(t,e){return e(t),t},dr.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new ie(a);return Ts(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),is(t,e,{leading:r,maxWait:e,trailing:i})},dr.thru=ja,dr.toArray=qs,dr.toPairs=lu,dr.toPairsIn=hu,dr.toPath=function(t){return bs(t)?Ze(t,fa):Bs(t)?[t]:no(ca(Hs(t)))},dr.toPlainObject=Vs,dr.transform=function(t,e,n){var r=bs(t),i=r||ws(t)||Ls(t);if(e=Lo(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:Ts(t)&&Es(o)?pr(Re(t)):{}}return(i?He:Gr)(t,(function(t,r,i){return e(n,t,r,i)})),n},dr.unary=function(t){return ts(t,1)},dr.union=Ma,dr.unionBy=Da,dr.unionWith=Ca,dr.uniq=function(t){return t&&t.length?Pi(t):[]},dr.uniqBy=function(t,e){return t&&t.length?Pi(t,Lo(e,2)):[]},dr.uniqWith=function(t,e){return e="function"==typeof e?e:r,t&&t.length?Pi(t,r,e):[]},dr.unset=function(t,e){return null==t||Fi(t,e)},dr.unzip=Oa,dr.unzipWith=Ra,dr.update=function(t,e,n){return null==t?t:qi(t,e,Hi(n))},dr.updateWith=function(t,e,n,i){return i="function"==typeof i?i:r,null==t?t:qi(t,e,Hi(n),i)},dr.values=du,dr.valuesIn=function(t){return null==t?[]:yn(t,ou(t))},dr.without=Ia,dr.words=Eu,dr.wrap=function(t,e){return fs(Hi(e),t)},dr.xor=Na,dr.xorBy=Ba,dr.xorWith=La,dr.zip=Pa,dr.zipObject=function(t,e){return Yi(t||[],e||[],Mr)},dr.zipObjectDeep=function(t,e){return Yi(t||[],e||[],Si)},dr.zipWith=Fa,dr.entries=lu,dr.entriesIn=hu,dr.extend=Gs,dr.extendWith=Ws,Nu(dr,dr),dr.add=Vu,dr.attempt=Au,dr.camelCase=pu,dr.capitalize=gu,dr.ceil=Hu,dr.clamp=function(t,e,n){return n===r&&(n=e,e=r),n!==r&&(n=(n=Ys(n))==n?n:0),e!==r&&(e=(e=Ys(e))==e?e:0),Nr(Ys(t),e,n)},dr.clone=function(t){return Br(t,h)},dr.cloneDeep=function(t){return Br(t,f|h)},dr.cloneDeepWith=function(t,e){return Br(t,f|h,e="function"==typeof e?e:r)},dr.cloneWith=function(t,e){return Br(t,h,e="function"==typeof e?e:r)},dr.conformsTo=function(t,e){return null==e||Lr(t,e,iu(e))},dr.deburr=yu,dr.defaultTo=function(t,e){return null==t||t!=t?e:t},dr.divide=$u,dr.endsWith=function(t,e,n){t=Hs(t),e=Li(e);var i=t.length,o=n=n===r?i:Nr(Us(n),0,i);return(n-=e.length)>=0&&t.slice(n,o)==e},dr.eq=ds,dr.escape=function(t){return(t=Hs(t))&&kt.test(t)?t.replace(wt,wn):t},dr.escapeRegExp=function(t){return(t=Hs(t))&&Ot.test(t)?t.replace(Ct,"\\$&"):t},dr.every=function(t,e,n){var i=bs(t)?Ge:Ur;return n&&Go(t,e,n)&&(e=r),i(t,Lo(e,3))},dr.find=Ya,dr.findIndex=ya,dr.findKey=function(t,e){return rn(t,Lo(e,3),Gr)},dr.findLast=Va,dr.findLastIndex=ba,dr.findLastKey=function(t,e){return rn(t,Lo(e,3),Wr)},dr.floor=Gu,dr.forEach=Ha,dr.forEachRight=$a,dr.forIn=function(t,e){return null==t?t:Hr(t,Lo(e,3),ou)},dr.forInRight=function(t,e){return null==t?t:$r(t,Lo(e,3),ou)},dr.forOwn=function(t,e){return t&&Gr(t,Lo(e,3))},dr.forOwnRight=function(t,e){return t&&Wr(t,Lo(e,3))},dr.get=Qs,dr.gt=ps,dr.gte=gs,dr.has=function(t,e){return null!=t&&Yo(t,e,ti)},dr.hasIn=tu,dr.head=va,dr.identity=Cu,dr.includes=function(t,e,n,r){t=vs(t)?t:du(t),n=n&&!r?Us(n):0;var i=t.length;return n<0&&(n=Hn(i+n,0)),Ns(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&an(t,e,n)>-1},dr.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:Us(n);return i<0&&(i=Hn(r+i,0)),an(t,e,i)},dr.inRange=function(t,e,n){return e=js(e),n===r?(n=e,e=0):n=js(n),function(t,e,n){return t>=$n(e,n)&&t=-R&&t<=R},dr.isSet=Is,dr.isString=Ns,dr.isSymbol=Bs,dr.isTypedArray=Ls,dr.isUndefined=function(t){return t===r},dr.isWeakMap=function(t){return Ms(t)&&zo(t)==it},dr.isWeakSet=function(t){return Ms(t)&&Jr(t)==ot},dr.join=function(t,e){return null==t?"":Yn.call(t,e)},dr.kebabCase=bu,dr.last=ka,dr.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var o=i;return n!==r&&(o=(o=Us(n))<0?Hn(i+o,0):$n(o,i-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,o):on(t,un,o,!0)},dr.lowerCase=mu,dr.lowerFirst=vu,dr.lt=Ps,dr.lte=Fs,dr.max=function(t){return t&&t.length?zr(t,Cu,Qr):r},dr.maxBy=function(t,e){return t&&t.length?zr(t,Lo(e,2),Qr):r},dr.mean=function(t){return cn(t,Cu)},dr.meanBy=function(t,e){return cn(t,Lo(e,2))},dr.min=function(t){return t&&t.length?zr(t,Cu,li):r},dr.minBy=function(t,e){return t&&t.length?zr(t,Lo(e,2),li):r},dr.stubArray=zu,dr.stubFalse=Yu,dr.stubObject=function(){return{}},dr.stubString=function(){return""},dr.stubTrue=function(){return!0},dr.multiply=Ku,dr.nth=function(t,e){return t&&t.length?yi(t,Us(e)):r},dr.noConflict=function(){return Oe._===this&&(Oe._=ge),this},dr.noop=Bu,dr.now=Qa,dr.pad=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return mo(qn(i),n)+t+mo(Fn(i),n)},dr.padEnd=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;return e&&re){var i=t;t=e,e=i}if(n||t%1||e%1){var o=Kn();return $n(t+o*(e-t+Te("1e-"+((o+"").length-1))),e)}return wi(t,e)},dr.reduce=function(t,e,n){var r=bs(t)?Qe:hn,i=arguments.length<3;return r(t,Lo(e,4),n,i,qr)},dr.reduceRight=function(t,e,n){var r=bs(t)?tn:hn,i=arguments.length<3;return r(t,Lo(e,4),n,i,jr)},dr.repeat=function(t,e,n){return e=(n?Go(t,e,n):e===r)?1:Us(e),xi(Hs(t),e)},dr.replace=function(){var t=arguments,e=Hs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},dr.result=function(t,e,n){var i=-1,o=(e=$i(e,t)).length;for(o||(o=1,t=r);++iR)return[];var n=B,r=$n(t,B);e=Lo(e),t-=B;for(var i=pn(r,e);++n=a)return t;var u=n-Dn(i);if(u<1)return i;var c=s?Wi(s,0,u).join(""):t.slice(0,u);if(o===r)return c+i;if(s&&(u+=c.length-u),Rs(o)){if(t.slice(u).search(o)){var f,l=c;for(o.global||(o=ne(o.source,Hs(Ut.exec(o))+"g")),o.lastIndex=0;f=o.exec(l);)var h=f.index;c=c.slice(0,h===r?u:h)}}else if(t.indexOf(Li(o),u)!=u){var d=c.lastIndexOf(o);d>-1&&(c=c.slice(0,d))}return c+i},dr.unescape=function(t){return(t=Hs(t))&&xt.test(t)?t.replace(_t,On):t},dr.uniqueId=function(t){var e=++le;return Hs(t)+e},dr.upperCase=xu,dr.upperFirst=ku,dr.each=Ha,dr.eachRight=$a,dr.first=va,Nu(dr,(Wu={},Gr(dr,(function(t,e){fe.call(dr.prototype,e)||(Wu[e]=t)})),Wu),{chain:!1}),dr.VERSION="4.17.15",He(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){dr[t].placeholder=dr})),He(["drop","take"],(function(t,e){br.prototype[t]=function(n){n=n===r?1:Hn(Us(n),0);var i=this.__filtered__&&!e?new br(this):this.clone();return i.__filtered__?i.__takeCount__=$n(n,i.__takeCount__):i.__views__.push({size:$n(n,B),type:t+(i.__dir__<0?"Right":"")}),i},br.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),He(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=n==D||3==n;br.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Lo(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),He(["head","last"],(function(t,e){var n="take"+(e?"Right":"");br.prototype[t]=function(){return this[n](1).value()[0]}})),He(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");br.prototype[t]=function(){return this.__filtered__?new br(this):this[n](1)}})),br.prototype.compact=function(){return this.filter(Cu)},br.prototype.find=function(t){return this.filter(t).head()},br.prototype.findLast=function(t){return this.reverse().find(t)},br.prototype.invokeMap=ki((function(t,e){return"function"==typeof t?new br(this):this.map((function(n){return ri(n,t,e)}))})),br.prototype.reject=function(t){return this.filter(us(Lo(t)))},br.prototype.slice=function(t,e){t=Us(t);var n=this;return n.__filtered__&&(t>0||e<0)?new br(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==r&&(n=(e=Us(e))<0?n.dropRight(-e):n.take(e-t)),n)},br.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},br.prototype.toArray=function(){return this.take(B)},Gr(br.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),o=dr[i?"take"+("last"==e?"Right":""):e],a=i||/^find/.test(e);o&&(dr.prototype[e]=function(){var e=this.__wrapped__,s=i?[1]:arguments,u=e instanceof br,c=s[0],f=u||bs(e),l=function(t){var e=o.apply(dr,Je([t],s));return i&&h?e[0]:e};f&&n&&"function"==typeof c&&1!=c.length&&(u=f=!1);var h=this.__chain__,d=!!this.__actions__.length,p=a&&!h,g=u&&!d;if(!a&&f){e=g?e:new br(this);var y=t.apply(e,s);return y.__actions__.push({func:ja,args:[l],thisArg:r}),new yr(y,h)}return p&&g?t.apply(this,s):(y=this.thru(l),p?i?y.value()[0]:y.value():y)})})),He(["pop","push","shift","sort","splice","unshift"],(function(t){var e=oe[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);dr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(bs(i)?i:[],t)}return this[n]((function(n){return e.apply(bs(n)?n:[],t)}))}})),Gr(br.prototype,(function(t,e){var n=dr[e];if(n){var r=n.name+"";fe.call(ir,r)||(ir[r]=[]),ir[r].push({name:e,func:n})}})),ir[po(r,y).name]=[{name:"wrapper",func:r}],br.prototype.clone=function(){var t=new br(this.__wrapped__);return t.__actions__=no(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=no(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=no(this.__views__),t},br.prototype.reverse=function(){if(this.__filtered__){var t=new br(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},br.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=bs(t),r=e<0,i=n?t.length:0,o=function(t,e,n){var r=-1,i=n.length;for(;++r=this.__values__.length;return{done:t,value:t?r:this.__values__[this.__index__++]}},dr.prototype.plant=function(t){for(var e,n=this;n instanceof gr;){var i=ha(n);i.__index__=0,i.__values__=r,e?o.__wrapped__=i:e=i;var o=i;n=n.__wrapped__}return o.__wrapped__=t,e},dr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof br){var e=t;return this.__actions__.length&&(e=new br(this)),(e=e.reverse()).__actions__.push({func:ja,args:[Ta],thisArg:r}),new yr(e,this.__chain__)}return this.thru(Ta)},dr.prototype.toJSON=dr.prototype.valueOf=dr.prototype.value=function(){return Ui(this.__wrapped__,this.__actions__)},dr.prototype.first=dr.prototype.head,ln&&(dr.prototype[ln]=function(){return this}),dr}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Oe._=Rn,define((function(){return Rn}))):Ie?((Ie.exports=Rn)._=Rn,Re._=Rn):Oe._=Rn}).call(this)}).call(this,n(11),n(9)(t))},function(t,e,n){var r=n(66),i=n(67);t.exports=function(t,e,n,o){var a=!n;n||(n={});for(var s=-1,u=e.length;++s=this._delta8){var n=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-n,t.length),0===this.pending.length&&(this.pending=null),t=r.join32(t,0,t.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=t>>>16&255,r[i++]=t>>>8&255,r[i++]=255&t}else for(r[i++]=255&t,r[i++]=t>>>8&255,r[i++]=t>>>16&255,r[i++]=t>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;ol&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},Ut={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:break;case 1:this.begin("string");break;case 2:this.popState();break;case 3:return"STR";case 4:return 89;case 5:return 98;case 6:return 90;case 7:return 103;case 8:return 91;case 9:return 92;case 10:return 93;case 11:return t.lex.firstGraph()&&this.begin("dir"),12;case 12:return 26;case 13:return 30;case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:return this.popState(),13;case 24:return 106;case 25:return 114;case 26:return 34;case 27:return 111;case 28:return 8;case 29:return 107;case 30:return 125;case 31:return 55;case 32:return 51;case 33:return 74;case 34:return 76;case 35:return 75;case 36:return 78;case 37:return 80;case 38:return 81;case 39:return 82;case 40:case 41:return 79;case 42:case 43:return 77;case 44:return 78;case 45:return 53;case 46:return 57;case 47:return 63;case 48:return 59;case 49:return 61;case 50:return 65;case 51:return 63;case 52:return 59;case 53:return 61;case 54:return 65;case 55:return 71;case 56:return 67;case 57:return 69;case 58:return 73;case 59:return 52;case 60:return 56;case 61:return 54;case 62:return 60;case 63:return 64;case 64:return 62;case 65:return 68;case 66:return 72;case 67:return 70;case 68:return 50;case 69:return 58;case 70:return 66;case 71:return 38;case 72:return 39;case 73:return 112;case 74:return 115;case 75:return 126;case 76:return 123;case 77:return 105;case 78:case 79:return 124;case 80:return 117;case 81:return 42;case 82:return 95;case 83:return 94;case 84:return 110;case 85:return 44;case 86:return 43;case 87:return 46;case 88:return 45;case 89:return 121;case 90:return 122;case 91:return 83;case 92:return 36;case 93:return 37;case 94:return 28;case 95:return 29;case 96:return 40;case 97:return 41;case 98:return 127;case 99:return 9;case 100:return 10;case 101:return 11}},rules:[/^(?:%%[^\n]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*--[x]\s*)/,/^(?:\s*-->\s*)/,/^(?:\s*<-->\s*)/,/^(?:\s*[x]--[x]\s*)/,/^(?:\s*[o]--[o]\s*)/,/^(?:\s*[o]\.-[o]\s*)/,/^(?:\s*<==>\s*)/,/^(?:\s*[o]==[o]\s*)/,/^(?:\s*[x]==[x]\s*)/,/^(?:\s*[x].-[x]\s*)/,/^(?:\s*[x]-\.-[x]\s*)/,/^(?:\s*<\.->\s*)/,/^(?:\s*<-\.->\s*)/,/^(?:\s*[o]-\.-[o]\s*)/,/^(?:\s*--[o]\s*)/,/^(?:\s*---\s*)/,/^(?:\s*-\.-[x]\s*)/,/^(?:\s*-\.->\s*)/,/^(?:\s*-\.-[o]\s*)/,/^(?:\s*-\.-\s*)/,/^(?:\s*.-[x]\s*)/,/^(?:\s*\.->\s*)/,/^(?:\s*\.-[o]\s*)/,/^(?:\s*\.-\s*)/,/^(?:\s*==[x]\s*)/,/^(?:\s*==>\s*)/,/^(?:\s*==[o]\s*)/,/^(?:\s*==[\=]\s*)/,/^(?:\s*<--\s*)/,/^(?:\s*[x]--\s*)/,/^(?:\s*[o]--\s*)/,/^(?:\s*<-\.\s*)/,/^(?:\s*[x]-\.\s*)/,/^(?:\s*[o]-\.\s*)/,/^(?:\s*<==\s*)/,/^(?:\s*[x]==\s*)/,/^(?:\s*[o]==\s*)/,/^(?:\s*--\s*)/,/^(?:\s*-\.\s*)/,/^(?:\s*==\s*)/,/^(?:\(-)/,/^(?:-\))/,/^(?:-)/,/^(?:\.)/,/^(?:[\_])/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:[A-Za-z]+)/,/^(?:\\\])/,/^(?:\[\/)/,/^(?:\/\])/,/^(?:\[\\)/,/^(?:[!"#$%&'*+,-.`?\\_\/])/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\{)/,/^(?:\})/,/^(?:")/,/^(?:(\r|\n|\r\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{dir:{rules:[14,15,16,17,18,19,20,21,22,23],inclusive:!1},string:{rules:[2,3],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,8,9,10,11,12,13,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101],inclusive:!0}}};function zt(){this.yy={}}return jt.lexer=Ut,zt.prototype=jt,jt.Parser=zt,new zt}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){var r=n(62),i=n(241),o=n(242),a=n(243),s=n(244),u=n(245);function c(t){var e=this.__data__=new r(t);this.size=e.size}c.prototype.clear=i,c.prototype.delete=o,c.prototype.get=a,c.prototype.has=s,c.prototype.set=u,t.exports=c},function(t,e,n){var r=n(236),i=n(237),o=n(238),a=n(239),s=n(240);function u(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t>>24]^f[p>>>16&255]^l[g>>>8&255]^h[255&y]^e[b++],a=c[p>>>24]^f[g>>>16&255]^l[y>>>8&255]^h[255&d]^e[b++],s=c[g>>>24]^f[y>>>16&255]^l[d>>>8&255]^h[255&p]^e[b++],u=c[y>>>24]^f[d>>>16&255]^l[p>>>8&255]^h[255&g]^e[b++],d=o,p=a,g=s,y=u;return o=(r[d>>>24]<<24|r[p>>>16&255]<<16|r[g>>>8&255]<<8|r[255&y])^e[b++],a=(r[p>>>24]<<24|r[g>>>16&255]<<16|r[y>>>8&255]<<8|r[255&d])^e[b++],s=(r[g>>>24]<<24|r[y>>>16&255]<<16|r[d>>>8&255]<<8|r[255&p])^e[b++],u=(r[y>>>24]<<24|r[d>>>16&255]<<16|r[p>>>8&255]<<8|r[255&g])^e[b++],[o>>>=0,a>>>=0,s>>>=0,u>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],u=function(){for(var t=new Array(256),e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;for(var n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],a=0,s=0,u=0;u<256;++u){var c=s^s<<1^s<<2^s<<3^s<<4;c=c>>>8^255&c^99,n[a]=c,r[c]=a;var f=t[a],l=t[f],h=t[l],d=257*t[c]^16843008*c;i[0][a]=d<<24|d>>>8,i[1][a]=d<<16|d>>>16,i[2][a]=d<<8|d>>>24,i[3][a]=d,d=16843009*h^65537*l^257*f^16843008*a,o[0][c]=d<<24|d>>>8,o[1][c]=d<<16|d>>>16,o[2][c]=d<<8|d>>>24,o[3][c]=d,0===a?a=s=1:(a=f^t[t[t[h^f]]],s^=t[t[s]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function c(t){this._key=i(t),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var t=this._key,e=t.length,n=e+6,r=4*(n+1),i=[],o=0;o>>24,a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a],a^=s[o/e|0]<<24):e>6&&o%e==4&&(a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a]),i[o]=i[o-e]^a}for(var c=[],f=0;f>>24]]^u.INV_SUB_MIX[1][u.SBOX[h>>>16&255]]^u.INV_SUB_MIX[2][u.SBOX[h>>>8&255]]^u.INV_SUB_MIX[3][u.SBOX[255&h]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(t){return a(t=i(t),this._keySchedule,u.SUB_MIX,u.SBOX,this._nRounds)},c.prototype.encryptBlock=function(t){var e=this.encryptBlockRaw(t),n=r.allocUnsafe(16);return n.writeUInt32BE(e[0],0),n.writeUInt32BE(e[1],4),n.writeUInt32BE(e[2],8),n.writeUInt32BE(e[3],12),n},c.prototype.decryptBlock=function(t){var e=(t=i(t))[1];t[1]=t[3],t[3]=e;var n=a(t,this._invKeySchedule,u.INV_SUB_MIX,u.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},c.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},t.exports.AES=c},function(t,e,n){var r=n(3).Buffer,i=n(111);t.exports=function(t,e,n,o){if(r.isBuffer(t)||(t=r.from(t,"binary")),e&&(r.isBuffer(e)||(e=r.from(e,"binary")),8!==e.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var a=n/8,s=r.alloc(a),u=r.alloc(o||0),c=r.alloc(0);a>0||o>0;){var f=new i;f.update(c),f.update(t),e&&f.update(e),c=f.digest();var l=0;if(a>0){var h=s.length-a;l=Math.min(a,c.length),c.copy(s,h,0,l),a-=l}if(l0){var d=u.length-o,p=Math.min(o,c.length-l);c.copy(u,d,l,l+p),o-=p}}return c.fill(0),{key:s,iv:u}}},function(t,e,n){"use strict";var r=n(5),i=n(16),o=i.getNAF,a=i.getJSF,s=i.assert;function u(t,e){this.type=t,this.p=new r(e.p,16),this.red=e.prime?r.red(e.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=e.n&&new r(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4);var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(t,e){this.curve=t,this.type=e,this.precomputed=null}t.exports=u,u.prototype.point=function(){throw new Error("Not implemented")},u.prototype.validate=function(){throw new Error("Not implemented")},u.prototype._fixedNafMul=function(t,e){s(t.precomputed);var n=t._getDoubles(),r=o(e,1),i=(1<=u;e--)c=(c<<1)+r[e];a.push(c)}for(var f=this.jpoint(null,null,null),l=this.jpoint(null,null,null),h=i;h>0;h--){for(u=0;u=0;c--){for(e=0;c>=0&&0===a[c];c--)e++;if(c>=0&&e++,u=u.dblp(e),c<0)break;var f=a[c];s(0!==f),u="affine"===t.type?f>0?u.mixedAdd(i[f-1>>1]):u.mixedAdd(i[-f-1>>1].neg()):f>0?u.add(i[f-1>>1]):u.add(i[-f-1>>1].neg())}return"affine"===t.type?u.toP():u},u.prototype._wnafMulAdd=function(t,e,n,r,i){for(var s=this._wnafT1,u=this._wnafT2,c=this._wnafT3,f=0,l=0;l=1;l-=2){var d=l-1,p=l;if(1===s[d]&&1===s[p]){var g=[e[d],null,null,e[p]];0===e[d].y.cmp(e[p].y)?(g[1]=e[d].add(e[p]),g[2]=e[d].toJ().mixedAdd(e[p].neg())):0===e[d].y.cmp(e[p].y.redNeg())?(g[1]=e[d].toJ().mixedAdd(e[p]),g[2]=e[d].add(e[p].neg())):(g[1]=e[d].toJ().mixedAdd(e[p]),g[2]=e[d].toJ().mixedAdd(e[p].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],b=a(n[d],n[p]);f=Math.max(b[0].length,f),c[d]=new Array(f),c[p]=new Array(f);for(var m=0;m=0;l--){for(var k=0;l>=0;){var E=!0;for(m=0;m=0&&k++,w=w.dblp(k),l<0)break;for(m=0;m0?A=u[m][S-1>>1]:S<0&&(A=u[m][-S-1>>1].neg()),w="affine"===A.type?w.mixedAdd(A):w.add(A))}}for(l=0;l=Math.ceil((t.bitLength()+1)/e.step)},c.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i-1}(s)?s:(n=s.match(o))?(e=n[0],r.test(e)?"about:blank":s):"about:blank"}}},function(t,e,n){(function(t,r){var i=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[2,3],n=[1,7],r=[7,12,15,17,19,20,21],i=[7,11,12,15,17,19,20,21],o=[2,20],a=[1,32],s={trace:function(){},yy:{},symbols_:{error:2,start:3,GG:4,":":5,document:6,EOF:7,DIR:8,options:9,body:10,OPT:11,NL:12,line:13,statement:14,COMMIT:15,commit_arg:16,BRANCH:17,ID:18,CHECKOUT:19,MERGE:20,RESET:21,reset_arg:22,STR:23,HEAD:24,reset_parents:25,CARET:26,$accept:0,$end:1},terminals_:{2:"error",4:"GG",5:":",7:"EOF",8:"DIR",11:"OPT",12:"NL",15:"COMMIT",17:"BRANCH",18:"ID",19:"CHECKOUT",20:"MERGE",21:"RESET",23:"STR",24:"HEAD",26:"CARET"},productions_:[0,[3,4],[3,5],[6,0],[6,2],[9,2],[9,1],[10,0],[10,2],[13,2],[13,1],[14,2],[14,2],[14,2],[14,2],[14,2],[16,0],[16,1],[22,2],[22,2],[25,0],[25,2]],performAction:function(t,e,n,r,i,o,a){var s=o.length-1;switch(i){case 1:return o[s-1];case 2:return r.setDirection(o[s-3]),o[s-1];case 4:r.setOptions(o[s-1]),this.$=o[s];break;case 5:o[s-1]+=o[s],this.$=o[s-1];break;case 7:this.$=[];break;case 8:o[s-1].push(o[s]),this.$=o[s-1];break;case 9:this.$=o[s-1];break;case 11:r.commit(o[s]);break;case 12:r.branch(o[s]);break;case 13:r.checkout(o[s]);break;case 14:r.merge(o[s]);break;case 15:r.reset(o[s]);break;case 16:this.$="";break;case 17:this.$=o[s];break;case 18:this.$=o[s-1]+":"+o[s];break;case 19:this.$=o[s-1]+":"+r.count,r.count=0;break;case 20:r.count=0;break;case 21:r.count+=1}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3],8:[1,4]},{6:5,7:e,9:6,12:n},{5:[1,8]},{7:[1,9]},t(r,[2,7],{10:10,11:[1,11]}),t(i,[2,6]),{6:12,7:e,9:6,12:n},{1:[2,1]},{7:[2,4],12:[1,15],13:13,14:14,15:[1,16],17:[1,17],19:[1,18],20:[1,19],21:[1,20]},t(i,[2,5]),{7:[1,21]},t(r,[2,8]),{12:[1,22]},t(r,[2,10]),{12:[2,16],16:23,23:[1,24]},{18:[1,25]},{18:[1,26]},{18:[1,27]},{18:[1,30],22:28,24:[1,29]},{1:[2,2]},t(r,[2,9]),{12:[2,11]},{12:[2,17]},{12:[2,12]},{12:[2,13]},{12:[2,14]},{12:[2,15]},{12:o,25:31,26:a},{12:o,25:33,26:a},{12:[2,18]},{12:o,25:34,26:a},{12:[2,19]},{12:[2,21]}],defaultActions:{9:[2,1],21:[2,2],23:[2,11],24:[2,17],25:[2,12],26:[2,13],27:[2,14],28:[2,15],31:[2,18],33:[2,19],34:[2,21]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],o=[],a=this.table,s="",u=0,c=0,f=0,l=2,h=1,d=o.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var b=p.yylloc;o.push(b);var m=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||h)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,w,x,k,E,A,S,T,M,D={};;){if(x=n[n.length-1],this.defaultActions[x]?k=this.defaultActions[x]:(null==_&&(_=v()),k=a[x]&&a[x][_]),void 0===k||!k.length||!k[0]){var C="";for(A in M=[],a[x])this.terminals_[A]&&A>l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},u={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 12;case 1:case 2:case 3:break;case 4:return 4;case 5:return 15;case 6:return 17;case 7:return 20;case 8:return 21;case 9:return 19;case 10:case 11:return 8;case 12:return 5;case 13:return 26;case 14:this.begin("options");break;case 15:this.popState();break;case 16:return 11;case 17:this.begin("string");break;case 18:this.popState();break;case 19:return 23;case 20:return 18;case 21:return 7}},rules:[/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit\b)/i,/^(?:branch\b)/i,/^(?:merge\b)/i,/^(?:reset\b)/i,/^(?:checkout\b)/i,/^(?:LR\b)/i,/^(?:BT\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:end\r?\n)/i,/^(?:[^\n]+\r?\n)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[a-zA-Z][a-zA-Z0-9_]+)/i,/^(?:$)/i],conditions:{options:{rules:[15,16],inclusive:!1},string:{rules:[18,19],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,17,20,21],inclusive:!0}}};function c(){this.yy={}}return s.lexer=u,c.prototype=s,s.Parser=c,new c}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){(function(t,r){var i=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[6,9,10],n={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,r,i,o,a){o.length;switch(i){case 1:return r;case 4:break;case 6:r.setInfo(!0)}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},t(e,[2,3]),t(e,[2,4]),t(e,[2,5]),t(e,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],o=[],a=this.table,s="",u=0,c=0,f=0,l=2,h=1,d=o.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var b=p.yylloc;o.push(b);var m=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||h)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,w,x,k,E,A,S,T,M,D={};;){if(x=n[n.length-1],this.defaultActions[x]?k=this.defaultActions[x]:(null==_&&(_=v()),k=a[x]&&a[x][_]),void 0===k||!k.length||!k[0]){var C="";for(A in M=[],a[x])this.terminals_[A]&&A>l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},r={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};function i(){this.yy={}}return n.lexer=r,i.prototype=n,n.Parser=i,new i}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t,e,n){(function(t,r){var i=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[6,9,10,12],n={trace:function(){},yy:{},symbols_:{error:2,start:3,pie:4,document:5,EOF:6,line:7,statement:8,NL:9,STR:10,VALUE:11,title:12,$accept:0,$end:1},terminals_:{2:"error",4:"pie",6:"EOF",9:"NL",10:"STR",11:"VALUE",12:"title"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,2],[8,1]],performAction:function(t,e,n,r,i,o,a){var s=o.length-1;switch(i){case 4:break;case 6:console.log("str:"+o[s-1]+" value: "+o[s]),r.addSection(o[s-1],r.cleanupValue(o[s]));break;case 7:r.setTitle(o[s].substr(6)),this.$=o[s].substr(6)}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8],12:[1,9]},{1:[2,1]},t(e,[2,3]),t(e,[2,4]),t(e,[2,5]),{11:[1,10]},t(e,[2,7]),t(e,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],o=[],a=this.table,s="",u=0,c=0,f=0,l=2,h=1,d=o.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var b=p.yylloc;o.push(b);var m=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||h)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,w,x,k,E,A,S,T,M,D={};;){if(x=n[n.length-1],this.defaultActions[x]?k=this.defaultActions[x]:(null==_&&(_=v()),k=a[x]&&a[x][_]),void 0===k||!k.length||!k[0]){var C="";for(A in M=[],a[x])this.terminals_[A]&&A>l&&M.push("'"+this.terminals_[A]+"'");C=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(u+1)+": Unexpected "+(_==h?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(C,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:b,expected:M})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+_);switch(k[0]){case 1:n.push(_),i.push(p.yytext),o.push(p.yylloc),n.push(k[1]),_=null,w?(_=w,w=null):(c=p.yyleng,s=p.yytext,u=p.yylineno,b=p.yylloc,f>0&&f--);break;case 2:if(S=this.productions_[k[1]][1],D.$=i[i.length-S],D._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},m&&(D._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(E=this.performAction.apply(D,[s,c,u,g.yy,k[1],i,o].concat(d))))return E;S&&(n=n.slice(0,-1*S*2),i=i.slice(0,-1*S),o=o.slice(0,-1*S)),n.push(this.productions_[k[1]][0]),i.push(D.$),o.push(D._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},r={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in i)this[o]=i[o];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),o=0;oe[0].length)){if(e=n,r=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:case 1:break;case 2:return 4;case 3:return 9;case 4:return"space";case 5:return 12;case 6:this.begin("string");break;case 7:this.popState();break;case 8:return"STR";case 9:return"VALUE";case 10:return 6}},rules:[/^(?:%%[^\n]*)/i,/^(?:\s+)/i,/^(?:pie\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:title\s[^#\n;]+)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{string:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,9,10],inclusive:!0}}};function i(){this.yy={}}return n.lexer=r,i.prototype=n,n.Parser=i,new i}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(28).readFileSync(n(29).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(7),n(9)(t))},function(t){t.exports=JSON.parse('{"name":"mermaid","version":"8.4.3","description":"Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.","main":"dist/mermaid.core.js","keywords":["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph"],"scripts":{"build":"webpack --progress --colors","postbuild":"documentation build src/mermaidAPI.js --shallow -f md --markdown-toc false -o docs/mermaidAPI.md","build:watch":"yarn build --watch","minify":"minify ./dist/mermaid.js > ./dist/mermaid.min.js","release":"yarn build -p --config webpack.config.prod.babel.js","lint":"eslint src","e2e:depr":"yarn lint && jest e2e --config e2e/jest.config.js","cypress":"percy exec -- cypress run","e2e":"start-server-and-test dev http://localhost:9000/ cypress","e2e-upd":"yarn lint && jest e2e -u --config e2e/jest.config.js","dev":"webpack-dev-server --config webpack.config.e2e.js","test":"yarn lint && jest src/.*","test:watch":"jest --watch src","prepublishOnly":"yarn build && yarn release && yarn test && yarn e2e","prepush":"yarn test"},"repository":{"type":"git","url":"https://github.com/knsv/mermaid"},"author":"Knut Sveidqvist","license":"MIT","standard":{"ignore":["**/parser/*.js","dist/**/*.js","cypress/**/*.js"],"globals":["page"]},"dependencies":{"@braintree/sanitize-url":"^3.1.0","crypto-random-string":"^3.0.1","d3":"^5.7.0","dagre-d3-unofficial":"0.6.4","dagre":"^0.8.4","graphlib":"^2.1.7","he":"^1.2.0","lodash":"^4.17.11","minify":"^4.1.1","moment-mini":"^2.22.1","scope-css":"^1.2.1"},"devDependencies":{"documentation":"^12.0.1","prettier":"^1.18.2","eslint":"^6.3.0","eslint-config-prettier":"^6.3.0","eslint-plugin-prettier":"^3.1.0","@babel/core":"^7.2.2","@babel/preset-env":"^7.2.0","@babel/register":"^7.0.0","@percy/cypress":"^2.0.1","babel-core":"7.0.0-bridge.0","babel-jest":"^23.6.0","babel-loader":"^8.0.4","coveralls":"^3.0.2","css-loader":"^2.0.1","css-to-string-loader":"^0.1.3","cypress":"3.4.0","husky":"^1.2.1","identity-obj-proxy":"^3.0.0","jest":"^24.9.0","jison":"^0.4.18","moment":"^2.23.0","node-sass":"^4.12.0","puppeteer":"^1.17.0","sass-loader":"^7.1.0","start-server-and-test":"^1.10.0","webpack":"^4.27.1","webpack-cli":"^3.1.2","webpack-dev-server":"^3.4.1","webpack-node-externals":"^1.7.2","yarn-upgrade-all":"^0.5.0"},"files":["dist"],"yarn-upgrade-all":{"ignore":["babel-core"]}}')},function(t,e,n){"use strict";var r=n(12);t.exports=s;var i="\0",o="\0",a="";function s(t){this._isDirected=!r.has(t,"directed")||t.directed,this._isMultigraph=!!r.has(t,"multigraph")&&t.multigraph,this._isCompound=!!r.has(t,"compound")&&t.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[o]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function u(t,e){t[e]?t[e]++:t[e]=1}function c(t,e){--t[e]||delete t[e]}function f(t,e,n,o){var s=""+e,u=""+n;if(!t&&s>u){var c=s;s=u,u=c}return s+a+u+a+(r.isUndefined(o)?i:o)}function l(t,e,n,r){var i=""+e,o=""+n;if(!t&&i>o){var a=i;i=o,o=a}var s={v:i,w:o};return r&&(s.name=r),s}function h(t,e){return f(t,e.v,e.w,e.name)}s.prototype._nodeCount=0,s.prototype._edgeCount=0,s.prototype.isDirected=function(){return this._isDirected},s.prototype.isMultigraph=function(){return this._isMultigraph},s.prototype.isCompound=function(){return this._isCompound},s.prototype.setGraph=function(t){return this._label=t,this},s.prototype.graph=function(){return this._label},s.prototype.setDefaultNodeLabel=function(t){return r.isFunction(t)||(t=r.constant(t)),this._defaultNodeLabelFn=t,this},s.prototype.nodeCount=function(){return this._nodeCount},s.prototype.nodes=function(){return r.keys(this._nodes)},s.prototype.sources=function(){var t=this;return r.filter(this.nodes(),(function(e){return r.isEmpty(t._in[e])}))},s.prototype.sinks=function(){var t=this;return r.filter(this.nodes(),(function(e){return r.isEmpty(t._out[e])}))},s.prototype.setNodes=function(t,e){var n=arguments,i=this;return r.each(t,(function(t){n.length>1?i.setNode(t,e):i.setNode(t)})),this},s.prototype.setNode=function(t,e){return r.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=e),this):(this._nodes[t]=arguments.length>1?e:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=o,this._children[t]={},this._children[o][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},s.prototype.node=function(t){return this._nodes[t]},s.prototype.hasNode=function(t){return r.has(this._nodes,t)},s.prototype.removeNode=function(t){var e=this;if(r.has(this._nodes,t)){var n=function(t){e.removeEdge(e._edgeObjs[t])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],r.each(this.children(t),(function(t){e.setParent(t)})),delete this._children[t]),r.each(r.keys(this._in[t]),n),delete this._in[t],delete this._preds[t],r.each(r.keys(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},s.prototype.setParent=function(t,e){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(e))e=o;else{for(var n=e+="";!r.isUndefined(n);n=this.parent(n))if(n===t)throw new Error("Setting "+e+" as parent of "+t+" would create a cycle");this.setNode(e)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=e,this._children[e][t]=!0,this},s.prototype._removeFromParentsChildList=function(t){delete this._children[this._parent[t]][t]},s.prototype.parent=function(t){if(this._isCompound){var e=this._parent[t];if(e!==o)return e}},s.prototype.children=function(t){if(r.isUndefined(t)&&(t=o),this._isCompound){var e=this._children[t];if(e)return r.keys(e)}else{if(t===o)return this.nodes();if(this.hasNode(t))return[]}},s.prototype.predecessors=function(t){var e=this._preds[t];if(e)return r.keys(e)},s.prototype.successors=function(t){var e=this._sucs[t];if(e)return r.keys(e)},s.prototype.neighbors=function(t){var e=this.predecessors(t);if(e)return r.union(e,this.successors(t))},s.prototype.isLeaf=function(t){return 0===(this.isDirected()?this.successors(t):this.neighbors(t)).length},s.prototype.filterNodes=function(t){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){t(r)&&e.setNode(r,n)})),r.each(this._edgeObjs,(function(t){e.hasNode(t.v)&&e.hasNode(t.w)&&e.setEdge(t,n.edge(t))}));var i={};return this._isCompound&&r.each(e.nodes(),(function(t){e.setParent(t,function t(r){var o=n.parent(r);return void 0===o||e.hasNode(o)?(i[r]=o,o):o in i?i[o]:t(o)}(t))})),e},s.prototype.setDefaultEdgeLabel=function(t){return r.isFunction(t)||(t=r.constant(t)),this._defaultEdgeLabelFn=t,this},s.prototype.edgeCount=function(){return this._edgeCount},s.prototype.edges=function(){return r.values(this._edgeObjs)},s.prototype.setPath=function(t,e){var n=this,i=arguments;return r.reduce(t,(function(t,r){return i.length>1?n.setEdge(t,r,e):n.setEdge(t,r),r})),this},s.prototype.setEdge=function(){var t,e,n,i,o=!1,a=arguments[0];"object"==typeof a&&null!==a&&"v"in a?(t=a.v,e=a.w,n=a.name,2===arguments.length&&(i=arguments[1],o=!0)):(t=a,e=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),t=""+t,e=""+e,r.isUndefined(n)||(n=""+n);var s=f(this._isDirected,t,e,n);if(r.has(this._edgeLabels,s))return o&&(this._edgeLabels[s]=i),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(e),this._edgeLabels[s]=o?i:this._defaultEdgeLabelFn(t,e,n);var c=l(this._isDirected,t,e,n);return t=c.v,e=c.w,Object.freeze(c),this._edgeObjs[s]=c,u(this._preds[e],t),u(this._sucs[t],e),this._in[e][s]=c,this._out[t][s]=c,this._edgeCount++,this},s.prototype.edge=function(t,e,n){var r=1===arguments.length?h(this._isDirected,arguments[0]):f(this._isDirected,t,e,n);return this._edgeLabels[r]},s.prototype.hasEdge=function(t,e,n){var i=1===arguments.length?h(this._isDirected,arguments[0]):f(this._isDirected,t,e,n);return r.has(this._edgeLabels,i)},s.prototype.removeEdge=function(t,e,n){var r=1===arguments.length?h(this._isDirected,arguments[0]):f(this._isDirected,t,e,n),i=this._edgeObjs[r];return i&&(t=i.v,e=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],c(this._preds[e],t),c(this._sucs[t],e),delete this._in[e][r],delete this._out[t][r],this._edgeCount--),this},s.prototype.inEdges=function(t,e){var n=this._in[t];if(n){var i=r.values(n);return e?r.filter(i,(function(t){return t.v===e})):i}},s.prototype.outEdges=function(t,e){var n=this._out[t];if(n){var i=r.values(n);return e?r.filter(i,(function(t){return t.w===e})):i}},s.prototype.nodeEdges=function(t,e){var n=this.inEdges(t,e);if(n)return n.concat(this.outEdges(t,e))}},function(t,e,n){var r=n(32)(n(18),"Map");t.exports=r},function(t,e,n){var r=n(252),i=n(259),o=n(261),a=n(262),s=n(263);function u(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t<=n}},function(t,e,n){(function(t){var r=n(131),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i&&r.process,s=function(){try{var t=o&&o.require&&o.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s}).call(this,n(9)(t))},function(t,e,n){var r=n(70),i=n(269),o=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))o.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e,n){var r=n(138),i=n(139),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(t){return null==t?[]:(t=Object(t),r(a(t),(function(e){return o.call(t,e)})))}:i;t.exports=s},function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,i=t.length;++n0&&o(f)?n>1?t(f,n-1,o,a,s):r(s,f):a||(s[s.length]=f)}return s}},function(t,e,n){var r=n(42);t.exports=function(t,e,n){for(var i=-1,o=t.length;++i>>32-e}function c(t,e,n,r,i,o,a){return u(t+(e&n|~e&r)+i+o|0,a)+e|0}function f(t,e,n,r,i,o,a){return u(t+(e&r|n&~r)+i+o|0,a)+e|0}function l(t,e,n,r,i,o,a){return u(t+(e^n^r)+i+o|0,a)+e|0}function h(t,e,n,r,i,o,a){return u(t+(n^(e|~r))+i+o|0,a)+e|0}r(s,i),s.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);var n=this._a,r=this._b,i=this._c,o=this._d;n=c(n,r,i,o,t[0],3614090360,7),o=c(o,n,r,i,t[1],3905402710,12),i=c(i,o,n,r,t[2],606105819,17),r=c(r,i,o,n,t[3],3250441966,22),n=c(n,r,i,o,t[4],4118548399,7),o=c(o,n,r,i,t[5],1200080426,12),i=c(i,o,n,r,t[6],2821735955,17),r=c(r,i,o,n,t[7],4249261313,22),n=c(n,r,i,o,t[8],1770035416,7),o=c(o,n,r,i,t[9],2336552879,12),i=c(i,o,n,r,t[10],4294925233,17),r=c(r,i,o,n,t[11],2304563134,22),n=c(n,r,i,o,t[12],1804603682,7),o=c(o,n,r,i,t[13],4254626195,12),i=c(i,o,n,r,t[14],2792965006,17),n=f(n,r=c(r,i,o,n,t[15],1236535329,22),i,o,t[1],4129170786,5),o=f(o,n,r,i,t[6],3225465664,9),i=f(i,o,n,r,t[11],643717713,14),r=f(r,i,o,n,t[0],3921069994,20),n=f(n,r,i,o,t[5],3593408605,5),o=f(o,n,r,i,t[10],38016083,9),i=f(i,o,n,r,t[15],3634488961,14),r=f(r,i,o,n,t[4],3889429448,20),n=f(n,r,i,o,t[9],568446438,5),o=f(o,n,r,i,t[14],3275163606,9),i=f(i,o,n,r,t[3],4107603335,14),r=f(r,i,o,n,t[8],1163531501,20),n=f(n,r,i,o,t[13],2850285829,5),o=f(o,n,r,i,t[2],4243563512,9),i=f(i,o,n,r,t[7],1735328473,14),n=l(n,r=f(r,i,o,n,t[12],2368359562,20),i,o,t[5],4294588738,4),o=l(o,n,r,i,t[8],2272392833,11),i=l(i,o,n,r,t[11],1839030562,16),r=l(r,i,o,n,t[14],4259657740,23),n=l(n,r,i,o,t[1],2763975236,4),o=l(o,n,r,i,t[4],1272893353,11),i=l(i,o,n,r,t[7],4139469664,16),r=l(r,i,o,n,t[10],3200236656,23),n=l(n,r,i,o,t[13],681279174,4),o=l(o,n,r,i,t[0],3936430074,11),i=l(i,o,n,r,t[3],3572445317,16),r=l(r,i,o,n,t[6],76029189,23),n=l(n,r,i,o,t[9],3654602809,4),o=l(o,n,r,i,t[12],3873151461,11),i=l(i,o,n,r,t[15],530742520,16),n=h(n,r=l(r,i,o,n,t[2],3299628645,23),i,o,t[0],4096336452,6),o=h(o,n,r,i,t[7],1126891415,10),i=h(i,o,n,r,t[14],2878612391,15),r=h(r,i,o,n,t[5],4237533241,21),n=h(n,r,i,o,t[12],1700485571,6),o=h(o,n,r,i,t[3],2399980690,10),i=h(i,o,n,r,t[10],4293915773,15),r=h(r,i,o,n,t[1],2240044497,21),n=h(n,r,i,o,t[8],1873313359,6),o=h(o,n,r,i,t[15],4264355552,10),i=h(i,o,n,r,t[6],2734768916,15),r=h(r,i,o,n,t[13],1309151649,21),n=h(n,r,i,o,t[4],4149444226,6),o=h(o,n,r,i,t[11],3174756917,10),i=h(i,o,n,r,t[2],718787259,15),r=h(r,i,o,n,t[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=o.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t},t.exports=s},function(t,e,n){t.exports=i;var r=n(113).EventEmitter;function i(){r.call(this)}n(2)(i,r),i.Readable=n(114),i.Writable=n(428),i.Duplex=n(429),i.Transform=n(430),i.PassThrough=n(431),i.Stream=i,i.prototype.pipe=function(t,e){var n=this;function i(e){t.writable&&!1===t.write(e)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),t.on("drain",o),t._isStdio||e&&!1===e.end||(n.on("end",s),n.on("close",u));var a=!1;function s(){a||(a=!0,t.end())}function u(){a||(a=!0,"function"==typeof t.destroy&&t.destroy())}function c(t){if(f(),0===r.listenerCount(this,"error"))throw t}function f(){n.removeListener("data",i),t.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",u),n.removeListener("error",c),t.removeListener("error",c),n.removeListener("end",f),n.removeListener("close",f),t.removeListener("close",f)}return n.on("error",c),t.on("error",c),n.on("end",f),n.on("close",f),t.on("close",f),t.emit("pipe",n),t}},function(t,e,n){"use strict";var r,i="object"==typeof Reflect?Reflect:null,o=i&&"function"==typeof i.apply?i.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};r=i&&"function"==typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var a=Number.isNaN||function(t){return t!=t};function s(){s.init.call(this)}t.exports=s,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var u=10;function c(t){return void 0===t._maxListeners?s.defaultMaxListeners:t._maxListeners}function f(t,e,n,r){var i,o,a,s;if("function"!=typeof n)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof n);if(void 0===(o=t._events)?(o=t._events=Object.create(null),t._eventsCount=0):(void 0!==o.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),o=t._events),a=o[e]),void 0===a)a=o[e]=n,++t._eventsCount;else if("function"==typeof a?a=o[e]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),(i=c(t))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=a.length,s=u,console&&console.warn&&console.warn(s)}return t}function l(){for(var t=[],e=0;e0&&(a=e[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var u=i[t];if(void 0===u)return!1;if("function"==typeof u)o(u,this,e);else{var c=u.length,f=g(u,c);for(n=0;n=0;o--)if(n[o]===e||n[o].listener===e){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(t,e){for(;e+1=0;r--)this.removeListener(t,e[r]);return this},s.prototype.listeners=function(t){return d(this,t,!0)},s.prototype.rawListeners=function(t){return d(this,t,!1)},s.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):p.call(t,e)},s.prototype.listenerCount=p,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(t,e,n){(e=t.exports=n(193)).Stream=e,e.Readable=e,e.Writable=n(116),e.Duplex=n(35),e.Transform=n(196),e.PassThrough=n(427)},function(t,e,n){var r=n(8),i=r.Buffer;function o(t,e){for(var n in t)e[n]=t[n]}function a(t,e,n){return i(t,e,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=r:(o(r,e),e.Buffer=a),o(i,a),a.from=function(t,e,n){if("number"==typeof t)throw new TypeError("Argument must not be a number");return i(t,e,n)},a.alloc=function(t,e,n){if("number"!=typeof t)throw new TypeError("Argument must be a number");var r=i(t);return void 0!==e?"string"==typeof n?r.fill(e,n):r.fill(e):r.fill(0),r},a.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return r.SlowBuffer(t)}},function(t,e,n){"use strict";(function(e,r,i){var o=n(78);function a(t){var e=this;this.next=null,this.entry=null,this.finish=function(){!function(t,e,n){var r=t.entry;t.entry=null;for(;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}(e,t)}}t.exports=m;var s,u=!e.browser&&["v0.10","v0.9."].indexOf(e.version.slice(0,5))>-1?r:o.nextTick;m.WritableState=b;var c=n(54);c.inherits=n(2);var f={deprecate:n(426)},l=n(194),h=n(115).Buffer,d=i.Uint8Array||function(){};var p,g=n(195);function y(){}function b(t,e){s=s||n(35),t=t||{};var r=e instanceof s;this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,c=t.writableHighWaterMark,f=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(c||0===c)?c:f,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var l=!1===t.decodeStrings;this.decodeStrings=!l,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var n=t._writableState,r=n.sync,i=n.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(n),e)!function(t,e,n,r,i){--e.pendingcb,n?(o.nextTick(i,r),o.nextTick(E,t,e),t._writableState.errorEmitted=!0,t.emit("error",r)):(i(r),t._writableState.errorEmitted=!0,t.emit("error",r),E(t,e))}(t,n,r,e,i);else{var a=x(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||w(t,n),r?u(_,t,n,a,i):_(t,n,a,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function m(t){if(s=s||n(35),!(p.call(m,this)||this instanceof s))return new m(t);this._writableState=new b(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),l.call(this)}function v(t,e,n,r,i,o,a){e.writelen=r,e.writecb=a,e.writing=!0,e.sync=!0,n?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function _(t,e,n,r){n||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,r(),E(t,e)}function w(t,e){e.bufferProcessing=!0;var n=e.bufferedRequest;if(t._writev&&n&&n.next){var r=e.bufferedRequestCount,i=new Array(r),o=e.corkedRequestsFree;o.entry=n;for(var s=0,u=!0;n;)i[s]=n,n.isBuf||(u=!1),n=n.next,s+=1;i.allBuffers=u,v(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,f=n.encoding,l=n.callback;if(v(t,e,!1,e.objectMode?1:c.length,c,f,l),n=n.next,e.bufferedRequestCount--,e.writing)break}null===n&&(e.lastBufferedRequest=null)}e.bufferedRequest=n,e.bufferProcessing=!1}function x(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function k(t,e){t._final((function(n){e.pendingcb--,n&&t.emit("error",n),e.prefinished=!0,t.emit("prefinish"),E(t,e)}))}function E(t,e){var n=x(e);return n&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(k,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),n}c.inherits(m,l),b.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(b.prototype,"buffer",{get:f.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(m,Symbol.hasInstance,{value:function(t){return!!p.call(this,t)||this===m&&(t&&t._writableState instanceof b)}})):p=function(t){return t instanceof this},m.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},m.prototype.write=function(t,e,n){var r,i=this._writableState,a=!1,s=!i.objectMode&&(r=t,h.isBuffer(r)||r instanceof d);return s&&!h.isBuffer(t)&&(t=function(t){return h.from(t)}(t)),"function"==typeof e&&(n=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),"function"!=typeof n&&(n=y),i.ended?function(t,e){var n=new Error("write after end");t.emit("error",n),o.nextTick(e,n)}(this,n):(s||function(t,e,n,r){var i=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(r,a),i=!1),i}(this,i,t,n))&&(i.pendingcb++,a=function(t,e,n,r,i,o){if(!n){var a=function(t,e,n){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=h.from(e,n));return e}(e,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=e.objectMode?1:r.length;e.length+=s;var u=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(m.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),m.prototype._write=function(t,e,n){n(new Error("_write() is not implemented"))},m.prototype._writev=null,m.prototype.end=function(t,e,n){var r=this._writableState;"function"==typeof t?(n=t,t=null,e=null):"function"==typeof e&&(n=e,e=null),null!=t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(t,e,n){e.ending=!0,E(t,e),n&&(e.finished?o.nextTick(n):t.once("finish",n));e.ended=!0,t.writable=!1}(this,r,n)},Object.defineProperty(m.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),m.prototype.destroy=g.destroy,m.prototype._undestroy=g.undestroy,m.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,n(7),n(424).setImmediate,n(11))},function(t,e,n){"use strict";var r=n(3).Buffer,i=r.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(r.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=u,this.end=c,e=4;break;case"utf8":this.fillLast=s,e=4;break;case"base64":this.text=f,this.end=l,e=3;break;default:return this.write=h,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(e)}function a(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2==0){var n=t.toString("utf16le",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,n)}return e}function f(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function l(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(t.lastNeed=i-1),i;if(--r=0)return i>0&&(t.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString("utf8",e,r)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,n){"use strict";var r=n(8).Buffer,i=n(2),o=n(192),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],u=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],c=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],f=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],l=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function d(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(t,e){return t<>>32-e}function g(t,e,n,r,i,o,a,s){return p(t+(e^n^r)+o+a|0,s)+i|0}function y(t,e,n,r,i,o,a,s){return p(t+(e&n|~e&r)+o+a|0,s)+i|0}function b(t,e,n,r,i,o,a,s){return p(t+((e|~n)^r)+o+a|0,s)+i|0}function m(t,e,n,r,i,o,a,s){return p(t+(e&r|n&~r)+o+a|0,s)+i|0}function v(t,e,n,r,i,o,a,s){return p(t+(e^(n|~r))+o+a|0,s)+i|0}i(d,o),d.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,d=0|this._e,_=0|this._a,w=0|this._b,x=0|this._c,k=0|this._d,E=0|this._e,A=0;A<80;A+=1){var S,T;A<16?(S=g(n,r,i,o,d,t[s[A]],l[0],c[A]),T=v(_,w,x,k,E,t[u[A]],h[0],f[A])):A<32?(S=y(n,r,i,o,d,t[s[A]],l[1],c[A]),T=m(_,w,x,k,E,t[u[A]],h[1],f[A])):A<48?(S=b(n,r,i,o,d,t[s[A]],l[2],c[A]),T=b(_,w,x,k,E,t[u[A]],h[2],f[A])):A<64?(S=m(n,r,i,o,d,t[s[A]],l[3],c[A]),T=y(_,w,x,k,E,t[u[A]],h[3],f[A])):(S=v(n,r,i,o,d,t[s[A]],l[4],c[A]),T=g(_,w,x,k,E,t[u[A]],h[4],f[A])),n=d,d=o,o=p(i,10),i=r,r=S,_=E,E=k,k=p(x,10),x=w,w=T}var M=this._b+i+k|0;this._b=this._c+o+E|0,this._c=this._d+d+_|0,this._d=this._e+n+w|0,this._e=this._a+r+x|0,this._a=M},d.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=r.alloc?r.alloc(20):new r(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t},t.exports=d},function(t,e,n){(e=t.exports=function(t){t=t.toLowerCase();var n=e[t];if(!n)throw new Error(t+" is not supported (we accept pull requests)");return new n}).sha=n(432),e.sha1=n(433),e.sha224=n(434),e.sha256=n(197),e.sha384=n(435),e.sha512=n(198)},function(t,e,n){"use strict";e.utils=n(441),e.Cipher=n(442),e.DES=n(443),e.CBC=n(444),e.EDE=n(445)},function(t,e,n){var r=n(446),i=n(454),o=n(208);e.createCipher=e.Cipher=r.createCipher,e.createCipheriv=e.Cipheriv=r.createCipheriv,e.createDecipher=e.Decipher=i.createDecipher,e.createDecipheriv=e.Decipheriv=i.createDecipheriv,e.listCiphers=e.getCiphers=function(){return Object.keys(o)}},function(t,e,n){var r={ECB:n(447),CBC:n(448),CFB:n(449),CFB8:n(450),CFB1:n(451),OFB:n(452),CTR:n(206),GCM:n(206)},i=n(208);for(var o in i)i[o].module=r[i[o].mode];t.exports=i},function(t,e,n){var r;function i(t){this.rand=t}if(t.exports=function(t){return r||(r=new i(null)),r.generate(t)},t.exports.Rand=i,i.prototype.generate=function(t){return this._rand(t)},i.prototype._rand=function(t){if(this.rand.getBytes)return this.rand.getBytes(t);for(var e=new Uint8Array(t),n=0;n=0||!n.umod(t.prime1)||!n.umod(t.prime2);)n=new r(i(e));return n}t.exports=o,o.getr=a}).call(this,n(8).Buffer)},function(t,e,n){"use strict";var r=e;r.version=n(463).version,r.utils=n(16),r.rand=n(123),r.curve=n(214),r.curves=n(126),r.ec=n(474),r.eddsa=n(478)},function(t,e,n){"use strict";var r,i=e,o=n(127),a=n(214),s=n(16).assert;function u(t){"short"===t.type?this.curve=new a.short(t):"edwards"===t.type?this.curve=new a.edwards(t):this.curve=new a.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(t,e){Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get:function(){var n=new u(e);return Object.defineProperty(i,t,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=u,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(473)}catch(t){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(t,e,n){var r=e;r.utils=n(21),r.common=n(56),r.sha=n(467),r.ripemd=n(471),r.hmac=n(472),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(t,e,n){var r=n(14);t.exports=function(t,e){var n=t.append("foreignObject").attr("width","100000"),i=n.append("xhtml:div");i.attr("xmlns","http://www.w3.org/1999/xhtml");var o=e.label;switch(typeof o){case"function":i.insert(o);break;case"object":i.insert((function(){return o}));break;default:i.html(o)}r.applyStyle(i,e.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap");var a=i.node().getBoundingClientRect();return n.attr("width",a.width).attr("height",a.height),n}},function(t,e){},function(t,e,n){var r=n(61),i=n(92),o=n(66),a=n(264),s=n(270),u=n(136),c=n(137),f=n(273),l=n(274),h=n(141),d=n(275),p=n(41),g=n(279),y=n(280),b=n(146),m=n(6),v=n(39),_=n(284),w=n(13),x=n(286),k=n(27),E=1,A=2,S=4,T="[object Arguments]",M="[object Function]",D="[object GeneratorFunction]",C="[object Object]",O={};O[T]=O["[object Array]"]=O["[object ArrayBuffer]"]=O["[object DataView]"]=O["[object Boolean]"]=O["[object Date]"]=O["[object Float32Array]"]=O["[object Float64Array]"]=O["[object Int8Array]"]=O["[object Int16Array]"]=O["[object Int32Array]"]=O["[object Map]"]=O["[object Number]"]=O[C]=O["[object RegExp]"]=O["[object Set]"]=O["[object String]"]=O["[object Symbol]"]=O["[object Uint8Array]"]=O["[object Uint8ClampedArray]"]=O["[object Uint16Array]"]=O["[object Uint32Array]"]=!0,O["[object Error]"]=O[M]=O["[object WeakMap]"]=!1,t.exports=function t(e,n,R,I,N,B){var L,P=n&E,F=n&A,q=n&S;if(R&&(L=N?R(e,I,N,B):R(e)),void 0!==L)return L;if(!w(e))return e;var j=m(e);if(j){if(L=g(e),!P)return c(e,L)}else{var U=p(e),z=U==M||U==D;if(v(e))return u(e,P);if(U==C||U==T||z&&!N){if(L=F||z?{}:b(e),!P)return F?l(e,s(L,e)):f(e,a(L,e))}else{if(!O[U])return N?e:{};L=y(e,U,P)}}B||(B=new r);var Y=B.get(e);if(Y)return Y;B.set(e,L),x(e)?e.forEach((function(r){L.add(t(r,n,R,r,e,B))})):_(e)&&e.forEach((function(r,i){L.set(i,t(r,n,R,i,e,B))}));var V=q?F?d:h:F?keysIn:k,H=j?void 0:V(e);return i(H||e,(function(r,i){H&&(r=e[i=r]),o(L,i,t(r,n,R,i,e,B))})),L}},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(11))},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(32),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=i},function(t,e,n){var r=n(265),i=n(50),o=n(6),a=n(39),s=n(68),u=n(51),c=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=o(t),f=!n&&i(t),l=!n&&!f&&a(t),h=!n&&!f&&!l&&u(t),d=n||f||l||h,p=d?r(t.length,String):[],g=p.length;for(var y in t)!e&&!c.call(t,y)||d&&("length"==y||l&&("offset"==y||"parent"==y)||h&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||s(y,g))||p.push(y);return p}},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e,n){(function(t){var r=n(18),i=e&&!e.nodeType&&e,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=s?s(n):new t.constructor(n);return t.copy(r),r}}).call(this,n(9)(t))},function(t,e){t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++nh))return!1;var p=f.get(t);if(p&&f.get(e))return p==e;var g=-1,y=!0,b=n&s?new r:void 0;for(f.set(t,e),f.set(e,t);++g0&&(o=u.removeMin(),(a=s[o]).distance!==Number.POSITIVE_INFINITY);)r(o).forEach(c);return s}(t,String(e),n||o,r||function(e){return t.outEdges(e)})};var o=r.constant(1)},function(t,e,n){var r=n(12);function i(){this._arr=[],this._keyIndices={}}t.exports=i,i.prototype.size=function(){return this._arr.length},i.prototype.keys=function(){return this._arr.map((function(t){return t.key}))},i.prototype.has=function(t){return r.has(this._keyIndices,t)},i.prototype.priority=function(t){var e=this._keyIndices[t];if(void 0!==e)return this._arr[e].priority},i.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},i.prototype.add=function(t,e){var n=this._keyIndices;if(t=String(t),!r.has(n,t)){var i=this._arr,o=i.length;return n[t]=o,i.push({key:t,priority:e}),this._decrease(o),!0}return!1},i.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key},i.prototype.decrease=function(t,e){var n=this._keyIndices[t];if(e>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[n].priority+" New: "+e);this._arr[n].priority=e,this._decrease(n)},i.prototype._heapify=function(t){var e=this._arr,n=2*t,r=n+1,i=t;n>1].priority2?e[2]:void 0;for(c&&o(e[0],e[1],c)&&(r=1);++n1&&a.sort((function(t,e){var r=t.x-n.x,i=t.y-n.y,o=Math.sqrt(r*r+i*i),a=e.x-n.x,s=e.y-n.y,u=Math.sqrt(a*a+s*s);return oMath.abs(a)*c?(s<0&&(c=-c),n=0===s?0:c*a/s,r=c):(a<0&&(u=-u),n=u,r=0===a?0:u*s/a);return{x:i+n,y:o+r}}},function(t,e){var n={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},function(t,e,n){"use strict";var r=n(3).Buffer,i=n(112).Transform;function o(t){i.call(this),this._block=r.allocUnsafe(t),this._blockSize=t,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}n(2)(o,i),o.prototype._transform=function(t,e,n){var r=null;try{this.update(t,e)}catch(t){r=t}n(r)},o.prototype._flush=function(t){var e=null;try{this.push(this.digest())}catch(t){e=t}t(e)},o.prototype.update=function(t,e){if(function(t,e){if(!r.isBuffer(t)&&"string"!=typeof t)throw new TypeError(e+" must be a string or a buffer")}(t,"Data"),this._finalized)throw new Error("Digest already called");r.isBuffer(t)||(t=r.from(t,e));for(var n=this._block,i=0;this._blockOffset+t.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var e=this._digest();void 0!==t&&(e=e.toString(t)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return e},o.prototype._digest=function(){throw new Error("_digest is not implemented")},t.exports=o},function(t,e,n){"use strict";(function(e,r){var i=n(78);t.exports=v;var o,a=n(191);v.ReadableState=m;n(113).EventEmitter;var s=function(t,e){return t.listeners(e).length},u=n(194),c=n(115).Buffer,f=e.Uint8Array||function(){};var l=n(54);l.inherits=n(2);var h=n(421),d=void 0;d=h&&h.debuglog?h.debuglog("stream"):function(){};var p,g=n(422),y=n(195);l.inherits(v,u);var b=["error","close","destroy","pause","resume"];function m(t,e){t=t||{};var r=e instanceof(o=o||n(35));this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var i=t.highWaterMark,a=t.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(a||0===a)?a:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new g,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(p||(p=n(117).StringDecoder),this.decoder=new p(t.encoding),this.encoding=t.encoding)}function v(t){if(o=o||n(35),!(this instanceof v))return new v(t);this._readableState=new m(t,this),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),u.call(this)}function _(t,e,n,r,i){var o,a=t._readableState;null===e?(a.reading=!1,function(t,e){if(e.ended)return;if(e.decoder){var n=e.decoder.end();n&&n.length&&(e.buffer.push(n),e.length+=e.objectMode?1:n.length)}e.ended=!0,E(t)}(t,a)):(i||(o=function(t,e){var n;r=e,c.isBuffer(r)||r instanceof f||"string"==typeof e||void 0===e||t.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(a,e)),o?t.emit("error",o):a.objectMode||e&&e.length>0?("string"==typeof e||a.objectMode||Object.getPrototypeOf(e)===c.prototype||(e=function(t){return c.from(t)}(e)),r?a.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):w(t,a,e,!0):a.ended?t.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(e=a.decoder.write(e),a.objectMode||0!==e.length?w(t,a,e,!1):S(t,a)):w(t,a,e,!1))):r||(a.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=x?t=x:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function E(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(d("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(A,t):A(t))}function A(t){d("emit readable"),t.emit("readable"),C(t)}function S(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(T,t,e))}function T(t,e){for(var n=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):n=function(t,e,n){var r;to.length?o.length:t;if(a===o.length?i+=o:i+=o.slice(0,t),0===(t-=a)){a===o.length?(++r,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(a));break}++r}return e.length-=r,i}(t,e):function(t,e){var n=c.allocUnsafe(t),r=e.head,i=1;r.data.copy(n),t-=r.data.length;for(;r=r.next;){var o=r.data,a=t>o.length?o.length:t;if(o.copy(n,n.length-t,0,a),0===(t-=a)){a===o.length?(++i,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(a));break}++i}return e.length-=i,n}(t,e);return r}(t,e.buffer,e.decoder),n);var n}function R(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(I,e,t))}function I(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function N(t,e){for(var n=0,r=t.length;n=e.highWaterMark||e.ended))return d("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?R(this):E(this),null;if(0===(t=k(t,e))&&e.ended)return 0===e.length&&R(this),null;var r,i=e.needReadable;return d("need readable",i),(0===e.length||e.length-t0?O(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&R(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(t,e){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,d("pipe count=%d opts=%j",o.pipesCount,e);var u=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?f:v;function c(e,r){d("onunpipe"),e===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,d("cleanup"),t.removeListener("close",b),t.removeListener("finish",m),t.removeListener("drain",l),t.removeListener("error",y),t.removeListener("unpipe",c),n.removeListener("end",f),n.removeListener("end",v),n.removeListener("data",g),h=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||l())}function f(){d("onend"),t.end()}o.endEmitted?i.nextTick(u):n.once("end",u),t.on("unpipe",c);var l=function(t){return function(){var e=t._readableState;d("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,C(t))}}(n);t.on("drain",l);var h=!1;var p=!1;function g(e){d("ondata"),p=!1,!1!==t.write(e)||p||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==N(o.pipes,t))&&!h&&(d("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function y(e){d("onerror",e),v(),t.removeListener("error",y),0===s(t,"error")&&t.emit("error",e)}function b(){t.removeListener("finish",m),v()}function m(){d("onfinish"),t.removeListener("close",b),v()}function v(){d("unpipe"),n.unpipe(t)}return n.on("data",g),function(t,e,n){if("function"==typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?a(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",y),t.once("close",b),t.once("finish",m),t.emit("pipe",n),o.flowing||(d("pipe resume"),n.resume()),t},v.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n),this);if(!t){var r=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function h(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function d(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}r(u,i),u.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},u.prototype._update=function(t){for(var e,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,p=0|this._f,g=0|this._g,y=0|this._h,b=0;b<16;++b)n[b]=t.readInt32BE(4*b);for(;b<64;++b)n[b]=0|(((e=n[b-2])>>>17|e<<15)^(e>>>19|e<<13)^e>>>10)+n[b-7]+d(n[b-15])+n[b-16];for(var m=0;m<64;++m){var v=y+h(u)+c(u,p,g)+a[m]+n[m]|0,_=l(r)+f(r,i,o)|0;y=g,g=p,p=u,u=s+v|0,s=o,o=i,i=r,r=v+_|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0,this._f=p+this._f|0,this._g=g+this._g|0,this._h=y+this._h|0},u.prototype._hash=function(){var t=o.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t},t.exports=u},function(t,e,n){var r=n(2),i=n(45),o=n(3).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function u(){this.init(),this._w=s,i.call(this,128,112)}function c(t,e,n){return n^t&(e^n)}function f(t,e,n){return t&e|n&(t|e)}function l(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function h(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function d(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function p(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function g(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function y(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function b(t,e){return t>>>0>>0?1:0}r(u,i),u.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},u.prototype._update=function(t){for(var e=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,u=0|this._fh,m=0|this._gh,v=0|this._hh,_=0|this._al,w=0|this._bl,x=0|this._cl,k=0|this._dl,E=0|this._el,A=0|this._fl,S=0|this._gl,T=0|this._hl,M=0;M<32;M+=2)e[M]=t.readInt32BE(4*M),e[M+1]=t.readInt32BE(4*M+4);for(;M<160;M+=2){var D=e[M-30],C=e[M-30+1],O=d(D,C),R=p(C,D),I=g(D=e[M-4],C=e[M-4+1]),N=y(C,D),B=e[M-14],L=e[M-14+1],P=e[M-32],F=e[M-32+1],q=R+L|0,j=O+B+b(q,R)|0;j=(j=j+I+b(q=q+N|0,N)|0)+P+b(q=q+F|0,F)|0,e[M]=j,e[M+1]=q}for(var U=0;U<160;U+=2){j=e[U],q=e[U+1];var z=f(n,r,i),Y=f(_,w,x),V=l(n,_),H=l(_,n),$=h(s,E),G=h(E,s),W=a[U],K=a[U+1],X=c(s,u,m),Z=c(E,A,S),J=T+G|0,Q=v+$+b(J,T)|0;Q=(Q=(Q=Q+X+b(J=J+Z|0,Z)|0)+W+b(J=J+K|0,K)|0)+j+b(J=J+q|0,q)|0;var tt=H+Y|0,et=V+z+b(tt,H)|0;v=m,T=S,m=u,S=A,u=s,A=E,s=o+Q+b(E=k+J|0,k)|0,o=i,k=x,i=r,x=w,r=n,w=_,n=Q+et+b(_=J+tt|0,J)|0}this._al=this._al+_|0,this._bl=this._bl+w|0,this._cl=this._cl+x|0,this._dl=this._dl+k|0,this._el=this._el+E|0,this._fl=this._fl+A|0,this._gl=this._gl+S|0,this._hl=this._hl+T|0,this._ah=this._ah+n+b(this._al,_)|0,this._bh=this._bh+r+b(this._bl,w)|0,this._ch=this._ch+i+b(this._cl,x)|0,this._dh=this._dh+o+b(this._dl,k)|0,this._eh=this._eh+s+b(this._el,E)|0,this._fh=this._fh+u+b(this._fl,A)|0,this._gh=this._gh+m+b(this._gl,S)|0,this._hh=this._hh+v+b(this._hl,T)|0},u.prototype._hash=function(){var t=o.allocUnsafe(64);function e(e,n,r){t.writeInt32BE(e,r),t.writeInt32BE(n,r+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t},t.exports=u},function(t,e,n){"use strict";var r=n(2),i=n(436),o=n(31),a=n(3).Buffer,s=n(200),u=n(118),c=n(119),f=a.alloc(128);function l(t,e){o.call(this,"digest"),"string"==typeof e&&(e=a.from(e));var n="sha512"===t||"sha384"===t?128:64;(this._alg=t,this._key=e,e.length>n)?e=("rmd160"===t?new u:c(t)).update(e).digest():e.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(8).Buffer)},function(t,e,n){(function(e){var n;e.browser?n="utf-8":n=parseInt(e.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";t.exports=n}).call(this,n(7))},function(t,e,n){var r=n(200),i=n(118),o=n(119),a=n(203),s=n(204),u=n(3).Buffer,c=u.alloc(128),f={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function l(t,e,n){var a=function(t){return"rmd160"===t||"ripemd160"===t?function(t){return(new i).update(t).digest()}:"md5"===t?r:function(e){return o(t).update(e).digest()}}(t),s="sha512"===t||"sha384"===t?128:64;e.length>s?e=a(e):e.lengtht;)n.ishrn(1);if(n.isEven()&&n.iadd(s),n.testn(1)||n.iadd(u),e.cmp(u)){if(!e.cmp(c))for(;n.mod(f).cmp(l);)n.iadd(d)}else for(;n.mod(o).cmp(h);)n.iadd(d);if(y(p=n.shrn(1))&&y(n)&&b(p)&&b(n)&&a.test(p)&&a.test(n))return n}}},function(t,e,n){var r=n(5),i=n(123);function o(t){this.rand=t||new i.Rand}t.exports=o,o.create=function(t){return new o(t)},o.prototype._randbelow=function(t){var e=t.bitLength(),n=Math.ceil(e/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(t)>=0);return i},o.prototype._randrange=function(t,e){var n=e.sub(t);return t.add(this._randbelow(n))},o.prototype.test=function(t,e,n){var i=t.bitLength(),o=r.mont(t),a=new r(1).toRed(o);e||(e=Math.max(1,i/48|0));for(var s=t.subn(1),u=0;!s.testn(u);u++);for(var c=t.shrn(u),f=s.toRed(o);e>0;e--){var l=this._randrange(new r(2),s);n&&n(l);var h=l.toRed(o).redPow(c);if(0!==h.cmp(a)&&0!==h.cmp(f)){for(var d=1;d0;e--){var f=this._randrange(new r(2),a),l=t.gcd(f);if(0!==l.cmpn(1))return l;var h=f.toRed(i).redPow(u);if(0!==h.cmp(o)&&0!==h.cmp(c)){for(var d=1;d>8,a=255&i;o?n.push(o,a):n.push(a)}return n},r.zero2=i,r.toHex=o,r.encode=function(t,e){return"hex"===e?o(t):t}},function(t,e,n){"use strict";var r=e;r.base=n(81),r.short=n(464),r.mont=n(465),r.edwards=n(466)},function(t,e,n){"use strict";var r=n(21).rotr32;function i(t,e,n){return t&e^~t&n}function o(t,e,n){return t&e^t&n^e&n}function a(t,e,n){return t^e^n}e.ft_1=function(t,e,n,r){return 0===t?i(e,n,r):1===t||3===t?a(e,n,r):2===t?o(e,n,r):void 0},e.ch32=i,e.maj32=o,e.p32=a,e.s0_256=function(t){return r(t,2)^r(t,13)^r(t,22)},e.s1_256=function(t){return r(t,6)^r(t,11)^r(t,25)},e.g0_256=function(t){return r(t,7)^r(t,18)^t>>>3},e.g1_256=function(t){return r(t,17)^r(t,19)^t>>>10}},function(t,e,n){"use strict";var r=n(21),i=n(56),o=n(215),a=n(15),s=r.sum32,u=r.sum32_4,c=r.sum32_5,f=o.ch32,l=o.maj32,h=o.s0_256,d=o.s1_256,p=o.g0_256,g=o.g1_256,y=i.BlockHash,b=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function m(){if(!(this instanceof m))return new m;y.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}r.inherits(m,y),t.exports=m,m.blockSize=512,m.outSize=256,m.hmacStrength=192,m.padLength=64,m.prototype._update=function(t,e){for(var n=this.W,r=0;r<16;r++)n[r]=t[e+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=t.readUInt8(e),t.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:s.tag[n]}}function l(t,e,n){var r=t.readUInt8(n);if(t.isError(r))return r;if(!e&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return t.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");e||(i|=32);return i|=s.tagClassByName[n||"universal"]<<6}(t,e,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=a,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var u=1,c=r.length;c>=256;c>>=8)u++;(o=new i(2+u))[0]=a,o[1]=128|u;c=1+u;for(var f=r.length;f>0;c--,f>>=8)o[c]=255&f;return this._createEncoderBuffer([o,r])},c.prototype._encodeStr=function(t,e){if("bitstr"===e)return this._createEncoderBuffer([0|t.unused,t.data]);if("bmpstr"===e){for(var n=new i(2*t.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");t.splice(0,2,40*t[0]+t[1])}var o=0;for(r=0;r=128;a>>=7)o++}var s=new i(o),u=s.length-1;for(r=t.length-1;r>=0;r--){a=t[r];for(s[u--]=127&a;(a>>=7)>0;)s[u--]=128|127&a}return this._createEncoderBuffer(s)},c.prototype._encodeTime=function(t,e){var n,r=new Date(t);return"gentime"===e?n=[f(r.getFullYear()),f(r.getUTCMonth()+1),f(r.getUTCDate()),f(r.getUTCHours()),f(r.getUTCMinutes()),f(r.getUTCSeconds()),"Z"].join(""):"utctime"===e?n=[f(r.getFullYear()%100),f(r.getUTCMonth()+1),f(r.getUTCDate()),f(r.getUTCHours()),f(r.getUTCMinutes()),f(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+e+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.prototype._encodeInt=function(t,e){if("string"==typeof t){if(!e)return this.reporter.error("String int or enum given, but no values map");if(!e.hasOwnProperty(t))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(t));t=e[t]}if("number"!=typeof t&&!i.isBuffer(t)){var n=t.toArray();!t.sign&&128&n[0]&&n.unshift(0),t=new i(n)}if(i.isBuffer(t)){var r=t.length;0===t.length&&r++;var o=new i(r);return t.copy(o),0===t.length&&(o[0]=0),this._createEncoderBuffer(o)}if(t<128)return this._createEncoderBuffer(t);if(t<256)return this._createEncoderBuffer([0,t]);r=1;for(var a=t;a>=256;a>>=8)r++;for(a=(o=new Array(r)).length-1;a>=0;a--)o[a]=255&t,t>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},c.prototype._encodeBool=function(t){return this._createEncoderBuffer(t?255:0)},c.prototype._use=function(t,e){return"function"==typeof t&&(t=t(e)),t._getEncoder("der").tree},c.prototype._skipDefault=function(t,e,n){var r,i=this._baseState;if(null===i.default)return!1;var o=t.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,e,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r\u20D2|\u205F\u200A|\u219D\u0338|\u2202\u0338|\u2220\u20D2|\u2229\uFE00|\u222A\uFE00|\u223C\u20D2|\u223D\u0331|\u223E\u0333|\u2242\u0338|\u224B\u0338|\u224D\u20D2|\u224E\u0338|\u224F\u0338|\u2250\u0338|\u2261\u20E5|\u2264\u20D2|\u2265\u20D2|\u2266\u0338|\u2267\u0338|\u2268\uFE00|\u2269\uFE00|\u226A\u0338|\u226A\u20D2|\u226B\u0338|\u226B\u20D2|\u227F\u0338|\u2282\u20D2|\u2283\u20D2|\u228A\uFE00|\u228B\uFE00|\u228F\u0338|\u2290\u0338|\u2293\uFE00|\u2294\uFE00|\u22B4\u20D2|\u22B5\u20D2|\u22D8\u0338|\u22D9\u0338|\u22DA\uFE00|\u22DB\uFE00|\u22F5\u0338|\u22F9\u0338|\u2933\u0338|\u29CF\u0338|\u29D0\u0338|\u2A6D\u0338|\u2A70\u0338|\u2A7D\u0338|\u2A7E\u0338|\u2AA1\u0338|\u2AA2\u0338|\u2AAC\uFE00|\u2AAD\uFE00|\u2AAF\u0338|\u2AB0\u0338|\u2AC5\u0338|\u2AC6\u0338|\u2ACB\uFE00|\u2ACC\uFE00|\u2AFD\u20E5|[\xA0-\u0113\u0116-\u0122\u0124-\u012B\u012E-\u014D\u0150-\u017E\u0192\u01B5\u01F5\u0237\u02C6\u02C7\u02D8-\u02DD\u0311\u0391-\u03A1\u03A3-\u03A9\u03B1-\u03C9\u03D1\u03D2\u03D5\u03D6\u03DC\u03DD\u03F0\u03F1\u03F5\u03F6\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E\u045F\u2002-\u2005\u2007-\u2010\u2013-\u2016\u2018-\u201A\u201C-\u201E\u2020-\u2022\u2025\u2026\u2030-\u2035\u2039\u203A\u203E\u2041\u2043\u2044\u204F\u2057\u205F-\u2063\u20AC\u20DB\u20DC\u2102\u2105\u210A-\u2113\u2115-\u211E\u2122\u2124\u2127-\u2129\u212C\u212D\u212F-\u2131\u2133-\u2138\u2145-\u2148\u2153-\u215E\u2190-\u219B\u219D-\u21A7\u21A9-\u21AE\u21B0-\u21B3\u21B5-\u21B7\u21BA-\u21DB\u21DD\u21E4\u21E5\u21F5\u21FD-\u2205\u2207-\u2209\u220B\u220C\u220F-\u2214\u2216-\u2218\u221A\u221D-\u2238\u223A-\u2257\u2259\u225A\u225C\u225F-\u2262\u2264-\u228B\u228D-\u229B\u229D-\u22A5\u22A7-\u22B0\u22B2-\u22BB\u22BD-\u22DB\u22DE-\u22E3\u22E6-\u22F7\u22F9-\u22FE\u2305\u2306\u2308-\u2310\u2312\u2313\u2315\u2316\u231C-\u231F\u2322\u2323\u232D\u232E\u2336\u233D\u233F\u237C\u23B0\u23B1\u23B4-\u23B6\u23DC-\u23DF\u23E2\u23E7\u2423\u24C8\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2550-\u256C\u2580\u2584\u2588\u2591-\u2593\u25A1\u25AA\u25AB\u25AD\u25AE\u25B1\u25B3-\u25B5\u25B8\u25B9\u25BD-\u25BF\u25C2\u25C3\u25CA\u25CB\u25EC\u25EF\u25F8-\u25FC\u2605\u2606\u260E\u2640\u2642\u2660\u2663\u2665\u2666\u266A\u266D-\u266F\u2713\u2717\u2720\u2736\u2758\u2772\u2773\u27C8\u27C9\u27E6-\u27ED\u27F5-\u27FA\u27FC\u27FF\u2902-\u2905\u290C-\u2913\u2916\u2919-\u2920\u2923-\u292A\u2933\u2935-\u2939\u293C\u293D\u2945\u2948-\u294B\u294E-\u2976\u2978\u2979\u297B-\u297F\u2985\u2986\u298B-\u2996\u299A\u299C\u299D\u29A4-\u29B7\u29B9\u29BB\u29BC\u29BE-\u29C5\u29C9\u29CD-\u29D0\u29DC-\u29DE\u29E3-\u29E5\u29EB\u29F4\u29F6\u2A00-\u2A02\u2A04\u2A06\u2A0C\u2A0D\u2A10-\u2A17\u2A22-\u2A27\u2A29\u2A2A\u2A2D-\u2A31\u2A33-\u2A3C\u2A3F\u2A40\u2A42-\u2A4D\u2A50\u2A53-\u2A58\u2A5A-\u2A5D\u2A5F\u2A66\u2A6A\u2A6D-\u2A75\u2A77-\u2A9A\u2A9D-\u2AA2\u2AA4-\u2AB0\u2AB3-\u2AC8\u2ACB\u2ACC\u2ACF-\u2ADB\u2AE4\u2AE6-\u2AE9\u2AEB-\u2AF3\u2AFD\uFB00-\uFB04]|\uD835[\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDD6B]/g,l={"­":"shy","‌":"zwnj","‍":"zwj","‎":"lrm","⁣":"ic","⁢":"it","⁡":"af","‏":"rlm","​":"ZeroWidthSpace","⁠":"NoBreak","̑":"DownBreve","⃛":"tdot","⃜":"DotDot","\t":"Tab","\n":"NewLine"," ":"puncsp"," ":"MediumSpace"," ":"thinsp"," ":"hairsp"," ":"emsp13"," ":"ensp"," ":"emsp14"," ":"emsp"," ":"numsp"," ":"nbsp","  ":"ThickSpace","‾":"oline",_:"lowbar","‐":"dash","–":"ndash","—":"mdash","―":"horbar",",":"comma",";":"semi","⁏":"bsemi",":":"colon","⩴":"Colone","!":"excl","¡":"iexcl","?":"quest","¿":"iquest",".":"period","‥":"nldr","…":"mldr","·":"middot","'":"apos","‘":"lsquo","’":"rsquo","‚":"sbquo","‹":"lsaquo","›":"rsaquo",'"':"quot","“":"ldquo","”":"rdquo","„":"bdquo","«":"laquo","»":"raquo","(":"lpar",")":"rpar","[":"lsqb","]":"rsqb","{":"lcub","}":"rcub","⌈":"lceil","⌉":"rceil","⌊":"lfloor","⌋":"rfloor","⦅":"lopar","⦆":"ropar","⦋":"lbrke","⦌":"rbrke","⦍":"lbrkslu","⦎":"rbrksld","⦏":"lbrksld","⦐":"rbrkslu","⦑":"langd","⦒":"rangd","⦓":"lparlt","⦔":"rpargt","⦕":"gtlPar","⦖":"ltrPar","⟦":"lobrk","⟧":"robrk","⟨":"lang","⟩":"rang","⟪":"Lang","⟫":"Rang","⟬":"loang","⟭":"roang","❲":"lbbrk","❳":"rbbrk","‖":"Vert","§":"sect","¶":"para","@":"commat","*":"ast","/":"sol",undefined:null,"&":"amp","#":"num","%":"percnt","‰":"permil","‱":"pertenk","†":"dagger","‡":"Dagger","•":"bull","⁃":"hybull","′":"prime","″":"Prime","‴":"tprime","⁗":"qprime","‵":"bprime","⁁":"caret","`":"grave","´":"acute","˜":"tilde","^":"Hat","¯":"macr","˘":"breve","˙":"dot","¨":"die","˚":"ring","˝":"dblac","¸":"cedil","˛":"ogon","ˆ":"circ","ˇ":"caron","°":"deg","©":"copy","®":"reg","℗":"copysr","℘":"wp","℞":"rx","℧":"mho","℩":"iiota","←":"larr","↚":"nlarr","→":"rarr","↛":"nrarr","↑":"uarr","↓":"darr","↔":"harr","↮":"nharr","↕":"varr","↖":"nwarr","↗":"nearr","↘":"searr","↙":"swarr","↝":"rarrw","↝̸":"nrarrw","↞":"Larr","↟":"Uarr","↠":"Rarr","↡":"Darr","↢":"larrtl","↣":"rarrtl","↤":"mapstoleft","↥":"mapstoup","↦":"map","↧":"mapstodown","↩":"larrhk","↪":"rarrhk","↫":"larrlp","↬":"rarrlp","↭":"harrw","↰":"lsh","↱":"rsh","↲":"ldsh","↳":"rdsh","↵":"crarr","↶":"cularr","↷":"curarr","↺":"olarr","↻":"orarr","↼":"lharu","↽":"lhard","↾":"uharr","↿":"uharl","⇀":"rharu","⇁":"rhard","⇂":"dharr","⇃":"dharl","⇄":"rlarr","⇅":"udarr","⇆":"lrarr","⇇":"llarr","⇈":"uuarr","⇉":"rrarr","⇊":"ddarr","⇋":"lrhar","⇌":"rlhar","⇐":"lArr","⇍":"nlArr","⇑":"uArr","⇒":"rArr","⇏":"nrArr","⇓":"dArr","⇔":"iff","⇎":"nhArr","⇕":"vArr","⇖":"nwArr","⇗":"neArr","⇘":"seArr","⇙":"swArr","⇚":"lAarr","⇛":"rAarr","⇝":"zigrarr","⇤":"larrb","⇥":"rarrb","⇵":"duarr","⇽":"loarr","⇾":"roarr","⇿":"hoarr","∀":"forall","∁":"comp","∂":"part","∂̸":"npart","∃":"exist","∄":"nexist","∅":"empty","∇":"Del","∈":"in","∉":"notin","∋":"ni","∌":"notni","϶":"bepsi","∏":"prod","∐":"coprod","∑":"sum","+":"plus","±":"pm","÷":"div","×":"times","<":"lt","≮":"nlt","<⃒":"nvlt","=":"equals","≠":"ne","=⃥":"bne","⩵":"Equal",">":"gt","≯":"ngt",">⃒":"nvgt","¬":"not","|":"vert","¦":"brvbar","−":"minus","∓":"mp","∔":"plusdo","⁄":"frasl","∖":"setmn","∗":"lowast","∘":"compfn","√":"Sqrt","∝":"prop","∞":"infin","∟":"angrt","∠":"ang","∠⃒":"nang","∡":"angmsd","∢":"angsph","∣":"mid","∤":"nmid","∥":"par","∦":"npar","∧":"and","∨":"or","∩":"cap","∩︀":"caps","∪":"cup","∪︀":"cups","∫":"int","∬":"Int","∭":"tint","⨌":"qint","∮":"oint","∯":"Conint","∰":"Cconint","∱":"cwint","∲":"cwconint","∳":"awconint","∴":"there4","∵":"becaus","∶":"ratio","∷":"Colon","∸":"minusd","∺":"mDDot","∻":"homtht","∼":"sim","≁":"nsim","∼⃒":"nvsim","∽":"bsim","∽̱":"race","∾":"ac","∾̳":"acE","∿":"acd","≀":"wr","≂":"esim","≂̸":"nesim","≃":"sime","≄":"nsime","≅":"cong","≇":"ncong","≆":"simne","≈":"ap","≉":"nap","≊":"ape","≋":"apid","≋̸":"napid","≌":"bcong","≍":"CupCap","≭":"NotCupCap","≍⃒":"nvap","≎":"bump","≎̸":"nbump","≏":"bumpe","≏̸":"nbumpe","≐":"doteq","≐̸":"nedot","≑":"eDot","≒":"efDot","≓":"erDot","≔":"colone","≕":"ecolon","≖":"ecir","≗":"cire","≙":"wedgeq","≚":"veeeq","≜":"trie","≟":"equest","≡":"equiv","≢":"nequiv","≡⃥":"bnequiv","≤":"le","≰":"nle","≤⃒":"nvle","≥":"ge","≱":"nge","≥⃒":"nvge","≦":"lE","≦̸":"nlE","≧":"gE","≧̸":"ngE","≨︀":"lvnE","≨":"lnE","≩":"gnE","≩︀":"gvnE","≪":"ll","≪̸":"nLtv","≪⃒":"nLt","≫":"gg","≫̸":"nGtv","≫⃒":"nGt","≬":"twixt","≲":"lsim","≴":"nlsim","≳":"gsim","≵":"ngsim","≶":"lg","≸":"ntlg","≷":"gl","≹":"ntgl","≺":"pr","⊀":"npr","≻":"sc","⊁":"nsc","≼":"prcue","⋠":"nprcue","≽":"sccue","⋡":"nsccue","≾":"prsim","≿":"scsim","≿̸":"NotSucceedsTilde","⊂":"sub","⊄":"nsub","⊂⃒":"vnsub","⊃":"sup","⊅":"nsup","⊃⃒":"vnsup","⊆":"sube","⊈":"nsube","⊇":"supe","⊉":"nsupe","⊊︀":"vsubne","⊊":"subne","⊋︀":"vsupne","⊋":"supne","⊍":"cupdot","⊎":"uplus","⊏":"sqsub","⊏̸":"NotSquareSubset","⊐":"sqsup","⊐̸":"NotSquareSuperset","⊑":"sqsube","⋢":"nsqsube","⊒":"sqsupe","⋣":"nsqsupe","⊓":"sqcap","⊓︀":"sqcaps","⊔":"sqcup","⊔︀":"sqcups","⊕":"oplus","⊖":"ominus","⊗":"otimes","⊘":"osol","⊙":"odot","⊚":"ocir","⊛":"oast","⊝":"odash","⊞":"plusb","⊟":"minusb","⊠":"timesb","⊡":"sdotb","⊢":"vdash","⊬":"nvdash","⊣":"dashv","⊤":"top","⊥":"bot","⊧":"models","⊨":"vDash","⊭":"nvDash","⊩":"Vdash","⊮":"nVdash","⊪":"Vvdash","⊫":"VDash","⊯":"nVDash","⊰":"prurel","⊲":"vltri","⋪":"nltri","⊳":"vrtri","⋫":"nrtri","⊴":"ltrie","⋬":"nltrie","⊴⃒":"nvltrie","⊵":"rtrie","⋭":"nrtrie","⊵⃒":"nvrtrie","⊶":"origof","⊷":"imof","⊸":"mumap","⊹":"hercon","⊺":"intcal","⊻":"veebar","⊽":"barvee","⊾":"angrtvb","⊿":"lrtri","⋀":"Wedge","⋁":"Vee","⋂":"xcap","⋃":"xcup","⋄":"diam","⋅":"sdot","⋆":"Star","⋇":"divonx","⋈":"bowtie","⋉":"ltimes","⋊":"rtimes","⋋":"lthree","⋌":"rthree","⋍":"bsime","⋎":"cuvee","⋏":"cuwed","⋐":"Sub","⋑":"Sup","⋒":"Cap","⋓":"Cup","⋔":"fork","⋕":"epar","⋖":"ltdot","⋗":"gtdot","⋘":"Ll","⋘̸":"nLl","⋙":"Gg","⋙̸":"nGg","⋚︀":"lesg","⋚":"leg","⋛":"gel","⋛︀":"gesl","⋞":"cuepr","⋟":"cuesc","⋦":"lnsim","⋧":"gnsim","⋨":"prnsim","⋩":"scnsim","⋮":"vellip","⋯":"ctdot","⋰":"utdot","⋱":"dtdot","⋲":"disin","⋳":"isinsv","⋴":"isins","⋵":"isindot","⋵̸":"notindot","⋶":"notinvc","⋷":"notinvb","⋹":"isinE","⋹̸":"notinE","⋺":"nisd","⋻":"xnis","⋼":"nis","⋽":"notnivc","⋾":"notnivb","⌅":"barwed","⌆":"Barwed","⌌":"drcrop","⌍":"dlcrop","⌎":"urcrop","⌏":"ulcrop","⌐":"bnot","⌒":"profline","⌓":"profsurf","⌕":"telrec","⌖":"target","⌜":"ulcorn","⌝":"urcorn","⌞":"dlcorn","⌟":"drcorn","⌢":"frown","⌣":"smile","⌭":"cylcty","⌮":"profalar","⌶":"topbot","⌽":"ovbar","⌿":"solbar","⍼":"angzarr","⎰":"lmoust","⎱":"rmoust","⎴":"tbrk","⎵":"bbrk","⎶":"bbrktbrk","⏜":"OverParenthesis","⏝":"UnderParenthesis","⏞":"OverBrace","⏟":"UnderBrace","⏢":"trpezium","⏧":"elinters","␣":"blank","─":"boxh","│":"boxv","┌":"boxdr","┐":"boxdl","└":"boxur","┘":"boxul","├":"boxvr","┤":"boxvl","┬":"boxhd","┴":"boxhu","┼":"boxvh","═":"boxH","║":"boxV","╒":"boxdR","╓":"boxDr","╔":"boxDR","╕":"boxdL","╖":"boxDl","╗":"boxDL","╘":"boxuR","╙":"boxUr","╚":"boxUR","╛":"boxuL","╜":"boxUl","╝":"boxUL","╞":"boxvR","╟":"boxVr","╠":"boxVR","╡":"boxvL","╢":"boxVl","╣":"boxVL","╤":"boxHd","╥":"boxhD","╦":"boxHD","╧":"boxHu","╨":"boxhU","╩":"boxHU","╪":"boxvH","╫":"boxVh","╬":"boxVH","▀":"uhblk","▄":"lhblk","█":"block","░":"blk14","▒":"blk12","▓":"blk34","□":"squ","▪":"squf","▫":"EmptyVerySmallSquare","▭":"rect","▮":"marker","▱":"fltns","△":"xutri","▴":"utrif","▵":"utri","▸":"rtrif","▹":"rtri","▽":"xdtri","▾":"dtrif","▿":"dtri","◂":"ltrif","◃":"ltri","◊":"loz","○":"cir","◬":"tridot","◯":"xcirc","◸":"ultri","◹":"urtri","◺":"lltri","◻":"EmptySmallSquare","◼":"FilledSmallSquare","★":"starf","☆":"star","☎":"phone","♀":"female","♂":"male","♠":"spades","♣":"clubs","♥":"hearts","♦":"diams","♪":"sung","✓":"check","✗":"cross","✠":"malt","✶":"sext","❘":"VerticalSeparator","⟈":"bsolhsub","⟉":"suphsol","⟵":"xlarr","⟶":"xrarr","⟷":"xharr","⟸":"xlArr","⟹":"xrArr","⟺":"xhArr","⟼":"xmap","⟿":"dzigrarr","⤂":"nvlArr","⤃":"nvrArr","⤄":"nvHarr","⤅":"Map","⤌":"lbarr","⤍":"rbarr","⤎":"lBarr","⤏":"rBarr","⤐":"RBarr","⤑":"DDotrahd","⤒":"UpArrowBar","⤓":"DownArrowBar","⤖":"Rarrtl","⤙":"latail","⤚":"ratail","⤛":"lAtail","⤜":"rAtail","⤝":"larrfs","⤞":"rarrfs","⤟":"larrbfs","⤠":"rarrbfs","⤣":"nwarhk","⤤":"nearhk","⤥":"searhk","⤦":"swarhk","⤧":"nwnear","⤨":"toea","⤩":"tosa","⤪":"swnwar","⤳":"rarrc","⤳̸":"nrarrc","⤵":"cudarrr","⤶":"ldca","⤷":"rdca","⤸":"cudarrl","⤹":"larrpl","⤼":"curarrm","⤽":"cularrp","⥅":"rarrpl","⥈":"harrcir","⥉":"Uarrocir","⥊":"lurdshar","⥋":"ldrushar","⥎":"LeftRightVector","⥏":"RightUpDownVector","⥐":"DownLeftRightVector","⥑":"LeftUpDownVector","⥒":"LeftVectorBar","⥓":"RightVectorBar","⥔":"RightUpVectorBar","⥕":"RightDownVectorBar","⥖":"DownLeftVectorBar","⥗":"DownRightVectorBar","⥘":"LeftUpVectorBar","⥙":"LeftDownVectorBar","⥚":"LeftTeeVector","⥛":"RightTeeVector","⥜":"RightUpTeeVector","⥝":"RightDownTeeVector","⥞":"DownLeftTeeVector","⥟":"DownRightTeeVector","⥠":"LeftUpTeeVector","⥡":"LeftDownTeeVector","⥢":"lHar","⥣":"uHar","⥤":"rHar","⥥":"dHar","⥦":"luruhar","⥧":"ldrdhar","⥨":"ruluhar","⥩":"rdldhar","⥪":"lharul","⥫":"llhard","⥬":"rharul","⥭":"lrhard","⥮":"udhar","⥯":"duhar","⥰":"RoundImplies","⥱":"erarr","⥲":"simrarr","⥳":"larrsim","⥴":"rarrsim","⥵":"rarrap","⥶":"ltlarr","⥸":"gtrarr","⥹":"subrarr","⥻":"suplarr","⥼":"lfisht","⥽":"rfisht","⥾":"ufisht","⥿":"dfisht","⦚":"vzigzag","⦜":"vangrt","⦝":"angrtvbd","⦤":"ange","⦥":"range","⦦":"dwangle","⦧":"uwangle","⦨":"angmsdaa","⦩":"angmsdab","⦪":"angmsdac","⦫":"angmsdad","⦬":"angmsdae","⦭":"angmsdaf","⦮":"angmsdag","⦯":"angmsdah","⦰":"bemptyv","⦱":"demptyv","⦲":"cemptyv","⦳":"raemptyv","⦴":"laemptyv","⦵":"ohbar","⦶":"omid","⦷":"opar","⦹":"operp","⦻":"olcross","⦼":"odsold","⦾":"olcir","⦿":"ofcir","⧀":"olt","⧁":"ogt","⧂":"cirscir","⧃":"cirE","⧄":"solb","⧅":"bsolb","⧉":"boxbox","⧍":"trisb","⧎":"rtriltri","⧏":"LeftTriangleBar","⧏̸":"NotLeftTriangleBar","⧐":"RightTriangleBar","⧐̸":"NotRightTriangleBar","⧜":"iinfin","⧝":"infintie","⧞":"nvinfin","⧣":"eparsl","⧤":"smeparsl","⧥":"eqvparsl","⧫":"lozf","⧴":"RuleDelayed","⧶":"dsol","⨀":"xodot","⨁":"xoplus","⨂":"xotime","⨄":"xuplus","⨆":"xsqcup","⨍":"fpartint","⨐":"cirfnint","⨑":"awint","⨒":"rppolint","⨓":"scpolint","⨔":"npolint","⨕":"pointint","⨖":"quatint","⨗":"intlarhk","⨢":"pluscir","⨣":"plusacir","⨤":"simplus","⨥":"plusdu","⨦":"plussim","⨧":"plustwo","⨩":"mcomma","⨪":"minusdu","⨭":"loplus","⨮":"roplus","⨯":"Cross","⨰":"timesd","⨱":"timesbar","⨳":"smashp","⨴":"lotimes","⨵":"rotimes","⨶":"otimesas","⨷":"Otimes","⨸":"odiv","⨹":"triplus","⨺":"triminus","⨻":"tritime","⨼":"iprod","⨿":"amalg","⩀":"capdot","⩂":"ncup","⩃":"ncap","⩄":"capand","⩅":"cupor","⩆":"cupcap","⩇":"capcup","⩈":"cupbrcap","⩉":"capbrcup","⩊":"cupcup","⩋":"capcap","⩌":"ccups","⩍":"ccaps","⩐":"ccupssm","⩓":"And","⩔":"Or","⩕":"andand","⩖":"oror","⩗":"orslope","⩘":"andslope","⩚":"andv","⩛":"orv","⩜":"andd","⩝":"ord","⩟":"wedbar","⩦":"sdote","⩪":"simdot","⩭":"congdot","⩭̸":"ncongdot","⩮":"easter","⩯":"apacir","⩰":"apE","⩰̸":"napE","⩱":"eplus","⩲":"pluse","⩳":"Esim","⩷":"eDDot","⩸":"equivDD","⩹":"ltcir","⩺":"gtcir","⩻":"ltquest","⩼":"gtquest","⩽":"les","⩽̸":"nles","⩾":"ges","⩾̸":"nges","⩿":"lesdot","⪀":"gesdot","⪁":"lesdoto","⪂":"gesdoto","⪃":"lesdotor","⪄":"gesdotol","⪅":"lap","⪆":"gap","⪇":"lne","⪈":"gne","⪉":"lnap","⪊":"gnap","⪋":"lEg","⪌":"gEl","⪍":"lsime","⪎":"gsime","⪏":"lsimg","⪐":"gsiml","⪑":"lgE","⪒":"glE","⪓":"lesges","⪔":"gesles","⪕":"els","⪖":"egs","⪗":"elsdot","⪘":"egsdot","⪙":"el","⪚":"eg","⪝":"siml","⪞":"simg","⪟":"simlE","⪠":"simgE","⪡":"LessLess","⪡̸":"NotNestedLessLess","⪢":"GreaterGreater","⪢̸":"NotNestedGreaterGreater","⪤":"glj","⪥":"gla","⪦":"ltcc","⪧":"gtcc","⪨":"lescc","⪩":"gescc","⪪":"smt","⪫":"lat","⪬":"smte","⪬︀":"smtes","⪭":"late","⪭︀":"lates","⪮":"bumpE","⪯":"pre","⪯̸":"npre","⪰":"sce","⪰̸":"nsce","⪳":"prE","⪴":"scE","⪵":"prnE","⪶":"scnE","⪷":"prap","⪸":"scap","⪹":"prnap","⪺":"scnap","⪻":"Pr","⪼":"Sc","⪽":"subdot","⪾":"supdot","⪿":"subplus","⫀":"supplus","⫁":"submult","⫂":"supmult","⫃":"subedot","⫄":"supedot","⫅":"subE","⫅̸":"nsubE","⫆":"supE","⫆̸":"nsupE","⫇":"subsim","⫈":"supsim","⫋︀":"vsubnE","⫋":"subnE","⫌︀":"vsupnE","⫌":"supnE","⫏":"csub","⫐":"csup","⫑":"csube","⫒":"csupe","⫓":"subsup","⫔":"supsub","⫕":"subsub","⫖":"supsup","⫗":"suphsub","⫘":"supdsub","⫙":"forkv","⫚":"topfork","⫛":"mlcp","⫤":"Dashv","⫦":"Vdashl","⫧":"Barv","⫨":"vBar","⫩":"vBarv","⫫":"Vbar","⫬":"Not","⫭":"bNot","⫮":"rnmid","⫯":"cirmid","⫰":"midcir","⫱":"topcir","⫲":"nhpar","⫳":"parsim","⫽":"parsl","⫽⃥":"nparsl","♭":"flat","♮":"natur","♯":"sharp","¤":"curren","¢":"cent",$:"dollar","£":"pound","¥":"yen","€":"euro","¹":"sup1","½":"half","⅓":"frac13","¼":"frac14","⅕":"frac15","⅙":"frac16","⅛":"frac18","²":"sup2","⅔":"frac23","⅖":"frac25","³":"sup3","¾":"frac34","⅗":"frac35","⅜":"frac38","⅘":"frac45","⅚":"frac56","⅝":"frac58","⅞":"frac78","𝒶":"ascr","𝕒":"aopf","𝔞":"afr","𝔸":"Aopf","𝔄":"Afr","𝒜":"Ascr","ª":"ordf","á":"aacute","Á":"Aacute","à":"agrave","À":"Agrave","ă":"abreve","Ă":"Abreve","â":"acirc","Â":"Acirc","å":"aring","Å":"angst","ä":"auml","Ä":"Auml","ã":"atilde","Ã":"Atilde","ą":"aogon","Ą":"Aogon","ā":"amacr","Ā":"Amacr","æ":"aelig","Æ":"AElig","𝒷":"bscr","𝕓":"bopf","𝔟":"bfr","𝔹":"Bopf","ℬ":"Bscr","𝔅":"Bfr","𝔠":"cfr","𝒸":"cscr","𝕔":"copf","ℭ":"Cfr","𝒞":"Cscr","ℂ":"Copf","ć":"cacute","Ć":"Cacute","ĉ":"ccirc","Ĉ":"Ccirc","č":"ccaron","Č":"Ccaron","ċ":"cdot","Ċ":"Cdot","ç":"ccedil","Ç":"Ccedil","℅":"incare","𝔡":"dfr","ⅆ":"dd","𝕕":"dopf","𝒹":"dscr","𝒟":"Dscr","𝔇":"Dfr","ⅅ":"DD","𝔻":"Dopf","ď":"dcaron","Ď":"Dcaron","đ":"dstrok","Đ":"Dstrok","ð":"eth","Ð":"ETH","ⅇ":"ee","ℯ":"escr","𝔢":"efr","𝕖":"eopf","ℰ":"Escr","𝔈":"Efr","𝔼":"Eopf","é":"eacute","É":"Eacute","è":"egrave","È":"Egrave","ê":"ecirc","Ê":"Ecirc","ě":"ecaron","Ě":"Ecaron","ë":"euml","Ë":"Euml","ė":"edot","Ė":"Edot","ę":"eogon","Ę":"Eogon","ē":"emacr","Ē":"Emacr","𝔣":"ffr","𝕗":"fopf","𝒻":"fscr","𝔉":"Ffr","𝔽":"Fopf","ℱ":"Fscr","ff":"fflig","ffi":"ffilig","ffl":"ffllig","fi":"filig",fj:"fjlig","fl":"fllig","ƒ":"fnof","ℊ":"gscr","𝕘":"gopf","𝔤":"gfr","𝒢":"Gscr","𝔾":"Gopf","𝔊":"Gfr","ǵ":"gacute","ğ":"gbreve","Ğ":"Gbreve","ĝ":"gcirc","Ĝ":"Gcirc","ġ":"gdot","Ġ":"Gdot","Ģ":"Gcedil","𝔥":"hfr","ℎ":"planckh","𝒽":"hscr","𝕙":"hopf","ℋ":"Hscr","ℌ":"Hfr","ℍ":"Hopf","ĥ":"hcirc","Ĥ":"Hcirc","ℏ":"hbar","ħ":"hstrok","Ħ":"Hstrok","𝕚":"iopf","𝔦":"ifr","𝒾":"iscr","ⅈ":"ii","𝕀":"Iopf","ℐ":"Iscr","ℑ":"Im","í":"iacute","Í":"Iacute","ì":"igrave","Ì":"Igrave","î":"icirc","Î":"Icirc","ï":"iuml","Ï":"Iuml","ĩ":"itilde","Ĩ":"Itilde","İ":"Idot","į":"iogon","Į":"Iogon","ī":"imacr","Ī":"Imacr","ij":"ijlig","IJ":"IJlig","ı":"imath","𝒿":"jscr","𝕛":"jopf","𝔧":"jfr","𝒥":"Jscr","𝔍":"Jfr","𝕁":"Jopf","ĵ":"jcirc","Ĵ":"Jcirc","ȷ":"jmath","𝕜":"kopf","𝓀":"kscr","𝔨":"kfr","𝒦":"Kscr","𝕂":"Kopf","𝔎":"Kfr","ķ":"kcedil","Ķ":"Kcedil","𝔩":"lfr","𝓁":"lscr","ℓ":"ell","𝕝":"lopf","ℒ":"Lscr","𝔏":"Lfr","𝕃":"Lopf","ĺ":"lacute","Ĺ":"Lacute","ľ":"lcaron","Ľ":"Lcaron","ļ":"lcedil","Ļ":"Lcedil","ł":"lstrok","Ł":"Lstrok","ŀ":"lmidot","Ŀ":"Lmidot","𝔪":"mfr","𝕞":"mopf","𝓂":"mscr","𝔐":"Mfr","𝕄":"Mopf","ℳ":"Mscr","𝔫":"nfr","𝕟":"nopf","𝓃":"nscr","ℕ":"Nopf","𝒩":"Nscr","𝔑":"Nfr","ń":"nacute","Ń":"Nacute","ň":"ncaron","Ň":"Ncaron","ñ":"ntilde","Ñ":"Ntilde","ņ":"ncedil","Ņ":"Ncedil","№":"numero","ŋ":"eng","Ŋ":"ENG","𝕠":"oopf","𝔬":"ofr","ℴ":"oscr","𝒪":"Oscr","𝔒":"Ofr","𝕆":"Oopf","º":"ordm","ó":"oacute","Ó":"Oacute","ò":"ograve","Ò":"Ograve","ô":"ocirc","Ô":"Ocirc","ö":"ouml","Ö":"Ouml","ő":"odblac","Ő":"Odblac","õ":"otilde","Õ":"Otilde","ø":"oslash","Ø":"Oslash","ō":"omacr","Ō":"Omacr","œ":"oelig","Œ":"OElig","𝔭":"pfr","𝓅":"pscr","𝕡":"popf","ℙ":"Popf","𝔓":"Pfr","𝒫":"Pscr","𝕢":"qopf","𝔮":"qfr","𝓆":"qscr","𝒬":"Qscr","𝔔":"Qfr","ℚ":"Qopf","ĸ":"kgreen","𝔯":"rfr","𝕣":"ropf","𝓇":"rscr","ℛ":"Rscr","ℜ":"Re","ℝ":"Ropf","ŕ":"racute","Ŕ":"Racute","ř":"rcaron","Ř":"Rcaron","ŗ":"rcedil","Ŗ":"Rcedil","𝕤":"sopf","𝓈":"sscr","𝔰":"sfr","𝕊":"Sopf","𝔖":"Sfr","𝒮":"Sscr","Ⓢ":"oS","ś":"sacute","Ś":"Sacute","ŝ":"scirc","Ŝ":"Scirc","š":"scaron","Š":"Scaron","ş":"scedil","Ş":"Scedil","ß":"szlig","𝔱":"tfr","𝓉":"tscr","𝕥":"topf","𝒯":"Tscr","𝔗":"Tfr","𝕋":"Topf","ť":"tcaron","Ť":"Tcaron","ţ":"tcedil","Ţ":"Tcedil","™":"trade","ŧ":"tstrok","Ŧ":"Tstrok","𝓊":"uscr","𝕦":"uopf","𝔲":"ufr","𝕌":"Uopf","𝔘":"Ufr","𝒰":"Uscr","ú":"uacute","Ú":"Uacute","ù":"ugrave","Ù":"Ugrave","ŭ":"ubreve","Ŭ":"Ubreve","û":"ucirc","Û":"Ucirc","ů":"uring","Ů":"Uring","ü":"uuml","Ü":"Uuml","ű":"udblac","Ű":"Udblac","ũ":"utilde","Ũ":"Utilde","ų":"uogon","Ų":"Uogon","ū":"umacr","Ū":"Umacr","𝔳":"vfr","𝕧":"vopf","𝓋":"vscr","𝔙":"Vfr","𝕍":"Vopf","𝒱":"Vscr","𝕨":"wopf","𝓌":"wscr","𝔴":"wfr","𝒲":"Wscr","𝕎":"Wopf","𝔚":"Wfr","ŵ":"wcirc","Ŵ":"Wcirc","𝔵":"xfr","𝓍":"xscr","𝕩":"xopf","𝕏":"Xopf","𝔛":"Xfr","𝒳":"Xscr","𝔶":"yfr","𝓎":"yscr","𝕪":"yopf","𝒴":"Yscr","𝔜":"Yfr","𝕐":"Yopf","ý":"yacute","Ý":"Yacute","ŷ":"ycirc","Ŷ":"Ycirc","ÿ":"yuml","Ÿ":"Yuml","𝓏":"zscr","𝔷":"zfr","𝕫":"zopf","ℨ":"Zfr","ℤ":"Zopf","𝒵":"Zscr","ź":"zacute","Ź":"Zacute","ž":"zcaron","Ž":"Zcaron","ż":"zdot","Ż":"Zdot","Ƶ":"imped","þ":"thorn","Þ":"THORN","ʼn":"napos","α":"alpha","Α":"Alpha","β":"beta","Β":"Beta","γ":"gamma","Γ":"Gamma","δ":"delta","Δ":"Delta","ε":"epsi","ϵ":"epsiv","Ε":"Epsilon","ϝ":"gammad","Ϝ":"Gammad","ζ":"zeta","Ζ":"Zeta","η":"eta","Η":"Eta","θ":"theta","ϑ":"thetav","Θ":"Theta","ι":"iota","Ι":"Iota","κ":"kappa","ϰ":"kappav","Κ":"Kappa","λ":"lambda","Λ":"Lambda","μ":"mu","µ":"micro","Μ":"Mu","ν":"nu","Ν":"Nu","ξ":"xi","Ξ":"Xi","ο":"omicron","Ο":"Omicron","π":"pi","ϖ":"piv","Π":"Pi","ρ":"rho","ϱ":"rhov","Ρ":"Rho","σ":"sigma","Σ":"Sigma","ς":"sigmaf","τ":"tau","Τ":"Tau","υ":"upsi","Υ":"Upsilon","ϒ":"Upsi","φ":"phi","ϕ":"phiv","Φ":"Phi","χ":"chi","Χ":"Chi","ψ":"psi","Ψ":"Psi","ω":"omega","Ω":"ohm","а":"acy","А":"Acy","б":"bcy","Б":"Bcy","в":"vcy","В":"Vcy","г":"gcy","Г":"Gcy","ѓ":"gjcy","Ѓ":"GJcy","д":"dcy","Д":"Dcy","ђ":"djcy","Ђ":"DJcy","е":"iecy","Е":"IEcy","ё":"iocy","Ё":"IOcy","є":"jukcy","Є":"Jukcy","ж":"zhcy","Ж":"ZHcy","з":"zcy","З":"Zcy","ѕ":"dscy","Ѕ":"DScy","и":"icy","И":"Icy","і":"iukcy","І":"Iukcy","ї":"yicy","Ї":"YIcy","й":"jcy","Й":"Jcy","ј":"jsercy","Ј":"Jsercy","к":"kcy","К":"Kcy","ќ":"kjcy","Ќ":"KJcy","л":"lcy","Л":"Lcy","љ":"ljcy","Љ":"LJcy","м":"mcy","М":"Mcy","н":"ncy","Н":"Ncy","њ":"njcy","Њ":"NJcy","о":"ocy","О":"Ocy","п":"pcy","П":"Pcy","р":"rcy","Р":"Rcy","с":"scy","С":"Scy","т":"tcy","Т":"Tcy","ћ":"tshcy","Ћ":"TSHcy","у":"ucy","У":"Ucy","ў":"ubrcy","Ў":"Ubrcy","ф":"fcy","Ф":"Fcy","х":"khcy","Х":"KHcy","ц":"tscy","Ц":"TScy","ч":"chcy","Ч":"CHcy","џ":"dzcy","Џ":"DZcy","ш":"shcy","Ш":"SHcy","щ":"shchcy","Щ":"SHCHcy","ъ":"hardcy","Ъ":"HARDcy","ы":"ycy","Ы":"Ycy","ь":"softcy","Ь":"SOFTcy","э":"ecy","Э":"Ecy","ю":"yucy","Ю":"YUcy","я":"yacy","Я":"YAcy","ℵ":"aleph","ℶ":"beth","ℷ":"gimel","ℸ":"daleth"},h=/["&'<>`]/g,d={'"':""","&":"&","'":"'","<":"<",">":">","`":"`"},p=/&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/,g=/[\0-\x08\x0B\x0E-\x1F\x7F-\x9F\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,y=/&(CounterClockwiseContourIntegral|DoubleLongLeftRightArrow|ClockwiseContourIntegral|NotNestedGreaterGreater|NotSquareSupersetEqual|DiacriticalDoubleAcute|NotRightTriangleEqual|NotSucceedsSlantEqual|NotPrecedesSlantEqual|CloseCurlyDoubleQuote|NegativeVeryThinSpace|DoubleContourIntegral|FilledVerySmallSquare|CapitalDifferentialD|OpenCurlyDoubleQuote|EmptyVerySmallSquare|NestedGreaterGreater|DoubleLongRightArrow|NotLeftTriangleEqual|NotGreaterSlantEqual|ReverseUpEquilibrium|DoubleLeftRightArrow|NotSquareSubsetEqual|NotDoubleVerticalBar|RightArrowLeftArrow|NotGreaterFullEqual|NotRightTriangleBar|SquareSupersetEqual|DownLeftRightVector|DoubleLongLeftArrow|leftrightsquigarrow|LeftArrowRightArrow|NegativeMediumSpace|blacktriangleright|RightDownVectorBar|PrecedesSlantEqual|RightDoubleBracket|SucceedsSlantEqual|NotLeftTriangleBar|RightTriangleEqual|SquareIntersection|RightDownTeeVector|ReverseEquilibrium|NegativeThickSpace|longleftrightarrow|Longleftrightarrow|LongLeftRightArrow|DownRightTeeVector|DownRightVectorBar|GreaterSlantEqual|SquareSubsetEqual|LeftDownVectorBar|LeftDoubleBracket|VerticalSeparator|rightleftharpoons|NotGreaterGreater|NotSquareSuperset|blacktriangleleft|blacktriangledown|NegativeThinSpace|LeftDownTeeVector|NotLessSlantEqual|leftrightharpoons|DoubleUpDownArrow|DoubleVerticalBar|LeftTriangleEqual|FilledSmallSquare|twoheadrightarrow|NotNestedLessLess|DownLeftTeeVector|DownLeftVectorBar|RightAngleBracket|NotTildeFullEqual|NotReverseElement|RightUpDownVector|DiacriticalTilde|NotSucceedsTilde|circlearrowright|NotPrecedesEqual|rightharpoondown|DoubleRightArrow|NotSucceedsEqual|NonBreakingSpace|NotRightTriangle|LessEqualGreater|RightUpTeeVector|LeftAngleBracket|GreaterFullEqual|DownArrowUpArrow|RightUpVectorBar|twoheadleftarrow|GreaterEqualLess|downharpoonright|RightTriangleBar|ntrianglerighteq|NotSupersetEqual|LeftUpDownVector|DiacriticalAcute|rightrightarrows|vartriangleright|UpArrowDownArrow|DiacriticalGrave|UnderParenthesis|EmptySmallSquare|LeftUpVectorBar|leftrightarrows|DownRightVector|downharpoonleft|trianglerighteq|ShortRightArrow|OverParenthesis|DoubleLeftArrow|DoubleDownArrow|NotSquareSubset|bigtriangledown|ntrianglelefteq|UpperRightArrow|curvearrowright|vartriangleleft|NotLeftTriangle|nleftrightarrow|LowerRightArrow|NotHumpDownHump|NotGreaterTilde|rightthreetimes|LeftUpTeeVector|NotGreaterEqual|straightepsilon|LeftTriangleBar|rightsquigarrow|ContourIntegral|rightleftarrows|CloseCurlyQuote|RightDownVector|LeftRightVector|nLeftrightarrow|leftharpoondown|circlearrowleft|SquareSuperset|OpenCurlyQuote|hookrightarrow|HorizontalLine|DiacriticalDot|NotLessGreater|ntriangleright|DoubleRightTee|InvisibleComma|InvisibleTimes|LowerLeftArrow|DownLeftVector|NotSubsetEqual|curvearrowleft|trianglelefteq|NotVerticalBar|TildeFullEqual|downdownarrows|NotGreaterLess|RightTeeVector|ZeroWidthSpace|looparrowright|LongRightArrow|doublebarwedge|ShortLeftArrow|ShortDownArrow|RightVectorBar|GreaterGreater|ReverseElement|rightharpoonup|LessSlantEqual|leftthreetimes|upharpoonright|rightarrowtail|LeftDownVector|Longrightarrow|NestedLessLess|UpperLeftArrow|nshortparallel|leftleftarrows|leftrightarrow|Leftrightarrow|LeftRightArrow|longrightarrow|upharpoonleft|RightArrowBar|ApplyFunction|LeftTeeVector|leftarrowtail|NotEqualTilde|varsubsetneqq|varsupsetneqq|RightTeeArrow|SucceedsEqual|SucceedsTilde|LeftVectorBar|SupersetEqual|hookleftarrow|DifferentialD|VerticalTilde|VeryThinSpace|blacktriangle|bigtriangleup|LessFullEqual|divideontimes|leftharpoonup|UpEquilibrium|ntriangleleft|RightTriangle|measuredangle|shortparallel|longleftarrow|Longleftarrow|LongLeftArrow|DoubleLeftTee|Poincareplane|PrecedesEqual|triangleright|DoubleUpArrow|RightUpVector|fallingdotseq|looparrowleft|PrecedesTilde|NotTildeEqual|NotTildeTilde|smallsetminus|Proportional|triangleleft|triangledown|UnderBracket|NotHumpEqual|exponentiale|ExponentialE|NotLessTilde|HilbertSpace|RightCeiling|blacklozenge|varsupsetneq|HumpDownHump|GreaterEqual|VerticalLine|LeftTeeArrow|NotLessEqual|DownTeeArrow|LeftTriangle|varsubsetneq|Intersection|NotCongruent|DownArrowBar|LeftUpVector|LeftArrowBar|risingdotseq|GreaterTilde|RoundImplies|SquareSubset|ShortUpArrow|NotSuperset|quaternions|precnapprox|backepsilon|preccurlyeq|OverBracket|blacksquare|MediumSpace|VerticalBar|circledcirc|circleddash|CircleMinus|CircleTimes|LessGreater|curlyeqprec|curlyeqsucc|diamondsuit|UpDownArrow|Updownarrow|RuleDelayed|Rrightarrow|updownarrow|RightVector|nRightarrow|nrightarrow|eqslantless|LeftCeiling|Equilibrium|SmallCircle|expectation|NotSucceeds|thickapprox|GreaterLess|SquareUnion|NotPrecedes|NotLessLess|straightphi|succnapprox|succcurlyeq|SubsetEqual|sqsupseteq|Proportion|Laplacetrf|ImaginaryI|supsetneqq|NotGreater|gtreqqless|NotElement|ThickSpace|TildeEqual|TildeTilde|Fouriertrf|rmoustache|EqualTilde|eqslantgtr|UnderBrace|LeftVector|UpArrowBar|nLeftarrow|nsubseteqq|subsetneqq|nsupseteqq|nleftarrow|succapprox|lessapprox|UpTeeArrow|upuparrows|curlywedge|lesseqqgtr|varepsilon|varnothing|RightFloor|complement|CirclePlus|sqsubseteq|Lleftarrow|circledast|RightArrow|Rightarrow|rightarrow|lmoustache|Bernoullis|precapprox|mapstoleft|mapstodown|longmapsto|dotsquare|downarrow|DoubleDot|nsubseteq|supsetneq|leftarrow|nsupseteq|subsetneq|ThinSpace|ngeqslant|subseteqq|HumpEqual|NotSubset|triangleq|NotCupCap|lesseqgtr|heartsuit|TripleDot|Leftarrow|Coproduct|Congruent|varpropto|complexes|gvertneqq|LeftArrow|LessTilde|supseteqq|MinusPlus|CircleDot|nleqslant|NotExists|gtreqless|nparallel|UnionPlus|LeftFloor|checkmark|CenterDot|centerdot|Mellintrf|gtrapprox|bigotimes|OverBrace|spadesuit|therefore|pitchfork|rationals|PlusMinus|Backslash|Therefore|DownBreve|backsimeq|backprime|DownArrow|nshortmid|Downarrow|lvertneqq|eqvparsl|imagline|imagpart|infintie|integers|Integral|intercal|LessLess|Uarrocir|intlarhk|sqsupset|angmsdaf|sqsubset|llcorner|vartheta|cupbrcap|lnapprox|Superset|SuchThat|succnsim|succneqq|angmsdag|biguplus|curlyvee|trpezium|Succeeds|NotTilde|bigwedge|angmsdah|angrtvbd|triminus|cwconint|fpartint|lrcorner|smeparsl|subseteq|urcorner|lurdshar|laemptyv|DDotrahd|approxeq|ldrushar|awconint|mapstoup|backcong|shortmid|triangle|geqslant|gesdotol|timesbar|circledR|circledS|setminus|multimap|naturals|scpolint|ncongdot|RightTee|boxminus|gnapprox|boxtimes|andslope|thicksim|angmsdaa|varsigma|cirfnint|rtriltri|angmsdab|rppolint|angmsdac|barwedge|drbkarow|clubsuit|thetasym|bsolhsub|capbrcup|dzigrarr|doteqdot|DotEqual|dotminus|UnderBar|NotEqual|realpart|otimesas|ulcorner|hksearow|hkswarow|parallel|PartialD|elinters|emptyset|plusacir|bbrktbrk|angmsdad|pointint|bigoplus|angmsdae|Precedes|bigsqcup|varkappa|notindot|supseteq|precneqq|precnsim|profalar|profline|profsurf|leqslant|lesdotor|raemptyv|subplus|notnivb|notnivc|subrarr|zigrarr|vzigzag|submult|subedot|Element|between|cirscir|larrbfs|larrsim|lotimes|lbrksld|lbrkslu|lozenge|ldrdhar|dbkarow|bigcirc|epsilon|simrarr|simplus|ltquest|Epsilon|luruhar|gtquest|maltese|npolint|eqcolon|npreceq|bigodot|ddagger|gtrless|bnequiv|harrcir|ddotseq|equivDD|backsim|demptyv|nsqsube|nsqsupe|Upsilon|nsubset|upsilon|minusdu|nsucceq|swarrow|nsupset|coloneq|searrow|boxplus|napprox|natural|asympeq|alefsym|congdot|nearrow|bigstar|diamond|supplus|tritime|LeftTee|nvinfin|triplus|NewLine|nvltrie|nvrtrie|nwarrow|nexists|Diamond|ruluhar|Implies|supmult|angzarr|suplarr|suphsub|questeq|because|digamma|Because|olcross|bemptyv|omicron|Omicron|rotimes|NoBreak|intprod|angrtvb|orderof|uwangle|suphsol|lesdoto|orslope|DownTee|realine|cudarrl|rdldhar|OverBar|supedot|lessdot|supdsub|topfork|succsim|rbrkslu|rbrksld|pertenk|cudarrr|isindot|planckh|lessgtr|pluscir|gesdoto|plussim|plustwo|lesssim|cularrp|rarrsim|Cayleys|notinva|notinvb|notinvc|UpArrow|Uparrow|uparrow|NotLess|dwangle|precsim|Product|curarrm|Cconint|dotplus|rarrbfs|ccupssm|Cedilla|cemptyv|notniva|quatint|frac35|frac38|frac45|frac56|frac58|frac78|tridot|xoplus|gacute|gammad|Gammad|lfisht|lfloor|bigcup|sqsupe|gbreve|Gbreve|lharul|sqsube|sqcups|Gcedil|apacir|llhard|lmidot|Lmidot|lmoust|andand|sqcaps|approx|Abreve|spades|circeq|tprime|divide|topcir|Assign|topbot|gesdot|divonx|xuplus|timesd|gesles|atilde|solbar|SOFTcy|loplus|timesb|lowast|lowbar|dlcorn|dlcrop|softcy|dollar|lparlt|thksim|lrhard|Atilde|lsaquo|smashp|bigvee|thinsp|wreath|bkarow|lsquor|lstrok|Lstrok|lthree|ltimes|ltlarr|DotDot|simdot|ltrPar|weierp|xsqcup|angmsd|sigmav|sigmaf|zeetrf|Zcaron|zcaron|mapsto|vsupne|thetav|cirmid|marker|mcomma|Zacute|vsubnE|there4|gtlPar|vsubne|bottom|gtrarr|SHCHcy|shchcy|midast|midcir|middot|minusb|minusd|gtrdot|bowtie|sfrown|mnplus|models|colone|seswar|Colone|mstpos|searhk|gtrsim|nacute|Nacute|boxbox|telrec|hairsp|Tcedil|nbumpe|scnsim|ncaron|Ncaron|ncedil|Ncedil|hamilt|Scedil|nearhk|hardcy|HARDcy|tcedil|Tcaron|commat|nequiv|nesear|tcaron|target|hearts|nexist|varrho|scedil|Scaron|scaron|hellip|Sacute|sacute|hercon|swnwar|compfn|rtimes|rthree|rsquor|rsaquo|zacute|wedgeq|homtht|barvee|barwed|Barwed|rpargt|horbar|conint|swarhk|roplus|nltrie|hslash|hstrok|Hstrok|rmoust|Conint|bprime|hybull|hyphen|iacute|Iacute|supsup|supsub|supsim|varphi|coprod|brvbar|agrave|Supset|supset|igrave|Igrave|notinE|Agrave|iiiint|iinfin|copysr|wedbar|Verbar|vangrt|becaus|incare|verbar|inodot|bullet|drcorn|intcal|drcrop|cularr|vellip|Utilde|bumpeq|cupcap|dstrok|Dstrok|CupCap|cupcup|cupdot|eacute|Eacute|supdot|iquest|easter|ecaron|Ecaron|ecolon|isinsv|utilde|itilde|Itilde|curarr|succeq|Bumpeq|cacute|ulcrop|nparsl|Cacute|nprcue|egrave|Egrave|nrarrc|nrarrw|subsup|subsub|nrtrie|jsercy|nsccue|Jsercy|kappav|kcedil|Kcedil|subsim|ulcorn|nsimeq|egsdot|veebar|kgreen|capand|elsdot|Subset|subset|curren|aacute|lacute|Lacute|emptyv|ntilde|Ntilde|lagran|lambda|Lambda|capcap|Ugrave|langle|subdot|emsp13|numero|emsp14|nvdash|nvDash|nVdash|nVDash|ugrave|ufisht|nvHarr|larrfs|nvlArr|larrhk|larrlp|larrpl|nvrArr|Udblac|nwarhk|larrtl|nwnear|oacute|Oacute|latail|lAtail|sstarf|lbrace|odblac|Odblac|lbrack|udblac|odsold|eparsl|lcaron|Lcaron|ograve|Ograve|lcedil|Lcedil|Aacute|ssmile|ssetmn|squarf|ldquor|capcup|ominus|cylcty|rharul|eqcirc|dagger|rfloor|rfisht|Dagger|daleth|equals|origof|capdot|equest|dcaron|Dcaron|rdquor|oslash|Oslash|otilde|Otilde|otimes|Otimes|urcrop|Ubreve|ubreve|Yacute|Uacute|uacute|Rcedil|rcedil|urcorn|parsim|Rcaron|Vdashl|rcaron|Tstrok|percnt|period|permil|Exists|yacute|rbrack|rbrace|phmmat|ccaron|Ccaron|planck|ccedil|plankv|tstrok|female|plusdo|plusdu|ffilig|plusmn|ffllig|Ccedil|rAtail|dfisht|bernou|ratail|Rarrtl|rarrtl|angsph|rarrpl|rarrlp|rarrhk|xwedge|xotime|forall|ForAll|Vvdash|vsupnE|preceq|bigcap|frac12|frac13|frac14|primes|rarrfs|prnsim|frac15|Square|frac16|square|lesdot|frac18|frac23|propto|prurel|rarrap|rangle|puncsp|frac25|Racute|qprime|racute|lesges|frac34|abreve|AElig|eqsim|utdot|setmn|urtri|Equal|Uring|seArr|uring|searr|dashv|Dashv|mumap|nabla|iogon|Iogon|sdote|sdotb|scsim|napid|napos|equiv|natur|Acirc|dblac|erarr|nbump|iprod|erDot|ucirc|awint|esdot|angrt|ncong|isinE|scnap|Scirc|scirc|ndash|isins|Ubrcy|nearr|neArr|isinv|nedot|ubrcy|acute|Ycirc|iukcy|Iukcy|xutri|nesim|caret|jcirc|Jcirc|caron|twixt|ddarr|sccue|exist|jmath|sbquo|ngeqq|angst|ccaps|lceil|ngsim|UpTee|delta|Delta|rtrif|nharr|nhArr|nhpar|rtrie|jukcy|Jukcy|kappa|rsquo|Kappa|nlarr|nlArr|TSHcy|rrarr|aogon|Aogon|fflig|xrarr|tshcy|ccirc|nleqq|filig|upsih|nless|dharl|nlsim|fjlig|ropar|nltri|dharr|robrk|roarr|fllig|fltns|roang|rnmid|subnE|subne|lAarr|trisb|Ccirc|acirc|ccups|blank|VDash|forkv|Vdash|langd|cedil|blk12|blk14|laquo|strns|diams|notin|vDash|larrb|blk34|block|disin|uplus|vdash|vBarv|aelig|starf|Wedge|check|xrArr|lates|lbarr|lBarr|notni|lbbrk|bcong|frasl|lbrke|frown|vrtri|vprop|vnsup|gamma|Gamma|wedge|xodot|bdquo|srarr|doteq|ldquo|boxdl|boxdL|gcirc|Gcirc|boxDl|boxDL|boxdr|boxdR|boxDr|TRADE|trade|rlhar|boxDR|vnsub|npart|vltri|rlarr|boxhd|boxhD|nprec|gescc|nrarr|nrArr|boxHd|boxHD|boxhu|boxhU|nrtri|boxHu|clubs|boxHU|times|colon|Colon|gimel|xlArr|Tilde|nsime|tilde|nsmid|nspar|THORN|thorn|xlarr|nsube|nsubE|thkap|xhArr|comma|nsucc|boxul|boxuL|nsupe|nsupE|gneqq|gnsim|boxUl|boxUL|grave|boxur|boxuR|boxUr|boxUR|lescc|angle|bepsi|boxvh|varpi|boxvH|numsp|Theta|gsime|gsiml|theta|boxVh|boxVH|boxvl|gtcir|gtdot|boxvL|boxVl|boxVL|crarr|cross|Cross|nvsim|boxvr|nwarr|nwArr|sqsup|dtdot|Uogon|lhard|lharu|dtrif|ocirc|Ocirc|lhblk|duarr|odash|sqsub|Hacek|sqcup|llarr|duhar|oelig|OElig|ofcir|boxvR|uogon|lltri|boxVr|csube|uuarr|ohbar|csupe|ctdot|olarr|olcir|harrw|oline|sqcap|omacr|Omacr|omega|Omega|boxVR|aleph|lneqq|lnsim|loang|loarr|rharu|lobrk|hcirc|operp|oplus|rhard|Hcirc|orarr|Union|order|ecirc|Ecirc|cuepr|szlig|cuesc|breve|reals|eDDot|Breve|hoarr|lopar|utrif|rdquo|Umacr|umacr|efDot|swArr|ultri|alpha|rceil|ovbar|swarr|Wcirc|wcirc|smtes|smile|bsemi|lrarr|aring|parsl|lrhar|bsime|uhblk|lrtri|cupor|Aring|uharr|uharl|slarr|rbrke|bsolb|lsime|rbbrk|RBarr|lsimg|phone|rBarr|rbarr|icirc|lsquo|Icirc|emacr|Emacr|ratio|simne|plusb|simlE|simgE|simeq|pluse|ltcir|ltdot|empty|xharr|xdtri|iexcl|Alpha|ltrie|rarrw|pound|ltrif|xcirc|bumpe|prcue|bumpE|asymp|amacr|cuvee|Sigma|sigma|iiint|udhar|iiota|ijlig|IJlig|supnE|imacr|Imacr|prime|Prime|image|prnap|eogon|Eogon|rarrc|mdash|mDDot|cuwed|imath|supne|imped|Amacr|udarr|prsim|micro|rarrb|cwint|raquo|infin|eplus|range|rangd|Ucirc|radic|minus|amalg|veeeq|rAarr|epsiv|ycirc|quest|sharp|quot|zwnj|Qscr|race|qscr|Qopf|qopf|qint|rang|Rang|Zscr|zscr|Zopf|zopf|rarr|rArr|Rarr|Pscr|pscr|prop|prod|prnE|prec|ZHcy|zhcy|prap|Zeta|zeta|Popf|popf|Zdot|plus|zdot|Yuml|yuml|phiv|YUcy|yucy|Yscr|yscr|perp|Yopf|yopf|part|para|YIcy|Ouml|rcub|yicy|YAcy|rdca|ouml|osol|Oscr|rdsh|yacy|real|oscr|xvee|andd|rect|andv|Xscr|oror|ordm|ordf|xscr|ange|aopf|Aopf|rHar|Xopf|opar|Oopf|xopf|xnis|rhov|oopf|omid|xmap|oint|apid|apos|ogon|ascr|Ascr|odot|odiv|xcup|xcap|ocir|oast|nvlt|nvle|nvgt|nvge|nvap|Wscr|wscr|auml|ntlg|ntgl|nsup|nsub|nsim|Nscr|nscr|nsce|Wopf|ring|npre|wopf|npar|Auml|Barv|bbrk|Nopf|nopf|nmid|nLtv|beta|ropf|Ropf|Beta|beth|nles|rpar|nleq|bnot|bNot|nldr|NJcy|rscr|Rscr|Vscr|vscr|rsqb|njcy|bopf|nisd|Bopf|rtri|Vopf|nGtv|ngtr|vopf|boxh|boxH|boxv|nges|ngeq|boxV|bscr|scap|Bscr|bsim|Vert|vert|bsol|bull|bump|caps|cdot|ncup|scnE|ncap|nbsp|napE|Cdot|cent|sdot|Vbar|nang|vBar|chcy|Mscr|mscr|sect|semi|CHcy|Mopf|mopf|sext|circ|cire|mldr|mlcp|cirE|comp|shcy|SHcy|vArr|varr|cong|copf|Copf|copy|COPY|malt|male|macr|lvnE|cscr|ltri|sime|ltcc|simg|Cscr|siml|csub|Uuml|lsqb|lsim|uuml|csup|Lscr|lscr|utri|smid|lpar|cups|smte|lozf|darr|Lopf|Uscr|solb|lopf|sopf|Sopf|lneq|uscr|spar|dArr|lnap|Darr|dash|Sqrt|LJcy|ljcy|lHar|dHar|Upsi|upsi|diam|lesg|djcy|DJcy|leqq|dopf|Dopf|dscr|Dscr|dscy|ldsh|ldca|squf|DScy|sscr|Sscr|dsol|lcub|late|star|Star|Uopf|Larr|lArr|larr|uopf|dtri|dzcy|sube|subE|Lang|lang|Kscr|kscr|Kopf|kopf|KJcy|kjcy|KHcy|khcy|DZcy|ecir|edot|eDot|Jscr|jscr|succ|Jopf|jopf|Edot|uHar|emsp|ensp|Iuml|iuml|eopf|isin|Iscr|iscr|Eopf|epar|sung|epsi|escr|sup1|sup2|sup3|Iota|iota|supe|supE|Iopf|iopf|IOcy|iocy|Escr|esim|Esim|imof|Uarr|QUOT|uArr|uarr|euml|IEcy|iecy|Idot|Euml|euro|excl|Hscr|hscr|Hopf|hopf|TScy|tscy|Tscr|hbar|tscr|flat|tbrk|fnof|hArr|harr|half|fopf|Fopf|tdot|gvnE|fork|trie|gtcc|fscr|Fscr|gdot|gsim|Gscr|gscr|Gopf|gopf|gneq|Gdot|tosa|gnap|Topf|topf|geqq|toea|GJcy|gjcy|tint|gesl|mid|Sfr|ggg|top|ges|gla|glE|glj|geq|gne|gEl|gel|gnE|Gcy|gcy|gap|Tfr|tfr|Tcy|tcy|Hat|Tau|Ffr|tau|Tab|hfr|Hfr|ffr|Fcy|fcy|icy|Icy|iff|ETH|eth|ifr|Ifr|Eta|eta|int|Int|Sup|sup|ucy|Ucy|Sum|sum|jcy|ENG|ufr|Ufr|eng|Jcy|jfr|els|ell|egs|Efr|efr|Jfr|uml|kcy|Kcy|Ecy|ecy|kfr|Kfr|lap|Sub|sub|lat|lcy|Lcy|leg|Dot|dot|lEg|leq|les|squ|div|die|lfr|Lfr|lgE|Dfr|dfr|Del|deg|Dcy|dcy|lne|lnE|sol|loz|smt|Cup|lrm|cup|lsh|Lsh|sim|shy|map|Map|mcy|Mcy|mfr|Mfr|mho|gfr|Gfr|sfr|cir|Chi|chi|nap|Cfr|vcy|Vcy|cfr|Scy|scy|ncy|Ncy|vee|Vee|Cap|cap|nfr|scE|sce|Nfr|nge|ngE|nGg|vfr|Vfr|ngt|bot|nGt|nis|niv|Rsh|rsh|nle|nlE|bne|Bfr|bfr|nLl|nlt|nLt|Bcy|bcy|not|Not|rlm|wfr|Wfr|npr|nsc|num|ocy|ast|Ocy|ofr|xfr|Xfr|Ofr|ogt|ohm|apE|olt|Rho|ape|rho|Rfr|rfr|ord|REG|ang|reg|orv|And|and|AMP|Rcy|amp|Afr|ycy|Ycy|yen|yfr|Yfr|rcy|par|pcy|Pcy|pfr|Pfr|phi|Phi|afr|Acy|acy|zcy|Zcy|piv|acE|acd|zfr|Zfr|pre|prE|psi|Psi|qfr|Qfr|zwj|Or|ge|Gg|gt|gg|el|oS|lt|Lt|LT|Re|lg|gl|eg|ne|Im|it|le|DD|wp|wr|nu|Nu|dd|lE|Sc|sc|pi|Pi|ee|af|ll|Ll|rx|gE|xi|pm|Xi|ic|pr|Pr|in|ni|mp|mu|ac|Mu|or|ap|Gt|GT|ii);|&(Aacute|Agrave|Atilde|Ccedil|Eacute|Egrave|Iacute|Igrave|Ntilde|Oacute|Ograve|Oslash|Otilde|Uacute|Ugrave|Yacute|aacute|agrave|atilde|brvbar|ccedil|curren|divide|eacute|egrave|frac12|frac14|frac34|iacute|igrave|iquest|middot|ntilde|oacute|ograve|oslash|otilde|plusmn|uacute|ugrave|yacute|AElig|Acirc|Aring|Ecirc|Icirc|Ocirc|THORN|Ucirc|acirc|acute|aelig|aring|cedil|ecirc|icirc|iexcl|laquo|micro|ocirc|pound|raquo|szlig|thorn|times|ucirc|Auml|COPY|Euml|Iuml|Ouml|QUOT|Uuml|auml|cent|copy|euml|iuml|macr|nbsp|ordf|ordm|ouml|para|quot|sect|sup1|sup2|sup3|uuml|yuml|AMP|ETH|REG|amp|deg|eth|not|reg|shy|uml|yen|GT|LT|gt|lt)(?!;)([=a-zA-Z0-9]?)|&#([0-9]+)(;?)|&#[xX]([a-fA-F0-9]+)(;?)|&([0-9a-zA-Z]+)/g,b={aacute:"á",Aacute:"Á",abreve:"ă",Abreve:"Ă",ac:"∾",acd:"∿",acE:"∾̳",acirc:"â",Acirc:"Â",acute:"´",acy:"а",Acy:"А",aelig:"æ",AElig:"Æ",af:"⁡",afr:"𝔞",Afr:"𝔄",agrave:"à",Agrave:"À",alefsym:"ℵ",aleph:"ℵ",alpha:"α",Alpha:"Α",amacr:"ā",Amacr:"Ā",amalg:"⨿",amp:"&",AMP:"&",and:"∧",And:"⩓",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",aogon:"ą",Aogon:"Ą",aopf:"𝕒",Aopf:"𝔸",ap:"≈",apacir:"⩯",ape:"≊",apE:"⩰",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",aring:"å",Aring:"Å",ascr:"𝒶",Ascr:"𝒜",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",atilde:"ã",Atilde:"Ã",auml:"ä",Auml:"Ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",bcy:"б",Bcy:"Б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",beta:"β",Beta:"Β",beth:"ℶ",between:"≬",bfr:"𝔟",Bfr:"𝔅",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bNot:"⫭",bopf:"𝕓",Bopf:"𝔹",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxhD:"╥",boxHd:"╤",boxHD:"╦",boxhu:"┴",boxhU:"╨",boxHu:"╧",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpe:"≏",bumpE:"⪮",bumpeq:"≏",Bumpeq:"≎",cacute:"ć",Cacute:"Ć",cap:"∩",Cap:"⋒",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",ccaron:"č",Ccaron:"Č",ccedil:"ç",Ccedil:"Ç",ccirc:"ĉ",Ccirc:"Ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",Cdot:"Ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",chcy:"ч",CHcy:"Ч",check:"✓",checkmark:"✓",chi:"χ",Chi:"Χ",cir:"○",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cire:"≗",cirE:"⧃",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",colone:"≔",Colone:"⩴",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",cscr:"𝒸",Cscr:"𝒞",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cup:"∪",Cup:"⋓",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",dArr:"⇓",Darr:"↡",dash:"‐",dashv:"⊣",Dashv:"⫤",dbkarow:"⤏",dblac:"˝",dcaron:"ď",Dcaron:"Ď",dcy:"д",Dcy:"Д",dd:"ⅆ",DD:"ⅅ",ddagger:"‡",ddarr:"⇊",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",delta:"δ",Delta:"Δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",Dfr:"𝔇",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",DJcy:"Ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",Dopf:"𝔻",dot:"˙",Dot:"¨",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",downarrow:"↓",Downarrow:"⇓",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",dscr:"𝒹",Dscr:"𝒟",dscy:"ѕ",DScy:"Ѕ",dsol:"⧶",dstrok:"đ",Dstrok:"Đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",dzcy:"џ",DZcy:"Џ",dzigrarr:"⟿",eacute:"é",Eacute:"É",easter:"⩮",ecaron:"ě",Ecaron:"Ě",ecir:"≖",ecirc:"ê",Ecirc:"Ê",ecolon:"≕",ecy:"э",Ecy:"Э",eDDot:"⩷",edot:"ė",eDot:"≑",Edot:"Ė",ee:"ⅇ",efDot:"≒",efr:"𝔢",Efr:"𝔈",eg:"⪚",egrave:"è",Egrave:"È",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",emacr:"ē",Emacr:"Ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp:" ",emsp13:" ",emsp14:" ",eng:"ŋ",ENG:"Ŋ",ensp:" ",eogon:"ę",Eogon:"Ę",eopf:"𝕖",Eopf:"𝔼",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",Epsilon:"Ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",esim:"≂",Esim:"⩳",eta:"η",Eta:"Η",eth:"ð",ETH:"Ð",euml:"ë",Euml:"Ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",fcy:"ф",Fcy:"Ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",Ffr:"𝔉",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",Fopf:"𝔽",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",gamma:"γ",Gamma:"Γ",gammad:"ϝ",Gammad:"Ϝ",gap:"⪆",gbreve:"ğ",Gbreve:"Ğ",Gcedil:"Ģ",gcirc:"ĝ",Gcirc:"Ĝ",gcy:"г",Gcy:"Г",gdot:"ġ",Gdot:"Ġ",ge:"≥",gE:"≧",gel:"⋛",gEl:"⪌",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",Gfr:"𝔊",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",gjcy:"ѓ",GJcy:"Ѓ",gl:"≷",gla:"⪥",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",gopf:"𝕘",Gopf:"𝔾",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",gscr:"ℊ",Gscr:"𝒢",gsim:"≳",gsime:"⪎",gsiml:"⪐",gt:">",Gt:"≫",GT:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",hardcy:"ъ",HARDcy:"Ъ",harr:"↔",hArr:"⇔",harrcir:"⥈",harrw:"↭",Hat:"^",hbar:"ℏ",hcirc:"ĥ",Hcirc:"Ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",hstrok:"ħ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",iacute:"í",Iacute:"Í",ic:"⁣",icirc:"î",Icirc:"Î",icy:"и",Icy:"И",Idot:"İ",iecy:"е",IEcy:"Е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",igrave:"ì",Igrave:"Ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",IJlig:"IJ",Im:"ℑ",imacr:"ī",Imacr:"Ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",Implies:"⇒",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",int:"∫",Int:"∬",intcal:"⊺",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",iocy:"ё",IOcy:"Ё",iogon:"į",Iogon:"Į",iopf:"𝕚",Iopf:"𝕀",iota:"ι",Iota:"Ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",itilde:"ĩ",Itilde:"Ĩ",iukcy:"і",Iukcy:"І",iuml:"ï",Iuml:"Ï",jcirc:"ĵ",Jcirc:"Ĵ",jcy:"й",Jcy:"Й",jfr:"𝔧",Jfr:"𝔍",jmath:"ȷ",jopf:"𝕛",Jopf:"𝕁",jscr:"𝒿",Jscr:"𝒥",jsercy:"ј",Jsercy:"Ј",jukcy:"є",Jukcy:"Є",kappa:"κ",Kappa:"Κ",kappav:"ϰ",kcedil:"ķ",Kcedil:"Ķ",kcy:"к",Kcy:"К",kfr:"𝔨",Kfr:"𝔎",kgreen:"ĸ",khcy:"х",KHcy:"Х",kjcy:"ќ",KJcy:"Ќ",kopf:"𝕜",Kopf:"𝕂",kscr:"𝓀",Kscr:"𝒦",lAarr:"⇚",lacute:"ĺ",Lacute:"Ĺ",laemptyv:"⦴",lagran:"ℒ",lambda:"λ",Lambda:"Λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larr:"←",lArr:"⇐",Larr:"↞",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",latail:"⤙",lAtail:"⤛",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",Lcaron:"Ľ",lcedil:"ļ",Lcedil:"Ļ",lceil:"⌈",lcub:"{",lcy:"л",Lcy:"Л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",leftarrow:"←",Leftarrow:"⇐",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",Leftrightarrow:"⇔",LeftRightArrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",leg:"⋚",lEg:"⪋",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",lfr:"𝔩",Lfr:"𝔏",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",ljcy:"љ",LJcy:"Љ",ll:"≪",Ll:"⋘",llarr:"⇇",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",lmidot:"ŀ",Lmidot:"Ŀ",lmoust:"⎰",lmoustache:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",Longleftarrow:"⟸",LongLeftArrow:"⟵",longleftrightarrow:"⟷",Longleftrightarrow:"⟺",LongLeftRightArrow:"⟷",longmapsto:"⟼",longrightarrow:"⟶",Longrightarrow:"⟹",LongRightArrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",lopf:"𝕝",Lopf:"𝕃",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",lstrok:"ł",Lstrok:"Ł",lt:"<",Lt:"≪",LT:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",map:"↦",Map:"⤅",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",mcy:"м",Mcy:"М",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",mfr:"𝔪",Mfr:"𝔐",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",mopf:"𝕞",Mopf:"𝕄",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",mu:"μ",Mu:"Μ",multimap:"⊸",mumap:"⊸",nabla:"∇",nacute:"ń",Nacute:"Ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",ncaron:"ň",Ncaron:"Ň",ncedil:"ņ",Ncedil:"Ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",Ncy:"Н",ndash:"–",ne:"≠",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",nfr:"𝔫",Nfr:"𝔑",nge:"≱",ngE:"≧̸",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",ngt:"≯",nGt:"≫⃒",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",njcy:"њ",NJcy:"Њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nle:"≰",nlE:"≦̸",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nlt:"≮",nLt:"≪⃒",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",not:"¬",Not:"⫬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrarr:"↛",nrArr:"⇏",nrarrc:"⤳̸",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",nscr:"𝓃",Nscr:"𝒩",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsube:"⊈",nsubE:"⫅̸",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupe:"⊉",nsupE:"⫆̸",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",ntilde:"ñ",Ntilde:"Ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",nu:"ν",Nu:"Ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",oacute:"ó",Oacute:"Ó",oast:"⊛",ocir:"⊚",ocirc:"ô",Ocirc:"Ô",ocy:"о",Ocy:"О",odash:"⊝",odblac:"ő",Odblac:"Ő",odiv:"⨸",odot:"⊙",odsold:"⦼",oelig:"œ",OElig:"Œ",ofcir:"⦿",ofr:"𝔬",Ofr:"𝔒",ogon:"˛",ograve:"ò",Ograve:"Ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",omacr:"ō",Omacr:"Ō",omega:"ω",Omega:"Ω",omicron:"ο",Omicron:"Ο",omid:"⦶",ominus:"⊖",oopf:"𝕠",Oopf:"𝕆",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",or:"∨",Or:"⩔",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",oscr:"ℴ",Oscr:"𝒪",oslash:"ø",Oslash:"Ø",osol:"⊘",otilde:"õ",Otilde:"Õ",otimes:"⊗",Otimes:"⨷",otimesas:"⨶",ouml:"ö",Ouml:"Ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",pcy:"п",Pcy:"П",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",pfr:"𝔭",Pfr:"𝔓",phi:"φ",Phi:"Φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",pi:"π",Pi:"Π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",pr:"≺",Pr:"⪻",prap:"⪷",prcue:"≼",pre:"⪯",prE:"⪳",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportion:"∷",Proportional:"∝",propto:"∝",prsim:"≾",prurel:"⊰",pscr:"𝓅",Pscr:"𝒫",psi:"ψ",Psi:"Ψ",puncsp:" ",qfr:"𝔮",Qfr:"𝔔",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",qscr:"𝓆",Qscr:"𝒬",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",racute:"ŕ",Racute:"Ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarr:"→",rArr:"⇒",Rarr:"↠",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",Rarrtl:"⤖",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",Rcaron:"Ř",rcedil:"ŗ",Rcedil:"Ŗ",rceil:"⌉",rcub:"}",rcy:"р",Rcy:"Р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",Re:"ℜ",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",rho:"ρ",Rho:"Ρ",rhov:"ϱ",RightAngleBracket:"⟩",rightarrow:"→",Rightarrow:"⇒",RightArrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",sacute:"ś",Sacute:"Ś",sbquo:"‚",sc:"≻",Sc:"⪼",scap:"⪸",scaron:"š",Scaron:"Š",sccue:"≽",sce:"⪰",scE:"⪴",scedil:"ş",Scedil:"Ş",scirc:"ŝ",Scirc:"Ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",scy:"с",Scy:"С",sdot:"⋅",sdotb:"⊡",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",sfr:"𝔰",Sfr:"𝔖",sfrown:"⌢",sharp:"♯",shchcy:"щ",SHCHcy:"Щ",shcy:"ш",SHcy:"Ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",sigma:"σ",Sigma:"Σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",SOFTcy:"Ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",Sopf:"𝕊",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squf:"▪",srarr:"→",sscr:"𝓈",Sscr:"𝒮",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",star:"☆",Star:"⋆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",sube:"⊆",subE:"⫅",subedot:"⫃",submult:"⫁",subne:"⊊",subnE:"⫋",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup:"⊃",Sup:"⋑",sup1:"¹",sup2:"²",sup3:"³",supdot:"⪾",supdsub:"⫘",supe:"⊇",supE:"⫆",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supne:"⊋",supnE:"⫌",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:"\t",target:"⌖",tau:"τ",Tau:"Τ",tbrk:"⎴",tcaron:"ť",Tcaron:"Ť",tcedil:"ţ",Tcedil:"Ţ",tcy:"т",Tcy:"Т",tdot:"⃛",telrec:"⌕",tfr:"𝔱",Tfr:"𝔗",there4:"∴",therefore:"∴",Therefore:"∴",theta:"θ",Theta:"Θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",thinsp:" ",ThinSpace:" ",thkap:"≈",thksim:"∼",thorn:"þ",THORN:"Þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",topf:"𝕥",Topf:"𝕋",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",Tscr:"𝒯",tscy:"ц",TScy:"Ц",tshcy:"ћ",TSHcy:"Ћ",tstrok:"ŧ",Tstrok:"Ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",uacute:"ú",Uacute:"Ú",uarr:"↑",uArr:"⇑",Uarr:"↟",Uarrocir:"⥉",ubrcy:"ў",Ubrcy:"Ў",ubreve:"ŭ",Ubreve:"Ŭ",ucirc:"û",Ucirc:"Û",ucy:"у",Ucy:"У",udarr:"⇅",udblac:"ű",Udblac:"Ű",udhar:"⥮",ufisht:"⥾",ufr:"𝔲",Ufr:"𝔘",ugrave:"ù",Ugrave:"Ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",Umacr:"Ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",uogon:"ų",Uogon:"Ų",uopf:"𝕦",Uopf:"𝕌",uparrow:"↑",Uparrow:"⇑",UpArrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",updownarrow:"↕",Updownarrow:"⇕",UpDownArrow:"↕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",upsilon:"υ",Upsilon:"Υ",UpTee:"⊥",UpTeeArrow:"↥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",Uring:"Ů",urtri:"◹",uscr:"𝓊",Uscr:"𝒰",utdot:"⋰",utilde:"ũ",Utilde:"Ũ",utri:"▵",utrif:"▴",uuarr:"⇈",uuml:"ü",Uuml:"Ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",vcy:"в",Vcy:"В",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",vee:"∨",Vee:"⋁",veebar:"⊻",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",vfr:"𝔳",Vfr:"𝔙",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",vopf:"𝕧",Vopf:"𝕍",vprop:"∝",vrtri:"⊳",vscr:"𝓋",Vscr:"𝒱",vsubne:"⊊︀",vsubnE:"⫋︀",vsupne:"⊋︀",vsupnE:"⫌︀",Vvdash:"⊪",vzigzag:"⦚",wcirc:"ŵ",Wcirc:"Ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",wfr:"𝔴",Wfr:"𝔚",wopf:"𝕨",Wopf:"𝕎",wp:"℘",wr:"≀",wreath:"≀",wscr:"𝓌",Wscr:"𝒲",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",xfr:"𝔵",Xfr:"𝔛",xharr:"⟷",xhArr:"⟺",xi:"ξ",Xi:"Ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",xopf:"𝕩",Xopf:"𝕏",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",xscr:"𝓍",Xscr:"𝒳",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",yacute:"ý",Yacute:"Ý",yacy:"я",YAcy:"Я",ycirc:"ŷ",Ycirc:"Ŷ",ycy:"ы",Ycy:"Ы",yen:"¥",yfr:"𝔶",Yfr:"𝔜",yicy:"ї",YIcy:"Ї",yopf:"𝕪",Yopf:"𝕐",yscr:"𝓎",Yscr:"𝒴",yucy:"ю",YUcy:"Ю",yuml:"ÿ",Yuml:"Ÿ",zacute:"ź",Zacute:"Ź",zcaron:"ž",Zcaron:"Ž",zcy:"з",Zcy:"З",zdot:"ż",Zdot:"Ż",zeetrf:"ℨ",ZeroWidthSpace:"​",zeta:"ζ",Zeta:"Ζ",zfr:"𝔷",Zfr:"ℨ",zhcy:"ж",ZHcy:"Ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",zscr:"𝓏",Zscr:"𝒵",zwj:"‍",zwnj:"‌"},m={aacute:"á",Aacute:"Á",acirc:"â",Acirc:"Â",acute:"´",aelig:"æ",AElig:"Æ",agrave:"à",Agrave:"À",amp:"&",AMP:"&",aring:"å",Aring:"Å",atilde:"ã",Atilde:"Ã",auml:"ä",Auml:"Ä",brvbar:"¦",ccedil:"ç",Ccedil:"Ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",eacute:"é",Eacute:"É",ecirc:"ê",Ecirc:"Ê",egrave:"è",Egrave:"È",eth:"ð",ETH:"Ð",euml:"ë",Euml:"Ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",iacute:"í",Iacute:"Í",icirc:"î",Icirc:"Î",iexcl:"¡",igrave:"ì",Igrave:"Ì",iquest:"¿",iuml:"ï",Iuml:"Ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",ntilde:"ñ",Ntilde:"Ñ",oacute:"ó",Oacute:"Ó",ocirc:"ô",Ocirc:"Ô",ograve:"ò",Ograve:"Ò",ordf:"ª",ordm:"º",oslash:"ø",Oslash:"Ø",otilde:"õ",Otilde:"Õ",ouml:"ö",Ouml:"Ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",thorn:"þ",THORN:"Þ",times:"×",uacute:"ú",Uacute:"Ú",ucirc:"û",Ucirc:"Û",ugrave:"ù",Ugrave:"Ù",uml:"¨",uuml:"ü",Uuml:"Ü",yacute:"ý",Yacute:"Ý",yen:"¥",yuml:"ÿ"},v={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},_=[1,2,3,4,5,6,7,8,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,64976,64977,64978,64979,64980,64981,64982,64983,64984,64985,64986,64987,64988,64989,64990,64991,64992,64993,64994,64995,64996,64997,64998,64999,65e3,65001,65002,65003,65004,65005,65006,65007,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111],w=String.fromCharCode,x={}.hasOwnProperty,k=function(t,e){return x.call(t,e)},E=function(t,e){if(!t)return e;var n,r={};for(n in e)r[n]=k(t,n)?t[n]:e[n];return r},A=function(t,e){var n="";return t>=55296&&t<=57343||t>1114111?(e&&M("character reference outside the permissible Unicode range"),"�"):k(v,t)?(e&&M("disallowed character reference"),v[t]):(e&&function(t,e){for(var n=-1,r=t.length;++n65535&&(n+=w((t-=65536)>>>10&1023|55296),t=56320|1023&t),n+=w(t))},S=function(t){return"&#x"+t.toString(16).toUpperCase()+";"},T=function(t){return"&#"+t+";"},M=function(t){throw Error("Parse error: "+t)},D=function(t,e){(e=E(e,D.options)).strict&&g.test(t)&&M("forbidden code point");var n=e.encodeEverything,r=e.useNamedReferences,i=e.allowUnsafeSymbols,o=e.decimal?T:S,a=function(t){return o(t.charCodeAt(0))};return n?(t=t.replace(u,(function(t){return r&&k(l,t)?"&"+l[t]+";":a(t)})),r&&(t=t.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒").replace(/fj/g,"fj")),r&&(t=t.replace(f,(function(t){return"&"+l[t]+";"})))):r?(i||(t=t.replace(h,(function(t){return"&"+l[t]+";"}))),t=(t=t.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒")).replace(f,(function(t){return"&"+l[t]+";"}))):i||(t=t.replace(h,a)),t.replace(s,(function(t){var e=t.charCodeAt(0),n=t.charCodeAt(1);return o(1024*(e-55296)+n-56320+65536)})).replace(c,a)};D.options={allowUnsafeSymbols:!1,encodeEverything:!1,strict:!1,useNamedReferences:!1,decimal:!1};var C=function(t,e){var n=(e=E(e,C.options)).strict;return n&&p.test(t)&&M("malformed character reference"),t.replace(y,(function(t,r,i,o,a,s,u,c,f){var l,h,d,p,g,y;return r?b[g=r]:i?(g=i,(y=o)&&e.isAttributeValue?(n&&"="==y&&M("`&` did not start a character reference"),t):(n&&M("named character reference was not terminated by a semicolon"),m[g]+(y||""))):a?(d=a,h=s,n&&!h&&M("character reference was not terminated by a semicolon"),l=parseInt(d,10),A(l,n)):u?(p=u,h=c,n&&!h&&M("character reference was not terminated by a semicolon"),l=parseInt(p,16),A(l,n)):(n&&M("named character reference was not terminated by a semicolon"),t)}))};C.options={isAttributeValue:!1,strict:!1};var O={version:"1.2.0",encode:D,decode:C,escape:function(t){return t.replace(h,(function(t){return d[t]}))},unescape:C};if("function"==typeof define&&"object"==typeof define.amd&&define.amd)define((function(){return O}));else if(i&&!i.nodeType)if(o)o.exports=O;else for(var R in O)k(O,R)&&(i[R]=O[R]);else r.he=O}(this)}).call(this,n(9)(t),n(11))},function(t,e,n){"use strict";var r=n(229),i=n(230),o=n(231);function a(t,e,n){if(!t)return t;if(!e)return t;"string"==typeof n&&(n={keyframes:n}),n||(n={keyframes:!1}),t=s(t,e+" $1$2");var i=e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&");t=(t=(t=(t=t.replace(new RegExp("("+i+")\\s*\\1(?=[\\s\\r\\n,{])","g"),"$1")).replace(new RegExp("("+i+")\\s*:host","g"),"$1")).replace(new RegExp("("+i+")\\s*@","g"),"@")).replace(new RegExp("("+i+")\\s*:root","g"),":root");for(var o,a=[],u=/@keyframes\s+([a-zA-Z0-9_-]+)\s*{/g;null!==(o=u.exec(t));)a.indexOf(o[1])<0&&a.push(o[1]);var c=r(e);return a.forEach((function(e){var r=(!0===n.keyframes?c+"-":"string"==typeof n.keyframes?n.keyframes:"")+e;t=(t=t.replace(new RegExp("(@keyframes\\s+)"+e+"(\\s*{)","g"),"$1"+r+"$2")).replace(new RegExp("(animation(?:-name)?\\s*:[^;]*\\s*)"+e+"([\\s;}])","g"),"$1"+r+"$2")})),t=t.replace(new RegExp("("+i+" )(\\s*(?:to|from|[+-]?(?:(?:\\.\\d+)|(?:\\d+(?:\\.\\d*)?))%))(?=[\\s\\r\\n,{])","g"),"$2")}function s(t,e){var n=[];return t=o(t),t=(t=i.replace(t,!0,n)).replace(/([^\r\n,{}]+)(,(?=[^}]*{)|\s*{)/g,e),t=i.paste(t,n)}t.exports=a,a.replace=s},function(t,e,n){"use strict";const r=n(418),i="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~".split(""),o=(t,e)=>{const n=e.length,i=Math.floor(65536/n)*n-1,o=2*Math.ceil(1.1*t);let a="",s=0;for(;si||(a+=e[t%n],s++)}}return a},a=[void 0,"hex","base64","url-safe"];t.exports=({length:t,type:e,characters:n})=>{if(!(t>=0&&Number.isFinite(t)))throw new TypeError("Expected a `length` to be a non-negative finite number");if(void 0!==e&&void 0!==n)throw new TypeError("Expected either `type` or `characters`");if(void 0!==n&&"string"!=typeof n)throw new TypeError("Expected `characters` to be string");if(!a.includes(e))throw new TypeError(`Unknown type: ${e}`);if(void 0===e&&void 0===n&&(e="hex"),"hex"===e||void 0===e&&void 0===n)return r.randomBytes(Math.ceil(.5*t)).toString("hex").slice(0,t);if("base64"===e)return r.randomBytes(Math.ceil(.75*t)).toString("base64").slice(0,t);if("url-safe"===e)return o(t,i);if(0===n.length)throw new TypeError("Expected `characters` string length to be greater than or equal to 1");if(n.length>65536)throw new TypeError("Expected `characters` string length to be less or equal to 65536");return o(t,n.split(""))}},function(t,e,n){var r;r=function(){var t=JSON.parse('{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","џ":"dz","Ґ":"G","ґ":"g","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","‘":"\'","’":"\'","“":"\\"","”":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₹":"indian rupee","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial"}'),e=JSON.parse('{"bg":{"locale":"Bulgarian","ѝ":"u"}}');function n(n,r){if("string"!=typeof n)throw new Error("slugify: string argument expected");var i=e[(r="string"==typeof r?{replacement:r}:r||{}).locale]||{},o=n.split("").reduce((function(e,n){return e+(i[n]||t[n]||n).replace(r.remove||/[^\w\s$*_+~.()'"!\-:@]/g,"")}),"").trim().replace(/[-\s]+/g,r.replacement||"-");return r.lower?o.toLowerCase():o}return n.extend=function(e){for(var n in e)t[n]=e[n]},n},t.exports=r(),t.exports.default=r()},function(t,e,n){ +/*! + * Escaper v2.5.3 + * https://github.com/kobezzza/Escaper + * + * Released under the MIT license + * https://github.com/kobezzza/Escaper/blob/master/LICENSE + * + * Date: Tue, 23 Jan 2018 15:58:45 GMT + */ +!function(t){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n=void 0,r=n={VERSION:[2,5,3],content:[],cache:{},snakeskinRgxp:null,symbols:null,replace:M,paste:C},i={'"':!0,"'":!0,"`":!0},o={"/":!0};for(var a in i){if(!i.hasOwnProperty(a))break;o[a]=!0}var s={"//":!0,"//*":!0,"//!":!0,"//#":!0,"//@":!0,"//$":!0},u={"/*":!0,"/**":!0,"/*!":!0,"/*#":!0,"/*@":!0,"/*$":!0},c=[],f={};for(var l in o){if(!o.hasOwnProperty(l))break;c.push(l),f[l]=!0}for(var h in s){if(!s.hasOwnProperty(h))break;c.push(h),f[h]=!0}for(var d in u){if(!u.hasOwnProperty(d))break;c.push(d),f[d]=!0}var p=[],g={g:!0,m:!0,i:!0,y:!0,u:!0};for(var y in g){if(!g.hasOwnProperty(y))break;p.push(y)}var b={"-":!0,"+":!0,"*":!0,"%":!0,"~":!0,">":!0,"<":!0,"^":!0,",":!0,";":!0,"=":!0,"|":!0,"&":!0,"!":!0,"?":!0,":":!0,"(":!0,"{":!0,"[":!0},m={return:!0,yield:!0,await:!0,typeof:!0,void:!0,instanceof:!0,delete:!0,in:!0,new:!0,of:!0};function v(t,e,n){for(var r in t){if(!t.hasOwnProperty(r))break;r in e==0&&(e[r]=n)}}var _=void 0,w=void 0,x=/[^\s/]/,k=/[a-z]/,E=/\s/,A=/[\r\n]/,S=/\${pos}/g,T={object:!0,function:!0};function M(t,r,a,l){_=_||n.symbols||"a-z",w=w||n.snakeskinRgxp||new RegExp("[!$"+_+"_]","i");var h=n,d=h.cache,y=h.content,M=Boolean(r&&T[void 0===r?"undefined":e(r)]),D=M?Object(r):{};function C(t){return D["@label"]?D["@label"].replace(S,t):"__ESCAPER_QUOT__"+t+"_"}var O=!1;"boolean"==typeof r&&(O=Boolean(r)),"@comments"in D&&(v(u,D,D["@comments"]),v(s,D,D["@comments"]),delete D["@comments"]),"@strings"in D&&(v(i,D,D["@strings"]),delete D["@strings"]),"@literals"in D&&(v(o,D,D["@literals"]),delete D["@literals"]),"@all"in D&&(v(f,D,D["@all"]),delete D["@all"]);for(var R="",I=-1;++I2&&u[j])&&(D[j]&&(H=t.substring(U,K+1),-1===D[j]?$="":($=C(L.length),L.push(H)),t=t.substring(0,U)+$+t.substring(K+1),K+=$.length-H.length),j=!1);else{if(!P){if("/"===X&&((s[J]||u[J])&&(j=s[Q]||u[Q]?Q:J),j)){U=K;continue}b[X]||m[W]?(F=!0,W=""):x.test(X)&&(F=!1),k.test(X)?G+=X:(W=G,G="");var tt=!1;l&&("|"===X&&w.test(Z)?(V=!0,F=!1,tt=!0):V&&E.test(X)&&(V=!1,F=!0,tt=!0)),tt||(b[X]?F=!0:x.test(X)&&(F=!1))}if("/"!==P||q||("["===X?z=!0:"]"===X&&(z=!1)),!P&&Y&&("}"===X?Y--:"{"===X&&Y++,Y||(X="`")),"`"!==P||q||"${"!==J||(X="`",K++,Y++),!f[X]||"/"===X&&!F||P){if(P&&("\\"===X||q))q=!q;else if(f[X]&&P===X&&!q&&("/"!==P||!z)){if("/"===X)for(var et=-1;++et-1}},function(t,e,n){var r=n(63);t.exports=function(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}},function(t,e,n){var r=n(62);t.exports=function(){this.__data__=new r,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(62),i=n(90),o=n(91),a=200;t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!i||s.length0){if(++e>=n)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},function(t,e,n){var r=n(153),i=n(327),o=n(331),a=n(154),s=n(332),u=n(103),c=200;t.exports=function(t,e,n){var f=-1,l=i,h=t.length,d=!0,p=[],g=p;if(n)d=!1,l=o;else if(h>=c){var y=e?null:s(t);if(y)return u(y);d=!1,l=a,g=new r}else g=e?[]:p;t:for(;++f-1}},function(t,e,n){var r=n(167),i=n(329),o=n(330);t.exports=function(t,e,n){return e==e?o(t,e,n):r(t,i,n)}},function(t,e){t.exports=function(t){return t!=t}},function(t,e){t.exports=function(t,e,n){for(var r=n-1,i=t.length;++r1||1===e.length&&t.hasEdge(e[0],e[0])}))}},function(t,e,n){var r=n(12);t.exports=function(t,e,n){return function(t,e,n){var r={},i=t.nodes();return i.forEach((function(t){r[t]={},r[t][t]={distance:0},i.forEach((function(e){t!==e&&(r[t][e]={distance:Number.POSITIVE_INFINITY})})),n(t).forEach((function(n){var i=n.v===t?n.w:n.v,o=e(n);r[t][i]={distance:o,predecessor:t}}))})),i.forEach((function(t){var e=r[t];i.forEach((function(n){var o=r[n];i.forEach((function(n){var r=o[t],i=e[n],a=o[n],s=r.distance+i.distance;s0;){if(n=u.removeMin(),r.has(s,n))a.setEdge(n,s[n]);else{if(f)throw new Error("Input graph is not connected: "+t);f=!0}t.nodeEdges(n).forEach(c)}return a}},function(t,e,n){var r;try{r=n(22)}catch(t){}r||(r=window.graphlib),t.exports=r},function(t,e,n){"use strict";var r=n(4),i=n(380),o=n(383),a=n(384),s=n(10).normalizeRanks,u=n(386),c=n(10).removeEmptyRanks,f=n(387),l=n(388),h=n(389),d=n(390),p=n(399),g=n(10),y=n(19).Graph;t.exports=function(t,e){var n=e&&e.debugTiming?g.time:g.notime;n("layout",(function(){var e=n(" buildLayoutGraph",(function(){return function(t){var e=new y({multigraph:!0,compound:!0}),n=S(t.graph());return e.setGraph(r.merge({},m,A(n,b),r.pick(n,v))),r.forEach(t.nodes(),(function(n){var i=S(t.node(n));e.setNode(n,r.defaults(A(i,_),w)),e.setParent(n,t.parent(n))})),r.forEach(t.edges(),(function(n){var i=S(t.edge(n));e.setEdge(n,r.merge({},k,A(i,x),r.pick(i,E)))})),e}(t)}));n(" runLayout",(function(){!function(t,e){e(" makeSpaceForEdgeLabels",(function(){!function(t){var e=t.graph();e.ranksep/=2,r.forEach(t.edges(),(function(n){var r=t.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===e.rankdir||"BT"===e.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(t)})),e(" removeSelfEdges",(function(){!function(t){r.forEach(t.edges(),(function(e){if(e.v===e.w){var n=t.node(e.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:e,label:t.edge(e)}),t.removeEdge(e)}}))}(t)})),e(" acyclic",(function(){i.run(t)})),e(" nestingGraph.run",(function(){f.run(t)})),e(" rank",(function(){a(g.asNonCompoundGraph(t))})),e(" injectEdgeLabelProxies",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);if(n.width&&n.height){var r=t.node(e.v),i={rank:(t.node(e.w).rank-r.rank)/2+r.rank,e:e};g.addDummyNode(t,"edge-proxy",i,"_ep")}}))}(t)})),e(" removeEmptyRanks",(function(){c(t)})),e(" nestingGraph.cleanup",(function(){f.cleanup(t)})),e(" normalizeRanks",(function(){s(t)})),e(" assignRankMinMax",(function(){!function(t){var e=0;r.forEach(t.nodes(),(function(n){var i=t.node(n);i.borderTop&&(i.minRank=t.node(i.borderTop).rank,i.maxRank=t.node(i.borderBottom).rank,e=r.max(e,i.maxRank))})),t.graph().maxRank=e}(t)})),e(" removeEdgeLabelProxies",(function(){!function(t){r.forEach(t.nodes(),(function(e){var n=t.node(e);"edge-proxy"===n.dummy&&(t.edge(n.e).labelRank=n.rank,t.removeNode(e))}))}(t)})),e(" normalize.run",(function(){o.run(t)})),e(" parentDummyChains",(function(){u(t)})),e(" addBorderSegments",(function(){l(t)})),e(" order",(function(){d(t)})),e(" insertSelfEdges",(function(){!function(t){var e=g.buildLayerMatrix(t);r.forEach(e,(function(e){var n=0;r.forEach(e,(function(e,i){var o=t.node(e);o.order=i+n,r.forEach(o.selfEdges,(function(e){g.addDummyNode(t,"selfedge",{width:e.label.width,height:e.label.height,rank:o.rank,order:i+ ++n,e:e.e,label:e.label},"_se")})),delete o.selfEdges}))}))}(t)})),e(" adjustCoordinateSystem",(function(){h.adjust(t)})),e(" position",(function(){p(t)})),e(" positionSelfEdges",(function(){!function(t){r.forEach(t.nodes(),(function(e){var n=t.node(e);if("selfedge"===n.dummy){var r=t.node(n.e.v),i=r.x+r.width/2,o=r.y,a=n.x-i,s=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*a/3,y:o-s},{x:i+5*a/6,y:o-s},{x:i+a,y:o},{x:i+5*a/6,y:o+s},{x:i+2*a/3,y:o+s}],n.label.x=n.x,n.label.y=n.y}}))}(t)})),e(" removeBorderNodes",(function(){!function(t){r.forEach(t.nodes(),(function(e){if(t.children(e).length){var n=t.node(e),i=t.node(n.borderTop),o=t.node(n.borderBottom),a=t.node(r.last(n.borderLeft)),s=t.node(r.last(n.borderRight));n.width=Math.abs(s.x-a.x),n.height=Math.abs(o.y-i.y),n.x=a.x+n.width/2,n.y=i.y+n.height/2}})),r.forEach(t.nodes(),(function(e){"border"===t.node(e).dummy&&t.removeNode(e)}))}(t)})),e(" normalize.undo",(function(){o.undo(t)})),e(" fixupEdgeLabelCoords",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(t)})),e(" undoCoordinateSystem",(function(){h.undo(t)})),e(" translateGraph",(function(){!function(t){var e=Number.POSITIVE_INFINITY,n=0,i=Number.POSITIVE_INFINITY,o=0,a=t.graph(),s=a.marginx||0,u=a.marginy||0;function c(t){var r=t.x,a=t.y,s=t.width,u=t.height;e=Math.min(e,r-s/2),n=Math.max(n,r+s/2),i=Math.min(i,a-u/2),o=Math.max(o,a+u/2)}r.forEach(t.nodes(),(function(e){c(t.node(e))})),r.forEach(t.edges(),(function(e){var n=t.edge(e);r.has(n,"x")&&c(n)})),e-=s,i-=u,r.forEach(t.nodes(),(function(n){var r=t.node(n);r.x-=e,r.y-=i})),r.forEach(t.edges(),(function(n){var o=t.edge(n);r.forEach(o.points,(function(t){t.x-=e,t.y-=i})),r.has(o,"x")&&(o.x-=e),r.has(o,"y")&&(o.y-=i)})),a.width=n-e+s,a.height=o-i+u}(t)})),e(" assignNodeIntersects",(function(){!function(t){r.forEach(t.edges(),(function(e){var n,r,i=t.edge(e),o=t.node(e.v),a=t.node(e.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=a,r=o),i.points.unshift(g.intersectRect(o,n)),i.points.push(g.intersectRect(a,r))}))}(t)})),e(" reversePoints",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);n.reversed&&n.points.reverse()}))}(t)})),e(" acyclic.undo",(function(){i.undo(t)}))}(e,n)})),n(" updateInputGraph",(function(){!function(t,e){r.forEach(t.nodes(),(function(n){var r=t.node(n),i=e.node(n);r&&(r.x=i.x,r.y=i.y,e.children(n).length&&(r.width=i.width,r.height=i.height))})),r.forEach(t.edges(),(function(n){var i=t.edge(n),o=e.edge(n);i.points=o.points,r.has(o,"x")&&(i.x=o.x,i.y=o.y)})),t.graph().width=e.graph().width,t.graph().height=e.graph().height}(t,e)}))}))};var b=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},v=["acyclicer","ranker","rankdir","align"],_=["width","height"],w={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],k={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},E=["labelpos"];function A(t,e){return r.mapValues(r.pick(t,e),Number)}function S(t){var e={};return r.forEach(t,(function(t,n){e[n.toLowerCase()]=t})),e}},function(t,e,n){var r=n(130),i=1,o=4;t.exports=function(t){return r(t,i|o)}},function(t,e,n){var r=n(350)(n(351));t.exports=r},function(t,e,n){var r=n(25),i=n(24),o=n(27);t.exports=function(t){return function(e,n,a){var s=Object(e);if(!i(e)){var u=r(n,3);e=o(e),n=function(t){return u(s[t],t,s)}}var c=t(e,n,a);return c>-1?s[u?e[c]:c]:void 0}}},function(t,e,n){var r=n(167),i=n(25),o=n(352),a=Math.max;t.exports=function(t,e,n){var s=null==t?0:t.length;if(!s)return-1;var u=null==n?0:o(n);return u<0&&(u=a(s+u,0)),r(t,i(e,3),u)}},function(t,e,n){var r=n(177);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},function(t,e,n){var r=n(13),i=n(42),o=NaN,a=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,c=/^0o[0-7]+$/i,f=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(i(t))return o;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var n=u.test(t);return n||c.test(t)?f(t.slice(2),n?2:8):s.test(t)?o:+t}},function(t,e,n){var r=n(102),i=n(149),o=n(40);t.exports=function(t,e){return null==t?t:r(t,i(e),o)}},function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},function(t,e,n){var r=n(67),i=n(101),o=n(25);t.exports=function(t,e){var n={};return e=o(e,3),i(t,(function(t,i,o){r(n,i,e(t,i,o))})),n}},function(t,e,n){var r=n(108),i=n(358),o=n(34);t.exports=function(t){return t&&t.length?r(t,o,i):void 0}},function(t,e){t.exports=function(t,e){return t>e}},function(t,e,n){var r=n(360),i=n(363)((function(t,e,n){r(t,e,n)}));t.exports=i},function(t,e,n){var r=n(61),i=n(179),o=n(102),a=n(361),s=n(13),u=n(40),c=n(181);t.exports=function t(e,n,f,l,h){e!==n&&o(n,(function(o,u){if(h||(h=new r),s(o))a(e,n,u,f,t,l,h);else{var d=l?l(c(e,u),o,u+"",e,n,h):void 0;void 0===d&&(d=o),i(e,u,d)}}),u)}},function(t,e,n){var r=n(179),i=n(136),o=n(145),a=n(137),s=n(146),u=n(50),c=n(6),f=n(168),l=n(39),h=n(37),d=n(13),p=n(180),g=n(51),y=n(181),b=n(362);t.exports=function(t,e,n,m,v,_,w){var x=y(t,n),k=y(e,n),E=w.get(k);if(E)r(t,n,E);else{var A=_?_(x,k,n+"",t,e,w):void 0,S=void 0===A;if(S){var T=c(k),M=!T&&l(k),D=!T&&!M&&g(k);A=k,T||M||D?c(x)?A=x:f(x)?A=a(x):M?(S=!1,A=i(k,!0)):D?(S=!1,A=o(k,!0)):A=[]:p(k)||u(k)?(A=x,u(x)?A=b(x):d(x)&&!h(x)||(A=s(k))):S=!1}S&&(w.set(k,A),v(A,k,m,_,w),w.delete(k)),r(t,n,A)}}},function(t,e,n){var r=n(49),i=n(40);t.exports=function(t){return r(t,i(t))}},function(t,e,n){var r=n(75),i=n(76);t.exports=function(t){return r((function(e,n){var r=-1,o=n.length,a=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(a=t.length>3&&"function"==typeof a?(o--,a):void 0,s&&i(n[0],n[1],s)&&(a=o<3?void 0:a,o=1),e=Object(e);++r1&&a(t,e[0],e[1])?e=[]:n>2&&a(e[0],e[1],e[2])&&(e=[e[0]]),i(t,r(e,1),[])}));t.exports=s},function(t,e,n){var r=n(74),i=n(25),o=n(163),a=n(375),s=n(69),u=n(376),c=n(34);t.exports=function(t,e,n){var f=-1;e=r(e.length?e:[c],s(i));var l=o(t,(function(t,n,i){return{criteria:r(e,(function(e){return e(t)})),index:++f,value:t}}));return a(l,(function(t,e){return u(t,e,n)}))}},function(t,e){t.exports=function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}},function(t,e,n){var r=n(377);t.exports=function(t,e,n){for(var i=-1,o=t.criteria,a=e.criteria,s=o.length,u=n.length;++i=u?c:c*("desc"==n[i]?-1:1)}return t.index-e.index}},function(t,e,n){var r=n(42);t.exports=function(t,e){if(t!==e){var n=void 0!==t,i=null===t,o=t==t,a=r(t),s=void 0!==e,u=null===e,c=e==e,f=r(e);if(!u&&!f&&!a&&t>e||a&&s&&c&&!u&&!f||i&&s&&c||!n&&c||!o)return 1;if(!i&&!a&&!f&&t0;--u)if(r=e[u].dequeue()){i=i.concat(s(t,e,n,r,!0));break}}return i}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(c,(function(e){return t.outEdges(e.v,e.w)})),!0)};var a=r.constant(1);function s(t,e,n,i,o){var a=o?[]:void 0;return r.forEach(t.inEdges(i.v),(function(r){var i=t.edge(r),s=t.node(r.v);o&&a.push({v:r.v,w:r.w}),s.out-=i,u(e,n,s)})),r.forEach(t.outEdges(i.v),(function(r){var i=t.edge(r),o=r.w,a=t.node(o);a.in-=i,u(e,n,a)})),t.removeNode(i.v),a}function u(t,e,n){n.out?n.in?t[n.out-n.in+e].enqueue(n):t[t.length-1].enqueue(n):t[0].enqueue(n)}},function(t,e){function n(){var t={};t._next=t._prev=t,this._sentinel=t}function r(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function i(t,e){if("_next"!==t&&"_prev"!==t)return e}t.exports=n,n.prototype.dequeue=function(){var t=this._sentinel,e=t._prev;if(e!==t)return r(e),e},n.prototype.enqueue=function(t){var e=this._sentinel;t._prev&&t._next&&r(t),t._next=e._next,e._next._prev=t,e._next=t,t._prev=e},n.prototype.toString=function(){for(var t=[],e=this._sentinel,n=e._prev;n!==e;)t.push(JSON.stringify(n,i)),n=n._prev;return"["+t.join(", ")+"]"}},function(t,e,n){"use strict";var r=n(4),i=n(10);t.exports={run:function(t){t.graph().dummyChains=[],r.forEach(t.edges(),(function(e){!function(t,e){var n,r,o,a=e.v,s=t.node(a).rank,u=e.w,c=t.node(u).rank,f=e.name,l=t.edge(e),h=l.labelRank;if(c===s+1)return;for(t.removeEdge(e),o=0,++s;su.lim&&(c=u,f=!0);var l=r.filter(e.edges(),(function(e){return f===b(t,t.node(e.v),c)&&f!==b(t,t.node(e.w),c)}));return r.minBy(l,(function(t){return o(e,t)}))}function y(t,e,n,i){var o=n.v,a=n.w;t.removeEdge(o,a),t.setEdge(i.v,i.w,{}),d(t),l(t,e),function(t,e){var n=r.find(t.nodes(),(function(t){return!e.node(t).parent})),i=s(t,n);i=i.slice(1),r.forEach(i,(function(n){var r=t.node(n).parent,i=e.edge(n,r),o=!1;i||(i=e.edge(r,n),o=!0),e.node(n).rank=e.node(r).rank+(o?i.minlen:-i.minlen)}))}(t,e)}function b(t,e,n){return n.low<=e.lim&&e.lim<=n.lim}t.exports=f,f.initLowLimValues=d,f.initCutValues=l,f.calcCutValue=h,f.leaveEdge=p,f.enterEdge=g,f.exchangeEdges=y},function(t,e,n){var r=n(4);t.exports=function(t){var e=function(t){var e={},n=0;return r.forEach(t.children(),(function i(o){var a=n;r.forEach(t.children(o),i);e[o]={low:a,lim:n++}})),e}(t);r.forEach(t.graph().dummyChains,(function(n){for(var r=t.node(n),i=r.edgeObj,o=function(t,e,n,r){var i,o,a=[],s=[],u=Math.min(e[n].low,e[r].low),c=Math.max(e[n].lim,e[r].lim);i=n;do{i=t.parent(i),a.push(i)}while(i&&(e[i].low>u||c>e[i].lim));o=i,i=r;for(;(i=t.parent(i))!==o;)s.push(i);return{path:a.concat(s.reverse()),lca:o}}(t,e,i.v,i.w),a=o.path,s=o.lca,u=0,c=a[u],f=!0;n!==i.w;){if(r=t.node(n),f){for(;(c=a[u])!==s&&t.node(c).maxRank=2),s=f.buildLayerMatrix(t);var y=o(t,s);y0;)e%2&&(n+=u[e+1]),u[e=e-1>>1]+=t.weight;c+=t.weight*n}))),c}t.exports=function(t,e){for(var n=0,r=1;r=t.barycenter)&&function(t,e){var n=0,r=0;t.weight&&(n+=t.barycenter*t.weight,r+=t.weight);e.weight&&(n+=e.barycenter*e.weight,r+=e.weight);t.vs=e.vs.concat(t.vs),t.barycenter=n/r,t.weight=r,t.i=Math.min(e.i,t.i),e.merged=!0}(t,e)}}function i(e){return function(n){n.in.push(e),0==--n.indegree&&t.push(n)}}for(;t.length;){var o=t.pop();e.push(o),r.forEach(o.in.reverse(),n(o)),r.forEach(o.out,i(o))}return r.map(r.filter(e,(function(t){return!t.merged})),(function(t){return r.pick(t,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(t){return!t.indegree})))}},function(t,e,n){var r=n(4),i=n(10);function o(t,e,n){for(var i;e.length&&(i=r.last(e)).i<=n;)e.pop(),t.push(i.vs),n++;return n}t.exports=function(t,e){var n=i.partition(t,(function(t){return r.has(t,"barycenter")})),a=n.lhs,s=r.sortBy(n.rhs,(function(t){return-t.i})),u=[],c=0,f=0,l=0;a.sort((h=!!e,function(t,e){return t.barycentere.barycenter?1:h?e.i-t.i:t.i-e.i})),l=o(u,s,l),r.forEach(a,(function(t){l+=t.vs.length,u.push(t.vs),c+=t.barycenter*t.weight,f+=t.weight,l=o(u,s,l)}));var h;var d={vs:r.flatten(u,!0)};f&&(d.barycenter=c/f,d.weight=f);return d}},function(t,e,n){var r=n(4),i=n(19).Graph;t.exports=function(t,e,n){var o=function(t){var e;for(;t.hasNode(e=r.uniqueId("_root")););return e}(t),a=new i({compound:!0}).setGraph({root:o}).setDefaultNodeLabel((function(e){return t.node(e)}));return r.forEach(t.nodes(),(function(i){var s=t.node(i),u=t.parent(i);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(a.setNode(i),a.setParent(i,u||o),r.forEach(t[n](i),(function(e){var n=e.v===i?e.w:e.v,o=a.edge(n,i),s=r.isUndefined(o)?0:o.weight;a.setEdge(n,i,{weight:t.edge(e).weight+s})})),r.has(s,"minRank")&&a.setNode(i,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))})),a}},function(t,e,n){var r=n(4);t.exports=function(t,e,n){var i,o={};r.forEach(n,(function(n){for(var r,a,s=t.parent(n);s;){if((r=t.parent(s))?(a=o[r],o[r]=s):(a=i,i=s),a&&a!==s)return void e.setEdge(a,s);s=r}}))}},function(t,e,n){"use strict";var r=n(4),i=n(10),o=n(400).positionX;t.exports=function(t){(function(t){var e=i.buildLayerMatrix(t),n=t.graph().ranksep,o=0;r.forEach(e,(function(e){var i=r.max(r.map(e,(function(e){return t.node(e).height})));r.forEach(e,(function(e){t.node(e).y=o+i/2})),o+=i+n}))})(t=i.asNonCompoundGraph(t)),r.forEach(o(t),(function(e,n){t.node(n).x=e}))}},function(t,e,n){"use strict";var r=n(4),i=n(19).Graph,o=n(10);function a(t,e){var n={};return r.reduce(e,(function(e,i){var o=0,a=0,s=e.length,c=r.last(i);return r.forEach(i,(function(e,f){var l=function(t,e){if(t.node(e).dummy)return r.find(t.predecessors(e),(function(e){return t.node(e).dummy}))}(t,e),h=l?t.node(l).order:s;(l||e===c)&&(r.forEach(i.slice(a,f+1),(function(e){r.forEach(t.predecessors(e),(function(r){var i=t.node(r),a=i.order;!(as)&&u(n,e,c)}))}))}return r.reduce(e,(function(e,n){var o,a=-1,s=0;return r.forEach(n,(function(r,u){if("border"===t.node(r).dummy){var c=t.predecessors(r);c.length&&(o=t.node(c[0]).order,i(n,s,u,a,o),s=u,a=o)}i(n,s,n.length,o,e.length)})),n})),n}function u(t,e,n){if(e>n){var r=e;e=n,n=r}var i=t[e];i||(t[e]=i={}),i[n]=!0}function c(t,e,n){if(e>n){var i=e;e=n,n=i}return r.has(t[e],n)}function f(t,e,n,i){var o={},a={},s={};return r.forEach(e,(function(t){r.forEach(t,(function(t,e){o[t]=t,a[t]=t,s[t]=e}))})),r.forEach(e,(function(t){var e=-1;r.forEach(t,(function(t){var u=i(t);if(u.length)for(var f=((u=r.sortBy(u,(function(t){return s[t]}))).length-1)/2,l=Math.floor(f),h=Math.ceil(f);l<=h;++l){var d=u[l];a[t]===t&&e0}t.exports=function(t,e,r,i){var o,a,s,u,c,f,l,h,d,p,g,y,b;if(o=e.y-t.y,s=t.x-e.x,c=e.x*t.y-t.x*e.y,d=o*r.x+s*r.y+c,p=o*i.x+s*i.y+c,0!==d&&0!==p&&n(d,p))return;if(a=i.y-r.y,u=r.x-i.x,f=i.x*r.y-r.x*i.y,l=a*t.x+u*t.y+f,h=a*e.x+u*e.y+f,0!==l&&0!==h&&n(l,h))return;if(0===(g=o*u-a*s))return;return y=Math.abs(g/2),{x:(b=s*f-u*c)<0?(b-y)/g:(b+y)/g,y:(b=a*c-o*f)<0?(b-y)/g:(b+y)/g}}},function(t,e,n){var r=n(43),i=n(30),o=n(175).layout;t.exports=function(){var t=n(406),e=n(409),i=n(410),c=n(411),f=n(412),l=n(413),h=n(414),d=n(415),p=n(416),g=function(n,g){!function(t){t.nodes().forEach((function(e){var n=t.node(e);r.has(n,"label")||t.children(e).length||(n.label=e),r.has(n,"paddingX")&&r.defaults(n,{paddingLeft:n.paddingX,paddingRight:n.paddingX}),r.has(n,"paddingY")&&r.defaults(n,{paddingTop:n.paddingY,paddingBottom:n.paddingY}),r.has(n,"padding")&&r.defaults(n,{paddingLeft:n.padding,paddingRight:n.padding,paddingTop:n.padding,paddingBottom:n.padding}),r.defaults(n,a),r.each(["paddingLeft","paddingRight","paddingTop","paddingBottom"],(function(t){n[t]=Number(n[t])})),r.has(n,"width")&&(n._prevWidth=n.width),r.has(n,"height")&&(n._prevHeight=n.height)})),t.edges().forEach((function(e){var n=t.edge(e);r.has(n,"label")||(n.label=""),r.defaults(n,s)}))}(g);var y=u(n,"output"),b=u(y,"clusters"),m=u(y,"edgePaths"),v=i(u(y,"edgeLabels"),g),_=t(u(y,"nodes"),g,d);o(g),f(_,g),l(v,g),c(m,g,p);var w=e(b,g);h(w,g),function(t){r.each(t.nodes(),(function(e){var n=t.node(e);r.has(n,"_prevWidth")?n.width=n._prevWidth:delete n.width,r.has(n,"_prevHeight")?n.height=n._prevHeight:delete n.height,delete n._prevWidth,delete n._prevHeight}))}(g)};return g.createNodes=function(e){return arguments.length?(t=e,g):t},g.createClusters=function(t){return arguments.length?(e=t,g):e},g.createEdgeLabels=function(t){return arguments.length?(i=t,g):i},g.createEdgePaths=function(t){return arguments.length?(c=t,g):c},g.shapes=function(t){return arguments.length?(d=t,g):d},g.arrows=function(t){return arguments.length?(p=t,g):p},g};var a={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},s={arrowhead:"normal",curve:i.curveLinear};function u(t,e){var n=t.select("g."+e);return n.empty()&&(n=t.append("g").attr("class",e)),n}},function(t,e,n){"use strict";var r=n(43),i=n(110),o=n(14),a=n(30);t.exports=function(t,e,n){var s,u=e.nodes().filter((function(t){return!o.isSubgraph(e,t)})),c=t.selectAll("g.node").data(u,(function(t){return t})).classed("update",!0);c.exit().remove(),c.enter().append("g").attr("class","node").style("opacity",0),(c=t.selectAll("g.node")).each((function(t){var s=e.node(t),u=a.select(this);o.applyClass(u,s.class,(u.classed("update")?"update ":"")+"node"),u.select("g.label").remove();var c=u.append("g").attr("class","label"),f=i(c,s),l=n[s.shape],h=r.pick(f.node().getBBox(),"width","height");s.elem=this,s.id&&u.attr("id",s.id),s.labelId&&c.attr("id",s.labelId),r.has(s,"width")&&(h.width=s.width),r.has(s,"height")&&(h.height=s.height),h.width+=s.paddingLeft+s.paddingRight,h.height+=s.paddingTop+s.paddingBottom,c.attr("transform","translate("+(s.paddingLeft-s.paddingRight)/2+","+(s.paddingTop-s.paddingBottom)/2+")");var d=a.select(this);d.select(".label-container").remove();var p=l(d,h,s).classed("label-container",!0);o.applyStyle(p,s.style);var g=p.node().getBBox();s.width=g.width,s.height=g.height})),s=c.exit?c.exit():c.selectAll(null);return o.applyTransition(s,e).style("opacity",0).remove(),c}},function(t,e,n){var r=n(14);t.exports=function(t,e){for(var n=t.append("text"),i=function(t){for(var e,n="",r=!1,i=0;i0?a-4:a;for(n=0;n>16&255,u[f++]=e>>8&255,u[f++]=255&e;2===s&&(e=i[t.charCodeAt(n)]<<2|i[t.charCodeAt(n+1)]>>4,u[f++]=255&e);1===s&&(e=i[t.charCodeAt(n)]<<10|i[t.charCodeAt(n+1)]<<4|i[t.charCodeAt(n+2)]>>2,u[f++]=e>>8&255,u[f++]=255&e);return u},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,o=[],a=0,s=n-i;as?s:a+16383));1===i?(e=t[n-1],o.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],o.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function f(t,e,n){for(var i,o,a=[],s=e;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e){e.read=function(t,e,n,r,i){var o,a,s=8*i-r-1,u=(1<>1,f=-7,l=n?i-1:0,h=n?-1:1,d=t[e+l];for(l+=h,o=d&(1<<-f)-1,d>>=-f,f+=s;f>0;o=256*o+t[e+l],l+=h,f-=8);for(a=o&(1<<-f)-1,o>>=-f,f+=r;f>0;a=256*a+t[e+l],l+=h,f-=8);if(0===o)o=1-c;else{if(o===u)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=c}return(d?-1:1)*a*Math.pow(2,o-r)},e.write=function(t,e,n,r,i,o){var a,s,u,c=8*o-i-1,f=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:o-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),(e+=a+l>=1?h/u:h*Math.pow(2,1-l))*u>=2&&(a++,u/=2),a+l>=f?(s=0,a=f):a+l>=1?(s=(e*u-1)*Math.pow(2,i),a+=l):(s=e*Math.pow(2,l-1)*Math.pow(2,i),a=0));i>=8;t[n+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;t[n+d]=255&a,d+=p,a/=256,c-=8);t[n+d-p]|=128*g}},function(t,e){},function(t,e,n){"use strict";var r=n(115).Buffer,i=n(423);t.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n},t.prototype.concat=function(t){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var e,n,i,o=r.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,n=o,i=s,e.copy(n,i),s+=a.data.length,a=a.next;return o},t}(),i&&i.inspect&&i.inspect.custom&&(t.exports.prototype[i.inspect.custom]=function(){var t=i.inspect({length:this.length});return this.constructor.name+" "+t})},function(t,e){},function(t,e,n){(function(t){var r=void 0!==t&&t||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new o(i.call(setTimeout,r,arguments),clearTimeout)},e.setInterval=function(){return new o(i.call(setInterval,r,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(r,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},n(425),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,n(11))},function(t,e,n){(function(t,e){!function(t,n){"use strict";if(!t.setImmediate){var r,i,o,a,s,u=1,c={},f=!1,l=t.document,h=Object.getPrototypeOf&&Object.getPrototypeOf(t);h=h&&h.setTimeout?h:t,"[object process]"==={}.toString.call(t.process)?r=function(t){e.nextTick((function(){p(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?t.MessageChannel?((o=new MessageChannel).port1.onmessage=function(t){p(t.data)},r=function(t){o.port2.postMessage(t)}):l&&"onreadystatechange"in l.createElement("script")?(i=l.documentElement,r=function(t){var e=l.createElement("script");e.onreadystatechange=function(){p(t),e.onreadystatechange=null,i.removeChild(e),e=null},i.appendChild(e)}):r=function(t){setTimeout(p,0,t)}:(a="setImmediate$"+Math.random()+"$",s=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(a)&&p(+e.data.slice(a.length))},t.addEventListener?t.addEventListener("message",s,!1):t.attachEvent("onmessage",s),r=function(e){t.postMessage(a+e,"*")}),h.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n>>2}function f(t,e,n,r){return 0===t?e&n|~e&r:2===t?e&n|e&r|n&r:e^n^r}r(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,l=0;l<16;++l)n[l]=t.readInt32BE(4*l);for(;l<80;++l)n[l]=n[l-3]^n[l-8]^n[l-14]^n[l-16];for(var h=0;h<80;++h){var d=~~(h/20),p=0|((e=r)<<5|e>>>27)+f(d,i,o,s)+u+n[h]+a[d];u=s,s=o,o=c(i),i=r,r=p}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,n){var r=n(2),i=n(45),o=n(3).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function u(){this.init(),this._w=s,i.call(this,64,56)}function c(t){return t<<5|t>>>27}function f(t){return t<<30|t>>>2}function l(t,e,n,r){return 0===t?e&n|~e&r:2===t?e&n|e&r|n&r:e^n^r}r(u,i),u.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},u.prototype._update=function(t){for(var e,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,h=0;h<16;++h)n[h]=t.readInt32BE(4*h);for(;h<80;++h)n[h]=(e=n[h-3]^n[h-8]^n[h-14]^n[h-16])<<1|e>>>31;for(var d=0;d<80;++d){var p=~~(d/20),g=c(r)+l(p,i,o,s)+u+n[d]+a[p]|0;u=s,s=o,o=f(i),i=r,r=g}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0},u.prototype._hash=function(){var t=o.allocUnsafe(20);return t.writeInt32BE(0|this._a,0),t.writeInt32BE(0|this._b,4),t.writeInt32BE(0|this._c,8),t.writeInt32BE(0|this._d,12),t.writeInt32BE(0|this._e,16),t},t.exports=u},function(t,e,n){var r=n(2),i=n(197),o=n(45),a=n(3).Buffer,s=new Array(64);function u(){this.init(),this._w=s,o.call(this,64,56)}r(u,i),u.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},u.prototype._hash=function(){var t=a.allocUnsafe(28);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t},t.exports=u},function(t,e,n){var r=n(2),i=n(198),o=n(45),a=n(3).Buffer,s=new Array(160);function u(){this.init(),this._w=s,o.call(this,128,112)}r(u,i),u.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},u.prototype._hash=function(){var t=a.allocUnsafe(48);function e(e,n,r){t.writeInt32BE(e,r),t.writeInt32BE(n,r+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),t},t.exports=u},function(t,e,n){"use strict";var r=n(2),i=n(3).Buffer,o=n(31),a=i.alloc(128),s=64;function u(t,e){o.call(this,"digest"),"string"==typeof e&&(e=i.from(e)),this._alg=t,this._key=e,e.length>s?e=t(e):e.length>>0},e.writeUInt32BE=function(t,e,n){t[0+n]=e>>>24,t[1+n]=e>>>16&255,t[2+n]=e>>>8&255,t[3+n]=255&e},e.ip=function(t,e,n,r){for(var i=0,o=0,a=6;a>=0;a-=2){for(var s=0;s<=24;s+=8)i<<=1,i|=e>>>s+a&1;for(s=0;s<=24;s+=8)i<<=1,i|=t>>>s+a&1}for(a=6;a>=0;a-=2){for(s=1;s<=25;s+=8)o<<=1,o|=e>>>s+a&1;for(s=1;s<=25;s+=8)o<<=1,o|=t>>>s+a&1}n[r+0]=i>>>0,n[r+1]=o>>>0},e.rip=function(t,e,n,r){for(var i=0,o=0,a=0;a<4;a++)for(var s=24;s>=0;s-=8)i<<=1,i|=e>>>s+a&1,i<<=1,i|=t>>>s+a&1;for(a=4;a<8;a++)for(s=24;s>=0;s-=8)o<<=1,o|=e>>>s+a&1,o<<=1,o|=t>>>s+a&1;n[r+0]=i>>>0,n[r+1]=o>>>0},e.pc1=function(t,e,n,r){for(var i=0,o=0,a=7;a>=5;a--){for(var s=0;s<=24;s+=8)i<<=1,i|=e>>s+a&1;for(s=0;s<=24;s+=8)i<<=1,i|=t>>s+a&1}for(s=0;s<=24;s+=8)i<<=1,i|=e>>s+a&1;for(a=1;a<=3;a++){for(s=0;s<=24;s+=8)o<<=1,o|=e>>s+a&1;for(s=0;s<=24;s+=8)o<<=1,o|=t>>s+a&1}for(s=0;s<=24;s+=8)o<<=1,o|=t>>s+a&1;n[r+0]=i>>>0,n[r+1]=o>>>0},e.r28shl=function(t,e){return t<>>28-e};var r=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];e.pc2=function(t,e,n,i){for(var o=0,a=0,s=r.length>>>1,u=0;u>>r[u]&1;for(u=s;u>>r[u]&1;n[i+0]=o>>>0,n[i+1]=a>>>0},e.expand=function(t,e,n){var r=0,i=0;r=(1&t)<<5|t>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=t>>>o&63;for(o=11;o>=3;o-=4)i|=t>>>o&63,i<<=6;i|=(31&t)<<1|t>>>31,e[n+0]=r>>>0,e[n+1]=i>>>0};var i=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];e.substitute=function(t,e){for(var n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(t>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(e>>>18-6*r&63)]}return n>>>0};var o=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];e.permute=function(t){for(var e=0,n=0;n>>o[n]&1;return e>>>0},e.padSplit=function(t,e,n){for(var r=t.toString(2);r.length0;r--)e+=this._buffer(t,e),n+=this._flushBuffer(i,n);return e+=this._buffer(t,e),i},i.prototype.final=function(t){var e,n;return t&&(e=this.update(t)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),e?e.concat(n):n},i.prototype._pad=function(t,e){if(0===e)return!1;for(;e>>1];n=a.r28shl(n,s),i=a.r28shl(i,s),a.pc2(n,i,t.keys,o)}},c.prototype._update=function(t,e,n,r){var i=this._desState,o=a.readUInt32BE(t,e),s=a.readUInt32BE(t,e+4);a.ip(o,s,i.tmp,0),o=i.tmp[0],s=i.tmp[1],"encrypt"===this.type?this._encrypt(i,o,s,i.tmp,0):this._decrypt(i,o,s,i.tmp,0),o=i.tmp[0],s=i.tmp[1],a.writeUInt32BE(n,o,r),a.writeUInt32BE(n,s,r+4)},c.prototype._pad=function(t,e){for(var n=t.length-e,r=e;r>>0,o=h}a.rip(s,o,r,i)},c.prototype._decrypt=function(t,e,n,r,i){for(var o=n,s=e,u=t.keys.length-2;u>=0;u-=2){var c=t.keys[u],f=t.keys[u+1];a.expand(o,t.tmp,0),c^=t.tmp[0],f^=t.tmp[1];var l=a.substitute(c,f),h=o;o=(s^a.permute(l))>>>0,s=h}a.rip(o,s,r,i)}},function(t,e,n){"use strict";var r=n(15),i=n(2),o={};function a(t){r.equal(t.length,8,"Invalid IV length"),this.iv=new Array(8);for(var e=0;e15){var t=this.cache.slice(0,16);return this.cache=this.cache.slice(16),t}return null},h.prototype.flush=function(){for(var t=16-this.cache.length,e=o.allocUnsafe(t),n=-1;++n>a%8,t._prev=o(t._prev,n?r:i);return s}function o(t,e){var n=t.length,i=-1,o=r.allocUnsafe(t.length);for(t=r.concat([t,r.from([e])]);++i>7;return o}e.encrypt=function(t,e,n){for(var o=e.length,a=r.allocUnsafe(o),s=-1;++s>>0,0),e.writeUInt32BE(t[1]>>>0,4),e.writeUInt32BE(t[2]>>>0,8),e.writeUInt32BE(t[3]>>>0,12),e}function a(t){this.h=t,this.state=r.alloc(16,0),this.cache=r.allocUnsafe(0)}a.prototype.ghash=function(t){for(var e=-1;++e0;e--)r[e]=r[e]>>>1|(1&r[e-1])<<31;r[0]=r[0]>>>1,n&&(r[0]=r[0]^225<<24)}this.state=o(i)},a.prototype.update=function(t){var e;for(this.cache=r.concat([this.cache,t]);this.cache.length>=16;)e=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(e)},a.prototype.final=function(t,e){return this.cache.length&&this.ghash(r.concat([this.cache,i],16)),this.ghash(o([0,t,0,e])),this.state},t.exports=a},function(t,e,n){var r=n(209),i=n(3).Buffer,o=n(122),a=n(210),s=n(31),u=n(79),c=n(80);function f(t,e,n){s.call(this),this._cache=new l,this._last=void 0,this._cipher=new u.AES(e),this._prev=i.from(n),this._mode=t,this._autopadding=!0}function l(){this.cache=i.allocUnsafe(0)}function h(t,e,n){var s=o[t.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof n&&(n=i.from(n)),"GCM"!==s.mode&&n.length!==s.iv)throw new TypeError("invalid iv length "+n.length);if("string"==typeof e&&(e=i.from(e)),e.length!==s.key/8)throw new TypeError("invalid key length "+e.length);return"stream"===s.type?new a(s.module,e,n,!0):"auth"===s.type?new r(s.module,e,n,!0):new f(s.module,e,n)}n(2)(f,s),f.prototype._update=function(t){var e,n;this._cache.add(t);for(var r=[];e=this._cache.get(this._autopadding);)n=this._mode.decrypt(this,e),r.push(n);return i.concat(r)},f.prototype._final=function(){var t=this._cache.flush();if(this._autopadding)return function(t){var e=t[15];if(e<1||e>16)throw new Error("unable to decrypt data");var n=-1;for(;++n16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e}else if(this.cache.length>=16)return e=this.cache.slice(0,16),this.cache=this.cache.slice(16),e;return null},l.prototype.flush=function(){if(this.cache.length)return this.cache},e.createDecipher=function(t,e){var n=o[t.toLowerCase()];if(!n)throw new TypeError("invalid suite type");var r=c(e,!1,n.key,n.iv);return h(t,r.key,r.iv)},e.createDecipheriv=h},function(t,e){e["des-ecb"]={key:8,iv:0},e["des-cbc"]=e.des={key:8,iv:8},e["des-ede3-cbc"]=e.des3={key:24,iv:8},e["des-ede3"]={key:24,iv:0},e["des-ede-cbc"]={key:16,iv:8},e["des-ede"]={key:16,iv:0}},function(t,e,n){(function(t){var r=n(211),i=n(459),o=n(460);var a={binary:!0,hex:!0,base64:!0};e.DiffieHellmanGroup=e.createDiffieHellmanGroup=e.getDiffieHellman=function(e){var n=new t(i[e].prime,"hex"),r=new t(i[e].gen,"hex");return new o(n,r)},e.createDiffieHellman=e.DiffieHellman=function e(n,i,s,u){return t.isBuffer(i)||void 0===a[i]?e(n,"binary",i,s):(i=i||"binary",u=u||"binary",s=s||new t([2]),t.isBuffer(s)||(s=new t(s,u)),"number"==typeof n?new o(r(n,s),s,!0):(t.isBuffer(n)||(n=new t(n,i)),new o(n,s,!0)))}}).call(this,n(8).Buffer)},function(t,e){},function(t,e){},function(t){t.exports=JSON.parse('{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}')},function(t,e,n){(function(e){var r=n(5),i=new(n(212)),o=new r(24),a=new r(11),s=new r(10),u=new r(3),c=new r(7),f=n(211),l=n(44);function h(t,n){return n=n||"utf8",e.isBuffer(t)||(t=new e(t,n)),this._pub=new r(t),this}function d(t,n){return n=n||"utf8",e.isBuffer(t)||(t=new e(t,n)),this._priv=new r(t),this}t.exports=g;var p={};function g(t,e,n){this.setGenerator(e),this.__prime=new r(t),this._prime=r.mont(this.__prime),this._primeLen=t.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,n?(this.setPublicKey=h,this.setPrivateKey=d):this._primeCode=8}function y(t,n){var r=new e(t.toArray());return n?r.toString(n):r}Object.defineProperty(g.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(t,e){var n=e.toString("hex"),r=[n,t.toString(16)].join("_");if(r in p)return p[r];var l,h=0;if(t.isEven()||!f.simpleSieve||!f.fermatTest(t)||!i.test(t))return h+=1,h+="02"===n||"05"===n?8:4,p[r]=h,h;switch(i.test(t.shrn(1))||(h+=2),n){case"02":t.mod(o).cmp(a)&&(h+=8);break;case"05":(l=t.mod(s)).cmp(u)&&l.cmp(c)&&(h+=8);break;default:h+=4}return p[r]=h,h}(this.__prime,this.__gen)),this._primeCode}}),g.prototype.generateKeys=function(){return this._priv||(this._priv=new r(l(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},g.prototype.computeSecret=function(t){var n=(t=(t=new r(t)).toRed(this._prime)).redPow(this._priv).fromRed(),i=new e(n.toArray()),o=this.getPrime();if(i.length0&&n.ishrn(r),n}function l(t,n,i){var o,a;do{for(o=new e(0);8*o.length","license":"MIT","bugs":{"url":"https://github.com/indutny/elliptic/issues"},"homepage":"https://github.com/indutny/elliptic","devDependencies":{"brfs":"^1.4.3","coveralls":"^3.0.4","grunt":"^1.0.4","grunt-browserify":"^5.0.0","grunt-cli":"^1.2.0","grunt-contrib-connect":"^1.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^1.0.1","grunt-mocha-istanbul":"^3.0.1","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.2","jscs":"^3.0.7","jshint":"^2.6.0","mocha":"^6.1.4"},"dependencies":{"bn.js":"^4.4.0","brorand":"^1.0.1","hash.js":"^1.0.0","hmac-drbg":"^1.0.0","inherits":"^2.0.1","minimalistic-assert":"^1.0.0","minimalistic-crypto-utils":"^1.0.0"}}')},function(t,e,n){"use strict";var r=n(16),i=n(5),o=n(2),a=n(81),s=r.assert;function u(t){a.call(this,"short",t),this.a=new i(t.a,16).toRed(this.red),this.b=new i(t.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(t),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function c(t,e,n,r){a.BasePoint.call(this,t,"affine"),null===e&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(e,16),this.y=new i(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function f(t,e,n,r){a.BasePoint.call(this,t,"jacobian"),null===e&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(e,16),this.y=new i(n,16),this.z=new i(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(u,a),t.exports=u,u.prototype._getEndomorphism=function(t){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var e,n;if(t.beta)e=new i(t.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);e=(e=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(t.lambda)n=new i(t.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(e))?n=o[0]:(n=o[1],s(0===this.g.mul(n).x.cmp(this.g.x.redMul(e))))}return{beta:e,lambda:n,basis:t.basis?t.basis.map((function(t){return{a:new i(t.a,16),b:new i(t.b,16)}})):this._getEndoBasis(n)}}},u.prototype._getEndoRoots=function(t){var e=t===this.p?this.red:i.mont(t),n=new i(2).toRed(e).redInvm(),r=n.redNeg(),o=new i(3).toRed(e).redNeg().redSqrt().redMul(n);return[r.redAdd(o).fromRed(),r.redSub(o).fromRed()]},u.prototype._getEndoBasis=function(t){for(var e,n,r,o,a,s,u,c,f,l=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=t,d=this.n.clone(),p=new i(1),g=new i(0),y=new i(0),b=new i(1),m=0;0!==h.cmpn(0);){var v=d.div(h);c=d.sub(v.mul(h)),f=y.sub(v.mul(p));var _=b.sub(v.mul(g));if(!r&&c.cmp(l)<0)e=u.neg(),n=p,r=c.neg(),o=f;else if(r&&2==++m)break;u=c,d=h,h=c,y=p,p=f,b=g,g=_}a=c.neg(),s=f;var w=r.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(w)>=0&&(a=e,s=n),r.negative&&(r=r.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:r,b:o},{a:a,b:s}]},u.prototype._endoSplit=function(t){var e=this.endo.basis,n=e[0],r=e[1],i=r.b.mul(t).divRound(this.n),o=n.b.neg().mul(t).divRound(this.n),a=i.mul(n.a),s=o.mul(r.a),u=i.mul(n.b),c=o.mul(r.b);return{k1:t.sub(a).sub(s),k2:u.add(c).neg()}},u.prototype.pointFromX=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var n=t.redSqr().redMul(t).redIAdd(t.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var o=r.fromRed().isOdd();return(e&&!o||!e&&o)&&(r=r.redNeg()),this.point(t,r)},u.prototype.validate=function(t){if(t.inf)return!0;var e=t.x,n=t.y,r=this.a.redMul(e),i=e.redSqr().redMul(e).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(i).cmpn(0)},u.prototype._endoWnafMulAdd=function(t,e,n){for(var r=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},c.prototype.isInfinity=function(){return this.inf},c.prototype.add=function(t){if(this.inf)return t;if(t.inf)return this;if(this.eq(t))return this.dbl();if(this.neg().eq(t))return this.curve.point(null,null);if(0===this.x.cmp(t.x))return this.curve.point(null,null);var e=this.y.redSub(t.y);0!==e.cmpn(0)&&(e=e.redMul(this.x.redSub(t.x).redInvm()));var n=e.redSqr().redISub(this.x).redISub(t.x),r=e.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},c.prototype.dbl=function(){if(this.inf)return this;var t=this.y.redAdd(this.y);if(0===t.cmpn(0))return this.curve.point(null,null);var e=this.curve.a,n=this.x.redSqr(),r=t.redInvm(),i=n.redAdd(n).redIAdd(n).redIAdd(e).redMul(r),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},c.prototype.getX=function(){return this.x.fromRed()},c.prototype.getY=function(){return this.y.fromRed()},c.prototype.mul=function(t){return t=new i(t,16),this.isInfinity()?this:this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve.endo?this.curve._endoWnafMulAdd([this],[t]):this.curve._wnafMul(this,t)},c.prototype.mulAdd=function(t,e,n){var r=[this,e],i=[t,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i):this.curve._wnafMulAdd(1,r,i,2)},c.prototype.jmulAdd=function(t,e,n){var r=[this,e],i=[t,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i,!0):this.curve._wnafMulAdd(1,r,i,2,!0)},c.prototype.eq=function(t){return this===t||this.inf===t.inf&&(this.inf||0===this.x.cmp(t.x)&&0===this.y.cmp(t.y))},c.prototype.neg=function(t){if(this.inf)return this;var e=this.curve.point(this.x,this.y.redNeg());if(t&&this.precomputed){var n=this.precomputed,r=function(t){return t.neg()};e.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return e},c.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(f,a.BasePoint),u.prototype.jpoint=function(t,e,n){return new f(this,t,e,n)},f.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var t=this.z.redInvm(),e=t.redSqr(),n=this.x.redMul(e),r=this.y.redMul(e).redMul(t);return this.curve.point(n,r)},f.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},f.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(e),i=t.x.redMul(n),o=this.y.redMul(e.redMul(t.z)),a=t.y.redMul(n.redMul(this.z)),s=r.redSub(i),u=o.redSub(a);if(0===s.cmpn(0))return 0!==u.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),f=c.redMul(s),l=r.redMul(c),h=u.redSqr().redIAdd(f).redISub(l).redISub(l),d=u.redMul(l.redISub(h)).redISub(o.redMul(f)),p=this.z.redMul(t.z).redMul(s);return this.curve.jpoint(h,d,p)},f.prototype.mixedAdd=function(t){if(this.isInfinity())return t.toJ();if(t.isInfinity())return this;var e=this.z.redSqr(),n=this.x,r=t.x.redMul(e),i=this.y,o=t.y.redMul(e).redMul(this.z),a=n.redSub(r),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=a.redSqr(),c=u.redMul(a),f=n.redMul(u),l=s.redSqr().redIAdd(c).redISub(f).redISub(f),h=s.redMul(f.redISub(l)).redISub(i.redMul(c)),d=this.z.redMul(a);return this.curve.jpoint(l,h,d)},f.prototype.dblp=function(t){if(0===t)return this;if(this.isInfinity())return this;if(!t)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var e=this,n=0;n=0)return!1;if(n.redIAdd(i),0===this.x.cmp(n))return!0}},f.prototype.inspect=function(){return this.isInfinity()?"":""},f.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(t,e,n){"use strict";var r=n(5),i=n(2),o=n(81),a=n(16);function s(t){o.call(this,"mont",t),this.a=new r(t.a,16).toRed(this.red),this.b=new r(t.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function u(t,e,n){o.BasePoint.call(this,t,"projective"),null===e&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(e,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),t.exports=s,s.prototype.validate=function(t){var e=t.normalize().x,n=e.redSqr(),r=n.redMul(e).redAdd(n.redMul(this.a)).redAdd(e);return 0===r.redSqrt().redSqr().cmp(r)},i(u,o.BasePoint),s.prototype.decodePoint=function(t,e){return this.point(a.toArray(t,e),1)},s.prototype.point=function(t,e){return new u(this,t,e)},s.prototype.pointFromJSON=function(t){return u.fromJSON(this,t)},u.prototype.precompute=function(){},u.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},u.fromJSON=function(t,e){return new u(t,e[0],e[1]||t.one)},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},u.prototype.dbl=function(){var t=this.x.redAdd(this.z).redSqr(),e=this.x.redSub(this.z).redSqr(),n=t.redSub(e),r=t.redMul(e),i=n.redMul(e.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,i)},u.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.diffAdd=function(t,e){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),i=t.x.redAdd(t.z),o=t.x.redSub(t.z).redMul(n),a=i.redMul(r),s=e.z.redMul(o.redAdd(a).redSqr()),u=e.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,u)},u.prototype.mul=function(t){for(var e=t.clone(),n=this,r=this.curve.point(null,null),i=[];0!==e.cmpn(0);e.iushrn(1))i.push(e.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},u.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},u.prototype.eq=function(t){return 0===this.getX().cmp(t.getX())},u.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(t,e,n){"use strict";var r=n(16),i=n(5),o=n(2),a=n(81),s=r.assert;function u(t){this.twisted=1!=(0|t.a),this.mOneA=this.twisted&&-1==(0|t.a),this.extended=this.mOneA,a.call(this,"edwards",t),this.a=new i(t.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(t.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(t.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|t.c)}function c(t,e,n,r,o){a.BasePoint.call(this,t,"projective"),null===e&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(e,16),this.y=new i(n,16),this.z=r?new i(r,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(u,a),t.exports=u,u.prototype._mulA=function(t){return this.mOneA?t.redNeg():this.a.redMul(t)},u.prototype._mulC=function(t){return this.oneC?t:this.c.redMul(t)},u.prototype.jpoint=function(t,e,n,r){return this.point(t,e,n,r)},u.prototype.pointFromX=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var n=t.redSqr(),r=this.c2.redSub(this.a.redMul(n)),o=this.one.redSub(this.c2.redMul(this.d).redMul(n)),a=r.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var u=s.fromRed().isOdd();return(e&&!u||!e&&u)&&(s=s.redNeg()),this.point(t,s)},u.prototype.pointFromY=function(t,e){(t=new i(t,16)).red||(t=t.toRed(this.red));var n=t.redSqr(),r=n.redSub(this.c2),o=n.redMul(this.d).redMul(this.c2).redSub(this.a),a=r.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(e)throw new Error("invalid point");return this.point(this.zero,t)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==e&&(s=s.redNeg()),this.point(s,t)},u.prototype.validate=function(t){if(t.isInfinity())return!0;t.normalize();var e=t.x.redSqr(),n=t.y.redSqr(),r=e.redMul(this.a).redAdd(n),i=this.c2.redMul(this.one.redAdd(this.d.redMul(e).redMul(n)));return 0===r.cmp(i)},o(c,a.BasePoint),u.prototype.pointFromJSON=function(t){return c.fromJSON(this,t)},u.prototype.point=function(t,e,n,r){return new c(this,t,e,n,r)},c.fromJSON=function(t,e){return new c(t,e[0],e[1],e[2])},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},c.prototype._extDbl=function(){var t=this.x.redSqr(),e=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(t),i=this.x.redAdd(this.y).redSqr().redISub(t).redISub(e),o=r.redAdd(e),a=o.redSub(n),s=r.redSub(e),u=i.redMul(a),c=o.redMul(s),f=i.redMul(s),l=a.redMul(o);return this.curve.point(u,c,l,f)},c.prototype._projDbl=function(){var t,e,n,r=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),o=this.y.redSqr();if(this.curve.twisted){var a=(c=this.curve._mulA(i)).redAdd(o);if(this.zOne)t=r.redSub(i).redSub(o).redMul(a.redSub(this.curve.two)),e=a.redMul(c.redSub(o)),n=a.redSqr().redSub(a).redSub(a);else{var s=this.z.redSqr(),u=a.redSub(s).redISub(s);t=r.redSub(i).redISub(o).redMul(u),e=a.redMul(c.redSub(o)),n=a.redMul(u)}}else{var c=i.redAdd(o);s=this.curve._mulC(this.z).redSqr(),u=c.redSub(s).redSub(s);t=this.curve._mulC(r.redISub(c)).redMul(u),e=this.curve._mulC(c).redMul(i.redISub(o)),n=c.redMul(u)}return this.curve.point(t,e,n)},c.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},c.prototype._extAdd=function(t){var e=this.y.redSub(this.x).redMul(t.y.redSub(t.x)),n=this.y.redAdd(this.x).redMul(t.y.redAdd(t.x)),r=this.t.redMul(this.curve.dd).redMul(t.t),i=this.z.redMul(t.z.redAdd(t.z)),o=n.redSub(e),a=i.redSub(r),s=i.redAdd(r),u=n.redAdd(e),c=o.redMul(a),f=s.redMul(u),l=o.redMul(u),h=a.redMul(s);return this.curve.point(c,f,h,l)},c.prototype._projAdd=function(t){var e,n,r=this.z.redMul(t.z),i=r.redSqr(),o=this.x.redMul(t.x),a=this.y.redMul(t.y),s=this.curve.d.redMul(o).redMul(a),u=i.redSub(s),c=i.redAdd(s),f=this.x.redAdd(this.y).redMul(t.x.redAdd(t.y)).redISub(o).redISub(a),l=r.redMul(u).redMul(f);return this.curve.twisted?(e=r.redMul(c).redMul(a.redSub(this.curve._mulA(o))),n=u.redMul(c)):(e=r.redMul(c).redMul(a.redSub(o)),n=this.curve._mulC(u).redMul(c)),this.curve.point(l,e,n)},c.prototype.add=function(t){return this.isInfinity()?t:t.isInfinity()?this:this.curve.extended?this._extAdd(t):this._projAdd(t)},c.prototype.mul=function(t){return this._hasDoubles(t)?this.curve._fixedNafMul(this,t):this.curve._wnafMul(this,t)},c.prototype.mulAdd=function(t,e,n){return this.curve._wnafMulAdd(1,[this,e],[t,n],2,!1)},c.prototype.jmulAdd=function(t,e,n){return this.curve._wnafMulAdd(1,[this,e],[t,n],2,!0)},c.prototype.normalize=function(){if(this.zOne)return this;var t=this.z.redInvm();return this.x=this.x.redMul(t),this.y=this.y.redMul(t),this.t&&(this.t=this.t.redMul(t)),this.z=this.curve.one,this.zOne=!0,this},c.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()},c.prototype.getY=function(){return this.normalize(),this.y.fromRed()},c.prototype.eq=function(t){return this===t||0===this.getX().cmp(t.getX())&&0===this.getY().cmp(t.getY())},c.prototype.eqXToP=function(t){var e=t.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(e))return!0;for(var n=t.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(e.redIAdd(r),0===this.x.cmp(e))return!0}},c.prototype.toP=c.prototype.normalize,c.prototype.mixedAdd=c.prototype.add},function(t,e,n){"use strict";e.sha1=n(468),e.sha224=n(469),e.sha256=n(216),e.sha384=n(470),e.sha512=n(217)},function(t,e,n){"use strict";var r=n(21),i=n(56),o=n(215),a=r.rotl32,s=r.sum32,u=r.sum32_5,c=o.ft_1,f=i.BlockHash,l=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;f.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(h,f),t.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(t,e){for(var n=this.W,r=0;r<16;r++)n[r]=t[e+r];for(;rthis.blockSize&&(t=(new this.Hash).update(t).digest()),i(t.length<=this.blockSize);for(var e=t.length;e0))return a.iaddn(1),this.keyFromPrivate(a)}},l.prototype._truncateToN=function(t,e){var n=8*t.byteLength()-this.n.bitLength();return n>0&&(t=t.ushrn(n)),!e&&t.cmp(this.n)>=0?t.sub(this.n):t},l.prototype.sign=function(t,e,n,o){"object"==typeof n&&(o=n,n=null),o||(o={}),e=this.keyFromPrivate(e,n),t=this._truncateToN(new r(t,16));for(var a=this.n.byteLength(),s=e.getPrivate().toArray("be",a),u=t.toArray("be",a),c=new i({hash:this.hash,entropy:s,nonce:u,pers:o.pers,persEnc:o.persEnc||"utf8"}),l=this.n.sub(new r(1)),h=0;;h++){var d=o.k?o.k(h):new r(c.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(l)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var g=p.getX(),y=g.umod(this.n);if(0!==y.cmpn(0)){var b=d.invm(this.n).mul(y.mul(e.getPrivate()).iadd(t));if(0!==(b=b.umod(this.n)).cmpn(0)){var m=(p.getY().isOdd()?1:0)|(0!==g.cmp(y)?2:0);return o.canonical&&b.cmp(this.nh)>0&&(b=this.n.sub(b),m^=1),new f({r:y,s:b,recoveryParam:m})}}}}}},l.prototype.verify=function(t,e,n,i){t=this._truncateToN(new r(t,16)),n=this.keyFromPublic(n,i);var o=(e=new f(e,"hex")).r,a=e.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,u=a.invm(this.n),c=u.mul(t).umod(this.n),l=u.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(c,n.getPublic(),l)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(c,n.getPublic(),l)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},l.prototype.recoverPubKey=function(t,e,n,i){u((3&n)===n,"The recovery param is more than two bits"),e=new f(e,i);var o=this.n,a=new r(t),s=e.r,c=e.s,l=1&n,h=n>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");s=h?this.curve.pointFromX(s.add(this.curve.n),l):this.curve.pointFromX(s,l);var d=e.r.invm(o),p=o.sub(a).mul(d).umod(o),g=c.mul(d).umod(o);return this.g.mulAdd(p,s,g)},l.prototype.getKeyRecoveryParam=function(t,e,n,r){if(null!==(e=new f(e,r)).recoveryParam)return e.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(t,e,i)}catch(t){continue}if(o.eq(n))return i}throw new Error("Unable to find valid recovery factor")}},function(t,e,n){"use strict";var r=n(127),i=n(213),o=n(15);function a(t){if(!(this instanceof a))return new a(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=i.toArray(t.entropy,t.entropyEnc||"hex"),n=i.toArray(t.nonce,t.nonceEnc||"hex"),r=i.toArray(t.pers,t.persEnc||"hex");o(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,n,r)}t.exports=a,a.prototype._init=function(t,e,n){var r=t.concat(e).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(n||[])),this._reseed=1},a.prototype.generate=function(t,e,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof e&&(r=n,n=e,e=null),n&&(n=i.toArray(n,r||"hex"),this._update(n));for(var o=[];o.length"}},function(t,e,n){"use strict";var r=n(5),i=n(16),o=i.assert;function a(t,e){if(t instanceof a)return t;this._importDER(t,e)||(o(t.r&&t.s,"Signature without r or s"),this.r=new r(t.r,16),this.s=new r(t.s,16),void 0===t.recoveryParam?this.recoveryParam=null:this.recoveryParam=t.recoveryParam)}function s(){this.place=0}function u(t,e){var n=t[e.place++];if(!(128&n))return n;for(var r=15&n,i=0,o=0,a=e.place;o>>3);for(t.push(128|n);--n;)t.push(e>>>(n<<3)&255);t.push(e)}}t.exports=a,a.prototype._importDER=function(t,e){t=i.toArray(t,e);var n=new s;if(48!==t[n.place++])return!1;if(u(t,n)+n.place!==t.length)return!1;if(2!==t[n.place++])return!1;var o=u(t,n),a=t.slice(n.place,o+n.place);if(n.place+=o,2!==t[n.place++])return!1;var c=u(t,n);if(t.length!==c+n.place)return!1;var f=t.slice(n.place,c+n.place);return 0===a[0]&&128&a[1]&&(a=a.slice(1)),0===f[0]&&128&f[1]&&(f=f.slice(1)),this.r=new r(a),this.s=new r(f),this.recoveryParam=null,!0},a.prototype.toDER=function(t){var e=this.r.toArray(),n=this.s.toArray();for(128&e[0]&&(e=[0].concat(e)),128&n[0]&&(n=[0].concat(n)),e=c(e),n=c(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];f(r,e.length),(r=r.concat(e)).push(2),f(r,n.length);var o=r.concat(n),a=[48];return f(a,o.length),a=a.concat(o),i.encode(a,t)}},function(t,e,n){"use strict";var r=n(127),i=n(126),o=n(16),a=o.assert,s=o.parseBytes,u=n(479),c=n(480);function f(t){if(a("ed25519"===t,"only tested with ed25519 so far"),!(this instanceof f))return new f(t);t=i[t].curve;this.curve=t,this.g=t.g,this.g.precompute(t.n.bitLength()+1),this.pointClass=t.point().constructor,this.encodingLength=Math.ceil(t.n.bitLength()/8),this.hash=r.sha512}t.exports=f,f.prototype.sign=function(t,e){t=s(t);var n=this.keyFromSecret(e),r=this.hashInt(n.messagePrefix(),t),i=this.g.mul(r),o=this.encodePoint(i),a=this.hashInt(o,n.pubBytes(),t).mul(n.priv()),u=r.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:u,Rencoded:o})},f.prototype.verify=function(t,e,n){t=s(t),e=this.makeSignature(e);var r=this.keyFromPublic(n),i=this.hashInt(e.Rencoded(),r.pubBytes(),t),o=this.g.mul(e.S());return e.R().add(r.pub().mul(i)).eq(o)},f.prototype.hashInt=function(){for(var t=this.hash(),e=0;e=e)throw new Error("invalid sig")}t.exports=function(t,n,u,c,f){var l=o(u);if("ec"===l.type){if("ecdsa"!==c&&"ecdsa/rsa"!==c)throw new Error("wrong public key type");return function(t,e,n){var r=a[n.data.algorithm.curve.join(".")];if(!r)throw new Error("unknown curve "+n.data.algorithm.curve.join("."));var o=new i(r),s=n.data.subjectPrivateKey.data;return o.verify(e,t,s)}(t,n,l)}if("dsa"===l.type){if("dsa"!==c)throw new Error("wrong public key type");return function(t,e,n){var i=n.data.p,a=n.data.q,u=n.data.g,c=n.data.pub_key,f=o.signature.decode(t,"der"),l=f.s,h=f.r;s(l,a),s(h,a);var d=r.mont(i),p=l.invm(a);return 0===u.toRed(d).redPow(new r(e).mul(p).mod(a)).fromRed().mul(c.toRed(d).redPow(h.mul(p).mod(a)).fromRed()).mod(i).mod(a).cmp(h)}(t,n,l)}if("rsa"!==c&&"ecdsa/rsa"!==c)throw new Error("wrong public key type");n=e.concat([f,n]);for(var h=l.modulus.byteLength(),d=[1],p=0;n.length+d.length+2n-h-2)throw new Error("message too long");var d=l.alloc(n-r-h-2),p=n-f-1,g=i(f),y=s(l.concat([c,d,l.alloc(1,1),e],p),a(g,p)),b=s(g,a(y,f));return new u(l.concat([l.alloc(1),b,y],n))}(p,e);else if(1===h)d=function(t,e,n){var r,o=e.length,a=t.modulus.byteLength();if(o>a-11)throw new Error("message too long");r=n?l.alloc(a-o-3,255):function(t){var e,n=l.allocUnsafe(t),r=0,o=i(2*t),a=0;for(;r=0)throw new Error("data too long for modulus")}return n?f(d,p):c(d,p)}},function(t,e,n){var r=n(82),i=n(223),o=n(224),a=n(5),s=n(124),u=n(53),c=n(225),f=n(3).Buffer;t.exports=function(t,e,n){var l;l=t.padding?t.padding:n?1:4;var h,d=r(t),p=d.modulus.byteLength();if(e.length>p||new a(e).cmp(d.modulus)>=0)throw new Error("decryption error");h=n?c(new a(e),d):s(e,d);var g=f.alloc(p-h.length);if(h=f.concat([g,h],p),4===l)return function(t,e){var n=t.modulus.byteLength(),r=u("sha1").update(f.alloc(0)).digest(),a=r.length;if(0!==e[0])throw new Error("decryption error");var s=e.slice(1,a+1),c=e.slice(a+1),l=o(s,i(c,a)),h=o(c,i(l,n-a-1));if(function(t,e){t=f.from(t),e=f.from(e);var n=0,r=t.length;t.length!==e.length&&(n++,r=Math.min(t.length,e.length));var i=-1;for(;++i=e.length){o++;break}var a=e.slice(2,i-1);("0002"!==r.toString("hex")&&!n||"0001"!==r.toString("hex")&&n)&&o++;a.length<8&&o++;if(o)throw new Error("decryption error");return e.slice(i)}(0,h,n);if(3===l)return h;throw new Error("unknown padding")}},function(t,e,n){"use strict";(function(t,r){function i(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var o=n(3),a=n(44),s=o.Buffer,u=o.kMaxLength,c=t.crypto||t.msCrypto,f=Math.pow(2,32)-1;function l(t,e){if("number"!=typeof t||t!=t)throw new TypeError("offset must be a number");if(t>f||t<0)throw new TypeError("offset must be a uint32");if(t>u||t>e)throw new RangeError("offset out of range")}function h(t,e,n){if("number"!=typeof t||t!=t)throw new TypeError("size must be a number");if(t>f||t<0)throw new TypeError("size must be a uint32");if(t+e>n||t>u)throw new RangeError("buffer too small")}function d(t,e,n,i){if(r.browser){var o=t.buffer,s=new Uint8Array(o,e,n);return c.getRandomValues(s),i?void r.nextTick((function(){i(null,t)})):t}if(!i)return a(n).copy(t,e),t;a(n,(function(n,r){if(n)return i(n);r.copy(t,e),i(null,t)}))}c&&c.getRandomValues||!r.browser?(e.randomFill=function(e,n,r,i){if(!(s.isBuffer(e)||e instanceof t.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof n)i=n,n=0,r=e.length;else if("function"==typeof r)i=r,r=e.length-n;else if("function"!=typeof i)throw new TypeError('"cb" argument must be a function');return l(n,e.length),h(r,n,e.length),d(e,n,r,i)},e.randomFillSync=function(e,n,r){void 0===n&&(n=0);if(!(s.isBuffer(e)||e instanceof t.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');l(n,e.length),void 0===r&&(r=e.length-n);return h(r,n,e.length),d(e,n,r)}):(e.randomFill=i,e.randomFillSync=i)}).call(this,n(11),n(7))},function(t,e,n){var r={"./dark/index.scss":501,"./default/index.scss":503,"./forest/index.scss":505,"./neutral/index.scss":507};function i(t){var e=o(t);return n(e)}function o(t){if(!n.o(r,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return r[t]}i.keys=function(){return Object.keys(r)},i.resolve=o,t.exports=i,i.id=500},function(t,e,n){var r=n(502);t.exports="string"==typeof r?r:r.toString()},function(t,e,n){(t.exports=n(83)(!1)).push([t.i,".label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.label text{fill:#333}.node rect,.node circle,.node ellipse,.node polygon{fill:#BDD5EA;stroke:purple;stroke-width:1px}.node .label{text-align:center}.node.clickable{cursor:pointer}.arrowheadPath{fill:#d3d3d3}.edgePath .path{stroke:#d3d3d3;stroke-width:1.5px}.edgeLabel{background-color:#e8e8e8;text-align:center}.cluster rect{fill:#6D6D65;stroke:rgba(255,255,255,0.25);stroke-width:1px}.cluster text{fill:#F9FFFE}div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#6D6D65;border:1px solid rgba(255,255,255,0.25);border-radius:2px;pointer-events:none;z-index:100}.actor{stroke:#81B1DB;fill:#BDD5EA}text.actor{fill:#000;stroke:none}.actor-line{stroke:#d3d3d3}.messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#d3d3d3}.messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#d3d3d3}#arrowhead{fill:#d3d3d3}.sequenceNumber{fill:#fff}#sequencenumber{fill:#d3d3d3}#crosshead path{fill:#d3d3d3 !important;stroke:#d3d3d3 !important}.messageText{fill:#d3d3d3;stroke:none}.labelBox{stroke:#81B1DB;fill:#BDD5EA}.labelText{fill:#323D47;stroke:none}.loopText{fill:#d3d3d3;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#81B1DB}.note{stroke:rgba(255,255,255,0.25);fill:#fff5ad}.noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.activation0{fill:#f4f4f4;stroke:#666}.activation1{fill:#f4f4f4;stroke:#666}.activation2{fill:#f4f4f4;stroke:#666}.mermaid-main-font{font-family:\"trebuchet ms\", verdana, arial;font-family:var(--mermaid-font-family)}.section{stroke:none;opacity:0.2}.section0{fill:rgba(255,255,255,0.3)}.section2{fill:#EAE8B9}.section1,.section3{fill:#fff;opacity:0.2}.sectionTitle0{fill:#F9FFFE}.sectionTitle1{fill:#F9FFFE}.sectionTitle2{fill:#F9FFFE}.sectionTitle3{fill:#F9FFFE}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid .tick{stroke:#d3d3d3;opacity:0.3;shape-rendering:crispEdges}.grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid path{stroke-width:0}.today{fill:none;stroke:#DB5757;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskText:not([font-size]){font-size:11px}.taskTextOutsideRight{fill:#323D47;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskTextOutsideLeft{fill:#323D47;text-anchor:end;font-size:11px}.task.clickable{cursor:pointer}.taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskText0,.taskText1,.taskText2,.taskText3{fill:#323D47}.task0,.task1,.task2,.task3{fill:#BDD5EA;stroke:rgba(255,255,255,0.5)}.taskTextOutside0,.taskTextOutside2{fill:#d3d3d3}.taskTextOutside1,.taskTextOutside3{fill:#d3d3d3}.active0,.active1,.active2,.active3{fill:#81B1DB;stroke:rgba(255,255,255,0.5)}.activeText0,.activeText1,.activeText2,.activeText3{fill:#323D47 !important}.done0,.done1,.done2,.done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#323D47 !important}.crit0,.crit1,.crit2,.crit3{stroke:#E83737;fill:#E83737;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#E83737;fill:#81B1DB;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#E83737;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.milestone{transform:rotate(45deg) scale(0.8, 0.8)}.milestoneText{font-style:italic}.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#323D47 !important}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3{fill:#323D47 !important}.titleText{text-anchor:middle;font-size:18px;fill:#323D47;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.classGroup text{fill:purple;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}g.classGroup text .title{font-weight:bolder}g.classGroup rect{fill:#BDD5EA;stroke:purple}g.classGroup line{stroke:purple;stroke-width:1}.classLabel .box{stroke:none;stroke-width:0;fill:#BDD5EA;opacity:0.5}.classLabel .label{fill:purple;font-size:10px}.relation{stroke:purple;stroke-width:1;fill:none}#compositionStart{fill:purple;stroke:purple;stroke-width:1}#compositionEnd{fill:purple;stroke:purple;stroke-width:1}#aggregationStart{fill:#BDD5EA;stroke:purple;stroke-width:1}#aggregationEnd{fill:#BDD5EA;stroke:purple;stroke-width:1}#dependencyStart{fill:purple;stroke:purple;stroke-width:1}#dependencyEnd{fill:purple;stroke:purple;stroke-width:1}#extensionStart{fill:purple;stroke:purple;stroke-width:1}#extensionEnd{fill:purple;stroke:purple;stroke-width:1}.commit-id,.commit-msg,.branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.pieTitleText{text-anchor:middle;font-size:25px;fill:#323D47;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:purple;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:purple;stroke:none;font-size:10px}g.stateGroup .state-title{font-weight:bolder;fill:#000}g.stateGroup rect{fill:#BDD5EA;stroke:purple}g.stateGroup line{stroke:purple;stroke-width:1}.transition{stroke:purple;stroke-width:1;fill:none}.stateGroup .composit{fill:white;border-bottom:1px}.state-note{stroke:rgba(255,255,255,0.25);fill:#fff5ad}.state-note text{fill:black;stroke:none;font-size:10px}.stateLabel .box{stroke:none;stroke-width:0;fill:#BDD5EA;opacity:0.5}.stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}:root{--mermaid-font-family: '\"trebuchet ms\", verdana, arial';--mermaid-font-family: \"Comic Sans MS\", \"Comic Sans\", cursive}\n",""])},function(t,e,n){var r=n(504);t.exports="string"==typeof r?r:r.toString()},function(t,e,n){(t.exports=n(83)(!1)).push([t.i,".label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.label text{fill:#333}.node rect,.node circle,.node ellipse,.node polygon{fill:#ECECFF;stroke:#9370db;stroke-width:1px}.node .label{text-align:center}.node.clickable{cursor:pointer}.arrowheadPath{fill:#333}.edgePath .path{stroke:#333;stroke-width:1.5px}.edgeLabel{background-color:#e8e8e8;text-align:center}.cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}.cluster text{fill:#333}div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}.actor{stroke:#ccf;fill:#ECECFF}text.actor{fill:#000;stroke:none}.actor-line{stroke:grey}.messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}.messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}#arrowhead{fill:#333}.sequenceNumber{fill:#fff}#sequencenumber{fill:#333}#crosshead path{fill:#333 !important;stroke:#333 !important}.messageText{fill:#333;stroke:none}.labelBox{stroke:#ccf;fill:#ECECFF}.labelText{fill:#000;stroke:none}.loopText{fill:#000;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#ccf}.note{stroke:#aa3;fill:#fff5ad}.noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.activation0{fill:#f4f4f4;stroke:#666}.activation1{fill:#f4f4f4;stroke:#666}.activation2{fill:#f4f4f4;stroke:#666}.mermaid-main-font{font-family:\"trebuchet ms\", verdana, arial;font-family:var(--mermaid-font-family)}.section{stroke:none;opacity:0.2}.section0{fill:rgba(102,102,255,0.49)}.section2{fill:#fff400}.section1,.section3{fill:#fff;opacity:0.2}.sectionTitle0{fill:#333}.sectionTitle1{fill:#333}.sectionTitle2{fill:#333}.sectionTitle3{fill:#333}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid .tick{stroke:#d3d3d3;opacity:0.3;shape-rendering:crispEdges}.grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid path{stroke-width:0}.today{fill:none;stroke:red;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskText:not([font-size]){font-size:11px}.taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}.task.clickable{cursor:pointer}.taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskText0,.taskText1,.taskText2,.taskText3{fill:#fff}.task0,.task1,.task2,.task3{fill:#8a90dd;stroke:#534fbc}.taskTextOutside0,.taskTextOutside2{fill:#000}.taskTextOutside1,.taskTextOutside3{fill:#000}.active0,.active1,.active2,.active3{fill:#bfc7ff;stroke:#534fbc}.activeText0,.activeText1,.activeText2,.activeText3{fill:#000 !important}.done0,.done1,.done2,.done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#000 !important}.crit0,.crit1,.crit2,.crit3{stroke:#f88;fill:red;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.milestone{transform:rotate(45deg) scale(0.8, 0.8)}.milestoneText{font-style:italic}.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#000 !important}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3{fill:#000 !important}.titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}g.classGroup text .title{font-weight:bolder}g.classGroup rect{fill:#ECECFF;stroke:#9370db}g.classGroup line{stroke:#9370db;stroke-width:1}.classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}.classLabel .label{fill:#9370db;font-size:10px}.relation{stroke:#9370db;stroke-width:1;fill:none}#compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}.commit-id,.commit-msg,.branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#9370db;stroke:none;font-size:10px}g.stateGroup .state-title{font-weight:bolder;fill:#000}g.stateGroup rect{fill:#ECECFF;stroke:#9370db}g.stateGroup line{stroke:#9370db;stroke-width:1}.transition{stroke:#9370db;stroke-width:1;fill:none}.stateGroup .composit{fill:white;border-bottom:1px}.state-note{stroke:#aa3;fill:#fff5ad}.state-note text{fill:black;stroke:none;font-size:10px}.stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}.stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}:root{--mermaid-font-family: '\"trebuchet ms\", verdana, arial';--mermaid-font-family: \"Comic Sans MS\", \"Comic Sans\", cursive}\n",""])},function(t,e,n){var r=n(506);t.exports="string"==typeof r?r:r.toString()},function(t,e,n){(t.exports=n(83)(!1)).push([t.i,".label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.label text{fill:#333}.node rect,.node circle,.node ellipse,.node polygon{fill:#cde498;stroke:#13540c;stroke-width:1px}.node .label{text-align:center}.node.clickable{cursor:pointer}.arrowheadPath{fill:green}.edgePath .path{stroke:green;stroke-width:1.5px}.edgeLabel{background-color:#e8e8e8;text-align:center}.cluster rect{fill:#cdffb2;stroke:#6eaa49;stroke-width:1px}.cluster text{fill:#333}div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#cdffb2;border:1px solid #6eaa49;border-radius:2px;pointer-events:none;z-index:100}.actor{stroke:#13540c;fill:#cde498}text.actor{fill:#000;stroke:none}.actor-line{stroke:grey}.messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}.messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}#arrowhead{fill:#333}.sequenceNumber{fill:#fff}#sequencenumber{fill:#333}#crosshead path{fill:#333 !important;stroke:#333 !important}.messageText{fill:#333;stroke:none}.labelBox{stroke:#326932;fill:#cde498}.labelText{fill:#000;stroke:none}.loopText{fill:#000;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#326932}.note{stroke:#6eaa49;fill:#fff5ad}.noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.activation0{fill:#f4f4f4;stroke:#666}.activation1{fill:#f4f4f4;stroke:#666}.activation2{fill:#f4f4f4;stroke:#666}.mermaid-main-font{font-family:\"trebuchet ms\", verdana, arial;font-family:var(--mermaid-font-family)}.section{stroke:none;opacity:0.2}.section0{fill:#6eaa49}.section2{fill:#6eaa49}.section1,.section3{fill:#fff;opacity:0.2}.sectionTitle0{fill:#333}.sectionTitle1{fill:#333}.sectionTitle2{fill:#333}.sectionTitle3{fill:#333}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid .tick{stroke:#d3d3d3;opacity:0.3;shape-rendering:crispEdges}.grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid path{stroke-width:0}.today{fill:none;stroke:red;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskText:not([font-size]){font-size:11px}.taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}.task.clickable{cursor:pointer}.taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskText0,.taskText1,.taskText2,.taskText3{fill:#fff}.task0,.task1,.task2,.task3{fill:#487e3a;stroke:#13540c}.taskTextOutside0,.taskTextOutside2{fill:#000}.taskTextOutside1,.taskTextOutside3{fill:#000}.active0,.active1,.active2,.active3{fill:#cde498;stroke:#13540c}.activeText0,.activeText1,.activeText2,.activeText3{fill:#000 !important}.done0,.done1,.done2,.done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#000 !important}.crit0,.crit1,.crit2,.crit3{stroke:#f88;fill:red;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#f88;fill:#cde498;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.milestone{transform:rotate(45deg) scale(0.8, 0.8)}.milestoneText{font-style:italic}.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#000 !important}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3{fill:#000 !important}.titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.classGroup text{fill:#13540c;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}g.classGroup text .title{font-weight:bolder}g.classGroup rect{fill:#cde498;stroke:#13540c}g.classGroup line{stroke:#13540c;stroke-width:1}.classLabel .box{stroke:none;stroke-width:0;fill:#cde498;opacity:0.5}.classLabel .label{fill:#13540c;font-size:10px}.relation{stroke:#13540c;stroke-width:1;fill:none}#compositionStart{fill:#13540c;stroke:#13540c;stroke-width:1}#compositionEnd{fill:#13540c;stroke:#13540c;stroke-width:1}#aggregationStart{fill:#cde498;stroke:#13540c;stroke-width:1}#aggregationEnd{fill:#cde498;stroke:#13540c;stroke-width:1}#dependencyStart{fill:#13540c;stroke:#13540c;stroke-width:1}#dependencyEnd{fill:#13540c;stroke:#13540c;stroke-width:1}#extensionStart{fill:#13540c;stroke:#13540c;stroke-width:1}#extensionEnd{fill:#13540c;stroke:#13540c;stroke-width:1}.commit-id,.commit-msg,.branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#13540c;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#13540c;stroke:none;font-size:10px}g.stateGroup .state-title{font-weight:bolder;fill:#000}g.stateGroup rect{fill:#cde498;stroke:#13540c}g.stateGroup line{stroke:#13540c;stroke-width:1}.transition{stroke:#13540c;stroke-width:1;fill:none}.stateGroup .composit{fill:white;border-bottom:1px}.state-note{stroke:#6eaa49;fill:#fff5ad}.state-note text{fill:black;stroke:none;font-size:10px}.stateLabel .box{stroke:none;stroke-width:0;fill:#cde498;opacity:0.5}.stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}:root{--mermaid-font-family: '\"trebuchet ms\", verdana, arial';--mermaid-font-family: \"Comic Sans MS\", \"Comic Sans\", cursive}\n",""])},function(t,e,n){var r=n(508);t.exports="string"==typeof r?r:r.toString()},function(t,e,n){(t.exports=n(83)(!1)).push([t.i,".label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);color:#333}.label text{fill:#333}.node rect,.node circle,.node ellipse,.node polygon{fill:#eee;stroke:#999;stroke-width:1px}.node .label{text-align:center}.node.clickable{cursor:pointer}.arrowheadPath{fill:#333}.edgePath .path{stroke:#666;stroke-width:1.5px}.edgeLabel{background-color:#fff;text-align:center}.cluster rect{fill:#eaf2fb;stroke:#26a;stroke-width:1px}.cluster text{fill:#333}div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#eaf2fb;border:1px solid #26a;border-radius:2px;pointer-events:none;z-index:100}.actor{stroke:#999;fill:#eee}text.actor{fill:#333;stroke:none}.actor-line{stroke:#666}.messageLine0{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}.messageLine1{stroke-width:1.5;stroke-dasharray:'2 2';stroke:#333}#arrowhead{fill:#333}.sequenceNumber{fill:#fff}#sequencenumber{fill:#333}#crosshead path{fill:#333 !important;stroke:#333 !important}.messageText{fill:#333;stroke:none}.labelBox{stroke:#999;fill:#eee}.labelText{fill:#333;stroke:none}.loopText{fill:#333;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:'2 2';stroke:#999}.note{stroke:#770;fill:#ffa}.noteText{fill:black;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:14px}.activation0{fill:#f4f4f4;stroke:#666}.activation1{fill:#f4f4f4;stroke:#666}.activation2{fill:#f4f4f4;stroke:#666}.mermaid-main-font{font-family:\"trebuchet ms\", verdana, arial;font-family:var(--mermaid-font-family)}.section{stroke:none;opacity:0.2}.section0{fill:#80b3e6}.section2{fill:#80b3e6}.section1,.section3{fill:#fff;opacity:0.2}.sectionTitle0{fill:#333}.sectionTitle1{fill:#333}.sectionTitle2{fill:#333}.sectionTitle3{fill:#333}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid .tick{stroke:#e6e6e6;opacity:0.3;shape-rendering:crispEdges}.grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.grid path{stroke-width:0}.today{fill:none;stroke:#d42;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskText:not([font-size]){font-size:11px}.taskTextOutsideRight{fill:#333;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.taskTextOutsideLeft{fill:#333;text-anchor:end;font-size:11px}.task.clickable{cursor:pointer}.taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}.taskText0,.taskText1,.taskText2,.taskText3{fill:#fff}.task0,.task1,.task2,.task3{fill:#26a;stroke:#1a4d80}.taskTextOutside0,.taskTextOutside2{fill:#333}.taskTextOutside1,.taskTextOutside3{fill:#333}.active0,.active1,.active2,.active3{fill:#eee;stroke:#1a4d80}.activeText0,.activeText1,.activeText2,.activeText3{fill:#333 !important}.done0,.done1,.done2,.done3{stroke:#666;fill:#bbb;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#333 !important}.crit0,.crit1,.crit2,.crit3{stroke:#b1361b;fill:#d42;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#b1361b;fill:#eee;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#b1361b;fill:#bbb;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.milestone{transform:rotate(45deg) scale(0.8, 0.8)}.milestoneText{font-style:italic}.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#333 !important}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3{fill:#333 !important}.titleText{text-anchor:middle;font-size:18px;fill:#333;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.classGroup text{fill:#999;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}g.classGroup text .title{font-weight:bolder}g.classGroup rect{fill:#eee;stroke:#999}g.classGroup line{stroke:#999;stroke-width:1}.classLabel .box{stroke:none;stroke-width:0;fill:#eee;opacity:0.5}.classLabel .label{fill:#999;font-size:10px}.relation{stroke:#999;stroke-width:1;fill:none}#compositionStart{fill:#999;stroke:#999;stroke-width:1}#compositionEnd{fill:#999;stroke:#999;stroke-width:1}#aggregationStart{fill:#eee;stroke:#999;stroke-width:1}#aggregationEnd{fill:#eee;stroke:#999;stroke-width:1}#dependencyStart{fill:#999;stroke:#999;stroke-width:1}#dependencyEnd{fill:#999;stroke:#999;stroke-width:1}#extensionStart{fill:#999;stroke:#999;stroke-width:1}#extensionEnd{fill:#999;stroke:#999;stroke-width:1}.commit-id,.commit-msg,.branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.pieTitleText{text-anchor:middle;font-size:25px;fill:#333;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}.slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#999;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}g.stateGroup text{fill:#999;stroke:none;font-size:10px}g.stateGroup .state-title{font-weight:bolder;fill:#000}g.stateGroup rect{fill:#eee;stroke:#999}g.stateGroup line{stroke:#999;stroke-width:1}.transition{stroke:#999;stroke-width:1;fill:none}.stateGroup .composit{fill:white;border-bottom:1px}.state-note{stroke:#770;fill:#ffa}.state-note text{fill:black;stroke:none;font-size:10px}.stateLabel .box{stroke:none;stroke-width:0;fill:#eee;opacity:0.5}.stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}:root{--mermaid-font-family: '\"trebuchet ms\", verdana, arial';--mermaid-font-family: \"Comic Sans MS\", \"Comic Sans\", cursive}\n",""])},function(t,e,n){"use strict";n.r(e);var r=n(226),i=n.n(r),o=n(0),a=n(227),s=n.n(a),u=n(88);let c={};const f=t=>{!function(t){const e=Object.keys(t);for(let n=0;nc;var h=n(23),d=n.n(h);const p=1,g=2,y=3,b=4,m=5,v={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{},fatal:()=>{}},_=function(t){v.debug=()=>{},v.info=()=>{},v.warn=()=>{},v.error=()=>{},v.fatal=()=>{},t<=m&&(v.fatal=console.log.bind(console,"",w("FATAL"))),t<=b&&(v.error=console.log.bind(console,"",w("ERROR"))),t<=y&&(v.warn=console.log.bind(console,"",w("WARN"))),t<=g&&(v.info=console.log.bind(console,"",w("INFO"))),t<=p&&(v.debug=console.log.bind(console,"",w("DEBUG")))},w=t=>{return`${d()().format("HH:mm:ss.SSS")} : ${t} : `},x=(t,e)=>{if(!t)return e;const n=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return o[n]||e},k=(t,e)=>t&&e?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):0;var E={detectType:function(t){return t=t.replace(/^\s*%%.*\n/g,"\n"),v.debug("Detecting diagram type based on the text "+t),t.match(/^\s*sequenceDiagram/)?"sequence":t.match(/^\s*gantt/)?"gantt":t.match(/^\s*classDiagram/)?"class":t.match(/^\s*stateDiagram/)?"state":t.match(/^\s*gitGraph/)?"git":t.match(/^\s*info/)?"info":t.match(/^\s*pie/)?"pie":"flowchart"},isSubstringInArray:function(t,e){for(let n=0;n{return(t=>{let e,n=0;t.forEach(t=>{n+=k(t,e),e=t});let r,i=n/2;return e=void 0,t.forEach(t=>{if(e&&!r){const n=k(t,e);if(n=1&&(r={x:t.x,y:t.y}),o>0&&o<1&&(r={x:(1-o)*e.x+o*t.x,y:(1-o)*e.y+o*t.y})}}e=t}),r})(t)},calcCardinalityPosition:(t,e,n)=>{let r,i=0;e[0]!==n&&(e=e.reverse()),e.forEach(t=>{i+=k(t,r),r=t});let o,a=25;r=void 0,e.forEach(t=>{if(r&&!o){const e=k(t,r);if(e=1&&(o={x:t.x,y:t.y}),n>0&&n<1&&(o={x:(1-n)*r.x+n*t.x,y:(1-n)*r.y+n*t.y})}}r=t});let s=t?10:5,u=Math.atan2(e[0].y-o.y,e[0].x-o.x),c={x:0,y:0};return c.x=Math.sin(u)*s+(e[0].x+o.x)/2,c.y=-Math.cos(u)*s+(e[0].y+o.y)/2,c}},A=n(22),S=n.n(A),T=n(84);const M=l();let D,C={},O=[],R=[],I=[],N={},B={},L=0,P=!0,F=[];const q=t=>{let e=t;return"loose"!==M.securityLevel&&(e=(e=(e=(e=(e=e.replace(/
    /g,"#br#")).replace(//g,"#br#")).replace(//g,">")).replace(/=/g,"=")).replace(/#br#/g,"
    ")),e},j=function(t,e){t.split(",").forEach((function(t){let n=t;t[0].match(/\d/)&&(n=""+n),void 0!==C[n]&&C[n].classes.push(e),void 0!==N[n]&&N[n].classes.push(e)}))},U=function(t,e){t.split(",").forEach((function(t){void 0!==e&&(B[t]=q(e))}))},z=function(t){let e=o.select(".mermaidTooltip");null===(e._groups||e)[0][0]&&(e=o.select("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),o.select(t).select("svg").selectAll("g.node").on("mouseover",(function(){const t=o.select(this);if(null===t.attr("title"))return;const n=this.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.html(t.attr("title")).style("left",n.left+(n.right-n.left)/2+"px").style("top",n.top-14+document.body.scrollTop+"px"),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),o.select(this).classed("hover",!1)}))};F.push(z);const Y=function(t){for(let e=0;e2e3)return;if(H[V]=e,I[e].id===t)return{result:!0,count:0};let r=0,i=1;for(;r=0){const n=$(t,e);if(n.result)return{result:!0,count:i+n.count};i+=n.count}r+=1}return{result:!1,count:i}};var G={addVertex:function(t,e,n,r,i){let o,a=t;void 0!==a&&0!==a.trim().length&&(a[0].match(/\d/)&&(a=""+a),void 0===C[a]&&(C[a]={id:a,styles:[],classes:[]}),void 0!==e?('"'===(o=q(e.trim()))[0]&&'"'===o[o.length-1]&&(o=o.substring(1,o.length-1)),C[a].text=o):C[a].text||(C[a].text=t),void 0!==n&&(C[a].type=n),null!=r&&r.forEach((function(t){C[a].styles.push(t)})),null!=i&&i.forEach((function(t){C[a].classes.push(t)})))},addLink:function(t,e,n,r){let i=t,o=e;i[0].match(/\d/)&&(i=""+i),o[0].match(/\d/)&&(o=""+o),v.info("Got edge...",i,o);const a={start:i,end:o,type:void 0,text:""};void 0!==(r=n.text)&&(a.text=q(r.trim()),'"'===a.text[0]&&'"'===a.text[a.text.length-1]&&(a.text=a.text.substring(1,a.text.length-1))),void 0!==n&&(a.type=n.type,a.stroke=n.stroke),O.push(a)},updateLinkInterpolate:function(t,e){t.forEach((function(t){"default"===t?O.defaultInterpolate=e:O[t].interpolate=e}))},updateLink:function(t,e){t.forEach((function(t){"default"===t?O.defaultStyle=e:(-1===E.isSubstringInArray("fill",e)&&e.push("fill:none"),O[t].style=e)}))},addClass:function(t,e){void 0===R[t]&&(R[t]={id:t,styles:[]}),null!=e&&e.forEach((function(e){R[t].styles.push(e)}))},setDirection:function(t){(D=t).match(/.*/)&&(D="LR"),D.match(/.*v/)&&(D="TB")},setClass:j,getTooltip:function(t){return B[t]},setClickEvent:function(t,e,n){t.split(",").forEach((function(t){!function(t,e){let n=t;t[0].match(/\d/)&&(n=""+n),"loose"===M.securityLevel&&void 0!==e&&void 0!==C[n]&&F.push((function(){const t=document.querySelector(`[id="${n}"]`);null!==t&&t.addEventListener("click",(function(){window[e](n)}),!1)}))}(t,e)})),U(t,n),j(t,"clickable")},setLink:function(t,e,n){t.split(",").forEach((function(t){let n=t;t[0].match(/\d/)&&(n=""+n),void 0!==C[n]&&("loose"!==M.securityLevel?C[n].link=Object(T.sanitizeUrl)(e):C[n].link=e)})),U(t,n),j(t,"clickable")},bindFunctions:function(t){F.forEach((function(e){e(t)}))},getDirection:function(){return D.trim()},getVertices:function(){return C},getEdges:function(){return O},getClasses:function(){return R},clear:function(){C={},R={},O=[],(F=[]).push(z),I=[],N={},L=0,B=[],P=!0},defaultStyle:function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},addSubGraph:function(t,e,n){let r=t,i=n;t===n&&n.match(/\s/)&&(r=void 0);let o=[];o=function(t){const e={boolean:{},number:{},string:{}},n=[];return t.filter((function(t){const r=typeof t;return""!==t.trim()&&(r in e?!e[r].hasOwnProperty(t)&&(e[r][t]=!0):!(n.indexOf(t)>=0)&&n.push(t))}))}(o.concat.apply(o,e));for(let t=0;t0&&$("none",I.length-1,0)},getSubGraphs:function(){return I},lex:{firstGraph:()=>!!P&&(P=!1,!0)}},W=n(60),K=n.n(W),X=n(17),Z=n.n(X),J=n(128),Q=n.n(J);function tt(t,e,n){const r=.9*(e.width+e.height),i=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}],o=ut(t,r,r,i);return n.intersect=function(t){return Z.a.intersect.polygon(n,i,t)},o}function et(t,e,n){const r=e.height,i=r/4,o=e.width+2*i,a=[{x:i,y:0},{x:o-i,y:0},{x:o,y:-r/2},{x:o-i,y:-r},{x:i,y:-r},{x:0,y:-r/2}],s=ut(t,o,r,a);return n.intersect=function(t){return Z.a.intersect.polygon(n,a,t)},s}function nt(t,e,n){const r=e.width,i=e.height,o=[{x:-i/2,y:0},{x:r,y:0},{x:r,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function rt(t,e,n){const r=e.width,i=e.height,o=[{x:-2*i/6,y:0},{x:r-i/6,y:0},{x:r+2*i/6,y:-i},{x:i/6,y:-i}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function it(t,e,n){const r=e.width,i=e.height,o=[{x:2*i/6,y:0},{x:r+i/6,y:0},{x:r-2*i/6,y:-i},{x:-i/6,y:-i}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function ot(t,e,n){const r=e.width,i=e.height,o=[{x:-2*i/6,y:0},{x:r+2*i/6,y:0},{x:r-i/6,y:-i},{x:i/6,y:-i}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function at(t,e,n){const r=e.width,i=e.height,o=[{x:i/6,y:0},{x:r-i/6,y:0},{x:r+2*i/6,y:-i},{x:-2*i/6,y:-i}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function st(t,e,n){const r=e.width,i=e.height,o=[{x:0,y:0},{x:r+i/2,y:0},{x:r,y:-i/2},{x:r+i/2,y:-i},{x:0,y:-i}],a=ut(t,r,i,o);return n.intersect=function(t){return Z.a.intersect.polygon(n,o,t)},a}function ut(t,e,n,r){return t.insert("polygon",":first-child").attr("points",r.map((function(t){return t.x+","+t.y})).join(" ")).attr("transform","translate("+-e/2+","+n/2+")")}var ct={addToRender:function(t){t.shapes().question=tt,t.shapes().hexagon=et,t.shapes().rect_left_inv_arrow=nt,t.shapes().lean_right=rt,t.shapes().lean_left=it,t.shapes().trapezoid=ot,t.shapes().inv_trapezoid=at,t.shapes().rect_right_inv_arrow=st}};const ft={},lt=function(t,e,n){const r=o.select(`[id="${n}"]`),i=Object.keys(t),a=function(t,e,{label:n}){if(n)for(let n=0;n0&&(o=i.classes.join(" "));let s="";s=a(s,i.styles,{label:!1});let u="";u=a(u,i.styles,{label:!0});let c,f=void 0!==i.text?i.text:i.id;if(l().flowchart.htmlLabels){const t={label:f.replace(/fa[lrsb]?:fa-[\w-]+/g,t=>``)};(c=Q()(r,t).node()).parentNode.removeChild(c)}else{const t=document.createElementNS("http://www.w3.org/2000/svg","text"),e=f.split(//);for(let n=0;n'+i.text+""):(a.labelType="text",a.style=a.style||"stroke: #333; stroke-width: 1.5px;fill:none",a.label=i.text.replace(/
    /g,"\n"))):a.label=i.text.replace(/
    /g,"\n")),e.setEdge(i.start,i.end,a,r)}))};var dt=function(t){const e=Object.keys(t);for(let n=0;n=0;t--)i=s[t],G.addVertex(i.id,i.title,"group",void 0,i.classes);const u=G.getVertices(),c=G.getEdges();let f=0;for(f=s.length-1;f>=0;f--){i=s[f],o.selectAll("cluster").append("text");for(let t=0;t/gi," "),r=t.append("text");r.attr("x",e.x),r.attr("y",e.y),r.style("text-anchor",e.anchor),r.attr("fill",e.fill),void 0!==e.class&&r.attr("class",e.class);const i=r.append("tspan");return i.attr("x",e.x+2*e.textMargin),i.attr("fill",e.fill),i.text(n),r},mt=function(t,e){const n=t.append("polygon");var r,i,o,a,s;n.attr("points",(r=e.x,i=e.y,r+","+i+" "+(r+(o=50))+","+i+" "+(r+o)+","+(i+(a=20)-(s=7))+" "+(r+o-1.2*s)+","+(i+a)+" "+r+","+(i+a))),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,bt(t,e)};let vt=-1;const _t=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0}},wt=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},xt=function(){function t(t,e,n,i,o,a,s){r(e.append("text").attr("x",n+o/2).attr("y",i+a/2+5).style("text-anchor","middle").text(t),s)}function e(t,e,n,i,o,a,s,u){const{actorFontSize:c,actorFontFamily:f}=u,l=t.split(//gi);for(let t=0;t{let o=0;const a=t.split(//gi);for(const t of a){const a=kt.getTextObj();a.x=e,a.y=n+o,a.textMargin=Pt.noteMargin,a.dy="1em",a.text=t,a.class="noteText";const s=kt.drawText(r,a,i);o+=(s._groups||s)[0][0].getBBox().height}return o})(r.message,e-4,n+24,a,o.width-Pt.noteMargin);Ft.insert(e,n,e+o.width,n+2*Pt.noteMargin+u),s.attr("height",u+2*Pt.noteMargin),Ft.bumpVerticalPos(u+2*Pt.noteMargin)},jt=function(t,e,n,r){for(let i=0;ie&&(r.starty=e-6,e+=12),kt.drawActivation(n,r,e,Pt,Ut(t.from.actor).length),Ft.insert(r.startx,e-10,r.stopx,e)}(t,Ft.getVerticalPos());break;case Et.parser.yy.LINETYPE.LOOP_START:Ft.bumpVerticalPos(Pt.boxMargin),Ft.newLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin+Pt.boxTextMargin);break;case Et.parser.yy.LINETYPE.LOOP_END:e=Ft.endLoop(),kt.drawLoop(n,e,"loop",Pt),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.RECT_START:Ft.bumpVerticalPos(Pt.boxMargin),Ft.newLoop(void 0,t.message),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.RECT_END:{const t=Ft.endLoop();kt.drawBackgroundRect(n,t),Ft.bumpVerticalPos(Pt.boxMargin);break}case Et.parser.yy.LINETYPE.OPT_START:Ft.bumpVerticalPos(Pt.boxMargin),Ft.newLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin+Pt.boxTextMargin);break;case Et.parser.yy.LINETYPE.OPT_END:e=Ft.endLoop(),kt.drawLoop(n,e,"opt",Pt),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.ALT_START:Ft.bumpVerticalPos(Pt.boxMargin),Ft.newLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin+Pt.boxTextMargin);break;case Et.parser.yy.LINETYPE.ALT_ELSE:Ft.bumpVerticalPos(Pt.boxMargin),e=Ft.addSectionToLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.ALT_END:e=Ft.endLoop(),kt.drawLoop(n,e,"alt",Pt),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.PAR_START:Ft.bumpVerticalPos(Pt.boxMargin),Ft.newLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin+Pt.boxTextMargin);break;case Et.parser.yy.LINETYPE.PAR_AND:Ft.bumpVerticalPos(Pt.boxMargin),e=Ft.addSectionToLoop(t.message),Ft.bumpVerticalPos(Pt.boxMargin);break;case Et.parser.yy.LINETYPE.PAR_END:e=Ft.endLoop(),kt.drawLoop(n,e,"par",Pt),Ft.bumpVerticalPos(Pt.boxMargin);break;default:try{Ft.bumpVerticalPos(Pt.messageMargin);const e=zt(t.from),o=zt(t.to),a=e[0]<=o[0]?1:0,s=e[0]/gi);for(const t of f)u=a.append("text").attr("x",s).attr("y",r-7+17*c).style("text-anchor","middle").attr("class","messageText").text(t.trim()),c++;const l=17*(c-1);let h,d=(u._groups||u)[0][0].getBBox().width;if(e===n){h=Pt.rightAngles?a.append("path").attr("d",`M ${e},${r+l} H ${e+Pt.width/2} V ${r+25+l} H ${e}`):a.append("path").attr("d","M "+e+","+(r+l)+" C "+(e+60)+","+(r-10+l)+" "+(e+60)+","+(r+30+l)+" "+e+","+(r+20+l)),Ft.bumpVerticalPos(30+l);const t=Math.max(d/2,100);Ft.insert(e-t,Ft.getVerticalPos()-10+l,n+t,Ft.getVerticalPos()+l)}else(h=a.append("line")).attr("x1",e),h.attr("y1",r),h.attr("x2",n),h.attr("y2",r),Ft.insert(e,Ft.getVerticalPos()-10+l,n,Ft.getVerticalPos()+l);i.type===Et.parser.yy.LINETYPE.DOTTED||i.type===Et.parser.yy.LINETYPE.DOTTED_CROSS||i.type===Et.parser.yy.LINETYPE.DOTTED_OPEN?(h.style("stroke-dasharray","3, 3"),h.attr("class","messageLine1")):h.attr("class","messageLine0");let p="";Pt.arrowMarkerAbsolute&&(p=(p=(p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),h.attr("stroke-width",2),h.attr("stroke","black"),h.style("fill","none"),i.type!==Et.parser.yy.LINETYPE.SOLID&&i.type!==Et.parser.yy.LINETYPE.DOTTED||h.attr("marker-end","url("http://github.com/+p+%22#arrowhead)"),i.type!==Et.parser.yy.LINETYPE.SOLID_CROSS&&i.type!==Et.parser.yy.LINETYPE.DOTTED_CROSS||h.attr("marker-end","url("http://github.com/+p+%22#crosshead)"),Pt.showSequenceNumbers&&(h.attr("marker-start","url("http://github.com/+p+%22#sequencenumber)"),a.append("text").attr("x",e).attr("y",r+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("textLength","16px").attr("class","sequenceNumber").text(o))}(n,r,i,u,t,l);const c=e.concat(o);Ft.insert(Math.min.apply(null,c),u,Math.max.apply(null,c),u)}catch(t){v.error("error while drawing message",t)}}[Et.parser.yy.LINETYPE.SOLID_OPEN,Et.parser.yy.LINETYPE.DOTTED_OPEN,Et.parser.yy.LINETYPE.SOLID,Et.parser.yy.LINETYPE.DOTTED,Et.parser.yy.LINETYPE.SOLID_CROSS,Et.parser.yy.LINETYPE.DOTTED_CROSS].includes(t.type)&&l++})),Pt.mirrorActors&&(Ft.bumpVerticalPos(2*Pt.boxMargin),jt(n,s,u,Ft.getVerticalPos()));const h=Ft.getBounds();v.debug("For line height fix Querying: #"+e+" .actor-line"),o.selectAll("#"+e+" .actor-line").attr("y2",h.stopy);let d=h.stopy-h.starty+2*Pt.diagramMarginY;Pt.mirrorActors&&(d=d-Pt.boxMargin+Pt.bottomMarginAdj);const p=h.stopx-h.startx+2*Pt.diagramMarginX;f&&n.append("text").text(f).attr("x",(h.stopx-h.startx)/2-2*Pt.diagramMarginX).attr("y",-25),Pt.useMaxWidth?(n.attr("height","100%"),n.attr("width","100%"),n.attr("style","max-width:"+p+"px;")):(n.attr("height",d),n.attr("width",p));const g=f?40:0;n.attr("viewBox",h.startx-Pt.diagramMarginX+" -"+(Pt.diagramMarginY+g)+" "+p+" "+(d+g))},Ht=n(26),$t=n.n(Ht);const Gt=l();let Wt="",Kt="",Xt=[],Zt="",Jt=[],Qt=[],te="";const ee=["active","done","crit","milestone"];let ne=[],re=!1;const ie=function(t,e,n){return t.isoWeekday()>=6&&n.indexOf("weekends")>=0||(n.indexOf(t.format("dddd").toLowerCase())>=0||n.indexOf(t.format(e.trim()))>=0)},oe=function(t,e,n){if(!n.length||t.manualEndTime)return;let r=d()(t.startTime,e,!0);r.add(1,"d");let i=d()(t.endTime,e,!0),o=ae(r,i,e,n);t.endTime=i.toDate(),t.renderEndTime=o},ae=function(t,e,n,r){let i=!1,o=null;for(;t.date()<=e.date();)i||(o=e.toDate()),(i=ie(t,n,r))&&e.add(1,"d"),t.add(1,"d");return o},se=function(t,e,n){n=n.trim();const r=/^after\s+([\d\w-]+)/.exec(n.trim());if(null!==r){const t=ye(r[1]);if(void 0===t){const t=new Date;return t.setHours(0,0,0,0),t}return t.endTime}let i=d()(n,e.trim(),!0);return i.isValid()?i.toDate():(v.debug("Invalid date:"+n),v.debug("With date format:"+e.trim()),new Date)},ue=function(t,e){if(null!==t)switch(t[2]){case"s":e.add(t[1],"seconds");break;case"m":e.add(t[1],"minutes");break;case"h":e.add(t[1],"hours");break;case"d":e.add(t[1],"days");break;case"w":e.add(t[1],"weeks")}return e.toDate()},ce=function(t,e,n,r){r=r||!1,n=n.trim();let i=d()(n,e.trim(),!0);return i.isValid()?(r&&i.add(1,"d"),i.toDate()):ue(/^([\d]+)([wdhms])/.exec(n.trim()),d()(t))};let fe=0;const le=function(t){return void 0===t?"task"+(fe+=1):t};let he,de,pe=[];const ge={},ye=function(t){const e=ge[t];return pe[e]},be=function(){const t=function(t){const e=pe[t];let n="";switch(pe[t].raw.startTime.type){case"prevTaskEnd":{const t=ye(e.prevTaskId);e.startTime=t.endTime;break}case"getStartDate":(n=se(0,Wt,pe[t].raw.startTime.startData))&&(pe[t].startTime=n)}return pe[t].startTime&&(pe[t].endTime=ce(pe[t].startTime,Wt,pe[t].raw.endTime.data,re),pe[t].endTime&&(pe[t].processed=!0,pe[t].manualEndTime=d()(pe[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),oe(pe[t],Wt,Xt))),pe[t].processed};let e=!0;for(let n=0;n{window[e](...r)})}(t,e,n)})),me(t,"clickable")},setLink:function(t,e){let n=e;"loose"!==Gt.securityLevel&&(n=Object(T.sanitizeUrl)(e)),t.split(",").forEach((function(t){void 0!==ye(t)&&ve(t,()=>{window.open(n,"_self")})})),me(t,"clickable")},bindFunctions:function(t){ne.forEach((function(e){e(t)}))},durationToDate:ue};function we(t,e,n){let r=!0;for(;r;)r=!1,n.forEach((function(n){const i=new RegExp("^\\s*"+n+"\\s*$");t[0].match(i)&&(e[n]=!0,t.shift(1),r=!0)}))}Ht.parser.yy=_e;const xe={titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"'};let ke;var Ee=function(t){Object.keys(t).forEach((function(e){xe[e]=t[e]}))},Ae=function(t,e){Ht.parser.yy.clear(),Ht.parser.parse(t);const n=document.getElementById(e);void 0===(ke=n.parentElement.offsetWidth)&&(ke=1200),void 0!==xe.useWidth&&(ke=xe.useWidth);const r=Ht.parser.yy.getTasks(),i=r.length*(xe.barHeight+xe.barGap)+2*xe.topPadding;n.setAttribute("height","100%"),n.setAttribute("viewBox","0 0 "+ke+" "+i);const a=o.select(`[id="${e}"]`),s=o.scaleTime().domain([o.min(r,(function(t){return t.startTime})),o.max(r,(function(t){return t.endTime}))]).rangeRound([0,ke-xe.leftPadding-xe.rightPadding]);let u=[];for(let t=0;t0&&(e=t.classes.join(" "));let n=0;for(let e=0;en-e?n+o+1.5*xe.leftPadding>c?e+r-5:n+r+5:(n-e)/2+e+r})).attr("y",(function(t,r){return r*e+xe.barHeight/2+(xe.fontSize/2-2)+n})).attr("text-height",i).attr("class",(function(t){const e=s(t.startTime);let n=s(t.endTime);t.milestone&&(n=e+i);const r=this.getBBox().width;let o="";t.classes.length>0&&(o=t.classes.join(" "));let a=0;for(let e=0;en-e?n+r+1.5*xe.leftPadding>c?o+" taskTextOutsideLeft taskTextOutside"+a+" "+f:o+" taskTextOutsideRight taskTextOutside"+a+" "+f+" width-"+r:o+" taskText taskText"+a+" "+f+" width-"+r}))}(t,i,l,h,r,0,e),function(t,e){const n=[];let r=0;for(let t=0;t0))return i[1]*t/2+e;for(let a=0;a>")?n.annotations.push(t.substring(2,t.length-2)):t.endsWith(")")?n.methods.push(t):t&&n.members.push(t)}};var Re={addClass:Ce,clear:function(){Me=[],De={}},getClass:function(t){return De[t]},getClasses:function(){return De},addAnnotation:function(t,e){De[t].annotations.push(e)},getRelations:function(){return Me},addRelation:function(t){v.debug("Adding relation: "+JSON.stringify(t)),Ce(t.id1),Ce(t.id2),Me.push(t)},addMember:Oe,addMembers:function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach(e=>Oe(t,e)))},cleanupLabel:function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()},lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}},Ie=n(46),Ne=n.n(Ie);Ie.parser.yy=Re;let Be={},Le=0;const Pe={dividerMargin:10,padding:5,textHeight:10},Fe=function(t){const e=Object.keys(Be);for(let n=0;n "+t.w+": "+JSON.stringify(i.edge(t))),function(t,e,n){const r=function(t){switch(t){case Re.relationType.AGGREGATION:return"aggregation";case Re.relationType.EXTENSION:return"extension";case Re.relationType.COMPOSITION:return"composition";case Re.relationType.DEPENDENCY:return"dependency"}};e.points=e.points.filter(t=>!Number.isNaN(t.y));const i=e.points,a=o.line().x((function(t){return t.x})).y((function(t){return t.y})).curve(o.curveBasis),s=t.append("path").attr("d",a(i)).attr("id","edge"+qe).attr("class","relation");let u,c,f="";Pe.arrowMarkerAbsolute&&(f=(f=(f=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),"none"!==n.relation.type1&&s.attr("marker-start","url("http://github.com/+f+%22#%22+r(n.relation.type1)+"Start)"),"none"!==n.relation.type2&&s.attr("marker-end","url("http://github.com/+f+%22#%22+r(n.relation.type2)+"End)");const l=e.points.length;let h,d,p,g,y=E.calcLabelPosition(e.points);if(u=y.x,c=y.y,l%2!=0&&l>1){let t=E.calcCardinalityPosition("none"!==n.relation.type1,e.points,e.points[0]),r=E.calcCardinalityPosition("none"!==n.relation.type2,e.points,e.points[l-1]);v.debug("cardinality_1_point "+JSON.stringify(t)),v.debug("cardinality_2_point "+JSON.stringify(r)),h=t.x,d=t.y,p=r.x,g=r.y}if(void 0!==n.title){const e=t.append("g").attr("class","classLabel"),r=e.append("text").attr("class","label").attr("x",u).attr("y",c).attr("fill","red").attr("text-anchor","middle").text(n.title);window.label=r;const i=r.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",i.x-Pe.padding/2).attr("y",i.y-Pe.padding/2).attr("width",i.width+Pe.padding).attr("height",i.height+Pe.padding)}if(v.info("Rendering relation "+JSON.stringify(n)),void 0!==n.relationTitle1&&"none"!==n.relationTitle1){t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",h).attr("y",d).attr("fill","black").attr("font-size","6").text(n.relationTitle1)}if(void 0!==n.relationTitle2&&"none"!==n.relationTitle2){t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",p).attr("y",g).attr("fill","black").attr("font-size","6").text(n.relationTitle2)}qe++}(n,i.edge(t),i.edge(t).relation))})),n.attr("height","100%"),n.attr("width",`${1.5*i.graph().width+20}`),n.attr("viewBox","-10 -10 "+(i.graph().width+20)+" "+(i.graph().height+20))};let Ye=[];let Ve={root:{relations:[],states:{},documents:{}}},He=Ve.root,$e=0;const Ge=function(t,e,n,r,i){void 0===He.states[t]?He.states[t]={id:t,descriptions:[],type:e,doc:n,note:i}:(He.states[t].doc||(He.states[t].doc=n),He.states[t].type||(He.states[t].type=e)),r&&("string"==typeof r&&Xe(t,r.trim()),"object"==typeof r&&r.forEach(e=>Xe(t,e.trim()))),i&&(He.states[t].note=i)},We=function(){He=(Ve={root:{relations:[],states:{},documents:{}}}).root},Ke=function(t,e,n){let r=t,i=e,o="default",a="default";"[*]"===t&&(r="start"+ ++$e,o="start"),"[*]"===e&&(i="end"+$e,a="end"),Ge(r,o),Ge(i,a),He.relations.push({id1:r,id2:i,title:n})},Xe=function(t,e){const n=He.states[t];let r=e;":"===r[0]&&(r=r.substr(1).trim()),n.descriptions.push(r)};let Ze=0;var Je={addState:Ge,clear:We,getState:function(t){return He.states[t]},getStates:function(){return He.states},getRelations:function(){return He.relations},addRelation:Ke,getDividerId:()=>"divider-id-"+ ++Ze,cleanupLabel:function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()},lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},logDocuments:function(){v.info("Documents = ",Ve)},getRootDoc:()=>Ye,setRootDoc:t=>{v.info("Setting root doc",t),Ye=t},extract:t=>{We(),t.forEach(t=>{"state"===t.stmt&&Ge(t.id,t.type,t.doc,t.description,t.note),"relation"===t.stmt&&Ke(t.state1.id,t.state2.id,t.description)})}},Qe=n(47),tn=n.n(Qe);const en={};var nn=(t,e)=>{en[t]=e};const rn=(t,e)=>{const n=t.append("text").attr("x",2*l().state.padding).attr("y",l().state.textHeight+1.5*l().state.padding).attr("font-size",l().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),r=n.height,i=t.append("text").attr("x",l().state.padding).attr("y",r+.2*l().state.padding+l().state.dividerMargin+l().state.textHeight).attr("class","state-description");let o=!0,a=!0;e.descriptions.forEach((function(t){o||(!function(t,e,n){const r=t.append("tspan").attr("x",2*l().state.padding).text(e);n||r.attr("dy",l().state.textHeight)}(i,t,a),a=!1),o=!1}));const s=t.append("line").attr("x1",l().state.padding).attr("y1",l().state.padding+r+l().state.dividerMargin/2).attr("y2",l().state.padding+r+l().state.dividerMargin/2).attr("class","descr-divider"),u=i.node().getBBox(),c=Math.max(u.width,n.width);return s.attr("x2",c+3*l().state.padding),t.insert("rect",":first-child").attr("x",l().state.padding).attr("y",l().state.padding).attr("width",c+2*l().state.padding).attr("height",u.height+r+2*l().state.padding).attr("rx",l().state.radius),t},on=(t,e)=>{const n=t.append("text").attr("x",2*l().state.padding).attr("y",l().state.titleShift).attr("font-size",l().state.fontSize).attr("class","state-title").text(e.id),r=n.node().getBBox(),i=1-l().state.textHeight,o=t.append("line").attr("x1",0).attr("y1",i).attr("y2",i).attr("class","descr-divider"),a=t.node().getBBox();return n.attr("x",a.width/2-r.width/2),o.attr("x2",a.width+l().state.padding),t.insert("rect",":first-child").attr("x",a.x).attr("y",i).attr("class","composit").attr("width",a.width+l().state.padding).attr("height",a.height+l().state.textHeight+l().state.titleShift+1).attr("rx","0"),t.insert("rect",":first-child").attr("x",a.x).attr("y",l().state.titleShift-l().state.textHeight-l().state.padding).attr("width",a.width+l().state.padding).attr("height",3*l().state.textHeight).attr("rx",l().state.radius),t.insert("rect",":first-child").attr("x",a.x).attr("y",l().state.titleShift-l().state.textHeight-l().state.padding).attr("width",a.width+l().state.padding).attr("height",a.height+3+2*l().state.textHeight).attr("rx",l().state.radius),t},an=(t,e)=>{e.attr("class","state-note");const n=e.append("rect").attr("x",0).attr("y",l().state.padding),r=e.append("g"),{textWidth:i,textHeight:o}=((t,e,n,r)=>{let i=0;const o=r.append("text");o.style("text-anchor","start"),o.attr("class","noteText");let a=t.replace(/\r\n/g,"
    ");const s=(a=a.replace(/\n/g,"
    ")).split(//gi);let u=1.25*l().state.noteMargin;for(const t of s){const r=t.trim();if(r.length>0){const t=o.append("tspan");if(t.text(r),0===u){u+=t.node().getBBox().height}i+=u,t.attr("x",e+l().state.noteMargin),t.attr("y",n+i+1.25*l().state.noteMargin)}}return{textWidth:o.node().getBBox().width,textHeight:i}})(t,0,0,r);return n.attr("height",o+2*l().state.noteMargin),n.attr("width",i+2*l().state.noteMargin),n},sn=function(t,e){const n=e.id,r={id:n,label:e.id,width:0,height:0},i=t.append("g").attr("id",n).attr("class","stateGroup");"start"===e.type&&(t=>t.append("circle").style("stroke","black").style("fill","black").attr("r",l().state.sizeUnit).attr("cx",l().state.padding+l().state.sizeUnit).attr("cy",l().state.padding+l().state.sizeUnit))(i),"end"===e.type&&(t=>(t.append("circle").style("stroke","black").style("fill","white").attr("r",l().state.sizeUnit+l().state.miniPadding).attr("cx",l().state.padding+l().state.sizeUnit+l().state.miniPadding).attr("cy",l().state.padding+l().state.sizeUnit+l().state.miniPadding),t.append("circle").style("stroke","black").style("fill","black").attr("r",l().state.sizeUnit).attr("cx",l().state.padding+l().state.sizeUnit+2).attr("cy",l().state.padding+l().state.sizeUnit+2)))(i),"fork"!==e.type&&"join"!==e.type||((t,e)=>{let n=l().state.forkWidth,r=l().state.forkHeight;if(e.parentId){let t=n;n=r,r=t}t.append("rect").style("stroke","black").style("fill","black").attr("width",n).attr("height",r).attr("x",l().state.padding).attr("y",l().state.padding)})(i,e),"note"===e.type&&an(e.note.text,i),"divider"===e.type&&(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",l().state.textHeight).attr("class","divider").attr("x2",2*l().state.textHeight).attr("y1",0).attr("y2",0))(i),"default"===e.type&&0===e.descriptions.length&&((t,e)=>{const n=t.append("text").attr("x",2*l().state.padding).attr("y",l().state.textHeight+2*l().state.padding).attr("font-size",l().state.fontSize).attr("class","state-title").text(e.id),r=n.node().getBBox();t.insert("rect",":first-child").attr("x",l().state.padding).attr("y",l().state.padding).attr("width",r.width+2*l().state.padding).attr("height",r.height+2*l().state.padding).attr("rx",l().state.radius)})(i,e),"default"===e.type&&e.descriptions.length>0&&rn(i,e);const o=i.node().getBBox();return r.width=o.width+2*l().state.padding,r.height=o.height+2*l().state.padding,nn(n,r),r};let un=0;let cn;Qe.parser.yy=Je;const fn={},ln=t=>t?t.length*cn.fontSizeFactor:1,hn=t=>{if(!t)return 1;let e=t.replace(//gi,"#br#");return(e=e.replace(/\\n/g,"#br#")).split("#br#")},dn=(t,e,n)=>{const r=new S.a.Graph({compound:!0});n?r.setGraph({rankdir:"LR",compound:!0,ranker:"tight-tree",ranksep:cn.edgeLengthFactor}):r.setGraph({rankdir:"TB",compound:!0,ranksep:cn.edgeLengthFactor,ranker:"tight-tree"}),r.setDefaultEdgeLabel((function(){return{}})),Je.extract(t);const i=Je.getStates(),a=Je.getRelations(),s=Object.keys(i);for(let t=0;t{const e=t.parentElement;let n=0,r=0;e&&(e.parentElement&&(n=e.parentElement.getBBox().width),r=parseInt(e.getAttribute("data-x-shift"),10),Number.isNaN(r)&&(r=0)),t.setAttribute("x1",0-r),t.setAttribute("x2",n-r)})}else v.debug("No Node "+t+": "+JSON.stringify(r.node(t)))}));let c=u.getBBox();r.edges().forEach((function(t){void 0!==t&&void 0!==r.edge(t)&&(v.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(r.edge(t))),function(t,e,n){e.points=e.points.filter(t=>!Number.isNaN(t.y));const r=e.points,i=o.line().x((function(t){return t.x})).y((function(t){return t.y})).curve(o.curveBasis),a=t.append("path").attr("d",i(r)).attr("id","edge"+un).attr("class","transition");let s="";if(l().state.arrowMarkerAbsolute&&(s=(s=(s=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),a.attr("marker-end","url("http://github.com/+s+%22#%22+function(t){switch(t){case Je.relationType.AGGREGATION:return"aggregation";case Je.relationType.EXTENSION:return"extension";case Je.relationType.COMPOSITION:return"composition";case Je.relationType.DEPENDENCY:return"dependency"}}(Je.relationType.DEPENDENCY)+"End)"),void 0!==n.title){const r=t.append("g").attr("class","stateLabel"),{x:i,y:o}=E.calcLabelPosition(e.points),a=(t=>{let e=t.replace(//gi,"#br#");return(e=e.replace(/\\n/g,"#br#")).split("#br#")})(n.title);let s=0;const u=[];for(let t=0;t<=a.length;t++){const e=r.append("text").attr("text-anchor","middle").text(a[t]).attr("x",i).attr("y",o+s);if(0===s){const t=e.node().getBBox();s=t.height}u.push(e)}if(a.length>1){const t=a.length*s*.25;u.forEach((e,n)=>e.attr("y",o+n*s-t))}const c=r.node().getBBox();r.insert("rect",":first-child").attr("class","box").attr("x",c.x-l().state.padding/2).attr("y",c.y-l().state.padding/2).attr("width",c.width+l().state.padding).attr("height",c.height+l().state.padding)}un++}(e,r.edge(t),r.edge(t).relation))})),c=u.getBBox();const f={id:n||"root",label:n||"root",width:0,height:0};return f.width=c.width+2*cn.padding,f.height=c.height+2*cn.padding,v.info("Doc rendered",f,r),f};var pn=function(){},gn=function(t,e){cn=l().state,Qe.parser.yy.clear(),Qe.parser.parse(t),v.debug("Rendering diagram "+t);const n=o.select(`[id='${e}']`);n.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z"),new S.a.Graph({multigraph:!1,compound:!0,rankdir:"RL"}).setDefaultEdgeLabel((function(){return{}}));const r=Je.getRootDoc();dn(r,n);const i=cn.padding,a=n.node().getBBox(),s=a.width+2*i,u=a.height+2*i;n.attr("width",2*s),n.attr("viewBox",`${a.x-cn.padding} ${a.y-cn.padding} `+s+" "+u)},yn=n(48),bn=n.n(yn),mn=n(228),vn=n.n(mn);let _n={},wn=null,xn={master:wn},kn="master",En="LR",An=0;function Sn(){return vn()({length:7,characters:"0123456789abcdef"})}function Tn(t,e){for(v.debug("Entering isfastforwardable:",t.id,e.id);t.seq<=e.seq&&t!==e&&null!=e.parent;){if(Array.isArray(e.parent))return v.debug("In merge commit:",e.parent),Tn(t,_n[e.parent[0]])||Tn(t,_n[e.parent[1]]);e=_n[e.parent]}return v.debug(t.id,e.id),t.id===e.id}let Mn={};function Dn(t,e,n){const r=t.indexOf(e);-1===r?t.push(n):t.splice(r,1,n)}const Cn=function(){const t=Object.keys(_n).map((function(t){return _n[t]}));return t.forEach((function(t){v.debug(t.id)})),bn.a.orderBy(t,["seq"],["desc"])};var On={setDirection:function(t){En=t},setOptions:function(t){v.debug("options str",t),t=(t=t&&t.trim())||"{}";try{Mn=JSON.parse(t)}catch(t){v.error("error while parsing gitGraph options",t.message)}},getOptions:function(){return Mn},commit:function(t){const e={id:Sn(),message:t,seq:An++,parent:null==wn?null:wn.id};wn=e,_n[e.id]=e,xn[kn]=e.id,v.debug("in pushCommit "+e.id)},branch:function(t){xn[t]=null!=wn?wn.id:null,v.debug("in createBranch")},merge:function(t){const e=_n[xn[kn]],n=_n[xn[t]];if(function(t,e){return t.seq>e.seq&&Tn(e,t)}(e,n))v.debug("Already merged");else{if(Tn(e,n))xn[kn]=xn[t],wn=_n[xn[kn]];else{const e={id:Sn(),message:"merged branch "+t+" into "+kn,seq:An++,parent:[null==wn?null:wn.id,xn[t]]};wn=e,_n[e.id]=e,xn[kn]=e.id}v.debug(xn),v.debug("in mergeBranch")}},checkout:function(t){v.debug("in checkout");const e=xn[kn=t];wn=_n[e]},reset:function(t){v.debug("in reset",t);const e=t.split(":")[0];let n=parseInt(t.split(":")[1]),r="HEAD"===e?wn:_n[xn[e]];for(v.debug(r,n);n>0;)if(n--,!(r=_n[r.parent])){const t="Critical error - unique parent commit not found during reset";throw v.error(t),t}wn=r,xn[kn]=r.id},prettyPrint:function(){v.debug(_n),function t(e){const n=bn.a.maxBy(e,"seq");let r="";e.forEach((function(t){r+=t===n?"\t*":"\t|"}));const i=[r,n.id,n.seq];for(let t in xn)xn[t]===n.id&&i.push(t);if(v.debug(i.join(" ")),Array.isArray(n.parent)){const t=_n[n.parent[0]];Dn(e,n,t),e.push(_n[n.parent[1]])}else{if(null==n.parent)return;{const t=_n[n.parent];Dn(e,n,t)}}t(e=bn.a.uniqBy(e,"id"))}([Cn()[0]])},clear:function(){_n={},xn={master:wn=null},kn="master",An=0},getBranchesAsObjArray:function(){const t=[];for(let e in xn)t.push({name:e,commit:_n[xn[e]]});return t},getBranches:function(){return xn},getCommits:function(){return _n},getCommitsArray:Cn,getCurrentBranch:function(){return kn},getDirection:function(){return En},getHead:function(){return wn}},Rn=n(85),In=n.n(Rn);let Nn,Bn={},Ln={nodeSpacing:150,nodeFillColor:"yellow",nodeStrokeWidth:2,nodeStrokeColor:"grey",lineStrokeWidth:4,branchOffset:50,lineColor:"grey",leftMargin:50,branchColors:["#442f74","#983351","#609732","#AA9A39"],nodeRadius:10,nodeLabel:{width:75,height:100,x:-25,y:0}},Pn={};function Fn(t,e,n,r){const i=x(r,o.curveBasis),a=Ln.branchColors[n%Ln.branchColors.length],s=o.line().x((function(t){return Math.round(t.x)})).y((function(t){return Math.round(t.y)})).curve(i);t.append("svg:path").attr("d",s(e)).style("stroke",a).style("stroke-width",Ln.lineStrokeWidth).style("fill","none")}function qn(t,e){e=e||t.node().getBBox();const n=t.node().getCTM();return{left:n.e+e.x*n.a,top:n.f+e.y*n.d,width:e.width,height:e.height}}function jn(t,e,n,r,i){v.debug("svgDrawLineForCommits: ",e,n);const o=qn(t.select("#node-"+e+" circle")),a=qn(t.select("#node-"+n+" circle"));switch(r){case"LR":if(o.left-a.left>Ln.nodeSpacing){const e={x:o.left-Ln.nodeSpacing,y:a.top+a.height/2};Fn(t,[e,{x:a.left+a.width,y:a.top+a.height/2}],i,"linear"),Fn(t,[{x:o.left,y:o.top+o.height/2},{x:o.left-Ln.nodeSpacing/2,y:o.top+o.height/2},{x:o.left-Ln.nodeSpacing/2,y:e.y},e],i)}else Fn(t,[{x:o.left,y:o.top+o.height/2},{x:o.left-Ln.nodeSpacing/2,y:o.top+o.height/2},{x:o.left-Ln.nodeSpacing/2,y:a.top+a.height/2},{x:a.left+a.width,y:a.top+a.height/2}],i);break;case"BT":if(a.top-o.top>Ln.nodeSpacing){const e={x:a.left+a.width/2,y:o.top+o.height+Ln.nodeSpacing};Fn(t,[e,{x:a.left+a.width/2,y:a.top}],i,"linear"),Fn(t,[{x:o.left+o.width/2,y:o.top+o.height},{x:o.left+o.width/2,y:o.top+o.height+Ln.nodeSpacing/2},{x:a.left+a.width/2,y:e.y-Ln.nodeSpacing/2},e],i)}else Fn(t,[{x:o.left+o.width/2,y:o.top+o.height},{x:o.left+o.width/2,y:o.top+Ln.nodeSpacing/2},{x:a.left+a.width/2,y:a.top-Ln.nodeSpacing/2},{x:a.left+a.width/2,y:a.top}],i)}}function Un(t,e){return t.select(e).node().cloneNode(!0)}function zn(t,e,n,r){let i;const o=Object.keys(Bn).length;if("string"==typeof e)do{if(i=Bn[e],v.debug("in renderCommitHistory",i.id,i.seq),t.select("#node-"+e).size()>0)return;let a;t.append((function(){return Un(t,"#def-commit")})).attr("class","commit").attr("id",(function(){return"node-"+i.id})).attr("transform",(function(){switch(r){case"LR":return"translate("+(i.seq*Ln.nodeSpacing+Ln.leftMargin)+", "+Nn*Ln.branchOffset+")";case"BT":return"translate("+(Nn*Ln.branchOffset+Ln.leftMargin)+", "+(o-i.seq)*Ln.nodeSpacing+")"}})).attr("fill",Ln.nodeFillColor).attr("stroke",Ln.nodeStrokeColor).attr("stroke-width",Ln.nodeStrokeWidth);for(let t in n)if(n[t].commit===i){a=n[t];break}a&&(v.debug("found branch ",a.name),t.select("#node-"+i.id+" p").append("xhtml:span").attr("class","branch-label").text(a.name+", ")),t.select("#node-"+i.id+" p").append("xhtml:span").attr("class","commit-id").text(i.id),""!==i.message&&"BT"===r&&t.select("#node-"+i.id+" p").append("xhtml:span").attr("class","commit-msg").text(", "+i.message),e=i.parent}while(e&&Bn[e]);Array.isArray(e)&&(v.debug("found merge commmit",e),zn(t,e[0],n,r),Nn++,zn(t,e[1],n,r),Nn--)}function Yn(t,e,n,r){for(r=r||0;e.seq>0&&!e.lineDrawn;)"string"==typeof e.parent?(jn(t,e.id,e.parent,n,r),e.lineDrawn=!0,e=Bn[e.parent]):Array.isArray(e.parent)&&(jn(t,e.id,e.parent[0],n,r),jn(t,e.id,e.parent[1],n,r+1),Yn(t,Bn[e.parent[1]],n,r+1),e.lineDrawn=!0,e=Bn[e.parent[0]])}var Vn=function(t){Pn=t},Hn=function(t,e,n){try{const r=In.a.parser;r.yy=On,v.debug("in gitgraph renderer",t+"\n","id:",e,n),r.parse(t+"\n"),Ln=bn.a.assign(Ln,Pn,On.getOptions()),v.debug("effective options",Ln);const i=On.getDirection();Bn=On.getCommits();const a=On.getBranchesAsObjArray();"BT"===i&&(Ln.nodeLabel.x=a.length*Ln.branchOffset,Ln.nodeLabel.width="100%",Ln.nodeLabel.y=-2*Ln.nodeRadius);const s=o.select(`[id="${e}"]`);!function(t){t.append("defs").append("g").attr("id","def-commit").append("circle").attr("r",Ln.nodeRadius).attr("cx",0).attr("cy",0),t.select("#def-commit").append("foreignObject").attr("width",Ln.nodeLabel.width).attr("height",Ln.nodeLabel.height).attr("x",Ln.nodeLabel.x).attr("y",Ln.nodeLabel.y).attr("class","node-label").attr("requiredFeatures","http://www.w3.org/TR/SVG11/feature#Extensibility").append("p").html("")}(s),Nn=1;for(let t in a){const e=a[t];zn(s,e.commit.id,a,i),Yn(s,e.commit,i),Nn++}s.attr("height",(function(){return"BT"===i?Object.keys(Bn).length*Ln.nodeSpacing:(a.length+1)*Ln.branchOffset}))}catch(t){v.error("Error while rendering gitgraph"),v.error(t.message)}},$n="",Gn=!1;var Wn={setMessage:t=>{v.debug("Setting message to: "+t),$n=t},getMessage:()=>$n,setInfo:t=>{Gn=t},getInfo:()=>Gn},Kn=n(86),Xn=n.n(Kn);const Zn={};var Jn=function(t){Object.keys(t).forEach((function(e){Zn[e]=t[e]}))},Qn=(t,e,n)=>{try{const r=Xn.a.parser;r.yy=Wn,v.debug("Renering info diagram\n"+t),r.parse(t),v.debug("Parsed info diagram");const i=o.select("#"+e);i.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("v "+n),i.attr("height",100),i.attr("width",400)}catch(t){v.error("Error while rendering info diagram"),v.error(t.message)}};let tr={},er="";var nr={addSection:function(t,e){void 0===tr[t]&&(tr[t]=e,v.debug("Added new section :",t))},getSections:()=>tr,cleanupValue:function(t){return":"===t.substring(0,1)?(t=t.substring(1).trim(),Number(t.trim())):Number(t.trim())},clear:function(){tr={},er=""},setTitle:function(t){er=t},getTitle:function(){return er}},rr=n(87),ir=n.n(rr);const or={};let ar;var sr=function(t){Object.keys(t).forEach((function(e){or[e]=t[e]}))},ur=(t,e)=>{try{const h=ir.a.parser;h.yy=nr,v.debug("Rendering info diagram\n"+t),h.yy.clear(),h.parse(t),v.debug("Parsed info diagram");const d=document.getElementById(e);void 0===(ar=d.parentElement.offsetWidth)&&(ar=1200),void 0!==or.useWidth&&(ar=or.useWidth);const p=450;d.setAttribute("height","100%"),d.setAttribute("viewBox","0 0 "+ar+" "+p);var n=ar,r=Math.min(n,450)/2-40,i=o.select("#"+e).append("svg").attr("width",n).attr("height",450).append("g").attr("transform","translate("+n/2+",225)"),a=nr.getSections(),s=0;Object.keys(a).forEach((function(t){s+=a[t]})),v.info(a);var u=o.scaleOrdinal().domain(a).range(o.schemeSet2),c=o.pie().value((function(t){return t.value}))(o.entries(a)),f=o.arc().innerRadius(0).outerRadius(r);i.selectAll("mySlices").data(c).enter().append("path").attr("d",f).attr("fill",(function(t){return u(t.data.key)})).attr("stroke","black").style("stroke-width","2px").style("opacity",.7),i.selectAll("mySlices").data(c).enter().append("text").text((function(t){return(t.data.value/s*100).toFixed(0)+"%"})).attr("transform",(function(t){return"translate("+f.centroid(t)+")"})).style("text-anchor","middle").attr("class","slice").style("font-size",17),i.append("text").text(h.yy.getTitle()).attr("x",0).attr("y",-(p-50)/2).attr("class","pieTitleText");var l=i.selectAll(".legend").data(u.domain()).enter().append("g").attr("class","legend").attr("transform",(function(t,e){return"translate(216,"+(22*e-22*u.domain().length/2)+")"}));l.append("rect").attr("width",18).attr("height",18).style("fill",u).style("stroke",u),l.append("text").attr("x",22).attr("y",14).text((function(t){return t}))}catch(t){v.error("Error while rendering info diagram"),v.error(t.message)}};const cr={};for(const t of["default","forest","dark","neutral"])cr[t]=n(500)(`./${t}/index.scss`);const fr={theme:"default",themeCSS:void 0,fontFamily:'"trebuchet ms", verdana, arial;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,flowchart:{htmlLabels:!0,curve:"linear"},sequence:{diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,mirrorActors:!0,bottomMarginAdj:1,useMaxWidth:!0,rightAngles:!1,showSequenceNumbers:!1},gantt:{titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,leftPadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"',numberSectionStyles:4,axisFormat:"%Y-%m-%d"},class:{},git:{},state:{dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5}};_(fr.logLevel),f(fr);const lr=function(t){const e=Object.keys(t);for(let n=0;n * { ${t[e].styles.join(" !important; ")} !important; }`}const h=document.createElement("style");h.innerHTML=s()(l,`#${t}`),c.insertBefore(h,f);const d=document.createElement("style"),p=window.getComputedStyle(c);switch(d.innerHTML=`#${t} {\n color: ${p.color};\n font: ${p.font};\n }`,c.insertBefore(d,f),a){case"git":fr.flowchart.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,Vn(fr.git),Hn(e,t,!1);break;case"flowchart":fr.flowchart.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,dt(fr.flowchart),gt(e,t,!1);break;case"sequence":fr.sequence.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,fr.sequenceDiagram?(Yt(Object.assign(fr.sequence,fr.sequenceDiagram)),console.error("`mermaid config.sequenceDiagram` has been renamed to `config.sequence`. Please update your mermaid config.")):Yt(fr.sequence),Vt(e,t);break;case"gantt":fr.gantt.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,Ee(fr.gantt),Ae(e,t);break;case"class":fr.class.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,Ue(fr.class),ze(e,t);break;case"state":pn(fr.state),gn(e,t);break;case"info":fr.class.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,Jn(fr.class),Qn(e,t,u.version);break;case"pie":fr.class.arrowMarkerAbsolute=fr.arrowMarkerAbsolute,sr(fr.class),ur(e,t,u.version)}o.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns","http://www.w3.org/1999/xhtml");let g=o.select("#d"+t).node().innerHTML;if(fr.arrowMarkerAbsolute&&"false"!==fr.arrowMarkerAbsolute||(g=g.replace(/marker-end="url\(.*?#/g,'marker-end="url(#',"g")),g=function(t){let e=t;return e=(e=(e=e.replace(/fl°°/g,(function(){return"&#"}))).replace(/fl°/g,(function(){return"&"}))).replace(/¶ß/g,(function(){return";"}))}(g),void 0!==n)switch(a){case"flowchart":n(g,G.bindFunctions);break;case"gantt":n(g,_e.bindFunctions);break;default:n(g)}else v.debug("CB = undefined!");const y=o.select("#d"+t).node();return null!==y&&"function"==typeof y.remove&&o.select("#d"+t).node().remove(),g},parse:function(t){const e=E.detectType(t);let n;switch(v.debug("Type "+e),e){case"git":(n=In.a).parser.yy=On;break;case"flowchart":G.clear(),(n=K.a).parser.yy=G;break;case"sequence":(n=At.a).parser.yy=Lt;break;case"gantt":(n=$t.a).parser.yy=_e;break;case"class":(n=Ne.a).parser.yy=Re;break;case"state":(n=tn.a).parser.yy=Je;break;case"info":v.debug("info info info"),(n=Xn.a).parser.yy=Wn;break;case"pie":v.debug("pie"),(n=ir.a).parser.yy=nr}n.parser.yy.parseError=(t,e)=>{throw{str:t,hash:e}},n.parse(t)},initialize:function(t){v.debug("Initializing mermaidAPI ",u.version),"object"==typeof t&&lr(t),f(fr),_(fr.logLevel)},getConfig:l};const dr=function(){let t;pr.startOnLoad?(t=hr.getConfig()).startOnLoad&&pr.init():void 0===pr.startOnLoad&&(v.debug("In start, no config"),(t=hr.getConfig()).startOnLoad&&pr.init())};"undefined"!=typeof document&& +/*! + * Wait for document loaded before starting the execution + */ +window.addEventListener("load",(function(){dr()}),!1);const pr={startOnLoad:!0,htmlLabels:!0,mermaidAPI:hr,parse:hr.parse,render:hr.render,init:function(){const t=hr.getConfig();let e,n,r;v.debug("Starting rendering diagrams"),arguments.length>=2?( +/*! sequence config was passed as #1 */ +void 0!==arguments[0]&&(pr.sequenceConfig=arguments[0]),e=arguments[1]):e=arguments[0],"function"==typeof arguments[arguments.length-1]?(n=arguments[arguments.length-1],v.debug("Callback function found")):void 0!==t.mermaid&&("function"==typeof t.mermaid.callback?(n=t.mermaid.callback,v.debug("Callback function found")):v.debug("No Callback function found")),e=void 0===e?document.querySelectorAll(".mermaid"):"string"==typeof e?document.querySelectorAll(e):e instanceof window.Node?[e]:e,v.debug("Start On Load before: "+pr.startOnLoad),void 0!==pr.startOnLoad&&(v.debug("Start On Load inner: "+pr.startOnLoad),hr.initialize({startOnLoad:pr.startOnLoad})),void 0!==pr.ganttConfig&&hr.initialize({gantt:pr.ganttConfig});for(let t=0;t/gi,"
    "),hr.render(a,r,(t,e)=>{o.innerHTML=t,void 0!==n&&n(a),e&&e(o)},o)}},initialize:function(t){v.debug("Initializing mermaid "),void 0!==t.mermaid&&(void 0!==t.mermaid.startOnLoad&&(pr.startOnLoad=t.mermaid.startOnLoad),void 0!==t.mermaid.htmlLabels&&(pr.htmlLabels=t.mermaid.htmlLabels)),hr.initialize(t)},contentLoaded:dr};e.default=pr}]).default})); +//# sourceMappingURL=mermaid.min.js.map \ No newline at end of file diff --git a/MacDown/Resources/Extensions/show-information.css b/MacDown/Resources/Extensions/show-information.css new file mode 100644 index 00000000..f90e554c --- /dev/null +++ b/MacDown/Resources/Extensions/show-information.css @@ -0,0 +1,16 @@ +pre[class*='language-'] { + position: relative; +} +pre[class*='language-'][data-information]::before { + content: attr(data-information); + color: black; + background-color: #CFCFCF; + display: inline-block; + position: absolute; + top: 0; + right: 0; + font-size: 0.9em; + border-radius: 0 0 0 5px; + padding: 0 0.5em; + text-shadow: none; +} \ No newline at end of file diff --git a/MacDown/Resources/Extensions/viz.init.js b/MacDown/Resources/Extensions/viz.init.js new file mode 100644 index 00000000..42caa419 --- /dev/null +++ b/MacDown/Resources/Extensions/viz.init.js @@ -0,0 +1,34 @@ +// graphviz init +(function () { + var graphviz_engines = ["circo", + "dot", + "fdp", + "neato", + "osage", + "twopi"]; + + function doGraphviz(engine) { + var domAllDot = document.querySelectorAll("code.language-" + engine); + for (var i = 0; i < domAllDot.length; i++) { + var dom = domAllDot[i]; + var graphSource = dom.innerText || dom.textContent; + + try { + dom.parentElement.parentElement.innerHTML = Viz(graphSource, {engine: engine}); + } catch (e) { + console.error("Error when parsing node:", dom, e); + } + } + } + + var init = function() { + for (var i = 0; i < graphviz_engines.length; i++) { + doGraphviz(graphviz_engines[i]); + } + }; + if (typeof window.addEventListener != "undefined") { + window.addEventListener("load", init, false); + } else { + window.attachEvent("onload", init); + } +})(); diff --git a/MacDown/Resources/Extensions/viz.js b/MacDown/Resources/Extensions/viz.js new file mode 100644 index 00000000..4f881113 --- /dev/null +++ b/MacDown/Resources/Extensions/viz.js @@ -0,0 +1,109 @@ +(function(global) { +var Module = function(Module) { + Module = Module || {}; + +var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=require("fs");var nodePath=require("path");Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a"}else{ret=name}paramLoop:while(i0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[(function($0){{appendError($0)}})];function _emscripten_asm_const_1(code,a0){return ASM_CONSTS[code](a0)}STATIC_BASE=8;STATICTOP=STATIC_BASE+193488;__ATINIT__.push();allocate([0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,32,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,2,16,0,0,0,0,0,0,0,0,0,0,0,0,16,64,184,176,0,0,8,0,0,0,1,0,0,0,0,0,0,0,2,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,150,64,0,0,0,0,0,128,150,64,4,144,195,0,0,0,0,0,0,0,0,0,0,0,16,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,0,0,0,0,0,0,88,64,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,0,0,0,0,0,0,88,64,0,32,3,2,0,0,0,0,0,0,0,0,0,0,16,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,66,64,0,0,0,0,0,0,66,64,0,0,0,0,0,32,131,64,0,0,0,0,0,192,136,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,64,0,0,0,0,0,0,66,64,0,0,0,0,0,32,131,64,0,0,0,0,0,192,136,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,176,193,0,0,0,0,0,0,0,0,0,0,0,16,64,176,182,0,0,147,0,0,0,1,0,0,0,0,0,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,16,0,2,0,0,0,0,0,0,0,0,0,0,16,64,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,0,0,0,0,0,0,88,64,0,176,193,0,0,0,0,0,0,0,0,0,0,0,0,0,176,186,0,0,16,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,0,0,0,0,0,0,88,64,64,32,62,3,0,0,0,0,0,0,0,0,0,0,16,64,184,187,0,0,122,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,64,0,0,0,0,0,0,82,64],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([255,255,255,255,255,255,239,127,255,255,255,255,255,255,239,127,255,255,255,255,255,255,239,255,255,255,255,255,255,255,239,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,153,153,153,153,153,169,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,153,153,153,153,153,169,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,169,241,210,77,98,80,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,38,245,107,12,195,1,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,2,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,4,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,51,51,51,51,51,51,243,63,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,154,153,153,153,153,153,233,63,6,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,255,255,255,255,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,51,51,51,51,51,211,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,128,70,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,153,153,153,153,153,217,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,51,51,51,51,51,227,63,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123,20,174,71,225,122,228,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,128,102,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,128,102,64,154,153,153,153,153,153,217,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,128,102,64,123,20,174,71,225,122,228,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,128,70,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,223,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,64,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,81,218,27,124,97,50,227,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,244,108,86,125,174,182,214,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,196,66,173,105,222,113,236,63,16,122,54,171,62,87,229,63,245,219,215,129,115,70,204,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,136,133,90,211,188,227,216,63,1,77,132,13,79,175,226,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,1,77,132,13,79,175,226,63,1,77,132,13,79,175,226,63,1,77,132,13,79,175,226,63,181,21,251,203,238,201,225,63,204,93,75,200,7,61,240,63,16,122,54,171,62,87,229,63,16,122,54,171,62,87,229,63,210,111,95,7,206,25,231,63,210,111,95,7,206,25,231,63,16,122,54,171,62,87,229,63,120,11,36,40,126,140,227,63,106,222,113,138,142,228,232,63,210,111,95,7,206,25,231,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,224,63,16,122,54,171,62,87,229,63,181,21,251,203,238,201,225,63,44,212,154,230,29,167,234,63,210,111,95,7,206,25,231,63,106,222,113,138,142,228,232,63,16,122,54,171,62,87,229,63,106,222,113,138,142,228,232,63,210,111,95,7,206,25,231,63,16,122,54,171,62,87,229,63,120,11,36,40,126,140,227,63,210,111,95,7,206,25,231,63,16,122,54,171,62,87,229,63,134,56,214,197,109,52,238,63,16,122,54,171,62,87,229,63,16,122,54,171,62,87,229,63,120,11,36,40,126,140,227,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,166,10,70,37,117,2,222,63,181,21,251,203,238,201,225,63,72,191,125,29,56,103,204,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,0,0,0,0,0,0,224,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,211,188,227,20,29,201,209,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,72,191,125,29,56,103,204,63,72,191,125,29,56,103,204,63,0,0,0,0,0,0,224,63,72,191,125,29,56,103,204,63,44,212,154,230,29,167,234,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,224,63,211,188,227,20,29,201,209,63,181,21,251,203,238,201,225,63,0,0,0,0,0,0,224,63,210,111,95,7,206,25,231,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,2,154,8,27,158,94,213,63,224,190,14,156,51,162,208,63,2,154,8,27,158,94,213,63,1,77,132,13,79,175,226,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,62,232,217,172,250,92,197,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,29,56,103,68,105,111,200,63,88,168,53,205,59,78,213,63,181,21,251,203,238,201,225,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,211,188,227,20,29,201,209,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,231,29,167,232,72,46,225,63,162,180,55,248,194,100,214,63,72,191,125,29,56,103,204,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,181,21,251,203,238,201,225,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,211,188,227,20,29,201,209,63,120,11,36,40,126,140,227,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,240,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,240,63,211,188,227,20,29,201,209,63,234,149,178,12,113,172,215,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,181,21,251,203,238,201,225,63,106,222,113,138,142,228,232,63,0,0,0,0,0,0,240,63,152,221,147,135,133,90,215,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,196,66,173,105,222,113,236,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,72,191,125,29,56,103,204,63,120,11,36,40,126,140,227,63,134,56,214,197,109,52,238,63,120,11,36,40,126,140,227,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,37,117,2,154,8,27,218,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,44,212,154,230,29,167,234,63,106,222,113,138,142,228,232,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,224,63,93,220,70,3,120,11,226,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,208,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,93,220,70,3,120,11,226,63,93,220,70,3,120,11,226,63,93,220,70,3,120,11,226,63,13,113,172,139,219,104,220,63,100,93,220,70,3,120,237,63,210,111,95,7,206,25,231,63,16,122,54,171,62,87,229,63,16,122,54,171,62,87,229,63,210,111,95,7,206,25,231,63,120,11,36,40,126,140,227,63,181,21,251,203,238,201,225,63,210,111,95,7,206,25,231,63,210,111,95,7,206,25,231,63,88,168,53,205,59,78,213,63,136,133,90,211,188,227,216,63,210,111,95,7,206,25,231,63,120,11,36,40,126,140,227,63,196,66,173,105,222,113,236,63,210,111,95,7,206,25,231,63,210,111,95,7,206,25,231,63,181,21,251,203,238,201,225,63,210,111,95,7,206,25,231,63,16,122,54,171,62,87,229,63,181,21,251,203,238,201,225,63,120,11,36,40,126,140,227,63,210,111,95,7,206,25,231,63,210,111,95,7,206,25,231,63,134,56,214,197,109,52,238,63,210,111,95,7,206,25,231,63,210,111,95,7,206,25,231,63,120,11,36,40,126,140,227,63,88,168,53,205,59,78,213,63,211,188,227,20,29,201,209,63,88,168,53,205,59,78,213,63,166,10,70,37,117,2,222,63,0,0,0,0,0,0,224,63,88,168,53,205,59,78,213,63,13,113,172,139,219,104,220,63,0,0,0,0,0,0,224,63,13,113,172,139,219,104,220,63,0,0,0,0,0,0,224,63,13,113,172,139,219,104,220,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,211,188,227,20,29,201,209,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,224,63,211,188,227,20,29,201,209,63,106,222,113,138,142,228,232,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,88,168,53,205,59,78,213,63,136,133,90,211,188,227,216,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,210,111,95,7,206,25,231,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,13,113,172,139,219,104,220,63,244,108,86,125,174,182,222,63,17,54,60,189,82,150,201,63,244,108,86,125,174,182,222,63,59,1,77,132,13,79,225,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,62,232,217,172,250,92,197,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,130,115,70,148,246,6,199,63,13,113,172,139,219,104,220,63,0,0,0,0,0,0,224,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,181,21,251,203,238,201,225,63,181,21,251,203,238,201,225,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,7,240,22,72,80,252,220,63,162,180,55,248,194,100,214,63,88,168,53,205,59,78,213,63,13,113,172,139,219,104,220,63,13,113,172,139,219,104,220,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,208,63,13,113,172,139,219,104,220,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,208,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,88,168,53,205,59,78,213,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,196,66,173,105,222,113,236,63,0,0,0,0,0,0,208,63,127,217,61,121,88,168,209,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,120,11,36,40,126,140,227,63,210,111,95,7,206,25,231,63,196,66,173,105,222,113,236,63,19,242,65,207,102,213,211,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,16,122,54,171,62,87,229,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,211,188,227,20,29,201,209,63,0,0,0,0,0,0,224,63,210,111,95,7,206,25,231,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,0,0,0,0,0,0,208,63,132,245,127,14,243,101,15,64,96,118,79,30,22,42,43,192,98,189,81,43,76,223,205,191,23,133,184,205,175,65,138,63,212,130,23,125,5,105,241,191,93,134,255,116,3,133,235,63,247,21,214,83,204,189,55,63,186,205,91,66,44,5,46,63,58,205,2,237,14,41,238,191,250,185,161,41,59,253,216,63,249,97,41,55,246,145,128,63,167,57,30,216,150,166,125,63,155,200,204,5,46,143,231,191,198,51,104,232,159,224,202,63,54,130,67,94,197,152,138,63,26,142,66,237,18,48,133,63,122,52,213,147,249,71,217,191,205,228,155,109,110,76,27,64,229,103,126,144,192,122,185,63,254,198,232,202,177,6,137,63,115,243,141,232,158,117,225,191,231,86,99,100,36,214,179,63,209,99,239,32,209,95,155,63,231,208,216,77,223,33,139,63,7,242,71,172,32,97,171,63,15,149,235,18,122,162,182,191,179,181,190,72,104,203,137,63,124,90,234,197,245,148,161,63,7,234,148,71,55,194,202,63,70,227,154,76,38,184,174,191,51,242,129,54,156,166,125,191,45,30,197,214,191,45,128,63,210,26,131,78,8,29,182,63,88,57,180,200,118,30,39,192,85,193,168,164,78,128,5,192,246,9,160,24,89,50,199,63,137,149,209,200,231,21,207,63,98,45,62,5,192,248,252,191,11,94,244,21,164,25,249,63,129,236,245,238,143,247,250,63,43,47,249,159,252,221,205,63,115,187,151,251,228,40,221,191,250,210,219,159,139,134,204,63,235,201,252,163,111,210,217,63,230,44,162,220,108,98,175,63,228,132,9,163,89,217,186,191,225,188,147,170,72,224,166,63,204,197,8,118,54,195,129,63,88,55,222,29,25,171,157,63,234,178,152,216,124,188,26,64,206,0,23,100,203,242,197,63,117,250,139,234,190,173,149,63,192,189,33,67,125,129,159,63,171,93,19,210,26,131,170,191,36,176,222,77,92,51,150,63,170,17,85,83,237,46,179,191,9,198,28,95,214,31,168,191,63,198,220,181,132,124,192,63,82,147,133,84,246,2,180,191,0,0,0,0,0,0,0,64,111,210,217,110,39,182,159,191,60,37,49,82,57,55,171,63,66,108,250,253,172,67,151,191,197,80,243,250,56,63,166,63,123,20,174,71,225,122,148,63,164,112,61,10,215,163,6,64,0,0,0,0,0,0,192,63,123,20,174,71,225,122,132,63,81,160,79,228,73,210,14,64,180,200,118,190,159,58,53,192,58,34,223,165,212,37,213,191,243,130,62,71,154,46,138,63,159,229,121,112,119,214,249,191,126,253,16,27,44,156,230,63,150,236,216,8,196,235,204,63,205,206,162,119,42,224,208,63,176,227,191,64,16,32,237,191],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+33272);allocate([173,161,212,94,68,219,216,63,59,161,124,230,81,150,118,63,211,110,112,249,122,132,123,63,129,204,206,162,119,42,228,191,209,173,215,244,160,160,200,63,106,223,55,25,176,63,132,63,190,202,144,25,94,255,132,63,28,150,6,126,84,195,196,191,165,73,41,232,246,226,35,64,169,217,3,173,192,144,193,63,8,196,144,65,147,105,137,63,250,68,158,36,93,51,208,191,1,240,153,54,45,194,94,63,13,156,125,47,207,148,151,63,137,181,248,20,0,227,137,63,229,169,88,70,52,203,177,191,143,0,201,207,161,103,166,191,92,181,198,251,204,180,136,63,77,164,143,84,58,179,144,63,230,199,4,161,97,214,160,191,199,105,103,28,19,247,130,191,42,127,107,229,45,112,92,191,228,87,98,84,8,154,117,63,209,241,135,85,114,4,183,63,149,212,9,104,34,60,51,192,100,35,16,175,235,119,16,192,167,33,170,240,103,120,199,63,218,255,0,107,213,174,193,63,78,40,68,192,33,84,247,191,170,72,133,177,133,32,245,63,157,104,87,33,229,39,246,63,77,46,198,192,58,142,205,63,89,107,40,181,23,209,220,191,3,63,170,97,191,39,204,63,166,71,83,61,153,127,218,63,182,129,59,80,167,60,174,63,81,76,222,0,51,223,185,191,245,118,149,255,218,11,166,63,212,165,53,188,15,246,148,63,31,173,32,188,44,220,144,63,40,44,241,128,178,201,35,64,35,90,225,76,2,138,183,63,72,163,101,81,150,41,127,63,187,180,134,247,193,158,147,63,23,168,123,83,71,125,160,191,33,43,174,224,109,148,139,63,51,115,220,132,214,30,181,191,160,120,132,137,245,252,143,63,105,53,36,238,177,244,145,191,184,205,51,122,94,191,106,63,146,62,173,162,63,52,205,191,126,176,231,198,79,62,152,191,7,35,155,80,45,199,164,63,62,24,194,123,88,185,145,191,45,124,125,173,75,141,198,63,252,169,241,210,77,98,80,63,236,81,184,30,133,235,19,64,229,208,34,219,249,126,202,63,83,150,33,142,117,113,123,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,0,0,0,64,251,33,249,63,0,0,0,0,45,68,116,62,0,0,0,128,152,70,248,60,0,0,0,96,81,204,120,59,0,0,0,128,131,27,240,57,0,0,0,64,32,37,122,56,0,0,0,128,34,130,227,54,0,0,0,0,29,243,105,53,0,0,0,0,0,0,0,0,0,0,0,0,93,153,1,0,116,172,0,0,3,0,0,0,64,174,0,0,3,0,0,0,144,176,0,0,3,0,0,0,52,177,0,0,3,0,0,0,104,178,0,0,3,0,0,0,136,182,0,0,3,0,0,0,172,185,0,0,3,0,0,0,120,186,0,0,3,0,0,0,72,190,0,0,3,0,0,0,144,187,0,0,0,0,0,0,4,174,0,0,0,0,0,0,104,176,0,0,0,0,0,0,12,177,0,0,0,0,0,0,64,178,0,0,0,0,0,0,96,182,0,0,0,0,0,0,132,185,0,0,0,0,0,0,80,186,0,0,0,0,0,0,32,190,0,0,0,0,0,0,104,187,0,0,4,0,0,0,152,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,209,24,2,0,1,0,0,0,20,173,0,0,8,0,0,0,4,0,0,0,101,153,1,0,1,0,0,0,140,173,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,114,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,121,153,1,0,1,0,0,0,0,0,0,0,72,0,0,0,2,0,0,0,131,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,141,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,4,0,0,0,155,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,5,0,0,0,165,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,6,0,0,0,178,153,1,0,1,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,175,0,0,128,175,0,0,144,175,0,0,160,175,0,0,176,175,0,0,192,175,0,0,208,175,0,0,224,175,0,0,128,175,0,0,128,175,0,0,192,175,0,0,192,175,0,0,0,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,120,154,1,0,1,0,0,0,240,175,0,0,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,154,1,0,1,0,0,0,0,0,0,0,56,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,171,2,0,74,148,2,0,219,149,2,0,27,156,2,0,18,163,2,0,81,167,2,0,209,170,2,0,226,170,2,0,0,0,0,0,69,171,2,0,74,148,2,0,27,156,2,0,219,149,2,0,81,167,2,0,18,163,2,0,226,170,2,0,209,170,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,72,156,1,0,1,0,0,0,192,177,0,0,112,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,76,156,1,0,1,0,0,0,0,0,0,0,144,1,0,0,2,0,0,0,86,156,1,0,1,0,0,0,0,0,0,0,200,1,0,0,0,0,0,0,95,156,1,0,1,0,0,0,0,0,0,0,200,1,0,0,3,0,0,0,104,156,1,0,1,0,0,0,0,0,0,0,200,1,0,0,0,0,0,0,114,156,1,0,1,0,0,0,0,0,0,0,144,1,0,0,3,0,0,0,126,156,1,0,1,0,0,0,0,0,0,0,144,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,125,33,2,0,1,0,0,0,184,178,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,217,1,0,1,0,0,0,0,0,0,0,32,2,0,0,1,0,0,0,197,157,1,0,1,0,0,0,0,0,0,0,32,2,0,0,2,0,0,0,42,217,1,0,1,0,0,0,0,0,0,0,88,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,196,161,1,0,210,161,1,0,232,161,1,0,86,185,2,0,246,161,1,0,5,162,1,0,10,162,1,0,40,162,1,0,86,185,2,0,58,162,1,0,106,162,1,0,86,185,2,0,136,162,1,0,176,162,1,0,190,162,1,0,237,162,1,0,33,163,1,0,50,163,1,0,87,163,1,0,122,163,1,0,128,163,1,0,156,163,1,0,185,163,1,0,212,163,1,0,245,163,1,0,15,164,1,0,49,164,1,0,80,164,1,0,118,164,1,0,142,164,1,0,174,164,1,0,203,164,1,0,239,164,1,0,251,164,1,0,86,185,2,0,6,165,1,0,44,165,1,0,80,165,1,0,118,165,1,0,86,185,2,0,172,165,1,0,196,165,1,0,209,165,1,0,0,166,1,0,251,164,1,0,86,185,2,0,13,166,1,0,22,166,1,0,55,166,1,0,114,166,1,0,189,166,1,0,17,167,1,0,51,167,1,0,72,167,1,0,95,167,1,0,117,167,1,0,141,167,1,0,86,185,2,0,163,167,1,0,190,167,1,0,226,167,1,0,6,168,1,0,43,168,1,0,86,185,2,0,76,168,1,0,102,168,1,0,120,168,1,0,133,168,1,0,146,168,1,0,166,168,1,0,181,168,1,0,189,168,1,0,210,168,1,0,224,168,1,0,30,169,1,0,41,169,1,0,251,164,1,0,86,185,2,0,47,169,1,0,59,169,1,0,74,169,1,0,122,163,1,0,86,185,2,0,93,169,1,0,134,169,1,0,164,169,1,0,180,169,1,0,197,169,1,0,204,169,1,0,219,169,1,0,235,169,1,0,47,170,1,0,54,170,1,0,122,163,1,0,86,185,2,0,64,170,1,0,108,170,1,0,119,170,1,0,128,170,1,0,137,170,1,0,154,170,1,0,171,170,1,0,191,170,1,0,251,164,1,0,86,185,2,0,203,170,1,0,219,170,1,0,233,170,1,0,247,170,1,0,4,171,1,0,17,171,1,0,39,171,1,0,48,171,1,0,63,171,1,0,76,171,1,0,93,171,1,0,251,164,1,0,86,185,2,0,104,171,1,0,135,171,1,0,86,185,2,0,153,171,1,0,168,171,1,0,216,171,1,0,226,171,1,0,239,171,1,0,252,171,1,0,9,172,1,0,22,172,1,0,25,172,1,0,86,185,2,0,29,172,1,0,86,185,2,0,64,172,1,0,113,172,1,0,160,172,1,0,183,172,1,0,210,172,1,0,237,172,1,0,251,164,1,0,86,185,2,0,9,173,1,0,86,185,2,0,49,173,1,0,61,173,1,0,80,173,1,0,99,173,1,0,120,173,1,0,141,173,1,0,145,173,1,0,122,163,1,0,86,185,2,0,157,173,1,0,86,185,2,0,173,173,1,0,187,173,1,0,199,173,1,0,212,173,1,0,244,173,1,0,4,174,1,0,26,174,1,0,86,185,2,0,46,174,1,0,119,174,1,0,189,174,1,0,237,174,1,0,32,175,1,0,39,175,1,0,78,175,1,0,117,175,1,0,86,185,2,0,122,175,1,0,0,0,0,0,26,0,0,0,0,0,0,0,27,0,0,0,28,0,0,0,5,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,4,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,11,0,0,0,6,0,0,0,4,0,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,128,33,2,0,1,0,0,0,232,181,0,0,144,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,218,1,0,1,0,0,0,0,0,0,0,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,147,2,0,108,147,2,0,50,184,1,0,177,147,2,0,236,147,2,0,14,148,2,0,20,148,2,0,69,171,2,0,59,148,2,0,74,148,2,0,103,148,2,0,114,148,2,0,148,148,2,0,202,148,2,0,0,149,2,0,59,149,2,0,113,149,2,0,147,149,2,0,162,149,2,0,211,149,2,0,219,149,2,0,238,175,1,0,247,175,1,0,248,149,2,0,0,176,1,0,66,150,2,0,9,176,1,0,76,150,2,0,18,176,1,0,86,150,2,0,165,150,2,0,224,150,2,0,30,176,1,0,27,151,2,0,38,151,2,0,107,151,2,0,121,151,2,0,195,151,2,0,209,151,2,0,223,151,2,0,234,151,2,0,27,152,2,0,91,152,2,0,99,152,2,0,107,152,2,0,166,152,2,0,220,152,2,0,232,152,2,0,55,184,1,0,244,152,2,0,254,152,2,0,9,153,2,0,38,153,2,0,92,153,2,0,27,156,2,0,61,156,2,0,73,156,2,0,8,159,2,0,57,159,2,0,101,159,2,0,155,159,2,0,168,159,2,0,202,159,2,0,236,159,2,0,245,159,2,0,63,160,2,0,73,160,2,0,142,160,2,0,196,160,2,0,207,160,2,0,84,161,2,0,105,161,2,0,38,176,1,0,115,161,2,0,125,161,2,0,179,161,2,0,243,161,2,0,1,162,2,0,85,162,2,0,100,162,2,0,115,162,2,0,194,162,2,0,63,184,1,0,2,163,2,0,12,163,2,0,18,163,2,0,62,163,2,0,101,163,2,0,118,163,2,0,129,163,2,0,198,163,2,0,11,164,2,0,26,164,2,0,42,164,2,0,60,164,2,0,76,164,2,0,92,164,2,0,105,164,2,0,115,164,2,0,169,164,2,0,178,164,2,0,242,164,2,0,5,165,2,0,68,184,1,0,13,165,2,0,67,165,2,0,106,165,2,0,160,165,2,0,199,165,2,0,213,165,2,0,11,166,2,0,85,166,2,0,159,166,2,0,170,166,2,0,224,166,2,0,229,166,2,0,2,167,2,0,31,167,2,0,42,167,2,0,81,167,2,0,105,167,2,0,159,167,2,0,213,167,2,0,225,167,2,0,8,168,2,0,19,168,2,0,68,168,2,0,117,168,2,0,111,196,1,0,156,168,2,0,200,168,2,0,254,168,2,0,52,169,2,0,62,169,2,0,91,169,2,0,155,169,2,0,209,169,2,0,74,184,1,0,233,169,2,0,21,170,2,0,60,170,2,0,114,170,2,0,175,170,2,0,209,170,2,0,215,170,2,0,226,170,2,0,9,171,2,0,214,176,1,0,210,176,1,0,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,7,0,0,0,5,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,195,182,1,0,1,0,0,0,12,185,0,0,232,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,182,1,0,1,0,0,0,0,0,0,0,8,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,44,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,17,0,0,0,8,0,0,0,6,0,0,0,18,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,38,184,1,0,1,0,0,0,216,185,0,0,64,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,184,1,0,1,0,0,0,0,0,0,0,96,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,184,1,0,69,171,2,0,74,148,2,0,55,184,1,0,92,153,2,0,27,156,2,0,63,184,1,0,62,163,2,0,242,164,2,0,68,184,1,0,42,167,2,0,81,167,2,0,111,196,1,0,74,184,1,0,209,170,2,0,226,170,2,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,9,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,10,0,0,0,7,0,0,0,21,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,249,194,1,0,1,0,0,0,240,186,0,0,152,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,194,1,0,1,0,0,0,0,0,0,0,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,177,147,2,0,5,195,1,0,69,171,2,0,74,148,2,0,103,148,2,0,16,195,1,0,22,195,1,0,33,195,1,0,40,195,1,0,114,148,2,0,202,148,2,0,48,195,1,0,54,195,1,0,65,195,1,0,113,149,2,0,147,149,2,0,219,149,2,0,72,195,1,0,66,150,2,0,86,150,2,0,224,150,2,0,82,195,1,0,107,151,2,0,121,151,2,0,195,151,2,0,93,195,1,0,209,151,2,0,101,195,1,0,110,195,1,0,124,195,1,0,134,195,1,0,166,152,2,0,143,195,1,0,232,152,2,0,9,153,2,0,38,153,2,0,149,195,1,0,109,153,2,0,152,153,2,0,193,153,2,0,228,153,2,0,13,154,2,0,48,154,2,0,89,154,2,0,124,154,2,0,165,154,2,0,200,154,2,0,241,154,2,0,20,155,2,0,61,155,2,0,96,155,2,0,137,155,2,0,172,155,2,0,213,155,2,0,248,155,2,0,27,156,2,0,156,195,1,0,61,156,2,0,168,195,1,0,101,159,2,0,202,159,2,0,142,160,2,0,181,195,1,0,115,162,2,0,194,195,1,0,2,163,2,0,18,163,2,0,204,195,1,0,62,163,2,0,101,163,2,0,118,163,2,0,219,195,1,0,237,195,1,0,129,163,2,0,11,164,2,0,26,164,2,0,42,164,2,0,60,164,2,0,76,164,2,0,253,195,1,0,8,196,1,0,19,196,1,0,92,164,2,0,242,164,2,0,247,164,2,0,24,196,1,0,33,196,1,0,42,196,1,0,58,196,1,0,65,196,1,0,67,165,2,0,106,165,2,0,160,165,2,0,213,165,2,0,229,166,2,0,2,167,2,0,73,196,1,0,81,167,2,0,80,196,1,0,225,167,2,0,89,196,1,0,19,168,2,0,97,196,1,0,117,168,2,0,111,196,1,0,156,168,2,0,200,168,2,0,118,196,1,0,91,169,2,0,155,169,2,0,128,196,1,0,209,169,2,0,233,169,2,0,60,170,2,0,138,196,1,0,152,196,1,0,114,170,2,0,121,170,2,0,175,170,2,0,209,170,2,0,226,170,2,0,9,171,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,61,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,23,0,0,0,11,0,0,0,8,0,0,0,24,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,206,1,0,255,255,255,255,168,189,0,0,240,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,206,1,0,255,255,255,255,0,0,0,0,16,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,206,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,66,0,0,160,52,2,0,65,73,0,0,122,52,2,0,65,82,0,0,77,52,2,0,65,88,0,0,181,52,2,0,66,32,0,0,241,54,2,0,66,73,0,0,2,55,2,0,67,66,0,0,58,53,2,0,67,79,0,0,40,53,2,0,67,88,0,0,71,53,2,0,72,32,0,0,107,53,2,0,72,66,0,0,117,53,2,0,72,73,0,0,1,54,2,0,72,88,0,0,132,53,2,0,72,98,0,0,181,53,2,0,72,105,0,0,232,53,2,0,72,114,0,0,154,53,2,0,72,120,0,0,203,53,2,0,73,32,0,0,19,55,2,0,75,66,0,0,204,52,2,0,75,73,0,0,20,53,2,0,75,82,0,0,0,53,2,0,75,88,0,0,237,52,2,0,78,66,0,0,19,54,2,0,78,73,0,0,90,54,2,0,78,82,0,0,114,54,2,0,78,88,0,0,62,54,2,0,80,65,0,0,211,54,2,0,80,66,0,0,143,54,2,0,80,73,0,0,195,54,2,0,80,88,0,0,175,54,2,0,82,32,0,0,193,56,2,0,83,32,0,0,226,54,2,0,90,68,0,0,80,55,2,0,0,0,0,0,0,0,0,0,1,0,0,0,15,0,0,0,170,216,1,0,1,0,0,0,128,195,0,0,0,0,0,0,16,0,0,0,178,216,1,0,1,0,0,0,128,195,0,0,0,0,0,0,17,0,0,0,186,216,1,0,1,0,0,0,128,195,0,0,0,0,0,0,17,0,0,0,195,216,1,0,1,0,0,0,128,195,0,0,0,0,0,0,17,0,0,0,203,216,1,0,1,0,0,0,128,195,0,0,0,0,0,0,19,0,0,0,211,216,1,0,1,0,0,0,132,195,0,0,0,0,0,0,20,0,0,0,219,216,1,0,1,0,0,0,132,195,0,0,0,0,0,0,21,0,0,0,227,216,1,0,1,0,0,0,132,195,0,0,0,0,0,0,21,0,0,0,236,216,1,0,1,0,0,0,132,195,0,0,0,0,0,0,21,0,0,0,244,216,1,0,1,0,0,0,132,195,0,0,0,0,0,0,22,0,0,0,252,216,1,0,1,0,0,0,136,195,0,0,0,0,0,0,23,0,0,0,5,217,1,0,1,0,0,0,136,195,0,0,0,0,0,0,24,0,0,0,14,217,1,0,1,0,0,0,136,195,0,0,0,0,0,0,24,0,0,0,24,217,1,0,1,0,0,0,136,195,0,0,0,0,0,0,24,0,0,0,33,217,1,0,1,0,0,0,136,195,0,0,0,0,0,0,25,0,0,0,42,217,1,0,1,0,0,0,140,195,0,0,0,0,0,0,25,0,0,0,49,217,1,0,1,0,0,0,140,195,0,0,0,0,0,0,26,0,0,0,55,217,1,0,1,0,0,0,144,195,0,0,0,0,0,0,10,0,0,0,64,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,11,0,0,0,72,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,12,0,0,0,80,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,12,0,0,0,89,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,12,0,0,0,97,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,14,0,0,0,105,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,14,0,0,0,112,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,13,0,0,0,120,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,5,0,0,0,128,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,6,0,0,0,136,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,7,0,0,0,144,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,7,0,0,0,153,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,7,0,0,0,161,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,9,0,0,0,169,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,9,0,0,0,176,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,8,0,0,0,184,217,1,0,1,0,0,0,148,195,0,0,0,0,0,0,0,0,0,0,192,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,1,0,0,0,201,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,2,0,0,0,210,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,2,0,0,0,220,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,2,0,0,0,229,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,4,0,0,0,238,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,4,0,0,0,246,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,3,0,0,0,255,217,1,0,1,0,0,0,152,195,0,0,0,0,0,0,18,0,0,0,8,218,1,0,1,0,0,0,128,195,0,0,0,0,0,0,27,0,0,0,16,218,1,0,1,0,0,0,156,195,0,0,0,0,0,0,28,0,0,0,24,218,1,0,1,0,0,0,156,195,0,0,0,0,0,0,29,0,0,0,32,218,1,0,1,0,0,0,156,195,0,0,0,0,0,0,29,0,0,0,41,218,1,0,1,0,0,0,156,195,0,0,0,0,0,0,29,0,0,0,49,218,1,0,1,0,0,0,156,195,0,0,0,0,0,0,30,0,0,0,57,218,1,0,1,0,0,0,160,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,164,221,1,0,172,195,0,0,1,0,0,0,200,195,0,0,0,0,0,0,0,0,0,0,63,0,0,0,64,0,0,0,1,0,0,0,0,0,0,0,209,24,2,0,0,0,0,0,188,195,0,0,196,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,1,0,0,48,1,0,0,176,0,0,0,47,229,1,0,52,229,1,0,56,229,1,0,63,229,1,0,67,229,1,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,234,1,0,120,197,0,0,1,0,0,0,212,197,0,0,0,0,0,0,0,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,66,0,0,0,76,0,0,0,66,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,50,234,1,0,0,0,0,0,136,197,0,0,208,197,0,0,1,0,0,0,56,234,1,0,0,0,0,0,144,197,0,0,208,197,0,0,2,0,0,0,60,234,1,0,0,0,0,0,152,197,0,0,208,197,0,0,3,0,0,0,65,234,1,0,0,0,0,0,160,197,0,0,208,197,0,0,4,0,0,0,71,234,1,0,0,0,0,0,168,197,0,0,208,197,0,0,5,0,0,0,77,234,1,0,0,0,0,0,192,197,0,0,208,197,0,0,6,0,0,0,87,234,1,0,0,0,0,0,200,197,0,0,208,197,0,0,7,0,0,0,93,234,1,0,0,0,0,0,176,197,0,0,208,197,0,0,7,0,0,0,97,234,1,0,0,0,0,0,176,197,0,0,208,197,0,0,7,0,0,0,102,234,1,0,0,0,0,0,184,197,0,0,208,197,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,242,236,1,0,8,0,0,0,48,0,0,0,0,0,0,0,1,0,0,0,28,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,86,185,2,0,0,0,0,0,0,165,2,0,1,0,0,0,245,252,1,0,7,0,0,0,253,252,1,0,3,0,0,0,63,186,2,0,5,0,0,0,5,253,1,0,15,0,0,0,101,33,2,0,8,0,0,0,101,33,2,0,16,0,0,0,13,253,1,0,4,0,0,0,13,253,1,0,17,0,0,0,18,253,1,0,5,0,0,0,18,253,1,0,2,0,0,0,24,253,1,0,6,0,0,0,31,253,1,0,4,0,0,0,43,253,1,0,7,0,0,0,51,253,1,0,7,0,0,0,67,253,1,0,5,0,0,0,73,253,1,0,8,0,0,0,96,253,1,0,8,0,0,0,73,253,1,0,9,0,0,0,105,253,1,0,7,0,0,0,113,253,1,0,10,0,0,0,139,253,1,0,7,0,0,0,147,253,1,0,11,0,0,0,173,253,1,0,6,0,0,0,180,253,1,0,12,0,0,0,210,253,1,0,9,0,0,0,180,253,1,0,13,0,0,0,220,253,1,0,8,0,0,0,229,253,1,0,14,0,0,0,6,254,1,0,8,0,0,0,15,254,1,0,18,0,0,0,48,254,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,29,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,30,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,64,0,0,0,228,202,0,0,109,11,2,0,8,203,0,0,16,203,0,0,6,0,0,0,4,0,0,0,252,202,0,0,6,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,8,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,11,2,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,10,0,0,0,196,204,0,0,68,204,0,0,172,204,0,0,0,0,0,0,1,0,0,0,1,0,0,0,7,0,0,0,32,0,0,0,8,0,0,0,81,0,0,0,33,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,5,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,0,0,14,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,6,0,0,0,1,0,0,0,1,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,1,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,19,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,1,0,0,0,30,0,0,0,1,0,0,0,1,0,0,0,19,0,0,0,1,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,19,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,19,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,46,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,47,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,48,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+43512);allocate([19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,1,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,92,70,2,0,87,70,2,0,213,14,2,0,106,70,2,0,112,70,2,0,97,70,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,89,19,2,0,96,19,2,0,133,70,2,0,103,19,2,0,110,19,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,145,20,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,20,2,0,8,0,0,0,3,0,0,0,229,20,2,0,233,20,2,0,11,0,0,0,6,0,0,0,125,33,2,0,245,20,2,0,2,0,0,0,1,0,0,0,248,20,2,0,252,20,2,0,4,0,0,0,2,0,0,0,1,21,2,0,5,21,2,0,4,0,0,0,4,0,0,0,10,21,2,0,15,21,2,0,5,0,0,0,5,0,0,0,21,21,2,0,25,21,2,0,4,0,0,0,7,0,0,0,30,21,2,0,34,21,2,0,5,0,0,0,9,0,0,0,40,21,2,0,44,21,2,0,4,0,0,0,10,0,0,0,49,21,2,0,54,21,2,0,4,0,0,0,12,0,0,0,59,21,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,86,29,2,0,0,0,0,0,1,0,0,0,94,29,2,0,1,0,0,0,0,0,0,0,47,69,2,0,1,0,0,0,1,0,0,0,0,165,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,243,24,2,0,49,0,0,0,0,0,0,0,0,0,0,0,230,57,2,0,16,0,0,0,142,177,2,0,128,0,0,0,236,24,2,0,64,0,0,0,23,47,2,0,16,0,0,0,238,24,2,0,64,0,0,0,0,0,0,0,0,0,0,0,193,24,2,0,1,0,0,0,200,24,2,0,2,0,0,0,205,24,2,0,3,0,0,0,212,64,2,0,4,0,0,0,107,47,2,0,5,0,0,0,209,24,2,0,6,0,0,0,0,165,2,0,8,0,0,0,213,24,2,0,33,0,0,0,217,24,2,0,34,0,0,0,221,24,2,0,34,0,0,0,225,24,2,0,1,0,0,0,230,24,2,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,228,28,2,0,235,28,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,208,132,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,122,33,2,0,125,33,2,0,128,33,2,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,255,255,255,255,61,33,2,0,67,33,2,0,0,165,2,0,0,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,39,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,11,0,0,0,40,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,212,64,2,0,208,222,0,0,80,133,0,0,0,0,0,0,58,47,2,0,208,222,0,0,128,133,0,0,0,0,0,0,185,56,2,0,208,222,0,0,176,133,0,0,0,0,0,0,66,47,2,0,208,222,0,0,176,133,0,0,0,0,0,0,71,47,2,0,208,222,0,0,224,133,0,0,0,0,0,0,78,47,2,0,232,222,0,0,224,133,0,0,0,0,0,0,84,47,2,0,208,222,0,0,16,134,0,0,0,0,0,0,88,47,2,0,208,222,0,0,64,134,0,0,0,0,0,0,0,165,2,0,208,222,0,0,112,134,0,0,0,0,0,0,97,47,2,0,208,222,0,0,112,134,0,0,0,0,0,0,107,47,2,0,208,222,0,0,160,134,0,0,0,0,0,0,115,47,2,0,208,222,0,0,208,134,0,0,0,0,0,0,125,47,2,0,208,222,0,0,0,135,0,0,0,0,0,0,139,47,2,0,208,222,0,0,48,135,0,0,0,0,0,0,145,47,2,0,208,222,0,0,96,135,0,0,0,0,0,0,154,47,2,0,208,222,0,0,144,135,0,0,0,0,0,0,162,47,2,0,208,222,0,0,192,135,0,0,0,0,0,0,171,47,2,0,208,222,0,0,240,135,0,0,0,0,0,0,179,47,2,0,208,222,0,0,32,136,0,0,0,0,0,0,184,47,2,0,208,222,0,0,80,136,0,0,0,0,0,0,188,47,2,0,208,222,0,0,128,136,0,0,0,0,0,0,195,47,2,0,208,222,0,0,176,136,0,0,0,0,0,0,201,47,2,0,208,222,0,0,224,136,0,0,0,0,0,0,211,47,2,0,208,222,0,0,80,133,0,0,0,0,0,0,216,47,2,0,208,222,0,0,80,133,0,0,0,0,0,0,226,47,2,0,208,222,0,0,16,137,0,0,0,0,0,0,233,47,2,0,208,222,0,0,64,137,0,0,0,0,0,0,246,47,2,0,208,222,0,0,112,137,0,0,0,0,0,0,4,48,2,0,208,222,0,0,160,137,0,0,0,0,0,0,18,48,2,0,208,222,0,0,208,137,0,0,0,0,0,0,30,48,2,0,208,222,0,0,0,138,0,0,0,0,0,0,43,48,2,0,208,222,0,0,48,138,0,0,0,0,0,0,52,48,2,0,208,222,0,0,96,138,0,0,0,0,0,0,62,48,2,0,208,222,0,0,144,138,0,0,0,0,0,0,71,48,2,0,208,222,0,0,192,138,0,0,0,0,0,0,79,48,2,0,208,222,0,0,240,138,0,0,0,0,0,0,87,48,2,0,208,222,0,0,32,139,0,0,0,0,0,0,96,48,2,0,208,222,0,0,80,139,0,0,0,0,0,0,100,48,2,0,208,222,0,0,128,139,0,0,0,0,0,0,111,48,2,0,208,222,0,0,176,139,0,0,0,0,0,0,115,48,2,0,208,222,0,0,224,139,0,0,0,0,0,0,125,48,2,0,208,222,0,0,16,140,0,0,0,0,0,0,134,48,2,0,208,222,0,0,64,140,0,0,0,0,0,0,142,48,2,0,208,222,0,0,112,140,0,0,0,0,0,0,155,48,2,0,208,222,0,0,160,140,0,0,0,0,0,0,167,48,2,0,208,222,0,0,208,140,0,0,0,0,0,0,178,48,2,0,208,222,0,0,0,141,0,0,0,0,0,0,194,48,2,0,208,222,0,0,48,141,0,0,0,0,0,0,208,48,2,0,208,222,0,0,96,141,0,0,0,0,0,0,223,48,2,0,208,222,0,0,144,141,0,0,0,0,0,0,233,48,2,0,208,222,0,0,192,141,0,0,0,0,0,0,242,48,2,0,208,222,0,0,240,141,0,0,0,0,0,0,252,48,2,0,208,222,0,0,32,142,0,0,0,0,0,0,6,49,2,0,208,222,0,0,80,142,0,0,0,0,0,0,13,49,2,0,208,222,0,0,128,142,0,0,0,0,0,0,20,49,2,0,208,222,0,0,176,142,0,0,0,0,0,0,30,49,2,0,0,223,0,0,0,0,0,0,0,0,0,0,37,49,2,0,0,223,0,0,0,0,0,0,0,0,0,0,9,47,2,0,24,223,0,0,0,0,0,0,0,0,0,0,45,49,2,0,48,223,0,0,224,142,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,47,2,0,23,47,2,0,233,177,2,0,25,47,2,0,82,0,0,0,83,0,0,0,21,0,0,0,4,0,0,0,2,0,0,0,10,0,0,0,84,0,0,0,83,0,0,0,21,0,0,0,5,0,0,0,0,0,0,0,11,0,0,0,85,0,0,0,86,0,0,0,22,0,0,0,6,0,0,0,3,0,0,0,12,0,0,0,87,0,0,0,88,0,0,0,21,0,0,0,7,0,0,0,0,0,0,0,13,0,0,0,82,0,0,0,83,0,0,0,21,0,0,0,8,0,0,0,2,0,0,0,10,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,50,2,0,54,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,4,0,0,0,6,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,52,2,0,93,52,2,0,106,52,2,0,0,0,0,0,0,0,0,0,4,0,0,0,111,52,2,0,0,0,0,0,0,0,0,0,122,52,2,0,93,52,2,0,106,52,2,0,0,0,0,0,145,52,2,0,5,0,0,0,111,52,2,0,0,0,0,0,153,52,2,0,160,52,2,0,93,52,2,0,176,52,2,0,0,0,0,0,0,0,0,0,6,0,0,0,111,52,2,0,165,68,2,0,0,0,0,0,181,52,2,0,93,52,2,0,176,52,2,0,0,0,0,0,145,52,2,0,7,0,0,0,111,52,2,0,165,68,2,0,153,52,2,0,204,52,2,0,217,52,2,0,176,52,2,0,0,0,0,0,0,0,0,0,10,0,0,0,231,52,2,0,165,68,2,0,0,0,0,0,237,52,2,0,217,52,2,0,176,52,2,0,0,0,0,0,153,52,2,0,11,0,0,0,231,52,2,0,165,68,2,0,153,52,2,0,0,53,2,0,217,52,2,0,14,53,2,0,0,0,0,0,0,0,0,0,8,0,0,0,231,52,2,0,0,0,0,0,0,0,0,0,20,53,2,0,217,52,2,0,14,53,2,0,0,0,0,0,153,52,2,0,9,0,0,0,231,52,2,0,0,0,0,0,153,52,2,0,40,53,2,0,40,53,2,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,48,53,2,0,0,0,0,0,0,0,0,0,58,53,2,0,40,53,2,0,165,68,2,0,0,0,0,0,0,0,0,0,14,0,0,0,48,53,2,0,165,68,2,0,0,0,0,0,71,53,2,0,40,53,2,0,165,68,2,0,0,0,0,0,145,52,2,0,15,0,0,0,48,53,2,0,165,68,2,0,153,52,2,0,91,53,2,0,40,53,2,0,0,0,0,0,0,0,0,0,145,52,2,0,13,0,0,0,48,53,2,0,0,0,0,0,153,52,2,0,107,53,2,0,107,53,2,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,111,52,2,0,0,0,0,0,0,0,0,0,117,53,2,0,107,53,2,0,165,68,2,0,0,0,0,0,0,0,0,0,18,0,0,0,111,52,2,0,165,68,2,0,0,0,0,0,132,53,2,0,107,53,2,0,165,68,2,0,0,0,0,0,145,52,2,0,19,0,0,0,111,52,2,0,165,68,2,0,153,52,2,0,154,53,2,0,107,53,2,0,0,0,0,0,171,53,2,0,0,0,0,0,20,0,0,0,111,52,2,0,0,0,0,0,0,0,0,0,181,53,2,0,107,53,2,0,165,68,2,0,171,53,2,0,0,0,0,0,22,0,0,0,111,52,2,0,165,68,2,0,0,0,0,0,203,53,2,0,107,53,2,0,165,68,2,0,171,53,2,0,145,52,2,0,23,0,0,0,111,52,2,0,165,68,2,0,153,52,2,0,232,53,2,0,107,53,2,0,0,0,0,0,171,53,2,0,145,52,2,0,21,0,0,0,111,52,2,0,0,0,0,0,153,52,2,0,1,54,2,0,107,53,2,0,0,0,0,0,0,0,0,0,145,52,2,0,17,0,0,0,111,52,2,0,0,0,0,0,153,52,2,0,19,54,2,0,41,54,2,0,165,68,2,0,0,0,0,0,0,0,0,0,26,0,0,0,231,52,2,0,165,68,2,0,0,0,0,0,62,54,2,0,41,54,2,0,165,68,2,0,0,0,0,0,153,52,2,0,27,0,0,0,231,52,2,0,165,68,2,0,153,52,2,0,90,54,2,0,41,54,2,0,0,0,0,0,0,0,0,0,153,52,2,0,25,0,0,0,231,52,2,0,0,0,0,0,153,52,2,0,114,54,2,0,41,54,2,0,137,54,2,0,0,0,0,0,0,0,0,0,24,0,0,0,231,52,2,0,0,0,0,0,0,0,0,0,143,54,2,0,157,54,2,0,165,68,2,0,0,0,0,0,0,0,0,0,30,0,0,0,231,52,2,0,165,68,2,0,0,0,0,0,175,54,2,0,157,54,2,0,165,68,2,0,0,0,0,0,153,52,2,0,31,0,0,0,231,52,2,0,165,68,2,0,153,52,2,0,195,54,2,0,157,54,2,0,0,0,0,0,0,0,0,0,153,52,2,0,29,0,0,0,231,52,2,0,0,0,0,0,153,52,2,0,211,54,2,0,157,54,2,0,137,54,2,0,0,0,0,0,0,0,0,0,28,0,0,0,231,52,2,0,0,0,0,0,0,0,0,0,226,54,2,0,226,54,2,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,233,54,2,0,0,0,0,0,0,0,0,0,241,54,2,0,252,54,2,0,165,68,2,0,0,0,0,0,0,0,0,0,2,0,0,0,231,52,2,0,165,68,2,0,0,0,0,0,2,55,2,0,252,54,2,0,165,68,2,0,0,0,0,0,153,52,2,0,3,0,0,0,231,52,2,0,165,68,2,0,153,52,2,0,19,55,2,0,252,54,2,0,0,0,0,0,0,0,0,0,153,52,2,0,1,0,0,0,231,52,2,0,0,0,0,0,153,52,2,0,193,56,2,0,252,54,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,52,2,0,0,0,0,0,0,0,0,0,32,55,2,0,58,55,2,0,73,55,2,0,0,0,0,0,153,52,2,0,33,0,0,0,231,52,2,0,0,0,0,0,153,52,2,0,80,55,2,0,93,55,2,0,0,0,0,0,0,0,0,0,0,0,0,0,34,0,0,0,233,54,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,12,0,0,0,42,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,58,2,0,198,0,0,0,80,58,2,0,193,0,0,0,87,58,2,0,194,0,0,0,93,58,2,0,192,0,0,0,100,58,2,0,145,3,0,0,106,58,2,0,197,0,0,0,112,58,2,0,195,0,0,0,119,58,2,0,196,0,0,0,124,58,2,0,146,3,0,0,129,58,2,0,199,0,0,0,136,58,2,0,167,3,0,0,140,58,2,0,33,32,0,0,147,58,2,0,148,3,0,0,153,58,2,0,208,0,0,0,157,58,2,0,201,0,0,0,164,58,2,0,202,0,0,0,170,58,2,0,200,0,0,0,177,58,2,0,149,3,0,0,185,58,2,0,151,3,0,0,189,58,2,0,203,0,0,0,194,58,2,0,147,3,0,0,200,58,2,0,205,0,0,0,207,58,2,0,206,0,0,0,213,58,2,0,204,0,0,0,220,58,2,0,153,3,0,0,225,58,2,0,207,0,0,0,230,58,2,0,154,3,0,0,236,58,2,0,155,3,0,0,243,58,2,0,156,3,0,0,246,58,2,0,209,0,0,0,253,58,2,0,157,3,0,0,0,59,2,0,82,1,0,0,6,59,2,0,211,0,0,0,13,59,2,0,212,0,0,0,19,59,2,0,210,0,0,0,26,59,2,0,169,3,0,0,32,59,2,0,159,3,0,0,40,59,2,0,216,0,0,0,47,59,2,0,213,0,0,0,54,59,2,0,214,0,0,0,59,59,2,0,166,3,0,0,63,59,2,0,160,3,0,0,66,59,2,0,51,32,0,0,72,59,2,0,168,3,0,0,76,59,2,0,161,3,0,0,80,59,2,0,96,1,0,0,87,59,2,0,163,3,0,0,93,59,2,0,222,0,0,0,99,59,2,0,164,3,0,0,103,59,2,0,152,3,0,0,109,59,2,0,218,0,0,0,116,59,2,0,219,0,0,0,122,59,2,0,217,0,0,0,129,59,2,0,165,3,0,0,137,59,2,0,220,0,0,0,142,59,2,0,158,3,0,0,145,59,2,0,221,0,0,0,152,59,2,0,120,1,0,0,157,59,2,0,150,3,0,0,162,59,2,0,225,0,0,0,169,59,2,0,226,0,0,0,175,59,2,0,180,0,0,0,181,59,2,0,230,0,0,0,187,59,2,0,224,0,0,0,194,59,2,0,53,33,0,0,202,59,2,0,177,3,0,0,208,59,2,0,38,0,0,0,212,59,2,0,39,34,0,0,216,59,2,0,32,34,0,0,220,59,2,0,229,0,0,0,226,59,2,0,72,34,0,0,232,59,2,0,227,0,0,0,239,59,2,0,228,0,0,0,244,59,2,0,30,32,0,0,250,59,2,0,178,3,0,0,255,59,2,0,166,0,0,0,6,60,2,0,34,32,0,0,11,60,2,0,41,34,0,0,15,60,2,0,231,0,0,0,22,60,2,0,184,0,0,0,28,60,2,0,162,0,0,0,33,60,2,0,199,3,0,0,37,60,2,0,198,2,0,0,42,60,2,0,99,38,0,0,48,60,2,0,69,34,0,0,53,60,2,0,169,0,0,0,58,60,2,0,181,33,0,0,64,60,2,0,42,34,0,0,68,60,2,0,164,0,0,0,75,60,2,0,211,33,0,0,80,60,2,0,32,32,0,0,87,60,2,0,147,33,0,0,92,60,2,0,176,0,0,0,96,60,2,0,180,3,0,0,102,60,2,0,102,38,0,0,108,60,2,0,247,0,0,0,115,60,2,0,233,0,0,0,122,60,2,0,234,0,0,0,128,60,2,0,232,0,0,0,135,60,2,0,5,34,0,0,141,60,2,0,3,32,0,0,146,60,2,0,2,32,0,0,151,60,2,0,181,3,0,0,159,60,2,0,97,34,0,0,165,60,2,0,183,3,0,0,169,60,2,0,240,0,0,0,173,60,2,0,235,0,0,0,178,60,2,0,172,32,0,0,183,60,2,0,3,34,0,0,189,60,2,0,146,1,0,0,194,60,2,0,0,34,0,0,201,60,2,0,189,0,0,0,208,60,2,0,188,0,0,0,215,60,2,0,190,0,0,0,222,60,2,0,68,32,0,0,228,60,2,0,179,3,0,0,234,60,2,0,101,34,0,0,237,60,2,0,62,0,0,0,240,60,2,0,212,33,0,0,245,60,2,0,148,33,0,0,250,60,2,0,101,38,0,0,1,61,2,0,38,32,0,0,8,61,2,0,237,0,0,0,15,61,2,0,238,0,0,0,21,61,2,0,161,0,0,0,27,61,2,0,236,0,0,0,34,61,2,0,17,33,0,0,40,61,2,0,30,34,0,0,46,61,2,0,43,34,0,0,50,61,2,0,185,3,0,0,55,61,2,0,191,0,0,0,62,61,2,0,8,34,0,0,67,61,2,0,239,0,0,0,72,61,2,0,186,3,0,0,78,61,2,0,208,33,0,0,83,61,2,0,187,3,0,0,90,61,2,0,41,35,0,0,95,61,2,0,171,0,0,0,101,61,2,0,144,33,0,0,106,61,2,0,8,35,0,0,112,61,2,0,28,32,0,0,118,61,2,0,100,34,0,0,121,61,2,0,10,35,0,0,128,61,2,0,23,34,0,0,135,61,2,0,202,37,0,0,139,61,2,0,14,32,0,0,143,61,2,0,57,32,0,0,150,61,2,0,24,32,0,0,156,61,2,0,60,0,0,0,159,61,2,0,175,0,0,0,164,61,2,0,20,32,0,0,170,61,2,0,181,0,0,0,176,61,2,0,183,0,0,0,32,70,2,0,18,34,0,0,183,61,2,0,188,3,0,0,186,61,2,0,7,34,0,0,192,61,2,0,160,0,0,0,197,61,2,0,19,32,0,0,203,61,2,0,96,34,0,0,206,61,2,0,11,34,0,0,209,61,2,0,172,0,0,0,213,61,2,0,9,34,0,0,219,61,2,0,132,34,0,0,224,61,2,0,241,0,0,0,231,61,2,0,189,3,0,0,234,61,2,0,243,0,0,0,241,61,2,0,244,0,0,0,247,61,2,0,83,1,0,0,253,61,2,0,242,0,0,0,4,62,2,0,62,32,0,0,10,62,2,0,201,3,0,0,16,62,2,0,191,3,0,0,24,62,2,0,149,34,0,0,30,62,2,0,40,34,0,0,33,62,2,0,170,0,0,0,38,62,2,0,186,0,0,0,43,62,2,0,248,0,0,0,50,62,2,0,245,0,0,0,57,62,2,0,151,34,0,0,64,62,2,0,246,0,0,0,69,62,2,0,182,0,0,0,74,62,2,0,2,34,0,0,79,62,2,0,48,32,0,0,86,62,2,0,165,34,0,0,91,62,2,0,198,3,0,0,95,62,2,0,192,3,0,0,98,62,2,0,214,3,0,0,102,62,2,0,177,0,0,0,109,62,2,0,163,0,0,0,115,62,2,0,50,32,0,0,121,62,2,0,15,34,0,0,126,62,2,0,29,34,0,0,131,62,2,0,200,3,0,0,135,62,2,0,34,0,0,0,140,62,2,0,210,33,0,0,145,62,2,0,26,34,0,0,151,62,2,0,42,35,0,0,156,62,2,0,187,0,0,0,162,62,2,0,146,33,0,0,167,62,2,0,9,35,0,0,173,62,2,0,29,32,0,0,179,62,2,0,28,33,0,0,184,62,2,0,174,0,0,0,188,62,2,0,11,35,0,0,195,62,2,0,193,3,0,0,199,62,2,0,15,32,0,0,203,62,2,0,58,32,0,0,210,62,2,0,25,32,0,0,216,62,2,0,26,32,0,0,222,62,2,0,97,1,0,0,229,62,2,0,197,34,0,0,234,62,2,0,167,0,0,0,239,62,2,0,173,0,0,0,243,62,2,0,195,3,0,0,249,62,2,0,194,3,0,0,0,63,2,0,60,34,0,0,4,63,2,0,96,38,0,0,11,63,2,0,130,34,0,0,15,63,2,0,134,34,0,0,20,63,2,0,17,34,0,0,24,63,2,0,131,34,0,0,28,63,2,0,185,0,0,0,33,63,2,0,178,0,0,0,38,63,2,0,179,0,0,0,43,63,2,0,135,34,0,0,48,63,2,0,223,0,0,0,54,63,2,0,196,3,0,0,58,63,2,0,52,34,0,0,65,63,2,0,184,3,0,0,71,63,2,0,209,3,0,0,80,63,2,0,9,32,0,0,87,63,2,0,254,0,0,0,93,63,2,0,220,2,0,0,99,63,2,0,215,0,0,0,105,63,2,0,34,33,0,0,111,63,2,0,209,33,0,0,116,63,2,0,250,0,0,0,123,63,2,0,145,33,0,0,128,63,2,0,251,0,0,0,134,63,2,0,249,0,0,0,141,63,2,0,168,0,0,0,145,63,2,0,210,3,0,0,151,63,2,0,197,3,0,0,159,63,2,0,252,0,0,0,164,63,2,0,24,33,0,0,171,63,2,0,190,3,0,0,174,63,2,0,253,0,0,0,181,63,2,0,165,0,0,0,185,63,2,0,255,0,0,0,190,63,2,0,182,3,0,0,195,63,2,0,13,32,0,0,199,63,2,0,12,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,1,1,0,0,239,65,2,0,131,65,2,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,44,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,45,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,69,2,0,203,69,2,0,210,69,2,0,0,0,0,0,0,0,0,0,224,69,2,0,9,0,0,0,226,69,2,0,10,0,0,0,231,69,2,0,10,0,0,0,239,69,2,0,11,0,0,0,245,69,2,0,11,0,0,0,254,69,2,0,12,0,0,0,1,70,2,0,12,0,0,0,7,70,2,0,13,0,0,0,12,70,2,0,13,0,0,0,20,70,2,0,14,0,0,0,25,70,2,0,14,0,0,0,32,70,2,0,15,0,0,0,38,70,2,0,15,0,0,0,50,70,2,0,16,0,0,0,14,0,0,0,89,0,0,0,46,0,0,0,47,0,0,0,16,0,0,0,48,0,0,0,90,0,0,0,49,0,0,0,17,0,0,0,50,0,0,0,166,187,2,0,87,70,2,0,78,70,2,0,69,70,2,0,65,70,2,0,120,187,2,0,61,70,2,0,92,70,2,0,112,70,2,0,106,70,2,0,97,70,2,0,8,0,0,0,4,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,71,2,0,85,93,201,127,201,127,255,0,145,71,2,0,187,45,212,190,174,212,255,0,156,71,2,0,20,119,253,253,192,134,255,0,167,71,2,0,85,93,201,127,201,127,255,0,178,71,2,0,187,45,212,190,174,212,255,0,189,71,2,0,20,119,253,253,192,134,255,0,200,71,2,0,42,102,255,255,255,153,255,0,211,71,2,0,85,93,201,127,201,127,255,0,222,71,2,0,187,45,212,190,174,212,255,0,233,71,2,0,20,119,253,253,192,134,255,0,244,71,2,0,42,102,255,255,255,153,255,0,255,71,2,0,151,173,176,56,108,176,255,0,10,72,2,0,85,93,201,127,201,127,255,0,21,72,2,0,187,45,212,190,174,212,255,0,32,72,2,0,20,119,253,253,192,134,255,0,43,72,2,0,42,102,255,255,255,153,255,0,54,72,2,0,151,173,176,56,108,176,255,0,65,72,2,0,232,252,240,240,2,127,255,0,76,72,2,0,85,93,201,127,201,127,255,0,87,72,2,0,187,45,212,190,174,212,255,0,98,72,2,0,20,119,253,253,192,134,255,0,109,72,2,0,42,102,255,255,255,153,255,0,120,72,2,0,151,173,176,56,108,176,255,0,131,72,2,0,232,252,240,240,2,127,255,0,142,72,2,0,17,224,191,191,91,23,255,0,153,72,2,0,85,93,201,127,201,127,255,0,164,72,2,0,187,45,212,190,174,212,255,0,175,72,2,0,20,119,253,253,192,134,255,0,186,72,2,0,42,102,255,255,255,153,255,0,197,72,2,0,151,173,176,56,108,176,255,0,208,72,2,0,232,252,240,240,2,127,255,0,219,72,2,0,17,224,191,191,91,23,255,0,230,72,2,0,0,0,102,102,102,102,255,0,241,72,2,0,147,25,247,222,235,247,255,0,251,72,2,0,142,75,225,158,202,225,255,0,5,73,2,0,145,188,189,49,130,189,255,0,15,73,2,0,159,16,255,239,243,255,255,0,25,73,2,0,143,46,231,189,215,231,255,0,35,73,2,0,143,127,214,107,174,214,255,0,45,73,2,0,147,208,181,33,113,181,255,0,55,73,2,0,159,16,255,239,243,255,255,0,65,73,2,0,143,46,231,189,215,231,255,0,75,73,2,0,143,127,214,107,174,214,255,0,85,73,2,0,145,188,189,49,130,189,255,0,95,73,2,0,149,241,156,8,81,156,255,0,105,73,2,0,159,16,255,239,243,255,255,0,115,73,2,0,148,43,239,198,219,239,255,0,125,73,2,0,142,75,225,158,202,225,255,0,135,73,2,0,143,127,214,107,174,214,255,0,145,73,2,0,145,188,189,49,130,189,255,0,155,73,2,0,149,241,156,8,81,156,255,0,165,73,2,0,159,16,255,239,243,255,255,0,175,73,2,0,148,43,239,198,219,239,255,0,185,73,2,0,142,75,225,158,202,225,255,0,195,73,2,0,143,127,214,107,174,214,255,0,205,73,2,0,144,169,198,66,146,198,255,0,215,73,2,0,147,208,181,33,113,181,255,0,225,73,2,0,151,241,148,8,69,148,255,0,235,73,2,0,148,8,255,247,251,255,255,0,245,73,2,0,147,25,247,222,235,247,255,0,255,73,2,0,148,43,239,198,219,239,255,0,9,74,2,0,142,75,225,158,202,225,255,0,19,74,2,0,143,127,214,107,174,214,255,0,29,74,2,0,144,169,198,66,146,198,255,0,39,74,2,0,147,208,181,33,113,181,255,0,49,74,2,0,151,241,148,8,69,148,255,0,59,74,2,0,148,8,255,247,251,255,255,0,69,74,2,0,147,25,247,222,235,247,255,0,79,74,2,0,148,43,239,198,219,239,255,0,89,74,2,0,142,75,225,158,202,225,255,0,99,74,2,0,143,127,214,107,174,214,255,0,109,74,2,0,144,169,198,66,146,198,255,0,119,74,2,0,147,208,181,33,113,181,255,0,129,74,2,0,149,241,156,8,81,156,255,0,139,74,2,0,152,235,107,8,48,107,255,0,149,74,2,0,23,239,84,84,48,5,255,0,159,74,2,0,119,255,60,0,60,48,255,0,170,74,2,0,23,236,140,140,81,10,255,0,180,74,2,0,24,194,191,191,129,45,255,0,190,74,2,0,29,112,223,223,194,125,255,0,200,74,2,0,30,52,246,246,232,195,255,0,210,74,2,0,121,38,234,199,234,229,255,0,220,74,2,0,120,95,205,128,205,193,255,0,230,74,2,0,124,165,151,53,151,143,255,0,240,74,2,0,124,252,102,1,102,94,255,0,250,74,2,0,23,239,84,84,48,5,255,0,4,75,2,0,124,252,102,1,102,94,255,0,15,75,2,0,119,255,60,0,60,48,255,0,26,75,2,0,23,236,140,140,81,10,255,0,36,75,2,0,24,194,191,191,129,45,255,0,46,75,2,0,29,112,223,223,194,125,255,0,56,75,2,0,30,52,246,246,232,195,255,0,66,75,2,0,0,0,245,245,245,245,255,0,76,75,2,0,121,38,234,199,234,229,255,0,86,75,2,0,120,95,205,128,205,193,255,0,96,75,2,0,124,165,151,53,151,143,255,0,106,75,2,0,28,135,216,216,179,101,255,0,115,75,2,0,0,0,245,245,245,245,255,0,124,75,2,0,123,127,180,90,180,172,255,0,133,75,2,0,21,215,166,166,97,26,255,0,142,75,2,0,29,112,223,223,194,125,255,0,151,75,2,0,120,95,205,128,205,193,255,0,160,75,2,0,121,253,133,1,133,113,255,0,169,75,2,0,21,215,166,166,97,26,255,0,178,75,2,0,29,112,223,223,194,125,255,0,187,75,2,0,0,0,245,245,245,245,255,0,196,75,2,0,120,95,205,128,205,193,255,0,205,75,2,0,121,253,133,1,133,113,255,0,214,75,2,0,23,236,140,140,81,10,255,0,223,75,2,0,28,135,216,216,179,101,255,0,232,75,2,0,30,52,246,246,232,195,255,0,241,75,2,0,121,38,234,199,234,229,255,0,250,75,2,0,123,127,180,90,180,172,255,0,3,76,2,0,124,252,102,1,102,94,255,0,12,76,2,0,23,236,140,140,81,10,255,0,21,76,2,0,28,135,216,216,179,101,255,0,30,76,2,0,30,52,246,246,232,195,255,0,39,76,2,0,0,0,245,245,245,245,255,0,48,76,2,0,121,38,234,199,234,229,255,0,57,76,2,0,123,127,180,90,180,172,255,0,66,76,2,0,124,252,102,1,102,94,255,0,75,76,2,0,23,236,140,140,81,10,255,0,84,76,2,0,24,194,191,191,129,45,255,0,93,76,2,0,29,112,223,223,194,125,255,0,102,76,2,0,30,52,246,246,232,195,255,0,111,76,2,0,121,38,234,199,234,229,255,0,120,76,2,0,120,95,205,128,205,193,255,0,129,76,2,0,124,165,151,53,151,143,255,0,138,76,2,0,124,252,102,1,102,94,255,0,147,76,2,0,23,236,140,140,81,10,255,0,156,76,2,0,24,194,191,191,129,45,255,0,165,76,2,0,29,112,223,223,194,125,255,0,174,76,2,0,30,52,246,246,232,195,255,0,183,76,2,0,0,0,245,245,245,245,255,0,192,76,2,0,121,38,234,199,234,229,255,0,201,76,2,0,120,95,205,128,205,193,255,0,210,76,2,0,124,165,151,53,151,143,255,0,219,76,2,0,124,252,102,1,102,94,255,0,228,76,2,0,135,20,249,229,245,249,255,0,237,76,2,0,117,74,216,153,216,201,255,0,246,76,2,0,103,185,162,44,162,95,255,0,255,76,2,0,136,14,251,237,248,251,255,0,8,77,2,0,127,54,226,178,226,226,255,0,17,77,2,0,113,120,194,102,194,164,255,0,26,77,2,0,98,190,139,35,139,69,255,0,35,77,2,0,136,14,251,237,248,251,255,0,44,77,2,0,127,54,226,178,226,226,255,0,53,77,2,0,113,120,194,102,194,164,255,0,62,77,2,0,103,185,162,44,162,95,255,0,71,77,2,0,102,255,109,0,109,44,255,0,80,77,2,0,136,14,251,237,248,251,255,0,89,77,2,0,119,34,236,204,236,230,255,0,98,77,2,0,117,74,216,153,216,201,255,0,107,77,2,0,113,120,194,102,194,164,255,0,116,77,2,0,103,185,162,44,162,95,255,0,125,77,2,0,102,255,109,0,109,44,255,0,134,77,2,0,136,14,251,237,248,251,255,0,143,77,2,0,119,34,236,204,236,230,255,0,152,77,2,0,117,74,216,153,216,201,255,0,161,77,2,0,113,120,194,102,194,164,255,0,170,77,2,0,105,159,174,65,174,118,255,0,179,77,2,0,98,190,139,35,139,69,255,0,188,77,2,0,102,255,88,0,88,36,255,0,197,77,2,0,134,6,253,247,252,253,255,0,206,77,2,0,135,20,249,229,245,249,255,0,215,77,2,0,119,34,236,204,236,230,255,0,224,77,2,0,117,74,216,153,216,201,255,0,233,77,2,0,113,120,194,102,194,164,255,0,242,77,2,0,105,159,174,65,174,118,255,0,251,77,2,0,98,190,139,35,139,69,255,0,4,78,2,0,102,255,88,0,88,36,255,0,13,78,2,0,134,6,253,247,252,253,255,0,22,78,2,0,135,20,249,229,245,249,255,0,31,78,2,0,119,34,236,204,236,230,255,0,40,78,2,0,117,74,216,153,216,201,255,0,49,78,2,0,113,120,194,102,194,164,255,0,58,78,2,0,105,159,174,65,174,118,255,0,67,78,2,0,98,190,139,35,139,69,255,0,76,78,2,0,102,255,109,0,109,44,255,0,85,78,2,0,101,255,68,0,68,27,255,0,94,78,2,0,144,20,244,224,236,244,255,0,103,78,2,0,148,70,218,158,188,218,255,0,112,78,2,0,196,123,167,136,86,167,255,0,121,78,2,0,136,14,251,237,248,251,255,0,130,78,2,0,146,53,227,179,205,227,255,0,139,78,2,0,162,74,198,140,150,198,255,0,148,78,2,0,202,149,157,136,65,157,255,0,157,78,2,0,136,14,251,237,248,251,255,0,166,78,2,0,146,53,227,179,205,227,255,0,175,78,2,0,162,74,198,140,150,198,255,0,184,78,2,0,196,123,167,136,86,167,255,0,193,78,2,0,214,225,129,129,15,124,255,0,202,78,2,0,136,14,251,237,248,251,255,0,211,78,2,0,148,43,230,191,211,230,255,0,220,78,2,0,148,70,218,158,188,218,255,0,229,78,2,0,162,74,198,140,150,198,255,0,238,78,2,0,196,123,167,136,86,167,255,0,247,78,2,0,214,225,129,129,15,124,255,0,0,79,2,0,136,14,251,237,248,251,255,0,9,79,2,0,148,43,230,191,211,230,255,0,18,79,2,0,148,70,218,158,188,218,255,0,27,79,2,0,162,74,198,140,150,198,255,0,36,79,2,0,190,100,177,140,107,177,255,0,45,79,2,0,202,149,157,136,65,157,255,0,54,79,2,0,213,252,110,110,1,107,255,0,63,79,2,0,134,6,253,247,252,253,255,0,72,79,2,0,144,20,244,224,236,244,255,0,81,79,2,0,148,43,230,191],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+53752);allocate([211,230,255,0,90,79,2,0,148,70,218,158,188,218,255,0,99,79,2,0,162,74,198,140,150,198,255,0,108,79,2,0,190,100,177,140,107,177,255,0,117,79,2,0,202,149,157,136,65,157,255,0,126,79,2,0,213,252,110,110,1,107,255,0,135,79,2,0,134,6,253,247,252,253,255,0,144,79,2,0,144,20,244,224,236,244,255,0,153,79,2,0,148,43,230,191,211,230,255,0,162,79,2,0,148,70,218,158,188,218,255,0,171,79,2,0,162,74,198,140,150,198,255,0,180,79,2,0,190,100,177,140,107,177,255,0,189,79,2,0,202,149,157,136,65,157,255,0,198,79,2,0,214,225,129,129,15,124,255,0,207,79,2,0,213,255,77,77,0,75,255,0,216,79,2,0,114,211,158,27,158,119,255,0,226,79,2,0,18,252,217,217,95,2,255,0,236,79,2,0,173,95,179,117,112,179,255,0,246,79,2,0,114,211,158,27,158,119,255,0,0,80,2,0,18,252,217,217,95,2,255,0,10,80,2,0,173,95,179,117,112,179,255,0,20,80,2,0,233,209,231,231,41,138,255,0,30,80,2,0,114,211,158,27,158,119,255,0,40,80,2,0,18,252,217,217,95,2,255,0,50,80,2,0,173,95,179,117,112,179,255,0,60,80,2,0,233,209,231,231,41,138,255,0,70,80,2,0,62,208,166,102,166,30,255,0,80,80,2,0,114,211,158,27,158,119,255,0,90,80,2,0,18,252,217,217,95,2,255,0,100,80,2,0,173,95,179,117,112,179,255,0,110,80,2,0,233,209,231,231,41,138,255,0,120,80,2,0,62,208,166,102,166,30,255,0,130,80,2,0,31,252,230,230,171,2,255,0,140,80,2,0,114,211,158,27,158,119,255,0,150,80,2,0,18,252,217,217,95,2,255,0,160,80,2,0,173,95,179,117,112,179,255,0,170,80,2,0,233,209,231,231,41,138,255,0,180,80,2,0,62,208,166,102,166,30,255,0,190,80,2,0,31,252,230,230,171,2,255,0,200,80,2,0,27,210,166,166,118,29,255,0,210,80,2,0,114,211,158,27,158,119,255,0,220,80,2,0,18,252,217,217,95,2,255,0,230,80,2,0,173,95,179,117,112,179,255,0,240,80,2,0,233,209,231,231,41,138,255,0,250,80,2,0,62,208,166,102,166,30,255,0,4,81,2,0,31,252,230,230,171,2,255,0,14,81,2,0,27,210,166,166,118,29,255,0,24,81,2,0,0,0,102,102,102,102,255,0,34,81,2,0,76,25,243,224,243,219,255,0,43,81,2,0,95,61,221,168,221,181,255,0,52,81,2,0,140,170,202,67,162,202,255,0,61,81,2,0,65,17,249,240,249,232,255,0,70,81,2,0,87,46,228,186,228,188,255,0,79,81,2,0,123,101,204,123,204,196,255,0,88,81,2,0,141,197,190,43,140,190,255,0,97,81,2,0,65,17,249,240,249,232,255,0,106,81,2,0,87,46,228,186,228,188,255,0,115,81,2,0,123,101,204,123,204,196,255,0,124,81,2,0,140,170,202,67,162,202,255,0,133,81,2,0,145,243,172,8,104,172,255,0,142,81,2,0,65,17,249,240,249,232,255,0,151,81,2,0,77,41,235,204,235,197,255,0,160,81,2,0,95,61,221,168,221,181,255,0,169,81,2,0,123,101,204,123,204,196,255,0,178,81,2,0,140,170,202,67,162,202,255,0,187,81,2,0,145,243,172,8,104,172,255,0,196,81,2,0,65,17,249,240,249,232,255,0,205,81,2,0,77,41,235,204,235,197,255,0,214,81,2,0,95,61,221,168,221,181,255,0,223,81,2,0,123,101,204,123,204,196,255,0,232,81,2,0,137,160,211,78,179,211,255,0,241,81,2,0,141,197,190,43,140,190,255,0,250,81,2,0,147,242,158,8,88,158,255,0,3,82,2,0,60,12,252,247,252,240,255,0,12,82,2,0,76,25,243,224,243,219,255,0,21,82,2,0,77,41,235,204,235,197,255,0,30,82,2,0,95,61,221,168,221,181,255,0,39,82,2,0,123,101,204,123,204,196,255,0,48,82,2,0,137,160,211,78,179,211,255,0,57,82,2,0,141,197,190,43,140,190,255,0,66,82,2,0,147,242,158,8,88,158,255,0,75,82,2,0,60,12,252,247,252,240,255,0,84,82,2,0,76,25,243,224,243,219,255,0,93,82,2,0,77,41,235,204,235,197,255,0,102,82,2,0,95,61,221,168,221,181,255,0,111,82,2,0,123,101,204,123,204,196,255,0,120,82,2,0,137,160,211,78,179,211,255,0,129,82,2,0,141,197,190,43,140,190,255,0,138,82,2,0,145,243,172,8,104,172,255,0,147,82,2,0,150,239,129,8,64,129,255,0,156,82,2,0,74,21,245,229,245,224,255,0,167,82,2,0,80,72,217,161,217,155,255,0,178,82,2,0,98,178,163,49,163,84,255,0,189,82,2,0,73,15,248,237,248,233,255,0,200,82,2,0,78,54,228,186,228,179,255,0,211,82,2,0,86,104,196,116,196,118,255,0,222,82,2,0,98,190,139,35,139,69,255,0,233,82,2,0,73,15,248,237,248,233,255,0,244,82,2,0,78,54,228,186,228,179,255,0,255,82,2,0,86,104,196,116,196,118,255,0,10,83,2,0,98,178,163,49,163,84,255,0,21,83,2,0,102,255,109,0,109,44,255,0,32,83,2,0,73,15,248,237,248,233,255,0,43,83,2,0,77,44,233,199,233,192,255,0,54,83,2,0,80,72,217,161,217,155,255,0,65,83,2,0,86,104,196,116,196,118,255,0,76,83,2,0,98,178,163,49,163,84,255,0,87,83,2,0,102,255,109,0,109,44,255,0,98,83,2,0,73,15,248,237,248,233,255,0,109,83,2,0,77,44,233,199,233,192,255,0,120,83,2,0,80,72,217,161,217,155,255,0,131,83,2,0,86,104,196,116,196,118,255,0,142,83,2,0,96,158,171,65,171,93,255,0,153,83,2,0,98,190,139,35,139,69,255,0,164,83,2,0,108,255,90,0,90,50,255,0,175,83,2,0,72,7,252,247,252,245,255,0,186,83,2,0,74,21,245,229,245,224,255,0,197,83,2,0,77,44,233,199,233,192,255,0,208,83,2,0,80,72,217,161,217,155,255,0,219,83,2,0,86,104,196,116,196,118,255,0,230,83,2,0,96,158,171,65,171,93,255,0,241,83,2,0,98,190,139,35,139,69,255,0,252,83,2,0,108,255,90,0,90,50,255,0,7,84,2,0,72,7,252,247,252,245,255,0,18,84,2,0,74,21,245,229,245,224,255,0,29,84,2,0,77,44,233,199,233,192,255,0,40,84,2,0,80,72,217,161,217,155,255,0,51,84,2,0,86,104,196,116,196,118,255,0,62,84,2,0,96,158,171,65,171,93,255,0,73,84,2,0,98,190,139,35,139,69,255,0,84,84,2,0,102,255,109,0,109,44,255,0,95,84,2,0,101,255,68,0,68,27,255,0,106,84,2,0,0,0,240,240,240,240,255,0,116,84,2,0,0,0,189,189,189,189,255,0,126,84,2,0,0,0,99,99,99,99,255,0,136,84,2,0,0,0,247,247,247,247,255,0,146,84,2,0,0,0,204,204,204,204,255,0,156,84,2,0,0,0,150,150,150,150,255,0,166,84,2,0,0,0,82,82,82,82,255,0,176,84,2,0,0,0,247,247,247,247,255,0,186,84,2,0,0,0,204,204,204,204,255,0,196,84,2,0,0,0,150,150,150,150,255,0,206,84,2,0,0,0,99,99,99,99,255,0,216,84,2,0,0,0,37,37,37,37,255,0,226,84,2,0,0,0,247,247,247,247,255,0,236,84,2,0,0,0,217,217,217,217,255,0,246,84,2,0,0,0,189,189,189,189,255,0,0,85,2,0,0,0,150,150,150,150,255,0,10,85,2,0,0,0,99,99,99,99,255,0,20,85,2,0,0,0,37,37,37,37,255,0,30,85,2,0,0,0,247,247,247,247,255,0,40,85,2,0,0,0,217,217,217,217,255,0,50,85,2,0,0,0,189,189,189,189,255,0,60,85,2,0,0,0,150,150,150,150,255,0,70,85,2,0,0,0,115,115,115,115,255,0,80,85,2,0,0,0,82,82,82,82,255,0,90,85,2,0,0,0,37,37,37,37,255,0,100,85,2,0,0,0,255,255,255,255,255,0,110,85,2,0,0,0,240,240,240,240,255,0,120,85,2,0,0,0,217,217,217,217,255,0,130,85,2,0,0,0,189,189,189,189,255,0,140,85,2,0,0,0,150,150,150,150,255,0,150,85,2,0,0,0,115,115,115,115,255,0,160,85,2,0,0,0,82,82,82,82,255,0,170,85,2,0,0,0,37,37,37,37,255,0,180,85,2,0,0,0,255,255,255,255,255,0,190,85,2,0,0,0,240,240,240,240,255,0,200,85,2,0,0,0,217,217,217,217,255,0,210,85,2,0,0,0,189,189,189,189,255,0,220,85,2,0,0,0,150,150,150,150,255,0,230,85,2,0,0,0,115,115,115,115,255,0,240,85,2,0,0,0,82,82,82,82,255,0,250,85,2,0,0,0,37,37,37,37,255,0,4,86,2,0,0,0,0,0,0,0,255,0,14,86,2,0,21,48,254,254,230,206,255,0,26,86,2,0,19,147,253,253,174,107,255,0,38,86,2,0,14,240,230,230,85,13,255,0,50,86,2,0,19,32,254,254,237,222,255,0,62,86,2,0,20,120,253,253,190,133,255,0,74,86,2,0,17,194,253,253,141,60,255,0,86,86,2,0,13,253,217,217,71,1,255,0,98,86,2,0,19,32,254,254,237,222,255,0,110,86,2,0,20,120,253,253,190,133,255,0,122,86,2,0,17,194,253,253,141,60,255,0,134,86,2,0,14,240,230,230,85,13,255,0,146,86,2,0,13,250,166,166,54,3,255,0,158,86,2,0,19,32,254,254,237,222,255,0,170,86,2,0,21,91,253,253,208,162,255,0,182,86,2,0,19,147,253,253,174,107,255,0,194,86,2,0,17,194,253,253,141,60,255,0,206,86,2,0,14,240,230,230,85,13,255,0,218,86,2,0,13,250,166,166,54,3,255,0,230,86,2,0,19,32,254,254,237,222,255,0,242,86,2,0,21,91,253,253,208,162,255,0,254,86,2,0,19,147,253,253,174,107,255,0,10,87,2,0,17,194,253,253,141,60,255,0,22,87,2,0,16,234,241,241,105,19,255,0,34,87,2,0,13,253,217,217,72,1,255,0,46,87,2,0,12,247,140,140,45,4,255,0,58,87,2,0,21,20,255,255,245,235,255,0,70,87,2,0,21,48,254,254,230,206,255,0,82,87,2,0,21,91,253,253,208,162,255,0,94,87,2,0,19,147,253,253,174,107,255,0,106,87,2,0,17,194,253,253,141,60,255,0,118,87,2,0,16,234,241,241,105,19,255,0,130,87,2,0,13,253,217,217,72,1,255,0,142,87,2,0,12,247,140,140,45,4,255,0,154,87,2,0,21,20,255,255,245,235,255,0,166,87,2,0,21,48,254,254,230,206,255,0,178,87,2,0,21,91,253,253,208,162,255,0,190,87,2,0,19,147,253,253,174,107,255,0,202,87,2,0,17,194,253,253,141,60,255,0,214,87,2,0,16,234,241,241,105,19,255,0,226,87,2,0,13,253,217,217,72,1,255,0,238,87,2,0,13,250,166,166,54,3,255,0,250,87,2,0,12,246,127,127,39,4,255,0,6,88,2,0,25,54,254,254,232,200,255,0,15,88,2,0,19,121,253,253,187,132,255,0,24,88,2,0,5,197,227,227,74,51,255,0,33,88,2,0,26,37,254,254,240,217,255,0,42,88,2,0,24,115,253,253,204,138,255,0,51,88,2,0,13,164,252,252,141,89,255,0,60,88,2,0,3,218,215,215,48,31,255,0,69,88,2,0,26,37,254,254,240,217,255,0,78,88,2,0,24,115,253,253,204,138,255,0,87,88,2,0,13,164,252,252,141,89,255,0,96,88,2,0,5,197,227,227,74,51,255,0,105,88,2,0,0,255,179,179,0,0,255,0,114,88,2,0,26,37,254,254,240,217,255,0,123,88,2,0,24,95,253,253,212,158,255,0,132,88,2,0,19,121,253,253,187,132,255,0,141,88,2,0,13,164,252,252,141,89,255,0,150,88,2,0,5,197,227,227,74,51,255,0,159,88,2,0,0,255,179,179,0,0,255,0,168,88,2,0,26,37,254,254,240,217,255,0,177,88,2,0,24,95,253,253,212,158,255,0,186,88,2,0,19,121,253,253,187,132,255,0,195,88,2,0,13,164,252,252,141,89,255,0,204,88,2,0,7,178,239,239,101,72,255,0,213,88,2,0,3,218,215,215,48,31,255,0,222,88,2,0,0,255,153,153,0,0,255,0,231,88,2,0,24,18,255,255,247,236,255,0,240,88,2,0,25,54,254,254,232,200,255,0,249,88,2,0,24,95,253,253,212,158,255,0,2,89,2,0,19,121,253,253,187,132,255,0,11,89,2,0,13,164,252,252,141,89,255,0,20,89,2,0,7,178,239,239,101,72,255,0,29,89,2,0,3,218,215,215,48,31,255,0,38,89,2,0,0,255,153,153,0,0,255,0,47,89,2,0,24,18,255,255,247,236,255,0,56,89,2,0,25,54,254,254,232,200,255,0,65,89,2,0,24,95,253,253,212,158,255,0,74,89,2,0,19,121,253,253,187,132,255,0,83,89,2,0,13,164,252,252,141,89,255,0,92,89,2,0,7,178,239,239,101,72,255,0,101,89,2,0,3,218,215,215,48,31,255,0,110,89,2,0,0,255,179,179,0,0,255,0,119,89,2,0,0,255,127,127,0,0,255,0,128,89,2,0,142,68,227,166,206,227,255,0,140,89,2,0,190,153,154,106,61,154,255,0,153,89,2,0,144,211,180,31,120,180,255,0,165,89,2,0,65,97,223,178,223,138,255,0,177,89,2,0,82,184,160,51,160,44,255,0,189,89,2,0,0,99,251,251,154,153,255,0,201,89,2,0,254,225,227,227,26,28,255,0,213,89,2,0,23,143,253,253,191,111,255,0,225,89,2,0,21,255,255,255,127,0,255,0,237,89,2,0,198,42,214,202,178,214,255,0,249,89,2,0,142,68,227,166,206,227,255,0,5,90,2,0,190,153,154,106,61,154,255,0,18,90,2,0,42,102,255,255,255,153,255,0,31,90,2,0,144,211,180,31,120,180,255,0,43,90,2,0,65,97,223,178,223,138,255,0,55,90,2,0,82,184,160,51,160,44,255,0,67,90,2,0,0,99,251,251,154,153,255,0,79,90,2,0,254,225,227,227,26,28,255,0,91,90,2,0,23,143,253,253,191,111,255,0,103,90,2,0,21,255,255,255,127,0,255,0,115,90,2,0,198,42,214,202,178,214,255,0,127,90,2,0,142,68,227,166,206,227,255,0,139,90,2,0,190,153,154,106,61,154,255,0,152,90,2,0,42,102,255,255,255,153,255,0,165,90,2,0,15,197,177,177,89,40,255,0,178,90,2,0,144,211,180,31,120,180,255,0,190,90,2,0,65,97,223,178,223,138,255,0,202,90,2,0,82,184,160,51,160,44,255,0,214,90,2,0,0,99,251,251,154,153,255,0,226,90,2,0,254,225,227,227,26,28,255,0,238,90,2,0,23,143,253,253,191,111,255,0,250,90,2,0,21,255,255,255,127,0,255,0,6,91,2,0,198,42,214,202,178,214,255,0,18,91,2,0,142,68,227,166,206,227,255,0,29,91,2,0,144,211,180,31,120,180,255,0,40,91,2,0,65,97,223,178,223,138,255,0,51,91,2,0,142,68,227,166,206,227,255,0,62,91,2,0,144,211,180,31,120,180,255,0,73,91,2,0,65,97,223,178,223,138,255,0,84,91,2,0,82,184,160,51,160,44,255,0,95,91,2,0,142,68,227,166,206,227,255,0,106,91,2,0,144,211,180,31,120,180,255,0,117,91,2,0,65,97,223,178,223,138,255,0,128,91,2,0,82,184,160,51,160,44,255,0,139,91,2,0,0,99,251,251,154,153,255,0,150,91,2,0,142,68,227,166,206,227,255,0,161,91,2,0,144,211,180,31,120,180,255,0,172,91,2,0,65,97,223,178,223,138,255,0,183,91,2,0,82,184,160,51,160,44,255,0,194,91,2,0,0,99,251,251,154,153,255,0,205,91,2,0,254,225,227,227,26,28,255,0,216,91,2,0,142,68,227,166,206,227,255,0,227,91,2,0,144,211,180,31,120,180,255,0,238,91,2,0,65,97,223,178,223,138,255,0,249,91,2,0,82,184,160,51,160,44,255,0,4,92,2,0,0,99,251,251,154,153,255,0,15,92,2,0,254,225,227,227,26,28,255,0,26,92,2,0,23,143,253,253,191,111,255,0,37,92,2,0,142,68,227,166,206,227,255,0,48,92,2,0,144,211,180,31,120,180,255,0,59,92,2,0,65,97,223,178,223,138,255,0,70,92,2,0,82,184,160,51,160,44,255,0,81,92,2,0,0,99,251,251,154,153,255,0,92,92,2,0,254,225,227,227,26,28,255,0,103,92,2,0,23,143,253,253,191,111,255,0,114,92,2,0,21,255,255,255,127,0,255,0,125,92,2,0,142,68,227,166,206,227,255,0,136,92,2,0,144,211,180,31,120,180,255,0,147,92,2,0,65,97,223,178,223,138,255,0,158,92,2,0,82,184,160,51,160,44,255,0,169,92,2,0,0,99,251,251,154,153,255,0,180,92,2,0,254,225,227,227,26,28,255,0,191,92,2,0,23,143,253,253,191,111,255,0,202,92,2,0,21,255,255,255,127,0,255,0,213,92,2,0,198,42,214,202,178,214,255,0,224,92,2,0,3,78,251,251,180,174,255,0,236,92,2,0,146,53,227,179,205,227,255,0,248,92,2,0,77,41,235,204,235,197,255,0,4,93,2,0,3,78,251,251,180,174,255,0,16,93,2,0,146,53,227,179,205,227,255,0,28,93,2,0,77,41,235,204,235,197,255,0,40,93,2,0,202,27,228,222,203,228,255,0,52,93,2,0,3,78,251,251,180,174,255,0,64,93,2,0,146,53,227,179,205,227,255,0,76,93,2,0,77,41,235,204,235,197,255,0,88,93,2,0,202,27,228,222,203,228,255,0,100,93,2,0,24,88,254,254,217,166,255,0,112,93,2,0,3,78,251,251,180,174,255,0,124,93,2,0,146,53,227,179,205,227,255,0,136,93,2,0,77,41,235,204,235,197,255,0,148,93,2,0,202,27,228,222,203,228,255,0,160,93,2,0,24,88,254,254,217,166,255,0,172,93,2,0,42,50,255,255,255,204,255,0,184,93,2,0,3,78,251,251,180,174,255,0,196,93,2,0,146,53,227,179,205,227,255,0,208,93,2,0,77,41,235,204,235,197,255,0,220,93,2,0,202,27,228,222,203,228,255,0,232,93,2,0,24,88,254,254,217,166,255,0,244,93,2,0,42,50,255,255,255,204,255,0,0,94,2,0,28,44,229,229,216,189,255,0,12,94,2,0,3,78,251,251,180,174,255,0,24,94,2,0,146,53,227,179,205,227,255,0,36,94,2,0,77,41,235,204,235,197,255,0,48,94,2,0,202,27,228,222,203,228,255,0,60,94,2,0,24,88,254,254,217,166,255,0,72,94,2,0,42,50,255,255,255,204,255,0,84,94,2,0,28,44,229,229,216,189,255,0,96,94,2,0,233,35,253,253,218,236,255,0,108,94,2,0,3,78,251,251,180,174,255,0,120,94,2,0,146,53,227,179,205,227,255,0,132,94,2,0,77,41,235,204,235,197,255,0,144,94,2,0,202,27,228,222,203,228,255,0,156,94,2,0,24,88,254,254,217,166,255,0,168,94,2,0,42,50,255,255,255,204,255,0,180,94,2,0,28,44,229,229,216,189,255,0,192,94,2,0,233,35,253,253,218,236,255,0,204,94,2,0,0,0,242,242,242,242,255,0,216,94,2,0,108,53,226,179,226,205,255,0,228,94,2,0,17,81,253,253,205,172,255,0,240,94,2,0,155,31,232,203,213,232,255,0,252,94,2,0,108,53,226,179,226,205,255,0,8,95,2,0,17,81,253,253,205,172,255,0,20,95,2,0,155,31,232,203,213,232,255,0,32,95,2,0,228,43,244,244,202,228,255,0,44,95,2,0,108,53,226,179,226,205,255,0,56,95,2,0,17,81,253,253,205,172,255,0,68,95,2,0,155,31,232,203,213,232,255,0,80,95,2,0,228,43,244,244,202,228,255,0,92,95,2,0,56,45,245,230,245,201,255,0,104,95,2,0,108,53,226,179,226,205,255,0,116,95,2,0,17,81,253,253,205,172,255,0,128,95,2,0,155,31,232,203,213,232,255,0,140,95,2,0,228,43,244,244,202,228,255,0,152,95,2,0,56,45,245,230,245,201,255,0,164,95,2,0,35,81,255,255,242,174,255,0,176,95,2,0,108,53,226,179,226,205,255,0,188,95,2,0,17,81,253,253,205,172,255,0,200,95,2,0,155,31,232,203,213,232,255,0,212,95,2,0,228,43,244,244,202,228,255,0,224,95,2,0,56,45,245,230,245,201,255,0,236,95,2,0,35,81,255,255,242,174,255,0,248,95,2,0,25,39,241,241,226,204,255,0,4,96,2,0,108,53,226,179,226,205,255,0,16,96,2,0,17,81,253,253,205,172,255,0,28,96,2,0,155,31,232,203,213,232,255,0,40,96,2,0,228,43,244,244,202,228,255,0,52,96,2,0,56,45,245,230,245,201,255,0,64,96,2,0,35,81,255,255,242,174,255,0,76,96,2,0,25,39,241,241,226,204,255,0,88,96,2,0,0,0,204,204,204,204,255,0,100,96,2,0,230,253,142,142,1,82,255,0,110,96,2,0,77,191,100,39,100,25,255,0,121,96,2,0,230,220,197,197,27,125,255,0,131,96,2,0,232,118,222,222,119,174,255,0,141,96,2,0,229,62,241,241,182,218,255,0,151,96,2,0,233,29,253,253,224,239,255,0,161,96,2,0,59,38,245,230,245,208,255,0,171,96,2,0,61,103,225,184,225,134,255,0,181,96,2,0,63,166,188,127,188,65,255,0,191,96,2,0,68,197,146,77,146,33,255,0,201,96,2,0,230,253,142,142,1,82,255,0,211,96,2,0,68,197,146,77,146,33,255,0,222,96,2,0,77,191,100,39,100,25,255,0,233,96,2,0,230,220,197,197,27,125,255,0,243,96,2,0,232,118,222,222,119,174,255,0,253,96,2,0,229,62,241,241,182,218,255,0,7,97,2,0,233,29,253,253,224,239,255,0,17,97,2,0,0,0,247,247,247,247,255,0,27,97,2,0,59,38,245,230,245,208,255,0,37,97,2,0,61,103,225,184,225,134,255,0,47,97,2,0,63,166,188,127,188,65,255,0,57,97,2,0,231,76,233,233,163,201,255,0,66,97,2,0,0,0,247,247,247,247,255,0,75,97,2,0,63,129,215,161,215,106,255,0,84,97,2,0,228,220,208,208,28,139,255,0,93,97,2,0,229,62,241,241,182,218,255,0,102,97,2,0,61,103,225,184,225,134,255,0,111,97,2,0,72,198,172,77,172,38,255,0,120,97,2,0,228,220,208,208,28,139,255,0,129,97,2,0,229,62,241,241,182,218,255,0,138,97,2,0,0,0,247,247,247,247,255,0,147,97,2,0,61,103,225,184,225,134,255,0,156,97,2,0,72,198,172,77,172,38,255,0,165,97,2,0,230,220,197,197,27,125,255,0,174,97,2,0,231,76,233,233,163,201,255,0,183,97,2,0,233,29,253,253,224,239,255,0,192,97,2,0,59,38,245,230,245,208,255,0,201,97,2,0,63,129,215,161,215,106,255,0,210,97,2,0,68,197,146,77,146,33,255,0,219,97,2,0,230,220,197,197,27,125,255,0,228,97,2,0,231,76,233,233,163,201,255,0,237,97,2,0,233,29,253,253,224,239,255,0,246,97,2,0,0,0,247,247,247,247,255,0,255,97,2,0,59,38,245,230,245,208,255,0,8,98,2,0,63,129,215,161,215,106,255,0,17,98,2,0,68,197,146,77,146,33,255,0,26,98,2,0,230,220,197,197,27,125,255,0,35,98,2,0,232,118,222,222,119,174,255,0,44,98,2,0,229,62,241,241,182,218,255,0,53,98,2,0,233,29,253,253,224,239,255,0,62,98,2,0,59,38,245,230,245,208,255,0,71,98,2,0,61,103,225,184,225,134,255,0,80,98,2,0,63,166,188,127,188,65,255,0,89,98,2,0,68,197,146,77,146,33,255,0,98,98,2,0,230,220,197,197,27,125,255,0,107,98,2,0,232,118,222,222,119,174,255,0,116,98,2,0,229,62,241,241,182,218,255,0,125,98,2,0,233,29,253,253,224,239,255,0,134,98,2,0,0,0,247,247,247,247,255,0,143,98,2,0,59,38,245,230,245,208,255,0,152,98,2,0,61,103,225,184,225,134,255,0,161,98,2,0,63,166,188,127,188,65,255,0,170,98,2,0,68,197,146,77,146,33,255,0,179,98,2,0,206,255,75,64,0,75,255,0,189,98,2,0,101,255,68,0,68,27,255,0,200,98,2,0,206,173,131,118,42,131,255,0,210,98,2,0,199,87,171,153,112,171,255,0,220,98,2,0,199,51,207,194,165,207,255,0,230,98,2,0,210,21,232,231,212,232,255,0,240,98,2,0,76,30,240,217,240,211,255,0,250,98,2,0,80,68,219,166,219,160,255,0,4,99,2,0,88,123,174,90,174,97,255,0,14,99,2,0,97,197,120,27,120,55,255,0,24,99,2,0,206,255,75,64,0,75,255,0,34,99,2,0,97,197,120,27,120,55,255,0,45,99,2,0,101,255,68,0,68,27,255,0,56,99,2,0,206,173,131,118,42,131,255,0,66,99,2,0,199,87,171,153,112,171,255,0,76,99,2,0,199,51,207,194,165,207,255,0,86,99,2,0,210,21,232,231,212,232,255,0,96,99,2,0,0,0,247,247,247,247,255,0,106,99,2,0,76,30,240,217,240,211,255,0,116,99,2,0,80,68,219,166,219,160,255,0,126,99,2,0,88,123,174,90,174,97,255,0,136,99,2,0,196,70,195,175,141,195,255,0,145,99,2,0,0,0,247,247,247,247,255,0,154,99,2,0,82,90,191,127,191,123,255,0,163,99,2,0,201,168,148,123,50,148,255,0,172,99,2,0,199,51,207,194,165,207,255,0,181,99,2,0,80,68,219,166,219,160,255,0,190,99,2,0,102,255,136,0,136,55,255,0,199,99,2,0,201,168,148,123,50,148,255,0,208,99,2,0,199,51,207,194,165,207,255,0,217,99,2,0,0,0,247,247,247,247,255,0,226,99,2,0,80,68,219,166,219,160,255,0,235,99,2,0,102,255,136,0,136,55,255,0,244,99,2,0,206,173,131,118,42,131,255,0,253,99,2,0,196,70,195,175,141,195,255,0,6,100,2,0,210,21,232,231,212,232,255,0,15,100,2,0,76,30,240,217,240,211,255,0,24,100,2,0,82,90,191,127,191,123,255,0,33,100,2,0,97,197,120,27,120,55,255,0,42,100,2,0,206,173,131,118,42,131,255,0,51,100,2,0,196,70,195,175,141,195,255,0,60,100,2,0,210,21,232,231,212,232,255,0,69,100,2,0,0,0,247,247,247,247,255,0,78,100,2,0,76,30,240,217,240,211,255,0,87,100,2,0,82,90,191,127,191,123,255,0,96,100,2,0,97,197,120,27,120,55,255,0,105,100,2,0,206,173,131,118,42,131,255,0,114,100,2,0,199,87,171,153,112,171,255,0,123,100,2,0,199,51,207,194,165,207,255,0,132,100,2,0,210,21,232,231,212,232,255,0,141,100,2,0,76,30,240,217,240,211,255,0,150,100,2,0,80,68,219,166,219,160,255,0,159,100,2,0,88,123,174,90,174,97,255,0,168,100,2,0,97,197,120,27,120,55,255,0,177,100,2,0,206,173,131,118,42,131,255,0,186,100,2,0,199,87,171,153,112,171,255,0,195,100,2,0,199,51,207,194,165,207,255,0,204,100,2,0,210,21,232,231,212,232,255,0,213,100,2,0,0,0,247,247,247,247,255,0,222,100,2,0,76,30,240,217,240,211,255,0,231,100,2,0,80,68,219,166,219,160,255,0,240,100,2,0,88,123,174,90,174,97,255,0,249,100,2,0,97,197,120,27,120,55,255,0,2,101,2,0,189,11,242,236,231,242,255,0,11,101,2,0,151,61,219,166,189,219,255,0,20,101,2,0,141,197,190,43,140,190,255,0,29,101,2,0,185,8,246,241,238,246,255,0,38,101,2,0,155,40,225,189,201,225,255,0,47,101,2,0,145,112,207,116,169,207,255,0,56,101,2,0,143,247,176,5,112,176,255,0,65,101,2,0,185,8,246,241,238,246,255,0,74,101,2,0,155,40,225,189,201,225,255,0,83,101,2,0,145,112,207,116,169,207,255,0,92,101,2,0,141,197,190,43,140,190,255,0,101,101,2,0,143,247,141,4,90,141,255,0,110,101,2,0,185,8,246,241,238,246,255,0,119,101,2,0,168,24,230,208,209,230,255,0,128,101,2,0,151,61,219,166,189,219,255,0,137,101,2,0,145,112,207,116,169,207,255,0,146,101,2,0,141,197,190,43,140,190,255,0,155,101,2,0,143,247,141,4,90,141,255,0,164,101,2,0,185,8,246,241,238,246,255,0,173,101,2,0,168,24,230,208,209,230,255,0,182,101,2,0,151,61,219,166,189,219,255,0,191,101,2,0,145,112,207,116,169,207,255,0,200,101,2,0,142,183,192,54,144,192,255,0,209,101,2,0,143,247,176,5,112,176,255,0,218,101,2,0,143,248,123,3,78,123,255,0,227,101,2,0,233,8,255,255,247,251,255,0,236,101,2,0,189,11,242,236,231,242,255,0,245,101,2,0,168,24,230,208,209,230,255,0,254,101,2,0,151,61,219,166,189,219,255,0,7,102,2,0,145,112,207,116,169,207,255,0,16,102,2,0,142,183,192,54,144,192,255,0,25,102,2,0,143,247,176,5,112,176,255,0,34,102,2,0,143,248,123,3,78,123,255,0,43,102,2,0,233,8,255,255,247,251,255,0,52,102,2,0,189,11,242,236,231,242,255,0,61,102,2,0,168,24,230,208,209,230,255,0,70,102,2,0,151,61,219,166,189,219,255,0,79,102,2,0,145,112,207,116,169,207,255,0,88,102,2,0,142,183,192,54,144,192,255,0,97,102,2,0,143,247,176,5,112,176,255,0,106,102,2,0,143,247,141,4,90,141,255,0,115,102,2,0,143,249,88,2,56,88,255,0,124,102,2,0,200,14,240,236,226,240,255,0,135,102,2,0,151,61,219,166,189,219,255,0,146,102,2,0,130,208,153,28,144,153,255,0,157,102,2,0,207,8,247,246,239,247,255,0,168,102,2,0,155,40,225,189,201,225,255,0,179,102,2,0,143,128,207,103,169,207,255,0,190,102,2,0,130,251,138,2,129,138,255,0,201,102,2,0,207,8,247,246,239,247,255,0,212,102,2,0,155,40,225,189,201,225,255,0,223,102,2,0,143,128,207,103,169,207,255,0,234,102,2,0,130,208,153,28,144,153,255,0,245,102,2,0,119,252,108,1,108,89,255,0,0,103,2,0,207,8,247,246,239,247,255,0,11,103,2,0,168,24,230,208,209,230,255,0,22,103,2,0,151,61,219,166,189,219,255,0,33,103,2,0,143,128,207,103,169,207,255,0,44,103,2,0,130,208,153,28,144,153,255,0,55,103,2,0,119,252,108,1,108,89,255,0,66,103,2,0,207,8,247,246,239,247,255,0,77,103,2,0,168,24,230,208,209,230,255,0,88,103,2,0,151,61,219,166,189,219,255,0,99,103,2,0,143,128,207,103,169,207,255,0,110,103,2,0,142,183,192,54,144,192,255,0,121,103,2,0,130,251,138,2,129,138,255,0,132,103,2,0,118,252,100,1,100,80,255,0,143,103,2,0,233,8,255,255,247,251,255,0,154,103,2,0,200,14,240,236,226,240,255,0,165,103,2,0,168,24,230,208,209,230,255,0,176,103,2,0,151,61,219,166,189,219,255,0,187,103,2,0,143,128,207,103,169,207,255,0,198,103,2,0,142,183,192,54,144,192,255,0,209,103,2,0,130,251,138,2,129,138,255,0,220,103,2,0,118,252,100,1,100,80,255,0,231,103,2,0,233,8,255,255,247,251,255,0,242,103,2,0,200,14,240,236,226,240,255,0,253,103,2,0,168,24,230,208,209,230,255,0,8,104,2,0,151,61,219,166,189,219,255,0,19,104,2,0,143,128,207,103,169,207,255,0,30,104,2,0,142,183,192,54,144,192,255,0,41,104,2,0,130,251,138,2,129,138,255,0,52,104,2,0,119,252,108,1,108,89,255,0,63,104,2,0,117,251,70,1,70,54,255,0,74,104,2,0,18,238,127,127,59,8,255,0,84,104,2,0,195,255,75,45,0,75,255,0,95,104,2,0,20,246,179,179,88,6,255,0,105,104,2,0,22,232,224,224,130,20,255,0,115,104,2,0,23,155,253,253,184,99,255,0,125,104,2,0,24,72,254,254,224,182,255,0,135,104,2,0,165,20,235,216,218,235,255,0,145,104,2,0,177,47,210,178,171,210,255,0,155,104,2,0,179,84,172,128,115,172,255,0,165,104,2,0,189,181,136,84,39,136,255,0,175,104,2,0,18,238,127,127,59,8,255,0,185,104,2,0,189,181,136,84,39,136,255,0,196,104,2,0,195,255,75,45,0,75,255,0,207,104,2,0,20,246,179,179,88,6,255,0,217,104,2,0,22,232,224,224,130,20,255,0,227,104,2,0,23,155,253,253,184,99,255,0,237,104,2,0,24,72,254,254,224,182,255,0,247,104,2,0,0,0,247,247,247,247,255,0,1,105,2,0,165,20,235,216,218,235,255,0,11,105,2,0,177,47,210,178,171,210,255,0,21,105,2,0,179,84,172,128,115,172,255,0,31,105,2,0,23,187,241,241,163,64,255,0,40,105,2,0,0,0,247,247,247,247,255,0,49,105,2,0,178,69,195,153,142,195,255,0,58,105,2,0,17,253,230,230,97,1,255,0,67,105,2,0,23,155,253,253,184,99,255,0,76,105,2,0,177,47,210,178,171,210,255,0,85,105,2,0,185,155,153,94,60,153,255,0,94,105,2,0,17,253,230,230,97,1,255,0,103,105,2,0,23,155,253,253,184,99,255,0,112,105,2,0,0,0,247,247,247,247,255,0,121,105,2,0,177,47,210,178,171,210,255,0,130,105,2,0,185,155,153,94,60,153,255,0,139,105,2,0,20,246,179,179,88,6,255,0,148,105,2,0,23,187,241,241,163,64,255,0,157,105,2,0,24,72,254,254,224,182,255,0,166,105,2,0,165,20,235,216,218,235,255,0,175,105,2,0,178,69,195,153,142,195,255,0,184,105,2,0,189,181,136,84,39,136,255,0,193,105,2,0,20,246,179,179,88,6,255,0,202,105,2,0,23,187,241,241,163,64,255,0,211,105,2,0,24,72,254,254,224,182,255,0,220,105,2,0,0,0,247,247,247,247,255,0,229,105,2,0,165,20,235,216,218,235,255,0,238,105,2,0,178,69,195,153,142,195,255,0,247,105,2,0,189,181,136,84,39,136,255,0,0,106,2,0,20,246,179,179,88,6,255,0,9,106,2,0,22,232,224,224,130,20,255,0,18,106,2,0,23,155,253,253,184,99,255,0,27,106,2,0,24,72,254,254,224,182,255,0,36,106,2,0,165,20,235,216,218,235,255,0,45,106,2,0,177,47,210,178,171,210,255,0,54,106,2,0,179,84,172,128,115,172,255,0,63,106,2,0,189,181,136,84,39,136,255,0,72,106,2,0,20,246,179,179,88,6,255,0,81,106,2,0,22,232,224,224,130,20,255,0,90,106,2,0,23,155,253,253,184,99,255,0,99,106,2,0,24,72,254,254,224,182,255,0,108,106,2,0,0,0,247,247,247,247,255,0,117,106,2,0,165,20,235,216,218,235,255,0,126,106,2,0,177,47,210,178,171,210,255,0,135,106,2,0,179,84,172,128,115,172,255,0,144,106,2,0,189,181,136,84,39,136,255,0,153,106,2,0,188,14,239,231,225,239,255,0,162,106,2,0,214,67,201,201,148,199,255,0,171,106,2,0,234,222,221,221,28,119,255,0,180,106,2,0,185,8,246,241,238,246,255,0,189,106,2,0,211,41,216,215,181,216,255,0,198,106,2,0,228,139,223,223,101,176,255,0,207,106,2,0,239,232,206,206,18,86,255,0,216,106,2,0,185,8,246,241,238,246,255,0,225,106,2,0,211,41,216,215,181,216,255,0,234,106,2,0,228,139,223,223,101,176,255,0,243,106,2,0,234,222,221,221,28,119,255,0,252,106,2,0,236,255,152,152,0,67,255,0,5,107,2,0,185,8,246,241,238,246,255,0,14,107,2,0,204,38,218,212,185,218,255,0,23,107,2,0,214,67,201,201,148,199,255,0,32,107,2,0,228,139,223,223,101,176,255,0,41,107,2,0,234,222,221,221,28,119,255,0,50,107,2,0,236,255,152,152,0,67,255,0,59,107,2,0,185,8,246,241,238,246,255,0,68,107,2,0,204,38,218,212,185,218,255,0,77,107,2,0,214,67,201,201,148,199,255,0,86,107,2,0,228,139,223,223,101,176,255,0,95,107,2,0,233,209,231,231,41,138,255,0,104,107,2,0,239,232,206,206,18,86,255,0,113,107,2,0,236,255,145,145,0,63,255,0,122,107,2,0,195,5,249,247,244,249,255,0,131,107,2,0,188,14,239,231,225,239,255,0,140,107,2,0,204,38,218,212,185,218,255,0,149,107,2,0,214,67,201,201,148,199,255,0,158,107,2,0,228,139,223,223,101,176,255,0,167,107,2,0,233,209,231,231,41,138,255,0,176,107,2,0,239,232,206,206,18,86,255,0,185,107,2,0,236,255,145,145,0,63,255,0,194,107,2,0,195,5,249,247,244,249,255,0,203,107,2,0,188,14,239,231,225,239,255,0,212,107,2,0,204,38,218,212,185,218,255,0,221,107,2,0,214,67,201,201,148,199,255,0,230,107,2,0,228,139,223,223,101,176,255,0,239,107,2,0,233,209,231,231,41,138,255,0,248,107,2,0,239,232,206,206,18,86,255,0,1,108,2,0,236,255,152,152,0,67,255,0,10,108,2,0,242,255,103,103,0,31,255,0,19,108,2,0,180,8,245,239,237,245,255,0,31,108,2,0,168,37,220,188,189,220,255,0,43,108,2,0,176,100,177,117,107,177,255,0,55,108,2,0,182,7,247,242,240,247,255,0,67,108,2,0,173,28,226,203,201,226,255,0,79,108,2,0,173,58,200,158,154,200,255,0,91,108,2,0,182,128,163,106,81,163,255,0,103,108,2,0,182,7,247,242,240,247,255,0,115,108,2,0,173,28,226,203,201,226,255,0,127,108,2,0,173,58,200,158,154,200,255,0,139,108,2,0,176,100,177,117,107,177,255,0,151,108,2,0,188,185,143,84,39,143,255,0,163,108,2,0,182,7,247,242,240,247,255,0,175,108,2,0,170,18,235,218,218,235,255,0,187,108,2,0,168,37,220,188,189,220,255,0,199,108,2,0,173,58,200,158,154,200,255,0,211,108,2,0,176,100,177,117,107,177,255,0,223,108,2,0,188,185,143,84,39,143,255,0,235,108,2,0,182,7,247,242,240,247,255,0,247,108,2,0,170,18,235,218,218,235,255,0,3,109,2,0,168,37,220,188,189,220,255,0,15,109,2,0,173,58,200,158,154,200,255,0,27,109,2,0,172,83,186,128,125,186,255,0,39,109,2,0,182,128,163,106,81,163,255,0,51,109,2,0,190,216,134,74,20,134,255,0,63,109,2,0,191,2,253,252,251,253,255,0,75,109,2,0,180,8,245,239,237,245,255,0,87,109,2,0,170,18,235,218,218,235,255,0,99,109,2,0,168,37,220,188,189,220,255,0,111,109,2,0,173,58,200,158,154,200,255,0,123,109,2,0,172,83,186,128,125,186,255,0,135,109,2,0,182,128,163,106,81,163,255,0,147,109,2,0,190,216,134,74,20,134,255,0,159,109,2,0,191,2,253,252,251,253,255,0,171,109,2,0,180,8,245,239,237,245,255,0,183,109,2,0,170,18,235,218,218,235,255,0,195,109,2,0,168,37,220,188,189,220,255,0,207,109,2,0,173,58,200,158,154,200,255,0,219,109,2,0,172,83,186,128,125,186,255,0,231,109,2,0,182,128,163,106,81,163,255,0,243,109,2,0,188,185,143,84,39,143,255,0,255,109,2,0,191,255,125,63,0,125,255,0,11,110,2,0,242,255,103,103,0,31,255,0,21,110,2,0,150,241,97,5,48,97,255,0,32,110,2,0,249,220,178,178,24,43,255,0,42,110,2,0,5,163,214,214,96,77,255,0,52,110,2,0,13,119,244,244,165,130,255,0,62,110,2,0,15,54,253,253,219,199,255,0,72,110,2,0,142,32,240,209,229,240,255,0,82,110,2,0,141,87,222,146,197,222,255,0,92,110,2,0,143,167,195,67,147,195,255,0,102,110,2,0,148,206,172,33,102,172,255,0,112,110,2,0,242,255,103,103,0,31,255,0,122,110,2,0,148,206,172,33,102,172,255,0,133,110,2,0,150,241,97,5,48,97,255,0,144,110,2,0,249,220,178,178,24,43,255,0,154,110,2,0,5,163,214,214,96,77,255,0,164,110,2,0,13,119,244,244,165,130,255,0,174,110,2,0,15,54,253,253,219,199,255,0,184,110,2,0,0,0,247,247,247,247,255,0,194,110,2,0,142,32,240,209,229,240,255,0,204,110,2,0,141,87,222,146,197,222,255,0,214,110,2,0,143,167,195,67,147,195,255,0,224,110,2,0,12,150,239,239,138,98,255,0,233,110,2,0,0,0,247,247,247,247,255,0,242,110,2,0,143,128,207,103,169,207,255,0,251,110,2,0,248,255,202,202,0,32,255,0,4,111,2,0,13,119,244,244,165,130,255,0,13,111,2,0,141,87,222,146,197,222,255,0,22,111,2,0,143,247,176,5,113,176,255,0,31,111,2,0,248,255,202,202,0,32,255,0,40,111,2,0,13,119,244,244,165,130,255,0,49,111,2,0,0,0,247,247,247,247,255,0,58,111,2,0,141,87,222,146,197,222,255,0,67,111,2,0,143,247,176,5,113,176,255,0,76,111,2,0,249,220,178,178,24,43,255,0,85,111,2,0,12,150,239,239,138,98,255,0,94,111,2,0,15,54,253,253,219,199,255,0,103,111,2,0,142,32,240,209,229,240,255,0,112,111,2,0,143,128,207,103,169,207,255,0,121,111,2,0,148,206,172,33,102,172,255,0,130,111,2,0,249,220,178,178,24,43,255,0,139,111,2,0,12,150,239,239,138,98,255,0,148,111,2,0,15,54,253,253,219,199,255,0,157,111,2,0,0,0,247,247,247,247,255,0,166,111,2,0,142,32,240,209,229,240,255,0,175,111,2,0,143,128,207,103,169,207,255,0,184,111,2,0,148,206,172,33,102,172,255,0,193,111,2,0,249,220,178,178,24,43,255,0,202,111,2,0,5,163,214,214,96,77,255,0,211,111,2,0,13,119,244,244,165,130,255,0,220,111,2,0,15,54,253,253,219,199,255,0,229,111,2,0,142,32,240,209,229,240,255,0,238,111,2,0,141,87,222,146,197,222,255,0,247,111,2,0,143,167,195,67,147,195,255,0,0,112,2,0,148,206,172,33,102,172,255,0,9,112,2,0,249,220,178,178,24,43,255,0,18,112,2,0,5,163,214,214,96,77,255,0,27,112,2,0,13,119,244,244,165,130,255,0,36,112,2,0,15,54,253,253,219,199,255,0,45,112,2,0,0,0,247,247,247,247,255,0,54,112,2,0,142,32,240,209,229,240,255,0,63,112,2,0,141,87,222,146,197,222,255,0,72,112,2,0,143,167,195,67,147,195,255,0,81,112,2,0,148,206,172,33,102,172,255,0,90,112,2,0,242,255,103,103,0,31,255,0,100,112,2,0,0,0,26,26,26,26,255,0,111,112,2,0,249,220,178,178,24,43,255,0,121,112,2,0,5,163,214,214,96,77,255,0,131,112,2,0,13,119,244,244,165,130,255,0,141,112,2,0,15,54,253,253,219,199,255,0,151,112,2,0,0,0,224,224,224,224,255,0,161,112,2,0,0,0,186,186,186,186,255,0,171,112,2,0,0,0,135,135,135,135,255,0,181,112,2,0,0,0,77,77,77,77,255,0,191,112,2,0,242,255,103,103,0,31,255,0,201,112,2,0,0,0,77,77,77,77,255,0,212,112,2,0,0,0,26,26,26,26,255,0,223,112,2,0,249,220,178,178,24,43,255,0,233,112,2,0,5,163,214,214,96,77,255,0,243,112,2,0,13,119,244,244,165,130,255,0,253,112,2,0,15,54,253,253,219,199,255,0,7,113,2,0,0,0,255,255,255,255,255,0,17,113,2,0,0,0,224,224,224,224,255,0,27,113,2,0,0,0,186,186,186,186,255,0,37,113,2,0,0,0,135,135,135,135,255,0,47,113,2,0,12,150,239,239,138,98,255,0,56,113,2,0,0,0,255,255,255,255,255,0,65,113,2,0,0,0,153,153,153,153,255,0,74,113,2,0,248,255,202,202,0,32,255,0,83,113,2,0,13,119,244,244,165,130,255],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+63992);allocate([92,113,2,0,0,0,186,186,186,186,255,0,101,113,2,0,0,0,64,64,64,64,255,0,110,113,2,0,248,255,202,202,0,32,255,0,119,113,2,0,13,119,244,244,165,130,255,0,128,113,2,0,0,0,255,255,255,255,255,0,137,113,2,0,0,0,186,186,186,186,255,0,146,113,2,0,0,0,64,64,64,64,255,0,155,113,2,0,249,220,178,178,24,43,255,0,164,113,2,0,12,150,239,239,138,98,255,0,173,113,2,0,15,54,253,253,219,199,255,0,182,113,2,0,0,0,224,224,224,224,255,0,191,113,2,0,0,0,153,153,153,153,255,0,200,113,2,0,0,0,77,77,77,77,255,0,209,113,2,0,249,220,178,178,24,43,255,0,218,113,2,0,12,150,239,239,138,98,255,0,227,113,2,0,15,54,253,253,219,199,255,0,236,113,2,0,0,0,255,255,255,255,255,0,245,113,2,0,0,0,224,224,224,224,255,0,254,113,2,0,0,0,153,153,153,153,255,0,7,114,2,0,0,0,77,77,77,77,255,0,16,114,2,0,249,220,178,178,24,43,255,0,25,114,2,0,5,163,214,214,96,77,255,0,34,114,2,0,13,119,244,244,165,130,255,0,43,114,2,0,15,54,253,253,219,199,255,0,52,114,2,0,0,0,224,224,224,224,255,0,61,114,2,0,0,0,186,186,186,186,255,0,70,114,2,0,0,0,135,135,135,135,255,0,79,114,2,0,0,0,77,77,77,77,255,0,88,114,2,0,249,220,178,178,24,43,255,0,97,114,2,0,5,163,214,214,96,77,255,0,106,114,2,0,13,119,244,244,165,130,255,0,115,114,2,0,15,54,253,253,219,199,255,0,124,114,2,0,0,0,255,255,255,255,255,0,133,114,2,0,0,0,224,224,224,224,255,0,142,114,2,0,0,0,186,186,186,186,255,0,151,114,2,0,0,0,135,135,135,135,255,0,160,114,2,0,0,0,77,77,77,77,255,0,169,114,2,0,3,32,253,253,224,221,255,0,178,114,2,0,244,92,250,250,159,181,255,0,187,114,2,0,227,220,197,197,27,138,255,0,196,114,2,0,13,28,254,254,235,226,255,0,205,114,2,0,252,72,251,251,180,185,255,0,214,114,2,0,238,147,247,247,104,161,255,0,223,114,2,0,224,253,174,174,1,126,255,0,232,114,2,0,13,28,254,254,235,226,255,0,241,114,2,0,252,72,251,251,180,185,255,0,250,114,2,0,238,147,247,247,104,161,255,0,3,115,2,0,227,220,197,197,27,138,255,0,12,115,2,0,213,252,122,122,1,119,255,0,21,115,2,0,13,28,254,254,235,226,255,0,30,115,2,0,3,60,252,252,197,192,255,0,39,115,2,0,244,92,250,250,159,181,255,0,48,115,2,0,238,147,247,247,104,161,255,0,57,115,2,0,227,220,197,197,27,138,255,0,66,115,2,0,213,252,122,122,1,119,255,0,75,115,2,0,13,28,254,254,235,226,255,0,84,115,2,0,3,60,252,252,197,192,255,0,93,115,2,0,244,92,250,250,159,181,255,0,102,115,2,0,238,147,247,247,104,161,255,0,111,115,2,0,230,195,221,221,52,151,255,0,120,115,2,0,224,253,174,174,1,126,255,0,129,115,2,0,213,252,122,122,1,119,255,0,138,115,2,0,14,12,255,255,247,243,255,0,147,115,2,0,3,32,253,253,224,221,255,0,156,115,2,0,3,60,252,252,197,192,255,0,165,115,2,0,244,92,250,250,159,181,255,0,174,115,2,0,238,147,247,247,104,161,255,0,183,115,2,0,230,195,221,221,52,151,255,0,192,115,2,0,224,253,174,174,1,126,255,0,201,115,2,0,213,252,122,122,1,119,255,0,210,115,2,0,14,12,255,255,247,243,255,0,219,115,2,0,3,32,253,253,224,221,255,0,228,115,2,0,3,60,252,252,197,192,255,0,237,115,2,0,244,92,250,250,159,181,255,0,246,115,2,0,238,147,247,247,104,161,255,0,255,115,2,0,230,195,221,221,52,151,255,0,8,116,2,0,224,253,174,174,1,126,255,0,17,116,2,0,213,252,122,122,1,119,255,0,26,116,2,0,199,255,106,73,0,106,255,0,35,116,2,0,245,255,165,165,0,38,255,0,47,116,2,0,167,171,149,49,54,149,255,0,60,116,2,0,2,208,215,215,48,39,255,0,72,116,2,0,10,184,244,244,109,67,255,0,84,116,2,0,20,157,253,253,174,97,255,0,96,116,2,0,30,110,254,254,224,144,255,0,108,116,2,0,136,24,248,224,243,248,255,0,120,116,2,0,138,67,233,171,217,233,255,0,132,116,2,0,143,113,209,116,173,209,255,0,144,116,2,0,151,157,180,69,117,180,255,0,156,116,2,0,245,255,165,165,0,38,255,0,168,116,2,0,151,157,180,69,117,180,255,0,181,116,2,0,167,171,149,49,54,149,255,0,194,116,2,0,2,208,215,215,48,39,255,0,206,116,2,0,10,184,244,244,109,67,255,0,218,116,2,0,20,157,253,253,174,97,255,0,230,116,2,0,30,110,254,254,224,144,255,0,242,116,2,0,42,64,255,255,255,191,255,0,254,116,2,0,136,24,248,224,243,248,255,0,10,117,2,0,138,67,233,171,217,233,255,0,22,117,2,0,143,113,209,116,173,209,255,0,34,117,2,0,13,164,252,252,141,89,255,0,45,117,2,0,42,64,255,255,255,191,255,0,56,117,2,0,143,86,219,145,191,219,255,0,67,117,2,0,254,225,215,215,25,28,255,0,78,117,2,0,20,157,253,253,174,97,255,0,89,117,2,0,138,67,233,171,217,233,255,0,100,117,2,0,145,193,182,44,123,182,255,0,111,117,2,0,254,225,215,215,25,28,255,0,122,117,2,0,20,157,253,253,174,97,255,0,133,117,2,0,42,64,255,255,255,191,255,0,144,117,2,0,138,67,233,171,217,233,255,0,155,117,2,0,145,193,182,44,123,182,255,0,166,117,2,0,2,208,215,215,48,39,255,0,177,117,2,0,13,164,252,252,141,89,255,0,188,117,2,0,30,110,254,254,224,144,255,0,199,117,2,0,136,24,248,224,243,248,255,0,210,117,2,0,143,86,219,145,191,219,255,0,221,117,2,0,151,157,180,69,117,180,255,0,232,117,2,0,2,208,215,215,48,39,255,0,243,117,2,0,13,164,252,252,141,89,255,0,254,117,2,0,30,110,254,254,224,144,255,0,9,118,2,0,42,64,255,255,255,191,255,0,20,118,2,0,136,24,248,224,243,248,255,0,31,118,2,0,143,86,219,145,191,219,255,0,42,118,2,0,151,157,180,69,117,180,255,0,53,118,2,0,2,208,215,215,48,39,255,0,64,118,2,0,10,184,244,244,109,67,255,0,75,118,2,0,20,157,253,253,174,97,255,0,86,118,2,0,30,110,254,254,224,144,255,0,97,118,2,0,136,24,248,224,243,248,255,0,108,118,2,0,138,67,233,171,217,233,255,0,119,118,2,0,143,113,209,116,173,209,255,0,130,118,2,0,151,157,180,69,117,180,255,0,141,118,2,0,2,208,215,215,48,39,255,0,152,118,2,0,10,184,244,244,109,67,255,0,163,118,2,0,20,157,253,253,174,97,255,0,174,118,2,0,30,110,254,254,224,144,255,0,185,118,2,0,42,64,255,255,255,191,255,0,196,118,2,0,136,24,248,224,243,248,255,0,207,118,2,0,138,67,233,171,217,233,255,0,218,118,2,0,143,113,209,116,173,209,255,0,229,118,2,0,151,157,180,69,117,180,255,0,240,118,2,0,245,255,165,165,0,38,255,0,252,118,2,0,107,255,104,0,104,55,255,0,9,119,2,0,2,208,215,215,48,39,255,0,21,119,2,0,10,184,244,244,109,67,255,0,33,119,2,0,20,157,253,253,174,97,255,0,45,119,2,0,31,115,254,254,224,139,255,0,57,119,2,0,51,106,239,217,239,139,255,0,69,119,2,0,62,130,217,166,217,106,255,0,81,119,2,0,83,121,189,102,189,99,255,0,93,119,2,0,103,211,152,26,152,80,255,0,105,119,2,0,245,255,165,165,0,38,255,0,117,119,2,0,103,211,152,26,152,80,255,0,130,119,2,0,107,255,104,0,104,55,255,0,143,119,2,0,2,208,215,215,48,39,255,0,155,119,2,0,10,184,244,244,109,67,255,0,167,119,2,0,20,157,253,253,174,97,255,0,179,119,2,0,31,115,254,254,224,139,255,0,191,119,2,0,42,64,255,255,255,191,255,0,203,119,2,0,51,106,239,217,239,139,255,0,215,119,2,0,62,130,217,166,217,106,255,0,227,119,2,0,83,121,189,102,189,99,255,0,239,119,2,0,13,164,252,252,141,89,255,0,250,119,2,0,42,64,255,255,255,191,255,0,5,120,2,0,66,136,207,145,207,96,255,0,16,120,2,0,254,225,215,215,25,28,255,0,27,120,2,0,20,157,253,253,174,97,255,0,38,120,2,0,62,130,217,166,217,106,255,0,49,120,2,0,98,210,150,26,150,65,255,0,60,120,2,0,254,225,215,215,25,28,255,0,71,120,2,0,20,157,253,253,174,97,255,0,82,120,2,0,42,64,255,255,255,191,255,0,93,120,2,0,62,130,217,166,217,106,255,0,104,120,2,0,98,210,150,26,150,65,255,0,115,120,2,0,2,208,215,215,48,39,255,0,126,120,2,0,13,164,252,252,141,89,255,0,137,120,2,0,31,115,254,254,224,139,255,0,148,120,2,0,51,106,239,217,239,139,255,0,159,120,2,0,66,136,207,145,207,96,255,0,170,120,2,0,103,211,152,26,152,80,255,0,181,120,2,0,2,208,215,215,48,39,255,0,192,120,2,0,13,164,252,252,141,89,255,0,203,120,2,0,31,115,254,254,224,139,255,0,214,120,2,0,42,64,255,255,255,191,255,0,225,120,2,0,51,106,239,217,239,139,255,0,236,120,2,0,66,136,207,145,207,96,255,0,247,120,2,0,103,211,152,26,152,80,255,0,2,121,2,0,2,208,215,215,48,39,255,0,13,121,2,0,10,184,244,244,109,67,255,0,24,121,2,0,20,157,253,253,174,97,255,0,35,121,2,0,31,115,254,254,224,139,255,0,46,121,2,0,51,106,239,217,239,139,255,0,57,121,2,0,62,130,217,166,217,106,255,0,68,121,2,0,83,121,189,102,189,99,255,0,79,121,2,0,103,211,152,26,152,80,255,0,90,121,2,0,2,208,215,215,48,39,255,0,101,121,2,0,10,184,244,244,109,67,255,0,112,121,2,0,20,157,253,253,174,97,255,0,123,121,2,0,31,115,254,254,224,139,255,0,134,121,2,0,42,64,255,255,255,191,255,0,145,121,2,0,51,106,239,217,239,139,255,0,156,121,2,0,62,130,217,166,217,106,255,0,167,121,2,0,83,121,189,102,189,99,255,0,178,121,2,0,103,211,152,26,152,80,255,0,189,121,2,0,13,44,254,254,224,210,255,0,198,121,2,0,9,139,252,252,146,114,255,0,207,121,2,0,1,211,222,222,45,38,255,0,216,121,2,0,13,37,254,254,229,217,255,0,225,121,2,0,11,108,252,252,174,145,255,0,234,121,2,0,7,179,251,251,106,74,255,0,243,121,2,0,253,224,203,203,24,29,255,0,252,121,2,0,13,37,254,254,229,217,255,0,5,122,2,0,11,108,252,252,174,145,255,0,14,122,2,0,7,179,251,251,106,74,255,0,23,122,2,0,1,211,222,222,45,38,255,0,32,122,2,0,253,231,165,165,15,21,255,0,41,122,2,0,13,37,254,254,229,217,255,0,50,122,2,0,12,92,252,252,187,161,255,0,59,122,2,0,9,139,252,252,146,114,255,0,68,122,2,0,7,179,251,251,106,74,255,0,77,122,2,0,1,211,222,222,45,38,255,0,86,122,2,0,253,231,165,165,15,21,255,0,95,122,2,0,13,37,254,254,229,217,255,0,104,122,2,0,12,92,252,252,187,161,255,0,113,122,2,0,9,139,252,252,146,114,255,0,122,122,2,0,7,179,251,251,106,74,255,0,131,122,2,0,3,208,239,239,59,44,255,0,140,122,2,0,253,224,203,203,24,29,255,0,149,122,2,0,251,255,153,153,0,13,255,0,158,122,2,0,14,15,255,255,245,240,255,0,167,122,2,0,13,44,254,254,224,210,255,0,176,122,2,0,12,92,252,252,187,161,255,0,185,122,2,0,9,139,252,252,146,114,255,0,194,122,2,0,7,179,251,251,106,74,255,0,203,122,2,0,3,208,239,239,59,44,255,0,212,122,2,0,253,224,203,203,24,29,255,0,221,122,2,0,251,255,153,153,0,13,255,0,230,122,2,0,14,15,255,255,245,240,255,0,239,122,2,0,13,44,254,254,224,210,255,0,248,122,2,0,12,92,252,252,187,161,255,0,1,123,2,0,9,139,252,252,146,114,255,0,10,123,2,0,7,179,251,251,106,74,255,0,19,123,2,0,3,208,239,239,59,44,255,0,28,123,2,0,253,224,203,203,24,29,255,0,37,123,2,0,253,231,165,165,15,21,255,0,46,123,2,0,249,255,103,103,0,13,255,0,55,123,2,0,254,225,228,228,26,28,255,0,64,123,2,0,146,178,184,55,126,184,255,0,73,123,2,0,83,147,175,77,175,74,255,0,82,123,2,0,254,225,228,228,26,28,255,0,91,123,2,0,146,178,184,55,126,184,255,0,100,123,2,0,83,147,175,77,175,74,255,0,109,123,2,0,207,132,163,152,78,163,255,0,118,123,2,0,254,225,228,228,26,28,255,0,127,123,2,0,146,178,184,55,126,184,255,0,136,123,2,0,83,147,175,77,175,74,255,0,145,123,2,0,207,132,163,152,78,163,255,0,154,123,2,0,21,255,255,255,127,0,255,0,163,123,2,0,254,225,228,228,26,28,255,0,172,123,2,0,146,178,184,55,126,184,255,0,181,123,2,0,83,147,175,77,175,74,255,0,190,123,2,0,207,132,163,152,78,163,255,0,199,123,2,0,21,255,255,255,127,0,255,0,208,123,2,0,42,204,255,255,255,51,255,0,217,123,2,0,254,225,228,228,26,28,255,0,226,123,2,0,146,178,184,55,126,184,255,0,235,123,2,0,83,147,175,77,175,74,255,0,244,123,2,0,207,132,163,152,78,163,255,0,253,123,2,0,21,255,255,255,127,0,255,0,6,124,2,0,42,204,255,255,255,51,255,0,15,124,2,0,15,193,166,166,86,40,255,0,24,124,2,0,254,225,228,228,26,28,255,0,33,124,2,0,146,178,184,55,126,184,255,0,42,124,2,0,83,147,175,77,175,74,255,0,51,124,2,0,207,132,163,152,78,163,255,0,60,124,2,0,21,255,255,255,127,0,255,0,69,124,2,0,42,204,255,255,255,51,255,0,78,124,2,0,15,193,166,166,86,40,255,0,87,124,2,0,232,121,247,247,129,191,255,0,96,124,2,0,254,225,228,228,26,28,255,0,105,124,2,0,146,178,184,55,126,184,255,0,114,124,2,0,83,147,175,77,175,74,255,0,123,124,2,0,207,132,163,152,78,163,255,0,132,124,2,0,21,255,255,255,127,0,255,0,141,124,2,0,42,204,255,255,255,51,255,0,150,124,2,0,15,193,166,166,86,40,255,0,159,124,2,0,232,121,247,247,129,191,255,0,168,124,2,0,0,0,153,153,153,153,255,0,177,124,2,0,114,120,194,102,194,165,255,0,186,124,2,0,11,155,252,252,141,98,255,0,195,124,2,0,156,77,203,141,160,203,255,0,204,124,2,0,114,120,194,102,194,165,255,0,213,124,2,0,11,155,252,252,141,98,255,0,222,124,2,0,156,77,203,141,160,203,255,0,231,124,2,0,228,102,231,231,138,195,255,0,240,124,2,0,114,120,194,102,194,165,255,0,249,124,2,0,11,155,252,252,141,98,255,0,2,125,2,0,156,77,203,141,160,203,255,0,11,125,2,0,228,102,231,231,138,195,255,0,20,125,2,0,58,155,216,166,216,84,255,0,29,125,2,0,114,120,194,102,194,165,255,0,38,125,2,0,11,155,252,252,141,98,255,0,47,125,2,0,156,77,203,141,160,203,255,0,56,125,2,0,228,102,231,231,138,195,255,0,65,125,2,0,58,155,216,166,216,84,255,0,74,125,2,0,34,208,255,255,217,47,255,0,83,125,2,0,114,120,194,102,194,165,255,0,92,125,2,0,11,155,252,252,141,98,255,0,101,125,2,0,156,77,203,141,160,203,255,0,110,125,2,0,228,102,231,231,138,195,255,0,119,125,2,0,58,155,216,166,216,84,255,0,128,125,2,0,34,208,255,255,217,47,255,0,137,125,2,0,25,90,229,229,196,148,255,0,146,125,2,0,114,120,194,102,194,165,255,0,155,125,2,0,11,155,252,252,141,98,255,0,164,125,2,0,156,77,203,141,160,203,255,0,173,125,2,0,228,102,231,231,138,195,255,0,182,125,2,0,58,155,216,166,216,84,255,0,191,125,2,0,34,208,255,255,217,47,255,0,200,125,2,0,25,90,229,229,196,148,255,0,209,125,2,0,0,0,179,179,179,179,255,0,218,125,2,0,120,84,211,141,211,199,255,0,228,125,2,0,211,82,189,188,128,189,255,0,239,125,2,0,42,76,255,255,255,179,255,0,249,125,2,0,175,37,218,190,186,218,255,0,3,126,2,0,4,139,251,251,128,114,255,0,13,126,2,0,144,100,211,128,177,211,255,0,23,126,2,0,22,156,253,253,180,98,255,0,33,126,2,0,58,134,222,179,222,105,255,0,43,126,2,0,233,47,252,252,205,229,255,0,53,126,2,0,0,0,217,217,217,217,255,0,63,126,2,0,120,84,211,141,211,199,255,0,73,126,2,0,211,82,189,188,128,189,255,0,84,126,2,0,77,41,235,204,235,197,255,0,95,126,2,0,42,76,255,255,255,179,255,0,105,126,2,0,175,37,218,190,186,218,255,0,115,126,2,0,4,139,251,251,128,114,255,0,125,126,2,0,144,100,211,128,177,211,255,0,135,126,2,0,22,156,253,253,180,98,255,0,145,126,2,0,58,134,222,179,222,105,255,0,155,126,2,0,233,47,252,252,205,229,255,0,165,126,2,0,0,0,217,217,217,217,255,0,175,126,2,0,120,84,211,141,211,199,255,0,185,126,2,0,211,82,189,188,128,189,255,0,196,126,2,0,77,41,235,204,235,197,255,0,207,126,2,0,37,144,255,255,237,111,255,0,218,126,2,0,42,76,255,255,255,179,255,0,228,126,2,0,175,37,218,190,186,218,255,0,238,126,2,0,4,139,251,251,128,114,255,0,248,126,2,0,144,100,211,128,177,211,255,0,2,127,2,0,22,156,253,253,180,98,255,0,12,127,2,0,58,134,222,179,222,105,255,0,22,127,2,0,233,47,252,252,205,229,255,0,32,127,2,0,0,0,217,217,217,217,255,0,42,127,2,0,120,84,211,141,211,199,255,0,51,127,2,0,42,76,255,255,255,179,255,0,60,127,2,0,175,37,218,190,186,218,255,0,69,127,2,0,120,84,211,141,211,199,255,0,78,127,2,0,42,76,255,255,255,179,255,0,87,127,2,0,175,37,218,190,186,218,255,0,96,127,2,0,4,139,251,251,128,114,255,0,105,127,2,0,120,84,211,141,211,199,255,0,114,127,2,0,42,76,255,255,255,179,255,0,123,127,2,0,175,37,218,190,186,218,255,0,132,127,2,0,4,139,251,251,128,114,255,0,141,127,2,0,144,100,211,128,177,211,255,0,150,127,2,0,120,84,211,141,211,199,255,0,159,127,2,0,42,76,255,255,255,179,255,0,168,127,2,0,175,37,218,190,186,218,255,0,177,127,2,0,4,139,251,251,128,114,255,0,186,127,2,0,144,100,211,128,177,211,255,0,195,127,2,0,22,156,253,253,180,98,255,0,204,127,2,0,120,84,211,141,211,199,255,0,213,127,2,0,42,76,255,255,255,179,255,0,222,127,2,0,175,37,218,190,186,218,255,0,231,127,2,0,4,139,251,251,128,114,255,0,240,127,2,0,144,100,211,128,177,211,255,0,249,127,2,0,22,156,253,253,180,98,255,0,2,128,2,0,58,134,222,179,222,105,255,0,11,128,2,0,120,84,211,141,211,199,255,0,20,128,2,0,42,76,255,255,255,179,255,0,29,128,2,0,175,37,218,190,186,218,255,0,38,128,2,0,4,139,251,251,128,114,255,0,47,128,2,0,144,100,211,128,177,211,255,0,56,128,2,0,22,156,253,253,180,98,255,0,65,128,2,0,58,134,222,179,222,105,255,0,74,128,2,0,233,47,252,252,205,229,255,0,83,128,2,0,120,84,211,141,211,199,255,0,92,128,2,0,42,76,255,255,255,179,255,0,101,128,2,0,175,37,218,190,186,218,255,0,110,128,2,0,4,139,251,251,128,114,255,0,119,128,2,0,144,100,211,128,177,211,255,0,128,128,2,0,22,156,253,253,180,98,255,0,137,128,2,0,58,134,222,179,222,105,255,0,146,128,2,0,233,47,252,252,205,229,255,0,155,128,2,0,0,0,217,217,217,217,255,0,164,128,2,0,237,253,158,158,1,66,255,0,178,128,2,0,177,130,162,94,79,162,255,0,193,128,2,0,250,180,213,213,62,79,255,0,207,128,2,0,10,184,244,244,109,67,255,0,221,128,2,0,20,157,253,253,174,97,255,0,235,128,2,0,31,115,254,254,224,139,255,0,249,128,2,0,49,96,245,230,245,152,255,0,7,129,2,0,79,65,221,171,221,164,255,0,21,129,2,0,114,120,194,102,194,165,255,0,35,129,2,0,143,187,189,50,136,189,255,0,49,129,2,0,237,253,158,158,1,66,255,0,63,129,2,0,143,187,189,50,136,189,255,0,78,129,2,0,177,130,162,94,79,162,255,0,93,129,2,0,250,180,213,213,62,79,255,0,107,129,2,0,10,184,244,244,109,67,255,0,121,129,2,0,20,157,253,253,174,97,255,0,135,129,2,0,31,115,254,254,224,139,255,0,149,129,2,0,42,64,255,255,255,191,255,0,163,129,2,0,49,96,245,230,245,152,255,0,177,129,2,0,79,65,221,171,221,164,255,0,191,129,2,0,114,120,194,102,194,165,255,0,205,129,2,0,13,164,252,252,141,89,255,0,218,129,2,0,42,64,255,255,255,191,255,0,231,129,2,0,81,77,213,153,213,148,255,0,244,129,2,0,254,225,215,215,25,28,255,0,1,130,2,0,20,157,253,253,174,97,255,0,14,130,2,0,79,65,221,171,221,164,255,0,27,130,2,0,143,196,186,43,131,186,255,0,40,130,2,0,254,225,215,215,25,28,255,0,53,130,2,0,20,157,253,253,174,97,255,0,66,130,2,0,42,64,255,255,255,191,255,0,79,130,2,0,79,65,221,171,221,164,255,0,92,130,2,0,143,196,186,43,131,186,255,0,105,130,2,0,250,180,213,213,62,79,255,0,118,130,2,0,13,164,252,252,141,89,255,0,131,130,2,0,31,115,254,254,224,139,255,0,144,130,2,0,49,96,245,230,245,152,255,0,157,130,2,0,81,77,213,153,213,148,255,0,170,130,2,0,143,187,189,50,136,189,255,0,183,130,2,0,250,180,213,213,62,79,255,0,196,130,2,0,13,164,252,252,141,89,255,0,209,130,2,0,31,115,254,254,224,139,255,0,222,130,2,0,42,64,255,255,255,191,255,0,235,130,2,0,49,96,245,230,245,152,255,0,248,130,2,0,81,77,213,153,213,148,255,0,5,131,2,0,143,187,189,50,136,189,255,0,18,131,2,0,250,180,213,213,62,79,255,0,31,131,2,0,10,184,244,244,109,67,255,0,44,131,2,0,20,157,253,253,174,97,255,0,57,131,2,0,31,115,254,254,224,139,255,0,70,131,2,0,49,96,245,230,245,152,255,0,83,131,2,0,79,65,221,171,221,164,255,0,96,131,2,0,114,120,194,102,194,165,255,0,109,131,2,0,143,187,189,50,136,189,255,0,122,131,2,0,250,180,213,213,62,79,255,0,135,131,2,0,10,184,244,244,109,67,255,0,148,131,2,0,20,157,253,253,174,97,255,0,161,131,2,0,31,115,254,254,224,139,255,0,174,131,2,0,42,64,255,255,255,191,255,0,187,131,2,0,49,96,245,230,245,152,255,0,200,131,2,0,79,65,221,171,221,164,255,0,213,131,2,0,114,120,194,102,194,165,255,0,226,131,2,0,143,187,189,50,136,189,255,0,239,131,2,0,147,15,255,240,248,255,255,0,254,131,2,0,24,35,250,250,235,215,255,0,16,132,2,0,127,255,255,0,255,255,255,0,26,132,2,0,113,128,255,127,255,212,255,0,42,132,2,0,127,15,255,240,255,255,255,0,53,132,2,0,42,26,245,245,245,220,255,0,64,132,2,0,23,58,255,255,228,196,255,0,76,132,2,0,0,0,0,0,0,0,255,0,87,132,2,0,25,49,255,255,235,205,255,0,107,132,2,0,170,255,255,0,0,255,255,0,117,132,2,0,192,206,226,138,43,226,255,0,133,132,2,0,0,190,165,165,42,42,255,0,144,132,2,0,23,99,222,222,184,135,255,0,159,132,2,0,128,103,160,95,158,160,255,0,174,132,2,0,63,255,255,127,255,0,255,0,190,132,2,0,17,218,210,210,105,30,255,0,205,132,2,0,11,175,255,255,127,80,255,0,216,132,2,0,154,147,237,100,149,237,255,0,236,132,2,0,33,34,255,255,248,220,255,0,250,132,2,0,246,231,220,220,20,60,255,0,7,133,2,0,127,255,255,0,255,255,255,0,17,133,2,0,170,255,139,0,0,139,255,0,31,133,2,0,127,255,139,0,139,139,255,0,45,133,2,0,30,239,184,184,134,11,255,0,64,133,2,0,0,0,169,169,169,169,255,0,78,133,2,0,85,255,100,0,100,0,255,0,93,133,2,0,0,0,169,169,169,169,255,0,107,133,2,0,39,110,189,189,183,107,255,0,122,133,2,0,212,255,139,139,0,139,255,0,139,133,2,0,58,142,107,85,107,47,255,0,159,133,2,0,23,255,255,255,140,0,255,0,175,133,2,0,198,192,204,153,50,204,255,0,191,133,2,0,0,255,139,139,0,0,255,0,204,133,2,0,10,121,233,233,150,122,255,0,220,133,2,0,85,61,188,143,188,143,255,0,238,133,2,0,175,143,139,72,61,139,255,0,1,134,2,0,127,103,79,47,79,79,255,0,20,134,2,0,127,103,79,47,79,79,255,0,39,134,2,0,128,255,209,0,206,209,255,0,58,134,2,0,199,255,211,148,0,211,255,0,74,134,2,0,232,235,255,255,20,147,255,0,88,134,2,0,138,255,255,0,191,255,255,0,105,134,2,0,0,0,105,105,105,105,255,0,118,134,2,0,0,0,105,105,105,105,255,0,131,134,2,0,148,225,255,30,144,255,255,0,147,134,2,0,0,206,178,178,34,34,255,0,162,134,2,0,28,15,255,255,250,240,255,0,179,134,2,0,85,192,139,34,139,34,255,0,196,134,2,0,212,255,255,255,0,255,255,0,209,134,2,0,0,0,220,220,220,220,255,0,224,134,2,0,170,7,255,248,248,255,255,0,240,134,2,0,35,255,255,255,215,0,255,0,250,134,2,0,30,217,218,218,165,32,255,0,9,135,2,0,0,0,128,128,128,128,255,0,19,135,2,0,85,255,128,0,128,0,255,0,30,135,2,0,59,208,255,173,255,47,255,0,47,135,2,0,0,0,128,128,128,128,255,0,57,135,2,0,85,15,255,240,255,240,255,0,71,135,2,0,233,150,255,255,105,180,255,0,84,135,2,0,0,140,205,205,92,92,255,0,99,135,2,0,194,255,130,75,0,130,255,0,111,135,2,0,42,15,255,255,255,240,255,0,122,135,2,0,38,106,240,240,230,140,255,0,133,135,2,0,170,20,250,230,230,250,255,0,147,135,2,0,240,15,255,255,240,245,255,0,166,135,2,0,64,255,252,124,252,0,255,0,181,135,2,0,38,49,255,255,250,205,255,0,199,135,2,0,137,63,230,173,216,230,255,0,214,135,2,0,0,119,240,240,128,128,255,0,230,135,2,0,127,31,255,224,255,255,255,0,245,135,2,0,42,40,250,250,250,210,255,0,15,136,2,0,0,0,211,211,211,211,255,0,30,136,2,0,85,100,238,144,238,144,255,0,46,136,2,0,0,0,211,211,211,211,255,0,61,136,2,0,248,73,255,255,182,193,255,0,76,136,2,0,12,132,255,255,160,122,255,0,93,136,2,0,125,209,178,32,178,170,255,0,112,136,2,0,143,117,250,135,206,250,255,0,130,136,2,0,148,56,153,119,136,153,255,0,150,136,2,0,148,56,153,119,136,153,255,0,170,136,2,0,151,52,222,176,196,222,255,0,190,136,2,0,42,31,255,255,255,224,255,0,207,136,2,0,85,255,255,0,255,0,255,0,217,136,2,0,85,192,205,50,205,50,255,0,232,136,2,0,21,20,250,250,240,230,255,0,243,136,2,0,212,255,255,255,0,255,255,0,0,137,2,0,0,255,128,128,0,0,255,0,12,137,2,0,113,128,205,102,205,170,255,0,34,137,2,0,170,255,205,0,0,205,255,0,50,137,2,0,204,152,211,186,85,211,255,0,68,137,2,0,183,124,219,147,112,219,255,0,86,137,2,0,103,169,179,60,179,113,255,0,106,137,2,0,176,143,238,123,104,238,255,0,127,137,2,0,111,255,250,0,250,154,255,0,150,137,2,0,125,167,209,72,209,204,255,0,171,137,2,0,228,228,199,199,21,133,255,0,192,137,2,0,170,198,112,25,25,112,255,0,210,137,2,0,106,9,255,245,255,250,255,0,225,137,2,0,4,30,255,255,228,225,255,0,240,137,2,0,26,73,255,255,228,181,255,0,254,137,2,0,25,81,255,255,222,173,255,0,15,138,2,0,170,255,128,0,0,128,255,0,25,138,2,0,27,23,253,253,245,230,255,0,38,138,2,0,42,255,128,128,128,0,255,0,49,138,2,0,56,192,142,107,142,35,255,0,64,138,2,0,27,255,255,255,165,0,255,0,76,138,2,0,11,255,255,255,69,0,255,0,91,138,2,0,214,123,218,218,112,214,255,0,103,138,2,0,38,72,238,238,232,170,255,0,122,138,2,0,85,100,251,152,251,152,255,0,137,138,2,0,127,67,238,175,238,238,255,0,156,138,2,0,241,124,219,219,112,147,255,0,175,138,2,0,26,41,255,255,239,213,255,0,191,138,2,0,20,70,255,255,218,185,255,0,206,138,2,0,20,176,205,205,133,63,255,0,216,138,2,0,247,63,255,255,192,203,255,0,226,138,2,0,212,70,221,221,160,221,255,0,236,138,2,0,132,59,230,176,224,230,255,0,252,138,2,0,212,255,128,128,0,128,255,0,8,139,2,0,0,255,255,255,0,0,255,0,17,139,2,0,0,61,188,188,143,143,255,0,32,139,2,0,159,181,225,65,105,225,255,0,47,139,2,0,17,220,139,139,69,19,255,0,64,139,2,0,4,138,250,250,128,114,255,0,76,139,2,0,19,154,244,244,164,96,255,0,92,139,2,0,103,170,139,46,139,87,255,0,106,139,2,0,17,16,255,255,245,238,255,0,120,139,2,0,13,183,160,160,82,45,255,0,132,139,2,0,0,0,192,192,192,192,255,0,144,139,2,0,139,108,235,135,206,235,255,0,157,139,2,0,175,143,205,106,90,205,255,0,172,139,2,0,148,56,144,112,128,144,255,0,187,139,2,0,148,56,144,112,128,144,255,0,202,139,2,0,0,5,255,255,250,250,255,0,212,139,2,0,106,255,255,0,255,127,255,0,229,139,2,0,146,155,180,70,130,180,255,0,244,139,2,0,24,84,210,210,180,140,255,0,253,139,2,0,127,255,128,0,128,128,255,0,7,140,2,0,212,29,216,216,191,216,255,0,20,140,2,0,6,184,255,255,99,71,255,0,32,140,2,0,123,182,224,64,224,208,255,0,47,140,2,0,212,115,238,238,130,238,255,0,59,140,2,0,27,68,245,245,222,179,255,0,70,140,2,0,0,0,255,255,255,255,255,0,81,140,2,0,0,0,245,245,245,245,255,0,97,140,2,0,42,255,255,255,255,0,255,0,109,140,2,0,56,192,205,154,205,50,255,0,126,140,2,0,45,67,252,247,252,185,255,0,135,140,2,0,68,91,221,173,221,142,255,0,144,140,2,0,98,178,163,49,163,84,255,0,153,140,2,0,42,50,255,255,255,204,255,0,162,140,2,0,62,85,230,194,230,153,255,0,171,140,2,0,85,100,198,120,198,121,255,0,180,140,2,0,99,187,132,35,132,67,255,0,189,140,2,0,42,50,255,255,255,204,255,0,198,140,2,0,62,85,230,194,230,153,255,0,207,140,2,0,85,100,198,120,198,121,255,0,216,140,2,0,98,178,163,49,163,84,255,0,225,140,2,0,107,255,104,0,104,55,255,0,234,140,2,0,42,50,255,255,255,204,255,0,243,140,2,0,55,81,240,217,240,163,255,0,252,140,2,0,68,91,221,173,221,142,255,0,5,141,2,0,85,100,198,120,198,121,255,0,14,141,2,0,98,178,163,49,163,84,255,0,23,141,2,0,107,255,104,0,104,55,255,0,32,141,2,0,42,50,255,255,255,204,255,0,41,141,2,0,55,81,240,217,240,163,255,0,50,141,2,0,68,91,221,173,221,142,255,0,59,141,2,0,85,100,198,120,198,121,255,0,68,141,2,0,96,158,171,65,171,93,255,0,77,141,2,0,99,187,132,35,132,67,255,0,86,141,2,0,108,255,90,0,90,50,255,0,95,141,2,0,42,25,255,255,255,229,255,0,104,141,2,0,45,67,252,247,252,185,255,0,113,141,2,0,55,81,240,217,240,163,255,0,122,141,2,0,68,91,221,173,221,142,255,0,131,141,2,0,85,100,198,120,198,121,255,0,140,141,2,0,96,158,171,65,171,93,255,0,149,141,2,0,99,187,132,35,132,67,255,0,158,141,2,0,108,255,90,0,90,50,255,0,167,141,2,0,42,25,255,255,255,229,255,0,176,141,2,0,45,67,252,247,252,185,255,0,185,141,2,0,55,81,240,217,240,163,255,0,194,141,2,0,68,91,221,173,221,142,255,0,203,141,2,0,85,100,198,120,198,121,255,0,212,141,2,0,96,158,171,65,171,93,255,0,221,141,2,0,99,187,132,35,132,67,255,0,230,141,2,0,107,255,104,0,104,55,255,0,239,141,2,0,110,255,69,0,69,41,255,0,248,141,2,0,49,73,248,237,248,177,255,0,3,142,2,0,117,97,205,127,205,187,255,0,14,142,2,0,144,194,184,44,127,184,255,0,25,142,2,0,42,50,255,255,255,204,255,0,36,142,2,0,99,66,218,161,218,180,255,0,47,142,2,0,132,170,196,65,182,196,255,0,58,142,2,0,150,203,168,34,94,168,255,0,69,142,2,0,42,50,255,255,255,204,255,0,80,142,2,0,99,66,218,161,218,180,255,0,91,142,2,0,132,170,196,65,182,196,255,0,102,142,2,0,144,194,184,44,127,184,255,0,113,142,2,0,164,191,148,37,52,148,255,0,124,142,2,0,42,50,255,255,255,204,255,0,135,142,2,0,69,58,233,199,233,180,255,0,146,142,2,0,117,97,205,127,205,187,255,0,157,142,2,0,132,170,196,65,182,196,255,0,168,142,2,0,144,194,184,44,127,184,255,0,179,142,2,0,164,191,148,37,52,148,255,0,190,142,2,0,42,50,255,255,255,204,255,0,201,142,2,0,69,58,233,199,233,180,255,0,212,142,2,0,117,97,205,127,205,187,255,0,223,142,2,0,132,170,196,65,182,196,255,0,234,142,2,0,139,216,192,29,145,192,255,0,245,142,2,0,150,203,168,34,94,168,255,0,0,143,2,0,158,231,132,12,44,132,255,0,11,143,2,0,42,38,255,255,255,217,255,0,22,143,2,0,49,73,248,237,248,177,255,0,33,143,2,0,69,58,233,199,233,180,255,0,44,143,2,0,117,97,205,127,205,187,255,0,55,143,2,0,132,170,196,65,182,196,255,0,66,143,2,0,139,216,192,29,145,192,255,0,77,143,2,0,150,203,168,34,94,168,255,0,88,143,2,0,158,231,132,12,44,132,255,0,99,143,2,0,42,38,255,255,255,217,255,0,110,143,2,0,49,73,248,237,248,177,255,0,121,143,2,0,69,58,233,199,233,180,255,0,132,143,2,0,117,97,205,127,205,187,255,0,143,143,2,0,132,170,196,65,182,196,255,0,154,143,2,0,139,216,192,29,145,192,255,0,165,143,2,0,150,203,168,34,94,168,255,0,176,143,2,0,164,191,148,37,52,148,255,0,187,143,2,0,158,231,88,8,29,88,255,0,198,143,2,0,37,66,255,255,247,188,255,0,209,143,2,0,28,175,254,254,196,79,255,0,220,143,2,0,16,238,217,217,95,14,255,0,231,143,2,0,42,42,255,255,255,212,255,0,242,143,2,0,28,112,254,254,217,142,255,0,253,143,2,0,22,213,254,254,153,41,255,0,8,144,2,0,15,252,204,204,76,2,255,0,19,144,2,0,42,42,255,255,255,212,255,0,30,144,2,0,28,112,254,254,217,142,255,0,41,144,2,0,22,213,254,254,153,41,255,0,52,144,2,0,16,238,217,217,95,14,255,0,63,144,2,0,13,248,153,153,52,4,255,0,74,144,2,0,42,42,255,255,255,212,255,0,85,144,2,0,31,109,254,254,227,145,255,0,96,144,2,0,28,175,254,254,196,79,255,0,107,144,2,0,22,213,254,254,153,41,255,0,118,144,2,0,16,238,217,217,95,14,255,0,129,144,2,0,13,248,153,153,52,4,255,0,140,144,2,0,42,42,255,255,255,212,255,0,151,144,2,0,31,109,254,254,227,145,255,0,162,144,2,0,28,175,254,254,196,79,255,0,173,144,2,0,22,213,254,254,153,41,255,0,184,144,2,0,18,233,236,236,112,20,255,0,195,144,2,0,15,252,204,204,76,2,255,0,206,144,2,0,12,247,140,140,45,4,255,0,217,144,2,0,42,25,255,255,255,229,255,0,228,144,2,0,37,66,255,255,247,188,255,0,239,144,2,0,31,109,254,254,227,145,255,0,250,144,2,0,28,175,254,254,196,79,255,0,5,145,2,0,22,213,254,254,153,41,255,0,16,145,2,0,18,233,236,236,112,20,255,0,27,145,2,0,15,252,204,204,76,2,255,0,38,145,2,0,12,247,140,140,45,4,255,0,49,145,2,0,42,25,255,255,255,229,255,0,60,145,2,0,37,66,255,255,247,188,255,0,71,145,2,0,31,109,254,254,227,145,255,0,82,145,2,0,28,175,254,254,196,79,255,0,93,145,2,0,22,213,254,254,153,41,255,0,104,145,2,0,18,233,236,236,112,20,255,0,115,145,2,0,15,252,204,204,76,2,255,0,126,145,2,0,13,248,153,153,52,4,255,0,137,145,2,0,13,240,102,102,37,6,255,0,148,145,2,0,34,95,255,255,237,160,255,0,159,145,2,0,24,178,254,254,178,76,255,0,170,145,2,0,5,221,240,240,59,32,255,0,181,145,2,0,42,77,255,255,255,178,255,0,192,145,2,0,29,162,254,254,204,92,255,0,203,145,2,0,17,194,253,253,141,60,255,0,214,145,2,0,254,225,227,227,26,28,255,0,225,145,2,0,42,77,255,255,255,178,255,0,236,145,2,0,29,162,254,254,204,92,255,0,247,145,2,0,17,194,253,253,141,60,255,0,2,146,2,0,5,221,240,240,59,32,255,0,13,146,2,0,246,255,189,189,0,38,255,0,24,146,2,0,42,77,255,255,255,178,255,0,35,146,2,0,30,136,254,254,217,118,255,0,46,146,2,0,24,178,254,254,178,76,255,0,57,146,2,0,17,194,253,253,141,60,255,0,68,146,2,0,5,221,240,240,59,32,255,0,79,146,2,0,246,255,189,189,0,38,255,0,90,146,2,0,42,77,255,255,255,178,255,0,101,146,2,0,30,136,254,254,217,118,255,0,112,146,2,0,24,178,254,254,178,76,255,0,123,146,2,0,17,194,253,253,141,60,255,0,134,146,2,0,7,212,252,252,78,42,255,0,145,146,2,0,254,225,227,227,26,28,255,0,156,146,2,0,245,255,177,177,0,38,255,0,167,146,2,0,42,50,255,255,255,204,255,0,178,146,2,0,34,95,255,255,237,160,255,0,189,146,2,0,30,136,254,254,217,118,255,0,200,146,2,0,24,178,254,254,178,76,255,0,211,146,2,0,17,194,253,253,141,60,255,0,222,146,2,0,7,212,252,252,78,42,255,0,233,146,2,0,254,225,227,227,26,28,255,0,244,146,2,0,245,255,177,177,0,38,255,0,255,146,2,0,42,50,255,255,255,204,255,0,10,147,2,0,34,95,255,255,237,160,255,0,21,147,2,0,30,136,254,254,217,118,255,0,32,147,2,0,24,178,254,254,178,76,255,0,43,147,2,0,17,194,253,253,141,60,255,0,54,147,2,0,7,212,252,252,78,42,255,0,65,147,2,0,254,225,227,227,26,28,255,0,76,147,2,0,246,255,189,189,0,38,255,0,87,147,2,0,242,255,128,128,0,38,255,0,98,147,2,0,147,15,255,240,248,255,255,0,108,147,2,0,24,35,250,250,235,215,255,0,121,147,2,0,23,36,255,255,239,219,255,0,135,147,2,0,23,36,238,238,223,204,255,0,149,147,2,0,23,36,205,205,192,176,255,0,163,147,2,0,24,34,139,139,131,120,255,0,177,147,2,0,113,128,255,127,255,212,255,0,188,147,2,0,113,128,255,127,255,212,255,0,200,147,2,0,113,128,238,118,238,198,255,0,212,147,2,0,113,128,205,102,205,170,255,0,224,147,2,0,113,128,139,69,139,116,255,0,236,147,2,0,127,15,255,240,255,255,255,0,242,147,2,0,127,15,255,240,255,255,255,0,249,147,2,0,127,15,238,224,238,238,255,0,0,148,2,0,127,14,205,193,205,205,255,0,7,148,2,0,127,14,139,131,139,139,255,0,14,148,2,0,42,26,245,245,245,220,255,0,20,148,2,0,23,58,255,255,228,196,255,0,27,148,2,0,23,58,255,255,228,196,255,0,35,148,2,0,23,58,238,238,213,183,255,0,43,148,2,0,22,58,205,205,183,158,255,0,51,148,2,0,23,58,139,139,125,107,255,0,69,171,2,0,0,0,0,0,0,0,255,0,59,148,2,0,25,49,255,255,235,205,255,0,74,148,2,0,170,255,255,0,0,255,255,0,79,148,2,0,170,255,255,0,0,255,255,0,85,148,2,0,170,255,238,0,0,238,255,0,91,148,2,0,170,255,205,0,0,205,255,0,97,148,2,0,170,255,139,0,0,139,255,0,103,148,2,0,192,206,226,138,43,226,255,0,114,148,2,0,0,190,165,165,42,42,255,0,120,148,2,0,0,191,255,255,64,64,255,0,127,148,2,0,0,191,238,238,59,59,255,0,134,148,2,0,0,191,205,205,51,51,255,0,141,148,2,0,0,190,139,139,35,35,255,0,148,148,2,0,23,99,222,222,184,135,255,0,158,148,2,0,23,100,255,255,211,155,255,0,169,148,2,0,23,99,238,238,197,145,255,0,180,148,2,0,23,99,205,205,170,125,255,0,191,148,2,0,23,99,139,139,115,85,255,0,202,148,2,0,128,103,160,95,158,160,255,0,212,148,2,0,131,103,255,152,245,255,255,0,223,148,2,0,131,102,238,142,229,238,255,0,234,148,2,0,131,103,205,122,197,205,255,0,245,148,2,0,131,102,139,83,134,139,255,0,0,149,2,0,63,255,255,127,255,0,255,0,11,149,2,0,63,255,255,127,255,0,255,0,23,149,2,0,63,255,238,118,238,0,255,0,35,149,2,0,63,255,205,102,205,0,255,0,47,149,2,0,63,255,139,69,139,0,255,0,59,149,2,0,17,218,210,210,105,30,255,0,69,149,2,0,17,219,255,255,127,36,255,0,80,149,2,0,17,219,238,238,118,33,255,0,91,149,2,0,17,218,205,205,102,29,255,0,102,149,2,0,17,220,139,139,69,19,255,0,113,149,2,0,11,175,255,255,127,80,255,0,119,149,2,0,7,169,255,255,114,86,255,0,126,149,2,0,6,169,238,238,106,80,255,0,133,149,2,0,6,169,205,205,91,69,255,0,140,149,2,0,6,168,139,139,62,47,255,0,147,149,2,0,154,147,237,100,149,237,255,0,162,149,2,0,33,34,255,255,248,220,255,0,171,149,2,0,33,34,255,255,248,220,255,0,181,149,2,0,34,35,238,238,232,205,255,0,191,149,2,0,34,34,205,205,200,177,255,0,201,149,2,0,35,34,139,139,136,120,255,0,211,149,2,0,246,231,220,220,20,60,255,0,219,149,2,0,127,255,255,0,255,255,255,0,224,149,2,0,127,255,255,0,255,255,255,0,230,149,2,0,127,255,238,0,238,238,255,0,236,149,2,0,127,255,205,0,205,205,255,0,242,149,2,0,127,255,139,0,139,139,255,0,248,149,2,0,30,239,184,184,134,11,255,0,6,150,2,0,30,240,255,255,185,15,255,0,21,150,2,0,30,240,238,238,173,14,255,0,36,150,2,0,30,240,205,205,149,12,255,0,51,150,2,0,30,240,139,139,101,8,255,0,66,150,2,0,85,255,100,0,100,0,255,0,76,150,2],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+74232);allocate([39,110,189,189,183,107,255,0,86,150,2,0,58,142,107,85,107,47,255,0,101,150,2,0,58,143,255,202,255,112,255,0,117,150,2,0,58,143,238,188,238,104,255,0,133,150,2,0,58,143,205,162,205,90,255,0,149,150,2,0,58,143,139,110,139,61,255,0,165,150,2,0,23,255,255,255,140,0,255,0,176,150,2,0,21,255,255,255,127,0,255,0,188,150,2,0,21,255,238,238,118,0,255,0,200,150,2,0,21,255,205,205,102,0,255,0,212,150,2,0,21,255,139,139,69,0,255,0,224,150,2,0,198,192,204,153,50,204,255,0,235,150,2,0,198,193,255,191,62,255,255,0,247,150,2,0,198,192,238,178,58,238,255,0,3,151,2,0,198,192,205,154,50,205,255,0,15,151,2,0,198,192,139,104,34,139,255,0,27,151,2,0,10,121,233,233,150,122,255,0,38,151,2,0,85,61,188,143,188,143,255,0,51,151,2,0,85,62,255,193,255,193,255,0,65,151,2,0,85,62,238,180,238,180,255,0,79,151,2,0,85,62,205,155,205,155,255,0,93,151,2,0,85,62,139,105,139,105,255,0,107,151,2,0,175,143,139,72,61,139,255,0,121,151,2,0,127,103,79,47,79,79,255,0,135,151,2,0,127,104,255,151,255,255,255,0,150,151,2,0,127,103,238,141,238,238,255,0,165,151,2,0,127,104,205,121,205,205,255,0,180,151,2,0,127,104,139,82,139,139,255,0,195,151,2,0,127,103,79,47,79,79,255,0,209,151,2,0,128,255,209,0,206,209,255,0,223,151,2,0,199,255,211,148,0,211,255,0,234,151,2,0,232,235,255,255,20,147,255,0,243,151,2,0,232,235,255,255,20,147,255,0,253,151,2,0,232,235,238,238,18,137,255,0,7,152,2,0,232,235,205,205,16,118,255,0,17,152,2,0,231,236,139,139,10,80,255,0,27,152,2,0,138,255,255,0,191,255,255,0,39,152,2,0,138,255,255,0,191,255,255,0,52,152,2,0,138,255,238,0,178,238,255,0,65,152,2,0,138,255,205,0,154,205,255,0,78,152,2,0,138,255,139,0,104,139,255,0,91,152,2,0,0,0,105,105,105,105,255,0,99,152,2,0,0,0,105,105,105,105,255,0,107,152,2,0,148,225,255,30,144,255,255,0,118,152,2,0,148,225,255,30,144,255,255,0,130,152,2,0,148,225,238,28,134,238,255,0,142,152,2,0,148,225,205,24,116,205,255,0,154,152,2,0,148,225,139,16,78,139,255,0,166,152,2,0,0,206,178,178,34,34,255,0,176,152,2,0,0,207,255,255,48,48,255,0,187,152,2,0,0,207,238,238,44,44,255,0,198,152,2,0,0,207,205,205,38,38,255,0,209,152,2,0,0,207,139,139,26,26,255,0,220,152,2,0,28,15,255,255,250,240,255,0,232,152,2,0,85,192,139,34,139,34,255,0,244,152,2,0,0,0,220,220,220,220,255,0,254,152,2,0,170,7,255,248,248,255,255,0,9,153,2,0,35,255,255,255,215,0,255,0,14,153,2,0,35,255,255,255,215,0,255,0,20,153,2,0,35,255,238,238,201,0,255,0,26,153,2,0,35,255,205,205,173,0,255,0,32,153,2,0,35,255,139,139,117,0,255,0,38,153,2,0,30,217,218,218,165,32,255,0,48,153,2,0,30,218,255,255,193,37,255,0,59,153,2,0,30,218,238,238,180,34,255,0,70,153,2,0,30,218,205,205,155,29,255,0,81,153,2,0,30,218,139,139,105,20,255,0,92,153,2,0,0,0,192,192,192,192,255,0,97,153,2,0,0,0,0,0,0,0,255,0,103,153,2,0,0,0,3,3,3,3,255,0,109,153,2,0,0,0,26,26,26,26,255,0,116,153,2,0,0,0,255,255,255,255,255,0,124,153,2,0,0,0,28,28,28,28,255,0,131,153,2,0,0,0,31,31,31,31,255,0,138,153,2,0,0,0,33,33,33,33,255,0,145,153,2,0,0,0,36,36,36,36,255,0,152,153,2,0,0,0,38,38,38,38,255,0,159,153,2,0,0,0,41,41,41,41,255,0,166,153,2,0,0,0,43,43,43,43,255,0,173,153,2,0,0,0,46,46,46,46,255,0,180,153,2,0,0,0,48,48,48,48,255,0,187,153,2,0,0,0,5,5,5,5,255,0,193,153,2,0,0,0,51,51,51,51,255,0,200,153,2,0,0,0,54,54,54,54,255,0,207,153,2,0,0,0,56,56,56,56,255,0,214,153,2,0,0,0,59,59,59,59,255,0,221,153,2,0,0,0,61,61,61,61,255,0,228,153,2,0,0,0,64,64,64,64,255,0,235,153,2,0,0,0,66,66,66,66,255,0,242,153,2,0,0,0,69,69,69,69,255,0,249,153,2,0,0,0,71,71,71,71,255,0,0,154,2,0,0,0,74,74,74,74,255,0,7,154,2,0,0,0,8,8,8,8,255,0,13,154,2,0,0,0,77,77,77,77,255,0,20,154,2,0,0,0,79,79,79,79,255,0,27,154,2,0,0,0,82,82,82,82,255,0,34,154,2,0,0,0,84,84,84,84,255,0,41,154,2,0,0,0,87,87,87,87,255,0,48,154,2,0,0,0,89,89,89,89,255,0,55,154,2,0,0,0,92,92,92,92,255,0,62,154,2,0,0,0,94,94,94,94,255,0,69,154,2,0,0,0,97,97,97,97,255,0,76,154,2,0,0,0,99,99,99,99,255,0,83,154,2,0,0,0,10,10,10,10,255,0,89,154,2,0,0,0,102,102,102,102,255,0,96,154,2,0,0,0,105,105,105,105,255,0,103,154,2,0,0,0,107,107,107,107,255,0,110,154,2,0,0,0,110,110,110,110,255,0,117,154,2,0,0,0,112,112,112,112,255,0,124,154,2,0,0,0,115,115,115,115,255,0,131,154,2,0,0,0,117,117,117,117,255,0,138,154,2,0,0,0,120,120,120,120,255,0,145,154,2,0,0,0,122,122,122,122,255,0,152,154,2,0,0,0,125,125,125,125,255,0,159,154,2,0,0,0,13,13,13,13,255,0,165,154,2,0,0,0,127,127,127,127,255,0,172,154,2,0,0,0,130,130,130,130,255,0,179,154,2,0,0,0,133,133,133,133,255,0,186,154,2,0,0,0,135,135,135,135,255,0,193,154,2,0,0,0,138,138,138,138,255,0,200,154,2,0,0,0,140,140,140,140,255,0,207,154,2,0,0,0,143,143,143,143,255,0,214,154,2,0,0,0,145,145,145,145,255,0,221,154,2,0,0,0,148,148,148,148,255,0,228,154,2,0,0,0,150,150,150,150,255,0,235,154,2,0,0,0,15,15,15,15,255,0,241,154,2,0,0,0,153,153,153,153,255,0,248,154,2,0,0,0,156,156,156,156,255,0,255,154,2,0,0,0,158,158,158,158,255,0,6,155,2,0,0,0,161,161,161,161,255,0,13,155,2,0,0,0,163,163,163,163,255,0,20,155,2,0,0,0,166,166,166,166,255,0,27,155,2,0,0,0,168,168,168,168,255,0,34,155,2,0,0,0,171,171,171,171,255,0,41,155,2,0,0,0,173,173,173,173,255,0,48,155,2,0,0,0,176,176,176,176,255,0,55,155,2,0,0,0,18,18,18,18,255,0,61,155,2,0,0,0,179,179,179,179,255,0,68,155,2,0,0,0,181,181,181,181,255,0,75,155,2,0,0,0,184,184,184,184,255,0,82,155,2,0,0,0,186,186,186,186,255,0,89,155,2,0,0,0,189,189,189,189,255,0,96,155,2,0,0,0,191,191,191,191,255,0,103,155,2,0,0,0,194,194,194,194,255,0,110,155,2,0,0,0,196,196,196,196,255,0,117,155,2,0,0,0,199,199,199,199,255,0,124,155,2,0,0,0,201,201,201,201,255,0,131,155,2,0,0,0,20,20,20,20,255,0,137,155,2,0,0,0,204,204,204,204,255,0,144,155,2,0,0,0,207,207,207,207,255,0,151,155,2,0,0,0,209,209,209,209,255,0,158,155,2,0,0,0,212,212,212,212,255,0,165,155,2,0,0,0,214,214,214,214,255,0,172,155,2,0,0,0,217,217,217,217,255,0,179,155,2,0,0,0,219,219,219,219,255,0,186,155,2,0,0,0,222,222,222,222,255,0,193,155,2,0,0,0,224,224,224,224,255,0,200,155,2,0,0,0,227,227,227,227,255,0,207,155,2,0,0,0,23,23,23,23,255,0,213,155,2,0,0,0,229,229,229,229,255,0,220,155,2,0,0,0,232,232,232,232,255,0,227,155,2,0,0,0,235,235,235,235,255,0,234,155,2,0,0,0,237,237,237,237,255,0,241,155,2,0,0,0,240,240,240,240,255,0,248,155,2,0,0,0,242,242,242,242,255,0,255,155,2,0,0,0,245,245,245,245,255,0,6,156,2,0,0,0,247,247,247,247,255,0,13,156,2,0,0,0,250,250,250,250,255,0,20,156,2,0,0,0,252,252,252,252,255,0,27,156,2,0,85,255,255,0,255,0,255,0,33,156,2,0,85,255,255,0,255,0,255,0,40,156,2,0,85,255,238,0,238,0,255,0,47,156,2,0,85,255,205,0,205,0,255,0,54,156,2,0,85,255,139,0,139,0,255,0,61,156,2,0,59,208,255,173,255,47,255,0,73,156,2,0,0,0,192,192,192,192,255,0,78,156,2,0,0,0,0,0,0,0,255,0,84,156,2,0,0,0,3,3,3,3,255,0,90,156,2,0,0,0,26,26,26,26,255,0,97,156,2,0,0,0,255,255,255,255,255,0,105,156,2,0,0,0,28,28,28,28,255,0,112,156,2,0,0,0,31,31,31,31,255,0,119,156,2,0,0,0,33,33,33,33,255,0,126,156,2,0,0,0,36,36,36,36,255,0,133,156,2,0,0,0,38,38,38,38,255,0,140,156,2,0,0,0,41,41,41,41,255,0,147,156,2,0,0,0,43,43,43,43,255,0,154,156,2,0,0,0,46,46,46,46,255,0,161,156,2,0,0,0,48,48,48,48,255,0,168,156,2,0,0,0,5,5,5,5,255,0,174,156,2,0,0,0,51,51,51,51,255,0,181,156,2,0,0,0,54,54,54,54,255,0,188,156,2,0,0,0,56,56,56,56,255,0,195,156,2,0,0,0,59,59,59,59,255,0,202,156,2,0,0,0,61,61,61,61,255,0,209,156,2,0,0,0,64,64,64,64,255,0,216,156,2,0,0,0,66,66,66,66,255,0,223,156,2,0,0,0,69,69,69,69,255,0,230,156,2,0,0,0,71,71,71,71,255,0,237,156,2,0,0,0,74,74,74,74,255,0,244,156,2,0,0,0,8,8,8,8,255,0,250,156,2,0,0,0,77,77,77,77,255,0,1,157,2,0,0,0,79,79,79,79,255,0,8,157,2,0,0,0,82,82,82,82,255,0,15,157,2,0,0,0,84,84,84,84,255,0,22,157,2,0,0,0,87,87,87,87,255,0,29,157,2,0,0,0,89,89,89,89,255,0,36,157,2,0,0,0,92,92,92,92,255,0,43,157,2,0,0,0,94,94,94,94,255,0,50,157,2,0,0,0,97,97,97,97,255,0,57,157,2,0,0,0,99,99,99,99,255,0,64,157,2,0,0,0,10,10,10,10,255,0,70,157,2,0,0,0,102,102,102,102,255,0,77,157,2,0,0,0,105,105,105,105,255,0,84,157,2,0,0,0,107,107,107,107,255,0,91,157,2,0,0,0,110,110,110,110,255,0,98,157,2,0,0,0,112,112,112,112,255,0,105,157,2,0,0,0,115,115,115,115,255,0,112,157,2,0,0,0,117,117,117,117,255,0,119,157,2,0,0,0,120,120,120,120,255,0,126,157,2,0,0,0,122,122,122,122,255,0,133,157,2,0,0,0,125,125,125,125,255,0,140,157,2,0,0,0,13,13,13,13,255,0,146,157,2,0,0,0,127,127,127,127,255,0,153,157,2,0,0,0,130,130,130,130,255,0,160,157,2,0,0,0,133,133,133,133,255,0,167,157,2,0,0,0,135,135,135,135,255,0,174,157,2,0,0,0,138,138,138,138,255,0,181,157,2,0,0,0,140,140,140,140,255,0,188,157,2,0,0,0,143,143,143,143,255,0,195,157,2,0,0,0,145,145,145,145,255,0,202,157,2,0,0,0,148,148,148,148,255,0,209,157,2,0,0,0,150,150,150,150,255,0,216,157,2,0,0,0,15,15,15,15,255,0,222,157,2,0,0,0,153,153,153,153,255,0,229,157,2,0,0,0,156,156,156,156,255,0,236,157,2,0,0,0,158,158,158,158,255,0,243,157,2,0,0,0,161,161,161,161,255,0,250,157,2,0,0,0,163,163,163,163,255,0,1,158,2,0,0,0,166,166,166,166,255,0,8,158,2,0,0,0,168,168,168,168,255,0,15,158,2,0,0,0,171,171,171,171,255,0,22,158,2,0,0,0,173,173,173,173,255,0,29,158,2,0,0,0,176,176,176,176,255,0,36,158,2,0,0,0,18,18,18,18,255,0,42,158,2,0,0,0,179,179,179,179,255,0,49,158,2,0,0,0,181,181,181,181,255,0,56,158,2,0,0,0,184,184,184,184,255,0,63,158,2,0,0,0,186,186,186,186,255,0,70,158,2,0,0,0,189,189,189,189,255,0,77,158,2,0,0,0,191,191,191,191,255,0,84,158,2,0,0,0,194,194,194,194,255,0,91,158,2,0,0,0,196,196,196,196,255,0,98,158,2,0,0,0,199,199,199,199,255,0,105,158,2,0,0,0,201,201,201,201,255,0,112,158,2,0,0,0,20,20,20,20,255,0,118,158,2,0,0,0,204,204,204,204,255,0,125,158,2,0,0,0,207,207,207,207,255,0,132,158,2,0,0,0,209,209,209,209,255,0,139,158,2,0,0,0,212,212,212,212,255,0,146,158,2,0,0,0,214,214,214,214,255,0,153,158,2,0,0,0,217,217,217,217,255,0,160,158,2,0,0,0,219,219,219,219,255,0,167,158,2,0,0,0,222,222,222,222,255,0,174,158,2,0,0,0,224,224,224,224,255,0,181,158,2,0,0,0,227,227,227,227,255,0,188,158,2,0,0,0,23,23,23,23,255,0,194,158,2,0,0,0,229,229,229,229,255,0,201,158,2,0,0,0,232,232,232,232,255,0,208,158,2,0,0,0,235,235,235,235,255,0,215,158,2,0,0,0,237,237,237,237,255,0,222,158,2,0,0,0,240,240,240,240,255,0,229,158,2,0,0,0,242,242,242,242,255,0,236,158,2,0,0,0,245,245,245,245,255,0,243,158,2,0,0,0,247,247,247,247,255,0,250,158,2,0,0,0,250,250,250,250,255,0,1,159,2,0,0,0,252,252,252,252,255,0,8,159,2,0,85,15,255,240,255,240,255,0,17,159,2,0,85,15,255,240,255,240,255,0,27,159,2,0,85,15,238,224,238,224,255,0,37,159,2,0,85,14,205,193,205,193,255,0,47,159,2,0,85,14,139,131,139,131,255,0,57,159,2,0,233,150,255,255,105,180,255,0,65,159,2,0,234,145,255,255,110,180,255,0,74,159,2,0,235,141,238,238,106,167,255,0,83,159,2,0,236,135,205,205,96,144,255,0,92,159,2,0,234,148,139,139,58,98,255,0,101,159,2,0,0,140,205,205,92,92,255,0,111,159,2,0,0,148,255,255,106,106,255,0,122,159,2,0,0,148,238,238,99,99,255,0,133,159,2,0,0,149,205,205,85,85,255,0,144,159,2,0,0,148,139,139,58,58,255,0,155,159,2,0,194,255,130,75,0,130,255,0,162,159,2,0,42,0,255,255,255,254,0,0,168,159,2,0,42,15,255,255,255,240,255,0,174,159,2,0,42,15,255,255,255,240,255,0,181,159,2,0,42,15,238,238,238,224,255,0,188,159,2,0,42,14,205,205,205,193,255,0,195,159,2,0,42,14,139,139,139,131,255,0,202,159,2,0,38,106,240,240,230,140,255,0,208,159,2,0,39,112,255,255,246,143,255,0,215,159,2,0,39,112,238,238,230,133,255,0,222,159,2,0,39,111,205,205,198,115,255,0,229,159,2,0,39,111,139,139,134,78,255,0,236,159,2,0,170,20,250,230,230,250,255,0,245,159,2,0,240,15,255,255,240,245,255,0,3,160,2,0,240,15,255,255,240,245,255,0,18,160,2,0,239,15,238,238,224,229,255,0,33,160,2,0,240,14,205,205,193,197,255,0,48,160,2,0,239,14,139,139,131,134,255,0,63,160,2,0,64,255,252,124,252,0,255,0,73,160,2,0,38,49,255,255,250,205,255,0,86,160,2,0,38,49,255,255,250,205,255,0,100,160,2,0,37,50,238,238,233,191,255,0,114,160,2,0,38,49,205,205,201,165,255,0,128,160,2,0,39,49,139,139,137,112,255,0,142,160,2,0,137,63,230,173,216,230,255,0,152,160,2,0,138,64,255,191,239,255,255,0,163,160,2,0,138,64,238,178,223,238,255,0,174,160,2,0,138,63,205,154,192,205,255,0,185,160,2,0,137,64,139,104,131,139,255,0,196,160,2,0,0,119,240,240,128,128,255,0,207,160,2,0,127,31,255,224,255,255,255,0,217,160,2,0,127,31,255,224,255,255,255,0,228,160,2,0,127,31,238,209,238,238,255,0,239,160,2,0,127,31,205,180,205,205,255,0,250,160,2,0,127,31,139,122,139,139,255,0,5,161,2,0,35,115,238,238,221,130,255,0,20,161,2,0,35,116,255,255,236,139,255,0,36,161,2,0,35,115,238,238,220,130,255,0,52,161,2,0,35,115,205,205,190,112,255,0,68,161,2,0,35,115,139,139,129,76,255,0,84,161,2,0,42,40,250,250,250,210,255,0,105,161,2,0,0,0,211,211,211,211,255,0,115,161,2,0,0,0,211,211,211,211,255,0,125,161,2,0,248,73,255,255,182,193,255,0,135,161,2,0,249,81,255,255,174,185,255,0,146,161,2,0,248,81,238,238,162,173,255,0,157,161,2,0,249,80,205,205,140,149,255,0,168,161,2,0,249,80,139,139,95,101,255,0,179,161,2,0,12,132,255,255,160,122,255,0,191,161,2,0,12,132,255,255,160,122,255,0,204,161,2,0,11,132,238,238,149,114,255,0,217,161,2,0,12,133,205,205,129,98,255,0,230,161,2,0,12,133,139,139,87,66,255,0,243,161,2,0,125,209,178,32,178,170,255,0,1,162,2,0,143,117,250,135,206,250,255,0,14,162,2,0,143,79,255,176,226,255,255,0,28,162,2,0,143,79,238,164,211,238,255,0,42,162,2,0,142,79,205,141,182,205,255,0,56,162,2,0,143,78,139,96,123,139,255,0,70,162,2,0,175,143,255,132,112,255,255,0,85,162,2,0,148,56,153,119,136,153,255,0,100,162,2,0,148,56,153,119,136,153,255,0,115,162,2,0,151,52,222,176,196,222,255,0,130,162,2,0,151,53,255,202,225,255,255,0,146,162,2,0,151,53,238,188,210,238,255,0,162,162,2,0,151,53,205,162,181,205,255,0,178,162,2,0,150,53,139,110,123,139,255,0,194,162,2,0,42,31,255,255,255,224,255,0,206,162,2,0,42,31,255,255,255,224,255,0,219,162,2,0,42,31,238,238,238,209,255,0,232,162,2,0,42,31,205,205,205,180,255,0,245,162,2,0,42,31,139,139,139,122,255,0,2,163,2,0,85,192,205,50,205,50,255,0,12,163,2,0,21,20,250,250,240,230,255,0,18,163,2,0,212,255,255,255,0,255,255,0,26,163,2,0,212,255,255,255,0,255,255,0,35,163,2,0,212,255,238,238,0,238,255,0,44,163,2,0,212,255,205,205,0,205,255,0,53,163,2,0,212,255,139,139,0,139,255,0,62,163,2,0,239,185,176,176,48,96,255,0,69,163,2,0,228,203,255,255,52,179,255,0,77,163,2,0,228,203,238,238,48,167,255,0,85,163,2,0,228,204,205,205,41,144,255,0,93,163,2,0,228,203,139,139,28,98,255,0,101,163,2,0,113,128,205,102,205,170,255,0,118,163,2,0,170,255,205,0,0,205,255,0,129,163,2,0,204,152,211,186,85,211,255,0,142,163,2,0,203,153,255,224,102,255,255,0,156,163,2,0,203,153,238,209,95,238,255,0,170,163,2,0,203,153,205,180,82,205,255,0,184,163,2,0,203,154,139,122,55,139,255,0,198,163,2,0,183,124,219,147,112,219,255,0,211,163,2,0,183,125,255,171,130,255,255,0,225,163,2,0,183,125,238,159,121,238,255,0,239,163,2,0,183,125,205,137,104,205,255,0,253,163,2,0,183,124,139,93,71,139,255,0,11,164,2,0,103,169,179,60,179,113,255,0,26,164,2,0,176,143,238,123,104,238,255,0,42,164,2,0,111,255,250,0,250,154,255,0,60,164,2,0,125,167,209,72,209,204,255,0,76,164,2,0,228,228,199,199,21,133,255,0,92,164,2,0,170,198,112,25,25,112,255,0,105,164,2,0,106,9,255,245,255,250,255,0,115,164,2,0,4,30,255,255,228,225,255,0,125,164,2,0,4,30,255,255,228,225,255,0,136,164,2,0,4,30,238,238,213,210,255,0,147,164,2,0,3,29,205,205,183,181,255,0,158,164,2,0,5,29,139,139,125,123,255,0,169,164,2,0,26,73,255,255,228,181,255,0,178,164,2,0,25,81,255,255,222,173,255,0,190,164,2,0,25,81,255,255,222,173,255,0,203,164,2,0,25,82,238,238,207,161,255,0,216,164,2,0,25,82,205,205,179,139,255,0,229,164,2,0,25,82,139,139,121,94,255,0,242,164,2,0,170,255,128,0,0,128,255,0,247,164,2,0,170,255,128,0,0,128,255,0,0,165,2,0,42,0,255,255,255,254,0,0,5,165,2,0,27,23,253,253,245,230,255,0,13,165,2,0,56,192,142,107,142,35,255,0,23,165,2,0,56,193,255,192,255,62,255,0,34,165,2,0,56,192,238,179,238,58,255,0,45,165,2,0,56,192,205,154,205,50,255,0,56,165,2,0,56,192,139,105,139,34,255,0,67,165,2,0,27,255,255,255,165,0,255,0,74,165,2,0,27,255,255,255,165,0,255,0,82,165,2,0,27,255,238,238,154,0,255,0,90,165,2,0,27,255,205,205,133,0,255,0,98,165,2,0,27,255,139,139,90,0,255,0,106,165,2,0,11,255,255,255,69,0,255,0,116,165,2,0,11,255,255,255,69,0,255,0,127,165,2,0,11,255,238,238,64,0,255,0,138,165,2,0,11,255,205,205,55,0,255,0,149,165,2,0,11,255,139,139,37,0,255,0,160,165,2,0,214,123,218,218,112,214,255,0,167,165,2,0,214,124,255,255,131,250,255,0,175,165,2,0,214,124,238,238,122,233,255,0,183,165,2,0,214,124,205,205,105,201,255,0,191,165,2,0,213,124,139,139,71,137,255,0,199,165,2,0,38,72,238,238,232,170,255,0,213,165,2,0,85,100,251,152,251,152,255,0,223,165,2,0,85,101,255,154,255,154,255,0,234,165,2,0,85,100,238,144,238,144,255,0,245,165,2,0,85,100,205,124,205,124,255,0,0,166,2,0,85,100,139,84,139,84,255,0,11,166,2,0,127,67,238,175,238,238,255,0,25,166,2,0,127,68,255,187,255,255,255,0,40,166,2,0,127,68,238,174,238,238,255,0,55,166,2,0,127,68,205,150,205,205,255,0,70,166,2,0,127,67,139,102,139,139,255,0,85,166,2,0,241,124,219,219,112,147,255,0,99,166,2,0,241,125,255,255,130,171,255,0,114,166,2,0,241,125,238,238,121,159,255,0,129,166,2,0,241,125,205,205,104,137,255,0,144,166,2,0,241,124,139,139,71,93,255,0,159,166,2,0,26,41,255,255,239,213,255,0,170,166,2,0,20,70,255,255,218,185,255,0,180,166,2,0,20,70,255,255,218,185,255,0,191,166,2,0,19,69,238,238,203,173,255,0,202,166,2,0,19,69,205,205,175,149,255,0,213,166,2,0,20,69,139,139,119,101,255,0,224,166,2,0,20,176,205,205,133,63,255,0,229,166,2,0,247,63,255,255,192,203,255,0,234,166,2,0,245,73,255,255,181,197,255,0,240,166,2,0,245,73,238,238,169,184,255,0,246,166,2,0,245,74,205,205,145,158,255,0,252,166,2,0,245,73,139,139,99,108,255,0,2,167,2,0,212,70,221,221,160,221,255,0,7,167,2,0,212,68,255,255,187,255,255,0,13,167,2,0,212,68,238,238,174,238,255,0,19,167,2,0,212,68,205,205,150,205,255,0,25,167,2,0,212,67,139,139,102,139,255,0,31,167,2,0,132,59,230,176,224,230,255,0,42,167,2,0,196,221,240,160,32,240,255,0,49,167,2,0,191,207,255,155,48,255,255,0,57,167,2,0,192,207,238,145,44,238,255,0,65,167,2,0,192,207,205,125,38,205,255,0,73,167,2,0,192,207,139,85,26,139,255,0,81,167,2,0,0,255,255,255,0,0,255,0,85,167,2,0,0,255,255,255,0,0,255,0,90,167,2,0,0,255,238,238,0,0,255,0,95,167,2,0,0,255,205,205,0,0,255,0,100,167,2,0,0,255,139,139,0,0,255,0,105,167,2,0,0,61,188,188,143,143,255,0,115,167,2,0,0,62,255,255,193,193,255,0,126,167,2,0,0,62,238,238,180,180,255,0,137,167,2,0,0,62,205,205,155,155,255,0,148,167,2,0,0,62,139,139,105,105,255,0,159,167,2,0,159,181,225,65,105,225,255,0,169,167,2,0,159,183,255,72,118,255,255,0,180,167,2,0,159,183,238,67,110,238,255,0,191,167,2,0,159,182,205,58,95,205,255,0,202,167,2,0,159,183,139,39,64,139,255,0,213,167,2,0,17,220,139,139,69,19,255,0,225,167,2,0,4,138,250,250,128,114,255,0,232,167,2,0,9,150,255,255,140,105,255,0,240,167,2,0,9,150,238,238,130,98,255,0,248,167,2,0,9,150,205,205,112,84,255,0,0,168,2,0,9,150,139,139,76,57,255,0,8,168,2,0,19,154,244,244,164,96,255,0,19,168,2,0,103,170,139,46,139,87,255,0,28,168,2,0,103,171,255,84,255,159,255,0,38,168,2,0,103,171,238,78,238,148,255,0,48,168,2,0,103,171,205,67,205,128,255,0,58,168,2,0,103,170,139,46,139,87,255,0,68,168,2,0,17,16,255,255,245,238,255,0,77,168,2,0,17,16,255,255,245,238,255,0,87,168,2,0,18,17,238,238,229,222,255,0,97,168,2,0,18,17,205,205,197,191,255,0,107,168,2,0,18,16,139,139,134,130,255,0,117,168,2,0,13,183,160,160,82,45,255,0,124,168,2,0,13,184,255,255,130,71,255,0,132,168,2,0,13,184,238,238,121,66,255,0,140,168,2,0,13,184,205,205,104,57,255,0,148,168,2,0,13,185,139,139,71,38,255,0,156,168,2,0,139,108,235,135,206,235,255,0,164,168,2,0,144,120,255,135,206,255,255,0,173,168,2,0,144,120,238,126,192,238,255,0,182,168,2,0,144,120,205,108,166,205,255,0,191,168,2,0,145,119,139,74,112,139,255,0,200,168,2,0,175,143,205,106,90,205,255,0,210,168,2,0,175,144,255,131,111,255,255,0,221,168,2,0,175,144,238,122,103,238,255,0,232,168,2,0,175,144,205,105,89,205,255,0,243,168,2,0,175,144,139,71,60,139,255,0,254,168,2,0,148,56,144,112,128,144,255,0,8,169,2,0,149,56,255,198,226,255,255,0,19,169,2,0,149,56,238,185,211,238,255,0,30,169,2,0,148,57,205,159,182,205,255,0,41,169,2,0,149,56,139,108,123,139,255,0,52,169,2,0,148,56,144,112,128,144,255,0,62,169,2,0,0,5,255,255,250,250,255,0,67,169,2,0,0,5,255,255,250,250,255,0,73,169,2,0,0,5,238,238,233,233,255,0,79,169,2,0,0,4,205,205,201,201,255,0,85,169,2,0,0,3,139,139,137,137,255,0,91,169,2,0,106,255,255,0,255,127,255,0,103,169,2,0,106,255,255,0,255,127,255,0,116,169,2,0,106,255,238,0,238,118,255,0,129,169,2,0,106,255,205,0,205,102,255,0,142,169,2,0,106,255,139,0,139,69,255,0,155,169,2,0,146,155,180,70,130,180,255,0,165,169,2,0,146,156,255,99,184,255,255,0,176,169,2,0,146,156,238,92,172,238,255,0,187,169,2,0,146,156,205,79,148,205,255,0,198,169,2,0,147,155,139,54,100,139,255,0,209,169,2,0,24,84,210,210,180,140,255,0,213,169,2,0,20,176,255,255,165,79,255,0,218,169,2,0,20,176,238,238,154,73,255,0,223,169,2,0,20,176,205,205,133,63,255,0,228,169,2,0,20,176,139,139,90,43,255,0,233,169,2,0,212,29,216,216,191,216,255,0,241,169,2,0,212,30,255,255,225,255,255,0,250,169,2,0,212,30,238,238,210,238,255,0,3,170,2,0,212,29,205,205,181,205,255,0,12,170,2,0,212,29,139,139,123,139,255,0,21,170,2,0,6,184,255,255,99,71,255,0,28,170,2,0,6,184,255,255,99,71,255,0,36,170,2,0,6,184,238,238,92,66,255,0,44,170,2,0,6,184,205,205,79,57,255,0,52,170,2,0,6,185,139,139,54,38,255,0,70,173,2,0,42,0,255,255,255,254,0,0,60,170,2,0,123,182,224,64,224,208,255,0,70,170,2,0,129,255,255,0,245,255,255,0,81,170,2,0,129,255,238,0,229,238,255,0,92,170,2,0,129,255,205,0,197,205,255,0,103,170,2,0,129,255,139,0,134,139,255,0,114,170,2,0,212,115,238,238,130,238,255,0,121,170,2,0,227,215,208,208,32,144,255,0,131,170,2,0,235,193,255,255,62,150,255,0,142,170,2,0,235,192,238,238,58,140,255,0,153,170,2,0,235,192,205,205,50,120,255,0,164,170,2,0,235,192,139,139,34,82,255,0,175,170,2,0,27,68,245,245,222,179,255,0,181,170,2,0,27,69,255,255,231,186,255,0,188,170,2,0,27,68,238,238,216,174,255,0,195,170,2,0,27,68,205,205,186,150,255,0,202,170,2,0,27,67,139,139,126,102,255,0,209,170,2,0,0,0,255,255,255,255,255,0,215,170,2,0,0,0,245,245,245,245,255,0,226,170,2,0,42,255,255,255,255,0,255,0,233,170,2,0,42,255,255,255,255,0,255,0,241,170,2,0,42,255,238,238,238,0,255,0,249,170,2,0,42,255,205,205,205,0,255,0,1,171,2,0,42,255,139,139,139,0,255,0,9,171,2,0,56,192,205,154,205,50,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,175,2,0,228,172,2,0,230,172,2,0,232,172,2,0,234,172,2,0,236,172,2,0,238,172,2,0,240,172,2,0,242,172,2,0,244,172,2,0,246,172,2,0,249,172,2,0,252,172,2,0,255,172,2,0,2,173,2,0,5,173,2,0,8,173,2,0,11,173,2,0,14,173,2,0,17,173,2,0,20,173,2,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,13,0,0,0,51,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,173,2,0,175,174,2,0,8,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,173,185,2,0,165,185,2,0,63,186,2,0,9,0,0,0,69,186,2,0,10,0,0,0,78,186,2,0,11,0,0,0,144,186,2,0,12,0,0,0,150,186,2,0,13,0,0,0,155,186,2,0,14,0,0,0,78,186,2,0,15,0,0,0,35,187,2,0,16,0,0,0,42,187,2,0,17,0,0,0,50,187,2,0,18,0,0,0,57,187,2,0,19,0,0,0,69,187,2,0,20,0,0,0,144,186,2,0,21,0,0,0,81,187,2,0,22,0,0,0,89,187,2,0,23,0,0,0,99,187,2,0,24,0,0,0,113,187,2,0,25,0,0,0,120,187,2,0,26,0,0,0,125,187,2,0,27,0,0,0,128,187,2,0,28,0,0,0,133,187,2,0,29,0,0,0,141,187,2,0,30,0,0,0,147,187,2,0,31,0,0,0,153,187,2,0,32,0,0,0,160,187,2,0,33,0,0,0,166,187,2,0,33,0,0,0,174,187,2,0,34,0,0,0,181,187,2,0,35,0,0,0,78,186,2,0,36,0,0,0,42,187,2,0,17,0,0,0,50,187,2,0,18,0,0,0,172,189,2,0,37,0,0,0,57,187,2,0,19,0,0,0,69,187,2,0,20,0,0,0,144,186,2,0,21,0,0,0,183,189,2,0,38,0,0,0,89,187,2,0,23,0,0,0,99,187,2,0,24,0,0,0,113,187,2,0,25,0,0,0,120,187,2,0,26,0,0,0,125,187,2,0,27,0,0,0,128,187,2,0,28,0,0,0,191,189,2,0,39,0,0,0,141,187,2,0,30,0,0,0,147,187,2,0,31,0,0,0,153,187,2,0,32,0,0,0,160,187,2,0,33,0,0,0,166,187,2,0,33,0,0,0,174,187,2,0,34,0,0,0,181,187,2,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,164,191,2,0,178,191,2,0,191,191,2,0,208,191,2,0,240,191,2,0,255,191,2,0,17,192,2,0,32,192,2,0,52,192,2,0,80,192,2,0,115,192,2,0,132,192,2,0,159,192,2,0,179,192,2,0,217,192,2,0,244,192,2,0,30,193,2,0,77,193,2,0,94,193,2,0,145,193,2,0,168,193,2,0,214,193,2,0,241,193,2,0,36,194,2,0,72,194,2,0,124,194,2,0,169,194,2,0,184,194,2,0,210,194,2,0,248,194,2,0,24,195,2,0,57,195,2,0,91,195,2,0,108,195,2,0,129,195,2,0,145,195,2,0,162,195,2,0,206,195,2,0,30,196,2,0,89,196,2,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,6,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,4,254,255,255,135,254,255,255,7,0,0,0,0,0,0,0,0,255,255,127,255,255,255,127,255,255,255,255,255,255,255,243,127,254,253,255,255,255,255,255,127,255,255,255,255,255,255,255,255,15,224,255,255,255,255,49,252,255,255,255,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,1,0,248,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,215,255,255,251,255,255,255,255,127,127,84,253,255,15,0,254,223,255,255,255,255,255,255,255,255,254,223,255,255,255,255,3,0,255,255,255,255,255,255,159,25,255,255,255,207,63,3,0,0,0,0,0,0,254,255,255,255,127,2,254,255,255,255,127,0,0,0,0,0,0,0,0,0,255,255,255,7,7,0,0,0,0,0,254,255,255,7,254,7,0,0,0,0,254,255,255,255,255,255,255,255,255,124,255,127,47,0,96,0,0,0,224,255,255,255,255,255,255,35,0,0,0,255,3,0,0,0,224,159,249,255,255,253,197,3,0,0,0,176,3,0,3,0,224,135,249,255,255,253,109,3,0,0,0,94,0,0,28,0,224,175,251,255,255,253,237,35,0,0,0,0,1,0,0,0,224,159,249,255,255,253,205,35,0,0,0,176,3,0,0,0,224,199,61,214,24,199,191,3,0,0,0,0,0,0,0,0,224,223,253,255,255,253,239,3,0,0,0,0,3,0,0,0,224,223,253,255,255,253,239,3,0,0,0,64,3,0,0,0,224,223,253,255,255,253,255,3,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,255,255,255,255,127,13,0,63,0,0,0,0,0,0,0,150,37,240,254,174,108,13,32,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,63,0,255,255,255,255,127,0,237,218,7,0,0,0,0,80,1,80,49,130,171,98,44,0,0,0,0,64,0,201,128,245,7,0,0,0,0,8,1,2,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,3,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,64,76,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,254,3,0,0,254,255,255,255,255,255,255,255,255,255,31,0,254,255,255,255,255,255,255,255,255,255,255,7,224,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,255,7,254,255,255,135,254,255,255,7,0,0,0,0,0,0,128,0,255,255,127,255,255,255,127,255,255,255,255,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,1,0,248,3,0,3,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,3,0,0,0,192,215,255,255,251,255,255,255,255,127,127,84,253,255,15,0,254,223,255,255,255,255,255,255,255,255,254,223,255,255,255,255,123,0,255,255,255,255,255,255,159,25,255,255,255,207,63,3,0,0,0,0,0,0,254,255,255,255,127,2,254,255,255,255,127,0,254,255,251,255,255,187,22,0,255,255,255,7,7,0,0,0,0,0,254,255,255,7,255,255,7,0,255,3,255,255,255,255,255,255,255,255,255,124,255,127,239,255,255,61,255,3,238,255,255,255,255,255,255,243,255,63,30,255,207,255,0,0,238,159,249,255,255,253,197,211,159,57,128,176,207,255,3,0,228,135,249,255,255,253,109,211,135,57,0,94,192,255,31,0,238,175,251,255,255,253,237,243,191,59,0,0,193,255,0,0,238,159,249,255,255,253,205,243,143,57,192,176,195,255,0,0,236,199,61,214,24,199,191,195,199,61,128,0,128,255,0,0,238,223,253,255,255,253,239,195,223,61,96,0,195,255,0,0,236,223,253,255,255,253,239,195,223,61,96,64,195,255,0,0,236,223,253,255,255,253,255,195,207,61,128,0,195,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,255,255,255,255,127,255,7,255,127,255,3,0,0,0,0,150,37,240,254,174,108,255,59,95,63,255,3,0,0,0,0,0,0,0,3,255,3,160,194,255,254,255,255,255,3,254,255,223,15,191,254,255,63,254,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,31,2,0,0,0,160,0,0,0,254,255,62,0,254,255,255,255,255,255,255,255,255,255,31,102,254,255,255,255,255,255,255,255,255,255,255,119,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+84472);allocate([22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,0,0,0,0,0,0,0,0,0,1,1,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,45,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,0,0,0,0,0,0,0,0,0,1,1,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,45,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,92,116,1,0,204,117,1,0,60,119,1,0,172,120,1,0,172,120,1,0,28,122,1,0,60,119,1,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,6,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,10,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,0,0,0,0,0,0,0,0,0,1,1,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,45,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,16,0,0,0,38,0,0,0,51,0,0,0,52,0,0,0,39,0,0,0,53,0,0,0,17,0,0,0,24,0,0,0,40,0,0,0,11,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,18,0,0,0,47,0,0,0,54,0,0,0,55,0,0,0,48,0,0,0,56,0,0,0,19,0,0,0,25,0,0,0,49,0,0,0,13,0,0,0,14,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,23,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,106,1,0,168,123,1,0,24,125,1,0,136,126,1,0,136,126,1,0,248,127,1,0,24,125,1,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,10,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,29,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,15,0,0,0,23,0,0,0,31,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,0,0,0,0,0,0,0,0,0,1,1,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,45,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,16,0,0,0,38,0,0,0,51,0,0,0,52,0,0,0,39,0,0,0,53,0,0,0,17,0,0,0,24,0,0,0,40,0,0,0,11,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,18,0,0,0,47,0,0,0,54,0,0,0,55,0,0,0,48,0,0,0,56,0,0,0,19,0,0,0,25,0,0,0,49,0,0,0,13,0,0,0,14,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,21,10,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,16,12,19,28,30,3,13,31,32,33,34,35,27,26,17,25,25,25,25,25,25,25,25,25,25,22,18,2,14,11,15,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,20,28,4,28,22,28,24,24,24,24,24,24,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,36,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,28,28,28,28,28,28,28,28,28,28,22,28,26,28,28,22,28,28,28,28,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,28,22,22,22,22,22,22,22,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,33,2,0,127,199,2,0,8,33,2,0,74,199,2,0,136,199,2,0,145,199,2,0,240,199,2,0,246,199,2,0,249,199,2,0,255,199,2,0,154,199,2,0,6,200,2,0,15,200,2,0,23,200,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,184,132,1,0,40,133,1,0,152,133,1,0,152,133,1,0,32,0,0,0,9,0,0,0,10,0,0,0,13,0,0,0,11,0,0,0,12,0,0,0,133,0,0,0,0,32,0,0,1,32,0,0,2,32,0,0,3,32,0,0,4,32,0,0,5,32,0,0,6,32,0,0,8,32,0,0,9,32,0,0,10,32,0,0,40,32,0,0,41,32,0,0,95,32,0,0,0,48,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,3,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,131,249,162,0,68,78,110,0,252,41,21,0,209,87,39,0,221,52,245,0,98,219,192,0,60,153,149,0,65,144,67,0,99,81,254,0,187,222,171,0,183,97,197,0,58,110,36,0,210,77,66,0,73,6,224,0,9,234,46,0,28,146,209,0,235,29,254,0,41,177,28,0,232,62,167,0,245,53,130,0,68,187,46,0,156,233,132,0,180,38,112,0,65,126,95,0,214,145,57,0,83,131,57,0,156,244,57,0,139,95,132,0,40,249,189,0,248,31,59,0,222,255,151,0,15,152,5,0,17,47,239,0,10,90,139,0,109,31,109,0,207,126,54,0,9,203,39,0,70,79,183,0,158,102,63,0,45,234,95,0,186,39,117,0,229,235,199,0,61,123,241,0,247,57,7,0,146,82,138,0,251,107,234,0,31,177,95,0,8,93,141,0,48,3,86,0,123,252,70,0,240,171,107,0,32,188,207,0,54,244,154,0,227,169,29,0,94,97,145,0,8,27,230,0,133,153,101,0,160,20,95,0,141,64,104,0,128,216,255,0,39,115,77,0,6,6,49,0,202,86,21,0,201,168,115,0,123,226,96,0,107,140,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,88,241,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,22,0,0,0,80,237,2,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,22,0,0,0,72,233,2,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,110,243,2,0,110,0,0,0,112,243,2,0,114,0,0,0,114,243,2,0,102,0,0,0,116,243,2,0,97,0,0,0,118,243,2,0,101,0,0,0,120,243,2,0,119,0,0,0,122,243,2,0,87,0,0,0,135,243,2,0,115,0,0,0,149,243,2,0,83,0,0,0,161,243,2,0,100,0,0,0,174,243,2,0,68,0,0,0,186,243,2],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+94712);allocate([4,0,4,0,27,0,27,0,32,0,32,0,35,0,33,0,10,0,2,0,22,0,9,0,33,0,33,0,33,0,21,0,28,0,1,0,20,0,20,0,20,0,20,0,20,0,20,0,20,0,8,0,4,0,5,0,27,0,2,0,23,0,27,0,32,0,31,0,30,0,29,0,9,0,19,0,0,0,21,0,18,0,21,0,3,0,7,0,21,0,21,0,20,0,20,0,20,0,20,0,20,0,20,0,20,0,20,0,8,0,4,0,5,0,5,0,6,0,27,0,26,0,24,0,25,0,32,0,7,0,21,0,20,0,20,0,20,0,20,0,20,0,20,0,11,0,20,0,13,0,20,0,12,0,20,0,20,0,20,0,14,0,20,0,20,0,20,0,16,0,20,0,15,0,20,0,17,0,0,0,0,0,0,0,142,0,46,0,47,0,51,0,53,0,48,0,55,0,146,0,230,0,230,0,230,0,230,0,0,0,61,0,125,0,55,0,55,0,230,0,230,0,0,0,40,0,53,0,46,0,50,0,47,0,81,0,0,0,0,0,71,0,0,0,0,0,230,0,81,0,0,0,230,0,230,0,230,0,0,0,230,0,113,0,85,0,230,0,86,0,230,0,0,0,89,0,230,0,0,0,62,0,66,0,75,0,83,0,77,0,86,0,67,0,0,0,0,0,98,0,99,0,230,0,0,0,230,0,230,0,230,0,0,0,0,0,102,0,83,0,95,0,90,0,98,0,98,0,101,0,0,0,108,0,0,0,103,0,0,0,110,0,102,0,104,0,0,0,104,0,120,0,117,0,0,0,116,0,0,0,121,0,0,0,230,0,158,0,165,0,172,0,179,0,182,0,73,0,188,0,195,0,202,0,209,0,216,0,222,0,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,3,0,4,0,7,0,3,0,4,0,5,0,5,0,6,0,6,0,8,0,7,0,7,0,17,0,22,0,18,0,17,0,18,0,8,0,8,0,15,0,15,0,23,0,15,0,24,0,15,0,25,0,26,0,26,0,30,0,22,0,98,0,30,0,5,0,50,0,6,0,34,0,34,0,51,0,23,0,24,0,52,0,25,0,26,0,26,0,42,0,44,0,42,0,44,0,47,0,50,0,47,0,53,0,55,0,51,0,54,0,59,0,60,0,52,0,59,0,60,0,69,0,68,0,34,0,68,0,70,0,56,0,71,0,72,0,53,0,55,0,54,0,73,0,74,0,76,0,41,0,78,0,69,0,80,0,27,0,81,0,82,0,70,0,71,0,84,0,72,0,85,0,16,0,73,0,74,0,86,0,76,0,78,0,88,0,90,0,80,0,81,0,82,0,9,0,2,0,84,0,0,0,0,0,85,0,0,0,0,0,86,0,0,0,0,0,88,0,90,0,93,0,93,0,93,0,93,0,93,0,93,0,93,0,94,0,94,0,94,0,94,0,94,0,94,0,94,0,95,0,95,0,95,0,95,0,95,0,95,0,95,0,96,0,0,0,96,0,96,0,96,0,96,0,96,0,97,0,97,0,99,0,0,0,99,0,99,0,99,0,99,0,99,0,100,0,0,0,100,0,0,0,100,0,100,0,100,0,101,0,0,0,101,0,101,0,101,0,101,0,101,0,102,0,102,0,0,0,102,0,102,0,102,0,102,0,103,0,0,0,103,0,103,0,103,0,103,0,104,0,0,0,104,0,104,0,104,0,104,0,104,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,0,0,92,0,1,0,93,0,93,0,94,0,94,0,95,0,95,0,92,0,92,0,92,0,92,0,92,0,96,0,92,0,92,0,92,0,97,0,92,0,92,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,99,0,100,0,101,0,102,0,102,0,92,0,92,0,103,0,92,0,92,0,92,0,96,0,92,0,92,0,97,0,92,0,97,0,92,0,104,0,97,0,92,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,99,0,100,0,101,0,101,0,92,0,102,0,92,0,92,0,92,0,103,0,104,0,97,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,98,0,0,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,0,0,10,0,11,0,12,0,13,0,14,0,10,0,15,0,16,0,17,0,18,0,19,0,10,0,20,0,21,0,21,0,21,0,22,0,23,0,21,0,24,0,21,0,21,0,25,0,21,0,21,0,21,0,26,0,21,0,21,0,10,0,21,0,21,0,21,0,22,0,23,0,24,0,21,0,21,0,25,0,21,0,21,0,21,0,26,0,21,0,21,0,21,0,21,0,27,0,12,0,12,0,36,0,30,0,30,0,32,0,33,0,32,0,33,0,36,0,37,0,38,0,45,0,50,0,47,0,46,0,42,0,37,0,38,0,40,0,41,0,51,0,42,0,52,0,43,0,53,0,54,0,55,0,60,0,50,0,49,0,61,0,34,0,69,0,34,0,63,0,64,0,70,0,51,0,52,0,71,0,53,0,54,0,55,0,47,0,92,0,42,0,44,0,92,0,69,0,68,0,72,0,74,0,70,0,73,0,92,0,60,0,71,0,92,0,61,0,76,0,92,0,65,0,68,0,77,0,75,0,78,0,79,0,72,0,74,0,73,0,80,0,81,0,82,0,44,0,83,0,76,0,84,0,56,0,85,0,86,0,77,0,78,0,87,0,79,0,88,0,44,0,80,0,81,0,89,0,82,0,83,0,90,0,91,0,84,0,85,0,86,0,92,0,28,0,87,0,92,0,92,0,88,0,92,0,92,0,89,0,92,0,92,0,90,0,91,0,29,0,29,0,29,0,29,0,29,0,29,0,29,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,35,0,35,0,35,0,35,0,35,0,35,0,35,0,39,0,92,0,39,0,39,0,39,0,39,0,39,0,48,0,48,0,57,0,92,0,57,0,57,0,57,0,57,0,57,0,58,0,92,0,58,0,92,0,58,0,58,0,58,0,59,0,92,0,59,0,59,0,59,0,59,0,59,0,62,0,62,0,92,0,62,0,62,0,62,0,62,0,66,0,92,0,66,0,66,0,66,0,66,0,67,0,92,0,67,0,67,0,67,0,67,0,67,0,9,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,92,0,8,0,174,255,209,0,10,0,174,255,174,255,11,0,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,5,0,209,0,174,255,209,0,209,0,209,0,209,0,209,0,209,0,209,0,209,0,174,255,251,255,174,255,14,0,236,255,174,255,174,255,174,255,174,255,209,0,209,0,209,0,209,0,209,0,13,0,37,0,12,0,66,0,16,0,80,0,19,0,109,0,123,0,20,0,152,0,15,0,166,0,195,0,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,23,0,174,255,119,0,174,255,7,0,46,0,174,255,38,0,174,255,23,0,17,0,35,0,174,255,13,0,174,255,174,255,174,255,174,255,58,0,174,255,174,255,53,0,174,255,174,255,174,255,40,0,174,255,7,0,174,255,59,0,69,0,174,255,72,0,174,255,174,255,174,255,174,255,174,255,174,255,174,255,252,255,232,0,246,255,255,255,26,0,0,0,39,0,1,0,50,0,174,255,174,255,2,0,36,0,3,0,47,0,174,255,174,255,174,255,174,255,174,255,254,255,148,0,174,255,9,0,27,0,174,255,188,255,174,255,174,255,175,255,174,255,174,255,174,255,174,255,174,255,174,255,174,255,0,0,0,0,0,0,109,230,236,222,5,0,11,0,0,0,0,0,0,0,73,0,49,1,83,0,127,1,48,1,105,0,120,1,255,0,129,1,83,2,130,1,131,1,132,1,133,1,134,1,84,2,135,1,136,1,137,1,86,2,138,1,87,2,139,1,140,1,142,1,221,1,143,1,89,2,144,1,91,2,145,1,146,1,147,1,96,2,148,1,99,2,150,1,105,2,151,1,104,2,152,1,153,1,156,1,111,2,157,1,114,2,159,1,117,2,166,1,128,2,167,1,168,1,169,1,131,2,172,1,173,1,174,1,136,2,175,1,176,1,177,1,138,2,178,1,139,2,183,1,146,2,184,1,185,1,188,1,189,1,196,1,198,1,196,1,197,1,197,1,198,1,199,1,201,1,199,1,200,1,200,1,201,1,202,1,204,1,202,1,203,1,203,1,204,1,241,1,243,1,241,1,242,1,242,1,243,1,244,1,245,1,246,1,149,1,247,1,191,1,32,2,158,1,134,3,172,3,136,3,173,3,137,3,174,3,138,3,175,3,140,3,204,3,142,3,205,3,143,3,206,3,153,3,69,3,153,3,190,31,163,3,194,3,247,3,248,3,250,3,251,3,96,30,155,30,223,0,223,0,158,30,223,0,89,31,81,31,91,31,83,31,93,31,85,31,95,31,87,31,188,31,179,31,204,31,195,31,236,31,229,31,252,31,243,31,58,2,101,44,59,2,60,2,61,2,154,1,62,2,102,44,65,2,66,2,67,2,128,1,68,2,137,2,69,2,140,2,244,3,184,3,249,3,242,3,253,3,123,3,254,3,124,3,255,3,125,3,192,4,207,4,38,33,201,3,42,33,107,0,43,33,229,0,50,33,78,33,131,33,132,33,96,44,97,44,98,44,107,2,99,44,125,29,100,44,125,2,109,44,81,2,110,44,113,2,111,44,80,2,112,44,82,2,114,44,115,44,117,44,118,44,126,44,63,2,127,44,64,2,242,44,243,44,125,167,121,29,139,167,140,167,141,167,101,2,170,167,102,2,199,16,39,45,205,16,45,45,118,3,119,3,156,3,181,0,146,3,208,3,152,3,209,3,166,3,213,3,160,3,214,3,154,3,240,3,161,3,241,3,149,3,245,3,207,3,215,3,0,0,0,0,65,0,32,26,192,0,32,31,0,1,1,47,50,1,1,5,57,1,1,15,74,1,1,45,121,1,1,5,112,3,1,3,145,3,32,17,163,3,32,9,0,4,80,16,16,4,32,32,96,4,1,33,138,4,1,53,193,4,1,13,208,4,1,63,20,5,1,19,49,5,48,38,160,1,1,5,179,1,1,3,205,1,1,15,222,1,1,17,248,1,1,39,34,2,1,17,216,3,1,23,0,30,1,149,160,30,1,95,8,31,248,8,24,31,248,6,40,31,248,8,56,31,248,8,72,31,248,6,104,31,248,8,136,31,248,8,152,31,248,8,168,31,248,8,184,31,248,2,186,31,182,2,200,31,170,4,216,31,248,2,218,31,156,2,232,31,248,2,234,31,144,2,248,31,128,2,250,31,130,2,70,2,1,9,16,5,1,3,96,33,16,16,0,44,48,47,103,44,1,5,128,44,1,99,235,44,1,3,64,166,1,45,128,166,1,23,34,167,1,13,50,167,1,61,121,167,1,3,126,167,1,9,144,167,1,3,160,167,1,9,33,255,32,26,0,0,0,0,123,32,97,112,112,101,110,100,69,114,114,111,114,40,36,48,41,59,32,125,0,99,111,114,101,0,73,32,0,120,100,111,116,0,100,111,116,58,100,111,116,0,103,118,58,100,111,116,0,99,97,110,111,110,58,100,111,116,0,112,108,97,105,110,58,100,111,116,0,112,108,97,105,110,45,101,120,116,58,100,111,116,0,120,100,111,116,58,120,100,111,116,0,120,100,111,116,49,46,50,58,120,100,111,116,0,120,100,111,116,49,46,52,58,120,100,111,116,0,32,37,100,32,0,0,0,0,0,0,0,0,0,0,0,35,37,48,50,120,37,48,50,120,37,48,50,120,37,48,50,120,0,115,101,116,108,105,110,101,119,105,100,116,104,40,0,37,46,51,102,0,83,32,0,67,32,0,50,32,0,37,115,37,100,32,45,0,69,32,0,101,32,0,70,32,0,116,32,37,117,32,0,84,32,0,120,100,111,116,118,101,114,115,105,111,110,0,49,46,52,0,49,46,50,0,49,46,55,0,95,108,100,114,97,119,95,0,95,104,100,114,97,119,95,0,95,116,100,114,97,119,95,0,95,104,108,100,114,97,119,95,0,95,116,108,100,114,97,119,95,0,120,100,111,116,32,118,101,114,115,105,111,110,32,34,37,115,34,32,116,111,111,32,108,111,110,103,0,37,46,48,50,102,0,102,105,103,0,102,105,103,58,102,105,103,0,35,32,37,115,10,0,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,46,49,102,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,10,0,110,32,62,61,32,52,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,102,105,103,46,99,0,102,105,103,95,98,101,122,105,101,114,0,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,46,49,102,32,37,100,32,37,100,32,37,100,32,37,100,10,0,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,46,51,102,32,37,100,32,37,46,52,102,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,10,0,37,100,32,37,100,32,35,37,48,50,120,37,48,50,120,37,48,50,120,10,0,102,105,103,95,114,101,115,111,108,118,101,95,99,111,108,111,114,0,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,46,49,102,32,37,46,52,102,32,37,100,32,37,46,49,102,32,37,46,49,102,32,37,100,32,37,100,32,37,115,92,48,48,49,10,0,35,32,101,110,100,32,111,102,32,70,73,71,32,102,105,108,101,10,0,35,70,73,71,32,51,46,50,10,0,35,32,71,101,110,101,114,97,116,101,100,32,98,121,32,37,115,32,118,101,114,115,105,111,110,32,37,115,32,40,37,115,41,10,0,35,32,84,105,116,108,101,58,32,37,115,10,0,35,32,80,97,103,101,115,58,32,37,100,10,0,80,111,114,116,114,97,105,116,10,0,67,101,110,116,101,114,10,0,73,110,99,104,101,115,10,0,76,101,116,116,101,114,10,0,49,48,48,46,48,48,10,0,83,105,110,103,108,101,10,0,45,50,10,0,49,50,48,48,0,32,50,10,0,109,97,112,0,105,115,109,97,112,58,109,97,112,0,99,109,97,112,58,109,97,112,0,105,109,97,112,58,109,97,112,0,99,109,97,112,120,58,109,97,112,0,105,109,97,112,95,110,112,58,109,97,112,0,99,109,97,112,120,95,110,112,58,109,97,112,0,114,101,99,116,32,37,115,32,37,100,44,37,100,32,37,100,44,37,100,10,0,99,105,114,99,108,101,32,37,115,32,37,100,44,37,100,44,37,100,10,0,112,111,108,121,32,37,115,0,32,37,100,44,37,100,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,109,97,112,46,99,0,109,97,112,95,111,117,116,112,117,116,95,115,104,97,112,101,0,114,101,99,116,97,110,103,108,101,32,40,37,100,44,37,100,41,32,40,37,100,44,37,100,41,32,37,115,32,37,115,10,0,60,97,114,101,97,32,115,104,97,112,101,61,34,99,105,114,99,108,101,34,0,60,97,114,101,97,32,115,104,97,112,101,61,34,114,101,99,116,34,0,60,97,114,101,97,32,115,104,97,112,101,61,34,112,111,108,121,34,0,32,105,100,61,34,0,32,104,114,101,102,61,34,0,32,116,105,116,108,101,61,34,0,32,97,108,116,61,34,34,0,32,99,111,111,114,100,115,61,34,0,37,100,44,37,100,44,37,100,0,37,100,44,37,100,44,37,100,44,37,100,0,37,100,44,37,100,0,44,37,100,44,37,100,0,34,62,10,0,60,47,109,97,112,62,10,0,98,97,115,101,32,114,101,102,101,114,101,114,10,0,100,101,102,97,117,108,116,32,0,60,109,97,112,32,105,100,61,34,0,34,32,110,97,109,101,61,34,0,112,115,50,58,112,115,0,32,93,32,32,37,100,32,116,114,117,101,32,37,115,10,0,32,93,32,32,37,100,32,102,97,108,115,101,32,37,115,10,0,32,115,101,116,108,105,110,101,119,105,100,116,104,10,0,37,115,32,0,115,101,116,104,115,98,0,37,46,53,103,32,37,46,53,103,32,37,46,53,103,32,37,115,99,111,108,111,114,10,0,37,32,0,110,101,119,112,97,116,104,32,0,32,109,111,118,101,116,111,10,0,32,108,105,110,101,116,111,10,0,115,116,114,111,107,101,10,0,32,99,117,114,118,101,116,111,10,0,99,108,111,115,101,112,97,116,104,32,102,105,108,108,10,0,99,108,111,115,101,112,97,116,104,32,115,116,114,111,107,101,10,0,32,101,108,108,105,112,115,101,95,112,97,116,104,32,102,105,108,108,10,0,32,101,108,108,105,112,115,101,95,112,97,116,104,32,115,116,114,111,107,101,10,0,32,47,37,115,32,115,101,116,95,102,111,110,116,10,0,32,109,111,118,101,116,111,32,0,32,37,115,32,97,108,105,103,110,101,100,116,101,120,116,10,0,91,32,47,82,101,99,116,32,91,32,0,32,93,10,0,32,32,47,66,111,114,100,101,114,32,91,32,48,32,48,32,48,32,93,10,32,32,47,65,99,116,105,111,110,32,60,60,32,47,83,117,98,116,121,112,101,32,47,85,82,73,32,47,85,82,73,32,37,115,32,62,62,10,32,32,47,83,117,98,116,121,112,101,32,47,76,105,110,107,10,47,65,78,78,32,112,100,102,109,97,114,107,10,0,103,115,97,118,101,10,0,37,37,32,37,115,10,0,48,32,48,32,48,32,101,100,103,101,99,111,108,111,114,10,0,101,110,100,112,97,103,101,10,115,104,111,119,112,97,103,101,10,103,114,101,115,116,111,114,101,10,0,37,37,80,97,103,101,84,114,97,105,108,101,114,10,0,37,37,37,37,69,110,100,80,97,103,101,58,32,37,100,10,0,37,37,37,37,80,97,103,101,58,32,37,100,32,37,100,10,0,37,37,37,37,80,97,103,101,66,111,117,110,100,105,110,103,66,111,120,58,32,37,100,32,37,100,32,37,100,32,37,100,10,0,76,97,110,100,115,99,97,112,101,0,80,111,114,116,114,97,105,116,0,37,37,37,37,80,97,103,101,79,114,105,101,110,116,97,116,105,111,110,58,32,37,115,10,0,60,60,32,47,80,97,103,101,83,105,122,101,32,91,37,100,32,37,100,93,32,62,62,32,115,101,116,112,97,103,101,100,101,118,105,99,101,10,0,37,100,32,37,100,32,37,100,32,98,101,103,105,110,112,97,103,101,10,0,103,115,97,118,101,10,37,100,32,37,100,32,37,100,32,37,100,32,98,111,120,112,114,105,109,32,99,108,105,112,32,110,101,119,112,97,116,104,10,0,37,103,32,37,103,32,115,101,116,95,115,99,97,108,101,32,37,100,32,114,111,116,97,116,101,32,37,103,32,37,103,32,116,114,97,110,115,108,97,116,101,10,0,99,97,110,118,97,115,32,115,105,122,101,32,40,37,100,44,37,100,41,32,101,120,99,101,101,100,115,32,80,68,70,32,108,105,109,105,116,32,40,37,100,41,10,9,40,115,117,103,103,101,115,116,32,115,101,116,116,105,110,103,32,97,32,98,111,117,110,100,105,110,103,32,98,111,120,32,115,105,122,101,44,32,115,101,101,32,100,111,116,40,49,41,41,10,0,91,32,47,67,114,111,112,66,111,120,32,91,37,100,32,37,100,32,37,100,32,37,100,93,32,47,80,65,71,69,83,32,112,100,102,109,97,114,107,10,0,37,100,32,37,100,32,115,101,116,108,97,121,101,114,10,0,0,37,37,37,37,84,105,116,108,101,58,32,37,115,10,0,37,37,80,97,103,101,115,58,32,40,97,116,101,110,100,41,10,0,37,37,80,97,103,101,115,58,32,49,10,0,37,37,66,111,117,110,100,105,110,103,66,111,120,58,32,40,97,116,101,110,100,41,10,0,37,37,37,37,66,111,117,110,100,105,110,103,66,111,120,58,32,37,100,32,37,100,32,37,100,32,37,100,10,0,37,37,69,110,100,67,111,109,109,101,110,116,115,10,115,97,118,101,10,0,115,101,116,117,112,76,97,116,105,110,49,10,0,91,32,123,67,97,116,97,108,111,103,125,32,60,60,32,47,85,82,73,32,60,60,32,47,66,97,115,101,32,37,115,32,62,62,32,62,62,10,47,80,85,84,32,112,100,102,109,97,114,107,10,0,37,37,66,101,103,105,110,80,114,111,108,111,103,0,47,68,111,116,68,105,99,116,32,50,48,48,32,100,105,99,116,32,100,101,102,0,68,111,116,68,105,99,116,32,98,101,103,105,110,0,47,115,101,116,117,112,76,97,116,105,110,49,32,123,0,109,97,114,107,0,47,69,110,99,111,100,105,110,103,86,101,99,116,111,114,32,50,53,54,32,97,114,114,97,121,32,100,101,102,0,32,69,110,99,111,100,105,110,103,86,101,99,116,111,114,32,48,0,73,83,79,76,97,116,105,110,49,69,110,99,111,100,105,110,103,32,48,32,50,53,53,32,103,101,116,105,110,116,101,114,118,97,108,32,112,117,116,105,110,116,101,114,118,97,108,0,69,110,99,111,100,105,110,103,86,101,99,116,111,114,32,52,53,32,47,104,121,112,104,101,110,32,112,117,116,0,37,32,83,101,116,32,117,112,32,73,83,79,32,76,97,116,105,110,32,49,32,99,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,0,47,115,116,97,114,110,101,116,73,83,79,32,123,0,32,32,32,32,32,32,32,32,100,117,112,32,100,117,112,32,102,105,110,100,102,111,110,116,32,100,117,112,32,108,101,110,103,116,104,32,100,105,99,116,32,98,101,103,105,110,0,32,32,32,32,32,32,32,32,123,32,49,32,105,110,100,101,120,32,47,70,73,68,32,110,101,32,123,32,100,101,102,32,125,123,32,112,111,112,32,112,111,112,32,125,32,105,102,101,108,115,101,0,32,32,32,32,32,32,32,32,125,32,102,111,114,97,108,108,0,32,32,32,32,32,32,32,32,47,69,110,99,111,100,105,110,103,32,69,110,99,111,100,105,110,103,86,101,99,116,111,114,32,100,101,102,0,32,32,32,32,32,32,32,32,99,117,114,114,101,110,116,100,105,99,116,32,101,110,100,32,100,101,102,105,110,101,102,111,110,116,0,125,32,100,101,102,0,47,84,105,109,101,115,45,82,111,109,97,110,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,84,105,109,101,115,45,73,116,97,108,105,99,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,84,105,109,101,115,45,66,111,108,100,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,84,105,109,101,115,45,66,111,108,100,73,116,97,108,105,99,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,72,101,108,118,101,116,105,99,97,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,72,101,108,118,101,116,105,99,97,45,79,98,108,105,113,117,101,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,72,101,108,118,101,116,105,99,97,45,66,111,108,100,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,72,101,108,118,101,116,105,99,97,45,66,111,108,100,79,98,108,105,113,117,101,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,67,111,117,114,105,101,114,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,67,111,117,114,105,101,114,45,79,98,108,105,113,117,101,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,67,111,117,114,105,101,114,45,66,111,108,100,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,47,67,111,117,114,105,101,114,45,66,111,108,100,79,98,108,105,113,117,101,32,115,116,97,114,110,101,116,73,83,79,32,100,101,102,0,99,108,101,97,114,116,111,109,97,114,107,0,125,32,98,105,110,100,32,100,101,102,0,37,37,66,101,103,105,110,82,101,115,111,117,114,99,101,58,32,112,114,111,99,115,101,116,32,103,114,97,112,104,118,105,122,32,48,32,48,0,47,99,111,111,114,100,45,102,111,110,116,45,102,97,109,105,108,121,32,47,84,105,109,101,115,45,82,111,109,97,110,32,100,101,102,0,47,100,101,102,97,117,108,116,45,102,111,110,116,45,102,97,109,105,108,121,32,47,84,105,109,101,115,45,82,111,109,97,110,32,100,101,102,0,47,99,111,111,114,100,102,111,110,116,32,99,111,111,114,100,45,102,111,110,116,45,102,97,109,105,108,121,32,102,105,110,100,102,111,110,116,32,56,32,115,99,97,108,101,102,111,110,116,32,100,101,102,0,47,73,110,118,83,99,97,108,101,70,97,99,116,111,114,32,49,46,48,32,100,101,102,0,47,115,101,116,95,115,99,97,108,101,32,123,0,32,32,32,32,32,32,32,100,117,112,32,49,32,101,120,99,104,32,100,105,118,32,47,73,110,118,83,99,97,108,101,70,97,99,116,111,114,32,101,120,99,104,32,100,101,102,0,32,32,32,32,32,32,32,115,99,97,108,101,0,37,32,115,116,121,108,101,115,0,47,115,111,108,105,100,32,123,32,91,93,32,48,32,115,101,116,100,97,115,104,32,125,32,98,105,110,100,32,100,101,102,0,47,100,97,115,104,101,100,32,123,32,91,57,32,73,110,118,83,99,97,108,101,70,97,99,116,111,114,32,109,117,108,32,100,117,112,32,93,32,48,32,115,101,116,100,97,115,104,32,125,32,98,105,110,100,32,100,101,102,0,47,100,111,116,116,101,100,32,123,32,91,49,32,73,110,118,83,99,97,108,101,70,97,99,116,111,114,32,109,117,108,32,54,32,73,110,118,83,99,97,108,101,70,97,99,116,111,114,32,109,117,108,93,32,48,32,115,101,116,100,97,115,104,32,125,32,98,105,110,100,32,100,101,102,0,47,105,110,118,105,115,32,123,47,102,105,108,108,32,123,110,101,119,112,97,116,104,125,32,100,101,102,32,47,115,116,114,111,107,101,32,123,110,101,119,112,97,116,104,125,32,100,101,102,32,47,115,104,111,119,32,123,112,111,112,32,110,101,119,112,97,116,104,125,32,100,101,102,125,32,98,105,110,100,32,100,101,102,0,47,98,111,108,100,32,123,32,50,32,115,101,116,108,105,110,101,119,105,100,116,104,32,125,32,98,105,110,100,32,100,101,102,0,47,102,105,108,108,101,100,32,123,32,125,32,98,105,110,100,32,100,101,102,0,47,117,110,102,105,108,108,101,100,32,123,32,125,32,98,105,110,100,32,100,101,102,0,47,114,111,117,110,100,101,100,32,123,32,125,32,98,105,110,100,32,100,101,102,0,47,100,105,97,103,111,110,97,108,115,32,123,32,125,32,98,105,110,100,32,100,101,102,0,47,116,97,112,101,114,101,100,32,123,32,125,32,98,105,110,100,32,100,101,102,0,37,32,104,111,111,107,115,32,102,111,114,32,115,101,116,116,105,110,103,32,99,111,108,111,114,32,0,47,110,111,100,101,99,111,108,111,114,32,123,32,115,101,116,104,115,98,99,111,108,111,114,32,125,32,98,105,110,100,32,100,101,102,0,47,101,100,103,101,99,111,108,111,114,32,123,32,115,101,116,104,115,98,99,111,108,111,114,32,125,32,98,105,110,100,32,100,101,102,0,47,103,114,97,112,104,99,111,108,111,114,32,123,32,115,101,116,104,115,98,99,111,108,111,114,32,125,32,98,105,110,100,32,100,101,102,0,47,110,111,112,99,111,108,111,114,32,123,112,111,112,32,112,111,112,32,112,111,112,125,32,98,105,110,100,32,100,101,102,0,47,98,101,103,105,110,112,97,103,101,32,123,9,37,32,105,32,106,32,110,112,97,103,101,115,0,9,47,110,112,97,103,101,115,32,101,120,99,104,32,100,101,102,0,9,47,106,32,101,120,99,104,32,100,101,102,0,9,47,105,32,101,120,99,104,32,100,101,102,0,9,47,115,116,114,32,49,48,32,115,116,114,105,110,103,32,100,101,102,0,9,110,112,97,103,101,115,32,49,32,103,116,32,123,0,9,9,103,115,97,118,101,0,9,9,9,99,111,111,114,100,102,111,110,116,32,115,101,116,102,111,110,116,0,9,9,9,48,32,48,32,109,111,118,101,116,111,0,9,9,9,40,92,40,41,32,115,104,111,119,32,105,32,115,116,114,32,99,118,115,32,115,104,111,119,32,40,44,41,32,115,104,111,119,32,106,32,115,116,114,32,99,118,115,32,115,104,111,119,32,40,92,41,41,32,115,104,111,119,0,9,9,103,114,101,115,116,111,114,101,0,9,125,32,105,102,0,47,115,101,116,95,102,111,110,116,32,123,0,9,102,105,110,100,102,111,110,116,32,101,120,99,104,0,9,115,99,97,108,101,102,111,110,116,32,115,101,116,102,111,110,116,0,37,32,100,114,97,119,32,116,101,120,116,32,102,105,116,116,101,100,32,116,111,32,105,116,115,32,101,120,112,101,99,116,101,100,32,119,105,100,116,104,0,47,97,108,105,103,110,101,100,116,101,120,116,32,123,9,9,9,37,32,119,105,100,116,104,32,116,101,120,116,0,9,47,116,101,120,116,32,101,120,99,104,32,100,101,102,0,9,47,119,105,100,116,104,32,101,120,99,104,32,100,101,102,0,9,103,115,97,118,101,0,9,9,119,105,100,116,104,32,48,32,103,116,32,123,0,9,9,9,91,93,32,48,32,115,101,116,100,97,115,104,0,9,9,9,116,101,120,116,32,115,116,114,105,110,103,119,105,100,116,104,32,112,111,112,32,119,105,100,116,104,32,101,120,99,104,32,115,117,98,32,116,101,120,116,32,108,101,110,103,116,104,32,100,105,118,32,48,32,116,101,120,116,32,97,115,104,111,119,0,9,9,125,32,105,102,0,9,103,114,101,115,116,111,114,101,0,47,98,111,120,112,114,105,109,32,123,9,9,9,9,37,32,120,99,111,114,110,101,114,32,121,99,111,114,110,101,114,32,120,115,105,122,101,32,121,115,105,122,101,0,9,9,52,32,50,32,114,111,108,108,0,9,9,109,111,118,101,116,111,0,9,9,50,32,99,111,112,121,0,9,9,101,120,99,104,32,48,32,114,108,105,110,101,116,111,0,9,9,48,32,101,120,99,104,32,114,108,105,110,101,116,111,0,9,9,112,111,112,32,110,101,103,32,48,32,114,108,105,110,101,116,111,0,9,9,99,108,111,115,101,112,97,116,104,0,47,101,108,108,105,112,115,101,95,112,97,116,104,32,123,0,9,47,114,121,32,101,120,99,104,32,100,101,102,0,9,47,114,120,32,101,120,99,104,32,100,101,102,0,9,47,121,32,101,120,99,104,32,100,101,102,0,9,47,120,32,101,120,99,104,32,100,101,102,0,9,109,97,116,114,105,120,32,99,117,114,114,101,110,116,109,97,116,114,105,120,0,9,110,101,119,112,97,116,104,0,9,120,32,121,32,116,114,97,110,115,108,97,116,101,0,9,114,120,32,114,121,32,115,99,97,108,101,0,9,48,32,48,32,49,32,48,32,51,54,48,32,97,114,99,0,9,115,101,116,109,97,116,114,105,120,0,47,101,110,100,112,97,103,101,32,123,32,115,104,111,119,112,97,103,101,32,125,32,98,105,110,100,32,100,101,102,0,47,115,104,111,119,112,97,103,101,32,123,32,125,32,100,101,102,0,47,108,97,121,101,114,99,111,108,111,114,115,101,113,0,9,91,9,37,32,108,97,121,101,114,32,99,111,108,111,114,32,115,101,113,117,101,110,99,101,32,45,32,100,97,114,107,101,115,116,32,116,111,32,108,105,103,104,116,101,115,116,0,9,9,91,48,32,48,32,48,93,0,9,9,91,46,50,32,46,56,32,46,56,93,0,9,9,91,46,52,32,46,56,32,46,56,93,0,9,9,91,46,54,32,46,56,32,46,56,93,0,9,9,91,46,56,32,46,56,32,46,56,93,0,9,93,0,100,101,102,0,47,108,97,121,101,114,108,101,110,32,108,97,121,101,114,99,111,108,111,114,115,101,113,32,108,101,110,103,116,104,32,100,101,102,0,47,115,101,116,108,97,121,101,114,32,123,47,109,97,120,108,97,121,101,114,32,101,120,99,104,32,100,101,102,32,47,99,117,114,108,97,121,101,114,32,101,120,99,104,32,100,101,102,0,9,108,97,121,101,114,99,111,108,111,114,115,101,113,32,99,117,114,108,97,121,101,114,32,49,32,115,117,98,32,108,97,121,101,114,108,101,110,32,109,111,100,32,103,101,116,0,9,97,108,111,97,100,32,112,111,112,32,115,101,116,104,115,98,99,111,108,111,114,0,9,47,110,111,100,101,99,111,108,111,114,32,123,110,111,112,99,111,108,111,114,125,32,100,101,102,0,9,47,101,100,103,101,99,111,108,111,114,32,123,110,111,112,99,111,108,111,114,125,32,100,101,102,0,9,47,103,114,97,112,104,99,111,108,111,114,32,123,110,111,112,99,111,108,111,114,125,32,100,101,102,0,47,111,110,108,97,121,101,114,32,123,32,99,117,114,108,97,121,101,114,32,110,101,32,123,105,110,118,105,115,125,32,105,102,32,125,32,100,101,102,0,47,111,110,108,97,121,101,114,115,32,123,0,9,47,109,121,117,112,112,101,114,32,101,120,99,104,32,100,101,102,0,9,47,109,121,108,111,119,101,114,32,101,120,99,104,32,100,101,102,0,9,99,117,114,108,97,121,101,114,32,109,121,108,111,119,101,114,32,108,116,0,9,99,117,114,108,97,121,101,114,32,109,121,117,112,112,101,114,32,103,116,0,9,111,114,0,9,123,105,110,118,105,115,125,32,105,102,0,47,99,117,114,108,97,121,101,114,32,48,32,100,101,102,0,37,37,69,110,100,82,101,115,111,117,114,99,101,0,37,37,69,110,100,80,114,111,108,111,103,0,37,37,66,101,103,105,110,83,101,116,117,112,0,49,52,32,100,101,102,97,117,108,116,45,102,111,110,116,45,102,97,109,105,108,121,32,115,101,116,95,102,111,110,116,0,49,32,115,101,116,109,105,116,101,114,108,105,109,105,116,0,37,32,47,97,114,114,111,119,108,101,110,103,116,104,32,49,48,32,100,101,102,0,37,32,47,97,114,114,111,119,119,105,100,116,104,32,53,32,100,101,102,0,37,32,109,97,107,101,32,115,117,114,101,32,112,100,102,109,97,114,107,32,105,115,32,104,97,114,109,108,101,115,115,32,102,111,114,32,80,83,45,105,110,116,101,114,112,114,101,116,101,114,115,32,111,116,104,101,114,32,116,104,97,110,32,68,105,115,116,105,108,108,101,114,0,47,112,100,102,109,97,114,107,32,119,104,101,114,101,32,123,112,111,112,125,32,123,117,115,101,114,100,105,99,116,32,47,112,100,102,109,97,114,107,32,47,99,108,101,97,114,116,111,109,97,114,107,32,108,111,97,100,32,112,117,116,125,32,105,102,101,108,115,101,0,37,32,109,97,107,101,32,39,60,60,39,32,97,110,100,32,39,62,62,39,32,115,97,102,101,32,111,110,32,80,83,32,76,101,118,101,108,32,49,32,100,101,118,105,99,101,115,0,47,108,97,110,103,117,97,103,101,108,101,118,101,108,32,119,104,101,114,101,32,123,112,111,112,32,108,97,110,103,117,97,103,101,108,101,118,101,108,125,123,49,125,32,105,102,101,108,115,101,0,50,32,108,116,32,123,0,32,32,32,32,117,115,101,114,100,105,99,116,32,40,60,60,41,32,99,118,110,32,40,91,41,32,99,118,110,32,108,111,97,100,32,112,117,116,0,32,32,32,32,117,115,101,114,100,105,99,116,32,40,62,62,41,32,99,118,110,32,40,91,41,32,99,118,110,32,108,111,97,100,32,112,117,116,0,125,32,105,102,0,37,37,69,110,100,83,101,116,117,112,0,37,37,84,114,97,105,108,101,114,10,0,37,37,37,37,80,97,103,101,115,58,32,37,100,10,0,101,110,100,10,114,101,115,116,111,114,101,10,0,37,37,69,79,70,10,0,37,33,80,83,45,65,100,111,98,101,45,51,46,48,0,32,69,80,83,70,45,51,46,48,10,0,37,37,37,37,67,114,101,97,116,111,114,58,32,37,115,32,118,101,114,115,105,111,110,32,37,115,32,40,37,115,41,10,0,100,97,114,107,98,108,117,101,0,100,97,114,107,99,121,97,110,0,100,97,114,107,103,114,97,121,0,100,97,114,107,103,114,101,121,0,100,97,114,107,109,97,103,101,110,116,97,0,100,97,114,107,114,101,100,0,108,105,103,104,116,103,114,101,101,110,0,60,33,45,45,32,0,60,112,111,108,121,108,105,110,101,0,32,112,111,105,110,116,115,61,34,0,37,103,44,37,103,32,0,34,47,62,10,0,32,102,105,108,108,61,34,0,117,114,108,40,35,108,95,37,100,41,0,117,114,108,40,35,114,95,37,100,41,0,34,32,102,105,108,108,45,111,112,97,99,105,116,121,61,34,37,102,0,34,32,115,116,114,111,107,101,61,34,0,34,32,115,116,114,111,107,101,45,119,105,100,116,104,61,34,37,103,0,34,32,115,116,114,111,107,101,45,100,97,115,104,97,114,114,97,121,61,34,37,115,0,34,32,115,116,114,111,107,101,45,111,112,97,99,105,116,121,61,34,37,102,0,49,44,53,0,53,44,50,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,115,118,103,46,99,0,115,118,103,95,112,114,105,110,116,95,99,111,108,111,114,0,60,112,97,116,104,0,32,100,61,34,0,37,99,37,103,44,37,103,0,60,100,101,102,115,62,10,60,114,97,100,105,97,108,71,114,97,100,105,101,110,116,32,105,100,61,34,114,95,37,100,34,32,99,120,61,34,53,48,37,37,34,32,99,121,61,34,53,48,37,37,34,32,114,61,34,55,53,37,37,34,32,102,120,61,34,37,100,37,37,34,32,102,121,61,34,37,100,37,37,34,62,10,0,60,115,116,111,112,32,111,102,102,115,101,116,61,34,48,34,32,115,116,121,108,101,61,34,115,116,111,112,45,99,111,108,111,114,58,0,59,115,116,111,112,45,111,112,97,99,105,116,121,58,0,49,46,0,59,34,47,62,10,0,60,115,116,111,112,32,111,102,102,115,101,116,61,34,49,34,32,115,116,121,108,101,61,34,115,116,111,112,45,99,111,108,111,114,58,0,59,34,47,62,10,60,47,114,97,100,105,97,108,71,114,97,100,105,101,110,116,62,10,60,47,100,101,102,115,62,10,0,60,100,101,102,115,62,10,60,108,105,110,101,97,114,71,114,97,100,105,101,110,116,32,105,100,61,34,108,95,37,100,34,32,103,114,97,100,105,101,110,116,85,110,105,116,115,61,34,117,115,101,114,83,112,97,99,101,79,110,85,115,101,34,32,0,120,49,61,34,37,103,34,32,121,49,61,34,37,103,34,32,120,50,61,34,37,103,34,32,121,50,61,34,37,103,34,32,62,10,0,60,115,116,111,112,32,111,102,102,115,101,116,61,34,37,46,48,51,102,34,32,115,116,121,108,101,61,34,115,116,111,112,45,99,111,108,111,114,58,0,59,34,47,62,10,60,47,108,105,110,101,97,114,71,114,97,100,105,101,110,116,62,10,60,47,100,101,102,115,62,10,0,60,112,111,108,121,103,111,110,0,37,103,44,37,103,0,60,101,108,108,105,112,115,101,0,32,99,120,61,34,37,103,34,32,99,121,61,34,37,103,34,0,32,114,120,61,34,37,103,34,32,114,121,61,34,37,103,34,0,60,116,101,120,116,0,32,116,101,120,116,45,97,110,99,104,111,114,61,34,115,116,97,114,116,34,0,32,116,101,120,116,45,97,110,99,104,111,114,61,34,101,110,100,34,0,32,116,101,120,116,45,97,110,99,104,111,114,61,34,109,105,100,100,108,101,34,0,32,120,61,34,37,103,34,32,121,61,34,37,103,34,0,32,102,111,110,116,45,102,97,109,105,108,121,61,34,37,115,0,44,37,115,0,32,102,111,110,116,45,119,101,105,103,104,116,61,34,37,115,34,0,32,102,111,110,116,45,115,116,114,101,116,99,104,61,34,37,115,34,0,32,102,111,110,116,45,115,116,121,108,101,61,34,37,115,34,0,32,102,111,110,116,45,102,97,109,105,108,121,61,34,37,115,34,0,32,102,111,110,116,45,119,101,105,103,104,116,61,34,98,111,108,100,34,0,32,102,111,110,116,45,115,116,121,108,101,61,34,105,116,97,108,105,99,34,0,32,116,101,120,116,45,100,101,99,111,114,97,116,105,111,110,61,34,0,37,115,111,118,101,114,108,105,110,101,0,37,115,108,105,110,101,45,116,104,114,111,117,103,104,0,32,98,97,115,101,108,105,110,101,45,115,104,105,102,116,61,34,115,117,112,101,114,34,0,32,98,97,115,101,108,105,110,101,45,115,104,105,102,116,61,34,115,117,98,34,0,32,102,111,110,116,45,115,105,122,101,61,34,37,46,50,102,34,0,32,102,105,108,108,61,34,37,115,34,0,32,102,105,108,108,61,34,35,37,48,50,120,37,48,50,120,37,48,50,120,34,0,115,118,103,95,116,101,120,116,115,112,97,110,0,62,0,60,47,116,101,120,116,62,10,0,60,47,103,62,10,0,60,103,0,32,105,100,61,34,97,95,0,32,120,108,105,110,107,58,104,114,101,102,61,34,0,32,120,108,105,110,107,58,116,105,116,108,101,61,34,0,32,116,97,114,103,101,116,61,34,0,60,103,32,105,100,61,34,0,34,32,99,108,97,115,115,61,34,101,100,103,101,34,62,0,60,116,105,116,108,101,62,0,60,47,116,105,116,108,101,62,10,0,95,37,115,0,34,32,99,108,97,115,115,61,34,110,111,100,101,34,62,0,34,32,99,108,97,115,115,61,34,99,108,117,115,116,101,114,34,62,0,34,32,99,108,97,115,115,61,34,103,114,97,112,104,34,0,32,116,114,97,110,115,102,111,114,109,61,34,115,99,97,108,101,40,37,103,32,37,103,41,32,114,111,116,97,116,101,40,37,100,41,32,116,114,97,110,115,108,97,116,101,40,37,103,32,37,103,41,34,62,10,0,34,32,99,108,97,115,115,61,34,108,97,121,101,114,34,62,10,0,60,47,115,118,103,62,10,0,60,33,45,45,0,32,80,97,103,101,115,58,32,37,100,32,45,45,62,10,0,60,115,118,103,32,119,105,100,116,104,61,34,37,100,112,116,34,32,104,101,105,103,104,116,61,34,37,100,112,116,34,10,0,32,118,105,101,119,66,111,120,61,34,37,46,50,102,32,37,46,50,102,32,37,46,50,102,32,37,46,50,102,34,0,32,120,109,108,110,115,61,34,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,50,48,48,48,47,115,118,103,34,0,32,120,109,108,110,115,58,120,108,105,110,107,61,34,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,49,57,57,57,47,120,108,105,110,107,34,0,60,63,120,109,108,32,118,101,114,115,105,111,110,61,34,49,46,48,34,32,101,110,99,111,100,105,110,103,61,34,85,84,70,45,56,34,32,115,116,97,110,100,97,108,111,110,101,61,34,110,111,34,63,62,10,0,115,116,121,108,101,115,104,101,101,116,0,60,63,120,109,108,45,115,116,121,108,101,115,104,101,101,116,32,104,114,101,102,61,34,0,34,32,116,121,112,101,61,34,116,101,120,116,47,99,115,115,34,63,62,10,0,60,33,68,79,67,84,89,80,69,32,115,118,103,32,80,85,66,76,73,67,32,34,45,47,47,87,51,67],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+101982);allocate([47,47,68,84,68,32,83,86,71,32,49,46,49,47,47,69,78,34,10,0,32,34,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,71,114,97,112,104,105,99,115,47,83,86,71,47,49,46,49,47,68,84,68,47,115,118,103,49,49,46,100,116,100,34,62,10,0,60,33,45,45,32,71,101,110,101,114,97,116,101,100,32,98,121,32,0,116,107,0,116,107,58,116,107,0,35,32,0,32,99,114,101,97,116,101,32,108,105,110,101,32,0,32,45,102,105,108,108,32,0,32,45,100,97,115,104,32,53,0,32,45,100,97,115,104,32,50,0,103,114,97,112,104,32,108,97,98,101,108,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,116,107,46,99,0,116,107,103,101,110,95,112,114,105,110,116,95,116,97,103,115,0,32,45,116,97,103,115,32,123,37,100,37,115,37,100,125,0,116,107,103,101,110,95,112,114,105,110,116,95,99,111,108,111,114,0,36,99,0,32,45,119,105,100,116,104,32,0,32,45,115,109,111,111,116,104,32,98,101,122,105,101,114,32,0,32,99,114,101,97,116,101,32,112,111,108,121,103,111,110,32,0,32,45,111,117,116,108,105,110,101,32,0,32,99,114,101,97,116,101,32,111,118,97,108,32,0,32,99,114,101,97,116,101,32,116,101,120,116,32,0,32,45,116,101,120,116,32,123,0,125,0,32,45,102,111,110,116,32,123,0,32,37,100,125,0,32,45,97,110,99,104,111,114,32,119,0,32,45,97,110,99,104,111,114,32,101,0,35,0,32,84,105,116,108,101,58,32,0,32,80,97,103,101,115,58,32,37,100,10,0,35,32,71,101,110,101,114,97,116,101,100,32,98,121,32,0,41,10,0,69,114,114,111,114,32,100,117,114,105,110,103,32,99,111,110,118,101,114,115,105,111,110,32,116,111,32,34,85,84,70,45,56,34,46,32,32,81,117,105,116,105,110,103,46,10,0,118,109,108,0,118,109,108,58,118,109,108,0,97,113,117,97,0,102,117,99,104,115,105,97,0,108,105,109,101,0,111,108,105,118,101,0,116,101,97,108,0,32,32,32,32,32,32,60,33,45,45,32,0,32,45,45,62,10,0,32,60,118,58,115,104,97,112,101,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,97,98,115,111,108,117,116,101,59,32,0,32,119,105,100,116,104,58,32,37,100,59,32,104,101,105,103,104,116,58,32,37,100,34,32,102,105,108,108,101,100,61,34,102,97,108,115,101,34,62,0,60,118,58,112,97,116,104,32,118,61,34,0,32,109,32,0,37,46,48,102,44,37,46,48,102,32,0,32,108,32,0,32,101,32,0,34,47,62,0,60,47,118,58,115,104,97,112,101,62,10,0,60,118,58,115,116,114,111,107,101,32,99,111,108,111,114,61,34,0,34,32,119,101,105,103,104,116,61,34,37,46,48,102,112,116,0,34,32,100,97,115,104,115,116,121,108,101,61,34,100,97,115,104,0,34,32,100,97,115,104,115,116,121,108,101,61,34,100,111,116,0,34,32,47,62,0,35,37,48,50,120,37,48,50,120,37,48,50,120,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,118,109,108,46,99,0,118,109,108,95,112,114,105,110,116,95,99,111,108,111,114,0,32,119,105,100,116,104,58,32,37,100,59,32,104,101,105,103,104,116,58,32,37,100,34,0,32,62,0,60,118,58,112,97,116,104,32,32,118,61,34,0,47,62,60,47,118,58,115,104,97,112,101,62,10,0,109,32,0,37,115,37,46,48,102,44,37,46,48,102,32,0,99,32,0,32,102,105,108,108,101,100,61,34,116,114,117,101,34,32,102,105,108,108,99,111,108,111,114,61,34,0,34,32,0,32,102,105,108,108,101,100,61,34,102,97,108,115,101,34,32,0,37,46,48,102,32,37,46,48,102,32,0,108,32,0,120,32,101,32,34,47,62,0,32,32,60,118,58,111,118,97,108,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,97,98,115,111,108,117,116,101,59,0,32,108,101,102,116,58,32,37,46,50,102,59,32,116,111,112,58,32,37,46,50,102,59,0,32,119,105,100,116,104,58,32,37,46,50,102,59,32,104,101,105,103,104,116,58,32,37,46,50,102,34,0,60,47,118,58,111,118,97,108,62,10,0,60,118,58,114,101,99,116,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,97,98,115,111,108,117,116,101,59,32,0,32,115,116,114,111,107,101,100,61,34,102,97,108,115,101,34,32,102,105,108,108,101,100,61,34,102,97,108,115,101,34,62,10,0,60,118,58,116,101,120,116,98,111,120,32,105,110,115,101,116,61,34,48,44,48,44,48,44,48,34,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,97,98,115,111,108,117,116,101,59,32,118,45,116,101,120,116,45,119,114,97,112,112,105,110,103,58,39,102,97,108,115,101,39,59,112,97,100,100,105,110,103,58,39,48,39,59,0,102,111,110,116,45,102,97,109,105,108,121,58,32,39,37,115,39,59,0,102,111,110,116,45,119,101,105,103,104,116,58,32,37,115,59,0,102,111,110,116,45,115,116,114,101,116,99,104,58,32,37,115,59,0,102,111,110,116,45,115,116,121,108,101,58,32,37,115,59,0,32,102,111,110,116,45,115,105,122,101,58,32,37,46,50,102,112,116,59,0,99,111,108,111,114,58,37,115,59,0,99,111,108,111,114,58,35,37,48,50,120,37,48,50,120,37,48,50,120,59,0,118,109,108,95,116,101,120,116,115,112,97,110,0,34,62,60,99,101,110,116,101,114,62,0,60,47,99,101,110,116,101,114,62,60,47,118,58,116,101,120,116,98,111,120,62,10,0,60,47,118,58,114,101,99,116,62,10,0,60,47,97,62,10,0,60,97,0,32,104,114,101,102,61,34,37,115,34,0,32,116,105,116,108,101,61,34,37,115,34,0,32,116,97,114,103,101,116,61,34,37,115,34,0,62,10,0,60,47,118,58,103,114,111,117,112,62,10,0,60,47,68,73,86,62,10,0,60,68,73,86,32,105,100,61,39,95,86,77,76,50,95,39,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,114,101,108,97,116,105,118,101,59,118,105,115,105,98,105,108,105,116,121,58,104,105,100,100,101,110,34,62,10,0,60,33,45,45,32,105,110,115,101,114,116,32,97,110,121,32,111,116,104,101,114,32,104,116,109,108,32,99,111,110,116,101,110,116,32,104,101,114,101,32,45,45,62,10,0,60,68,73,86,32,105,100,61,39,95,110,111,116,86,77,76,49,95,39,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,114,101,108,97,116,105,118,101,59,34,62,10,0,60,33,45,45,32,116,104,105,115,32,115,104,111,117,108,100,32,111,110,108,121,32,100,105,115,112,108,97,121,32,111,110,32,78,79,78,45,73,69,32,98,114,111,119,115,101,114,115,32,45,45,62,10,0,60,72,50,62,83,111,114,114,121,44,32,116,104,105,115,32,100,105,97,103,114,97,109,32,119,105,108,108,32,111,110,108,121,32,100,105,115,112,108,97,121,32,99,111,114,114,101,99,116,108,121,32,111,110,32,73,110,116,101,114,110,101,116,32,69,120,112,108,111,114,101,114,32,53,32,40,97,110,100,32,117,112,41,32,98,114,111,119,115,101,114,115,46,60,47,72,50,62,10,0,60,68,73,86,32,105,100,61,39,95,110,111,116,86,77,76,50,95,39,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,114,101,108,97,116,105,118,101,59,34,62,10,0,60,33,45,45,32,105,110,115,101,114,116,32,97,110,121,32,111,116,104,101,114,32,78,79,78,45,73,69,32,104,116,109,108,32,99,111,110,116,101,110,116,32,104,101,114,101,32,45,45,62,10,0,60,47,66,79,68,89,62,10,60,47,72,84,77,76,62,10,0,60,72,69,65,68,62,0,60,77,69,84,65,32,104,116,116,112,45,101,113,117,105,118,61,34,67,111,110,116,101,110,116,45,84,121,112,101,34,32,99,111,110,116,101,110,116,61,34,116,101,120,116,47,104,116,109,108,59,32,99,104,97,114,115,101,116,61,85,84,70,45,56,34,62,10,0,60,84,73,84,76,69,62,0,60,47,84,73,84,76,69,62,0,60,33,45,45,32,80,97,103,101,115,58,32,37,100,32,45,45,62,10,0,32,32,32,60,83,67,82,73,80,84,32,76,65,78,71,85,65,71,69,61,39,74,97,118,97,115,99,114,105,112,116,39,62,10,0,32,32,32,102,117,110,99,116,105,111,110,32,98,114,111,119,115,101,114,99,104,101,99,107,40,41,10,0,32,32,32,123,10,0,32,32,32,32,32,32,118,97,114,32,117,97,32,61,32,119,105,110,100,111,119,46,110,97,118,105,103,97,116,111,114,46,117,115,101,114,65,103,101,110,116,10,0,32,32,32,32,32,32,118,97,114,32,109,115,105,101,32,61,32,117,97,46,105,110,100,101,120,79,102,32,40,32,39,77,83,73,69,32,39,32,41,10,0,32,32,32,32,32,32,118,97,114,32,105,101,118,101,114,115,59,10,0,32,32,32,32,32,32,118,97,114,32,105,116,101,109,59,10,0,32,32,32,32,32,32,118,97,114,32,86,77,76,121,101,115,61,110,101,119,32,65,114,114,97,121,40,39,95,86,77,76,49,95,39,44,39,95,86,77,76,50,95,39,41,59,10,0,32,32,32,32,32,32,118,97,114,32,86,77,76,110,111,61,110,101,119,32,65,114,114,97,121,40,39,95,110,111,116,86,77,76,49,95,39,44,39,95,110,111,116,86,77,76,50,95,39,41,59,10,0,32,32,32,32,32,32,105,102,32,40,32,109,115,105,101,32,62,32,48,32,41,123,32,32,32,32,32,32,47,47,32,73,102,32,73,110,116,101,114,110,101,116,32,69,120,112,108,111,114,101,114,44,32,114,101,116,117,114,110,32,118,101,114,115,105,111,110,32,110,117,109,98,101,114,10,0,32,32,32,32,32,32,32,32,32,105,101,118,101,114,115,61,32,112,97,114,115,101,73,110,116,32,40,117,97,46,115,117,98,115,116,114,105,110,103,32,40,109,115,105,101,43,53,44,32,117,97,46,105,110,100,101,120,79,102,32,40,39,46,39,44,32,109,115,105,101,32,41,41,41,10,0,32,32,32,32,32,32,125,10,0,32,32,32,32,32,32,105,102,32,40,105,101,118,101,114,115,62,61,53,41,123,10,0,32,32,32,32,32,32,32,102,111,114,32,40,120,32,105,110,32,86,77,76,121,101,115,41,123,10,0,32,32,32,32,32,32,32,32,32,105,116,101,109,32,61,32,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,86,77,76,121,101,115,91,120,93,41,59,10,0,32,32,32,32,32,32,32,32,32,105,102,32,40,105,116,101,109,41,32,123,10,0,32,32,32,32,32,32,32,32,32,32,32,105,116,101,109,46,115,116,121,108,101,46,118,105,115,105,98,105,108,105,116,121,61,39,118,105,115,105,98,108,101,39,59,10,0,32,32,32,32,32,32,32,32,32,125,10,0,32,32,32,32,32,32,32,125,10,0,32,32,32,32,32,32,32,102,111,114,32,40,120,32,105,110,32,86,77,76,110,111,41,123,10,0,32,32,32,32,32,32,32,32,32,105,116,101,109,32,61,32,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,86,77,76,110,111,91,120,93,41,59,10,0,32,32,32,32,32,32,32,32,32,32,32,105,116,101,109,46,115,116,121,108,101,46,118,105,115,105,98,105,108,105,116,121,61,39,104,105,100,100,101,110,39,59,10,0,32,32,32,32,32,125,101,108,115,101,123,10,0,32,32,32,32,32,125,10,0,32,32,32,125,10,0,32,32,32,60,47,83,67,82,73,80,84,62,10,0,60,47,72,69,65,68,62,0,60,66,79,68,89,32,111,110,108,111,97,100,61,39,98,114,111,119,115,101,114,99,104,101,99,107,40,41,59,39,62,10,0,60,68,73,86,32,105,100,61,39,95,86,77,76,49,95,39,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,114,101,108,97,116,105,118,101,59,32,100,105,115,112,108,97,121,58,105,110,108,105,110,101,59,32,118,105,115,105,98,105,108,105,116,121,58,104,105,100,100,101,110,0,32,119,105,100,116,104,58,32,37,100,112,116,59,32,104,101,105,103,104,116,58,32,37,100,112,116,34,62,10,0,60,83,84,89,76,69,62,10,0,118,92,58,42,32,123,32,98,101,104,97,118,105,111,114,58,32,117,114,108,40,35,100,101,102,97,117,108,116,35,86,77,76,41,59,100,105,115,112,108,97,121,58,105,110,108,105,110,101,45,98,108,111,99,107,125,10,0,60,47,83,84,89,76,69,62,10,0,60,120,109,108,58,110,97,109,101,115,112,97,99,101,32,110,115,61,34,117,114,110,58,115,99,104,101,109,97,115,45,109,105,99,114,111,115,111,102,116,45,99,111,109,58,118,109,108,34,32,112,114,101,102,105,120,61,34,118,34,32,47,62,10,0,32,60,118,58,103,114,111,117,112,32,115,116,121,108,101,61,34,112,111,115,105,116,105,111,110,58,114,101,108,97,116,105,118,101,59,32,0,32,119,105,100,116,104,58,32,37,100,112,116,59,32,104,101,105,103,104,116,58,32,37,100,112,116,34,0,32,99,111,111,114,100,111,114,105,103,105,110,61,34,48,44,48,34,32,99,111,111,114,100,115,105,122,101,61,34,37,100,44,37,100,34,32,62,0,60,72,84,77,76,62,10,0,10,60,33,45,45,32,71,101,110,101,114,97,116,101,100,32,98,121,32,0,32,118,101,114,115,105,111,110,32,0,32,40,0,41,10,45,45,62,10,0,112,111,118,32,114,101,110,100,101,114,101,114,58,101,108,32,45,32,37,115,10,0,112,111,118,0,112,111,118,58,112,111,118,0,98,97,107,101,114,115,99,104,111,99,0,98,114,97,115,115,0,98,114,105,103,104,116,103,111,108,100,0,98,114,111,110,122,101,0,98,114,111,110,122,101,50,0,99,108,101,97,114,0,99,111,111,108,99,111,112,112,101,114,0,99,111,112,112,101,114,0,100,97,114,107,98,114,111,119,110,0,100,97,114,107,112,117,114,112,108,101,0,100,97,114,107,116,97,110,0,100,97,114,107,119,111,111,100,0,100,107,103,114,101,101,110,99,111,112,112,101,114,0,100,117,115,116,121,114,111,115,101,0,102,101,108,100,115,112,97,114,0,102,108,101,115,104,0,103,114,97,121,48,53,0,103,114,101,101,110,99,111,112,112,101,114,0,104,117,110,116,101,114,115,103,114,101,101,110,0,108,105,103,104,116,95,112,117,114,112,108,101,0,108,105,103,104,116,119,111,111,100,0,109,97,110,100,97,114,105,110,111,114,97,110,103,101,0,109,101,100,105,117,109,102,111,114,101,115,116,103,114,101,101,110,0,109,101,100,105,117,109,103,111,108,100,101,110,114,111,100,0,109,101,100,105,117,109,119,111,111,100,0,109,101,100,95,112,117,114,112,108,101,0,109,105,99,97,0,110,101,111,110,98,108,117,101,0,110,101,111,110,112,105,110,107,0,110,101,119,109,105,100,110,105,103,104,116,98,108,117,101,0,110,101,119,116,97,110,0,111,108,100,103,111,108,100,0,113,117,97,114,116,122,0,114,105,99,104,98,108,117,101,0,115,99,97,114,108,101,116,0,115,101,109,105,83,119,101,101,116,67,104,111,99,0,115,105,108,118,101,114,0,115,112,105,99,121,112,105,110,107,0,115,117,109,109,101,114,115,107,121,0,118,101,114,121,100,97,114,107,98,114,111,119,110,0,118,101,114,121,95,108,105,103,104,116,95,112,117,114,112,108,101,0,47,47,42,42,42,32,99,111,109,109,101,110,116,58,32,37,115,10,0,47,47,42,42,42,32,112,111,108,121,108,105,110,101,10,0,115,99,97,108,101,32,32,32,32,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,10,0,114,111,116,97,116,101,32,32,32,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,10,0,116,114,97,110,115,108,97,116,101,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,10,0,115,112,104,101,114,101,95,115,119,101,101,112,32,123,10,32,32,32,32,37,115,10,32,32,32,32,37,100,44,10,0,108,105,110,101,97,114,95,115,112,108,105,110,101,0,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,44,32,37,46,51,102,10,0,37,115,32,32,32,32,37,115,0,32,32,32,32,116,111,108,101,114,97,110,99,101,32,48,46,48,49,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,37,115,37,115,0,37,115,32,116,114,97,110,115,109,105,116,32,37,46,51,102,0,82,101,100,0,71,114,101,101,110,0,66,108,117,101,0,114,103,98,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,32,116,114,97,110,115,109,105,116,32,37,46,51,102,0,111,111,112,115,44,32,105,110,116,101,114,110,97,108,32,101,114,114,111,114,58,32,117,110,104,97,110,100,108,101,100,32,99,111,108,111,114,32,116,121,112,101,61,37,100,32,37,115,10,0,103,118,114,101,110,100,101,114,95,99,111,114,101,95,112,111,118,46,99,0,112,111,118,95,99,111,108,111,114,95,97,115,95,115,116,114,0,112,105,103,109,101,110,116,32,123,32,99,111,108,111,114,32,37,115,32,125,10,0,47,47,42,42,42,32,98,101,122,105,101,114,10,0,98,95,115,112,108,105,110,101,0,32,32,32,32,32,32,32,32,116,111,108,101,114,97,110,99,101,32,48,46,48,49,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,47,47,42,42,42,32,112,111,108,121,103,111,110,10,0,32,32,32,32,116,111,108,101,114,97,110,99,101,32,48,46,49,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,112,111,108,121,103,111,110,32,123,32,37,100,44,10,0,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,0,37,115,10,32,32,32,32,37,115,0,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,47,47,42,42,42,32,101,108,108,105,112,115,101,10,0,116,111,114,117,115,32,123,32,37,46,51,102,44,32,37,46,51,102,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,115,112,104,101,114,101,32,123,60,37,57,46,51,102,44,32,37,57,46,51,102,44,32,37,57,46,51,102,62,44,32,49,46,48,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,47,47,42,42,42,32,116,101,120,116,115,112,97,110,58,32,37,115,44,32,102,111,110,116,115,105,122,101,32,61,32,37,46,51,102,44,32,102,111,110,116,110,97,109,101,32,61,32,37,115,10,0,115,99,97,108,101,32,37,46,51,102,10,0,116,101,120,116,32,123,10,32,32,32,32,116,116,102,32,34,37,115,34,44,10,32,32,32,32,34,37,115,34,44,32,37,46,51,102,44,32,37,46,51,102,10,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,32,32,32,32,37,115,125,10,0,32,32,32,32,110,111,95,115,104,97,100,111,119,10,0,47,47,42,42,42,32,101,110,100,95,101,100,103,101,10,0,47,47,42,42,42,32,98,101,103,105,110,95,101,100,103,101,10,0,47,47,42,42,42,32,101,110,100,95,110,111,100,101,10,0,47,47,42,42,42,32,98,101,103,105,110,95,110,111,100,101,58,32,37,115,10,0,47,47,42,42,42,32,101,110,100,95,99,108,117,115,116,101,114,10,0,47,47,42,42,42,32,98,101,103,105,110,95,99,108,117,115,116,101,114,10,0,47,47,42,42,42,32,101,110,100,95,112,97,103,101,10,0,47,47,42,42,42,32,98,101,103,105,110,95,112,97,103,101,10,0,47,47,42,42,42,32,101,110,100,95,108,97,121,101,114,10,0,47,47,42,42,42,32,98,101,103,105,110,95,108,97,121,101,114,58,32,37,115,44,32,37,100,47,37,100,10,0,47,47,42,42,42,32,101,110,100,95,103,114,97,112,104,10,0,47,47,42,42,42,32,98,101,103,105,110,95,103,114,97,112,104,32,37,115,10,0,99,97,109,101,114,97,32,123,32,108,111,99,97,116,105,111,110,32,60,37,46,51,102,32,44,32,37,46,51,102,32,44,32,37,46,51,102,62,10,32,32,32,32,32,32,32,32,32,108,111,111,107,95,97,116,32,32,60,37,46,51,102,32,44,32,37,46,51,102,32,44,32,37,46,51,102,62,10,32,32,32,32,32,32,32,32,32,114,105,103,104,116,32,120,32,42,32,105,109,97,103,101,95,119,105,100,116,104,32,47,32,105,109,97,103,101,95,104,101,105,103,104,116,10,32,32,32,32,32,32,32,32,32,97,110,103,108,101,32,37,46,51,102,10,125,10,0,47,47,115,107,121,10,112,108,97,110,101,32,123,32,60,48,44,32,49,44,32,48,62,44,32,49,32,104,111,108,108,111,119,10,32,32,32,32,116,101,120,116,117,114,101,32,123,10,32,32,32,32,32,32,32,32,112,105,103,109,101,110,116,32,123,32,98,111,122,111,32,116,117,114,98,117,108,101,110,99,101,32,48,46,57,53,10,32,32,32,32,32,32,32,32,32,32,32,32,99,111,108,111,114,95,109,97,112,32,123,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,91,48,46,48,48,32,114,103,98,32,60,48,46,48,53,44,32,48,46,50,48,44,32,48,46,53,48,62,93,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,91,48,46,53,48,32,114,103,98,32,60,48,46,48,53,44,32,48,46,50,48,44,32,48,46,53,48,62,93,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,91,48,46,55,53,32,114,103,98,32,60,49,46,48,48,44,32,49,46,48,48,44,32,49,46,48,48,62,93,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,91,48,46,55,53,32,114,103,98,32,60,48,46,50,53,44,32,48,46,50,53,44,32,48,46,50,53,62,93,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,91,49,46,48,48,32,114,103,98,32,60,48,46,53,48,44,32,48,46,53,48,44,32,48,46,53,48,62,93,10,32,32,32,32,32,32,32,32,32,32,32,32,125,10,32,32,32,32,32,32,32,32,32,32,32,32,115,99,97,108,101,32,60,49,46,48,48,44,32,49,46,48,48,44,32,49,46,53,48,62,32,42,32,50,46,53,48,10,32,32,32,32,32,32,32,32,32,32,32,32,116,114,97,110,115,108,97,116,101,32,60,48,46,48,48,44,32,48,46,48,48,44,32,48,46,48,48,62,10,32,32,32,32,32,32,32,32,125,10,32,32,32,32,32,32,32,32,102,105,110,105,115,104,32,123,32,97,109,98,105,101,110,116,32,49,32,100,105,102,102,117,115,101,32,48,32,125,10,32,32,32,32,125,10,32,32,32,32,115,99,97,108,101,32,49,48,48,48,48,10,125,10,47,47,109,105,115,116,10,102,111,103,32,123,32,102,111,103,95,116,121,112,101,32,50,10,32,32,32,32,100,105,115,116,97,110,99,101,32,53,48,10,32,32,32,32,99,111,108,111,114,32,114,103,98,32,60,49,46,48,48,44,32,49,46,48,48,44,32,49,46,48,48,62,32,42,32,48,46,55,53,10,32,32,32,32,102,111,103,95,111,102,102,115,101,116,32,48,46,49,48,10,32,32,32,32,102,111,103,95,97,108,116,32,49,46,53,48,10,32,32,32,32,116,117,114,98,117,108,101,110,99,101,32,49,46,55,53,10,125,10,47,47,103,110,100,10,112,108,97,110,101,32,123,32,60,48,46,48,48,44,32,49,46,48,48,44,32,48,46,48,48,62,44,32,48,10,32,32,32,32,116,101,120,116,117,114,101,32,123,10,32,32,32,32,32,32,32,32,112,105,103,109,101,110,116,123,32,99,111,108,111,114,32,114,103,98,32,60,48,46,50,53,44,32,48,46,52,53,44,32,48,46,48,48,62,32,125,10,32,32,32,32,32,32,32,32,110,111,114,109,97,108,32,123,32,98,117,109,112,115,32,48,46,55,53,32,115,99,97,108,101,32,48,46,48,49,32,125,10,32,32,32,32,32,32,32,32,102,105,110,105,115,104,32,123,32,112,104,111,110,103,32,48,46,49,48,32,125,10,32,32,32,32,125,10,125,10,0,108,105,103,104,116,95,115,111,117,114,99,101,32,123,32,60,49,53,48,48,44,51,48,48,48,44,45,50,53,48,48,62,32,99,111,108,111,114,32,87,104,105,116,101,32,125,10,0,35,118,101,114,115,105,111,110,32,51,46,54,59,10,0,103,108,111,98,97,108,95,115,101,116,116,105,110,103,115,32,123,32,97,115,115,117,109,101,100,95,103,97,109,109,97,32,49,46,48,32,125,10,0,35,100,101,102,97,117,108,116,32,123,32,102,105,110,105,115,104,32,123,32,97,109,98,105,101,110,116,32,48,46,49,32,100,105,102,102,117,115,101,32,48,46,57,32,125,32,125,10,0,35,105,110,99,108,117,100,101,32,34,99,111,108,111,114,115,46,105,110,99,34,10,35,105,110,99,108,117,100,101,32,34,116,101,120,116,117,114,101,115,46,105,110,99,34,10,35,105,110,99,108,117,100,101,32,34,115,104,97,112,101,115,46,105,110,99,34,10,0,35,100,101,99,108,97,114,101,32,37,115,32,61,32,37,115,59,10,0,66,108,97,99,107,0,87,104,105,116,101,0,112,105,99,0,112,105,99,58,112,105,99,0,37,115,32,37,115,10,0,46,92,34,32,0,32,37,100,32,37,100,0,32,37,115,10,0,32,37,100,0,102,105,108,108,32,0,101,108,108,105,112,115,101,32,97,116,116,114,115,37,100,32,37,115,119,105,100,32,37,46,53,102,32,104,116,32,37,46,53,102,32,97,116,32,40,37,46,53,102,44,37,46,53,102,41,59,10,0,46,102,116,32,37,115,10,0,46,112,115,32,37,100,42,92,110,40,83,70,117,47,37,46,48,102,117,10,0,34,37,115,34,32,97,116,32,40,37,46,53,102,44,37,46,53,102,41,59,10,0,37,48,51,111,0,37,115,37,115,32,105,115,32,110,111,116,32,97,32,116,114,111,102,102,32,102,111,110,116,10,0,100,111,116,32,112,105,99,32,112,108,117,103,105,110,58,32,0,82,0,93,10,46,80,69,10,0,46,80,83,32,37,46,53,102,32,37,46,53,102,10,0,37,115,32,116,111,32,99,104,97,110,103,101,32,100,114,97,119,105,110,103,32,115,105,122,101,44,32,109,117,108,116,105,112,108,121,32,116,104,101,32,119,105,100,116,104,32,97,110,100,32,104,101,105,103,104,116,32,111,110,32,116,104,101,32,46,80,83,32,108,105,110,101,32,97,98,111,118,101,32,97,110,100,32,116,104,101,32,110,117,109,98,101,114,32,111,110,32,116,104,101,32,116,119,111,32,108,105,110,101,115,32,98,101,108,111,119,32,40,114,111,117,110,100,101,100,32,116,111,32,116,104,101,32,110,101,97,114,101,115,116,32,105,110,116,101,103,101,114,41,32,98,121,32,97,32,115,99,97,108,101,32,102,97,99,116,111,114,10,0,46,110,114,32,83,70,32,37,46,48,102,10,115,99,97,108,101,116,104,105,99,107,110,101,115,115,32,61,32,37,46,48,102,10,0,37,115,32,100,111,110,39,116,32,99,104,97,110,103,101,32,97,110,121,116,104,105,110,103,32,98,101,108,111,119,32,116,104,105,115,32,108,105,110,101,32,105,110,32,116,104,105,115,32,100,114,97,119,105,110,103,10,0,37,115,32,110,111,110,45,102,97,116,97,108,32,114,117,110,45,116,105,109,101,32,112,105,99,32,118,101,114,115,105,111,110,32,100,101,116,101,114,109,105,110,97,116,105,111,110,44,32,118,101,114,115,105,111,110,32,50,10,0,98,111,120,114,97,100,61,50,46,48,32,37,115,32,119,105,108,108,32,98,101,32,114,101,115,101,116,32,116,111,32,48,46,48,32,98,121,32,103,112,105,99,32,111,110,108,121,10,0,115,99,97,108,101,61,49,46,48,32,37,115,32,114,101,113,117,105,114,101,100,32,102,111,114,32,99,111,109,112,97,114,105,115,111,110,115,10,0,37,115,32,98,111,120,114,97,100,32,105,115,32,110,111,119,32,48,46,48,32,105,110,32,103,112,105,99,44,32,101,108,115,101,32,105,116,32,114,101,109,97,105,110,115,32,50,46,48,10,0,37,115,32,100,97,115,104,119,105,100,32,105,115,32,48,46,49,32,105,110,32,49,48,116,104,32,69,100,105,116,105,111,110,44,32,48,46,48,53,32,105,110,32,68,87,66,32,50,32,97,110,100,32,105,110,32,103,112,105,99,10,0,37,115,32,102,105,108,108,118,97,108,32,105,115,32,48,46,51,32,105,110,32,49,48,116,104,32,69,100,105,116,105,111,110,32,40,102,105,108,108,32,48,32,109,101,97,110,115,32,98,108,97,99,107,41,44,32,48,46,53,32,105,110,32,103,112,105,99,32,40,102,105,108,108,32,48,32,109,101,97,110,115,32,119,104,105,116,101,41,44,32,117,110,100,101,102,105,110,101,100,32,105,110,32,68,87,66,32,50,10,0,37,115,32,102,105,108,108,32,104,97,115,32,110,111,32,109,101,97,110,105,110,103,32,105,110,32,68,87,66,32,50,44,32,103,112,105,99,32,99,97,110,32,117,115,101,32,102,105,108,108,32,111,114,32,102,105,108,108,101,100,44,32,49,48,116,104,32,69,100,105,116,105,111,110,32,117,115,101,115,32,102,105,108,108,32,111,110,108,121,10,0,37,115,32,68,87,66,32,50,32,100,111,101,115,110,39,116,32,117,115,101,32,102,105,108,108,32,97,110,100,32,100,111,101,115,110,39,116,32,100,101,102,105,110,101,32,102,105,108,108,118,97,108,10,0,37,115,32,114,101,115,101,116,32,119,111,114,107,115,32,105,110,32,103,112,105,99,32,97,110,100,32,49,48,116,104,32,101,100,105,116,105,111,110,44,32,98,117,116,32,105,115,110,39,116,32,100,101,102,105,110,101,100,32,105,110,32,68,87,66,32,50,10,0,37,115,32,68,87,66,32,50,32,99,111,109,112,97,116,105,98,105,108,105,116,121,32,100,101,102,105,110,105,116,105,111,110,115,10,0,105,102,32,98,111,120,114,97,100,32,62,32,49,46,48,32,38,38,32,100,97,115,104,119,105,100,32,60,32,48,46,48,55,53,32,116,104,101,110,32,88,10,9,102,105,108,108,118,97,108,32,61,32,49,59,10,9,100,101,102,105,110,101,32,102,105,108,108,32,89,32,89,59,10,9,100,101,102,105,110,101,32,115,111,108,105,100,32,89,32,89,59,10,9,100,101,102,105,110,101,32,114,101,115,101,116,32,89,32,115,99,97,108,101,61,49,46,48,32,89,59,10,88,10,0,114,101,115,101,116,32,37,115,32,115,101,116,32,116,111,32,107,110,111,119,110,32,115,116,97,116,101,10,0,37,115,32,71,78,85,32,112,105,99,32,118,115,46,32,49,48,116,104,32,69,100,105,116,105,111,110,32,100,92,40,101,39,116,101,110,116,101,10,0,105,102,32,102,105,108,108,118,97,108,32,62,32,48,46,52,32,116,104,101,110,32,88,10,9,100,101,102,105,110,101,32,115,101,116,102,105,108,108,118,97,108,32,89,32,102,105,108,108,118,97,108,32,61,32,49,32,45,32,89,59,10,9,100,101,102,105,110,101,32,98,111,108,100,32,89,32,116,104,105,99,107,110,101,115,115,32,50,32,89,59,10,0,9,37,115,32,105,102,32,121,111,117,32,117,115,101,32,103,112,105,99,32,97,110,100,32,105,116,32,98,97,114,102,115,32,111,110,32,101,110,99,111,117,110,116,101,114,105,110,103,32,34,115,111,108,105,100,34,44,10,0,9,37,115,9,105,110,115,116,97,108,108,32,97,32,109,111,114,101,32,114,101,99,101,110,116,32,118,101,114,115,105,111,110,32,111,102,32,103,112,105,99,32,111,114,32,115,119,105,116,99,104,32,116,111,32,68,87,66,32,111,114,32,49,48,116,104,32,69,100,105,116,105,111,110,32,112,105,99,59,10,0,9,37,115,9,115,111,114,114,121,44,32,116,104,101,32,103,114,111,102,102,32,102,111,108,107,115,32,99,104,97,110,103,101,100,32,103,112,105,99,59,32,115,101,110,100,32,97,110,121,32,99,111,109,112,108,97,105,110,116,32,116,111,32,116,104,101,109,59,10,0,88,32,101,108,115,101,32,90,10,9,100,101,102,105,110,101,32,115,101,116,102,105,108,108,118,97,108,32,89,32,102,105,108,108,118,97,108,32,61,32,89,59,10,9,100,101,102,105,110,101,32,98,111,108,100,32,89,32,89,59,10,9,100,101,102,105,110,101,32,102,105,108,108,101,100,32,89,32,102,105,108,108,32,89,59,10,90,10,0,37,115,32,97,114,114,111,119,104,101,97,100,32,104,97,115,32,110,111,32,109,101,97,110,105,110,103,32,105,110,32,68,87,66,32,50,44,32,97,114,114,111,119,104,101,97,100,32,61,32,55,32,109,97,107,101,115,32,102,105,108,108,101,100,32,97,114,114,111,119,104,101,97,100,115,32,105,110,32,103,112,105,99,32,97,110,100,32,105,110,32,49,48,116,104,32,69,100,105,116,105,111,110,10,0,37,115,32,97,114,114,111,119,104,101,97,100,32,105,115,32,117,110,100,101,102,105,110,101,100,32,105,110,32,68,87,66,32,50,44,32,105,110,105,116,105,97,108,108,121,32,49,32,105,110,32,103,112,105,99,44,32,50,32,105,110,32,49,48,116,104,32,69,100,105,116,105,111,110,10,0,97,114,114,111,119,104,101,97,100,32,61,32,55,32,37,115,32,110,111,116,32,117,115,101,100,32,98,121,32,103,114,97,112,104,118,105,122,10,0,37,115,32,71,78,85,32,112,105,99,32,115,117,112,112,111,114,116,115,32,97,32,98,111,120,114,97,100,32,118,97,114,105,97,98,108,101,32,116,111,32,100,114,97,119,32,98,111,120,101,115,32,119,105,116,104,32,114,111,117,110,100,101,100,32,99,111,114,110,101,114,115,59,32,68,87,66,32,97,110,100,32,49,48,116,104,32,69,100,46,32,100,111,32,110,111,116,10,0,98,111,120,114,97,100,32,61,32,48,32,37,115,32,110,111,32,114,111,117,110,100,101,100,32,99,111,114,110,101,114,115,32,105,110,32,103,114,97,112,104,118,105,122,10,0,37,115,32,71,78,85,32,112,105,99,32,115,117,112,112,111,114,116,115,32,97,32,108,105,110,101,116,104,105,99,107,32,118,97,114,105,97,98,108,101,32,116,111,32,115,101,116,32,108,105,110,101,32,116,104,105,99,107,110,101,115,115,59,32,68,87,66,32,97,110,100,32,49,48,116,104,32,69,100,46,32,100,111,32,110,111,116,10,0,108,105,110,101,116,104,105,99,107,32,61,32,48,59,32,111,108,100,108,105,110,101,116,104,105,99,107,32,61,32,108,105,110,101,116,104,105,99,107,10,0,37,115,32,46,80,83,32,119,47,111,32,97,114,103,115,32,99,97,117,115,101,115,32,71,78,85,32,112,105,99,32,116,111,32,115,99,97,108,101,32,100,114,97,119,105,110,103,32,116,111,32,102,105,116,32,56,46,53,120,49,49,32,112,97,112,101,114,59,32,68,87,66,32,100,111,101,115,32,110,111,116,10,0,37,115,32,109,97,120,112,115,104,116,32,97,110,100,32,109,97,120,112,115,119,105,100,32,104,97,118,101,32,110,111,32,109,101,97,110,105,110,103,32,105,110,32,68,87,66,32,50,46,48,44,32,115,101,116,32,112,97,103,101,32,98,111,117,110,100,97,114,105,101,115,32,105,110,32,103,112,105,99,32,97,110,100,32,105,110,32,49,48,116,104,32,69,100,105,116,105,111,110,10,0,37,115,32,109,97,120,112,115,104,116,32,97,110,100,32,109,97,120,112,115,119,105,100,32,97,114,101,32,112,114,101,100,101,102,105,110,101,100,32,116,111,32,49,49,46,48,32,97,110,100,32,56,46,53,32,105,110,32,103,112,105,99,10,0,109,97,120,112,115,104,116,32,61,32,37,102,10,109,97,120,112,115,119,105,100,32,61,32,37,102,10,0,68,111,116,58,32,91,10,0,100,101,102,105,110,101,32,97,116,116,114,115,48,32,37,37,32,37,37,59,32,100,101,102,105,110,101,32,117,110,102,105,108,108,101,100,32,37,37,32,37,37,59,32,100,101,102,105,110,101,32,114,111,117,110,100,101,100,32,37,37,32,37,37,59,32,100,101,102,105,110,101,32,100,105,97,103,111,110,97,108,115,32,37,37,32,37,37,10,0,37,115,37,115,32,117,110,115,117,112,112,111,114,116,101,100,10,0,37,115,32,114,101,115,116,111,114,101,32,112,111,105,110,116,32,115,105,122,101,32,97,110,100,32,102,111,110,116,10,46,112,115,32,92,110,40,46,83,10,46,102,116,32,92,110,40,68,70,10,0,37,115,32,67,114,101,97,116,111,114,58,32,37,115,32,118,101,114,115,105,111,110,32,37,115,32,40,37,115,41,10,0,37,115,32,84,105,116,108,101,58,32,37,115,10,0,37,115,32,115,97,118,101,32,112,111,105,110,116,32,115,105,122,101,32,97,110,100,32,102,111,110,116,10,46,110,114,32,46,83,32,92,110,40,46,115,10,46,110,114,32,68,70,32,92,110,40,46,102,10,0,112,110,103,58,115,118,103,0,103,105,102,58,115,118,103,0,106,112,101,103,58,115,118,103,0,106,112,101,58,115,118,103,0,106,112,103,58,115,118,103,0,112,110,103,58,102,105,103,0,103,105,102,58,102,105,103,0,106,112,101,103,58,102,105,103,0,106,112,101,58,102,105,103,0,106,112,103,58,102,105,103,0,112,110,103,58,118,114,109,108,0,103,105,102,58,118,114,109,108,0,106,112,101,103,58,118,114,109,108,0,106,112,101,58,118,114,109,108,0,106,112,103,58,118,114,109,108,0,101,112,115,58,112,115,0,112,115,58,112,115,0,40,108,105,98,41,58,112,115,0,112,110,103,58,109,97,112,0,103,105,102,58,109,97,112,0,106,112,101,103,58,109,97,112,0,106,112,101,58,109,97,112,0,106,112,103,58,109,97,112,0,112,115,58,109,97,112,0,101,112,115,58,109,97,112,0,115,118,103,58,109,97,112,0,112,110,103,58,100,111,116,0,103,105,102,58,100,111,116,0,106,112,101,103,58,100,111,116,0,106,112,101,58,100,111,116,0,106,112,103,58,100,111,116,0,112,115,58,100,111,116,0,101,112,115,58,100,111,116,0,115,118,103,58,100,111,116,0,112,110,103,58,120,100,111,116,0,103,105,102,58,120,100,111,116,0,106,112,101,103,58,120,100,111,116,0,106,112,101,58,120,100,111,116,0,106,112,103,58,120,100,111,116,0,112,115,58,120,100,111,116,0,101,112,115,58,120,100,111,116,0,115,118,103,58,120,100,111,116,0,115,118,103,58,115,118,103,0,112,110,103,58,118,109,108,0,103,105,102,58,118,109,108,0,106,112,101,103,58,118,109,108,0,106,112,101,58,118,109,108,0,106,112,103,58,118,109,108,0,103,105,102,58,116,107,0,105,109,97,103,101,32,99,114,101,97,116,101,32,112,104,111,116,111,32,34,112,104,111,116,111,95,37,115,34,32,45,102,105,108,101,32,34,37,115,34,10,0,36,99,32,99,114,101,97,116,101,32,105,109,97,103,101,32,37,46,50,102,32,37,46,50,102,32,45,105,109,97,103,101,32,34,112,104,111,116,111,95,37,115,34,10,0,60,118,58,105,109,97,103,101,32,115,114,99,61,34,37,115,34,32,115,116,121,108,101,61,34,32,112,111,115,105,116,105,111,110,58,97,98,115,111,108,117,116,101,59,32,119,105,100,116,104,58,37,46,50,102,59,32,104,101,105,103,104,116,58,37,46,50,102,59,32,108,101,102,116,58,37,46,50,102,32,59,32,116,111,112,58,37,46,50,102,34,0,32,47,62,10,0,103,118,108,111,97,100,105,109,97,103,101,95,99,111,114,101,46,99,0,99,111,114,101,95,108,111,97,100,105,109,97,103,101,95,112,115,108,105,98,0,91,32,0,37,103,32,37,103,32,0,93,32,32,37,100,32,116,114,117,101,32,37,115,10,0,93,32,32,37,100,32,102,97,108,115,101,32,37,115,10,0,99,111,114,101,95,108,111,97,100,105,109,97,103,101,95,112,115,0,103,115,97,118,101,32,37,103,32,37,103,32,116,114,97,110,115,108,97,116,101,32,110,101,119,112,97,116,104,10,0,117,115,101,114,95,115,104,97,112,101,95,37,100,10,0,103,114,101,115,116,111,114,101,10,0,99,111,114,101,95,108,111,97,100,105,109,97,103,101,95,118,114,109,108,0,83,104,97,112,101,32,123,10,0,32,32,97,112,112,101,97,114,97,110,99,101,32,65,112,112,101,97,114,97,110,99,101,32,123,10,0,32,32,32,32,109,97,116,101,114,105,97,108,32,77,97,116,101,114,105,97,108,32,123,10,0,32,32,32,32,32,32,97,109,98,105,101,110,116,73,110,116,101,110,115,105,116,121,32,48,46,51,51,10,0,32,32,32,32,32,32,32,32,100,105,102,102,117,115,101,67,111,108,111,114,32,49,32,49,32,49,10,0,32,32,32,32,125,10,0,32,32,32,32,116,101,120,116,117,114,101,32,73,109,97,103,101,84,101,120,116,117,114,101,32,123,32,117,114,108,32,34,37,115,34,32,125,10,0,32,32,125,10,0,99,111,114,101,95,108,111,97,100,105,109,97,103,101,95,102,105,103,0,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,46,49,102,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,10,32,37,100,32,37,115,10,0,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,10,0,99,111,114,101,95,108,111,97,100,105,109,97,103,101,95,115,118,103,0,60,105,109,97,103,101,32,120,108,105,110,107,58,104,114,101,102,61,34,0,34,32,119,105,100,116,104,61,34,37,103,112,120,34,32,104,101,105,103,104,116,61,34,37,103,112,120,34,32,112,114,101,115,101,114,118,101,65,115,112,101,99,116,82,97,116,105,111,61,34,120,77,105,100,89,77,105,100,32,109,101,101,116,34,32,120,61,34,37,103,34,32,121,61,34,37,103,34,0,32,116,114,97,110,115,102,111,114,109,61,34,114,111,116,97,116,101,40,37,100,32,37,103,32,37,103,41,34,0,34,32,119,105,100,116,104,61,34,37,103,112,120,34,32,104,101,105,103,104,116,61,34,37,103,112,120,34,32,112,114,101,115,101,114,118,101,65,115,112,101,99,116,82,97,116,105,111,61,34,120,77,105,110,89,77,105,110,32,109,101,101,116,34,32,120,61,34,37,103,34,32,121,61,34,37,103,34,0,47,62,10,0,100,111,116,95,108,97,121,111,117,116,0,112,104,97,115,101,0,100,111,116,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,116,104,101,32,97,115,112,101,99,116,32,97,116,116,114,105,98,117,116,101,32,102,111,114,32,100,105,115,99,111,110,110,101,99,116,101,100,32,103,114,97,112,104,115,32,111,114,32,103,114,97,112,104,115,32,119,105,116,104,32,99,108,117,115,116,101,114,115,10,0,99,111,109,112,111,117,110,100,0,118,32,61,61,32,110,0,100,111,116,105,110,105,116,46,99,0,114,101,109,111,118,101,95,102,114,111,109,95,114,97,110,107,0,111,114,100,101,114,0,101,100,103,101,32,108,97,98,101,108,115,32,119,105,116,104,32,115,112,108,105,110,101,115,61,99,117,114,118,101,100,32,110,111,116,32,115],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+112222);allocate([117,112,112,111,114,116,101,100,32,105,110,32,100,111,116,32,45,32,117,115,101,32,120,108,97,98,101,108,115,10,0,69,68,95,108,97,98,101,108,40,102,101,41,0,100,111,116,115,112,108,105,110,101,115,46,99,0,95,100,111,116,95,115,112,108,105,110,101,115,0,120,120,120,0,49,48,48,48,48,0,123,37,115,125,0,97,117,120,103,0,108,97,98,101,108,95,102,108,111,97,116,0,102,105,120,101,100,0,40,108,32,61,32,69,68,95,108,97,98,101,108,40,102,101,41,41,0,115,101,116,69,100,103,101,76,97,98,101,108,80,111,115,0,101,32,33,61,32,78,85,76,76,0,102,97,115,116,103,114,46,99,0,100,101,108,101,116,101,95,102,97,115,116,95,101,100,103,101,0,110,32,33,61,32,78,68,95,110,101,120,116,40,110,41,0,102,97,115,116,95,110,111,100,101,0,117,32,33,61,32,118,0,102,97,115,116,95,110,111,100,101,97,112,112,0,78,68,95,110,101,120,116,40,118,41,32,61,61,32,78,85,76,76,0,102,105,110,100,95,102,97,115,116,95,110,111,100,101,40,103,44,32,110,41,0,100,101,108,101,116,101,95,102,97,115,116,95,110,111,100,101,0,100,101,108,101,116,101,95,102,108,97,116,95,101,100,103,101,0,109,101,114,103,101,95,111,110,101,119,97,121,32,103,108,105,116,99,104,10,0,109,101,114,103,101,95,111,110,101,119,97,121,0,115,97,102,101,95,100,101,108,101,116,101,95,102,97,115,116,95,101,100,103,101,0,114,101,109,105,110,99,114,111,115,115,0,0,105,110,115,116,97,108,108,95,105,110,95,114,97,110,107,44,32,108,105,110,101,32,37,100,58,32,37,115,32,37,115,32,114,97,110,107,32,37,100,32,105,32,61,32,37,100,32,97,110,32,61,32,48,10,0,71,68,95,114,97,110,107,40,103,41,91,114,93,46,110,32,60,61,32,71,68,95,114,97,110,107,40,103,41,91,114,93,46,97,110,0,109,105,110,99,114,111,115,115,46,99,0,105,110,115,116,97,108,108,95,105,110,95,114,97,110,107,0,105,110,115,116,97,108,108,95,105,110,95,114,97,110,107,44,32,108,105,110,101,32,37,100,58,32,78,68,95,111,114,100,101,114,40,37,115,41,32,91,37,100,93,32,62,32,71,68,95,114,97,110,107,40,82,111,111,116,41,91,37,100,93,46,97,110,32,91,37,100,93,10,0,105,110,115,116,97,108,108,95,105,110,95,114,97,110,107,44,32,108,105,110,101,32,37,100,58,32,114,97,110,107,32,37,100,32,110,111,116,32,105,110,32,114,97,110,107,32,114,97,110,103,101,32,91,37,100,44,37,100,93,10,0,105,110,115,116,97,108,108,95,105,110,95,114,97,110,107,44,32,108,105,110,101,32,37,100,58,32,71,68,95,114,97,110,107,40,103,41,91,37,100,93,46,118,32,43,32,78,68,95,111,114,100,101,114,40,37,115,41,32,91,37,100,93,32,62,32,71,68,95,114,97,110,107,40,103,41,91,37,100,93,46,97,118,32,43,32,71,68,95,114,97,110,107,40,82,111,111,116,41,91,37,100,93,46,97,110,32,91,37,100,93,10,0,115,117,114,112,114,105,115,101,10,0,78,68,95,111,114,100,101,114,40,118,41,32,60,32,78,68,95,111,114,100,101,114,40,119,41,0,116,114,97,110,115,112,111,115,101,95,115,116,101,112,0,118,0,110,101,105,103,104,98,111,114,0,40,114,118,32,61,61,32,48,41,32,124,124,32,40,78,68,95,111,114,100,101,114,40,114,118,41,45,78,68,95,111,114,100,101,114,40,118,41,41,42,100,105,114,32,62,32,48,0,109,105,110,99,114,111,115,115,32,37,115,58,32,37,100,32,99,114,111,115,115,105,110,103,115,44,32,37,46,50,102,32,115,101,99,115,46,10,0,99,111,110,115,116,114,97,105,110,105,110,103,95,102,108,97,116,95,101,100,103,101,40,103,44,118,44,101,41,32,61,61,32,70,65,76,83,69,0,102,108,97,116,95,114,101,111,114,100,101,114,0,78,68,95,114,97,110,107,40,118,41,32,61,61,32,114,0,112,111,115,116,111,114,100,101,114,0,102,108,97,116,105,110,100,101,120,40,97,103,104,101,97,100,40,101,41,41,32,60,32,77,45,62,110,114,111,119,115,0,102,108,97,116,95,115,101,97,114,99,104,0,102,108,97,116,105,110,100,101,120,40,97,103,116,97,105,108,40,101,41,41,32,60,32,77,45,62,110,99,111,108,115,0,111,117,116,0,111,114,100,101,114,105,110,103,32,39,37,115,39,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,46,10,0,111,114,100,101,114,105,110,103,32,39,37,115,39,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,32,102,111,114,32,110,111,100,101,32,39,37,115,39,46,10,0,109,101,114,103,101,50,58,32,103,114,97,112,104,32,37,115,44,32,114,97,110,107,32,37,100,32,104,97,115,32,111,110,108,121,32,37,100,32,60,32,37,100,32,110,111,100,101,115,10,0,109,105,110,99,114,111,115,115,58,32,112,97,115,115,32,37,100,32,105,116,101,114,32,37,100,32,116,114,121,105,110,103,32,37,100,32,99,117,114,95,99,114,111,115,115,32,37,100,32,98,101,115,116,95,99,114,111,115,115,32,37,100,10,0,98,97,108,97,110,99,101,0,95,110,101,119,95,114,97,110,107,0,109,99,108,105,109,105,116,0,114,97,110,107,40,103,44,32,50,44,32,110,115,105,116,101,114,50,40,103,41,41,32,61,61,32,48,0,112,111,115,105,116,105,111,110,46,99,0,100,111,116,95,112,111,115,105,116,105,111,110,0,69,100,103,101,32,108,101,110,103,116,104,32,37,102,32,108,97,114,103,101,114,32,116,104,97,110,32,109,97,120,105,109,117,109,32,37,117,32,97,108,108,111,119,101,100,46,10,67,104,101,99,107,32,102,111,114,32,111,118,101,114,119,105,100,101,32,110,111,100,101,40,115,41,46,10,0,65,82,61,37,48,46,52,108,102,9,32,65,114,101,97,61,32,37,48,46,52,108,102,9,0,68,117,109,109,121,61,37,100,10,0,71,111,105,110,103,32,116,111,32,97,112,112,108,121,32,97,110,111,116,104,101,114,32,101,120,112,97,110,115,105,111,110,46,10,0,110,101,120,116,35,105,116,101,114,61,37,100,10,0,104,112,0,99,111,110,110,101,99,116,71,114,97,112,104,0,110,115,108,105,109,105,116,0,99,111,110,116,97,105,110,95,110,111,100,101,115,32,99,108,117,115,116,32,37,115,32,114,97,110,107,32,37,100,32,109,105,115,115,105,110,103,32,110,111,100,101,10,0,110,115,108,105,109,105,116,49,0,110,101,119,114,97,110,107,0,77,97,120,114,97,110,107,32,61,32,37,100,44,32,109,105,110,114,97,110,107,32,61,32,37,100,10,0,108,101,97,100,101,114,32,33,61,32,78,85,76,76,0,114,97,110,107,46,99,0,99,108,117,115,116,101,114,95,108,101,97,100,101,114,0,40,78,68,95,85,70,95,115,105,122,101,40,110,41,32,60,61,32,49,41,32,124,124,32,40,110,32,61,61,32,108,101,97,100,101,114,41,0,97,103,104,101,97,100,40,101,41,32,61,61,32,85,70,95,102,105,110,100,40,97,103,104,101,97,100,40,101,41,41,0,109,105,110,109,97,120,95,101,100,103,101,115,0,97,103,116,97,105,108,40,101,41,32,61,61,32,85,70,95,102,105,110,100,40,97,103,116,97,105,108,40,101,41,41,0,114,97,110,107,0,115,97,109,101,0,109,105,110,0,115,111,117,114,99,101,0,109,97,120,0,115,105,110,107,0,108,101,118,101,108,32,97,115,115,105,103,110,109,101,110,116,32,99,111,110,115,116,114,97,105,110,116,115,0,108,101,118,101,108,32,103,114,97,112,104,32,114,101,99,0,127,114,111,111,116,0,127,116,111,112,0,127,98,111,116,0,99,111,109,112,97,99,116,0,95,119,101,97,107,95,37,100,0,114,97,110,107,105,110,103,58,32,102,97,105,108,117,114,101,32,116,111,32,99,114,101,97,116,101,32,115,116,114,111,110,103,32,99,111,110,115,116,114,97,105,110,116,32,101,100,103,101,32,98,101,116,119,101,101,110,32,110,111,100,101,115,32,37,115,32,97,110,100,32,37,115,10,0,37,115,32,104,97,115,32,117,110,114,101,99,111,103,110,105,122,101,100,32,114,97,110,107,61,37,115,0,108,101,118,101,108,32,101,100,103,101,32,114,101,99,0,108,101,118,101,108,32,110,111,100,101,32,114,101,99,0,115,97,109,101,104,101,97,100,0,115,97,109,101,116,97,105,108,0,116,111,111,32,109,97,110,121,32,40,62,32,37,100,41,32,115,97,109,101,123,104,101,97,100,44,116,97,105,108,125,32,103,114,111,117,112,115,32,102,111,114,32,110,111,100,101,32,37,115,10,0,99,111,109,98,105,65,82,32,61,32,37,108,102,10,0,37,108,102,44,37,100,0,116,104,101,32,97,115,112,101,99,116,32,97,116,116,114,105,98,117,116,101,32,104,97,115,32,98,101,101,110,32,100,105,115,97,98,108,101,100,32,100,117,101,32,116,111,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,102,108,97,119,115,32,45,32,97,116,116,114,105,98,117,116,101,32,105,103,110,111,114,101,100,46,10,0,69,68,95,116,111,95,118,105,114,116,40,101,41,32,61,61,32,78,85,76,76,0,99,108,97,115,115,50,46,99,0,109,101,114,103,101,95,99,104,97,105,110,0,69,68,95,116,111,95,118,105,114,116,40,111,114,105,103,41,32,61,61,32,78,85,76,76,0,109,97,107,101,95,99,104,97,105,110,0,69,68,95,116,111,95,118,105,114,116,40,111,114,105,103,41,32,33,61,32,78,85,76,76,0,37,115,32,119,97,115,32,97,108,114,101,97,100,121,32,105,110,32,97,32,114,97,110,107,115,101,116,44,32,100,101,108,101,116,101,100,32,102,114,111,109,32,99,108,117,115,116,101,114,32,37,115,10,0,78,68,95,114,97,110,107,40,102,114,111,109,41,32,60,32,78,68,95,114,97,110,107,40,116,111,41,0,99,108,117,115,116,101,114,46,99,0,109,97,112,95,112,97,116,104,0,108,104,101,97,100,0,108,116,97,105,108,0,37,115,32,45,62,32,37,115,58,32,115,112,108,105,110,101,32,115,105,122,101,32,62,32,49,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,37,115,32,45,62,32,37,115,58,32,104,101,97,100,32,110,111,116,32,105,110,115,105,100,101,32,104,101,97,100,32,99,108,117,115,116,101,114,32,37,115,10,0,37,115,32,45,62,32,37,115,58,32,116,97,105,108,32,105,115,32,105,110,115,105,100,101,32,104,101,97,100,32,99,108,117,115,116,101,114,32,37,115,10,0,98,101,122,45,62,115,102,108,97,103,0,99,111,109,112,111,117,110,100,46,99,0,109,97,107,101,67,111,109,112,111,117,110,100,69,100,103,101,0,98,101,122,45,62,101,102,108,97,103,0,37,115,32,45,62,32,37,115,58,32,116,97,105,108,32,110,111,116,32,105,110,115,105,100,101,32,116,97,105,108,32,99,108,117,115,116,101,114,32,37,115,10,0,37,115,32,45,62,32,37,115,58,32,104,101,97,100,32,105,115,32,105,110,115,105,100,101,32,116,97,105,108,32,99,108,117,115,116,101,114,32,37,115,10,0,115,101,103,109,101,110,116,32,91,37,115,44,37,115,93,32,100,111,101,115,32,110,111,116,32,105,110,116,101,114,115,101,99,116,32,98,111,120,32,108,108,61,37,115,44,117,114,61,37,115,10,0,98,111,120,73,110,116,101,114,115,101,99,116,102,0,40,37,46,53,103,44,37,46,53,103,41,0,99,108,117,115,116,101,114,32,110,97,109,101,100,32,37,115,32,110,111,116,32,102,111,117,110,100,10,0,99,111,110,99,101,110,116,114,97,116,101,61,116,114,117,101,32,109,97,121,32,110,111,116,32,119,111,114,107,32,99,111,114,114,101,99,116,108,121,46,10,0,114,101,98,117,105,108,116,100,95,118,108,105,115,116,115,58,32,114,97,110,107,32,108,101,97,100,32,37,115,32,110,111,116,32,105,110,32,111,114,100,101,114,32,37,100,32,111,102,32,114,97,110,107,32,37,100,10,0,100,101,103,101,110,101,114,97,116,101,32,99,111,110,99,101,110,116,114,97,116,101,100,32,114,97,110,107,32,37,115,44,37,100,10,0,78,68,95,105,110,40,114,105,103,104,116,41,46,115,105,122,101,32,43,32,78,68,95,111,117,116,40,114,105,103,104,116,41,46,115,105,122,101,32,61,61,32,48,0,99,111,110,99,46,99,0,109,101,114,103,101,118,105,114,116,117,97,108,0,0,78,68,95,111,117,116,40,118,41,46,115,105,122,101,32,61,61,32,50,0,102,108,97,116,46,99,0,115,101,116,98,111,117,110,100,115,0,71,68,95,109,105,110,114,97,110,107,40,103,41,32,61,61,32,48,0,97,98,111,109,105,110,97,116,105,111,110,0,110,101,97,116,111,95,108,97,121,111,117,116,0,110,101,97,116,111,0,102,100,112,0,115,102,100,112,0,116,119,111,112,105,0,99,105,114,99,111,0,112,97,116,99,104,119,111,114,107,0,111,115,97,103,101,0,110,111,112,0,110,111,112,49,0,110,111,112,50,0,37,108,102,44,37,108,102,44,37,108,102,37,99,0,110,111,100,101,32,37,115,44,32,112,111,115,105,116,105,111,110,32,37,115,44,32,101,120,112,101,99,116,101,100,32,116,119,111,32,100,111,117,98,108,101,115,10,0,110,111,100,101,32,37,115,32,105,110,32,103,114,97,112,104,32,37,115,32,104,97,115,32,110,111,32,112,111,115,105,116,105,111,110,10,0,115,116,97,114,116,0,115,101,108,102,0,114,97,110,100,111,109,0,110,111,100,101,32,112,111,115,105,116,105,111,110,115,32,97,114,101,32,105,103,110,111,114,101,100,32,117,110,108,101,115,115,32,115,116,97,114,116,61,114,97,110,100,111,109,10,0,97,115,32,114,101,113,117,105,114,101,100,32,98,121,32,116,104,101,32,45,110,32,102,108,97,103,10,0,103,114,97,112,104,32,37,115,32,105,115,32,100,105,115,99,111,110,110,101,99,116,101,100,46,32,72,101,110,99,101,44,32,116,104,101,32,99,105,114,99,117,105,116,32,109,111,100,101,108,10,0,65,108,116,101,114,110,97,116,105,118,101,108,121,44,32,99,111,110,115,105,100,101,114,32,114,117,110,110,105,110,103,32,110,101,97,116,111,32,117,115,105,110,103,32,45,71,112,97,99,107,61,116,114,117,101,32,111,114,32,100,101,99,111,109,112,111,115,105,110,103,10,0,116,104,101,32,103,114,97,112,104,32,105,110,116,111,32,99,111,110,110,101,99,116,101,100,32,99,111,109,112,111,110,101,110,116,115,46,10,0,83,111,108,118,105,110,103,32,109,111,100,101,108,32,37,100,32,105,116,101,114,97,116,105,111,110,115,32,37,100,32,116,111,108,32,37,102,10,0,78,68,95,105,100,40,110,112,41,32,61,61,32,105,0,110,101,97,116,111,105,110,105,116,46,99,0,109,97,107,101,71,114,97,112,104,68,97,116,97,0,102,32,60,32,103,114,97,112,104,91,106,93,46,110,101,100,103,101,115,0,100,102,115,67,121,99,108,101,0,109,111,100,101,108,32,37,100,32,115,109,97,114,116,95,105,110,105,116,32,37,100,32,115,116,114,101,115,115,119,116,32,37,100,32,105,116,101,114,97,116,105,111,110,115,32,37,100,32,116,111,108,32,37,102,10,0,99,111,110,118,101,114,116,32,103,114,97,112,104,58,32,0,109,97,106,111,114,105,122,97,116,105,111,110,10,0,37,100,32,110,111,100,101,115,32,37,46,50,102,32,115,101,99,10,0,108,101,118,101,108,115,103,97,112,0,108,97,121,111,117,116,32,97,98,111,114,116,101,100,10,0,115,116,114,101,115,115,119,116,0,37,115,32,97,116,116,114,105,98,117,116,101,32,118,97,108,117,101,32,109,117,115,116,32,98,101,32,49,32,111,114,32,50,32,45,32,105,103,110,111,114,105,110,103,10,0,95,110,101,97,116,111,95,99,99,0,109,111,100,101,108,0,99,105,114,99,117,105,116,0,115,117,98,115,101,116,0,115,104,111,114,116,112,97,116,104,0,109,100,115,0,101,100,103,101,115,32,105,110,32,103,114,97,112,104,32,37,115,32,104,97,118,101,32,110,111,32,108,101,110,32,97,116,116,114,105,98,117,116,101,46,32,72,101,110,99,101,44,32,116,104,101,32,109,100,115,32,109,111,100,101,108,10,0,105,115,32,105,110,97,112,112,114,111,112,114,105,97,116,101,46,32,82,101,118,101,114,116,105,110,103,32,116,111,32,116,104,101,32,115,104,111,114,116,101,115,116,32,112,97,116,104,32,109,111,100,101,108,46,10,0,85,110,107,110,111,119,110,32,118,97,108,117,101,32,37,115,32,102,111,114,32,97,116,116,114,105,98,117,116,101,32,34,109,111,100,101,108,34,32,105,110,32,103,114,97,112,104,32,37,115,32,45,32,105,103,110,111,114,101,100,10,0,109,111,100,101,0,75,75,0,109,97,106,111,114,0,104,105,101,114,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,97,116,116,114,105,98,117,116,101,32,34,109,111,100,101,34,32,105,110,32,103,114,97,112,104,32,37,115,32,45,32,105,103,110,111,114,101,100,10,0,115,44,37,108,102,44,37,108,102,37,110,0,32,101,44,37,108,102,44,37,108,102,37,110,0,0,112,111,115,32,97,116,116,114,105,98,117,116,101,32,102,111,114,32,101,100,103,101,32,40,37,115,44,37,115,41,32,100,111,101,115,110,39,116,32,104,97,118,101,32,51,110,43,49,32,112,111,105,110,116,115,10,0,37,108,102,44,37,108,102,37,110,0,115,121,110,116,97,120,32,101,114,114,111,114,32,105,110,32,112,111,115,32,97,116,116,114,105,98,117,116,101,32,102,111,114,32,101,100,103,101,32,40,37,115,44,37,115,41,10,0,37,108,102,44,37,108,102,44,37,108,102,44,37,108,102,0,109,97,107,101,83,112,108,105,110,101,58,32,102,97,105,108,101,100,32,116,111,32,109,97,107,101,32,115,112,108,105,110,101,32,101,100,103,101,32,40,37,115,44,37,115,41,10,0,115,112,108,105,110,101,32,37,115,32,37,115,10,0,116,104,101,32,98,111,117,110,100,105,110,103,32,98,111,120,101,115,32,111,102,32,115,111,109,101,32,110,111,100,101,115,32,116,111,117,99,104,32,45,32,102,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,116,114,97,105,103,104,116,32,108,105,110,101,32,101,100,103,101,115,10,0,115,111,109,101,32,110,111,100,101,115,32,119,105,116,104,32,109,97,114,103,105,110,32,40,37,46,48,50,102,44,37,46,48,50,102,41,32,116,111,117,99,104,32,45,32,102,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,116,114,97,105,103,104,116,32,108,105,110,101,32,101,100,103,101,115,10,0,112,111,108,121,108,105,110,101,115,0,108,105,110,101,32,115,101,103,109,101,110,116,115,0,111,114,116,104,111,103,111,110,97,108,32,108,105,110,101,115,0,67,114,101,97,116,105,110,103,32,101,100,103,101,115,32,117,115,105,110,103,32,37,115,10,0,112,111,108,121,108,105,110,101,32,37,115,32,37,115,10,0,98,32,61,61,32,110,0,110,101,97,116,111,115,112,108,105,110,101,115,46,99,0,109,97,107,101,95,98,97,114,114,105,101,114,115,0,109,100,115,77,111,100,101,108,58,32,100,101,108,116,97,32,61,32,37,102,10,0,83,101,116,116,105,110,103,32,117,112,32,115,116,114,101,115,115,32,102,117,110,99,116,105,111,110,0,83,111,108,118,105,110,103,32,109,111,100,101,108,58,32,0,10,102,105,110,97,108,32,101,32,61,32,37,102,32,37,100,32,105,116,101,114,97,116,105,111,110,115,32,37,46,50,102,32,115,101,99,10,0,83,99,97,110,110,105,110,103,32,103,114,97,112,104,32,37,115,44,32,37,100,32,110,111,100,101,115,10,0,68,97,109,112,105,110,103,0,100,101,102,97,117,108,116,100,105,115,116,0,83,101,116,116,105,110,103,32,105,110,105,116,105,97,108,32,112,111,115,105,116,105,111,110,115,10,0,115,116,97,114,116,61,37,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,109,111,100,101,61,115,101,108,102,32,45,32,105,103,110,111,114,101,100,10,0,83,101,116,116,105,110,103,32,117,112,32,115,112,114,105,110,103,32,109,111,100,101,108,58,32,0,37,46,50,102,32,115,101,99,10,0,10,102,105,110,97,108,32,101,32,61,32,37,102,0,33,0,32,37,100,37,115,32,105,116,101,114,97,116,105,111,110,115,32,37,46,50,102,32,115,101,99,10,0,77,97,120,46,32,105,116,101,114,97,116,105,111,110,115,32,40,37,100,41,32,114,101,97,99,104,101,100,32,111,110,32,103,114,97,112,104,32,37,115,10,0,37,46,51,102,32,0,37,115,32,37,46,51,102,10,0,78,68,95,104,101,97,112,105,110,100,101,120,40,118,41,32,60,32,48,0,115,116,117,102,102,46,99,0,110,101,97,116,111,95,101,110,113,117,101,117,101,0,67,97,108,99,117,108,97,116,105,110,103,32,115,104,111,114,116,101,115,116,32,112,97,116,104,115,58,32,0,32,105,110,32,37,115,32,45,32,115,101,116,116,105,110,103,32,116,111,32,37,46,48,50,102,10,0,98,97,100,32,101,100,103,101,32,108,101,110,32,34,37,115,34,0,115,112,101,99,105,102,105,101,100,32,114,111,111,116,32,110,111,100,101,32,34,37,115,34,32,119,97,115,32,110,111,116,32,102,111,117,110,100,46,0,85,115,105,110,103,32,100,101,102,97,117,108,116,32,99,97,108,99,117,108,97,116,105,111,110,32,102,111,114,32,114,111,111,116,32,110,111,100,101,10,0,114,101,112,111,115,105,116,105,111,110,32,37,115,10,0,37,115,32,58,32,37,102,32,37,102,10,0,37,115,32,58,32,37,102,32,37,102,32,37,102,32,37,102,10,0,32,32,0,71,114,97,112,104,32,37,115,32,104,97,115,32,97,114,114,97,121,32,112,97,99,107,105,110,103,32,119,105,116,104,32,117,115,101,114,32,118,97,108,117,101,115,32,98,117,116,32,110,111,32,34,115,111,114,116,118,34,32,97,116,116,114,105,98,117,116,101,115,32,97,114,101,32,100,101,102,105,110,101,100,46,0,112,105,110,0,87,97,114,110,105,110,103,58,32,110,111,100,101,32,37,115,44,32,112,111,115,105,116,105,111,110,32,37,115,44,32,101,120,112,101,99,116,101,100,32,116,119,111,32,102,108,111,97,116,115,10,0,99,111,111,114,100,115,0,115,112,108,105,110,101,115,32,97,110,100,32,99,108,117,115,116,101,114,32,101,100,103,101,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,45,32,117,115,105,110,103,32,108,105,110,101,32,115,101,103,109,101,110,116,115,10,0,108,97,121,111,117,116,32,37,115,10,0,101,110,100,32,37,115,10,0,105,100,120,32,61,61,32,115,122,0,108,97,121,111,117,116,46,99,0,101,120,112,97,110,100,67,108,117,115,116,101,114,0,105,32,61,61,32,100,101,103,0,103,101,116,69,100,103,101,76,105,115,116,0,95,100,103,95,37,100,0,100,101,114,105,118,101,32,103,114,97,112,104,32,37,115,32,111,102,32,37,115,10,0,110,111,100,101,32,34,37,115,34,32,105,115,32,99,111,110,116,97,105,110,101,100,32,105,110,32,116,119,111,32,110,111,110,45,99,111,109,112,97,114,97,98,108,101,32,99,108,117,115,116,101,114,115,32,34,37,115,34,32,97,110,100,32,34,37,115,34,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,112,111,114,116,95,37,115,95,37,115,95,37,115,95,37,108,100,0,95,112,111,114,116,95,37,115,95,40,37,100,41,95,40,37,100,41,95,37,108,100,0,37,108,102,44,37,108,102,44,37,108,102,44,37,108,102,37,99,0,103,114,97,112,104,32,37,115,44,32,99,111,111,114,100,32,37,115,44,32,101,120,112,101,99,116,101,100,32,102,111,117,114,32,100,111,117,98,108,101,115,10,0,109,97,120,105,116,101,114,0,84,48,0,102,100,112,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,115,116,97,114,116,61,115,101,108,102,32,45,32,105,103,110,111,114,105,110,103,10,0,120,76,97,121,111,117,116,32,0,57,58,112,114,105,115,109,0,116,114,105,101,115,32,61,32,37,100,44,32,109,111,100,101,32,61,32,37,115,10,0,100,101,114,105,118,101,100,0,105,110,102,111,0,101,120,116,114,97,99,116,101,100,32,97,32,37,100,45,110,101,105,103,104,98,111,114,104,111,111,100,32,103,114,97,112,104,32,111,102,32,37,100,32,101,100,103,101,115,32,102,114,111,109,32,97,32,103,114,97,112,104,32,111,102,32,37,100,32,101,100,103,101,115,10,0,115,102,100,112,32,111,110,108,121,32,115,117,112,112,111,114,116,115,32,115,116,97,114,116,61,114,97,110,100,111,109,10,0,75,0,114,101,112,117,108,115,105,118,101,102,111,114,99,101,0,108,101,118,101,108,115,0,115,109,111,111,116,104,105,110,103,0,113,117,97,100,116,114,101,101,0,98,101,97,117,116,105,102,121,0,111,118,101,114,108,97,112,95,115,104,114,105,110,107,0,114,111,116,97,116,105,111,110,0,108,97,98,101,108,95,115,99,104,101,109,101,0,108,97,98,101,108,95,115,99,104,101,109,101,32,61,32,37,100,32,62,32,52,32,58,32,105,103,110,111,114,105,110,103,10,0,102,97,115,116,0,97,118,103,95,100,105,115,116,0,103,114,97,112,104,95,100,105,115,116,0,112,111,119,101,114,95,100,105,115,116,0,115,112,114,105,110,103,0,100,105,109,101,110,0,100,105,109,0,13,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,105,116,101,114,32,61,32,37,100,44,32,115,116,101,112,32,61,32,37,102,32,70,110,111,114,109,32,61,32,37,102,32,110,122,32,61,32,37,100,32,32,75,32,61,32,37,102,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,115,112,114,105,110,103,95,101,108,101,99,116,114,105,99,97,108,95,101,109,98,101,100,100,105,110,103,95,115,108,111,119,0,110,115,117,112,101,114,95,97,118,103,61,37,102,44,32,99,111,117,110,116,115,95,97,118,103,32,61,32,37,102,32,50,42,110,115,117,112,101,114,43,99,111,117,110,116,115,61,37,102,10,0,100,109,101,97,110,32,61,32,37,102,44,32,114,104,111,32,61,32,37,102,10,0,115,101,110,100,32,114,97,110,100,111,109,32,99,111,111,114,100,105,110,97,116,101,115,10,0,81,85,65,68,95,84,82,69,69,95,72,89,66,82,73,68,44,32,115,105,122,101,32,108,97,114,103,101,114,32,116,104,97,110,32,37,100,44,32,115,119,105,116,99,104,32,116,111,32,102,97,115,116,32,113,117,97,100,116,114,101,101,0,99,116,114,108,45,62,111,118,101,114,108,97,112,61,37,100,10,0,120,120,120,32,37,100,32,37,100,10,0,37,100,32,37,100,10,0,115,99,97,108,105,110,103,32,102,97,99,116,111,114,32,61,32,37,102,10,0,117,110,105,102,111,114,109,95,115,116,114,101,115,115,46,99,0,85,110,105,102,111,114,109,83,116,114,101,115,115,83,109,111,111,116,104,101,114,95,110,101,119,0,83,112,97,114,115,101,77,97,116,114,105,120,95,105,115,95,115,121,109,109,101,116,114,105,99,40,66,44,32,70,65,76,83,69,41,0,117,110,105,102,111,114,109,95,115,116,114,101,115,115,0,124,101,100,103,101,108,97,98,101,108,124,0,108,101,110,0,111,118,101,114,108,97,112,0,65,100,106,117,115,116,105,110,103,32,37,115,32,117,115,105,110,103,32,37,115,10,0,85,110,104,97,110,100,108,101,100,32,97,100,106,117,115,116,32,111,112,116,105,111,110,32,37,115,10,0,115,101,112,0,101,115,101,112,0,78,111,100,101,32,115,101,112,97,114,97,116,105,111,110,58,32,97,100,100,61,37,100,32,40,37,102,44,37,102,41,10,0,69,100,103,101,32,115,101,112,97,114,97,116,105,111,110,58,32,97,100,100,61,37,100,32,40,37,102,44,37,102,41,10,0,37,102,44,37,102,0,78,117,109,98,101,114,32,111,102,32,105,116,101,114,97,116,105,111,110,115,32,61,32,37,100,10,0,78,117,109,98,101,114,32,111,102,32,105,110,99,114,101,97,115,101,115,32,61,32,37,100,10,0,111,118,101,114,108,97,112,32,91,37,100,93,32,58,32,37,100,10,0,118,111,114,111,95,109,97,114,103,105,110,0,115,99,97,108,101,32,61,32,40,37,46,48,51,102,44,37,46,48,51,102,41,10,0,79,118,101,114,108,97,112,32,118,97,108,117,101,32,34,37,115,34,32,117,110,115,117,112,112,111,114,116,101,100,32,45,32,105,103,110,111,114,101,100,10,0,85,110,114,101,99,111,103,110,105,122,101,100,32,111,118,101,114,108,97,112,32,118,97,108,117,101,32,34,37,115,34,32,45,32,117,115,105,110,103,32,102,97,108,115,101,10,0,111,118,101,114,108,97,112,95,115,99,97,108,105,110,103,0,118,111,114,111,110,111,105,0,86,111,114,111,110,111,105,0,115,99,97,108,105,110,103,0,118,112,115,99,0,105,112,115,101,112,0,111,115,99,97,108,101,0,111,108,100,32,115,99,97,108,105,110,103,0,115,99,97,108,101,120,121,0,120,32,97,110,100,32,121,32,115,99,97,108,105,110,103,0,111,114,116,104,111,0,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,111,114,116,104,111,95,121,120,0,111,114,116,104,111,120,121,0,120,121,32,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,111,114,116,104,111,121,120,0,121,120,32,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,112,111,114,116,104,111,0,112,115,101,117,100,111,45,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,112,111,114,116,104,111,95,121,120,0,112,111,114,116,104,111,120,121,0,120,121,32,112,115,101,117,100,111,45,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,112,111,114,116,104,111,121,120,0,121,120,32,112,115,101,117,100,111,45,111,114,116,104,111,103,111,110,97,108,32,99,111,110,115,116,114,97,105,110,116,115,0,112,114,105,115,109,0,110,111,114,109,97,108,105,122,101,0,67,97,108,99,117,108,97,116,105,110,103,32,99,105,114,99,117,105,116,32,109,111,100,101,108,0,99,111,110,106,117,103,97,116,101,95,103,114,97,100,105,101,110,116,58,32,117,110,101,120,112,101,99,116,101,100,32,108,101,110,103,116,104,32,48,32,118,101,99,116,111,114,10,0,67,97,108,99,117,108,97,116,105,110,103,32,115,117,98,115,101,116,32,109,111,100,101,108,0,103,114,97,112,104,32,105,115,32,100,105,115,99,111,110,110,101,99,116,101,100,46,32,72,101,110,99,101,44,32,116,104,101,32,99,105,114,99,117,105,116,32,109,111,100,101,108,10,0,105,115,32,117,110,100,101,102,105,110,101,100,46,32,82,101,118,101,114,116,105,110,103,32,116,111,32,116,104,101,32,115,104,111,114,116,101,115,116,32,112,97,116,104,32,109,111,100,101,108,46,10,0,67,97,108,99,117,108,97,116,105,110,103,32,77,68,83,32,109,111,100,101,108,0,67,97,108,99,117,108,97,116,105,110,103,32,115,104,111,114,116,101,115,116,32,112,97,116,104,115,0,58,32,37,46,50,102,32,115,101,99,10,0,83,101,116,116,105,110,103,32,105,110,105,116,105,97,108,32,112,111,115,105,116,105,111,110,115,0,58,32,37,46,50,102,32,115,101,99,0,99,111,109,112,114,101,115,115,32,37,103,32,10,0,115,99,97,108,101,32,98,121,32,37,103,44,37,103,32,10,0,98,101,115,116,99,111,115,116,32,60,32,72,85,71,69,95,86,65,76,0,99,111,110,115,116,114,97,105,110,116,46,99,0,99,111,109,112,117,116,101,83,99,97,108,101,88,89,0,99,103,0,100,101,108,116,97,32,60,61,32,48,120,70,70,70,70,0,109,107,78,67,111,110,115,116,114,97,105,110,116,71,0,118,103,0,100,101,108,97,117,110,97,121,95,116,114,105,97,110,103,117,108,97,116,105,111,110,58,32,37,115,10,0,100,101,108,97,117,110,97,121,95,116,114,105,58,32,37,115,10,0,71,114,97,112,104,118,105,122,32,98,117,105,108,116,32,119,105,116,104,111,117,116,32,97,110,121,32,116,114,105,97,110,103,117,108,97,116,105,111,110,32,108,105,98,114,97,114,121,10,0,116,114,121,105,110,103,32,116,111,32,100,101,108,101,116,101,32,97,32,110,111,110,45,108,105,110,101,10,0,10,105,110,116,101,114,115,101,99,116,105,111,110,32,97,116,32,37,46,51,102,32,37,46,51,102,10,0,115,101,103,35,37,100,32,58,32,40,37,46,51,102,44,32,37,46,51,102,41,32,40,37,46,51,102,44,32,37,46,51,102,41,10,0,114,101,109,111,118,101,95,111,118,101,114,108,97,112,58,32,71,114,97,112,104,118,105,122,32,110,111,116,32,98,117,105,108,116,32,119,105,116,104,32,116,114,105,97,110,103,117,108,97,116,105,111,110,32,108,105,98,114,97,114,121,10,0,109,97,107,101,65,100,100,80,111,108,121,58,32,117,110,107,110,111,119,110,32,115,104,97,112,101,32,116,121,112,101,32,37,115,10,0,109,97,107,101,80,111,108,121,58,32,117,110,107,110,111,119,110,32,115,104,97,112,101,32,116,121,112,101,32,37,115,10,0,120,33,61,78,85,76,76,0,115,109,97,114,116,95,105,110,105,95,120,46,99,0,73,77,68,83,95,103,105,118,101,110,95,100,105,109,0,105,108,108,45,99,111,110,100,105,116,105,111,110,101,100,10,0,116,119,111,112,105,58,32,117,115,101,32,111,102,32,119,101,105,103,104,116,61,48,32,99,114,101,97,116,101,115,32,100,105,115,99,111,110,110,101,99,116,101,100,32,99,111,109,112,111,110,101,110,116,46,10,0,82,97,110,107,32,115,101,112,97,114,97,116,105,111,110,32,61,32,0,37,46,48,51,108,102,32,0,97,114,101,97,0,105,110,115,101,116,0,37,115,32,99,111,111,114,100,32,37,46,53,103,32,37,46,53,103,32,104,116,32,37,102,32,119,105,100,116,104,32,37,102,10,0,37,46,48,51,102,0,114,101,99,32,37,102,32,37,102,32,37,102,32,37,102,10,0,37,102,32,45,32,37,102,32,37,102,32,37,102,32,37,102,32,61,32,37,102,32,40,37,102,32,37,102,32,37,102,32,37,102,41,10,0,116,114,121,105,110,103,32,116,111,32,97,100,100,32,116,111,32,114,101,99,116,32,123,37,102,32,43,47,45,32,37,102,44,32,37,102,32,43,47,45,32,37,102,125,10,0,116,111,116,97,108,32,97,100,100,101,100,32,115,111,32,102,97,114,32,61,32,37,100,10,0,97,100,100,105,110,103,32,37,100,32,105,116,101,109,115,44,32,116,111,116,97,108,32,97,114,101,97,32,61,32,37,102,44,32,119,32,61,32,37,102,44,32,97,114,101,97,47,119,61,37,102,10,0,99,111,109,112,111,117,110,100,69,100,103,101,115,58,32,99,111,117,108,100,32,110,111,116,32,99,111,110,115,116,114,117,99,116,32,111,98,115,116,97,99,108,101,115,32,45,32,102,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,116,114,97,105,103,104,116,32,108,105,110,101,32,101,100,103,101,115,10,0,110,111,100,101,115,32,116,111,117,99,104,32,45,32,102,97,108,108,105,110,103,32,98,97,99,107,32,116,111,32,115,116,114,97,105,103,104,116,32,108,105,110,101,32,101,100,103,101,115,10,0,99,99,37,115,95,37,100,0,99,99,37,115,43,37,100,0,99,95,99,110,116,32,61,61,32,48,0,99,111,109,112,46,99,0,102,105,110,100,67,67,111,109,112,0,103,114,105,100,40,37,100,44,37,100,41,58,32,37,115,10,0,119,105,100,116,104,32,62,32,48,0,81,117,97,100,84,114,101,101,46,99,0,81,117,97,100,84,114,101,101,95,110,101,119,0,33,40,113,45,62,108,41,0,81,117,97,100,84,114,101,101,95,97,100,100,95,105,110,116,101,114,110,97,108,0,105,105,32,60,32,49,60,60,100,105,109,32,38,38,32,105,105,32,62,61,32,48,0,113,45,62,113,116,115,91,105,105,93,0,113,45,62,110,32,61,61,32,49,0,33,40,113,45,62,113,116,115,41,0,113,45,62,108,0,119,103,116,32,62,32,48,0,81,117,97,100,84,114,101,101,95,114,101,112,117,108,115,105,118,101,95,102,111,114,99,101,95,97,99,99,117,109,117,108,97,116,101,0,113,116,50,45,62,110,32,62,32,48,0,113,116,49,45,62,110,32,62,32,48,32,38,38,32,113,116,50,45,62,110,32,62,32,48,0,81,117,97,100,84,114,101,101,95,114,101,112,117,108,115,105,118,101,95,102,111,114,99,101,95,105,110,116,101,114,97,99,116,0,100,105,115,116,32,62,32,48,0,65,45,62,102,111,114,109,97,116,32,61,61,32,70,79,82,77,65,84,95,67,83,82,0,83,112,97,114,115,101,77,97,116,114,105,120,46,99,0,83,112,97,114,115,101,77,97,116,114,105,120,95,116,114,97,110,115,112,111,115,101,0,83,112,97,114,115,101,77,97,116,114,105,120,95,105,115,95,115,121,109,109,101,116,114,105,99,0,65,32,38,38,32,66,0,83,112,97,114,115,101,77,97,116,114,105,120,95,97,100,100,0,65,45,62,102,111,114,109,97,116,32,61,61,32,66,45,62,102,111,114,109,97,116,32,38,38,32,65,45,62,102,111,114,109,97,116,32,61,61,32,70,79,82,77,65,84,95,67,83,82,0,65,45,62,116,121,112,101,32,61,61,32,66,45,62,116,121,112,101,0,65,45,62,102,111,114,109,97,116,32,61,61,32,70,79,82,77,65,84,95,67,79,79,82,68,0,83,112,97,114,115,101,77,97,116,114,105,120,95,102,114,111,109,95,99,111,111,114,100,105,110,97,116,101,95,102,111,114,109,97,116,0,83,112,97,114,115,101,77,97,116,114,105,120,95,109,117,108,116,105,112,108,121,95,118,101,99,116,111,114,0,65,45,62,116,121,112,101,32,61,61,32,77,65,84,82,73,88,95,84,89,80,69,95,82,69,65,76,32,124,124,32,65,45,62,116,121,112,101,32,61,61,32,77,65,84,82,73,88,95,84,89,80,69,95,73,78,84,69,71,69,82,0,65,45,62,116,121,112,101,32,61,61,32,77,65,84,82,73,88,95,84,89,80,69,95,82,69,65,76,0,83,112,97,114,115,101,77,97,116,114,105,120,95,109,117,108,116,105,112,108,121,0,106,99,91,109,97,115,107,91,106,98,91,107,93,93,93,32,61,61,32,106,98,91,107,93,0,83,112,97,114,115,101,77,97,116,114,105,120,95,109,117,108,116,105,112,108,121,51,0,106,100,91,109,97,115,107,91,106,99,91,107,93,93,93,32,61,61,32,106,99,91,107,93,0,106,97,91,109,97,115,107,91,106,97,91,106,93,93,93,32,61,61,32,106,97,91,106,93,0,83,112,97,114,115,101,77,97,116,114,105,120,95,115,117,109,95,114,101,112,101,97,116,95,101,110,116,114,105,101,115,0,105,100,32,60,32,110,42,40,121,109,97,120,45,121,109,105,110,43,49,41,0,106,97,91,109,97,115],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+122462);allocate([107,91,105,100,93,93,32,61,61,32,106,97,91,106,93,0,83,112,97,114,115,101,77,97,116,114,105,120,95,99,111,111,114,100,105,110,97,116,101,95,102,111,114,109,95,97,100,100,95,101,110,116,114,105,101,115,0,83,112,97,114,115,101,77,97,116,114,105,120,95,100,105,118,105,100,101,95,114,111,119,95,98,121,95,100,101,103,114,101,101,0,114,111,111,116,32,62,61,32,48,32,38,38,32,114,111,111,116,32,60,32,109,0,83,112,97,114,115,101,77,97,116,114,105,120,95,108,101,118,101,108,95,115,101,116,115,95,105,110,116,101,114,110,97,108,0,109,32,61,61,32,65,45,62,110,0,83,112,97,114,115,101,77,97,116,114,105,120,95,105,115,95,115,121,109,109,101,116,114,105,99,40,65,44,32,84,82,85,69,41,0,109,32,61,61,32,110,0,83,112,97,114,115,101,77,97,116,114,105,120,95,100,105,115,116,97,110,99,101,95,109,97,116,114,105,120,95,107,104,111,112,115,0,110,108,101,118,101,108,45,49,32,60,61,32,107,104,111,112,115,0,109,97,115,107,91,108,101,118,101,108,115,101,116,91,106,93,93,32,61,61,32,105,43,49,0,68,105,106,107,115,116,114,97,95,105,110,116,101,114,110,97,108,0,104,0,104,101,97,112,95,105,100,115,91,114,111,111,116,93,32,62,61,32,48,0,110,100,97,116,97,45,62,105,100,32,61,61,32,106,106,0,83,112,97,114,115,101,77,97,116,114,105,120,95,109,117,108,116,105,112,108,121,95,100,101,110,115,101,50,0,83,112,97,114,115,101,77,97,116,114,105,120,95,109,117,108,116,105,112,108,121,95,100,101,110,115,101,49,0,109,32,62,32,48,32,38,38,32,110,32,62,32,48,32,38,38,32,110,122,32,62,61,32,48,0,83,112,97,114,115,101,77,97,116,114,105,120,95,102,114,111,109,95,99,111,111,114,100,105,110,97,116,101,95,97,114,114,97,121,115,95,105,110,116,101,114,110,97,108,0,65,0,110,32,62,32,49,0,103,101,110,101,114,97,108,46,99,0,105,114,97,110,100,0,111,110,101,98,108,111,99,107,0,109,105,110,100,105,115,116,0,97,114,116,105,99,117,108,97,116,105,111,110,95,112,111,115,0,114,111,111,116,0,80,114,105,111,114,105,116,121,81,117,101,117,101,46,99,0,80,114,105,111,114,105,116,121,81,117,101,117,101,95,112,117,115,104,0,103,97,105,110,32,60,61,32,113,45,62,110,103,97,105,110,0,83,112,97,114,115,101,77,97,116,114,105,120,95,105,115,95,115,121,109,109,101,116,114,105,99,40,65,44,32,70,65,76,83,69,41,0,112,111,115,116,95,112,114,111,99,101,115,115,46,99,0,105,100,101,97,108,95,100,105,115,116,97,110,99,101,95,109,97,116,114,105,120,0,108,101,110,32,62,32,48,0,83,116,114,101,115,115,77,97,106,111,114,105,122,97,116,105,111,110,83,109,111,111,116,104,101,114,50,95,110,101,119,0,110,122,32,62,32,48,0,105,100,101,97,108,95,100,105,115,116,95,115,99,104,101,109,101,32,118,97,108,117,101,32,119,114,111,110,103,0,83,112,97,114,115,101,77,97,116,114,105,120,95,105,115,95,115,121,109,109,101,116,114,105,99,40,65,44,32,70,65,76,83,69,41,32,38,38,32,65,45,62,116,121,112,101,32,61,61,32,77,65,84,82,73,88,95,84,89,80,69,95,82,69,65,76,0,83,112,97,114,115,101,83,116,114,101,115,115,77,97,106,111,114,105,122,97,116,105,111,110,83,109,111,111,116,104,101,114,95,110,101,119,0,105,100,105,97,103,32,62,61,32,48,0,83,116,114,101,115,115,77,97,106,111,114,105,122,97,116,105,111,110,83,109,111,111,116,104,101,114,95,115,109,111,111,116,104,0,84,114,105,97,110,103,108,101,83,109,111,111,116,104,101,114,95,110,101,119,0,106,100,105,97,103,32,62,61,32,48,0,83,112,114,105,110,103,83,109,111,111,116,104,101,114,95,110,101,119,0,33,102,108,97,103,0,83,112,114,105,110,103,83,109,111,111,116,104,101,114,95,115,109,111,111,116,104,0,40,33,106,99,110,41,32,38,38,32,40,33,118,97,108,41,0,103,101,116,95,101,100,103,101,95,108,97,98,101,108,95,109,97,116,114,105,120,0,110,101,105,103,104,98,61,37,100,10,0,104,45,62,105,100,95,116,111,95,112,111,115,91,105,100,93,32,61,61,32,112,111,115,0,66,105,110,97,114,121,72,101,97,112,46,99,0,66,105,110,97,114,121,72,101,97,112,95,105,110,115,101,114,116,0,104,45,62,112,111,115,95,116,111,95,105,100,91,112,111,115,93,32,61,61,32,105,100,0,112,111,115,32,60,32,104,45,62,108,101,110,0,66,105,110,97,114,121,72,101,97,112,95,101,120,116,114,97,99,116,95,105,116,101,109,0,112,97,114,101,110,116,80,111,115,32,60,32,104,45,62,108,101,110,0,115,119,97,112,0,110,111,100,101,80,111,115,32,60,32,104,45,62,108,101,110,0,114,111,111,116,32,61,32,37,115,10,0,95,98,108,111,99,107,95,37,100,0,115,45,62,115,122,32,62,32,48,0,98,108,111,99,107,116,114,101,101,46,99,0,112,111,112,0,97,99,116,117,97,108,0,110,111,100,101,108,105,115,116,46,99,0,105,110,115,101,114,116,78,111,100,101,108,105,115,116,0,95,115,112,97,110,95,37,100,0,95,99,108,111,110,101,95,37,100,0,105,112,0,100,101,103,108,105,115,116,46,99,0,114,101,109,111,118,101,68,101,103,108,105,115,116,0,10,64,40,35,41,36,73,100,36,0,10,0,69,114,114,111,114,0,87,97,114,110,105,110,103,0,37,115,58,32,0,117,115,101,114,111,117,116,58,32,99,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,10,0,95,65,71,95,100,97,116,97,100,105,99,116,0,97,103,100,105,99,116,111,102,58,32,117,110,107,110,111,119,110,32,107,105,110,100,32,37,100,10,0,95,65,71,95,115,116,114,100,97,116,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,99,37,108,100,0,109,101,109,111,114,121,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,117,114,101,0,97,103,100,101,108,101,116,101,32,111,110,32,119,114,111,110,103,32,103,114,97,112,104,0,95,65,71,95,112,101,110,100,105,110,103,0,97,103,114,101,99,111,114,100,95,99,97,108,108,98,97,99,107,32,111,102,32,97,32,98,97,100,32,111,98,106,101,99,116,0,112,101,110,100,32,100,105,99,116,111,102,32,97,32,98,97,100,32,111,98,106,101,99,116,0,109,111,118,101,32,116,111,32,102,114,111,110,116,32,108,111,99,107,32,105,110,99,111,110,115,105,115,116,101,110,99,121,0,0,92,92,0,102,97,116,97,108,32,102,108,101,120,32,115,99,97,110,110,101,114,32,105,110,116,101,114,110,97,108,32,101,114,114,111,114,45,45,110,111,32,97,99,116,105,111,110,32,102,111,117,110,100,0,111,117,116,32,111,102,32,100,121,110,97,109,105,99,32,109,101,109,111,114,121,32,105,110,32,97,97,103,95,99,114,101,97,116,101,95,98,117,102,102,101,114,40,41,0,58,32,0,32,105,110,32,108,105,110,101,32,37,100,32,110,101,97,114,32,39,0,39,10,0,102,108,101,120,32,115,99,97,110,110,101,114,32,112,117,115,104,45,98,97,99,107,32,111,118,101,114,102,108,111,119,0,37,115,10,0,102,97,116,97,108,32,102,108,101,120,32,115,99,97,110,110,101,114,32,105,110,116,101,114,110,97,108,32,101,114,114,111,114,45,45,101,110,100,32,111,102,32,98,117,102,102,101,114,32,109,105,115,115,101,100,0,102,97,116,97,108,32,101,114,114,111,114,32,45,32,115,99,97,110,110,101,114,32,105,110,112,117,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,0,105,110,112,117,116,32,105,110,32,102,108,101,120,32,115,99,97,110,110,101,114,32,102,97,105,108,101,100,0,111,117,116,32,111,102,32,100,121,110,97,109,105,99,32,109,101,109,111,114,121,32,105,110,32,97,97,103,95,103,101,116,95,110,101,120,116,95,98,117,102,102,101,114,40,41,0,105,110,112,117,116,0,115,121,110,116,97,120,32,97,109,98,105,103,117,105,116,121,32,45,32,98,97,100,108,121,32,100,101,108,105,109,105,116,101,100,32,110,117,109,98,101,114,32,39,0,39,32,105,110,32,108,105,110,101,32,37,100,32,111,102,32,0,32,115,112,108,105,116,115,32,105,110,116,111,32,116,119,111,32,116,111,107,101,110,115,10,0,108,105,110,101,0,37,100,32,37,49,91,34,93,37,110,0,111,117,116,32,111,102,32,100,121,110,97,109,105,99,32,109,101,109,111,114,121,32,105,110,32,97,97,103,101,110,115,117,114,101,95,98,117,102,102,101,114,95,115,116,97,99,107,40,41,0,108,105,110,101,108,101,110,103,116,104,0,59,10,0,32,91,107,101,121,61,0,93,0,32,91,0,44,10,0,61,0,95,37,108,100,95,83,85,83,80,69,67,84,0,0,100,105,0,115,116,114,105,99,116,32,0,123,10,0,93,59,10,0,34,34,0,115,116,114,105,99,116,0,18,238,238,20,9,3,238,254,238,238,238,1,238,238,238,1,238,238,10,254,238,19,25,21,238,19,1,238,238,238,238,11,17,238,238,238,238,238,238,238,238,238,1,238,238,22,9,1,1,29,15,23,238,238,26,23,27,238,238,28,238,238,238,238,1,25,251,238,238,238,1,238,16,238,238,30,238,238,238,238,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,23,17,2,2,2,2,2,2,2,2,2,2,2,2,2,18,16,2,19,2,2,22,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,20,2,21,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,14,2,15,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,3,4,5,6,7,8,9,10,11,12,13,11,3,4,5,15,7,3,12,13,6,12,13,14,12,13,26,21,22,0,1,0,3,7,14,6,15,8,12,13,18,19,42,16,17,9,16,47,48,17,50,23,19,13,20,18,46,18,20,65,19,50,19,44,64,42,66,25,44,66,70,34,12,13,14,35,15,9,16,17,10,16,17,201,16,17,45,69,70,252,1,6,246,15,7,246,36,2,16,17,47,48,54,77,78,40,38,59,60,42,54,49,57,61,63,47,58,64,216,68,48,62,37,55,67,53,75,43,56,73,76,0,3,9,0,0,0,1,14,2,11,12,8,35,36,37,54,59,61,0,13,16,18,27,22,28,18,39,50,34,23,51,30,60,6,7,53,5,15,17,20,24,41,0,19,41,0,0,0,0,0,55,21,40,29,30,0,33,38,52,31,48,62,25,44,0,27,0,32,26,42,0,43,58,46,47,0,49,56,57,45,0,2,2,1,0,3,3,1,0,1,0,1,1,1,0,2,1,1,0,2,2,3,1,1,0,0,5,0,1,3,1,3,5,3,1,1,1,1,2,0,1,0,4,2,0,2,1,1,3,2,1,0,3,2,1,0,1,1,0,1,1,1,3,0,24,25,25,25,26,27,28,28,29,29,30,30,31,31,32,32,33,33,34,34,35,36,36,38,39,37,37,40,40,41,41,41,42,42,43,43,43,44,44,45,45,46,47,47,48,49,49,50,51,52,54,53,55,55,55,56,56,56,57,57,58,58,238,238,255,238,238,238,238,238,238,31,32,238,0,239,238,238,238,12,238,238,238,8,13,238,238,238,248,238,238,238,238,238,238,245,238,255,3,8,4,33,5,11,18,19,39,20,21,22,41,50,65,23,24,25,26,44,51,52,66,71,72,27,74,28,29,46,30,79,31,32,0,1,8,25,27,29,0,14,26,3,6,30,3,4,5,7,12,13,31,32,34,35,36,40,41,42,43,50,52,53,55,57,58,28,57,57,15,34,16,33,9,37,17,33,44,57,54,18,19,23,38,45,46,41,57,45,46,19,26,57,57,13,36,20,18,39,47,57,37,21,22,48,49,50,51,57,57,16,17,56,107,101,121,0,97,116,116,114,105,98,117,116,101,32,109,97,99,114,111,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,37,115,58,37,115,0,67,111,117,108,100,32,110,111,116,32,111,112,101,110,32,34,37,115,34,32,102,111,114,32,119,114,105,116,105,110,103,32,58,32,37,115,10,0,78,111,32,108,105,98,122,32,115,117,112,112,111,114,116,46,10,0,103,118,119,114,105,116,101,95,110,111,95,122,32,112,114,111,98,108,101,109,32,37,100,10,0,78,111,32,108,105,98,122,32,115,117,112,112,111,114,116,10,0,103,118,112,114,105,110,116,102,58,32,37,115,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,46,57,57,0,109,101,109,111,114,121,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,117,114,101,10,0,46,37,100,0,110,111,110,97,109,101,46,103,118,0,100,121,110,97,109,105,99,32,108,111,97,100,105,110,103,32,110,111,116,32,97,118,97,105,108,97,98,108,101,10,0,60,98,117,105,108,116,105,110,62,0,65,99,116,105,118,97,116,101,100,32,112,108,117,103,105,110,32,108,105,98,114,97,114,121,58,32,37,115,10,0,85,115,105,110,103,32,37,115,58,32,37,115,58,37,115,10,0,114,101,110,100,101,114,0,108,97,121,111,117,116,0,100,101,118,105,99,101,0,108,111,97,100,105,109,97,103,101,0,103,118,117,115,101,114,115,104,97,112,101,46,99,0,103,118,117,115,101,114,115,104,97,112,101,95,102,105,110,100,0,103,118,117,115,101,114,115,104,97,112,101,95,102,105,108,101,95,97,99,99,101,115,115,0,70,105,108,101,110,97,109,101,32,34,37,115,34,32,105,115,32,117,110,115,97,102,101,10,0,37,115,32,119,104,105,108,101,32,111,112,101,110,105,110,103,32,37,115,10,0,117,115,45,62,102,0,103,118,117,115,101,114,115,104,97,112,101,95,111,112,101,110,0,34,37,115,34,32,119,97,115,32,110,111,116,32,102,111,117,110,100,32,97,115,32,97,32,102,105,108,101,32,111,114,32,97,115,32,97,32,115,104,97,112,101,32,108,105,98,114,97,114,121,32,109,101,109,98,101,114,10,0,47,77,101,100,105,97,66,111,120,0,99,97,110,110,111,116,32,99,111,109,112,105,108,101,32,114,101,103,117,108,97,114,32,101,120,112,114,101,115,115,105,111,110,32,37,115,0,37,108,102,37,50,115,0,112,116,0,118,105,101,119,66,111,120,0,37,108,102,32,37,108,102,32,37,108,102,32,37,108,102,0,105,110,0,112,120,0,112,99,0,34,0,99,109,0,109,109,0,40,91,97,45,122,93,91,97,45,122,65,45,90,93,42,41,61,34,40,91,94,34,93,42,41,34,0,37,37,66,111,117,110,100,105,110,103,66,111,120,58,0,1,208,209,210,211,212,213,214,215,216,217,0,60,115,118,103,0,87,69,66,80,0,119,101,98,112,0,40,108,105,98,41,0,137,80,78,71,13,10,26,10,0,112,110,103,0,37,33,80,83,45,65,100,111,98,101,45,0,66,77,0,98,109,112,0,71,73,70,56,0,103,105,102,0,255,216,255,224,0,106,112,101,103,0,37,80,68,70,45,0,112,100,102,0,197,208,211,198,0,101,112,115,0,60,63,120,109,108,0,120,109,108,0,82,73,70,70,0,114,105,102,102,0,0,0,1,0,0,105,99,111,0,76,97,121,111,117,116,32,116,121,112,101,58,32,34,37,115,34,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,46,32,85,115,101,32,111,110,101,32,111,102,58,37,115,10,0,37,100,32,37,100,32,37,100,32,37,100,0,70,111,114,109,97,116,58,32,34,37,115,34,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,46,32,85,115,101,32,111,110,101,32,111,102,58,37,115,10,0,76,97,121,111,117,116,32,119,97,115,32,110,111,116,32,100,111,110,101,10,0,102,97,105,108,117,114,101,32,109,97,108,108,111,99,39,105,110,103,32,102,111,114,32,114,101,115,117,108,116,32,115,116,114,105,110,103,0,99,99,103,114,97,112,104,105,110,102,111,0,99,99,103,110,111,100,101,105,110,102,111,0,40,37,52,108,100,41,32,37,55,108,100,32,110,111,100,101,115,32,37,55,108,100,32,101,100,103,101,115,10,0,32,32,32,32,32,32,32,37,55,100,32,110,111,100,101,115,32,37,55,100,32,101,100,103,101,115,32,37,55,108,100,32,99,111,109,112,111,110,101,110,116,115,32,37,115,10,0,100,103,0,69,114,114,111,114,58,32,110,111,100,101,32,34,37,115,34,32,98,101,108,111,110,103,115,32,116,111,32,116,119,111,32,110,111,110,45,110,101,115,116,101,100,32,99,108,117,115,116,101,114,115,32,34,37,115,34,32,97,110,100,32,34,37,115,34,10,0,103,99,58,32,79,117,116,32,111,102,32,109,101,109,111,114,121,10,0,95,99,99,95,0,115,111,114,116,118,0,112,105,110,102,111,0,112,97,99,107,46,99,0,103,101,116,80,97,99,107,73,110,102,111,0,32,32,109,97,114,103,105,110,32,37,100,10,0,112,97,114,115,101,80,97,99,107,77,111,100,101,73,110,102,111,0,97,114,114,97,121,0,97,115,112,101,99,116,0,37,102,0,112,97,99,107,32,105,110,102,111,58,10,0,32,32,109,111,100,101,32,32,32,37,115,10,0,32,32,97,115,112,101,99,116,32,37,102,10,0,32,32,115,105,122,101,32,32,32,37,100,10,0,32,32,102,108,97,103,115,32,32,37,100,10,0,112,97,99,107,109,111,100,101,0,112,97,99,107,0,117,110,100,101,102,105,110,101,100,0,115,116,101,112,32,115,105,122,101,32,61,32,37,100,10,0,112,111,115,91,37,100,93,32,37,100,32,37,100,10,0,99,99,32,40,37,100,32,99,101,108,108,115,41,32,97,116,32,40,37,100,44,37,100,41,32,40,37,100,44,37,100,41,10,0,37,115,32,110,111,46,32,99,101,108,108,115,32,37,100,32,87,32,37,100,32,72,32,37,100,10,0,32,32,37,100,32,37,100,32,99,101,108,108,10,0,108,105,98,112,97,99,107,58,32,100,105,115,99,32,61,32,37,102,32,40,32,60,32,48,41,10,0,80,97,99,107,105,110,103,58,32,99,111,109,112,117,116,101,32,103,114,105,100,32,115,105,122,101,10,0,97,32,37,102,32,98,32,37,102,32,99,32,37,102,32,100,32,37,102,32,114,32,37,102,10,0,114,111,111,116,32,37,100,32,40,37,102,41,32,37,100,32,40,37,102,41,10,0,32,114,49,32,37,102,32,114,50,32,37,102,10,0,114,111,119,32,109,97,106,111,114,0,99,111,108,117,109,110,32,109,97,106,111,114,0,97,114,114,97,121,32,112,97,99,107,105,110,103,58,32,37,115,32,37,100,32,114,111,119,115,32,37,100,32,99,111,108,117,109,110,115,10,0,98,98,91,37,115,93,32,37,46,53,103,32,37,46,53,103,32,37,46,53,103,32,37,46,53,103,10,0,99,99,32,40,37,100,32,99,101,108,108,115,41,32,97,116,32,40,37,100,44,37,100,41,10,0,65,114,114,111,119,32,116,121,112,101,32,34,37,115,34,32,117,110,107,110,111,119,110,32,45,32,105,103,110,111,114,105,110,103,10,0,110,111,114,109,97,108,0,99,114,111,119,0,116,101,101,0,100,111,116,0,105,110,118,0,118,101,101,0,112,101,110,0,109,112,116,121,0,99,117,114,118,101,0,108,0,104,97,108,102,0,105,110,118,101,109,112,116,121,0,95,98,97,99,107,103,114,111,117,110,100,0,95,100,114,97,119,95,0,67,111,117,108,100,32,110,111,116,32,112,97,114,115,101,32,34,95,98,97,99,107,103,114,111,117,110,100,34,32,97,116,116,114,105,98,117,116,101,32,105,110,32,103,114,97,112,104,32,37,115,10,0,32,32,34,37,115,34,10,0,110,111,32,109,101,109,111,114,121,32,102,114,111,109,32,122,109,97,108,108,111,99,40,41,10,0,111,98,106,0,101,109,105,116,46,99,0,112,111,112,95,111,98,106,95,115,116,97,116,101,0,99,108,117,115,116,0,37,108,100,0,108,110,114,99,111,108,111,114,115,99,104,101,109,101,0,105,110,32,99,108,117,115,116,101,114,32,37,115,10,0,77,111,114,101,32,116,104,97,110,32,50,32,99,111,108,111,114,115,32,115,112,101,99,105,102,105,101,100,32,102,111,114,32,97,32,103,114,97,100,105,101,110,116,32,45,32,105,103,110,111,114,105,110,103,32,114,101,109,97,105,110,105,110,103,10,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,101,115,116,105,110,103,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,115,116,121,108,101,58,32,37,115,10,0,117,110,109,97,116,99,104,101,100,32,39,41,39,32,105,110,32,115,116,121,108,101,58,32,37,115,10,0,116,114,117,110,99,97,116,105,110,103,32,115,116,121,108,101,32,39,37,115,39,10,0,117,110,109,97,116,99,104,101,100,32,39,40,39,32,105,110,32,115,116,121,108,101,58,32,37,115,10,0,67,0,76,97,121,111,117,116,32,119,97,115,32,110,111,116,32,100,111,110,101,46,32,32,77,105,115,115,105,110,103,32,108,97,121,111,117,116,32,112,108,117,103,105,110,115,63,32,10,0,103,118,82,101,110,100,101,114,74,111,98,115,32,37,115,58,32,37,46,50,102,32,115,101,99,115,46,10,0,108,97,121,111,117,116,32,119,97,115,32,110,111,116,32,100,111,110,101,10,0,114,101,110,100,101,114,101,114,32,102,111,114,32,37,115,32,105,115,32,117,110,97,118,97,105,108,97,98,108,101,10,0,112,97,103,101,100,105,114,61,37,115,32,105,103,110,111,114,101,100,10,0,118,105,101,119,112,111,114,116,0,37,108,102,44,37,108,102,44,37,108,102,44,39,37,91,94,39,93,39,0,37,108,102,44,37,108,102,44,37,108,102,44,37,91,94,44,93,37,115,0,37,108,102,44,37,108,102,44,37,108,102,44,37,108,102,44,37,108,102,0,111,117,116,112,117,116,111,114,100,101,114,0,111,100,101,115,102,105,114,115,116,0,100,103,101,115,102,105,114,115,116,0,108,97,121,101,114,115,0,108,97,121,101,114,115,101,108,101,99,116,0,84,104,101,32,108,97,121,101,114,115,101,108,101,99,116,32,97,116,116,114,105,98,117,116,101,32,34,37,115,34,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,97,110,121,32,108,97,121,101,114,32,115,112,101,99,105,102,101,100,32,98,121,32,116,104,101,32,108,97,121,101,114,115,32,97,116,116,114,105,98,117,116,101,32,45,32,105,103,110,111,114,101,100,46,10,0,97,108,108,0,108,97,121,101,114,115,101,112,0,58,9,32,0,108,97,121,101,114,108,105,115,116,115,101,112,0,44,0,84,104,101,32,99,104,97,114,97,99,116,101,114,32,39,37,99,39,32,97,112,112,101,97,114,115,32,105,110,32,98,111,116,104,32,116,104,101,32,108,97,121,101,114,115,101,112,32,97,110,100,32,108,97,121,101,114,108,105,115,116,115,101,112,32,97,116,116,114,105,98,117,116,101,115,32,45,32,108,97,121,101,114,108,105,115,116,115,101,112,32,105,103,110,111,114,101,100,46,10,0,112,97,100,0,66,76,0,112,97,103,101,100,105,114,0,115,111,108,105,100,0,0,115,101,116,108,105,110,101,119,105,100,116,104,0,49,0,0,115,112,108,45,62,115,105,122,101,32,62,32,48,0,105,110,105,116,95,115,112,108,105,110,101,115,95,98,98,0,98,122,46,115,105,122,101,32,62,32,48,0,98,101,122,105,101,114,95,98,98,0,98,122,46,115,105,122,101,32,37,32,51,32,61,61,32,49,0,101,109,105,116,95,101,100,103,101,95,108,97,98,101,108,0,37,115,45,37,115,0,102,111,114,119,97,114,100,0,98,97,99,107,0,32,45,62,32,0,32,45,45,32,0,105,110,32,101,100,103,101,32,37,115,37,115,37,115,10,0,101,100,103,101,104,114,101,102,0,101,100,103,101,85,82,76,0,108,97,98,101,108,104,114,101,102,0,108,97,98,101,108,85,82,76,0,116,97,105,108,104,114,101,102,0,116,97,105,108,85,82,76,0,104,101,97,100,104,114,101,102,0,104,101,97,100,85,82,76,0,101,100,103,101,116,97,114,103,101,116,0,108,97,98,101,108,116,97,114,103,101,116,0,116,97,105,108,116,97,114,103,101,116,0,104,101,97,100,116,97,114,103,101,116,0,101,100,103,101,116,111,111,108,116,105,112,0,108,97,98,101,108,116,111,111,108,116,105,112,0,116,97,105,108,116,111,111,108,116,105,112,0,104,101,97,100,116,111,111,108,116,105,112,0,103,114,97,100,105,101,110,116,32,112,101,110,32,99,111,108,111,114,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,46,10,0,73,109,97,103,101,115,32,117,110,115,117,112,112,111,114,116,101,100,32,105,110,32,34,98,97,99,107,103,114,111,117,110,100,34,32,97,116,116,114,105,98,117,116,101,10,0,108,97,121,101,114,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,105,110,32,37,115,32,111,117,116,112,117,116,10,0,84,111,116,97,108,32,115,105,122,101,32,62,32,49,32,105,110,32,34,37,115,34,32,99,111,108,111,114,32,115,112,101,99,32,0,73,108,108,101,103,97,108,32,108,101,110,103,116,104,32,118,97,108,117,101,32,105,110,32,34,37,115,34,32,99,111,108,111,114,32,97,116,116,114,105,98,117,116,101,32,0,112,97,103,101,37,100,44,37,100,95,0,0,0,0,37,108,102,0,102,111,110,116,112,97,116,104,0,68,79,84,70,79,78,84,80,65,84,72,0,71,68,70,79,78,84,80,65,84,72,0,105,109,97,103,101,112,97,116,104,0,113,117,97,110,116,117,109,0,114,97,110,107,100,105,114,0,76,82,0,66,84,0,82,76,0,110,111,100,101,115,101,112,0,114,97,110,107,115,101,112,0,101,113,117,97,108,108,121,0,115,104,111,119,98,111,120,101,115,0,102,111,110,116,110,97,109,101,115,0,115,105,122,101,0,112,97,103,101,0,99,101,110,116,101,114,0,114,111,116,97,116,101,0,111,114,105,101,110,116,97,116,105,111,110,0,108,97,110,100,115,99,97,112,101,0,99,108,117,115,116,101,114,114,97,110,107,0,99,111,110,99,101,110,116,114,97,116,101,0,100,112,105,0,114,101,115,111,108,117,116,105,111,110,0,111,114,100,101,114,105,110,103,0,102,105,108,108,99,111,108,111,114,0,102,111,110,116,115,105,122,101,0,102,111,110,116,110,97,109,101,0,102,111,110,116,99,111,108,111,114,0,120,108,97,98,101,108,0,112,101,110,119,105,100,116,104,0,112,101,114,105,112,104,101,114,105,101,115,0,115,107,101,119,0,100,105,115,116,111,114,116,105,111,110,0,110,111,106,117,115,116,105,102,121,0,108,97,121,101,114,0,103,114,111,117,112,0,99,111,109,109,101,110,116,0,118,101,114,116,105,99,101,115,0,122,0,119,101,105,103,104,116,0,108,97,98,101,108,102,108,111,97,116,0,100,105,114,0,97,114,114,111,119,104,101,97,100,0,97,114,114,111,119,116,97,105,108,0,104,101,97,100,108,97,98,101,108,0,116,97,105,108,108,97,98,101,108,0,108,97,98,101,108,102,111,110,116,115,105,122,101,0,108,97,98,101,108,102,111,110,116,110,97,109,101,0,108,97,98,101,108,102,111,110,116,99,111,108,111,114,0,108,97,98,101,108,100,105,115,116,97,110,99,101,0,108,97,98,101,108,97,110,103,108,101,0,109,105,110,108,101,110,0,100,101,99,111,114,97,116,101,0,97,114,114,111,119,115,105,122,101,0,99,111,110,115,116,114,97,105,110,116,0,116,97,105,108,99,108,105,112,0,104,101,97,100,99,108,105,112,0,108,97,98,101,108,106,117,115,116,0,85,84,70,45,56,0,73,83,79,45,56,56,53,57,45,49,0,66,73,71,45,53,0,85,110,115,117,112,112,111,114,116,101,100,32,99,104,97,114,115,101,116,32,118,97,108,117,101,32,37,100,10,0,108,111,99,97,108,0,103,108,111,98,97,108,0,37,108,102,44,37,108,102,37,99,0,37,108,102,37,99,0,114,97,116,105,111,0,97,117,116,111,0,99,111,109,112,114,101,115,115,0,101,120,112,97,110,100,0,102,105,108,108,0,103,100,0,112,115,0,115,118,103,0,99,104,97,114,115,101,116,0,117,116,102,45,56,0,108,97,116,105,110,45,49,0,108,97,116,105,110,49,0,108,49,0,73,83,79,95,56,56,53,57,45,49,0,73,83,79,56,56,53,57,45,49,0,73,83,79,45,73,82,45,49,48,48,0,98,105,103,45,53,0,98,105,103,53,0,117,116,102,56,0,85,110,115,117,112,112,111,114,116,101,100,32,99,104,97,114,115,101,116,32,34,37,115,34,32,45,32,97,115,115,117,109,105,110,103,32,117,116,102,45,56,10,0,105,110,32,108,97,98,101,108,32,111,102,32,103,114,97,112,104,32,37,115,10,0,105,110,32,108,97,98,101,108,32,111,102,32,110,111,100,101,32,37,115,10,0,105,110,32,108,97,98,101,108,32,111,102,32,101,100,103,101,32,37,115,32,37,115,32,37,115,10,0,107,105,110,100,32,61,61,32,76,84,95,78,79,78,69,0,108,97,98,101,108,115,46,99,0,109,97,107,101,95,108,97,98,101,108,0,38,97,109,112,59,0,38,108,116,59,0,38,103,116,59,0,38,35,52,53,59,0,38,35,49,54,48,59,0,38,113,117,111,116,59,0,38,35,51,57,59,0,92,71,0,92,69,0,92,72,0,92,84,0,92,76,0,110,101,116,119,111,114,107,32,115,105,109,112,108,101,120,58,32,0,37,115,32,37,100,32,110,111,100,101,115,32,37,100,32,101,100,103,101,115,32,109,97,120,105,116,101,114,61,37,100,32,98,97,108,97,110,99,101,61,37,100,10,0,37,100,32,0,37,115,37,100,32,110,111,100,101,115,32,37,100,32,101,100,103,101,115,32,37,100,32,105,116,101,114,32,37,46,50,102,32,115,101,99,10,0,115,101,97,114,99,104,115,105,122,101,0,117,112,100,97,116,101,58,32,109,105,115,109,97,116,99,104,101,100,32,108,99,97,32,105,110,32,116,114,101,101,117,112,100,97,116,101,115,10,0,97,100,100,95,116,114,101,101,95,101,100,103,101,58,32,109,105,115,115,105,110,103,32,116,114,101,101,32,101,100,103,101,10,0,97,100,100,95,116,114,101,101,95,101,100,103,101,58,32,101,109,112,116,121,32,111,117,116,101,100,103,101,32,108,105,115,116,10,0,97,100,100,95,116,114,101,101,95,101,100,103,101,58,32,101,109,112,116,121,32,105,110,101,100,103,101,32,108,105,115,116,10,0,116,114,111,117,98,108,101,32,105,110,32,105,110,105,116,95,114,97,110,107,10,0,9,37,115,32,37,100,10,0,103,114,97,112,104,32,0,32,0,110,111,100,101,32,0,115,116,111,112,10,0,112,111,115,0,114,101,99,116,115,0,120,108,112,0,108,112,0,104,101,97,100,95,108,112,0,116,97,105,108,95,108,112,0,108,119,105,100,116,104,0,108,104,101,105,103,104,116,0,98,98,0,37,46,53,103,44,37,46,53,103,44,37,46,53,103,0,44,37,46,53,103,0,37,46,53,103,44,37,46,53,103,0,37,46,53,103,0,115,97,109,112,108,101,112,111,105,110,116,115,0,37,46,53,103,32,37,46,53,103,0,115,44,37,46,53,103,44,37,46,53,103,32,0,101,44,37,46,53,103,44,37,46,53,103,32,0,37,46,53,103,44,37,46,53,103,44,37,46,53,103,44,37,46,53,103,0,37,46,50,102,0,37,46,53,103,44,37,46,53,103,44,37,46,53,103,44,37,46,53,103,32,0,0,0,0,47,112,97,116,104,98,111,120,32,123,10,32,32,32,32,47,88,32,101,120,99,104,32,110,101,103,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,89,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,120,32,101,120,99,104,32,110,101,103,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,121,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,110,101,119,112,97,116,104,32,120,32,121,32,109,111,118,101,116,111,10,32,32,32,32,88,32,121,32,108,105,110,101,116,111,10,32,32,32,32,88,32,89,32,108,105,110,101,116,111,10,32,32,32,32,120,32,89,32,108,105,110,101,116,111,10,32,32,32,32,99,108,111,115,101,112,97,116,104,32,115,116,114,111,107,101,10,125,32,100,101,102,10,0,47,112,97,116,104,98,111,120,32,123,10,32,32,32,32,47,89,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,88,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,121,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,47,120,32,101,120,99,104,32,37,46,53,103,32,115,117,98,32,100,101,102,10,32,32,32,32,110,101,119,112,97,116,104,32,120,32,121,32,109,111,118,101,116,111,10,32,32,32,32,88,32,121,32,108,105,110,101,116,111,10,32,32,32,32,88,32,89,32,108,105,110,101,116,111,10,32,32,32,32,120,32,89,32,108,105,110,101,116,111,10,32,32,32,32,99,108,111,115,101,112,97,116,104,32,115,116,114,111,107,101,10,32,125,32,100,101,102,10,47,100,98,103,115,116,97,114,116,32,123,32,103,115,97,118,101,32,37,46,53,103,32,37,46,53,103,32,116,114,97,110,115,108,97,116,101,32,125,32,100,101,102,10,47,97,114,114,111,119,108,101,110,103,116,104,32,49,48,32,100,101,102,10,47,97,114,114,111,119,119,105,100,116,104,32,97,114,114,111,119,108,101,110,103,116,104,32,50,32,100,105,118,32,100,101,102,10,47,97,114,114,111,119,104,101,97,100,32,123,10,32,32,32,32,103,115,97,118,101,10,32,32,32,32,114,111,116,97,116,101,10,32,32,32,32,99,117,114,114,101,110,116,112,111,105,110,116,10,32,32,32,32,110,101,119,112,97,116,104,10,32,32,32,32,109,111,118,101,116,111,10,32,32,32,32,97,114,114,111,119,108,101,110,103,116,104,32,97,114,114,111,119,119,105,100,116,104,32,50,32,100,105,118,32,114,108,105,110,101,116,111,10,32,32,32,32,48,32,97,114,114,111,119,119,105,100,116,104,32,110,101,103,32,114,108,105,110,101,116,111,10,32,32,32,32,99,108,111,115,101,112,97,116,104,32,102,105,108,108,10,32,32,32,32,103,114,101,115,116,111,114,101,10,125,32,98,105,110,100,32,100,101,102,10,47,109,97,107,101,97,114,114,111,119,32,123,10,32,32,32,32,99,117,114,114,101,110,116,112,111,105,110,116,32,101,120,99,104,32,112,111,112,32,115,117,98,32,101,120,99,104,32,99,117,114,114,101,110,116,112,111,105,110,116,32,112,111,112,32,115,117,98,32,97,116,97,110,10,32,32,32,32,97,114,114,111,119,104,101,97,100,10,125,32,98,105,110,100,32,100,101,102,10,47,112,111,105,110,116,32,123,32,32,32,32,110,101,119,112,97,116,104,32,32,32,32,50,32,48,32,51,54,48,32,97,114,99,32,102,105,108,108,125,32,100,101,102,47,109,97,107,101,118,101,99,32,123,10,32,32,32,32,47,89,32,101,120,99,104,32,100,101,102,10,32,32,32,32,47,88,32,101,120,99,104,32,100,101,102,10,32,32,32,32,47,121,32,101,120,99,104,32,100,101,102,10,32,32,32,32,47,120,32,101,120,99,104,32,100,101,102,10,32,32,32,32,110,101,119,112,97,116,104,32,120,32,121,32,109,111,118,101,116,111,10,32,32,32,32,88,32,89,32,108,105,110,101,116,111,32,115,116,114,111,107,101,10,32,32,32,32,88,32,89,32,109,111,118,101,116,111,10,32,32,32,32,120,32,121,32,109,97,107,101,97,114,114,111,119,10,125,32,100,101,102,10,0,108,111,115,116,32,37,115,32,37,115,32,101,100,103,101,10,0,110,111,32,112,111,115,105,116,105,111,110,32,102,111,114,32,101,100,103,101,32,119,105,116,104,32,108,97,98,101,108,32,37,115,0,110,111,32,112,111,115,105,116,105,111,110,32,102,111,114,32,101,100,103,101,32,119,105,116,104,32,116,97,105,108,32,108,97,98,101,108,32,37,115,0,110,111,32,112,111,115,105,116,105,111,110,32,102,111,114,32,101,100,103,101,32,119,105,116,104,32,104,101,97,100,32,108,97,98,101,108,32,37,115,0,110,111,32,112,111,115,105,116,105,111,110,32,102,111,114,32,101,100,103,101,32,119,105,116,104,32,120,108,97,98,101,108,32,37,115,0,102,111,114,99,101,108,97,98,101,108,115,0,37,100,32,111,117,116,32,111,102,32,37,100,32,108,97,98,101,108,115,32,112,111,115,105,116,105,111,110,101,100,46,10,0,37,100,32,111,117,116,32,111,102,32,37,100,32,101,120,116,101,114,105,111,114,32,108,97,98,101,108,115,32,112,111,115,105,116,105,111,110,101,100,46,10,0,37,100,32,111,98,106,115,32,37,100,32,120,108,97,98,101,108,115,32,102,111,114,99,101,61,37,100,32,98,98,61,40,37,46,48,50,102,44,37,46,48,50,102,41,32,40,37,46,48,50,102,44,37,46,48,50,102,41,10,0,111,98,106,101,99,116,115,10,0,32,91,37,100,93,32,40,37,46,48,50,102,44,37,46,48,50,102,41,32,40,37,46,48,50,102,44,37,46,48,50,102,41,32,37,112,32,34,37,115,34,10,0,120,108,97,98,101,108,115,10,0,32,91,37,100,93,32,37,112,32,115,101,116,32,37,100,32,40,37,46,48,50,102,44,37,46,48,50,102,41,32,40,37,46,48,50,102,44,37,46,48,50,102,41,32,37,115,10,0,115,104,97,112,101,102,105,108,101,32,110,111,116,32,115,101,116,32,111,114,32,110,111,116,32,102,111,117,110,100,32,102,111,114,32,101,112,115,102,32,110,111,100,101,32,37,115,10,0,99,97,110,39,116,32,102,105,110,100,32,108,105,98,114,97,114,121,32,102,105,108,101,32,37,115,10,0,99,97,110,39,116,32,111,112,101,110,32,108,105,98,114,97,114,121,32,102,105,108,101,32,37,115,10,0,69,79,70,0,66,69,71,73,78,0,69,78,68,0,84,82,65,73,76,69,82,0,47,117,115,101,114,95,115,104,97,112,101,95,37,100,32,123,10,0,37,37,66,101,103,105,110,68,111,99,117,109,101,110,116,58,10,0,37,37,69,110,100,68,111,99,117,109,101,110,116,10,0,125,32,98,105,110,100,32,100,101,102,10,0,85,84,70,45,56,32,105,110,112,117,116,32,117,115,101,115,32,110,111,110,45,76,97,116,105,110,49,32,99,104,97,114,97,99,116,101,114,115,32,119,104,105,99,104,32,99,97,110,110,111,116,32,98,101,32,104,97,110,100,108,101,100,32,98,121,32,116,104,105,115,32,80,111,115,116,83,99,114,105,112,116,32,100,114,105,118,101,114,10,0,99,111,117,108,100,110,39,116,32,111,112,101,110,32,101,112,115,102,32,102,105,108,101,32,37,115,10,0,37,37,37,37,66,111,117,110,100,105,110,103,66,111,120,58,32,37,100,32,37,100,32,37,100,32,37,100,0,114,101,97,100,0,66,111,117,110,100,105,110,103,66,111,120,32,110,111,116,32,102,111,117,110,100,32,105,110,32,101,112,115,102,32,102,105,108,101,32,37,115,10,0,114,111,117,116,101,115,112,108,105,110,101,115,105,110,105,116,58,32,99,97,110,110,111,116,32,97,108,108,111,99,97,116,101,32,112,115,10,0,114,111,117,116,101,115,112,108,105,110,101,115,58,32,37,100,32,101,100,103,101,115,44,32,37,100,32,98,111,120,101,115,32,37,46,50,102,32,115,101,99,10,0,105,110,32,114,111,117,116,101,115,112,108,105,110,101,115,44,32,99,97,110,110,111,116,32,102,105,110,100,32,78,79,82,77,65,76,32,101,100,103,101,10,0,105,110,32,114,111,117,116,101,115,112,108,105,110,101,115,44,32,105,108,108,101,103,97,108,32,118,97,108,117,101,115,32,111,102,32,112,114,101,118,32,37,100,32,97,110,100,32,110,101,120,116,32,37,100,44,32,108,105,110,101,32,37,100,10,0,105,110,32,114,111,117,116,101,115,112,108,105,110,101,115,44,32,101,100,103,101,32,105,115,32,97,32,108,111,111,112,32,97,116,32,37,115,10,0,105,110,32,114,111,117,116,101,115,112,108,105,110,101,115,44,32,80,115,104,111,114,116,101,115,116,112,97,116,104,32,102,97,105,108,101,100,10,0,105,110,32,114,111,117,116,101,115,112,108,105,110,101,115,44,32,80,114,111,117,116,101,115,112,108,105,110,101,32,102,97,105,108,101,100,10,0,85,110,97,98,108,101,32,116,111,32,114,101,99,108,97,105,109,32,98,111,120,32,115,112,97,99,101,32,105,110,32,115,112,108,105,110,101,32,114,111,117,116,105,110,103,32,102,111,114,32,101,100,103,101,32,34,37,115,34,32,45,62,32,34,37,115,34,46,32,83,111,109,101,116,104,105,110,103,32,105,115,32,112,114,111,98,97,98,108,121,32,115,101,114,105,111,117,115,108,121,32,119,114,111,110,103,46,10,0,105,110,32,99,104,101,99,107,112,97,116,104,44,32,98,111,120,32,48,32,104,97,115,32,76,76,32,99,111,111,114,100,32,62,32,85,82,32,99,111,111,114,100,10,0,105,110,32,99,104,101,99,107,112,97,116,104,44,32,98,111,120,32,37,100,32,104,97,115,32,76,76,32,99,111,111,114,100,32,62,32,85,82,32,99,111,111,114,100,10,0,105,110,32,99,104,101,99,107,112,97,116,104,44,32,98,111,120,101,115,32,37,100,32,97,110,100,32,37,100,32,100,111,110,39,116,32,116,111,117,99,104,10,0,105,110,32,99,104,101,99,107,112,97,116,104,44,32,115,116,97,114,116,32,112,111,114,116,32,110,111,116,32,105,110,32,102,105,114,115,116,32,98,111,120,10,0,105,110,32,99,104,101,99,107,112,97,116,104,44,32,101,110,100,32,112,111,114,116,32,110,111,116,32,105,110,32,108,97,115,116,32,98,111,120,10,0,37,100,32,98,111,120,101,115,58,10,0,37,100,32,40,37,46,53,103,44,32,37,46,53,103,41,44,32,40,37,46,53,103,44,32,37,46,53,103,41,10,0,99,111,110,115,116,114,97,105,110,101,100,0,110,111,116,32,99,111,110,115,116,114,97,105,110,101,100,0,115,116,97,114],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+132702);allocate([116,32,112,111,114,116,58,32,40,37,46,53,103,44,32,37,46,53,103,41,44,32,116,97,110,103,101,110,116,32,97,110,103,108,101,58,32,37,46,53,103,44,32,37,115,10,0,101,110,100,32,112,111,114,116,58,32,40,37,46,53,103,44,32,37,46,53,103,41,44,32,116,97,110,103,101,110,116,32,97,110,103,108,101,58,32,37,46,53,103,44,32,37,115,10,0,99,97,110,110,111,116,32,114,101,45,97,108,108,111,99,97,116,101,32,112,115,10,0,115,105,100,101,115,32,61,61,32,52,0,115,104,97,112,101,115,46,99,0,114,111,117,110,100,95,99,111,114,110,101,114,115,0,115,104,97,112,101,102,105,108,101,0,101,112,115,102,0,99,117,115,116,111,109,0,115,0,101,0,119,0,117,115,105,110,103,32,37,115,32,102,111,114,32,117,110,107,110,111,119,110,32,115,104,97,112,101,32,37,115,10,0,112,111,108,121,103,111,110,0,111,118,97,108,0,99,105,114,99,108,101,0,112,111,105,110,116,0,101,103,103,0,116,114,105,97,110,103,108,101,0,112,108,97,105,110,116,101,120,116,0,100,105,97,109,111,110,100,0,116,114,97,112,101,122,105,117,109,0,112,97,114,97,108,108,101,108,111,103,114,97,109,0,104,111,117,115,101,0,112,101,110,116,97,103,111,110,0,104,101,120,97,103,111,110,0,115,101,112,116,97,103,111,110,0,111,99,116,97,103,111,110,0,110,111,116,101,0,116,97,98,0,102,111,108,100,101,114,0,98,111,120,51,100,0,99,111,109,112,111,110,101,110,116,0,114,101,99,116,0,114,101,99,116,97,110,103,108,101,0,115,113,117,97,114,101,0,100,111,117,98,108,101,99,105,114,99,108,101,0,100,111,117,98,108,101,111,99,116,97,103,111,110,0,116,114,105,112,108,101,111,99,116,97,103,111,110,0,105,110,118,116,114,105,97,110,103,108,101,0,105,110,118,116,114,97,112,101,122,105,117,109,0,105,110,118,104,111,117,115,101,0,117,110,100,101,114,108,105,110,101,0,77,100,105,97,109,111,110,100,0,77,115,113,117,97,114,101,0,77,99,105,114,99,108,101,0,112,114,111,109,111,116,101,114,0,99,100,115,0,116,101,114,109,105,110,97,116,111,114,0,117,116,114,0,105,110,115,117,108,97,116,111,114,0,114,105,98,111,115,105,116,101,0,114,110,97,115,116,97,98,0,112,114,111,116,101,97,115,101,115,105,116,101,0,112,114,111,116,101,105,110,115,116,97,98,0,112,114,105,109,101,114,115,105,116,101,0,114,101,115,116,114,105,99,116,105,111,110,115,105,116,101,0,102,105,118,101,112,111,118,101,114,104,97,110,103,0,116,104,114,101,101,112,111,118,101,114,104,97,110,103,0,110,111,118,101,114,104,97,110,103,0,97,115,115,101,109,98,108,121,0,115,105,103,110,97,116,117,114,101,0,114,112,114,111,109,111,116,101,114,0,108,97,114,114,111,119,0,114,97,114,114,111,119,0,108,112,114,111,109,111,116,101,114,0,114,101,99,111,114,100,0,77,114,101,99,111,114,100,0,115,116,97,114,0,35,56,48,56,48,56,48,0,35,102,99,102,99,102,99,0,35,51,48,51,48,51,48,0,35,101,56,101,56,101,56,0,35,101,48,101,48,101,48,0,35,102,48,102,48,102,48,0,35,49,48,49,48,49,48,0,35,102,56,102,56,102,56,0,105,110,32,110,111,100,101,32,37,115,10,0,114,111,117,110,100,101,100,0,100,105,97,103,111,110,97,108,115,0,114,97,100,105,97,108,0,115,116,114,105,112,101,100,0,119,101,100,103,101,100,0,95,0,110,111,100,101,32,37,115,44,32,112,111,114,116,32,37,115,44,32,117,110,114,101,99,111,103,110,105,122,101,100,32,99,111,109,112,97,115,115,32,112,111,105,110,116,32,39,37,115,39,32,45,32,105,103,110,111,114,101,100,10,0,110,111,100,101,32,37,115,44,32,112,111,114,116,32,37,115,32,117,110,114,101,99,111,103,110,105,122,101,100,10,0,37,46,53,103,32,37,46,53,103,32,116,114,97,110,115,108,97,116,101,32,110,101,119,112,97,116,104,32,117,115,101,114,95,115,104,97,112,101,95,37,100,10,0,105,110,118,105,115,0,0,102,105,108,108,101,100,0,0,98,97,100,32,108,97,98,101,108,32,102,111,114,109,97,116,32,37,115,10,0,92,78,0,109,97,114,103,105,110,0,37,108,102,44,37,108,102,0,114,101,103,117,108,97,114,0,60,110,105,108,62,0,78,111,32,111,114,32,105,109,112,114,111,112,101,114,32,115,104,97,112,101,102,105,108,101,61,34,37,115,34,32,102,111,114,32,110,111,100,101,32,34,37,115,34,10,0,78,111,32,111,114,32,105,109,112,114,111,112,101,114,32,105,109,97,103,101,61,34,37,115,34,32,102,111,114,32,110,111,100,101,32,34,37,115,34,10,0,108,97,98,101,108,108,111,99,0,110,111,100,101,32,39,37,115,39,44,32,103,114,97,112,104,32,39,37,115,39,32,115,105,122,101,32,116,111,111,32,115,109,97,108,108,32,102,111,114,32,108,97,98,101,108,10,0,115,112,108,105,110,101,115,46,99,0,98,101,103,105,110,112,97,116,104,0,80,45,62,101,110,100,46,116,104,101,116,97,32,60,32,50,32,42,32,77,95,80,73,0,101,110,100,112,97,116,104,0,109,97,107,101,83,101,108,102,69,100,103,101,0,103,101,116,115,112,108,105,110,101,112,111,105,110,116,115,58,32,110,111,32,115,112,108,105,110,101,32,112,111,105,110,116,115,32,97,118,97,105,108,97,98,108,101,32,102,111,114,32,101,100,103,101,32,40,37,115,44,37,115,41,10,0,112,111,108,121,108,105,110,101,77,105,100,112,111,105,110,116,0,115,112,97,110,45,62,102,111,110,116,0,116,101,120,116,115,112,97,110,46,99,0,116,101,120,116,115,112,97,110,95,115,105,122,101,0,102,111,110,116,45,62,110,97,109,101,0,102,111,110,116,110,97,109,101,58,32,34,37,115,34,32,114,101,115,111,108,118,101,100,32,116,111,58,32,37,115,10,0,102,111,110,116,110,97,109,101,58,32,117,110,97,98,108,101,32,116,111,32,114,101,115,111,108,118,101,32,34,37,115,34,10,0,99,111,117,114,0,91,105,110,116,101,114,110,97,108,32,99,111,117,114,105,101,114,93,0,97,114,105,97,108,0,104,101,108,118,101,116,105,99,97,0,91,105,110,116,101,114,110,97,108,32,97,114,105,97,108,93,0,91,105,110,116,101,114,110,97,108,32,116,105,109,101,115,93,0,65,118,97,110,116,71,97,114,100,101,45,66,111,111,107,0,85,82,87,32,71,111,116,104,105,99,32,76,0,98,111,111,107,0,115,97,110,115,45,83,101,114,105,102,0,65,118,97,110,116,71,97,114,100,101,45,66,111,111,107,79,98,108,105,113,117,101,0,111,98,108,105,113,117,101,0,105,116,97,108,105,99,0,65,118,97,110,116,71,97,114,100,101,45,68,101,109,105,0,100,101,109,105,0,65,118,97,110,116,71,97,114,100,101,45,68,101,109,105,79,98,108,105,113,117,101,0,66,111,111,107,109,97,110,45,68,101,109,105,0,85,82,87,32,66,111,111,107,109,97,110,32,76,0,115,101,114,105,102,0,66,111,111,107,109,97,110,45,68,101,109,105,73,116,97,108,105,99,0,66,111,111,107,109,97,110,45,76,105,103,104,116,0,108,105,103,104,116,0,66,111,111,107,109,97,110,45,76,105,103,104,116,73,116,97,108,105,99,0,67,111,117,114,105,101,114,0,109,111,110,111,115,112,97,99,101,0,67,111,117,114,105,101,114,45,66,111,108,100,0,67,111,117,114,105,101,114,45,66,111,108,100,79,98,108,105,113,117,101,0,67,111,117,114,105,101,114,45,79,98,108,105,113,117,101,0,72,101,108,118,101,116,105,99,97,0,72,101,108,118,101,116,105,99,97,45,66,111,108,100,0,72,101,108,118,101,116,105,99,97,45,66,111,108,100,79,98,108,105,113,117,101,0,72,101,108,118,101,116,105,99,97,45,78,97,114,114,111,119,0,99,111,110,100,101,110,115,101,100,0,72,101,108,118,101,116,105,99,97,45,78,97,114,114,111,119,45,66,111,108,100,0,72,101,108,118,101,116,105,99,97,45,78,97,114,114,111,119,45,66,111,108,100,79,98,108,105,113,117,101,0,72,101,108,118,101,116,105,99,97,45,78,97,114,114,111,119,45,79,98,108,105,113,117,101,0,72,101,108,118,101,116,105,99,97,45,79,98,108,105,113,117,101,0,78,101,119,67,101,110,116,117,114,121,83,99,104,108,98,107,45,66,111,108,100,0,67,101,110,116,117,114,121,32,83,99,104,111,111,108,98,111,111,107,32,76,0,78,101,119,67,101,110,116,117,114,121,83,99,104,108,98,107,45,66,111,108,100,73,116,97,108,105,99,0,78,101,119,67,101,110,116,117,114,121,83,99,104,108,98,107,45,73,116,97,108,105,99,0,78,101,119,67,101,110,116,117,114,121,83,99,104,108,98,107,45,82,111,109,97,110,0,114,111,109,97,110,0,80,97,108,97,116,105,110,111,45,66,111,108,100,0,80,97,108,97,116,105,110,111,32,76,105,110,111,116,121,112,101,0,80,97,108,97,116,105,110,111,45,66,111,108,100,73,116,97,108,105,99,0,80,97,108,97,116,105,110,111,45,73,116,97,108,105,99,0,80,97,108,97,116,105,110,111,45,82,111,109,97,110,0,83,121,109,98,111,108,0,102,97,110,116,97,115,121,0,84,105,109,101,115,45,66,111,108,100,0,84,105,109,101,115,0,84,105,109,101,115,45,66,111,108,100,73,116,97,108,105,99,0,84,105,109,101,115,45,73,116,97,108,105,99,0,90,97,112,102,67,104,97,110,99,101,114,121,45,77,101,100,105,117,109,73,116,97,108,105,99,0,85,82,87,32,67,104,97,110,99,101,114,121,32,76,0,109,101,100,105,117,109,0,90,97,112,102,68,105,110,103,98,97,116,115,0,68,105,110,103,98,97,116,115,0,105,110,112,117,116,115,99,97,108,101,0,117,116,105,108,115,46,99,0,117,32,61,61,32,85,70,95,102,105,110,100,40,117,41,0,85,70,95,115,101,116,110,97,109,101,0,1,102,105,108,101,32,108,111,97,100,105,110,103,32,105,115,32,100,105,115,97,98,108,101,100,32,98,101,99,97,117,115,101,32,116,104,101,32,101,110,118,105,114,111,110,109,101,110,116,32,99,111,110,116,97,105,110,115,32,83,69,82,86,69,82,95,78,65,77,69,61,34,37,115,34,10,97,110,100,32,116,104,101,32,71,86,95,70,73,76,69,95,80,65,84,72,32,118,97,114,105,97,98,108,101,32,105,115,32,117,110,115,101,116,32,111,114,32,101,109,112,116,121,46,10,0,80,97,116,104,32,112,114,111,118,105,100,101,100,32,116,111,32,102,105,108,101,58,32,34,37,115,34,32,104,97,115,32,98,101,101,110,32,105,103,110,111,114,101,100,32,98,101,99,97,117,115,101,32,102,105,108,101,115,32,97,114,101,32,111,110,108,121,32,112,101,114,109,105,116,116,101,100,32,116,111,32,98,101,32,108,111,97,100,101,100,32,102,114,111,109,32,116,104,101,32,100,105,114,101,99,116,111,114,105,101,115,32,105,110,32,34,37,115,34,32,119,104,101,110,32,114,117,110,110,105,110,103,32,105,110,32,97,110,32,104,116,116,112,32,115,101,114,118,101,114,46,10,0,47,0,110,111,0,116,114,117,101,0,121,101,115,0,101,108,108,105,112,115,101,0,84,105,109,101,115,45,82,111,109,97,110,0,99,108,117,115,116,101,114,0,95,95,99,108,117,115,116,101,114,110,111,100,101,115,0,0,85,84,70,56,32,99,111,100,101,115,32,62,32,52,32,98,121,116,101,115,32,97,114,101,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,32,40,103,114,97,112,104,32,37,115,41,32,45,32,116,114,101,97,116,101,100,32,97,115,32,76,97,116,105,110,45,49,46,32,80,101,114,104,97,112,115,32,34,45,71,99,104,97,114,115,101,116,61,108,97,116,105,110,49,34,32,105,115,32,110,101,101,100,101,100,63,10,0,73,110,118,97,108,105,100,32,37,100,45,98,121,116,101,32,85,84,70,56,32,102,111,117,110,100,32,105,110,32,105,110,112,117,116,32,111,102,32,103,114,97,112,104,32,37,115,32,45,32,116,114,101,97,116,101,100,32,97,115,32,76,97,116,105,110,45,49,46,32,80,101,114,104,97,112,115,32,34,45,71,99,104,97,114,115,101,116,61,108,97,116,105,110,49,34,32,105,115,32,110,101,101,100,101,100,63,10,0,117,114,118,101,100,0,111,109,112,111,117,110,100,0,97,108,115,101,0,105,110,101,0,111,110,101,0,111,0,114,116,104,111,0,111,108,121,108,105,110,101,0,112,108,105,110,101,0,114,117,101,0,101,115,0,85,110,107,110,111,119,110,32,34,115,112,108,105,110,101,115,34,32,118,97,108,117,101,58,32,34,37,115,34,32,45,32,105,103,110,111,114,101,100,10,0,115,112,108,105,110,101,115,0,98,122,46,115,105,122,101,0,111,118,101,114,108,97,112,95,98,101,122,105,101,114,0,65,69,108,105,103,0,65,97,99,117,116,101,0,65,99,105,114,99,0,65,103,114,97,118,101,0,65,108,112,104,97,0,65,114,105,110,103,0,65,116,105,108,100,101,0,65,117,109,108,0,66,101,116,97,0,67,99,101,100,105,108,0,67,104,105,0,68,97,103,103,101,114,0,68,101,108,116,97,0,69,84,72,0,69,97,99,117,116,101,0,69,99,105,114,99,0,69,103,114,97,118,101,0,69,112,115,105,108,111,110,0,69,116,97,0,69,117,109,108,0,71,97,109,109,97,0,73,97,99,117,116,101,0,73,99,105,114,99,0,73,103,114,97,118,101,0,73,111,116,97,0,73,117,109,108,0,75,97,112,112,97,0,76,97,109,98,100,97,0,77,117,0,78,116,105,108,100,101,0,78,117,0,79,69,108,105,103,0,79,97,99,117,116,101,0,79,99,105,114,99,0,79,103,114,97,118,101,0,79,109,101,103,97,0,79,109,105,99,114,111,110,0,79,115,108,97,115,104,0,79,116,105,108,100,101,0,79,117,109,108,0,80,104,105,0,80,105,0,80,114,105,109,101,0,80,115,105,0,82,104,111,0,83,99,97,114,111,110,0,83,105,103,109,97,0,84,72,79,82,78,0,84,97,117,0,84,104,101,116,97,0,85,97,99,117,116,101,0,85,99,105,114,99,0,85,103,114,97,118,101,0,85,112,115,105,108,111,110,0,85,117,109,108,0,88,105,0,89,97,99,117,116,101,0,89,117,109,108,0,90,101,116,97,0,97,97,99,117,116,101,0,97,99,105,114,99,0,97,99,117,116,101,0,97,101,108,105,103,0,97,103,114,97,118,101,0,97,108,101,102,115,121,109,0,97,108,112,104,97,0,97,109,112,0,97,110,100,0,97,110,103,0,97,114,105,110,103,0,97,115,121,109,112,0,97,116,105,108,100,101,0,97,117,109,108,0,98,100,113,117,111,0,98,101,116,97,0,98,114,118,98,97,114,0,98,117,108,108,0,99,97,112,0,99,99,101,100,105,108,0,99,101,100,105,108,0,99,101,110,116,0,99,104,105,0,99,105,114,99,0,99,108,117,98,115,0,99,111,110,103,0,99,111,112,121,0,99,114,97,114,114,0,99,117,112,0,99,117,114,114,101,110,0,100,65,114,114,0,100,97,103,103,101,114,0,100,97,114,114,0,100,101,103,0,100,101,108,116,97,0,100,105,97,109,115,0,100,105,118,105,100,101,0,101,97,99,117,116,101,0,101,99,105,114,99,0,101,103,114,97,118,101,0,101,109,112,116,121,0,101,109,115,112,0,101,110,115,112,0,101,112,115,105,108,111,110,0,101,113,117,105,118,0,101,116,97,0,101,116,104,0,101,117,109,108,0,101,117,114,111,0,101,120,105,115,116,0,102,110,111,102,0,102,111,114,97,108,108,0,102,114,97,99,49,50,0,102,114,97,99,49,52,0,102,114,97,99,51,52,0,102,114,97,115,108,0,103,97,109,109,97,0,103,101,0,103,116,0,104,65,114,114,0,104,97,114,114,0,104,101,97,114,116,115,0,104,101,108,108,105,112,0,105,97,99,117,116,101,0,105,99,105,114,99,0,105,101,120,99,108,0,105,103,114,97,118,101,0,105,109,97,103,101,0,105,110,102,105,110,0,105,110,116,0,105,111,116,97,0,105,113,117,101,115,116,0,105,115,105,110,0,105,117,109,108,0,107,97,112,112,97,0,108,65,114,114,0,108,97,109,98,100,97,0,108,97,110,103,0,108,97,113,117,111,0,108,97,114,114,0,108,99,101,105,108,0,108,100,113,117,111,0,108,101,0,108,102,108,111,111,114,0,108,111,119,97,115,116,0,108,111,122,0,108,114,109,0,108,115,97,113,117,111,0,108,115,113,117,111,0,108,116,0,109,97,99,114,0,109,100,97,115,104,0,109,105,99,114,111,0,109,105,100,100,111,116,0,109,117,0,110,97,98,108,97,0,110,98,115,112,0,110,100,97,115,104,0,110,101,0,110,105,0,110,111,116,0,110,111,116,105,110,0,110,115,117,98,0,110,116,105,108,100,101,0,110,117,0,111,97,99,117,116,101,0,111,99,105,114,99,0,111,101,108,105,103,0,111,103,114,97,118,101,0,111,108,105,110,101,0,111,109,101,103,97,0,111,109,105,99,114,111,110,0,111,112,108,117,115,0,111,114,0,111,114,100,102,0,111,114,100,109,0,111,115,108,97,115,104,0,111,116,105,108,100,101,0,111,116,105,109,101,115,0,111,117,109,108,0,112,97,114,97,0,112,97,114,116,0,112,101,114,109,105,108,0,112,101,114,112,0,112,104,105,0,112,105,0,112,105,118,0,112,108,117,115,109,110,0,112,111,117,110,100,0,112,114,105,109,101,0,112,114,111,100,0,112,114,111,112,0,112,115,105,0,113,117,111,116,0,114,65,114,114,0,114,97,100,105,99,0,114,97,110,103,0,114,97,113,117,111,0,114,97,114,114,0,114,99,101,105,108,0,114,100,113,117,111,0,114,101,97,108,0,114,101,103,0,114,102,108,111,111,114,0,114,104,111,0,114,108,109,0,114,115,97,113,117,111,0,114,115,113,117,111,0,115,98,113,117,111,0,115,99,97,114,111,110,0,115,100,111,116,0,115,101,99,116,0,115,104,121,0,115,105,103,109,97,0,115,105,103,109,97,102,0,115,105,109,0,115,112,97,100,101,115,0,115,117,98,0,115,117,98,101,0,115,117,109,0,115,117,112,0,115,117,112,49,0,115,117,112,50,0,115,117,112,51,0,115,117,112,101,0,115,122,108,105,103,0,116,97,117,0,116,104,101,114,101,52,0,116,104,101,116,97,0,116,104,101,116,97,115,121,109,0,116,104,105,110,115,112,0,116,104,111,114,110,0,116,105,108,100,101,0,116,105,109,101,115,0,116,114,97,100,101,0,117,65,114,114,0,117,97,99,117,116,101,0,117,97,114,114,0,117,99,105,114,99,0,117,103,114,97,118,101,0,117,109,108,0,117,112,115,105,104,0,117,112,115,105,108,111,110,0,117,117,109,108,0,119,101,105,101,114,112,0,120,105,0,121,97,99,117,116,101,0,121,101,110,0,121,117,109,108,0,122,101,116,97,0,122,119,106,0,122,119,110,106,0,109,97,112,78,0,84,119,111,32,99,108,117,115,116,101,114,115,32,110,97,109,101,100,32,37,115,32,45,32,116,104,101,32,115,101,99,111,110,100,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,99,108,117,115,116,101,114,32,99,121,99,108,101,32,37,115,32,45,45,32,37,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,116,97,105,108,32,99,108,117,115,116,101,114,32,37,115,32,105,110,115,105,100,101,32,104,101,97,100,32,99,108,117,115,116,101,114,32,37,115,10,0,104,101,97,100,32,99,108,117,115,116,101,114,32,37,115,32,105,110,115,105,100,101,32,116,97,105,108,32,99,108,117,115,116,101,114,32,37,115,10,0,116,97,105,108,32,110,111,100,101,32,37,115,32,105,110,115,105,100,101,32,104,101,97,100,32,99,108,117,115,116,101,114,32,37,115,10,0,104,101,97,100,32,110,111,100,101,32,37,115,32,105,110,115,105,100,101,32,116,97,105,108,32,99,108,117,115,116,101,114,32,37,115,10,0,95,95,0,108,97,98,101,108,0,115,104,97,112,101,0,98,111,120,0,37,115,37,115,37,115,0,111,100,98,0,79,114,116,104,111,103,111,110,97,108,32,101,100,103,101,115,32,100,111,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,104,97,110,100,108,101,32,101,100,103,101,32,108,97,98,101,108,115,46,32,84,114,121,32,117,115,105,110,103,32,120,108,97,98,101,108,115,46,10,0,111,114,116,104,111,32,37,115,32,37,115,10,0,99,104,97,110,105,0,111,114,116,104,111,46,99,0,99,104,97,110,83,101,97,114,99,104,0,99,112,0,37,115,0,37,100,32,37,100,32,116,114,97,110,115,108,97,116,101,10,0,48,46,56,32,48,46,56,32,48,46,56,32,115,101,116,114,103,98,99,111,108,111,114,10,0,115,104,111,119,112,97,103,101,10,37,37,37,37,84,114,97,105,108,101,114,10,37,37,37,37,66,111,117,110,100,105,110,103,66,111,120,58,32,37,100,32,37,100,32,37,100,32,37,100,10,0,110,101,119,112,97,116,104,32,37,100,32,37,100,32,109,111,118,101,116,111,10,0,37,100,32,37,100,32,108,105,110,101,116,111,10,0,37,100,32,37,100,32,108,105,110,101,116,111,32,115,116,114,111,107,101,10,0,37,37,33,80,83,45,65,100,111,98,101,45,50,46,48,10,37,37,37,37,66,111,117,110,100,105,110,103,66,111,120,58,32,40,97,116,101,110,100,41,10,47,112,111,105,110,116,32,123,10,32,32,47,89,32,101,120,99,104,32,100,101,102,10,32,32,47,88,32,101,120,99,104,32,100,101,102,10,32,32,110,101,119,112,97,116,104,10,32,32,88,32,89,32,51,32,48,32,51,54,48,32,97,114,99,32,102,105,108,108,10,125,32,100,101,102,10,47,99,101,108,108,32,123,10,32,32,47,89,32,101,120,99,104,32,100,101,102,10,32,32,47,88,32,101,120,99,104,32,100,101,102,10,32,32,47,121,32,101,120,99,104,32,100,101,102,10,32,32,47,120,32,101,120,99,104,32,100,101,102,10,32,32,110,101,119,112,97,116,104,10,32,32,120,32,121,32,109,111,118,101,116,111,10,32,32,120,32,89,32,108,105,110,101,116,111,10,32,32,88,32,89,32,108,105,110,101,116,111,10,32,32,88,32,121,32,108,105,110,101,116,111,10,32,32,99,108,111,115,101,112,97,116,104,32,115,116,114,111,107,101,10,125,32,100,101,102,10,47,110,111,100,101,32,123,10,32,47,117,32,101,120,99,104,32,100,101,102,10,32,47,114,32,101,120,99,104,32,100,101,102,10,32,47,100,32,101,120,99,104,32,100,101,102,10,32,47,108,32,101,120,99,104,32,100,101,102,10,32,110,101,119,112,97,116,104,32,108,32,100,32,109,111,118,101,116,111,10,32,114,32,100,32,108,105,110,101,116,111,32,114,32,117,32,108,105,110,101,116,111,32,108,32,117,32,108,105,110,101,116,111,10,32,99,108,111,115,101,112,97,116,104,32,102,105,108,108,10,125,32,100,101,102,10,10,0,99,104,97,110,110,101,108,32,37,100,32,40,37,102,44,37,102,41,10,0,32,45,62,10,0,32,32,32,32,32,0,40,40,37,102,44,37,102,41,44,40,37,102,44,37,102,41,41,32,37,115,32,37,115,0,66,95,78,79,68,69,0,66,95,85,80,0,66,95,76,69,70,84,0,66,95,68,79,87,78,0,66,95,82,73,71,72,84,0,115,101,103,0,110,101,120,116,95,115,101,103,0,100,101,99,105,100,101,95,112,111,105,110,116,0,105,110,99,111,109,112,97,114,97,98,108,101,32,115,101,103,109,101,110,116,115,32,33,33,32,45,45,32,65,98,111,114,116,105,110,103,10,0,115,49,45,62,99,111,109,109,95,99,111,111,114,100,61,61,115,50,45,62,99,111,109,109,95,99,111,111,114,100,0,105,115,95,112,97,114,97,108,108,101,108,0,103,114,97,112,104,32,71,32,123,10,0,32,110,111,100,101,91,115,104,97,112,101,61,112,111,105,110,116,93,10,0,32,32,37,100,32,91,112,111,115,61,34,37,100,44,37,100,34,93,10,0,32,32,37,100,32,45,45,32,37,100,91,108,101,110,61,34,37,102,34,93,10,0,125,10,0,115,111,108,105,100,0,105,110,118,105,115,105,98,108,101,0,98,111,108,100,0,115,101,116,108,105,110,101,119,105,100,116,104,0,102,105,108,108,101,100,0,117,110,102,105,108,108,101,100,0,116,97,112,101,114,101,100,0,103,118,114,101,110,100,101,114,95,115,101,116,95,115,116,121,108,101,58,32,117,110,115,117,112,112,111,114,116,101,100,32,115,116,121,108,101,32,37,115,32,45,32,105,103,110,111,114,105,110,103,10,0,103,118,114,101,110,100,101,114,46,99,0,103,118,114,101,110,100,101,114,95,117,115,101,114,115,104,97,112,101,0,110,97,109,101,0,110,97,109,101,91,48,93,0,98,111,116,104,0,99,111,108,111,114,32,37,115,0,37,115,32,105,115,32,110,111,116,32,97,32,107,110,111,119,110,32,99,111,108,111,114,46,10,0,101,114,114,111,114,32,105,110,32,99,111,108,120,108,97,116,101,40,41,10,0,106,111,98,0,103,118,108,111,97,100,105,109,97,103,101,46,99,0,103,118,108,111,97,100,105,109,97,103,101,0,117,115,0,117,115,45,62,110,97,109,101,0,117,115,45,62,110,97,109,101,91,48,93,0,58,0,78,111,32,108,111,97,100,105,109,97,103,101,32,112,108,117,103,105,110,32,102,111,114,32,34,37,115,34,10,0,103,114,97,112,104,118,105,122,0,50,46,51,56,46,48,0,50,48,49,52,48,52,49,51,46,50,48,52,49,0,81,0,76,101,102,116,0,75,80,95,76,101,102,116,0,82,105,103,104,116,0,75,80,95,82,105,103,104,116,0,85,112,0,75,80,95,85,112,0,68,111,119,110,0,75,80,95,68,111,119,110,0,112,108,117,115,0,75,80,95,65,100,100,0,109,105,110,117,115,0,75,80,95,83,117,98,116,114,97,99,116,0,70,0,71,0,110,101,119,46,103,118,0,85,82,76,0,107,101,121,0,104,101,97,100,112,111,114,116,0,116,97,105,108,112,111,114,116,0,101,100,103,101,0,110,111,100,101,0,115,117,98,103,114,97,112,104,0,103,114,97,112,104,0,100,105,103,114,97,112,104,0,95,76,84,88,95,108,105,98,114,97,114,121,0,116,101,120,116,108,97,121,111,117,116,0,111,98,106,112,45,62,108,98,108,0,120,108,97,98,101,108,115,46,99,0,120,108,97,100,106,117,115,116,0,120,108,105,110,116,101,114,115,101,99,116,105,111,110,115,0,108,112,32,33,61,32,99,108,112,0,103,101,116,105,110,116,114,115,120,105,0,111,98,106,112,49,45,62,115,122,46,120,32,61,61,32,48,32,38,38,32,111,98,106,112,49,45,62,115,122,46,121,32,61,61,32,48,0,108,98,108,101,110,99,108,111,115,105,110,103,0,118,112,0,120,108,104,100,120,117,110,108,111,97,100,0,115,105,122,101,61,61,102,114,101,101,100,0,114,101,99,116,46,98,111,117,110,100,97,114,121,91,50,93,32,60,32,73,78,84,95,77,65,88,0,111,98,106,112,108,112,109,107,115,0,114,101,99,116,46,98,111,117,110,100,97,114,121,91,51,93,32,60,32,73,78,84,95,77,65,88,0,111,117,116,32,111,102,32,109,101,109,111,114,121,10,0,35,37,50,120,37,50,120,37,50,120,37,50,120,0,37,108,102,37,108,102,37,108,102,0,47,97,99,99,101,110,116,51,47,49,0,47,97,99,99,101,110,116,51,47,50,0,47,97,99,99,101,110,116,51,47,51,0,47,97,99,99,101,110,116,52,47,49,0,47,97,99,99,101,110,116,52,47,50,0,47,97,99,99,101,110,116,52,47,51,0,47,97,99,99,101,110,116,52,47,52,0,47,97,99,99,101,110,116,53,47,49,0,47,97,99,99,101,110,116,53,47,50,0,47,97,99,99,101,110,116,53,47,51,0,47,97,99,99,101,110,116,53,47,52,0,47,97,99,99,101,110,116,53,47,53,0,47,97,99,99,101,110,116,54,47,49,0,47,97,99,99,101,110,116,54,47,50,0,47,97,99,99,101,110,116,54,47,51,0,47,97,99,99,101,110,116,54,47,52,0,47,97,99,99,101,110,116,54,47,53,0,47,97,99,99,101,110,116,54,47,54,0,47,97,99,99,101,110,116,55,47,49,0,47,97,99,99,101,110,116,55,47,50,0,47,97,99,99,101,110,116,55,47,51,0,47,97,99,99,101,110,116,55,47,52,0,47,97,99,99,101,110,116,55,47,53,0,47,97,99,99,101,110,116,55,47,54,0,47,97,99,99,101,110,116,55,47,55,0,47,97,99,99,101,110,116,56,47,49,0,47,97,99,99,101,110,116,56,47,50,0,47,97,99,99,101,110,116,56,47,51,0,47,97,99,99,101,110,116,56,47,52,0,47,97,99,99,101,110,116,56,47,53,0,47,97,99,99,101,110,116,56,47,54,0,47,97,99,99,101,110,116,56,47,55,0,47,97,99,99,101,110,116,56,47,56,0,47,98,108,117,101,115,51,47,49,0,47,98,108,117,101,115,51,47,50,0,47,98,108,117,101,115,51,47,51,0,47,98,108,117,101,115,52,47,49,0,47,98,108,117,101,115,52,47,50,0,47,98,108,117,101,115,52,47,51,0,47,98,108,117,101,115,52,47,52,0,47,98,108,117,101,115,53,47,49,0,47,98,108,117,101,115,53,47,50,0,47,98,108,117,101,115,53,47,51,0,47,98,108,117,101,115,53,47,52,0,47,98,108,117,101,115,53,47,53,0,47,98,108,117,101,115,54,47,49,0,47,98,108,117,101,115,54,47,50,0,47,98,108,117,101,115,54,47,51,0,47,98,108,117,101,115,54,47,52,0,47,98,108,117,101,115,54,47,53,0,47,98,108,117,101,115,54,47,54,0,47,98,108,117,101,115,55,47,49,0,47,98,108,117,101,115,55,47,50,0,47,98,108,117,101,115,55,47,51,0,47,98,108,117,101,115,55,47,52,0,47,98,108,117,101,115,55,47,53,0,47,98,108,117,101,115,55,47,54,0,47,98,108,117,101,115,55,47,55,0,47,98,108,117,101,115,56,47,49,0,47,98,108,117,101,115,56,47,50,0,47,98,108,117,101,115,56,47,51,0,47,98,108,117,101,115,56,47,52,0,47,98,108,117,101,115,56,47,53,0,47,98,108,117,101,115,56,47,54,0,47,98,108,117,101,115,56,47,55,0,47,98,108,117,101,115,56,47,56,0,47,98,108,117,101,115,57,47,49,0,47,98,108,117,101,115,57,47,50,0,47,98,108,117,101,115,57,47,51,0,47,98,108,117,101,115,57,47,52,0,47,98,108,117,101,115,57,47,53,0,47,98,108,117,101,115,57,47,54,0,47,98,108,117,101,115,57,47,55,0,47,98,108,117,101,115,57,47,56,0,47,98,108,117,101,115,57,47,57,0,47,98,114,98,103,49,48,47,49,0,47,98,114,98,103,49,48,47,49,48,0,47,98,114,98,103,49,48,47,50,0,47,98,114,98,103,49,48,47,51,0,47,98,114,98,103,49,48,47,52,0,47,98,114,98,103,49,48,47,53,0,47,98,114,98,103,49,48,47,54,0,47,98,114,98,103,49,48,47,55,0,47,98,114,98,103,49,48,47,56,0,47,98,114,98,103,49,48,47,57,0,47,98,114,98,103,49,49,47,49,0,47,98,114,98,103,49,49,47,49,48,0,47,98,114,98,103,49,49,47,49,49,0,47,98,114,98,103,49,49,47,50,0,47,98,114,98,103,49,49,47,51,0,47,98,114,98,103,49,49,47,52,0,47,98,114,98,103,49,49,47,53,0,47,98,114,98,103,49,49,47,54,0,47,98,114,98,103,49,49,47,55,0,47,98,114,98,103,49,49,47,56,0,47,98,114,98,103,49,49,47,57,0,47,98,114,98,103,51,47,49,0,47,98,114,98,103,51,47,50,0,47,98,114,98,103,51,47,51,0,47,98,114,98,103,52,47,49,0,47,98,114,98,103,52,47,50,0,47,98,114,98,103,52,47,51,0,47,98,114,98,103,52,47,52,0,47,98,114,98,103,53,47,49,0,47,98,114,98,103,53,47,50,0,47,98,114,98,103,53,47,51,0,47,98,114,98,103,53,47,52,0,47,98,114,98,103,53,47,53,0,47,98,114,98,103,54,47,49,0,47,98,114,98,103,54,47,50,0,47,98,114,98,103,54,47,51,0,47,98,114,98,103,54,47,52,0,47,98,114,98,103,54,47,53,0,47,98,114,98,103,54,47,54,0,47,98,114,98,103,55,47,49,0,47,98,114,98,103,55,47,50,0,47,98,114,98,103,55,47,51,0,47,98,114,98,103,55,47,52,0,47,98,114,98,103,55,47,53,0,47,98,114,98,103,55,47,54,0,47,98,114,98,103,55,47,55,0,47,98,114,98,103,56,47,49,0,47,98,114,98,103,56,47,50,0,47,98,114,98,103,56,47,51,0,47,98,114,98,103,56,47,52,0,47,98,114,98,103,56,47,53,0,47,98,114,98,103,56,47,54,0,47,98,114,98,103,56,47,55,0,47,98,114,98,103,56,47,56,0,47,98,114,98,103,57,47,49,0,47,98,114,98,103,57,47,50,0,47,98,114,98,103,57,47,51,0,47,98,114,98,103,57,47,52,0,47,98,114,98,103,57,47,53,0,47,98,114,98,103,57,47,54,0,47,98,114,98,103,57,47,55,0,47,98,114,98,103,57,47,56,0,47,98,114,98,103,57,47,57,0,47,98,117,103,110,51,47,49,0,47,98,117,103,110,51,47,50,0,47,98,117,103,110,51,47,51,0,47,98,117,103,110,52,47,49,0,47,98,117,103,110,52,47,50,0,47,98,117,103,110,52,47,51,0,47,98,117,103,110,52,47,52,0,47,98,117,103,110,53,47,49,0,47,98,117,103,110,53,47,50,0,47,98,117,103,110,53,47,51,0,47,98,117,103,110,53,47,52,0,47,98,117,103,110,53,47,53,0,47,98,117,103,110,54,47,49,0,47,98,117,103,110,54,47,50,0,47,98,117,103,110,54,47,51,0,47,98,117,103,110,54,47,52,0,47,98,117,103,110,54,47,53,0,47,98,117,103,110,54,47,54,0,47,98,117,103,110,55,47,49,0,47,98,117,103,110,55,47,50,0,47,98,117,103,110,55,47,51,0,47,98,117,103,110,55,47,52,0,47,98,117,103,110,55,47,53,0,47,98,117,103,110,55,47,54,0,47,98,117,103,110,55,47,55,0,47,98,117,103,110,56,47,49,0,47,98,117,103,110,56,47,50,0,47,98,117,103,110,56,47,51,0,47,98,117,103,110,56,47,52,0,47,98,117,103,110,56,47,53,0,47,98,117,103,110,56,47,54,0,47,98,117,103,110,56,47,55,0,47,98,117,103,110,56,47,56,0,47,98,117,103,110,57,47,49,0,47,98,117,103,110,57,47,50,0,47,98,117,103,110,57,47,51,0,47,98,117,103,110,57,47,52,0,47,98,117,103,110,57,47,53,0,47,98,117,103,110,57,47,54,0,47,98,117,103,110,57,47,55,0,47,98,117,103,110,57,47,56,0,47,98,117,103,110,57,47,57,0,47,98,117,112,117,51,47,49,0,47,98,117,112,117,51,47,50,0,47,98,117,112,117,51,47,51,0,47,98,117,112,117,52,47,49,0,47,98,117,112,117,52,47,50,0,47,98,117,112,117,52,47,51,0,47,98,117,112,117,52,47,52,0,47,98,117,112,117,53,47,49,0,47,98,117,112,117,53,47,50,0,47,98,117,112,117,53,47,51,0,47,98,117,112,117,53,47,52,0,47,98,117,112,117,53,47,53,0,47,98,117,112,117,54,47,49,0,47,98,117,112,117,54,47,50,0,47,98,117,112,117,54,47,51,0,47,98,117,112,117,54,47,52,0,47,98,117,112,117,54,47,53,0,47,98,117,112,117,54,47,54,0,47,98,117,112,117,55,47,49,0,47,98,117,112,117,55,47,50,0,47,98,117,112,117,55,47,51,0,47,98,117,112,117,55,47,52,0,47,98,117,112,117,55,47,53,0,47,98,117,112,117,55,47,54,0,47,98,117,112,117,55,47,55,0,47,98,117,112,117,56,47,49,0,47,98,117,112,117,56,47,50,0,47,98,117,112,117,56,47,51,0,47,98,117,112,117,56,47,52,0,47,98,117,112,117,56,47,53,0,47,98,117,112,117,56,47,54,0,47,98,117,112,117,56,47,55,0,47,98,117,112,117,56,47,56,0,47,98,117,112,117,57,47,49,0,47,98,117,112,117,57,47,50,0,47,98,117,112,117,57,47,51,0,47,98,117,112,117,57,47,52,0,47,98,117,112,117,57,47,53,0,47,98,117,112,117,57,47,54,0,47,98,117,112,117,57,47,55,0,47,98,117,112,117,57,47,56,0,47,98,117,112,117,57,47,57,0,47,100,97,114,107,50,51,47,49,0,47,100,97,114,107,50,51,47,50,0,47,100,97,114,107,50,51,47,51,0,47,100,97,114,107,50,52,47,49,0,47,100,97,114,107,50,52,47,50,0,47,100,97,114,107,50,52,47,51,0,47,100,97,114,107,50,52,47,52,0,47,100,97,114,107,50,53,47,49,0,47,100,97,114,107,50,53,47,50,0,47,100,97,114,107,50,53,47,51,0,47,100,97,114,107,50,53,47,52,0,47,100,97,114,107,50,53,47,53,0,47,100,97,114,107,50,54,47,49,0,47,100,97,114,107,50,54,47,50,0,47,100,97,114,107,50,54,47,51,0,47,100,97,114,107,50,54,47,52,0,47,100,97,114,107,50,54,47,53,0,47,100,97,114,107,50,54,47,54,0,47,100,97,114,107,50,55,47,49,0,47,100,97,114,107,50,55,47,50,0,47,100,97,114,107,50,55,47,51,0,47,100,97,114,107,50,55,47,52,0,47,100,97,114,107,50,55,47,53,0,47,100,97,114,107,50,55,47,54,0,47,100,97,114,107,50,55,47,55,0,47,100,97,114,107,50,56,47,49,0,47,100,97,114,107,50,56,47,50,0,47,100,97,114,107,50,56,47,51,0,47,100,97,114,107,50,56,47,52,0,47,100,97,114,107,50,56,47,53,0,47,100,97,114,107,50,56,47,54,0,47,100,97,114,107,50,56,47,55,0,47,100,97,114,107,50,56,47,56,0,47,103,110,98,117,51,47,49,0,47,103,110,98,117,51,47,50,0,47,103,110,98,117,51,47,51,0,47,103,110,98,117,52,47,49,0,47,103,110,98,117,52,47,50,0,47,103,110,98,117,52,47,51,0,47,103,110,98,117,52,47,52,0,47,103,110,98,117,53,47,49,0,47,103,110,98,117,53,47,50,0,47,103,110,98,117,53,47,51,0,47,103,110,98,117,53,47,52,0,47,103,110,98,117,53,47,53,0,47,103,110,98,117,54,47,49,0,47,103,110,98,117,54,47,50,0,47,103,110,98,117,54,47,51,0,47,103,110,98,117,54,47,52,0,47,103,110,98,117,54,47,53,0,47,103,110,98,117,54,47,54,0,47,103,110,98,117,55,47,49,0,47,103,110,98,117,55,47,50,0,47,103,110,98,117,55,47,51,0,47,103,110,98,117,55,47,52,0,47,103,110,98,117,55,47,53,0,47,103,110,98,117,55,47,54,0,47,103,110,98,117,55,47,55,0,47,103,110,98,117,56,47,49,0,47,103,110,98,117,56,47,50,0,47,103,110,98,117,56,47,51,0,47,103,110,98,117,56,47,52,0,47,103,110,98,117,56,47,53,0,47,103,110,98,117,56,47,54,0,47,103,110,98,117,56,47,55,0,47,103,110,98,117,56,47,56,0,47,103,110,98,117,57,47,49,0,47,103,110,98,117,57,47,50,0,47,103,110,98,117,57,47,51,0,47,103,110,98,117,57,47,52,0,47,103,110,98,117,57,47,53,0,47,103,110,98,117,57,47,54,0,47,103,110,98,117,57,47,55,0,47,103,110,98,117,57,47,56,0,47,103,110,98,117,57,47,57,0,47,103,114,101,101,110,115,51,47,49,0,47,103,114,101,101,110,115,51,47,50,0,47,103,114,101,101,110,115,51,47,51,0,47,103,114,101,101,110,115,52,47,49,0,47,103,114,101,101,110,115,52,47,50,0,47,103,114,101,101,110,115,52,47,51,0,47,103,114,101,101,110,115,52,47,52,0,47,103,114,101,101,110,115,53,47,49,0,47,103,114,101,101,110,115,53,47,50,0,47,103,114,101,101,110,115,53,47,51,0,47,103,114,101,101,110,115,53,47,52,0,47,103,114,101,101,110,115,53,47,53,0,47,103,114,101,101,110,115,54,47,49,0,47,103,114,101,101,110,115,54,47,50,0,47,103,114,101,101,110,115,54,47,51,0,47,103,114,101,101,110,115,54,47,52,0,47,103,114,101,101,110,115,54,47,53,0,47,103,114,101,101,110,115,54,47,54,0,47,103,114,101,101,110,115,55,47,49,0,47,103,114,101,101,110,115,55,47,50,0,47,103,114,101,101,110,115,55,47,51,0,47,103,114,101,101,110,115,55,47,52,0,47,103,114,101,101,110,115,55,47,53,0,47,103,114,101,101,110,115,55,47,54,0,47,103,114,101,101,110,115,55,47,55,0,47,103,114,101,101,110,115,56,47,49,0,47,103,114,101,101,110,115,56,47,50,0,47,103,114,101,101,110,115,56,47,51,0,47,103,114,101,101,110,115,56,47,52,0,47,103,114,101,101,110,115,56,47,53,0,47,103,114,101,101,110,115,56,47,54,0,47,103,114,101,101,110,115,56,47,55,0,47,103,114,101,101,110,115,56,47,56,0,47,103,114,101,101,110,115,57,47,49,0,47,103,114,101,101,110,115,57,47,50,0,47,103,114,101,101,110,115,57,47,51,0,47,103,114,101,101,110,115,57,47,52,0,47,103,114,101,101,110,115,57,47,53,0,47,103,114,101,101,110,115,57,47,54,0,47,103,114,101,101,110,115,57,47,55,0,47,103,114,101,101,110,115,57,47,56,0,47,103,114,101,101,110,115,57,47,57,0,47,103,114,101,121,115,51,47,49,0,47,103,114,101,121,115,51,47,50,0,47,103,114,101,121,115,51,47,51,0,47,103,114,101,121,115,52,47,49,0,47,103,114,101,121,115,52,47,50,0,47,103,114,101,121,115,52,47,51,0,47,103,114,101,121,115,52,47,52,0,47,103,114,101,121,115,53,47,49,0,47,103,114,101,121,115,53,47,50,0,47,103,114,101,121,115,53,47,51,0,47,103,114,101,121,115,53,47,52,0,47,103,114,101,121,115,53,47,53,0,47,103,114,101,121,115,54,47,49,0,47,103,114,101,121,115,54,47,50,0,47,103,114,101,121,115,54,47,51,0,47,103,114,101,121,115,54,47,52,0,47,103,114,101,121,115,54,47,53,0,47,103,114,101,121,115,54,47,54,0,47,103,114,101,121,115,55,47,49,0,47,103,114,101,121,115,55,47,50,0,47,103,114,101,121,115,55,47,51,0,47,103,114,101,121,115,55,47,52,0,47,103,114,101,121,115,55,47,53,0,47,103,114,101,121,115,55,47,54,0,47,103,114,101,121,115,55,47,55,0,47,103,114,101,121,115,56,47,49,0,47,103,114,101,121,115,56,47,50,0,47,103,114,101,121,115,56,47,51,0,47,103,114,101,121,115,56,47,52,0,47,103,114,101,121,115,56,47,53,0,47,103,114,101,121,115,56,47,54,0,47,103,114,101,121,115,56,47,55,0,47,103,114,101,121,115,56,47,56,0,47,103,114,101,121,115,57,47,49,0,47,103,114,101,121,115,57,47,50,0,47,103,114,101,121,115,57,47,51,0,47,103,114,101,121,115,57,47,52,0,47,103,114,101,121,115,57,47,53,0,47,103,114,101,121,115,57,47,54,0,47,103,114,101,121,115,57,47,55,0,47,103,114,101,121,115,57,47,56,0,47,103,114,101,121,115,57,47,57,0,47,111,114,97,110,103,101,115,51,47,49,0,47,111,114,97,110,103,101,115,51,47,50,0,47,111,114,97,110,103,101,115,51,47,51,0,47,111,114,97,110,103,101,115,52,47,49,0,47,111,114,97,110,103,101,115,52,47,50,0,47,111,114,97,110,103,101,115,52,47,51,0,47,111,114,97,110,103,101,115,52,47,52,0,47,111,114,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+142942);allocate([110,103,101,115,53,47,49,0,47,111,114,97,110,103,101,115,53,47,50,0,47,111,114,97,110,103,101,115,53,47,51,0,47,111,114,97,110,103,101,115,53,47,52,0,47,111,114,97,110,103,101,115,53,47,53,0,47,111,114,97,110,103,101,115,54,47,49,0,47,111,114,97,110,103,101,115,54,47,50,0,47,111,114,97,110,103,101,115,54,47,51,0,47,111,114,97,110,103,101,115,54,47,52,0,47,111,114,97,110,103,101,115,54,47,53,0,47,111,114,97,110,103,101,115,54,47,54,0,47,111,114,97,110,103,101,115,55,47,49,0,47,111,114,97,110,103,101,115,55,47,50,0,47,111,114,97,110,103,101,115,55,47,51,0,47,111,114,97,110,103,101,115,55,47,52,0,47,111,114,97,110,103,101,115,55,47,53,0,47,111,114,97,110,103,101,115,55,47,54,0,47,111,114,97,110,103,101,115,55,47,55,0,47,111,114,97,110,103,101,115,56,47,49,0,47,111,114,97,110,103,101,115,56,47,50,0,47,111,114,97,110,103,101,115,56,47,51,0,47,111,114,97,110,103,101,115,56,47,52,0,47,111,114,97,110,103,101,115,56,47,53,0,47,111,114,97,110,103,101,115,56,47,54,0,47,111,114,97,110,103,101,115,56,47,55,0,47,111,114,97,110,103,101,115,56,47,56,0,47,111,114,97,110,103,101,115,57,47,49,0,47,111,114,97,110,103,101,115,57,47,50,0,47,111,114,97,110,103,101,115,57,47,51,0,47,111,114,97,110,103,101,115,57,47,52,0,47,111,114,97,110,103,101,115,57,47,53,0,47,111,114,97,110,103,101,115,57,47,54,0,47,111,114,97,110,103,101,115,57,47,55,0,47,111,114,97,110,103,101,115,57,47,56,0,47,111,114,97,110,103,101,115,57,47,57,0,47,111,114,114,100,51,47,49,0,47,111,114,114,100,51,47,50,0,47,111,114,114,100,51,47,51,0,47,111,114,114,100,52,47,49,0,47,111,114,114,100,52,47,50,0,47,111,114,114,100,52,47,51,0,47,111,114,114,100,52,47,52,0,47,111,114,114,100,53,47,49,0,47,111,114,114,100,53,47,50,0,47,111,114,114,100,53,47,51,0,47,111,114,114,100,53,47,52,0,47,111,114,114,100,53,47,53,0,47,111,114,114,100,54,47,49,0,47,111,114,114,100,54,47,50,0,47,111,114,114,100,54,47,51,0,47,111,114,114,100,54,47,52,0,47,111,114,114,100,54,47,53,0,47,111,114,114,100,54,47,54,0,47,111,114,114,100,55,47,49,0,47,111,114,114,100,55,47,50,0,47,111,114,114,100,55,47,51,0,47,111,114,114,100,55,47,52,0,47,111,114,114,100,55,47,53,0,47,111,114,114,100,55,47,54,0,47,111,114,114,100,55,47,55,0,47,111,114,114,100,56,47,49,0,47,111,114,114,100,56,47,50,0,47,111,114,114,100,56,47,51,0,47,111,114,114,100,56,47,52,0,47,111,114,114,100,56,47,53,0,47,111,114,114,100,56,47,54,0,47,111,114,114,100,56,47,55,0,47,111,114,114,100,56,47,56,0,47,111,114,114,100,57,47,49,0,47,111,114,114,100,57,47,50,0,47,111,114,114,100,57,47,51,0,47,111,114,114,100,57,47,52,0,47,111,114,114,100,57,47,53,0,47,111,114,114,100,57,47,54,0,47,111,114,114,100,57,47,55,0,47,111,114,114,100,57,47,56,0,47,111,114,114,100,57,47,57,0,47,112,97,105,114,101,100,49,48,47,49,0,47,112,97,105,114,101,100,49,48,47,49,48,0,47,112,97,105,114,101,100,49,48,47,50,0,47,112,97,105,114,101,100,49,48,47,51,0,47,112,97,105,114,101,100,49,48,47,52,0,47,112,97,105,114,101,100,49,48,47,53,0,47,112,97,105,114,101,100,49,48,47,54,0,47,112,97,105,114,101,100,49,48,47,55,0,47,112,97,105,114,101,100,49,48,47,56,0,47,112,97,105,114,101,100,49,48,47,57,0,47,112,97,105,114,101,100,49,49,47,49,0,47,112,97,105,114,101,100,49,49,47,49,48,0,47,112,97,105,114,101,100,49,49,47,49,49,0,47,112,97,105,114,101,100,49,49,47,50,0,47,112,97,105,114,101,100,49,49,47,51,0,47,112,97,105,114,101,100,49,49,47,52,0,47,112,97,105,114,101,100,49,49,47,53,0,47,112,97,105,114,101,100,49,49,47,54,0,47,112,97,105,114,101,100,49,49,47,55,0,47,112,97,105,114,101,100,49,49,47,56,0,47,112,97,105,114,101,100,49,49,47,57,0,47,112,97,105,114,101,100,49,50,47,49,0,47,112,97,105,114,101,100,49,50,47,49,48,0,47,112,97,105,114,101,100,49,50,47,49,49,0,47,112,97,105,114,101,100,49,50,47,49,50,0,47,112,97,105,114,101,100,49,50,47,50,0,47,112,97,105,114,101,100,49,50,47,51,0,47,112,97,105,114,101,100,49,50,47,52,0,47,112,97,105,114,101,100,49,50,47,53,0,47,112,97,105,114,101,100,49,50,47,54,0,47,112,97,105,114,101,100,49,50,47,55,0,47,112,97,105,114,101,100,49,50,47,56,0,47,112,97,105,114,101,100,49,50,47,57,0,47,112,97,105,114,101,100,51,47,49,0,47,112,97,105,114,101,100,51,47,50,0,47,112,97,105,114,101,100,51,47,51,0,47,112,97,105,114,101,100,52,47,49,0,47,112,97,105,114,101,100,52,47,50,0,47,112,97,105,114,101,100,52,47,51,0,47,112,97,105,114,101,100,52,47,52,0,47,112,97,105,114,101,100,53,47,49,0,47,112,97,105,114,101,100,53,47,50,0,47,112,97,105,114,101,100,53,47,51,0,47,112,97,105,114,101,100,53,47,52,0,47,112,97,105,114,101,100,53,47,53,0,47,112,97,105,114,101,100,54,47,49,0,47,112,97,105,114,101,100,54,47,50,0,47,112,97,105,114,101,100,54,47,51,0,47,112,97,105,114,101,100,54,47,52,0,47,112,97,105,114,101,100,54,47,53,0,47,112,97,105,114,101,100,54,47,54,0,47,112,97,105,114,101,100,55,47,49,0,47,112,97,105,114,101,100,55,47,50,0,47,112,97,105,114,101,100,55,47,51,0,47,112,97,105,114,101,100,55,47,52,0,47,112,97,105,114,101,100,55,47,53,0,47,112,97,105,114,101,100,55,47,54,0,47,112,97,105,114,101,100,55,47,55,0,47,112,97,105,114,101,100,56,47,49,0,47,112,97,105,114,101,100,56,47,50,0,47,112,97,105,114,101,100,56,47,51,0,47,112,97,105,114,101,100,56,47,52,0,47,112,97,105,114,101,100,56,47,53,0,47,112,97,105,114,101,100,56,47,54,0,47,112,97,105,114,101,100,56,47,55,0,47,112,97,105,114,101,100,56,47,56,0,47,112,97,105,114,101,100,57,47,49,0,47,112,97,105,114,101,100,57,47,50,0,47,112,97,105,114,101,100,57,47,51,0,47,112,97,105,114,101,100,57,47,52,0,47,112,97,105,114,101,100,57,47,53,0,47,112,97,105,114,101,100,57,47,54,0,47,112,97,105,114,101,100,57,47,55,0,47,112,97,105,114,101,100,57,47,56,0,47,112,97,105,114,101,100,57,47,57,0,47,112,97,115,116,101,108,49,51,47,49,0,47,112,97,115,116,101,108,49,51,47,50,0,47,112,97,115,116,101,108,49,51,47,51,0,47,112,97,115,116,101,108,49,52,47,49,0,47,112,97,115,116,101,108,49,52,47,50,0,47,112,97,115,116,101,108,49,52,47,51,0,47,112,97,115,116,101,108,49,52,47,52,0,47,112,97,115,116,101,108,49,53,47,49,0,47,112,97,115,116,101,108,49,53,47,50,0,47,112,97,115,116,101,108,49,53,47,51,0,47,112,97,115,116,101,108,49,53,47,52,0,47,112,97,115,116,101,108,49,53,47,53,0,47,112,97,115,116,101,108,49,54,47,49,0,47,112,97,115,116,101,108,49,54,47,50,0,47,112,97,115,116,101,108,49,54,47,51,0,47,112,97,115,116,101,108,49,54,47,52,0,47,112,97,115,116,101,108,49,54,47,53,0,47,112,97,115,116,101,108,49,54,47,54,0,47,112,97,115,116,101,108,49,55,47,49,0,47,112,97,115,116,101,108,49,55,47,50,0,47,112,97,115,116,101,108,49,55,47,51,0,47,112,97,115,116,101,108,49,55,47,52,0,47,112,97,115,116,101,108,49,55,47,53,0,47,112,97,115,116,101,108,49,55,47,54,0,47,112,97,115,116,101,108,49,55,47,55,0,47,112,97,115,116,101,108,49,56,47,49,0,47,112,97,115,116,101,108,49,56,47,50,0,47,112,97,115,116,101,108,49,56,47,51,0,47,112,97,115,116,101,108,49,56,47,52,0,47,112,97,115,116,101,108,49,56,47,53,0,47,112,97,115,116,101,108,49,56,47,54,0,47,112,97,115,116,101,108,49,56,47,55,0,47,112,97,115,116,101,108,49,56,47,56,0,47,112,97,115,116,101,108,49,57,47,49,0,47,112,97,115,116,101,108,49,57,47,50,0,47,112,97,115,116,101,108,49,57,47,51,0,47,112,97,115,116,101,108,49,57,47,52,0,47,112,97,115,116,101,108,49,57,47,53,0,47,112,97,115,116,101,108,49,57,47,54,0,47,112,97,115,116,101,108,49,57,47,55,0,47,112,97,115,116,101,108,49,57,47,56,0,47,112,97,115,116,101,108,49,57,47,57,0,47,112,97,115,116,101,108,50,51,47,49,0,47,112,97,115,116,101,108,50,51,47,50,0,47,112,97,115,116,101,108,50,51,47,51,0,47,112,97,115,116,101,108,50,52,47,49,0,47,112,97,115,116,101,108,50,52,47,50,0,47,112,97,115,116,101,108,50,52,47,51,0,47,112,97,115,116,101,108,50,52,47,52,0,47,112,97,115,116,101,108,50,53,47,49,0,47,112,97,115,116,101,108,50,53,47,50,0,47,112,97,115,116,101,108,50,53,47,51,0,47,112,97,115,116,101,108,50,53,47,52,0,47,112,97,115,116,101,108,50,53,47,53,0,47,112,97,115,116,101,108,50,54,47,49,0,47,112,97,115,116,101,108,50,54,47,50,0,47,112,97,115,116,101,108,50,54,47,51,0,47,112,97,115,116,101,108,50,54,47,52,0,47,112,97,115,116,101,108,50,54,47,53,0,47,112,97,115,116,101,108,50,54,47,54,0,47,112,97,115,116,101,108,50,55,47,49,0,47,112,97,115,116,101,108,50,55,47,50,0,47,112,97,115,116,101,108,50,55,47,51,0,47,112,97,115,116,101,108,50,55,47,52,0,47,112,97,115,116,101,108,50,55,47,53,0,47,112,97,115,116,101,108,50,55,47,54,0,47,112,97,115,116,101,108,50,55,47,55,0,47,112,97,115,116,101,108,50,56,47,49,0,47,112,97,115,116,101,108,50,56,47,50,0,47,112,97,115,116,101,108,50,56,47,51,0,47,112,97,115,116,101,108,50,56,47,52,0,47,112,97,115,116,101,108,50,56,47,53,0,47,112,97,115,116,101,108,50,56,47,54,0,47,112,97,115,116,101,108,50,56,47,55,0,47,112,97,115,116,101,108,50,56,47,56,0,47,112,105,121,103,49,48,47,49,0,47,112,105,121,103,49,48,47,49,48,0,47,112,105,121,103,49,48,47,50,0,47,112,105,121,103,49,48,47,51,0,47,112,105,121,103,49,48,47,52,0,47,112,105,121,103,49,48,47,53,0,47,112,105,121,103,49,48,47,54,0,47,112,105,121,103,49,48,47,55,0,47,112,105,121,103,49,48,47,56,0,47,112,105,121,103,49,48,47,57,0,47,112,105,121,103,49,49,47,49,0,47,112,105,121,103,49,49,47,49,48,0,47,112,105,121,103,49,49,47,49,49,0,47,112,105,121,103,49,49,47,50,0,47,112,105,121,103,49,49,47,51,0,47,112,105,121,103,49,49,47,52,0,47,112,105,121,103,49,49,47,53,0,47,112,105,121,103,49,49,47,54,0,47,112,105,121,103,49,49,47,55,0,47,112,105,121,103,49,49,47,56,0,47,112,105,121,103,49,49,47,57,0,47,112,105,121,103,51,47,49,0,47,112,105,121,103,51,47,50,0,47,112,105,121,103,51,47,51,0,47,112,105,121,103,52,47,49,0,47,112,105,121,103,52,47,50,0,47,112,105,121,103,52,47,51,0,47,112,105,121,103,52,47,52,0,47,112,105,121,103,53,47,49,0,47,112,105,121,103,53,47,50,0,47,112,105,121,103,53,47,51,0,47,112,105,121,103,53,47,52,0,47,112,105,121,103,53,47,53,0,47,112,105,121,103,54,47,49,0,47,112,105,121,103,54,47,50,0,47,112,105,121,103,54,47,51,0,47,112,105,121,103,54,47,52,0,47,112,105,121,103,54,47,53,0,47,112,105,121,103,54,47,54,0,47,112,105,121,103,55,47,49,0,47,112,105,121,103,55,47,50,0,47,112,105,121,103,55,47,51,0,47,112,105,121,103,55,47,52,0,47,112,105,121,103,55,47,53,0,47,112,105,121,103,55,47,54,0,47,112,105,121,103,55,47,55,0,47,112,105,121,103,56,47,49,0,47,112,105,121,103,56,47,50,0,47,112,105,121,103,56,47,51,0,47,112,105,121,103,56,47,52,0,47,112,105,121,103,56,47,53,0,47,112,105,121,103,56,47,54,0,47,112,105,121,103,56,47,55,0,47,112,105,121,103,56,47,56,0,47,112,105,121,103,57,47,49,0,47,112,105,121,103,57,47,50,0,47,112,105,121,103,57,47,51,0,47,112,105,121,103,57,47,52,0,47,112,105,121,103,57,47,53,0,47,112,105,121,103,57,47,54,0,47,112,105,121,103,57,47,55,0,47,112,105,121,103,57,47,56,0,47,112,105,121,103,57,47,57,0,47,112,114,103,110,49,48,47,49,0,47,112,114,103,110,49,48,47,49,48,0,47,112,114,103,110,49,48,47,50,0,47,112,114,103,110,49,48,47,51,0,47,112,114,103,110,49,48,47,52,0,47,112,114,103,110,49,48,47,53,0,47,112,114,103,110,49,48,47,54,0,47,112,114,103,110,49,48,47,55,0,47,112,114,103,110,49,48,47,56,0,47,112,114,103,110,49,48,47,57,0,47,112,114,103,110,49,49,47,49,0,47,112,114,103,110,49,49,47,49,48,0,47,112,114,103,110,49,49,47,49,49,0,47,112,114,103,110,49,49,47,50,0,47,112,114,103,110,49,49,47,51,0,47,112,114,103,110,49,49,47,52,0,47,112,114,103,110,49,49,47,53,0,47,112,114,103,110,49,49,47,54,0,47,112,114,103,110,49,49,47,55,0,47,112,114,103,110,49,49,47,56,0,47,112,114,103,110,49,49,47,57,0,47,112,114,103,110,51,47,49,0,47,112,114,103,110,51,47,50,0,47,112,114,103,110,51,47,51,0,47,112,114,103,110,52,47,49,0,47,112,114,103,110,52,47,50,0,47,112,114,103,110,52,47,51,0,47,112,114,103,110,52,47,52,0,47,112,114,103,110,53,47,49,0,47,112,114,103,110,53,47,50,0,47,112,114,103,110,53,47,51,0,47,112,114,103,110,53,47,52,0,47,112,114,103,110,53,47,53,0,47,112,114,103,110,54,47,49,0,47,112,114,103,110,54,47,50,0,47,112,114,103,110,54,47,51,0,47,112,114,103,110,54,47,52,0,47,112,114,103,110,54,47,53,0,47,112,114,103,110,54,47,54,0,47,112,114,103,110,55,47,49,0,47,112,114,103,110,55,47,50,0,47,112,114,103,110,55,47,51,0,47,112,114,103,110,55,47,52,0,47,112,114,103,110,55,47,53,0,47,112,114,103,110,55,47,54,0,47,112,114,103,110,55,47,55,0,47,112,114,103,110,56,47,49,0,47,112,114,103,110,56,47,50,0,47,112,114,103,110,56,47,51,0,47,112,114,103,110,56,47,52,0,47,112,114,103,110,56,47,53,0,47,112,114,103,110,56,47,54,0,47,112,114,103,110,56,47,55,0,47,112,114,103,110,56,47,56,0,47,112,114,103,110,57,47,49,0,47,112,114,103,110,57,47,50,0,47,112,114,103,110,57,47,51,0,47,112,114,103,110,57,47,52,0,47,112,114,103,110,57,47,53,0,47,112,114,103,110,57,47,54,0,47,112,114,103,110,57,47,55,0,47,112,114,103,110,57,47,56,0,47,112,114,103,110,57,47,57,0,47,112,117,98,117,51,47,49,0,47,112,117,98,117,51,47,50,0,47,112,117,98,117,51,47,51,0,47,112,117,98,117,52,47,49,0,47,112,117,98,117,52,47,50,0,47,112,117,98,117,52,47,51,0,47,112,117,98,117,52,47,52,0,47,112,117,98,117,53,47,49,0,47,112,117,98,117,53,47,50,0,47,112,117,98,117,53,47,51,0,47,112,117,98,117,53,47,52,0,47,112,117,98,117,53,47,53,0,47,112,117,98,117,54,47,49,0,47,112,117,98,117,54,47,50,0,47,112,117,98,117,54,47,51,0,47,112,117,98,117,54,47,52,0,47,112,117,98,117,54,47,53,0,47,112,117,98,117,54,47,54,0,47,112,117,98,117,55,47,49,0,47,112,117,98,117,55,47,50,0,47,112,117,98,117,55,47,51,0,47,112,117,98,117,55,47,52,0,47,112,117,98,117,55,47,53,0,47,112,117,98,117,55,47,54,0,47,112,117,98,117,55,47,55,0,47,112,117,98,117,56,47,49,0,47,112,117,98,117,56,47,50,0,47,112,117,98,117,56,47,51,0,47,112,117,98,117,56,47,52,0,47,112,117,98,117,56,47,53,0,47,112,117,98,117,56,47,54,0,47,112,117,98,117,56,47,55,0,47,112,117,98,117,56,47,56,0,47,112,117,98,117,57,47,49,0,47,112,117,98,117,57,47,50,0,47,112,117,98,117,57,47,51,0,47,112,117,98,117,57,47,52,0,47,112,117,98,117,57,47,53,0,47,112,117,98,117,57,47,54,0,47,112,117,98,117,57,47,55,0,47,112,117,98,117,57,47,56,0,47,112,117,98,117,57,47,57,0,47,112,117,98,117,103,110,51,47,49,0,47,112,117,98,117,103,110,51,47,50,0,47,112,117,98,117,103,110,51,47,51,0,47,112,117,98,117,103,110,52,47,49,0,47,112,117,98,117,103,110,52,47,50,0,47,112,117,98,117,103,110,52,47,51,0,47,112,117,98,117,103,110,52,47,52,0,47,112,117,98,117,103,110,53,47,49,0,47,112,117,98,117,103,110,53,47,50,0,47,112,117,98,117,103,110,53,47,51,0,47,112,117,98,117,103,110,53,47,52,0,47,112,117,98,117,103,110,53,47,53,0,47,112,117,98,117,103,110,54,47,49,0,47,112,117,98,117,103,110,54,47,50,0,47,112,117,98,117,103,110,54,47,51,0,47,112,117,98,117,103,110,54,47,52,0,47,112,117,98,117,103,110,54,47,53,0,47,112,117,98,117,103,110,54,47,54,0,47,112,117,98,117,103,110,55,47,49,0,47,112,117,98,117,103,110,55,47,50,0,47,112,117,98,117,103,110,55,47,51,0,47,112,117,98,117,103,110,55,47,52,0,47,112,117,98,117,103,110,55,47,53,0,47,112,117,98,117,103,110,55,47,54,0,47,112,117,98,117,103,110,55,47,55,0,47,112,117,98,117,103,110,56,47,49,0,47,112,117,98,117,103,110,56,47,50,0,47,112,117,98,117,103,110,56,47,51,0,47,112,117,98,117,103,110,56,47,52,0,47,112,117,98,117,103,110,56,47,53,0,47,112,117,98,117,103,110,56,47,54,0,47,112,117,98,117,103,110,56,47,55,0,47,112,117,98,117,103,110,56,47,56,0,47,112,117,98,117,103,110,57,47,49,0,47,112,117,98,117,103,110,57,47,50,0,47,112,117,98,117,103,110,57,47,51,0,47,112,117,98,117,103,110,57,47,52,0,47,112,117,98,117,103,110,57,47,53,0,47,112,117,98,117,103,110,57,47,54,0,47,112,117,98,117,103,110,57,47,55,0,47,112,117,98,117,103,110,57,47,56,0,47,112,117,98,117,103,110,57,47,57,0,47,112,117,111,114,49,48,47,49,0,47,112,117,111,114,49,48,47,49,48,0,47,112,117,111,114,49,48,47,50,0,47,112,117,111,114,49,48,47,51,0,47,112,117,111,114,49,48,47,52,0,47,112,117,111,114,49,48,47,53,0,47,112,117,111,114,49,48,47,54,0,47,112,117,111,114,49,48,47,55,0,47,112,117,111,114,49,48,47,56,0,47,112,117,111,114,49,48,47,57,0,47,112,117,111,114,49,49,47,49,0,47,112,117,111,114,49,49,47,49,48,0,47,112,117,111,114,49,49,47,49,49,0,47,112,117,111,114,49,49,47,50,0,47,112,117,111,114,49,49,47,51,0,47,112,117,111,114,49,49,47,52,0,47,112,117,111,114,49,49,47,53,0,47,112,117,111,114,49,49,47,54,0,47,112,117,111,114,49,49,47,55,0,47,112,117,111,114,49,49,47,56,0,47,112,117,111,114,49,49,47,57,0,47,112,117,111,114,51,47,49,0,47,112,117,111,114,51,47,50,0,47,112,117,111,114,51,47,51,0,47,112,117,111,114,52,47,49,0,47,112,117,111,114,52,47,50,0,47,112,117,111,114,52,47,51,0,47,112,117,111,114,52,47,52,0,47,112,117,111,114,53,47,49,0,47,112,117,111,114,53,47,50,0,47,112,117,111,114,53,47,51,0,47,112,117,111,114,53,47,52,0,47,112,117,111,114,53,47,53,0,47,112,117,111,114,54,47,49,0,47,112,117,111,114,54,47,50,0,47,112,117,111,114,54,47,51,0,47,112,117,111,114,54,47,52,0,47,112,117,111,114,54,47,53,0,47,112,117,111,114,54,47,54,0,47,112,117,111,114,55,47,49,0,47,112,117,111,114,55,47,50,0,47,112,117,111,114,55,47,51,0,47,112,117,111,114,55,47,52,0,47,112,117,111,114,55,47,53,0,47,112,117,111,114,55,47,54,0,47,112,117,111,114,55,47,55,0,47,112,117,111,114,56,47,49,0,47,112,117,111,114,56,47,50,0,47,112,117,111,114,56,47,51,0,47,112,117,111,114,56,47,52,0,47,112,117,111,114,56,47,53,0,47,112,117,111,114,56,47,54,0,47,112,117,111,114,56,47,55,0,47,112,117,111,114,56,47,56,0,47,112,117,111,114,57,47,49,0,47,112,117,111,114,57,47,50,0,47,112,117,111,114,57,47,51,0,47,112,117,111,114,57,47,52,0,47,112,117,111,114,57,47,53,0,47,112,117,111,114,57,47,54,0,47,112,117,111,114,57,47,55,0,47,112,117,111,114,57,47,56,0,47,112,117,111,114,57,47,57,0,47,112,117,114,100,51,47,49,0,47,112,117,114,100,51,47,50,0,47,112,117,114,100,51,47,51,0,47,112,117,114,100,52,47,49,0,47,112,117,114,100,52,47,50,0,47,112,117,114,100,52,47,51,0,47,112,117,114,100,52,47,52,0,47,112,117,114,100,53,47,49,0,47,112,117,114,100,53,47,50,0,47,112,117,114,100,53,47,51,0,47,112,117,114,100,53,47,52,0,47,112,117,114,100,53,47,53,0,47,112,117,114,100,54,47,49,0,47,112,117,114,100,54,47,50,0,47,112,117,114,100,54,47,51,0,47,112,117,114,100,54,47,52,0,47,112,117,114,100,54,47,53,0,47,112,117,114,100,54,47,54,0,47,112,117,114,100,55,47,49,0,47,112,117,114,100,55,47,50,0,47,112,117,114,100,55,47,51,0,47,112,117,114,100,55,47,52,0,47,112,117,114,100,55,47,53,0,47,112,117,114,100,55,47,54,0,47,112,117,114,100,55,47,55,0,47,112,117,114,100,56,47,49,0,47,112,117,114,100,56,47,50,0,47,112,117,114,100,56,47,51,0,47,112,117,114,100,56,47,52,0,47,112,117,114,100,56,47,53,0,47,112,117,114,100,56,47,54,0,47,112,117,114,100,56,47,55,0,47,112,117,114,100,56,47,56,0,47,112,117,114,100,57,47,49,0,47,112,117,114,100,57,47,50,0,47,112,117,114,100,57,47,51,0,47,112,117,114,100,57,47,52,0,47,112,117,114,100,57,47,53,0,47,112,117,114,100,57,47,54,0,47,112,117,114,100,57,47,55,0,47,112,117,114,100,57,47,56,0,47,112,117,114,100,57,47,57,0,47,112,117,114,112,108,101,115,51,47,49,0,47,112,117,114,112,108,101,115,51,47,50,0,47,112,117,114,112,108,101,115,51,47,51,0,47,112,117,114,112,108,101,115,52,47,49,0,47,112,117,114,112,108,101,115,52,47,50,0,47,112,117,114,112,108,101,115,52,47,51,0,47,112,117,114,112,108,101,115,52,47,52,0,47,112,117,114,112,108,101,115,53,47,49,0,47,112,117,114,112,108,101,115,53,47,50,0,47,112,117,114,112,108,101,115,53,47,51,0,47,112,117,114,112,108,101,115,53,47,52,0,47,112,117,114,112,108,101,115,53,47,53,0,47,112,117,114,112,108,101,115,54,47,49,0,47,112,117,114,112,108,101,115,54,47,50,0,47,112,117,114,112,108,101,115,54,47,51,0,47,112,117,114,112,108,101,115,54,47,52,0,47,112,117,114,112,108,101,115,54,47,53,0,47,112,117,114,112,108,101,115,54,47,54,0,47,112,117,114,112,108,101,115,55,47,49,0,47,112,117,114,112,108,101,115,55,47,50,0,47,112,117,114,112,108,101,115,55,47,51,0,47,112,117,114,112,108,101,115,55,47,52,0,47,112,117,114,112,108,101,115,55,47,53,0,47,112,117,114,112,108,101,115,55,47,54,0,47,112,117,114,112,108,101,115,55,47,55,0,47,112,117,114,112,108,101,115,56,47,49,0,47,112,117,114,112,108,101,115,56,47,50,0,47,112,117,114,112,108,101,115,56,47,51,0,47,112,117,114,112,108,101,115,56,47,52,0,47,112,117,114,112,108,101,115,56,47,53,0,47,112,117,114,112,108,101,115,56,47,54,0,47,112,117,114,112,108,101,115,56,47,55,0,47,112,117,114,112,108,101,115,56,47,56,0,47,112,117,114,112,108,101,115,57,47,49,0,47,112,117,114,112,108,101,115,57,47,50,0,47,112,117,114,112,108,101,115,57,47,51,0,47,112,117,114,112,108,101,115,57,47,52,0,47,112,117,114,112,108,101,115,57,47,53,0,47,112,117,114,112,108,101,115,57,47,54,0,47,112,117,114,112,108,101,115,57,47,55,0,47,112,117,114,112,108,101,115,57,47,56,0,47,112,117,114,112,108,101,115,57,47,57,0,47,114,100,98,117,49,48,47,49,0,47,114,100,98,117,49,48,47,49,48,0,47,114,100,98,117,49,48,47,50,0,47,114,100,98,117,49,48,47,51,0,47,114,100,98,117,49,48,47,52,0,47,114,100,98,117,49,48,47,53,0,47,114,100,98,117,49,48,47,54,0,47,114,100,98,117,49,48,47,55,0,47,114,100,98,117,49,48,47,56,0,47,114,100,98,117,49,48,47,57,0,47,114,100,98,117,49,49,47,49,0,47,114,100,98,117,49,49,47,49,48,0,47,114,100,98,117,49,49,47,49,49,0,47,114,100,98,117,49,49,47,50,0,47,114,100,98,117,49,49,47,51,0,47,114,100,98,117,49,49,47,52,0,47,114,100,98,117,49,49,47,53,0,47,114,100,98,117,49,49,47,54,0,47,114,100,98,117,49,49,47,55,0,47,114,100,98,117,49,49,47,56,0,47,114,100,98,117,49,49,47,57,0,47,114,100,98,117,51,47,49,0,47,114,100,98,117,51,47,50,0,47,114,100,98,117,51,47,51,0,47,114,100,98,117,52,47,49,0,47,114,100,98,117,52,47,50,0,47,114,100,98,117,52,47,51,0,47,114,100,98,117,52,47,52,0,47,114,100,98,117,53,47,49,0,47,114,100,98,117,53,47,50,0,47,114,100,98,117,53,47,51,0,47,114,100,98,117,53,47,52,0,47,114,100,98,117,53,47,53,0,47,114,100,98,117,54,47,49,0,47,114,100,98,117,54,47,50,0,47,114,100,98,117,54,47,51,0,47,114,100,98,117,54,47,52,0,47,114,100,98,117,54,47,53,0,47,114,100,98,117,54,47,54,0,47,114,100,98,117,55,47,49,0,47,114,100,98,117,55,47,50,0,47,114,100,98,117,55,47,51,0,47,114,100,98,117,55,47,52,0,47,114,100,98,117,55,47,53,0,47,114,100,98,117,55,47,54,0,47,114,100,98,117,55,47,55,0,47,114,100,98,117,56,47,49,0,47,114,100,98,117,56,47,50,0,47,114,100,98,117,56,47,51,0,47,114,100,98,117,56,47,52,0,47,114,100,98,117,56,47,53,0,47,114,100,98,117,56,47,54,0,47,114,100,98,117,56,47,55,0,47,114,100,98,117,56,47,56,0,47,114,100,98,117,57,47,49,0,47,114,100,98,117,57,47,50,0,47,114,100,98,117,57,47,51,0,47,114,100,98,117,57,47,52,0,47,114,100,98,117,57,47,53,0,47,114,100,98,117,57,47,54,0,47,114,100,98,117,57,47,55,0,47,114,100,98,117,57,47,56,0,47,114,100,98,117,57,47,57,0,47,114,100,103,121,49,48,47,49,0,47,114,100,103,121,49,48,47,49,48,0,47,114,100,103,121,49,48,47,50,0,47,114,100,103,121,49,48,47,51,0,47,114,100,103,121,49,48,47,52,0,47,114,100,103,121,49,48,47,53,0,47,114,100,103,121,49,48,47,54,0,47,114,100,103,121,49,48,47,55,0,47,114,100,103,121,49,48,47,56,0,47,114,100,103,121,49,48,47,57,0,47,114,100,103,121,49,49,47,49,0,47,114,100,103,121,49,49,47,49,48,0,47,114,100,103,121,49,49,47,49,49,0,47,114,100,103,121,49,49,47,50,0,47,114,100,103,121,49,49,47,51,0,47,114,100,103,121,49,49,47,52,0,47,114,100,103,121,49,49,47,53,0,47,114,100,103,121,49,49,47,54,0,47,114,100,103,121,49,49,47,55,0,47,114,100,103,121,49,49,47,56,0,47,114,100,103,121,49,49,47,57,0,47,114,100,103,121,51,47,49,0,47,114,100,103,121,51,47,50,0,47,114,100,103,121,51,47,51,0,47,114,100,103,121,52,47,49,0,47,114,100,103,121,52,47,50,0,47,114,100,103,121,52,47,51,0,47,114,100,103,121,52,47,52,0,47,114,100,103,121,53,47,49,0,47,114,100,103,121,53,47,50,0,47,114,100,103,121,53,47,51,0,47,114,100,103,121,53,47,52,0,47,114,100,103,121,53,47,53,0,47,114,100,103,121,54,47,49,0,47,114,100,103,121,54,47,50,0,47,114,100,103,121,54,47,51,0,47,114,100,103,121,54,47,52,0,47,114,100,103,121,54,47,53,0,47,114,100,103,121,54,47,54,0,47,114,100,103,121,55,47,49,0,47,114,100,103,121,55,47,50,0,47,114,100,103,121,55,47,51,0,47,114,100,103,121,55,47,52,0,47,114,100,103,121,55,47,53,0,47,114,100,103,121,55,47,54,0,47,114,100,103,121,55,47,55,0,47,114,100,103,121,56,47,49,0,47,114,100,103,121,56,47,50,0,47,114,100,103,121,56,47,51,0,47,114,100,103,121,56,47,52,0,47,114,100,103,121,56,47,53,0,47,114,100,103,121,56,47,54,0,47,114,100,103,121,56,47,55,0,47,114,100,103,121,56,47,56,0,47,114,100,103,121,57,47,49,0,47,114,100,103,121,57,47,50,0,47,114,100,103,121,57,47,51,0,47,114,100,103,121,57,47,52,0,47,114,100,103,121,57,47,53,0,47,114,100,103,121,57,47,54,0,47,114,100,103,121,57,47,55,0,47,114,100,103,121,57,47,56,0,47,114,100,103,121,57,47,57,0,47,114,100,112,117,51,47,49,0,47,114,100,112,117,51,47,50,0,47,114,100,112,117,51,47,51,0,47,114,100,112,117,52,47,49,0,47,114,100,112,117,52,47,50,0,47,114,100,112,117,52,47,51,0,47,114,100,112,117,52,47,52,0,47,114,100,112,117,53,47,49,0,47,114,100,112,117,53,47,50,0,47,114,100,112,117,53,47,51,0,47,114,100,112,117,53,47,52,0,47,114,100,112,117,53,47,53,0,47,114,100,112,117,54,47,49,0,47,114,100,112,117,54,47,50,0,47,114,100,112,117,54,47,51,0,47,114,100,112,117,54,47,52,0,47,114,100,112,117,54,47,53,0,47,114,100,112,117,54,47,54,0,47,114,100,112,117,55,47,49,0,47,114,100,112,117,55,47,50,0,47,114,100,112,117,55,47,51,0,47,114,100,112,117,55,47,52,0,47,114,100,112,117,55,47,53,0,47,114,100,112,117,55,47,54,0,47,114,100,112,117,55,47,55,0,47,114,100,112,117,56,47,49,0,47,114,100,112,117,56,47,50,0,47,114,100,112,117,56,47,51,0,47,114,100,112,117,56,47,52,0,47,114,100,112,117,56,47,53,0,47,114,100,112,117,56,47,54,0,47,114,100,112,117,56,47,55,0,47,114,100,112,117,56,47,56,0,47,114,100,112,117,57,47,49,0,47,114,100,112,117,57,47,50,0,47,114,100,112,117,57,47,51,0,47,114,100,112,117,57,47,52,0,47,114,100,112,117,57,47,53,0,47,114,100,112,117,57,47,54,0,47,114,100,112,117,57,47,55,0,47,114,100,112,117,57,47,56,0,47,114,100,112,117,57,47,57,0,47,114,100,121,108,98,117,49,48,47,49,0,47,114,100,121,108,98,117,49,48,47,49,48,0,47,114,100,121,108,98,117,49,48,47,50,0,47,114,100,121,108,98,117,49,48,47,51,0,47,114,100,121,108,98,117,49,48,47,52,0,47,114,100,121,108,98,117,49,48,47,53,0,47,114,100,121,108,98,117,49,48,47,54,0,47,114,100,121,108,98,117,49,48,47,55,0,47,114,100,121,108,98,117,49,48,47,56,0,47,114,100,121,108,98,117,49,48,47,57,0,47,114,100,121,108,98,117,49,49,47,49,0,47,114,100,121,108,98,117,49,49,47,49,48,0,47,114,100,121,108,98,117,49,49,47,49,49,0,47,114,100,121,108,98,117,49,49,47,50,0,47,114,100,121,108,98,117,49,49,47,51,0,47,114,100,121,108,98,117,49,49,47,52,0,47,114,100,121,108,98,117,49,49,47,53,0,47,114,100,121,108,98,117,49,49,47,54,0,47,114,100,121,108,98,117,49,49,47,55,0,47,114,100,121,108,98,117,49,49,47,56,0,47,114,100,121,108,98,117,49,49,47,57,0,47,114,100,121,108,98,117,51,47,49,0,47,114,100,121,108,98,117,51,47,50,0,47,114,100,121,108,98,117,51,47,51,0,47,114,100,121,108,98,117,52,47,49,0,47,114,100,121,108,98,117,52,47,50,0,47,114,100,121,108,98,117,52,47,51,0,47,114,100,121,108,98,117,52,47,52,0,47,114,100,121,108,98,117,53,47,49,0,47,114,100,121,108,98,117,53,47,50,0,47,114,100,121,108,98,117,53,47,51,0,47,114,100,121,108,98,117,53,47,52,0,47,114,100,121,108,98,117,53,47,53,0,47,114,100,121,108,98,117,54,47,49,0,47,114,100,121,108,98,117,54,47,50,0,47,114,100,121,108,98,117,54,47,51,0,47,114,100,121,108,98,117,54,47,52,0,47,114,100,121,108,98,117,54,47,53,0,47,114,100,121,108,98,117,54,47,54,0,47,114,100,121,108,98,117,55,47,49,0,47,114,100,121,108,98,117,55,47,50,0,47,114,100,121,108,98,117,55,47,51,0,47,114,100,121,108,98,117,55,47,52,0,47,114,100,121,108,98,117,55,47,53,0,47,114,100,121,108,98,117,55,47,54,0,47,114,100,121,108,98,117,55,47,55,0,47,114,100,121,108,98,117,56,47,49,0,47,114,100,121,108,98,117,56,47,50,0,47,114,100,121,108,98,117,56,47,51,0,47,114,100,121,108,98,117,56,47,52,0,47,114,100,121,108,98,117,56,47,53,0,47,114,100,121,108,98,117,56,47,54,0,47,114,100,121,108,98,117,56,47,55,0,47,114,100,121,108,98,117,56,47,56,0,47,114,100,121,108,98,117,57,47,49,0,47,114,100,121,108,98,117,57,47,50,0,47,114,100,121,108,98,117,57,47,51,0,47,114,100,121,108,98,117,57,47,52,0,47,114,100,121,108,98,117,57,47,53,0,47,114,100,121,108,98,117,57,47,54,0,47,114,100,121,108,98,117,57,47,55,0,47,114,100,121,108,98,117,57,47,56,0,47,114,100,121,108,98,117,57,47,57,0,47,114,100,121,108,103,110,49,48,47,49,0,47,114,100,121,108,103,110,49,48,47,49,48,0,47,114,100,121,108,103,110,49,48,47,50,0,47,114,100,121,108,103,110,49,48,47,51,0,47,114,100,121,108,103,110,49,48,47,52,0,47,114,100,121,108,103,110,49,48,47,53,0,47,114,100,121,108,103,110,49,48,47,54,0,47,114,100,121,108,103,110,49,48,47,55,0,47,114,100,121,108,103,110,49,48,47,56,0,47,114,100,121,108,103,110,49,48,47,57,0,47,114,100,121,108,103,110,49,49,47,49,0,47,114,100,121,108,103,110,49,49,47,49,48,0,47,114,100,121,108,103,110,49,49,47,49,49,0,47,114,100,121,108,103,110,49,49,47,50,0,47,114,100,121,108,103,110,49,49,47,51,0,47,114,100,121,108,103,110,49,49,47,52,0,47,114,100,121,108,103,110,49,49,47,53,0,47,114,100,121,108,103,110,49,49,47,54,0,47,114,100,121,108,103,110,49,49,47,55,0,47,114,100,121,108,103,110,49,49,47,56,0,47,114,100,121,108,103,110,49,49,47,57,0,47,114,100,121,108,103,110,51,47,49,0,47,114,100,121,108,103,110,51,47,50,0,47,114,100,121,108,103,110,51,47,51,0,47,114,100,121,108,103,110,52,47,49,0,47,114,100,121,108,103,110,52,47,50,0,47,114,100,121,108,103,110,52,47,51,0,47,114,100,121,108,103,110,52,47,52,0,47,114,100,121,108,103,110,53,47,49,0,47,114,100,121,108,103,110,53,47,50,0,47,114,100,121,108,103,110,53,47,51,0,47,114,100,121,108,103,110,53,47,52,0,47,114,100,121,108,103,110,53,47,53,0,47,114,100,121,108,103,110,54,47,49,0,47,114,100,121,108,103,110,54,47,50,0,47,114,100,121,108,103,110,54,47,51,0,47,114,100,121,108,103,110,54,47,52,0,47,114,100,121,108,103,110,54,47,53,0,47,114,100,121,108,103,110,54,47,54,0,47,114,100,121,108,103,110,55,47,49,0,47,114,100,121,108,103,110,55,47,50,0,47,114,100,121,108,103,110,55,47,51,0,47,114,100,121,108,103,110,55,47,52,0,47,114,100,121,108,103,110,55,47,53,0,47,114,100,121,108,103,110,55,47,54,0,47,114,100,121,108,103,110,55,47,55,0,47,114,100,121,108,103,110,56,47,49,0,47,114,100,121,108,103,110,56,47,50,0,47,114,100,121,108,103,110,56,47,51,0,47,114,100,121,108,103,110,56,47,52,0,47,114,100,121,108,103,110,56,47,53,0,47,114,100,121,108,103,110,56,47,54,0,47,114,100,121,108,103,110,56,47,55,0,47,114,100,121,108,103,110,56,47,56,0,47,114,100,121,108,103,110,57,47,49,0,47,114,100,121,108,103,110,57,47,50,0,47,114,100,121,108,103,110,57,47,51,0,47,114,100,121,108,103,110,57,47,52,0,47,114,100,121,108,103,110,57,47,53,0,47,114,100,121,108,103,110,57,47,54,0,47,114,100,121,108,103,110,57,47,55,0,47,114,100,121,108,103,110,57,47,56,0,47,114,100,121,108,103,110,57,47,57,0,47,114,101,100,115,51,47,49,0,47,114,101,100,115,51,47,50,0,47,114,101,100,115,51,47,51,0,47,114,101,100,115,52,47,49,0,47,114,101,100,115,52,47,50,0,47,114,101,100,115,52,47,51,0,47,114,101,100,115,52,47,52,0,47,114,101,100,115,53,47,49,0,47,114,101,100,115,53,47,50,0,47,114,101,100,115,53,47,51,0,47,114,101,100,115,53,47,52,0,47,114,101,100,115,53,47,53,0,47,114,101,100,115,54,47,49,0,47,114,101,100,115,54,47,50,0,47,114,101,100,115,54,47,51,0,47,114,101,100,115,54,47,52,0,47,114,101,100,115,54,47,53,0,47,114,101,100,115,54,47,54,0,47,114,101,100,115,55,47,49,0,47,114,101,100,115,55,47,50,0,47,114,101,100,115,55,47,51,0,47,114,101,100,115,55,47,52,0,47,114,101,100,115,55,47,53,0,47,114,101,100,115,55,47,54,0,47,114,101,100,115,55,47,55,0,47,114,101,100,115,56,47,49,0,47,114,101,100,115,56,47,50,0,47,114,101,100,115,56,47,51,0,47,114,101,100,115,56,47,52,0,47,114,101,100,115,56,47,53,0,47,114,101,100,115,56,47,54,0,47,114,101,100,115,56,47,55,0,47,114,101,100,115,56,47,56,0,47,114,101,100,115,57,47,49,0,47,114,101,100,115,57,47,50,0,47,114,101,100,115,57,47,51,0,47,114,101,100,115,57,47,52,0,47,114,101,100,115,57,47,53,0,47,114,101,100,115,57,47,54,0,47,114,101,100,115,57,47,55,0,47,114,101,100,115,57,47,56,0,47,114,101,100,115,57,47,57,0,47,115,101,116,49,51,47,49,0,47,115,101,116,49,51,47,50,0,47,115,101,116,49,51,47,51,0,47,115,101,116,49,52,47,49,0,47,115,101,116,49,52,47,50,0,47,115,101,116,49,52,47,51,0,47,115,101,116,49,52,47,52,0,47,115,101,116,49,53,47,49,0,47,115,101,116,49,53,47,50,0,47,115,101,116,49,53,47,51,0,47,115,101,116,49,53,47,52,0,47,115,101,116,49,53,47,53,0,47,115,101,116,49,54,47,49,0,47,115,101,116,49,54,47,50,0,47,115,101,116,49,54,47,51,0,47,115,101,116,49,54,47,52,0,47,115,101,116,49,54,47,53,0,47,115,101,116,49,54,47,54,0,47,115,101,116,49,55,47,49,0,47,115,101,116,49,55,47,50,0,47,115,101,116,49,55,47,51,0,47,115,101,116,49,55,47,52,0,47,115,101,116,49,55,47,53,0,47,115,101,116,49,55,47,54,0,47,115,101,116,49,55,47,55,0,47,115,101,116,49,56,47,49,0,47,115,101,116,49,56,47,50,0,47,115,101,116,49,56,47,51,0,47,115,101,116,49,56,47,52,0,47,115,101,116,49,56,47,53,0,47,115,101,116,49,56,47,54,0,47,115,101,116,49,56,47,55,0,47,115,101,116,49,56,47,56,0,47,115,101,116,49,57,47,49,0,47,115,101,116,49,57,47,50,0,47,115,101,116,49,57,47,51,0,47,115,101,116,49,57,47,52,0,47,115,101,116,49,57,47,53,0,47,115,101,116,49,57,47,54,0,47,115,101,116,49,57,47,55,0,47,115,101,116,49,57,47,56,0,47,115,101,116,49,57,47,57,0,47,115,101,116,50,51,47,49,0,47,115,101,116,50,51,47,50,0,47,115,101,116,50,51,47,51,0,47,115,101,116,50,52,47,49,0,47,115,101,116,50,52,47,50,0,47,115,101,116,50,52,47,51,0,47,115,101,116,50,52,47,52,0,47,115,101,116,50,53,47,49,0,47,115,101,116,50,53,47,50,0,47,115,101,116,50,53,47,51,0,47,115,101,116,50,53,47,52,0,47,115,101,116,50,53,47,53,0,47,115,101,116,50,54,47,49,0,47,115,101,116,50,54,47,50,0,47,115,101,116,50,54,47,51,0,47,115,101,116,50,54,47,52,0,47,115,101,116,50,54,47,53,0,47,115,101,116,50,54,47,54,0,47,115,101,116,50,55,47,49,0,47,115,101,116,50,55,47,50,0,47,115,101,116,50,55,47,51,0,47,115,101,116,50,55,47,52,0,47,115,101,116,50,55,47,53,0,47,115,101,116,50,55,47,54,0,47,115,101,116,50,55,47,55,0,47,115,101,116,50,56,47,49,0,47,115,101,116,50,56,47,50,0,47,115,101,116,50,56,47,51,0,47,115,101,116,50,56,47,52,0,47,115,101,116,50,56,47,53,0,47,115,101,116,50,56,47,54,0,47,115,101,116,50,56,47,55,0,47,115,101,116,50,56,47,56,0,47,115,101,116,51,49,48,47,49,0,47,115,101,116,51,49,48,47,49,48,0,47,115,101,116,51,49,48,47,50,0,47,115,101,116,51,49,48,47,51,0,47,115,101,116,51,49,48,47,52,0,47,115,101,116,51,49,48,47,53,0,47,115,101,116,51,49,48,47,54,0,47,115,101,116,51,49,48,47,55,0,47,115,101,116,51,49,48,47,56,0,47,115,101,116,51,49,48,47,57,0,47,115,101,116,51,49,49,47,49,0,47,115,101,116,51,49,49,47,49,48,0,47,115,101,116,51,49,49,47,49,49,0,47,115,101,116,51,49,49],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+153182);allocate([47,50,0,47,115,101,116,51,49,49,47,51,0,47,115,101,116,51,49,49,47,52,0,47,115,101,116,51,49,49,47,53,0,47,115,101,116,51,49,49,47,54,0,47,115,101,116,51,49,49,47,55,0,47,115,101,116,51,49,49,47,56,0,47,115,101,116,51,49,49,47,57,0,47,115,101,116,51,49,50,47,49,0,47,115,101,116,51,49,50,47,49,48,0,47,115,101,116,51,49,50,47,49,49,0,47,115,101,116,51,49,50,47,49,50,0,47,115,101,116,51,49,50,47,50,0,47,115,101,116,51,49,50,47,51,0,47,115,101,116,51,49,50,47,52,0,47,115,101,116,51,49,50,47,53,0,47,115,101,116,51,49,50,47,54,0,47,115,101,116,51,49,50,47,55,0,47,115,101,116,51,49,50,47,56,0,47,115,101,116,51,49,50,47,57,0,47,115,101,116,51,51,47,49,0,47,115,101,116,51,51,47,50,0,47,115,101,116,51,51,47,51,0,47,115,101,116,51,52,47,49,0,47,115,101,116,51,52,47,50,0,47,115,101,116,51,52,47,51,0,47,115,101,116,51,52,47,52,0,47,115,101,116,51,53,47,49,0,47,115,101,116,51,53,47,50,0,47,115,101,116,51,53,47,51,0,47,115,101,116,51,53,47,52,0,47,115,101,116,51,53,47,53,0,47,115,101,116,51,54,47,49,0,47,115,101,116,51,54,47,50,0,47,115,101,116,51,54,47,51,0,47,115,101,116,51,54,47,52,0,47,115,101,116,51,54,47,53,0,47,115,101,116,51,54,47,54,0,47,115,101,116,51,55,47,49,0,47,115,101,116,51,55,47,50,0,47,115,101,116,51,55,47,51,0,47,115,101,116,51,55,47,52,0,47,115,101,116,51,55,47,53,0,47,115,101,116,51,55,47,54,0,47,115,101,116,51,55,47,55,0,47,115,101,116,51,56,47,49,0,47,115,101,116,51,56,47,50,0,47,115,101,116,51,56,47,51,0,47,115,101,116,51,56,47,52,0,47,115,101,116,51,56,47,53,0,47,115,101,116,51,56,47,54,0,47,115,101,116,51,56,47,55,0,47,115,101,116,51,56,47,56,0,47,115,101,116,51,57,47,49,0,47,115,101,116,51,57,47,50,0,47,115,101,116,51,57,47,51,0,47,115,101,116,51,57,47,52,0,47,115,101,116,51,57,47,53,0,47,115,101,116,51,57,47,54,0,47,115,101,116,51,57,47,55,0,47,115,101,116,51,57,47,56,0,47,115,101,116,51,57,47,57,0,47,115,112,101,99,116,114,97,108,49,48,47,49,0,47,115,112,101,99,116,114,97,108,49,48,47,49,48,0,47,115,112,101,99,116,114,97,108,49,48,47,50,0,47,115,112,101,99,116,114,97,108,49,48,47,51,0,47,115,112,101,99,116,114,97,108,49,48,47,52,0,47,115,112,101,99,116,114,97,108,49,48,47,53,0,47,115,112,101,99,116,114,97,108,49,48,47,54,0,47,115,112,101,99,116,114,97,108,49,48,47,55,0,47,115,112,101,99,116,114,97,108,49,48,47,56,0,47,115,112,101,99,116,114,97,108,49,48,47,57,0,47,115,112,101,99,116,114,97,108,49,49,47,49,0,47,115,112,101,99,116,114,97,108,49,49,47,49,48,0,47,115,112,101,99,116,114,97,108,49,49,47,49,49,0,47,115,112,101,99,116,114,97,108,49,49,47,50,0,47,115,112,101,99,116,114,97,108,49,49,47,51,0,47,115,112,101,99,116,114,97,108,49,49,47,52,0,47,115,112,101,99,116,114,97,108,49,49,47,53,0,47,115,112,101,99,116,114,97,108,49,49,47,54,0,47,115,112,101,99,116,114,97,108,49,49,47,55,0,47,115,112,101,99,116,114,97,108,49,49,47,56,0,47,115,112,101,99,116,114,97,108,49,49,47,57,0,47,115,112,101,99,116,114,97,108,51,47,49,0,47,115,112,101,99,116,114,97,108,51,47,50,0,47,115,112,101,99,116,114,97,108,51,47,51,0,47,115,112,101,99,116,114,97,108,52,47,49,0,47,115,112,101,99,116,114,97,108,52,47,50,0,47,115,112,101,99,116,114,97,108,52,47,51,0,47,115,112,101,99,116,114,97,108,52,47,52,0,47,115,112,101,99,116,114,97,108,53,47,49,0,47,115,112,101,99,116,114,97,108,53,47,50,0,47,115,112,101,99,116,114,97,108,53,47,51,0,47,115,112,101,99,116,114,97,108,53,47,52,0,47,115,112,101,99,116,114,97,108,53,47,53,0,47,115,112,101,99,116,114,97,108,54,47,49,0,47,115,112,101,99,116,114,97,108,54,47,50,0,47,115,112,101,99,116,114,97,108,54,47,51,0,47,115,112,101,99,116,114,97,108,54,47,52,0,47,115,112,101,99,116,114,97,108,54,47,53,0,47,115,112,101,99,116,114,97,108,54,47,54,0,47,115,112,101,99,116,114,97,108,55,47,49,0,47,115,112,101,99,116,114,97,108,55,47,50,0,47,115,112,101,99,116,114,97,108,55,47,51,0,47,115,112,101,99,116,114,97,108,55,47,52,0,47,115,112,101,99,116,114,97,108,55,47,53,0,47,115,112,101,99,116,114,97,108,55,47,54,0,47,115,112,101,99,116,114,97,108,55,47,55,0,47,115,112,101,99,116,114,97,108,56,47,49,0,47,115,112,101,99,116,114,97,108,56,47,50,0,47,115,112,101,99,116,114,97,108,56,47,51,0,47,115,112,101,99,116,114,97,108,56,47,52,0,47,115,112,101,99,116,114,97,108,56,47,53,0,47,115,112,101,99,116,114,97,108,56,47,54,0,47,115,112,101,99,116,114,97,108,56,47,55,0,47,115,112,101,99,116,114,97,108,56,47,56,0,47,115,112,101,99,116,114,97,108,57,47,49,0,47,115,112,101,99,116,114,97,108,57,47,50,0,47,115,112,101,99,116,114,97,108,57,47,51,0,47,115,112,101,99,116,114,97,108,57,47,52,0,47,115,112,101,99,116,114,97,108,57,47,53,0,47,115,112,101,99,116,114,97,108,57,47,54,0,47,115,112,101,99,116,114,97,108,57,47,55,0,47,115,112,101,99,116,114,97,108,57,47,56,0,47,115,112,101,99,116,114,97,108,57,47,57,0,47,115,118,103,47,97,108,105,99,101,98,108,117,101,0,47,115,118,103,47,97,110,116,105,113,117,101,119,104,105,116,101,0,47,115,118,103,47,97,113,117,97,0,47,115,118,103,47,97,113,117,97,109,97,114,105,110,101,0,47,115,118,103,47,97,122,117,114,101,0,47,115,118,103,47,98,101,105,103,101,0,47,115,118,103,47,98,105,115,113,117,101,0,47,115,118,103,47,98,108,97,99,107,0,47,115,118,103,47,98,108,97,110,99,104,101,100,97,108,109,111,110,100,0,47,115,118,103,47,98,108,117,101,0,47,115,118,103,47,98,108,117,101,118,105,111,108,101,116,0,47,115,118,103,47,98,114,111,119,110,0,47,115,118,103,47,98,117,114,108,121,119,111,111,100,0,47,115,118,103,47,99,97,100,101,116,98,108,117,101,0,47,115,118,103,47,99,104,97,114,116,114,101,117,115,101,0,47,115,118,103,47,99,104,111,99,111,108,97,116,101,0,47,115,118,103,47,99,111,114,97,108,0,47,115,118,103,47,99,111,114,110,102,108,111,119,101,114,98,108,117,101,0,47,115,118,103,47,99,111,114,110,115,105,108,107,0,47,115,118,103,47,99,114,105,109,115,111,110,0,47,115,118,103,47,99,121,97,110,0,47,115,118,103,47,100,97,114,107,98,108,117,101,0,47,115,118,103,47,100,97,114,107,99,121,97,110,0,47,115,118,103,47,100,97,114,107,103,111,108,100,101,110,114,111,100,0,47,115,118,103,47,100,97,114,107,103,114,97,121,0,47,115,118,103,47,100,97,114,107,103,114,101,101,110,0,47,115,118,103,47,100,97,114,107,103,114,101,121,0,47,115,118,103,47,100,97,114,107,107,104,97,107,105,0,47,115,118,103,47,100,97,114,107,109,97,103,101,110,116,97,0,47,115,118,103,47,100,97,114,107,111,108,105,118,101,103,114,101,101,110,0,47,115,118,103,47,100,97,114,107,111,114,97,110,103,101,0,47,115,118,103,47,100,97,114,107,111,114,99,104,105,100,0,47,115,118,103,47,100,97,114,107,114,101,100,0,47,115,118,103,47,100,97,114,107,115,97,108,109,111,110,0,47,115,118,103,47,100,97,114,107,115,101,97,103,114,101,101,110,0,47,115,118,103,47,100,97,114,107,115,108,97,116,101,98,108,117,101,0,47,115,118,103,47,100,97,114,107,115,108,97,116,101,103,114,97,121,0,47,115,118,103,47,100,97,114,107,115,108,97,116,101,103,114,101,121,0,47,115,118,103,47,100,97,114,107,116,117,114,113,117,111,105,115,101,0,47,115,118,103,47,100,97,114,107,118,105,111,108,101,116,0,47,115,118,103,47,100,101,101,112,112,105,110,107,0,47,115,118,103,47,100,101,101,112,115,107,121,98,108,117,101,0,47,115,118,103,47,100,105,109,103,114,97,121,0,47,115,118,103,47,100,105,109,103,114,101,121,0,47,115,118,103,47,100,111,100,103,101,114,98,108,117,101,0,47,115,118,103,47,102,105,114,101,98,114,105,99,107,0,47,115,118,103,47,102,108,111,114,97,108,119,104,105,116,101,0,47,115,118,103,47,102,111,114,101,115,116,103,114,101,101,110,0,47,115,118,103,47,102,117,99,104,115,105,97,0,47,115,118,103,47,103,97,105,110,115,98,111,114,111,0,47,115,118,103,47,103,104,111,115,116,119,104,105,116,101,0,47,115,118,103,47,103,111,108,100,0,47,115,118,103,47,103,111,108,100,101,110,114,111,100,0,47,115,118,103,47,103,114,97,121,0,47,115,118,103,47,103,114,101,101,110,0,47,115,118,103,47,103,114,101,101,110,121,101,108,108,111,119,0,47,115,118,103,47,103,114,101,121,0,47,115,118,103,47,104,111,110,101,121,100,101,119,0,47,115,118,103,47,104,111,116,112,105,110,107,0,47,115,118,103,47,105,110,100,105,97,110,114,101,100,0,47,115,118,103,47,105,110,100,105,103,111,0,47,115,118,103,47,105,118,111,114,121,0,47,115,118,103,47,107,104,97,107,105,0,47,115,118,103,47,108,97,118,101,110,100,101,114,0,47,115,118,103,47,108,97,118,101,110,100,101,114,98,108,117,115,104,0,47,115,118,103,47,108,97,119,110,103,114,101,101,110,0,47,115,118,103,47,108,101,109,111,110,99,104,105,102,102,111,110,0,47,115,118,103,47,108,105,103,104,116,98,108,117,101,0,47,115,118,103,47,108,105,103,104,116,99,111,114,97,108,0,47,115,118,103,47,108,105,103,104,116,99,121,97,110,0,47,115,118,103,47,108,105,103,104,116,103,111,108,100,101,110,114,111,100,121,101,108,108,111,119,0,47,115,118,103,47,108,105,103,104,116,103,114,97,121,0,47,115,118,103,47,108,105,103,104,116,103,114,101,101,110,0,47,115,118,103,47,108,105,103,104,116,103,114,101,121,0,47,115,118,103,47,108,105,103,104,116,112,105,110,107,0,47,115,118,103,47,108,105,103,104,116,115,97,108,109,111,110,0,47,115,118,103,47,108,105,103,104,116,115,101,97,103,114,101,101,110,0,47,115,118,103,47,108,105,103,104,116,115,107,121,98,108,117,101,0,47,115,118,103,47,108,105,103,104,116,115,108,97,116,101,103,114,97,121,0,47,115,118,103,47,108,105,103,104,116,115,108,97,116,101,103,114,101,121,0,47,115,118,103,47,108,105,103,104,116,115,116,101,101,108,98,108,117,101,0,47,115,118,103,47,108,105,103,104,116,121,101,108,108,111,119,0,47,115,118,103,47,108,105,109,101,0,47,115,118,103,47,108,105,109,101,103,114,101,101,110,0,47,115,118,103,47,108,105,110,101,110,0,47,115,118,103,47,109,97,103,101,110,116,97,0,47,115,118,103,47,109,97,114,111,111,110,0,47,115,118,103,47,109,101,100,105,117,109,97,113,117,97,109,97,114,105,110,101,0,47,115,118,103,47,109,101,100,105,117,109,98,108,117,101,0,47,115,118,103,47,109,101,100,105,117,109,111,114,99,104,105,100,0,47,115,118,103,47,109,101,100,105,117,109,112,117,114,112,108,101,0,47,115,118,103,47,109,101,100,105,117,109,115,101,97,103,114,101,101,110,0,47,115,118,103,47,109,101,100,105,117,109,115,108,97,116,101,98,108,117,101,0,47,115,118,103,47,109,101,100,105,117,109,115,112,114,105,110,103,103,114,101,101,110,0,47,115,118,103,47,109,101,100,105,117,109,116,117,114,113,117,111,105,115,101,0,47,115,118,103,47,109,101,100,105,117,109,118,105,111,108,101,116,114,101,100,0,47,115,118,103,47,109,105,100,110,105,103,104,116,98,108,117,101,0,47,115,118,103,47,109,105,110,116,99,114,101,97,109,0,47,115,118,103,47,109,105,115,116,121,114,111,115,101,0,47,115,118,103,47,109,111,99,99,97,115,105,110,0,47,115,118,103,47,110,97,118,97,106,111,119,104,105,116,101,0,47,115,118,103,47,110,97,118,121,0,47,115,118,103,47,111,108,100,108,97,99,101,0,47,115,118,103,47,111,108,105,118,101,0,47,115,118,103,47,111,108,105,118,101,100,114,97,98,0,47,115,118,103,47,111,114,97,110,103,101,0,47,115,118,103,47,111,114,97,110,103,101,114,101,100,0,47,115,118,103,47,111,114,99,104,105,100,0,47,115,118,103,47,112,97,108,101,103,111,108,100,101,110,114,111,100,0,47,115,118,103,47,112,97,108,101,103,114,101,101,110,0,47,115,118,103,47,112,97,108,101,116,117,114,113,117,111,105,115,101,0,47,115,118,103,47,112,97,108,101,118,105,111,108,101,116,114,101,100,0,47,115,118,103,47,112,97,112,97,121,97,119,104,105,112,0,47,115,118,103,47,112,101,97,99,104,112,117,102,102,0,47,115,118,103,47,112,101,114,117,0,47,115,118,103,47,112,105,110,107,0,47,115,118,103,47,112,108,117,109,0,47,115,118,103,47,112,111,119,100,101,114,98,108,117,101,0,47,115,118,103,47,112,117,114,112,108,101,0,47,115,118,103,47,114,101,100,0,47,115,118,103,47,114,111,115,121,98,114,111,119,110,0,47,115,118,103,47,114,111,121,97,108,98,108,117,101,0,47,115,118,103,47,115,97,100,100,108,101,98,114,111,119,110,0,47,115,118,103,47,115,97,108,109,111,110,0,47,115,118,103,47,115,97,110,100,121,98,114,111,119,110,0,47,115,118,103,47,115,101,97,103,114,101,101,110,0,47,115,118,103,47,115,101,97,115,104,101,108,108,0,47,115,118,103,47,115,105,101,110,110,97,0,47,115,118,103,47,115,105,108,118,101,114,0,47,115,118,103,47,115,107,121,98,108,117,101,0,47,115,118,103,47,115,108,97,116,101,98,108,117,101,0,47,115,118,103,47,115,108,97,116,101,103,114,97,121,0,47,115,118,103,47,115,108,97,116,101,103,114,101,121,0,47,115,118,103,47,115,110,111,119,0,47,115,118,103,47,115,112,114,105,110,103,103,114,101,101,110,0,47,115,118,103,47,115,116,101,101,108,98,108,117,101,0,47,115,118,103,47,116,97,110,0,47,115,118,103,47,116,101,97,108,0,47,115,118,103,47,116,104,105,115,116,108,101,0,47,115,118,103,47,116,111,109,97,116,111,0,47,115,118,103,47,116,117,114,113,117,111,105,115,101,0,47,115,118,103,47,118,105,111,108,101,116,0,47,115,118,103,47,119,104,101,97,116,0,47,115,118,103,47,119,104,105,116,101,0,47,115,118,103,47,119,104,105,116,101,115,109,111,107,101,0,47,115,118,103,47,121,101,108,108,111,119,0,47,115,118,103,47,121,101,108,108,111,119,103,114,101,101,110,0,47,121,108,103,110,51,47,49,0,47,121,108,103,110,51,47,50,0,47,121,108,103,110,51,47,51,0,47,121,108,103,110,52,47,49,0,47,121,108,103,110,52,47,50,0,47,121,108,103,110,52,47,51,0,47,121,108,103,110,52,47,52,0,47,121,108,103,110,53,47,49,0,47,121,108,103,110,53,47,50,0,47,121,108,103,110,53,47,51,0,47,121,108,103,110,53,47,52,0,47,121,108,103,110,53,47,53,0,47,121,108,103,110,54,47,49,0,47,121,108,103,110,54,47,50,0,47,121,108,103,110,54,47,51,0,47,121,108,103,110,54,47,52,0,47,121,108,103,110,54,47,53,0,47,121,108,103,110,54,47,54,0,47,121,108,103,110,55,47,49,0,47,121,108,103,110,55,47,50,0,47,121,108,103,110,55,47,51,0,47,121,108,103,110,55,47,52,0,47,121,108,103,110,55,47,53,0,47,121,108,103,110,55,47,54,0,47,121,108,103,110,55,47,55,0,47,121,108,103,110,56,47,49,0,47,121,108,103,110,56,47,50,0,47,121,108,103,110,56,47,51,0,47,121,108,103,110,56,47,52,0,47,121,108,103,110,56,47,53,0,47,121,108,103,110,56,47,54,0,47,121,108,103,110,56,47,55,0,47,121,108,103,110,56,47,56,0,47,121,108,103,110,57,47,49,0,47,121,108,103,110,57,47,50,0,47,121,108,103,110,57,47,51,0,47,121,108,103,110,57,47,52,0,47,121,108,103,110,57,47,53,0,47,121,108,103,110,57,47,54,0,47,121,108,103,110,57,47,55,0,47,121,108,103,110,57,47,56,0,47,121,108,103,110,57,47,57,0,47,121,108,103,110,98,117,51,47,49,0,47,121,108,103,110,98,117,51,47,50,0,47,121,108,103,110,98,117,51,47,51,0,47,121,108,103,110,98,117,52,47,49,0,47,121,108,103,110,98,117,52,47,50,0,47,121,108,103,110,98,117,52,47,51,0,47,121,108,103,110,98,117,52,47,52,0,47,121,108,103,110,98,117,53,47,49,0,47,121,108,103,110,98,117,53,47,50,0,47,121,108,103,110,98,117,53,47,51,0,47,121,108,103,110,98,117,53,47,52,0,47,121,108,103,110,98,117,53,47,53,0,47,121,108,103,110,98,117,54,47,49,0,47,121,108,103,110,98,117,54,47,50,0,47,121,108,103,110,98,117,54,47,51,0,47,121,108,103,110,98,117,54,47,52,0,47,121,108,103,110,98,117,54,47,53,0,47,121,108,103,110,98,117,54,47,54,0,47,121,108,103,110,98,117,55,47,49,0,47,121,108,103,110,98,117,55,47,50,0,47,121,108,103,110,98,117,55,47,51,0,47,121,108,103,110,98,117,55,47,52,0,47,121,108,103,110,98,117,55,47,53,0,47,121,108,103,110,98,117,55,47,54,0,47,121,108,103,110,98,117,55,47,55,0,47,121,108,103,110,98,117,56,47,49,0,47,121,108,103,110,98,117,56,47,50,0,47,121,108,103,110,98,117,56,47,51,0,47,121,108,103,110,98,117,56,47,52,0,47,121,108,103,110,98,117,56,47,53,0,47,121,108,103,110,98,117,56,47,54,0,47,121,108,103,110,98,117,56,47,55,0,47,121,108,103,110,98,117,56,47,56,0,47,121,108,103,110,98,117,57,47,49,0,47,121,108,103,110,98,117,57,47,50,0,47,121,108,103,110,98,117,57,47,51,0,47,121,108,103,110,98,117,57,47,52,0,47,121,108,103,110,98,117,57,47,53,0,47,121,108,103,110,98,117,57,47,54,0,47,121,108,103,110,98,117,57,47,55,0,47,121,108,103,110,98,117,57,47,56,0,47,121,108,103,110,98,117,57,47,57,0,47,121,108,111,114,98,114,51,47,49,0,47,121,108,111,114,98,114,51,47,50,0,47,121,108,111,114,98,114,51,47,51,0,47,121,108,111,114,98,114,52,47,49,0,47,121,108,111,114,98,114,52,47,50,0,47,121,108,111,114,98,114,52,47,51,0,47,121,108,111,114,98,114,52,47,52,0,47,121,108,111,114,98,114,53,47,49,0,47,121,108,111,114,98,114,53,47,50,0,47,121,108,111,114,98,114,53,47,51,0,47,121,108,111,114,98,114,53,47,52,0,47,121,108,111,114,98,114,53,47,53,0,47,121,108,111,114,98,114,54,47,49,0,47,121,108,111,114,98,114,54,47,50,0,47,121,108,111,114,98,114,54,47,51,0,47,121,108,111,114,98,114,54,47,52,0,47,121,108,111,114,98,114,54,47,53,0,47,121,108,111,114,98,114,54,47,54,0,47,121,108,111,114,98,114,55,47,49,0,47,121,108,111,114,98,114,55,47,50,0,47,121,108,111,114,98,114,55,47,51,0,47,121,108,111,114,98,114,55,47,52,0,47,121,108,111,114,98,114,55,47,53,0,47,121,108,111,114,98,114,55,47,54,0,47,121,108,111,114,98,114,55,47,55,0,47,121,108,111,114,98,114,56,47,49,0,47,121,108,111,114,98,114,56,47,50,0,47,121,108,111,114,98,114,56,47,51,0,47,121,108,111,114,98,114,56,47,52,0,47,121,108,111,114,98,114,56,47,53,0,47,121,108,111,114,98,114,56,47,54,0,47,121,108,111,114,98,114,56,47,55,0,47,121,108,111,114,98,114,56,47,56,0,47,121,108,111,114,98,114,57,47,49,0,47,121,108,111,114,98,114,57,47,50,0,47,121,108,111,114,98,114,57,47,51,0,47,121,108,111,114,98,114,57,47,52,0,47,121,108,111,114,98,114,57,47,53,0,47,121,108,111,114,98,114,57,47,54,0,47,121,108,111,114,98,114,57,47,55,0,47,121,108,111,114,98,114,57,47,56,0,47,121,108,111,114,98,114,57,47,57,0,47,121,108,111,114,114,100,51,47,49,0,47,121,108,111,114,114,100,51,47,50,0,47,121,108,111,114,114,100,51,47,51,0,47,121,108,111,114,114,100,52,47,49,0,47,121,108,111,114,114,100,52,47,50,0,47,121,108,111,114,114,100,52,47,51,0,47,121,108,111,114,114,100,52,47,52,0,47,121,108,111,114,114,100,53,47,49,0,47,121,108,111,114,114,100,53,47,50,0,47,121,108,111,114,114,100,53,47,51,0,47,121,108,111,114,114,100,53,47,52,0,47,121,108,111,114,114,100,53,47,53,0,47,121,108,111,114,114,100,54,47,49,0,47,121,108,111,114,114,100,54,47,50,0,47,121,108,111,114,114,100,54,47,51,0,47,121,108,111,114,114,100,54,47,52,0,47,121,108,111,114,114,100,54,47,53,0,47,121,108,111,114,114,100,54,47,54,0,47,121,108,111,114,114,100,55,47,49,0,47,121,108,111,114,114,100,55,47,50,0,47,121,108,111,114,114,100,55,47,51,0,47,121,108,111,114,114,100,55,47,52,0,47,121,108,111,114,114,100,55,47,53,0,47,121,108,111,114,114,100,55,47,54,0,47,121,108,111,114,114,100,55,47,55,0,47,121,108,111,114,114,100,56,47,49,0,47,121,108,111,114,114,100,56,47,50,0,47,121,108,111,114,114,100,56,47,51,0,47,121,108,111,114,114,100,56,47,52,0,47,121,108,111,114,114,100,56,47,53,0,47,121,108,111,114,114,100,56,47,54,0,47,121,108,111,114,114,100,56,47,55,0,47,121,108,111,114,114,100,56,47,56,0,47,121,108,111,114,114,100,57,47,49,0,47,121,108,111,114,114,100,57,47,50,0,47,121,108,111,114,114,100,57,47,51,0,47,121,108,111,114,114,100,57,47,52,0,47,121,108,111,114,114,100,57,47,53,0,47,121,108,111,114,114,100,57,47,54,0,47,121,108,111,114,114,100,57,47,55,0,47,121,108,111,114,114,100,57,47,56,0,47,121,108,111,114,114,100,57,47,57,0,97,108,105,99,101,98,108,117,101,0,97,110,116,105,113,117,101,119,104,105,116,101,0,97,110,116,105,113,117,101,119,104,105,116,101,49,0,97,110,116,105,113,117,101,119,104,105,116,101,50,0,97,110,116,105,113,117,101,119,104,105,116,101,51,0,97,110,116,105,113,117,101,119,104,105,116,101,52,0,97,113,117,97,109,97,114,105,110,101,0,97,113,117,97,109,97,114,105,110,101,49,0,97,113,117,97,109,97,114,105,110,101,50,0,97,113,117,97,109,97,114,105,110,101,51,0,97,113,117,97,109,97,114,105,110,101,52,0,97,122,117,114,101,0,97,122,117,114,101,49,0,97,122,117,114,101,50,0,97,122,117,114,101,51,0,97,122,117,114,101,52,0,98,101,105,103,101,0,98,105,115,113,117,101,0,98,105,115,113,117,101,49,0,98,105,115,113,117,101,50,0,98,105,115,113,117,101,51,0,98,105,115,113,117,101,52,0,98,108,97,110,99,104,101,100,97,108,109,111,110,100,0,98,108,117,101,0,98,108,117,101,49,0,98,108,117,101,50,0,98,108,117,101,51,0,98,108,117,101,52,0,98,108,117,101,118,105,111,108,101,116,0,98,114,111,119,110,0,98,114,111,119,110,49,0,98,114,111,119,110,50,0,98,114,111,119,110,51,0,98,114,111,119,110,52,0,98,117,114,108,121,119,111,111,100,0,98,117,114,108,121,119,111,111,100,49,0,98,117,114,108,121,119,111,111,100,50,0,98,117,114,108,121,119,111,111,100,51,0,98,117,114,108,121,119,111,111,100,52,0,99,97,100,101,116,98,108,117,101,0,99,97,100,101,116,98,108,117,101,49,0,99,97,100,101,116,98,108,117,101,50,0,99,97,100,101,116,98,108,117,101,51,0,99,97,100,101,116,98,108,117,101,52,0,99,104,97,114,116,114,101,117,115,101,0,99,104,97,114,116,114,101,117,115,101,49,0,99,104,97,114,116,114,101,117,115,101,50,0,99,104,97,114,116,114,101,117,115,101,51,0,99,104,97,114,116,114,101,117,115,101,52,0,99,104,111,99,111,108,97,116,101,0,99,104,111,99,111,108,97,116,101,49,0,99,104,111,99,111,108,97,116,101,50,0,99,104,111,99,111,108,97,116,101,51,0,99,104,111,99,111,108,97,116,101,52,0,99,111,114,97,108,0,99,111,114,97,108,49,0,99,111,114,97,108,50,0,99,111,114,97,108,51,0,99,111,114,97,108,52,0,99,111,114,110,102,108,111,119,101,114,98,108,117,101,0,99,111,114,110,115,105,108,107,0,99,111,114,110,115,105,108,107,49,0,99,111,114,110,115,105,108,107,50,0,99,111,114,110,115,105,108,107,51,0,99,111,114,110,115,105,108,107,52,0,99,114,105,109,115,111,110,0,99,121,97,110,0,99,121,97,110,49,0,99,121,97,110,50,0,99,121,97,110,51,0,99,121,97,110,52,0,100,97,114,107,103,111,108,100,101,110,114,111,100,0,100,97,114,107,103,111,108,100,101,110,114,111,100,49,0,100,97,114,107,103,111,108,100,101,110,114,111,100,50,0,100,97,114,107,103,111,108,100,101,110,114,111,100,51,0,100,97,114,107,103,111,108,100,101,110,114,111,100,52,0,100,97,114,107,103,114,101,101,110,0,100,97,114,107,107,104,97,107,105,0,100,97,114,107,111,108,105,118,101,103,114,101,101,110,0,100,97,114,107,111,108,105,118,101,103,114,101,101,110,49,0,100,97,114,107,111,108,105,118,101,103,114,101,101,110,50,0,100,97,114,107,111,108,105,118,101,103,114,101,101,110,51,0,100,97,114,107,111,108,105,118,101,103,114,101,101,110,52,0,100,97,114,107,111,114,97,110,103,101,0,100,97,114,107,111,114,97,110,103,101,49,0,100,97,114,107,111,114,97,110,103,101,50,0,100,97,114,107,111,114,97,110,103,101,51,0,100,97,114,107,111,114,97,110,103,101,52,0,100,97,114,107,111,114,99,104,105,100,0,100,97,114,107,111,114,99,104,105,100,49,0,100,97,114,107,111,114,99,104,105,100,50,0,100,97,114,107,111,114,99,104,105,100,51,0,100,97,114,107,111,114,99,104,105,100,52,0,100,97,114,107,115,97,108,109,111,110,0,100,97,114,107,115,101,97,103,114,101,101,110,0,100,97,114,107,115,101,97,103,114,101,101,110,49,0,100,97,114,107,115,101,97,103,114,101,101,110,50,0,100,97,114,107,115,101,97,103,114,101,101,110,51,0,100,97,114,107,115,101,97,103,114,101,101,110,52,0,100,97,114,107,115,108,97,116,101,98,108,117,101,0,100,97,114,107,115,108,97,116,101,103,114,97,121,0,100,97,114,107,115,108,97,116,101,103,114,97,121,49,0,100,97,114,107,115,108,97,116,101,103,114,97,121,50,0,100,97,114,107,115,108,97,116,101,103,114,97,121,51,0,100,97,114,107,115,108,97,116,101,103,114,97,121,52,0,100,97,114,107,115,108,97,116,101,103,114,101,121,0,100,97,114,107,116,117,114,113,117,111,105,115,101,0,100,97,114,107,118,105,111,108,101,116,0,100,101,101,112,112,105,110,107,0,100,101,101,112,112,105,110,107,49,0,100,101,101,112,112,105,110,107,50,0,100,101,101,112,112,105,110,107,51,0,100,101,101,112,112,105,110,107,52,0,100,101,101,112,115,107,121,98,108,117,101,0,100,101,101,112,115,107,121,98,108,117,101,49,0,100,101,101,112,115,107,121,98,108,117,101,50,0,100,101,101,112,115,107,121,98,108,117,101,51,0,100,101,101,112,115,107,121,98,108,117,101,52,0,100,105,109,103,114,97,121,0,100,105,109,103,114,101,121,0,100,111,100,103,101,114,98,108,117,101,0,100,111,100,103,101,114,98,108,117,101,49,0,100,111,100,103,101,114,98,108,117,101,50,0,100,111,100,103,101,114,98,108,117,101,51,0,100,111,100,103,101,114,98,108,117,101,52,0,102,105,114,101,98,114,105,99,107,0,102,105,114,101,98,114,105,99,107,49,0,102,105,114,101,98,114,105,99,107,50,0,102,105,114,101,98,114,105,99,107,51,0,102,105,114,101,98,114,105,99,107,52,0,102,108,111,114,97,108,119,104,105,116,101,0,102,111,114,101,115,116,103,114,101,101,110,0,103,97,105,110,115,98,111,114,111,0,103,104,111,115,116,119,104,105,116,101,0,103,111,108,100,0,103,111,108,100,49,0,103,111,108,100,50,0,103,111,108,100,51,0,103,111,108,100,52,0,103,111,108,100,101,110,114,111,100,0,103,111,108,100,101,110,114,111,100,49,0,103,111,108,100,101,110,114,111,100,50,0,103,111,108,100,101,110,114,111,100,51,0,103,111,108,100,101,110,114,111,100,52,0,103,114,97,121,0,103,114,97,121,48,0,103,114,97,121,49,0,103,114,97,121,49,48,0,103,114,97,121,49,48,48,0,103,114,97,121,49,49,0,103,114,97,121,49,50,0,103,114,97,121,49,51,0,103,114,97,121,49,52,0,103,114,97,121,49,53,0,103,114,97,121,49,54,0,103,114,97,121,49,55,0,103,114,97,121,49,56,0,103,114,97,121,49,57,0,103,114,97,121,50,0,103,114,97,121,50,48,0,103,114,97,121,50,49,0,103,114,97,121,50,50,0,103,114,97,121,50,51,0,103,114,97,121,50,52,0,103,114,97,121,50,53,0,103,114,97,121,50,54,0,103,114,97,121,50,55,0,103,114,97,121,50,56,0,103,114,97,121,50,57,0,103,114,97,121,51,0,103,114,97,121,51,48,0,103,114,97,121,51,49,0,103,114,97,121,51,50,0,103,114,97,121,51,51,0,103,114,97,121,51,52,0,103,114,97,121,51,53,0,103,114,97,121,51,54,0,103,114,97,121,51,55,0,103,114,97,121,51,56,0,103,114,97,121,51,57,0,103,114,97,121,52,0,103,114,97,121,52,48,0,103,114,97,121,52,49,0,103,114,97,121,52,50,0,103,114,97,121,52,51,0,103,114,97,121,52,52,0,103,114,97,121,52,53,0,103,114,97,121,52,54,0,103,114,97,121,52,55,0,103,114,97,121,52,56,0,103,114,97,121,52,57,0,103,114,97,121,53,0,103,114,97,121,53,48,0,103,114,97,121,53,49,0,103,114,97,121,53,50,0,103,114,97,121,53,51,0,103,114,97,121,53,52,0,103,114,97,121,53,53,0,103,114,97,121,53,54,0,103,114,97,121,53,55,0,103,114,97,121,53,56,0,103,114,97,121,53,57,0,103,114,97,121,54,0,103,114,97,121,54,48,0,103,114,97,121,54,49,0,103,114,97,121,54,50,0,103,114,97,121,54,51,0,103,114,97,121,54,52,0,103,114,97,121,54,53,0,103,114,97,121,54,54,0,103,114,97,121,54,55,0,103,114,97,121,54,56,0,103,114,97,121,54,57,0,103,114,97,121,55,0,103,114,97,121,55,48,0,103,114,97,121,55,49,0,103,114,97,121,55,50,0,103,114,97,121,55,51,0,103,114,97,121,55,52,0,103,114,97,121,55,53,0,103,114,97,121,55,54,0,103,114,97,121,55,55,0,103,114,97,121,55,56,0,103,114,97,121,55,57,0,103,114,97,121,56,0,103,114,97,121,56,48,0,103,114,97,121,56,49,0,103,114,97,121,56,50,0,103,114,97,121,56,51,0,103,114,97,121,56,52,0,103,114,97,121,56,53,0,103,114,97,121,56,54,0,103,114,97,121,56,55,0,103,114,97,121,56,56,0,103,114,97,121,56,57,0,103,114,97,121,57,0,103,114,97,121,57,48,0,103,114,97,121,57,49,0,103,114,97,121,57,50,0,103,114,97,121,57,51,0,103,114,97,121,57,52,0,103,114,97,121,57,53,0,103,114,97,121,57,54,0,103,114,97,121,57,55,0,103,114,97,121,57,56,0,103,114,97,121,57,57,0,103,114,101,101,110,0,103,114,101,101,110,49,0,103,114,101,101,110,50,0,103,114,101,101,110,51,0,103,114,101,101,110,52,0,103,114,101,101,110,121,101,108,108,111,119,0,103,114,101,121,0,103,114,101,121,48,0,103,114,101,121,49,0,103,114,101,121,49,48,0,103,114,101,121,49,48,48,0,103,114,101,121,49,49,0,103,114,101,121,49,50,0,103,114,101,121,49,51,0,103,114,101,121,49,52,0,103,114,101,121,49,53,0,103,114,101,121,49,54,0,103,114,101,121,49,55,0,103,114,101,121,49,56,0,103,114,101,121,49,57,0,103,114,101,121,50,0,103,114,101,121,50,48,0,103,114,101,121,50,49,0,103,114,101,121,50,50,0,103,114,101,121,50,51,0,103,114,101,121,50,52,0,103,114,101,121,50,53,0,103,114,101,121,50,54,0,103,114,101,121,50,55,0,103,114,101,121,50,56,0,103,114,101,121,50,57,0,103,114,101,121,51,0,103,114,101,121,51,48,0,103,114,101,121,51,49,0,103,114,101,121,51,50,0,103,114,101,121,51,51,0,103,114,101,121,51,52,0,103,114,101,121,51,53,0,103,114,101,121,51,54,0,103,114,101,121,51,55,0,103,114,101,121,51,56,0,103,114,101,121,51,57,0,103,114,101,121,52,0,103,114,101,121,52,48,0,103,114,101,121,52,49,0,103,114,101,121,52,50,0,103,114,101,121,52,51,0,103,114,101,121,52,52,0,103,114,101,121,52,53,0,103,114,101,121,52,54,0,103,114,101,121,52,55,0,103,114,101,121,52,56,0,103,114,101,121,52,57,0,103,114,101,121,53,0,103,114,101,121,53,48,0,103,114,101,121,53,49,0,103,114,101,121,53,50,0,103,114,101,121,53,51,0,103,114,101,121,53,52,0,103,114,101,121,53,53,0,103,114,101,121,53,54,0,103,114,101,121,53,55,0,103,114,101,121,53,56,0,103,114,101,121,53,57,0,103,114,101,121,54,0,103,114,101,121,54,48,0,103,114,101,121,54,49,0,103,114,101,121,54,50,0,103,114,101,121,54,51,0,103,114,101,121,54,52,0,103,114,101,121,54,53,0,103,114,101,121,54,54,0,103,114,101,121,54,55,0,103,114,101,121,54,56,0,103,114,101,121,54,57,0,103,114,101,121,55,0,103,114,101,121,55,48,0,103,114,101,121,55,49,0,103,114,101,121,55,50,0,103,114,101,121,55,51,0,103,114,101,121,55,52,0,103,114,101,121,55,53,0,103,114,101,121,55,54,0,103,114,101,121,55,55,0,103,114,101,121,55,56,0,103,114,101,121,55,57,0,103,114,101,121,56,0,103,114,101,121,56,48,0,103,114,101,121,56,49,0,103,114,101,121,56,50,0,103,114,101,121,56,51,0,103,114,101,121,56,52,0,103,114,101,121,56,53,0,103,114,101,121,56,54,0,103,114,101,121,56,55,0,103,114,101,121,56,56,0,103,114,101,121,56,57,0,103,114,101,121,57,0,103,114,101,121,57,48,0,103,114,101,121,57,49,0,103,114,101,121,57,50,0,103,114,101,121,57,51,0,103,114,101,121,57,52,0,103,114,101,121,57,53,0,103,114,101,121,57,54,0,103,114,101,121,57,55,0,103,114,101,121,57,56,0,103,114,101,121,57,57,0,104,111,110,101,121,100,101,119,0,104,111,110,101,121,100,101,119,49,0,104,111,110,101,121,100,101,119,50,0,104,111,110,101,121,100,101,119,51,0,104,111,110,101,121,100,101,119,52,0,104,111,116,112,105,110,107,0,104,111,116,112,105,110,107,49,0,104,111,116,112,105,110,107,50,0,104,111,116,112,105,110,107,51,0,104,111,116,112,105,110,107,52,0,105,110,100,105,97,110,114,101,100,0,105,110,100,105,97,110,114,101,100,49,0,105,110,100,105,97,110,114,101,100,50,0,105,110,100,105,97,110,114,101,100,51,0,105,110,100,105,97,110,114,101,100,52,0,105,110,100,105,103,111,0,105,110,118,105,115,0,105,118,111,114,121,0,105,118,111,114,121,49,0,105,118,111,114,121,50,0,105,118,111,114,121,51,0,105,118,111,114,121,52,0,107,104,97,107,105,0,107,104,97,107,105,49,0,107,104,97,107,105,50,0,107,104,97,107,105,51,0,107,104,97,107,105,52,0,108,97,118,101,110,100,101,114,0,108,97,118,101,110,100,101,114,98,108,117,115,104,0,108,97,118,101,110,100,101,114,98,108,117,115,104,49,0,108,97,118,101,110,100,101,114,98,108,117,115,104,50,0,108,97,118,101,110,100,101,114,98,108,117,115,104,51,0,108,97,118,101,110,100,101,114,98,108,117,115,104,52,0,108,97,119,110,103,114,101,101,110,0,108,101,109,111,110,99,104,105,102,102,111,110,0,108,101,109,111,110,99,104,105,102,102,111,110,49,0,108,101,109,111,110,99,104,105,102,102,111,110,50,0,108,101,109,111,110,99,104,105,102,102,111,110,51,0,108,101,109,111,110,99,104,105,102,102,111,110,52,0,108,105,103,104,116,98,108,117,101,0,108,105,103,104,116,98,108,117,101,49,0,108,105,103,104,116,98,108,117,101,50,0,108,105,103,104,116,98,108,117,101,51,0,108,105,103,104,116,98,108,117,101,52,0,108,105,103,104,116,99,111,114,97,108,0,108,105,103,104,116,99,121,97,110,0,108,105,103,104,116,99,121,97,110,49,0,108,105,103,104,116,99,121,97,110,50,0,108,105,103,104,116,99,121,97,110,51,0,108,105,103,104,116,99,121,97,110,52,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,49,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,50,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,51,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,52,0,108,105,103,104,116,103,111,108,100,101,110,114,111,100,121,101,108,108,111,119,0,108,105,103,104,116,103,114,97,121,0,108,105,103,104,116,103,114,101,121,0,108,105,103,104,116,112,105,110,107,0,108,105,103,104,116,112,105,110,107,49,0,108,105,103,104,116,112,105,110,107,50,0,108,105,103,104,116,112,105,110,107,51,0,108,105,103,104,116,112,105,110,107,52,0,108,105,103,104,116,115,97,108,109,111,110,0,108,105,103,104,116,115,97,108,109,111,110,49,0,108,105,103,104,116,115,97,108,109,111,110,50,0,108,105,103,104,116,115,97,108,109,111,110,51,0,108,105,103,104,116,115,97,108,109,111,110,52,0,108,105,103,104,116,115,101,97,103,114,101,101,110,0,108,105,103,104,116,115,107,121,98,108,117,101,0,108,105,103,104,116,115,107,121,98,108,117,101,49,0,108,105,103,104,116,115,107,121,98,108,117,101,50,0,108,105,103,104,116,115,107,121,98,108,117,101,51,0,108,105,103,104,116,115,107,121,98,108,117,101,52,0,108,105,103,104,116,115,108,97,116,101,98,108,117,101,0,108,105,103,104,116,115,108,97,116,101,103,114,97,121,0,108,105,103,104,116,115,108,97,116,101,103,114,101,121,0,108,105,103,104,116,115,116,101,101,108,98,108,117,101,0,108,105,103,104,116,115,116,101,101,108,98,108,117,101,49,0,108,105,103,104,116,115,116,101,101,108,98,108,117,101,50,0,108,105,103,104,116,115,116,101,101,108,98,108,117,101,51,0,108,105,103,104,116,115,116,101,101,108,98,108,117,101,52,0,108,105,103,104,116,121,101,108,108,111,119,0,108,105,103,104,116,121,101,108,108,111,119,49,0,108,105,103,104,116,121,101,108,108,111,119,50,0,108,105,103,104,116,121,101,108,108,111,119,51,0,108,105,103,104,116,121,101,108,108,111,119,52,0,108,105,109,101,103,114,101,101,110,0,108,105,110,101,110,0,109,97,103,101,110,116,97,0,109,97,103,101,110,116,97,49,0,109,97,103,101,110,116,97,50,0,109,97,103,101,110,116,97,51,0,109,97,103,101,110,116,97,52,0,109,97,114,111,111,110,0,109,97,114,111,111,110,49,0,109,97,114,111,111,110,50,0,109,97,114,111,111,110,51,0,109,97,114,111,111,110,52,0,109,101,100,105,117,109,97,113,117,97,109,97,114,105,110,101,0,109,101,100,105,117,109,98,108,117,101,0,109,101,100,105,117,109,111,114,99,104,105,100,0,109,101,100,105,117,109,111,114,99,104,105,100,49,0,109,101,100,105,117,109,111,114,99,104,105,100,50,0,109,101,100,105,117,109,111,114,99,104,105,100,51,0,109,101,100,105,117,109,111,114,99,104,105,100,52,0,109,101,100,105,117,109,112,117,114,112,108,101,0,109,101,100,105,117,109,112,117,114,112,108,101,49,0,109,101,100,105,117,109,112,117,114,112,108,101,50,0,109,101,100,105,117,109,112,117,114,112,108,101,51,0,109,101,100,105,117,109,112,117,114,112,108,101,52,0,109,101,100,105,117,109,115,101,97,103,114,101,101,110,0,109,101,100,105,117,109,115,108,97,116,101,98,108,117,101,0,109,101,100,105,117,109,115,112,114,105,110,103,103,114,101,101,110,0,109,101,100,105,117,109,116,117,114,113,117,111,105,115,101,0,109,101,100,105,117,109,118,105,111,108,101,116,114,101,100,0,109,105,100,110,105,103,104,116,98,108,117,101,0,109,105,110,116,99,114,101,97,109,0,109,105,115,116,121,114,111,115,101,0,109,105,115,116,121,114,111,115,101,49,0,109,105,115,116,121,114,111,115,101,50,0,109,105,115,116,121,114,111,115,101,51,0,109,105,115,116,121,114,111,115,101,52,0,109,111,99,99,97,115,105,110,0,110,97,118,97,106,111,119,104,105,116,101,0,110,97,118,97,106,111,119,104,105,116,101,49,0,110,97,118,97,106,111,119,104,105,116,101,50,0,110,97,118,97,106,111,119,104,105,116,101,51,0,110,97,118,97,106,111,119,104,105,116,101,52,0,110,97,118,121,0,110,97,118,121,98,108,117,101,0,110,111,110,101,0,111,108,100,108,97,99,101,0,111,108,105,118,101,100,114,97,98,0,111,108,105,118,101,100,114,97,98,49,0,111,108,105,118,101,100,114,97,98,50,0,111,108,105,118,101,100,114,97,98,51,0,111,108,105,118,101,100,114,97,98,52,0,111,114,97,110,103,101,0,111,114,97,110,103,101,49,0,111,114,97,110,103,101,50,0,111,114,97,110,103,101,51,0,111,114,97,110,103,101,52,0,111,114,97,110,103,101,114,101,100,0,111,114,97,110,103,101,114,101,100,49,0,111,114,97,110,103,101,114,101,100,50,0,111,114,97,110,103,101,114,101,100,51,0,111,114,97,110,103,101,114,101,100,52,0,111,114,99,104,105,100,0,111,114,99,104,105,100,49,0,111,114,99,104,105,100,50,0,111,114,99,104,105,100,51,0,111,114,99,104,105,100,52,0,112,97,108,101,103,111,108,100,101,110,114,111,100,0,112,97,108,101,103,114,101,101,110,0,112,97,108,101,103,114,101,101,110,49,0,112,97,108,101,103,114,101,101,110,50,0,112,97,108,101,103,114,101,101,110,51,0,112,97,108,101,103,114,101,101,110,52,0,112,97,108,101,116,117,114,113,117,111,105,115,101,0,112,97,108,101,116,117,114,113,117,111,105,115,101,49,0,112,97,108,101,116,117,114,113,117,111,105,115,101,50,0,112,97,108,101,116,117,114,113,117,111,105,115,101,51,0,112,97,108,101,116,117,114,113,117,111,105,115,101,52,0,112,97,108,101,118,105,111,108,101,116,114,101,100,0,112,97,108],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+163422);allocate([101,118,105,111,108,101,116,114,101,100,49,0,112,97,108,101,118,105,111,108,101,116,114,101,100,50,0,112,97,108,101,118,105,111,108,101,116,114,101,100,51,0,112,97,108,101,118,105,111,108,101,116,114,101,100,52,0,112,97,112,97,121,97,119,104,105,112,0,112,101,97,99,104,112,117,102,102,0,112,101,97,99,104,112,117,102,102,49,0,112,101,97,99,104,112,117,102,102,50,0,112,101,97,99,104,112,117,102,102,51,0,112,101,97,99,104,112,117,102,102,52,0,112,101,114,117,0,112,105,110,107,0,112,105,110,107,49,0,112,105,110,107,50,0,112,105,110,107,51,0,112,105,110,107,52,0,112,108,117,109,0,112,108,117,109,49,0,112,108,117,109,50,0,112,108,117,109,51,0,112,108,117,109,52,0,112,111,119,100,101,114,98,108,117,101,0,112,117,114,112,108,101,0,112,117,114,112,108,101,49,0,112,117,114,112,108,101,50,0,112,117,114,112,108,101,51,0,112,117,114,112,108,101,52,0,114,101,100,0,114,101,100,49,0,114,101,100,50,0,114,101,100,51,0,114,101,100,52,0,114,111,115,121,98,114,111,119,110,0,114,111,115,121,98,114,111,119,110,49,0,114,111,115,121,98,114,111,119,110,50,0,114,111,115,121,98,114,111,119,110,51,0,114,111,115,121,98,114,111,119,110,52,0,114,111,121,97,108,98,108,117,101,0,114,111,121,97,108,98,108,117,101,49,0,114,111,121,97,108,98,108,117,101,50,0,114,111,121,97,108,98,108,117,101,51,0,114,111,121,97,108,98,108,117,101,52,0,115,97,100,100,108,101,98,114,111,119,110,0,115,97,108,109,111,110,0,115,97,108,109,111,110,49,0,115,97,108,109,111,110,50,0,115,97,108,109,111,110,51,0,115,97,108,109,111,110,52,0,115,97,110,100,121,98,114,111,119,110,0,115,101,97,103,114,101,101,110,0,115,101,97,103,114,101,101,110,49,0,115,101,97,103,114,101,101,110,50,0,115,101,97,103,114,101,101,110,51,0,115,101,97,103,114,101,101,110,52,0,115,101,97,115,104,101,108,108,0,115,101,97,115,104,101,108,108,49,0,115,101,97,115,104,101,108,108,50,0,115,101,97,115,104,101,108,108,51,0,115,101,97,115,104,101,108,108,52,0,115,105,101,110,110,97,0,115,105,101,110,110,97,49,0,115,105,101,110,110,97,50,0,115,105,101,110,110,97,51,0,115,105,101,110,110,97,52,0,115,107,121,98,108,117,101,0,115,107,121,98,108,117,101,49,0,115,107,121,98,108,117,101,50,0,115,107,121,98,108,117,101,51,0,115,107,121,98,108,117,101,52,0,115,108,97,116,101,98,108,117,101,0,115,108,97,116,101,98,108,117,101,49,0,115,108,97,116,101,98,108,117,101,50,0,115,108,97,116,101,98,108,117,101,51,0,115,108,97,116,101,98,108,117,101,52,0,115,108,97,116,101,103,114,97,121,0,115,108,97,116,101,103,114,97,121,49,0,115,108,97,116,101,103,114,97,121,50,0,115,108,97,116,101,103,114,97,121,51,0,115,108,97,116,101,103,114,97,121,52,0,115,108,97,116,101,103,114,101,121,0,115,110,111,119,0,115,110,111,119,49,0,115,110,111,119,50,0,115,110,111,119,51,0,115,110,111,119,52,0,115,112,114,105,110,103,103,114,101,101,110,0,115,112,114,105,110,103,103,114,101,101,110,49,0,115,112,114,105,110,103,103,114,101,101,110,50,0,115,112,114,105,110,103,103,114,101,101,110,51,0,115,112,114,105,110,103,103,114,101,101,110,52,0,115,116,101,101,108,98,108,117,101,0,115,116,101,101,108,98,108,117,101,49,0,115,116,101,101,108,98,108,117,101,50,0,115,116,101,101,108,98,108,117,101,51,0,115,116,101,101,108,98,108,117,101,52,0,116,97,110,0,116,97,110,49,0,116,97,110,50,0,116,97,110,51,0,116,97,110,52,0,116,104,105,115,116,108,101,0,116,104,105,115,116,108,101,49,0,116,104,105,115,116,108,101,50,0,116,104,105,115,116,108,101,51,0,116,104,105,115,116,108,101,52,0,116,111,109,97,116,111,0,116,111,109,97,116,111,49,0,116,111,109,97,116,111,50,0,116,111,109,97,116,111,51,0,116,111,109,97,116,111,52,0,116,117,114,113,117,111,105,115,101,0,116,117,114,113,117,111,105,115,101,49,0,116,117,114,113,117,111,105,115,101,50,0,116,117,114,113,117,111,105,115,101,51,0,116,117,114,113,117,111,105,115,101,52,0,118,105,111,108,101,116,0,118,105,111,108,101,116,114,101,100,0,118,105,111,108,101,116,114,101,100,49,0,118,105,111,108,101,116,114,101,100,50,0,118,105,111,108,101,116,114,101,100,51,0,118,105,111,108,101,116,114,101,100,52,0,119,104,101,97,116,0,119,104,101,97,116,49,0,119,104,101,97,116,50,0,119,104,101,97,116,51,0,119,104,101,97,116,52,0,119,104,105,116,101,0,119,104,105,116,101,115,109,111,107,101,0,121,101,108,108,111,119,0,121,101,108,108,111,119,49,0,121,101,108,108,111,119,50,0,121,101,108,108,111,119,51,0,121,101,108,108,111,119,52,0,121,101,108,108,111,119,103,114,101,101,110,0,108,97,99,107,0,104,105,116,101,0,105,103,104,116,103,114,101,121,0,88,49,49,47,0,47,37,115,47,37,115,0,105,109,97,103,101,115,99,97,108,101,0,102,97,108,115,101,0,98,108,97,99,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,100,0,65,103,110,111,100,101,105,110,102,111,95,116,0,114,111,119,103,0,99,111,108,103,0,65,103,114,97,112,104,105,110,102,111,95,116,0,100,101,108,120,32,62,61,32,48,0,104,116,109,108,116,97,98,108,101,46,99,0,112,111,115,95,104,116,109,108,95,116,98,108,0,100,101,108,121,32,62,61,32,48,0,116,97,98,108,101,32,115,105,122,101,32,116,111,111,32,115,109,97,108,108,32,102,111,114,32,99,111,110,116,101,110,116,10,0,102,105,120,101,100,32,116,97,98,108,101,32,115,105,122,101,32,119,105,116,104,32,117,110,115,112,101,99,105,102,105,101,100,32,119,105,100,116,104,32,111,114,32,104,101,105,103,104,116,10,0,99,101,108,108,32,115,105,122,101,32,116,111,111,32,115,109,97,108,108,32,102,111,114,32,99,111,110,116,101,110,116,10,0,102,105,120,101,100,32,99,101,108,108,32,115,105,122,101,32,119,105,116,104,32,117,110,115,112,101,99,105,102,105,101,100,32,119,105,100,116,104,32,111,114,32,104,101,105,103,104,116,10,0,78,111,32,111,114,32,105,109,112,114,111,112,101,114,32,105,109,97,103,101,32,102,105,108,101,61,34,37,115,34,10,0,112,101,110,99,111,108,111,114,0,45,62,0,65,103,101,100,103,101,105,110,102,111,95,116,0,49,0,50,0,51,0,52,0,53,0,54,0,55,0,56,0,57,0,49,48,0,49,49,0,49,50,0,49,51,0,49,52,0,49,53,0,49,54,0,49,55,0,49,56,0,49,57,0,50,48,0,100,97,115,104,101,100,0,100,111,116,116,101,100,0,99,112,45,62,115,114,99,0,101,109,105,116,95,104,116,109,108,95,105,109,103,0,99,112,45,62,115,114,99,91,48,93,0,116,114,97,110,115,112,97,114,101,110,116,0,95,37,100,0,102,80,81,46,99,0,80,81,99,104,101,99,107,0,72,101,97,112,32,111,118,101,114,102,108,111,119,10,0,37,33,80,83,45,65,100,111,98,101,45,50,46,48,10,47,110,111,100,101,32,123,10,32,32,47,89,32,101,120,99,104,32,100,101,102,10,32,32,47,88,32,101,120,99,104,32,100,101,102,10,32,32,47,121,32,101,120,99,104,32,100,101,102,10,32,32,47,120,32,101,120,99,104,32,100,101,102,10,32,32,110,101,119,112,97,116,104,10,32,32,120,32,121,32,109,111,118,101,116,111,10,32,32,120,32,89,32,108,105,110,101,116,111,10,32,32,88,32,89,32,108,105,110,101,116,111,10,32,32,88,32,121,32,108,105,110,101,116,111,10,32,32,99,108,111,115,101,112,97,116,104,32,102,105,108,108,10,125,32,100,101,102,10,47,99,101,108,108,32,123,10,32,32,47,89,32,101,120,99,104,32,100,101,102,10,32,32,47,88,32,101,120,99,104,32,100,101,102,10,32,32,47,121,32,101,120,99,104,32,100,101,102,10,32,32,47,120,32,101,120,99,104,32,100,101,102,10,32,32,110,101,119,112,97,116,104,10,32,32,120,32,121,32,109,111,118,101,116,111,10,32,32,120,32,89,32,108,105,110,101,116,111,10,32,32,88,32,89,32,108,105,110,101,116,111,10,32,32,88,32,121,32,108,105,110,101,116,111,10,32,32,99,108,111,115,101,112,97,116,104,32,115,116,114,111,107,101,10,125,32,100,101,102,10,0,115,104,111,119,112,97,103,101,10,0,102,97,105,108,101,100,32,97,116,32,110,111,100,101,32,37,100,91,48,93,10,0,110,112,45,62,99,101,108,108,115,91,48,93,0,109,97,122,101,46,99,0,99,104,107,83,103,114,97,112,104,0,102,97,105,108,101,100,32,97,116,32,110,111,100,101,32,37,100,91,49,93,10,0,110,112,45,62,99,101,108,108,115,91,49,93,0,100,105,116,101,109,115,0,102,105,110,100,83,86,101,114,116,0,37,37,37,37,80,97,103,101,58,32,49,32,49,10,37,37,37,37,80,97,103,101,66,111,117,110,100,105,110,103,66,111,120,58,32,37,100,32,37,100,32,37,100,32,37,100,10,0,37,102,32,37,102,32,116,114,97,110,115,108,97,116,101,10,0,48,32,48,32,49,32,115,101,116,114,103,98,99,111,108,111,114,10,0,37,102,32,37,102,32,37,102,32,37,102,32,110,111,100,101,10,0,48,32,48,32,48,32,115,101,116,114,103,98,99,111,108,111,114,10,0,37,102,32,37,102,32,37,102,32,37,102,32,99,101,108,108,10,0,49,32,48,32,48,32,115,101,116,114,103,98,99,111,108,111,114,10,0,117,110,101,120,112,101,99,116,101,100,32,99,97,115,101,32,105,110,32,108,111,99,97,116,101,95,101,110,100,112,111,105,110,116,10,0,48,0,116,114,97,112,101,122,111,105,100,46,99,0,108,111,99,97,116,101,95,101,110,100,112,111,105,110,116,0,97,100,100,95,115,101,103,109,101,110,116,58,32,101,114,114,111,114,10,0,110,101,119,110,111,100,101,58,32,81,117,101,114,121,45,116,97,98,108,101,32,111,118,101,114,102,108,111,119,10,0,110,101,119,110,111,100,101,0,110,101,119,116,114,97,112,58,32,84,114,97,112,101,122,111,105,100,45,116,97,98,108,101,32,111,118,101,114,102,108,111,119,32,37,100,10,0,110,101,119,116,114,97,112,0,105,110,100,101,120,46,99,0,82,84,114,101,101,83,101,97,114,99,104,0,110,45,62,108,101,118,101,108,32,62,61,32,48,0,82,84,114,101,101,73,110,115,101,114,116,0,108,101,118,101,108,32,62,61,32,48,32,38,38,32,108,101,118,101,108,32,60,61,32,40,42,110,41,45,62,108,101,118,101,108,0,114,45,62,98,111,117,110,100,97,114,121,91,105,93,32,60,61,32,114,45,62,98,111,117,110,100,97,114,121,91,78,85,77,68,73,77,83,32,43,32,105,93,0,114,32,38,38,32,110,32,38,38,32,110,101,119,0,82,84,114,101,101,73,110,115,101,114,116,50,0,108,101,118,101,108,32,62,61,32,48,32,38,38,32,108,101,118,101,108,32,60,61,32,110,45,62,108,101,118,101,108,0,70,65,76,83,69,0,110,111,100,101,46,99,0,78,111,100,101,67,111,118,101,114,0,114,32,38,38,32,110,0,80,105,99,107,66,114,97,110,99,104,0,65,100,100,66,114,97,110,99,104,0,105,32,60,32,78,79,68,69,67,65,82,68,0,110,101,119,0,110,32,38,38,32,105,32,62,61,32,48,32,38,38,32,105,32,60,32,78,79,68,69,67,65,82,68,0,68,105,115,99,111,110,66,114,97,110,99,104,0,114,0,114,101,99,116,97,110,103,108,101,46,99,0,82,101,99,116,65,114,101,97,0,108,97,98,101,108,58,32,97,114,101,97,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,114,116,114,101,101,10,0,114,32,38,38,32,114,114,0,67,111,109,98,105,110,101,82,101,99,116,0,114,32,38,38,32,115,0,79,118,101,114,108,97,112,0,110,0,115,112,108,105,116,46,113,46,99,0,83,112,108,105,116,78,111,100,101,0,98,0,110,45,62,99,111,117,110,116,32,43,32,40,42,110,110,41,45,62,99,111,117,110,116,32,61,61,32,78,79,68,69,67,65,82,68,32,43,32,49,0,76,111,97,100,78,111,100,101,115,0,113,0,112,0,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,112,97,114,116,105,116,105,111,110,91,105,93,32,61,61,32,48,32,124,124,32,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,112,97,114,116,105,116,105,111,110,91,105,93,32,61,61,32,49,0,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,99,111,117,110,116,91,48,93,32,43,32,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,99,111,117,110,116,91,49,93,32,61,61,32,78,79,68,69,67,65,82,68,32,43,32,49,0,77,101,116,104,111,100,90,101,114,111,0,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,99,111,117,110,116,91,48,93,32,62,61,32,114,116,112,45,62,77,105,110,70,105,108,108,32,38,38,32,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,99,111,117,110,116,91,49,93,32,62,61,32,114,116,112,45,62,77,105,110,70,105,108,108,0,33,114,116,112,45,62,115,112,108,105,116,46,80,97,114,116,105,116,105,111,110,115,91,48,93,46,116,97,107,101,110,91,105,93,0,67,108,97,115,115,105,102,121,0,71,101,116,66,114,97,110,99,104,101,115,0,110,45,62,98,114,97,110,99,104,91,105,93,46,99,104,105,108,100,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,2,2,2,2,2,2,16,12,89,1,0,31,80,8,3,7,18,19,20,87,22,23,8,11,105,12,31,10,5,12,14,41,17,43,15,45,16,47,48,32,50,6,52,53,27,28,29,30,11,12,33,34,35,36,37,38,39,40,12,24,25,23,4,10,27,28,26,32,42,10,33,34,35,36,37,38,39,40,12,10,14,83,10,44,88,49,88,88,88,88,88,88,12,27,28,15,46,88,51,33,34,35,36,37,38,39,40,27,28,255,83,255,255,33,34,35,36,37,38,39,40,12,255,255,5,255,255,255,9,20,255,255,255,255,255,12,27,28,255,16,21,22,33,34,35,36,37,38,39,40,27,28,255,255,255,255,33,34,35,36,37,38,39,40,12,255,18,19,20,17,22,23,255,255,255,255,255,255,12,27,28,255,255,255,18,33,34,35,36,37,38,39,40,27,28,255,255,255,255,33,34,35,36,37,38,39,40,12,255,255,255,255,255,255,19,255,255,255,255,255,255,12,27,28,255,255,255,255,33,34,35,36,37,38,39,40,27,28,255,255,255,255,33,34,35,36,37,38,39,40,18,19,20,21,22,23,24,25,255,255,255,255,255,255,255,255,255,35,36,37,38,39,27,18,19,20,22,23,34,54,104,1,31,56,86,33,32,2,27,27,27,94,27,27,55,57,112,54,210,194,79,4,60,34,71,34,63,34,68,34,34,88,34,101,34,34,5,6,95,96,57,4,7,8,9,10,11,12,13,14,4,102,103,93,106,109,5,6,111,88,59,113,7,8,9,10,11,12,13,14,4,114,60,91,115,62,97,70,27,18,19,20,22,23,4,5,6,63,65,98,73,7,8,9,10,11,12,13,14,5,6,0,92,0,0,7,8,9,10,11,12,13,14,4,0,0,79,0,0,0,83,66,0,0,0,0,0,4,5,6,0,68,84,85,7,8,9,10,11,12,13,14,5,6,0,0,0,0,7,8,9,10,11,12,13,14,4,0,42,44,46,71,49,51,0,0,0,0,0,0,4,5,6,0,0,0,74,7,8,9,10,11,12,13,14,5,6,0,0,0,0,7,8,9,10,11,12,13,14,4,0,0,0,0,0,0,76,0,0,0,0,0,0,4,5,6,0,0,0,0,7,8,9,10,11,12,13,14,5,6,0,0,0,0,7,8,9,10,11,12,13,14,41,43,45,47,48,50,52,53,0,0,0,0,0,0,0,0,0,41,43,45,48,50,0,4,47,0,36,35,0,18,20,22,26,28,30,32,24,0,5,7,47,47,47,0,47,47,0,0,9,8,40,0,0,1,34,2,6,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,37,3,38,19,10,41,21,11,42,23,14,45,25,17,27,12,43,29,13,44,31,15,33,16,0,51,0,48,0,47,67,0,49,0,47,0,53,46,39,66,50,65,0,58,56,0,60,52,69,0,54,0,64,0,0,63,0,68,55,59,57,61,0,2,3,3,1,1,2,1,1,1,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,2,0,6,1,3,3,3,3,3,1,0,1,2,3,0,4,1,2,3,0,4,0,4,0,4,0,3,2,1,2,1,2,1,83,121,110,116,97,120,32,101,114,114,111,114,58,32,110,111,110,45,115,112,97,99,101,32,115,116,114,105,110,103,32,117,115,101,100,32,98,101,102,111,114,101,32,60,84,65,66,76,69,62,0,83,121,110,116,97,120,32,101,114,114,111,114,58,32,110,111,110,45,115,112,97,99,101,32,115,116,114,105,110,103,32,117,115,101,100,32,97,102,116,101,114,32,60,47,84,65,66,76,69,62,0,0,41,42,42,42,43,44,44,45,45,45,45,45,45,45,45,45,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,62,63,63,65,64,66,66,66,66,66,66,67,67,68,68,68,70,69,71,71,71,73,72,74,72,75,72,76,72,77,77,78,78,79,79,255,3,15,16,17,35,58,36,61,37,64,21,67,38,69,39,72,24,75,25,77,26,40,28,78,29,30,80,81,82,89,90,108,107,110,99,100,87,105,69,114,114,111,114,58,32,100,105,115,99,97,114,100,105,110,103,0,0,1,7,42,12,27,28,33,34,35,36,37,38,39,40,43,44,45,46,48,50,52,54,56,58,60,62,63,64,66,67,0,3,8,45,46,48,50,54,56,63,44,64,44,64,44,64,44,44,64,44,64,44,44,12,8,31,11,47,47,14,49,49,15,51,51,20,53,16,55,55,17,57,57,18,59,19,61,65,5,68,69,70,9,21,22,69,78,32,71,72,63,67,23,69,29,30,43,66,76,77,6,24,25,72,79,4,74,73,10,75,26,72,10,10,10,69,114,114,111,114,58,32,112,111,112,112,105,110,103,0,109,101,109,111,114,121,32,101,120,104,97,117,115,116,101,100,0,67,108,101,97,110,117,112,58,32,100,105,115,99,97,114,100,105,110,103,32,108,111,111,107,97,104,101,97,100,0,67,108,101,97,110,117,112,58,32,112,111,112,112,105,110,103,0,68,101,108,101,116,105,110,103,0,0,37,115,32,105,110,32,108,105,110,101,32,37,100,32,10,0,45,45,0,76,97,98,101,108,32,99,108,111,115,101,100,32,98,101,102,111,114,101,32,101,110,100,32,111,102,32,72,84,77,76,32,101,108,101,109,101,110,116,10,0,85,110,99,108,111,115,101,100,32,99,111,109,109,101,110,116,10,0,60,47,72,84,77,76,62,0,60,72,84,77,76,62,0,84,65,66,76,69,0,84,82,0,84,72,0,84,68,0,72,84,77,76,0,70,79,78,84,0,66,0,85,0,79,0,73,0,83,85,80,0,83,85,66,0,83,0,66,82,0,72,82,0,86,82,0,73,77,71,0,85,110,107,110,111,119,110,32,72,84,77,76,32,101,108,101,109,101,110,116,32,60,37,115,62,32,111,110,32,108,105,110,101,32,37,100,32,10,0,60,73,77,71,62,0,73,108,108,101,103,97,108,32,97,116,116,114,105,98,117,116,101,32,37,115,32,105,110,32,37,115,32,45,32,105,103,110,111,114,101,100,10,0,115,99,97,108,101,0,115,114,99,0,60,66,82,62,0,97,108,105,103,110,0,73,71,72,84,0,69,70,84,0,69,78,84,69,82,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,65,76,73,71,78,32,45,32,105,103,110,111,114,101,100,10,0,60,70,79,78,84,62,0,99,111,108,111,114,0,102,97,99,101,0,112,111,105,110,116,45,115,105,122,101,0,80,79,73,78,84,45,83,73,90,69,0,73,109,112,114,111,112,101,114,32,37,115,32,118,97,108,117,101,32,37,115,32,45,32,105,103,110,111,114,101,100,0,37,115,32,118,97,108,117,101,32,37,115,32,62,32,37,100,32,45,32,116,111,111,32,108,97,114,103,101,32,45,32,105,103,110,111,114,101,100,0,37,115,32,118,97,108,117,101,32,37,115,32,60,32,37,100,32,45,32,116,111,111,32,115,109,97,108,108,32,45,32,105,103,110,111,114,101,100,0,60,84,68,62,0,98,97,108,105,103,110,0,98,103,99,111,108,111,114,0,98,111,114,100,101,114,0,99,101,108,108,112,97,100,100,105,110,103,0,99,101,108,108,115,112,97,99,105,110,103,0,99,111,108,115,112,97,110,0,102,105,120,101,100,115,105,122,101,0,103,114,97,100,105,101,110,116,97,110,103,108,101,0,104,101,105,103,104,116,0,104,114,101,102,0,105,100,0,112,111,114,116,0,114,111,119,115,112,97,110,0,115,105,100,101,115,0,115,116,121,108,101,0,116,97,114,103,101,116,0,116,105,116,108,101,0,116,111,111,108,116,105,112,0,118,97,108,105,103,110,0,119,105,100,116,104,0,87,73,68,84,72,0,79,84,84,79,77,0,79,80,0,73,68,68,76,69,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,86,65,76,73,71,78,32,45,32,105,103,110,111,114,101,100,10,0,32,44,0,79,85,78,68,69,68,0,65,68,73,65,76,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,83,84,89,76,69,32,45,32,105,103,110,111,114,101,100,10,0,83,79,76,73,68,0,73,78,86,73,83,73,66,76,69,0,73,78,86,73,83,0,68,79,84,84,69,68,0,68,65,83,72,69,68,0,85,110,114,101,99,111,103,110,105,122,101,100,32,99,104,97,114,97,99,116,101,114,32,39,37,99,39,32,40,37,100,41,32,105,110,32,115,105,100,101,115,32,97,116,116,114,105,98,117,116,101,10,0,82,79,87,83,80,65,78,0,82,79,87,83,80,65,78,32,118,97,108,117,101,32,99,97,110,110,111,116,32,98,101,32,48,32,45,32,105,103,110,111,114,101,100,10,0,72,69,73,71,72,84,0,71,82,65,68,73,69,78,84,65,78,71,76,69,0,82,85,69,0,65,76,83,69,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,70,73,88,69,68,83,73,90,69,32,45,32,105,103,110,111,114,101,100,10,0,67,79,76,83,80,65,78,0,67,79,76,83,80,65,78,32,118,97,108,117,101,32,99,97,110,110,111,116,32,98,101,32,48,32,45,32,105,103,110,111,114,101,100,10,0,67,69,76,76,83,80,65,67,73,78,71,0,67,69,76,76,80,65,68,68,73,78,71,0,66,79,82,68,69,82,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,66,65,76,73,71,78,32,105,110,32,84,68,32,45,32,105,103,110,111,114,101,100,10,0,69,88,84,0,73,108,108,101,103,97,108,32,118,97,108,117,101,32,37,115,32,102,111,114,32,65,76,73,71,78,32,105,110,32,84,68,32,45,32,105,103,110,111,114,101,100,10,0,60,84,65,66,76,69,62,0,99,101,108,108,98,111,114,100,101,114,0,99,111,108,117,109,110,115,0,114,111,119,115,0,85,110,107,110,111,119,110,32,118,97,108,117,101,32,37,115,32,102,111,114,32,82,79,87,83,32,45,32,105,103,110,111,114,101,100,10,0,85,110,107,110,111,119,110,32,118,97,108,117,101,32,37,115,32,102,111,114,32,67,79,76,85,77,78,83,32,45,32,105,103,110,111,114,101,100,10,0,67,69,76,76,83,66,79,82,68,69,82,0,46,46,46,32,37,115,32,46,46,46,10,0,106,32,61,61,32,48,0,99,118,116,46,99,0,80,111,98,115,112,97,116,104,0,114,111,117,116,101,46,99,0,108,105,98,112,97,116,104,47,37,115,58,37,100,58,32,37,115,10,0,115,104,111,114,116,101,115,116,46,99,0,115,111,117,114,99,101,32,112,111,105,110,116,32,110,111,116,32,105,110,32,97,110,121,32,116,114,105,97,110,103,108,101,0,100,101,115,116,105,110,97,116,105,111,110,32,112,111,105,110,116,32,110,111,116,32,105,110,32,97,110,121,32,116,114,105,97,110,103,108,101,0,99,97,110,110,111,116,32,102,105,110,100,32,116,114,105,97,110,103,108,101,32,112,97,116,104,0,99,97,110,110,111,116,32,109,97,108,108,111,99,32,111,112,115,0,99,97,110,110,111,116,32,114,101,97,108,108,111,99,32,111,112,115,0,116,114,105,97,110,103,117,108,97,116,105,111,110,32,102,97,105,108,101,100,0,99,97,110,110,111,116,32,109,97,108,108,111,99,32,116,114,105,115,0,99,97,110,110,111,116,32,114,101,97,108,108,111,99,32,116,114,105,115,0,99,97,110,110,111,116,32,109,97,108,108,111,99,32,100,113,46,112,110,108,115,0,99,97,110,110,111,116,32,114,101,97,108,108,111,99,32,100,113,46,112,110,108,115,0,99,97,110,110,111,116,32,109,97,108,108,111,99,32,112,110,108,115,0,99,97,110,110,111,116,32,109,97,108,108,111,99,32,112,110,108,112,115,0,99,97,110,110,111,116,32,114,101,97,108,108,111,99,32,112,110,108,115,0,99,97,110,110,111,116,32,114,101,97,108,108,111,99,32,112,110,108,112,115,0,111,117,116,32,111,102,32,109,101,109,111,114,121,0,115,121,110,116,97,120,32,101,114,114,111,114,0,110,111,32,101,108,101,109,101,110,116,32,102,111,117,110,100,0,110,111,116,32,119,101,108,108,45,102,111,114,109,101,100,32,40,105,110,118,97,108,105,100,32,116,111,107,101,110,41,0,117,110,99,108,111,115,101,100,32,116,111,107,101,110,0,112,97,114,116,105,97,108,32,99,104,97,114,97,99,116,101,114,0,109,105,115,109,97,116,99,104,101,100,32,116,97,103,0,100,117,112,108,105,99,97,116,101,32,97,116,116,114,105,98,117,116,101,0,106,117,110,107,32,97,102,116,101,114,32,100,111,99,117,109,101,110,116,32,101,108,101,109,101,110,116,0,105,108,108,101,103,97,108,32,112,97,114,97,109,101,116,101,114,32,101,110,116,105,116,121,32,114,101,102,101,114,101,110,99,101,0,117,110,100,101,102,105,110,101,100,32,101,110,116,105,116,121,0,114,101,99,117,114,115,105,118,101,32,101,110,116,105,116,121,32,114,101,102,101,114,101,110,99,101,0,97,115,121,110,99,104,114,111,110,111,117,115,32,101,110,116,105,116,121,0,114,101,102,101,114,101,110,99,101,32,116,111,32,105,110,118,97,108,105,100,32,99,104,97,114,97,99,116,101,114,32,110,117,109,98,101,114,0,114,101,102,101,114,101,110,99,101,32,116,111,32,98,105,110,97,114,121,32,101,110,116,105,116,121,0,114,101,102,101,114,101,110,99,101,32,116,111,32,101,120,116,101,114,110,97,108,32,101,110,116,105,116,121,32,105,110,32,97,116,116,114,105,98,117,116,101,0,88,77,76,32,111,114,32,116,101,120,116,32,100,101,99,108,97,114,97,116,105,111,110,32,110,111,116,32,97,116,32,115,116,97,114,116,32,111,102,32,101,110,116,105,116,121,0,117,110,107,110,111,119,110,32,101,110,99,111,100,105,110,103,0,101,110,99,111,100,105,110,103,32,115,112,101,99,105,102,105,101,100,32,105,110,32,88,77,76,32,100,101,99,108,97,114,97,116,105,111,110,32,105,115,32,105,110,99,111,114,114,101,99,116,0,117,110,99,108,111,115,101,100,32,67,68,65,84,65,32,115,101,99,116,105,111,110,0,101,114,114,111,114,32,105,110,32,112,114,111,99,101,115,115,105,110,103,32,101,120,116,101,114,110,97,108,32,101,110,116,105,116,121,32,114,101,102,101,114,101,110,99,101,0,100,111,99,117,109,101,110,116,32,105,115,32,110,111,116,32,115,116,97,110,100,97,108,111,110,101,0,117,110,101,120,112,101,99,116,101,100,32,112,97,114,115,101,114,32,115,116,97,116,101,32,45,32,112,108,101,97,115,101,32,115,101,110,100,32,97,32,98,117,103,32,114,101,112,111,114,116,0,101,110,116,105,116,121,32,100,101,99,108,97,114,101,100,32,105,110,32,112,97,114,97,109,101,116,101,114,32,101,110,116,105,116,121,0,114,101,113,117,101,115,116,101,100,32,102,101,97,116,117,114,101,32,114,101,113,117,105,114,101,115,32,88,77,76,95,68,84,68,32,115,117,112,112,111,114,116,32,105,110,32,69,120,112,97,116,0,99,97,110,110,111,116,32,99,104,97,110,103,101,32,115,101,116,116,105,110,103,32,111,110,99,101,32,112,97,114,115,105,110,103,32,104,97,115,32,98,101,103,117,110,0,117,110,98,111,117,110,100,32,112,114,101,102,105,120,0,109,117,115,116,32,110,111,116,32,117,110,100,101,99,108,97,114,101,32,112,114,101,102,105,120,0,105,110,99,111,109,112,108,101,116,101,32,109,97,114,107,117,112,32,105,110,32,112,97,114,97,109,101,116,101,114,32,101,110,116,105,116,121,0,88,77,76,32,100,101,99,108,97,114,97,116,105,111,110,32,110,111,116,32,119,101,108,108,45,102,111,114,109,101,100,0,116,101,120,116,32,100,101,99,108,97,114,97,116,105,111,110,32,110,111,116,32,119,101,108,108,45,102,111,114,109,101,100,0,105,108,108,101,103,97,108,32,99,104,97,114,97,99,116,101,114,40,115,41,32,105,110,32,112,117,98,108,105,99,32,105,100,0,112,97,114,115,101,114,32,115,117,115,112,101,110,100,101,100,0,112,97,114,115,101,114,32,110,111,116,32,115,117,115,112,101,110,100,101,100,0,112,97,114,115,105,110,103,32,97,98,111,114,116,101,100,0,112,97,114,115,105,110,103,32,102,105,110,105,115,104,101,100,0,99,97,110,110,111,116,32,115,117,115,112,101,110,100,32,105,110,32,101,120,116,101,114,110,97,108,32,112,97,114,97,109,101,116,101,114,32,101,110,116,105,116,121,0,114,101,115,101,114,118,101,100,32,112,114,101,102,105,120,32,40,120,109,108,41,32,109,117,115,116,32,110,111,116,32,98,101,32,117,110,100,101,99,108,97,114,101,100,32,111,114,32,98,111,117,110,100,32,116,111,32,97,110,111,116,104,101,114,32,110,97,109,101,115,112,97,99,101,32,110,97,109,101,0,114,101,115,101,114,118,101,100,32,112,114,101,102,105,120,32,40,120,109,108,110,115,41,32,109,117,115,116,32,110,111,116,32,98,101,32,100,101,99,108,97,114,101,100,32,111,114,32,117,110,100,101,99,108,97,114,101,100,0,112,114,101,102,105,120,32,109,117,115,116,32,110,111,116,32,98,101,32,98,111,117,110,100,32,116,111,32,111,110,101,32,111,102,32,116,104,101,32,114,101,115,101,114,118,101,100,32,110,97,109,101,115,112,97,99,101,32,110,97,109,101,115,0,120,109,108,61,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,88,77,76,47,49,57,57,56,47,110,97,109,101,115,112,97,99,101,0,67,68,65,84,65,0,73,68,0,73,68,82,69,70,0,73,68,82,69,70,83,0,69,78,84,73,84,89,0,69,78,84,73,84,73,69,83,0,78,77,84,79,75,69,78,0,78,77,84,79,75,69,78,83,0,124,0,78,79,84,65,84,73,79,78,40,0,40,0,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,88,77,76,47,49,57,57,56,47,110,97,109,101,115,112,97,99,101,0,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,50,48,48,48,47,120,109,108,110,115,47,0,2,3,4,5,6,7,8,0,0,9,10,11,12,13,14,15,16,17,0,0,0,0,0,0,0,0,0,0,0,0,18,19,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,23,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,3,26,27,28,29,30,0,0,31,32,33,34,35,36,37,16,17,0,0,0,0,0,0,0,0,0,0,0,0,18,19,38,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,39,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,23,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,84,70,45,49,54,0,67,68,65,84,65,91,67,68,65,84,65,91,67,68,65,84,65,91,118,101,114,115,105,111,110,0,101,110,99,111,100,105,110,103,0,115,116,97,110,100,97,108,111,110,101,0,85,83,45,65,83,67,73,73,0,85,84,70,45,49,54,66,69,0,85,84,70,45,49,54,76,69,0,69,78,84,73,84,89,0,65,84,84,76,73,83,84,0,69,76,69,77,69,78,84,0,78,79,84,65,84,73,79,78,0,83,89,83,84,69,77,0,80,85,66,76,73,67,0,69,77,80,84,89,0,65,78,89,0,80,67,68,65,84,65,0,73,77,80,76,73,69,68,0,82,69,81,85,73,82,69,68,0,70,73,88,69,68,0,67,68,65,84,65,0,73,68,0,73,68,82,69,70,0,73,68,82,69,70,83,0,69,78,84,73,84,73,69,83,0,78,77,84,79,75,69,78,0,78,77,84,79,75,69,78,83,0,78,68,65,84,65,0,73,78,67,76,85,68,69,0,73,71,78,79,82,69,0,68,79,67,84,89,80,69,0,18,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,17,34,35,36,17,37,38,39,40,41,42,43,44,17,45,46,47,16,16,48,16,16,16,16,16,16,16,49,50,51,16,52,53,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,54,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,55,17,17,17,17,56,17,57,58,59,60,61,62,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,63,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,64,65,17,66,67,68,69,70,71,72,73,16,16,16,74,75,76,77,78,16,16,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,17,17,17,82,83,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,84,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,85,16,16,16,16,86,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,87,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,88,89,90,91,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,92,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,254,255,255,7,254,255,255,7,0,0,0,0,0,4,32,4,255,255,127,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,195,255,3,0,31,80,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,223,60,64,215,255,255,251,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,254,255,255,255,127,2,254,255,255,255,255,0,0,0,0,0,255,191,182,0,255,255,255,7,7,0,0,0,255,7,255,255,255,255,255,255,255,254,255,195,255,255,255,255,255,255,255,255,255,255,255,255,239,31,254,225,255,159,0,0,255,255,255,255,255,255,0,224,255,255,255,255,255,255,255,255,255,255,255,255,3,0,255,255,255,255,255,7,48,4,255,255,255,252,255,31,0,0,255,255,255,1,0,0,0,0,0,0,0,0,253,31,0,0,0,0,0,0,240,3,255,127,255,255,255,255,255,255,255,239,255,223,225,255,207,255,254,254,238,159,249,255,255,253,197,227,159,89,128,176,207,255,3,0,238,135,249,255,255,253,109,195,135,25,2,94,192,255,63,0,238,191,251,255,255,253,237,227,191,27,1,0,207,255,0,0,238,159,249,255,255,253,237,227,159,25,192,176,207,255,2,0,236,199,61,214,24,199,255,195,199,29,129,0,192,255,0,0,238,223,253,255,255,253,239,227,223,29,96,3,207,255,0,0,236,223,253,255,255,253,239,227,223,29,96,64,207,255,6,0,236,223,253,255,255,255,255,231,223,93,128,0,207,255,0,252,236,255,127,252,255,255,251,47,127,128,95,255,0,0,12,0,254,255,255,255,255,127,255,7,63,32,255,3,0,0,0,0,150,37,240,254,174,236,255,59,95,32,255,243,0,0,0,0,1,0,0,0,255,3,0,0,255,254,255,255,255,31,254,255,3,255,255,254,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,249,255,3,255,255,231,193,255,255,127,64,255,51,255,255,255,255,191,32,255,255,255,255,255,247,255,255,255,255,255,255,255,255,255,61,127,61,255,255,255,255,255,61,255,255,255,255,61,127,61,255,127,255,255,255,255,255,255,255,61,255,255,255,255,255,255,255,255,135,0,0,0,0,255,255,0,0,255,255,255,255,255,255,255,255,255,255,31,0,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,255,255,254,255,255,7,255,255,255,255,255,255,255,255,255,199,1,0,255,223,15,0,255,255,15,0,255,255,15,0,255,223,13,0,255,255,255,255,255,255,207,255,255,1,128,16,255,3,0,0,0,0,255,3,255,255,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,7,255,255,255,255,255,255,255,255,63,0,255,255,255,31,255,15,255,1,192,255,255,255,255,63,31,0,255,255,255,255,255,15,255,255,255,3,255,3,0,0,0,0,255,255,255,15,255,255,255,255,255,255,255,127,254,255,31,0,255,3,255,3,128,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,239,255,239,15,255,3,0,0,0,0,255,255,255,255,255,243,255,255,255,255,255,255,191,255,3,0,255,255,255,255,255,255,63,0,255,227,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,222,111,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,255,31,0,0,0,0,0,0,0,0,0,0,0,0,132,252,47,62,80,189,255,243,224,67,0,0,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,255,255,255,3,0,0,255,255,255,255,255,127,255,255,255],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+173662);allocate([255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,120,12,0,255,255,255,255,191,32,255,255,255,255,255,255,255,128,0,0,255,255,127,0,127,127,127,127,127,127,127,127,255,255,255,255,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,0,254,3,62,31,254,255,255,255,255,255,255,255,255,255,127,224,254,255,255,255,255,255,255,255,255,255,255,247,224,255,255,255,255,63,254,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,63,255,31,255,255,255,15,0,0,255,255,255,255,255,127,240,143,255,255,255,128,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,252,255,255,255,255,255,255,255,255,255,255,255,255,121,15,0,255,7,0,0,0,0,0,0,0,0,0,255,187,247,255,255,255,0,0,0,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,15,0,255,3,0,0,252,8,255,255,255,255,255,7,255,255,255,255,7,0,255,255,255,31,255,255,255,255,255,255,247,255,0,128,255,3,0,0,0,0,255,255,255,255,255,255,127,0,255,63,255,3,255,255,127,4,255,255,255,255,255,255,255,127,5,0,0,56,255,255,60,0,126,126,126,0,127,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,7,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,127,248,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,127,0,248,224,255,253,127,95,219,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,248,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,255,255,255,255,255,255,255,255,252,255,255,255,255,255,255,0,0,0,0,0,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,255,3,254,255,255,7,254,255,255,7,192,255,255,255,255,255,255,255,255,255,255,127,252,252,252,28,0,0,0,0,255,239,255,255,127,255,255,183,255,63,255,63,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,255,255,255,255,255,255,1,0,0,0,0,0,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,63,255,255,255,255,15,255,62,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,3,0,0,0,0,0,0,0,0,0,0,63,253,255,255,255,255,191,145,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,63,0,255,255,255,3,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,111,240,239,254,255,255,15,0,0,0,0,0,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,255,63,0,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,192,255,0,0,252,255,255,255,255,255,255,1,0,0,255,255,255,1,255,3,255,255,255,255,255,255,199,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,30,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,3,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,31,0,255,255,255,255,255,127,0,0,248,255,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,255,255,255,223,100,222,255,235,239,255,255,255,255,255,255,255,191,231,223,223,255,255,255,123,95,252,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,253,255,255,247,255,255,255,247,255,255,223,255,255,255,223,255,255,127,255,255,255,127,255,255,255,253,255,255,255,253,255,255,247,207,255,255,255,255,255,255,239,255,255,255,150,254,247,10,132,234,150,170,150,247,247,94,255,251,255,15,238,251,255,15,0,0,0,0,0,0,0,0,97,108,110,117,109,0,97,108,112,104,97,0,98,108,97,110,107,0,99,110,116,114,108,0,100,105,103,105,116,0,103,114,97,112,104,0,108,111,119,101,114,0,112,114,105,110,116,0,112,117,110,99,116,0,115,112,97,99,101,0,117,112,112,101,114,0,120,100,105,103,105,116,0,18,16,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,16,16,34,35,16,36,37,38,39,40,41,42,43,16,44,45,46,17,47,48,17,17,49,17,17,17,50,51,52,53,54,55,56,57,17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,58,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,59,16,60,61,62,63,64,65,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,66,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,67,16,16,68,16,69,70,71,16,72,16,73,16,16,16,16,74,75,76,77,16,16,78,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,16,16,16,16,82,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,83,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,84,85,86,87,16,16,88,89,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,90,16,91,92,93,94,95,96,97,98,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,254,255,0,252,1,0,0,248,1,0,0,120,0,0,0,0,255,251,223,251,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,252,255,224,175,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,32,64,176,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,134,254,255,255,255,0,64,73,0,0,0,0,0,24,0,223,255,0,200,0,0,0,0,0,0,0,1,0,60,0,0,0,0,0,0,0,0,0,0,0,0,16,224,1,30,0,96,255,191,0,0,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,207,3,0,0,0,3,0,32,255,127,0,0,0,78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0,16,0,32,30,0,48,0,1,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,252,15,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,3,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,255,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,63,2,0,0,0,0,0,0,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,128,0,128,192,223,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,254,255,255,255,0,252,255,255,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,192,255,223,255,7,0,0,0,0,0,0,0,0,0,0,128,6,0,252,0,0,24,62,0,0,128,191,0,204,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,96,255,255,255,31,0,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,1,0,0,24,0,0,0,0,0,0,0,0,0,56,0,0,0,0,16,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,0,0,254,127,47,0,0,255,3,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,255,255,255,255,0,0,0,192,0,0,0,0,0,0,0,0,1,0,224,159,0,0,0,0,127,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,16,0,0,252,255,255,255,31,0,0,0,0,0,12,0,0,0,0,0,0,64,0,12,240,0,0,0,0,0,0,192,248,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,255,0,255,255,255,33,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,127,0,0,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,3,224,0,224,0,224,0,96,128,248,255,255,255,252,255,255,255,255,255,127,31,252,241,127,255,127,0,0,255,255,255,3,0,0,255,255,255,255,1,0,123,3,208,193,175,66,0,12,31,188,255,255,0,0,0,0,0,2,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,127,0,0,0,255,7,0,0,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,252,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,135,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,255,15,0,0,0,0,0,0,0,0,255,255,255,251,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,255,15,30,255,255,255,1,252,193,224,0,0,0,0,0,0,0,0,0,0,0,30,1,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,0,0,0,0,255,255,255,255,15,0,0,0,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,0,0,0,0,0,0,192,0,224,0,0,0,0,0,0,0,0,0,0,0,128,15,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,255,255,127,0,3,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,8,0,0,0,15,255,3,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0,0,16,192,0,0,255,255,3,7,0,0,0,0,0,248,0,0,0,0,8,128,0,0,0,0,0,0,0,0,0,0,8,0,255,63,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,0,0,128,11,0,0,0,0,0,0,0,128,2,0,0,192,0,0,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,255,255,255,3,127,0,255,255,255,255,247,255,127,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,254,255,0,252,1,0,0,248,1,0,0,248,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,127,0,48,135,255,255,255,255,255,143,255,0,0,0,0,0,0,224,255,255,7,255,15,0,0,0,0,0,0,255,255,255,255,255,63,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,143,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,255,0,255,1,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,255,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,63,252,255,63,0,0,0,3,0,0,0,0,0,0,254,3,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,255,255,255,255,127,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,127,0,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,8,0,0,0,8,0,0,32,0,0,0,32,0,0,128,0,0,0,128,0,0,0,2,0,0,0,2,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,127,254,127,254,255,254,255,0,0,0,0,255,7,255,255,255,127,255,255,255,255,255,255,255,15,255,255,255,255,255,7,0,0,0,0,0,0,0,0,192,255,255,255,7,0,255,255,255,255,255,7,255,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,1,0,191,255,255,255,255,255,255,255,255,31,255,255,15,0,255,255,255,255,223,7,0,0,255,255,1,0,255,255,255,255,255,255,255,127,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,30,255,255,255,255,255,255,255,63,15,0,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,255,255,255,255,255,255,255,225,255,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,47,112,114,111,99,47,115,101,108,102,47,102,100,47,0,67,46,85,84,70,45,56,0,114,119,97,0,119,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,116,109,112,0,47,116,109,112,47,116,37,120,45,37,120],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+183902);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,9,0,10,0,13,0,12,0,7,0,27,0,91,91,58,97,108,110,117,109,58,93,95,93,0,91,94,91,58,97,108,110,117,109,58,93,95,93,0,91,91,58,115,112,97,99,101,58,93,93,0,91,94,91,58,115,112,97,99,101,58,93,93,0,91,91,58,100,105,103,105,116,58,93,93,0,91,94,91,58,100,105,103,105,116,58,93,93,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+192848);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var errored=false;var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&146)>>1}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsToPermissionString(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var _stdin=allocate(1,"i32*",ALLOC_STATIC);var _stdout=allocate(1,"i32*",ALLOC_STATIC);var _stderr=allocate(1,"i32*",ALLOC_STATIC);var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}var mounts=FS.getMounts(FS.root.mount);var completed=0;function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=mounts.length){callback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){if(err===ERRNO_CODES.EISDIR)err=ERRNO_CODES.EPERM;throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall192(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get(),prot=SYSCALLS.get(),flags=SYSCALLS.get(),fd=SYSCALLS.get(),off=SYSCALLS.get();off<<=12;var ptr;var allocated=false;if(fd===-1){ptr=_malloc(len);if(!ptr)return-ERRNO_CODES.ENOMEM;_memset(ptr,0,len);allocated=true}else{var info=FS.getStream(fd);if(!info)return-ERRNO_CODES.EBADF;var res=FS.mmap(info,HEAPU8,addr,len,off,prot,flags);ptr=res.ptr;allocated=res.allocated}SYSCALLS.mappings[ptr]={malloc:ptr,len:len,allocated:allocated,fd:fd,flags:flags};return ptr}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _emscripten_check_longjmp=true;var _emscripten_cleanup_setjmp=true;var _emscripten_postinvoke=true;function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;var _environ=allocate(1,"i32*",ALLOC_STATIC);var ___environ=_environ;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C";ENV["_"]=Module["thisProgram"];poolPtr=allocate(TOTAL_ENV_SIZE,"i8",ALLOC_STATIC);envPtr=allocate(MAX_ENV_VALUES*4,"i8*",ALLOC_STATIC);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _setenv(envname,envval,overwrite){if(envname===0){___setErrNo(ERRNO_CODES.EINVAL);return-1}var name=Pointer_stringify(envname);var val=Pointer_stringify(envval);if(name===""||name.indexOf("=")!==-1){___setErrNo(ERRNO_CODES.EINVAL);return-1}if(ENV.hasOwnProperty(name)&&!overwrite)return 0;ENV[name]=val;___buildEnvironment(ENV);return 0}function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module["_bitshift64Lshr"]=_bitshift64Lshr;var _emscripten_prep_setjmp=true;function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}function _emscripten_longjmp(env,value){_longjmp(env,value)}var _ceil=Math_ceil;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_memmove"]=_memmove;var _emscripten_preinvoke=true;var _BItoD=true;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall20(which,varargs){SYSCALLS.varargs=varargs;try{return PROCINFO.pid}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_memset"]=_memset;var _BDtoILow=true;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}var _tan=Math_tan;function ___lock(){}function ___unlock(){}var _asin=Math_asin;var _llvm_fabs_f64=Math_abs;var _atanf=Math_atan;var _fabs=Math_abs;var _floor=Math_floor;var _sqrt=Math_sqrt;var _emscripten_asm_const_int=true;var _abs=Math_abs;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE>2]=a;c[g>>2]=b;c[h>>2]=d;d=(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]|1;c[j>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;d=c[j>>2]|0;c[k>>2]=c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if((c[k>>2]|0)==(c[g>>2]|0)){d=c[j>>2]|0;c[k>>2]=c[((c[c[j>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}if(!(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&1)){YA(c[h>>2]|0,c[j>>2]|0,1)|0;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=c[g>>2];qz(c[f>>2]|0,c[k>>2]|0,c[h>>2]|0)}c[j>>2]=UA(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|0}i=e;return}function rz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+176|0;e=d+8|0;f=d;g=d+44|0;h=d+40|0;j=d+36|0;k=d+32|0;l=d+28|0;m=d+24|0;n=d+20|0;o=d+16|0;p=d+12|0;q=d+48|0;c[g>>2]=a;c[h>>2]=b;b=c[12966]|0;c[12966]=b+1;c[f>>2]=b;k3(q,133960,f)|0;c[j>>2]=FD(c[g>>2]|0,q,1)|0;MC(c[j>>2]|0,175049,280,1)|0;f=c[12966]|0;c[12966]=f+1;c[e>>2]=f;k3(q,133960,e)|0;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[k>>2]=gB(q,e,0)|0;c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;eC(c[j>>2]|0,c[l>>2]|0,1)|0;e=c[k>>2]|0;c[m>>2]=fC(e,wB(c[l>>2]|0)|0,1)|0;MC(c[m>>2]|0,175026,304,1)|0;c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=c[m>>2];c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[m>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2];c[o>>2]=OA(c[g>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;YA(c[j>>2]|0,c[o>>2]|0,1)|0;e=c[o>>2]|0;c[n>>2]=c[(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2];c[p>>2]=VA(c[k>>2]|0,c[m>>2]|0,c[n>>2]|0,0,1)|0;MC(c[p>>2]|0,175319,176,1)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]=c[o>>2];e=(c[(c[m>>2]|0)+8>>2]|0)+236|0;c[e>>2]=(c[e>>2]|0)+1;e=(c[(c[n>>2]|0)+8>>2]|0)+236|0;c[e>>2]=(c[e>>2]|0)+1;c[o>>2]=QA(c[g>>2]|0,c[o>>2]|0)|0}c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}c[c[h>>2]>>2]=c[k>>2];i=d;return c[j>>2]|0}function sz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=uz()|0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){g=c[e>>2]|0;if(!(c[f>>2]|0))break;wz(g,c[f>>2]|0);c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}i=b;return g|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+80|0;f=e+72|0;g=e+68|0;h=e+64|0;j=e+60|0;k=e+56|0;l=e+52|0;m=e+48|0;n=e+44|0;o=e+40|0;p=e+36|0;q=e+32|0;r=e+28|0;s=e+24|0;t=e+20|0;u=e+16|0;v=e+12|0;w=e+8|0;x=e+4|0;y=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[s>>2]=0;c[t>>2]=0;c[v>>2]=0;c[u>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2];c[j>>2]=cK(c[u>>2]<<2)|0;c[k>>2]=cK(c[u>>2]<<2)|0;c[l>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;d=c[l>>2]|0;c[o>>2]=c[((c[c[l>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if((c[o>>2]|0)==(c[g>>2]|0)){d=c[l>>2]|0;c[o>>2]=c[((c[c[l>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}c[q>>2]=0;c[m>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;if((c[m>>2]|0)!=(c[l>>2]|0)){d=c[m>>2]|0;c[p>>2]=c[((c[c[m>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if((c[p>>2]|0)==(c[g>>2]|0)){d=c[m>>2]|0;c[p>>2]=c[((c[c[m>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}c[n>>2]=VA(c[f>>2]|0,c[o>>2]|0,c[p>>2]|0,0,0)|0;if(((c[n>>2]|0)!=0?(c[q>>2]=1,(c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0):0)?(c[v>>2]=(c[v>>2]|0)+1,(c[(c[(c[n>>2]|0)+8>>2]|0)+116>>2]|0)!=0):0){pC(c[h>>2]|0,c[(c[(c[n>>2]|0)+8>>2]|0)+116>>2]|0)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+116>>2]=0}}c[m>>2]=UA(c[f>>2]|0,c[m>>2]|0,c[g>>2]|0)|0}d=c[o>>2]|0;if(c[q>>2]|0){c[(c[j>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+1}else{c[(c[k>>2]|0)+(c[t>>2]<<2)>>2]=d;c[t>>2]=(c[t>>2]|0)+1}c[l>>2]=UA(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0)|0}c[r>>2]=(c[u>>2]|0)-1-(c[v>>2]|0);if((c[r>>2]|0)<=0){z=c[k>>2]|0;O4(z);A=c[j>>2]|0;O4(A);i=e;return}if((c[r>>2]|0)>=(c[t>>2]|0)){if((c[r>>2]|0)!=(c[t>>2]|0)){z=c[k>>2]|0;O4(z);A=c[j>>2]|0;O4(A);i=e;return}c[y>>2]=c[c[j>>2]>>2];c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0))break;c[x>>2]=c[(c[k>>2]|0)+(c[w>>2]<<2)>>2];MC(VA(c[f>>2]|0,c[y>>2]|0,c[x>>2]|0,0,1)|0,175319,176,1)|0;v=(c[(c[y>>2]|0)+8>>2]|0)+236|0;c[v>>2]=(c[v>>2]|0)+1;v=(c[(c[x>>2]|0)+8>>2]|0)+236|0;c[v>>2]=(c[v>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}z=c[k>>2]|0;O4(z);A=c[j>>2]|0;O4(A);i=e;return}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0))break;if(((c[w>>2]|0)+1|0)>=(c[t>>2]|0))break;c[y>>2]=c[(c[k>>2]|0)+(c[w>>2]<<2)>>2];c[x>>2]=c[(c[k>>2]|0)+((c[w>>2]|0)+1<<2)>>2];MC(VA(c[f>>2]|0,c[y>>2]|0,c[x>>2]|0,0,1)|0,175319,176,1)|0;v=(c[(c[y>>2]|0)+8>>2]|0)+236|0;c[v>>2]=(c[v>>2]|0)+1;v=(c[(c[x>>2]|0)+8>>2]|0)+236|0;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+2}c[w>>2]=2;while(1){if((c[r>>2]|0)<=0)break;c[y>>2]=c[c[k>>2]>>2];c[x>>2]=c[(c[k>>2]|0)+(c[w>>2]<<2)>>2];MC(VA(c[f>>2]|0,c[y>>2]|0,c[x>>2]|0,0,1)|0,175319,176,1)|0;t=(c[(c[y>>2]|0)+8>>2]|0)+236|0;c[t>>2]=(c[t>>2]|0)+1;t=(c[(c[x>>2]|0)+8>>2]|0)+236|0;c[t>>2]=(c[t>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+-1}z=c[k>>2]|0;O4(z);A=c[j>>2]|0;O4(A);i=e;return}function uz(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=Nz(51868,c[12989]|0)|0;i=a;return c[b>>2]|0}function vz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jz(c[d>>2]|0)|0;i=b;return}function wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+8|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2];c[h>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,1)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]=c[(c[h>>2]|0)+12>>2];c[(c[h>>2]|0)+12>>2]=c[f>>2];i=d;return}function xz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+16|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2];c[h>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,4)|0;if(!(c[h>>2]|0))La(133970,133973,107,133983);if((c[(c[h>>2]|0)+12>>2]|0)==(c[f>>2]|0)){c[(c[h>>2]|0)+12>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2];if(c[(c[h>>2]|0)+12>>2]|0){i=d;return}Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,c[h>>2]|0,2)|0;i=d;return}c[k>>2]=c[(c[h>>2]|0)+12>>2];c[j>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2];while(1){if(c[j>>2]|0)l=(c[j>>2]|0)!=(c[f>>2]|0);else l=0;m=c[j>>2]|0;if(!l)break;c[k>>2]=m;c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]}if(!m){i=d;return}c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2];i=d;return}function yz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,0,128)|0;if(!(c[f>>2]|0)){c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}c[g>>2]=c[(c[f>>2]|0)+12>>2];c[(c[f>>2]|0)+12>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2];if(!(c[(c[f>>2]|0)+12>>2]|0))Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,c[f>>2]|0,2)|0;c[d>>2]=c[g>>2];h=c[d>>2]|0;i=b;return h|0}function zz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=cK(16)|0;c[(c[g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];i=e;return c[g>>2]|0}function Az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function Bz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;do if((c[c[h>>2]>>2]|0)>=(c[c[j>>2]>>2]|0))if((c[c[h>>2]>>2]|0)>(c[c[j>>2]>>2]|0)){c[g>>2]=1;break}else{c[g>>2]=0;break}else c[g>>2]=-1;while(0);i=f;return c[g>>2]|0}function Cz(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=Nz(51904,c[12989]|0)|0;i=a;return c[b>>2]|0}function Dz(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jz(c[d>>2]|0)|0;i=b;return}function Ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=c[f>>2];Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,1)|0;i=d;return}function Fz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=c[f>>2];Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,2)|0;i=d;return}function Gz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=cK(12)|0;c[(c[g>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];i=e;return c[g>>2]|0}function Hz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function Iz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;do if((c[c[h>>2]>>2]|0)>>>0<=(c[c[j>>2]>>2]|0)>>>0)if((c[c[h>>2]>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0){c[g>>2]=-1;break}else{c[g>>2]=0;break}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function Jz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[g>>2]=0;if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+24>>2]|0)<=0:0){c[f>>2]=c[(c[e>>2]|0)+4>>2];if((c[(c[f>>2]|0)+32>>2]|0)!=0?(a=Sb[c[(c[f>>2]|0)+32>>2]&127](c[e>>2]|0,2,0,c[f>>2]|0)|0,c[g>>2]=a,(a|0)<0):0){c[d>>2]=-1;h=c[d>>2]|0;i=b;return h|0}if(c[(c[e>>2]|0)+28>>2]|0)Sz(c[e>>2]|0,0)|0;if(!(c[g>>2]|0)){Hb[c[c[(c[e>>2]|0)+16>>2]>>2]&63](c[e>>2]|0,0,64)|0;if((Pz(c[e>>2]|0)|0)>0){c[d>>2]=-1;h=c[d>>2]|0;i=b;return h|0}if((c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)>0)Sb[c[(c[e>>2]|0)+12>>2]&127](c[e>>2]|0,c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0,0,c[f>>2]|0)|0;Sb[c[(c[e>>2]|0)+12>>2]&127](c[e>>2]|0,c[(c[e>>2]|0)+8>>2]|0,0,c[f>>2]|0)|0}if(c[(c[e>>2]|0)+20>>2]|0){if((c[g>>2]|0)==0?(c[(c[e>>2]|0)+20>>2]|0)==1:0)Sb[c[(c[e>>2]|0)+12>>2]&127](c[e>>2]|0,c[e>>2]|0,0,c[f>>2]|0)|0}else O4(c[e>>2]|0);if(c[(c[f>>2]|0)+32>>2]|0)Sb[c[(c[f>>2]|0)+32>>2]&127](c[e>>2]|0,6,0,c[f>>2]|0)|0;c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}c[d>>2]=-1;h=c[d>>2]|0;i=b;return h|0}function Kz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;a=c[(c[d>>2]|0)+8>>2]|0;a:do if(c[c[(c[d>>2]|0)+8>>2]>>2]&12)c[e>>2]=c[a+4>>2];else{h=c[d>>2]|0;if(!(c[a>>2]&3)){c[e>>2]=c[(c[h+8>>2]|0)+8>>2];c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]=0;break}c[e>>2]=Lz(h)|0;h=c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0;c[f>>2]=h;c[g>>2]=h+(c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break a;c[c[f>>2]>>2]=0;c[f>>2]=(c[f>>2]|0)+4}}while(0);f=c[(c[d>>2]|0)+8>>2]|0;c[f>>2]=c[f>>2]&-4097;c[(c[(c[d>>2]|0)+8>>2]|0)+16>>2]=0;c[(c[(c[d>>2]|0)+8>>2]|0)+4>>2]=0;i=b;return c[e>>2]|0}function Lz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+32|0;d=b+28|0;e=b+24|0;f=b+20|0;g=b+16|0;h=b+12|0;j=b+8|0;k=b+4|0;l=b;c[e>>2]=a;if(c[c[(c[e>>2]|0)+8>>2]>>2]&4096){c[d>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2];m=c[d>>2]|0;i=b;return m|0}c[j>>2]=0;c[h>>2]=0;a=c[(c[e>>2]|0)+8>>2]|0;a:do if(!(c[c[(c[e>>2]|0)+8>>2]>>2]&3)){n=c[(c[e>>2]|0)+8>>2]|0;if(c[a>>2]&112){c[h>>2]=c[n+8>>2];break}o=c[n+4>>2]|0;c[g>>2]=o;if(o){while(1){o=c[(c[g>>2]|0)+4>>2]|0;c[f>>2]=o;if(!o)break;c[(c[g>>2]|0)+4>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=c[g>>2];c[g>>2]=c[f>>2]}o=c[g>>2]|0;c[j>>2]=o;c[h>>2]=o;c[g>>2]=c[c[g>>2]>>2];while(1){if(!(c[g>>2]|0))break a;o=c[(c[g>>2]|0)+4>>2]|0;c[f>>2]=o;if(o){do{c[(c[g>>2]|0)+4>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=c[g>>2];c[g>>2]=c[f>>2];o=c[(c[g>>2]|0)+4>>2]|0;c[f>>2]=o}while((o|0)!=0);c[c[j>>2]>>2]=c[g>>2]}c[j>>2]=c[g>>2];c[g>>2]=c[c[g>>2]>>2]}}}else{o=c[a+8>>2]|0;c[k>>2]=o;c[l>>2]=o+(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]<<2);while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;o=c[c[k>>2]>>2]|0;c[f>>2]=o;if(o){o=c[f>>2]|0;if(c[j>>2]|0)c[c[j>>2]>>2]=o;else{c[j>>2]=o;c[h>>2]=o}while(1){p=c[j>>2]|0;if(!(c[c[j>>2]>>2]|0))break;c[j>>2]=c[p>>2]}c[c[k>>2]>>2]=p}c[k>>2]=(c[k>>2]|0)+4}}while(0);c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2]=c[h>>2];k=c[(c[e>>2]|0)+8>>2]|0;c[k>>2]=c[k>>2]|4096;c[d>>2]=c[h>>2];m=c[d>>2]|0;i=b;return m|0}function Mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;h=e+40|0;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;n=e+20|0;o=e+16|0;p=e+12|0;q=e+8|0;r=e+4|0;s=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(c[c[(c[g>>2]|0)+8>>2]>>2]&4096)Oz(c[g>>2]|0,0)|0;c[o>>2]=c[(c[g>>2]|0)+4>>2];c[m>>2]=c[c[o>>2]>>2];c[l>>2]=c[(c[o>>2]|0)+4>>2];c[k>>2]=c[(c[o>>2]|0)+8>>2];c[n>>2]=c[(c[o>>2]|0)+20>>2];d=(c[g>>2]|0)+20|0;c[d>>2]=c[d>>2]&-32769;d=c[j>>2]|0;do if(c[h>>2]|0){if(!(d&2049)){if((c[j>>2]&512|0)==0?(b=c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]|0,c[p>>2]=b,(b|0)!=0):0){b=c[p>>2]|0;if((c[k>>2]|0)<0)t=c[b+8>>2]|0;else t=b+(0-(c[k>>2]|0))|0;if((t|0)!=(c[h>>2]|0))u=78}else u=78;a:do if((u|0)==78){if(!(c[j>>2]&512)){b=(c[h>>2]|0)+(c[m>>2]|0)|0;if((c[l>>2]|0)<0)v=c[b>>2]|0;else v=b}else v=c[h>>2]|0;c[r>>2]=v;c[p>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2];while(1){if(!(c[p>>2]|0))break a;b=c[p>>2]|0;if((c[k>>2]|0)<0)w=c[b+8>>2]|0;else w=b+(0-(c[k>>2]|0))|0;c[s>>2]=w;b=(c[s>>2]|0)+(c[m>>2]|0)|0;if((c[l>>2]|0)<0)x=c[b>>2]|0;else x=b;c[s>>2]=x;do if(!(c[n>>2]|0)){b=c[r>>2]|0;a=c[s>>2]|0;if((c[l>>2]|0)<=0){y=J3(b,a)|0;break}else{y=B3(b,a,c[l>>2]|0)|0;break}}else y=Sb[c[n>>2]&127](c[g>>2]|0,c[r>>2]|0,c[s>>2]|0,c[o>>2]|0)|0;while(0);if(!y)break a;c[p>>2]=c[c[p>>2]>>2]}}while(0);if(!(c[p>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}a=(c[g>>2]|0)+20|0;c[a>>2]=c[a>>2]|32768;if(c[j>>2]&4098)break;if(!(c[j>>2]&8)){if(c[j>>2]&16){if((c[p>>2]|0)==(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0))A=0;else A=c[(c[p>>2]|0)+4>>2]|0;c[p>>2]=A}}else c[p>>2]=c[c[p>>2]>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[p>>2];do if(c[p>>2]|0){a=c[p>>2]|0;if((c[k>>2]|0)<0){B=c[a+8>>2]|0;break}else{B=a+(0-(c[k>>2]|0))|0;break}}else B=0;while(0);c[f>>2]=B;z=c[f>>2]|0;i=e;return z|0}if(((c[(c[o>>2]|0)+12>>2]|0)!=0?(c[j>>2]&1|0)!=0:0)?(a=Hb[c[(c[o>>2]|0)+12>>2]&63](c[g>>2]|0,c[h>>2]|0,c[o>>2]|0)|0,c[h>>2]=a,(a|0)==0):0){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}do if((c[k>>2]|0)>=0)c[p>>2]=(c[h>>2]|0)+(c[k>>2]|0);else{c[p>>2]=Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,0,12,c[o>>2]|0)|0;if(c[p>>2]|0){c[(c[p>>2]|0)+8>>2]=c[h>>2];break}if(((c[(c[o>>2]|0)+12>>2]|0)!=0?(c[(c[o>>2]|0)+16>>2]|0)!=0:0)?(c[j>>2]&1|0)!=0:0)Tb[c[(c[o>>2]|0)+16>>2]&127](c[g>>2]|0,c[h>>2]|0,c[o>>2]|0);c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}while(0);do if(c[c[(c[g>>2]|0)+8>>2]>>2]&128)if(c[j>>2]&8192)u=62;else u=58;else{if(!(c[c[(c[g>>2]|0)+8>>2]>>2]&16))if(c[c[(c[g>>2]|0)+8>>2]>>2]&32){u=58;break}else{u=62;break}a=(c[j>>2]&8192|0)!=0;b=c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]|0;c[q>>2]=b;C=(b|0)!=0;if(a){if(!C){u=62;break}if(!(c[c[q>>2]>>2]|0)){u=62;break}c[c[p>>2]>>2]=c[c[q>>2]>>2];c[(c[c[p>>2]>>2]|0)+4>>2]=c[p>>2];c[(c[p>>2]|0)+4>>2]=c[q>>2];c[c[(c[p>>2]|0)+4>>2]>>2]=c[p>>2];break}else{if(!C){u=58;break}if((c[q>>2]|0)==(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)){u=58;break}c[(c[p>>2]|0)+4>>2]=c[(c[q>>2]|0)+4>>2];c[c[(c[p>>2]|0)+4>>2]>>2]=c[p>>2];c[c[p>>2]>>2]=c[q>>2];c[(c[c[p>>2]>>2]|0)+4>>2]=c[p>>2];break}}while(0);if((u|0)==58){C=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[q>>2]=C;c[c[p>>2]>>2]=C;if(c[q>>2]|0){c[(c[p>>2]|0)+4>>2]=c[(c[q>>2]|0)+4>>2];c[(c[q>>2]|0)+4>>2]=c[p>>2]}else c[(c[p>>2]|0)+4>>2]=c[p>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]=c[p>>2]}else if((u|0)==62){C=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[q>>2]=C;a=c[p>>2]|0;if(C){c[c[(c[q>>2]|0)+4>>2]>>2]=a;c[(c[p>>2]|0)+4>>2]=c[(c[q>>2]|0)+4>>2];c[(c[q>>2]|0)+4>>2]=c[p>>2]}else{c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]=a;c[(c[p>>2]|0)+4>>2]=c[p>>2]}c[c[p>>2]>>2]=0}if((c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]|0)>=0){a=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[p>>2];a=c[p>>2]|0;if((c[k>>2]|0)<0)D=c[a+8>>2]|0;else D=a+(0-(c[k>>2]|0))|0;c[f>>2]=D;z=c[f>>2]|0;i=e;return z|0}else{if(d&384){a=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[p>>2]=a;if(a){if(c[j>>2]&256)c[p>>2]=c[(c[p>>2]|0)+4>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[p>>2]}do if(c[p>>2]|0){a=c[p>>2]|0;if((c[k>>2]|0)<0){E=c[a+8>>2]|0;break}else{E=a+(0-(c[k>>2]|0))|0;break}}else E=0;while(0);c[f>>2]=E;z=c[f>>2]|0;i=e;return z|0}if(c[j>>2]&4098){if((c[c[(c[g>>2]|0)+8>>2]>>2]&144|0)==0?(a=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0,c[p>>2]=a,(a|0)!=0):0)break;c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}if(!(c[j>>2]&64)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}if(!((c[(c[o>>2]|0)+16>>2]|0)==0?(c[(c[o>>2]|0)+8>>2]|0)>=0:0))u=21;b:do if((u|0)==21){c[p>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2];while(1){if(!(c[p>>2]|0))break b;c[q>>2]=c[c[p>>2]>>2];if(c[(c[o>>2]|0)+16>>2]|0){a=c[p>>2]|0;if((c[k>>2]|0)<0)F=c[a+8>>2]|0;else F=a+(0-(c[k>>2]|0))|0;Tb[c[(c[o>>2]|0)+16>>2]&127](c[g>>2]|0,F,c[o>>2]|0)}if((c[(c[o>>2]|0)+8>>2]|0)<0)Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,c[p>>2]|0,0,c[o>>2]|0)|0;c[p>>2]=c[q>>2]}}while(0);c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=0;c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]=0;c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]=0;c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}while(0);if(c[c[p>>2]>>2]|0)c[(c[c[p>>2]>>2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];F=c[p>>2]|0;u=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[q>>2]=u;E=c[c[p>>2]>>2]|0;if((F|0)==(u|0)){c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]=E;if(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]=c[(c[q>>2]|0)+4>>2]}else{c[c[(c[p>>2]|0)+4>>2]>>2]=E;if((c[p>>2]|0)==(c[(c[q>>2]|0)+4>>2]|0))c[(c[q>>2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2]}if((c[p>>2]|0)==(c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]|0))G=c[c[p>>2]>>2]|0;else G=0;c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=G;G=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[G>>2]=(c[G>>2]|0)-1;G=c[p>>2]|0;if((c[k>>2]|0)<0)H=c[G+8>>2]|0;else H=G+(0-(c[k>>2]|0))|0;c[h>>2]=H;if((c[(c[o>>2]|0)+16>>2]|0)!=0?(c[j>>2]&2|0)!=0:0)Tb[c[(c[o>>2]|0)+16>>2]&127](c[g>>2]|0,c[h>>2]|0,c[o>>2]|0);if((c[(c[o>>2]|0)+8>>2]|0)<0)Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,c[p>>2]|0,0,c[o>>2]|0)|0;c[f>>2]=c[h>>2];z=c[f>>2]|0;i=e;return z|0}function Nz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[12988];if(!((c[f>>2]|0)!=0&(c[g>>2]|0)!=0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}b=N4(40)|0;c[h>>2]=b;if(!b){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+4>>2]=0;Vz(c[h>>2]|0,c[f>>2]|0,0)|0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+28>>2]=0;c[(c[h>>2]|0)+36>>2]=0;do if(c[(c[f>>2]|0)+32>>2]|0){c[k>>2]=0;b=Sb[c[(c[f>>2]|0)+32>>2]&127](c[h>>2]|0,1,k,c[f>>2]|0)|0;c[j>>2]=b;if((b|0)>=0)if((c[j>>2]|0)>0){if(c[k>>2]|0)if(c[c[k>>2]>>2]&c[(c[g>>2]|0)+4>>2])break;else{m=15;break}if(c[(c[f>>2]|0)+28>>2]|0){O4(c[h>>2]|0);b=Sb[c[(c[f>>2]|0)+28>>2]&127](0,0,40,c[f>>2]|0)|0;c[h>>2]=b;if(b){c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+4>>2]=0;Vz(c[h>>2]|0,c[f>>2]|0,0)|0;c[(c[h>>2]|0)+20>>2]=1;c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+28>>2]=0;m=14;break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}else m=15}else m=14;else m=15}else m=14;while(0);if((m|0)==14){j=Sb[c[(c[h>>2]|0)+12>>2]&127](c[h>>2]|0,0,28,c[f>>2]|0)|0;c[k>>2]=j;if(j){c[c[k>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;c[(c[k>>2]|0)+20>>2]=0;c[(c[k>>2]|0)+16>>2]=0;c[(c[k>>2]|0)+12>>2]=0;c[(c[k>>2]|0)+24>>2]=0}else m=15}if((m|0)==15){O4(c[h>>2]|0);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[(c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[c[g>>2]>>2];c[(c[h>>2]|0)+16>>2]=c[g>>2];if(c[(c[f>>2]|0)+32>>2]|0)Sb[c[(c[f>>2]|0)+32>>2]&127](c[h>>2]|0,5,c[h>>2]|0,c[f>>2]|0)|0;c[e>>2]=c[h>>2];l=c[e>>2]|0;i=d;return l|0}function Oz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[f>>2]=a;c[g>>2]=b;c[m>>2]=c[c[(c[f>>2]|0)+16>>2]>>2];c[l>>2]=c[c[(c[f>>2]|0)+8>>2]>>2]&4096;do if(c[g>>2]|0){if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+16>>2]|0)){c[l>>2]=0;break}c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}else{if(c[l>>2]|0){c[g>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2];break}c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}while(0);b=c[(c[f>>2]|0)+8>>2]|0;c[b>>2]=c[b>>2]&-4097;b=c[(c[f>>2]|0)+8>>2]|0;a:do if(!(c[c[(c[f>>2]|0)+8>>2]>>2]&3)){if(c[b>>2]&12)c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[g>>2];else{c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=0;c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]=c[g>>2]}if(!(c[l>>2]|0))c[(c[(c[f>>2]|0)+8>>2]|0)+16>>2]=-1}else{c[b+4>>2]=0;a=c[(c[f>>2]|0)+8>>2]|0;if(!(c[l>>2]|0)){c[a+16>>2]=0;while(1){if(!(c[g>>2]|0))break a;c[h>>2]=c[c[g>>2]>>2];Hb[c[m>>2]&63](c[f>>2]|0,c[g>>2]|0,32)|0;c[g>>2]=c[h>>2]}}o=c[a+8>>2]|0;c[j>>2]=o;c[k>>2]=o+(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]<<2);while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;o=c[c[j>>2]>>2]|0;c[h>>2]=o;if(o){c[c[j>>2]>>2]=c[g>>2];c[g>>2]=c[c[h>>2]>>2];c[c[h>>2]>>2]=0}c[j>>2]=(c[j>>2]|0)+4}}while(0);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}function Pz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(c[c[(c[d>>2]|0)+8>>2]>>2]&4096)Oz(c[d>>2]|0,0)|0;do if((c[(c[(c[d>>2]|0)+8>>2]|0)+16>>2]|0)<0){a=c[(c[d>>2]|0)+8>>2]|0;if(c[c[(c[d>>2]|0)+8>>2]>>2]&12){g=Qz(c[a+4>>2]|0)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+16>>2]=g;break}if(c[a>>2]&112){c[f>>2]=0;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2];while(1){h=c[f>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=h+1;c[e>>2]=c[c[e>>2]>>2]}c[(c[(c[d>>2]|0)+8>>2]|0)+16>>2]=h}}while(0);i=b;return c[(c[(c[d>>2]|0)+8>>2]|0)+16>>2]|0}function Qz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){e=0;i=b;return e|0}a=Qz(c[(c[d>>2]|0)+4>>2]|0)|0;e=a+(Qz(c[c[d>>2]>>2]|0)|0)+1|0;i=b;return e|0}function Rz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;e=i;i=i+208|0;f=e+204|0;g=e+200|0;h=e+196|0;j=e+192|0;k=e+188|0;l=e+184|0;m=e+180|0;n=e+176|0;o=e+172|0;p=e+168|0;q=e+164|0;r=e+160|0;s=e+156|0;t=e+152|0;u=e+148|0;v=e+144|0;w=e+136|0;x=e+132|0;y=e+128|0;z=e+8|0;A=e+4|0;B=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(c[c[(c[g>>2]|0)+8>>2]>>2]&4096)Oz(c[g>>2]|0,0)|0;c[B>>2]=c[(c[g>>2]|0)+4>>2];c[p>>2]=c[c[B>>2]>>2];c[o>>2]=c[(c[B>>2]|0)+4>>2];c[n>>2]=c[(c[B>>2]|0)+8>>2];c[A>>2]=c[(c[B>>2]|0)+20>>2];d=(c[g>>2]|0)+20|0;c[d>>2]=c[d>>2]&-32769;c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2];if(!(c[h>>2]|0)){if((c[k>>2]|0)!=0?(c[j>>2]&448|0)!=0:0){if(!(c[j>>2]&64)){a:do if(c[j>>2]&256)while(1){d=c[c[k>>2]>>2]|0;c[l>>2]=d;if(!d)break a;c[c[k>>2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[k>>2];c[k>>2]=c[l>>2]}else while(1){d=c[(c[k>>2]|0)+4>>2]|0;c[l>>2]=d;if(!d)break a;c[(c[k>>2]|0)+4>>2]=c[c[l>>2]>>2];c[c[l>>2]>>2]=c[k>>2];c[k>>2]=c[l>>2]}while(0);c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[k>>2];d=c[k>>2]|0;if((c[n>>2]|0)<0)C=c[d+8>>2]|0;else C=d+(0-(c[n>>2]|0))|0;c[f>>2]=C;D=c[f>>2]|0;i=e;return D|0}if(!((c[(c[B>>2]|0)+16>>2]|0)==0?(c[(c[B>>2]|0)+8>>2]|0)>=0:0))E=10;if((E|0)==10)while(1){E=0;C=c[(c[k>>2]|0)+4>>2]|0;c[l>>2]=C;if(C){c[(c[k>>2]|0)+4>>2]=c[c[l>>2]>>2];c[c[l>>2]>>2]=c[k>>2];c[k>>2]=c[l>>2];E=10;continue}c[l>>2]=c[c[k>>2]>>2];if(c[(c[B>>2]|0)+16>>2]|0){C=c[k>>2]|0;if((c[n>>2]|0)<0)F=c[C+8>>2]|0;else F=C+(0-(c[n>>2]|0))|0;Tb[c[(c[B>>2]|0)+16>>2]&127](c[g>>2]|0,F,c[B>>2]|0)}if((c[(c[B>>2]|0)+8>>2]|0)<0)Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,c[k>>2]|0,0,c[B>>2]|0)|0;C=c[l>>2]|0;c[k>>2]=C;if(C)E=10;else break}c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]=0;c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=0;c[f>>2]=0;D=c[f>>2]|0;i=e;return D|0}c[f>>2]=0;D=c[f>>2]|0;i=e;return D|0}c[u>>2]=w;c[t>>2]=w;b:do if((c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0)==8?(c[j>>2]&4098|0)!=0:0){F=(c[h>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)G=c[F>>2]|0;else G=F;c[s>>2]=G;c[q>>2]=Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,c[h>>2]|0,4)|0;while(1){if(!(c[q>>2]|0)){E=47;break b}F=(c[q>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)H=c[F>>2]|0;else H=F;c[r>>2]=H;do if(!(c[A>>2]|0)){F=c[s>>2]|0;C=c[r>>2]|0;if((c[o>>2]|0)<=0){I=J3(F,C)|0;break}else{I=B3(F,C,c[o>>2]|0)|0;break}}else I=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);if(I){E=47;break b}J=c[g>>2]|0;if((c[q>>2]|0)==(c[h>>2]|0))break;c[q>>2]=Hb[c[J>>2]&63](c[g>>2]|0,c[q>>2]|0,8)|0}c[k>>2]=c[(c[J+8>>2]|0)+4>>2];c[c[t>>2]>>2]=c[(c[k>>2]|0)+4>>2];c[(c[u>>2]|0)+4>>2]=c[c[k>>2]>>2];E=192}else E=47;while(0);c:do if((E|0)==47){J=c[j>>2]|0;do if(c[j>>2]&2565){if(!(J&512)){q=(c[h>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)K=c[q>>2]|0;else K=q}else K=c[h>>2]|0;c[s>>2]=K;if(c[k>>2]|0)E=68}else{if(J&32){c[v>>2]=c[h>>2];q=c[v>>2]|0;if((c[n>>2]|0)<0)L=c[q+8>>2]|0;else L=q+(0-(c[n>>2]|0))|0;c[h>>2]=L;q=(c[h>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)M=c[q>>2]|0;else M=q;c[s>>2]=M;if(c[k>>2]|0){E=68;break}else break}if(c[k>>2]|0){q=c[k>>2]|0;if((c[n>>2]|0)<0)N=c[q+8>>2]|0;else N=q+(0-(c[n>>2]|0))|0;if((N|0)!=(c[h>>2]|0)){q=(c[h>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)O=c[q>>2]|0;else O=q;c[s>>2]=O;E=68}}}while(0);d:do if((E|0)==68){e:do if(((c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0)==4?(J=c[(c[(c[g>>2]|0)+8>>2]|0)+24>>2]|0,c[y>>2]=J,(J|0)!=0):0)?(c[j>>2]&516|0)!=0:0){c[l>>2]=c[k>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[y>>2]|0)){E=94;break}J=c[l>>2]|0;if((c[n>>2]|0)<0)P=c[J+8>>2]|0;else P=J+(0-(c[n>>2]|0))|0;c[r>>2]=P;J=(c[r>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)Q=c[J>>2]|0;else Q=J;c[r>>2]=Q;do if(!(c[A>>2]|0)){J=c[s>>2]|0;q=c[r>>2]|0;if((c[o>>2]|0)<=0){R=J3(J,q)|0;break}else{R=B3(J,q,c[o>>2]|0)|0;break}}else R=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);c[m>>2]=R;if(!R){E=84;break}c[z+(c[x>>2]<<2)>>2]=c[m>>2];q=c[l>>2]|0;if((c[m>>2]|0)<0)S=c[q+4>>2]|0;else S=c[q>>2]|0;c[l>>2]=S;if(!S){E=92;break}c[x>>2]=(c[x>>2]|0)+1}if((E|0)==84){q=c[l>>2]|0;if((c[n>>2]|0)<0)T=c[q+8>>2]|0;else T=q+(0-(c[n>>2]|0))|0;c[f>>2]=T;D=c[f>>2]|0;i=e;return D|0}else if((E|0)==92){c[f>>2]=0;D=c[f>>2]|0;i=e;return D|0}else if((E|0)==94){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[y>>2]|0))break e;q=c[k>>2]|0;do if((c[z+(c[x>>2]<<2)>>2]|0)<0){c[l>>2]=c[q+4>>2];J=c[l>>2]|0;if((c[z+((c[x>>2]|0)+1<<2)>>2]|0)<0){c[(c[k>>2]|0)+4>>2]=c[J>>2];c[c[l>>2]>>2]=c[k>>2];I=c[l>>2]|0;c[(c[u>>2]|0)+4>>2]=I;c[u>>2]=I;c[k>>2]=c[(c[l>>2]|0)+4>>2];break}else{c[c[t>>2]>>2]=J;c[t>>2]=J;J=c[k>>2]|0;c[(c[u>>2]|0)+4>>2]=J;c[u>>2]=J;c[k>>2]=c[c[l>>2]>>2];break}}else{c[l>>2]=c[q>>2];J=c[l>>2]|0;if((c[z+((c[x>>2]|0)+1<<2)>>2]|0)>0){c[c[k>>2]>>2]=c[J+4>>2];c[(c[l>>2]|0)+4>>2]=c[k>>2];I=c[l>>2]|0;c[c[t>>2]>>2]=I;c[t>>2]=I;c[k>>2]=c[c[l>>2]>>2];break}else{c[(c[u>>2]|0)+4>>2]=J;c[u>>2]=J;J=c[k>>2]|0;c[c[t>>2]>>2]=J;c[t>>2]=J;c[k>>2]=c[(c[l>>2]|0)+4>>2];break}}while(0);c[x>>2]=(c[x>>2]|0)+2}}}while(0);while(1){q=c[k>>2]|0;if((c[n>>2]|0)<0)U=c[q+8>>2]|0;else U=q+(0-(c[n>>2]|0))|0;c[r>>2]=U;q=(c[r>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)V=c[q>>2]|0;else V=q;c[r>>2]=V;do if(!(c[A>>2]|0)){q=c[s>>2]|0;J=c[r>>2]|0;if((c[o>>2]|0)<=0){W=J3(q,J)|0;break}else{W=B3(q,J,c[o>>2]|0)|0;break}}else W=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);c[m>>2]=W;if(!W)break d;J=c[k>>2]|0;if((c[m>>2]|0)<0){q=c[J+4>>2]|0;c[l>>2]=q;if(!q){E=132;break}q=c[l>>2]|0;if((c[n>>2]|0)<0)X=c[q+8>>2]|0;else X=q+(0-(c[n>>2]|0))|0;c[r>>2]=X;q=(c[r>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)Y=c[q>>2]|0;else Y=q;c[r>>2]=Y;do if(!(c[A>>2]|0)){q=c[s>>2]|0;I=c[r>>2]|0;if((c[o>>2]|0)<=0){Z=J3(q,I)|0;break}else{Z=B3(q,I,c[o>>2]|0)|0;break}}else Z=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);c[m>>2]=Z;if((Z|0)<0){c[(c[k>>2]|0)+4>>2]=c[c[l>>2]>>2];c[c[l>>2]>>2]=c[k>>2];I=c[l>>2]|0;c[(c[u>>2]|0)+4>>2]=I;c[u>>2]=I;I=c[(c[l>>2]|0)+4>>2]|0;c[k>>2]=I;if(I)continue;else break d}if(!(c[m>>2]|0)){E=130;break}I=c[l>>2]|0;c[c[t>>2]>>2]=I;c[t>>2]=I;I=c[k>>2]|0;c[(c[u>>2]|0)+4>>2]=I;c[u>>2]=I;I=c[c[l>>2]>>2]|0;c[k>>2]=I;if(I)continue;else break d}else{I=c[J>>2]|0;c[l>>2]=I;if(!I){E=149;break}I=c[l>>2]|0;if((c[n>>2]|0)<0)_=c[I+8>>2]|0;else _=I+(0-(c[n>>2]|0))|0;c[r>>2]=_;I=(c[r>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)$=c[I>>2]|0;else $=I;c[r>>2]=$;do if(!(c[A>>2]|0)){I=c[s>>2]|0;q=c[r>>2]|0;if((c[o>>2]|0)<=0){aa=J3(I,q)|0;break}else{aa=B3(I,q,c[o>>2]|0)|0;break}}else aa=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);c[m>>2]=aa;if((aa|0)>0){c[c[k>>2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[k>>2];J=c[l>>2]|0;c[c[t>>2]>>2]=J;c[t>>2]=J;J=c[c[l>>2]>>2]|0;c[k>>2]=J;if(J)continue;else break d}if(!(c[m>>2]|0)){E=147;break}J=c[l>>2]|0;c[(c[u>>2]|0)+4>>2]=J;c[u>>2]=J;J=c[k>>2]|0;c[c[t>>2]>>2]=J;c[t>>2]=J;J=c[(c[l>>2]|0)+4>>2]|0;c[k>>2]=J;if(J)continue;else break d}}if((E|0)==130){J=c[k>>2]|0;c[(c[u>>2]|0)+4>>2]=J;c[u>>2]=J;c[k>>2]=c[l>>2];break}else if((E|0)==132){J=c[k>>2]|0;c[(c[u>>2]|0)+4>>2]=J;c[u>>2]=J;c[k>>2]=0;break}else if((E|0)==147){J=c[k>>2]|0;c[c[t>>2]>>2]=J;c[t>>2]=J;c[k>>2]=c[l>>2];break}else if((E|0)==149){J=c[k>>2]|0;c[c[t>>2]>>2]=J;c[t>>2]=J;c[k>>2]=0;break}}while(0);do if(c[k>>2]|0){J=(c[g>>2]|0)+20|0;c[J>>2]=c[J>>2]|32768;c[c[t>>2]>>2]=c[(c[k>>2]|0)+4>>2];c[(c[u>>2]|0)+4>>2]=c[c[k>>2]>>2];if(!(c[j>>2]&516)){if(c[j>>2]&8){c[(c[k>>2]|0)+4>>2]=c[w>>2];c[c[k>>2]>>2]=0;c[w>>2]=c[k>>2];E=181;break}if(c[j>>2]&16){c[c[k>>2]>>2]=c[w+4>>2];c[(c[k>>2]|0)+4>>2]=0;c[w+4>>2]=c[k>>2];E=187;break}if(c[j>>2]&4098){E=192;break c}if(c[j>>2]&2049){if(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]&4)break;c[(c[k>>2]|0)+4>>2]=0;c[c[k>>2]>>2]=c[w+4>>2];c[w+4>>2]=c[k>>2];E=219;break}if(!(c[j>>2]&32)){c[f>>2]=0;D=c[f>>2]|0;i=e;return D|0}if(!(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]&4)){c[(c[v>>2]|0)+4>>2]=0;c[c[v>>2]>>2]=c[w+4>>2];c[w+4>>2]=c[v>>2];J=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[J>>2]=(c[J>>2]|0)+1;break}if(c[(c[B>>2]|0)+16>>2]|0)Tb[c[(c[B>>2]|0)+16>>2]&127](c[g>>2]|0,c[h>>2]|0,c[B>>2]|0);if((c[(c[B>>2]|0)+8>>2]|0)<0)Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,c[v>>2]|0,0,c[B>>2]|0)|0}}else{c[(c[u>>2]|0)+4>>2]=0;c[c[t>>2]>>2]=0;if(!(c[j>>2]&8))if(!(c[j>>2]&16)){if(c[j>>2]&516)break c;if(!(c[j>>2]&2049))if(c[j>>2]&32){c[k>>2]=c[v>>2];J=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[J>>2]=(c[J>>2]|0)+1;break}else{c[h>>2]=0;break c}else E=219}else E=187;else E=181}while(0);if((E|0)==181){J=c[w+4>>2]|0;c[k>>2]=J;if(!J)break;while(1){J=c[(c[k>>2]|0)+4>>2]|0;c[l>>2]=J;if(!J)break;c[(c[k>>2]|0)+4>>2]=c[c[l>>2]>>2];c[c[l>>2]>>2]=c[k>>2];c[k>>2]=c[l>>2]}c[w+4>>2]=c[c[k>>2]>>2]}else if((E|0)==187){J=c[w>>2]|0;c[k>>2]=J;if(!J)break;while(1){J=c[c[k>>2]>>2]|0;c[l>>2]=J;if(!J)break;c[c[k>>2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[k>>2];c[k>>2]=c[l>>2]}c[w>>2]=c[(c[k>>2]|0)+4>>2]}else if((E|0)==219){if((c[(c[B>>2]|0)+12>>2]|0)!=0?(c[j>>2]&1|0)!=0:0)c[h>>2]=Hb[c[(c[B>>2]|0)+12>>2]&63](c[g>>2]|0,c[h>>2]|0,c[B>>2]|0)|0;do if(c[h>>2]|0){if((c[n>>2]|0)>=0){c[k>>2]=(c[h>>2]|0)+(c[n>>2]|0);break}c[k>>2]=Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,0,12,c[B>>2]|0)|0;if(c[k>>2]|0){c[(c[k>>2]|0)+8>>2]=c[h>>2];break}if(((c[(c[B>>2]|0)+12>>2]|0)!=0?(c[(c[B>>2]|0)+16>>2]|0)!=0:0)?(c[j>>2]&1|0)!=0:0)Tb[c[(c[B>>2]|0)+16>>2]&127](c[g>>2]|0,c[h>>2]|0,c[B>>2]|0)}while(0);if(!(c[k>>2]|0))break;if((c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]|0)>=0){J=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[J>>2]=(c[J>>2]|0)+1}}c[(c[k>>2]|0)+4>>2]=c[w>>2];c[c[k>>2]>>2]=c[w+4>>2];f:do if((c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]&8|0)!=0?(c[j>>2]&516|0)!=0:0){J=c[k>>2]|0;if((c[n>>2]|0)<0)ba=c[J+8>>2]|0;else ba=J+(0-(c[n>>2]|0))|0;c[s>>2]=ba;J=(c[s>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)ca=c[J>>2]|0;else ca=J;c[s>>2]=ca;while(1){J=c[(c[k>>2]|0)+4>>2]|0;c[l>>2]=J;if(!J)break f;while(1){J=c[c[l>>2]>>2]|0;c[u>>2]=J;if(!J)break;c[c[l>>2]>>2]=c[(c[u>>2]|0)+4>>2];c[(c[u>>2]|0)+4>>2]=c[l>>2];c[l>>2]=c[u>>2]}c[(c[k>>2]|0)+4>>2]=c[l>>2];J=c[l>>2]|0;if((c[n>>2]|0)<0)da=c[J+8>>2]|0;else da=J+(0-(c[n>>2]|0))|0;c[r>>2]=da;J=(c[r>>2]|0)+(c[p>>2]|0)|0;if((c[o>>2]|0)<0)ea=c[J>>2]|0;else ea=J;c[r>>2]=ea;do if(!(c[A>>2]|0)){J=c[s>>2]|0;q=c[r>>2]|0;if((c[o>>2]|0)<=0){fa=J3(J,q)|0;break}else{fa=B3(J,q,c[o>>2]|0)|0;break}}else fa=Sb[c[A>>2]&127](c[g>>2]|0,c[s>>2]|0,c[r>>2]|0,c[B>>2]|0)|0;while(0);if(fa)break f;c[(c[k>>2]|0)+4>>2]=c[c[l>>2]>>2];c[c[l>>2]>>2]=c[k>>2];c[k>>2]=c[l>>2]}}while(0);c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[k>>2];q=c[k>>2]|0;if((c[n>>2]|0)<0)ga=c[q+8>>2]|0;else ga=q+(0-(c[n>>2]|0))|0;c[f>>2]=ga;D=c[f>>2]|0;i=e;return D|0}while(0);if((E|0)==192){E=c[k>>2]|0;if((c[n>>2]|0)<0)ha=c[E+8>>2]|0;else ha=E+(0-(c[n>>2]|0))|0;c[h>>2]=ha;if((c[(c[B>>2]|0)+16>>2]|0)!=0?(c[j>>2]&2|0)!=0:0)Tb[c[(c[B>>2]|0)+16>>2]&127](c[g>>2]|0,c[h>>2]|0,c[B>>2]|0);if((c[(c[B>>2]|0)+8>>2]|0)<0)Sb[c[(c[g>>2]|0)+12>>2]&127](c[g>>2]|0,c[k>>2]|0,0,c[B>>2]|0)|0;B=(c[(c[g>>2]|0)+8>>2]|0)+16|0;k=(c[B>>2]|0)-1|0;c[B>>2]=k;if((k|0)<0)c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]=-1}while(1){k=c[(c[u>>2]|0)+4>>2]|0;c[l>>2]=k;if(!k)break;c[u>>2]=c[l>>2]}c[(c[u>>2]|0)+4>>2]=c[w>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=c[w+4>>2];c[f>>2]=(c[j>>2]&2|0)!=0?c[h>>2]|0:0;D=c[f>>2]|0;i=e;return D|0}function Sz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;if(c[c[(c[f>>2]|0)+8>>2]>>2]&4096)Oz(c[f>>2]|0,0)|0;if(c[g>>2]|0){if(c[c[(c[g>>2]|0)+8>>2]>>2]&4096)Oz(c[g>>2]|0,0)|0;if((c[(c[g>>2]|0)+16>>2]|0)!=(c[(c[f>>2]|0)+16>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}}c[h>>2]=c[g>>2];while(1){if(!(c[h>>2]|0))break;if((c[h>>2]|0)==(c[f>>2]|0)){k=11;break}c[h>>2]=c[(c[h>>2]|0)+28>>2]}if((k|0)==11){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}k=c[(c[f>>2]|0)+28>>2]|0;c[h>>2]=k;if(k){k=(c[h>>2]|0)+24|0;c[k>>2]=(c[k>>2]|0)-1}c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+28>>2]=0;if(c[g>>2]|0){c[(c[f>>2]|0)+28>>2]=c[g>>2];c[c[f>>2]>>2]=33;k=(c[g>>2]|0)+24|0;c[k>>2]=(c[k>>2]|0)+1;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=d;return j|0}else{c[c[f>>2]>>2]=c[c[(c[f>>2]|0)+16>>2]>>2];c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function Tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+64|0;f=e+56|0;g=e+52|0;h=e+48|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;t=e+4|0;u=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(c[j>>2]&99){c[f>>2]=Hb[c[c[(c[g>>2]|0)+16>>2]>>2]&63](c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;v=c[f>>2]|0;i=e;return v|0}do if(!(c[j>>2]&516)){if((c[j>>2]&384|0)!=0?(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]&12|0)==0:0)break;d=c[j>>2]|0;if(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]&12){if(!(d&408)){c[f>>2]=0;v=c[f>>2]|0;i=e;return v|0}c[p>>2]=0;c[n>>2]=0;c[l>>2]=0;c[k>>2]=c[g>>2];while(1){if(!(c[k>>2]|0))break;b=Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[m>>2]=b;do if(b){c[t>>2]=c[c[(c[k>>2]|0)+4>>2]>>2];c[s>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+4>>2];c[r>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2];c[u>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+20>>2];a=(c[m>>2]|0)+(c[t>>2]|0)|0;if((c[s>>2]|0)<0)w=c[a>>2]|0;else w=a;c[o>>2]=w;if(c[n>>2]|0){do if(!(c[u>>2]|0)){a=c[o>>2]|0;x=c[p>>2]|0;if((c[s>>2]|0)<=0){y=J3(a,x)|0;break}else{y=B3(a,x,c[s>>2]|0)|0;break}}else y=Sb[c[u>>2]&127](c[k>>2]|0,c[o>>2]|0,c[p>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;while(0);c[q>>2]=y;if(!((c[j>>2]&136|0)!=0&(c[q>>2]|0)<0)?!((c[j>>2]&272|0)!=0&(c[q>>2]|0)>0):0)break}c[l>>2]=c[k>>2];c[n>>2]=c[m>>2];c[p>>2]=c[o>>2]}while(0);c[k>>2]=c[(c[k>>2]|0)+28>>2]}c[(c[g>>2]|0)+32>>2]=c[l>>2];c[f>>2]=c[n>>2];v=c[f>>2]|0;i=e;return v|0}if(!(d&24)){c[f>>2]=0;v=c[f>>2]|0;i=e;return v|0}if(c[(c[g>>2]|0)+32>>2]|0){b=c[(c[(c[(c[g>>2]|0)+32>>2]|0)+8>>2]|0)+4>>2]|0;if((c[(c[(c[(c[g>>2]|0)+32>>2]|0)+4>>2]|0)+8>>2]|0)<0)z=c[b+8>>2]|0;else z=b+(0-(c[(c[(c[(c[g>>2]|0)+32>>2]|0)+4>>2]|0)+8>>2]|0))|0;if((c[h>>2]|0)!=(z|0))A=37}else A=37;if((A|0)==37){c[k>>2]=c[g>>2];while(1){if(!(c[k>>2]|0))break;b=Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[k>>2]|0,c[h>>2]|0,4)|0;c[m>>2]=b;if(b)break;c[k>>2]=c[(c[k>>2]|0)+28>>2]}c[(c[g>>2]|0)+32>>2]=c[k>>2];d=c[m>>2]|0;c[h>>2]=d;if(!d){c[f>>2]=0;v=c[f>>2]|0;i=e;return v|0}}c[k>>2]=c[(c[g>>2]|0)+32>>2];c[h>>2]=Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;a:while(1){if(!(c[h>>2]|0)){d=c[(c[k>>2]|0)+28>>2]|0;c[(c[g>>2]|0)+32>>2]=d;c[k>>2]=d;if(!d){A=52;break}d=c[c[(c[k>>2]|0)+16>>2]>>2]|0;b=c[k>>2]|0;if(c[j>>2]&8){c[h>>2]=Hb[d&63](b,0,128)|0;continue}else{c[h>>2]=Hb[d&63](b,0,256)|0;continue}}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)==(c[k>>2]|0)){A=47;break a}if(Hb[c[c[(c[l>>2]|0)+16>>2]>>2]&63](c[l>>2]|0,c[h>>2]|0,4)|0)break;c[l>>2]=c[(c[l>>2]|0)+28>>2]}c[h>>2]=Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0}if((A|0)==47){c[f>>2]=c[h>>2];v=c[f>>2]|0;i=e;return v|0}else if((A|0)==52){c[f>>2]=0;v=c[f>>2]|0;i=e;return v|0}}while(0);c[k>>2]=c[g>>2];while(1){if(!(c[k>>2]|0))break;A=Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[m>>2]=A;if(A)break;c[k>>2]=c[(c[k>>2]|0)+28>>2]}c[(c[g>>2]|0)+32>>2]=c[k>>2];c[f>>2]=c[m>>2];v=c[f>>2]|0;i=e;return v|0}function Uz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,0,128)|0;while(1){if(!(c[k>>2]|0)){o=8;break}d=c[(c[g>>2]|0)+32>>2]|0;c[m>>2]=d;if(!d)c[m>>2]=c[g>>2];c[l>>2]=Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,c[k>>2]|0,8)|0;d=Hb[c[h>>2]&63](c[m>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;c[n>>2]=d;if((d|0)<0){o=6;break}c[k>>2]=c[l>>2]}if((o|0)==6){c[f>>2]=c[n>>2];p=c[f>>2]|0;i=e;return p|0}else if((o|0)==8){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}return 0}function Vz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=c[(c[g>>2]|0)+4>>2]|0;c[o>>2]=d;b=c[h>>2]|0;if(!d){c[(c[g>>2]|0)+4>>2]=b;d=c[(c[h>>2]|0)+28>>2]|0;c[(c[g>>2]|0)+12>>2]=d;if(!d)c[(c[g>>2]|0)+12>>2]=51;c[f>>2]=c[h>>2];r=c[f>>2]|0;i=e;return r|0}if(!b){c[f>>2]=c[o>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=c[c[(c[g>>2]|0)+16>>2]>>2];if(c[c[(c[g>>2]|0)+8>>2]>>2]&4096)Oz(c[g>>2]|0,0)|0;if((c[(c[o>>2]|0)+32>>2]|0)!=0?(Sb[c[(c[o>>2]|0)+32>>2]&127](c[g>>2]|0,3,c[h>>2]|0,c[o>>2]|0)|0)<0:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}c[(c[g>>2]|0)+4>>2]=c[h>>2];b=c[(c[h>>2]|0)+28>>2]|0;c[(c[g>>2]|0)+12>>2]=b;if(!b)c[(c[g>>2]|0)+12>>2]=51;a:do if(!(c[c[(c[g>>2]|0)+8>>2]>>2]&112)){do if(c[c[(c[g>>2]|0)+8>>2]>>2]&2){if(c[j>>2]&2)break a}else{b=c[j>>2]|0;if(!(c[c[(c[g>>2]|0)+8>>2]>>2]&3))if(b&1)break a;else break;if((b&2|0)!=0?(c[j>>2]&1|0)!=0:0)break a}while(0);c[l>>2]=Lz(c[g>>2]|0)|0;b=c[(c[g>>2]|0)+8>>2]|0;c[b>>2]=c[b>>2]&-4097;c[(c[(c[g>>2]|0)+8>>2]|0)+4>>2]=0;c[(c[(c[g>>2]|0)+8>>2]|0)+16>>2]=0;b:do if(c[c[(c[g>>2]|0)+8>>2]>>2]&3){b=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[p>>2]=b;c[q>>2]=b+(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]<<2);while(1){if((c[p>>2]|0)>>>0>=(c[q>>2]|0)>>>0)break b;b=c[p>>2]|0;c[p>>2]=b+4;c[b>>2]=0}}while(0);while(1){if(!(c[l>>2]|0))break a;c[m>>2]=c[c[l>>2]>>2];if(!(c[j>>2]&2)){b=c[l>>2]|0;if((c[(c[h>>2]|0)+8>>2]|0)<0)s=c[b+8>>2]|0;else s=b+(0-(c[(c[h>>2]|0)+8>>2]|0))|0;c[n>>2]=s;b=(c[n>>2]|0)+(c[c[h>>2]>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]|0)<0)t=c[b>>2]|0;else t=b;c[n>>2]=t;if(c[(c[h>>2]|0)+24>>2]|0)u=Hb[c[(c[h>>2]|0)+24>>2]&63](c[g>>2]|0,c[n>>2]|0,c[h>>2]|0)|0;else u=Xz(0,c[n>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=u}Hb[c[k>>2]&63](c[g>>2]|0,c[l>>2]|0,32)|0;c[l>>2]=c[m>>2]}}while(0);c[f>>2]=c[o>>2];r=c[f>>2]|0;i=e;return r|0}function Wz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;e=c[j>>2]|0;do if(c[h>>2]|0){d=c[h>>2]|0;if(!e){O4(d);c[g>>2]=0;break}else{c[g>>2]=Q4(d,c[j>>2]|0)|0;break}}else{if(e>>>0>0)k=N4(c[j>>2]|0)|0;else k=0;c[g>>2]=k}while(0);i=f;return c[g>>2]|0}function Xz(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=c[h>>2];if((c[j>>2]|0)<=0){while(1){if(!(d[c[k>>2]>>0]|0))break;c[g>>2]=_((c[g>>2]|0)+((d[c[k>>2]>>0]|0)<<8)+(d[(c[k>>2]|0)+1>>0]|0)|0,17109811)|0;c[k>>2]=(c[k>>2]|0)+((d[(c[k>>2]|0)+1>>0]|0|0)!=0?2:1)}c[j>>2]=(c[k>>2]|0)-(c[h>>2]|0);m=c[g>>2]|0;n=c[j>>2]|0;o=m+n|0;p=_(o,17109811)|0;i=f;return p|0}c[l>>2]=(c[k>>2]|0)+(c[j>>2]|0)+-1;while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;c[g>>2]=_((c[g>>2]|0)+((d[c[k>>2]>>0]|0)<<8)+(d[(c[k>>2]|0)+1>>0]|0)|0,17109811)|0;c[k>>2]=(c[k>>2]|0)+2}if((c[k>>2]|0)>>>0>(c[l>>2]|0)>>>0){m=c[g>>2]|0;n=c[j>>2]|0;o=m+n|0;p=_(o,17109811)|0;i=f;return p|0}c[g>>2]=_((c[g>>2]|0)+((d[c[k>>2]>>0]|0)<<8)|0,17109811)|0;m=c[g>>2]|0;n=c[j>>2]|0;o=m+n|0;p=_(o,17109811)|0;i=f;return p|0}function Yz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[12998];c[12998]=c[d>>2];i=b;return c[e>>2]|0}function Zz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[12999];c[12999]=c[d>>2];i=b;return c[e>>2]|0}function _z(){var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;if(c[13e3]|0){T2(c[13e3]|0)|0;c[e>>2]=f3(c[13e3]|0)|0;c[f>>2]=(c[e>>2]|0)-(c[13001]|0);c[g>>2]=N4((c[f>>2]|0)+1|0)|0;c3(c[13e3]|0,c[13001]|0,0)|0;$2(c[g>>2]|0,1,c[f>>2]|0,c[13e3]|0)|0;a[(c[g>>2]|0)+(c[f>>2]|0)>>0]=0;c3(c[13e3]|0,c[e>>2]|0,0)|0;c[d>>2]=c[g>>2];h=c[d>>2]|0;i=b;return h|0}else{c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}return 0}function $z(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=bA(c[f>>2]|0,c[g>>2]|0,h)|0;i=e;return d|0}function aA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;bA(1,c[e>>2]|0,f)|0;i=d;return}function bA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;if((c[h>>2]|0)==3)m=c[13003]|0;else m=(c[h>>2]|0)==2?1:c[h>>2]|0;c[l>>2]=m;c[13003]=c[l>>2];c[13002]=(c[13002]|0)>>>0>(c[13003]|0)>>>0?c[13002]|0:c[13003]|0;if((c[l>>2]|0)>>>0>=(c[12999]|0)>>>0){l=c[h>>2]|0;if(c[12998]|0)cA(l,c[j>>2]|0,c[k>>2]|0);else{if((l|0)!=3){l=c[24742]|0;c[f>>2]=(c[h>>2]|0)==1?134009:134015;Y2(l,134023,f)|0}o3(c[24742]|0,c[j>>2]|0,c[k>>2]|0)|0}c[g>>2]=0;n=c[g>>2]|0;i=e;return n|0}if((c[13e3]|0)==0?(c[13e3]=m3()|0,(c[13e3]|0)==0):0){c[g>>2]=1;n=c[g>>2]|0;i=e;return n|0}if((c[h>>2]|0)!=3)c[13001]=f3(c[13e3]|0)|0;o3(c[13e3]|0,c[j>>2]|0,c[k>>2]|0)|0;c[g>>2]=0;n=c[g>>2]|0;i=e;return n|0}function cA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[13004]|0)==0?(c[13004]=N4(c[13005]|0)|0,(c[13004]|0)==0):0){_2(134028,c[24742]|0)|0;i=e;return}if((c[f>>2]|0)!=3){Fb[c[12998]&63]((c[f>>2]|0)==1?134009:134015)|0;Fb[c[12998]&63](134408)|0}while(1){c[k>>2]=q3(c[13004]|0,c[13005]|0,c[g>>2]|0,c[h>>2]|0)|0;if((c[k>>2]|0)>-1?(c[k>>2]|0)<(c[13005]|0):0){l=8;break}c[13005]=(c[13005]<<1|0)>((c[k>>2]|0)+1|0)?c[13005]<<1:(c[k>>2]|0)+1|0;f=Q4(c[13004]|0,c[13005]|0)|0;c[j>>2]=f;if(!f){l=10;break}}if((l|0)==8){Fb[c[12998]&63](c[13004]|0)|0;i=e;return}else if((l|0)==10){_2(134028,c[24742]|0)|0;i=e;return}}function dA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if(c[j>>2]|0){c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+12>>2]=0}else{if(!(c[h>>2]|0))c[h>>2]=1024;c[(c[g>>2]|0)+12>>2]=1;j=N4(c[h>>2]|0)|0;c[c[g>>2]>>2]=j}c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[h>>2]|0);c[(c[g>>2]|0)+4>>2]=c[c[g>>2]>>2];a[c[(c[g>>2]|0)+4>>2]>>0]=0;i=f;return}function eA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=(c[(c[e>>2]|0)+8>>2]|0)-(c[c[e>>2]>>2]|0);c[j>>2]=c[h>>2]<<1;if(((c[h>>2]|0)+(c[f>>2]|0)|0)>(c[j>>2]|0))c[j>>2]=(c[h>>2]|0)+(c[f>>2]|0);c[g>>2]=(c[(c[e>>2]|0)+4>>2]|0)-(c[c[e>>2]>>2]|0);if(c[(c[e>>2]|0)+12>>2]|0)c[k>>2]=Q4(c[c[e>>2]>>2]|0,c[j>>2]|0)|0;else{c[k>>2]=N4(c[j>>2]|0)|0;Z4(c[k>>2]|0,c[c[e>>2]>>2]|0,c[g>>2]|0)|0;c[(c[e>>2]|0)+12>>2]=1}c[c[e>>2]>>2]=c[k>>2];c[(c[e>>2]|0)+4>>2]=(c[c[e>>2]>>2]|0)+(c[g>>2]|0);c[(c[e>>2]|0)+8>>2]=(c[c[e>>2]>>2]|0)+(c[j>>2]|0);i=d;return 0}function fA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(((c[(c[f>>2]|0)+4>>2]|0)+(c[h>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>>>0)eA(c[f>>2]|0,c[h>>2]|0)|0;Z4(c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;g=(c[f>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);i=e;return c[h>>2]|0}function gA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=N3(c[f>>2]|0)|0;b=fA(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;i=d;return b|0}function hA(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[(c[d>>2]|0)+12>>2]|0)){i=b;return}O4(c[c[d>>2]>>2]|0);i=b;return}function iA(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;e=b+8|0;f=b+4|0;g=b;c[f>>2]=a;if((c[(c[f>>2]|0)+4>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>0){a=(c[f>>2]|0)+4|0;f=c[a>>2]|0;c[a>>2]=f+-1;c[g>>2]=d[f>>0];c[e>>2]=c[g>>2];h=c[e>>2]|0;i=b;return h|0}else{c[e>>2]=-1;h=c[e>>2]|0;i=b;return h|0}return 0}function jA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=LC(c[f>>2]|0,134064,0)|0;if((c[h>>2]|0)==0&(c[g>>2]|0)!=0){EA(c[f>>2]|0);c[h>>2]=LC(c[f>>2]|0,134064,0)|0;c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function kA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=jA(c[f>>2]|0,0)|0;a:do if(c[h>>2]|0)switch(c[g>>2]|0){case 0:{c[j>>2]=c[(c[h>>2]|0)+8+8>>2];break a;break}case 1:{c[j>>2]=c[(c[h>>2]|0)+8>>2];break a;break}case 2:case 3:{c[j>>2]=c[(c[h>>2]|0)+8+4>>2];break a;break}default:{c[e>>2]=c[g>>2];$z(1,134077,e)|0;c[j>>2]=0;break a}}else c[j>>2]=0;while(0);i=d;return c[j>>2]|0}function lA(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=UB(c[j>>2]|0,24)|0;a[(c[o>>2]|0)+20>>0]=c[n>>2];n=YC(c[j>>2]|0,c[k>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=n;n=YC(c[j>>2]|0,c[l>>2]|0)|0;c[(c[o>>2]|0)+12>>2]=n;c[(c[o>>2]|0)+16>>2]=c[m>>2];i=h;return c[o>>2]|0}function mA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=c[f>>2];f=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,4)|0;i=d;return f|0}function nA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=Sz(c[e>>2]|0,0)|0;c[g>>2]=mA(c[e>>2]|0,c[f>>2]|0)|0;Sz(c[e>>2]|0,c[h>>2]|0)|0;i=d;return c[g>>2]|0}function oA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[f>>2];c[g>>2]=pA(c[e>>2]|0)|0;if(c[g>>2]|0){c[h>>2]=mA(c[(c[g>>2]|0)+8>>2]|0,c[j>>2]|0)|0;k=c[h>>2]|0;i=d;return k|0}else{c[h>>2]=0;k=c[h>>2]|0;i=d;return k|0}return 0}function pA(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=LC(c[d>>2]|0,c[13015]|0,0)|0;i=b;return a|0}function qA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[h>>2]|0)){if(!(c[13016]|0)){c[g>>2]=c[13017];c[13016]=gB(0,g,0)|0}c[h>>2]=c[13016]}g=c[h>>2]|0;h=c[j>>2]|0;j=c[k>>2]|0;if(c[l>>2]|0){c[m>>2]=FA(g,h,j,c[l>>2]|0)|0;n=c[m>>2]|0;i=f;return n|0}else{c[m>>2]=GA(g,h,j)|0;n=c[m>>2]|0;i=f;return n|0}return 0}function rA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=kA(c[f>>2]|0,c[g>>2]|0)|0;c[j>>2]=d;if(!d){c[k>>2]=0;l=c[k>>2]|0;i=e;return l|0}d=c[c[j>>2]>>2]|0;g=c[j>>2]|0;if(c[h>>2]|0){c[k>>2]=Hb[d&63](g,c[h>>2]|0,8)|0;l=c[k>>2]|0;i=e;return l|0}else{c[k>>2]=Hb[d&63](g,0,128)|0;l=c[k>>2]|0;i=e;return l|0}return 0}function sA(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;b=(c[e>>2]|0)+12|0;a[b>>0]=a[b>>0]&-65|64;HA(c[e>>2]|0)|0;b=ID(c[e>>2]|0)|0;c[f>>2]=b;if(!b)c[f>>2]=c[e>>2];IA(c[f>>2]|0,c[e>>2]|0)|0;i=d;return}function tA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[13072]=c[e>>2];a=pA(c[e>>2]|0)|0;c[g>>2]=a;if(a){JA(c[e>>2]|0,c[g>>2]|0);NC(c[e>>2]|0,c[c[g>>2]>>2]|0)|0}g=jA(c[e>>2]|0,0)|0;c[f>>2]=g;do if(g){if(QD(c[e>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0){c[d>>2]=1;h=c[d>>2]|0;i=b;return h|0}if(QD(c[e>>2]|0,c[(c[f>>2]|0)+8+4>>2]|0)|0){c[d>>2]=1;h=c[d>>2]|0;i=b;return h|0}if(!(QD(c[e>>2]|0,c[(c[f>>2]|0)+8+8>>2]|0)|0)){NC(c[e>>2]|0,c[c[f>>2]>>2]|0)|0;break}c[d>>2]=1;h=c[d>>2]|0;i=b;return h|0}while(0);c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}function uA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=pA(c[f>>2]|0)|0;if((c[g>>2]|0)!=0?(c[(c[g>>2]|0)+8>>2]|0)!=0:0){i=d;return}IA(c[e>>2]|0,c[f>>2]|0)|0;i=d;return}function vA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=pA(c[d>>2]|0)|0;c[e>>2]=a;if(!a){i=b;return}JA(c[d>>2]|0,c[e>>2]|0);NC(c[d>>2]|0,c[13015]|0)|0;i=b;return}function wA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=pA(c[f>>2]|0)|0;if((c[g>>2]|0)!=0?(c[(c[g>>2]|0)+8>>2]|0)!=0:0){i=d;return}IA(c[e>>2]|0,c[f>>2]|0)|0;i=d;return}function xA(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=pA(c[d>>2]|0)|0;c[e>>2]=a;if(!a){i=b;return}JA(c[d>>2]|0,c[e>>2]|0);NC(c[d>>2]|0,c[13015]|0)|0;i=b;return}function yA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=oA(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[j>>2]=0;k=c[j>>2]|0;i=d;return k|0}else{c[h>>2]=pA(c[e>>2]|0)|0;c[j>>2]=c[(c[(c[h>>2]|0)+12>>2]|0)+(c[(c[g>>2]|0)+16>>2]<<2)>>2];k=c[j>>2]|0;i=d;return k|0}return 0}function zA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=pA(c[e>>2]|0)|0;c[h>>2]=c[(c[(c[g>>2]|0)+12>>2]|0)+(c[(c[f>>2]|0)+16>>2]<<2)>>2];i=d;return c[h>>2]|0}function AA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=oA(c[f>>2]|0,c[g>>2]|0)|0;if(!(c[j>>2]|0)){c[k>>2]=-1;l=c[k>>2]|0;i=e;return l|0}else{c[k>>2]=BA(c[f>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;l=c[k>>2]|0;i=e;return l|0}return 0}function BA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=qC(c[f>>2]|0)|0;c[k>>2]=c[f>>2];c[l>>2]=pA(c[k>>2]|0)|0;_C(c[j>>2]|0,c[(c[(c[l>>2]|0)+12>>2]|0)+(c[(c[g>>2]|0)+16>>2]<<2)>>2]|0)|0;d=YC(c[j>>2]|0,c[h>>2]|0)|0;c[(c[(c[l>>2]|0)+12>>2]|0)+(c[(c[g>>2]|0)+16>>2]<<2)>>2]=d;if(c[c[k>>2]>>2]&3){o=c[j>>2]|0;p=c[f>>2]|0;q=c[g>>2]|0;uC(o,p,q);i=e;return 0}c[n>>2]=c[(jA(c[j>>2]|0,0)|0)+8+8>>2];d=nA(c[n>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[m>>2]=d;l=c[j>>2]|0;if(d){_C(l,c[(c[m>>2]|0)+12>>2]|0)|0;d=YC(c[j>>2]|0,c[h>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=d;o=c[j>>2]|0;p=c[f>>2]|0;q=c[g>>2]|0;uC(o,p,q);i=e;return 0}else{c[m>>2]=lA(l,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[c[k>>2]>>2]&3)|0;Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,c[m>>2]|0,1)|0;o=c[j>>2]|0;p=c[f>>2]|0;q=c[g>>2]|0;uC(o,p,q);i=e;return 0}return 0}function CA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=qC(c[g>>2]|0)|0;c[l>>2]=qA(e,c[c[g>>2]>>2]&3,c[h>>2]|0,0)|0;if(c[l>>2]|0){m=c[g>>2]|0;n=c[l>>2]|0;o=c[j>>2]|0;p=BA(m,n,o)|0;i=f;return p|0}e=qC(c[g>>2]|0)|0;c[l>>2]=qA(e,c[c[g>>2]>>2]&3,c[h>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;n=c[l>>2]|0;o=c[j>>2]|0;p=BA(m,n,o)|0;i=f;return p|0}function DA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[f>>2]=a;c[g>>2]=b;c[n>>2]=1;c[h>>2]=qC(c[f>>2]|0)|0;if((c[c[f>>2]>>2]&3|0)!=(c[c[g>>2]>>2]&3|0)){c[e>>2]=1;o=c[e>>2]|0;i=d;return o|0}c[j>>2]=0;while(1){b=rA(c[h>>2]|0,c[c[f>>2]>>2]&3,c[j>>2]|0)|0;c[j>>2]=b;if(!b){p=9;break}c[k>>2]=oA(c[g>>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;if(!(c[k>>2]|0)){p=6;break}c[l>>2]=zA(c[f>>2]|0,c[j>>2]|0)|0;c[n>>2]=BA(c[g>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!($C(c[l>>2]|0)|0))continue;c[m>>2]=zA(c[g>>2]|0,c[k>>2]|0)|0;aD(c[m>>2]|0)}if((p|0)==6){c[e>>2]=1;o=c[e>>2]|0;i=d;return o|0}else if((p|0)==9){c[e>>2]=c[n>>2];o=c[e>>2]|0;i=d;return o|0}return 0}function EA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=rC(c[d>>2]|0)|0;vE(c[e>>2]|0,c[e>>2]|0,98,0,1)|0;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;uA(c[d>>2]|0,c[f>>2]|0);c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;wA(c[d>>2]|0,c[g>>2]|0);c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=b;return}function FA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=i;i=i+64|0;g=f+52|0;h=f+48|0;j=f+44|0;k=f+40|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;s=f+4|0;t=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[r>>2]=rC(c[g>>2]|0)|0;c[f+36>>2]=jA(c[g>>2]|0,1)|0;c[l>>2]=kA(c[g>>2]|0,c[h>>2]|0)|0;c[n>>2]=nA(c[l>>2]|0,c[j>>2]|0)|0;do if(c[n>>2]|0){_C(c[g>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;e=YC(c[g>>2]|0,c[k>>2]|0)|0;c[(c[n>>2]|0)+12>>2]=e;c[q>>2]=c[n>>2]}else{c[o>>2]=mA(c[l>>2]|0,c[j>>2]|0)|0;if(c[o>>2]|0){c[n>>2]=lA(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,c[(c[o>>2]|0)+16>>2]|0,c[h>>2]|0)|0;Hb[c[c[l>>2]>>2]&63](c[l>>2]|0,c[n>>2]|0,1)|0;c[q>>2]=c[n>>2];break}c[m>>2]=kA(c[r>>2]|0,c[h>>2]|0)|0;e=c[g>>2]|0;d=c[j>>2]|0;b=c[k>>2]|0;a=Pz(c[m>>2]|0)|0;c[p>>2]=lA(e,d,b,a,c[h>>2]|0)|0;Hb[c[c[m>>2]>>2]&63](c[m>>2]|0,c[p>>2]|0,1)|0;a:do switch(c[h>>2]|0){case 0:{vE(c[r>>2]|0,c[r>>2]|0,54,c[p>>2]|0,1)|0;break}case 1:{c[s>>2]=$B(c[r>>2]|0)|0;while(1){if(!(c[s>>2]|0))break a;NA(c[g>>2]|0,c[s>>2]|0,c[p>>2]|0);c[s>>2]=aC(c[r>>2]|0,c[s>>2]|0)|0}break}case 2:case 3:{c[s>>2]=$B(c[r>>2]|0)|0;while(1){if(!(c[s>>2]|0))break a;c[t>>2]=OA(c[r>>2]|0,c[s>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;NA(c[g>>2]|0,c[t>>2]|0,c[p>>2]|0);c[t>>2]=QA(c[r>>2]|0,c[t>>2]|0)|0}c[s>>2]=aC(c[r>>2]|0,c[s>>2]|0)|0}break}default:{}}while(0);c[q>>2]=c[p>>2]}while(0);if(!((c[q>>2]|0)!=0&(c[h>>2]|0)==0)){u=c[g>>2]|0;v=c[g>>2]|0;w=c[q>>2]|0;uC(u,v,w);x=c[q>>2]|0;i=f;return x|0}BA(c[g>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;u=c[g>>2]|0;v=c[g>>2]|0;w=c[q>>2]|0;uC(u,v,w);x=c[q>>2]|0;i=f;return x|0}function GA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;c[k>>2]=kA(c[f>>2]|0,c[g>>2]|0)|0;if(!(c[k>>2]|0)){l=c[j>>2]|0;i=e;return l|0}c[j>>2]=mA(c[k>>2]|0,c[h>>2]|0)|0;l=c[j>>2]|0;i=e;return l|0}function HA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=MC(c[d>>2]|0,134064,20,0)|0;a=OD(c[d>>2]|0,52024,c[12993]|0)|0;c[(c[g>>2]|0)+8>>2]=a;a=OD(c[d>>2]|0,52024,c[12993]|0)|0;c[(c[g>>2]|0)+8+4>>2]=a;a=OD(c[d>>2]|0,52024,c[12993]|0)|0;c[(c[g>>2]|0)+8+8>>2]=a;a=ID(c[d>>2]|0)|0;c[e>>2]=a;if(a){c[f>>2]=jA(c[e>>2]|0,0)|0;Sz(c[(c[g>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;Sz(c[(c[g>>2]|0)+8+4>>2]|0,c[(c[f>>2]|0)+8+4>>2]|0)|0;Sz(c[(c[g>>2]|0)+8+8>>2]|0,c[(c[f>>2]|0)+8+8>>2]|0)|0;h=c[g>>2]|0;i=b;return h|0}if(!(c[13016]|0)){h=c[g>>2]|0;i=b;return h|0}if((c[d>>2]|0)==(c[13016]|0)){h=c[g>>2]|0;i=b;return h|0}c[f>>2]=jA(c[13016]|0,0)|0;MA(c[(c[f>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[d>>2]|0,1);MA(c[(c[f>>2]|0)+8+4>>2]|0,c[(c[g>>2]|0)+8+4>>2]|0,c[d>>2]|0,2);MA(c[(c[f>>2]|0)+8+8>>2]|0,c[(c[g>>2]|0)+8+8>>2]|0,c[d>>2]|0,0);h=c[g>>2]|0;i=b;return h|0}function IA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=MC(c[f>>2]|0,c[13015]|0,16,0)|0;c[k>>2]=kA(c[e>>2]|0,c[c[f>>2]>>2]&3)|0;if(c[(c[h>>2]|0)+8>>2]|0){l=c[h>>2]|0;i=d;return l|0}b=rC(c[e>>2]|0)|0;e=kA(b,c[c[f>>2]>>2]&3)|0;c[(c[h>>2]|0)+8>>2]=e;e=LA(c[f>>2]|0)|0;c[g>>2]=e;c[g>>2]=(c[g>>2]|0)<4?4:e;e=qC(c[f>>2]|0)|0;b=UB(e,c[g>>2]<<2)|0;c[(c[h>>2]|0)+12>>2]=b;c[j>>2]=Hb[c[c[k>>2]>>2]&63](c[k>>2]|0,0,128)|0;while(1){if(!(c[j>>2]|0))break;b=qC(c[f>>2]|0)|0;g=YC(b,c[(c[j>>2]|0)+12>>2]|0)|0;c[(c[(c[h>>2]|0)+12>>2]|0)+(c[(c[j>>2]|0)+16>>2]<<2)>>2]=g;c[j>>2]=Hb[c[c[k>>2]>>2]&63](c[k>>2]|0,c[j>>2]|0,8)|0}l=c[h>>2]|0;i=d;return l|0}function JA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=qC(c[e>>2]|0)|0;c[h>>2]=LA(c[e>>2]|0)|0;c[g>>2]=0;while(1){k=c[j>>2]|0;if((c[g>>2]|0)>=(c[h>>2]|0))break;_C(k,c[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+1}VB(k,c[(c[f>>2]|0)+12>>2]|0);i=d;return}function KA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=c[f>>2];_C(c[13072]|0,c[(c[g>>2]|0)+8>>2]|0)|0;_C(c[13072]|0,c[(c[g>>2]|0)+12>>2]|0)|0;VB(c[13072]|0,c[g>>2]|0);i=e;return}function LA(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=rC(qC(c[d>>2]|0)|0)|0;c[e>>2]=kA(a,c[c[d>>2]>>2]&3)|0;if(!(c[e>>2]|0)){f=0;i=b;return f|0}f=Pz(c[e>>2]|0)|0;i=b;return f|0}function MA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=Hb[c[c[h>>2]>>2]&63](c[h>>2]|0,0,128)|0;while(1){if(!(c[m>>2]|0))break;c[n>>2]=lA(c[k>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[l>>2]|0)|0;a[(c[n>>2]|0)+22>>0]=a[(c[m>>2]|0)+22>>0]|0;a[(c[n>>2]|0)+21>>0]=a[(c[m>>2]|0)+21>>0]|0;Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,c[n>>2]|0,1)|0;c[m>>2]=Hb[c[c[h>>2]>>2]&63](c[h>>2]|0,c[m>>2]|0,8)|0}i=g;return}function NA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=pA(c[g>>2]|0)|0;if((c[(c[h>>2]|0)+16>>2]|0)>=4){g=Sb[c[(c[c[(c[f>>2]|0)+52>>2]>>2]|0)+8>>2]&127](c[(c[(c[f>>2]|0)+52>>2]|0)+12>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[(c[h>>2]|0)+16>>2]<<2,(c[(c[h>>2]|0)+16>>2]|0)+1<<2)|0;c[(c[j>>2]|0)+12>>2]=g}g=YC(c[f>>2]|0,c[(c[h>>2]|0)+12>>2]|0)|0;c[(c[(c[j>>2]|0)+12>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2)>>2]=g;i=e;return}function OA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=PA(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){j=c[h>>2]|0;i=d;return j|0}Oz(c[(c[e>>2]|0)+32>>2]|0,c[(c[g>>2]|0)+32>>2]|0)|0;c[h>>2]=Hb[c[c[(c[e>>2]|0)+32>>2]>>2]&63](c[(c[e>>2]|0)+32>>2]|0,0,128)|0;f=Kz(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[g>>2]|0)+32>>2]=f;j=c[h>>2]|0;i=d;return j|0}function PA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+48|0;e=d+44|0;f=d+40|0;g=d+36|0;h=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;if((c[e>>2]|0)==(c[(c[f>>2]|0)+12>>2]|0)){c[g>>2]=b+16;j=c[g>>2]|0;i=d;return j|0}else{c[h+16>>2]=b;c[g>>2]=Hb[c[c[(c[e>>2]|0)+28>>2]>>2]&63](c[(c[e>>2]|0)+28>>2]|0,h,4)|0;j=c[g>>2]|0;i=d;return j|0}return 0}function QA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;b=c[f>>2]|0;c[g>>2]=c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];c[h>>2]=PA(c[e>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0)){k=c[j>>2]|0;i=d;return k|0}Oz(c[(c[e>>2]|0)+32>>2]|0,c[(c[h>>2]|0)+32>>2]|0)|0;c[j>>2]=Hb[c[c[(c[e>>2]|0)+32>>2]>>2]&63](c[(c[e>>2]|0)+32>>2]|0,c[f>>2]|0,8)|0;f=Kz(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[h>>2]|0)+32>>2]=f;k=c[j>>2]|0;i=d;return k|0}function RA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=PA(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){j=c[h>>2]|0;i=d;return j|0}Oz(c[(c[e>>2]|0)+32>>2]|0,c[(c[g>>2]|0)+28>>2]|0)|0;c[h>>2]=Hb[c[c[(c[e>>2]|0)+32>>2]>>2]&63](c[(c[e>>2]|0)+32>>2]|0,0,128)|0;f=Kz(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[g>>2]|0)+28>>2]=f;j=c[h>>2]|0;i=d;return j|0}function SA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;b=c[f>>2]|0;c[g>>2]=c[((c[c[f>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];c[h>>2]=PA(c[e>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0)){k=c[j>>2]|0;i=d;return k|0}Oz(c[(c[e>>2]|0)+32>>2]|0,c[(c[h>>2]|0)+28>>2]|0)|0;c[j>>2]=Hb[c[c[(c[e>>2]|0)+32>>2]>>2]&63](c[(c[e>>2]|0)+32>>2]|0,c[f>>2]|0,8)|0;f=Kz(c[(c[e>>2]|0)+32>>2]|0)|0;c[(c[h>>2]|0)+28>>2]=f;k=c[j>>2]|0;i=d;return k|0}function TA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=d;return h|0}c[g>>2]=RA(c[e>>2]|0,c[f>>2]|0)|0;h=c[g>>2]|0;i=d;return h|0}function UA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;a:do if((c[c[g>>2]>>2]&3|0)==2){c[j>>2]=QA(c[f>>2]|0,c[g>>2]|0)|0;if(!(c[j>>2]|0))do{d=c[f>>2]|0;if(c[j>>2]|0)k=SA(d,c[j>>2]|0)|0;else k=RA(d,c[h>>2]|0)|0;c[j>>2]=k;if(!(c[j>>2]|0))break a}while((c[(c[j>>2]|0)+28>>2]|0)==(c[h>>2]|0))}else do{c[j>>2]=SA(c[f>>2]|0,c[g>>2]|0)|0;c[g>>2]=c[j>>2];if(!(c[j>>2]|0))break a}while((c[(c[j>>2]|0)+28>>2]|0)==(c[h>>2]|0));while(0);i=e;return c[j>>2]|0}function VA(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+64|0;h=g+48|0;j=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[r>>2]=tB(c[k>>2]|0,2,c[n>>2]|0,q,0)|0;if(!(c[r>>2]|0)){if(!(c[n>>2]|0))if(!((c[o>>2]|0)!=0?(pB(c[k>>2]|0)|0)==0:0))t=5}else t=5;if((t|0)==5){c[s>>2]=c[13054];c[s+4>>2]=c[13055];if(c[r>>2]|0){c[s+4>>2]=c[q>>2];c[s>>2]=c[s>>2]&-4|2}else{c[s>>2]=c[s>>2]&-4;c[s+4>>2]=0}r=c[k>>2]|0;t=c[l>>2]|0;f=c[m>>2]|0;c[h>>2]=c[s>>2];c[h+4>>2]=c[s+4>>2];c[p>>2]=cB(r,t,f,h)|0;if((c[p>>2]|0)==0?(oB(c[k>>2]|0)|0)!=0:0){f=c[k>>2]|0;t=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[s>>2];c[h+4>>2]=c[s+4>>2];c[p>>2]=cB(f,t,r,h)|0}if(c[p>>2]|0){c[j>>2]=c[p>>2];u=c[j>>2]|0;i=g;return u|0}if(c[o>>2]|0){r=rC(c[k>>2]|0)|0;t=c[l>>2]|0;f=c[m>>2]|0;c[h>>2]=c[s>>2];c[h+4>>2]=c[s+4>>2];c[p>>2]=cB(r,t,f,h)|0;if((c[p>>2]|0)==0?(oB(c[k>>2]|0)|0)!=0:0){f=rC(c[k>>2]|0)|0;t=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[s>>2];c[h+4>>2]=c[s+4>>2];c[p>>2]=cB(f,t,r,h)|0}if(c[p>>2]|0){aB(c[k>>2]|0,c[p>>2]|0);c[j>>2]=c[p>>2];u=c[j>>2]|0;i=g;return u|0}}}if(((c[o>>2]|0)!=0?($A(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)!=0:0)?(tB(c[k>>2]|0,2,c[n>>2]|0,q,1)|0)!=0:0){c[p>>2]=bB(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[q>>2]|0)|0;xB(c[k>>2]|0,2,c[p>>2]|0)}else c[p>>2]=0;c[j>>2]=c[p>>2];u=c[j>>2]|0;i=g;return u|0}function WA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[e+20>>2]=d;d=c[g>>2]|0;if((c[c[g>>2]>>2]&3|0)==3){c[h>>2]=d;c[j>>2]=(c[g>>2]|0)+-32}else{c[j>>2]=d;c[h>>2]=(c[g>>2]|0)+32}c[k>>2]=c[(c[h>>2]|0)+28>>2];c[l>>2]=c[(c[j>>2]|0)+28>>2];c[m>>2]=PA(c[f>>2]|0,c[k>>2]|0)|0;dB(c[(c[f>>2]|0)+32>>2]|0,(c[m>>2]|0)+32|0,c[j>>2]|0);dB(c[(c[f>>2]|0)+36>>2]|0,(c[m>>2]|0)+24|0,c[j>>2]|0);c[m>>2]=PA(c[f>>2]|0,c[l>>2]|0)|0;dB(c[(c[f>>2]|0)+32>>2]|0,(c[m>>2]|0)+28|0,c[h>>2]|0);dB(c[(c[f>>2]|0)+36>>2]|0,(c[m>>2]|0)+20|0,c[h>>2]|0);i=e;return}function XA(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;h=e+4|0;j=e;c[h>>2]=a;c[j>>2]=b;b=c[j>>2]|0;c[j>>2]=(c[c[j>>2]>>2]&3|0)==2?b:b+-32|0;b=c[h>>2]|0;a=c[j>>2]|0;k=c[((c[c[j>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0;a=c[j>>2]|0;l=c[((c[c[j>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0;a=c[j>>2]|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];if(!(cB(b,k,l,f)|0)){c[g>>2]=-1;m=c[g>>2]|0;i=e;return m|0}f=c[h>>2]|0;if((f|0)==(rC(c[h>>2]|0)|0)){if((d[(c[h>>2]|0)+12>>0]|0)>>>6&1)xA(c[j>>2]|0);wC(c[h>>2]|0,c[j>>2]|0);QC(c[j>>2]|0);vB(c[h>>2]|0,2,c[(c[j>>2]|0)+4>>2]|0)}if(vE(c[h>>2]|0,c[j>>2]|0,55,0,0)|0){c[g>>2]=-1;m=c[g>>2]|0;i=e;return m|0}f=c[h>>2]|0;if((f|0)==(rC(c[h>>2]|0)|0))VB(c[h>>2]|0,c[j>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=e;return m|0}function YA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[m>>2]=0;d=c[h>>2]|0;c[k>>2]=eC(c[g>>2]|0,c[((c[c[h>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0,c[j>>2]|0)|0;d=c[h>>2]|0;c[l>>2]=eC(c[g>>2]|0,c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[j>>2]|0)|0;if(!((c[k>>2]|0)!=0&(c[l>>2]|0)!=0)){n=c[m>>2]|0;i=e;return n|0}d=c[g>>2]|0;b=c[k>>2]|0;k=c[l>>2]|0;l=c[h>>2]|0;c[f>>2]=c[l>>2];c[f+4>>2]=c[l+4>>2];c[m>>2]=cB(d,b,k,f)|0;if((c[j>>2]|0)!=0&(c[m>>2]|0)==0){eB(c[g>>2]|0,c[h>>2]|0);c[m>>2]=c[h>>2]}if(!(c[m>>2]|0)){n=c[m>>2]|0;i=e;return n|0}if((c[c[m>>2]>>2]&3|0)==(c[c[h>>2]>>2]&3|0)){n=c[m>>2]|0;i=e;return n|0}h=c[m>>2]|0;c[m>>2]=(c[c[m>>2]>>2]&3|0)==3?h+-32|0:h+32|0;n=c[m>>2]|0;i=e;return n|0}function ZA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+8|0;k=f+4|0;l=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+12>>2]=e;c[k>>2]=c[g>>2];c[l>>2]=c[h>>2];c[j>>2]=(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[(c[l>>2]|0)+28>>2]|0)+4>>2]|0);do if(!(c[j>>2]|0)){if((c[c[k>>2]>>2]&3|0)!=0?(c[c[l>>2]>>2]&3|0)!=0:0){c[j>>2]=(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);break}c[j>>2]=0}while(0);if(!(c[j>>2]|0)){m=0;i=f;return m|0}m=(c[j>>2]|0)<0?-1:1;i=f;return m|0}function _A(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+8|0;k=f+4|0;l=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+12>>2]=e;c[k>>2]=c[g>>2];c[l>>2]=c[h>>2];h=c[k>>2]|0;if((c[(c[k>>2]|0)+28>>2]|0)!=(c[(c[l>>2]|0)+28>>2]|0))c[j>>2]=((c[c[h+28>>2]>>2]|0)>>>4)-((c[c[(c[l>>2]|0)+28>>2]>>2]|0)>>>4);else c[j>>2]=((c[h>>2]|0)>>>4)-((c[c[l>>2]>>2]|0)>>>4);if(!(c[j>>2]|0)){m=0;i=f;return m|0}m=(c[j>>2]|0)<0?-1:1;i=f;return m|0}function $A(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;if(pB(c[j>>2]|0)|0){if(((d[(c[j>>2]|0)+12>>0]|0)>>>2&1|0)!=0?(c[k>>2]|0)==(c[l>>2]|0):0){c[h>>2]=0;n=c[h>>2]|0;i=f;return n|0};c[m>>2]=c[13054];c[m+4>>2]=c[13055];c[m>>2]=c[m>>2]&-4;e=c[j>>2]|0;j=c[k>>2]|0;k=c[l>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];if(cB(e,j,k,g)|0){c[h>>2]=0;n=c[h>>2]|0;i=f;return n|0}}c[h>>2]=1;n=c[h>>2]|0;i=f;return n|0}function aB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;eB(c[e>>2]|0,c[f>>2]|0);i=d;return}function bB(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;eC(c[h>>2]|0,c[j>>2]|0,1)|0;eC(c[h>>2]|0,c[k>>2]|0,1)|0;c[m>>2]=UB(c[h>>2]|0,64)|0;c[n>>2]=(c[m>>2]|0)+32;c[o>>2]=c[m>>2];c[p>>2]=iB(c[h>>2]|0,2)|0;m=c[n>>2]|0;c[m>>2]=c[m>>2]&-4|3;m=c[o>>2]|0;c[m>>2]=c[m>>2]&-4|2;m=c[l>>2]|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[n>>2]|0)+4>>2]=m;m=c[o>>2]|0;l=c[p>>2]&268435455;c[m>>2]=c[m>>2]&15|l<<4;m=c[n>>2]|0;c[m>>2]=c[m>>2]&15|(l&268435455)<<4;c[(c[n>>2]|0)+28>>2]=c[j>>2];c[(c[o>>2]|0)+28>>2]=c[k>>2];eB(c[h>>2]|0,c[o>>2]|0);if(!((d[(c[h>>2]|0)+12>>0]|0)>>>6&1)){q=c[h>>2]|0;r=c[o>>2]|0;sC(q,r);s=c[o>>2]|0;i=g;return s|0}MC(c[o>>2]|0,c[13015]|0,16,0)|0;wA(c[h>>2]|0,c[o>>2]|0);q=c[h>>2]|0;r=c[o>>2]|0;sC(q,r);s=c[o>>2]|0;i=g;return s|0}function cB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+64|0;g=f+56|0;h=f+52|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+8|0;n=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;if((c[j>>2]|0)==0|(c[k>>2]|0)==0){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0};c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+28>>2]=c[j>>2];c[n>>2]=PA(c[h>>2]|0,c[k>>2]|0)|0;if(c[n>>2]|0){Oz(c[(c[h>>2]|0)+36>>2]|0,c[(c[n>>2]|0)+20>>2]|0)|0;c[l>>2]=Hb[c[c[(c[h>>2]|0)+36>>2]>>2]&63](c[(c[h>>2]|0)+36>>2]|0,m,4)|0;m=Kz(c[(c[h>>2]|0)+36>>2]|0)|0;c[(c[n>>2]|0)+20>>2]=m}else c[l>>2]=0;c[g>>2]=c[l>>2];o=c[g>>2]|0;i=f;return o|0}function dB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Oz(c[f>>2]|0,c[c[g>>2]>>2]|0)|0;c[e>>2]=Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,c[h>>2]|0,2)|0;h=Kz(c[f>>2]|0)|0;c[c[g>>2]>>2]=h;i=e;return}function eB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+48|0;e=d+32|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[f>>2]=a;c[g>>2]=b;b=c[g>>2]|0;c[k>>2]=(c[c[g>>2]>>2]&3|0)==2?b:b+-32|0;b=c[g>>2]|0;c[l>>2]=(c[c[g>>2]>>2]&3|0)==3?b:b+32|0;b=c[g>>2]|0;c[h>>2]=c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];b=c[g>>2]|0;c[j>>2]=c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];while(1){if(!(c[f>>2]|0)){n=5;break}b=c[f>>2]|0;a=c[h>>2]|0;o=c[j>>2]|0;p=c[g>>2]|0;c[e>>2]=c[p>>2];c[e+4>>2]=c[p+4>>2];if(cB(b,a,o,e)|0){n=5;break}c[m>>2]=PA(c[f>>2]|0,c[h>>2]|0)|0;fB(c[(c[f>>2]|0)+32>>2]|0,(c[m>>2]|0)+32|0,c[k>>2]|0);fB(c[(c[f>>2]|0)+36>>2]|0,(c[m>>2]|0)+24|0,c[k>>2]|0);c[m>>2]=PA(c[f>>2]|0,c[j>>2]|0)|0;fB(c[(c[f>>2]|0)+32>>2]|0,(c[m>>2]|0)+28|0,c[l>>2]|0);fB(c[(c[f>>2]|0)+36>>2]|0,(c[m>>2]|0)+20|0,c[l>>2]|0);c[f>>2]=ID(c[f>>2]|0)|0}if((n|0)==5){i=d;return}}function fB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Oz(c[f>>2]|0,c[c[g>>2]>>2]|0)|0;Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,c[h>>2]|0,1)|0;h=Kz(c[f>>2]|0)|0;c[c[g>>2]>>2]=h;i=e;return}function gB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=e;c[k>>2]=rB(c[h>>2]|0)|0;c[j>>2]=Ob[c[(c[c[k>>2]>>2]|0)+4>>2]&127](c[(c[k>>2]|0)+12>>2]|0,56)|0;e=c[j>>2]|0;c[e>>2]=c[e>>2]&-4;c[(c[j>>2]|0)+52>>2]=c[k>>2];c[(c[j>>2]|0)+12>>2]=c[d>>2];d=(c[j>>2]|0)+12|0;a[d>>0]=a[d>>0]&-9|8;c[(c[j>>2]|0)+48>>2]=c[j>>2];d=Ob[c[c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;c[(c[(c[j>>2]|0)+52>>2]|0)+12+4>>2]=d;if(!(tB(c[j>>2]|0,0,c[g>>2]|0,l,1)|0)){m=c[j>>2]|0;n=hB(m)|0;c[j>>2]=n;o=c[j>>2]|0;p=c[j>>2]|0;xB(o,0,p);q=c[j>>2]|0;i=f;return q|0}c[(c[j>>2]|0)+4>>2]=c[l>>2];m=c[j>>2]|0;n=hB(m)|0;c[j>>2]=n;o=c[j>>2]|0;p=c[j>>2]|0;xB(o,0,p);q=c[j>>2]|0;i=f;return q|0}function hB(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;e=b+4|0;f=b;c[e>>2]=a;a=OD(c[e>>2]|0,52476,c[12993]|0)|0;c[(c[e>>2]|0)+24>>2]=a;a=OD(c[e>>2]|0,52440,c[12993]|0)|0;c[(c[e>>2]|0)+28>>2]=a;a=c[e>>2]|0;g=c[e>>2]|0;h=(g|0)==(rC(c[e>>2]|0)|0);g=OD(a,h?52072:52108,c[12993]|0)|0;c[(c[e>>2]|0)+32>>2]=g;g=c[e>>2]|0;h=c[e>>2]|0;a=(h|0)==(rC(c[e>>2]|0)|0);h=OD(g,a?52144:52180,c[12993]|0)|0;c[(c[e>>2]|0)+36>>2]=h;h=OD(c[e>>2]|0,52224,c[12993]|0)|0;c[(c[e>>2]|0)+40>>2]=h;c[f>>2]=ID(c[e>>2]|0)|0;if(c[f>>2]|0){h=iB(c[f>>2]|0,0)|0;a=c[e>>2]|0;c[a>>2]=c[a>>2]&15|(h&268435455)<<4;Hb[c[c[(c[f>>2]|0)+40>>2]>>2]&63](c[(c[f>>2]|0)+40>>2]|0,c[e>>2]|0,1)|0}if((c[f>>2]|0)!=0?((d[(c[f>>2]|0)+12>>0]|0)>>>6&1|0)==0:0){j=c[e>>2]|0;k=c[e>>2]|0;sC(j,k);l=c[e>>2]|0;i=b;return l|0}sA(c[e>>2]|0);j=c[e>>2]|0;k=c[e>>2]|0;sC(j,k);l=c[e>>2]|0;i=b;return l|0}function iB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[e>>2]|0)+52>>2]|0)+24+(c[f>>2]<<2)|0;f=(c[b>>2]|0)+1|0;c[b>>2]=f;i=d;return f|0}function jB(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=i;i=i+48|0;e=b+36|0;f=b+32|0;g=b+28|0;h=b+24|0;j=b+20|0;k=b+16|0;l=b+12|0;m=b+8|0;n=b+4|0;o=b;c[f>>2]=a;c[j>>2]=ID(c[f>>2]|0)|0;if((c[j>>2]|0)==0?(c[(c[c[(c[f>>2]|0)+52>>2]>>2]|0)+16>>2]|0)!=0:0){wC(c[f>>2]|0,c[f>>2]|0);vB(c[f>>2]|0,0,c[(c[f>>2]|0)+4>>2]|0);Bb[c[(c[c[(c[f>>2]|0)+52>>2]>>2]|0)+16>>2]&127](c[(c[(c[f>>2]|0)+52>>2]|0)+12>>2]|0);c[e>>2]=0;p=c[e>>2]|0;i=b;return p|0}c[g>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=HD(c[g>>2]|0)|0;jB(c[g>>2]|0)|0;c[g>>2]=c[h>>2]}c[k>>2]=$B(c[f>>2]|0)|0;while(1){q=c[f>>2]|0;if(!(c[k>>2]|0))break;c[l>>2]=aC(q,c[k>>2]|0)|0;hC(c[f>>2]|0,c[k>>2]|0)|0;c[k>>2]=c[l>>2]}KB(q);wC(c[f>>2]|0,c[f>>2]|0);if(QD(c[f>>2]|0,c[(c[f>>2]|0)+28>>2]|0)|0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}if(QD(c[f>>2]|0,c[(c[f>>2]|0)+24>>2]|0)|0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}if(QD(c[f>>2]|0,c[(c[f>>2]|0)+36>>2]|0)|0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}if(QD(c[f>>2]|0,c[(c[f>>2]|0)+32>>2]|0)|0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}if(QD(c[f>>2]|0,c[(c[f>>2]|0)+40>>2]|0)|0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}if(((d[(c[f>>2]|0)+12>>0]|0)>>>6&1|0)!=0?(tA(c[f>>2]|0)|0)!=0:0){c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}QC(c[f>>2]|0);vB(c[f>>2]|0,0,c[(c[f>>2]|0)+4>>2]|0);do if(c[j>>2]|0){JD(c[j>>2]|0,c[f>>2]|0)|0;VB(c[j>>2]|0,c[f>>2]|0)}else{while(1){r=c[f>>2]|0;if(!(c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]|0))break;zC(r,c[c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]>>2]|0)|0}Bb[c[(c[(c[r+52>>2]|0)+4>>2]|0)+20>>2]&127](c[(c[(c[f>>2]|0)+52>>2]|0)+12+4>>2]|0);if(!(WC(c[f>>2]|0)|0)){c[m>>2]=c[c[(c[f>>2]|0)+52>>2]>>2];c[n>>2]=c[(c[(c[f>>2]|0)+52>>2]|0)+12>>2];c[o>>2]=c[(c[f>>2]|0)+52>>2];Db[c[(c[m>>2]|0)+12>>2]&31](c[n>>2]|0,c[f>>2]|0);Db[c[(c[m>>2]|0)+12>>2]&31](c[n>>2]|0,c[o>>2]|0);break}c[e>>2]=-1;p=c[e>>2]|0;i=b;return p|0}while(0);c[e>>2]=0;p=c[e>>2]|0;i=b;return p|0}function kB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pz(c[(c[d>>2]|0)+28>>2]|0)|0;i=b;return a|0}function lB(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;a=mB(c[d>>2]|0,c[e>>2]|0,0,1)|0;c[f>>2]=(c[f>>2]|0)+a;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return c[f>>2]|0}function mB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[l>>2]=PA(c[g>>2]|0,c[h>>2]|0)|0;if(!(c[l>>2]|0)){n=c[m>>2]|0;i=f;return n|0}if(c[k>>2]|0){k=sB(c[(c[g>>2]|0)+32>>2]|0,(c[l>>2]|0)+32|0)|0;c[m>>2]=(c[m>>2]|0)+k}if(!(c[j>>2]|0)){n=c[m>>2]|0;i=f;return n|0}j=sB(c[(c[g>>2]|0)+32>>2]|0,(c[l>>2]|0)+28|0)|0;c[m>>2]=(c[m>>2]|0)+j;n=c[m>>2]|0;i=f;return n|0}function nB(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;i=d;return a[(c[e>>2]|0)+12>>0]&1|0}function oB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=((nB(c[d>>2]|0)|0)!=0^1)&1;i=b;return a|0}function pB(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;i=b;return (d[(c[e>>2]|0)+12>>0]|0)>>>1&1|0}function qB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+8|0;k=f+4|0;l=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+12>>2]=e;c[k>>2]=c[g>>2];c[l>>2]=c[h>>2];c[j>>2]=(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);if(!(c[j>>2]|0)){m=0;i=f;return m|0}m=(c[j>>2]|0)<0?-1:1;i=f;return m|0}function rB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;if((c[e>>2]|0)!=0?(c[c[e>>2]>>2]|0)!=0:0)j=c[c[e>>2]>>2]|0;else j=52420;c[f>>2]=j;c[g>>2]=Fb[c[c[f>>2]>>2]&63](c[e>>2]|0)|0;c[h>>2]=Ob[c[(c[f>>2]|0)+4>>2]&127](c[g>>2]|0,68)|0;c[c[h>>2]>>2]=c[f>>2];c[(c[h>>2]|0)+12>>2]=c[g>>2];if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+4>>2]|0)!=0:0)k=c[(c[e>>2]|0)+4>>2]|0;else k=52292;c[(c[h>>2]|0)+4>>2]=k;if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+8>>2]|0)!=0:0)l=c[(c[e>>2]|0)+8>>2]|0;else l=52396;c[(c[h>>2]|0)+8>>2]=l;a[(c[h>>2]|0)+40>>0]=1;i=d;return c[h>>2]|0}function sB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;Oz(c[e>>2]|0,c[c[f>>2]>>2]|0)|0;c[g>>2]=Pz(c[e>>2]|0)|0;b=Kz(c[e>>2]|0)|0;c[c[f>>2]>>2]=b;i=d;return c[g>>2]|0}function tB(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;if(((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=37:0)?(c[p>>2]=Gb[c[(c[(c[(c[k>>2]|0)+52>>2]|0)+4>>2]|0)+4>>2]&63](c[(c[(c[k>>2]|0)+52>>2]|0)+12+4>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0,(c[p>>2]|0)!=0):0){c[j>>2]=c[p>>2];q=c[j>>2]|0;i=h;return q|0}if(c[m>>2]|0){c[p>>2]=FB(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(c[p>>2]|0){c[j>>2]=c[p>>2];q=c[j>>2]|0;i=h;return q|0}}else c[p>>2]=0;if((c[o>>2]|0)!=0?(c[p>>2]=Gb[c[(c[(c[(c[k>>2]|0)+52>>2]|0)+4>>2]|0)+4>>2]&63](c[(c[(c[k>>2]|0)+52>>2]|0)+12+4>>2]|0,c[l>>2]|0,0,c[n>>2]|0,c[o>>2]|0)|0,(c[p>>2]|0)!=0&(c[m>>2]|0)!=0):0)GB(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[c[n>>2]>>2]|0);c[j>>2]=c[p>>2];q=c[j>>2]|0;i=h;return q|0}function uB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Hb[c[(c[(c[(c[f>>2]|0)+52>>2]|0)+4>>2]|0)+8>>2]&63](c[(c[(c[f>>2]|0)+52>>2]|0)+12+4>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function vB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;IB(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;Tb[c[(c[(c[(c[f>>2]|0)+52>>2]|0)+4>>2]|0)+12>>2]&127](c[(c[(c[f>>2]|0)+52>>2]|0)+12+4>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function wB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;c[f>>2]=a;c[g>>2]=qC(c[f>>2]|0)|0;a=HB(c[g>>2]|0,c[c[f>>2]>>2]&3,c[(c[f>>2]|0)+4>>2]|0)|0;c[h>>2]=a;if(a){c[e>>2]=c[h>>2];j=c[e>>2]|0;i=b;return j|0}if((c[(c[(c[(c[g>>2]|0)+52>>2]|0)+4>>2]|0)+16>>2]|0)!=0?(a=Hb[c[(c[(c[(c[g>>2]|0)+52>>2]|0)+4>>2]|0)+16>>2]&63](c[(c[(c[g>>2]|0)+52>>2]|0)+12+4>>2]|0,c[c[f>>2]>>2]&3,c[(c[f>>2]|0)+4>>2]|0)|0,c[h>>2]=a,(a|0)!=0):0){c[e>>2]=c[h>>2];j=c[e>>2]|0;i=b;return j|0}if((c[c[f>>2]>>2]&3|0)!=2){a=c[(c[f>>2]|0)+4>>2]|0;c[d>>2]=37;c[d+4>>2]=a;k3(134116,134148,d)|0;c[h>>2]=134116}else c[h>>2]=0;c[e>>2]=c[h>>2];j=c[e>>2]|0;i=b;return j|0}function xB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Tb[c[(c[(c[(c[f>>2]|0)+52>>2]|0)+4>>2]|0)+24>>2]&127](c[(c[(c[f>>2]|0)+52>>2]|0)+12+4>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function yB(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;i=d;return c[e>>2]|0}function zB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[g+20>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[c[k>>2]>>2]=c[13080];c[13080]=(c[13080]|0)+2;i=g;return 1}c[n>>2]=c[h>>2];h=c[n>>2]|0;n=c[j>>2]|0;if(c[l>>2]|0)c[m>>2]=YC(h,n)|0;else c[m>>2]=XC(h,n)|0;c[c[k>>2]>>2]=c[m>>2];i=g;return 1}function AB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function BB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;c[e+4>>2]=b;c[g>>2]=d;if(((c[g>>2]|0)>>>0)%2|0){i=e;return}_C(c[f>>2]|0,c[g>>2]|0)|0;i=e;return}function CB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+12|0;g=e;c[e+8>>2]=a;c[e+4>>2]=b;c[g>>2]=d;if(!(((c[g>>2]|0)>>>0)%2|0)){c[f>>2]=c[g>>2];h=c[f>>2]|0;i=e;return h|0}else{c[f>>2]=0;h=c[f>>2]|0;i=e;return h|0}return 0}function DB(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function EB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return}function FB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f+56|0;h=f+52|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+8|0;p=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[j>>2]|0)==3)c[j>>2]=2;e=c[(c[(c[h>>2]|0)+52>>2]|0)+44+(c[j>>2]<<2)>>2]|0;c[m>>2]=e;if(((e|0)!=0?(e=XC(c[h>>2]|0,c[k>>2]|0)|0,c[p>>2]=e,(e|0)!=0):0)?(c[o+20>>2]=c[p>>2],c[n>>2]=Hb[c[c[m>>2]>>2]&63](c[m>>2]|0,o,4)|0,(c[n>>2]|0)!=0):0){c[c[l>>2]>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=1;q=c[g>>2]|0;i=f;return q|0}c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}function GB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=UB(c[g>>2]|0,24)|0;c[(c[l>>2]|0)+16>>2]=c[k>>2];k=YC(c[g>>2]|0,c[j>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=k;if((c[h>>2]|0)==3)c[h>>2]=2;k=c[(c[(c[g>>2]|0)+52>>2]|0)+44+(c[h>>2]<<2)>>2]|0;c[m>>2]=k;if(!k){k=OD(c[g>>2]|0,52324,c[12993]|0)|0;c[(c[(c[g>>2]|0)+52>>2]|0)+44+(c[h>>2]<<2)>>2]=k;c[m>>2]=k}k=c[(c[(c[g>>2]|0)+52>>2]|0)+56+(c[h>>2]<<2)>>2]|0;c[n>>2]=k;if(k){o=c[m>>2]|0;p=c[o>>2]|0;q=c[m>>2]|0;r=c[l>>2]|0;Hb[p&63](q,r,1)|0;s=c[n>>2]|0;t=c[s>>2]|0;u=c[n>>2]|0;v=c[l>>2]|0;Hb[t&63](u,v,1)|0;i=f;return}k=OD(c[g>>2]|0,52360,c[12993]|0)|0;c[(c[(c[g>>2]|0)+52>>2]|0)+56+(c[h>>2]<<2)>>2]=k;c[n>>2]=k;o=c[m>>2]|0;p=c[o>>2]|0;q=c[m>>2]|0;r=c[l>>2]|0;Hb[p&63](q,r,1)|0;s=c[n>>2]|0;t=c[s>>2]|0;u=c[n>>2]|0;v=c[l>>2]|0;Hb[t&63](u,v,1)|0;i=f;return}function HB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=LB(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=d;if(d){c[f>>2]=c[(c[k>>2]|0)+20>>2];l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}return 0}function IB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[h>>2]|0)==3)c[h>>2]=2;d=LB(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=d;if(d){Hb[c[c[(c[(c[g>>2]|0)+52>>2]|0)+44+(c[h>>2]<<2)>>2]>>2]&63](c[(c[(c[g>>2]|0)+52>>2]|0)+44+(c[h>>2]<<2)>>2]|0,c[k>>2]|0,2)|0;Hb[c[c[(c[(c[g>>2]|0)+52>>2]|0)+56+(c[h>>2]<<2)>>2]>>2]&63](c[(c[(c[g>>2]|0)+52>>2]|0)+56+(c[h>>2]<<2)>>2]|0,c[k>>2]|0,2)|0;_C(c[g>>2]|0,c[(c[k>>2]|0)+20>>2]|0)|0;VB(c[g>>2]|0,c[k>>2]|0);c[f>>2]=1;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}return 0}function JB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=b;c[13072]=c[e>>2];c[j>>2]=(c[(c[e>>2]|0)+52>>2]|0)+44;c[f>>2]=0;while(1){if((c[f>>2]|0)>=3)break;a:do if(c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0){c[g>>2]=Hb[c[c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]>>2]&63](c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0,0,128)|0;while(1){if(!(c[g>>2]|0))break a;c[h>>2]=Hb[c[c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]>>2]&63](c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0,c[g>>2]|0,8)|0;if((a[c[(c[g>>2]|0)+20>>2]>>0]|0)==37)IB(c[e>>2]|0,c[f>>2]|0,c[(c[g>>2]|0)+16>>2]|0)|0;c[g>>2]=c[h>>2]}}while(0);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function KB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[13072]=c[d>>2];MB((c[(c[d>>2]|0)+52>>2]|0)+44|0);MB((c[(c[d>>2]|0)+52>>2]|0)+56|0);i=b;return}function LB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)==3)c[g>>2]=2;d=c[(c[(c[f>>2]|0)+52>>2]|0)+56+(c[g>>2]<<2)>>2]|0;c[j>>2]=d;if(d){c[l+16>>2]=c[h>>2];c[k>>2]=Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,l,4)|0;m=c[k>>2]|0;i=e;return m|0}else{c[k>>2]=0;m=c[k>>2]|0;i=e;return m|0}return 0}function MB(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=3)break;if(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0){Jz(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0)|0;c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]=0}c[e>>2]=(c[e>>2]|0)+1}i=b;return}function NB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+4|0;k=f;c[f+20>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+8>>2]=e;c[j>>2]=c[g>>2];c[k>>2]=c[h>>2];i=f;return (c[(c[j>>2]|0)+16>>2]|0)-(c[(c[k>>2]|0)+16>>2]|0)|0}function OB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+4|0;k=f;c[f+20>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+8>>2]=e;c[j>>2]=c[g>>2];c[k>>2]=c[h>>2];i=f;return (c[(c[j>>2]|0)+20>>2]|0)-(c[(c[k>>2]|0)+20>>2]|0)|0}function PB(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+28|0;e=b+24|0;f=b+12|0;g=b;c[d>>2]=a;c[13103]=c[13100];c[13104]=c[13101];c[f>>2]=c[d>>2];c[f+4>>2]=N3(c[d>>2]|0)|0;c[f+8>>2]=0;c[g>>2]=52420;c[g+4>>2]=52292;c[g+8>>2]=52408;c[e>>2]=CE(f,g)|0;i=b;return c[e>>2]|0}function QB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(V2(c[h>>2]|0,c[j>>2]|0,c[g>>2]|0)|0){c[f>>2]=N3(c[h>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}return 0}function RB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=_2(c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function SB(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=T2(c[d>>2]|0)|0;i=b;return a|0}function TB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+32|0;o=f+4|0;p=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[k>>2]|0)){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}c[p>>2]=c[h>>2];if((c[(c[p>>2]|0)+8>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0)){c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}c[o>>2]=0;c[l>>2]=(c[c[p>>2]>>2]|0)+(c[(c[p>>2]|0)+8>>2]|0);c[m>>2]=c[j>>2];j=c[l>>2]|0;c[l>>2]=j+1;a[n>>0]=a[j>>0]|0;do{j=a[n>>0]|0;h=c[m>>2]|0;c[m>>2]=h+1;a[h>>0]=j;c[o>>2]=(c[o>>2]|0)+1;if((a[n>>0]|0)==10)break;if((c[o>>2]|0)>=(c[k>>2]|0))break;j=c[l>>2]|0;c[l>>2]=j+1;h=a[j>>0]|0;a[n>>0]=h}while((h<<24>>24|0)!=0);n=(c[p>>2]|0)+8|0;c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[g>>2]=c[o>>2];q=c[g>>2]|0;i=f;return q|0}function UB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Ob[c[(c[c[(c[e>>2]|0)+52>>2]>>2]|0)+4>>2]&127](c[(c[(c[e>>2]|0)+52>>2]|0)+12>>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=d;return h|0}$z(1,134154,d)|0;h=c[g>>2]|0;i=d;return h|0}function VB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){i=d;return}Db[c[(c[c[(c[e>>2]|0)+52>>2]>>2]|0)+12>>2]&31](c[(c[(c[e>>2]|0)+52>>2]|0)+12>>2]|0,c[f>>2]|0);i=d;return}function WB(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function XB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[d+8>>2]=a;c[e>>2]=b;c[f>>2]=N4(c[e>>2]|0)|0;$4(c[f>>2]|0,0,c[e>>2]|0)|0;i=d;return c[f>>2]|0}function YB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[f+16>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=Q4(c[g>>2]|0,c[j>>2]|0)|0;if((c[j>>2]|0)>>>0<=(c[h>>2]|0)>>>0){l=c[k>>2]|0;i=f;return l|0}$4((c[k>>2]|0)+(c[h>>2]|0)|0,0,(c[j>>2]|0)-(c[h>>2]|0)|0)|0;l=c[k>>2]|0;i=f;return l|0}function ZB(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[d+4>>2]=a;c[e>>2]=b;O4(c[e>>2]|0);i=d;return}function _B(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[13129]=c[f>>2];c[13145]=52512;c[g>>2]=Hb[c[c[(c[e>>2]|0)+28>>2]>>2]&63](c[(c[e>>2]|0)+28>>2]|0,52564,4)|0;if(!(c[g>>2]|0)){h=0;i=d;return h|0}h=c[(c[g>>2]|0)+16>>2]|0;i=d;return h|0}function $B(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Hb[c[c[(c[d>>2]|0)+24>>2]>>2]&63](c[(c[d>>2]|0)+24>>2]|0,0,128)|0;if(!(c[e>>2]|0)){f=0;i=b;return f|0}f=c[(c[e>>2]|0)+16>>2]|0;i=b;return f|0}function aC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=PA(c[e>>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0)c[g>>2]=Hb[c[c[(c[e>>2]|0)+24>>2]>>2]&63](c[(c[e>>2]|0)+24>>2]|0,c[g>>2]|0,8)|0;if(!(c[g>>2]|0)){h=0;i=d;return h|0}h=c[(c[g>>2]|0)+16>>2]|0;i=d;return h|0}function bC(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Hb[c[c[(c[d>>2]|0)+24>>2]>>2]&63](c[(c[d>>2]|0)+24>>2]|0,0,256)|0;if(!(c[e>>2]|0)){f=0;i=b;return f|0}f=c[(c[e>>2]|0)+16>>2]|0;i=b;return f|0}function cC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=PA(c[e>>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0)c[g>>2]=Hb[c[c[(c[e>>2]|0)+24>>2]>>2]&63](c[(c[e>>2]|0)+24>>2]|0,c[g>>2]|0,16)|0;if(!(c[g>>2]|0)){h=0;i=d;return h|0}h=c[(c[g>>2]|0)+16>>2]|0;i=d;return h|0}function dC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=_B(c[f>>2]|0,c[g>>2]|0)|0;if(!((c[k>>2]|0)==0&(c[h>>2]|0)!=0)){l=c[k>>2]|0;i=e;return l|0}c[j>>2]=rC(c[f>>2]|0)|0;if((c[f>>2]|0)!=(c[j>>2]|0)?(h=_B(c[j>>2]|0,c[g>>2]|0)|0,c[k>>2]=h,(h|0)!=0):0){eC(c[f>>2]|0,c[k>>2]|0,1)|0;l=c[k>>2]|0;i=e;return l|0}if(uB(c[f>>2]|0,1,c[g>>2]|0)|0){h=c[f>>2]|0;j=c[g>>2]|0;c[k>>2]=kC(h,j,iB(c[f>>2]|0,1)|0)|0;lC(c[f>>2]|0,c[k>>2]|0);mC(c[f>>2]|0,c[k>>2]|0);l=c[k>>2]|0;i=e;return l|0}else{c[k>>2]=0;l=c[k>>2]|0;i=e;return l|0}return 0}function eC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=rC(c[g>>2]|0)|0;if((d|0)!=(c[(c[h>>2]|0)+12>>2]|0)){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}c[l>>2]=_B(c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;if((c[l>>2]|0)==0&(c[j>>2]|0)!=0?(d=ID(c[g>>2]|0)|0,c[k>>2]=d,(d|0)!=0):0){c[l>>2]=eC(c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;nC(c[g>>2]|0,c[l>>2]|0)}c[f>>2]=c[l>>2];m=c[f>>2]|0;i=e;return m|0}function fC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=rC(c[g>>2]|0)|0;if(tB(c[g>>2]|0,1,c[h>>2]|0,m,0)|0){d=_B(c[g>>2]|0,c[m>>2]|0)|0;c[l>>2]=d;if(d){c[f>>2]=c[l>>2];n=c[f>>2]|0;i=e;return n|0}if(((c[j>>2]|0)!=0?(c[g>>2]|0)!=(c[k>>2]|0):0)?(d=_B(c[k>>2]|0,c[m>>2]|0)|0,c[l>>2]=d,(d|0)!=0):0){c[f>>2]=eC(c[g>>2]|0,c[l>>2]|0,1)|0;n=c[f>>2]|0;i=e;return n|0}}if((c[j>>2]|0)!=0?(tB(c[g>>2]|0,1,c[h>>2]|0,m,1)|0)!=0:0){h=c[g>>2]|0;j=c[m>>2]|0;c[l>>2]=kC(h,j,iB(c[g>>2]|0,1)|0)|0;lC(c[g>>2]|0,c[l>>2]|0);mC(c[g>>2]|0,c[l>>2]|0);xB(c[g>>2]|0,1,c[l>>2]|0);c[f>>2]=c[l>>2];n=c[f>>2]|0;i=e;return n|0}c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}function gC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[e+8>>2]=d;c[13154]=c[g>>2];c[h>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){k=c[f>>2]|0;if(!(c[h>>2]|0))break;c[j>>2]=UA(k,c[h>>2]|0,c[g>>2]|0)|0;WA(c[f>>2]|0,c[h>>2]|0,0);c[h>>2]=c[j>>2]}Hb[c[c[k+28>>2]>>2]&63](c[(c[f>>2]|0)+28>>2]|0,52600,2)|0;Hb[c[c[(c[f>>2]|0)+24>>2]>>2]&63](c[(c[f>>2]|0)+24>>2]|0,52600,2)|0;i=e;return}function hC(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;if(!(_B(c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0)){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}b=c[g>>2]|0;if((b|0)==(rC(c[g>>2]|0)|0)){c[j>>2]=TA(c[g>>2]|0,c[h>>2]|0)|0;while(1){m=c[g>>2]|0;if(!(c[j>>2]|0))break;c[k>>2]=UA(m,c[j>>2]|0,c[h>>2]|0)|0;XA(c[g>>2]|0,c[j>>2]|0)|0;c[j>>2]=c[k>>2]}if((d[m+12>>0]|0)>>>6&1)vA(c[h>>2]|0);wC(c[g>>2]|0,c[h>>2]|0);QC(c[h>>2]|0);vB(c[g>>2]|0,1,c[(c[h>>2]|0)+4>>2]|0)}if(vE(c[g>>2]|0,c[h>>2]|0,56,0,0)|0){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}m=c[g>>2]|0;if((m|0)==(rC(c[g>>2]|0)|0))VB(c[g>>2]|0,c[h>>2]|0);c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}function iC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+8|0;k=f+4|0;l=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+12>>2]=e;c[k>>2]=c[g>>2];c[l>>2]=c[h>>2];c[j>>2]=(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0)-(c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0);if(!(c[j>>2]|0)){m=0;i=f;return m|0}m=(c[j>>2]|0)<0?-1:1;i=f;return m|0}function jC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+8|0;k=f+4|0;l=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+12>>2]=e;c[j>>2]=c[g>>2];c[k>>2]=c[h>>2];c[l>>2]=((c[c[(c[j>>2]|0)+16>>2]>>2]|0)>>>4)-((c[c[(c[k>>2]|0)+16>>2]>>2]|0)>>>4);if(!(c[l>>2]|0)){m=0;i=f;return m|0}m=(c[l>>2]|0)<0?-1:1;i=f;return m|0}function kC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=UB(c[g>>2]|0,52)|0;e=c[k>>2]|0;c[e>>2]=c[e>>2]&-4|1;c[(c[k>>2]|0)+4>>2]=c[h>>2];h=c[k>>2]|0;c[h>>2]=c[h>>2]&15|(c[j>>2]&268435455)<<4;j=rC(c[g>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=j;if(!((d[(rC(c[g>>2]|0)|0)+12>>0]|0)>>>6&1)){l=c[k>>2]|0;i=f;return l|0}MC(c[k>>2]|0,c[13015]|0,16,0)|0;l=c[k>>2]|0;i=f;return l|0}function lC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;nC(c[e>>2]|0,c[f>>2]|0);b=ID(c[e>>2]|0)|0;c[g>>2]=b;if(!b){i=d;return}lC(c[g>>2]|0,c[f>>2]|0);i=d;return}function mC(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;if((d[(rC(c[f>>2]|0)|0)+12>>0]|0)>>>6&1)uA(c[f>>2]|0,c[g>>2]|0);sC(c[f>>2]|0,c[g>>2]|0);i=e;return}function nC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=Pz(c[(c[e>>2]|0)+28>>2]|0)|0;b=c[e>>2]|0;if((b|0)==(rC(c[e>>2]|0)|0))c[g>>2]=(c[f>>2]|0)+16;else c[g>>2]=UB(c[e>>2]|0,36)|0;c[(c[g>>2]|0)+16>>2]=c[f>>2];Hb[c[c[(c[e>>2]|0)+28>>2]>>2]&63](c[(c[e>>2]|0)+28>>2]|0,c[g>>2]|0,1)|0;Hb[c[c[(c[e>>2]|0)+24>>2]>>2]&63](c[(c[e>>2]|0)+24>>2]|0,c[g>>2]|0,1)|0;i=d;return}function oC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;if((c[f>>2]|0)==((c[(c[f>>2]|0)+16>>2]|0)+16|0)){i=e;return}VB(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]|0,c[f>>2]|0);i=e;return}function pC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d;f=d+12|0;g=d+8|0;h=d+4|0;c[g>>2]=a;c[h>>2]=b;if((c[c[h>>2]>>2]&3|0)==0?(b=c[g>>2]|0,(b|0)!=(ID(c[h>>2]|0)|0)):0){$z(1,134180,e)|0;c[f>>2]=-1}else j=4;a:do if((j|0)==4)switch(c[c[h>>2]>>2]&3|0){case 1:{c[f>>2]=hC(c[g>>2]|0,c[h>>2]|0)|0;break a;break}case 2:case 3:{c[f>>2]=XA(c[g>>2]|0,c[h>>2]|0)|0;break a;break}case 0:{c[f>>2]=jB(c[h>>2]|0)|0;break a;break}default:{}}while(0);i=d;return c[f>>2]|0}function qC(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;switch(c[c[e>>2]>>2]&3|0){case 2:case 3:{c[d>>2]=c[(c[(c[e>>2]|0)+28>>2]|0)+12>>2];break}case 1:{c[d>>2]=c[(c[e>>2]|0)+12>>2];break}case 0:{c[d>>2]=c[e>>2];break}default:{}}i=b;return c[d>>2]|0}function rC(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;switch(c[c[e>>2]>>2]&3|0){case 2:case 3:{c[d>>2]=c[(c[(c[e>>2]|0)+28>>2]|0)+12>>2];break}case 1:{c[d>>2]=c[(c[e>>2]|0)+12>>2];break}case 0:{c[d>>2]=c[(c[e>>2]|0)+48>>2];break}default:{}}i=b;return c[d>>2]|0}function sC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[f>>2]|0;b=c[g>>2]|0;if(a[(c[(c[f>>2]|0)+52>>2]|0)+40>>0]|0){tC(d,b,c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]|0);i=e;return}else{CC(d,b,100,0);i=e;return}}function tC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[h>>2]|0)){i=e;return}tC(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0);c[j>>2]=0;switch(c[c[g>>2]>>2]&3|0){case 0:{c[j>>2]=c[c[c[h>>2]>>2]>>2];break}case 1:{c[j>>2]=c[(c[c[h>>2]>>2]|0)+12>>2];break}case 2:{c[j>>2]=c[(c[c[h>>2]>>2]|0)+24>>2];break}default:{}}if(!(c[j>>2]|0)){i=e;return}Tb[c[j>>2]&127](c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0);i=e;return}function uC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;e=c[g>>2]|0;d=c[h>>2]|0;if(a[(c[(c[g>>2]|0)+52>>2]|0)+40>>0]|0){vC(e,d,c[j>>2]|0,c[(c[(c[g>>2]|0)+52>>2]|0)+36>>2]|0);i=f;return}else{CC(e,d,101,c[j>>2]|0);i=f;return}}function vC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[k>>2]|0)){i=f;return}vC(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[k>>2]|0)+8>>2]|0);c[l>>2]=0;switch(c[c[h>>2]>>2]&3|0){case 0:{c[l>>2]=c[(c[c[k>>2]>>2]|0)+4>>2];break}case 1:{c[l>>2]=c[(c[c[k>>2]>>2]|0)+12+4>>2];break}case 2:{c[l>>2]=c[(c[c[k>>2]>>2]|0)+24+4>>2];break}default:{}}if(!(c[l>>2]|0)){i=f;return}Vb[c[l>>2]&31](c[g>>2]|0,c[h>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0);i=f;return}function wC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[f>>2]|0;b=c[g>>2]|0;if(a[(c[(c[f>>2]|0)+52>>2]|0)+40>>0]|0){xC(d,b,c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]|0);i=e;return}else{CC(d,b,102,0);i=e;return}}function xC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[h>>2]|0)){i=e;return}xC(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0);c[j>>2]=0;switch(c[c[g>>2]>>2]&3|0){case 0:{c[j>>2]=c[(c[c[h>>2]>>2]|0)+8>>2];break}case 1:{c[j>>2]=c[(c[c[h>>2]>>2]|0)+12+8>>2];break}case 2:{c[j>>2]=c[(c[c[h>>2]>>2]|0)+24+8>>2];break}default:{}}if(!(c[j>>2]|0)){i=e;return}Tb[c[j>>2]&127](c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0);i=e;return}function yC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=UB(c[f>>2]|0,12)|0;c[c[j>>2]>>2]=c[g>>2];c[(c[j>>2]|0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2];c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]=c[j>>2];i=e;return}function zC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2];if(c[h>>2]|0){if((c[c[h>>2]>>2]|0)!=(c[g>>2]|0)){while(1){if(c[h>>2]|0)j=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)!=(c[g>>2]|0);else j=0;k=c[h>>2]|0;if(!j)break;c[h>>2]=c[k+8>>2]}if((k|0)!=0?(c[(c[h>>2]|0)+8>>2]|0)!=0:0)c[(c[h>>2]|0)+8>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]}else c[(c[(c[f>>2]|0)+52>>2]|0)+36>>2]=c[(c[h>>2]|0)+8>>2];if(c[h>>2]|0){VB(c[f>>2]|0,c[h>>2]|0);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}}c[e>>2]=-1;l=c[e>>2]|0;i=d;return l|0}function AC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=rC(c[f>>2]|0)|0;a:do if((b|0)!=(rC(c[g>>2]|0)|0))c[e>>2]=0;else switch(c[c[g>>2]>>2]&3|0){case 0:{c[h>>2]=c[g>>2];while(1){if((c[h>>2]|0)==(c[f>>2]|0)){j=6;break}a=ID(c[h>>2]|0)|0;c[h>>2]=a;if(!a){j=8;break}}if((j|0)==6){c[e>>2]=1;break a}else if((j|0)==8){c[e>>2]=0;break a}break}case 1:{c[e>>2]=(dC(c[f>>2]|0,c[(c[g>>2]|0)+4>>2]|0,0)|0)!=0&1;break a;break}default:{c[e>>2]=(YA(c[f>>2]|0,c[g>>2]|0,0)|0)!=0&1;break a}}while(0);i=d;return c[e>>2]|0}function BC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[c[d>>2]>>2]&3|0}function CC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=MC(c[g>>2]|0,134204,44,0)|0;switch(c[j>>2]|0){case 100:{c[m>>2]=DC(c[l>>2]|0,c[h>>2]|0,100)|0;c[n>>2]=EC(c[m>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){i=f;return}c[n>>2]=FC(c[m>>2]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;i=f;return}case 101:{if(EC(DC(c[l>>2]|0,c[h>>2]|0,100)|0,c[h>>2]|0)|0){i=f;return}if(EC(DC(c[l>>2]|0,c[h>>2]|0,102)|0,c[h>>2]|0)|0){i=f;return}c[m>>2]=DC(c[l>>2]|0,c[h>>2]|0,101)|0;c[n>>2]=EC(c[m>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=FC(c[m>>2]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;GC(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0);i=f;return}case 102:{HC(DC(c[l>>2]|0,c[h>>2]|0,100)|0,c[h>>2]|0);HC(DC(c[l>>2]|0,c[h>>2]|0,101)|0,c[h>>2]|0);c[m>>2]=DC(c[l>>2]|0,c[h>>2]|0,102)|0;c[n>>2]=EC(c[m>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){i=f;return}c[n>>2]=FC(c[m>>2]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;i=f;return}default:{$z(1,134216,f)|0;i=f;return}}}function DC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=0;c[k>>2]=0;a:do switch(c[c[h>>2]>>2]&3|0){case 0:{switch(c[j>>2]|0){case 100:{c[k>>2]=(c[g>>2]|0)+8;break a;break}case 101:{c[k>>2]=(c[g>>2]|0)+20;break a;break}case 102:{c[k>>2]=(c[g>>2]|0)+32;break a;break}default:break a}break}case 1:{switch(c[j>>2]|0){case 100:{c[k>>2]=(c[g>>2]|0)+8+4;break a;break}case 101:{c[k>>2]=(c[g>>2]|0)+20+4;break a;break}case 102:{c[k>>2]=(c[g>>2]|0)+32+4;break a;break}default:break a}break}case 2:{switch(c[j>>2]|0){case 100:{c[k>>2]=(c[g>>2]|0)+8+8;break a;break}case 101:{c[k>>2]=(c[g>>2]|0)+20+8;break a;break}case 102:{c[k>>2]=(c[g>>2]|0)+32+8;break a;break}default:break a}break}default:{}}while(0);if(!(c[k>>2]|0))$z(1,134250,f)|0;if(c[c[k>>2]>>2]|0){l=c[k>>2]|0;m=c[l>>2]|0;i=e;return m|0}f=qC(c[h>>2]|0)|0;h=OD(f,52636,c[12993]|0)|0;c[c[k>>2]>>2]=h;l=c[k>>2]|0;m=c[l>>2]|0;i=e;return m|0}function EC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+8|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g+8>>2]=IC(c[f>>2]|0)|0;c[h>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,4)|0;i=d;return c[h>>2]|0}function FC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=UB(qC(c[j>>2]|0)|0,24)|0;c[(c[l>>2]|0)+16>>2]=c[j>>2];e=IC(c[j>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=e;c[(c[l>>2]|0)+12>>2]=c[h>>2];if(!(c[k>>2]|0)){m=c[g>>2]|0;n=c[m>>2]|0;o=c[g>>2]|0;p=c[l>>2]|0;Hb[n&63](o,p,1)|0;q=c[l>>2]|0;i=f;return q|0}h=UB(c[(c[l>>2]|0)+12>>2]|0,8)|0;c[(c[l>>2]|0)+20>>2]=h;c[c[(c[l>>2]|0)+20>>2]>>2]=c[k>>2];m=c[g>>2]|0;n=c[m>>2]|0;o=c[g>>2]|0;p=c[l>>2]|0;Hb[n&63](o,p,1)|0;q=c[l>>2]|0;i=f;return q|0}function GC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[g>>2]|0)+20>>2];while(1){if(!(c[j>>2]|0)){m=9;break}if((c[c[j>>2]>>2]|0)==(c[h>>2]|0)){m=9;break}do if(!(c[j>>2]|0)){c[k>>2]=UB(qC(c[f>>2]|0)|0,8)|0;c[c[k>>2]>>2]=c[h>>2];d=c[k>>2]|0;if(c[l>>2]|0){c[(c[l>>2]|0)+4>>2]=d;break}else{c[(c[g>>2]|0)+20>>2]=d;break}}while(0);c[l>>2]=c[j>>2];c[j>>2]=c[(c[j>>2]|0)+4>>2]}if((m|0)==9){i=e;return}}function HC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=EC(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=b;if(!b){i=d;return}Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,c[g>>2]|0,2)|0;i=d;return}function IC(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+4>>2]|0}function JC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=c[f>>2];KC(c[g>>2]|0);VB(c[(c[g>>2]|0)+12>>2]|0,c[g>>2]|0);i=e;return}function KC(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+20>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+4>>2];VB(c[(c[d>>2]|0)+12>>2]|0,c[e>>2]|0);c[e>>2]=c[f>>2]}i=b;return}function LC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[h>>2];h=c[(c[l>>2]|0)+8>>2]|0;c[m>>2]=h;c[n>>2]=h;while(1){if(!(c[m>>2]|0))break;if((c[c[m>>2]>>2]|0)==(c[j>>2]|0))break;if((a[c[j>>2]>>0]|0)==(a[c[c[m>>2]>>2]>>0]|0)?(J3(c[j>>2]|0,c[c[m>>2]>>2]|0)|0)==0:0)break;c[m>>2]=c[(c[m>>2]|0)+4>>2];if((c[m>>2]|0)==(c[n>>2]|0)){o=7;break}}if((o|0)==7)c[m>>2]=0;if(!(c[m>>2]|0)){p=c[m>>2]|0;i=f;return p|0}if(!((c[c[l>>2]>>2]|0)>>>2&1)){if((c[m>>2]|0)==(c[n>>2]|0)?(c[k>>2]|0)==((c[c[l>>2]>>2]|0)>>>2&1|0):0){p=c[m>>2]|0;i=f;return p|0}RC(c[l>>2]|0,c[m>>2]|0,c[k>>2]|0);p=c[m>>2]|0;i=f;return p|0}if(!(c[k>>2]|0)){p=c[m>>2]|0;i=f;return p|0}if((c[(c[l>>2]|0)+8>>2]|0)==(c[m>>2]|0)){p=c[m>>2]|0;i=f;return p|0}$z(1,134275,g)|0;p=c[m>>2]|0;i=f;return p|0}function MC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=c[g>>2];c[l>>2]=qC(c[m>>2]|0)|0;c[n>>2]=LC(c[m>>2]|0,c[h>>2]|0,0)|0;a:do if((c[n>>2]|0)==0&(c[j>>2]|0)>>>0>0){c[n>>2]=UB(c[l>>2]|0,c[j>>2]|0)|0;e=YC(c[l>>2]|0,c[h>>2]|0)|0;c[c[n>>2]>>2]=e;switch(c[c[m>>2]>>2]&3|0){case 0:{SC(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0);break a;break}case 1:{SC(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0);break a;break}case 2:case 3:{SC(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0);break a;break}default:{}}}while(0);if(!(c[k>>2]|0)){o=c[n>>2]|0;i=f;return o|0}LC(c[g>>2]|0,c[h>>2]|0,1)|0;o=c[n>>2]|0;i=f;return o|0}function NC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[f>>2];c[k>>2]=qC(c[h>>2]|0)|0;c[j>>2]=LC(c[h>>2]|0,c[g>>2]|0,0)|0;if(!(c[j>>2]|0)){c[e>>2]=-1;l=c[e>>2]|0;i=d;return l|0}TC(c[h>>2]|0,c[j>>2]|0);g=c[k>>2]|0;if((c[c[h>>2]>>2]&3)>>>0<1)UC(g,c[h>>2]|0,c[j>>2]|0);else{f=rC(g)|0;vE(f,c[h>>2]|0,57,c[j>>2]|0,0)|0}_C(c[k>>2]|0,c[c[j>>2]>>2]|0)|0;VB(c[k>>2]|0,c[j>>2]|0);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}function OC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;h=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if((c[l>>2]|0)<0){c[r>>2]=1;c[q>>2]=0-(c[l>>2]|0)}else{c[r>>2]=0;c[q>>2]=c[l>>2]}switch(c[j>>2]|0){case 0:{MC(c[h>>2]|0,c[k>>2]|0,c[q>>2]|0,c[m>>2]|0)|0;if(!(c[r>>2]|0)){i=g;return}c[p>>2]=GD(c[h>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;OC(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);c[p>>2]=HD(c[p>>2]|0)|0}i=g;return}case 3:case 2:case 1:{c[n>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;a:do if((c[j>>2]|0)==1)MC(c[n>>2]|0,c[k>>2]|0,c[q>>2]|0,c[m>>2]|0)|0;else{c[o>>2]=OA(c[h>>2]|0,c[n>>2]|0)|0;while(1){if(!(c[o>>2]|0))break a;MC(c[o>>2]|0,c[k>>2]|0,c[q>>2]|0,c[m>>2]|0)|0;c[o>>2]=QA(c[h>>2]|0,c[o>>2]|0)|0}}while(0);c[n>>2]=aC(c[h>>2]|0,c[n>>2]|0)|0}i=g;return}default:{i=g;return}}}function PC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[g>>2]|0){case 0:{vE(c[f>>2]|0,c[f>>2]|0,58,c[h>>2]|0,1)|0;i=e;return}case 3:case 2:case 1:{c[j>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;a:do if((c[g>>2]|0)==1)NC(c[j>>2]|0,c[h>>2]|0)|0;else{c[k>>2]=OA(c[f>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break a;NC(c[k>>2]|0,c[h>>2]|0)|0;c[k>>2]=QA(c[f>>2]|0,c[k>>2]|0)|0}}while(0);c[j>>2]=aC(c[f>>2]|0,c[j>>2]|0)|0}i=e;return}default:{i=e;return}}}function QC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=qC(c[d>>2]|0)|0;a=c[(c[d>>2]|0)+8>>2]|0;c[f>>2]=a;if(!a){h=c[d>>2]|0;j=h+8|0;c[j>>2]=0;i=b;return}do{c[g>>2]=c[(c[f>>2]|0)+4>>2];_C(c[e>>2]|0,c[c[f>>2]>>2]|0)|0;VB(c[e>>2]|0,c[f>>2]|0);c[f>>2]=c[g>>2]}while((c[f>>2]|0)!=(c[(c[d>>2]|0)+8>>2]|0));h=c[d>>2]|0;j=h+8|0;c[j>>2]=0;i=b;return}function RC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+8>>2]=c[g>>2];d=c[f>>2]|0;c[d>>2]=c[d>>2]&-5|(c[h>>2]&1)<<2;if((c[c[f>>2]>>2]&3|0)!=3?(c[c[f>>2]>>2]&3|0)!=2:0){i=e;return}d=c[f>>2]|0;c[j>>2]=(c[c[f>>2]>>2]&3|0)==3?d+-32|0:d+32|0;c[(c[j>>2]|0)+8>>2]=c[g>>2];g=c[j>>2]|0;c[g>>2]=c[g>>2]&-5|(c[h>>2]&1)<<2;i=e;return}function SC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[e+16>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=c[g>>2];c[h>>2]=c[(c[f>>2]|0)+8>>2];do if(c[h>>2]|0)if((c[(c[h>>2]|0)+4>>2]|0)==(c[h>>2]|0)){c[(c[h>>2]|0)+4>>2]=c[j>>2];c[(c[j>>2]|0)+4>>2]=c[h>>2];break}else{c[(c[j>>2]|0)+4>>2]=c[(c[h>>2]|0)+4>>2];c[(c[h>>2]|0)+4>>2]=c[j>>2];break}else c[(c[j>>2]|0)+4>>2]=c[j>>2];while(0);if((c[c[f>>2]>>2]|0)>>>2&1){i=e;return}RC(c[f>>2]|0,c[j>>2]|0,0);i=e;return}function TC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+8>>2];while(1){if((c[(c[g>>2]|0)+4>>2]|0)==(c[f>>2]|0))break;c[g>>2]=c[(c[g>>2]|0)+4>>2]}c[(c[g>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];i=d;return}function UC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[e+16>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[g>>2];if((c[(c[f>>2]|0)+8>>2]|0)!=(c[h>>2]|0)){i=e;return}if((c[(c[h>>2]|0)+4>>2]|0)==(c[h>>2]|0))c[j>>2]=0;else c[j>>2]=c[(c[h>>2]|0)+4>>2];RC(c[f>>2]|0,c[j>>2]|0,0);i=e;return}function VC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=d;NC(c[f>>2]|0,c[g>>2]|0)|0;i=e;return}function WC(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;e=QD(a,bD(c[d>>2]|0)|0)|0;i=b;return e|0}function XC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=bD(c[e>>2]|0)|0;e=cD(b,c[f>>2]|0)|0;i=d;return e|0}function YC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;if(!(c[g>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[j>>2]=bD(c[f>>2]|0)|0;c[h>>2]=dD(c[j>>2]|0,c[g>>2]|0)|0;if(c[h>>2]|0){b=(c[h>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+1}else{c[k>>2]=20+(N3(c[g>>2]|0)|0);if(c[f>>2]|0)c[h>>2]=UB(c[f>>2]|0,c[k>>2]|0)|0;else c[h>>2]=N4(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=1;K3((c[h>>2]|0)+16|0,c[g>>2]|0)|0;c[(c[h>>2]|0)+12>>2]=(c[h>>2]|0)+16;Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,c[h>>2]|0,1)|0}c[e>>2]=c[(c[h>>2]|0)+12>>2];l=c[e>>2]|0;i=d;return l|0}function ZC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;if(!(c[g>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[j>>2]=bD(c[f>>2]|0)|0;c[h>>2]=dD(c[j>>2]|0,c[g>>2]|0)|0;if(c[h>>2]|0){b=(c[h>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+1}else{c[k>>2]=20+(N3(c[g>>2]|0)|0);if(c[f>>2]|0)c[h>>2]=UB(c[f>>2]|0,c[k>>2]|0)|0;else c[h>>2]=N4(c[k>>2]|0)|0;c[(c[h>>2]|0)+8>>2]=1|c[13168];K3((c[h>>2]|0)+16|0,c[g>>2]|0)|0;c[(c[h>>2]|0)+12>>2]=(c[h>>2]|0)+16;Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,c[h>>2]|0,1)|0}c[e>>2]=c[(c[h>>2]|0)+12>>2];l=c[e>>2]|0;i=d;return l|0}function _C(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;if(!(c[g>>2]|0)){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}c[j>>2]=bD(c[f>>2]|0)|0;c[h>>2]=dD(c[j>>2]|0,c[g>>2]|0)|0;if(((c[h>>2]|0)!=0?(c[(c[h>>2]|0)+12>>2]|0)==(c[g>>2]|0):0)?(g=(c[h>>2]|0)+8|0,c[g>>2]=(c[g>>2]|0)+-1,(((c[(c[h>>2]|0)+8>>2]|0)!=0?(c[13169]|0)!=0:0)&1|0)==0):0)PD(c[f>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;if(!(c[h>>2]|0)){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else{c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function $C(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}else{c[f>>2]=(c[e>>2]|0)+(0-16);c[d>>2]=c[(c[f>>2]|0)+8>>2]&c[13168];g=c[d>>2]|0;i=b;return g|0}return 0}function aD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=(c[d>>2]|0)+(0-16);d=(c[e>>2]|0)+8|0;c[d>>2]=c[d>>2]|c[13168];i=b;return}function bD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(c[d>>2]|0)c[e>>2]=(c[(c[d>>2]|0)+52>>2]|0)+20;else c[e>>2]=52680;if(c[c[e>>2]>>2]|0){f=c[e>>2]|0;g=c[f>>2]|0;i=b;return g|0}a=OD(c[d>>2]|0,52684,c[12993]|0)|0;c[c[e>>2]>>2]=a;c[13168]=-2147483648;c[13169]=~c[13168];f=c[e>>2]|0;g=c[f>>2]|0;i=b;return g|0}function cD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=dD(c[f>>2]|0,c[g>>2]|0)|0;if(c[h>>2]|0){c[e>>2]=c[(c[h>>2]|0)+12>>2];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function dD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g+12>>2]=c[f>>2];c[h>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,4)|0;i=d;return c[h>>2]|0}function eD(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[13184]=c[d>>2];i=b;return}function fD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[13186]=c[e>>2];c[13187]=c[f>>2];c[13188]=0;i=d;return}function gD(){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+48|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+32|0;m=e+8|0;n=e+4|0;o=e;if(!(c[13189]|0)){c[13189]=1;if(!(c[13190]|0))c[13190]=1;if(!(c[13180]|0))c[13180]=c[24743];if(!(c[13181]|0))c[13181]=c[24744];if(!((c[13191]|0)!=0?(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)!=0:0)){qD();p=hD(c[13180]|0,16384)|0;c[(c[13191]|0)+(c[13192]<<2)>>2]=p}rD()}a:while(1){c[h>>2]=c[13193];a[c[h>>2]>>0]=a[134308]|0;c[j>>2]=c[h>>2];c[g>>2]=c[13190];c[g>>2]=(c[g>>2]|0)+(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]|0);b:while(1){a[l>>0]=c[52776+(d[c[h>>2]>>0]<<2)>>2];if(b[101984+(c[g>>2]<<1)>>1]|0){c[13450]=c[g>>2];c[13451]=c[h>>2]}while(1){q=c[g>>2]|0;if((b[102380+((b[102170+(c[g>>2]<<1)>>1]|0)+(d[l>>0]|0)<<1)>>1]|0)==(c[g>>2]|0))break;c[g>>2]=b[102938+(q<<1)>>1];if((c[g>>2]|0)<93)continue;a[l>>0]=c[53808+(d[l>>0]<<2)>>2]}c[g>>2]=b[103148+((b[102170+(q<<1)>>1]|0)+(d[l>>0]|0)<<1)>>1];c[h>>2]=(c[h>>2]|0)+1;if((b[102170+(c[g>>2]<<1)>>1]|0)!=230)continue;c:while(1){c[k>>2]=b[101984+(c[g>>2]<<1)>>1];if(!(c[k>>2]|0)){c[h>>2]=c[13451];c[g>>2]=c[13450];c[k>>2]=b[101984+(c[g>>2]<<1)>>1]}c[13182]=c[j>>2];c[13183]=(c[h>>2]|0)-(c[j>>2]|0);a[134308]=a[c[h>>2]>>0]|0;a[c[h>>2]>>0]=0;c[13193]=c[h>>2];d:while(1){switch(c[k>>2]|0){case 1:{r=24;break a;break}case 12:{r=51;break a;break}case 13:{r=54;break a;break}case 14:{r=57;break a;break}case 15:{r=62;break a;break}case 16:{r=67;break a;break}case 17:{r=70;break a;break}case 18:{r=73;break a;break}case 19:{r=78;break a;break}case 20:{r=83;break a;break}case 21:{r=86;break a;break}case 23:{r=94;break a;break}case 33:{r=126;break a;break}case 39:case 38:case 37:case 36:{r=132;break a;break}case 2:{r=27;break b;break}case 3:{r=30;break b;break}case 4:{r=33;break b;break}case 5:{r=35;break b;break}case 6:{r=37;break b;break}case 7:{r=40;break b;break}case 8:{r=42;break b;break}case 9:{r=45;break b;break}case 10:{r=47;break b;break}case 11:{r=49;break b;break}case 22:{r=91;break b;break}case 24:{r=97;break b;break}case 25:{r=100;break b;break}case 26:{r=103;break b;break}case 27:{r=106;break b;break}case 28:{r=109;break b;break}case 29:{r=112;break b;break}case 30:{r=117;break b;break}case 31:{r=120;break b;break}case 32:{r=123;break b;break}case 34:{r=129;break b;break}case 0:{r=23;break d;break}case 35:break;default:{r=146;break b}}c[n>>2]=(c[h>>2]|0)-(c[13182]|0)-1;a[c[h>>2]>>0]=a[134308]|0;if(!(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+44>>2]|0)){c[13502]=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+16>>2];c[c[(c[13191]|0)+(c[13192]<<2)>>2]>>2]=c[13180];c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+44>>2]=1}if((c[13193]|0)>>>0<=((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+(c[13502]|0)|0)>>>0){r=136;break}switch(AD()|0){case 0:{r=144;break c;break}case 2:{r=145;break d;break}case 1:break;default:continue a}c[13503]=0;if(!(iD()|0)){r=142;break b}c[13193]=c[13182];c[k>>2]=35+(((c[13190]|0)-1|0)/2|0)+1}if((r|0)==23){r=0;a[c[h>>2]>>0]=a[134308]|0;c[h>>2]=c[13451];c[g>>2]=c[13450];continue}else if((r|0)==136){r=0;c[13193]=(c[13182]|0)+(c[n>>2]|0);c[g>>2]=yD()|0;c[o>>2]=zD(c[g>>2]|0)|0;c[j>>2]=c[13182];s=c[13193]|0;if(c[o>>2]|0){r=137;break}c[h>>2]=s;continue}else if((r|0)==145){r=0;c[13193]=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+(c[13502]|0);c[g>>2]=yD()|0;c[h>>2]=c[13193];c[j>>2]=c[13182];continue}}if((r|0)==137){r=0;p=s+1|0;c[13193]=p;c[h>>2]=p;c[g>>2]=c[o>>2];continue}else if((r|0)==144){r=0;c[13193]=(c[13182]|0)+(c[n>>2]|0);c[g>>2]=yD()|0;c[h>>2]=c[13193];c[j>>2]=c[13182];continue}}switch(r|0){case 27:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13184]=(c[13184]|0)+1;continue a;break}case 30:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13190]=3;continue a;break}case 33:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 35:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 37:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13190]=1;continue a;break}case 40:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 42:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;sD();continue a;break}case 45:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 47:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 49:{r=0;if((c[13183]|0)>>>0<=0)continue a;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;continue a;break}case 91:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13190]=5;uD();continue a;break}case 97:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;wD(136329);continue a;break}case 100:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;wD(134309);continue a;break}case 103:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13184]=(c[13184]|0)+1;continue a;break}case 106:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;wD(c[13182]|0);continue a;break}case 109:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13190]=7;c[13501]=1;uD();continue a;break}case 112:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13501]=(c[13501]|0)+-1;if(!(c[13501]|0)){r=116;break a}wD(c[13182]|0);continue a;break}case 117:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13501]=(c[13501]|0)+1;wD(c[13182]|0);continue a;break}case 120:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;wD(c[13182]|0);c[13184]=(c[13184]|0)+1;continue a;break}case 123:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;wD(c[13182]|0);continue a;break}case 129:{r=0;if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;h3(c[13182]|0,c[13183]|0,1,c[13181]|0)|0;continue a;break}case 142:{r=0;if(c[13503]|0)continue a;jD(c[13180]|0);continue a;break}case 146:{r=0;BD(134312);continue a;break}}}switch(r|0){case 24:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=-1;t=c[f>>2]|0;i=e;return t|0}case 51:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=259;t=c[f>>2]|0;i=e;return t|0}case 54:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=260;t=c[f>>2]|0;i=e;return t|0}case 57:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;if(!(c[13188]|0))c[13188]=258;c[f>>2]=258;t=c[f>>2]|0;i=e;return t|0}case 62:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;if(!(c[13188]|0))c[13188]=261;c[f>>2]=261;t=c[f>>2]|0;i=e;return t|0}case 67:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=263;t=c[f>>2]|0;i=e;return t|0}case 70:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=262;t=c[f>>2]|0;i=e;return t|0}case 73:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;if((c[13188]|0)==261){c[f>>2]=264;t=c[f>>2]|0;i=e;return t|0}else{c[f>>2]=45;t=c[f>>2]|0;i=e;return t|0}break}case 78:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;if((c[13188]|0)==258){c[f>>2]=264;t=c[f>>2]|0;i=e;return t|0}else{c[f>>2]=45;t=c[f>>2]|0;i=e;return t|0}break}case 83:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13526]=YC(c[13072]|0,c[13182]|0)|0;c[f>>2]=267;t=c[f>>2]|0;i=e;return t|0}case 86:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;if(tD()|0){c[m>>2]=(c[13183]|0)-1;a[c[h>>2]>>0]=a[134308]|0;r=(c[j>>2]|0)+(c[m>>2]|0)|0;c[h>>2]=r;c[13193]=r;c[13182]=c[j>>2];c[13183]=(c[h>>2]|0)-(c[j>>2]|0);a[134308]=a[c[h>>2]>>0]|0;a[c[h>>2]>>0]=0;c[13193]=c[h>>2]}c[13526]=YC(c[13072]|0,c[13182]|0)|0;c[f>>2]=267;t=c[f>>2]|0;i=e;return t|0}case 94:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[13190]=1;vD();c[f>>2]=268;t=c[f>>2]|0;i=e;return t|0}case 116:{c[13190]=1;xD();c[f>>2]=268;t=c[f>>2]|0;i=e;return t|0}case 126:{if((c[13183]|0)>>>0>0)c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]=(a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0)==10&1;c[f>>2]=a[c[13182]>>0];t=c[f>>2]|0;i=e;return t|0}case 132:{c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}}return 0}function hD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=kD(48)|0;if(!(c[g>>2]|0))BD(134363);c[(c[g>>2]|0)+12>>2]=c[f>>2];f=kD((c[(c[g>>2]|0)+12>>2]|0)+2|0)|0;c[(c[g>>2]|0)+4>>2]=f;if(!(c[(c[g>>2]|0)+4>>2]|0))BD(134363);c[(c[g>>2]|0)+20>>2]=1;CD(c[g>>2]|0,c[e>>2]|0);i=d;return c[g>>2]|0}function iD(){return 1}function jD(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!((c[13191]|0)!=0?(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)!=0:0)){qD();a=hD(c[13180]|0,16384)|0;c[(c[13191]|0)+(c[13192]<<2)>>2]=a}if(!(c[13191]|0)){e=0;f=c[d>>2]|0;CD(e,f);rD();i=b;return}e=c[(c[13191]|0)+(c[13192]<<2)>>2]|0;f=c[d>>2]|0;CD(e,f);rD();i=b;return}function kD(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=N4(c[d>>2]|0)|0;i=b;return a|0}function lD(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(!(c[e>>2]|0)){i=d;return}c[(c[e>>2]|0)+16>>2]=0;a[c[(c[e>>2]|0)+4>>2]>>0]=0;a[(c[(c[e>>2]|0)+4>>2]|0)+1>>0]=0;c[(c[e>>2]|0)+8>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+28>>2]=1;c[(c[e>>2]|0)+44>>2]=0;if(c[13191]|0)f=c[(c[13191]|0)+(c[13192]<<2)>>2]|0;else f=0;if((c[e>>2]|0)!=(f|0)){i=d;return}rD();i=d;return}function mD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Q4(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function nD(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+2096|0;e=d;f=d+32|0;g=d+40|0;h=d+16|0;c[f>>2]=b;dA(h,1024,d+1064|0);if(c[13185]|0){gA(h,c[13185]|0)|0;gA(h,134408)|0}gA(h,c[f>>2]|0)|0;c[e>>2]=c[13184];k3(g,134411,e)|0;gA(h,g)|0;gA(h,c[13182]|0)|0;gA(h,134430)|0;if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;g=h+4|0;e=c[g>>2]|0;c[g>>2]=e+1;a[e>>0]=0;e=c[h>>2]|0;c[h+4>>2]=e;$z(1,e,d+8|0)|0;hA(h);i=d;return}function oD(){DD(64,c[13182]|0);return}function pD(){var a=0;if(!(c[13191]|0)){a=0;lD(a);return}a=c[(c[13191]|0)+(c[13192]<<2)>>2]|0;lD(a);return}function qD(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;if(!(c[13191]|0)){c[b>>2]=1;c[13191]=kD(c[b>>2]<<2)|0;if(!(c[13191]|0))BD(134753);$4(c[13191]|0,0,c[b>>2]<<2|0)|0;c[13504]=c[b>>2];c[13192]=0;i=a;return}if((c[13192]|0)>>>0<((c[13504]|0)-1|0)>>>0){i=a;return}c[d>>2]=8;c[b>>2]=(c[13504]|0)+(c[d>>2]|0);c[13191]=mD(c[13191]|0,c[b>>2]<<2)|0;if(!(c[13191]|0))BD(134753);$4((c[13191]|0)+(c[13504]<<2)|0,0,c[d>>2]<<2|0)|0;c[13504]=c[b>>2];i=a;return}function rD(){var b=0;c[13502]=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+16>>2];b=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+8>>2]|0;c[13193]=b;c[13182]=b;c[13180]=c[c[(c[13191]|0)+(c[13192]<<2)>>2]>>2];a[134308]=a[c[13193]>>0]|0;return}function sD(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;i=i+48|0;d=b;e=b+32|0;f=b+28|0;g=b+24|0;h=b+20|0;j=b+16|0;k=b+12|0;c[h>>2]=(c[13182]|0)+1;if(!(P3(c[h>>2]|0,134737,4)|0))c[h>>2]=(c[h>>2]|0)+4;l=c[h>>2]|0;c[d>>2]=g;c[d+4>>2]=b+36;c[d+8>>2]=f;c[e>>2]=l3(l,134742,d)|0;if((c[e>>2]|0)<=0){i=b;return}c[13184]=(c[g>>2]|0)-1;if((c[e>>2]|0)<=1){i=b;return}c[j>>2]=(c[h>>2]|0)+(c[f>>2]|0);c[k>>2]=c[j>>2];while(1){if(a[c[k>>2]>>0]|0)m=(a[c[k>>2]>>0]|0)!=34;else m=0;n=c[k>>2]|0;if(!m)break;c[k>>2]=n+1}if((n|0)==(c[j>>2]|0)){i=b;return}a[c[k>>2]>>0]=0;ED(c[j>>2]|0,(c[k>>2]|0)-(c[j>>2]|0)|0);i=b;return}function tD(){var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;i=i+2096|0;e=b+8|0;f=b;g=b+32|0;h=b+2088|0;j=b+1064|0;k=b+40|0;l=b+16|0;m=b+12|0;a[h>>0]=a[(c[13182]|0)+((c[13183]|0)-1)>>0]|0;if((p1(d[h>>0]|0)|0)==0?(d[h>>0]|0|0)!=46:0){if(c[13185]|0)c[m>>2]=c[13185];else c[m>>2]=134645;dA(l,1024,j);gA(l,134651)|0;gA(l,c[13182]|0)|0;c[f>>2]=c[13184];k3(k,134695,f)|0;gA(l,k)|0;gA(l,c[m>>2]|0)|0;gA(l,134712)|0;if((c[l+4>>2]|0)>>>0>=(c[l+8>>2]|0)>>>0)eA(l,1)|0;m=l+4|0;k=c[m>>2]|0;c[m>>2]=k+1;a[k>>0]=0;k=c[l>>2]|0;c[l+4>>2]=k;$z(0,k,e)|0;hA(l);c[g>>2]=1;n=c[g>>2]|0;i=b;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=b;return n|0}function uD(){if(!(c[13505]|0)){c[13505]=N4(1024)|0;c[13507]=(c[13505]|0)+1024}c[13506]=c[13505];a[c[13506]>>0]=0;return}function vD(){c[13526]=YC(c[13072]|0,c[13505]|0)|0;return}function wD(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+12|0;g=d+4|0;h=d;c[e>>2]=b;if((c[13506]|0)>>>0>(c[13505]|0)>>>0)c[13506]=(c[13506]|0)+-1;while(1){b=c[e>>2]|0;c[e>>2]=b+1;j=a[b>>0]|0;b=c[13506]|0;c[13506]=b+1;a[b>>0]=j;a[f>>0]=j;if((a[f>>0]|0)!=0?(c[13506]|0)>>>0<(c[13507]|0)>>>0:0)continue;if(a[f>>0]|0){c[g>>2]=(c[13507]|0)-(c[13505]|0);c[h>>2]=(c[13506]|0)-(c[13505]|0);c[g>>2]=c[g>>2]<<1;c[13505]=Q4(c[13505]|0,c[g>>2]|0)|0;c[13507]=(c[13505]|0)+(c[g>>2]|0);c[13506]=(c[13505]|0)+(c[h>>2]|0)}if(!(a[f>>0]|0))break}i=d;return}function xD(){c[13526]=ZC(c[13072]|0,c[13505]|0)|0;return}function yD(){var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+4|0;g=e;h=e+8|0;c[f>>2]=c[13190];c[f>>2]=(c[f>>2]|0)+(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+28>>2]|0);c[g>>2]=c[13182];while(1){if((c[g>>2]|0)>>>0>=(c[13193]|0)>>>0)break;if(a[c[g>>2]>>0]|0)j=c[52776+(d[c[g>>2]>>0]<<2)>>2]|0;else j=1;a[h>>0]=j;if(b[101984+(c[f>>2]<<1)>>1]|0){c[13450]=c[f>>2];c[13451]=c[g>>2]}while(1){k=c[f>>2]|0;if((b[102380+((b[102170+(c[f>>2]<<1)>>1]|0)+(d[h>>0]|0)<<1)>>1]|0)==(c[f>>2]|0))break;c[f>>2]=b[102938+(k<<1)>>1];if((c[f>>2]|0)<93)continue;a[h>>0]=c[53808+(d[h>>0]<<2)>>2]}c[f>>2]=b[103148+((b[102170+(k<<1)>>1]|0)+(d[h>>0]|0)<<1)>>1];c[g>>2]=(c[g>>2]|0)+1}i=e;return c[f>>2]|0}function zD(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;k=f+12|0;c[g>>2]=e;c[j>>2]=c[13193];a[k>>0]=1;if(b[101984+(c[g>>2]<<1)>>1]|0){c[13450]=c[g>>2];c[13451]=c[j>>2]}while(1){l=c[g>>2]|0;if((b[102380+((b[102170+(c[g>>2]<<1)>>1]|0)+(d[k>>0]|0)<<1)>>1]|0)==(c[g>>2]|0))break;c[g>>2]=b[102938+(l<<1)>>1];if((c[g>>2]|0)<93)continue;a[k>>0]=c[53808+(d[k>>0]<<2)>>2]}c[g>>2]=b[103148+((b[102170+(l<<1)>>1]|0)+(d[k>>0]|0)<<1)>>1];c[h>>2]=(c[g>>2]|0)==92&1;i=f;return ((c[h>>2]|0)!=0?0:c[g>>2]|0)|0}function AD(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=i;i=i+48|0;d=b+40|0;e=b+36|0;f=b+32|0;g=b+28|0;h=b+24|0;j=b+20|0;k=b+16|0;l=b+12|0;m=b+8|0;n=b+4|0;o=b;c[e>>2]=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2];c[f>>2]=c[13182];if((c[13193]|0)>>>0>((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+((c[13502]|0)+1)|0)>>>0)BD(134469);p=(c[13193]|0)-(c[13182]|0)|0;if(!(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+40>>2]|0))if((p-0|0)==1){c[d>>2]=1;q=c[d>>2]|0;i=b;return q|0}else{c[d>>2]=2;q=c[d>>2]|0;i=b;return q|0}c[g>>2]=p-1;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break;p=c[f>>2]|0;c[f>>2]=p+1;r=a[p>>0]|0;p=c[e>>2]|0;c[e>>2]=p+1;a[p>>0]=r;c[h>>2]=(c[h>>2]|0)+1}if((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+44>>2]|0)==2){c[13502]=0;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+16>>2]=0}else{c[k>>2]=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+12>>2]|0)-(c[g>>2]|0)-1;while(1){if((c[k>>2]|0)>>>0>0)break;c[l>>2]=c[(c[13191]|0)+(c[13192]<<2)>>2];c[m>>2]=(c[13193]|0)-(c[(c[l>>2]|0)+4>>2]|0);h=c[l>>2]|0;if(c[(c[l>>2]|0)+20>>2]|0){c[n>>2]=c[h+12>>2]<<1;e=(c[l>>2]|0)+12|0;f=c[e>>2]|0;if((c[n>>2]|0)>>>0<=0){r=(c[l>>2]|0)+12|0;c[r>>2]=(c[r>>2]|0)+((f>>>0)/8|0)}else c[e>>2]=f<<1;f=mD(c[(c[l>>2]|0)+4>>2]|0,(c[(c[l>>2]|0)+12>>2]|0)+2|0)|0;c[(c[l>>2]|0)+4>>2]=f}else c[h+4>>2]=0;if(!(c[(c[l>>2]|0)+4>>2]|0))BD(134525);c[13193]=(c[(c[l>>2]|0)+4>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+12>>2]|0)-(c[g>>2]|0)-1}if((c[k>>2]|0)>>>0>8192)c[k>>2]=8192;m=Hb[c[c[(c[13186]|0)+8>>2]>>2]&63](c[13187]|0,(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0,c[k>>2]|0)|0;c[13502]=m;if(m>>>0<0)BD(134569);c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+16>>2]=c[13502]}do if(!(c[13502]|0))if(!(c[g>>2]|0)){c[j>>2]=1;jD(c[13180]|0);break}else{c[j>>2]=2;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+44>>2]=2;break}else c[j>>2]=0;while(0);if(((c[13502]|0)+(c[g>>2]|0)|0)>>>0>(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+12>>2]|0)>>>0?(c[o>>2]=(c[13502]|0)+(c[g>>2]|0)+((c[13502]|0)>>>1),m=mD(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0,c[o>>2]|0)|0,c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]=m,(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)==0):0)BD(134598);c[13502]=(c[13502]|0)+(c[g>>2]|0);a[(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+(c[13502]|0)>>0]=0;a[(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+((c[13502]|0)+1)>>0]=0;c[13182]=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2];c[d>>2]=c[j>>2];q=c[d>>2]|0;i=b;return q|0}function BD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;a=c[24742]|0;c[d>>2]=c[e>>2];Y2(a,134465,d)|0;wb(2)}function CD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(L1()|0)>>2];lD(c[e>>2]|0);c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+40>>2]=1;if(c[13191]|0)h=c[(c[13191]|0)+(c[13192]<<2)>>2]|0;else h=0;if((c[e>>2]|0)!=(h|0)){c[(c[e>>2]|0)+32>>2]=1;c[(c[e>>2]|0)+36>>2]=0}c[(c[e>>2]|0)+24>>2]=(c[f>>2]|0)!=0?0:0;f=c[g>>2]|0;c[(L1()|0)>>2]=f;i=d;return}function DD(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[13193];a[c[h>>2]>>0]=a[134308]|0;if((c[h>>2]|0)>>>0<((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+2|0)>>>0){c[j>>2]=(c[13502]|0)+2;c[k>>2]=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+12>>2]|0)+2);c[l>>2]=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+(c[j>>2]|0);while(1){if((c[l>>2]|0)>>>0<=(c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)>>>0)break;j=(c[l>>2]|0)+-1|0;c[l>>2]=j;d=a[j>>0]|0;j=(c[k>>2]|0)+-1|0;c[k>>2]=j;a[j>>0]=d}c[h>>2]=(c[h>>2]|0)+((c[k>>2]|0)-(c[l>>2]|0));c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)-(c[l>>2]|0));l=c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+12>>2]|0;c[13502]=l;c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+16>>2]=l;if((c[h>>2]|0)>>>0<((c[(c[(c[13191]|0)+(c[13192]<<2)>>2]|0)+4>>2]|0)+2|0)>>>0)BD(134433)}l=c[f>>2]&255;f=(c[h>>2]|0)+-1|0;c[h>>2]=f;a[f>>0]=l;c[13182]=c[g>>2];a[134308]=a[c[h>>2]>>0]|0;c[13193]=c[h>>2];i=e;return}function ED(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>(c[13508]|0)){if(c[13508]|0)c[13509]=Q4(c[13509]|0,(c[f>>2]|0)+1|0)|0;else c[13509]=N4((c[f>>2]|0)+1|0)|0;c[13508]=c[f>>2]}K3(c[13509]|0,c[e>>2]|0)|0;c[13185]=c[13509];i=d;return}function FD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(((c[h>>2]|0)!=0?(tB(c[g>>2]|0,0,c[h>>2]|0,k,0)|0)!=0:0)?(d=KD(c[g>>2]|0,c[k>>2]|0)|0,c[l>>2]=d,(d|0)!=0):0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=e;return m|0}if((c[j>>2]|0)!=0?(tB(c[g>>2]|0,0,c[h>>2]|0,k,1)|0)!=0:0){c[l>>2]=LD(c[g>>2]|0,c[k>>2]|0)|0;xB(c[g>>2]|0,0,c[l>>2]|0);c[f>>2]=c[l>>2];m=c[f>>2]|0;i=e;return m|0}c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}function GD(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Hb[c[c[(c[d>>2]|0)+40>>2]>>2]&63](c[(c[d>>2]|0)+40>>2]|0,0,128)|0;i=b;return a|0}function HD(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=ID(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=0;i=b;return f|0}f=Hb[c[c[(c[e>>2]|0)+40>>2]>>2]&63](c[(c[e>>2]|0)+40>>2]|0,c[d>>2]|0,8)|0;i=b;return f|0}function ID(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+44>>2]|0}function JD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Hb[c[c[(c[e>>2]|0)+40>>2]>>2]&63](c[(c[e>>2]|0)+40>>2]|0,c[f>>2]|0,2)|0;i=d;return b|0}function KD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+64|0;e=d+60|0;f=d+56|0;g=d;c[e>>2]=a;c[f>>2]=b;RD(c[e>>2]|0,c[(c[e>>2]|0)+40>>2]|0,52224);c[g+4>>2]=c[f>>2];f=Hb[c[c[(c[e>>2]|0)+40>>2]>>2]&63](c[(c[e>>2]|0)+40>>2]|0,g,4)|0;i=d;return f|0}function LD(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;c[j>>2]=KD(c[g>>2]|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];k=c[f>>2]|0;i=e;return k|0}else{c[j>>2]=UB(c[g>>2]|0,56)|0;c[(c[j>>2]|0)+52>>2]=c[(c[g>>2]|0)+52>>2];c[(c[j>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];d=(c[j>>2]|0)+12|0;a[d>>0]=a[d>>0]&-9;c[(c[j>>2]|0)+44>>2]=c[g>>2];c[(c[j>>2]|0)+48>>2]=c[(c[g>>2]|0)+48>>2];c[(c[j>>2]|0)+4>>2]=c[h>>2];c[f>>2]=hB(c[j>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}return 0}function MD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;h=f+12|0;j=f+8|0;k=f;c[f+16>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f+4>>2]=e;c[k>>2]=c[13510];e=(c[h>>2]|0)!=0;do if(c[k>>2]|0){d=c[k>>2]|0;if(e){VB(d,c[h>>2]|0);break}c[g>>2]=UB(d,c[j>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}else{if(e){O4(c[h>>2]|0);break}c[g>>2]=N4(c[j>>2]|0)|0;l=c[g>>2]|0;i=f;return l|0}while(0);c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}function ND(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=c[13510];if(c[g>>2]|0){VB(c[g>>2]|0,c[f>>2]|0);i=e;return}else{O4(c[f>>2]|0);i=e;return}}function OD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+28>>2];c[(c[g>>2]|0)+28>>2]=7;c[13510]=c[f>>2];c[k>>2]=Nz(c[g>>2]|0,c[h>>2]|0)|0;c[(c[g>>2]|0)+28>>2]=c[j>>2];c[13510]=0;i=e;return c[k>>2]|0}function PD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[13510]=c[f>>2];f=Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,c[h>>2]|0,2)|0;i=e;return f|0}function QD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=Vz(c[g>>2]|0,0,0)|0;c[h>>2]=c[(c[j>>2]|0)+28>>2];c[(c[j>>2]|0)+28>>2]=7;c[13510]=c[f>>2];if(Jz(c[g>>2]|0)|0){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}else{c[(c[j>>2]|0)+28>>2]=c[h>>2];c[13510]=0;c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function RD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[g>>2]|0)){i=e;return}d=Vz(c[f>>2]|0,0,0)|0;if((d|0)==(c[g>>2]|0)){i=e;return}Vz(c[f>>2]|0,c[g>>2]|0,0)|0;i=e;return}function SD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=($C(c[f>>2]|0)|0)!=0;a=c[f>>2]|0;f=c[g>>2]|0;if(b){c[e>>2]=WD(a,f)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=XD(a,f)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function TD(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;e=SD(a,YD(c[d>>2]|0)|0)|0;i=b;return e|0}function UD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0)){j=7;break}if((ZD(c[h>>2]|0)|0)==0?(eC(c[h>>2]|0,c[g>>2]|0,0)|0)!=0:0){j=5;break}c[h>>2]=HD(c[h>>2]|0)|0}if((j|0)==5){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==7){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function VD(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;c[13511]=0;d=yA(c[g>>2]|0,134803)|0;c[j>>2]=d;if(((d|0)!=0?(p1(a[c[j>>2]>>0]|0)|0)!=0:0)?(c[k>>2]=z3(c[j>>2]|0,0,10)|0,(c[k>>2]|0)==0|(c[k>>2]|0)>=60):0)c[13512]=c[k>>2];_D(c[g>>2]|0,1,0);if(($D(c[g>>2]|0,c[h>>2]|0,1)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((aE(c[g>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((bE(c[g>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}else{c[13512]=128;c[f>>2]=Fb[c[(c[(c[(c[g>>2]|0)+52>>2]|0)+8>>2]|0)+8>>2]&63](c[h>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function WD(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];c[j>>2]=c[g>>2];f=c[j>>2]|0;c[j>>2]=f+1;a[f>>0]=60;while(1){if(!(a[c[h>>2]>>0]|0))break;f=c[h>>2]|0;c[h>>2]=f+1;d=a[f>>0]|0;f=c[j>>2]|0;c[j>>2]=f+1;a[f>>0]=d}h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=62;a[c[j>>2]>>0]=0;i=e;return c[g>>2]|0}function XD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+48|0;g=f+40|0;h=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+44|0;n=f+20|0;o=f+16|0;p=f+12|0;q=f+8|0;r=f+4|0;s=f;c[h>>2]=b;c[j>>2]=e;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[r>>2]=0;if((c[h>>2]|0)!=0?(a[c[h>>2]>>0]|0)!=0:0){c[k>>2]=c[h>>2];c[l>>2]=c[j>>2];e=c[l>>2]|0;c[l>>2]=e+1;a[e>>0]=34;e=c[k>>2]|0;c[k>>2]=e+1;a[m>>0]=a[e>>0]|0;if((p1(d[m>>0]|0)|0)==0?(d[m>>0]|0)!=46:0)t=(d[m>>0]|0)==45;else t=1;c[q>>2]=t&1;a:while(1){if(!(a[m>>0]|0))break;do if((d[m>>0]|0)!=34){t=d[m>>0]|0;if(!(c[q>>2]|0)){if(l1(t)|0)break;if((d[m>>0]|0)==95)break;if(!(n1(d[m>>0]|0)|0))break;c[p>>2]=1;break}if((t|0)==45){if(!(c[n>>2]|0))break;c[q>>2]=0;c[p>>2]=1;break}if((d[m>>0]|0)==46){t=c[o>>2]|0;c[o>>2]=t+1;if(!t)break;c[q>>2]=0;c[p>>2]=1;break}else{if(p1(d[m>>0]|0)|0)break;c[q>>2]=0;c[p>>2]=1;break}}else{t=c[l>>2]|0;c[l>>2]=t+1;a[t>>0]=92;c[p>>2]=1}while(0);t=a[m>>0]|0;e=c[l>>2]|0;c[l>>2]=e+1;a[e>>0]=t;t=c[k>>2]|0;c[k>>2]=t+1;a[m>>0]=a[t>>0]|0;c[n>>2]=(c[n>>2]|0)+1;if(!(c[13512]|0))continue;do if((((((d[m>>0]|0)!=0&(c[r>>2]|0)!=0?(l1(a[(c[l>>2]|0)+-1>>0]|0)|0)==0:0)?(a[(c[l>>2]|0)+-1>>0]|0)!=46:0)?(a[(c[l>>2]|0)+-1>>0]|0)!=45:0)?(n1(a[(c[l>>2]|0)+-1>>0]|0)|0)!=0:0)?(a[(c[l>>2]|0)+-1>>0]|0)!=92:0){if((((l1(d[m>>0]|0)|0)==0?(d[m>>0]|0)!=46:0)?(d[m>>0]|0)!=45:0)?(n1(d[m>>0]|0)|0)!=0:0)break;t=c[l>>2]|0;c[l>>2]=t+1;a[t>>0]=92;t=c[l>>2]|0;c[l>>2]=t+1;a[t>>0]=10;c[p>>2]=1;c[r>>2]=0;c[n>>2]=0;continue a}while(0);if(!(d[m>>0]|0))continue;if((c[n>>2]|0)<(c[13512]|0))continue;b:do if(((((l1(a[(c[l>>2]|0)+-1>>0]|0)|0)==0?(a[(c[l>>2]|0)+-1>>0]|0)!=46:0)?(a[(c[l>>2]|0)+-1>>0]|0)!=45:0)?(n1(a[(c[l>>2]|0)+-1>>0]|0)|0)!=0:0)?(a[(c[l>>2]|0)+-1>>0]|0)!=92:0){do if((l1(d[m>>0]|0)|0)==0?(d[m>>0]|0)!=46:0){if((d[m>>0]|0)==45)break;if(n1(d[m>>0]|0)|0)break b}while(0);t=c[l>>2]|0;c[l>>2]=t+1;a[t>>0]=92;t=c[l>>2]|0;c[l>>2]=t+1;a[t>>0]=10;c[p>>2]=1;c[n>>2]=0;continue a}while(0);c[r>>2]=1}r=c[l>>2]|0;c[l>>2]=r+1;a[r>>0]=34;a[c[l>>2]>>0]=0;do if(!(c[p>>2]|0)){if((c[n>>2]|0)==1){if((a[c[h>>2]>>0]|0)==46)break;if((a[c[h>>2]>>0]|0)==45)break}c[s>>2]=54068;while(1){if(!(c[c[s>>2]>>2]|0)){u=59;break}if(!(F3(c[c[s>>2]>>2]|0,c[h>>2]|0)|0)){u=57;break}c[s>>2]=(c[s>>2]|0)+4}if((u|0)==57){c[g>>2]=c[j>>2];v=c[g>>2]|0;i=f;return v|0}else if((u|0)==59){c[g>>2]=c[h>>2];v=c[g>>2]|0;i=f;return v|0}}while(0);c[g>>2]=c[j>>2];v=c[g>>2]|0;i=f;return v|0}c[g>>2]=134866;v=c[g>>2]|0;i=f;return v|0}function YD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((((N3(c[d>>2]|0)|0)<<1)+2|0)>>>0>1024)f=((N3(c[d>>2]|0)|0)<<1)+2|0;else f=1024;c[e>>2]=f;if((c[e>>2]|0)<=(c[13515]|0)){g=c[13516]|0;i=b;return g|0}if(c[13516]|0)c[13516]=Q4(c[13516]|0,c[e>>2]|0)|0;else c[13516]=N4(c[e>>2]|0)|0;c[13515]=c[e>>2];g=c[13516]|0;i=b;return g|0}function ZD(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[f>>2]=b;c[n>>2]=wB(c[f>>2]|0)|0;if((c[n>>2]|0)!=0?(a[c[n>>2]>>0]|0)!=37:0){c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}n=pA(c[f>>2]|0)|0;c[j>>2]=n;a:do if((n|0)!=0?(b=pA(ID(c[f>>2]|0)|0)|0,c[k>>2]=b,(b|0)!=0):0){c[l>>2]=pA(rC(c[f>>2]|0)|0)|0;c[h>>2]=Pz(c[(c[l>>2]|0)+8>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[h>>2]|0))break a;if(((c[(c[(c[j>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]|0)!=0?(c[(c[(c[k>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]|0)!=0:0)?(J3(c[(c[(c[j>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[(c[k>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]|0)|0)!=0:0)break;c[g>>2]=(c[g>>2]|0)+1}c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}while(0);c[m>>2]=jA(c[f>>2]|0,0)|0;if(!(c[m>>2]|0)){c[e>>2]=1;o=c[e>>2]|0;i=d;return o|0}if((Pz(c[(c[m>>2]|0)+8>>2]|0)|0)<=0?(Pz(c[(c[m>>2]|0)+8+4>>2]|0)|0)<=0:0){c[e>>2]=1;o=c[e>>2]|0;i=d;return o|0}c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}function _D(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=c[f>>2]|0;c[d>>2]=c[d>>2]&-9|(c[h>>2]&1)<<3;c[j>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;_D(c[j>>2]|0,0,c[h>>2]|0);c[j>>2]=HD(c[j>>2]|0)|0}if(!(c[g>>2]|0)){i=e;return}c[k>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;g=c[k>>2]|0;c[g>>2]=c[g>>2]&-9|(c[h>>2]&1)<<3;c[l>>2]=OA(c[f>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;g=c[l>>2]|0;c[g>>2]=c[g>>2]&-9|(c[h>>2]&1)<<3;c[l>>2]=QA(c[f>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(c[f>>2]|0,c[k>>2]|0)|0}i=e;return}function $D(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[p>>2]=0;a[134847]=(c[c[h>>2]>>2]|0)>>>3&1;c[o>>2]=178518;if((c[k>>2]|0)==0?(ID(c[h>>2]|0)|0)!=0:0)c[n>>2]=147211;else{c[p>>2]=1;if(a[(c[h>>2]|0)+12>>0]&1)c[n>>2]=134848;else c[n>>2]=178518;if(pB(c[h>>2]|0)|0)c[o>>2]=134851;c[13513]=qA(c[h>>2]|0,2,149070,0)|0;c[13514]=qA(c[h>>2]|0,2,149061,0)|0}c[l>>2]=wB(c[h>>2]|0)|0;c[m>>2]=140232;if(!((c[l>>2]|0)!=0?(a[c[l>>2]>>0]|0)!=37:0)){c[l>>2]=178518;c[m>>2]=178518}if((cE(c[h>>2]|0,c[j>>2]|0)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}if((dE(c[h>>2]|0,c[j>>2]|0,c[o>>2]|0)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}if((c[p>>2]|0)!=0?1:(a[c[l>>2]>>0]|0)!=0){if((dE(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}if((dE(c[h>>2]|0,c[j>>2]|0,140225)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}}if((a[c[l>>2]>>0]|0)!=0?(oE(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0)|0)==-1:0){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}if((dE(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}if((dE(c[h>>2]|0,c[j>>2]|0,134859)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}c[13511]=(c[13511]|0)+1;if((tE(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)==-1){c[g>>2]=-1;q=c[g>>2]|0;i=f;return q|0}else{k=c[h>>2]|0;c[k>>2]=c[k>>2]&-9|8;c[g>>2]=0;q=c[g>>2]|0;i=f;return q|0}return 0}function aE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;if((eE(c[f>>2]|0,c[g>>2]|0)|0)==-1){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}c[l>>2]=jA(rC(c[f>>2]|0)|0,0)|0;c[h>>2]=$B(c[f>>2]|0)|0;a:while(1){if(!(c[h>>2]|0)){n=26;break}if(fE(c[f>>2]|0,c[h>>2]|0,(c[c[h>>2]>>2]|0)>>>4)|0){if(c[l>>2]|0)o=c[(c[l>>2]|0)+8>>2]|0;else o=0;if((gE(c[h>>2]|0,c[g>>2]|0,o)|0)==-1){n=9;break}}c[j>>2]=c[h>>2];c[k>>2]=OA(c[f>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;b=c[k>>2]|0;if((c[j>>2]|0)!=(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)?(b=c[k>>2]|0,(fE(c[f>>2]|0,c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,(c[c[h>>2]>>2]|0)>>>4)|0)!=0):0){b=c[k>>2]|0;if(c[l>>2]|0)p=c[(c[l>>2]|0)+8>>2]|0;else p=0;if((gE(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[g>>2]|0,p)|0)==-1){n=17;break a}b=c[k>>2]|0;c[j>>2]=c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]}if(hE(c[f>>2]|0,c[k>>2]|0)|0){if(c[l>>2]|0)q=c[(c[l>>2]|0)+8+4>>2]|0;else q=0;if((iE(c[k>>2]|0,c[g>>2]|0,q)|0)==-1){n=23;break a}}c[k>>2]=QA(c[f>>2]|0,c[k>>2]|0)|0}c[h>>2]=aC(c[f>>2]|0,c[h>>2]|0)|0}if((n|0)==9){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}else if((n|0)==17){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}else if((n|0)==23){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}else if((n|0)==26){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}return 0}function bE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;c[13511]=(c[13511]|0)+-1;do if((cE(c[f>>2]|0,c[g>>2]|0)|0)!=-1)if((dE(c[f>>2]|0,c[g>>2]|0,148626)|0)==-1){c[e>>2]=-1;break}else{c[e>>2]=0;break}else c[e>>2]=-1;while(0);i=d;return c[e>>2]|0}function cE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[13511];while(1){if((c[h>>2]|0)<=0){j=6;break}if((dE(c[f>>2]|0,c[g>>2]|0,193390)|0)==-1){j=4;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==4){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==6){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function dE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Ob[c[(c[(c[(c[f>>2]|0)+52>>2]|0)+8>>2]|0)+4>>2]&127](c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function eE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0)){j=12;break}f=(ZD(c[h>>2]|0)|0)!=0;b=c[h>>2]|0;a=c[g>>2]|0;if(!f){if(($D(b,a,0)|0)==-1){j=6;break}if((aE(c[h>>2]|0,c[g>>2]|0)|0)==-1){j=8;break}if((bE(c[h>>2]|0,c[g>>2]|0)|0)==-1){j=10;break}}else eE(b,a)|0;c[h>>2]=HD(c[h>>2]|0)|0}if((j|0)==6){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==8){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==10){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==12){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function fE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;do if((UD(c[g>>2]|0,c[h>>2]|0)|0)==0?(qE(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0)!=0:0){if((rE(c[g>>2]|0,c[h>>2]|0)|0)==0?(sE(c[g>>2]|0,c[h>>2]|0)|0)==0:0)break;c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}while(0);c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}function gE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=qC(c[g>>2]|0)|0;if((cE(c[k>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((jE(c[g>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((lE(c[g>>2]|0)|0)==0?(mE(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0)==-1:0){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}c[f>>2]=dE(c[k>>2]|0,c[h>>2]|0,134814)|0;l=c[f>>2]|0;i=e;return l|0}function hE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0)){j=7;break}if((ZD(c[h>>2]|0)|0)==0?(YA(c[h>>2]|0,c[g>>2]|0,0)|0)!=0:0){j=5;break}c[h>>2]=HD(c[h>>2]|0)|0}if((j|0)==5){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==7){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}return 0}function iE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=c[g>>2]|0;c[k>>2]=c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2];d=c[g>>2]|0;c[l>>2]=c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];c[m>>2]=qC(c[k>>2]|0)|0;do if((cE(c[m>>2]|0,c[h>>2]|0)|0)==-1)c[f>>2]=-1;else{if((jE(c[k>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;break}if((kE(c[g>>2]|0,c[h>>2]|0,c[13513]|0)|0)==-1){c[f>>2]=-1;break}d=c[m>>2]|0;b=c[h>>2]|0;a=(nB(qC(c[k>>2]|0)|0)|0)!=0;if((dE(d,b,a?138595:138600)|0)==-1){c[f>>2]=-1;break}if((jE(c[l>>2]|0,c[h>>2]|0)|0)==-1){c[f>>2]=-1;break}if((kE(c[g>>2]|0,c[h>>2]|0,c[13514]|0)|0)==-1){c[f>>2]=-1;break}a=(lE(c[g>>2]|0)|0)!=0;b=c[g>>2]|0;if(a){if((nE(b,c[h>>2]|0,1)|0)==-1){c[f>>2]=-1;break}}else if((mE(b,c[h>>2]|0,c[j>>2]|0)|0)==-1){c[f>>2]=-1;break}c[f>>2]=dE(c[m>>2]|0,c[h>>2]|0,134814)|0}while(0);i=e;return c[f>>2]|0}function jE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+24|0;l=d+4|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=wB(c[g>>2]|0)|0;c[l>>2]=qC(c[g>>2]|0)|0;if(c[j>>2]|0){if((oE(c[l>>2]|0,c[h>>2]|0,c[j>>2]|0)|0)==-1){c[f>>2]=-1;m=c[f>>2]|0;i=d;return m|0}}else{c[e>>2]=c[(c[g>>2]|0)+4>>2];k3(k,134834,e)|0;if((dE(c[l>>2]|0,c[h>>2]|0,k)|0)==-1){c[f>>2]=-1;m=c[f>>2]|0;i=d;return m|0}}c[f>>2]=0;m=c[f>>2]|0;i=d;return m|0}function kE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;a:do if(c[k>>2]|0){c[m>>2]=qC(c[h>>2]|0)|0;c[l>>2]=zA(c[h>>2]|0,c[k>>2]|0)|0;if(!(a[c[l>>2]>>0]|0)){c[g>>2]=0;break}if((dE(c[m>>2]|0,c[j>>2]|0,148898)|0)==-1){c[g>>2]=-1;break}do if($C(c[l>>2]|0)|0){if((oE(c[m>>2]|0,c[j>>2]|0,c[l>>2]|0)|0)==-1){c[g>>2]=-1;break a}}else{c[n>>2]=H3(c[l>>2]|0,58)|0;if(!(c[n>>2]|0)){if((pE(c[m>>2]|0,c[j>>2]|0,c[l>>2]|0,0)|0)!=-1)break;c[g>>2]=-1;break a}a[c[n>>2]>>0]=0;if((pE(c[m>>2]|0,c[j>>2]|0,c[l>>2]|0,0)|0)==-1){c[g>>2]=-1;break a}if((dE(c[m>>2]|0,c[j>>2]|0,148898)|0)==-1){c[g>>2]=-1;break a}if((pE(c[m>>2]|0,c[j>>2]|0,(c[n>>2]|0)+1|0,0)|0)==-1){c[g>>2]=-1;break a}else{a[c[n>>2]>>0]=58;break}}while(0);c[g>>2]=0}else c[g>>2]=0;while(0);i=f;return c[g>>2]|0}function lE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return (c[c[d>>2]>>2]|0)>>>3&1|0}function mE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[n>>2]=0;if(!((c[c[g>>2]>>2]&3|0)!=3?(c[c[g>>2]>>2]&3|0)!=2:0))p=3;do if((p|0)==3){d=nE(c[g>>2]|0,c[h>>2]|0,0)|0;c[o>>2]=d;if((d|0)==-1){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else{if(!(c[o>>2]|0))break;c[n>>2]=(c[n>>2]|0)+1;break}}while(0);c[k>>2]=pA(c[g>>2]|0)|0;c[m>>2]=qC(c[g>>2]|0)|0;a:do if(c[k>>2]|0){c[l>>2]=Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,0,128)|0;while(1){if(!(c[l>>2]|0))break a;if((c[c[g>>2]>>2]&3|0)!=3?(c[c[g>>2]>>2]&3|0)!=2:0)p=16;else p=12;do if((p|0)==12){p=0;if((c[13513]|0)!=0?(c[(c[l>>2]|0)+16>>2]|0)==(c[(c[13513]|0)+16>>2]|0):0)break;if(!((c[13514]|0)!=0?(c[(c[l>>2]|0)+16>>2]|0)==(c[(c[13514]|0)+16>>2]|0):0))p=16}while(0);if((p|0)==16?(p=0,(c[(c[(c[k>>2]|0)+12>>2]|0)+(c[(c[l>>2]|0)+16>>2]<<2)>>2]|0)!=(c[(c[l>>2]|0)+12>>2]|0)):0){o=c[n>>2]|0;c[n>>2]=o+1;d=c[m>>2]|0;b=c[h>>2]|0;if(o){if((dE(d,b,134829)|0)==-1){p=24;break}if((cE(c[m>>2]|0,c[h>>2]|0)|0)==-1){p=26;break}}else{if((cE(d,b)|0)==-1){p=19;break}if((dE(c[m>>2]|0,c[h>>2]|0,134826)|0)==-1){p=21;break}c[13511]=(c[13511]|0)+1}if((oE(c[m>>2]|0,c[h>>2]|0,c[(c[l>>2]|0)+8>>2]|0)|0)==-1){p=28;break}if((dE(c[m>>2]|0,c[h>>2]|0,134832)|0)==-1){p=30;break}if((oE(c[m>>2]|0,c[h>>2]|0,c[(c[(c[k>>2]|0)+12>>2]|0)+(c[(c[l>>2]|0)+16>>2]<<2)>>2]|0)|0)==-1){p=32;break}}c[l>>2]=Hb[c[c[j>>2]>>2]&63](c[j>>2]|0,c[l>>2]|0,8)|0}if((p|0)==19){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==21){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==24){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==26){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==28){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==30){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}else if((p|0)==32){c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}}while(0);do if((c[n>>2]|0)>0){if((dE(c[m>>2]|0,c[h>>2]|0,134824)|0)!=-1){c[13511]=(c[13511]|0)+-1;break}c[f>>2]=-1;q=c[f>>2]|0;i=e;return q|0}while(0);h=c[g>>2]|0;c[h>>2]=c[h>>2]&-9|8;c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}function nE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=wB(c[h>>2]|0)|0;c[n>>2]=qC(c[h>>2]|0)|0;if((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=0:0){if((dE(c[n>>2]|0,c[j>>2]|0,134817)|0)==-1){c[g>>2]=-1;o=c[g>>2]|0;i=f;return o|0}if((oE(c[n>>2]|0,c[j>>2]|0,c[m>>2]|0)|0)==-1){c[g>>2]=-1;o=c[g>>2]|0;i=f;return o|0}if((c[k>>2]|0)!=0?(dE(c[n>>2]|0,c[j>>2]|0,134824)|0)==-1:0){c[g>>2]=-1;o=c[g>>2]|0;i=f;return o|0}c[l>>2]=1}else c[l>>2]=0;c[g>>2]=c[l>>2];o=c[g>>2]|0;i=f;return o|0}function oE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=pE(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,1)|0;i=e;return d|0}function pE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[j>>2]|0;if(c[k>>2]|0)c[j>>2]=TD(e)|0;else c[j>>2]=XD(e,YD(c[j>>2]|0)|0)|0;e=dE(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;i=f;return e|0}function qE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[c[h>>2]>>2]|0)>>>4>>>0<(c[j>>2]|0)>>>0){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}c[k>>2]=RA(c[g>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0)){m=8;break}if((c[c[(c[k>>2]|0)+28>>2]>>2]|0)>>>4>>>0<(c[j>>2]|0)>>>0){m=6;break}c[k>>2]=SA(c[g>>2]|0,c[k>>2]|0)|0}if((m|0)==6){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else if((m|0)==8){c[f>>2]=1;l=c[f>>2]|0;i=e;return l|0}return 0}function rE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(RA(c[e>>2]|0,c[f>>2]|0)|0){g=0;h=g&1;i=d;return h|0}g=(OA(c[e>>2]|0,c[f>>2]|0)|0)==0;h=g&1;i=d;return h|0}function sE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d+4|0;h=d;c[d+12>>2]=a;c[f>>2]=b;b=pA(c[f>>2]|0)|0;c[g>>2]=b;a:do if(b){c[h>>2]=Hb[c[c[(c[g>>2]|0)+8>>2]>>2]&63](c[(c[g>>2]|0)+8>>2]|0,0,128)|0;while(1){if(!(c[h>>2]|0))break a;if((c[(c[(c[g>>2]|0)+12>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2)>>2]|0)!=(c[(c[h>>2]|0)+12>>2]|0))break;c[h>>2]=Hb[c[c[(c[g>>2]|0)+8>>2]>>2]&63](c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0,8)|0}c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}while(0);c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function tE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=jA(c[g>>2]|0,0)|0;c[k>>2]=d;if(d){if((uE(c[g>>2]|0,c[h>>2]|0,149098,c[(c[k>>2]|0)+8+8>>2]|0,c[j>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((uE(c[g>>2]|0,c[h>>2]|0,149084,c[(c[k>>2]|0)+8>>2]|0,c[j>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}if((uE(c[g>>2]|0,c[h>>2]|0,149079,c[(c[k>>2]|0)+8+4>>2]|0,c[j>>2]|0)|0)==-1){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}}c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}function uE(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;j=i;i=i+48|0;k=j+36|0;l=j+32|0;m=j+28|0;n=j+24|0;o=j+20|0;p=j+16|0;q=j+12|0;r=j+8|0;s=j+4|0;t=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=0;if(c[p>>2]|0)c[r>>2]=0;else c[r>>2]=Sz(c[o>>2]|0,0)|0;c[s>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,0,128)|0;while(1){if(!(c[s>>2]|0)){u=32;break}if((c[(c[s>>2]|0)+12>>2]|0)!=0?(a[c[(c[s>>2]|0)+12>>2]>>0]|0)!=0:0)u=13;else u=8;do if((u|0)==8){u=0;if(!(a[(c[s>>2]|0)+22>>0]|0)){if(c[r>>2]|0){c[t>>2]=Hb[c[c[r>>2]>>2]&63](c[r>>2]|0,c[s>>2]|0,4)|0;if((c[(c[t>>2]|0)+12>>2]|0)!=0?(a[c[(c[t>>2]|0)+12>>2]>>0]|0)!=0:0){u=13;break}if(!(d[(c[t>>2]|0)+22>>0]|0))u=13}}else u=13}while(0);if((u|0)==13){u=0;h=c[q>>2]|0;c[q>>2]=h+1;g=c[l>>2]|0;f=c[m>>2]|0;if(h){if((dE(g,f,134829)|0)==-1){u=22;break}if((cE(c[l>>2]|0,c[m>>2]|0)|0)==-1){u=24;break}}else{if((cE(g,f)|0)==-1){u=15;break}if((dE(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)==-1){u=17;break}if((dE(c[l>>2]|0,c[m>>2]|0,134826)|0)==-1){u=19;break}c[13511]=(c[13511]|0)+1}if((oE(c[l>>2]|0,c[m>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0)==-1){u=26;break}if((dE(c[l>>2]|0,c[m>>2]|0,134832)|0)==-1){u=28;break}if((oE(c[l>>2]|0,c[m>>2]|0,c[(c[s>>2]|0)+12>>2]|0)|0)==-1){u=30;break}}c[s>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,c[s>>2]|0,8)|0}if((u|0)==15){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==17){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==19){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==22){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==24){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==26){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==28){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==30){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}else if((u|0)==32){if((c[q>>2]|0)>0){c[13511]=(c[13511]|0)+-1;if((c[q>>2]|0)>1){if((dE(c[l>>2]|0,c[m>>2]|0,193392)|0)==-1){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}if((cE(c[l>>2]|0,c[m>>2]|0)|0)==-1){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}}if((dE(c[l>>2]|0,c[m>>2]|0,134862)|0)==-1){c[k>>2]=-1;v=c[k>>2]|0;i=j;return v|0}}if(!(c[p>>2]|0))Sz(c[o>>2]|0,c[r>>2]|0)|0;c[k>>2]=0;v=c[k>>2]|0;i=j;return v|0}return 0}function vE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[c[k>>2]>>2]&3|0){case 0:{c[p>>2]=82;break}case 1:{c[p>>2]=83;break}case 3:case 2:{c[p>>2]=84;break}default:{}}f=Ob[c[p>>2]&127](c[j>>2]|0,c[k>>2]|0)|0;c[o>>2]=f;if(f){zE(c[j>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0,c[p>>2]|0,c[n>>2]|0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}else{c[h>>2]=-1;q=c[h>>2]|0;i=g;return q|0}return 0}function wE(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;i=d;return c[e>>2]|0}function xE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=qC(c[g>>2]|0)|0;if((b|0)==(c[f>>2]|0)){c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=eC(c[f>>2]|0,c[g>>2]|0,0)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function yE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=qC(c[g>>2]|0)|0;if((b|0)==(c[f>>2]|0)){c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=YA(c[f>>2]|0,c[g>>2]|0,0)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function zE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+28|0;k=h+24|0;l=h+20|0;m=h+16|0;n=h+12|0;o=h+8|0;p=h+4|0;q=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;if(c[o>>2]|0)Tb[c[l>>2]&127](c[j>>2]|0,c[k>>2]|0,c[m>>2]|0);c[p>>2]=GD(c[j>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;g=Ob[c[n>>2]&127](c[p>>2]|0,c[k>>2]|0)|0;c[q>>2]=g;if(g)zE(c[p>>2]|0,c[q>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);c[p>>2]=HD(c[p>>2]|0)|0}if(c[o>>2]|0){i=h;return}Tb[c[l>>2]&127](c[j>>2]|0,c[k>>2]|0,c[m>>2]|0);i=h;return}function AE(){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;e=i;i=i+1280|0;f=e+868|0;g=e+864|0;h=e+872|0;j=e+860|0;k=e+856|0;l=e+48|0;m=e+44|0;n=e+40|0;o=e+36|0;p=e+32|0;q=e+28|0;r=e+24|0;s=e+20|0;t=e+16|0;u=e+12|0;v=e+8|0;w=e+4|0;x=e;c[s>>2]=0;c[q>>2]=0;c[j>>2]=h;c[l>>2]=e+56;c[n>>2]=200;c[f>>2]=0;c[g>>2]=0;c[13524]=0;c[13525]=-2;c[k>>2]=c[j>>2];c[m>>2]=c[l>>2];a:while(1){b[c[k>>2]>>1]=c[f>>2];if(((c[j>>2]|0)+(c[n>>2]<<1)+-2|0)>>>0<=(c[k>>2]|0)>>>0){c[t>>2]=(((c[k>>2]|0)-(c[j>>2]|0)|0)/2|0)+1;if(1e4<=(c[n>>2]|0)>>>0){y=88;break}z=c[n>>2]<<1;c[n>>2]=z;c[n>>2]=1e4<(c[n>>2]|0)>>>0?1e4:z;c[u>>2]=c[j>>2];c[v>>2]=N4(((c[n>>2]|0)*6|0)+3|0)|0;if(!(c[v>>2]|0)){y=88;break}Z4(c[v>>2]|0,c[j>>2]|0,c[t>>2]<<1|0)|0;c[j>>2]=c[v>>2];c[w>>2]=(c[n>>2]<<1)+3;c[v>>2]=(c[v>>2]|0)+((((c[w>>2]|0)>>>0)/4|0)<<2);Z4(c[v>>2]|0,c[l>>2]|0,c[t>>2]<<2|0)|0;c[l>>2]=c[v>>2];c[x>>2]=(c[n>>2]<<2)+3;c[v>>2]=(c[v>>2]|0)+((((c[x>>2]|0)>>>0)/4|0)<<2);if((c[u>>2]|0)!=(h|0))O4(c[u>>2]|0);c[k>>2]=(c[j>>2]|0)+(c[t>>2]<<1)+-2;c[m>>2]=(c[l>>2]|0)+(c[t>>2]<<2)+-4;if(((c[j>>2]|0)+(c[n>>2]<<1)+-2|0)>>>0<=(c[k>>2]|0)>>>0){y=87;break}}if((c[f>>2]|0)==6){y=86;break}c[o>>2]=a[134876+(c[f>>2]|0)>>0];do if((c[o>>2]|0)!=-18){if((c[13525]|0)==-2)c[13525]=gD()|0;if((c[13525]|0)<=0){c[q>>2]=0;c[13525]=0}else{if((c[13525]|0)>>>0<=268)A=d[134956+(c[13525]|0)>>0]|0;else A=2;c[q>>2]=A}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0);if(!((c[o>>2]|0)<0|59<(c[o>>2]|0))?(d[135225+(c[o>>2]|0)>>0]|0)==(c[q>>2]|0):0){c[o>>2]=a[135285+(c[o>>2]|0)>>0];if((c[o>>2]|0)<=0){c[o>>2]=0-(c[o>>2]|0);y=26;break}if(c[g>>2]|0)c[g>>2]=(c[g>>2]|0)+-1;c[13525]=-2;c[f>>2]=c[o>>2];z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[13526]}else y=25}else y=25;while(0);if((y|0)==25){y=0;c[o>>2]=d[135345+(c[f>>2]|0)>>0];if(!(c[o>>2]|0)){if((c[13525]|0)!=-2)if((c[13525]|0)>>>0<=268)B=d[134956+(c[13525]|0)>>0]|0;else B=2;else B=-2;c[q>>2]=B;if(!(c[g>>2]|0)){c[13524]=(c[13524]|0)+1;nD(180146)}do if((c[g>>2]|0)==3)if((c[13525]|0)<=0)if(!(c[13525]|0)){y=87;break a}else break;else{OE(178296,c[q>>2]|0,54104);c[13525]=-2;break}while(0);c[g>>2]=3;while(1){c[o>>2]=a[134876+(c[f>>2]|0)>>0];if((((c[o>>2]|0)!=-18?(c[o>>2]=(c[o>>2]|0)+1,0<=(c[o>>2]|0)&(c[o>>2]|0)<=59):0)?(d[135225+(c[o>>2]|0)>>0]|0)==1:0)?(c[o>>2]=a[135285+(c[o>>2]|0)>>0],0<(c[o>>2]|0)):0)break;if((c[k>>2]|0)==(c[j>>2]|0)){y=87;break a}OE(178430,d[135621+(c[f>>2]|0)>>0]|0,c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+-4;c[k>>2]=(c[k>>2]|0)+-2;c[f>>2]=b[c[k>>2]>>1]}z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[13526];c[f>>2]=c[o>>2]}else y=26}do if((y|0)==26){y=0;c[s>>2]=d[135425+(c[o>>2]|0)>>0];c[r>>2]=c[(c[m>>2]|0)+(1-(c[s>>2]|0)<<2)>>2];b:do switch(c[o>>2]|0){case 2:{DE();break}case 3:{if(c[13527]|0){jB(c[13527]|0)|0;c[13072]=0;c[13527]=0}break}case 6:{EE(c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+-4>>2]|0,c[(c[m>>2]|0)+-8>>2]|0);break}case 7:{c[r>>2]=c[c[m>>2]>>2];break}case 8:{c[r>>2]=0;break}case 9:{c[r>>2]=1;break}case 10:{c[r>>2]=0;break}case 11:{c[r>>2]=0;break}case 12:{c[r>>2]=1;break}case 21:{if(c[(c[m>>2]|0)+-4>>2]|0){FE();break b}else{GE();break b}break}case 24:{HE(1);break}case 25:{HE(2);break}case 26:{c[r>>2]=1;break}case 27:{c[r>>2]=0;break}case 30:{IE(c[c[m>>2]>>2]|0,0,0);break}case 31:{IE(c[(c[m>>2]|0)+-8>>2]|0,c[c[m>>2]>>2]|0,0);break}case 32:{IE(c[(c[m>>2]|0)+-16>>2]|0,c[(c[m>>2]|0)+-8>>2]|0,c[c[m>>2]>>2]|0);break}case 33:{JE(c[(c[m>>2]|0)+-8>>2]|0,c[(c[m>>2]|0)+-4>>2]|0);break}case 34:{JE(258,0);break}case 35:{c[r>>2]=258;break}case 36:{c[r>>2]=259;break}case 37:{c[r>>2]=260;break}case 38:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 39:{c[r>>2]=0;break}case 48:{KE(c[(c[m>>2]|0)+-8>>2]|0,c[c[m>>2]>>2]|0);break}case 49:{KE(c[c[m>>2]>>2]|0,0);break}case 51:{LE(c[c[m>>2]>>2]|0);break}case 52:{ME();break}case 53:{c[r>>2]=c[c[m>>2]>>2];break}case 54:{c[r>>2]=0;break}case 55:{c[r>>2]=0;break}case 59:{c[r>>2]=c[c[m>>2]>>2];break}case 60:{c[r>>2]=c[c[m>>2]>>2];break}case 61:{c[r>>2]=c[c[m>>2]>>2];break}case 62:{c[r>>2]=NE(c[(c[m>>2]|0)+-8>>2]|0,c[c[m>>2]>>2]|0)|0;break}default:{}}while(0);c[m>>2]=(c[m>>2]|0)+(0-(c[s>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[s>>2]|0)<<1);c[s>>2]=0;z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[r>>2];c[o>>2]=d[135488+(c[o>>2]|0)>>0];c[f>>2]=(a[135551+((c[o>>2]|0)-24)>>0]|0)+(b[c[k>>2]>>1]|0);if(0<=(c[f>>2]|0)&(c[f>>2]|0)<=59?(d[135225+(c[f>>2]|0)>>0]|0)==(b[c[k>>2]>>1]|0):0){c[f>>2]=a[135285+(c[f>>2]|0)>>0];break}c[f>>2]=a[135586+((c[o>>2]|0)-24)>>0]}while(0);c[k>>2]=(c[k>>2]|0)+2}if((y|0)==86)c[p>>2]=0;else if((y|0)==87)c[p>>2]=1;else if((y|0)==88){nD(178445);c[p>>2]=2}if((c[13525]|0)!=-2){if((c[13525]|0)>>>0<=268)C=d[134956+(c[13525]|0)>>0]|0;else C=2;c[q>>2]=C;OE(178462,c[q>>2]|0,54104)}c[m>>2]=(c[m>>2]|0)+(0-(c[s>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[s>>2]|0)<<1);while(1){if((c[k>>2]|0)==(c[j>>2]|0))break;OE(178492,d[135621+(b[c[k>>2]>>1]|0)>>0]|0,c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+-4;c[k>>2]=(c[k>>2]|0)+-2}if((c[j>>2]|0)==(h|0)){D=c[p>>2]|0;i=e;return D|0}O4(c[j>>2]|0);D=c[p>>2]|0;i=e;return D|0}function BE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[13180]=c[g>>2];c[13527]=c[f>>2];c[13072]=0;c[13528]=(c[h>>2]|0)!=0?c[h>>2]|0:52276;fD(c[13528]|0,c[g>>2]|0);AE()|0;if(c[13072]|0){j=c[13072]|0;i=e;return j|0}pD();j=c[13072]|0;i=e;return j|0}function CE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=BE(0,c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function DE(){oD();JB(c[13527]|0);return}function EE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[13527]|0)){a[54120]=a[54120]&-2|c[j>>2]&1;a[54120]=a[54120]&-3|(c[k>>2]&1)<<1&255;a[54120]=a[54120]&-9|8;k=c[h>>2]|0;j=c[13528]|0;c[g>>2]=c[13530];e=gB(k,g,j)|0;c[13527]=e;c[13072]=e;l=c[13529]|0;m=c[13527]|0;n=QE(l,m)|0;c[13529]=n;o=c[h>>2]|0;_C(0,o)|0;i=f;return}else{c[13072]=c[13527];l=c[13529]|0;m=c[13527]|0;n=QE(l,m)|0;c[13529]=n;o=c[h>>2]|0;_C(0,o)|0;i=f;return}}function FE(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;VE(2);c[d>>2]=0;c[e>>2]=c[(c[13529]|0)+24>>2];while(1){if(!(c[e>>2]|0))break;if(((c[c[e>>2]>>2]|0)==267?(a[c[(c[e>>2]|0)+4>>2]>>0]|0)==(a[135701]|0):0)?(J3(c[(c[e>>2]|0)+4>>2]|0,135701)|0)==0:0)c[d>>2]=c[(c[e>>2]|0)+8>>2];c[e>>2]=c[(c[e>>2]|0)+12>>2]}c[g>>2]=c[(c[13529]|0)+16>>2];while(1){if(!(c[(c[g>>2]|0)+12>>2]|0))break;e=(c[g>>2]|0)+4|0;a:do if((c[c[g>>2]>>2]|0)==262){c[j>>2]=c[e>>2];c[h>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[h>>2]|0))break a;k=eC(c[c[13529]>>2]|0,c[h>>2]|0,0)|0;bF(k,0,c[(c[g>>2]|0)+12>>2]|0,c[d>>2]|0);c[h>>2]=aC(c[j>>2]|0,c[h>>2]|0)|0}}else{c[f>>2]=c[e>>2];while(1){if(!(c[f>>2]|0))break a;bF(c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[d>>2]|0);c[f>>2]=c[(c[f>>2]|0)+12>>2]}}while(0);c[g>>2]=c[(c[g>>2]|0)+12>>2]}WE((c[13529]|0)+8|0);WE((c[13529]|0)+16|0);WE((c[13529]|0)+24|0);c[(c[13529]|0)+4>>2]=0;i=b;return}function GE(){var a=0,b=0;a=i;i=i+16|0;b=a;VE(1);c[b>>2]=c[(c[13529]|0)+8>>2];while(1){if(!(c[b>>2]|0))break;aF(c[(c[b>>2]|0)+4>>2]|0);c[b>>2]=c[(c[b>>2]|0)+12>>2]}WE((c[13529]|0)+8|0);WE((c[13529]|0)+24|0);WE((c[13529]|0)+16|0);c[(c[13529]|0)+4>>2]=0;i=a;return}function HE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[b+4>>2]=a;c[d>>2]=0;a=c[13529]|0;if(c[(c[13529]|0)+8>>2]|0){c[d>>2]=_E(c[a+8>>2]|0)|0;c[(c[13529]|0)+8+4>>2]=0;c[(c[13529]|0)+8>>2]=0}else{if(c[a+4>>2]|0)c[d>>2]=$E(c[(c[13529]|0)+4>>2]|0)|0;c[(c[13529]|0)+4>>2]=0}if(!(c[d>>2]|0)){i=b;return}SE((c[13529]|0)+16|0,c[d>>2]|0);i=b;return}function IE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[h>>2]|0)c[g>>2]=YE(c[g>>2]|0,c[h>>2]|0)|0;h=fC(c[c[13529]>>2]|0,c[f>>2]|0,1)|0;c[j>>2]=ZE(h,c[g>>2]|0)|0;SE((c[13529]|0)+8|0,c[j>>2]|0);_C(c[13527]|0,c[f>>2]|0)|0;i=e;return}function JE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;if(c[g>>2]|0)UE();c[h>>2]=c[(c[13529]|0)+24>>2];while(1){if(!(c[h>>2]|0))break;if(!(c[(c[h>>2]|0)+8>>2]|0))UE();c[h>>2]=c[(c[h>>2]|0)+12>>2]}switch(c[f>>2]|0){case 258:{c[j>>2]=0;break}case 259:{c[j>>2]=1;break}case 260:{c[j>>2]=2;break}default:{}}VE(c[j>>2]|0);c[h>>2]=c[(c[13529]|0)+24>>2];while(1){if(!(c[h>>2]|0))break;if((a[(c[(c[h>>2]|0)+4>>2]|0)+21>>0]|0)!=0?(c[c[13529]>>2]|0)==(c[13527]|0):0)c[k>>2]=c[(c[h>>2]|0)+4>>2];else c[k>>2]=qA(c[c[13529]>>2]|0,c[j>>2]|0,c[(c[(c[h>>2]|0)+4>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+8>>2]|0)|0;if((c[c[13529]>>2]|0)==(c[13527]|0))a[(c[k>>2]|0)+22>>0]=1;c[h>>2]=c[(c[h>>2]|0)+12>>2]}WE((c[13529]|0)+24|0);i=e;return}function KE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=RE(c[e>>2]|0,c[f>>2]|0)|0;SE((c[13529]|0)+24|0,c[g>>2]|0);i=d;return}function LE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[13529]|0;c[13529]=QE(a,FD(c[c[13529]>>2]|0,c[d>>2]|0,1)|0)|0;_C(c[13527]|0,c[d>>2]|0)|0;i=b;return}function ME(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=c[c[13529]>>2];c[13529]=PE(c[13529]|0)|0;c[(c[13529]|0)+4>>2]=c[b>>2];i=a;return}function NE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+1056|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+24|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;b=N3(c[e>>2]|0)|0;c[k>>2]=b+(N3(c[f>>2]|0)|0)+1;if((c[k>>2]|0)<=1024)c[j>>2]=h;else c[j>>2]=N4(c[k>>2]|0)|0;K3(c[j>>2]|0,c[e>>2]|0)|0;G3(c[j>>2]|0,c[f>>2]|0)|0;c[g>>2]=YC(c[13527]|0,c[j>>2]|0)|0;_C(c[13527]|0,c[e>>2]|0)|0;_C(c[13527]|0,c[f>>2]|0)|0;if((c[j>>2]|0)==(h|0)){l=c[g>>2]|0;i=d;return l|0}O4(c[j>>2]|0);l=c[g>>2]|0;i=d;return l|0}function OE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;if(c[f>>2]|0){i=e;return}c[f>>2]=178509;i=e;return}function PE(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[13529]|0)+32>>2];VB(c[13527]|0,c[d>>2]|0);i=b;return c[e>>2]|0}function QE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=UB(c[13527]|0,36)|0;c[(c[g>>2]|0)+32>>2]=c[e>>2];c[c[g>>2]>>2]=c[f>>2];i=d;return c[g>>2]|0}function RE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=TE(267,c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function SE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[(c[e>>2]|0)+4>>2]|0)c[(c[(c[e>>2]|0)+4>>2]|0)+12>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[f>>2];if(c[c[e>>2]>>2]|0){i=d;return}c[c[e>>2]>>2]=c[f>>2];i=d;return}function TE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=UB(c[13527]|0,16)|0;c[c[j>>2]>>2]=c[f>>2];c[(c[j>>2]|0)+4>>2]=c[g>>2];c[(c[j>>2]|0)+8>>2]=c[h>>2];i=e;return c[j>>2]|0}function UE(){var a=0;a=i;i=i+16|0;$z(0,135705,a)|0;i=a;return}function VE(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;c[f>>2]=c[(c[13529]|0)+24>>2];while(1){if(!(c[f>>2]|0))break;c[g>>2]=c[(c[f>>2]|0)+4>>2];if(!(((c[e>>2]|0)==2?(a[c[g>>2]>>0]|0)==(a[135701]|0):0)?(J3(c[g>>2]|0,135701)|0)==0:0)){b=qA(c[c[13529]>>2]|0,c[e>>2]|0,c[g>>2]|0,0)|0;c[(c[f>>2]|0)+4>>2]=b;if(!b){b=qA(c[c[13529]>>2]|0,c[e>>2]|0,c[g>>2]|0,178518)|0;c[(c[f>>2]|0)+4>>2]=b}c[c[f>>2]>>2]=266;_C(c[13527]|0,c[g>>2]|0)|0}c[f>>2]=c[(c[f>>2]|0)+12>>2]}i=d;return}function WE(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;XE(c[c[d>>2]>>2]|0);c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function XE(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+12>>2];switch(c[c[e>>2]>>2]|0){case 265:{XE(c[(c[e>>2]|0)+4>>2]|0);break}case 266:case 267:{_C(c[13527]|0,c[(c[e>>2]|0)+8>>2]|0)|0;break}default:{}}VB(c[13527]|0,c[e>>2]|0);c[e>>2]=c[f>>2]}i=b;return}function YE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+1056|0;e=d;f=d+24|0;g=d+20|0;h=d+16|0;j=d+32|0;k=d+12|0;l=d+8|0;c[f>>2]=a;c[g>>2]=b;b=N3(c[f>>2]|0)|0;c[l>>2]=b+(N3(c[g>>2]|0)|0)+2;if((c[l>>2]|0)<=1024)c[k>>2]=j;else c[k>>2]=N4(c[l>>2]|0)|0;l=c[k>>2]|0;b=c[g>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=b;k3(l,135738,e)|0;c[h>>2]=YC(c[13527]|0,c[k>>2]|0)|0;_C(c[13527]|0,c[f>>2]|0)|0;_C(c[13527]|0,c[g>>2]|0)|0;if((c[k>>2]|0)==(j|0)){m=c[h>>2]|0;i=d;return m|0}O4(c[k>>2]|0);m=c[h>>2]|0;i=d;return m|0}function ZE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=TE(259,c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function _E(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=TE(265,c[d>>2]|0,0)|0;i=b;return a|0}function $E(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=TE(262,c[d>>2]|0,0)|0;i=b;return a|0}function aF(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[13529]|0)+24>>2];while(1){if(!(c[e>>2]|0))break;if((c[c[e>>2]>>2]|0)==266?(c[(c[e>>2]|0)+4>>2]|0)!=0:0)BA(c[d>>2]|0,c[(c[e>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[e>>2]=c[(c[e>>2]|0)+12>>2]}i=b;return}function bF(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=(c[j>>2]|0)+4|0;if((c[c[j>>2]>>2]|0)==262){c[m>>2]=c[e>>2];c[l>>2]=$B(c[m>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;j=c[g>>2]|0;d=c[h>>2]|0;b=eC(c[c[13529]>>2]|0,c[l>>2]|0,0)|0;cF(j,d,b,0,c[k>>2]|0);c[l>>2]=aC(c[m>>2]|0,c[l>>2]|0)|0}i=f;return}else{c[n>>2]=c[e>>2];while(1){if(!(c[n>>2]|0))break;e=c[g>>2]|0;l=c[h>>2]|0;m=eC(c[c[13529]>>2]|0,c[(c[n>>2]|0)+4>>2]|0,0)|0;cF(e,l,m,c[(c[n>>2]|0)+8>>2]|0,c[k>>2]|0);c[n>>2]=c[(c[n>>2]|0)+12>>2]}i=f;return}}function cF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;h=g+32|0;j=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=VA(c[c[13529]>>2]|0,c[h>>2]|0,c[k>>2]|0,c[m>>2]|0,1)|0;if(!(c[n>>2]|0)){i=g;return}c[o>>2]=c[j>>2];c[p>>2]=c[l>>2];l=c[n>>2]|0;j=c[n>>2]|0;if((c[((c[c[n>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)!=(c[((c[c[n>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)?(j=c[n>>2]|0,(c[((c[c[n>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)==(c[h>>2]|0)):0){c[q>>2]=c[o>>2];c[o>>2]=c[p>>2];c[p>>2]=c[q>>2]}dF(c[n>>2]|0,149070,c[o>>2]|0);dF(c[n>>2]|0,149061,c[p>>2]|0);aF(c[n>>2]|0);i=g;return}function dF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[h>>2]|0)){i=e;return}d=qA(c[c[13529]>>2]|0,2,c[g>>2]|0,0)|0;c[j>>2]=d;if(!d)c[j>>2]=qA(c[c[13529]>>2]|0,2,c[g>>2]|0,178518)|0;BA(c[f>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=e;return}function eF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=yF(c[f>>2]|0,1,c[g>>2]|0)|0;if(c[h>>2]|0){c[j>>2]=c[(c[h>>2]|0)+16>>2];c[(c[f>>2]|0)+172+12>>2]=c[(c[j>>2]|0)+4>>2];c[(c[f>>2]|0)+172>>2]=c[(c[j>>2]|0)+12>>2];c[(c[f>>2]|0)+172+4>>2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+172+8>>2]=c[(c[j>>2]|0)+16>>2];c[e>>2]=300;k=c[e>>2]|0;i=d;return k|0}else{c[e>>2]=999;k=c[e>>2]|0;i=d;return k|0}return 0}function fF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;c[g>>2]=a;c[h>>2]=b;MC(c[h>>2]|0,175049,280,1)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+144>>2]=c[g>>2];b=c[h>>2]|0;if((b|0)!=(rC(c[h>>2]|0)|0)){b=c[g>>2]|0;c[(c[(rC(c[h>>2]|0)|0)+8>>2]|0)+144>>2]=b}b=yA(c[h>>2]|0,136032)|0;c[k>>2]=b;if((b|0)!=0?(c[(c[g>>2]|0)+172>>2]=0,c[l>>2]=eF(c[g>>2]|0,c[k>>2]|0)|0,(c[l>>2]|0)==999):0){l=c[k>>2]|0;b=zF(c[g>>2]|0,1,c[k>>2]|0)|0;c[e>>2]=l;c[e+4>>2]=b;$z(1,136511,e)|0;c[f>>2]=-1;m=c[f>>2]|0;i=d;return m|0}c[j>>2]=c[(c[g>>2]|0)+172>>2];if(!(c[j>>2]|0)){c[f>>2]=-1;m=c[f>>2]|0;i=d;return m|0}KH(1);KJ(c[h>>2]|0,c[c[(c[g>>2]|0)+172+8>>2]>>2]&1);g=c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0;c[(c[(rC(c[h>>2]|0)|0)+8>>2]|0)+8>>2]=g;if(((c[j>>2]|0)!=0?(c[c[j>>2]>>2]|0)!=0:0)?(Bb[c[c[j>>2]>>2]&127](c[h>>2]|0),(c[(c[j>>2]|0)+4>>2]|0)!=0):0)c[(c[(c[h>>2]|0)+8>>2]|0)+148>>2]=c[(c[j>>2]|0)+4>>2];KH(0);c[f>>2]=0;m=c[f>>2]|0;i=d;return m|0}function gF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;c[d+4>>2]=a;c[f>>2]=b;if(!(MC(c[f>>2]|0,175049,0,1)|0)){c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}if(c[(c[(c[f>>2]|0)+8>>2]|0)+148>>2]|0){Bb[c[(c[(c[f>>2]|0)+8>>2]|0)+148>>2]&127](c[f>>2]|0);c[(c[(c[f>>2]|0)+8>>2]|0)+148>>2]=0}if(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)MJ(c[f>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}function hF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;c[h>>2]=b;c[j>>2]=c[(c[h>>2]|0)+76>>2];c[k>>2]=c[c[h>>2]>>2];if((c[j>>2]|0)!=0?(c[c[j>>2]>>2]|0)!=0:0)Bb[c[c[j>>2]>>2]&127](c[h>>2]|0);else l=4;do if(((l|0)==4?(c[(c[h>>2]|0)+40>>2]|0)==0:0)?(c[(c[h>>2]|0)+36>>2]|0)==0:0){if(a[(c[k>>2]|0)+13>>0]|0)sF(c[h>>2]|0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[(c[h>>2]|0)+36>>2]=c[24744];break}j=X2(c[(c[h>>2]|0)+32>>2]|0,143129)|0;c[(c[h>>2]|0)+36>>2]=j;if(!(c[(c[h>>2]|0)+36>>2]|0)){j=c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]|0;b=c[(c[h>>2]|0)+32>>2]|0;m=M1(c[(L1()|0)>>2]|0)|0;c[f>>2]=b;c[f+4>>2]=m;Db[j&31](135744,f);c[g>>2]=1;n=c[g>>2]|0;i=d;return n|0}}while(0);if(c[(c[h>>2]|0)+152>>2]&1024){Db[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&31](135782,e);c[g>>2]=1;n=c[g>>2]|0;i=d;return n|0}else{c[g>>2]=0;n=c[g>>2]|0;i=d;return n|0}return 0}function iF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+8|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;if(!((c[k>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g>>2]=0;m=c[g>>2]|0;i=e;return m|0}d=c[h>>2]|0;if(c[(c[h>>2]|0)+152>>2]&1024){Db[c[(c[d+12>>2]|0)+16>>2]&31](135782,e);wb(1)}c[l>>2]=tF(d,c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)!=(c[k>>2]|0)){l=c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]|0;c[f>>2]=c[k>>2];Db[l&31](135800,f);wb(1)}c[g>>2]=c[k>>2];m=c[g>>2]|0;i=e;return m|0}function jF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=N3(c[g>>2]|0)|0;b=iF(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if((b|0)!=(c[h>>2]|0)){c[e>>2]=-1;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}return 0}function kF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[g>>2]=b;c[h>>2]=d;a[j>>0]=c[h>>2];if((iF(c[g>>2]|0,j,1)|0)!=1){c[f>>2]=-1;k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=c[h>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function lF(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;if(((c[(c[f>>2]|0)+36>>2]|0)!=0?(a[(c[f>>2]|0)+144>>0]|0)==0:0)?(c[(c[c[f>>2]>>2]|0)+104>>2]|0)==0:0){c[e>>2]=T2(c[(c[f>>2]|0)+36>>2]|0)|0;g=c[e>>2]|0;i=d;return g|0}c[e>>2]=0;g=c[e>>2]|0;i=d;return g|0}function mF(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+76>>2];if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+4>>2]|0)!=0:0)Bb[c[(c[e>>2]|0)+4>>2]&127](c[d>>2]|0);lF(c[d>>2]|0)|0;i=b;return}function nF(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d+12|0;c[e>>2]=b;c[f>>2]=c[(c[e>>2]|0)+76>>2];a[g>>0]=0;if(c[(c[e>>2]|0)+152>>2]&1024){Db[c[(c[(c[e>>2]|0)+12>>2]|0)+16>>2]&31](135825,d);wb(1)}if((c[f>>2]|0)!=0?(c[(c[f>>2]|0)+8>>2]|0)!=0:0){Bb[c[(c[f>>2]|0)+8>>2]&127](c[e>>2]|0);a[g>>0]=1}if(a[g>>0]|0){i=d;return}lF(c[e>>2]|0)|0;uF(c[e>>2]|0);i=d;return}function oF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+1072|0;f=e;g=e+32|0;h=e+28|0;j=e+40|0;k=e+24|0;l=e+8|0;m=e+4|0;c[g>>2]=a;c[h>>2]=b;c[m>>2]=j;c[l>>2]=d;c[k>>2]=q3(j,1024,c[h>>2]|0,l)|0;if((c[k>>2]|0)>>>0<0){c[f>>2]=M1(c[(L1()|0)>>2]|0)|0;$z(1,135842,f)|0;i=e;return}if((c[k>>2]|0)>>>0>=1024){c[m>>2]=cK((c[k>>2]|0)+1|0)|0;c[l>>2]=d;c[k>>2]=r3(c[m>>2]|0,c[h>>2]|0,l)|0}iF(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)==(j|0)){i=e;return}O4(c[m>>2]|0);i=e;return}function pF(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;g=d+12|0;j=d+8|0;c[e>>2]=a;h[f>>3]=b;c[g>>2]=vF(j,+h[f>>3])|0;iF(c[e>>2]|0,c[g>>2]|0,c[j>>2]|0)|0;i=d;return}function qF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=vF(g,+h[b>>3])|0;iF(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;iF(c[e>>2]|0,140232,1)|0;c[f>>2]=vF(g,+h[b+8>>3])|0;iF(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;i=d;return}function rF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){d=c[g>>2]|0;b=(c[h>>2]|0)+(c[k>>2]<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];qF(d,f);d=(c[k>>2]|0)+1|0;c[k>>2]=d;if((d|0)>=(c[j>>2]|0))break;iF(c[g>>2]|0,140232,1)|0}i=e;return}function sF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+128|0;e=d;f=d+20|0;g=d+24|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;c[f>>2]=b;if(c[(c[f>>2]|0)+24>>2]|0){c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+1;k3(g,135923,e)|0}else a[g>>0]=0;e=c[(c[f>>2]|0)+20>>2]|0;c[h>>2]=e;c[h>>2]=(e|0)!=0?e:135927;e=N3(c[h>>2]|0)|0;b=e+(N3(g)|0)+1|0;c[l>>2]=b+(N3(c[(c[f>>2]|0)+52>>2]|0)|0)+1;if((c[13531]|0)>>>0<(c[l>>2]|0)>>>0){c[13531]=(c[l>>2]|0)+10;c[13532]=Q4(c[13532]|0,c[13531]|0)|0}K3(c[13532]|0,c[h>>2]|0)|0;G3(c[13532]|0,g)|0;G3(c[13532]|0,193388)|0;c[j>>2]=M3(c[(c[f>>2]|0)+52>>2]|0)|0;while(1){g=S3(c[j>>2]|0,58)|0;c[k>>2]=g;m=c[13532]|0;if(!g)break;G3(m,(c[k>>2]|0)+1|0)|0;G3(c[13532]|0,193388)|0;a[c[k>>2]>>0]=0}G3(m,c[j>>2]|0)|0;O4(c[j>>2]|0);c[(c[f>>2]|0)+32>>2]=c[13532];i=d;return}function tF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[j>>2]|0;if(c[(c[c[j>>2]>>2]|0)+104>>2]|0){c[h>>2]=Hb[c[(c[e>>2]|0)+104>>2]&63](c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;m=c[h>>2]|0;i=f;return m|0}if(!(c[e+40>>2]|0)){c[h>>2]=h3(c[k>>2]|0,1,c[l>>2]|0,c[(c[j>>2]|0)+36>>2]|0)|0;m=c[h>>2]|0;i=f;return m|0}if((c[l>>2]|0)>>>0>((c[(c[j>>2]|0)+44>>2]|0)-((c[(c[j>>2]|0)+48>>2]|0)+1)|0)>>>0?(c[(c[j>>2]|0)+44>>2]=(c[(c[j>>2]|0)+48>>2]|0)+(c[l>>2]|0)+1+4095&-4096,e=Q4(c[(c[j>>2]|0)+40>>2]|0,c[(c[j>>2]|0)+44>>2]|0)|0,c[(c[j>>2]|0)+40>>2]=e,(c[(c[j>>2]|0)+40>>2]|0)==0):0){Db[c[(c[(c[j>>2]|0)+12>>2]|0)+16>>2]&31](135896,g);wb(1)}Z4((c[(c[j>>2]|0)+40>>2]|0)+(c[(c[j>>2]|0)+48>>2]|0)|0,c[k>>2]|0,c[l>>2]|0)|0;k=(c[j>>2]|0)+48|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);a[(c[(c[j>>2]|0)+40>>2]|0)+(c[(c[j>>2]|0)+48>>2]|0)>>0]=0;c[h>>2]=c[l>>2];m=c[h>>2]|0;i=f;return m|0}function uF(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(!(c[(c[e>>2]|0)+32>>2]|0)){i=d;return}if((c[(c[e>>2]|0)+36>>2]|0)==(c[24744]|0)){i=d;return}if(a[(c[e>>2]|0)+144>>0]|0){i=d;return}if(c[(c[e>>2]|0)+36>>2]|0){R2(c[(c[e>>2]|0)+36>>2]|0)|0;c[(c[e>>2]|0)+36>>2]=0}c[(c[e>>2]|0)+32>>2]=0;i=d;return}function vF(b,e){b=b|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;g=f+28|0;j=f+24|0;k=f;l=f+20|0;m=f+16|0;n=f+33|0;o=f+32|0;p=f+12|0;q=f+8|0;c[j>>2]=b;h[k>>3]=e;c[l>>2]=135876;if(+h[k>>3]<+h[4216]){c[c[j>>2]>>2]=19;c[g>>2]=135876;r=c[g>>2]|0;i=f;return r|0}if(+h[k>>3]>-+h[4216]){c[c[j>>2]>>2]=18;c[g>>2]=135877;r=c[g>>2]|0;i=f;return r|0}h[k>>3]=+h[k>>3]*100.0;e=+h[k>>3];if(+h[k>>3]<0.0)c[m>>2]=~~(e-.5);else c[m>>2]=~~(e+.5);if(!(c[m>>2]|0)){c[c[j>>2]>>2]=1;c[g>>2]=176099;r=c[g>>2]|0;i=f;return r|0}k=(c[m>>2]|0)<0&255;a[o>>0]=k;if(k<<24>>24)c[m>>2]=0-(c[m>>2]|0);a[n>>0]=0;c[q>>2]=2;while(1){if(!((c[m>>2]|0)!=0?1:(c[q>>2]|0)>0))break;c[p>>2]=(c[m>>2]|0)%10|0;c[m>>2]=(c[m>>2]|0)/10|0;if(!((c[p>>2]|0)==0?(d[n>>0]|0)==0:0)){k=(c[p>>2]|48)&255;b=(c[l>>2]|0)+-1|0;c[l>>2]=b;a[b>>0]=k;a[n>>0]=1}if((c[q>>2]|0)==1){if(a[n>>0]|0){k=(c[l>>2]|0)+-1|0;c[l>>2]=k;a[k>>0]=46}a[n>>0]=1}c[q>>2]=(c[q>>2]|0)+-1}if(a[o>>0]|0){o=(c[l>>2]|0)+-1|0;c[l>>2]=o;a[o>>0]=45}c[c[j>>2]>>2]=135876-(c[l>>2]|0);c[g>>2]=c[l>>2];r=c[g>>2]|0;i=f;return r|0}function wF(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+176|0;k=j+32|0;l=j+28|0;m=j+24|0;n=j+20|0;o=j+16|0;p=j+12|0;q=j+8|0;r=j+4|0;s=j;t=j+104|0;u=j+40|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;Q3(t,c[m>>2]|0,63)|0;h=H3(t,58)|0;c[s>>2]=h;if(h)a[c[s>>2]>>0]=0;c[r>>2]=(c[k>>2]|0)+60+(c[l>>2]<<2);while(1){if(!(c[c[r>>2]>>2]|0))break;Q3(u,c[(c[c[r>>2]>>2]|0)+4>>2]|0,63)|0;l=H3(u,58)|0;c[s>>2]=l;if(l)a[c[s>>2]>>0]=0;if((J3(t,u)|0)<=0)break;c[r>>2]=c[c[r>>2]>>2]}while(1){if(!(c[c[r>>2]>>2]|0))break;Q3(u,c[(c[c[r>>2]>>2]|0)+4>>2]|0,63)|0;l=H3(u,58)|0;c[s>>2]=l;if(l)a[c[s>>2]>>0]=0;if(J3(t,u)|0)break;if((c[n>>2]|0)>=(c[(c[c[r>>2]>>2]|0)+8>>2]|0))break;c[r>>2]=c[c[r>>2]>>2]}c[q>>2]=cK(20)|0;c[c[q>>2]>>2]=c[c[r>>2]>>2];c[c[r>>2]>>2]=c[q>>2];c[(c[q>>2]|0)+4>>2]=c[m>>2];c[(c[q>>2]|0)+8>>2]=c[n>>2];c[(c[q>>2]|0)+12>>2]=c[o>>2];c[(c[q>>2]|0)+16>>2]=c[p>>2];i=j;return 1}function xF(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+8>>2]=a;c[d+4>>2]=b;$z(1,135937,d)|0;i=d;return 0}function yF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;f=i;i=i+208|0;g=f+8|0;h=f;j=f+68|0;k=f+64|0;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;p=f+44|0;q=f+40|0;r=f+136|0;s=f+72|0;t=f+36|0;u=f+32|0;v=f+28|0;w=f+24|0;x=f+20|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[u>>2]=0;if((c[k>>2]|0)==3|(c[k>>2]|0)==4)c[x>>2]=0;else c[x>>2]=c[k>>2];Q3(r,c[l>>2]|0,63)|0;c[t>>2]=H3(r,58)|0;if(c[t>>2]|0){l=c[t>>2]|0;c[t>>2]=l+1;a[l>>0]=0;c[v>>2]=H3(c[t>>2]|0,58)|0;if(c[v>>2]|0){l=c[v>>2]|0;c[v>>2]=l+1;a[l>>0]=0}}else c[v>>2]=0;c[m>>2]=(c[j>>2]|0)+60+(c[k>>2]<<2);a:while(1){if(!(c[c[m>>2]>>2]|0))break;Q3(s,c[(c[c[m>>2]>>2]|0)+4>>2]|0,63)|0;c[u>>2]=H3(s,58)|0;if(c[u>>2]|0){l=c[u>>2]|0;c[u>>2]=l+1;a[l>>0]=0}do if(!(J3(s,r)|0)){if((c[u>>2]|0)!=0&(c[t>>2]|0)!=0?(J3(c[u>>2]|0,c[t>>2]|0)|0)!=0:0)break;if((c[v>>2]|0)!=0?(J3(c[v>>2]|0,c[(c[(c[c[m>>2]>>2]|0)+12>>2]|0)+8>>2]|0)|0)!=0:0)break;if(!(c[u>>2]|0))break a;if((c[x>>2]|0)==(c[k>>2]|0))break a;if(yF(c[j>>2]|0,c[x>>2]|0,c[u>>2]|0)|0)break a}while(0);c[m>>2]=c[c[m>>2]>>2]}c[n>>2]=c[c[m>>2]>>2];if(((c[n>>2]|0)!=0?(c[(c[n>>2]|0)+16>>2]|0)==0:0)?(c[o>>2]=xF(c[j>>2]|0,c[(c[(c[n>>2]|0)+12>>2]|0)+4>>2]|0)|0,(c[o>>2]|0)!=0):0){c[p>>2]=c[(c[o>>2]|0)+4>>2];while(1){m=c[(c[p>>2]|0)+4>>2]|0;c[q>>2]=m;if(!m)break;c[w>>2]=0;while(1){if(!(c[(c[q>>2]|0)+((c[w>>2]|0)*20|0)+4>>2]|0))break;AF(c[j>>2]|0,c[c[p>>2]>>2]|0,c[(c[q>>2]|0)+((c[w>>2]|0)*20|0)+4>>2]|0,c[c[o>>2]>>2]|0,c[(c[(c[n>>2]|0)+12>>2]|0)+4>>2]|0,(c[q>>2]|0)+((c[w>>2]|0)*20|0)|0)|0;c[w>>2]=(c[w>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+8}if((c[(c[j>>2]|0)+8>>2]|0)>=1){p=c[24742]|0;if(c[(c[(c[n>>2]|0)+12>>2]|0)+4>>2]|0)y=c[(c[(c[n>>2]|0)+12>>2]|0)+4>>2]|0;else y=135968;c[h>>2]=y;Y2(p,135978,h)|0}}if((c[n>>2]|0)!=0?(c[(c[n>>2]|0)+16>>2]|0)==0:0)c[n>>2]=0;if(!(c[n>>2]|0)){z=c[n>>2]|0;A=c[k>>2]|0;B=c[j>>2]|0;C=B+80|0;D=C+(A<<2)|0;c[D>>2]=z;E=c[n>>2]|0;i=f;return E|0}if((c[(c[j>>2]|0)+8>>2]|0)<1){z=c[n>>2]|0;A=c[k>>2]|0;B=c[j>>2]|0;C=B+80|0;D=C+(A<<2)|0;c[D>>2]=z;E=c[n>>2]|0;i=f;return E|0}h=c[24742]|0;p=c[(c[n>>2]|0)+4>>2]|0;y=c[(c[(c[n>>2]|0)+12>>2]|0)+8>>2]|0;c[g>>2]=c[54132+(c[k>>2]<<2)>>2];c[g+4>>2]=p;c[g+8>>2]=y;Y2(h,136008,g)|0;z=c[n>>2]|0;A=c[k>>2]|0;B=c[j>>2]|0;C=B+80|0;D=C+(A<<2)|0;c[D>>2]=z;E=c[n>>2]|0;i=f;return E|0}function zF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+48|0;g=f+40|0;h=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;s=f+44|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;a[s>>0]=1;if(!(c[k>>2]|0)){c[g>>2]=0;t=c[g>>2]|0;i=f;return t|0}if(c[13538]|0){dA(54156,0,0);c[13538]=0}c[o>>2]=M3(c[k>>2]|0)|0;c[p>>2]=H3(c[o>>2]|0,58)|0;if(c[p>>2]|0){k=c[p>>2]|0;c[p>>2]=k+1;a[k>>0]=0}c[m>>2]=(c[h>>2]|0)+60+(c[j>>2]<<2);a:do if(c[p>>2]|0){c[l>>2]=c[m>>2];while(1){if(!(c[c[l>>2]>>2]|0))break a;c[q>>2]=M3(c[(c[c[l>>2]>>2]|0)+4>>2]|0)|0;j=H3(c[q>>2]|0,58)|0;c[p>>2]=j;if(j){j=c[p>>2]|0;c[p>>2]=j+1;a[j>>0]=0}if(!((a[c[o>>2]>>0]|0)!=0?(F3(c[o>>2]|0,c[q>>2]|0)|0)!=0:0)){if((c[13540]|0)>>>0>=(c[13541]|0)>>>0)eA(54156,1)|0;j=c[13540]|0;c[13540]=j+1;a[j>>0]=32;gA(54156,c[(c[c[l>>2]>>2]|0)+4>>2]|0)|0;if((c[13540]|0)>>>0>=(c[13541]|0)>>>0)eA(54156,1)|0;j=c[13540]|0;c[13540]=j+1;a[j>>0]=58;gA(54156,c[(c[(c[c[l>>2]>>2]|0)+12>>2]|0)+8>>2]|0)|0;a[s>>0]=0}O4(c[q>>2]|0);c[l>>2]=c[c[l>>2]>>2]}}while(0);O4(c[o>>2]|0);if(a[s>>0]|0){c[r>>2]=0;c[l>>2]=c[m>>2];while(1){if(!(c[c[l>>2]>>2]|0))break;c[q>>2]=M3(c[(c[c[l>>2]>>2]|0)+4>>2]|0)|0;m=H3(c[q>>2]|0,58)|0;c[p>>2]=m;if(m){m=c[p>>2]|0;c[p>>2]=m+1;a[m>>0]=0}if(!((c[r>>2]|0)!=0?(F3(c[r>>2]|0,c[q>>2]|0)|0)==0:0)){if((c[13540]|0)>>>0>=(c[13541]|0)>>>0)eA(54156,1)|0;m=c[13540]|0;c[13540]=m+1;a[m>>0]=32;gA(54156,c[q>>2]|0)|0;a[s>>0]=0}if(!(c[r>>2]|0))O4(c[r>>2]|0);c[r>>2]=c[q>>2];c[l>>2]=c[c[l>>2]>>2]}if(!(c[r>>2]|0))O4(c[r>>2]|0)}if(a[s>>0]|0)c[n>>2]=178518;else{if((c[13540]|0)>>>0>=(c[13541]|0)>>>0)eA(54156,1)|0;s=c[13540]|0;c[13540]=s+1;a[s>>0]=0;s=c[13539]|0;c[13540]=s;c[n>>2]=s}c[g>>2]=c[n>>2];t=c[g>>2]|0;i=f;return t|0}function AF(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;m=j+20|0;n=j+16|0;o=j+12|0;p=j+8|0;q=j+4|0;r=j;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=(c[l>>2]|0)+60+(c[m>>2]<<2);while(1){if(!(c[c[r>>2]>>2]|0)){s=9;break}if((((F3(c[n>>2]|0,c[(c[c[r>>2]>>2]|0)+4>>2]|0)|0)==0?(F3(c[o>>2]|0,c[(c[(c[c[r>>2]>>2]|0)+12>>2]|0)+8>>2]|0)|0)==0:0)?(c[(c[(c[c[r>>2]>>2]|0)+12>>2]|0)+4>>2]|0)!=0:0)?(F3(c[p>>2]|0,c[(c[(c[c[r>>2]>>2]|0)+12>>2]|0)+4>>2]|0)|0)==0:0){s=7;break}c[r>>2]=c[c[r>>2]>>2]}if((s|0)==7){c[(c[c[r>>2]>>2]|0)+16>>2]=c[q>>2];a[k>>0]=1;t=a[k>>0]|0;i=j;return t|0}else if((s|0)==9){a[k>>0]=0;t=a[k>>0]|0;i=j;return t|0}return 0}function BF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(!(c[f>>2]|0))La(148770,136056,577,136070);if(!(a[c[f>>2]>>0]|0))La(148775,136056,578,136070);if(c[13543]|0){c[g>>2]=Hb[c[c[13543]>>2]&63](c[13543]|0,c[f>>2]|0,512)|0;c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}return 0}function CF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+24|0;h=d+20|0;j=d+16|0;c[h>>2]=b;if(!(c[h>>2]|0))La(148874,136056,593,136087);if(!(c[(c[h>>2]|0)+8>>2]|0))La(148877,136056,594,136087);if(!(a[c[(c[h>>2]|0)+8>>2]>>0]|0))La(148886,136056,595,136087);b=c[h>>2]|0;do if(!(c[(c[h>>2]|0)+20>>2]|0)){k=sO(c[b+8>>2]|0)|0;c[j>>2]=k;if(!k){c[f>>2]=c[(c[h>>2]|0)+8>>2];$z(0,136111,f)|0;a[g>>0]=0;l=a[g>>0]|0;i=d;return l|0}k=X2(c[j>>2]|0,176526)|0;c[(c[h>>2]|0)+20>>2]=k;if(!(c[(c[h>>2]|0)+20>>2]|0)){k=M1(c[(L1()|0)>>2]|0)|0;m=c[j>>2]|0;c[e>>2]=k;c[e+4>>2]=m;$z(0,136136,e)|0;a[g>>0]=0;l=a[g>>0]|0;i=d;return l|0}if((c[13544]|0)>=50){a[(c[h>>2]|0)+17>>0]=1;break}else{c[13544]=(c[13544]|0)+1;break}}else c3(c[b+20>>2]|0,0,0)|0;while(0);if(!(c[(c[h>>2]|0)+20>>2]|0))La(136157,136056,618,136087);a[g>>0]=1;l=a[g>>0]|0;i=d;return l|0}function DF(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(!(a[(c[e>>2]|0)+17>>0]|0)){i=d;return}if(!(c[(c[e>>2]|0)+20>>2]|0)){i=d;return}R2(c[(c[e>>2]|0)+20>>2]|0)|0;c[(c[e>>2]|0)+20>>2]=0;i=d;return}function EF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0.0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=b;if(!(c[f>>2]|0)){c[g+4>>2]=-1;c[g>>2]=-1;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];i=e;return}if(c[(c[f>>2]|0)+48>>2]|0){j=+(c[(c[f>>2]|0)+48>>2]|0);h[d+8>>3]=j;h[d>>3]=j}c[g>>2]=~~(+((c[(c[f>>2]|0)+40>>2]|0)*72|0)/+h[d>>3]);c[g+4>>2]=~~(+((c[(c[f>>2]|0)+44>>2]|0)*72|0)/+h[d+8>>3]);c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];i=e;return}function FF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;f=i;i=i+64|0;g=f+16|0;j=f+60|0;k=f+56|0;l=f+48|0;m=f;n=f+40|0;o=f+32|0;c[j>>2]=d;c[k>>2]=e;if((c[k>>2]|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){if(((c[13794]|0)==0?(c[13545]|0)!=(c[13793]|0):0)?(c[13545]=c[13793],(c[13543]|0)!=0):0){Jz(c[13543]|0)|0;c[13543]=0}p=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3];h[m+8>>3]=p;j=m+8|0;if(p>=1.0)h[m>>3]=+h[j>>3];else{h[j>>3]=96.0;h[m>>3]=96.0}c[n>>2]=GF(c[k>>2]|0)|0;k=c[n>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];EF(o,k,g);c[l>>2]=c[o>>2];c[l+4>>2]=c[o+4>>2];c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];i=f;return}c[l+4>>2]=-1;c[l>>2]=-1;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];i=f;return}function GF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[f>>2]=a;if(!(c[f>>2]|0))La(148770,136056,636,136163);if(!(c[13543]|0))c[13543]=Nz(54184,c[12993]|0)|0;a=BF(c[f>>2]|0)|0;c[g>>2]=a;if(a){DF(c[g>>2]|0);c[e>>2]=c[g>>2];h=c[e>>2]|0;i=b;return h|0}a=bK(64)|0;c[g>>2]=a;if(!a){c[e>>2]=0;h=c[e>>2]|0;i=b;return h|0}a=YC(0,c[f>>2]|0)|0;c[(c[g>>2]|0)+8>>2]=a;if(!((CF(c[g>>2]|0)|0)<<24>>24)){c[e>>2]=0;h=c[e>>2]|0;i=b;return h|0}if(!(c[(c[g>>2]|0)+20>>2]|0))La(136157,136056,649,136163);do switch(HF(c[g>>2]|0)|0){case 0:{a=fM(c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[g>>2]|0)+52>>2]=a;if(!a){c[d>>2]=c[(c[g>>2]|0)+8>>2];$z(0,136180,d)|0}O4(c[g>>2]|0);c[e>>2]=0;h=c[e>>2]|0;i=b;return h|0}case 2:{IF(c[g>>2]|0);break}case 3:{JF(c[g>>2]|0);break}case 1:{KF(c[g>>2]|0);break}case 4:{LF(c[g>>2]|0);break}case 6:{MF(c[g>>2]|0);break}case 11:{NF(c[g>>2]|0);break}case 8:{OF(c[g>>2]|0);break}case 5:{PF(c[g>>2]|0);break}case 12:{QF(c[g>>2]|0);break}default:{}}while(0);DF(c[g>>2]|0);Hb[c[c[13543]>>2]&63](c[13543]|0,c[g>>2]|0,1)|0;c[e>>2]=c[g>>2];h=c[e>>2]|0;i=b;return h|0}function HF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+240|0;d=b+8|0;e=b+4|0;f=b+216|0;g=b+16|0;h=b;c[e>>2]=a;a:do if((c[(c[e>>2]|0)+20>>2]|0)!=0?($2(f,1,20,c[(c[e>>2]|0)+20>>2]|0)|0)==20:0){c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=10)break a;a=(B3(f,c[54260+(c[h>>2]<<4)>>2]|0,c[54260+(c[h>>2]<<4)+4>>2]|0)|0)!=0;j=c[h>>2]|0;if(!a)break;c[h>>2]=j+1}c[(c[e>>2]|0)+28>>2]=c[54260+(j<<4)+12>>2];c[(c[e>>2]|0)+24>>2]=c[54260+(c[h>>2]<<4)+8>>2];b:do if((c[(c[e>>2]|0)+24>>2]|0)!=9){if((c[(c[e>>2]|0)+24>>2]|0)==10?(B3(f+8|0,136396,4)|0)==0:0){c[(c[e>>2]|0)+28>>2]=136401;c[(c[e>>2]|0)+24>>2]=11;c[d>>2]=11;k=c[d>>2]|0;i=b;return k|0}}else{do if(!(V2(g,200,c[(c[e>>2]|0)+20>>2]|0)|0))break b;while((B3(g,136391,4)|0)!=0);c[(c[e>>2]|0)+28>>2]=139648;c[(c[e>>2]|0)+24>>2]=8;c[d>>2]=8;k=c[d>>2]|0;i=b;return k|0}while(0);c[d>>2]=c[(c[e>>2]|0)+24>>2];k=c[d>>2]|0;i=b;return k|0}while(0);c[(c[e>>2]|0)+28>>2]=136406;c[(c[e>>2]|0)+24>>2]=0;c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}function IF(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,6,0)|0;if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,e)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,f)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2];c[(c[d>>2]|0)+44>>2]=c[f>>2];i=b;return}function JF(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,16,0)|0;if(!((RF(c[(c[d>>2]|0)+20>>2]|0,4,e)|0)&255)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,4,f)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2];c[(c[d>>2]|0)+44>>2]=c[f>>2];i=b;return}function KF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,16,0)|0;if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,e)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,f)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,g)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,h)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2]<<16|c[f>>2];c[(c[d>>2]|0)+44>>2]=c[g>>2]<<16|c[h>>2];i=b;return}function LF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;while(1){if(!((RF(c[(c[d>>2]|0)+20>>2]|0,1,e)|0)<<24>>24)){k=17;break}if((c[e>>2]|0)==255)continue;if(H3(136379,c[e>>2]|0)|0)continue;if((c[e>>2]|0)==192){k=6;break}l=c[(c[d>>2]|0)+20>>2]|0;if((c[e>>2]|0)==194){k=11;break}if(!((RF(l,2,f)|0)<<24>>24)){k=17;break}c3(c[(c[d>>2]|0)+20>>2]|0,(c[f>>2]|0)-2|0,1)|0}if((k|0)==6){if(!((RF(c[(c[d>>2]|0)+20>>2]|0,3,j)|0)&255)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,2,g)|0)&255)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,2,h)|0)&255)){i=b;return}c[(c[d>>2]|0)+44>>2]=c[g>>2];c[(c[d>>2]|0)+40>>2]=c[h>>2];i=b;return}else if((k|0)==11){if(!((RF(l,3,j)|0)<<24>>24)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,2,g)|0)&255)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,2,h)|0)&255)){i=b;return}c[(c[d>>2]|0)+44>>2]=c[g>>2];c[(c[d>>2]|0)+40>>2]=c[h>>2];i=b;return}else if((k|0)==17){i=b;return}}function MF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+1072|0;e=d;f=d+36|0;g=d+48|0;h=d+40|0;j=d+32|0;k=d+28|0;l=d+24|0;m=d+20|0;n=d+16|0;c[f>>2]=b;c[(c[f>>2]|0)+48>>2]=72;c3(c[(c[f>>2]|0)+20>>2]|0,0,0)|0;a[h>>0]=0;while(1){if(!(V2(g,1024,c[(c[f>>2]|0)+20>>2]|0)|0))break;b=U3(g,136364)|0;c[n>>2]=b;if(!b)continue;b=c[n>>2]|0;c[e>>2]=j;c[e+4>>2]=k;c[e+8>>2]=l;c[e+12>>2]=m;if((l3(b,142173,e)|0)==4){o=5;break}}if((o|0)==5)a[h>>0]=1;if(!(a[h>>0]|0)){i=d;return}c[(c[f>>2]|0)+32>>2]=c[j>>2];c[(c[f>>2]|0)+36>>2]=c[k>>2];c[(c[f>>2]|0)+40>>2]=(c[l>>2]|0)-(c[j>>2]|0);c[(c[f>>2]|0)+44>>2]=(c[m>>2]|0)-(c[k>>2]|0);i=d;return}function NF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,15,0)|0;a=(U2(c[(c[d>>2]|0)+20>>2]|0)|0)==88;g=c[(c[d>>2]|0)+20>>2]|0;if(a){c3(g,24,0)|0;if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,4,e)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,4,f)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2];c[(c[d>>2]|0)+44>>2]=c[f>>2];i=b;return}else{c3(g,26,0)|0;if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,e)|0)&255)){i=b;return}if(!((ZF(c[(c[d>>2]|0)+20>>2]|0,2,f)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2];c[(c[d>>2]|0)+44>>2]=c[f>>2];i=b;return}}function OF(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;d=i;i=i+384|0;e=d+80|0;f=d+72|0;g=d+64|0;j=d+56|0;k=d+48|0;l=d+40|0;m=d+148|0;n=d+144|0;o=d+140|0;p=d+32|0;q=d+24|0;r=d+16|0;s=d+8|0;t=d;u=d+360|0;v=d+136|0;w=d+132|0;x=d+128|0;y=d+160|0;z=d+153|0;A=d+152|0;B=d+96|0;c[m>>2]=b;c[n>>2]=0;c[o>>2]=0;a[z>>0]=0;a[A>>0]=0;if(!(c[13555]|0)){if(w2(54228,c[13556]|0,1)|0){c[l>>2]=c[13556];$z(1,136249,l)|0}c[13555]=54228}c3(c[(c[m>>2]|0)+20>>2]|0,0,0)|0;a:while(1){if(!(V2(y,200,c[(c[m>>2]|0)+20>>2]|0)|0)){C=26;break}if((a[z>>0]|0)!=0?!((a[A>>0]|0)!=0^1):0){C=26;break}c[x>>2]=y;while(1){if(y2(54228,c[x>>2]|0,4,B,0)|0)continue a;a[(c[x>>2]|0)+(c[B+8+4>>2]|0)>>0]=0;a[(c[x>>2]|0)+(c[B+16+4>>2]|0)>>0]=0;c[v>>2]=(c[x>>2]|0)+(c[B+8>>2]|0);c[w>>2]=(c[x>>2]|0)+(c[B+16>>2]|0);c[x>>2]=(c[x>>2]|0)+((c[B+4>>2]|0)+1);if(!(J3(c[v>>2]|0,179125)|0)){l=c[w>>2]|0;c[k>>2]=p;c[k+4>>2]=u;if((l3(l,136286,k)|0)!=2){l=c[w>>2]|0;c[j>>2]=p;if((l3(l,139001,j)|0)==1){c[n>>2]=YF(+h[p>>3],136293)|0;a[z>>0]=1}}else{c[n>>2]=YF(+h[p>>3],u)|0;a[z>>0]=1}if(a[A>>0]|0)continue a;else continue}if(J3(c[v>>2]|0,179057)|0){if(J3(c[v>>2]|0,136296)|0)continue;l=c[w>>2]|0;c[e>>2]=q;c[e+4>>2]=r;c[e+8>>2]=s;c[e+12>>2]=t;if((l3(l,136304,e)|0)==4)break;else continue}l=c[w>>2]|0;c[g>>2]=p;c[g+4>>2]=u;if((l3(l,136286,g)|0)!=2){l=c[w>>2]|0;c[f>>2]=p;if((l3(l,139001,f)|0)==1){c[o>>2]=YF(+h[p>>3],136293)|0;a[A>>0]=1}}else{c[o>>2]=YF(+h[p>>3],u)|0;a[A>>0]=1}if(a[z>>0]|0)continue a}c[n>>2]=~~(+h[s>>3]-+h[q>>3]+1.0)>>>0;c[o>>2]=~~(+h[t>>3]-+h[r>>3]+1.0)>>>0;a[z>>0]=1;a[A>>0]=1}if((C|0)==26){c[(c[m>>2]|0)+48>>2]=0;c[(c[m>>2]|0)+40>>2]=c[n>>2];c[(c[m>>2]|0)+44>>2]=c[o>>2];i=d;return}}function PF(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+48|0;d=b+32|0;e=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,0,0)|0;if(SF(c[(c[d>>2]|0)+20>>2]|0,e)|0){i=b;return}c[(c[d>>2]|0)+32>>2]=~~+h[e>>3];c[(c[d>>2]|0)+36>>2]=~~+h[e+8>>3];c[(c[d>>2]|0)+40>>2]=~~(+h[e+16>>3]-+h[e>>3]);c[(c[d>>2]|0)+44>>2]=~~(+h[e+16+8>>3]-+h[e+8>>3]);i=b;return}function QF(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=0;c3(c[(c[d>>2]|0)+20>>2]|0,6,0)|0;if(!((RF(c[(c[d>>2]|0)+20>>2]|0,1,e)|0)&255)){i=b;return}if(!((RF(c[(c[d>>2]|0)+20>>2]|0,1,f)|0)&255)){i=b;return}c[(c[d>>2]|0)+40>>2]=c[e>>2];c[(c[d>>2]|0)+44>>2]=c[f>>2];i=b;return}function RF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[c[k>>2]>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=6;break}c[l>>2]=U2(c[h>>2]|0)|0;if(S2(c[h>>2]|0)|0){n=4;break}e=c[k>>2]|0;c[e>>2]=c[e>>2]<<8;e=c[k>>2]|0;c[e>>2]=c[e>>2]|c[l>>2];c[m>>2]=(c[m>>2]|0)+1}if((n|0)==4){a[g>>0]=0;o=a[g>>0]|0;i=f;return o|0}else if((n|0)==6){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}return 0}function SF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+1056|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+4|0;j=d;k=d+32|0;c[f>>2]=a;c[g>>2]=b;while(1){if(!(V2(k,1024,c[f>>2]|0)|0)){l=5;break}b=U3(k,136239)|0;c[j>>2]=b;if(b){l=4;break}}if((l|0)==4){c[h+4>>2]=k;c[h>>2]=(c[j>>2]|0)+9;c[h+8>>2]=c[f>>2];c[e>>2]=TF(h,c[g>>2]|0)|0;m=c[e>>2]|0;i=d;return m|0}else if((l|0)==5){c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}return 0}function TF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+1040|0;f=e+8|0;g=e+4|0;h=e;j=e+16|0;c[g>>2]=b;c[h>>2]=d;UF(c[g>>2]|0);d=c[g>>2]|0;if(a[c[c[g>>2]>>2]>>0]|0)k=a[c[d>>2]>>0]|0;else k=(VF(d)|0)&255;do if((k|0)==91){d=c[g>>2]|0;c[d>>2]=(c[d>>2]|0)+1;WF(c[g>>2]|0,j);if(XF(j,c[h>>2]|0)|0){c[f>>2]=1;break}WF(c[g>>2]|0,j);if(XF(j,(c[h>>2]|0)+8|0)|0){c[f>>2]=1;break}WF(c[g>>2]|0,j);if(XF(j,(c[h>>2]|0)+16|0)|0){c[f>>2]=1;break}WF(c[g>>2]|0,j);if(XF(j,(c[h>>2]|0)+16+8|0)|0){c[f>>2]=1;break}else{c[f>>2]=0;break}}else c[f>>2]=1;while(0);i=e;return c[f>>2]|0}function UF(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;g=e+4|0;c[f>>2]=b;while(1){b=c[f>>2]|0;if(a[c[c[f>>2]>>2]>>0]|0)h=a[c[b>>2]>>0]|0;else h=(VF(b)|0)&255;b=h&255;a[g>>0]=b;if(!(b<<24>>24)){j=8;break}if(!(r1(d[g>>0]|0)|0)){j=8;break}b=c[f>>2]|0;c[b>>2]=(c[b>>2]|0)+1}if((j|0)==8){i=e;return}}function VF(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;if(V2(c[(c[f>>2]|0)+4>>2]|0,1024,c[(c[f>>2]|0)+8>>2]|0)|0){c[c[f>>2]>>2]=c[(c[f>>2]|0)+4>>2];a[e>>0]=a[c[c[f>>2]>>2]>>0]|0;g=a[e>>0]|0;i=d;return g|0}else{a[e>>0]=0;g=a[e>>0]|0;i=d;return g|0}return 0}function WF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;UF(c[f>>2]|0);do{d=c[f>>2]|0;if(a[c[c[f>>2]>>2]>>0]|0)k=a[c[d>>2]>>0]|0;else k=(VF(d)|0)&255;d=k&255;a[j>>0]=d;if(!(d<<24>>24))break;if((p1(a[j>>0]|0)|0)==0?(a[j>>0]|0)!=46:0)break;d=a[j>>0]|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[g>>2]|0)+b>>0]=d;d=c[f>>2]|0;c[d>>2]=(c[d>>2]|0)+1}while((c[h>>2]|0)!=1023);a[(c[g>>2]|0)+(c[h>>2]|0)>>0]=0;i=e;return}function XF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;j=d+8|0;k=d;c[f>>2]=a;c[g>>2]=b;h[k>>3]=+x3(c[f>>2]|0,j);if((c[f>>2]|0)==(c[j>>2]|0)){c[e>>2]=1;l=c[e>>2]|0;i=d;return l|0}else{h[c[g>>2]>>3]=+h[k>>3];c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}return 0}function YF(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+8|0;h[f>>3]=a;c[g>>2]=b;if(!(J3(c[g>>2]|0,136320)|0)){a=+h[f>>3]*72.0;c[e>>2]=~~(+h[f>>3]*72.0>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}if(!(J3(c[g>>2]|0,136323)|0)){a=+h[f>>3]*72.0/96.0;c[e>>2]=~~(+h[f>>3]*72.0/96.0>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}if(!(J3(c[g>>2]|0,136326)|0)){a=+h[f>>3]*72.0/6.0;c[e>>2]=~~(+h[f>>3]*72.0/6.0>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}if((J3(c[g>>2]|0,136293)|0)!=0?(J3(c[g>>2]|0,136329)|0)!=0:0){if(!(J3(c[g>>2]|0,136331)|0)){a=+h[f>>3]*28.346456664;c[e>>2]=~~(+h[f>>3]*28.346456664>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}if(!(J3(c[g>>2]|0,136334)|0)){a=+h[f>>3]*2.8346456663999997;c[e>>2]=~~(+h[f>>3]*2.8346456663999997>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}}a=+h[f>>3];c[e>>2]=~~(+h[f>>3]>=0.0?a+.5:a-.5);j=c[e>>2]|0;i=d;return j|0}function ZF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[c[k>>2]>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=6;break}c[l>>2]=U2(c[h>>2]|0)|0;if(S2(c[h>>2]|0)|0){n=4;break}e=c[k>>2]|0;c[e>>2]=c[e>>2]|c[l>>2]<<(c[m>>2]<<3);c[m>>2]=(c[m>>2]|0)+1}if((n|0)==4){a[g>>0]=0;o=a[g>>0]|0;i=f;return o|0}else if((n|0)==6){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}return 0}function _F(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=c[f>>2];if(c[(c[g>>2]|0)+20>>2]|0)R2(c[(c[g>>2]|0)+20>>2]|0)|0;if(!(c[(c[g>>2]|0)+52>>2]|0)){h=c[g>>2]|0;O4(h);i=e;return}if(!(c[(c[g>>2]|0)+60>>2]|0)){h=c[g>>2]|0;O4(h);i=e;return}Bb[c[(c[g>>2]|0)+60>>2]&127](c[g>>2]|0);h=c[g>>2]|0;O4(h);i=e;return}function $F(){var a=0,b=0;a=i;i=i+16|0;b=a;qA(0,1,147656,143955)|0;c[b>>2]=FR(0,1)|0;nS(c[b>>2]|0,0);i=a;return c[b>>2]|0}function aG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;f=i;i=i+320|0;g=f+24|0;j=f+8|0;k=f;l=f+56|0;m=f+52|0;n=f+48|0;o=f+44|0;p=f+64|0;q=f+40|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[q>>2]=eF(c[m>>2]|0,c[o>>2]|0)|0;if((c[q>>2]|0)==999){q=c[o>>2]|0;e=zF(c[m>>2]|0,1,c[o>>2]|0)|0;c[k>>2]=q;c[k+4>>2]=e;$z(1,136511,k)|0;c[l>>2]=-1;r=c[l>>2]|0;i=f;return r|0}if((fF(c[m>>2]|0,c[n>>2]|0)|0)==-1){c[l>>2]=-1;r=c[l>>2]|0;i=f;return r|0}m=(c[(c[n>>2]|0)+8>>2]|0)+16|0;if(a[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+81>>0]|0){s=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3];t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3];k=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]>=0.0?t+.5:t-.5);t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16+8>>3];e=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?t+.5:t-.5);t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16>>3];q=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?t+.5:t-.5);c[j>>2]=~~(+h[m+8>>3]>=0.0?s+.5:s-.5);c[j+4>>2]=k;c[j+8>>2]=e;c[j+12>>2]=q;k3(p,136560,j)|0}else{s=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3];t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3];j=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?t+.5:t-.5);t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16>>3];q=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?t+.5:t-.5);t=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16+8>>3];e=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?t+.5:t-.5);c[g>>2]=~~(+h[m>>3]>=0.0?s+.5:s-.5);c[g+4>>2]=j;c[g+8>>2]=q;c[g+12>>2]=e;k3(p,136560,g)|0}CA(c[n>>2]|0,140294,p,178518)|0;c[l>>2]=0;r=c[l>>2]|0;i=f;return r|0}function bG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;g=f+8|0;h=f;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f+12|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[l>>2]=c[(c[l>>2]|0)+48>>2];c[o>>2]=(HR(c[k>>2]|0,c[m>>2]|0)|0)&255;c[p>>2]=c[(c[k>>2]|0)+164>>2];if((c[o>>2]|0)==999){e=c[m>>2]|0;d=zF(c[k>>2]|0,3,c[m>>2]|0)|0;c[h>>2]=e;c[h+4>>2]=d;$z(1,136572,h)|0;c[j>>2]=-1;q=c[j>>2]|0;i=f;return q|0}h=QQ(c[p>>2]|0,c[(c[p>>2]|0)+52>>2]|0)|0;c[(c[p>>2]|0)+56>>2]=h;if(!((MC(c[l>>2]|0,175049,0,1)|0)!=0?(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0))r=5;if((r|0)==5?(c[(c[p>>2]|0)+152>>2]&67108864|0)==0:0){aA(136616,g);c[j>>2]=-1;q=c[j>>2]|0;i=f;return q|0}GR(c[k>>2]|0,c[n>>2]|0);c[o>>2]=LH(c[k>>2]|0,c[l>>2]|0)|0;SQ(c[p>>2]|0);nF(c[p>>2]|0);MR(c[k>>2]|0);c[j>>2]=c[o>>2];q=c[j>>2]|0;i=f;return q|0}function cG(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+64|0;h=g+16|0;j=g+8|0;k=g;l=g+48|0;m=g+44|0;n=g+40|0;o=g+36|0;p=g+32|0;q=g+28|0;r=g+24|0;s=g+20|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[n>>2]=c[(c[n>>2]|0)+48>>2];c[r>>2]=(HR(c[m>>2]|0,c[o>>2]|0)|0)&255;c[s>>2]=c[(c[m>>2]|0)+164>>2];if((c[r>>2]|0)==999){f=c[o>>2]|0;e=zF(c[m>>2]|0,3,c[o>>2]|0)|0;c[k>>2]=f;c[k+4>>2]=e;$z(1,136572,k)|0;c[l>>2]=-1;t=c[l>>2]|0;i=g;return t|0}k=QQ(c[s>>2]|0,c[(c[s>>2]|0)+52>>2]|0)|0;c[(c[s>>2]|0)+56>>2]=k;if(!((MC(c[n>>2]|0,175049,0,1)|0)!=0?(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0))u=5;if((u|0)==5?(c[(c[s>>2]|0)+152>>2]&67108864|0)==0:0){aA(136616,j);c[l>>2]=-1;t=c[l>>2]|0;i=g;return t|0}if((c[p>>2]|0)!=0?(j=N4(4096)|0,c[c[p>>2]>>2]=j,(j|0)!=0):0){c[(c[s>>2]|0)+40>>2]=c[c[p>>2]>>2];c[(c[s>>2]|0)+44>>2]=4096;c[(c[s>>2]|0)+48>>2]=0;c[r>>2]=LH(c[m>>2]|0,c[n>>2]|0)|0;SQ(c[s>>2]|0);if(!(c[r>>2]|0)){c[c[p>>2]>>2]=c[(c[s>>2]|0)+40>>2];c[c[q>>2]>>2]=c[(c[s>>2]|0)+48>>2]}MR(c[m>>2]|0);c[l>>2]=c[r>>2];t=c[l>>2]|0;i=g;return t|0}$z(1,136637,h)|0;c[l>>2]=-1;t=c[l>>2]|0;i=g;return t|0}function dG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;mS(c[e>>2]|0,0,c[f>>2]|0);i=d;return}function eG(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ja=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,sa=0,ta=0,ua=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0;h=i;i=i+4288|0;j=h+8|0;k=h;l=4;m=N4(40)|0;c[m>>2]=0;p=h+4152|0;q=h+4148|0;r=h+4128|0;s=h+4112|0;t=h+16|0;n=0;u=ia(24,b|0)|0;v=n;n=0;if((v|0)!=0&(o|0)!=0){w=Y4(c[v>>2]|0,m|0,l|0)|0;if(!w)Pa(v|0,o|0);C=o}else w=-1;a:do if((w|0)!=1){if(!u){c[e>>2]=0;x=0;O4(m|0);i=h;return x|0}n=0;v=va(52,f|0,q|0,p|0,128)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){z=Y4(c[y>>2]|0,m|0,l|0)|0;if(!z)Pa(y|0,o|0);C=o}else z=-1;if((z|0)!=1){n=0;y=ia(23,4*10|0)|0;A=n;n=0;if((A|0)!=0&(o|0)!=0){B=Y4(c[A>>2]|0,m|0,l|0)|0;if(!B)Pa(A|0,o|0);C=o}else B=-1;if((B|0)!=1){n=0;da(16,r|0,s|0,t|0,19,85);A=n;n=0;if((A|0)!=0&(o|0)!=0){D=Y4(c[A>>2]|0,m|0,l|0)|0;if(!D)Pa(A|0,o|0);C=o}else D=-1;if((D|0)!=1){n=0;A=ia(25,b|0)|0;E=n;n=0;if((E|0)!=0&(o|0)!=0){F=Y4(c[E>>2]|0,m|0,l|0)|0;if(!F)Pa(E|0,o|0);C=o}else F=-1;if((F|0)!=1){E=A;while(1){if(!E)break;n=0;ra(c[r+16>>2]|0,E|0,0)|0;A=n;n=0;if((A|0)!=0&(o|0)!=0){G=Y4(c[A>>2]|0,m|0,l|0)|0;if(!G)Pa(A|0,o|0);C=o}else G=-1;if((G|0)==1){H=C;I=10;J=0;K=y;L=0;M=v;N=0;O=0;break a}n=0;A=ra(86,b|0,E|0)|0;P=n;n=0;if((P|0)!=0&(o|0)!=0){Q=Y4(c[P>>2]|0,m|0,l|0)|0;if(!Q)Pa(P|0,o|0);C=o}else Q=-1;if((Q|0)==1){H=C;I=10;J=0;K=y;L=0;M=v;N=0;O=0;break a}E=A}m=W4(54420,1,m|0,l|0)|0;l=C;n=0;E=n;n=0;if((E|0)!=0&(o|0)!=0){R=Y4(c[E>>2]|0,m|0,l|0)|0;if(!R)Pa(E|0,o|0);C=o}else R=-1;if((R|0)!=1){H=0;I=10;J=0;K=y;L=0;M=v;N=0;O=0}else{H=C;I=10;J=0;K=y;L=0;M=v;N=0;O=0}}else{H=C;I=10;J=0;K=y;L=0;M=v;N=0;O=0}}else{H=C;I=10;J=0;K=y;L=0;M=v;N=0;O=0}}else{H=C;I=10;J=0;K=0;L=0;M=v;N=0;O=0}}else{H=C;I=10;J=0;K=0;L=0;M=0;N=0;O=0}}else{H=C;I=10;J=0;K=0;L=0;M=0;N=0;O=0}while(0);b:while(1){c:do if(H){S=I;T=J;U=K;V=1;W=N;X=O}else{n=0;R=ia(25,b|0)|0;Q=n;n=0;if((Q|0)!=0&(o|0)!=0){Y=Y4(c[Q>>2]|0,m|0,l|0)|0;if(!Y)Pa(Q|0,o|0);C=o}else Y=-1;if((Y|0)==1){Z=M;_=L;$=K;aa=I;H=C;M=Z;L=_;K=$;I=aa;continue b}Q=J;G=R;R=N;F=O;while(1){if(!G)break;n=0;D=ra(c[r+16>>2]|0,G|0,-1)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){ba=Y4(c[t>>2]|0,m|0,l|0)|0;if(!ba)Pa(t|0,o|0);C=o}else ba=-1;if((ba|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=Q;N=R;O=F;M=Z;L=_;K=$;I=aa;continue b}if((D|0)==0?(d[(c[G+8>>2]|0)+119>>0]|0|0)==3:0){if(R){ca=Q;fa=R;ga=F}else{D=M+(c[q>>2]|0)|0;n=0;c[k>>2]=Q;ka(34,D|0,175023,k|0)|0;D=n;n=0;if((D|0)!=0&(o|0)!=0){ha=Y4(c[D>>2]|0,m|0,l|0)|0;if(!ha)Pa(D|0,o|0);C=o}else ha=-1;if((ha|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=Q;N=R;O=F;M=Z;L=_;K=$;I=aa;continue b}n=0;D=ka(35,b|0,M|0,1)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){ja=Y4(c[t>>2]|0,m|0,l|0)|0;if(!ja)Pa(t|0,o|0);C=o}else ja=-1;if((ja|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=Q;N=R;O=F;M=Z;L=_;K=$;I=aa;continue b}n=0;va(53,D|0,175049,280,1)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){la=Y4(c[t>>2]|0,m|0,l|0)|0;if(!la)Pa(t|0,o|0);C=o}else la=-1;if((la|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=Q;N=D;O=F;M=Z;L=_;K=$;I=aa;continue b}c[K+(Q<<2)>>2]=D;ca=Q+1|0;fa=D;ga=1}n=0;va(54,b|0,G|0,fa|0,r|0)|0;D=n;n=0;if((D|0)!=0&(o|0)!=0){ma=Y4(c[D>>2]|0,m|0,l|0)|0;if(!ma)Pa(D|0,o|0);C=o}else ma=-1;if((ma|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=ca;N=fa;O=ga;M=Z;L=_;K=$;I=aa;continue b}na=ca;oa=fa;pa=ga}else{na=Q;oa=R;pa=F}n=0;D=ra(86,b|0,G|0)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){qa=Y4(c[t>>2]|0,m|0,l|0)|0;if(!qa)Pa(t|0,o|0);C=o}else qa=-1;if((qa|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=na;N=oa;O=pa;M=Z;L=_;K=$;I=aa;continue b}Q=na;G=D;R=oa;F=pa}n=0;G=ia(25,b|0)|0;D=n;n=0;if((D|0)!=0&(o|0)!=0){sa=Y4(c[D>>2]|0,m|0,l|0)|0;if(!sa)Pa(D|0,o|0);C=o}else sa=-1;if((sa|0)==1){Z=M;_=L;$=K;aa=I;H=C;J=Q;N=R;O=F;M=Z;L=_;K=$;I=aa;continue b}D=I;t=Q;s=K;B=G;G=R;while(1){if(!B){S=D;T=t;U=s;V=L;W=G;X=F;break c}n=0;z=ra(c[r+16>>2]|0,B|0,-1)|0;f=n;n=0;if((f|0)!=0&(o|0)!=0){ta=Y4(c[f>>2]|0,m|0,l|0)|0;if(!ta)Pa(f|0,o|0);C=o}else ta=-1;if((ta|0)==1){Z=M;_=L;H=C;I=D;J=t;K=s;N=G;O=F;M=Z;L=_;continue b}if(z){ua=D;wa=t;xa=s;ya=G}else{z=M+(c[q>>2]|0)|0;n=0;c[j>>2]=t;ka(34,z|0,175023,j|0)|0;z=n;n=0;if((z|0)!=0&(o|0)!=0){za=Y4(c[z>>2]|0,m|0,l|0)|0;if(!za)Pa(z|0,o|0);C=o}else za=-1;if((za|0)==1){Z=M;_=L;H=C;I=D;J=t;K=s;N=G;O=F;M=Z;L=_;continue b}n=0;z=ka(35,b|0,M|0,1)|0;f=n;n=0;if((f|0)!=0&(o|0)!=0){Aa=Y4(c[f>>2]|0,m|0,l|0)|0;if(!Aa)Pa(f|0,o|0);C=o}else Aa=-1;if((Aa|0)==1){Z=M;_=L;H=C;I=D;J=t;K=s;N=G;O=F;M=Z;L=_;continue b}n=0;va(53,z|0,175049,280,1)|0;f=n;n=0;if((f|0)!=0&(o|0)!=0){Ba=Y4(c[f>>2]|0,m|0,l|0)|0;if(!Ba)Pa(f|0,o|0);C=o}else Ba=-1;if((Ba|0)==1){Z=M;_=L;H=C;I=D;J=t;K=s;N=z;O=F;M=Z;L=_;continue b}n=0;va(54,b|0,B|0,z|0,r|0)|0;f=n;n=0;if((f|0)!=0&(o|0)!=0){Ca=Y4(c[f>>2]|0,m|0,l|0)|0;if(!Ca)Pa(f|0,o|0);C=o}else Ca=-1;if((Ca|0)==1){Z=M;_=L;H=C;I=D;J=t;K=s;N=z;O=F;M=Z;L=_;continue b}if((t|0)==(D|0)){f=D<<1;n=0;u=ra(87,s|0,f<<2|0)|0;w=n;n=0;if((w|0)!=0&(o|0)!=0){Da=Y4(c[w>>2]|0,m|0,l|0)|0;if(!Da)Pa(w|0,o|0);C=o}else Da=-1;if((Da|0)==1){Z=M;_=L;H=C;I=f;J=t;K=s;N=z;O=F;M=Z;L=_;continue b}Ea=f;Fa=u}else{Ea=D;Fa=s}c[Fa+(t<<2)>>2]=z;ua=Ea;wa=t+1|0;xa=Fa;ya=z}n=0;z=ra(86,b|0,B|0)|0;u=n;n=0;if((u|0)!=0&(o|0)!=0){Ga=Y4(c[u>>2]|0,m|0,l|0)|0;if(!Ga)Pa(u|0,o|0);C=o}else Ga=-1;if((Ga|0)==1){Z=M;_=L;H=C;I=ua;J=wa;K=xa;N=ya;O=F;M=Z;L=_;continue b}D=ua;t=wa;s=xa;B=z;G=ya}}while(0);n=0;ea(99,r|0);v=n;n=0;if((v|0)!=0&(o|0)!=0){Ha=Y4(c[v>>2]|0,m|0,l|0)|0;if(!Ha)Pa(v|0,o|0);C=o}else Ha=-1;if((Ha|0)==1){Z=M;H=C;I=S;J=T;K=U;L=V;N=W;O=X;M=Z;continue}if((M|0)!=(p|0)){n=0;ea(96,M|0);v=n;n=0;if((v|0)!=0&(o|0)!=0){Ia=Y4(c[v>>2]|0,m|0,l|0)|0;if(!Ia)Pa(v|0,o|0);C=o}else Ia=-1;if((Ia|0)==1){Z=M;H=C;I=S;J=T;K=U;L=V;N=W;O=X;M=Z;continue}}if(!V){n=0;Ja=ra(87,U|0,T<<2|0)|0;v=n;n=0;if((v|0)!=0&(o|0)!=0){Ka=Y4(c[v>>2]|0,m|0,l|0)|0;if(!Ka)Pa(v|0,o|0);C=o}else Ka=-1;if((Ka|0)==1){Z=M;H=C;I=S;J=T;K=U;L=V;N=W;O=X;M=Z;continue}else{La=59;break}}c[e>>2]=0;v=0;while(1){if((v|0)>=(T|0))break;n=0;ia(26,c[U+(v<<2)>>2]|0)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){Ma=Y4(c[y>>2]|0,m|0,l|0)|0;if(!Ma)Pa(y|0,o|0);C=o}else Ma=-1;if((Ma|0)==1){Z=M;H=C;I=S;J=T;K=U;L=V;N=W;O=X;M=Z;continue b}v=v+1|0}n=0;ea(96,U|0);v=n;n=0;if((v|0)!=0&(o|0)!=0){Na=Y4(c[v>>2]|0,m|0,l|0)|0;if(!Na)Pa(v|0,o|0);C=o}else Na=-1;if((Na|0)==1){Z=M;H=C;I=S;J=T;K=U;L=V;N=W;O=X;M=Z}else{La=57;break}}if((La|0)==57)Oa=0;else if((La|0)==59){c[e>>2]=T;a[g>>0]=X;Oa=Ja}x=Oa;O4(m|0);i=h;return x|0}function fG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ga=0,ha=0,ja=0,la=0;e=i;i=i+4272|0;f=e;g=4;h=N4(40)|0;c[h>>2]=0;j=e+4144|0;k=e+4140|0;l=e+4120|0;m=e+4104|0;p=e+8|0;n=0;q=ia(24,a|0)|0;r=n;n=0;if((r|0)!=0&(o|0)!=0){s=Y4(c[r>>2]|0,h|0,g|0)|0;if(!s)Pa(r|0,o|0);C=o}else s=-1;a:do if((s|0)!=1){if(!q){c[b>>2]=0;t=0;O4(h|0);i=e;return t|0}n=0;r=va(52,d|0,k|0,j|0,128)|0;u=n;n=0;if((u|0)!=0&(o|0)!=0){v=Y4(c[u>>2]|0,h|0,g|0)|0;if(!v)Pa(u|0,o|0);C=o}else v=-1;if((v|0)!=1){n=0;u=ia(23,4*10|0)|0;w=n;n=0;if((w|0)!=0&(o|0)!=0){x=Y4(c[w>>2]|0,h|0,g|0)|0;if(!x)Pa(w|0,o|0);C=o}else x=-1;if((x|0)!=1){n=0;da(16,l|0,m|0,p|0,19,85);w=n;n=0;if((w|0)!=0&(o|0)!=0){y=Y4(c[w>>2]|0,h|0,g|0)|0;if(!y)Pa(w|0,o|0);C=o}else y=-1;if((y|0)!=1){n=0;w=ia(25,a|0)|0;z=n;n=0;if((z|0)!=0&(o|0)!=0){A=Y4(c[z>>2]|0,h|0,g|0)|0;if(!A)Pa(z|0,o|0);C=o}else A=-1;if((A|0)!=1){z=w;while(1){if(!z)break;n=0;ra(c[l+16>>2]|0,z|0,0)|0;w=n;n=0;if((w|0)!=0&(o|0)!=0){B=Y4(c[w>>2]|0,h|0,g|0)|0;if(!B)Pa(w|0,o|0);C=o}else B=-1;if((B|0)==1){D=C;E=10;F=0;G=u;H=r;break a}n=0;w=ra(86,a|0,z|0)|0;I=n;n=0;if((I|0)!=0&(o|0)!=0){J=Y4(c[I>>2]|0,h|0,g|0)|0;if(!J)Pa(I|0,o|0);C=o}else J=-1;if((J|0)==1){D=C;E=10;F=0;G=u;H=r;break a}z=w}h=W4(54420,1,h|0,g|0)|0;g=C;n=0;z=n;n=0;if((z|0)!=0&(o|0)!=0){K=Y4(c[z>>2]|0,h|0,g|0)|0;if(!K)Pa(z|0,o|0);C=o}else K=-1;if((K|0)!=1){D=0;E=10;F=0;G=u;H=r}else{D=C;E=10;F=0;G=u;H=r}}else{D=C;E=10;F=0;G=u;H=r}}else{D=C;E=10;F=0;G=u;H=r}}else{D=C;E=10;F=0;G=0;H=r}}else{D=C;E=10;F=0;G=0;H=0}}else{D=C;E=10;F=0;G=0;H=0}while(0);b:while(1){if(D){n=0;ea(99,l|0);K=n;n=0;if((K|0)!=0&(o|0)!=0){L=Y4(c[K>>2]|0,h|0,g|0)|0;if(!L)Pa(K|0,o|0);C=o}else L=-1;if((L|0)==1){M=H;N=G;O=F;P=E;D=C;H=M;G=N;F=O;E=P;continue}n=0;ea(96,G|0);K=n;n=0;if((K|0)!=0&(o|0)!=0){Q=Y4(c[K>>2]|0,h|0,g|0)|0;if(!Q)Pa(K|0,o|0);C=o}else Q=-1;if((Q|0)==1){M=H;N=G;O=F;P=E;D=C;H=M;G=N;F=O;E=P;continue}if((H|0)==(j|0)){R=21;break}n=0;ea(96,H|0);K=n;n=0;if((K|0)!=0&(o|0)!=0){S=Y4(c[K>>2]|0,h|0,g|0)|0;if(!S)Pa(K|0,o|0);C=o}else S=-1;if((S|0)==1){M=H;N=G;O=F;P=E;D=C;H=M;G=N;F=O;E=P;continue}else{R=20;break}}n=0;K=ia(25,a|0)|0;J=n;n=0;if((J|0)!=0&(o|0)!=0){T=Y4(c[J>>2]|0,h|0,g|0)|0;if(!T)Pa(J|0,o|0);C=o}else T=-1;if((T|0)==1){M=H;N=G;O=F;P=E;D=C;H=M;G=N;F=O;E=P;continue}J=E;U=F;B=G;A=K;while(1){if(!A)break;n=0;K=ra(c[l+16>>2]|0,A|0,-1)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){V=Y4(c[y>>2]|0,h|0,g|0)|0;if(!V)Pa(y|0,o|0);C=o}else V=-1;if((V|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue b}if(K){W=J;X=U;Y=B}else{K=H+(c[k>>2]|0)|0;n=0;c[f>>2]=U;ka(34,K|0,175023,f|0)|0;K=n;n=0;if((K|0)!=0&(o|0)!=0){Z=Y4(c[K>>2]|0,h|0,g|0)|0;if(!Z)Pa(K|0,o|0);C=o}else Z=-1;if((Z|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue b}n=0;K=ka(35,a|0,H|0,1)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){_=Y4(c[y>>2]|0,h|0,g|0)|0;if(!_)Pa(y|0,o|0);C=o}else _=-1;if((_|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue b}n=0;va(53,K|0,175049,280,1)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){$=Y4(c[y>>2]|0,h|0,g|0)|0;if(!$)Pa(y|0,o|0);C=o}else $=-1;if(($|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue b}n=0;va(54,a|0,A|0,K|0,l|0)|0;y=n;n=0;if((y|0)!=0&(o|0)!=0){aa=Y4(c[y>>2]|0,h|0,g|0)|0;if(!aa)Pa(y|0,o|0);C=o}else aa=-1;if((aa|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue b}if((U|0)==(J|0)){y=J<<1;n=0;p=ra(87,B|0,y<<2|0)|0;m=n;n=0;if((m|0)!=0&(o|0)!=0){ba=Y4(c[m>>2]|0,h|0,g|0)|0;if(!ba)Pa(m|0,o|0);C=o}else ba=-1;if((ba|0)==1){M=H;D=C;E=y;F=U;G=B;H=M;continue b}ca=y;fa=p}else{ca=J;fa=B}c[fa+(U<<2)>>2]=K;W=ca;X=U+1|0;Y=fa}n=0;K=ra(86,a|0,A|0)|0;p=n;n=0;if((p|0)!=0&(o|0)!=0){ga=Y4(c[p>>2]|0,h|0,g|0)|0;if(!ga)Pa(p|0,o|0);C=o}else ga=-1;if((ga|0)==1){M=H;D=C;E=W;F=X;G=Y;H=M;continue b}J=W;U=X;B=Y;A=K}n=0;ea(99,l|0);A=n;n=0;if((A|0)!=0&(o|0)!=0){ha=Y4(c[A>>2]|0,h|0,g|0)|0;if(!ha)Pa(A|0,o|0);C=o}else ha=-1;if((ha|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue}n=0;A=G;G=ra(87,B|0,U<<2|0)|0;A=n;n=0;if((A|0)!=0&(o|0)!=0){ja=Y4(c[A>>2]|0,h|0,g|0)|0;if(!ja)Pa(A|0,o|0);C=o}else ja=-1;if((ja|0)==1){M=H;D=C;E=J;F=U;G=B;H=M;continue}if((H|0)==(j|0)){R=42;break}n=0;ea(96,H|0);A=n;n=0;if((A|0)!=0&(o|0)!=0){la=Y4(c[A>>2]|0,h|0,g|0)|0;if(!la)Pa(A|0,o|0);C=o}else la=-1;if((la|0)!=1){R=41;break}else{M=H;D=C;E=J;F=U;H=M}}if((R|0)==20)R=21;else if((R|0)==41)R=42;if((R|0)==21){c[b>>2]=0;t=0;O4(h|0);i=e;return t|0}else if((R|0)==42){c[b>>2]=U;t=G;O4(h|0);i=e;return t|0}return 0}function gG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=OA(c[f>>2]|0,c[g>>2]|0)|0;while(1){k=c[e>>2]|0;if(!(c[h>>2]|0))break;b=c[h>>2]|0;if(eC(k,c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,0)|0){YA(c[e>>2]|0,c[h>>2]|0,1)|0;c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=QA(c[f>>2]|0,c[h>>2]|0)|0}c[g>>2]=aC(k,c[g>>2]|0)|0}i=d;return c[j>>2]|0}function hG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=i;i=i+4368|0;g=f+24|0;h=f+8|0;j=f;k=f+4228|0;l=f+4224|0;m=f+4220|0;n=f+4216|0;o=f+4212|0;p=f+4208|0;q=f+4204|0;r=f+4200|0;s=f+4196|0;t=f+4192|0;u=f+4188|0;v=f+4184|0;w=f+4232|0;x=f+4180|0;y=f+4160|0;z=f+44|0;A=f+40|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[A>>2]=12;if(!(kB(c[l>>2]|0)|0)){c[c[m>>2]>>2]=0;c[k>>2]=0;B=c[k>>2]|0;i=f;return B|0}OC(c[l>>2]|0,0,136674,0-(c[A>>2]|0)|0,0);OC(c[l>>2]|0,1,136686,16,0);c[s>>2]=jG(c[n>>2]|0,z,w,128)|0;c[o>>2]=pG(c[l>>2]|0)|0;c[x>>2]=cK((kB(c[o>>2]|0)|0)<<2)|0;mG(y,f+4144|0,f+48|0,19,88);c[q>>2]=0;c[v>>2]=$B(c[o>>2]|0)|0;while(1){if(!(c[v>>2]|0))break;if(!(Ob[c[y+16>>2]&127](c[v>>2]|0,-1)|0)){n=(c[s>>2]|0)+(c[z>>2]|0)|0;c[j>>2]=c[q>>2];k3(n,137605,j)|0;c[u>>2]=FD(c[o>>2]|0,c[s>>2]|0,1)|0;c[t>>2]=FD(c[l>>2]|0,c[s>>2]|0,1)|0;MC(c[t>>2]|0,136674,12,0)|0;a[(LC(c[t>>2]|0,136674,0)|0)+8>>0]=1;c[p>>2]=nG(c[o>>2]|0,c[v>>2]|0,c[u>>2]|0,y)|0;rG(c[u>>2]|0,c[t>>2]|0);c[r>>2]=iG(c[t>>2]|0)|0;sG(c[l>>2]|0,c[t>>2]|0);c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]=c[t>>2];pC(c[o>>2]|0,c[u>>2]|0)|0;if(a[138998]|0){n=c[24742]|0;A=c[p>>2]|0;e=c[r>>2]|0;c[h>>2]=c[q>>2];c[h+4>>2]=A;c[h+8>>2]=e;Y2(n,136698,h)|0}c[q>>2]=(c[q>>2]|0)+1}c[v>>2]=aC(c[o>>2]|0,c[v>>2]|0)|0}if(a[138998]|0){v=c[24742]|0;h=kB(c[l>>2]|0)|0;r=lB(c[l>>2]|0)|0;p=c[q>>2]|0;u=wB(c[l>>2]|0)|0;c[g>>2]=h;c[g+4>>2]=r;c[g+8>>2]=p;c[g+12>>2]=u;Y2(v,136728,g)|0}jB(c[o>>2]|0)|0;PC(c[l>>2]|0,0,136674);PC(c[l>>2]|0,1,136686);oG(y);c[x>>2]=eK(c[x>>2]|0,c[q>>2]<<2)|0;if((c[s>>2]|0)!=(w|0))O4(c[s>>2]|0);c[c[m>>2]>>2]=c[q>>2];c[k>>2]=c[x>>2];B=c[k>>2]|0;i=f;return B|0}function iG(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=gG(c[d>>2]|0,c[(c[d>>2]|0)+48>>2]|0)|0;i=b;return a|0}function jG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!((c[h>>2]|0)!=0?(zG(c[h>>2]|0)|0)!=0:0))c[h>>2]=136864;c[m>>2]=N3(c[h>>2]|0)|0;if(((c[m>>2]|0)+25|0)>(c[l>>2]|0)){l=cK((c[m>>2]|0)+25|0)|0;c[n>>2]=l;if(!l){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}}else c[n>>2]=c[k>>2];K3(c[n>>2]|0,c[h>>2]|0)|0;c[c[j>>2]>>2]=c[m>>2];c[g>>2]=c[n>>2];o=c[g>>2]|0;i=f;return o|0}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;eC(c[f>>2]|0,c[e>>2]|0,1)|0;i=d;return}function lG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;d=a[(c[(c[g>>2]|0)+8>>2]|0)+157>>0]|0;if((c[h>>2]|0)<0){c[f>>2]=d;k=c[f>>2]|0;i=e;return k|0}else{c[j>>2]=d;a[(c[(c[g>>2]|0)+8>>2]|0)+157>>0]=c[h>>2];c[f>>2]=c[j>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function mG(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[c[j>>2]>>2]=c[k>>2];c[(c[j>>2]|0)+4>>2]=(c[c[j>>2]>>2]|0)+4096;c[(c[j>>2]|0)+12>>2]=0;c[(c[j>>2]|0)+8>>2]=0;k=c[j>>2]|0;c[c[h>>2]>>2]=k;c[(c[h>>2]|0)+4>>2]=k;c[(c[h>>2]|0)+8>>2]=c[c[(c[h>>2]|0)+4>>2]>>2];c[(c[h>>2]|0)+12>>2]=c[l>>2];c[(c[h>>2]|0)+16>>2]=c[m>>2];i=g;return}function nG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=0;xG(c[k>>2]|0,c[h>>2]|0);a:while(1){e=yG(c[k>>2]|0)|0;c[h>>2]=e;o=c[n>>2]|0;if(!e)break;c[n>>2]=o+1;if(c[(c[k>>2]|0)+12>>2]|0)Db[c[(c[k>>2]|0)+12>>2]&31](c[h>>2]|0,c[j>>2]|0);c[l>>2]=TA(c[g>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[l>>2]|0))continue a;e=c[l>>2]|0;d=c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0;c[m>>2]=d;if((d|0)==(c[h>>2]|0)){d=c[l>>2]|0;c[m>>2]=c[((c[c[l>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]}if(!(Ob[c[(c[k>>2]|0)+16>>2]&127](c[m>>2]|0,-1)|0))xG(c[k>>2]|0,c[m>>2]|0);c[l>>2]=UA(c[g>>2]|0,c[l>>2]|0,c[h>>2]|0)|0}}i=f;return o|0}function oG(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[c[d>>2]>>2]|0)+12>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+12>>2];wG(c[e>>2]|0);c[e>>2]=c[f>>2]}i=b;return}function pG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+28|0;e=b+24|0;f=b+20|0;g=b+16|0;h=b+12|0;j=b+8|0;k=b+4|0;l=b;c[e>>2]=a;c[d>>2]=c[13068];c[f>>2]=gB(136775,d,0)|0;vG(c[f>>2]|0,c[e>>2]|0);c[h>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;if(!(c[(LC(c[h>>2]|0,136686,0)|0)+12>>2]|0)){d=c[f>>2]|0;c[g>>2]=fC(d,wB(c[h>>2]|0)|0,1)|0;MC(c[g>>2]|0,136686,16,1)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]=c[h>>2];d=c[g>>2]|0;c[(LC(c[h>>2]|0,136686,0)|0)+12>>2]=d}c[h>>2]=aC(c[e>>2]|0,c[h>>2]|0)|0}c[h>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[l>>2]=c[(LC(c[h>>2]|0,136686,0)|0)+12>>2];c[j>>2]=OA(c[e>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;g=c[j>>2]|0;c[k>>2]=c[((c[c[j>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2];c[k>>2]=c[(LC(c[k>>2]|0,136686,0)|0)+12>>2];do if((c[k>>2]|0)!=(c[l>>2]|0)){g=c[f>>2]|0;if((c[k>>2]|0)>>>0>(c[l>>2]|0)>>>0){VA(g,c[l>>2]|0,c[k>>2]|0,0,1)|0;break}else{VA(g,c[k>>2]|0,c[l>>2]|0,0,1)|0;break}}while(0);c[j>>2]=QA(c[e>>2]|0,c[j>>2]|0)|0}c[h>>2]=aC(c[e>>2]|0,c[h>>2]|0)|0}i=b;return c[f>>2]|0}function qG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;d=a[(c[(c[g>>2]|0)+8>>2]|0)+8>>0]|0;if((c[h>>2]|0)<0){c[f>>2]=d;k=c[f>>2]|0;i=e;return k|0}else{c[j>>2]=d;a[(c[(c[g>>2]|0)+8>>2]|0)+8>>0]=c[h>>2];c[f>>2]=c[j>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function rG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;a:do if((c[c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2]>>2]&3|0)==1)eC(c[f>>2]|0,c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2]|0,1)|0;else{c[j>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2];c[g>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[g>>2]|0))break a;eC(c[f>>2]|0,c[g>>2]|0,1)|0;c[g>>2]=aC(c[j>>2]|0,c[g>>2]|0)|0}}while(0);c[h>>2]=aC(c[e>>2]|0,c[h>>2]|0)|0}i=d;return}function sG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;tG(c[e>>2]|0,c[f>>2]|0,0);i=d;return}function tG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if((a[(LC(c[k>>2]|0,136674,0)|0)+8>>0]|0)==0?(g=uG(c[k>>2]|0,c[h>>2]|0,c[j>>2]|0)|0,c[l>>2]=g,(g|0)!=0):0){if(c[j>>2]|0)n=1;else n=(P3(wB(c[k>>2]|0)|0,145613,7)|0)==0;c[m>>2]=n&1;tG(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[k>>2]=HD(c[k>>2]|0)|0}i=f;return}function uG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;c[k>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;d=c[g>>2]|0;b=fC(d,wB(c[k>>2]|0)|0,0)|0;c[l>>2]=b;if(b){if(!(c[j>>2]|0)){b=c[g>>2]|0;c[j>>2]=FD(b,wB(c[f>>2]|0)|0,1)|0}eC(c[j>>2]|0,c[l>>2]|0,1)|0}c[k>>2]=aC(c[f>>2]|0,c[k>>2]|0)|0}if((c[j>>2]|0)==0&(c[h>>2]|0)!=0){h=c[g>>2]|0;c[j>>2]=FD(h,wB(c[f>>2]|0)|0,1)|0}if(!(c[j>>2]|0)){m=c[j>>2]|0;i=e;return m|0}gG(c[j>>2]|0,c[f>>2]|0)|0;DA(c[f>>2]|0,c[j>>2]|0)|0;m=c[j>>2]|0;i=e;return m|0}function vG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;e=d;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;g=(P3(wB(c[h>>2]|0)|0,145613,7)|0)==0;b=c[f>>2]|0;a=c[h>>2]|0;a:do if(g){c[j>>2]=fC(b,wB(a)|0,1)|0;MC(c[j>>2]|0,136686,16,1)|0;c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]=c[h>>2];c[k>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0))break a;if(c[(LC(c[k>>2]|0,136686,0)|0)+12>>2]|0){l=c[24742]|0;m=wB(c[k>>2]|0)|0;n=wB(c[h>>2]|0)|0;o=wB(c[(LC(c[k>>2]|0,136686,0)|0)+12>>2]|0)|0;c[e>>2]=m;c[e+4>>2]=n;c[e+8>>2]=o;Y2(l,136778,e)|0}l=c[j>>2]|0;c[(LC(c[k>>2]|0,136686,0)|0)+12>>2]=l;c[k>>2]=aC(c[h>>2]|0,c[k>>2]|0)|0}}else vG(b,a);while(0);c[h>>2]=HD(c[h>>2]|0)|0}i=d;return}function wG(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return}function xG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+20|0;h=d+16|0;j=d+12|0;c[g>>2]=a;c[h>>2]=b;if((c[(c[g>>2]|0)+8>>2]|0)!=(c[(c[(c[g>>2]|0)+4>>2]|0)+4>>2]|0)){k=c[g>>2]|0;l=k+16|0;m=c[l>>2]|0;n=c[h>>2]|0;Ob[m&127](n,1)|0;o=c[h>>2]|0;p=c[g>>2]|0;q=p+8|0;r=c[q>>2]|0;s=r+4|0;c[q>>2]=s;c[r>>2]=o;i=d;return}do if(!(c[(c[(c[g>>2]|0)+4>>2]|0)+12>>2]|0)){c[j>>2]=cK(16)|0;if(!(c[j>>2]|0)){$z(1,136845,f)|0;Pa(54420,1)}c[(c[j>>2]|0)+8>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|0)+12>>2]=0;b=cK(4e6)|0;c[c[j>>2]>>2]=b;if(!(c[c[j>>2]>>2]|0)){$z(1,136845,e)|0;Pa(54420,1)}else{c[(c[j>>2]|0)+4>>2]=(c[c[j>>2]>>2]|0)+4e6;c[(c[(c[g>>2]|0)+4>>2]|0)+12>>2]=c[j>>2];break}}while(0);c[(c[g>>2]|0)+4>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+12>>2];c[(c[g>>2]|0)+8>>2]=c[c[(c[g>>2]|0)+4>>2]>>2];k=c[g>>2]|0;l=k+16|0;m=c[l>>2]|0;n=c[h>>2]|0;Ob[m&127](n,1)|0;o=c[h>>2]|0;p=c[g>>2]|0;q=p+8|0;r=c[q>>2]|0;s=r+4|0;c[q>>2]=s;c[r>>2]=o;i=d;return}function yG(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;do if((c[(c[e>>2]|0)+8>>2]|0)==(c[c[(c[e>>2]|0)+4>>2]>>2]|0)){if((c[(c[e>>2]|0)+4>>2]|0)!=(c[c[e>>2]>>2]|0)){c[(c[e>>2]|0)+4>>2]=c[(c[(c[e>>2]|0)+4>>2]|0)+8>>2];c[(c[e>>2]|0)+8>>2]=c[(c[(c[e>>2]|0)+4>>2]|0)+4>>2];break}c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}while(0);a=(c[e>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+-4;c[d>>2]=c[c[(c[e>>2]|0)+8>>2]>>2];f=c[d>>2]|0;i=b;return f|0}function zG(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+4|0;g=e;h=e+8|0;c[g>>2]=b;while(1){b=c[g>>2]|0;c[g>>2]=b+1;j=a[b>>0]|0;a[h>>0]=j;if(!(j<<24>>24)){k=6;break}if((d[h>>0]|0|0)==95)continue;if(!(l1(d[h>>0]|0)|0)){k=5;break}}if((k|0)==5){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else if((k|0)==6){c[f>>2]=1;l=c[f>>2]|0;i=e;return l|0}return 0}function AG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;t=e+4|0;u=e;c[f>>2]=d;v=+h[a>>3];c[g>>2]=~~(+h[a>>3]>=0.0?v+.5:v-.5);v=+h[a+8>>3];c[j>>2]=~~(+h[a+8>>3]>=0.0?v+.5:v-.5);v=+h[b>>3];c[k>>2]=~~(+h[b>>3]>=0.0?v+.5:v-.5);v=+h[b+8>>3];c[l>>2]=~~(+h[b+8>>3]>=0.0?v+.5:v-.5);c[t>>2]=(c[k>>2]|0)-(c[g>>2]|0);b=c[t>>2]|0;c[p>>2]=((c[t>>2]|0)>=0?b:0-b|0)<<1;c[r>>2]=(c[t>>2]|0)<0?-1:1;c[u>>2]=(c[l>>2]|0)-(c[j>>2]|0);t=c[u>>2]|0;c[q>>2]=((c[u>>2]|0)>=0?t:0-t|0)<<1;c[s>>2]=(c[u>>2]|0)<0?-1:1;c[n>>2]=c[g>>2];c[o>>2]=c[j>>2];if((c[p>>2]|0)>(c[q>>2]|0)){c[m>>2]=(c[q>>2]|0)-(c[p>>2]>>1);while(1){YK(c[f>>2]|0,c[n>>2]|0,c[o>>2]|0);if((c[n>>2]|0)==(c[k>>2]|0))break;if((c[m>>2]|0)>=0){c[o>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[m>>2]=(c[m>>2]|0)-(c[p>>2]|0)}c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[q>>2]|0)}i=e;return}else{c[m>>2]=(c[p>>2]|0)-(c[q>>2]>>1);while(1){YK(c[f>>2]|0,c[n>>2]|0,c[o>>2]|0);if((c[o>>2]|0)==(c[l>>2]|0))break;if((c[m>>2]|0)>=0){c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[m>>2]=(c[m>>2]|0)-(c[q>>2]|0)}c[o>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0)}i=e;return}}function BG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+48|0;g=f;h=f+44|0;j=f+40|0;k=f+36|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;s=f+4|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[j>>2]|0)<=0){c[h>>2]=0;t=c[h>>2]|0;i=f;return t|0}e=c[j>>2]|0;if((c[(c[m>>2]|0)+16>>2]|0)>>>0<=3){c[h>>2]=KG(e,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;t=c[h>>2]|0;i=f;return t|0}c[p>>2]=cK(e<<5)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;c[q>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];BO(c[q>>2]|0);e=(c[p>>2]|0)+(c[n>>2]<<5)|0;l=(c[(c[q>>2]|0)+8>>2]|0)+16|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];c[e+16>>2]=c[l+16>>2];c[e+20>>2]=c[l+20>>2];c[e+24>>2]=c[l+24>>2];c[e+28>>2]=c[l+28>>2];c[n>>2]=(c[n>>2]|0)+1}if((c[(c[m>>2]|0)+16>>2]|0)==4){a:do if(c[(c[m>>2]|0)+28>>2]&2){q=bK(c[j>>2]<<2)|0;c[(c[m>>2]|0)+24>>2]=q;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break a;c[s>>2]=yA(c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]|0,136869)|0;if((c[s>>2]|0)!=0?(q=c[s>>2]|0,c[g>>2]=o,l=(l3(q,175023,g)|0)>0,l&(c[o>>2]|0)>=0):0)c[(c[(c[m>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>2]=c[o>>2];c[n>>2]=(c[n>>2]|0)+1}}while(0);c[r>>2]=LG(c[j>>2]|0,c[p>>2]|0,c[m>>2]|0)|0;if(c[(c[m>>2]|0)+28>>2]&2)O4(c[(c[m>>2]|0)+24>>2]|0)}O4(c[p>>2]|0);c[h>>2]=c[r>>2];t=c[h>>2]|0;i=f;return t|0}function CG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;do if((c[g>>2]|0)<=0)c[f>>2]=0;else{if((c[(c[j>>2]|0)+16>>2]|0)!=2?(c[(c[j>>2]|0)+16>>2]|0)!=1:0){if((c[(c[j>>2]|0)+16>>2]|0)==3){c[f>>2]=MG(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;break}if((c[(c[j>>2]|0)+16>>2]|0)==4){c[f>>2]=LG(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;break}else{c[f>>2]=0;break}}c[f>>2]=0}while(0);i=e;return c[f>>2]|0}function DG(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=i;i=i+80|0;j=g+72|0;k=g+68|0;l=g+64|0;m=g+60|0;n=g+56|0;o=g+52|0;p=g+48|0;q=g+44|0;r=g+40|0;s=g+8|0;t=g;u=g+32|0;v=g+28|0;w=g+24|0;x=g+20|0;y=g+16|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if((c[k>>2]|0)<=0){c[j>>2]=N(c[k>>2]|0)|0;z=c[j>>2]|0;i=g;return z|0}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[k>>2]|0))break;c[v>>2]=c[(c[l>>2]|0)+(c[p>>2]<<2)>>2];if(c[n>>2]|0)c[w>>2]=c[n>>2];else c[w>>2]=c[v>>2];f=(c[m>>2]|0)+(c[p>>2]<<3)|0;c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[q>>2]=c[u>>2];c[r>>2]=c[u+4>>2];h[s>>3]=+(c[q>>2]|0)/72.0;h[t>>3]=+(c[r>>2]|0)/72.0;c[x>>2]=$B(c[v>>2]|0)|0;while(1){if(!(c[x>>2]|0))break;f=c[(c[(c[x>>2]|0)+8>>2]|0)+132>>2]|0;h[f>>3]=+h[f>>3]+ +h[s>>3];f=(c[(c[(c[x>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[f>>3]=+h[f>>3]+ +h[t>>3];f=(c[(c[x>>2]|0)+8>>2]|0)+16|0;h[f>>3]=+h[f>>3]+ +(c[q>>2]|0);f=(c[(c[x>>2]|0)+8>>2]|0)+16+8|0;h[f>>3]=+h[f>>3]+ +(c[r>>2]|0);if(c[(c[(c[x>>2]|0)+8>>2]|0)+108>>2]|0){f=(c[(c[(c[x>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;h[f>>3]=+h[f>>3]+ +(c[q>>2]|0);f=(c[(c[(c[x>>2]|0)+8>>2]|0)+108>>2]|0)+56+8|0;h[f>>3]=+h[f>>3]+ +(c[r>>2]|0)}a:do if(c[o>>2]|0){c[y>>2]=OA(c[w>>2]|0,c[x>>2]|0)|0;while(1){if(!(c[y>>2]|0))break a;NG(c[y>>2]|0,c[q>>2]|0,c[r>>2]|0);c[y>>2]=QA(c[w>>2]|0,c[y>>2]|0)|0}}while(0);c[x>>2]=aC(c[v>>2]|0,c[x>>2]|0)|0}OG(c[v>>2]|0,c[q>>2]|0,c[r>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[j>>2]=0;z=c[j>>2]|0;i=g;return z|0}function EG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=BG(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(c[n>>2]|0){c[m>>2]=DG(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0)|0;O4(c[n>>2]|0);c[g>>2]=c[m>>2];o=c[g>>2]|0;i=f;return o|0}else{c[g>>2]=1;o=c[g>>2]|0;i=f;return o|0}return 0}function FG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;f=i;i=i+64|0;g=f+60|0;j=f+56|0;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;o=f+36|0;p=f;q=f+32|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=EG(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(c[m>>2]|0){r=c[m>>2]|0;i=f;return r|0}BO(c[k>>2]|0);l=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[p>>2]=c[l>>2];c[p+4>>2]=c[l+4>>2];c[p+8>>2]=c[l+8>>2];c[p+12>>2]=c[l+12>>2];c[p+16>>2]=c[l+16>>2];c[p+20>>2]=c[l+20>>2];c[p+24>>2]=c[l+24>>2];c[p+28>>2]=c[l+28>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;c[q>>2]=c[(c[j>>2]|0)+(c[n>>2]<<2)>>2];c[o>>2]=1;while(1){if((c[o>>2]|0)>(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0))break;if(+h[p>>3]<+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16>>3])s=+h[p>>3];else s=+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16>>3];h[p>>3]=s;if(+h[p+8>>3]<+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+8>>3])t=+h[p+8>>3];else t=+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+8>>3];h[p+8>>3]=t;if(+h[p+16>>3]>+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+16>>3])u=+h[p+16>>3];else u=+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+16>>3];h[p+16>>3]=u;if(+h[p+16+8>>3]>+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+16+8>>3])v=+h[p+16+8>>3];else v=+h[(c[(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0)+8>>2]|0)+16+16+8>>3];h[p+16+8>>3]=v;c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}n=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];r=c[m>>2]|0;i=f;return r|0}function GG(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[m>>2]|0))La(136875,136881,1400,136888);f=JG(c[j>>2]|0,c[l>>2]|0,c[l>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=f;if(a[138998]|0){f=c[24742]|0;c[h>>2]=c[(c[m>>2]|0)+8>>2];Y2(f,136900,h)|0}c[(c[m>>2]|0)+12>>2]=0;c[(c[m>>2]|0)+20>>2]=0;IG(c[j>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;i=g;return c[(c[m>>2]|0)+16>>2]|0}function HG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=i;i=i+80|0;j=f+48|0;k=f+40|0;l=f+32|0;m=f+24|0;n=f+16|0;o=f+8|0;p=f;q=f+68|0;r=f+64|0;s=f+60|0;t=f+56|0;u=f+52|0;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;if(!(c[s>>2]|0))La(136875,136881,1292,136913);c[(c[s>>2]|0)+28>>2]=0;c[(c[s>>2]|0)+16>>2]=c[r>>2];c[(c[s>>2]|0)+4>>2]=0;c[(c[s>>2]|0)+24>>2]=0;a:do if((c[q>>2]|0)!=0?(a[c[q>>2]>>0]|0)!=0:0)switch(a[c[q>>2]>>0]|0){case 97:{if(!(P3(c[q>>2]|0,136931,5)|0)){c[(c[s>>2]|0)+16>>2]=4;c[q>>2]=(c[q>>2]|0)+5;c[q>>2]=PG(c[q>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;c[p>>2]=u;e=(l3(r,175023,p)|0)>0;if(!(e&(c[u>>2]|0)>0))break a;c[(c[s>>2]|0)+4>>2]=c[u>>2];break a}if(P3(c[q>>2]|0,136937,6)|0)break a;c[(c[s>>2]|0)+16>>2]=5;e=(c[q>>2]|0)+5|0;c[o>>2]=t;if((l3(e,136944,o)|0)>0&+g[t>>2]>0.0){g[c[s>>2]>>2]=+g[t>>2];break a}else{g[c[s>>2]>>2]=1.0;break a}break}case 99:{if((a[c[q>>2]>>0]|0)!=(a[145613]|0))break a;if(J3(c[q>>2]|0,145613)|0)break a;c[(c[s>>2]|0)+16>>2]=1;break a;break}case 103:{if((a[c[q>>2]>>0]|0)!=(a[149098]|0))break a;if(J3(c[q>>2]|0,149098)|0)break a;c[(c[s>>2]|0)+16>>2]=3;break a;break}case 110:{if((a[c[q>>2]>>0]|0)!=(a[149084]|0))break a;if(J3(c[q>>2]|0,149084)|0)break a;c[(c[s>>2]|0)+16>>2]=2;break a;break}default:break a}while(0);if(!(a[138998]|0)){v=c[s>>2]|0;w=v+16|0;x=c[w>>2]|0;i=f;return x|0}Y2(c[24742]|0,136947,n)|0;n=c[24742]|0;c[m>>2]=QG(c[(c[s>>2]|0)+16>>2]|0)|0;Y2(n,136959,m)|0;if((c[(c[s>>2]|0)+16>>2]|0)==5){m=c[24742]|0;h[l>>3]=+g[c[s>>2]>>2];Y2(m,136972,l)|0}l=c[24742]|0;c[k>>2]=c[(c[s>>2]|0)+4>>2];Y2(l,136985,k)|0;k=c[24742]|0;c[j>>2]=c[(c[s>>2]|0)+28>>2];Y2(k,136998,j)|0;v=c[s>>2]|0;w=v+16|0;x=c[w>>2]|0;i=f;return x|0}function IG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=yA(c[f>>2]|0,137011)|0;f=HG(d,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function JG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=c[j>>2];j=yA(c[h>>2]|0,137020)|0;c[l>>2]=j;if(!j){o=c[n>>2]|0;i=f;return o|0}j=c[l>>2]|0;c[g>>2]=m;h=(l3(j,175023,g)|0)==1;if(h&(c[m>>2]|0)>=0){c[n>>2]=c[m>>2];o=c[n>>2]|0;i=f;return o|0}if((a[c[l>>2]>>0]|0)!=116?(a[c[l>>2]>>0]|0)!=84:0){o=c[n>>2]|0;i=f;return o|0}c[n>>2]=c[k>>2];o=c[n>>2]|0;i=f;return o|0}function KG(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0.0,M=0.0,N=0.0,O=0;j=i;i=i+224|0;k=j+208|0;l=j+64|0;m=j+48|0;n=j+40|0;o=j;p=j+200|0;q=j+196|0;r=j+192|0;s=j+188|0;t=j+184|0;u=j+180|0;v=j+176|0;w=j+172|0;x=j+168|0;y=j+164|0;z=j+160|0;A=j+156|0;B=j+152|0;C=j+136|0;D=j+120|0;E=j+112|0;F=j+104|0;G=j+100|0;H=j+96|0;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[A>>2]=c[(c[t>>2]|0)+20>>2];c[B>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;if((c[q>>2]|0)<=0){c[p>>2]=0;I=c[p>>2]|0;i=j;return I|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;c[G>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];BO(c[G>>2]|0);if((c[A>>2]|0)!=0?(d[(c[A>>2]|0)+(c[z>>2]|0)>>0]|0)!=0:0){J=+h[(c[(c[G>>2]|0)+8>>2]|0)+16>>3];c[C>>2]=~~(+h[(c[(c[G>>2]|0)+8>>2]|0)+16>>3]>=0.0?J+.5:J-.5);J=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+8>>3];c[C+4>>2]=~~(+h[(c[(c[G>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?J+.5:J-.5);J=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16>>3];c[C+8>>2]=~~(+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?J+.5:J-.5);J=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16+8>>3];c[C+8+4>>2]=~~(+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?J+.5:J-.5);if(c[B>>2]|0){c[D>>2]=(c[C>>2]|0)<(c[D>>2]|0)?c[C>>2]|0:c[D>>2]|0;c[D+4>>2]=(c[C+4>>2]|0)<(c[D+4>>2]|0)?c[C+4>>2]|0:c[D+4>>2]|0;c[D+8>>2]=(c[C+8>>2]|0)>(c[D+8>>2]|0)?c[C+8>>2]|0:c[D+8>>2]|0;if((c[C+8+4>>2]|0)>(c[D+8+4>>2]|0))K=c[C+8+4>>2]|0;else K=c[D+8+4>>2]|0;c[D+8+4>>2]=K}else{c[D>>2]=c[C>>2];c[D+4>>2]=c[C+4>>2];c[D+8>>2]=c[C+8>>2];c[D+12>>2]=c[C+12>>2]}c[B>>2]=(c[B>>2]|0)+1}if((d[138998]|0)>2){g=c[24742]|0;f=wB(c[G>>2]|0)|0;J=+h[(c[(c[G>>2]|0)+8>>2]|0)+16>>3];L=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+8>>3];M=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16>>3];N=+h[(c[(c[G>>2]|0)+8>>2]|0)+16+16+8>>3];c[o>>2]=f;h[o+8>>3]=J;h[o+16>>3]=L;h[o+24>>3]=M;h[o+32>>3]=N;Y2(g,137319,o)|0}c[z>>2]=(c[z>>2]|0)+1}c[F>>2]=cK(c[q>>2]<<5)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;o=(c[F>>2]|0)+(c[z>>2]<<5)|0;G=(c[(c[(c[r>>2]|0)+(c[z>>2]<<2)>>2]|0)+8>>2]|0)+16|0;c[o>>2]=c[G>>2];c[o+4>>2]=c[G+4>>2];c[o+8>>2]=c[G+8>>2];c[o+12>>2]=c[G+12>>2];c[o+16>>2]=c[G+16>>2];c[o+20>>2]=c[G+20>>2];c[o+24>>2]=c[G+24>>2];c[o+28>>2]=c[G+28>>2];c[z>>2]=(c[z>>2]|0)+1}c[u>>2]=RG(c[q>>2]|0,c[F>>2]|0,c[(c[t>>2]|0)+8>>2]|0)|0;if(a[138998]|0){G=c[24742]|0;c[n>>2]=c[u>>2];Y2(G,137035,n)|0}if((c[u>>2]|0)<=0){c[p>>2]=0;I=c[p>>2]|0;i=j;return I|0}if(c[A>>2]|0){c[E>>2]=((c[D>>2]|0)+(c[D+8>>2]|0)|0)/2|0;c[E+4>>2]=((c[D+4>>2]|0)+(c[D+8+4>>2]|0)|0)/2|0}else{c[E+4>>2]=0;c[E>>2]=0}c[v>>2]=bK(c[q>>2]<<4)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;c[H>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[(c[v>>2]|0)+(c[z>>2]<<4)+12>>2]=c[z>>2];if((c[(c[t>>2]|0)+16>>2]|0)!=3){D=c[s>>2]|0;n=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2]|0;G=(c[v>>2]|0)+(c[z>>2]<<4)|0;o=c[u>>2]|0;B=c[t>>2]|0;c[k>>2]=c[E>>2];c[k+4>>2]=c[E+4>>2];if(YG(D,n,G,o,B,k)|0){O=32;break}}else{B=(c[(c[H>>2]|0)+8>>2]|0)+16|0;o=(c[v>>2]|0)+(c[z>>2]<<4)|0;G=c[u>>2]|0;n=c[(c[t>>2]|0)+8>>2]|0;D=wB(c[H>>2]|0)|0;c[l>>2]=c[B>>2];c[l+4>>2]=c[B+4>>2];c[l+8>>2]=c[B+8>>2];c[l+12>>2]=c[B+12>>2];c[l+16>>2]=c[B+16>>2];c[l+20>>2]=c[B+20>>2];c[l+24>>2]=c[B+24>>2];c[l+28>>2]=c[B+28>>2];c[k>>2]=c[E>>2];c[k+4>>2]=c[E+4>>2];SG(l,o,G,n,k,D)}c[z>>2]=(c[z>>2]|0)+1}if((O|0)==32){c[p>>2]=0;I=c[p>>2]|0;i=j;return I|0}c[w>>2]=bK(c[q>>2]<<2)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]=(c[v>>2]|0)+(c[z>>2]<<4);c[z>>2]=(c[z>>2]|0)+1}w3(c[w>>2]|0,c[q>>2]|0,4,89);c[y>>2]=VK()|0;c[x>>2]=bK(c[q>>2]<<3)|0;O=(c[A>>2]|0)!=0;c[z>>2]=0;a:do if(O){while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;if(a[(c[A>>2]|0)+(c[z>>2]|0)>>0]|0){l=c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0;H=c[y>>2]|0;r=(c[x>>2]|0)+(c[(c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0)+12>>2]<<3)|0;c[k>>2]=c[E>>2];c[k+4>>2]=c[E+4>>2];ZG(l,H,r,k)}c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break a;if(!(a[(c[A>>2]|0)+(c[z>>2]|0)>>0]|0))UG(c[z>>2]|0,c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0,c[y>>2]|0,(c[x>>2]|0)+(c[(c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0)+12>>2]<<3)|0,c[u>>2]|0,c[(c[t>>2]|0)+8>>2]|0,c[F>>2]|0);c[z>>2]=(c[z>>2]|0)+1}}else while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break a;UG(c[z>>2]|0,c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0,c[y>>2]|0,(c[x>>2]|0)+(c[(c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]|0)+12>>2]<<3)|0,c[u>>2]|0,c[(c[t>>2]|0)+8>>2]|0,c[F>>2]|0);c[z>>2]=(c[z>>2]|0)+1}while(0);O4(c[w>>2]|0);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;O4(c[(c[v>>2]|0)+(c[z>>2]<<4)+4>>2]|0);c[z>>2]=(c[z>>2]|0)+1}O4(c[v>>2]|0);WK(c[y>>2]|0);O4(c[F>>2]|0);b:do if((d[138998]|0)>1){c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break b;F=c[24742]|0;y=c[(c[x>>2]|0)+(c[z>>2]<<3)>>2]|0;v=c[(c[x>>2]|0)+(c[z>>2]<<3)+4>>2]|0;c[m>>2]=c[z>>2];c[m+4>>2]=y;c[m+8>>2]=v;Y2(F,137051,m)|0;c[z>>2]=(c[z>>2]|0)+1}}while(0);c[p>>2]=c[x>>2];I=c[p>>2]|0;i=j;return I|0}function LG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0;f=i;i=i+144|0;g=f+56|0;j=f+132|0;k=f+128|0;l=f+124|0;m=f+120|0;n=f+116|0;o=f+112|0;p=f+108|0;q=f+104|0;r=f+100|0;s=f+96|0;t=f+92|0;u=f+88|0;v=f+84|0;w=f+48|0;x=f+40|0;y=f+32|0;z=f+80|0;A=f;B=f+76|0;C=f+72|0;D=f+68|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0;c[z>>2]=bK(c[j>>2]<<3)|0;c[B>>2]=c[(c[l>>2]|0)+4>>2];do if(c[(c[l>>2]|0)+28>>2]&1){c[C>>2]=0;if((c[B>>2]|0)>0){c[n>>2]=c[B>>2];c[o>>2]=((c[j>>2]|0)+((c[n>>2]|0)-1)|0)/(c[n>>2]|0)|0;break}else{c[n>>2]=~~+Z(+(+O(+(+(c[j>>2]|0)))));c[o>>2]=((c[j>>2]|0)+((c[n>>2]|0)-1)|0)/(c[n>>2]|0)|0;break}}else{c[C>>2]=1;if((c[B>>2]|0)>0){c[o>>2]=c[B>>2];c[n>>2]=((c[j>>2]|0)+((c[o>>2]|0)-1)|0)/(c[o>>2]|0)|0;break}else{c[o>>2]=~~+Z(+(+O(+(+(c[j>>2]|0)))));c[n>>2]=((c[j>>2]|0)+((c[o>>2]|0)-1)|0)/(c[o>>2]|0)|0;break}}while(0);if(a[138998]|0){B=c[24742]|0;e=c[n>>2]|0;d=c[o>>2]|0;c[g>>2]=(c[C>>2]|0)!=0?137258:137268;c[g+4>>2]=e;c[g+8>>2]=d;Y2(B,137281,g)|0}c[u>>2]=bK((c[o>>2]|0)+1<<3)|0;c[v>>2]=bK((c[n>>2]|0)+1<<3)|0;g=bK((c[j>>2]|0)*24|0)|0;c[r>>2]=g;c[s>>2]=g;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;g=(c[k>>2]|0)+(c[m>>2]<<5)|0;c[A>>2]=c[g>>2];c[A+4>>2]=c[g+4>>2];c[A+8>>2]=c[g+8>>2];c[A+12>>2]=c[g+12>>2];c[A+16>>2]=c[g+16>>2];c[A+20>>2]=c[g+20>>2];c[A+24>>2]=c[g+24>>2];c[A+28>>2]=c[g+28>>2];h[c[s>>2]>>3]=+h[A+16>>3]-+h[A>>3]+ +((c[(c[l>>2]|0)+8>>2]|0)>>>0);h[(c[s>>2]|0)+8>>3]=+h[A+16+8>>3]-+h[A+8>>3]+ +((c[(c[l>>2]|0)+8>>2]|0)>>>0);c[(c[s>>2]|0)+16>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+24}c[t>>2]=bK(c[j>>2]<<2)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;c[(c[t>>2]|0)+(c[m>>2]<<2)>>2]=(c[r>>2]|0)+((c[m>>2]|0)*24|0);c[m>>2]=(c[m>>2]|0)+1}g=c[l>>2]|0;if(!(c[(c[l>>2]|0)+24>>2]|0)){if(!(c[g+28>>2]&64))w3(c[t>>2]|0,c[j>>2]|0,4,91)}else{c[13644]=c[g+24>>2];w3(c[t>>2]|0,c[j>>2]|0,4,90)}c[q>>2]=0;c[p>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;c[s>>2]=c[(c[t>>2]|0)+(c[m>>2]<<2)>>2];if(+h[(c[u>>2]|0)+(c[q>>2]<<3)>>3]>+h[c[s>>2]>>3])E=+h[(c[u>>2]|0)+(c[q>>2]<<3)>>3];else E=+h[c[s>>2]>>3];h[(c[u>>2]|0)+(c[q>>2]<<3)>>3]=E;if(+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3]>+h[(c[s>>2]|0)+8>>3])F=+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3];else F=+h[(c[s>>2]|0)+8>>3];h[(c[v>>2]|0)+(c[p>>2]<<3)>>3]=F;if(c[C>>2]|0){c[q>>2]=(c[q>>2]|0)+1;if((c[q>>2]|0)==(c[o>>2]|0)){c[q>>2]=0;c[p>>2]=(c[p>>2]|0)+1}}else{c[p>>2]=(c[p>>2]|0)+1;if((c[p>>2]|0)==(c[n>>2]|0)){c[p>>2]=0;c[q>>2]=(c[q>>2]|0)+1}}c[m>>2]=(c[m>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+24}h[x>>3]=0.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>(c[o>>2]|0))break;h[w>>3]=+h[(c[u>>2]|0)+(c[m>>2]<<3)>>3];h[(c[u>>2]|0)+(c[m>>2]<<3)>>3]=+h[x>>3];h[x>>3]=+h[x>>3]+ +h[w>>3];c[m>>2]=(c[m>>2]|0)+1}h[y>>3]=0.0;c[m>>2]=c[n>>2];while(1){if(0>=(c[m>>2]|0))break;h[w>>3]=+h[(c[v>>2]|0)+((c[m>>2]|0)-1<<3)>>3];h[(c[v>>2]|0)+(c[m>>2]<<3)>>3]=+h[y>>3];h[y>>3]=+h[y>>3]+ +h[w>>3];c[m>>2]=(c[m>>2]|0)+-1}h[c[v>>2]>>3]=+h[y>>3];c[q>>2]=0;c[p>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;c[s>>2]=c[(c[t>>2]|0)+(c[m>>2]<<2)>>2];c[D>>2]=c[(c[s>>2]|0)+16>>2];y=(c[k>>2]|0)+(c[D>>2]<<5)|0;c[A>>2]=c[y>>2];c[A+4>>2]=c[y+4>>2];c[A+8>>2]=c[y+8>>2];c[A+12>>2]=c[y+12>>2];c[A+16>>2]=c[y+16>>2];c[A+20>>2]=c[y+20>>2];c[A+24>>2]=c[y+24>>2];c[A+28>>2]=c[y+28>>2];do if(!(c[(c[l>>2]|0)+28>>2]&4)){y=c[q>>2]|0;if(c[(c[l>>2]|0)+28>>2]&8){c[(c[z>>2]|0)+(c[D>>2]<<3)>>2]=~~(+h[(c[u>>2]|0)+(y+1<<3)>>3]-(+h[A+16>>3]-+h[A>>3]));break}else{c[(c[z>>2]|0)+(c[D>>2]<<3)>>2]=~~((+h[(c[u>>2]|0)+(y<<3)>>3]+ +h[(c[u>>2]|0)+((c[q>>2]|0)+1<<3)>>3]-+h[A+16>>3]-+h[A>>3])/2.0);break}}else c[(c[z>>2]|0)+(c[D>>2]<<3)>>2]=~~+h[(c[u>>2]|0)+(c[q>>2]<<3)>>3];while(0);do if(!(c[(c[l>>2]|0)+28>>2]&16)){y=c[p>>2]|0;if(c[(c[l>>2]|0)+28>>2]&32){c[(c[z>>2]|0)+(c[D>>2]<<3)+4>>2]=~~+h[(c[v>>2]|0)+(y+1<<3)>>3];break}else{c[(c[z>>2]|0)+(c[D>>2]<<3)+4>>2]=~~((+h[(c[v>>2]|0)+(y<<3)>>3]+ +h[(c[v>>2]|0)+((c[p>>2]|0)+1<<3)>>3]-+h[A+16+8>>3]-+h[A+8>>3])/2.0);break}}else c[(c[z>>2]|0)+(c[D>>2]<<3)+4>>2]=~~(+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3]-(+h[A+16+8>>3]-+h[A+8>>3]));while(0);if(c[C>>2]|0){c[q>>2]=(c[q>>2]|0)+1;if((c[q>>2]|0)==(c[o>>2]|0)){c[q>>2]=0;c[p>>2]=(c[p>>2]|0)+1}}else{c[p>>2]=(c[p>>2]|0)+1;if((c[p>>2]|0)==(c[n>>2]|0)){c[p>>2]=0;c[q>>2]=(c[q>>2]|0)+1}}c[m>>2]=(c[m>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+24}O4(c[r>>2]|0);O4(c[t>>2]|0);O4(c[u>>2]|0);O4(c[v>>2]|0);i=f;return c[z>>2]|0}function MG(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+112|0;h=g+104|0;j=g+24|0;k=g+8|0;l=g;m=g+100|0;n=g+96|0;o=g+92|0;p=g+88|0;q=g+84|0;r=g+80|0;s=g+76|0;t=g+72|0;u=g+68|0;v=g+64|0;w=g+56|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=RG(c[n>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+8>>2]|0)|0;if(a[138998]|0){f=c[24742]|0;c[l>>2]=c[q>>2];Y2(f,137035,l)|0}if((c[q>>2]|0)<=0){c[m>>2]=0;x=c[m>>2]|0;i=g;return x|0}c[w+4>>2]=0;c[w>>2]=0;c[r>>2]=bK(c[n>>2]<<4)|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;c[(c[r>>2]|0)+(c[v>>2]<<4)+12>>2]=c[v>>2];l=(c[o>>2]|0)+(c[v>>2]<<5)|0;f=(c[r>>2]|0)+(c[v>>2]<<4)|0;e=c[q>>2]|0;b=c[(c[p>>2]|0)+8>>2]|0;c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2];c[j+16>>2]=c[l+16>>2];c[j+20>>2]=c[l+20>>2];c[j+24>>2]=c[l+24>>2];c[j+28>>2]=c[l+28>>2];c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];SG(j,f,e,b,h,178518);c[v>>2]=(c[v>>2]|0)+1}c[s>>2]=bK(c[n>>2]<<2)|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[v>>2]<<4);c[v>>2]=(c[v>>2]|0)+1}w3(c[s>>2]|0,c[n>>2]|0,4,89);c[u>>2]=VK()|0;c[t>>2]=bK(c[n>>2]<<3)|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;UG(c[v>>2]|0,c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0,c[u>>2]|0,(c[t>>2]|0)+(c[(c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]|0)+12>>2]<<3)|0,c[q>>2]|0,c[(c[p>>2]|0)+8>>2]|0,c[o>>2]|0);c[v>>2]=(c[v>>2]|0)+1}O4(c[s>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;O4(c[(c[r>>2]|0)+(c[v>>2]<<4)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}O4(c[r>>2]|0);WK(c[u>>2]|0);a:do if((d[138998]|0)>1){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break a;u=c[24742]|0;r=c[(c[t>>2]|0)+(c[v>>2]<<3)>>2]|0;s=c[(c[t>>2]|0)+(c[v>>2]<<3)+4>>2]|0;c[k>>2]=c[v>>2];c[k+4>>2]=r;c[k+8>>2]=s;Y2(u,137051,k)|0;c[v>>2]=(c[v>>2]|0)+1}}while(0);c[m>>2]=c[t>>2];x=c[m>>2]|0;i=g;return x|0}function NG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+80|0;f=e+64|0;g=e+60|0;j=e+56|0;k=e+52|0;l=e+48|0;m=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0){d=(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;h[d>>3]=+h[d>>3]+ +(c[g>>2]|0);d=(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)+56+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0)}if(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0){d=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;h[d>>3]=+h[d>>3]+ +(c[g>>2]|0);d=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0)}if(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0){d=(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;h[d>>3]=+h[d>>3]+ +(c[g>>2]|0);d=(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)+56+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0)}if(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0){d=(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;h[d>>3]=+h[d>>3]+ +(c[g>>2]|0);d=(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)+56+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0)}if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)){i=e;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;d=m;b=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[k>>2]|0)*48|0)|0;a=d+48|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(a|0));c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[m+4>>2]|0))break;b=(c[m>>2]|0)+(c[l>>2]<<4)|0;h[b>>3]=+h[b>>3]+ +(c[g>>2]|0);b=(c[m>>2]|0)+(c[l>>2]<<4)+8|0;h[b>>3]=+h[b>>3]+ +(c[j>>2]|0);c[l>>2]=(c[l>>2]|0)+1}if(c[m+8>>2]|0){b=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[k>>2]|0)*48|0)+16|0;h[b>>3]=+h[b>>3]+ +(c[g>>2]|0);b=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[k>>2]|0)*48|0)+16+8|0;h[b>>3]=+h[b>>3]+ +(c[j>>2]|0)}if(c[m+12>>2]|0){b=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[k>>2]|0)*48|0)+32|0;h[b>>3]=+h[b>>3]+ +(c[g>>2]|0);b=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[k>>2]|0)*48|0)+32+8|0;h[b>>3]=+h[b>>3]+ +(c[j>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}i=e;return}function OG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;j=e+40|0;k=e+36|0;l=e;m=e+32|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;d=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[d>>2];c[l+4>>2]=c[d+4>>2];c[l+8>>2]=c[d+8>>2];c[l+12>>2]=c[d+12>>2];c[l+16>>2]=c[d+16>>2];c[l+20>>2]=c[d+20>>2];c[l+24>>2]=c[d+24>>2];c[l+28>>2]=c[d+28>>2];d=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[d>>2];c[l+4>>2]=c[d+4>>2];c[l+8>>2]=c[d+8>>2];c[l+12>>2]=c[d+12>>2];c[l+16>>2]=c[d+16>>2];c[l+20>>2]=c[d+20>>2];c[l+24>>2]=c[d+24>>2];c[l+28>>2]=c[d+28>>2];h[l>>3]=+h[l>>3]+ +(c[g>>2]|0);d=l+16|0;h[d>>3]=+h[d>>3]+ +(c[g>>2]|0);d=l+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0);d=l+16+8|0;h[d>>3]=+h[d>>3]+ +(c[j>>2]|0);d=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[d>>2]=c[l>>2];c[d+4>>2]=c[l+4>>2];c[d+8>>2]=c[l+8>>2];c[d+12>>2]=c[l+12>>2];c[d+16>>2]=c[l+16>>2];c[d+20>>2]=c[l+20>>2];c[d+24>>2]=c[l+24>>2];c[d+28>>2]=c[l+28>>2];if(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0){l=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;h[l>>3]=+h[l>>3]+ +(c[g>>2]|0);l=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+56+8|0;h[l>>3]=+h[l>>3]+ +(c[j>>2]|0)}c[m>>2]=1;while(1){if((c[m>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;c[k>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[m>>2]<<2)>>2];OG(c[k>>2]|0,c[g>>2]|0,c[j>>2]|0);c[m>>2]=(c[m>>2]|0)+1}i=e;return}function PG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;d=c[g>>2]|0;if((a[c[g>>2]>>0]|0)!=95){c[f>>2]=d;l=c[f>>2]|0;i=e;return l|0}c[g>>2]=d+1;c[k>>2]=1;a:while(1){if(!(c[k>>2]|0))break;d=a[c[g>>2]>>0]|0;c[j>>2]=d;if(!d)break;switch(c[j>>2]|0){case 99:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|1;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 105:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|64;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 117:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|2;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 116:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|16;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 98:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|32;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 108:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|4;c[g>>2]=(c[g>>2]|0)+1;continue a;break}case 114:{d=(c[h>>2]|0)+28|0;c[d>>2]=c[d>>2]|8;c[g>>2]=(c[g>>2]|0)+1;continue a;break}default:{c[k>>2]=0;continue a}}}c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}function QG(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;switch(c[d>>2]|0){case 1:{c[e>>2]=145613;break}case 2:{c[e>>2]=149084;break}case 3:{c[e>>2]=149098;break}case 4:{c[e>>2]=136931;break}case 5:{c[e>>2]=136937;break}default:c[e>>2]=137025}i=b;return c[e>>2]|0}function RG(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0,F=0.0,G=0.0,H=0.0;f=i;i=i+240|0;g=f+192|0;j=f+160|0;k=f+120|0;l=f+112|0;m=f+104|0;n=f+228|0;o=f+224|0;p=f+220|0;q=f+216|0;r=f+96|0;s=f+88|0;t=f+80|0;u=f+72|0;v=f+64|0;w=f+56|0;x=f+48|0;y=f+40|0;z=f+32|0;A=f+212|0;B=f+208|0;C=f;c[o>>2]=a;c[p>>2]=b;c[q>>2]=e;h[t>>3]=+(((c[o>>2]|0)*100|0)-1|0);h[v>>3]=0.0;h[u>>3]=0.0;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[o>>2]|0))break;e=(c[p>>2]|0)+(c[A>>2]<<5)|0;c[C>>2]=c[e>>2];c[C+4>>2]=c[e+4>>2];c[C+8>>2]=c[e+8>>2];c[C+12>>2]=c[e+12>>2];c[C+16>>2]=c[e+16>>2];c[C+20>>2]=c[e+20>>2];c[C+24>>2]=c[e+24>>2];c[C+28>>2]=c[e+28>>2];h[y>>3]=+h[C+16>>3]-+h[C>>3]+ +(c[q>>2]<<1|0);h[z>>3]=+h[C+16+8>>3]-+h[C+8>>3]+ +(c[q>>2]<<1|0);h[u>>3]=+h[u>>3]-(+h[y>>3]+ +h[z>>3]);h[v>>3]=+h[v>>3]-+h[y>>3]*+h[z>>3];c[A>>2]=(c[A>>2]|0)+1}h[w>>3]=+h[u>>3]*+h[u>>3]-+h[t>>3]*4.0*+h[v>>3];D=+h[w>>3];if(+h[w>>3]<0.0){h[m>>3]=D;$z(1,137141,m)|0;c[n>>2]=-1;E=c[n>>2]|0;i=f;return E|0}h[x>>3]=+O(+D);h[r>>3]=(-+h[u>>3]+ +h[x>>3])/(+h[t>>3]*2.0);h[s>>3]=(-+h[u>>3]-+h[x>>3])/(+h[t>>3]*2.0);m=~~+h[r>>3];c[B>>2]=m;c[B>>2]=(c[B>>2]|0)==0?1:m;if((d[138998]|0|0)>2){Y2(c[24742]|0,137168,l)|0;l=c[24742]|0;D=+h[u>>3];F=+h[v>>3];G=+h[w>>3];H=+h[x>>3];h[k>>3]=+h[t>>3];h[k+8>>3]=D;h[k+16>>3]=F;h[k+24>>3]=G;h[k+32>>3]=H;Y2(l,137196,k)|0;k=c[24742]|0;H=+h[r>>3];l=~~+h[s>>3];G=+h[s>>3];c[j>>2]=c[B>>2];h[j+8>>3]=H;c[j+16>>2]=l;h[j+24>>3]=G;Y2(k,137222,j)|0;j=c[24742]|0;G=+h[t>>3]*+h[s>>3]*+h[s>>3]+ +h[u>>3]*+h[s>>3]+ +h[v>>3];h[g>>3]=+h[t>>3]*+h[r>>3]*+h[r>>3]+ +h[u>>3]*+h[r>>3]+ +h[v>>3];h[g+8>>3]=G;Y2(j,137244,g)|0}c[n>>2]=c[B>>2];E=c[n>>2]|0;i=f;return E|0}function SG(a,b,e,f,g,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0;k=i;i=i+112|0;l=k+16|0;m=k;n=k+96|0;o=k+92|0;p=k+88|0;q=k+84|0;r=k+80|0;s=k+76|0;t=k+72|0;u=k+64|0;v=k+56|0;w=k+40|0;x=k+32|0;y=k+28|0;z=k+24|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=j;A=+h[a>>3];c[w>>2]=~~(+h[a>>3]>=0.0?A+.5:A-.5);A=+h[a+8>>3];c[w+4>>2]=~~(+h[a+8>>3]>=0.0?A+.5:A-.5);A=+h[a+16>>3];c[w+8>>2]=~~(+h[a+16>>3]>=0.0?A+.5:A-.5);A=+h[a+16+8>>3];c[w+8+4>>2]=~~(+h[a+16+8>>3]>=0.0?A+.5:A-.5);c[r>>2]=VK()|0;c[v>>2]=(c[g>>2]|0)-(c[p>>2]|0);c[v+4>>2]=(c[g+4>>2]|0)-(c[p>>2]|0);c[u>>2]=(c[g>>2]|0)+(c[w+8>>2]|0)-(c[w>>2]|0)+(c[p>>2]|0);c[u+4>>2]=(c[g+4>>2]|0)+(c[w+8+4>>2]|0)-(c[w+4>>2]|0)+(c[p>>2]|0);w=c[v>>2]|0;if((c[v>>2]|0)>=0)B=(w|0)/(c[o>>2]|0)|0;else B=((w+1|0)/(c[o>>2]|0)|0)-1|0;c[v>>2]=B;B=c[v+4>>2]|0;if((c[v+4>>2]|0)>=0)C=(B|0)/(c[o>>2]|0)|0;else C=((B+1|0)/(c[o>>2]|0)|0)-1|0;c[v+4>>2]=C;C=c[u>>2]|0;if((c[u>>2]|0)>=0)D=(C|0)/(c[o>>2]|0)|0;else D=((C+1|0)/(c[o>>2]|0)|0)-1|0;c[u>>2]=D;D=c[u+4>>2]|0;if((c[u+4>>2]|0)>=0)E=(D|0)/(c[o>>2]|0)|0;else E=((D+1|0)/(c[o>>2]|0)|0)-1|0;c[u+4>>2]=E;c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>(c[u>>2]|0))break;c[y>>2]=c[v+4>>2];while(1){if((c[y>>2]|0)>(c[u+4>>2]|0))break;YK(c[r>>2]|0,c[x>>2]|0,c[y>>2]|0);c[y>>2]=(c[y>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}x=aL(c[r>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=x;x=$K(c[r>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=x;c[s>>2]=~~+Z(+((+h[a+16>>3]-+h[a>>3]+ +(c[p>>2]<<1|0))/+(c[o>>2]|0)));c[t>>2]=~~+Z(+((+h[a+16+8>>3]-+h[a+8>>3]+ +(c[p>>2]<<1|0))/+(c[o>>2]|0)));c[c[n>>2]>>2]=(c[s>>2]|0)+(c[t>>2]|0);if((d[138998]|0|0)<=2){F=c[r>>2]|0;WK(F);i=k;return}o=c[24742]|0;p=c[(c[n>>2]|0)+8>>2]|0;a=c[s>>2]|0;s=c[t>>2]|0;c[m>>2]=c[q>>2];c[m+4>>2]=p;c[m+8>>2]=a;c[m+12>>2]=s;Y2(o,137100,m)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[(c[n>>2]|0)+8>>2]|0))break;m=c[24742]|0;o=c[(c[(c[n>>2]|0)+4>>2]|0)+(c[z>>2]<<3)+4>>2]|0;c[l>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+(c[z>>2]<<3)>>2];c[l+4>>2]=o;Y2(m,137127,l)|0;c[z>>2]=(c[z>>2]|0)+1}F=c[r>>2]|0;WK(F);i=k;return}function TG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=c[c[f>>2]>>2];i=d;return (c[c[h>>2]>>2]|0)-(c[c[g>>2]>>2]|0)|0}function UG(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+80|0;l=k+76|0;m=k+72|0;n=k+68|0;o=k+64|0;p=k+60|0;q=k+56|0;r=k+52|0;s=k+48|0;t=k+44|0;u=k+40|0;v=k+36|0;w=k+32|0;x=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;j=(c[r>>2]|0)+(c[(c[m>>2]|0)+12>>2]<<5)|0;c[x>>2]=c[j>>2];c[x+4>>2]=c[j+4>>2];c[x+8>>2]=c[j+8>>2];c[x+12>>2]=c[j+12>>2];c[x+16>>2]=c[j+16>>2];c[x+20>>2]=c[j+20>>2];c[x+24>>2]=c[j+24>>2];c[x+28>>2]=c[j+28>>2];if((c[l>>2]|0)==0?(c[u>>2]=~~+Z(+((+h[x+16>>3]-+h[x>>3]+ +(c[q>>2]<<1|0))/+(c[p>>2]|0))),c[v>>2]=~~+Z(+((+h[x+16+8>>3]-+h[x+8>>3]+ +(c[q>>2]<<1|0))/+(c[p>>2]|0))),(VG((0-(c[u>>2]|0)|0)/2|0,(0-(c[v>>2]|0)|0)/2|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0)!=0):0){i=k;return}if(VG(0,0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){i=k;return}c[u>>2]=~~+Z(+(+h[x+16>>3]-+h[x>>3]));c[v>>2]=~~+Z(+(+h[x+16+8>>3]-+h[x+8>>3]));x=(c[u>>2]|0)>=(c[v>>2]|0);c[w>>2]=1;if(x){a:while(1){c[s>>2]=0;c[t>>2]=0-(c[w>>2]|0);while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break a}c[s>>2]=(c[s>>2]|0)+1}while(1){if((c[t>>2]|0)>=(c[w>>2]|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break a}c[t>>2]=(c[t>>2]|0)+1}while(1){if((c[s>>2]|0)<=(0-(c[w>>2]|0)|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break a}c[s>>2]=(c[s>>2]|0)+-1}while(1){if((c[t>>2]|0)<=(0-(c[w>>2]|0)|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break a}c[t>>2]=(c[t>>2]|0)+-1}while(1){if((c[s>>2]|0)>=0)break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break a}c[s>>2]=(c[s>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}if((y|0)==39){i=k;return}}else{b:while(1){c[t>>2]=0;c[s>>2]=0-(c[w>>2]|0);while(1){if((c[t>>2]|0)<=(0-(c[w>>2]|0)|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break b}c[t>>2]=(c[t>>2]|0)+-1}while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break b}c[s>>2]=(c[s>>2]|0)+1}while(1){if((c[t>>2]|0)>=(c[w>>2]|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break b}c[t>>2]=(c[t>>2]|0)+1}while(1){if((c[s>>2]|0)<=(0-(c[w>>2]|0)|0))break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break b}c[s>>2]=(c[s>>2]|0)+-1}while(1){if((c[t>>2]|0)<=0)break;if(VG(c[s>>2]|0,c[t>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0){y=39;break b}c[t>>2]=(c[t>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+1}if((y|0)==39){i=k;return}}}function VG(a,b,e,f,g,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;l=i;i=i+96|0;m=l+88|0;n=l;o=l+84|0;p=l+80|0;q=l+76|0;r=l+72|0;s=l+68|0;t=l+64|0;u=l+60|0;v=l+56|0;w=l+52|0;x=l+48|0;y=l+40|0;z=l+32|0;A=l+24|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[w>>2]=c[(c[r>>2]|0)+4>>2];c[x>>2]=c[(c[r>>2]|0)+8>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0))break;k=c[w>>2]|0;c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y>>2]=(c[y>>2]|0)+(c[p>>2]|0);k=y+4|0;c[k>>2]=(c[k>>2]|0)+(c[q>>2]|0);k=c[s>>2]|0;c[m>>2]=c[y>>2];c[m+4>>2]=c[y+4>>2];if(ZK(k,m)|0){B=4;break}c[w>>2]=(c[w>>2]|0)+8;c[z>>2]=(c[z>>2]|0)+1}if((B|0)==4){c[o>>2]=0;C=c[o>>2]|0;i=l;return C|0}D=+h[(c[v>>2]|0)+(c[(c[r>>2]|0)+12>>2]<<5)>>3];c[A>>2]=~~(+h[(c[v>>2]|0)+(c[(c[r>>2]|0)+12>>2]<<5)>>3]>=0.0?D+.5:D-.5);D=+h[(c[v>>2]|0)+(c[(c[r>>2]|0)+12>>2]<<5)+8>>3];c[A+4>>2]=~~(+h[(c[v>>2]|0)+(c[(c[r>>2]|0)+12>>2]<<5)+8>>3]>=0.0?D+.5:D-.5);v=_(c[u>>2]|0,c[p>>2]|0)|0;c[c[t>>2]>>2]=v-(c[A>>2]|0);v=_(c[u>>2]|0,c[q>>2]|0)|0;c[(c[t>>2]|0)+4>>2]=v-(c[A+4>>2]|0);c[w>>2]=c[(c[r>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[x>>2]|0))break;r=c[w>>2]|0;c[y>>2]=c[r>>2];c[y+4>>2]=c[r+4>>2];c[y>>2]=(c[y>>2]|0)+(c[p>>2]|0);r=y+4|0;c[r>>2]=(c[r>>2]|0)+(c[q>>2]|0);r=c[s>>2]|0;c[m>>2]=c[y>>2];c[m+4>>2]=c[y+4>>2];XK(r,m);c[w>>2]=(c[w>>2]|0)+8;c[z>>2]=(c[z>>2]|0)+1}if((d[138998]|0|0)>=2){z=c[24742]|0;w=c[p>>2]|0;p=c[q>>2]|0;q=c[c[t>>2]>>2]|0;m=c[(c[t>>2]|0)+4>>2]|0;c[n>>2]=c[x>>2];c[n+4>>2]=w;c[n+8>>2]=p;c[n+12>>2]=q;c[n+16>>2]=m;Y2(z,137066,n)|0}c[o>>2]=1;C=c[o>>2]|0;i=l;return C|0}function WG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[j>>2]=c[c[g>>2]>>2];c[k>>2]=c[(c[13644]|0)+(c[(c[h>>2]|0)+16>>2]<<2)>>2];c[l>>2]=c[(c[13644]|0)+(c[(c[j>>2]|0)+16>>2]<<2)>>2];if((c[k>>2]|0)>(c[l>>2]|0)){c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}if((c[k>>2]|0)<(c[l>>2]|0)){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}else{c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}return 0}function XG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;j=d+20|0;k=d+16|0;l=d+8|0;m=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[k>>2]=c[c[g>>2]>>2];h[l>>3]=+h[(c[j>>2]|0)+8>>3]+ +h[c[j>>2]>>3];h[m>>3]=+h[(c[k>>2]|0)+8>>3]+ +h[c[k>>2]>>3];if(+h[l>>3]<+h[m>>3]){c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}if(+h[l>>3]>+h[m>>3]){c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}else{c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}return 0}function YG(a,b,e,f,g,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;k=i;i=i+256|0;l=k+248|0;m=k+240|0;n=k+64|0;o=k+48|0;p=k+236|0;q=k+232|0;r=k+228|0;s=k+224|0;t=k+220|0;u=k+216|0;v=k+212|0;w=k+208|0;x=k+200|0;y=k+192|0;z=k+184|0;A=k+176|0;B=k+32|0;C=k+172|0;D=k+168|0;E=k+164|0;F=k+160|0;G=k+156|0;H=k+152|0;I=k+148|0;J=k+144|0;K=k+140|0;L=k+136|0;M=k+120|0;N=k+116|0;O=k+112|0;P=k+16|0;Q=k+104|0;R=k+96|0;S=k;T=k+88|0;U=k+80|0;V=k+72|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[K>>2]=c[(c[t>>2]|0)+8>>2];c[L>>2]=c[(c[t>>2]|0)+12>>2];if(c[p>>2]|0)c[C>>2]=c[p>>2];else c[C>>2]=c[q>>2];c[u>>2]=VK()|0;W=+h[(c[(c[q>>2]|0)+8>>2]|0)+16>>3];c[H>>2]=(c[j>>2]|0)-~~(+h[(c[(c[q>>2]|0)+8>>2]|0)+16>>3]>=0.0?W+.5:W-.5);W=+h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3];c[I>>2]=(c[j+4>>2]|0)-~~(+h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?W+.5:W-.5);j=c[q>>2]|0;a:do if((c[(c[t>>2]|0)+16>>2]|0)==1){c[O>>2]=cK((kB(j)|0)<<2)|0;c[N>>2]=0;c[D>>2]=$B(c[q>>2]|0)|0;while(1){if(!(c[D>>2]|0))break;p=c[(c[(c[D>>2]|0)+8>>2]|0)+112>>2]|0;g=c[N>>2]|0;c[N>>2]=g+1;c[(c[O>>2]|0)+(g<<2)>>2]=p;c[(c[(c[D>>2]|0)+8>>2]|0)+112>>2]=0;c[D>>2]=aC(c[q>>2]|0,c[D>>2]|0)|0}c[N>>2]=1;while(1){if((c[N>>2]|0)>(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0))break;c[J>>2]=c[(c[(c[(c[q>>2]|0)+8>>2]|0)+184>>2]|0)+(c[N>>2]<<2)>>2];W=+h[(c[(c[J>>2]|0)+8>>2]|0)+16>>3];c[M>>2]=~~(+h[(c[(c[J>>2]|0)+8>>2]|0)+16>>3]>=0.0?W+.5:W-.5);W=+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3];c[M+4>>2]=~~(+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?W+.5:W-.5);W=+h[(c[(c[J>>2]|0)+8>>2]|0)+16+16>>3];c[M+8>>2]=~~(+h[(c[(c[J>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?W+.5:W-.5);W=+h[(c[(c[J>>2]|0)+8>>2]|0)+16+16+8>>3];c[M+8+4>>2]=~~(+h[(c[(c[J>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?W+.5:W-.5);b:do if((c[M+8>>2]|0)>(c[M>>2]|0)?(c[M+8+4>>2]|0)>(c[M+4>>2]|0):0){c[M>>2]=(c[M>>2]|0)+(c[H>>2]|0);p=M+4|0;c[p>>2]=(c[p>>2]|0)+(c[I>>2]|0);p=M+8|0;c[p>>2]=(c[p>>2]|0)+(c[H>>2]|0);p=M+8+4|0;c[p>>2]=(c[p>>2]|0)+(c[I>>2]|0);c[M>>2]=(c[M>>2]|0)-(c[K>>2]|0);p=M+4|0;c[p>>2]=(c[p>>2]|0)-(c[K>>2]|0);p=M+8|0;c[p>>2]=(c[p>>2]|0)+(c[K>>2]|0);p=M+8+4|0;c[p>>2]=(c[p>>2]|0)+(c[K>>2]|0);p=c[M>>2]|0;if((c[M>>2]|0)>=0)X=(p|0)/(c[s>>2]|0)|0;else X=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[M>>2]=X;p=c[M+4>>2]|0;if((c[M+4>>2]|0)>=0)Y=(p|0)/(c[s>>2]|0)|0;else Y=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[M+4>>2]=Y;p=c[M+8>>2]|0;if((c[M+8>>2]|0)>=0)_=(p|0)/(c[s>>2]|0)|0;else _=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[M+8>>2]=_;p=c[M+8+4>>2]|0;if((c[M+8+4>>2]|0)>=0)$=(p|0)/(c[s>>2]|0)|0;else $=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[M+8+4>>2]=$;c[F>>2]=c[M>>2];while(1){if((c[F>>2]|0)>(c[M+8>>2]|0))break;c[G>>2]=c[M+4>>2];while(1){if((c[G>>2]|0)>(c[M+8+4>>2]|0))break;YK(c[u>>2]|0,c[F>>2]|0,c[G>>2]|0);c[G>>2]=(c[G>>2]|0)+1}c[F>>2]=(c[F>>2]|0)+1}c[D>>2]=$B(c[J>>2]|0)|0;while(1){if(!(c[D>>2]|0))break b;c[(c[(c[D>>2]|0)+8>>2]|0)+212>>2]=c[J>>2];c[D>>2]=aC(c[J>>2]|0,c[D>>2]|0)|0}}while(0);c[N>>2]=(c[N>>2]|0)+1}c[D>>2]=$B(c[q>>2]|0)|0;while(1){if(!(c[D>>2]|0))break;pO(P,c[D>>2]|0);c[B>>2]=c[P>>2];c[B+4>>2]=c[P+4>>2];c[B+8>>2]=c[P+8>>2];c[B+12>>2]=c[P+12>>2];W=+h[B>>3];c[z>>2]=~~(+h[B>>3]>=0.0?W+.5:W-.5);W=+h[B+8>>3];c[z+4>>2]=~~(+h[B+8>>3]>=0.0?W+.5:W-.5);c[z>>2]=(c[z>>2]|0)+(c[H>>2]|0);p=z+4|0;c[p>>2]=(c[p>>2]|0)+(c[I>>2]|0);c:do if(c[(c[(c[D>>2]|0)+8>>2]|0)+212>>2]|0){p=c[z>>2]|0;if((c[z>>2]|0)>=0)aa=(p|0)/(c[s>>2]|0)|0;else aa=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[z>>2]=aa;p=c[z+4>>2]|0;if((c[z+4>>2]|0)>=0)ba=(p|0)/(c[s>>2]|0)|0;else ba=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[z+4>>2]=ba;c[E>>2]=OA(c[C>>2]|0,c[D>>2]|0)|0;while(1){if(!(c[E>>2]|0))break c;p=c[E>>2]|0;if((c[(c[(c[D>>2]|0)+8>>2]|0)+212>>2]|0)!=(c[(c[(c[((c[c[E>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)){p=c[E>>2]|0;g=c[u>>2]|0;f=c[H>>2]|0;e=c[I>>2]|0;b=c[s>>2]|0;a=c[L>>2]|0;c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];aH(p,l,g,f,e,b,a)}c[E>>2]=QA(c[C>>2]|0,c[E>>2]|0)|0}}else{c[A>>2]=~~(+(c[K>>2]|0)+(+h[(c[(c[D>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[D>>2]|0)+8>>2]|0)+96>>3])/2.0);c[A+4>>2]=~~(+(c[K>>2]|0)+ +h[(c[(c[D>>2]|0)+8>>2]|0)+80>>3]/2.0);c[m>>2]=c[z>>2];c[m+4>>2]=c[z+4>>2];c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];_G(Q,m,l);c[x>>2]=c[Q>>2];c[x+4>>2]=c[Q+4>>2];c[m>>2]=c[z>>2];c[m+4>>2]=c[z+4>>2];c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];$G(R,m,l);c[y>>2]=c[R>>2];c[y+4>>2]=c[R+4>>2];a=c[x>>2]|0;if((c[x>>2]|0)>=0)ca=(a|0)/(c[s>>2]|0)|0;else ca=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[x>>2]=ca;a=c[x+4>>2]|0;if((c[x+4>>2]|0)>=0)da=(a|0)/(c[s>>2]|0)|0;else da=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[x+4>>2]=da;a=c[y>>2]|0;if((c[y>>2]|0)>=0)ea=(a|0)/(c[s>>2]|0)|0;else ea=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[y>>2]=ea;a=c[y+4>>2]|0;if((c[y+4>>2]|0)>=0)fa=(a|0)/(c[s>>2]|0)|0;else fa=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[y+4>>2]=fa;c[F>>2]=c[x>>2];while(1){if((c[F>>2]|0)>(c[y>>2]|0))break;c[G>>2]=c[x+4>>2];while(1){if((c[G>>2]|0)>(c[y+4>>2]|0))break;YK(c[u>>2]|0,c[F>>2]|0,c[G>>2]|0);c[G>>2]=(c[G>>2]|0)+1}c[F>>2]=(c[F>>2]|0)+1}a=c[z>>2]|0;if((c[z>>2]|0)>=0)ga=(a|0)/(c[s>>2]|0)|0;else ga=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[z>>2]=ga;a=c[z+4>>2]|0;if((c[z+4>>2]|0)>=0)ha=(a|0)/(c[s>>2]|0)|0;else ha=((a+1|0)/(c[s>>2]|0)|0)-1|0;c[z+4>>2]=ha;c[E>>2]=OA(c[C>>2]|0,c[D>>2]|0)|0;while(1){if(!(c[E>>2]|0))break c;a=c[E>>2]|0;b=c[u>>2]|0;e=c[H>>2]|0;f=c[I>>2]|0;g=c[s>>2]|0;p=c[L>>2]|0;c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];aH(a,l,b,e,f,g,p);c[E>>2]=QA(c[C>>2]|0,c[E>>2]|0)|0}}while(0);c[D>>2]=aC(c[q>>2]|0,c[D>>2]|0)|0}c[N>>2]=0;c[D>>2]=$B(c[q>>2]|0)|0;while(1){if(!(c[D>>2]|0))break;p=c[N>>2]|0;c[N>>2]=p+1;c[(c[(c[D>>2]|0)+8>>2]|0)+112>>2]=c[(c[O>>2]|0)+(p<<2)>>2];c[D>>2]=aC(c[q>>2]|0,c[D>>2]|0)|0}O4(c[O>>2]|0)}else{c[D>>2]=$B(j)|0;while(1){if(!(c[D>>2]|0))break a;pO(S,c[D>>2]|0);c[B>>2]=c[S>>2];c[B+4>>2]=c[S+4>>2];c[B+8>>2]=c[S+8>>2];c[B+12>>2]=c[S+12>>2];W=+h[B>>3];c[z>>2]=~~(+h[B>>3]>=0.0?W+.5:W-.5);W=+h[B+8>>3];c[z+4>>2]=~~(+h[B+8>>3]>=0.0?W+.5:W-.5);c[z>>2]=(c[z>>2]|0)+(c[H>>2]|0);p=z+4|0;c[p>>2]=(c[p>>2]|0)+(c[I>>2]|0);c[A>>2]=~~(+(c[K>>2]|0)+(+h[(c[(c[D>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[D>>2]|0)+8>>2]|0)+96>>3])/2.0);c[A+4>>2]=~~(+(c[K>>2]|0)+ +h[(c[(c[D>>2]|0)+8>>2]|0)+80>>3]/2.0);c[m>>2]=c[z>>2];c[m+4>>2]=c[z+4>>2];c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];_G(T,m,l);c[x>>2]=c[T>>2];c[x+4>>2]=c[T+4>>2];c[m>>2]=c[z>>2];c[m+4>>2]=c[z+4>>2];c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];$G(U,m,l);c[y>>2]=c[U>>2];c[y+4>>2]=c[U+4>>2];p=c[x>>2]|0;if((c[x>>2]|0)>=0)ia=(p|0)/(c[s>>2]|0)|0;else ia=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[x>>2]=ia;p=c[x+4>>2]|0;if((c[x+4>>2]|0)>=0)ja=(p|0)/(c[s>>2]|0)|0;else ja=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[x+4>>2]=ja;p=c[y>>2]|0;if((c[y>>2]|0)>=0)ka=(p|0)/(c[s>>2]|0)|0;else ka=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[y>>2]=ka;p=c[y+4>>2]|0;if((c[y+4>>2]|0)>=0)la=(p|0)/(c[s>>2]|0)|0;else la=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[y+4>>2]=la;c[F>>2]=c[x>>2];while(1){if((c[F>>2]|0)>(c[y>>2]|0))break;c[G>>2]=c[x+4>>2];while(1){if((c[G>>2]|0)>(c[y+4>>2]|0))break;YK(c[u>>2]|0,c[F>>2]|0,c[G>>2]|0);c[G>>2]=(c[G>>2]|0)+1}c[F>>2]=(c[F>>2]|0)+1}p=c[z>>2]|0;if((c[z>>2]|0)>=0)ma=(p|0)/(c[s>>2]|0)|0;else ma=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[z>>2]=ma;p=c[z+4>>2]|0;if((c[z+4>>2]|0)>=0)na=(p|0)/(c[s>>2]|0)|0;else na=((p+1|0)/(c[s>>2]|0)|0)-1|0;c[z+4>>2]=na;c[E>>2]=OA(c[C>>2]|0,c[D>>2]|0)|0;while(1){if(!(c[E>>2]|0))break;p=c[E>>2]|0;g=c[u>>2]|0;f=c[H>>2]|0;e=c[I>>2]|0;b=c[s>>2]|0;a=c[L>>2]|0;c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];aH(p,l,g,f,e,b,a);c[E>>2]=QA(c[C>>2]|0,c[E>>2]|0)|0}c[D>>2]=aC(c[q>>2]|0,c[D>>2]|0)|0}}while(0);D=aL(c[u>>2]|0)|0;c[(c[r>>2]|0)+4>>2]=D;D=$K(c[u>>2]|0)|0;c[(c[r>>2]|0)+8>>2]=D;c[v>>2]=~~+Z(+((+h[(c[(c[q>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[q>>2]|0)+8>>2]|0)+16>>3]+ +(c[K>>2]<<1|0))/+(c[s>>2]|0)));c[w>>2]=~~+Z(+((+h[(c[(c[q>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3]+ +(c[K>>2]<<1|0))/+(c[s>>2]|0)));c[c[r>>2]>>2]=(c[v>>2]|0)+(c[w>>2]|0);if((d[138998]|0|0)<=2){oa=c[u>>2]|0;WK(oa);i=k;return 0}s=c[24742]|0;K=wB(c[q>>2]|0)|0;q=c[(c[r>>2]|0)+8>>2]|0;D=c[v>>2]|0;v=c[w>>2]|0;c[o>>2]=K;c[o+4>>2]=q;c[o+8>>2]=D;c[o+12>>2]=v;Y2(s,137100,o)|0;c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))break;o=c[24742]|0;s=c[(c[(c[r>>2]|0)+4>>2]|0)+(c[V>>2]<<3)+4>>2]|0;c[n>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+(c[V>>2]<<3)>>2];c[n+4>>2]=s;Y2(o,137127,n)|0;c[V>>2]=(c[V>>2]|0)+1}oa=c[u>>2]|0;WK(oa);i=k;return 0}function ZG(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;h=g+40|0;j=g;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[n>>2]=c[(c[k>>2]|0)+4>>2];c[o>>2]=c[(c[k>>2]|0)+8>>2];c[c[m>>2]>>2]=0-(c[f>>2]|0);c[(c[m>>2]|0)+4>>2]=0-(c[f+4>>2]|0);c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;f=c[l>>2]|0;k=c[n>>2]|0;c[n>>2]=k+8;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];XK(f,h);c[p>>2]=(c[p>>2]|0)+1}if((d[138998]|0|0)<2){i=g;return}p=c[24742]|0;h=c[c[m>>2]>>2]|0;n=c[(c[m>>2]|0)+4>>2]|0;c[j>>2]=c[o>>2];c[j+4>>2]=h;c[j+8>>2]=n;Y2(p,137347,j)|0;i=g;return}function _G(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=(c[b>>2]|0)-(c[d>>2]|0);c[f+4>>2]=(c[b+4>>2]|0)-(c[d+4>>2]|0);c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];i=e;return}function $G(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=(c[b>>2]|0)+(c[d>>2]|0);c[f+4>>2]=(c[b+4>>2]|0)+(c[d+4>>2]|0);c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];i=e;return}function aH(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0;k=i;i=i+176|0;l=k+112|0;m=k+96|0;n=k+160|0;o=k+156|0;p=k+152|0;q=k+148|0;r=k+144|0;s=k+140|0;t=k+136|0;u=k+132|0;v=k+48|0;w=k+32|0;x=k+16|0;y=k+128|0;z=k;c[n>>2]=a;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;h[w>>3]=+(c[b>>2]|0);h[w+8>>3]=+(c[b+4>>2]|0);if((c[s>>2]|0)!=0?(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;s=v;b=(c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[t>>2]|0)*48|0)|0;j=s+48|0;do{c[s>>2]=c[b>>2];s=s+4|0;b=b+4|0}while((s|0)<(j|0));if(c[v+8>>2]|0){b=v+16|0;c[w>>2]=c[b>>2];c[w+4>>2]=c[b+4>>2];c[w+8>>2]=c[b+8>>2];c[w+12>>2]=c[b+12>>2];b=c[v>>2]|0;c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];c[u>>2]=1}else{b=c[v>>2]|0;c[w>>2]=c[b>>2];c[w+4>>2]=c[b+4>>2];c[w+8>>2]=c[b+8>>2];c[w+12>>2]=c[b+12>>2];b=(c[v>>2]|0)+16|0;c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];c[u>>2]=2}h[w>>3]=+h[w>>3]+ +(c[p>>2]|0);b=w+8|0;h[b>>3]=+h[b>>3]+ +(c[q>>2]|0);A=+h[w>>3];if(+h[w>>3]>=0.0)B=A/+(c[r>>2]|0);else B=(A+1.0)/+(c[r>>2]|0)-1.0;h[w>>3]=B;A=+h[w+8>>3];if(+h[w+8>>3]>=0.0)C=A/+(c[r>>2]|0);else C=(A+1.0)/+(c[r>>2]|0)-1.0;h[w+8>>3]=C;h[x>>3]=+h[x>>3]+ +(c[p>>2]|0);b=x+8|0;h[b>>3]=+h[b>>3]+ +(c[q>>2]|0);A=+h[x>>3];if(+h[x>>3]>=0.0)D=A/+(c[r>>2]|0);else D=(A+1.0)/+(c[r>>2]|0)-1.0;h[x>>3]=D;A=+h[x+8>>3];if(+h[x+8>>3]>=0.0)E=A/+(c[r>>2]|0);else E=(A+1.0)/+(c[r>>2]|0)-1.0;h[x+8>>3]=E;b=c[o>>2]|0;c[m>>2]=c[w>>2];c[m+4>>2]=c[w+4>>2];c[m+8>>2]=c[w+8>>2];c[m+12>>2]=c[w+12>>2];c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];AG(m,l,b);while(1){if((c[u>>2]|0)>=(c[v+4>>2]|0))break;c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];c[w+12>>2]=c[x+12>>2];b=(c[v>>2]|0)+(c[u>>2]<<4)|0;c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];h[x>>3]=+h[x>>3]+ +(c[p>>2]|0);b=x+8|0;h[b>>3]=+h[b>>3]+ +(c[q>>2]|0);A=+h[x>>3];if(+h[x>>3]>=0.0)F=A/+(c[r>>2]|0);else F=(A+1.0)/+(c[r>>2]|0)-1.0;h[x>>3]=F;A=+h[x+8>>3];if(+h[x+8>>3]>=0.0)G=A/+(c[r>>2]|0);else G=(A+1.0)/+(c[r>>2]|0)-1.0;h[x+8>>3]=G;b=c[o>>2]|0;c[m>>2]=c[w>>2];c[m+4>>2]=c[w+4>>2];c[m+8>>2]=c[w+8>>2];c[m+12>>2]=c[w+12>>2];c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];AG(m,l,b);c[u>>2]=(c[u>>2]|0)+1}if(c[v+12>>2]|0){c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];c[w+12>>2]=c[x+12>>2];b=v+32|0;c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];h[x>>3]=+h[x>>3]+ +(c[p>>2]|0);b=x+8|0;h[b>>3]=+h[b>>3]+ +(c[q>>2]|0);A=+h[x>>3];if(+h[x>>3]>=0.0)H=A/+(c[r>>2]|0);else H=(A+1.0)/+(c[r>>2]|0)-1.0;h[x>>3]=H;A=+h[x+8>>3];if(+h[x+8>>3]>=0.0)I=A/+(c[r>>2]|0);else I=(A+1.0)/+(c[r>>2]|0)-1.0;h[x+8>>3]=I;b=c[o>>2]|0;c[m>>2]=c[w>>2];c[m+4>>2]=c[w+4>>2];c[m+8>>2]=c[w+8>>2];c[m+12>>2]=c[w+12>>2];c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];AG(m,l,b)}c[t>>2]=(c[t>>2]|0)+1}i=k;return}t=c[n>>2]|0;c[y>>2]=c[((c[c[n>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2];pO(z,c[y>>2]|0);c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];h[x>>3]=+h[x>>3]+ +(c[p>>2]|0);p=x+8|0;h[p>>3]=+h[p>>3]+ +(c[q>>2]|0);I=+h[x>>3];if(+h[x>>3]>=0.0)J=I/+(c[r>>2]|0);else J=(I+1.0)/+(c[r>>2]|0)-1.0;h[x>>3]=J;J=+h[x+8>>3];if(+h[x+8>>3]>=0.0)K=J/+(c[r>>2]|0);else K=(J+1.0)/+(c[r>>2]|0)-1.0;h[x+8>>3]=K;r=c[o>>2]|0;c[m>>2]=c[w>>2];c[m+4>>2]=c[w+4>>2];c[m+8>>2]=c[w+8>>2];c[m+12>>2]=c[w+12>>2];c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];AG(m,l,r);i=k;return}function bH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[c[h>>2]>>2]=0;e=(nB(qC(c[g>>2]|0)|0)|0)!=0;c[c[j>>2]>>2]=e?1:0;a:do if((c[13868]|0)!=0?(e=zA(c[g>>2]|0,c[13868]|0)|0,c[k>>2]=e,(a[e>>0]|0)!=0):0){c[l>>2]=54580;while(1){if(!(c[c[l>>2]>>2]|0))break a;if((a[c[k>>2]>>0]|0)==(a[c[c[l>>2]>>2]>>0]|0)?(J3(c[k>>2]|0,c[c[l>>2]>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+12}c[c[h>>2]>>2]=c[(c[l>>2]|0)+4>>2];c[c[j>>2]>>2]=c[(c[l>>2]|0)+8>>2]}while(0);if(((c[13879]|0)!=0?(c[c[j>>2]>>2]|0)==1:0)?(l=zA(c[g>>2]|0,c[13879]|0)|0,c[k>>2]=l,(a[l>>0]|0)!=0):0)iH(c[k>>2]|0,c[j>>2]|0);if(((c[13880]|0)!=0?(c[c[h>>2]>>2]|0)==1:0)?(l=zA(c[g>>2]|0,c[13880]|0)|0,c[k>>2]=l,(a[l>>0]|0)!=0):0)iH(c[k>>2]|0,c[h>>2]|0);if(!(a[(c[(c[g>>2]|0)+8>>2]|0)+153>>0]|0)){i=f;return}k=c[g>>2]|0;l=qC(c[((c[c[g>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)|0;k=c[g>>2]|0;e=c[g>>2]|0;c[m>>2]=VA(l,c[((c[c[g>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0,0,0)|0;bH(c[m>>2]|0,n,o);c[c[j>>2]>>2]=c[c[j>>2]>>2]|c[n>>2];c[c[h>>2]>>2]=c[c[h>>2]>>2]|c[o>>2];i=f;return}function cH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d;k=d+12|0;l=d+8|0;c[e>>2]=a;c[f>>2]=b;h[j>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=4)break;c[k>>2]=c[f>>2]>>(c[l>>2]<<3)&15;c[g>>2]=33736;while(1){if(!(c[(c[g>>2]|0)+16>>2]|0))break;m=c[g>>2]|0;if((c[k>>2]|0)==(c[c[g>>2]>>2]|0)){n=6;break}c[g>>2]=m+24}if((n|0)==6){n=0;h[j>>3]=+h[j>>3]+ +h[m+8>>3]}c[l>>2]=(c[l>>2]|0)+1}o=+h[j>>3]*10.0;p=o*+fO(c[e>>2]|0,c[13872]|0,1.0,0.0);i=d;return +p}function dH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+112|0;k=j+108|0;l=j+104|0;m=j+100|0;n=j+96|0;o=j+92|0;p=j+88|0;q=j+80|0;r=j+16|0;s=j+8|0;t=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;h[s>>3]=+cH(c[k>>2]|0,c[p>>2]|0);h[t>>3]=+h[s>>3]*+h[s>>3];c[(c[o>>2]|0)+12>>2]=c[p>>2];p=(c[o>>2]|0)+32|0;s=(c[l>>2]|0)+((c[n>>2]|0)+3<<4)|0;c[p>>2]=c[s>>2];c[p+4>>2]=c[s+4>>2];c[p+8>>2]=c[s+8>>2];c[p+12>>2]=c[s+12>>2];if((c[n>>2]|0)>(c[m>>2]|0)?(+h[(c[l>>2]|0)+(c[n>>2]<<4)>>3]-+h[(c[l>>2]|0)+((c[n>>2]|0)+3<<4)>>3])*(+h[(c[l>>2]|0)+(c[n>>2]<<4)>>3]-+h[(c[l>>2]|0)+((c[n>>2]|0)+3<<4)>>3])+(+h[(c[l>>2]|0)+(c[n>>2]<<4)+8>>3]-+h[(c[l>>2]|0)+((c[n>>2]|0)+3<<4)+8>>3])*(+h[(c[l>>2]|0)+(c[n>>2]<<4)+8>>3]-+h[(c[l>>2]|0)+((c[n>>2]|0)+3<<4)+8>>3])<+h[t>>3]:0)c[n>>2]=(c[n>>2]|0)-3;m=r+48|0;s=(c[l>>2]|0)+(c[n>>2]<<4)|0;c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];s=r+32|0;m=(c[l>>2]|0)+((c[n>>2]|0)+1<<4)|0;c[s>>2]=c[m>>2];c[s+4>>2]=c[m+4>>2];c[s+8>>2]=c[m+8>>2];c[s+12>>2]=c[m+12>>2];m=r+16|0;s=(c[l>>2]|0)+((c[n>>2]|0)+2<<4)|0;c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];s=(c[o>>2]|0)+32|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];c[q>>2]=r;c[q+4>>2]=t;gN(q,92,r,1);q=(c[l>>2]|0)+(c[n>>2]<<4)|0;t=r+48|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];t=(c[l>>2]|0)+((c[n>>2]|0)+1<<4)|0;q=r+32|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];q=(c[l>>2]|0)+((c[n>>2]|0)+2<<4)|0;t=r+16|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];t=(c[l>>2]|0)+((c[n>>2]|0)+3<<4)|0;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];i=j;return c[n>>2]|0} +function PN(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[f>>2]=a;h[g>>3]=d;if((c[(c[f>>2]|0)+4>>2]|0)>=(c[(c[f>>2]|0)+8>>2]|0)){a=(c[f>>2]|0)+8|0;c[a>>2]=c[a>>2]<<1;a=eK(c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+8>>2]<<6)|0;c[c[f>>2]>>2]=a}h[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]<<6)>>3]=+h[b>>3];h[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]<<6)+8>>3]=+h[b+8>>3];d=+h[g>>3];g=(c[f>>2]|0)+4|0;b=c[g>>2]|0;c[g>>2]=b+1;h[(c[c[f>>2]>>2]|0)+(b<<6)+16>>3]=d;i=e;return}function QN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0;c=i;i=i+16|0;d=c+8|0;e=c;h[d>>3]=+h[a>>3]-+h[b>>3];h[e>>3]=+h[a+8>>3]-+h[b+8>>3];f=+O(+(+h[d>>3]*+h[d>>3]+ +h[e>>3]*+h[e>>3]));i=c;return +f}function RN(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+8>>2]|0)<=(c[(c[d>>2]|0)+4>>2]|0)){i=b;return}a=eK(c[c[d>>2]>>2]|0,c[(c[d>>2]|0)+4>>2]<<6)|0;c[c[d>>2]>>2]=a;i=b;return}function SN(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+8|0;h=f;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;c[j>>2]=b;c[k>>2]=e;c[l>>2]=0;c[m>>2]=0;if(!(c[(c[k>>2]|0)+4>>2]|0))La(144274,144285,202,144296);c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[c[n>>2]>>2]|0))La(144310,144285,205,144296);if(!(c[(c[n>>2]|0)+8>>2]|0)){e=UN(c[c[n>>2]>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=e}if((d[138998]|0|0)!=0?(GH(c[c[n>>2]>>2]|0)|0)!=0:0)c[l>>2]=m;if(!((rS(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)<<24>>24))VN(c[k>>2]|0,c[l>>2]|0);do if(c[l>>2]|0){j=c[24742]|0;e=c[c[n>>2]>>2]|0;if(c[m>>2]|0){b=c[m>>2]|0;c[h>>2]=e;c[h+4>>2]=b;Y2(j,144321,h)|0;break}else{c[g>>2]=e;Y2(j,144353,g)|0;break}}while(0);g=(c[k>>2]|0)+32|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=f;return}function TN(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+108>>2]=0;c[(c[d>>2]|0)+108+4>>2]=32;c[(c[d>>2]|0)+108+8>>2]=-1;c[(c[d>>2]|0)+108+12>>2]=37;c[(c[d>>2]|0)+108+16>>2]=60;c[(c[d>>2]|0)+108+20>>2]=55;c[(c[d>>2]|0)+108+24>>2]=0;c[(c[d>>2]|0)+108+28>>2]=0;c[(c[d>>2]|0)+108+32>>2]=0;a=Nz((c[d>>2]|0)+108|0,c[12989]|0)|0;c[(c[d>>2]|0)+144>>2]=a;i=b;return c[(c[d>>2]|0)+144>>2]|0}function UN(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[14384]|0)!=0?(F3(c[14384]|0,c[d>>2]|0)|0)==0:0){e=c[14708]|0;i=b;return e|0}c[14384]=c[d>>2];c[14708]=v3(57536,57572,35,36,95)|0;e=c[14708]|0;i=b;return e|0}function VN(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f+28|0;j=f+24|0;k=f+20|0;l=f;m=f+32|0;n=f+16|0;o=f+12|0;p=f+8|0;c[g>>2]=b;c[j>>2]=e;c[p>>2]=c[c[(c[g>>2]|0)+4>>2]>>2];h[l>>3]=+h[(c[(c[g>>2]|0)+4>>2]|0)+16>>3];h[(c[g>>2]|0)+32>>3]=0.0;h[(c[g>>2]|0)+32+8>>3]=+h[l>>3]*1.2;h[(c[g>>2]|0)+16>>3]=0.0;h[(c[g>>2]|0)+24>>3]=+h[l>>3]*.1;c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|0)+12>>2]=0;do if(O3(c[p>>2]|0,144387,4)|0){if((O3(c[p>>2]|0,144411,5)|0)!=0?(O3(c[p>>2]|0,144417,9)|0)!=0:0){c[o>>2]=144444;c[k>>2]=40856;break}c[o>>2]=144427;c[k>>2]=38808}else{c[o>>2]=144392;c[k>>2]=36760}while(0);if(c[j>>2]|0)c[c[j>>2]>>2]=c[o>>2];o=c[c[g>>2]>>2]|0;c[n>>2]=o;if(!o){i=f;return}while(1){o=c[n>>2]|0;c[n>>2]=o+1;j=a[o>>0]|0;a[m>>0]=j;if(!(j<<24>>24))break;j=(c[g>>2]|0)+32|0;h[j>>3]=+h[j>>3]+ +h[(c[k>>2]|0)+((d[m>>0]|0)<<3)>>3]}m=(c[g>>2]|0)+32|0;h[m>>3]=+h[m>>3]*+h[l>>3];i=f;return}function WN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+12|0;g=e+4|0;j=e;c[e+16>>2]=a;c[f>>2]=b;c[e+8>>2]=d;c[g>>2]=c[f>>2];c[j>>2]=P4(1,32)|0;if(c[c[g>>2]>>2]|0){f=M3(c[c[g>>2]>>2]|0)|0;c[c[j>>2]>>2]=f}if(c[(c[g>>2]|0)+4>>2]|0){f=M3(c[(c[g>>2]|0)+4>>2]|0)|0;c[(c[j>>2]|0)+4>>2]=f}f=(c[j>>2]|0)+24|0;c[f>>2]=c[f>>2]&-128|c[(c[g>>2]|0)+24>>2]&127;h[(c[j>>2]|0)+16>>3]=+h[(c[g>>2]|0)+16>>3];c[(c[j>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];i=e;return c[j>>2]|0}function XN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=c[f>>2];if(c[c[g>>2]>>2]|0)O4(c[c[g>>2]>>2]|0);if(!(c[(c[g>>2]|0)+4>>2]|0)){h=c[g>>2]|0;O4(h);i=e;return}O4(c[(c[g>>2]|0)+4>>2]|0);h=c[g>>2]|0;O4(h);i=e;return}function YN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+28|0;j=f+20|0;k=f+16|0;l=f+8|0;m=f+4|0;n=f;c[f+24>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f+12>>2]=e;c[m>>2]=c[j>>2];c[n>>2]=c[k>>2];if((c[c[m>>2]>>2]|0)==0?(c[c[n>>2]>>2]|0)==0:0)o=9;else o=3;do if((o|0)==3){if(!(c[c[m>>2]>>2]|0)){c[g>>2]=-1;break}if(!(c[c[n>>2]>>2]|0)){c[g>>2]=1;break}c[l>>2]=J3(c[c[m>>2]>>2]|0,c[c[n>>2]>>2]|0)|0;if(c[l>>2]|0)c[g>>2]=c[l>>2];else o=9}while(0);do if((o|0)==9){if(!((c[(c[m>>2]|0)+4>>2]|0)==0?(c[(c[n>>2]|0)+4>>2]|0)==0:0)){if(!(c[(c[m>>2]|0)+4>>2]|0)){c[g>>2]=-1;break}if(!(c[(c[n>>2]|0)+4>>2]|0)){c[g>>2]=1;break}c[l>>2]=J3(c[(c[m>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0){c[g>>2]=c[l>>2];break}}c[l>>2]=(c[(c[m>>2]|0)+24>>2]&127)-(c[(c[n>>2]|0)+24>>2]&127);if(c[l>>2]|0){c[g>>2]=c[l>>2];break}if(+h[(c[m>>2]|0)+16>>3]<+h[(c[n>>2]|0)+16>>3]){c[g>>2]=-1;break}if(+h[(c[m>>2]|0)+16>>3]>+h[(c[n>>2]|0)+16>>3]){c[g>>2]=1;break}else{c[g>>2]=0;break}}while(0);i=f;return c[g>>2]|0}function ZN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=F3(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;i=d;return b|0}function _N(){Ra(58836)|0;return}function $N(){var a=0,b=0,d=0;a=i;i=i+32|0;b=a+8|0;d=a;Ra(b|0)|0;h[d>>3]=+((c[b>>2]|0)+(c[b+4>>2]|0)-(c[14709]|0)-(c[14710]|0)|0)/60.0;i=a;return +(+h[d>>3])}function aO(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(16)|0;if((c[d>>2]|0)<=1)c[d>>2]=2;a=bK(c[d>>2]<<2)|0;c[c[e>>2]>>2]=a;c[(c[e>>2]|0)+12>>2]=a;c[(c[e>>2]|0)+8>>2]=a;c[(c[e>>2]|0)+4>>2]=(c[c[e>>2]>>2]|0)+(c[d>>2]<<2);i=b;return c[e>>2]|0}function bO(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return}function cO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;f=(c[e>>2]|0)+12|0;a=c[f>>2]|0;c[f>>2]=a+4;c[a>>2]=b;if((c[(c[e>>2]|0)+12>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>2]|0)>>>0){i=d;return}c[(c[e>>2]|0)+12>>2]=c[c[e>>2]>>2];i=d;return}function dO(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[(c[d>>2]|0)+8>>2]|0)==(c[(c[d>>2]|0)+12>>2]|0)){c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}a=(c[d>>2]|0)+8|0;g=c[a>>2]|0;c[a>>2]=g+4;c[e>>2]=c[g>>2];if((c[(c[d>>2]|0)+8>>2]|0)>>>0<(c[(c[d>>2]|0)+4>>2]|0)>>>0){f=c[e>>2]|0;i=b;return f|0}c[(c[d>>2]|0)+8>>2]=c[c[d>>2]>>2];f=c[e>>2]|0;i=b;return f|0}function eO(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;do if(!(c[k>>2]|0))c[h>>2]=c[l>>2];else{c[n>>2]=zA(c[j>>2]|0,c[k>>2]|0)|0;if((c[n>>2]|0)!=0?(a[c[n>>2]>>0]|0)!=0:0){c[p>>2]=z3(c[n>>2]|0,o,10)|0;if((c[n>>2]|0)==(c[o>>2]|0)){c[h>>2]=c[l>>2];break}if((c[p>>2]|0)<(c[m>>2]|0)){c[h>>2]=c[m>>2];break}else{c[h>>2]=c[p>>2];break}}c[h>>2]=c[l>>2]}while(0);i=g;return c[h>>2]|0}function fO(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;j=g+24|0;k=g+44|0;l=g+40|0;m=g+16|0;n=g+8|0;o=g+36|0;p=g+32|0;q=g;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;h[n>>3]=f;do if((c[l>>2]|0)!=0&(c[k>>2]|0)!=0){c[o>>2]=zA(c[k>>2]|0,c[l>>2]|0)|0;if((c[o>>2]|0)!=0?(a[c[o>>2]>>0]|0)!=0:0){h[q>>3]=+x3(c[o>>2]|0,p);if((c[o>>2]|0)==(c[p>>2]|0)){h[j>>3]=+h[m>>3];break}if(+h[q>>3]<+h[n>>3]){h[j>>3]=+h[n>>3];break}else{h[j>>3]=+h[q>>3];break}}h[j>>3]=+h[m>>3]}else h[j>>3]=+h[m>>3];while(0);i=g;return +(+h[j>>3])}function gO(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+8|0;e=b+16|0;f=b;c[e>>2]=a;do if(!(+h[4246]>0.0)){a=c[e>>2]|0;h[f>>3]=+fO(a,qA(c[e>>2]|0,0,145254,0)|0,-1.0,0.0);if(+h[f>>3]==0.0){h[d>>3]=72.0;break}else{h[d>>3]=+h[f>>3];break}}else h[d>>3]=+h[4246];while(0);i=b;return +(+h[d>>3])}function hO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[h>>2]|0)!=0&(c[g>>2]|0)!=0){c[f>>2]=zA(c[g>>2]|0,c[h>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=c[j>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function iO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=hO(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if((c[k>>2]|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){l=c[k>>2]|0;i=f;return l|0}c[k>>2]=c[j>>2];l=c[k>>2]|0;i=f;return l|0}function jO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[j>>2]|0)){a[g>>0]=c[k>>2];l=a[g>>0]|0;i=f;return l|0}else{a[g>>0]=kO(zA(c[h>>2]|0,c[j>>2]|0)|0)|0;l=a[g>>0]|0;i=f;return l|0}return 0}function kO(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=uO(c[d>>2]|0,0)|0;i=b;return a|0}function lO(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){if(c[(c[(c[d>>2]|0)+8>>2]|0)+220>>2]|0)e=(c[(c[(c[d>>2]|0)+8>>2]|0)+220>>2]|0)!=(c[d>>2]|0);else e=0;f=c[d>>2]|0;if(!e)break;if(c[(c[(c[(c[f+8>>2]|0)+220>>2]|0)+8>>2]|0)+220>>2]|0)c[(c[(c[d>>2]|0)+8>>2]|0)+220>>2]=c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+220>>2]|0)+8>>2]|0)+220>>2];c[d>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+220>>2]}i=b;return f|0}function mO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;if((c[f>>2]|0)==(c[g>>2]|0)){c[e>>2]=b;h=c[e>>2]|0;i=d;return h|0}a=c[f>>2]|0;if(!(c[(c[b+8>>2]|0)+220>>2]|0)){c[(c[(c[f>>2]|0)+8>>2]|0)+220>>2]=a;c[(c[(c[f>>2]|0)+8>>2]|0)+216>>2]=1}else c[f>>2]=lO(a)|0;a=c[g>>2]|0;if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+220>>2]|0)){c[(c[(c[g>>2]|0)+8>>2]|0)+220>>2]=a;c[(c[(c[g>>2]|0)+8>>2]|0)+216>>2]=1}else c[g>>2]=lO(a)|0;if((c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+120>>2]|0)){c[(c[(c[f>>2]|0)+8>>2]|0)+220>>2]=c[g>>2];a=(c[(c[g>>2]|0)+8>>2]|0)+216|0;c[a>>2]=(c[a>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+216>>2]|0)}else{c[(c[(c[g>>2]|0)+8>>2]|0)+220>>2]=c[f>>2];a=(c[(c[f>>2]|0)+8>>2]|0)+216|0;c[a>>2]=(c[a>>2]|0)+(c[(c[(c[g>>2]|0)+8>>2]|0)+216>>2]|0);c[g>>2]=c[f>>2]}c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}function nO(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]=1;c[(c[(c[e>>2]|0)+8>>2]|0)+220>>2]=0;a[(c[(c[e>>2]|0)+8>>2]|0)+159>>0]=0;i=d;return}function oO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((b|0)==(lO(c[e>>2]|0)|0)){c[(c[(c[e>>2]|0)+8>>2]|0)+220>>2]=c[f>>2];b=(c[(c[f>>2]|0)+8>>2]|0)+216|0;c[b>>2]=(c[b>>2]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0);i=d;return}else La(145273,145265,195,145289)}function pO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;e=d+16|0;f=d;c[e>>2]=b;h[f>>3]=+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3]*72.0;h[f+8>>3]=+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*72.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=d;return}function qO(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+608|0;k=j+604|0;l=j+600|0;m=j+576|0;n=j+596|0;o=j+592|0;p=j+588|0;q=j+584|0;r=j;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;c[n>>2]=f;c[o>>2]=g;c[q>>2]=0;while(1){if((c[q>>2]|0)>(c[l>>2]|0))break;g=r+(c[q>>2]<<4)|0;f=(c[k>>2]|0)+(c[q>>2]<<4)|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=1;while(1){if((c[p>>2]|0)>(c[l>>2]|0))break;c[q>>2]=0;while(1){if((c[q>>2]|0)>((c[l>>2]|0)-(c[p>>2]|0)|0))break;h[r+((c[p>>2]|0)*96|0)+(c[q>>2]<<4)>>3]=(1.0-+h[m>>3])*+h[r+(((c[p>>2]|0)-1|0)*96|0)+(c[q>>2]<<4)>>3]+ +h[m>>3]*+h[r+(((c[p>>2]|0)-1|0)*96|0)+((c[q>>2]|0)+1<<4)>>3];h[r+((c[p>>2]|0)*96|0)+(c[q>>2]<<4)+8>>3]=(1.0-+h[m>>3])*+h[r+(((c[p>>2]|0)-1|0)*96|0)+(c[q>>2]<<4)+8>>3]+ +h[m>>3]*+h[r+(((c[p>>2]|0)-1|0)*96|0)+((c[q>>2]|0)+1<<4)+8>>3];c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}a:do if(c[n>>2]|0){c[q>>2]=0;while(1){if((c[q>>2]|0)>(c[l>>2]|0))break a;p=(c[n>>2]|0)+(c[q>>2]<<4)|0;m=r+((c[q>>2]|0)*96|0)|0;c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];c[q>>2]=(c[q>>2]|0)+1}}while(0);if(!(c[o>>2]|0)){s=c[l>>2]|0;t=r+(s*96|0)|0;c[a>>2]=c[t>>2];c[a+4>>2]=c[t+4>>2];c[a+8>>2]=c[t+8>>2];c[a+12>>2]=c[t+12>>2];i=j;return}c[q>>2]=0;while(1){if((c[q>>2]|0)>(c[l>>2]|0))break;n=(c[o>>2]|0)+(c[q>>2]<<4)|0;m=r+(((c[l>>2]|0)-(c[q>>2]|0)|0)*96|0)+(c[q>>2]<<4)|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];c[q>>2]=(c[q>>2]|0)+1}s=c[l>>2]|0;t=r+(s*96|0)|0;c[a>>2]=c[t>>2];c[a+4>>2]=c[t+4>>2];c[a+8>>2]=c[t+8>>2];c[a+12>>2]=c[t+12>>2];i=j;return}function rO(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=b;c[h>>2]=0;do{if(((c[14713]|0)-(c[h>>2]|0)|0)<1024){c[14713]=(c[14713]|0)+1024;c[14714]=eK(c[14714]|0,c[14713]|0)|0}c[g>>2]=V2((c[14714]|0)+(c[h>>2]|0)|0,(c[14713]|0)-(c[h>>2]|0)|0,c[f>>2]|0)|0;if(!(c[g>>2]|0))break;b=N3(c[g>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+b}while((a[(c[14714]|0)+((c[h>>2]|0)-1)>>0]|0)!=10);if((c[h>>2]|0)>0){c[e>>2]=c[14714];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function sO(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+8|0;g=e;h=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;c[j>>2]=b;if((c[j>>2]|0)!=0?(a[c[j>>2]>>0]|0)!=0:0){if(!(c[13794]|0)){if((c[14715]|0)!=(c[13793]|0)){if(c[14717]|0){O4(c[c[14717]>>2]|0);O4(c[14717]|0);c[14717]=0}c[14715]=c[13793];if((c[14715]|0)!=0?(a[c[14715]>>0]|0)!=0:0)c[14717]=XO(c[14715]|0,58864)|0}if((c[14717]|0)!=0?(a[c[j>>2]>>0]|0)!=(a[145579]|0):0){c[h>>2]=YO(c[14717]|0,c[14716]|0,c[j>>2]|0)|0;m=c[h>>2]|0;i=e;return m|0}else{c[h>>2]=c[j>>2];m=c[h>>2]|0;i=e;return m|0}}if((c[13792]|0)!=0?(a[c[13792]>>0]|0)!=0:0){if(!(c[14715]|0)){c[14717]=XO(c[13792]|0,58864)|0;c[14715]=c[13792]}c[k>>2]=c[j>>2];b=S3(c[k>>2]|0,47)|0;c[l>>2]=b;if(b){b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[k>>2]=b}b=S3(c[k>>2]|0,92)|0;c[l>>2]=b;if(b){b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[k>>2]=b}b=S3(c[k>>2]|0,58)|0;c[l>>2]=b;if(b){b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[k>>2]=b}if((d[145300]|0)!=0?(c[k>>2]|0)!=(c[j>>2]|0):0){b=c[13792]|0;c[f>>2]=c[j>>2];c[f+4>>2]=b;$z(0,145426,f)|0;a[145300]=0}c[h>>2]=YO(c[14717]|0,c[14716]|0,c[k>>2]|0)|0;m=c[h>>2]|0;i=e;return m|0}if(a[145300]|0){c[g>>2]=c[13794];$z(0,145301,g)|0;a[145300]=0}c[h>>2]=0;m=c[h>>2]|0;i=e;return m|0}c[h>>2]=0;m=c[h>>2]|0;i=e;return m|0}function tO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){e=c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0;c[l>>2]=e;if(!e){m=7;break}if(((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)==(a[c[l>>2]>>0]|0):0)?(J3(c[g>>2]|0,c[l>>2]|0)|0)==0:0){m=7;break}c[k>>2]=(c[k>>2]|0)+1}if((m|0)==7){i=f;return c[(c[j>>2]|0)+(c[k>>2]<<2)>>2]|0}return 0}function uO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+5|0;g=e;h=e+4|0;c[g>>2]=b;a[h>>0]=d;do if((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){if(!(F3(c[g>>2]|0,174911)|0)){a[f>>0]=0;break}if(!(F3(c[g>>2]|0,145581)|0)){a[f>>0]=0;break}if(!(F3(c[g>>2]|0,145584)|0)){a[f>>0]=1;break}if(!(F3(c[g>>2]|0,145589)|0)){a[f>>0]=1;break}if(p1(a[c[g>>2]>>0]|0)|0){a[f>>0]=u3(c[g>>2]|0)|0;break}else{a[f>>0]=a[h>>0]|0;break}}else j=3;while(0);if((j|0)==3)a[f>>0]=a[h>>0]|0;i=e;return a[f>>0]|0}function vO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;e=i;i=i+240|0;f=e+236|0;g=e+232|0;j=e+228|0;k=e+224|0;l=e+220|0;m=e+216|0;n=e+208|0;o=e+200|0;p=e+192|0;q=e+184|0;r=e+176|0;s=e+168|0;t=e+160|0;u=e+96|0;v=e+80|0;w=e+32|0;x=e+16|0;y=e;c[f>>2]=b;c[m>>2]=-1;c[l>>2]=-1;h[n>>3]=1.e+38;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;z=w;A=(c[c[f>>2]>>2]|0)+((c[g>>2]|0)*48|0)|0;B=z+48|0;do{c[z>>2]=c[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[w+4>>2]|0))break;h[x>>3]=+h[(c[w>>2]|0)+(c[j>>2]<<4)>>3];h[x+8>>3]=+h[(c[w>>2]|0)+(c[j>>2]<<4)+8>>3];h[o>>3]=(+h[x>>3]-+h[d>>3])*(+h[x>>3]-+h[d>>3])+(+h[x+8>>3]-+h[d+8>>3])*(+h[x+8>>3]-+h[d+8>>3]);if(!((c[m>>2]|0)!=-1?!(+h[o>>3]<+h[n>>3]):0)){c[l>>2]=c[g>>2];c[m>>2]=c[j>>2];h[n>>3]=+h[o>>3]}c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}z=w;A=(c[c[f>>2]>>2]|0)+((c[l>>2]|0)*48|0)|0;B=z+48|0;do{c[z>>2]=c[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));if((c[m>>2]|0)==((c[w+4>>2]|0)-1|0))c[m>>2]=(c[m>>2]|0)+-1;c[j>>2]=((c[m>>2]|0)/3|0)*3;c[k>>2]=0;while(1){if((c[k>>2]|0)>=4)break;h[u+(c[k>>2]<<4)>>3]=+h[(c[w>>2]|0)+((c[j>>2]|0)+(c[k>>2]|0)<<4)>>3];h[u+(c[k>>2]<<4)+8>>3]=+h[(c[w>>2]|0)+((c[j>>2]|0)+(c[k>>2]|0)<<4)+8>>3];c[k>>2]=(c[k>>2]|0)+1}h[r>>3]=0.0;h[s>>3]=1.0;h[p>>3]=(+h[u>>3]-+h[d>>3])*(+h[u>>3]-+h[d>>3])+(+h[u+8>>3]-+h[d+8>>3])*(+h[u+8>>3]-+h[d+8>>3]);h[q>>3]=(+h[u+48>>3]-+h[d>>3])*(+h[u+48>>3]-+h[d>>3])+(+h[u+48+8>>3]-+h[d+8>>3])*(+h[u+48+8>>3]-+h[d+8>>3]);while(1){h[t>>3]=(+h[r>>3]+ +h[s>>3])/2.0;qO(y,u,3,+h[t>>3],0,0);c[v>>2]=c[y>>2];c[v+4>>2]=c[y+4>>2];c[v+8>>2]=c[y+8>>2];c[v+12>>2]=c[y+12>>2];if(+N(+(+h[p>>3]-+h[q>>3]))<1.0){C=21;break}if(+N(+(+h[s>>3]-+h[r>>3]))<1.0e-05){C=21;break}D=+h[t>>3];if(+h[p>>3]<+h[q>>3]){h[s>>3]=D;h[q>>3]=(+h[v>>3]-+h[d>>3])*(+h[v>>3]-+h[d>>3])+(+h[v+8>>3]-+h[d+8>>3])*(+h[v+8>>3]-+h[d+8>>3]);continue}else{h[r>>3]=D;h[p>>3]=(+h[v>>3]-+h[d>>3])*(+h[v>>3]-+h[d>>3])+(+h[v+8>>3]-+h[d+8>>3])*(+h[v+8>>3]-+h[d+8>>3]);continue}}if((C|0)==21){c[a>>2]=c[v>>2];c[a+4>>2]=c[v+4>>2];c[a+8>>2]=c[v+8>>2];c[a+12>>2]=c[v+12>>2];i=e;return}}function wO(){return c[14718]|0}function xO(b){b=b|0;var e=0,f=0,g=0,j=0,k=0.0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+20|0;g=e;j=e+16|0;c[f>>2]=b;k=+fO(c[f>>2]|0,c[13815]|0,.75,.01);h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]=k;k=+fO(c[f>>2]|0,c[13814]|0,.5,.02);h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]=k;b=iO(c[f>>2]|0,c[13816]|0,145593)|0;l=gM(b,c[f>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]=l;c[j>>2]=zA(c[f>>2]|0,c[13831]|0)|0;h[g>>3]=+fO(c[f>>2]|0,c[13827]|0,14.0,1.0);c[g+8>>2]=iO(c[f>>2]|0,c[13828]|0,145601)|0;c[g+12>>2]=iO(c[f>>2]|0,c[13829]|0,174917)|0;l=c[f>>2]|0;b=c[j>>2]|0;m=($C(c[j>>2]|0)|0)!=0;n=(dM(c[f>>2]|0)|0)==2;o=SJ(l,b,(m?2:0)|(n?4:0),+h[g>>3],c[g+8>>2]|0,c[g+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]=o;if(((c[13832]|0)!=0?(o=zA(c[f>>2]|0,c[13832]|0)|0,c[j>>2]=o,(o|0)!=0):0)?(a[c[j>>2]>>0]|0)!=0:0){o=c[f>>2]|0;n=c[j>>2]|0;m=($C(c[j>>2]|0)|0)!=0;j=SJ(o,n,m?2:0,+h[g>>3],c[g+8>>2]|0,c[g+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]=j;j=(c[(qC(c[f>>2]|0)|0)+8>>2]|0)+113|0;a[j>>0]=d[j>>0]|16}j=(eO(c[f>>2]|0,c[13835]|0,0,0)|0)&255;a[(c[(c[f>>2]|0)+8>>2]|0)+144>>0]=j;Bb[c[c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]>>2]&127](c[f>>2]|0);i=e;return}function yO(b){b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+128|0;f=e+124|0;g=e+120|0;j=e+116|0;k=e+96|0;l=e+80|0;m=e+112|0;n=e+40|0;o=e;c[f>>2]=b;c[j>>2]=0;b=c[f>>2]|0;c[m>>2]=qC(c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;c[k+8>>2]=0;c[l+8>>2]=0;if(((c[13866]|0)!=0?(b=zA(c[f>>2]|0,c[13866]|0)|0,c[g>>2]=b,(b|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0){c[j>>2]=1;ZO(c[f>>2]|0,k);b=c[f>>2]|0;p=c[g>>2]|0;q=($C(c[g>>2]|0)|0)!=0;r=SJ(b,p,q?2:0,+h[k>>3],c[k+8>>2]|0,c[k+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]=r;r=(c[(c[m>>2]|0)+8>>2]|0)+113|0;a[r>>0]=d[r>>0]|1;r=kO(hO(c[f>>2]|0,c[13876]|0,174911)|0)|0;a[(c[(c[f>>2]|0)+8>>2]|0)+114>>0]=r}if(((c[13867]|0)!=0?(r=zA(c[f>>2]|0,c[13867]|0)|0,c[g>>2]=r,(r|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0){if(!(c[k+8>>2]|0))ZO(c[f>>2]|0,k);r=c[f>>2]|0;q=c[g>>2]|0;p=($C(c[g>>2]|0)|0)!=0;b=SJ(r,q,p?2:0,+h[k>>3],c[k+8>>2]|0,c[k+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]=b;b=(c[(c[m>>2]|0)+8>>2]|0)+113|0;a[b>>0]=d[b>>0]|32}if(((c[13881]|0)!=0?(b=zA(c[f>>2]|0,c[13881]|0)|0,c[g>>2]=b,(b|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0){_O(c[f>>2]|0,k,l);b=c[f>>2]|0;p=c[g>>2]|0;q=($C(c[g>>2]|0)|0)!=0;r=SJ(b,p,q?2:0,+h[l>>3],c[l+8>>2]|0,c[l+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]=r;r=(c[(c[m>>2]|0)+8>>2]|0)+113|0;a[r>>0]=d[r>>0]|2}if(((c[13882]|0)!=0?(r=zA(c[f>>2]|0,c[13882]|0)|0,c[g>>2]=r,(r|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0){if(!(c[l+8>>2]|0))_O(c[f>>2]|0,k,l);k=c[f>>2]|0;r=c[g>>2]|0;q=($C(c[g>>2]|0)|0)!=0;p=SJ(k,r,q?2:0,+h[l>>3],c[l+8>>2]|0,c[l+12>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]=p;p=(c[(c[m>>2]|0)+8>>2]|0)+113|0;a[p>>0]=d[p>>0]|4}p=yA(c[f>>2]|0,149070)|0;c[g>>2]=p;c[g>>2]=(c[g>>2]|0)!=0?p:178518;if((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){p=c[f>>2]|0;a[(c[(c[((c[c[f>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)+8>>2]|0)+145>>0]=1}p=(c[(c[f>>2]|0)+8>>2]|0)+16|0;m=c[f>>2]|0;l=c[f>>2]|0;$O(n,c[(c[(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,c[((c[c[f>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0,c[g>>2]|0);l=p;p=n;n=l+40|0;do{c[l>>2]=c[p>>2];l=l+4|0;p=p+4|0}while((l|0)<(n|0));if((aP(c[f>>2]|0,c[13888]|0)|0)<<24>>24)a[(c[(c[f>>2]|0)+8>>2]|0)+16+30>>0]=0;m=yA(c[f>>2]|0,149061)|0;c[g>>2]=m;c[g>>2]=(c[g>>2]|0)!=0?m:178518;if((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){m=c[f>>2]|0;a[(c[(c[((c[c[f>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+145>>0]=1}m=(c[(c[f>>2]|0)+8>>2]|0)+56|0;q=c[f>>2]|0;r=c[f>>2]|0;$O(o,c[(c[(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,c[((c[c[f>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0,c[g>>2]|0);l=m;p=o;n=l+40|0;do{c[l>>2]=c[p>>2];l=l+4|0;p=p+4|0}while((l|0)<(n|0));if(!((aP(c[f>>2]|0,c[13889]|0)|0)<<24>>24)){s=c[j>>2]|0;i=e;return s|0}a[(c[(c[f>>2]|0)+8>>2]|0)+56+30>>0]=0;s=c[j>>2]|0;i=e;return s|0}function zO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;d=i;i=i+64|0;e=d+48|0;f=d+44|0;g=d+40|0;j=d+36|0;k=d+32|0;l=d;c[e>>2]=b;c[g>>2]=c[(c[e>>2]|0)+8>>2];if((c[(c[e>>2]|0)+4>>2]|0)>1)m=c[(c[e>>2]|0)+4>>2]|0;else m=1;c[j>>2]=m;c[k>>2]=(c[(c[e>>2]|0)+44>>2]|0)+((_((c[j>>2]|0)-1|0,c[g>>2]|0)|0)<<4);j=l+16|0;e=c[k>>2]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];c[f>>2]=1;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))break;if(+h[l>>3]<+h[(c[k>>2]|0)+(c[f>>2]<<4)>>3])n=+h[l>>3];else n=+h[(c[k>>2]|0)+(c[f>>2]<<4)>>3];h[l>>3]=n;if(+h[l+8>>3]<+h[(c[k>>2]|0)+(c[f>>2]<<4)+8>>3])o=+h[l+8>>3];else o=+h[(c[k>>2]|0)+(c[f>>2]<<4)+8>>3];h[l+8>>3]=o;if(+h[l+16>>3]>+h[(c[k>>2]|0)+(c[f>>2]<<4)>>3])p=+h[l+16>>3];else p=+h[(c[k>>2]|0)+(c[f>>2]<<4)>>3];h[l+16>>3]=p;if(+h[l+16+8>>3]>+h[(c[k>>2]|0)+(c[f>>2]<<4)+8>>3])q=+h[l+16+8>>3];else q=+h[(c[k>>2]|0)+(c[f>>2]<<4)+8>>3];h[l+16+8>>3]=q;c[f>>2]=(c[f>>2]|0)+1}c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=d;return}function AO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+80|0;e=d+32|0;f=d+68|0;g=d+64|0;h=d;c[f>>2]=a;c[g>>2]=b;b=(c[(c[f>>2]|0)+8>>2]|0)+16|0;a=(c[(c[f>>2]|0)+8>>2]|0)+16|0;j=c[g>>2]|0;g=c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[e+16>>2]=c[a+16>>2];c[e+20>>2]=c[a+20>>2];c[e+24>>2]=c[a+24>>2];c[e+28>>2]=c[a+28>>2];bP(h,e,j,g);c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[b+16>>2]=c[h+16>>2];c[b+20>>2]=c[h+20>>2];c[b+24>>2]=c[h+24>>2];c[b+28>>2]=c[h+28>>2];i=d;return}function BO(a){a=a|0;var b=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0;b=i;i=i+512|0;e=b+448|0;f=b+336|0;g=b+496|0;j=b+492|0;k=b+488|0;l=b+416|0;m=b+384|0;n=b+352|0;o=b+320|0;p=b+304|0;q=b+484|0;r=b+480|0;s=b+288|0;t=b+272|0;u=b+256|0;v=b+240|0;w=b+224|0;x=b+208|0;y=b+192|0;z=b+160|0;A=b+128|0;B=b+96|0;C=b+64|0;D=b+32|0;E=b;c[g>>2]=a;if((kB(c[g>>2]|0)|0)==0?(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)==0:0){cP(s,0.0,0.0);c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];s=m+16|0;cP(t,0.0,0.0);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];c[s+12>>2]=c[t+12>>2];i=b;return}cP(u,2147483647.0,2147483647.0);c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];u=m+16|0;cP(v,-2147483647.0,-2147483647.0);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[j>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;pO(w,c[j>>2]|0);c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];h[p>>3]=(+h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3])/2.0;h[p+8>>3]=+h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[e>>2]=c[p>>2];c[e+4>>2]=c[p+4>>2];c[e+8>>2]=c[p+8>>2];c[e+12>>2]=c[p+12>>2];dP(x,f,e);c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];v=l+16|0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[e>>2]=c[p>>2];c[e+4>>2]=c[p+4>>2];c[e+8>>2]=c[p+8>>2];c[e+12>>2]=c[p+12>>2];eP(y,f,e);c[v>>2]=c[y>>2];c[v+4>>2]=c[y+4>>2];c[v+8>>2]=c[y+8>>2];c[v+12>>2]=c[y+12>>2];h[m>>3]=+h[m>>3]<+h[l>>3]?+h[m>>3]:+h[l>>3];h[m+8>>3]=+h[m+8>>3]<+h[l+8>>3]?+h[m+8>>3]:+h[l+8>>3];h[m+16>>3]=+h[m+16>>3]>+h[l+16>>3]?+h[m+16>>3]:+h[l+16>>3];if(+h[m+16+8>>3]>+h[l+16+8>>3])F=+h[m+16+8>>3];else F=+h[l+16+8>>3];h[m+16+8>>3]=F;if((c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0|0)!=0:0){v=c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0;u=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(z,e,v,u);c[m>>2]=c[z>>2];c[m+4>>2]=c[z+4>>2];c[m+8>>2]=c[z+8>>2];c[m+12>>2]=c[z+12>>2];c[m+16>>2]=c[z+16>>2];c[m+20>>2]=c[z+20>>2];c[m+24>>2]=c[z+24>>2];c[m+28>>2]=c[z+28>>2]}c[k>>2]=OA(c[g>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0){c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[q>>2]|0)*48|0)+4>>2]|0))break;u=(c[(c[c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[q>>2]|0)*48|0)>>2]|0)+(c[r>>2]<<4)|0;c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];h[m>>3]=+h[m>>3]<+h[o>>3]?+h[m>>3]:+h[o>>3];h[m+8>>3]=+h[m+8>>3]<+h[o+8>>3]?+h[m+8>>3]:+h[o+8>>3];h[m+16>>3]=+h[m+16>>3]>+h[o>>3]?+h[m+16>>3]:+h[o>>3];if(+h[m+16+8>>3]>+h[o+8>>3])G=+h[m+16+8>>3];else G=+h[o+8>>3];h[m+16+8>>3]=G;c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}if((c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)!=0?(d[(c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]|0|0)!=0:0){u=c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0;v=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(A,e,u,v);c[m>>2]=c[A>>2];c[m+4>>2]=c[A+4>>2];c[m+8>>2]=c[A+8>>2];c[m+12>>2]=c[A+12>>2];c[m+16>>2]=c[A+16>>2];c[m+20>>2]=c[A+20>>2];c[m+24>>2]=c[A+24>>2];c[m+28>>2]=c[A+28>>2]}if((c[(c[(c[k>>2]|0)+8>>2]|0)+100>>2]|0)!=0?(d[(c[(c[(c[k>>2]|0)+8>>2]|0)+100>>2]|0)+81>>0]|0|0)!=0:0){v=c[(c[(c[k>>2]|0)+8>>2]|0)+100>>2]|0;u=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(B,e,v,u);c[m>>2]=c[B>>2];c[m+4>>2]=c[B+4>>2];c[m+8>>2]=c[B+8>>2];c[m+12>>2]=c[B+12>>2];c[m+16>>2]=c[B+16>>2];c[m+20>>2]=c[B+20>>2];c[m+24>>2]=c[B+24>>2];c[m+28>>2]=c[B+28>>2]}if((c[(c[(c[k>>2]|0)+8>>2]|0)+104>>2]|0)!=0?(d[(c[(c[(c[k>>2]|0)+8>>2]|0)+104>>2]|0)+81>>0]|0|0)!=0:0){u=c[(c[(c[k>>2]|0)+8>>2]|0)+104>>2]|0;v=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(C,e,u,v);c[m>>2]=c[C>>2];c[m+4>>2]=c[C+4>>2];c[m+8>>2]=c[C+8>>2];c[m+12>>2]=c[C+12>>2];c[m+16>>2]=c[C+16>>2];c[m+20>>2]=c[C+20>>2];c[m+24>>2]=c[C+24>>2];c[m+28>>2]=c[C+28>>2]}if((c[(c[(c[k>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[k>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0|0)!=0:0){v=c[(c[(c[k>>2]|0)+8>>2]|0)+108>>2]|0;u=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(D,e,v,u);c[m>>2]=c[D>>2];c[m+4>>2]=c[D+4>>2];c[m+8>>2]=c[D+8>>2];c[m+12>>2]=c[D+12>>2];c[m+16>>2]=c[D+16>>2];c[m+20>>2]=c[D+20>>2];c[m+24>>2]=c[D+24>>2];c[m+28>>2]=c[D+28>>2]}}c[k>>2]=QA(c[g>>2]|0,c[k>>2]|0)|0}c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}c[q>>2]=1;while(1){if((c[q>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;h[n>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2]|0)+8>>2]|0)+16>>3];h[n+8>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2]|0)+8>>2]|0)+16+8>>3];h[n+16>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2]|0)+8>>2]|0)+16+16>>3];h[n+16+8>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2]|0)+8>>2]|0)+16+16+8>>3];h[m>>3]=+h[m>>3]<+h[n>>3]?+h[m>>3]:+h[n>>3];h[m+8>>3]=+h[m+8>>3]<+h[n+8>>3]?+h[m+8>>3]:+h[n+8>>3];h[m+16>>3]=+h[m+16>>3]>+h[n+16>>3]?+h[m+16>>3]:+h[n+16>>3];if(+h[m+16+8>>3]>+h[n+16+8>>3])H=+h[m+16+8>>3];else H=+h[n+16+8>>3];h[m+16+8>>3]=H;c[q>>2]=(c[q>>2]|0)+1}if((c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0|0)!=0:0){q=c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0;n=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];bP(E,e,q,n);c[m>>2]=c[E>>2];c[m+4>>2]=c[E+4>>2];c[m+8>>2]=c[E+8>>2];c[m+12>>2]=c[E+12>>2];c[m+16>>2]=c[E+16>>2];c[m+20>>2]=c[E+20>>2];c[m+24>>2]=c[E+24>>2];c[m+28>>2]=c[E+28>>2]}E=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[E>>2]=c[m>>2];c[E+4>>2]=c[m+4>>2];c[E+8>>2]=c[m+8>>2];c[E+12>>2]=c[m+12>>2];c[E+16>>2]=c[m+16>>2];c[E+20>>2]=c[m+20>>2];c[E+24>>2]=c[m+24>>2];c[E+28>>2]=c[m+28>>2];i=b;return}function CO(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)==(c[(c[d>>2]|0)+48>>2]|0)){e=1;f=e&1;i=b;return f|0}e=(O3(wB(c[d>>2]|0)|0,145613,7)|0)!=0^1;f=e&1;i=b;return f|0}function DO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;a:do if(!(c[m>>2]|0))switch(BC(c[j>>2]|0)|0){case 0:{c[m>>2]=qA(c[h>>2]|0,0,c[k>>2]|0,178518)|0;break a;break}case 1:{c[m>>2]=qA(c[h>>2]|0,1,c[k>>2]|0,178518)|0;break a;break}case 2:{c[m>>2]=qA(c[h>>2]|0,2,c[k>>2]|0,178518)|0;break a;break}default:break a}while(0);BA(c[j>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;i=g;return c[m>>2]|0}function EO(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+176|0;g=f+44|0;h=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=d;c[p>>2]=FO(c[g>>2]|0)|0;c[o>>2]=Nz(58876,c[12989]|0)|0;c[m>>2]=FD(c[g>>2]|0,145621,1)|0;MC(c[m>>2]|0,175049,280,1)|0;dA(n,128,f+48|0);c[j>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;a:do if(!(a[(c[(c[j>>2]|0)+8>>2]|0)+118>>0]|0)){c[l>>2]=OA(c[g>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[l>>2]|0))break a;fP(c[l>>2]|0,c[m>>2]|0,n,c[o>>2]|0,c[p>>2]|0);c[l>>2]=QA(c[g>>2]|0,c[l>>2]|0)|0}}while(0);c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}hA(n);Jz(c[o>>2]|0)|0;c[h>>2]=kB(c[m>>2]|0)|0;c[j>>2]=$B(c[m>>2]|0)|0;while(1){q=c[m>>2]|0;if(!(c[j>>2]|0))break;c[k>>2]=aC(q,c[j>>2]|0)|0;pC(c[g>>2]|0,c[j>>2]|0)|0;c[j>>2]=c[k>>2]}jB(q)|0;if(!(c[h>>2]|0)){r=c[p>>2]|0;Jz(r)|0;s=c[h>>2]|0;i=f;return s|0}q=(c[(c[g>>2]|0)+8>>2]|0)+136|0;b[q>>1]=e[q>>1]|1;r=c[p>>2]|0;Jz(r)|0;s=c[h>>2]|0;i=f;return s|0}function FO(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Nz(58912,c[12989]|0)|0;gP(c[d>>2]|0,c[e>>2]|0);i=b;return c[e>>2]|0}function GO(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=FD(c[d>>2]|0,145621,1)|0;MC(c[g>>2]|0,175049,280,1)|0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;hP(c[f>>2]|0,c[g>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;pC(c[d>>2]|0,c[e>>2]|0)|0;c[e>>2]=aC(c[g>>2]|0,c[e>>2]|0)|0}jB(c[g>>2]|0)|0;i=b;return}function HO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=qA(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;if(c[l>>2]|0){m=c[l>>2]|0;i=f;return m|0}c[l>>2]=qA(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;m=c[l>>2]|0;i=f;return m|0}function IO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+64|0;f=e;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e+16|0;m=e+8|0;n=e+4|0;o=e+40|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=H3(c[h>>2]|0,59)|0;if((c[(c[j>>2]|0)+4>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|0)>>>0)eA(c[j>>2]|0,1)|0;d=(c[j>>2]|0)+4|0;b=c[d>>2]|0;c[d>>2]=b+1;a[b>>0]=38;if(!(c[k>>2]|0)){c[g>>2]=c[h>>2];p=c[g>>2]|0;i=e;return p|0}b=(c[k>>2]|0)-(c[h>>2]|0)|0;c[n>>2]=b;if((b|0)>8|(c[n>>2]|0)<2){c[g>>2]=c[h>>2];p=c[g>>2]|0;i=e;return p|0}Q3(o,c[h>>2]|0,c[n>>2]|0)|0;a[o+(c[n>>2]|0)>>0]=0;c[l>>2]=o;c[m>>2]=v3(l,58948,252,8,96)|0;if(!(c[m>>2]|0)){c[g>>2]=c[h>>2];p=c[g>>2]|0;i=e;return p|0}c[f>>2]=c[(c[m>>2]|0)+4>>2];k3(o,175023,f)|0;if((c[(c[j>>2]|0)+4>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|0)>>>0)eA(c[j>>2]|0,1)|0;f=(c[j>>2]|0)+4|0;m=c[f>>2]|0;c[f>>2]=m+1;a[m>>0]=35;gA(c[j>>2]|0,o)|0;if((c[(c[j>>2]|0)+4>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|0)>>>0)eA(c[j>>2]|0,1)|0;o=(c[j>>2]|0)+4|0;j=c[o>>2]|0;c[o>>2]=j+1;a[j>>0]=59;c[g>>2]=(c[k>>2]|0)+1;p=c[g>>2]|0;i=e;return p|0}function JO(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=i;i=i+1088|0;g=f+8|0;h=f;j=f+56|0;k=f+52|0;l=f+48|0;m=f+32|0;n=f+60|0;o=f+28|0;p=f+24|0;q=f+20|0;r=f+16|0;c[j>>2]=b;c[k>>2]=e;if((c[15241]|0)!=(c[k>>2]|0)){c[15241]=c[k>>2];a[145636]=0}dA(m,1024,f+64|0);while(1){e=c[j>>2]|0;c[j>>2]=e+1;b=a[e>>0]|0;a[n>>0]=b;if(!(b<<24>>24))break;do if((d[n>>0]|0)<192)c[q>>2]=0;else{if((d[n>>0]|0)<224){c[q>>2]=1;break}if((d[n>>0]|0)<240){c[q>>2]=2;break}if((d[n>>0]|0)<248){c[q>>2]=3;break}c[q>>2]=-1;if(!(a[145636]|0)){c[h>>2]=wB(c[k>>2]|0)|0;$z(0,145637,h)|0;a[145636]=1}a[n>>0]=jP(a[n>>0]|0,m)|0}while(0);do if((c[q>>2]|0)==0?(d[n>>0]|0)==38:0){c[o>>2]=kP(j)|0;if(c[o>>2]|0){b=c[o>>2]|0;if((c[o>>2]|0)>>>0<127){a[n>>0]=b;break}e=(c[m+4>>2]|0)>>>0>=(c[m+8>>2]|0)>>>0;if(b>>>0<2047){if(e)eA(m,1)|0;b=((c[o>>2]|0)>>>6&255|192)&255;s=m+4|0;t=c[s>>2]|0;c[s>>2]=t+1;a[t>>0]=b;c[p>>2]=b&255;a[n>>0]=c[o>>2]&63|128;break}if(e)eA(m,1)|0;e=((c[o>>2]|0)>>>12&255|224)&255;b=m+4|0;t=c[b>>2]|0;c[b>>2]=t+1;a[t>>0]=e;c[p>>2]=e&255;if((c[m+4>>2]|0)>>>0>=(c[m+8>>2]|0)>>>0)eA(m,1)|0;e=((c[o>>2]|0)>>>6&63|128)&255;t=m+4|0;b=c[t>>2]|0;c[t>>2]=b+1;a[b>>0]=e;c[p>>2]=e&255;a[n>>0]=c[o>>2]&63|128}}else u=30;while(0);a:do if((u|0)==30){u=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0))break a;if((a[c[j>>2]>>0]&192|0)!=128)break;if((c[m+4>>2]|0)>>>0>=(c[m+8>>2]|0)>>>0)eA(m,1)|0;e=a[n>>0]|0;b=m+4|0;t=c[b>>2]|0;c[b>>2]=t+1;a[t>>0]=e;c[p>>2]=e&255;e=c[j>>2]|0;c[j>>2]=e+1;a[n>>0]=a[e>>0]|0;c[r>>2]=(c[r>>2]|0)+1}if(!(a[145636]|0)){e=(c[q>>2]|0)+1|0;t=wB(c[k>>2]|0)|0;c[g>>2]=e;c[g+4>>2]=t;$z(0,145758,g)|0;a[145636]=1}a[n>>0]=jP(a[n>>0]|0,m)|0}while(0);if((c[m+4>>2]|0)>>>0>=(c[m+8>>2]|0)>>>0)eA(m,1)|0;t=a[n>>0]|0;e=m+4|0;b=c[e>>2]|0;c[e>>2]=b+1;a[b>>0]=t;c[p>>2]=t&255}if((c[m+4>>2]|0)>>>0<(c[m+8>>2]|0)>>>0){v=m+4|0;w=c[v>>2]|0;x=w+1|0;c[v>>2]=x;a[w>>0]=0;y=c[m>>2]|0;z=m+4|0;c[z>>2]=y;A=M3(y)|0;c[l>>2]=A;hA(m);B=c[l>>2]|0;i=f;return B|0}eA(m,1)|0;v=m+4|0;w=c[v>>2]|0;x=w+1|0;c[v>>2]=x;a[w>>0]=0;y=c[m>>2]|0;z=m+4|0;c[z>>2]=y;A=M3(y)|0;c[l>>2]=A;hA(m);B=c[l>>2]|0;i=f;return B|0}function KO(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+1056|0;f=e+28|0;g=e+24|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;dA(h,1024,e+32|0);while(1){b=c[f>>2]|0;c[f>>2]=b+1;l=d[b>>0]|0;c[j>>2]=l;if(!l)break;if((c[j>>2]|0)==38){l=kP(f)|0;c[j>>2]=l;c[j>>2]=(c[j>>2]|0)!=0?l:38}if((c[j>>2]|0)>>>0<127){if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;l=c[j>>2]&255;b=h+4|0;m=c[b>>2]|0;c[b>>2]=m+1;a[m>>0]=l;c[k>>2]=l&255;continue}l=(c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0;if((c[j>>2]|0)>>>0<2047){if(l)eA(h,1)|0;m=((c[j>>2]|0)>>>6&255|192)&255;b=h+4|0;n=c[b>>2]|0;c[b>>2]=n+1;a[n>>0]=m;c[k>>2]=m&255;if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;m=(c[j>>2]&63|128)&255;n=h+4|0;b=c[n>>2]|0;c[n>>2]=b+1;a[b>>0]=m;c[k>>2]=m&255;continue}if(l)eA(h,1)|0;l=((c[j>>2]|0)>>>12&255|224)&255;m=h+4|0;b=c[m>>2]|0;c[m>>2]=b+1;a[b>>0]=l;c[k>>2]=l&255;if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;l=((c[j>>2]|0)>>>6&63|128)&255;b=h+4|0;m=c[b>>2]|0;c[b>>2]=m+1;a[m>>0]=l;c[k>>2]=l&255;if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;l=(c[j>>2]&63|128)&255;m=h+4|0;b=c[m>>2]|0;c[m>>2]=b+1;a[b>>0]=l;c[k>>2]=l&255}if((c[h+4>>2]|0)>>>0<(c[h+8>>2]|0)>>>0){o=h+4|0;p=c[o>>2]|0;q=p+1|0;c[o>>2]=q;a[p>>0]=0;r=c[h>>2]|0;s=h+4|0;c[s>>2]=r;t=M3(r)|0;c[g>>2]=t;hA(h);u=c[g>>2]|0;i=e;return u|0}eA(h,1)|0;o=h+4|0;p=c[o>>2]|0;q=p+1|0;c[o>>2]=q;a[p>>0]=0;r=c[h>>2]|0;s=h+4|0;c[s>>2]=r;t=M3(r)|0;c[g>>2]=t;hA(h);u=c[g>>2]|0;i=e;return u|0}function LO(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+1072|0;f=e+28|0;g=e+24|0;h=e+8|0;j=e+33|0;k=e+32|0;l=e;c[f>>2]=b;dA(h,1024,e+40|0);while(1){b=c[f>>2]|0;c[f>>2]=b+1;m=a[b>>0]|0;a[j>>0]=m;if(!(m<<24>>24))break;if((d[j>>0]|0|0)<127){if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;m=a[j>>0]|0;b=h+4|0;n=c[b>>2]|0;c[b>>2]=n+1;a[n>>0]=m;c[l>>2]=m&255;continue}else{a[k>>0]=((d[j>>0]|0)&3)<<6;m=c[f>>2]|0;c[f>>2]=m+1;a[j>>0]=a[m>>0]|0;a[k>>0]=d[k>>0]|0|(d[j>>0]|0)&63;if((c[h+4>>2]|0)>>>0>=(c[h+8>>2]|0)>>>0)eA(h,1)|0;m=a[k>>0]|0;n=h+4|0;b=c[n>>2]|0;c[n>>2]=b+1;a[b>>0]=m;c[l>>2]=m&255;continue}}if((c[h+4>>2]|0)>>>0<(c[h+8>>2]|0)>>>0){o=h+4|0;p=c[o>>2]|0;q=p+1|0;c[o>>2]=q;a[p>>0]=0;r=c[h>>2]|0;s=h+4|0;c[s>>2]=r;t=M3(r)|0;c[g>>2]=t;hA(h);u=c[g>>2]|0;i=e;return u|0}eA(h,1)|0;o=h+4|0;p=c[o>>2]|0;q=p+1|0;c[o>>2]=q;a[p>>0]=0;r=c[h>>2]|0;s=h+4|0;c[s>>2]=r;t=M3(r)|0;c[g>>2]=t;hA(h);u=c[g>>2]|0;i=e;return u|0}function MO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+96|0;f=e+64|0;g=e+48|0;j=e+92|0;k=e+88|0;l=e+80|0;m=e+32|0;n=e+16|0;o=e;c[k>>2]=b;if(((+h[d+16>>3]>=+h[(c[(c[k>>2]|0)+8>>2]|0)+48>>3]?+h[(c[(c[k>>2]|0)+8>>2]|0)+48+16>>3]>=+h[d>>3]:0)?+h[d+16+8>>3]>=+h[(c[(c[k>>2]|0)+8>>2]|0)+48+8>>3]:0)?+h[(c[(c[k>>2]|0)+8>>2]|0)+48+16+8>>3]>=+h[d+8>>3]:0){b=(c[(c[k>>2]|0)+8>>2]|0)+16|0;p=d+16|0;c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];lP(n,g,f);c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];dP(o,g,f);c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[l>>2]=c[k>>2];c[l+4>>2]=0;o=c[(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];a[j>>0]=Ob[o&127](l,f)|0;q=a[j>>0]|0;i=e;return q|0}a[j>>0]=0;q=a[j>>0]|0;i=e;return q|0}function NO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+128|0;e=d+96|0;f=d+80|0;g=d+112|0;j=d+64|0;k=d+32|0;l=d+16|0;m=d;c[g>>2]=a;h[j>>3]=+h[(c[g>>2]|0)+24>>3]/2.0;h[j+8>>3]=+h[(c[g>>2]|0)+24+8>>3]/2.0;a=(c[g>>2]|0)+56|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];dP(l,f,e);c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];l=k+16|0;a=(c[g>>2]|0)+56|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];eP(m,f,e);c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];if(!(+h[b+16>>3]>=+h[k>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}if(!(+h[k+16>>3]>=+h[b>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}if(!(+h[b+16+8>>3]>=+h[k+8>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}n=+h[k+16+8>>3]>=+h[b+8>>3];o=n&1;p=o&255;i=d;return p|0}function OO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+112|0;f=e+48|0;g=e;h=e+96|0;j=e+92|0;k=e+88|0;l=e+84|0;m=e+80|0;c[j>>2]=b;c[l>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2];a:do if((c[l>>2]|0)!=0?(b=(c[l>>2]|0)+8|0,c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],c[g+16>>2]=c[b+16>>2],c[g+20>>2]=c[b+20>>2],c[g+24>>2]=c[b+24>>2],c[g+28>>2]=c[b+28>>2],c[f>>2]=c[d>>2],c[f+4>>2]=c[d+4>>2],c[f+8>>2]=c[d+8>>2],c[f+12>>2]=c[d+12>>2],c[f+16>>2]=c[d+16>>2],c[f+20>>2]=c[d+20>>2],c[f+24>>2]=c[d+24>>2],c[f+28>>2]=c[d+28>>2],(mP(g,f)|0)!=0):0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[l>>2]|0)+4>>2]|0))break a;b=g;n=(c[c[l>>2]>>2]|0)+((c[k>>2]|0)*48|0)|0;o=b+48|0;do{c[b>>2]=c[n>>2];b=b+4|0;n=n+4|0}while((b|0)<(o|0));c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[f+24>>2]=c[d+24>>2];c[f+28>>2]=c[d+28>>2];if((nP(g,f)|0)<<24>>24)break;c[k>>2]=(c[k>>2]|0)+1}a[h>>0]=1;p=a[h>>0]|0;i=e;return p|0}while(0);c[m>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2];if((c[m>>2]|0)!=0?(j=c[m>>2]|0,c[f>>2]=c[d>>2],c[f+4>>2]=c[d+4>>2],c[f+8>>2]=c[d+8>>2],c[f+12>>2]=c[d+12>>2],c[f+16>>2]=c[d+16>>2],c[f+20>>2]=c[d+20>>2],c[f+24>>2]=c[d+24>>2],c[f+28>>2]=c[d+28>>2],((NO(j,f)|0)&255|0)!=0):0){a[h>>0]=1;p=a[h>>0]|0;i=e;return p|0}a[h>>0]=0;p=a[h>>0]|0;i=e;return p|0}function PO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[h>>2]=b;c[j>>2]=d;if((c[h>>2]|0)!=0?(a[c[h>>2]>>0]|0)!=0:0){c[k>>2]=0;a:do switch(a[c[h>>2]>>0]|0){case 48:{c[k>>2]=2;break}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{c[k>>2]=10;break}case 67:case 99:{if(!(F3((c[h>>2]|0)+1|0,145867)|0)){c[k>>2]=4;break a}if(!(F3((c[h>>2]|0)+1|0,145873)|0))c[k>>2]=12;break}case 70:case 102:{if(!(F3((c[h>>2]|0)+1|0,145881)|0))c[k>>2]=2;break}case 76:case 108:{if(!(F3((c[h>>2]|0)+1|0,145886)|0))c[k>>2]=2;break}case 78:case 110:{if(!(F3((c[h>>2]|0)+1|0,145890)|0)){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=e;return l|0}if(!(F3((c[h>>2]|0)+1|0,145894)|0)){c[g>>2]=2;l=c[g>>2]|0;i=e;return l|0}break}case 79:case 111:{if(!(F3((c[h>>2]|0)+1|0,145896)|0))c[k>>2]=8;break}case 80:case 112:{if(!(F3((c[h>>2]|0)+1|0,145901)|0))c[k>>2]=6;break}case 83:case 115:{if(!(F3((c[h>>2]|0)+1|0,145909)|0))c[k>>2]=10;break}case 84:case 116:{if(!(F3((c[h>>2]|0)+1|0,145915)|0))c[k>>2]=10;break}case 89:case 121:{if(!(F3((c[h>>2]|0)+1|0,145919)|0))c[k>>2]=10;break}default:{}}while(0);if(!(c[k>>2]|0)){c[f>>2]=c[h>>2];$z(0,145922,f)|0;c[k>>2]=c[j>>2]}c[g>>2]=c[k>>2];l=c[g>>2]|0;i=e;return l|0}c[g>>2]=c[j>>2];l=c[g>>2]|0;i=e;return l|0}function QO(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[h>>2]=d;c[j>>2]=f;c[k>>2]=yA(c[h>>2]|0,145963)|0;do if(c[k>>2]|0)if(!(a[c[k>>2]>>0]|0)){c[l>>2]=0;break}else{c[l>>2]=PO(c[k>>2]|0,c[j>>2]|0)|0;break}else c[l>>2]=c[j>>2];while(0);j=(c[(c[h>>2]|0)+8>>2]|0)+136|0;b[j>>1]=e[j>>1]|c[l>>2];i=g;return}function RO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0;j=i;i=i+144|0;k=j+140|0;l=j+136|0;m=j+132|0;n=j+128|0;o=j+124|0;p=j+120|0;q=j+104|0;r=j+96|0;s=j+80|0;t=j+64|0;u=j+48|0;v=j+116|0;w=j+112|0;x=j+40|0;y=j+32|0;z=j+24|0;A=j+16|0;B=j+8|0;C=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;g[n>>2]=e;c[o>>2]=f;c[v>>2]=c[o>>2]&1;c[w>>2]=c[o>>2]&2;o=c[k>>2]|0;a:do if((c[m>>2]|0)==2){h[q>>3]=+h[o+16>>3]-+h[c[k>>2]>>3];h[r>>3]=+h[(c[k>>2]|0)+16+8>>3]-+h[(c[k>>2]|0)+8>>3];h[s>>3]=+h[c[k>>2]>>3]-+h[q>>3];h[t>>3]=+h[c[k>>2]>>3]+ +h[q>>3];h[s+8>>3]=+h[(c[k>>2]|0)+8>>3]-+h[r>>3];h[t+8>>3]=+h[(c[k>>2]|0)+8>>3]+ +h[r>>3]}else{e=+h[o>>3];h[t>>3]=e;h[s>>3]=e;e=+h[(c[k>>2]|0)+8>>3];h[t+8>>3]=e;h[s+8>>3]=e;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[m>>2]|0))break a;if(+h[(c[k>>2]|0)+(c[p>>2]<<4)>>3]<+h[s>>3])D=+h[(c[k>>2]|0)+(c[p>>2]<<4)>>3];else D=+h[s>>3];h[s>>3]=D;if(+h[(c[k>>2]|0)+(c[p>>2]<<4)+8>>3]<+h[s+8>>3])E=+h[(c[k>>2]|0)+(c[p>>2]<<4)+8>>3];else E=+h[s+8>>3];h[s+8>>3]=E;if(+h[(c[k>>2]|0)+(c[p>>2]<<4)>>3]>+h[t>>3])F=+h[(c[k>>2]|0)+(c[p>>2]<<4)>>3];else F=+h[t>>3];h[t>>3]=F;if(+h[(c[k>>2]|0)+(c[p>>2]<<4)+8>>3]>+h[t+8>>3])G=+h[(c[k>>2]|0)+(c[p>>2]<<4)+8>>3];else G=+h[t+8>>3];h[t+8>>3]=G;c[p>>2]=(c[p>>2]|0)+1}}while(0);h[u>>3]=+h[s>>3]+(+h[t>>3]-+h[s>>3])/2.0;h[u+8>>3]=+h[s+8>>3]+(+h[t+8>>3]-+h[s+8>>3])/2.0;if(c[v>>2]|0){h[y>>3]=+O(+((+h[u>>3]-+h[s>>3])*(+h[u>>3]-+h[s>>3])+(+h[u+8>>3]-+h[s+8>>3])*(+h[u+8>>3]-+h[s+8>>3])));h[x>>3]=+h[y>>3]/4.0;G=+h[u+8>>3];if(c[w>>2]|0)h[(c[l>>2]|0)+8>>3]=G;else h[(c[l>>2]|0)+8>>3]=-G;h[c[l>>2]>>3]=+h[u>>3];h[(c[l>>2]|0)+16>>3]=+h[x>>3];h[(c[l>>2]|0)+16+8>>3]=+h[y>>3];i=j;return}else{h[z>>3]=+h[t>>3]-+h[u>>3];h[A>>3]=+h[t+8>>3]-+h[u+8>>3];h[B>>3]=+R(+(+g[n>>2]));h[C>>3]=+Q(+(+g[n>>2]));G=+h[u+8>>3];if(c[w>>2]|0){h[(c[l>>2]|0)+8>>3]=G-+h[A>>3]*+h[B>>3];h[(c[l>>2]|0)+16+8>>3]=+h[u+8>>3]+ +h[A>>3]*+h[B>>3]}else{F=-G+(+h[t+8>>3]-+h[u+8>>3])*+R(+(+g[n>>2]));h[(c[l>>2]|0)+8>>3]=F;F=-+h[u+8>>3]-(+h[u+8>>3]-+h[s+8>>3])*+R(+(+g[n>>2]));h[(c[l>>2]|0)+16+8>>3]=F}h[c[l>>2]>>3]=+h[u>>3]-+h[z>>3]*+h[C>>3];h[(c[l>>2]|0)+16>>3]=+h[u>>3]+ +h[z>>3]*+h[C>>3];i=j;return}}function SO(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)){f=c[d>>2]|0;g=f+8|0;h=c[g>>2]|0;j=h+8|0;c[j>>2]=0;i=b;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;O4(c[(c[c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[e>>2]|0)*48|0)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]>>2]|0);O4(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0);f=c[d>>2]|0;g=f+8|0;h=c[g>>2]|0;j=h+8|0;c[j>>2]=0;i=b;return}function TO(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+144>>2]|0);SO(c[d>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+96>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+108>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+100>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+104>>2]|0);NC(c[d>>2]|0,175319)|0;i=b;return}function UO(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[(c[(c[d>>2]|0)+8>>2]|0)+132>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+132>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)Bb[c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+4>>2]&127](c[d>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+104>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+108>>2]|0);NC(c[d>>2]|0,175026)|0;i=b;return}function VO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0.0;e=i;i=i+16|0;f=e+8|0;g=e+12|0;j=e;c[f>>2]=b;a[g>>0]=d;d=c[(c[f>>2]|0)+8>>2]|0;if(a[g>>0]|0){h[j>>3]=+h[d+40>>3]*72.0;k=+h[j>>3]/2.0;h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3]=k;h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3]=k;h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]*72.0;i=e;return}else{h[j>>3]=+h[d+32>>3]*72.0;k=+h[j>>3]/2.0;h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3]=k;h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3]=k;h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]*72.0;i=e;return}}function WO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,c[g>>2]|0,512)|0;if(c[h>>2]|0){c[e>>2]=c[(c[h>>2]|0)+12>>2];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=M3(c[e>>2]|0)|0;c[k>>2]=0;c[l>>2]=0;c[j>>2]=V3(c[h>>2]|0,148898)|0;while(1){if(!(c[j>>2]|0))break;if(c[k>>2]|0)m=eK(c[k>>2]|0,(c[g>>2]|0)+2<<2)|0;else m=cK((c[g>>2]|0)+2<<2)|0;c[k>>2]=m;h=c[j>>2]|0;e=c[g>>2]|0;c[g>>2]=e+1;c[(c[k>>2]|0)+(e<<2)>>2]=h;h=c[l>>2]|0;if(h>>>0>(N3(c[j>>2]|0)|0)>>>0)n=c[l>>2]|0;else n=N3(c[j>>2]|0)|0;c[l>>2]=n;c[j>>2]=V3(0,148898)|0}c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]=0;c[c[f>>2]>>2]=c[l>>2];i=d;return c[k>>2]|0}function YO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;d=c[15243]|0;b=c[j>>2]|0;c[15243]=Q4(d,b+(N3(c[k>>2]|0)|0)+2|0)|0;c[l>>2]=c[h>>2];while(1){if(!(c[c[l>>2]>>2]|0)){m=6;break}h=c[15243]|0;b=c[k>>2]|0;c[f>>2]=c[c[l>>2]>>2];c[f+4>>2]=145579;c[f+8>>2]=b;k3(h,147672,f)|0;if(!(Z3(c[15243]|0,4)|0)){m=4;break}c[l>>2]=(c[l>>2]|0)+4}if((m|0)==4){c[g>>2]=c[15243];n=c[g>>2]|0;i=e;return n|0}else if((m|0)==6){c[g>>2]=0;n=c[g>>2]|0;i=e;return n|0}return 0}function ZO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;g=+fO(c[e>>2]|0,c[13863]|0,14.0,1.0);h[c[f>>2]>>3]=g;b=iO(c[e>>2]|0,c[13864]|0,145601)|0;c[(c[f>>2]|0)+8>>2]=b;b=iO(c[e>>2]|0,c[13865]|0,174917)|0;c[(c[f>>2]|0)+12>>2]=b;i=d;return}function _O(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0.0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if(!(c[(c[g>>2]|0)+8>>2]|0))ZO(c[f>>2]|0,c[g>>2]|0);k=+fO(c[f>>2]|0,c[13883]|0,+h[c[g>>2]>>3],1.0);h[c[j>>2]>>3]=k;d=iO(c[f>>2]|0,c[13884]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=iO(c[f>>2]|0,c[13885]|0,c[(c[g>>2]|0)+12>>2]|0)|0;c[(c[j>>2]|0)+12>>2]=d;i=e;return}function $O(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+144|0;h=g+132|0;j=g+128|0;k=g+124|0;l=g+80|0;m=g+120|0;n=g+40|0;o=g;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[m>>2]=0;if(c[k>>2]|0)c[m>>2]=H3(c[k>>2]|0,58)|0;if(c[m>>2]|0){a[c[m>>2]>>0]=0;Vb[c[h>>2]&31](n,c[j>>2]|0,c[k>>2]|0,(c[m>>2]|0)+1|0);p=l;q=n;r=p+40|0;do{c[p>>2]=c[q>>2];p=p+4|0;q=q+4|0}while((p|0)<(r|0));a[c[m>>2]>>0]=58;c[l+36>>2]=(c[m>>2]|0)+1;s=c[k>>2]|0;t=l+36|0;c[t>>2]=s;p=b;q=l;r=p+40|0;do{c[p>>2]=c[q>>2];p=p+4|0;q=q+4|0}while((p|0)<(r|0));i=g;return}else{Vb[c[h>>2]&31](o,c[j>>2]|0,c[k>>2]|0,0);p=l;q=o;r=p+40|0;do{c[p>>2]=c[q>>2];p=p+4|0;q=q+4|0}while((p|0)<(r|0));s=c[k>>2]|0;t=l+36|0;c[t>>2]=s;p=b;q=l;r=p+40|0;do{c[p>>2]=c[q>>2];p=p+4|0;q=q+4|0}while((p|0)<(r|0));i=g;return}}function aP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[f>>2]=b;c[g>>2]=d;a[j>>0]=0;if(!(c[g>>2]|0)){k=a[j>>0]|0;i=e;return k|0}c[h>>2]=zA(c[f>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)!=0?(a[c[h>>2]>>0]|0)!=0:0){a[j>>0]=((kO(c[h>>2]|0)|0)<<24>>24!=0^1)&1;k=a[j>>0]|0;i=e;return k|0}a[j>>0]=0;k=a[j>>0]|0;i=e;return k|0}function bP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;g=i;i=i+64|0;j=g+48|0;k=g+52|0;l=g+40|0;m=g+32|0;n=g+16|0;o=g+8|0;p=g;c[j>>2]=e;a[k>>0]=f;f=(c[j>>2]|0)+56|0;c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];q=+h[(c[j>>2]|0)+24>>3];if(a[k>>0]|0){h[m>>3]=q;h[l>>3]=+h[(c[j>>2]|0)+24+8>>3]}else{h[l>>3]=q;h[m>>3]=+h[(c[j>>2]|0)+24+8>>3]}h[o>>3]=+h[n>>3]-+h[l>>3]/2.0;h[p>>3]=+h[n>>3]+ +h[l>>3]/2.0;if(+h[o>>3]<+h[d>>3])h[d>>3]=+h[o>>3];if(+h[p>>3]>+h[d+16>>3])h[d+16>>3]=+h[p>>3];h[o>>3]=+h[n+8>>3]-+h[m>>3]/2.0;h[p>>3]=+h[n+8>>3]+ +h[m>>3]/2.0;if(+h[o>>3]<+h[d+8>>3])h[d+8>>3]=+h[o>>3];if(!(+h[p>>3]>+h[d+16+8>>3])){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];i=g;return}h[d+16+8>>3]=+h[p>>3];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];i=g;return}function cP(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function dP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]-+h[d>>3];h[f+8>>3]=+h[b+8>>3]-+h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function eP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function fP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=i;i=i+96|0;j=h+32|0;k=h+24|0;l=h+16|0;m=h+8|0;n=h;o=h+88|0;p=h+84|0;q=h+80|0;r=h+76|0;s=h+72|0;t=h+68|0;u=h+64|0;v=h+60|0;w=h+56|0;x=h+52|0;y=h+48|0;z=h+44|0;A=h+40|0;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[o>>2]|0;c[x>>2]=c[((c[c[o>>2]>>2]&3|0)==3?g:g+32|0)+28>>2];g=c[o>>2]|0;c[y>>2]=c[((c[c[o>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2];if(a[(c[(c[y>>2]|0)+8>>2]|0)+118>>0]|0){i=h;return}if(P3(wB(c[x>>2]|0)|0,145613,7)|0)B=0;else{g=c[s>>2]|0;B=WO(g,wB(c[x>>2]|0)|0)|0}c[t>>2]=B;if(P3(wB(c[y>>2]|0)|0,145613,7)|0)C=0;else{B=c[s>>2]|0;C=WO(B,wB(c[y>>2]|0)|0)|0}c[u>>2]=C;if(!((c[t>>2]|0)!=0|(c[u>>2]|0)!=0)){i=h;return}if((c[t>>2]|0)==(c[u>>2]|0)){C=wB(c[x>>2]|0)|0;B=wB(c[x>>2]|0)|0;c[n>>2]=C;c[n+4>>2]=B;$z(0,147461,n)|0;i=h;return}c[A>>2]=sP(c[r>>2]|0,c[o>>2]|0)|0;if(c[A>>2]|0){qP(c[o>>2]|0,c[(c[A>>2]|0)+16>>2]|0,c[(c[A>>2]|0)+20>>2]|0)|0;i=h;return}A=c[t>>2]|0;if(!(c[u>>2]|0))if(AC(A,c[y>>2]|0)|0){n=wB(c[y>>2]|0)|0;B=wB(c[t>>2]|0)|0;c[j>>2]=n;c[j+4>>2]=B;$z(0,147616,j)|0;i=h;return}else{c[v>>2]=tP(c[x>>2]|0,c[t>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[z>>2]=qP(c[o>>2]|0,c[v>>2]|0,c[y>>2]|0)|0;uP(c[r>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0);i=h;return}j=c[u>>2]|0;if(!A)if(AC(j,c[x>>2]|0)|0){A=wB(c[x>>2]|0)|0;B=wB(c[u>>2]|0)|0;c[k>>2]=A;c[k+4>>2]=B;$z(0,147579,k)|0;i=h;return}else{c[v>>2]=tP(c[y>>2]|0,c[u>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[z>>2]=qP(c[o>>2]|0,c[x>>2]|0,c[v>>2]|0)|0;uP(c[r>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0);i=h;return}k=(AC(j,c[t>>2]|0)|0)!=0;j=c[t>>2]|0;if(k){k=wB(j)|0;B=wB(c[u>>2]|0)|0;c[m>>2]=k;c[m+4>>2]=B;$z(0,147499,m)|0;i=h;return}if(AC(j,c[u>>2]|0)|0){j=wB(c[u>>2]|0)|0;m=wB(c[t>>2]|0)|0;c[l>>2]=j;c[l+4>>2]=m;$z(0,147539,l)|0;i=h;return}else{c[v>>2]=tP(c[x>>2]|0,c[t>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[w>>2]=tP(c[y>>2]|0,c[u>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[z>>2]=qP(c[o>>2]|0,c[v>>2]|0,c[w>>2]|0)|0;uP(c[r>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0);i=h;return}}function gP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;c[h>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2];c[k>>2]=wB(c[h>>2]|0)|0;if(Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,c[k>>2]|0,512)|0){c[e>>2]=c[k>>2];$z(0,147409,e)|0}else{c[l>>2]=bK(16)|0;c[(c[l>>2]|0)+8>>2]=c[k>>2];c[(c[l>>2]|0)+12>>2]=c[h>>2];Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,c[l>>2]|0,1)|0}gP(c[h>>2]|0,c[g>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=d;return}function hP(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;c[h>>2]=c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];b=c[f>>2]|0;c[j>>2]=c[((c[c[f>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];if((d[(c[(c[h>>2]|0)+8>>2]|0)+118>>0]|0|0)==0?(d[(c[(c[j>>2]|0)+8>>2]|0)+118>>0]|0|0)==0:0){i=e;return}c[k>>2]=pP(c[h>>2]|0,c[g>>2]|0)|0;c[l>>2]=pP(c[j>>2]|0,c[g>>2]|0)|0;qP(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=e;return}function iP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=J3(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;i=d;return b|0}function jP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+18|0;g=e+12|0;h=e+16|0;j=e+8|0;k=e+4|0;l=e;a[f>>0]=b;c[g>>2]=d;a[h>>0]=a[f>>0]|0;a[h+1>>0]=0;d=KO(h)|0;c[j>>2]=d;c[k>>2]=d;c[l>>2]=N3(c[j>>2]|0)|0;while(1){d=c[l>>2]|0;c[l>>2]=d+-1;if((d|0)<=1)break;if((c[(c[g>>2]|0)+4>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0)eA(c[g>>2]|0,1)|0;d=c[k>>2]|0;c[k>>2]=d+1;h=a[d>>0]|0;d=(c[g>>2]|0)+4|0;b=c[d>>2]|0;c[d>>2]=b+1;a[b>>0]=h}a[f>>0]=a[c[k>>2]>>0]|0;O4(c[j>>2]|0);i=e;return a[f>>0]|0}function kP(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+64|0;f=e+36|0;g=e+32|0;h=e+24|0;j=e+16|0;k=e+40|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=b;c[l>>2]=c[c[f>>2]>>2];c[o>>2]=0;c[m>>2]=d[c[l>>2]>>0];if((c[m>>2]|0)!=35){c[g>>2]=k;c[h>>2]=k;c[n>>2]=0;while(1){if((c[n>>2]|0)>=8){p=26;break}c[m>>2]=d[(c[l>>2]|0)+(c[n>>2]|0)>>0];if(!(c[m>>2]|0)){p=26;break}if((c[m>>2]|0)==59){p=23;break}k=c[m>>2]&255;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=k;c[n>>2]=(c[n>>2]|0)+1}if((p|0)==23){k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=0;c[j>>2]=v3(h,58948,252,8,96)|0;if(!(c[j>>2]|0)){q=c[l>>2]|0;r=c[f>>2]|0;c[r>>2]=q;s=c[o>>2]|0;i=e;return s|0}c[o>>2]=c[(c[j>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+((c[n>>2]|0)+1);q=c[l>>2]|0;r=c[f>>2]|0;c[r>>2]=q;s=c[o>>2]|0;i=e;return s|0}else if((p|0)==26){q=c[l>>2]|0;r=c[f>>2]|0;c[r>>2]=q;s=c[o>>2]|0;i=e;return s|0}}c[m>>2]=d[(c[l>>2]|0)+1>>0];a:do if((c[m>>2]|0)==120|(c[m>>2]|0)==88){c[n>>2]=2;while(1){if((c[n>>2]|0)>=8)break a;c[m>>2]=d[(c[l>>2]|0)+(c[n>>2]|0)>>0];p=c[m>>2]|0;do if((c[m>>2]|0)>>>0>=65&(c[m>>2]|0)>>>0<=70)c[m>>2]=p-65+10;else{j=c[m>>2]|0;if(p>>>0>=97&(c[m>>2]|0)>>>0<=102){c[m>>2]=j-97+10;break}if(!(j>>>0>=48&(c[m>>2]|0)>>>0<=57))break a;c[m>>2]=(c[m>>2]|0)-48}while(0);c[o>>2]=(c[o>>2]<<4)+(c[m>>2]|0);c[n>>2]=(c[n>>2]|0)+1}}else{c[n>>2]=1;while(1){if((c[n>>2]|0)>=8)break a;c[m>>2]=d[(c[l>>2]|0)+(c[n>>2]|0)>>0];if(!((c[m>>2]|0)>>>0>=48&(c[m>>2]|0)>>>0<=57))break a;c[o>>2]=((c[o>>2]|0)*10|0)+((c[m>>2]|0)-48);c[n>>2]=(c[n>>2]|0)+1}}while(0);if((c[m>>2]|0)==59){c[l>>2]=(c[l>>2]|0)+((c[n>>2]|0)+1);q=c[l>>2]|0;r=c[f>>2]|0;c[r>>2]=q;s=c[o>>2]|0;i=e;return s|0}else{c[o>>2]=0;q=c[l>>2]|0;r=c[f>>2]|0;c[r>>2]=q;s=c[o>>2]|0;i=e;return s|0}return 0}function lP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=(+h[b>>3]+ +h[d>>3])/2.0;h[f+8>>3]=(+h[b+8>>3]+ +h[d+8>>3])/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function mP(a,b){a=a|0;b=b|0;var c=0,d=0;if(!(+h[a+16>>3]>=+h[b>>3])){c=0;d=c&1;return d|0}if(!(+h[b+16>>3]>=+h[a>>3])){c=0;d=c&1;return d|0}if(!(+h[a+16+8>>3]>=+h[b+8>>3])){c=0;d=c&1;return d|0}c=+h[b+16+8>>3]>=+h[a+8>>3];d=c&1;return d|0}function nP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+112|0;f=e+64|0;g=e+48|0;h=e+32|0;j=e+100|0;k=e+96|0;l=e+16|0;m=e;if(!(c[b+4>>2]|0))La(145971,145265,1629,145979);n=c[b>>2]|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[b+4>>2]|0))break;n=(c[b>>2]|0)+(c[k>>2]<<4)|0;c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2];c[h>>2]=c[l>>2];c[h+4>>2]=c[l+4>>2];c[h+8>>2]=c[l+8>>2];c[h+12>>2]=c[l+12>>2];c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[f+24>>2]=c[d+24>>2];c[f+28>>2]=c[d+28>>2];if((CJ(h,g,f)|0)!=-1){o=6;break};c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[k>>2]=(c[k>>2]|0)+1}if((o|0)==6){a[j>>0]=1;p=a[j>>0]|0;i=e;return p|0}if((c[b+8>>2]|0)!=0?(o=b+16|0,k=c[b>>2]|0,l=c[b+8>>2]|0,c[h>>2]=c[o>>2],c[h+4>>2]=c[o+4>>2],c[h+8>>2]=c[o+8>>2],c[h+12>>2]=c[o+12>>2],c[g>>2]=c[k>>2],c[g+4>>2]=c[k+4>>2],c[g+8>>2]=c[k+8>>2],c[g+12>>2]=c[k+12>>2],c[f>>2]=c[d>>2],c[f+4>>2]=c[d+4>>2],c[f+8>>2]=c[d+8>>2],c[f+12>>2]=c[d+12>>2],c[f+16>>2]=c[d+16>>2],c[f+20>>2]=c[d+20>>2],c[f+24>>2]=c[d+24>>2],c[f+28>>2]=c[d+28>>2],(oP(h,g,1.0,l,f)|0)<<24>>24!=0):0){a[j>>0]=1;p=a[j>>0]|0;i=e;return p|0}if((c[b+12>>2]|0)!=0?(l=b+32|0,k=(c[b>>2]|0)+((c[b+4>>2]|0)-1<<4)|0,o=c[b+12>>2]|0,c[h>>2]=c[l>>2],c[h+4>>2]=c[l+4>>2],c[h+8>>2]=c[l+8>>2],c[h+12>>2]=c[l+12>>2],c[g>>2]=c[k>>2],c[g+4>>2]=c[k+4>>2],c[g+8>>2]=c[k+8>>2],c[g+12>>2]=c[k+12>>2],c[f>>2]=c[d>>2],c[f+4>>2]=c[d+4>>2],c[f+8>>2]=c[d+8>>2],c[f+12>>2]=c[d+12>>2],c[f+16>>2]=c[d+16>>2],c[f+20>>2]=c[d+20>>2],c[f+24>>2]=c[d+24>>2],c[f+28>>2]=c[d+28>>2],(oP(h,g,1.0,o,f)|0)<<24>>24!=0):0){a[j>>0]=1;p=a[j>>0]|0;i=e;return p|0}a[j>>0]=0;p=a[j>>0]|0;i=e;return p|0}function oP(b,d,e,f,g){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;j=i;i=i+176|0;k=j+152|0;l=j+136|0;m=j+172|0;n=j+128|0;o=j+168|0;p=j+96|0;q=j+64|0;r=j+32|0;s=j;h[n>>3]=e;c[o>>2]=f;e=+h[g+16>>3];t=+h[n>>3];f=c[o>>2]|0;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];c[l+12>>2]=c[b+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];gH(p,l,k,t,f);if(((e>=+h[p>>3]?(e=+h[n>>3],p=c[o>>2]|0,c[l>>2]=c[b>>2],c[l+4>>2]=c[b+4>>2],c[l+8>>2]=c[b+8>>2],c[l+12>>2]=c[b+12>>2],c[k>>2]=c[d>>2],c[k+4>>2]=c[d+4>>2],c[k+8>>2]=c[d+8>>2],c[k+12>>2]=c[d+12>>2],gH(q,l,k,e,p),+h[q+16>>3]>=+h[g>>3]):0)?(e=+h[g+16+8>>3],t=+h[n>>3],q=c[o>>2]|0,c[l>>2]=c[b>>2],c[l+4>>2]=c[b+4>>2],c[l+8>>2]=c[b+8>>2],c[l+12>>2]=c[b+12>>2],c[k>>2]=c[d>>2],c[k+4>>2]=c[d+4>>2],c[k+8>>2]=c[d+8>>2],c[k+12>>2]=c[d+12>>2],gH(r,l,k,t,q),e>=+h[r+8>>3]):0)?(e=+h[n>>3],n=c[o>>2]|0,c[l>>2]=c[b>>2],c[l+4>>2]=c[b+4>>2],c[l+8>>2]=c[b+8>>2],c[l+12>>2]=c[b+12>>2],c[k>>2]=c[d>>2],c[k+4>>2]=c[d+4>>2],c[k+8>>2]=c[d+8>>2],c[k+12>>2]=c[d+12>>2],gH(s,l,k,e,n),+h[s+16+8>>3]>=+h[g+8>>3]):0){a[m>>0]=1;u=a[m>>0]|0;i=j;return u|0}a[m>>0]=0;u=a[m>>0]|0;i=j;return u|0}function pP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[l>>2]=qC(c[g>>2]|0)|0;if(!(a[(c[(c[g>>2]|0)+8>>2]|0)+118>>0]|0)){c[f>>2]=c[g>>2];n=c[f>>2]|0;i=e;return n|0}eC(c[h>>2]|0,c[g>>2]|0,1)|0;c[k>>2]=H3(wB(c[g>>2]|0)|0,58)|0;if(!(c[k>>2]|0))La(148770,145265,1225,147404);c[k>>2]=(c[k>>2]|0)+1;g=fC(c[l>>2]|0,c[k>>2]|0,0)|0;c[j>>2]=g;if(g){c[f>>2]=c[j>>2];n=c[f>>2]|0;i=e;return n|0}c[j>>2]=fC(c[l>>2]|0,c[k>>2]|0,1)|0;MC(c[j>>2]|0,175026,304,1)|0;c[m>>2]=rA(c[l>>2]|0,1,0)|0;while(1){o=c[j>>2]|0;if(!(c[m>>2]|0))break;k=zA(o,c[m>>2]|0)|0;if((k|0)!=(c[(c[m>>2]|0)+12>>2]|0))BA(c[j>>2]|0,c[m>>2]|0,c[(c[m>>2]|0)+12>>2]|0)|0;c[m>>2]=rA(c[l>>2]|0,1,c[m>>2]|0)|0}c[f>>2]=o;n=c[f>>2]|0;i=e;return n|0}function qP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=qC(c[g>>2]|0)|0;c[k>>2]=VA(c[j>>2]|0,c[g>>2]|0,c[h>>2]|0,0,1)|0;MC(c[k>>2]|0,175319,176,1)|0;DA(c[f>>2]|0,c[k>>2]|0)|0;i=e;return c[k>>2]|0}function rP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function sP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;c[g>>2]=c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];b=c[f>>2]|0;c[g+4>>2]=c[((c[c[f>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];b=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,512)|0;i=d;return b|0}function tP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+128|0;h=g;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g+24|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;gA(c[l>>2]|0,147653)|0;f=c[15242]|0;c[15242]=f+1;c[h>>2]=f;k3(o,175023,h)|0;gA(c[l>>2]|0,o)|0;if((c[(c[l>>2]|0)+4>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)eA(c[l>>2]|0,1)|0;o=(c[l>>2]|0)+4|0;h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=58;h=c[l>>2]|0;gA(h,wB(c[k>>2]|0)|0)|0;h=rC(c[k>>2]|0)|0;if((c[(c[l>>2]|0)+4>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)eA(c[l>>2]|0,1)|0;o=(c[l>>2]|0)+4|0;f=c[o>>2]|0;c[o>>2]=f+1;a[f>>0]=0;f=c[c[l>>2]>>2]|0;c[(c[l>>2]|0)+4>>2]=f;c[n>>2]=fC(h,f,1)|0;MC(c[n>>2]|0,175026,304,1)|0;a[(c[(c[n>>2]|0)+8>>2]|0)+118>>0]=1;eC(c[k>>2]|0,c[n>>2]|0,1)|0;eC(c[m>>2]|0,c[j>>2]|0,1)|0;j=qC(c[n>>2]|0)|0;c[13831]=DO(j,c[n>>2]|0,147656,178518,c[13831]|0)|0;j=qC(c[n>>2]|0)|0;c[13834]=DO(j,c[n>>2]|0,179091,171938,c[13834]|0)|0;j=qC(c[n>>2]|0)|0;c[13816]=DO(j,c[n>>2]|0,147662,147668,c[13816]|0)|0;i=g;return c[n>>2]|0}function uP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+36|0;h=f+32|0;j=f+28|0;k=f+24|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l+8>>2]=c[h>>2];c[l+8+4>>2]=c[j>>2];e=c[k>>2]|0;c[l+16>>2]=c[((c[c[k>>2]>>2]&3|0)==3?e:e+32|0)+28>>2];e=c[k>>2]|0;c[l+20>>2]=c[((c[c[k>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2];Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,l,1)|0;c[l+8>>2]=c[j>>2];c[l+8+4>>2]=c[h>>2];h=c[k>>2]|0;c[l+16>>2]=c[((c[c[k>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2];h=c[k>>2]|0;c[l+20>>2]=c[((c[c[k>>2]>>2]&3|0)==3?h:h+32|0)+28>>2];Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,l,1)|0;i=f;return}function vP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=bK(24)|0;c[(c[g>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];c[(c[g>>2]|0)+8+4>>2]=c[(c[f>>2]|0)+8+4>>2];c[(c[g>>2]|0)+16>>2]=c[(c[f>>2]|0)+16>>2];c[(c[g>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2];i=e;return c[g>>2]|0}function wP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function xP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;do if((c[c[h>>2]>>2]|0)>>>0>=(c[c[j>>2]>>2]|0)>>>0){if((c[c[h>>2]>>2]|0)>>>0>(c[c[j>>2]>>2]|0)>>>0){c[g>>2]=1;break}if((c[(c[h>>2]|0)+4>>2]|0)>>>0<(c[(c[j>>2]|0)+4>>2]|0)>>>0){c[g>>2]=-1;break}if((c[(c[h>>2]|0)+4>>2]|0)>>>0>(c[(c[j>>2]|0)+4>>2]|0)>>>0){c[g>>2]=1;break}else{c[g>>2]=0;break}}else c[g>>2]=-1;while(0);i=f;return c[g>>2]|0}function yP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,fa=0,ha=0,ja=0,la=0,ma=0,na=0,oa=0,qa=0,sa=0,ua=0,va=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0;f=i;i=i+16|0;g=f;h=4;j=N4(40)|0;c[j>>2]=0;k=f+8|0;n=0;l=ia(29,b|0)|0;m=n;n=0;if((m|0)!=0&(o|0)!=0){p=Y4(c[m>>2]|0,j|0,h|0)|0;if(!p)Pa(m|0,o|0);C=o}else p=-1;a:do if((p|0)!=1){n=0;m=ia(23,l<<3|0)|0;q=n;n=0;if((q|0)!=0&(o|0)!=0){r=Y4(c[q>>2]|0,j|0,h|0)|0;if(!r)Pa(q|0,o|0);C=o}else r=-1;if((r|0)!=1){if(a[139e3]|0){n=0;q=ta(4)|0;s=n;n=0;if((s|0)!=0&(o|0)!=0){t=Y4(c[s>>2]|0,j|0,h|0)|0;if(!t)Pa(s|0,o|0);C=o}else t=-1;if((t|0)==1){u=e;v=C;w=m;x=0;y=0;z=0;A=0;B=76;break}D=q}else D=0;n=0;q=ra(97,b|0,147679)|0;s=n;n=0;if((s|0)!=0&(o|0)!=0){E=Y4(c[s>>2]|0,j|0,h|0)|0;if(!E)Pa(s|0,o|0);C=o}else E=-1;if((E|0)!=1){c[15244]=0;b:do if((q|0)!=0?(a[q>>0]|0)!=0:0){s=q;c:while(1){F=s+1|0;G=a[s>>0]|0;if(!(G<<24>>24))break b;switch(G<<24>>24|0){case 99:{c[15244]=c[15244]|8;s=F;continue c;break}case 105:{c[15244]=c[15244]|18;s=F;continue c;break}case 109:{c[15244]=c[15244]|1;s=F;continue c;break}case 114:{c[15244]=c[15244]|4;s=F;continue c;break}case 115:{c[15244]=c[15244]|2;s=F;continue c;break}default:{s=F;continue c}}}}while(0);if(e){n=0;ka(25,0,147683,g|0)|0;q=n;n=0;if((q|0)!=0&(o|0)!=0){H=Y4(c[q>>2]|0,j|0,h|0)|0;if(!H)Pa(q|0,o|0);C=o}else H=-1;if((H|0)==1){u=e;v=C;w=m;x=0;y=0;z=D;A=0;B=76;break}I=0}else I=e;n=0;q=ra(98,b|0,I|0)|0;s=n;n=0;if((s|0)!=0&(o|0)!=0){J=Y4(c[s>>2]|0,j|0,h|0)|0;if(!J)Pa(s|0,o|0);C=o}else J=-1;if((J|0)!=1){s=c[q+16>>2]|0;if(c[15244]&2){n=0;ga(21,c[24742]|0,s|0);F=n;n=0;if((F|0)!=0&(o|0)!=0){K=Y4(c[F>>2]|0,j|0,h|0)|0;if(!K)Pa(F|0,o|0);C=o}else K=-1;if((K|0)==1){u=I;v=C;w=m;x=q;y=0;z=D;A=0;B=76;break}}n=0;F=ia(25,b|0)|0;G=n;n=0;if((G|0)!=0&(o|0)!=0){L=Y4(c[G>>2]|0,j|0,h|0)|0;if(!L)Pa(G|0,o|0);C=o}else L=-1;if((L|0)!=1){G=F;F=0;while(1){if(!G)break;n=0;M=ra(99,b|0,G|0)|0;N=n;n=0;if((N|0)!=0&(o|0)!=0){O=Y4(c[N>>2]|0,j|0,h|0)|0;if(!O)Pa(N|0,o|0);C=o}else O=-1;if((O|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=0;B=76;break a}N=M;M=F;while(1){if(!N)break;if((c[13795]|0)==2?(c[(c[N+8>>2]|0)+8>>2]|0)!=0:0)P=M;else B=31;d:do if((B|0)==31){B=0;do if(a[139e3]|0){Q=(c[c[((c[N>>2]&3|0)==3?N:N+32|0)+28>>2]>>2]|0)>>>4;R=(c[c[((c[N>>2]&3|0)==2?N:N+-32|0)+28>>2]>>2]|0)>>>4;if((Q|0)<=(R|0)){n=0;S=ka(38,D|0,Q|0,R|0)|0;T=n;n=0;if((T|0)!=0&(o|0)!=0){U=Y4(c[T>>2]|0,j|0,h|0)|0;if(!U)Pa(T|0,o|0);C=o}else U=-1;if((U|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}if(S){P=M;break d}n=0;wa(61,D|0,Q|0,R|0);S=n;n=0;if((S|0)!=0&(o|0)!=0){V=Y4(c[S>>2]|0,j|0,h|0)|0;if(!V)Pa(S|0,o|0);C=o}else V=-1;if((V|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}break}else{n=0;S=ka(38,D|0,R|0,Q|0)|0;T=n;n=0;if((T|0)!=0&(o|0)!=0){W=Y4(c[T>>2]|0,j|0,h|0)|0;if(!W)Pa(T|0,o|0);C=o}else W=-1;if((W|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}if(S){P=M;break d}n=0;wa(61,D|0,R|0,Q|0);Q=n;n=0;if((Q|0)!=0&(o|0)!=0){X=Y4(c[Q>>2]|0,j|0,h|0)|0;if(!X)Pa(Q|0,o|0);C=o}else X=-1;if((X|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}break}}while(0);c[m+(M<<3)+4>>2]=N;n=0;Q=ia(30,N|0)|0;R=n;n=0;if((R|0)!=0&(o|0)!=0){Y=Y4(c[R>>2]|0,j|0,h|0)|0;if(!Y)Pa(R|0,o|0);C=o}else Y=-1;if((Y|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}c[m+(M<<3)>>2]=Q;P=M+1|0}while(0);n=0;Q=ra(100,b|0,N|0)|0;R=n;n=0;if((R|0)!=0&(o|0)!=0){Z=Y4(c[R>>2]|0,j|0,h|0)|0;if(!Z)Pa(R|0,o|0);C=o}else Z=-1;if((Z|0)==1){u=I;v=C;w=m;x=q;y=P;z=D;A=0;B=76;break a}N=Q;M=P}n=0;N=ra(86,b|0,G|0)|0;Q=n;n=0;if((Q|0)!=0&(o|0)!=0){_=Y4(c[Q>>2]|0,j|0,h|0)|0;if(!_)Pa(Q|0,o|0);C=o}else _=-1;if((_|0)==1){u=I;v=C;w=m;x=q;y=M;z=D;A=0;B=76;break a}G=N;F=M}n=0;G=ia(31,F<<3|0)|0;N=n;n=0;if((N|0)!=0&(o|0)!=0){$=Y4(c[N>>2]|0,j|0,h|0)|0;if(!$)Pa(N|0,o|0);C=o}else $=-1;if(($|0)!=1){n=0;ya(26,m|0,F|0,8,101);N=n;n=0;if((N|0)!=0&(o|0)!=0){aa=Y4(c[N>>2]|0,j|0,h|0)|0;if(!aa)Pa(N|0,o|0);C=o}else aa=-1;if((aa|0)!=1){N=c[s>>2]|0;n=0;ea(102,(c[s>>2]|0)+2|0);Q=n;n=0;if((Q|0)!=0&(o|0)!=0){ba=Y4(c[Q>>2]|0,j|0,h|0)|0;if(!ba)Pa(Q|0,o|0);C=o}else ba=-1;if((ba|0)!=1){Q=(c[s+16>>2]|0)+(N*40|0)|0;R=(c[s+16>>2]|0)+((N+1|0)*40|0)|0;N=0;while(1){if((N|0)>=(F|0))break;if((N|0)>0?(c[15244]&16|0)!=0:0){n=0;ga(21,c[24742]|0,s|0);S=n;n=0;if((S|0)!=0&(o|0)!=0){ca=Y4(c[S>>2]|0,j|0,h|0)|0;if(!ca)Pa(S|0,o|0);C=o}else ca=-1;if((ca|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}}S=c[m+(N<<3)+4>>2]|0;T=c[(c[(c[((c[S>>2]&3|0)==3?S:S+32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0;fa=c[(c[(c[((c[S>>2]&3|0)==2?S:S+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0;if(!(((I|0)!=0?(ha=c[(c[S+8>>2]|0)+96>>2]|0,(ha|0)!=0):0)?(d[ha+81>>0]|0)!=0:0)){if((T|0)==(fa|0)){n=0;ya(27,s|0,T|0,R|0,Q|0);ha=n;n=0;if((ha|0)!=0&(o|0)!=0){ja=Y4(c[ha>>2]|0,j|0,h|0)|0;if(!ja)Pa(ha|0,o|0);C=o}else ja=-1;if((ja|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}}else{n=0;wa(62,s|0,fa|0,R|0);fa=n;n=0;if((fa|0)!=0&(o|0)!=0){la=Y4(c[fa>>2]|0,j|0,h|0)|0;if(!la)Pa(fa|0,o|0);C=o}else la=-1;if((la|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}n=0;wa(62,s|0,T|0,Q|0);T=n;n=0;if((T|0)!=0&(o|0)!=0){ma=Y4(c[T>>2]|0,j|0,h|0)|0;if(!ma)Pa(T|0,o|0);C=o}else ma=-1;if((ma|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}}n=0;T=ka(39,s|0,R|0,Q|0)|0;fa=n;n=0;if((fa|0)!=0&(o|0)!=0){na=Y4(c[fa>>2]|0,j|0,h|0)|0;if(!na)Pa(fa|0,o|0);C=o}else na=-1;if((na|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}if(T){oa=I;qa=m;sa=q;ua=F;va=D;za=G;break a}}T=G+(N<<3)|0;n=0;ya(28,k|0,s|0,Q|0,R|0);fa=n;n=0;if((fa|0)!=0&(o|0)!=0){Aa=Y4(c[fa>>2]|0,j|0,h|0)|0;if(!Aa)Pa(fa|0,o|0);C=o}else Aa=-1;if((Aa|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a};c[T>>2]=c[k>>2];c[T+4>>2]=c[k+4>>2];n=0;ea(103,s|0);T=n;n=0;if((T|0)!=0&(o|0)!=0){Ba=Y4(c[T>>2]|0,j|0,h|0)|0;if(!Ba)Pa(T|0,o|0);C=o}else Ba=-1;if((Ba|0)==1){u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76;break a}N=N+1|0}n=0;xa(6);N=n;n=0;if((N|0)!=0&(o|0)!=0){Ca=Y4(c[N>>2]|0,j|0,h|0)|0;if(!Ca)Pa(N|0,o|0);C=o}else Ca=-1;if((Ca|0)!=1){n=0;N=ia(32,q|0)|0;s=n;n=0;if((s|0)!=0&(o|0)!=0){Da=Y4(c[s>>2]|0,j|0,h|0)|0;if(!Da)Pa(s|0,o|0);C=o}else Da=-1;if((Da|0)!=1){c[q+20>>2]=N;n=0;N=ia(33,q|0)|0;s=n;n=0;if((s|0)!=0&(o|0)!=0){Ea=Y4(c[s>>2]|0,j|0,h|0)|0;if(!Ea)Pa(s|0,o|0);C=o}else Ea=-1;if((Ea|0)!=1){c[q+24>>2]=N;n=0;wa(63,F|0,G|0,q|0);N=n;n=0;if((N|0)!=0&(o|0)!=0){Fa=Y4(c[N>>2]|0,j|0,h|0)|0;if(!Fa)Pa(N|0,o|0);C=o}else Fa=-1;if((Fa|0)!=1){j=W4(60980,1,j|0,h|0)|0;h=C;n=0;N=n;n=0;if((N|0)!=0&(o|0)!=0){Ga=Y4(c[N>>2]|0,j|0,h|0)|0;if(!Ga)Pa(N|0,o|0);C=o}else Ga=-1;if((Ga|0)!=1){u=I;v=0;w=m;x=q;y=F;z=D;A=G;B=76}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=G;B=76}}else{u=I;v=C;w=m;x=q;y=F;z=D;A=0;B=76}}else{u=I;v=C;w=m;x=q;y=0;z=D;A=0;B=76}}else{u=I;v=C;w=m;x=0;y=0;z=D;A=0;B=76}}else{u=e;v=C;w=m;x=0;y=0;z=D;A=0;B=76}}else{u=e;v=C;w=0;x=0;y=0;z=0;A=0;B=76}}else{u=e;v=C;w=0;x=0;y=0;z=0;A=0;B=76}while(0);e:while(1){if((B|0)==76){B=0;if(v){oa=u;qa=w;sa=x;ua=y;va=z;za=A;continue}n=0;wa(64,y|0,A|0,x|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Ha=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Ha)Pa(e|0,o|0);C=o}else Ha=-1;if((Ha|0)==1){Ia=A;Ja=z;Ka=y;La=x;Ma=w;Na=u;v=C;A=Ia;z=Ja;y=Ka;x=La;w=Ma;u=Na;B=76;continue}if(c[15244]&4){n=0;da(17,c[24742]|0,x|0,y|0,A|0,w|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Oa=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Oa)Pa(e|0,o|0);C=o}else Oa=-1;if((Oa|0)==1){Ia=A;Ja=z;Ka=y;La=x;Ma=w;Na=u;v=C;A=Ia;z=Ja;y=Ka;x=La;w=Ma;u=Na;B=76;continue}}n=0;pa(1,b|0,x|0,y|0,A|0,61136,w|0,u|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Qa=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Qa)Pa(e|0,o|0);C=o}else Qa=-1;if((Qa|0)==1){Ia=A;Ja=z;Ka=y;La=x;Ma=w;Na=u;v=C;A=Ia;z=Ja;y=Ka;x=La;w=Ma;u=Na;B=76;continue}oa=u;qa=w;sa=x;ua=y;va=z;za=A}if(a[139e3]|0){n=0;ea(104,va|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Ra=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Ra)Pa(e|0,o|0);C=o}else Ra=-1;if((Ra|0)==1){u=oa;v=C;w=qa;x=sa;y=ua;z=va;A=za;B=76;continue}}e=0;while(1){if((e|0)>=(ua|0))break;n=0;ea(96,c[za+(e<<3)+4>>2]|0);D=n;n=0;if((D|0)!=0&(o|0)!=0){Sa=Y4(c[D>>2]|0,j|0,h|0)|0;if(!Sa)Pa(D|0,o|0);C=o}else Sa=-1;if((Sa|0)==1){u=oa;v=C;w=qa;x=sa;y=ua;z=va;A=za;B=76;continue e}e=e+1|0}n=0;ea(96,za|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Ta=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Ta)Pa(e|0,o|0);C=o}else Ta=-1;if((Ta|0)==1){u=oa;v=C;w=qa;x=sa;y=ua;z=va;A=za;B=76;continue}n=0;ea(105,sa|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Ua=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Ua)Pa(e|0,o|0);C=o}else Ua=-1;if((Ua|0)==1){u=oa;v=C;w=qa;x=sa;y=ua;z=va;A=za;B=76;continue}n=0;ea(96,qa|0);e=n;n=0;if((e|0)!=0&(o|0)!=0){Va=Y4(c[e>>2]|0,j|0,h|0)|0;if(!Va)Pa(e|0,o|0);C=o}else Va=-1;if((Va|0)==1){u=oa;v=C;w=qa;x=sa;y=ua;z=va;A=za;B=76}else break}O4(j|0);i=f;return}function zP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;d=i;i=i+96|0;e=d+32|0;f=d+16|0;g=d+88|0;j=d+84|0;k=d+80|0;l=d+76|0;m=d+72|0;n=d+64|0;o=d+56|0;p=d;q=d+48|0;c[g>>2]=a;c[j>>2]=b;_2(148553,c[g>>2]|0)|0;_2(148564,c[g>>2]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[c[j>>2]>>2]|0))break;c[l>>2]=(c[(c[j>>2]|0)+16>>2]|0)+((c[o>>2]|0)*40|0);c[k>>2]=c[(c[l>>2]|0)+20>>2];b=c[k>>2]|0;if((c[k>>2]|0)==(c[(c[l>>2]|0)+20+4>>2]|0)){sQ(p,b);c[n>>2]=~~+h[p>>3];c[n+4>>2]=~~+h[p+8>>3]}else{if(c[b>>2]&1)c[k>>2]=c[(c[l>>2]|0)+20+4>>2];uQ(q,c[k>>2]|0,c[l>>2]|0);c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2]}b=c[g>>2]|0;a=c[n>>2]|0;r=c[n+4>>2]|0;c[f>>2]=c[o>>2];c[f+4>>2]=a;c[f+8>>2]=r;Y2(b,148584,f)|0;c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[m>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[o>>2]|0)*24|0);f=c[g>>2]|0;n=c[(c[m>>2]|0)+16>>2]|0;s=+h[c[m>>2]>>3];c[e>>2]=c[(c[m>>2]|0)+12>>2];c[e+4>>2]=n;h[e+8>>3]=s;Y2(f,148604,e)|0;c[o>>2]=(c[o>>2]|0)+1}_2(148626,c[g>>2]|0)|0;i=d;return}function AP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+48|0;d=b+32|0;e=b+16|0;f=b;c[d>>2]=a;a=c[d>>2]|0;g=(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+16|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];g=c[d>>2]|0;a=(c[(c[((c[c[d>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+16|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];i=b;return ~~((+h[e>>3]-+h[f>>3])*(+h[e>>3]-+h[f>>3])+(+h[e+8>>3]-+h[f+8>>3])*(+h[e+8>>3]-+h[f+8>>3]))|0}function BP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return (c[c[e>>2]>>2]|0)-(c[c[f>>2]>>2]|0)|0}function CP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+96|0;j=g+84|0;k=g+80|0;l=g+76|0;m=g+72|0;n=g+68|0;o=g+64|0;p=g+40|0;q=g+60|0;r=g+24|0;s=g+16|0;t=g+56|0;u=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;sQ(p,c[k>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[k>>2]|0)+32>>2]|0))break;c[t>>2]=c[(c[(c[k>>2]|0)+36>>2]|0)+(c[n>>2]<<2)>>2];do if(!(a[(c[t>>2]|0)+36>>0]|0)){if((c[(c[t>>2]|0)+20>>2]|0)==(c[k>>2]|0)){c[o>>2]=1;c[q>>2]=c[(c[t>>2]|0)+20+4>>2]}else{c[o>>2]=0;c[q>>2]=c[(c[t>>2]|0)+20>>2]}qQ(u,c[t>>2]|0,c[q>>2]|0);c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];f=N(~~(+h[r>>3]-+h[p>>3])|0)|0;h[s>>3]=+(f+(N(~~(+h[r+8>>3]-+h[p+8>>3])|0)|0)|0);f=c[j>>2]|0;if(c[o>>2]|0){LQ(f,c[m>>2]|0,c[t>>2]|0,0.0)|0;break}else{LQ(f,c[l>>2]|0,c[t>>2]|0,0.0)|0;break}}while(0);c[n>>2]=(c[n>>2]|0)+1}n=c[j>>2]|0;c[n>>2]=(c[n>>2]|0)+2;i=g;return}function DP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+80|0;f=e+76|0;g=e+72|0;j=e+68|0;k=e+64|0;l=e+40|0;m=e+60|0;n=e+56|0;o=e+24|0;p=e+16|0;q=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;sQ(l,c[g>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+32>>2]|0))break;c[m>>2]=c[(c[(c[g>>2]|0)+36>>2]|0)+(c[k>>2]<<2)>>2];d=(c[m>>2]|0)+20|0;if((c[(c[m>>2]|0)+20>>2]|0)==(c[g>>2]|0))c[n>>2]=c[d+4>>2];else c[n>>2]=c[d>>2];qQ(q,c[m>>2]|0,c[n>>2]|0);c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];d=N(~~(+h[o>>3]-+h[l>>3])|0)|0;h[p>>3]=+(d+(N(~~(+h[o+8>>3]-+h[l+8>>3])|0)|0)|0);LQ(c[f>>2]|0,c[j>>2]|0,c[m>>2]|0,0.0)|0;c[k>>2]=(c[k>>2]|0)+1}k=c[f>>2]|0;c[k>>2]=(c[k>>2]|0)+1;k=c[g>>2]|0;c[(c[j>>2]|0)+20+4>>2]=k;c[(c[j>>2]|0)+20>>2]=k;i=e;return}function EP(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;j=i;i=i+256|0;k=j+248|0;l=j+244|0;m=j+240|0;n=j+232|0;o=j+224|0;p=j+220|0;q=j+216|0;r=j+212|0;s=j+208|0;t=j+204|0;u=j+200|0;v=j+136|0;w=j+128|0;x=j+120|0;y=j+112|0;z=j+196|0;A=j+192|0;B=j+96|0;C=j+80|0;D=j+64|0;E=j+48|0;F=j+32|0;G=j+16|0;H=j;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s>>2]=0;c[o>>2]=c[l>>2];while(1){if(!(c[o>>2]|0))break;c[s>>2]=(c[s>>2]|0)+1;c[o>>2]=c[(c[o>>2]|0)+8>>2]}c[n>>2]=0;c[n+4>>2]=bK(((c[s>>2]|0)-2|0)*56|0)|0;c[v+52>>2]=0;c[v+48>>2]=0;s=c[(c[l>>2]|0)+8>>2]|0;c[q>>2]=s;c[o>>2]=s;c[p>>2]=c[(c[o>>2]|0)+8>>2];s=(c[o>>2]|0)+20|0;if(c[c[(c[o>>2]|0)+20>>2]>>2]&1)c[t>>2]=c[s+4>>2];else c[t>>2]=c[s>>2];qQ(E,c[o>>2]|0,c[t>>2]|0);c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];while(1){if(!(c[(c[p>>2]|0)+8>>2]|0))break;c[u>>2]=rQ(c[q>>2]|0,c[p>>2]|0)|0;GU(c[k>>2]|0,c[u>>2]|0,c[(c[o>>2]|0)+12>>2]|0);if(!((d[(c[o>>2]|0)+36>>0]|0)==(d[(c[p>>2]|0)+36>>0]|0)?(c[(c[p>>2]|0)+8>>2]|0)!=(c[m>>2]|0):0)){if((d[(c[o>>2]|0)+36>>0]|0)!=(d[(c[p>>2]|0)+36>>0]|0)){sQ(F,c[u>>2]|0);c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];c[C+8>>2]=c[F+8>>2];c[C+12>>2]=c[F+12>>2]}else{qQ(G,c[p>>2]|0,c[u>>2]|0);c[C>>2]=c[G>>2];c[C+4>>2]=c[G+4>>2];c[C+8>>2]=c[G+8>>2];c[C+12>>2]=c[G+12>>2]}E=(c[o>>2]|0)==(c[(c[l>>2]|0)+8>>2]|0);if(a[(c[o>>2]|0)+36>>0]|0){do if(!E)if(+h[D+8>>3]>+h[B+8>>3]){c[z>>2]=1;break}else{c[z>>2]=3;break}else c[z>>2]=0;while(0);do if((d[(c[o>>2]|0)+36>>0]|0)!=(d[(c[p>>2]|0)+36>>0]|0))if((c[(c[p>>2]|0)+20>>2]|0)==(c[u>>2]|0)){c[A>>2]=1;break}else{c[A>>2]=3;break}else c[A>>2]=0;while(0);h[w>>3]=+h[(c[t>>2]|0)+40+8>>3];h[x>>3]=+h[(c[t>>2]|0)+40>>3];h[y>>3]=+h[(c[u>>2]|0)+40>>3]}else{do if(!E)if(+h[D>>3]>+h[B>>3]){c[z>>2]=4;break}else{c[z>>2]=2;break}else c[z>>2]=0;while(0);do if((d[(c[o>>2]|0)+36>>0]|0)!=(d[(c[p>>2]|0)+36>>0]|0))if((c[(c[p>>2]|0)+20>>2]|0)==(c[u>>2]|0)){c[A>>2]=4;break}else{c[A>>2]=2;break}else c[A>>2]=0;while(0);h[w>>3]=+h[(c[t>>2]|0)+40>>3];h[x>>3]=+h[(c[t>>2]|0)+40+8>>3];h[y>>3]=+h[(c[u>>2]|0)+40+8>>3]}tQ(v,((a[(c[o>>2]|0)+36>>0]|0)!=0^1)&1,+h[w>>3],+h[x>>3],+h[y>>3],c[z>>2]|0,c[A>>2]|0);E=c[n>>2]|0;c[n>>2]=E+1;s=(c[n+4>>2]|0)+(E*56|0)|0;E=v;g=s+56|0;do{c[s>>2]=c[E>>2];s=s+4|0;E=E+4|0}while((s|0)<(g|0));c[t>>2]=c[u>>2];c[D>>2]=c[B>>2];c[D+4>>2]=c[B+4>>2];c[D+8>>2]=c[B+8>>2];c[D+12>>2]=c[B+12>>2];c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];c[B+8>>2]=c[C+8>>2];c[B+12>>2]=c[C+12>>2];if((d[(c[o>>2]|0)+36>>0]|0)!=(d[(c[p>>2]|0)+36>>0]|0)?(c[(c[p>>2]|0)+8>>2]|0)==(c[m>>2]|0):0){qQ(H,c[p>>2]|0,c[u>>2]|0);c[C>>2]=c[H>>2];c[C+4>>2]=c[H+4>>2];c[C+8>>2]=c[H+8>>2];c[C+12>>2]=c[H+12>>2];c[A>>2]=0;if(a[(c[p>>2]|0)+36>>0]|0){if(+h[D+8>>3]>+h[B+8>>3])c[z>>2]=1;else c[z>>2]=3;h[w>>3]=+h[(c[t>>2]|0)+40+8>>3];h[x>>3]=+h[(c[t>>2]|0)+40>>3];h[y>>3]=+h[(c[u>>2]|0)+40>>3]}else{if(+h[D>>3]>+h[B>>3])c[z>>2]=4;else c[z>>2]=2;h[w>>3]=+h[(c[t>>2]|0)+40>>3];h[x>>3]=+h[(c[t>>2]|0)+40+8>>3];h[y>>3]=+h[(c[u>>2]|0)+40+8>>3]}tQ(v,((a[(c[p>>2]|0)+36>>0]|0)!=0^1)&1,+h[w>>3],+h[x>>3],+h[y>>3],c[z>>2]|0,c[A>>2]|0);f=c[n>>2]|0;c[n>>2]=f+1;s=(c[n+4>>2]|0)+(f*56|0)|0;E=v;g=s+56|0;do{c[s>>2]=c[E>>2];s=s+4|0;E=E+4|0}while((s|0)<(g|0))}c[o>>2]=c[p>>2]}c[q>>2]=c[p>>2];c[p>>2]=c[(c[p>>2]|0)+8>>2]}c[n+4>>2]=Q4(c[n+4>>2]|0,(c[n>>2]|0)*56|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;if((c[r>>2]|0)>0)c[(c[n+4>>2]|0)+((c[r>>2]|0)*56|0)+48>>2]=(c[n+4>>2]|0)+(((c[r>>2]|0)-1|0)*56|0);if((c[r>>2]|0)<((c[n>>2]|0)-1|0))c[(c[n+4>>2]|0)+((c[r>>2]|0)*56|0)+52>>2]=(c[n+4>>2]|0)+(((c[r>>2]|0)+1|0)*56|0);c[r>>2]=(c[r>>2]|0)+1}c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];i=j;return}function FP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;j=b+8|0;k=b+4|0;l=b;c[d>>2]=a;c[g>>2]=Nz(61156,c[12989]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[d>>2]>>2]|0))break;c[k>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[e>>2]|0)*72|0);if(!(c[c[k>>2]>>2]&4)){while(1){a=c[(c[(c[k>>2]|0)+36>>2]|0)+8>>2]|0;c[f>>2]=a;if(!a)break;a=c[(c[f>>2]|0)+20>>2]|0;c[l>>2]=a;if(!a)break;if(!((c[c[l>>2]>>2]&1|0)!=0^1))break;c[k>>2]=c[l>>2]}c[j>>2]=bK(40)|0;c[(c[j>>2]|0)+36>>2]=c[k>>2];h[(c[j>>2]|0)+8>>3]=+h[(c[k>>2]|0)+40>>3];a=c[k>>2]|0;c[a>>2]=c[a>>2]|4;while(1){a=c[c[(c[k>>2]|0)+36>>2]>>2]|0;c[f>>2]=a;if(!a)break;a=c[(c[f>>2]|0)+20+4>>2]|0;c[l>>2]=a;if(!a)break;if(!((c[c[l>>2]>>2]&1|0)!=0^1))break;c[k>>2]=c[l>>2];a=c[k>>2]|0;c[a>>2]=c[a>>2]|4}h[(c[j>>2]|0)+8+8>>3]=+h[(c[k>>2]|0)+40+16>>3];lQ(c[g>>2]|0,c[j>>2]|0,+h[(c[(c[j>>2]|0)+36>>2]|0)+40+8>>3])}c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function GP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;j=b+8|0;k=b+4|0;l=b;c[d>>2]=a;c[g>>2]=Nz(61156,c[12989]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[d>>2]>>2]|0))break;c[k>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[e>>2]|0)*72|0);if(!(c[c[k>>2]>>2]&2)){while(1){a=c[(c[(c[k>>2]|0)+36>>2]|0)+12>>2]|0;c[f>>2]=a;if(!a)break;a=c[(c[f>>2]|0)+20>>2]|0;c[l>>2]=a;if(!a)break;if(!((c[c[l>>2]>>2]&1|0)!=0^1))break;c[k>>2]=c[l>>2]}c[j>>2]=bK(40)|0;c[(c[j>>2]|0)+36>>2]=c[k>>2];h[(c[j>>2]|0)+8>>3]=+h[(c[k>>2]|0)+40+8>>3];a=c[k>>2]|0;c[a>>2]=c[a>>2]|2;while(1){a=c[(c[(c[k>>2]|0)+36>>2]|0)+4>>2]|0;c[f>>2]=a;if(!a)break;a=c[(c[f>>2]|0)+20+4>>2]|0;c[l>>2]=a;if(!a)break;if(!((c[c[l>>2]>>2]&1|0)!=0^1))break;c[k>>2]=c[l>>2];a=c[k>>2]|0;c[a>>2]=c[a>>2]|2}h[(c[j>>2]|0)+8+8>>3]=+h[(c[k>>2]|0)+40+16+8>>3];lQ(c[g>>2]|0,c[j>>2]|0,+h[(c[(c[j>>2]|0)+36>>2]|0)+40>>3])}c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function HP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;g=f+36|0;h=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+8|0;o=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[g>>2]|0))break;e=(c[h>>2]|0)+(c[l>>2]<<3)|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[n>>2]|0))break;c[o>>2]=(c[n+4>>2]|0)+((c[m>>2]|0)*56|0);e=c[j>>2]|0;if(a[c[o>>2]>>0]|0)c[k>>2]=OP(c[e+24>>2]|0,c[o>>2]|0)|0;else c[k>>2]=OP(c[e+20>>2]|0,c[o>>2]|0)|0;kQ(c[k>>2]|0,c[o>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=(c[l>>2]|0)+1}i=f;return}function IP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+8>>2]=a;c[e+4>>2]=b;c[f>>2]=d;SP(c[(c[f>>2]|0)+20>>2]|0);SP(c[(c[f>>2]|0)+24>>2]|0);TP(c[(c[f>>2]|0)+20>>2]|0);TP(c[(c[f>>2]|0)+24>>2]|0);UP(c[(c[f>>2]|0)+20>>2]|0,c[f>>2]|0);UP(c[(c[f>>2]|0)+24>>2]|0,c[f>>2]|0);VP(c[(c[f>>2]|0)+20>>2]|0);VP(c[(c[f>>2]|0)+24>>2]|0);i=e;return}function JP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0,C=0.0;g=i;i=i+256|0;j=g+184|0;k=g+176|0;l=g+160|0;m=g+128|0;n=g+96|0;o=g+252|0;p=g+248|0;q=g+244|0;r=g+240|0;s=g+236|0;t=g+232|0;u=g+64|0;v=g+32|0;w=g+216|0;x=g;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;h[v+8>>3]=1797693134862315708145274.0e284;h[v>>3]=1797693134862315708145274.0e284;h[v+16+8>>3]=-1797693134862315708145274.0e284;h[v+16>>3]=-1797693134862315708145274.0e284;f=c[o>>2]|0;c[k>>2]=c[15287];Y2(f,147798,k)|0;f=c[o>>2]|0;c[j>>2]=10;c[j+4>>2]=10;Y2(f,147801,j)|0;_2(175970,c[o>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[p>>2]|0)+4>>2]|0))break;f=(c[(c[p>>2]|0)+12>>2]|0)+((c[t>>2]|0)*72|0)+40|0;c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+16>>2]=c[f+16>>2];c[u+20>>2]=c[f+20>>2];c[u+24>>2]=c[f+24>>2];c[u+28>>2]=c[f+28>>2];f=c[o>>2]|0;y=+h[u+8>>3];z=+h[u+16>>3];A=+h[u+16+8>>3];h[n>>3]=+h[u>>3];h[n+8>>3]=y;h[n+16>>3]=z;h[n+24>>3]=A;Y2(f,175989,n)|0;c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){B=c[o>>2]|0;if((c[t>>2]|0)>=(c[q>>2]|0))break;n=c[(c[s>>2]|0)+(c[t>>2]<<3)+4>>2]|0;f=(c[r>>2]|0)+(c[t>>2]<<3)|0;e=c[p>>2]|0;d=c[t>>2]|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[j>>2]=c[v>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[j+12>>2]=c[v+12>>2];c[j+16>>2]=c[v+16>>2];c[j+20>>2]=c[v+20>>2];c[j+24>>2]=c[v+24>>2];c[j+28>>2]=c[v+28>>2];RP(x,B,n,k,e,d,j);c[v>>2]=c[x>>2];c[v+4>>2]=c[x+4>>2];c[v+8>>2]=c[x+8>>2];c[v+12>>2]=c[x+12>>2];c[v+16>>2]=c[x+16>>2];c[v+20>>2]=c[x+20>>2];c[v+24>>2]=c[x+24>>2];c[v+28>>2]=c[x+28>>2];c[t>>2]=(c[t>>2]|0)+1}_2(147818,B)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[c[p>>2]>>2]|0))break;B=(c[(c[p>>2]|0)+8>>2]|0)+((c[t>>2]|0)*72|0)+40|0;c[u>>2]=c[B>>2];c[u+4>>2]=c[B+4>>2];c[u+8>>2]=c[B+8>>2];c[u+12>>2]=c[B+12>>2];c[u+16>>2]=c[B+16>>2];c[u+20>>2]=c[B+20>>2];c[u+24>>2]=c[B+24>>2];c[u+28>>2]=c[B+28>>2];B=c[o>>2]|0;A=+h[u+8>>3];z=+h[u+16>>3];y=+h[u+16+8>>3];h[m>>3]=+h[u>>3];h[m+8>>3]=A;h[m+16>>3]=z;h[m+24>>3]=y;Y2(B,176026,m)|0;h[v>>3]=+h[v>>3]<+h[u>>3]?+h[v>>3]:+h[u>>3];h[v+8>>3]=+h[v+8>>3]<+h[u+8>>3]?+h[v+8>>3]:+h[u+8>>3];h[v+16>>3]=+h[v+16>>3]>+h[u+16>>3]?+h[v+16>>3]:+h[u+16>>3];if(+h[v+16+8>>3]>+h[u+16+8>>3])C=+h[v+16+8>>3];else C=+h[u+16+8>>3];h[v+16+8>>3]=C;c[t>>2]=(c[t>>2]|0)+1}c[w>>2]=~~(+h[v>>3]+10.0);c[w+4>>2]=~~(+h[v+8>>3]+10.0);c[w+8>>2]=~~(+h[v+16>>3]+10.0);c[w+8+4>>2]=~~(+h[v+16+8>>3]+10.0);v=c[o>>2]|0;o=c[15288]|0;t=c[w+4>>2]|0;u=c[w+8>>2]|0;m=c[w+8+4>>2]|0;c[l>>2]=c[w>>2];c[l+4>>2]=t;c[l+8>>2]=u;c[l+12>>2]=m;Y2(v,o,l)|0;i=g;return}function KP(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;m=i;i=i+208|0;n=m+104|0;o=m+88|0;p=m+80|0;q=m+192|0;r=m+188|0;s=m+184|0;t=m+180|0;u=m+176|0;v=m+172|0;w=m+168|0;x=m+164|0;y=m+160|0;z=m+156|0;A=m+152|0;B=m+148|0;C=m+144|0;D=m+64|0;E=m+48|0;F=m+32|0;G=m+136|0;H=m+128|0;I=m+124|0;J=m+120|0;K=m+16|0;L=m;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=0;c[B>>2]=0;c[C>>2]=0;while(1){if((c[x>>2]|0)>=(c[s>>2]|0))break;c[I>>2]=c[(c[v>>2]|0)+(c[x>>2]<<3)+4>>2];l=c[I>>2]|0;k=(c[(c[((c[c[I>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+16|0;l=(c[(c[I>>2]|0)+8>>2]|0)+16|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];LP(K,o,n);c[E>>2]=c[K>>2];c[E+4>>2]=c[K+4>>2];c[E+8>>2]=c[K+8>>2];c[E+12>>2]=c[K+12>>2];l=c[I>>2]|0;k=(c[(c[((c[c[I>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+16|0;l=(c[(c[I>>2]|0)+8>>2]|0)+56|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];LP(L,o,n);c[F>>2]=c[L>>2];c[F+4>>2]=c[L+4>>2];c[F+8>>2]=c[L+8>>2];c[F+12>>2]=c[L+12>>2];l=(c[t>>2]|0)+(c[x>>2]<<3)|0;c[G>>2]=c[l>>2];c[G+4>>2]=c[l+4>>2];c[A>>2]=1+((c[G>>2]|0)*3|0);if((c[A>>2]|0)>(c[C>>2]|0)){if(c[B>>2]|0)O4(c[B>>2]|0);c[B>>2]=cK(c[A>>2]<<4)|0;c[C>>2]=c[A>>2]}c[H>>2]=c[G+4>>2];l=c[H>>2]|0;k=c[r>>2]|0;if(a[c[H>>2]>>0]|0){h[D>>3]=+MP(l,k);h[D+8>>3]=+h[E+8>>3]}else{h[D+8>>3]=+(NP(l,k)|0);h[D>>3]=+h[E>>3]}k=c[B>>2]|0;l=(c[B>>2]|0)+16|0;c[l>>2]=c[D>>2];c[l+4>>2]=c[D+4>>2];c[l+8>>2]=c[D+8>>2];c[l+12>>2]=c[D+12>>2];c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];c[z>>2]=2;c[y>>2]=1;while(1){if((c[y>>2]|0)>=(c[G>>2]|0))break;c[H>>2]=(c[G+4>>2]|0)+((c[y>>2]|0)*56|0);l=c[H>>2]|0;k=c[r>>2]|0;if(a[c[H>>2]>>0]|0)h[D>>3]=+MP(l,k);else h[D+8>>3]=+(NP(l,k)|0);k=(c[B>>2]|0)+((c[z>>2]|0)+2<<4)|0;l=(c[B>>2]|0)+((c[z>>2]|0)+1<<4)|0;j=(c[B>>2]|0)+(c[z>>2]<<4)|0;c[j>>2]=c[D>>2];c[j+4>>2]=c[D+4>>2];c[j+8>>2]=c[D+8>>2];c[j+12>>2]=c[D+12>>2];c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];c[z>>2]=(c[z>>2]|0)+3;c[y>>2]=(c[y>>2]|0)+1}l=c[H>>2]|0;k=c[r>>2]|0;if(a[c[H>>2]>>0]|0){h[D>>3]=+MP(l,k);h[D+8>>3]=+h[F+8>>3]}else{h[D+8>>3]=+(NP(l,k)|0);h[D>>3]=+h[F>>3]}k=(c[B>>2]|0)+(c[z>>2]<<4)|0;l=(c[B>>2]|0)+((c[z>>2]|0)+1<<4)|0;c[l>>2]=c[D>>2];c[l+4>>2]=c[D+4>>2];c[l+8>>2]=c[D+8>>2];c[l+12>>2]=c[D+12>>2];c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];if((d[138998]|0)>1){l=c[24742]|0;k=c[I>>2]|0;j=wB(c[((c[c[I>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)|0;k=c[I>>2]|0;g=wB(c[((c[c[I>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)|0;c[p>>2]=j;c[p+4>>2]=g;Y2(l,147757,p)|0}l=c[I>>2]|0;jN(c[I>>2]|0,c[((c[c[I>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0,c[B>>2]|0,c[A>>2]|0,c[u>>2]|0);if(((c[w>>2]|0)!=0?(l=c[(c[(c[I>>2]|0)+8>>2]|0)+96>>2]|0,c[J>>2]=l,(l|0)!=0):0)?(a[(c[J>>2]|0)+81>>0]|0)==0:0){l=c[q>>2]|0;g=c[I>>2]|0;c[o>>2]=c[E>>2];c[o+4>>2]=c[E+4>>2];c[o+8>>2]=c[E+8>>2];c[o+12>>2]=c[E+12>>2];c[n>>2]=c[F>>2];c[n+4>>2]=c[F+4>>2];c[n+8>>2]=c[F+8>>2];c[n+12>>2]=c[F+12>>2];sN(l,g,o,n)}c[x>>2]=(c[x>>2]|0)+1}O4(c[B>>2]|0);i=m;return}function LP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function MP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;j=d+16|0;k=d+8|0;l=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=OP(c[(c[f>>2]|0)+24>>2]|0,c[e>>2]|0)|0;h[j>>3]=+(c[(c[e>>2]|0)+44>>2]|0)/+((c[(c[g>>2]|0)+24>>2]|0)+1|0);h[k>>3]=+h[(c[(c[g>>2]|0)+36>>2]|0)+40>>3];h[l>>3]=+h[(c[(c[g>>2]|0)+36>>2]|0)+40+16>>3];i=d;return +(+h[k>>3]+ +h[j>>3]*(+h[l>>3]-+h[k>>3]))}function NP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;j=d+16|0;k=d+8|0;l=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=OP(c[(c[f>>2]|0)+20>>2]|0,c[e>>2]|0)|0;h[j>>3]=1.0-+(c[(c[e>>2]|0)+44>>2]|0)/+((c[(c[g>>2]|0)+24>>2]|0)+1|0);h[k>>3]=+h[(c[(c[g>>2]|0)+36>>2]|0)+40+8>>3];h[l>>3]=+h[(c[(c[g>>2]|0)+36>>2]|0)+40+16+8>>3];i=d;return ~~(+h[k>>3]+ +h[j>>3]*(+h[l>>3]-+h[k>>3]))|0}function OP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,(c[f>>2]|0)+8|0,512)|0;if(!(c[h>>2]|0))La(147770,147776,425,147784);c[g>>2]=Hb[c[c[(c[h>>2]|0)+16>>2]>>2]&63](c[(c[h>>2]|0)+16>>2]|0,(c[f>>2]|0)+16|0,512)|0;if(c[g>>2]|0){i=d;return c[g>>2]|0}else La(147795,147776,427,147784);return 0}function PP(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function QP(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function RP(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;l=i;i=i+96|0;m=l+48|0;n=l+40|0;o=l+32|0;p=l+84|0;q=l+80|0;r=l+76|0;s=l+68|0;t=l+64|0;u=l+60|0;v=l;w=l+56|0;c[p>>2]=d;c[q>>2]=e;c[r>>2]=g;c[l+72>>2]=j;j=c[q>>2]|0;g=(c[(c[(c[((c[c[q>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+40|0;c[v>>2]=c[g>>2];c[v+4>>2]=c[g+4>>2];c[v+8>>2]=c[g+8>>2];c[v+12>>2]=c[g+12>>2];c[v+16>>2]=c[g+16>>2];c[v+20>>2]=c[g+20>>2];c[v+24>>2]=c[g+24>>2];c[v+28>>2]=c[g+28>>2];c[w>>2]=c[f+4>>2];g=c[w>>2]|0;j=c[r>>2]|0;if(a[c[w>>2]>>0]|0){c[t>>2]=~~+MP(g,j);c[u>>2]=~~((+h[v+16+8>>3]+ +h[v+8>>3])/2.0)}else{c[u>>2]=NP(g,j)|0;c[t>>2]=~~((+h[v+16>>3]+ +h[v>>3])/2.0)}if(+h[k>>3]<+(c[t>>2]|0))x=+h[k>>3];else x=+(c[t>>2]|0);h[k>>3]=x;if(+h[k+8>>3]<+(c[u>>2]|0))y=+h[k+8>>3];else y=+(c[u>>2]|0);h[k+8>>3]=y;if(+h[k+16>>3]>+(c[t>>2]|0))z=+h[k+16>>3];else z=+(c[t>>2]|0);h[k+16>>3]=z;if(+h[k+16+8>>3]>+(c[u>>2]|0))A=+h[k+16+8>>3];else A=+(c[u>>2]|0);h[k+16+8>>3]=A;j=c[p>>2]|0;g=c[u>>2]|0;c[o>>2]=c[t>>2];c[o+4>>2]=g;Y2(j,147894,o)|0;c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[f>>2]|0))break;c[w>>2]=(c[f+4>>2]|0)+((c[s>>2]|0)*56|0);o=c[w>>2]|0;j=c[r>>2]|0;if(a[c[w>>2]>>0]|0)c[t>>2]=~~+MP(o,j);else c[u>>2]=NP(o,j)|0;if(+h[k>>3]<+(c[t>>2]|0))B=+h[k>>3];else B=+(c[t>>2]|0);h[k>>3]=B;if(+h[k+8>>3]<+(c[u>>2]|0))C=+h[k+8>>3];else C=+(c[u>>2]|0);h[k+8>>3]=C;if(+h[k+16>>3]>+(c[t>>2]|0))D=+h[k+16>>3];else D=+(c[t>>2]|0);h[k+16>>3]=D;if(+h[k+16+8>>3]>+(c[u>>2]|0))E=+h[k+16+8>>3];else E=+(c[u>>2]|0);h[k+16+8>>3]=E;j=c[p>>2]|0;o=c[u>>2]|0;c[n>>2]=c[t>>2];c[n+4>>2]=o;Y2(j,147916,n)|0;c[s>>2]=(c[s>>2]|0)+1}s=c[q>>2]|0;n=(c[(c[(c[((c[c[q>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+40|0;c[v>>2]=c[n>>2];c[v+4>>2]=c[n+4>>2];c[v+8>>2]=c[n+8>>2];c[v+12>>2]=c[n+12>>2];c[v+16>>2]=c[n+16>>2];c[v+20>>2]=c[n+20>>2];c[v+24>>2]=c[n+24>>2];c[v+28>>2]=c[n+28>>2];n=c[w>>2]|0;s=c[r>>2]|0;if(a[c[w>>2]>>0]|0){c[t>>2]=~~+MP(n,s);c[u>>2]=~~((+h[v+16+8>>3]+ +h[v+8>>3])/2.0)}else{c[u>>2]=NP(n,s)|0;c[t>>2]=~~((+h[v>>3]+ +h[v+16>>3])/2.0)}if(+h[k>>3]<+(c[t>>2]|0))F=+h[k>>3];else F=+(c[t>>2]|0);h[k>>3]=F;if(+h[k+8>>3]<+(c[u>>2]|0))G=+h[k+8>>3];else G=+(c[u>>2]|0);h[k+8>>3]=G;if(+h[k+16>>3]>+(c[t>>2]|0))H=+h[k+16>>3];else H=+(c[t>>2]|0);h[k+16>>3]=H;if(+h[k+16+8>>3]>+(c[u>>2]|0)){I=+h[k+16+8>>3];J=k+16|0;K=J+8|0;h[K>>3]=I;L=c[p>>2]|0;M=c[t>>2]|0;N=M;O=c[u>>2]|0;P=O;c[m>>2]=N;Q=m+4|0;c[Q>>2]=P;Y2(L,147930,m)|0;c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];c[b+16>>2]=c[k+16>>2];c[b+20>>2]=c[k+20>>2];c[b+24>>2]=c[k+24>>2];c[b+28>>2]=c[k+28>>2];i=l;return}else{I=+(c[u>>2]|0);J=k+16|0;K=J+8|0;h[K>>3]=I;L=c[p>>2]|0;M=c[t>>2]|0;N=M;O=c[u>>2]|0;P=O;c[m>>2]=N;Q=m+4|0;c[Q>>2]=P;Y2(L,147930,m)|0;c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];c[b+16>>2]=c[k+16>>2];c[b+20>>2]=c[k+20>>2];c[b+24>>2]=c[k+24>>2];c[b+28>>2]=c[k+28>>2];i=l;return}}function SP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[f>>2]=Lz(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[e>>2]=c[(c[f>>2]|0)+16>>2];c[g>>2]=Lz(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[g>>2];d=vQ(c[(c[h>>2]|0)+24>>2]|0)|0;c[(c[h>>2]|0)+32>>2]=d;c[g>>2]=c[c[g>>2]>>2]}c[f>>2]=c[c[f>>2]>>2]}i=b;return}function TP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[f>>2]=Lz(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[e>>2]=c[(c[f>>2]|0)+16>>2];c[g>>2]=Lz(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[g>>2];if(c[(c[h>>2]|0)+24>>2]|0)jQ(c[h>>2]|0);c[g>>2]=c[c[g>>2]>>2]}c[f>>2]=c[c[f>>2]>>2]}i=b;return}function UP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=Lz(c[e>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[g>>2]=c[(c[h>>2]|0)+16>>2];c[j>>2]=Lz(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;ZP(c[j>>2]|0,c[f>>2]|0);c[j>>2]=c[c[j>>2]>>2]}c[h>>2]=c[c[h>>2]>>2]}i=d;return}function VP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;j=b+4|0;k=b;c[d>>2]=a;c[f>>2]=Lz(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[e>>2]=c[(c[f>>2]|0)+16>>2];c[g>>2]=Lz(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[j>>2]=c[g>>2];a:do if(c[(c[j>>2]|0)+24>>2]|0){if(c[15244]&8)WP(c[j>>2]|0,~~+h[(c[f>>2]|0)+8>>3]);AQ(c[(c[j>>2]|0)+32>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[j>>2]|0)+24>>2]|0))break a;c[(c[(c[(c[j>>2]|0)+28>>2]|0)+(c[k>>2]<<2)>>2]|0)+44>>2]=(c[(c[(c[(c[j>>2]|0)+32>>2]|0)+4>>2]|0)+((c[k>>2]|0)*12|0)+4>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}}while(0);c[g>>2]=c[c[g>>2]>>2]}c[f>>2]=c[c[f>>2]>>2]}i=b;return}function WP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0.0,n=0.0;d=i;i=i+48|0;e=d;f=d+40|0;g=d+36|0;j=d+32|0;k=d+28|0;l=d+24|0;c[f>>2]=a;c[g>>2]=b;if((c[(c[f>>2]|0)+24>>2]|0)<2){i=d;return}b=c[24742]|0;m=+h[(c[f>>2]|0)+8>>3];n=+h[(c[f>>2]|0)+8+8>>3];c[e>>2]=c[g>>2];h[e+8>>3]=m;h[e+16>>3]=n;Y2(b,148357,e)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+24>>2]|0))break;c[l>>2]=c[(c[(c[(c[f>>2]|0)+32>>2]|0)+4>>2]|0)+((c[j>>2]|0)*12|0)+8>>2];a:do if(Pz(c[l>>2]|0)|0){XP(c[24742]|0,c[(c[(c[f>>2]|0)+28>>2]|0)+(c[j>>2]<<2)>>2]|0);_2(148377,c[24742]|0)|0;c[k>>2]=Hb[c[c[l>>2]>>2]&63](c[l>>2]|0,0,128)|0;while(1){if(!(c[k>>2]|0))break a;_2(148382,c[24742]|0)|0;XP(c[24742]|0,c[(c[(c[f>>2]|0)+28>>2]|0)+(c[c[k>>2]>>2]<<2)>>2]|0);_2(193392,c[24742]|0)|0;c[k>>2]=Hb[c[c[l>>2]>>2]&63](c[l>>2]|0,c[k>>2]|0,8)|0}}while(0);c[j>>2]=(c[j>>2]|0)+1}i=d;return}function XP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,p=0;e=i;i=i+96|0;f=e+40|0;g=e;j=e+84|0;k=e+80|0;c[j>>2]=b;c[k>>2]=d;d=c[j>>2]|0;j=c[k>>2]|0;if(a[c[k>>2]>>0]|0){l=+h[j+8>>3];m=+h[(c[k>>2]|0)+16>>3];n=+h[(c[k>>2]|0)+8>>3];o=+h[(c[k>>2]|0)+16+8>>3];b=YP(c[(c[k>>2]|0)+32>>2]|0)|0;p=YP(c[(c[k>>2]|0)+36>>2]|0)|0;h[g>>3]=l;h[g+8>>3]=m;h[g+16>>3]=n;h[g+24>>3]=o;c[g+32>>2]=b;c[g+36>>2]=p;Y2(d,148388,g)|0;i=e;return}else{o=+h[j+16>>3];n=+h[(c[k>>2]|0)+8>>3];m=+h[(c[k>>2]|0)+16+8>>3];l=+h[(c[k>>2]|0)+8>>3];j=YP(c[(c[k>>2]|0)+32>>2]|0)|0;g=YP(c[(c[k>>2]|0)+36>>2]|0)|0;h[f>>3]=o;h[f+8>>3]=n;h[f+16>>3]=m;h[f+24>>3]=l;c[f+32>>2]=j;c[f+36>>2]=g;Y2(d,148388,f)|0;i=e;return}}function YP(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;switch(c[d>>2]|0){case 0:{c[e>>2]=148412;break}case 1:{c[e>>2]=148419;break}case 2:{c[e>>2]=148424;break}case 3:{c[e>>2]=148431;break}case 4:{c[e>>2]=148438;break}default:{}}i=b;return c[e>>2]|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i;i=i+80|0;e=d+64|0;f=d+60|0;g=d+56|0;j=d+52|0;k=d+48|0;l=d+40|0;m=d+36|0;n=d+32|0;o=d+24|0;p=d+20|0;q=d+16|0;r=d+8|0;s=d;c[e>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[e>>2]|0)+32>>2];c[q>>2]=c[(c[e>>2]|0)+28>>2];c[g>>2]=0;while(1){if(((c[g>>2]|0)+1|0)>=(c[(c[e>>2]|0)+24>>2]|0))break;c[j>>2]=(c[g>>2]|0)+1;while(1){if((c[j>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0))break;a:do if(((zQ(c[p>>2]|0,c[g>>2]|0,c[j>>2]|0)|0)==0?(zQ(c[p>>2]|0,c[j>>2]|0,c[g>>2]|0)|0)==0:0)?(_P(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0)|0)!=0:0){b=(c[(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0)+48>>2]|0)==0;do if(!(c[(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0)+48>>2]|0))if(b){c[k>>2]=0;break}else{c[k>>2]=1;break}else{if(b){c[k>>2]=1;break}if(+h[(c[(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0)+48>>2]|0)+8>>3]==+h[(c[(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0)+48>>2]|0)+8>>3]){c[k>>2]=0;break}else{c[k>>2]=1;break}}while(0);$P(r,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,0,c[k>>2]|0);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[l>>2]=c[o>>2];c[m>>2]=c[o+4>>2];$P(s,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1,1-(c[k>>2]|0)|0);c[o>>2]=c[s>>2];c[o+4>>2]=c[s+4>>2];c[l+4>>2]=c[o>>2];c[n>>2]=c[o+4>>2];switch(c[m>>2]|0){case -1:{aQ(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[k>>2]|0,0,c[l>>2]|0,c[f>>2]|0);aQ(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,1-(c[k>>2]|0)|0,1,c[l+4>>2]|0,c[f>>2]|0);if((c[n>>2]|0)!=1)break a;bQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1-(c[k>>2]|0)|0,c[f>>2]|0);break a;break}case 0:{switch(c[n>>2]|0){case -1:{aQ(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[k>>2]|0,0,c[l>>2]|0,c[f>>2]|0);aQ(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,1-(c[k>>2]|0)|0,1,c[l+4>>2]|0,c[f>>2]|0);break a;break}case 0:{aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,0,c[k>>2]|0,c[l>>2]|0,c[f>>2]|0);aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1,1-(c[k>>2]|0)|0,c[l+4>>2]|0,c[f>>2]|0);break a;break}case 1:{aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,0,c[k>>2]|0,c[l>>2]|0,c[f>>2]|0);aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1,1-(c[k>>2]|0)|0,c[l+4>>2]|0,c[f>>2]|0);break a;break}default:break a}break}case 1:{aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,0,c[k>>2]|0,c[l>>2]|0,c[f>>2]|0);aQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1,1-(c[k>>2]|0)|0,c[l+4>>2]|0,c[f>>2]|0);if((c[n>>2]|0)!=-1)break a;bQ(c[(c[q>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0,1-(c[k>>2]|0)|0,c[f>>2]|0);break a;break}default:break a}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}i=d;return}function _P(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(+h[(c[e>>2]|0)+8>>3]==+h[(c[f>>2]|0)+8>>3]))La(148510,147776,845,148541);if(!(+h[(c[e>>2]|0)+16>>3]==+h[(c[f>>2]|0)+16>>3])){g=0;j=g&1;i=d;return j|0}if(!(+h[(c[e>>2]|0)+16+8>>3]==+h[(c[f>>2]|0)+16+8>>3])){g=0;j=g&1;i=d;return j|0}if((c[(c[e>>2]|0)+32>>2]|0)!=(c[(c[f>>2]|0)+32>>2]|0)){g=0;j=g&1;i=d;return j|0}g=(c[(c[e>>2]|0)+36>>2]|0)==(c[(c[f>>2]|0)+36>>2]|0);j=g&1;i=d;return j|0}function $P(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;h=g+40|0;j=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[n>>2]=0;while(1){f=cQ(c[h>>2]|0,c[k>>2]|0)|0;c[q>>2]=f;if(!f)break;f=cQ(c[j>>2]|0,c[l>>2]|0)|0;c[r>>2]=f;if(!f)break;if(!(_P(c[q>>2]|0,c[r>>2]|0)|0))break;c[n>>2]=(c[n>>2]|0)+1;c[h>>2]=c[q>>2];c[j>>2]=c[r>>2]}if(!(c[q>>2]|0)){c[m>>2]=0;s=c[n>>2]|0;c[p>>2]=s;t=c[m>>2]|0;u=p+4|0;c[u>>2]=t;c[a>>2]=c[p>>2];c[a+4>>2]=c[p+4>>2];i=g;return}if(!(c[r>>2]|0))La(176099,147776,873,148459);c[o>>2]=dQ(c[q>>2]|0,c[r>>2]|0)|0;c[m>>2]=eQ(c[q>>2]|0,c[o>>2]|0,(c[n>>2]|0)+1|0,1-(c[k>>2]|0)|0)|0;s=c[n>>2]|0;c[p>>2]=s;t=c[m>>2]|0;u=p+4|0;c[u>>2]=t;c[a>>2]=c[p>>2];c[a+4>>2]=c[p+4>>2];i=g;return}function aQ(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;l=k+40|0;m=k+36|0;n=k+32|0;o=k+28|0;p=k+24|0;q=k+20|0;r=k+16|0;s=k+12|0;t=k+8|0;u=k+4|0;v=k;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;j=c[q>>2]|0;if(a[c[l>>2]>>0]|0)c[s>>2]=OP(c[j+24>>2]|0,c[l>>2]|0)|0;else c[s>>2]=OP(c[j+20>>2]|0,c[l>>2]|0)|0;xQ(c[(c[s>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[(c[m>>2]|0)+40>>2]|0);c[r>>2]=1;while(1){if((c[r>>2]|0)>(c[p>>2]|0))break;c[u>>2]=cQ(c[l>>2]|0,c[n>>2]|0)|0;c[v>>2]=cQ(c[m>>2]|0,c[o>>2]|0)|0;j=c[q>>2]|0;do if(a[c[l>>2]>>0]|0){c[t>>2]=OP(c[j+20>>2]|0,c[u>>2]|0)|0;g=c[l>>2]|0;if(+h[(c[u>>2]|0)+8>>3]==+h[(c[l>>2]|0)+16>>3]){f=(c[g+32>>2]|0)==2;e=(zQ(c[(c[s>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[(c[m>>2]|0)+40>>2]|0)|0)!=0;d=c[(c[t>>2]|0)+32>>2]|0;if(f)if(e){xQ(d,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else{xQ(d,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else if(e){xQ(d,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else{xQ(d,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}}else{d=(c[g+36>>2]|0)==2;g=(zQ(c[(c[s>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[(c[m>>2]|0)+40>>2]|0)|0)!=0;e=c[(c[t>>2]|0)+32>>2]|0;if(d)if(g){xQ(e,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else{xQ(e,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else if(g){xQ(e,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else{xQ(e,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}}}else{c[t>>2]=OP(c[j+24>>2]|0,c[u>>2]|0)|0;e=c[l>>2]|0;if(+h[(c[u>>2]|0)+8>>3]==+h[(c[l>>2]|0)+16>>3]){g=(c[e+32>>2]|0)==1;d=(zQ(c[(c[s>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[(c[m>>2]|0)+40>>2]|0)|0)!=0;f=c[(c[t>>2]|0)+32>>2]|0;if(g)if(d){xQ(f,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else{xQ(f,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else if(d){xQ(f,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else{xQ(f,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}}else{f=(c[e+36>>2]|0)==1;e=(zQ(c[(c[s>>2]|0)+32>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[(c[m>>2]|0)+40>>2]|0)|0)!=0;d=c[(c[t>>2]|0)+32>>2]|0;if(f)if(e){xQ(d,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}else{xQ(d,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else if(e){xQ(d,c[(c[v>>2]|0)+40>>2]|0,c[(c[u>>2]|0)+40>>2]|0);break}else{xQ(d,c[(c[u>>2]|0)+40>>2]|0,c[(c[v>>2]|0)+40>>2]|0);break}}}while(0);c[s>>2]=c[t>>2];c[l>>2]=c[u>>2];c[m>>2]=c[v>>2];c[r>>2]=(c[r>>2]|0)+1}i=k;return}function bQ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=c[h>>2];c[n>>2]=c[j>>2];while(1){j=(_P(c[m>>2]|0,c[n>>2]|0)|0)!=0;p=c[m>>2]|0;if(!j)break;c[m>>2]=cQ(p,1)|0;c[n>>2]=cQ(c[n>>2]|0,c[k>>2]|0)|0}k=c[l>>2]|0;if(a[p>>0]|0)c[o>>2]=OP(c[k+24>>2]|0,c[m>>2]|0)|0;else c[o>>2]=OP(c[k+20>>2]|0,c[m>>2]|0)|0;yQ(c[(c[o>>2]|0)+32>>2]|0,c[(c[m>>2]|0)+40>>2]|0,c[(c[n>>2]|0)+40>>2]|0);i=g;return}function cQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if(!(c[f>>2]|0))La(148446,147776,800,148450);b=c[f>>2]|0;if(c[g>>2]|0){c[e>>2]=c[b+52>>2];h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=c[b+48>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function dQ(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f;j=f+12|0;k=f+8|0;l=f+4|0;c[k>>2]=b;c[l>>2]=e;if((d[c[k>>2]>>0]|0)!=(d[c[l>>2]>>0]|0)){$z(1,148472,g)|0;Pa(60980,1)}if(+h[(c[k>>2]|0)+8>>3]!=+h[(c[l>>2]|0)+8>>3]){$z(1,148472,g)|0;Pa(60980,1)}g=c[k>>2]|0;e=c[l>>2]|0;if(a[c[k>>2]>>0]|0){c[j>>2]=fQ(g,e,4,2)|0;m=c[j>>2]|0;i=f;return m|0}else{c[j>>2]=fQ(g,e,3,1)|0;m=c[j>>2]|0;i=f;return m|0}return 0}function eQ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;j=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[o>>2]=c[k>>2];c[q>>2]=c[j>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[l>>2]|0))break;c[p>>2]=cQ(c[q>>2]|0,c[m>>2]|0)|0;j=+h[(c[p>>2]|0)+8>>3]==+h[(c[q>>2]|0)+16>>3];k=c[q>>2]|0;do if(a[c[q>>2]>>0]|0)if(j){if((c[k+32>>2]|0)!=4)break;c[o>>2]=_(c[o>>2]|0,-1)|0;break}else{if((c[k+36>>2]|0)!=2)break;c[o>>2]=_(c[o>>2]|0,-1)|0;break}else if(j){if((c[k+32>>2]|0)!=1)break;c[o>>2]=_(c[o>>2]|0,-1)|0;break}else{if((c[k+36>>2]|0)!=3)break;c[o>>2]=_(c[o>>2]|0,-1)|0;break}while(0);c[q>>2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}i=g;return c[o>>2]|0}function fQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if(!(+h[(c[j>>2]|0)+16+8>>3]<+h[(c[k>>2]|0)+16>>3])?!(+h[(c[j>>2]|0)+16>>3]>+h[(c[k>>2]|0)+16+8>>3]):0){if(+h[(c[j>>2]|0)+16>>3]<+h[(c[k>>2]|0)+16>>3]?+h[(c[k>>2]|0)+16>>3]<+h[(c[j>>2]|0)+16+8>>3]:0){c[g>>2]=gQ(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;n=c[g>>2]|0;i=f;return n|0}if(+h[(c[k>>2]|0)+16>>3]<+h[(c[j>>2]|0)+16>>3]?+h[(c[j>>2]|0)+16>>3]<+h[(c[k>>2]|0)+16+8>>3]:0){c[g>>2]=_(-1,gQ(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;n=c[g>>2]|0;i=f;return n|0}o=+h[(c[j>>2]|0)+16+8>>3];e=(c[k>>2]|0)+16|0;if(!(+h[(c[j>>2]|0)+16>>3]==+h[(c[k>>2]|0)+16>>3])){d=c[j>>2]|0;if(o==+h[e>>3]){if((c[d+36>>2]|0)==(c[(c[k>>2]|0)+32>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+36>>2]|0)==(c[m>>2]|0)){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}}else{if((c[d+32>>2]|0)==(c[(c[k>>2]|0)+36>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+32>>2]|0)==(c[m>>2]|0)){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}}}d=c[j>>2]|0;if(!(o==+h[e+8>>3]))if(+h[d+16+8>>3]<+h[(c[k>>2]|0)+16+8>>3]){e=(c[(c[j>>2]|0)+36>>2]|0)==(c[l>>2]|0);b=iQ(c[(c[k>>2]|0)+32>>2]|0,c[(c[j>>2]|0)+32>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(e){c[g>>2]=b;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=_(-1,b)|0;n=c[g>>2]|0;i=f;return n|0}}else{b=(c[(c[k>>2]|0)+36>>2]|0)==(c[m>>2]|0);e=iQ(c[(c[j>>2]|0)+32>>2]|0,c[(c[k>>2]|0)+32>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(b){c[g>>2]=e;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=_(-1,e)|0;n=c[g>>2]|0;i=f;return n|0}}if((c[d+32>>2]|0)==(c[(c[k>>2]|0)+32>>2]|0)?(c[(c[j>>2]|0)+36>>2]|0)==(c[(c[k>>2]|0)+36>>2]|0):0){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}d=(c[(c[k>>2]|0)+32>>2]|0)==(c[l>>2]|0);if((c[(c[k>>2]|0)+32>>2]|0)==(c[(c[k>>2]|0)+36>>2]|0)){if(d){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+32>>2]|0)==(c[m>>2]|0)){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+32>>2]|0)!=(c[l>>2]|0)?(c[(c[j>>2]|0)+36>>2]|0)!=(c[l>>2]|0):0){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+32>>2]|0)!=(c[m>>2]|0)?(c[(c[j>>2]|0)+36>>2]|0)!=(c[m>>2]|0):0){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if(d?(c[(c[k>>2]|0)+36>>2]|0)==(c[m>>2]|0):0){if((c[(c[j>>2]|0)+32>>2]|0)!=(c[l>>2]|0)?(c[(c[j>>2]|0)+36>>2]|0)==(c[m>>2]|0):0){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+32>>2]|0)==(c[l>>2]|0)?(c[(c[j>>2]|0)+36>>2]|0)!=(c[m>>2]|0):0){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+36>>2]|0)==(c[l>>2]|0)?(c[(c[k>>2]|0)+32>>2]|0)==(c[m>>2]|0):0){if((c[(c[j>>2]|0)+36>>2]|0)!=(c[l>>2]|0)?(c[(c[j>>2]|0)+32>>2]|0)==(c[m>>2]|0):0){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+36>>2]|0)==(c[l>>2]|0)?(c[(c[j>>2]|0)+32>>2]|0)!=(c[m>>2]|0):0){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+32>>2]|0)==0?(c[(c[k>>2]|0)+36>>2]|0)==(c[l>>2]|0):0){c[g>>2]=hQ(c[(c[j>>2]|0)+32>>2]|0,c[(c[j>>2]|0)+36>>2]|0,c[l>>2]|0)|0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+32>>2]|0)==0?(c[(c[k>>2]|0)+36>>2]|0)==(c[m>>2]|0):0){c[g>>2]=_(-1,hQ(c[(c[j>>2]|0)+32>>2]|0,c[(c[j>>2]|0)+36>>2]|0,c[m>>2]|0)|0)|0;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+32>>2]|0)==(c[l>>2]|0)?(c[(c[k>>2]|0)+36>>2]|0)==0:0){c[g>>2]=hQ(c[(c[j>>2]|0)+36>>2]|0,c[(c[j>>2]|0)+32>>2]|0,c[l>>2]|0)|0;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=_(-1,hQ(c[(c[j>>2]|0)+36>>2]|0,c[(c[j>>2]|0)+32>>2]|0,c[m>>2]|0)|0)|0;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function gQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[j>>2]|0;if(+h[(c[j>>2]|0)+16+8>>3]<+h[(c[k>>2]|0)+16+8>>3]){if((c[e+36>>2]|0)==(c[l>>2]|0)?(c[(c[k>>2]|0)+32>>2]|0)==(c[m>>2]|0):0){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[j>>2]|0)+36>>2]|0)==(c[m>>2]|0)?(c[(c[k>>2]|0)+32>>2]|0)==(c[l>>2]|0):0){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}d=(c[(c[k>>2]|0)+32>>2]|0)==(c[m>>2]|0);if(+h[e+16+8>>3]==+h[(c[k>>2]|0)+16+8>>3])if(d){c[g>>2]=iQ(c[(c[j>>2]|0)+36>>2]|0,c[(c[k>>2]|0)+36>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=_(-1,iQ(c[(c[k>>2]|0)+36>>2]|0,c[(c[j>>2]|0)+36>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;n=c[g>>2]|0;i=f;return n|0}if(d?(c[(c[k>>2]|0)+36>>2]|0)==(c[m>>2]|0):0){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}if((c[(c[k>>2]|0)+32>>2]|0)==(c[l>>2]|0)?(c[(c[k>>2]|0)+36>>2]|0)==(c[l>>2]|0):0){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function hQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;do if((c[g>>2]|0)==(c[j>>2]|0))if((c[h>>2]|0)==(c[j>>2]|0)){c[f>>2]=-1;break}else{c[f>>2]=0;break}else c[f>>2]=1;while(0);i=e;return c[f>>2]|0}function iQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!((c[h>>2]|0)==(c[l>>2]|0)?(e=(c[l>>2]|0)!=0^1,c[j>>2]=e&1,e):0))m=3;do if((m|0)==3){if((c[h>>2]|0)==0?(c[j>>2]|0)==(c[k>>2]|0):0)break;c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}while(0);c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}function jQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+28>>2];c[h>>2]=c[(c[d>>2]|0)+24>>2];c[j>>2]=c[(c[d>>2]|0)+32>>2];c[e>>2]=0;while(1){if(((c[e>>2]|0)+1|0)>=(c[h>>2]|0))break;c[f>>2]=(c[e>>2]|0)+1;while(1){k=c[e>>2]|0;if((c[f>>2]|0)>=(c[h>>2]|0))break;switch(dQ(c[(c[g>>2]|0)+(k<<2)>>2]|0,c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]|0)|0){case 1:{xQ(c[j>>2]|0,c[e>>2]|0,c[f>>2]|0);break}case -1:{xQ(c[j>>2]|0,c[f>>2]|0,c[e>>2]|0);break}default:{}}c[f>>2]=(c[f>>2]|0)+1}c[e>>2]=k+1}i=b;return}function kQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[e>>2]|0)+24|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[f>>2]|0)+40>>2]=a;a=c[e>>2]|0;if(c[(c[e>>2]|0)+28>>2]|0)g=eK(c[a+28>>2]|0,c[(c[e>>2]|0)+24>>2]<<2)|0;else g=cK(c[a+24>>2]<<2)|0;c[(c[e>>2]|0)+28>>2]=g;c[(c[(c[e>>2]|0)+28>>2]|0)+((c[(c[e>>2]|0)+24>>2]|0)-1<<2)>>2]=c[f>>2];i=d;return}function lQ(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e;k=e+8|0;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;c[k>>2]=Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,j,512)|0;if(!(c[k>>2]|0)){c[k>>2]=bK(24)|0;h[(c[k>>2]|0)+8>>3]=+h[j>>3];j=Nz(61192,c[12989]|0)|0;c[(c[k>>2]|0)+16>>2]=j;Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,c[k>>2]|0,1)|0}Hb[c[c[(c[k>>2]|0)+16>>2]>>2]&63](c[(c[k>>2]|0)+16>>2]|0,c[g>>2]|0,1)|0;i=e;return}function mQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;wQ(c[(c[f>>2]|0)+32>>2]|0);O4(c[(c[f>>2]|0)+28>>2]|0);O4(c[f>>2]|0);i=e;return}function nQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f+8|0;k=f+4|0;c[f+12>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;e=c[j>>2]|0;do if(+h[c[j>>2]>>3]>+h[c[k>>2]>>3])if(+h[e+8>>3]<=+h[(c[k>>2]|0)+8>>3]){c[g>>2]=0;break}else{c[g>>2]=1;break}else{if(!(+h[e>>3]<+h[c[k>>2]>>3])){c[g>>2]=0;break}if(+h[(c[j>>2]|0)+8>>3]>=+h[(c[k>>2]|0)+8>>3]){c[g>>2]=0;break}else{c[g>>2]=-1;break}}while(0);i=f;return c[g>>2]|0}function oQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;Jz(c[(c[f>>2]|0)+16>>2]|0)|0;O4(c[f>>2]|0);i=e;return}function pQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f+8|0;k=f+4|0;c[f+12>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;do if(!(+h[c[j>>2]>>3]>+h[c[k>>2]>>3]))if(+h[c[j>>2]>>3]<+h[c[k>>2]>>3]){c[g>>2]=-1;break}else{c[g>>2]=0;break}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function qQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0.0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f;c[g>>2]=d;c[j>>2]=e;e=(a[(c[g>>2]|0)+36>>0]|0)!=0;d=(c[j>>2]|0)+40|0;do if((c[j>>2]|0)==(c[(c[g>>2]|0)+20+4>>2]|0)){l=+h[d>>3];if(e){h[k>>3]=l;h[k+8>>3]=(+h[(c[j>>2]|0)+40+8>>3]+ +h[(c[j>>2]|0)+40+16+8>>3])/2.0;break}else{h[k>>3]=(l+ +h[(c[j>>2]|0)+40+16>>3])/2.0;h[k+8>>3]=+h[(c[j>>2]|0)+40+8>>3];break}}else if(e){h[k>>3]=+h[d+16>>3];h[k+8>>3]=(+h[(c[j>>2]|0)+40+8>>3]+ +h[(c[j>>2]|0)+40+16+8>>3])/2.0;break}else{h[k>>3]=(+h[d>>3]+ +h[(c[j>>2]|0)+40+16>>3])/2.0;h[k+8>>3]=+h[(c[j>>2]|0)+40+16+8>>3];break}while(0);c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];i=f;return}function rQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[(c[f>>2]|0)+20>>2];if((c[h>>2]|0)!=(c[(c[g>>2]|0)+20>>2]|0)?(c[h>>2]|0)!=(c[(c[g>>2]|0)+20+4>>2]|0):0){c[e>>2]=c[(c[f>>2]|0)+20+4>>2];j=c[e>>2]|0;i=d;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}function sQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;e=d+16|0;f=d;c[e>>2]=b;h[f>>3]=(+h[(c[e>>2]|0)+40>>3]+ +h[(c[e>>2]|0)+40+16>>3])/2.0;h[f+8>>3]=(+h[(c[e>>2]|0)+40+8>>3]+ +h[(c[e>>2]|0)+40+16+8>>3])/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=d;return}function tQ(b,d,e,f,g,j,k){b=b|0;d=d|0;e=+e;f=+f;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+48|0;m=l+36|0;n=l+32|0;o=l+16|0;p=l+8|0;q=l;r=l+28|0;s=l+24|0;c[m>>2]=b;c[n>>2]=d;h[o>>3]=e;h[p>>3]=f;h[q>>3]=g;c[r>>2]=j;c[s>>2]=k;a[c[m>>2]>>0]=c[n>>2];h[(c[m>>2]|0)+8>>3]=+h[o>>3];g=+h[p>>3];o=(c[m>>2]|0)+16|0;if(+h[p>>3]<+h[q>>3]){h[o>>3]=g;h[(c[m>>2]|0)+16+8>>3]=+h[q>>3];c[(c[m>>2]|0)+32>>2]=c[r>>2];c[(c[m>>2]|0)+36>>2]=c[s>>2];a[(c[m>>2]|0)+1>>0]=0;i=l;return}else{h[o+8>>3]=g;h[(c[m>>2]|0)+16>>3]=+h[q>>3];c[(c[m>>2]|0)+36>>2]=c[r>>2];c[(c[m>>2]|0)+32>>2]=c[s>>2];a[(c[m>>2]|0)+1>>0]=1;i=l;return}}function uQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e;c[f>>2]=b;c[g>>2]=d;d=c[f>>2]|0;if((c[(c[(c[f>>2]|0)+36>>2]|0)+4>>2]|0)==(c[g>>2]|0)){c[j>>2]=~~((+h[d+40>>3]+ +h[(c[f>>2]|0)+40+16>>3])/2.0);c[j+4>>2]=~~+h[(c[f>>2]|0)+40+16+8>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}b=c[f>>2]|0;if((c[(c[d+36>>2]|0)+12>>2]|0)==(c[g>>2]|0)){c[j>>2]=~~((+h[b+40>>3]+ +h[(c[f>>2]|0)+40+16>>3])/2.0);c[j+4>>2]=~~+h[(c[f>>2]|0)+40+8>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}d=c[f>>2]|0;if((c[(c[b+36>>2]|0)+8>>2]|0)==(c[g>>2]|0)){c[j+4>>2]=~~((+h[d+40+8>>3]+ +h[(c[f>>2]|0)+40+16+8>>3])/2.0);c[j>>2]=~~+h[(c[f>>2]|0)+40>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}if((c[c[d+36>>2]>>2]|0)!=(c[g>>2]|0)){c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}c[j+4>>2]=~~((+h[(c[f>>2]|0)+40+8>>3]+ +h[(c[f>>2]|0)+40+16+8>>3])/2.0);c[j>>2]=~~+h[(c[f>>2]|0)+40+16>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}function vQ(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=bK(8)|0;c[c[f>>2]>>2]=c[d>>2];a=bK((c[d>>2]|0)*12|0)|0;c[(c[f>>2]|0)+4>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[d>>2]|0))break;a=rU()|0;c[(c[(c[f>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0)+8>>2]=a;c[(c[(c[f>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}i=b;return c[f>>2]|0}function wQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[d>>2]>>2]|0))break;Jz(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0)+8>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+4>>2]|0);O4(c[d>>2]|0);i=b;return}function xQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[h>>2];Hb[c[c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]>>2]&63](c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]|0,j,1)|0;i=e;return}function yQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[h>>2];Hb[c[c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]>>2]&63](c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]|0,j,2)|0;c[j>>2]=c[g>>2];Hb[c[c[(c[(c[f>>2]|0)+4>>2]|0)+((c[h>>2]|0)*12|0)+8>>2]>>2]&63](c[(c[(c[f>>2]|0)+4>>2]|0)+((c[h>>2]|0)*12|0)+8>>2]|0,j,2)|0;i=e;return}function zQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=(Hb[c[c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]>>2]&63](c[(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)*12|0)+8>>2]|0,h,512)|0)!=0&1;i=e;return d|0}function AQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[g>>2]=0;c[h>>2]=0;if(!(c[c[d>>2]>>2]|0)){i=b;return}if((c[c[d>>2]>>2]|0)==1){c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2]=c[h>>2];i=b;return}c[j>>2]=BQ(c[c[d>>2]>>2]|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[c[d>>2]>>2]|0))break;if(!(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0)>>2]|0))c[g>>2]=CQ(c[d>>2]|0,c[e>>2]|0,c[g>>2]|0,c[j>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}while(1){e=DQ(c[j>>2]|0)|0;c[f>>2]=e;if((e|0)<0)break;c[(c[(c[d>>2]|0)+4>>2]|0)+((c[f>>2]|0)*12|0)+4>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+1}EQ(c[j>>2]|0);i=b;return}function BQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(8)|0;a=bK(c[d>>2]<<2)|0;c[(c[e>>2]|0)+4>>2]=a;c[c[e>>2]>>2]=-1;i=b;return c[e>>2]|0}function CQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[o>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[h>>2]|0)*12|0);c[c[o>>2]>>2]=1;c[l>>2]=c[(c[o>>2]|0)+8>>2];c[j>>2]=(c[j>>2]|0)+1;c[m>>2]=Lz(c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;e=c[m>>2]|0;if((c[(c[(c[l>>2]|0)+4>>2]|0)+8>>2]|0)<0)p=c[e+8>>2]|0;else p=e+(0-(c[(c[(c[l>>2]|0)+4>>2]|0)+8>>2]|0))|0;c[n>>2]=c[p>>2];if(!(c[(c[(c[g>>2]|0)+4>>2]|0)+((c[n>>2]|0)*12|0)>>2]|0))c[j>>2]=CQ(c[g>>2]|0,c[n>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[m>>2]=c[c[m>>2]>>2]}c[c[o>>2]>>2]=2;FQ(c[k>>2]|0,c[h>>2]|0);i=f;return (c[j>>2]|0)+1|0}function DQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if((c[c[e>>2]>>2]|0)==-1){c[d>>2]=-1;g=c[d>>2]|0;i=b;return g|0}else{c[f>>2]=c[(c[(c[e>>2]|0)+4>>2]|0)+(c[c[e>>2]>>2]<<2)>>2];a=c[e>>2]|0;c[a>>2]=(c[a>>2]|0)+-1;c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function EQ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[d>>2]|0)+4>>2]|0);O4(c[d>>2]|0);i=b;return}function FQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;c[b>>2]=(c[b>>2]|0)+1;c[(c[(c[e>>2]|0)+4>>2]|0)+(c[c[e>>2]>>2]<<2)>>2]=c[f>>2];i=d;return}function GQ(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[(c[e>>2]|0)+8>>2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+4>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;b[(c[(c[e>>2]|0)+16>>2]|0)+((c[f>>2]|0)*40|0)+18>>1]=b[(c[(c[e>>2]|0)+16>>2]|0)+((c[f>>2]|0)*40|0)+16>>1]|0;c[f>>2]=(c[f>>2]|0)+1}i=d;return}function HQ(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[c[e>>2]>>2]=c[(c[e>>2]|0)+8>>2];c[(c[e>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;b[(c[(c[e>>2]|0)+16>>2]|0)+((c[f>>2]|0)*40|0)+16>>1]=b[(c[(c[e>>2]|0)+16>>2]|0)+((c[f>>2]|0)*40|0)+18>>1]|0;c[f>>2]=(c[f>>2]|0)+1}while(1){if((c[f>>2]|0)>=((c[c[e>>2]>>2]|0)+2|0))break;b[(c[(c[e>>2]|0)+16>>2]|0)+((c[f>>2]|0)*40|0)+16>>1]=0;c[f>>2]=(c[f>>2]|0)+1}i=d;return}function IQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=bK(((c[c[e>>2]>>2]|0)*6|0)+(c[f>>2]<<1)<<2)|0;b=bK((((c[c[e>>2]>>2]|0)*3|0)+(c[f>>2]|0)|0)*24|0)|0;c[(c[e>>2]|0)+20>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[e>>2]>>2]|0))break;c[(c[(c[e>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0)+28>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+24;c[g>>2]=(c[g>>2]|0)+1}while(1){if((c[g>>2]|0)>=((c[c[e>>2]>>2]|0)+2|0))break;c[(c[(c[e>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0)+28>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+(c[f>>2]<<2);c[g>>2]=(c[g>>2]|0)+1}i=d;return}function JQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(24)|0;c[c[e>>2]>>2]=0;a=bK((c[d>>2]|0)*40|0)|0;c[(c[e>>2]|0)+16>>2]=a;i=b;return c[e>>2]|0}function KQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=(c[(c[d>>2]|0)+16>>2]|0)+((c[c[d>>2]>>2]|0)*40|0);c[(c[e>>2]|0)+32>>2]=c[c[d>>2]>>2];a=c[d>>2]|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return c[e>>2]|0}function LQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f;m=f+12|0;n=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;d=(c[g>>2]|0)+4|0;b=c[d>>2]|0;c[d>>2]=b+1;c[n>>2]=b;c[m>>2]=(c[(c[g>>2]|0)+20>>2]|0)+((c[n>>2]|0)*24|0);c[(c[m>>2]|0)+12>>2]=c[(c[j>>2]|0)+32>>2];c[(c[m>>2]|0)+16>>2]=c[(c[k>>2]|0)+32>>2];h[c[m>>2]>>3]=+h[l>>3];c[(c[m>>2]|0)+8>>2]=0;OQ(c[j>>2]|0,c[m>>2]|0,c[n>>2]|0);OQ(c[k>>2]|0,c[m>>2]|0,c[n>>2]|0);i=f;return c[m>>2]|0}function MQ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+16>>2]|0)+28>>2]|0);O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[(c[d>>2]|0)+20>>2]|0);O4(c[d>>2]|0);i=b;return}function NQ(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+48|0;g=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f+12|0;q=f+8|0;r=f+4|0;s=f;c[j>>2]=a;c[k>>2]=d;c[l>>2]=e;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[c[j>>2]>>2]|0))break;c[s>>2]=(c[(c[j>>2]|0)+16>>2]|0)+((c[q>>2]|0)*40|0);c[c[s>>2]>>2]=-2147483648;c[q>>2]=(c[q>>2]|0)+1}zU();if(CU(c[k>>2]|0)|0){c[g>>2]=1;t=c[g>>2]|0;i=f;return t|0}c[(c[k>>2]|0)+8>>2]=0;c[c[k>>2]>>2]=0;a:while(1){k=EU()|0;c[m>>2]=k;if(!k){u=19;break}k=c[m>>2]|0;c[k>>2]=_(c[k>>2]|0,-1)|0;if((c[m>>2]|0)==(c[l>>2]|0)){u=19;break}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(b[(c[m>>2]|0)+16>>1]|0))continue a;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[(c[(c[m>>2]|0)+28>>2]|0)+(c[r>>2]<<2)>>2]|0)*24|0);c[o>>2]=PQ(c[j>>2]|0,c[n>>2]|0,c[m>>2]|0)|0;do if((c[c[o>>2]>>2]|0)<0){c[p>>2]=~~-(+(c[c[m>>2]>>2]|0)+ +h[c[n>>2]>>3]);if((c[c[o>>2]>>2]|0)==-2147483648){c[c[o>>2]>>2]=c[p>>2];if(CU(c[o>>2]|0)|0){u=14;break a}c[(c[o>>2]|0)+8>>2]=c[m>>2];c[(c[o>>2]|0)+12>>2]=c[n>>2];break}else{if((c[c[o>>2]>>2]|0)>=(c[p>>2]|0))break;FU(c[o>>2]|0,c[p>>2]|0);c[(c[o>>2]|0)+8>>2]=c[m>>2];c[(c[o>>2]|0)+12>>2]=c[n>>2];break}}while(0);c[r>>2]=(c[r>>2]|0)+1}}if((u|0)==14){c[g>>2]=1;t=c[g>>2]|0;i=f;return t|0}else if((u|0)==19){c[g>>2]=0;t=c[g>>2]|0;i=f;return t|0}return 0}function OQ(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[g>>2]=a;c[f+4>>2]=d;c[h>>2]=e;c[(c[(c[g>>2]|0)+28>>2]|0)+(b[(c[g>>2]|0)+16>>1]<<2)>>2]=c[h>>2];h=(c[g>>2]|0)+16|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;i=f;return}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=c[h>>2]|0;if((c[(c[h>>2]|0)+12>>2]|0)==(c[(c[j>>2]|0)+32>>2]|0)){c[f>>2]=(c[(c[g>>2]|0)+16>>2]|0)+((c[d+16>>2]|0)*40|0);k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=(c[(c[g>>2]|0)+16>>2]|0)+((c[d+12>>2]|0)*40|0);k=c[f>>2]|0;i=e;return k|0}return 0}function QQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[c[f>>2]>>2];yF(c[h>>2]|0,3,c[g>>2]|0)|0;c[j>>2]=c[(c[h>>2]|0)+80+12>>2];if(!(c[j>>2]|0)){c[e>>2]=999;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=c[(c[j>>2]|0)+16>>2];c[(c[f>>2]|0)+76>>2]=c[(c[k>>2]|0)+12>>2];c[(c[f>>2]|0)+76+8>>2]=c[(c[k>>2]|0)+16>>2];c[(c[f>>2]|0)+76+4>>2]=c[c[k>>2]>>2];c[(c[f>>2]|0)+76+12>>2]=c[(c[j>>2]|0)+4>>2];g=(c[f>>2]|0)+152|0;c[g>>2]=c[g>>2]|c[c[(c[f>>2]|0)+76+8>>2]>>2];c[j>>2]=c[(c[h>>2]|0)+80>>2];if(!(c[j>>2]|0)){c[(c[f>>2]|0)+60>>2]=0;c[e>>2]=999;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=c[(c[j>>2]|0)+16>>2];c[(c[f>>2]|0)+60>>2]=c[(c[k>>2]|0)+12>>2];c[(c[f>>2]|0)+60+8>>2]=c[(c[k>>2]|0)+16>>2];c[(c[f>>2]|0)+60+12>>2]=c[(c[j>>2]|0)+4>>2];j=(c[f>>2]|0)+152|0;c[j>>2]=c[j>>2]|c[c[(c[f>>2]|0)+60+8>>2]>>2];if(c[(c[f>>2]|0)+76>>2]|0)c[(c[f>>2]|0)+60+4>>2]=c[c[k>>2]>>2];else c[(c[f>>2]|0)+60+4>>2]=c[(c[f>>2]|0)+76+4>>2];c[e>>2]=300;l=c[e>>2]|0;i=d;return l|0}function RQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(hF(c[e>>2]|0)|0){c[d>>2]=1;g=c[d>>2]|0;i=b;return g|0}if((c[f>>2]|0)!=0?(c[c[f>>2]>>2]|0)!=0:0)Bb[c[c[f>>2]>>2]&127](c[e>>2]|0);c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function SQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+4>>2]|0)!=0:0)Bb[c[(c[e>>2]|0)+4>>2]&127](c[d>>2]|0);c[(c[c[d>>2]>>2]|0)+24>>2]=0;nF(c[d>>2]|0);i=b;return}function TQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+64|0;f=e+48|0;g=e+32|0;j=e+16|0;k=e;c[f>>2]=b;b=(c[f>>2]|0)+504|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];h[k>>3]=+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520>>3];h[k+8>>3]=+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520+8>>3];if(c[(c[f>>2]|0)+360>>2]|0){h[g>>3]=-(+h[d+8>>3]+ +h[j+8>>3])*+h[k>>3];h[g+8>>3]=(+h[d>>3]+ +h[j>>3])*+h[k+8>>3];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}else{h[g>>3]=(+h[d>>3]+ +h[j>>3])*+h[k>>3];h[g+8>>3]=(+h[d+8>>3]+ +h[j+8>>3])*+h[k+8>>3];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}}function UQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f+56|0;j=f+52|0;k=f+48|0;l=f+44|0;m=f+40|0;n=f+32|0;o=f+16|0;p=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;e=(c[g>>2]|0)+504|0;c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];h[p>>3]=+h[(c[g>>2]|0)+352>>3]*+h[(c[g>>2]|0)+520>>3];h[p+8>>3]=+h[(c[g>>2]|0)+352>>3]*+h[(c[g>>2]|0)+520+8>>3];e=(c[(c[g>>2]|0)+360>>2]|0)!=0;c[m>>2]=0;if(e){while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;h[n>>3]=-(+h[(c[j>>2]|0)+(c[m>>2]<<4)+8>>3]+ +h[o+8>>3])*+h[p>>3];h[(c[k>>2]|0)+(c[m>>2]<<4)+8>>3]=(+h[(c[j>>2]|0)+(c[m>>2]<<4)>>3]+ +h[o>>3])*+h[p+8>>3];h[(c[k>>2]|0)+(c[m>>2]<<4)>>3]=+h[n>>3];c[m>>2]=(c[m>>2]|0)+1}q=c[k>>2]|0;i=f;return q|0}else{while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;h[(c[k>>2]|0)+(c[m>>2]<<4)>>3]=(+h[(c[j>>2]|0)+(c[m>>2]<<4)>>3]+ +h[o>>3])*+h[p>>3];h[(c[k>>2]|0)+(c[m>>2]<<4)+8>>3]=(+h[(c[j>>2]|0)+(c[m>>2]<<4)+8>>3]+ +h[o+8>>3])*+h[p+8>>3];c[m>>2]=(c[m>>2]|0)+1}q=c[k>>2]|0;i=f;return q|0}return 0}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[f>>2]|0)){i=d;return}if(!(c[(c[f>>2]|0)+8>>2]|0)){i=d;return}Bb[c[(c[f>>2]|0)+8>>2]&127](c[e>>2]|0);i=d;return}function WQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+12>>2]|0)!=0:0)Bb[c[(c[e>>2]|0)+12>>2]&127](c[d>>2]|0);mF(c[d>>2]|0);i=b;return}function XQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+24>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+24>>2]&127](c[d>>2]|0);i=b;return}function YQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+28>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+28>>2]&127](c[d>>2]|0);i=b;return}function ZQ(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+16>>2]|0)){i=b;return}Vb[c[(c[e>>2]|0)+16>>2]&31](c[d>>2]|0,c[(c[(c[c[d>>2]>>2]|0)+308>>2]|0)+(c[(c[d>>2]|0)+160>>2]<<2)>>2]|0,c[(c[d>>2]|0)+160>>2]|0,c[(c[d>>2]|0)+156>>2]|0);i=b;return}function _Q(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+20>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+20>>2]&127](c[d>>2]|0);i=b;return}function $Q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[f>>2]|0)){i=d;return}if(!(c[(c[f>>2]|0)+32>>2]|0)){i=d;return}Bb[c[(c[f>>2]|0)+32>>2]&127](c[e>>2]|0);i=d;return}function aR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[f>>2]|0)){i=d;return}if(!(c[(c[f>>2]|0)+36>>2]|0)){i=d;return}Bb[c[(c[f>>2]|0)+36>>2]&127](c[e>>2]|0);i=d;return}function bR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+40>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+40>>2]&127](c[d>>2]|0);i=b;return}function cR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+44>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+44>>2]&127](c[d>>2]|0);i=b;return}function dR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+48>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+48>>2]&127](c[d>>2]|0);i=b;return}function eR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+52>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+52>>2]&127](c[d>>2]|0);i=b;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[f>>2]|0)){i=d;return}if(!(c[(c[f>>2]|0)+56>>2]|0)){i=d;return}Bb[c[(c[f>>2]|0)+56>>2]&127](c[e>>2]|0);i=d;return}function gR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+60>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+60>>2]&127](c[d>>2]|0);i=b;return}function hR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[f>>2]|0)){i=d;return}if(!(c[(c[f>>2]|0)+64>>2]|0)){i=d;return}Bb[c[(c[f>>2]|0)+64>>2]&127](c[e>>2]|0);i=d;return}function iR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+68>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+68>>2]&127](c[d>>2]|0);i=b;return}function jR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[(c[h>>2]|0)+60>>2];if(!(c[n>>2]|0)){i=g;return}if(!(c[(c[n>>2]|0)+72>>2]|0)){i=g;return}Ab[c[(c[n>>2]|0)+72>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=g;return}function kR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+76>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+76>>2]&127](c[d>>2]|0);i=b;return}function lR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[g>>2]|0)){i=d;return}if(!(c[(c[g>>2]|0)+80>>2]|0)){i=d;return}Db[c[(c[g>>2]|0)+80>>2]&31](c[e>>2]|0,c[f>>2]|0);i=d;return}function mR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+60>>2];if(!(c[e>>2]|0)){i=b;return}if(!(c[(c[e>>2]|0)+84>>2]|0)){i=b;return}Bb[c[(c[e>>2]|0)+84>>2]&127](c[d>>2]|0);i=b;return}function nR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+64|0;g=f+32|0;h=f+56|0;j=f+52|0;k=f+48|0;l=f+16|0;m=f;c[h>>2]=b;c[j>>2]=e;c[k>>2]=c[(c[h>>2]|0)+60>>2];if(!(c[c[j>>2]>>2]|0)){i=f;return}if(!(a[c[c[j>>2]>>2]>>0]|0)){i=f;return}if((c[(c[h>>2]|0)+16>>2]|0)!=0?(c[(c[(c[h>>2]|0)+16>>2]|0)+144>>2]|0)==0:0){i=f;return}if(c[(c[h>>2]|0)+152>>2]&8192){c[l>>2]=c[d>>2];c[l+4>>2]=c[d+4>>2];c[l+8>>2]=c[d+8>>2];c[l+12>>2]=c[d+12>>2]}else{e=c[h>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];TQ(m,e,g);c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2]}if(!(c[k>>2]|0)){i=f;return}if(!(c[(c[k>>2]|0)+88>>2]|0)){i=f;return}m=c[(c[k>>2]|0)+88>>2]|0;k=c[h>>2]|0;h=c[j>>2]|0;c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];Tb[m&127](k,g,h);i=f;return}function oR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+60>>2];c[j>>2]=(c[(c[f>>2]|0)+16>>2]|0)+16;c[k>>2]=0;d=U3(c[g>>2]|0,148898)|0;c[k>>2]=d;if(d)a[c[k>>2]>>0]=0;if((c[h>>2]|0)!=0?(AR(c[(c[f>>2]|0)+60+8>>2]|0,c[g>>2]|0,c[j>>2]|0),(c[(c[h>>2]|0)+92>>2]|0)!=0):0)Db[c[(c[h>>2]|0)+92>>2]&31](c[f>>2]|0,c[j>>2]|0);if(!(c[k>>2]|0)){i=e;return}a[c[k>>2]>>0]=58;i=e;return}function pR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+60>>2];c[j>>2]=(c[(c[f>>2]|0)+16>>2]|0)+56;c[k>>2]=0;d=U3(c[g>>2]|0,148898)|0;c[k>>2]=d;if(d)a[c[k>>2]>>0]=0;if((c[h>>2]|0)!=0?(AR(c[(c[f>>2]|0)+60+8>>2]|0,c[g>>2]|0,c[j>>2]|0),(c[(c[h>>2]|0)+92>>2]|0)!=0):0)Db[c[(c[h>>2]|0)+92>>2]&31](c[f>>2]|0,c[j>>2]|0);if(!(c[k>>2]|0)){i=e;return}a[c[k>>2]>>0]=58;i=e;return}function qR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;g[l>>2]=e;c[m>>2]=c[(c[h>>2]|0)+60>>2];c[n>>2]=(c[(c[h>>2]|0)+16>>2]|0)+96;if((c[m>>2]|0)!=0?(AR(c[(c[h>>2]|0)+60+8>>2]|0,c[j>>2]|0,c[n>>2]|0),(c[(c[m>>2]|0)+92>>2]|0)!=0):0)Db[c[(c[m>>2]|0)+92>>2]&31](c[h>>2]|0,c[n>>2]|0);c[(c[(c[h>>2]|0)+16>>2]|0)+136>>2]=c[k>>2];g[(c[(c[h>>2]|0)+16>>2]|0)+140>>2]=+g[l>>2];i=f;return}function rR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;e=i;i=i+32|0;f=e;g=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[(c[g>>2]|0)+60>>2];c[l>>2]=c[(c[g>>2]|0)+16>>2];c[(c[l>>2]|0)+160>>2]=c[j>>2];if(!((c[k>>2]|0)!=0&(c[j>>2]|0)!=0)){i=e;return}a:while(1){k=c[j>>2]|0;c[j>>2]=k+4;g=c[k>>2]|0;c[m>>2]=g;c[n>>2]=g;if(!g)break;if((a[c[m>>2]>>0]|0)==(a[148629]|0)?(J3(c[m>>2]|0,148629)|0)==0:0){c[(c[l>>2]|0)+144>>2]=3;continue}if((a[c[m>>2]>>0]|0)==(a[175383]|0)?(J3(c[m>>2]|0,175383)|0)==0:0){c[(c[l>>2]|0)+144>>2]=1;continue}if((a[c[m>>2]>>0]|0)==(a[175390]|0)?(J3(c[m>>2]|0,175390)|0)==0:0){c[(c[l>>2]|0)+144>>2]=2;continue}if(!((a[c[m>>2]>>0]|0)==(a[171938]|0)?(J3(c[m>>2]|0,171938)|0)==0:0))o=14;do if((o|0)==14){o=0;if((a[c[m>>2]>>0]|0)==(a[148635]|0)?(J3(c[m>>2]|0,148635)|0)==0:0)break;if((a[c[m>>2]>>0]|0)==(a[148645]|0)?(J3(c[m>>2]|0,148645)|0)==0:0){h[(c[l>>2]|0)+152>>3]=2.0;continue a}if((a[c[m>>2]>>0]|0)==(a[148650]|0)?(J3(c[m>>2]|0,148650)|0)==0:0){do{g=(a[c[n>>2]>>0]|0)!=0;c[n>>2]=(c[n>>2]|0)+1}while(g);p=+t3(c[n>>2]|0);h[(c[l>>2]|0)+152>>3]=p;continue a}if((a[c[m>>2]>>0]|0)==(a[148663]|0)?(J3(c[m>>2]|0,148663)|0)==0:0){c[(c[l>>2]|0)+148>>2]=1;continue a}if((a[c[m>>2]>>0]|0)==(a[148670]|0)?(J3(c[m>>2]|0,148670)|0)==0:0){c[(c[l>>2]|0)+148>>2]=0;continue a}if((a[c[m>>2]>>0]|0)==(a[148679]|0)?(J3(c[m>>2]|0,148679)|0)==0:0)continue a;c[f>>2]=c[m>>2];$z(0,148687,f)|0;continue a}while(0);c[(c[l>>2]|0)+144>>2]=0}i=e;return}function sR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+64|0;g=f+48|0;j=f+44|0;k=f+36|0;l=f+32|0;m=f;c[g>>2]=a;c[j>>2]=b;c[f+40>>2]=d;c[k>>2]=e;c[l>>2]=c[(c[g>>2]|0)+60>>2];if(!(c[l>>2]|0)){i=f;return}if(!(c[(c[l>>2]|0)+96>>2]|0)){i=f;return}if(!(c[(c[(c[g>>2]|0)+16>>2]|0)+144>>2]|0)){i=f;return}h[m>>3]=(+h[c[j>>2]>>3]+ +h[(c[j>>2]|0)+16>>3])/2.0;h[m+8>>3]=(+h[(c[j>>2]|0)+8>>3]+ +h[(c[j>>2]|0)+16+8>>3])/2.0;e=m+16|0;d=(c[j>>2]|0)+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(!(c[(c[g>>2]|0)+152>>2]&8192))UQ(c[g>>2]|0,m,m,2)|0;Tb[c[(c[l>>2]|0)+96>>2]&127](c[g>>2]|0,m,c[k>>2]|0);i=f;return}function tR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f+60|0;h=f+56|0;j=f+52|0;k=f+48|0;l=f+44|0;m=f;n=f+40|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;c[n>>2]=c[(c[g>>2]|0)+60>>2];if(!(c[n>>2]|0)){i=f;return}if(!(c[(c[n>>2]|0)+100>>2]|0)){i=f;return}if(!(c[(c[(c[g>>2]|0)+16>>2]|0)+144>>2]|0)){i=f;return}if(c[k>>2]&4){c[l>>2]=1;c[k>>2]=c[k>>2]&-5;o=m;p=(c[(c[g>>2]|0)+16>>2]|0)+16|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0));o=(c[(c[g>>2]|0)+16>>2]|0)+16|0;p=(c[(c[g>>2]|0)+16>>2]|0)+56|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0))}if(c[(c[g>>2]|0)+152>>2]&8192)Vb[c[(c[n>>2]|0)+100>>2]&31](c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0);else{if((c[15307]|0)<(c[j>>2]|0)){c[15307]=(c[j>>2]|0)+10;c[15308]=eK(c[15308]|0,c[15307]<<4)|0}UQ(c[g>>2]|0,c[h>>2]|0,c[15308]|0,c[j>>2]|0)|0;Vb[c[(c[n>>2]|0)+100>>2]&31](c[g>>2]|0,c[15308]|0,c[j>>2]|0,c[k>>2]|0)}if(!(c[l>>2]|0)){i=f;return}o=(c[(c[g>>2]|0)+16>>2]|0)+16|0;p=m;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0));i=f;return}function uR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+80|0;f=e+68|0;g=e+64|0;j=e;c[f>>2]=a;c[g>>2]=d;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];d=j+32|0;a=b+16|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];h[j+16>>3]=+h[j>>3];h[j+16+8>>3]=+h[j+32+8>>3];h[j+48>>3]=+h[j+32>>3];h[j+48+8>>3]=+h[j+8>>3];tR(c[f>>2]|0,j,4,c[g>>2]|0);i=e;return}function vR(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;l=k+20|0;m=k+16|0;n=k+12|0;o=k+8|0;p=k+4|0;q=k+24|0;r=k;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;a[q>>0]=j;c[r>>2]=c[(c[l>>2]|0)+60>>2];if(!(c[r>>2]|0)){i=k;return}if(!(c[(c[r>>2]|0)+104>>2]|0)){i=k;return}if(!(c[(c[(c[l>>2]|0)+16>>2]|0)+144>>2]|0)){i=k;return}if(c[(c[l>>2]|0)+152>>2]&8192){Ib[c[(c[r>>2]|0)+104>>2]&15](c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,d[q>>0]|0);i=k;return}if((c[15307]|0)<(c[n>>2]|0)){c[15307]=(c[n>>2]|0)+10;c[15308]=eK(c[15308]|0,c[15307]<<4)|0}UQ(c[l>>2]|0,c[m>>2]|0,c[15308]|0,c[n>>2]|0)|0;Ib[c[(c[r>>2]|0)+104>>2]&15](c[l>>2]|0,c[15308]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,d[q>>0]|0);i=k;return}function wR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[f>>2]|0)+60>>2];if(!(c[j>>2]|0)){i=e;return}if(!(c[(c[j>>2]|0)+108>>2]|0)){i=e;return}if(!(c[(c[(c[f>>2]|0)+16>>2]|0)+144>>2]|0)){i=e;return}if(c[(c[f>>2]|0)+152>>2]&8192){Tb[c[(c[j>>2]|0)+108>>2]&127](c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if((c[15307]|0)<(c[h>>2]|0)){c[15307]=(c[h>>2]|0)+10;c[15308]=eK(c[15308]|0,c[15307]<<4)|0}UQ(c[f>>2]|0,c[g>>2]|0,c[15308]|0,c[h>>2]|0)|0;Tb[c[(c[j>>2]|0)+108>>2]&127](c[f>>2]|0,c[15308]|0,c[h>>2]|0);i=e;return}function xR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+60>>2];if(!(c[g>>2]|0)){i=e;return}if(!((c[h>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0)){i=e;return}if(!(c[(c[h>>2]|0)+112>>2]|0)){i=e;return}Db[c[(c[h>>2]|0)+112>>2]&31](c[f>>2]|0,c[g>>2]|0);i=e;return}function yR(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0;l=i;i=i+224|0;m=l+128|0;n=l+204|0;o=l+200|0;p=l+196|0;q=l+192|0;r=l+208|0;s=l+188|0;t=l+184|0;u=l+180|0;v=l+120|0;w=l+112|0;x=l+104|0;y=l+96|0;z=l+88|0;A=l+80|0;B=l+48|0;C=l+176|0;D=l+168|0;E=l+160|0;F=l+32|0;G=l+16|0;H=l+8|0;I=l;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;a[r>>0]=j;c[s>>2]=k;c[t>>2]=c[(c[n>>2]|0)+60>>2];if(!(c[n>>2]|0))La(148844,148740,698,148751);if(!(c[o>>2]|0))La(148770,148740,699,148751);if(!(a[c[o>>2]>>0]|0))La(148775,148740,700,148751);k=BF(c[o>>2]|0)|0;c[u>>2]=k;if(!k){k=(fM(c[o>>2]|0)|0)!=0;if(!(k&(c[t>>2]|0)!=0)){i=l;return}if(!(c[(c[t>>2]|0)+116>>2]|0)){i=l;return}Ab[c[(c[t>>2]|0)+116>>2]&31](c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,d[r>>0]|0);i=l;return}o=c[u>>2]|0;k=(c[n>>2]|0)+432|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];EF(E,o,m);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];if((c[D>>2]|0)<=0?(c[D+4>>2]|0)<=0:0){i=l;return}E=B+16|0;o=c[p>>2]|0;c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[E+8>>2]=c[o+8>>2];c[E+12>>2]=c[o+12>>2];c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];c[C>>2]=1;while(1){if((c[C>>2]|0)>=(c[q>>2]|0))break;if(+h[B>>3]<+h[(c[p>>2]|0)+(c[C>>2]<<4)>>3])J=+h[B>>3];else J=+h[(c[p>>2]|0)+(c[C>>2]<<4)>>3];h[B>>3]=J;if(+h[B+8>>3]<+h[(c[p>>2]|0)+(c[C>>2]<<4)+8>>3])K=+h[B+8>>3];else K=+h[(c[p>>2]|0)+(c[C>>2]<<4)+8>>3];h[B+8>>3]=K;if(+h[B+16>>3]>+h[(c[p>>2]|0)+(c[C>>2]<<4)>>3])L=+h[B+16>>3];else L=+h[(c[p>>2]|0)+(c[C>>2]<<4)>>3];h[B+16>>3]=L;if(+h[B+16+8>>3]>+h[(c[p>>2]|0)+(c[C>>2]<<4)+8>>3])M=+h[B+16+8>>3];else M=+h[(c[p>>2]|0)+(c[C>>2]<<4)+8>>3];h[B+16+8>>3]=M;c[C>>2]=(c[C>>2]|0)+1}h[x>>3]=+h[B+16>>3]-+h[B>>3];h[y>>3]=+h[B+16+8>>3]-+h[B+8>>3];h[w>>3]=+(c[D+4>>2]|0);h[v>>3]=+(c[D>>2]|0);h[z>>3]=+h[x>>3]/+h[v>>3];h[A>>3]=+h[y>>3]/+h[w>>3];a:do switch(BR(c[s>>2]|0)|0){case 1:{if(+h[z>>3]<+h[A>>3]){h[v>>3]=+h[v>>3]*+h[z>>3];h[w>>3]=+h[w>>3]*+h[z>>3];break a}else{h[v>>3]=+h[v>>3]*+h[A>>3];h[w>>3]=+h[w>>3]*+h[A>>3];break a}break}case 2:{h[v>>3]=+h[v>>3]*+h[z>>3];break}case 3:{h[w>>3]=+h[w>>3]*+h[A>>3];break}case 4:{h[v>>3]=+h[v>>3]*+h[z>>3];h[w>>3]=+h[w>>3]*+h[A>>3];break}default:{}}while(0);if(+h[v>>3]<+h[x>>3]){h[B>>3]=+h[B>>3]+(+h[x>>3]-+h[v>>3])/2.0;A=B+16|0;h[A>>3]=+h[A>>3]-(+h[x>>3]-+h[v>>3])/2.0}if(+h[w>>3]<+h[y>>3]){v=B+8|0;h[v>>3]=+h[v>>3]+(+h[y>>3]-+h[w>>3])/2.0;v=B+16+8|0;h[v>>3]=+h[v>>3]-(+h[y>>3]-+h[w>>3])/2.0}if(!(c[(c[n>>2]|0)+152>>2]&8192)){w=c[n>>2]|0;c[m>>2]=c[B>>2];c[m+4>>2]=c[B+4>>2];c[m+8>>2]=c[B+8>>2];c[m+12>>2]=c[B+12>>2];TQ(F,w,m);c[B>>2]=c[F>>2];c[B+4>>2]=c[F+4>>2];c[B+8>>2]=c[F+8>>2];c[B+12>>2]=c[F+12>>2];F=B+16|0;w=c[n>>2]|0;y=B+16|0;c[m>>2]=c[y>>2];c[m+4>>2]=c[y+4>>2];c[m+8>>2]=c[y+8>>2];c[m+12>>2]=c[y+12>>2];TQ(G,w,m);c[F>>2]=c[G>>2];c[F+4>>2]=c[G+4>>2];c[F+8>>2]=c[G+8>>2];c[F+12>>2]=c[G+12>>2]}if(+h[B>>3]>+h[B+16>>3]){h[H>>3]=+h[B>>3];h[B>>3]=+h[B+16>>3];h[B+16>>3]=+h[H>>3]}if(+h[B+8>>3]>+h[B+16+8>>3]){h[I>>3]=+h[B+8>>3];h[B+8>>3]=+h[B+16+8>>3];h[B+16+8>>3]=+h[I>>3]}if(!(c[t>>2]|0)){i=l;return}t=c[n>>2]|0;I=c[u>>2]|0;u=a[r>>0]|0;r=c[(c[n>>2]|0)+60+12>>2]|0;c[m>>2]=c[B>>2];c[m+4>>2]=c[B+4>>2];c[m+8>>2]=c[B+8>>2];c[m+12>>2]=c[B+12>>2];c[m+16>>2]=c[B+16>>2];c[m+20>>2]=c[B+20>>2];c[m+24>>2]=c[B+24>>2];c[m+28>>2]=c[B+28>>2];DR(t,I,m,u,r);i=l;return}function zR(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+8|0;c[e>>2]=a;h[f>>3]=b;c[g>>2]=c[(c[e>>2]|0)+60>>2];if(!(c[g>>2]|0)){i=d;return}h[(c[(c[e>>2]|0)+16>>2]|0)+152>>3]=+h[f>>3];i=d;return}function AR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e+16|0;g=e+8|0;h=e;j=e+40|0;k=e+36|0;l=e+32|0;m=e+28|0;n=e+24|0;o=e+20|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[c[l>>2]>>2]=c[k>>2];c[(c[l>>2]|0)+32>>2]=5;c[m>>2]=bT(c[k>>2]|0)|0;if((c[(c[j>>2]|0)+16>>2]|0)!=0?(v3(m,c[(c[j>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+20>>2]|0,4,102)|0)!=0:0){i=e;return}c[n>>2]=cT(c[k>>2]|0,c[l>>2]|0,c[(c[j>>2]|0)+24>>2]|0)|0;if(!(c[n>>2]|0)){i=e;return}if((c[n>>2]|0)!=1){$z(1,148823,f)|0;i=e;return}c[o>>2]=cK((N3(c[k>>2]|0)|0)+16|0)|0;f=c[o>>2]|0;c[h>>2]=c[k>>2];k3(f,148788,h)|0;if(GH(c[o>>2]|0)|0){c[g>>2]=c[k>>2];$z(0,148797,g)|0}O4(c[o>>2]|0);i=e;return}function BR(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;do if(a[c[f>>2]>>0]|0){if(!(F3(c[f>>2]|0,179125)|0)){c[e>>2]=2;break}if(!(F3(c[f>>2]|0,179057)|0)){c[e>>2]=3;break}if(!(F3(c[f>>2]|0,148783)|0)){c[e>>2]=4;break}if((kO(c[f>>2]|0)|0)<<24>>24){c[e>>2]=1;break}else{c[e>>2]=0;break}}else c[e>>2]=0;while(0);i=d;return c[e>>2]|0}function CR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=J3(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;i=d;return b|0}function DR(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+192|0;j=h+8|0;k=h;l=h+52|0;m=h+48|0;n=h+184|0;o=h+44|0;p=h+40|0;q=h+56|0;c[l>>2]=b;c[m>>2]=d;a[n>>0]=f;c[o>>2]=g;if(!(c[l>>2]|0))La(148844,148848,54,148862);if(!(c[m>>2]|0))La(148874,148848,55,148862);if(!(c[(c[m>>2]|0)+8>>2]|0))La(148877,148848,56,148862);if(!(a[c[(c[m>>2]|0)+8>>2]>>0]|0))La(148886,148848,57,148862);K3(q,c[(c[m>>2]|0)+28>>2]|0)|0;G3(q,148898)|0;G3(q,c[o>>2]|0)|0;if((ER(c[l>>2]|0,q)|0)==999){c[k>>2]=q;$z(0,148900,k)|0}k=c[(c[l>>2]|0)+92>>2]|0;c[p>>2]=k;if(!k){i=h;return}if(!(c[c[p>>2]>>2]|0)){i=h;return}k=c[c[p>>2]>>2]|0;p=c[l>>2]|0;l=c[m>>2]|0;m=a[n>>0]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[j+16>>2]=c[e+16>>2];c[j+20>>2]=c[e+20>>2];c[j+24>>2]=c[e+24>>2];c[j+28>>2]=c[e+28>>2];Vb[k&31](p,l,j,m);i=h;return}function ER(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=yF(c[c[f>>2]>>2]|0,4,c[g>>2]|0)|0;if(c[h>>2]|0){c[j>>2]=c[(c[h>>2]|0)+16>>2];c[(c[f>>2]|0)+92>>2]=c[(c[j>>2]|0)+12>>2];c[(c[f>>2]|0)+92+4>>2]=c[c[j>>2]>>2];c[e>>2]=300;k=c[e>>2]|0;i=d;return k|0}else{c[e>>2]=999;k=c[e>>2]|0;i=d;return k|0}return 0}function FR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=bK(392)|0;if(!(c[g>>2]|0)){h=c[g>>2]|0;i=d;return h|0}c[c[g>>2]>>2]=61236;c[(c[g>>2]|0)+16>>2]=22;c[(c[g>>2]|0)+32>>2]=c[e>>2];c[(c[g>>2]|0)+36>>2]=c[f>>2];h=c[g>>2]|0;i=d;return h|0}function GR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;do if(c[(c[e>>2]|0)+160>>2]|0){if(!(c[15312]|0)){c[15312]=c[(c[e>>2]|0)+160>>2];break}if(!(c[(c[15312]|0)+4>>2]|0)){b=bK(632)|0;c[(c[15312]|0)+4>>2]=b}c[15312]=c[(c[15312]|0)+4>>2]}else{b=bK(632)|0;c[(c[e>>2]|0)+160>>2]=b;c[(c[e>>2]|0)+164>>2]=b;c[15312]=b}while(0);c[(c[15312]|0)+32>>2]=c[f>>2];c[c[15312]>>2]=c[e>>2];i=d;return}function HR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;do if(c[(c[g>>2]|0)+160>>2]|0){if(!(c[15313]|0)){c[15313]=c[(c[g>>2]|0)+160>>2];break}if(!(c[(c[15313]|0)+4>>2]|0)){d=bK(632)|0;c[(c[15313]|0)+4>>2]=d}c[15313]=c[(c[15313]|0)+4>>2]}else{d=bK(632)|0;c[(c[g>>2]|0)+160>>2]=d;c[(c[g>>2]|0)+164>>2]=d;c[15313]=d}while(0);c[(c[15313]|0)+52>>2]=c[h>>2];c[c[15313]>>2]=c[g>>2];if(yF(c[g>>2]|0,3,c[h>>2]|0)|0){a[f>>0]=1;j=a[f>>0]|0;i=e;return j|0}else{a[f>>0]=0;j=a[f>>0]|0;i=e;return j|0}return 0}function IR(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[(c[d>>2]|0)+160>>2]|0;c[(c[d>>2]|0)+164>>2]=a;i=b;return a|0}function JR(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+164>>2]|0)+4>>2];if((c[e>>2]|0)!=0?(c[(c[e>>2]|0)+52>>2]|0)==0:0)c[(c[e>>2]|0)+52>>2]=c[(c[(c[d>>2]|0)+164>>2]|0)+52>>2];a=c[e>>2]|0;c[(c[d>>2]|0)+164>>2]=a;i=b;return a|0}function KR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)>=(c[(c[f>>2]|0)+8>>2]|0)){c[(c[f>>2]|0)+8>>2]=(c[g>>2]|0)+10;d=eK(c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+8>>2]<<2)|0;c[c[f>>2]>>2]=d}c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<2)>>2]=c[h>>2];i=e;return}function LR(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[c[d>>2]>>2]|0)O4(c[c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=b;return}function MR(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+160>>2];while(1){a=c[e>>2]|0;c[f>>2]=a;if(!a)break;c[e>>2]=c[(c[e>>2]|0)+4>>2];LR((c[f>>2]|0)+604|0);LR((c[f>>2]|0)+592|0);if(c[(c[f>>2]|0)+584>>2]|0)O4(c[(c[f>>2]|0)+584>>2]|0);if(c[(c[f>>2]|0)+588>>2]|0)O4(c[(c[f>>2]|0)+588>>2]|0);O4(c[f>>2]|0)}c[15313]=0;c[15312]=0;c[(c[d>>2]|0)+192>>2]=0;c[(c[d>>2]|0)+164>>2]=0;c[(c[d>>2]|0)+160>>2]=0;c[(c[d>>2]|0)+28>>2]=0;i=b;return}function NR(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 1}function OR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+336|0;h[b>>3]=+h[b>>3]+10.0/+h[(c[e>>2]|0)+352>>3];a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function PR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+336|0;h[b>>3]=+h[b>>3]-10.0/+h[(c[e>>2]|0)+352>>3];a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function QR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+336+8|0;h[b>>3]=+h[b>>3]+-(10.0/+h[(c[e>>2]|0)+352>>3]);a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function RR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+336+8|0;h[b>>3]=+h[b>>3]+10.0/+h[(c[e>>2]|0)+352>>3];a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function SR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+352|0;h[b>>3]=+h[b>>3]*1.1;a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function TR(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=0;b=(c[e>>2]|0)+352|0;h[b>>3]=+h[b>>3]/1.1;a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function UR(b){b=b|0;var d=0,e=0,f=0,g=0,j=0.0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;a[(c[e>>2]|0)+536>>0]=((a[(c[e>>2]|0)+536>>0]|0)!=0^1)&1;if(!(a[(c[e>>2]|0)+536>>0]|0)){i=d;return 0}c[f>>2]=c[(c[e>>2]|0)+448>>2];c[g>>2]=c[(c[e>>2]|0)+452>>2];b=c[e>>2]|0;if(+((c[(c[e>>2]|0)+448>>2]|0)>>>0)/+(c[f>>2]|0)<+((c[(c[e>>2]|0)+452>>2]|0)>>>0)/+(c[g>>2]|0))j=+((c[b+448>>2]|0)>>>0)/+(c[f>>2]|0);else j=+((c[b+452>>2]|0)>>>0)/+(c[g>>2]|0);h[(c[e>>2]|0)+352>>3]=j;h[(c[e>>2]|0)+336>>3]=0.0;h[(c[e>>2]|0)+336+8>>3]=0.0;a[(c[e>>2]|0)+537>>0]=1;i=d;return 0}function VR(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[c[f>>2]>>2]|0)+168>>2];if(!(c[(c[f>>2]|0)+580>>2]|0)){c[(c[f>>2]|0)+580>>2]=c[g>>2];b=(c[(c[g>>2]|0)+8>>2]|0)+112|0;a[b>>0]=d[b>>0]|0|2;jS(c[f>>2]|0,c[g>>2]|0)}FH(c[f>>2]|0,c[g>>2]|0);a[(c[f>>2]|0)+540>>0]=1;i=e;return}function WR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f;j=f+20|0;k=f+16|0;c[j>>2]=b;c[k>>2]=d;switch(c[k>>2]|0){case 1:{d=c[j>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];cS(d,g);iS(c[j>>2]|0);a[(c[j>>2]|0)+538>>0]=1;a[(c[j>>2]|0)+541>>0]=c[k>>2];a[(c[j>>2]|0)+537>>0]=1;l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}case 2:{a[(c[j>>2]|0)+538>>0]=1;a[(c[j>>2]|0)+541>>0]=c[k>>2];a[(c[j>>2]|0)+537>>0]=1;l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}case 3:{d=c[j>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];cS(d,g);a[(c[j>>2]|0)+538>>0]=1;a[(c[j>>2]|0)+541>>0]=c[k>>2];a[(c[j>>2]|0)+537>>0]=1;l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}case 4:{a[(c[j>>2]|0)+536>>0]=0;if(c[(c[j>>2]|0)+360>>2]|0){k=(c[j>>2]|0)+336|0;h[k>>3]=+h[k>>3]-(+h[e+8>>3]-+((c[(c[j>>2]|0)+452>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520+8>>3]);k=(c[j>>2]|0)+336+8|0;h[k>>3]=+h[k>>3]+(+h[e>>3]-+((c[(c[j>>2]|0)+448>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520>>3])}else{k=(c[j>>2]|0)+336|0;h[k>>3]=+h[k>>3]+(+h[e>>3]-+((c[(c[j>>2]|0)+448>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520>>3]);k=(c[j>>2]|0)+336+8|0;h[k>>3]=+h[k>>3]+(+h[e+8>>3]-+((c[(c[j>>2]|0)+452>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520+8>>3])}k=(c[j>>2]|0)+352|0;h[k>>3]=+h[k>>3]*1.1;a[(c[j>>2]|0)+537>>0]=1;l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}case 5:{a[(c[j>>2]|0)+536>>0]=0;k=(c[j>>2]|0)+352|0;h[k>>3]=+h[k>>3]/1.1;if(c[(c[j>>2]|0)+360>>2]|0){k=(c[j>>2]|0)+336|0;h[k>>3]=+h[k>>3]+(+h[e+8>>3]-+((c[(c[j>>2]|0)+452>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520+8>>3]);k=(c[j>>2]|0)+336+8|0;h[k>>3]=+h[k>>3]-(+h[e>>3]-+((c[(c[j>>2]|0)+448>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520>>3])}else{k=(c[j>>2]|0)+336|0;h[k>>3]=+h[k>>3]-(+h[e>>3]-+((c[(c[j>>2]|0)+448>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520>>3]);k=(c[j>>2]|0)+336+8|0;h[k>>3]=+h[k>>3]-(+h[e+8>>3]-+((c[(c[j>>2]|0)+452>>2]|0)>>>0)/2.0)*.10000000000000009/(+h[(c[j>>2]|0)+352>>3]*+h[(c[j>>2]|0)+520+8>>3])}a[(c[j>>2]|0)+537>>0]=1;l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}default:{l=c[j>>2]|0;m=l+560|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];i=f;return}}}function XR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;e=i;i=i+16|0;f=e+4|0;c[f>>2]=b;c[e>>2]=d;a[(c[f>>2]|0)+538>>0]=0;a[(c[f>>2]|0)+541>>0]=0;i=e;return}function YR(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+16|0;j=f+32|0;k=f+8|0;l=f;c[j>>2]=b;h[k>>3]=(+h[e>>3]-+h[(c[j>>2]|0)+560>>3])/+h[(c[j>>2]|0)+520>>3];h[l>>3]=(+h[e+8>>3]-+h[(c[j>>2]|0)+560+8>>3])/+h[(c[j>>2]|0)+520+8>>3];if(+(N(~~+h[k>>3]|0)|0)<.0001?+(N(~~+h[l>>3]|0)|0)<.0001:0){i=f;return}switch(d[(c[j>>2]|0)+541>>0]|0|0){case 0:{b=c[j>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];cS(b,g);break}case 2:{if(c[(c[j>>2]|0)+360>>2]|0){g=(c[j>>2]|0)+336|0;h[g>>3]=+h[g>>3]-+h[l>>3]/+h[(c[j>>2]|0)+352>>3];g=(c[j>>2]|0)+336+8|0;h[g>>3]=+h[g>>3]+ +h[k>>3]/+h[(c[j>>2]|0)+352>>3]}else{g=(c[j>>2]|0)+336|0;h[g>>3]=+h[g>>3]-+h[k>>3]/+h[(c[j>>2]|0)+352>>3];k=(c[j>>2]|0)+336+8|0;h[k>>3]=+h[k>>3]-+h[l>>3]/+h[(c[j>>2]|0)+352>>3]}a[(c[j>>2]|0)+537>>0]=1;break}default:{}}l=(c[j>>2]|0)+560|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];i=f;return}function ZR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return}function _R(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function $R(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=0;c[m>>2]=c[c[h>>2]>>2];do if(c[j>>2]|0){c[l>>2]=X2(c[j>>2]|0,176526)|0;if(c[l>>2]|0){c[n>>2]=CE(c[l>>2]|0,0)|0;R2(c[l>>2]|0)|0;break}else{i=f;return}}else{c[g>>2]=c[13065];c[n>>2]=gB(149044,g,0)|0;c[(c[h>>2]|0)+32>>2]=149046}while(0);if(!(c[n>>2]|0)){i=f;return}if(c[(c[m>>2]|0)+168>>2]|0){c[o>>2]=c[(c[m>>2]|0)+172>>2];if((c[o>>2]|0)!=0?(c[(c[o>>2]|0)+4>>2]|0)!=0:0)Bb[c[(c[o>>2]|0)+4>>2]&127](c[(c[m>>2]|0)+168>>2]|0);MJ(c[(c[m>>2]|0)+168>>2]|0);jB(c[(c[m>>2]|0)+168>>2]|0)|0}OC(c[n>>2]|0,0,175049,280,1);OC(c[n>>2]|0,1,175026,304,1);OC(c[n>>2]|0,2,175319,176,1);c[(c[m>>2]|0)+168>>2]=c[n>>2];c[(c[(c[n>>2]|0)+8>>2]|0)+144>>2]=c[m>>2];if((aG(c[m>>2]|0,c[n>>2]|0,c[k>>2]|0)|0)==-1){i=f;return}c[(c[h>>2]|0)+580>>2]=0;c[(c[h>>2]|0)+576>>2]=0;a[(c[h>>2]|0)+537>>0]=1;i=f;return}function aS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;aG(c[c[e>>2]>>2]|0,c[(c[c[e>>2]>>2]|0)+168>>2]|0,c[f>>2]|0)|0;i=d;return}function bS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;bG(c[c[f>>2]>>2]|0,c[(c[c[f>>2]>>2]|0)+168>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return}function cS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+112|0;f=e+72|0;g=e+108|0;j=e+104|0;k=e+40|0;l=e+32|0;m=e+16|0;n=e;c[g>>2]=b;b=c[g>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];dS(n,b,f);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];h[l>>3]=1.0/+h[(c[g>>2]|0)+352>>3];h[k+16>>3]=+h[m>>3]+ +h[l>>3];h[k+16+8>>3]=+h[m+8>>3]+ +h[l>>3];h[k>>3]=+h[m>>3]-+h[l>>3];h[k+8>>3]=+h[m+8>>3]-+h[l>>3];l=c[(c[c[g>>2]>>2]|0)+168>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2];c[f+16>>2]=c[k+16>>2];c[f+20>>2]=c[k+20>>2];c[f+24>>2]=c[k+24>>2];c[f+28>>2]=c[k+28>>2];c[j>>2]=eS(l,f)|0;if((c[j>>2]|0)==(c[(c[g>>2]|0)+576>>2]|0)){i=e;return}fS(c[g>>2]|0);c[(c[g>>2]|0)+576>>2]=c[j>>2];gS(c[g>>2]|0);a[(c[g>>2]|0)+537>>0]=1;i=e;return}function dS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=b;if(c[(c[f>>2]|0)+360>>2]|0){h[g>>3]=+h[d+8>>3]/(+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520+8>>3])-+h[(c[f>>2]|0)+504>>3];h[g+8>>3]=-+h[d>>3]/(+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520>>3])-+h[(c[f>>2]|0)+504+8>>3];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}else{h[g>>3]=+h[d>>3]/(+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520>>3])-+h[(c[f>>2]|0)+504>>3];h[g+8>>3]=+h[d+8>>3]/(+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+520+8>>3])-+h[(c[f>>2]|0)+504+8>>3];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}}function eS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+64|0;e=d;f=d+48|0;g=d+44|0;h=d+40|0;j=d+36|0;k=d+32|0;c[g>>2]=a;c[j>>2]=$B(c[g>>2]|0)|0;a:while(1){l=c[g>>2]|0;if(!(c[j>>2]|0))break;c[k>>2]=OA(l,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;a=c[k>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];if((OO(a,e)|0)<<24>>24){m=6;break a}c[k>>2]=QA(c[g>>2]|0,c[k>>2]|0)|0}c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}if((m|0)==6){c[f>>2]=c[k>>2];n=c[f>>2]|0;i=d;return n|0}c[j>>2]=bC(l)|0;while(1){if(!(c[j>>2]|0))break;l=c[j>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];if((MO(l,e)|0)<<24>>24){m=12;break}c[j>>2]=cC(c[g>>2]|0,c[j>>2]|0)|0}if((m|0)==12){c[f>>2]=c[j>>2];n=c[f>>2]|0;i=d;return n|0}j=c[g>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];c[h>>2]=hS(j,e)|0;if(c[h>>2]|0){c[f>>2]=c[h>>2];n=c[f>>2]|0;i=d;return n|0}else{c[f>>2]=c[g>>2];n=c[f>>2]|0;i=d;return n|0}return 0}function fS(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+576>>2];a:do if(c[g>>2]|0)switch(BC(c[g>>2]|0)|0){case 0:{b=(c[(c[g>>2]|0)+8>>2]|0)+112|0;a[b>>0]=(d[b>>0]|0)&-2;break a;break}case 1:{b=(c[(c[g>>2]|0)+8>>2]|0)+117|0;a[b>>0]=(d[b>>0]|0)&-2;break a;break}case 2:{b=(c[(c[g>>2]|0)+8>>2]|0)+115|0;a[b>>0]=(d[b>>0]|0)&-2;break a;break}default:break a}while(0);c[(c[f>>2]|0)+584>>2]=0;i=e;return}function gS(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=b;if(c[(c[f>>2]|0)+584>>2]|0){O4(c[(c[f>>2]|0)+584>>2]|0);c[(c[f>>2]|0)+584>>2]=0}c[g>>2]=c[(c[f>>2]|0)+576>>2];if(!(c[g>>2]|0)){i=e;return}switch(BC(c[g>>2]|0)|0){case 0:{c[h>>2]=c[g>>2];b=(c[(c[h>>2]|0)+8>>2]|0)+112|0;a[b>>0]=d[b>>0]|0|1;c[l>>2]=qA(c[h>>2]|0,0,c[15352]|0,0)|0;if(!(c[l>>2]|0)){i=e;return}b=WJ(zA(c[h>>2]|0,c[l>>2]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+584>>2]=b;i=e;return}case 1:{c[k>>2]=c[g>>2];b=(c[(c[k>>2]|0)+8>>2]|0)+117|0;a[b>>0]=d[b>>0]|0|1;c[l>>2]=qA(qC(c[k>>2]|0)|0,1,c[15352]|0,0)|0;if(!(c[l>>2]|0)){i=e;return}b=WJ(zA(c[k>>2]|0,c[l>>2]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+584>>2]=b;i=e;return}case 2:{c[j>>2]=c[g>>2];b=(c[(c[j>>2]|0)+8>>2]|0)+115|0;a[b>>0]=d[b>>0]|0|1;b=c[j>>2]|0;c[l>>2]=qA(qC(c[((c[c[j>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0,2,c[15352]|0,0)|0;if(!(c[l>>2]|0)){i=e;return}b=WJ(zA(c[j>>2]|0,c[l>>2]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+584>>2]=b;i=e;return}default:{i=e;return}}}function hS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+80|0;e=d+32|0;f=d+76|0;g=d+72|0;j=d+68|0;k=d+64|0;l=d;c[g>>2]=a;c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;a=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];c[k>>2]=hS(a,e)|0;if(c[k>>2]|0){m=4;break}c[j>>2]=(c[j>>2]|0)+1}if((m|0)==4){c[f>>2]=c[k>>2];n=c[f>>2]|0;i=d;return n|0}h[l>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[l+8>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];h[l+16>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16>>3];h[l+16+8>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16+8>>3];if(((+h[b+16>>3]>=+h[l>>3]?+h[l+16>>3]>=+h[b>>3]:0)?+h[b+16+8>>3]>=+h[l+8>>3]:0)?+h[l+16+8>>3]>=+h[b+8>>3]:0){c[f>>2]=c[g>>2];n=c[f>>2]|0;i=d;return n|0}c[f>>2]=0;n=c[f>>2]|0;i=d;return n|0}function iS(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+580>>2];a:do if(c[g>>2]|0)switch(BC(c[g>>2]|0)|0){case 0:{b=(c[(c[g>>2]|0)+8>>2]|0)+112|0;a[b>>0]=d[b>>0]|0|4;b=(c[(c[g>>2]|0)+8>>2]|0)+112|0;a[b>>0]=(d[b>>0]|0)&-3;break a;break}case 1:{b=(c[(c[g>>2]|0)+8>>2]|0)+117|0;a[b>>0]=d[b>>0]|0|4;b=(c[(c[g>>2]|0)+8>>2]|0)+117|0;a[b>>0]=(d[b>>0]|0)&-3;break a;break}case 2:{b=(c[(c[g>>2]|0)+8>>2]|0)+115|0;a[b>>0]=d[b>>0]|0|4;b=(c[(c[g>>2]|0)+8>>2]|0)+115|0;a[b>>0]=(d[b>>0]|0)&-3;break a;break}default:break a}while(0);if(c[(c[f>>2]|0)+588>>2]|0){O4(c[(c[f>>2]|0)+588>>2]|0);c[(c[f>>2]|0)+588>>2]=0}b=c[(c[f>>2]|0)+576>>2]|0;c[(c[f>>2]|0)+580>>2]=b;c[g>>2]=b;if(!(c[g>>2]|0)){i=e;return}switch(BC(c[g>>2]|0)|0){case 0:{b=(c[(c[g>>2]|0)+8>>2]|0)+112|0;a[b>>0]=d[b>>0]|0|2;jS(c[f>>2]|0,c[g>>2]|0);i=e;return}case 1:{b=(c[(c[g>>2]|0)+8>>2]|0)+117|0;a[b>>0]=d[b>>0]|0|2;kS(c[f>>2]|0,c[g>>2]|0);i=e;return}case 2:{b=(c[(c[g>>2]|0)+8>>2]|0)+115|0;a[b>>0]=d[b>>0]|0|2;lS(c[f>>2]|0,c[g>>2]|0);i=e;return}default:{i=e;return}}}function jS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+592;c[g>>2]=0;b=c[f>>2]|0;do if((b|0)==(rC(c[f>>2]|0)|0)){a=(nB(c[f>>2]|0)|0)!=0;k=c[j>>2]|0;l=c[g>>2]|0;c[g>>2]=l+1;if(a){KR(k,l,c[15360]|0);break}else{KR(k,l,c[15361]|0);break}}else{l=c[j>>2]|0;k=c[g>>2]|0;c[g>>2]=k+1;KR(l,k,c[15362]|0)}while(0);b=c[j>>2]|0;k=c[g>>2]|0;c[g>>2]=k+1;KR(b,k,wB(c[f>>2]|0)|0);c[(c[j>>2]|0)+4>>2]=c[g>>2];c[j>>2]=(c[e>>2]|0)+604;c[h>>2]=0;while(1){k=rA(c[f>>2]|0,0,c[h>>2]|0)|0;c[h>>2]=k;if(!k)break;k=c[j>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;KR(k,b,c[(c[h>>2]|0)+8>>2]|0);b=c[j>>2]|0;k=c[g>>2]|0;c[g>>2]=k+1;KR(b,k,zA(c[f>>2]|0,c[h>>2]|0)|0);k=c[j>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;KR(k,b,0)}c[(c[j>>2]|0)+4>>2]=c[g>>2];c[h>>2]=qA(c[f>>2]|0,0,c[15357]|0,0)|0;if(!(c[h>>2]|0))c[h>>2]=qA(c[f>>2]|0,0,c[15358]|0,0)|0;if(!(c[h>>2]|0)){i=d;return}g=zA(c[f>>2]|0,c[h>>2]|0)|0;h=WJ(g,c[f>>2]|0)|0;c[(c[e>>2]|0)+588>>2]=h;i=d;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+592;c[g>>2]=0;b=c[k>>2]|0;a=c[g>>2]|0;c[g>>2]=a+1;KR(b,a,c[15359]|0);a=c[k>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;KR(a,b,wB(c[f>>2]|0)|0);c[(c[k>>2]|0)+4>>2]=c[g>>2];c[k>>2]=(c[e>>2]|0)+604;c[j>>2]=rC(qC(c[f>>2]|0)|0)|0;c[h>>2]=0;while(1){b=rA(c[j>>2]|0,1,c[h>>2]|0)|0;c[h>>2]=b;if(!b)break;b=c[k>>2]|0;a=c[g>>2]|0;c[g>>2]=a+1;KR(b,a,c[(c[h>>2]|0)+8>>2]|0);a=c[k>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;KR(a,b,zA(c[f>>2]|0,c[h>>2]|0)|0)}c[(c[k>>2]|0)+4>>2]=c[g>>2];g=qC(c[f>>2]|0)|0;c[h>>2]=qA(g,1,c[15357]|0,0)|0;if(!(c[h>>2]|0)){g=qC(c[f>>2]|0)|0;c[h>>2]=qA(g,1,c[15358]|0,0)|0}if(!(c[h>>2]|0)){i=d;return}g=zA(c[f>>2]|0,c[h>>2]|0)|0;h=WJ(g,c[f>>2]|0)|0;c[(c[e>>2]|0)+588>>2]=h;i=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+592;c[g>>2]=0;b=c[k>>2]|0;a=c[g>>2]|0;c[g>>2]=a+1;KR(b,a,c[15353]|0);a=c[k>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;m=c[f>>2]|0;KR(a,b,wB(c[((c[c[f>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+1;m=c[k>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;a=c[f>>2]|0;n=(nB(qC(c[((c[c[f>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)|0)|0)!=0;KR(m,b,n?175316:178535);n=c[k>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;m=c[f>>2]|0;KR(n,b,wB(c[((c[c[f>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1;c[(c[k>>2]|0)+4>>2]=c[g>>2];c[l>>2]=(c[e>>2]|0)+604;m=c[f>>2]|0;c[j>>2]=rC(qC(c[((c[c[f>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)|0)|0;c[h>>2]=0;a:while(1){m=rA(c[j>>2]|0,2,c[h>>2]|0)|0;c[h>>2]=m;if(!m)break;do if(J3(c[(c[h>>2]|0)+8>>2]|0,c[15354]|0)|0){if(!(J3(c[(c[h>>2]|0)+8>>2]|0,c[15355]|0)|0)){m=c[k>>2]|0;KR(m,5,zA(c[f>>2]|0,c[h>>2]|0)|0);break}if(!(J3(c[(c[h>>2]|0)+8>>2]|0,c[15356]|0)|0)){m=c[k>>2]|0;KR(m,6,zA(c[f>>2]|0,c[h>>2]|0)|0);continue a}}else{m=c[k>>2]|0;KR(m,2,zA(c[f>>2]|0,c[h>>2]|0)|0)}while(0);m=c[l>>2]|0;b=c[g>>2]|0;c[g>>2]=b+1;KR(m,b,c[(c[h>>2]|0)+8>>2]|0);b=c[l>>2]|0;m=c[g>>2]|0;c[g>>2]=m+1;KR(b,m,zA(c[f>>2]|0,c[h>>2]|0)|0)}c[(c[l>>2]|0)+4>>2]=c[g>>2];g=c[f>>2]|0;l=qC(c[((c[c[f>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)|0;c[h>>2]=qA(l,2,c[15357]|0,0)|0;if(!(c[h>>2]|0)){l=c[f>>2]|0;g=qC(c[((c[c[f>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)|0;c[h>>2]=qA(g,2,c[15358]|0,0)|0}if(!(c[h>>2]|0)){i=d;return}g=zA(c[f>>2]|0,c[h>>2]|0)|0;h=WJ(g,c[f>>2]|0)|0;c[(c[e>>2]|0)+588>>2]=h;i=d;return}function mS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=oS(c[f>>2]|0,c[g>>2]|0,c[c[h>>2]>>2]|0)|0;c[j>>2]=c[(c[h>>2]|0)+4>>2];while(1){h=c[(c[j>>2]|0)+4>>2]|0;c[k>>2]=h;if(!h)break;c[m>>2]=0;while(1){if(!(c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+4>>2]|0))break;wF(c[f>>2]|0,c[c[j>>2]>>2]|0,c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+4>>2]|0,c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+8>>2]|0,c[l>>2]|0,(c[k>>2]|0)+((c[m>>2]|0)*20|0)|0)|0;c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+8}i=e;return}function nS(b,d){b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;a[e+4>>0]=d;pS(c[f>>2]|0);a[(c[f>>2]|0)+44>>0]=0;qS(c[f>>2]|0)|0;TN(c[f>>2]|0)|0;i=e;return}function oS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=cK(12)|0;if(c[g>>2]|0)k=M3(c[g>>2]|0)|0;else k=0;c[(c[j>>2]|0)+4>>2]=k;k=M3(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=k;c[c[j>>2]>>2]=c[(c[f>>2]|0)+100>>2];c[(c[f>>2]|0)+100>>2]=c[j>>2];i=e;return c[j>>2]|0}function pS(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;if(!(c[(c[e>>2]|0)+32>>2]|0)){i=d;return}c[f>>2]=c[(c[e>>2]|0)+32>>2];while(1){b=c[c[f>>2]>>2]|0;c[g>>2]=b;if(!b)break;if((a[c[g>>2]>>0]|0)==103?(U3(c[g>>2]|0,149112)|0)!=0:0)mS(c[e>>2]|0,0,c[(c[f>>2]|0)+4>>2]|0);c[f>>2]=(c[f>>2]|0)+8}i=d;return}function qS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=yF(c[e>>2]|0,2,149125)|0;if(c[f>>2]|0){c[g>>2]=c[(c[f>>2]|0)+16>>2];c[(c[e>>2]|0)+148>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=300;h=c[d>>2]|0;i=b;return h|0}else{c[d>>2]=999;h=c[d>>2]|0;i=b;return h|0}return 0}function rS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[(c[h>>2]|0)+148>>2];if((c[l>>2]|0)!=0?(c[c[l>>2]>>2]|0)!=0:0){a[g>>0]=Ob[c[c[l>>2]>>2]&127](c[j>>2]|0,c[k>>2]|0)|0;m=a[g>>0]|0;i=f;return m|0}a[g>>0]=0;m=a[g>>0]|0;i=f;return m|0}function sS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+128|0;g=f+116|0;h=f+112|0;j=f+108|0;k=f+104|0;l=f+100|0;m=f;n=f+96|0;o=f+92|0;p=f+88|0;q=f+84|0;r=f+80|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[l>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=e;s=c[g>>2]|0;i=f;return s|0}if(!e){c[l>>2]=P4(1,20)|0;if((c[k>>2]|0)>>>0<=80)c[k>>2]=80;c[(c[l>>2]|0)+4>>2]=c[k>>2]}c[r>>2]=c[c[l>>2]>>2];c[k>>2]=c[(c[l>>2]|0)+4>>2];if(!(c[r>>2]|0)){c[p>>2]=100;c[n>>2]=P4(100,c[k>>2]|0)|0}else{c[n>>2]=c[(c[l>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+100;c[n>>2]=Q4(c[n>>2]|0,_(c[p>>2]|0,c[k>>2]|0)|0)|0;e=(c[n>>2]|0)+(_(c[r>>2]|0,c[k>>2]|0)|0)|0;$4(e|0,0,_((c[p>>2]|0)-(c[r>>2]|0)|0,c[k>>2]|0)|0)|0}while(1){r=xS(m,c[h>>2]|0,c[j>>2]|0,q)|0;c[h>>2]=r;if(!r)break;if((c[c[l>>2]>>2]|0)==(c[p>>2]|0)){c[o>>2]=c[p>>2];c[p>>2]=c[p>>2]<<1;c[n>>2]=Q4(c[n>>2]|0,_(c[p>>2]|0,c[k>>2]|0)|0)|0;r=(c[n>>2]|0)+(_(c[o>>2]|0,c[k>>2]|0)|0)|0;$4(r|0,0,_((c[p>>2]|0)-(c[o>>2]|0)|0,c[k>>2]|0)|0)|0}r=(c[n>>2]|0)+(_(c[c[l>>2]>>2]|0,c[k>>2]|0)|0)|0;e=m;d=r+80|0;do{c[r>>2]=c[e>>2];r=r+4|0;e=e+4|0}while((r|0)<(d|0));e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)+1}if(c[q>>2]|0){q=(c[l>>2]|0)+16|0;c[q>>2]=c[q>>2]|1}q=c[n>>2]|0;if(c[c[l>>2]>>2]|0){n=Q4(q,_(c[c[l>>2]>>2]|0,c[k>>2]|0)|0)|0;c[(c[l>>2]|0)+8>>2]=n}else{O4(q);O4(c[l>>2]|0);c[l>>2]=0}c[g>>2]=c[l>>2];s=c[g>>2]|0;i=f;return s|0}function tS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=sS(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0)|0;i=e;return d|0}function uS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[h>>2]=c[(c[d>>2]|0)+12>>2];if(!(c[d>>2]|0)){i=b;return}c[g>>2]=c[(c[d>>2]|0)+8>>2];c[e>>2]=0;while(1){j=c[g>>2]|0;if((c[e>>2]|0)>=(c[c[d>>2]>>2]|0))break;c[f>>2]=j+(_(c[e>>2]|0,c[(c[d>>2]|0)+4>>2]|0)|0);if(c[h>>2]|0)Bb[c[h>>2]&127](c[f>>2]|0);yS(c[f>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(j);O4(c[d>>2]|0);i=b;return}function vS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[g>>2]=b;c[h>>2]=d;a[j>>0]=a[c[g>>2]>>0]|0;a:do switch(a[j>>0]|0){case 91:{c[f>>2]=zS((c[g>>2]|0)+1|0,c[h>>2]|0)|0;break}case 40:{c[f>>2]=AS((c[g>>2]|0)+1|0,c[h>>2]|0)|0;break}case 47:case 35:{c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+8>>2]=c[g>>2];c[f>>2]=c[g>>2];break}default:if(l1(a[j>>0]|0)|0){c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+8>>2]=c[g>>2];c[f>>2]=c[g>>2];break a}else{c[f>>2]=0;break a}}while(0);i=e;return c[f>>2]|0}function wS(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[c[d>>2]>>2]|0)==1){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+8+32>>2]|0))break;O4(c[(c[(c[d>>2]|0)+8+36>>2]|0)+(c[e>>2]<<3)+4>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+8+36>>2]|0);i=b;return}if((c[c[d>>2]>>2]|0)!=2){i=b;return}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+8+48>>2]|0))break;O4(c[(c[(c[d>>2]|0)+8+52>>2]|0)+(c[e>>2]<<3)+4>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+8+52>>2]|0);i=b;return}function xS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+96|0;h=g+84|0;j=g+80|0;k=g+76|0;l=g+72|0;m=g+68|0;n=g+64|0;o=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[c[m>>2]>>2]=0;do{f=(r1(a[c[k>>2]>>0]|0)|0)!=0;p=c[k>>2]|0;c[k>>2]=p+1}while(f);a:do switch(a[p>>0]|0){case 69:{c[c[j>>2]>>2]=0;c[k>>2]=ES(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[c[l>>2]>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 101:{c[c[j>>2]>>2]=1;c[k>>2]=ES(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[c[l>>2]>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 80:{c[c[j>>2]>>2]=2;c[k>>2]=FS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+4>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 112:{c[c[j>>2]>>2]=3;c[k>>2]=FS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+4>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 98:{c[c[j>>2]>>2]=4;c[k>>2]=FS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+8>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 66:{c[c[j>>2]>>2]=5;c[k>>2]=FS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+8>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 99:{c[k>>2]=DS(c[k>>2]|0,n)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[n>>2]=vS(c[n>>2]|0,o)|0;if(!(c[n>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}f=c[j>>2]|0;if(!(c[o>>2]|0)){c[f>>2]=9;c[(c[j>>2]|0)+8>>2]=c[o+8>>2];if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+24>>2];break a}else{c[f>>2]=14;r=(c[j>>2]|0)+8|0;s=o;t=r+64|0;do{c[r>>2]=c[s>>2];r=r+4|0;s=s+4|0}while((r|0)<(t|0));if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+40>>2];break a}break}case 67:{c[k>>2]=DS(c[k>>2]|0,n)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[n>>2]=vS(c[n>>2]|0,o)|0;if(!(c[n>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}f=c[j>>2]|0;if(!(c[o>>2]|0)){c[f>>2]=8;c[(c[j>>2]|0)+8>>2]=c[o+8>>2];if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+20>>2];break a}else{c[f>>2]=13;r=(c[j>>2]|0)+8|0;s=o;t=r+64|0;do{c[r>>2]=c[s>>2];r=r+4|0;s=s+4|0}while((r|0)<(t|0));if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+40>>2];break a}break}case 76:{c[c[j>>2]>>2]=6;c[k>>2]=FS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+12>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 84:{c[c[j>>2]>>2]=7;c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+8|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=GS(c[k>>2]|0,(c[j>>2]|0)+8+16|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+24|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=DS(c[k>>2]|0,(c[j>>2]|0)+8+32|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+16>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 70:{c[c[j>>2]>>2]=10;c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=DS(c[k>>2]|0,(c[j>>2]|0)+8+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+28>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 83:{c[c[j>>2]>>2]=11;c[k>>2]=DS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+32>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 73:{c[c[j>>2]>>2]=12;c[k>>2]=ES(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(!(c[k>>2]|0)){c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[k>>2]=DS(c[k>>2]|0,(c[j>>2]|0)+8+32|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+36>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 116:{c[c[j>>2]>>2]=15;c[k>>2]=HS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(c[k>>2]|0){if(!(c[l>>2]|0))break a;c[(c[j>>2]|0)+72>>2]=c[(c[l>>2]|0)+44>>2];break a}else{c[c[m>>2]>>2]=1;c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}break}case 0:{c[k>>2]=0;break}default:{c[c[m>>2]>>2]=1;c[k>>2]=0}}while(0);c[h>>2]=c[k>>2];q=c[h>>2]|0;i=g;return q|0}function yS(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;switch(c[c[d>>2]>>2]|0){case 3:case 2:{O4(c[(c[d>>2]|0)+8+4>>2]|0);break}case 5:case 4:{O4(c[(c[d>>2]|0)+8+4>>2]|0);break}case 6:{O4(c[(c[d>>2]|0)+8+4>>2]|0);break}case 7:{O4(c[(c[d>>2]|0)+8+32>>2]|0);break}case 9:case 8:{O4(c[(c[d>>2]|0)+8>>2]|0);break}case 14:case 13:{wS((c[d>>2]|0)+8|0);break}case 10:{O4(c[(c[d>>2]|0)+8+8>>2]|0);break}case 11:{O4(c[(c[d>>2]|0)+8>>2]|0);break}case 12:{O4(c[(c[d>>2]|0)+8+32>>2]|0);break}default:{}}i=b;return}function zS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d;n=d+8|0;c[f>>2]=a;c[j>>2]=b;c[k>>2]=c[f>>2];c[n>>2]=0;c[c[j>>2]>>2]=1;c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+8|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+16|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+24|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=CS(c[k>>2]|0,(c[j>>2]|0)+8+32|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[n>>2]=P4(c[(c[j>>2]|0)+8+32>>2]|0,8)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+8+32>>2]|0)){p=18;break}c[k>>2]=BS(c[k>>2]|0,m)|0;if(!(c[k>>2]|0)){p=14;break}g[(c[n>>2]|0)+(c[l>>2]<<3)>>2]=+h[m>>3];c[k>>2]=DS(c[k>>2]|0,(c[n>>2]|0)+(c[l>>2]<<3)+4|0)|0;if(!(c[k>>2]|0)){p=16;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==14){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}else if((p|0)==16){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}else if((p|0)==18){c[(c[j>>2]|0)+8+36>>2]=c[n>>2];c[e>>2]=c[f>>2];o=c[e>>2]|0;i=d;return o|0}return 0}function AS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d;n=d+8|0;c[f>>2]=a;c[j>>2]=b;c[k>>2]=c[f>>2];c[n>>2]=0;c[c[j>>2]>>2]=2;c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+8|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+16|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+24|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+32|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=BS(c[k>>2]|0,(c[j>>2]|0)+8+40|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[k>>2]=CS(c[k>>2]|0,(c[j>>2]|0)+8+48|0)|0;if(!(c[k>>2]|0)){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[n>>2]=P4(c[(c[j>>2]|0)+8+48>>2]|0,8)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+8+48>>2]|0)){p=22;break}c[k>>2]=BS(c[k>>2]|0,m)|0;if(!(c[k>>2]|0)){p=18;break}g[(c[n>>2]|0)+(c[l>>2]<<3)>>2]=+h[m>>3];c[k>>2]=DS(c[k>>2]|0,(c[n>>2]|0)+(c[l>>2]<<3)+4|0)|0;if(!(c[k>>2]|0)){p=20;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==18){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}else if((p|0)==20){O4(c[n>>2]|0);c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}else if((p|0)==22){c[(c[j>>2]|0)+8+52>>2]=c[n>>2];c[e>>2]=c[f>>2];o=c[e>>2]|0;i=d;return o|0}return 0}function BS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;j=d+8|0;k=d;c[f>>2]=a;c[g>>2]=b;h[k>>3]=+x3(c[f>>2]|0,j);if((c[j>>2]|0)==(c[f>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}else{h[c[g>>2]>>3]=+h[k>>3];c[e>>2]=c[j>>2];l=c[e>>2]|0;i=d;return l|0}return 0}function CS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=z3(c[f>>2]|0,h,10)|0;c[c[g>>2]>>2]=b;if((c[f>>2]|0)==(c[h>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function DS(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=b;c[h>>2]=d;c[g>>2]=CS(c[g>>2]|0,j)|0;if((c[g>>2]|0)==0|(c[j>>2]|0)<=0){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}while(1){if(a[c[g>>2]>>0]|0)n=(a[c[g>>2]>>0]|0)!=45;else n=0;o=c[g>>2]|0;if(!n)break;c[g>>2]=o+1}if(!(a[o>>0]|0)){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=P4((c[j>>2]|0)+1|0,1)|0;c[l>>2]=c[k>>2];while(1){if((c[j>>2]|0)<=0)break;if(!(a[c[g>>2]>>0]|0))break;o=c[g>>2]|0;c[g>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[j>>2]=(c[j>>2]|0)+-1}if((c[j>>2]|0)>0){O4(c[k>>2]|0);c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}else{a[c[l>>2]>>0]=0;c[c[h>>2]>>2]=c[k>>2];c[f>>2]=c[g>>2];m=c[f>>2]|0;i=e;return m|0}return 0}function ES(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;k=+x3(c[f>>2]|0,j);h[c[g>>2]>>3]=k;if((c[f>>2]|0)==(c[j>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[f>>2]=c[j>>2];k=+x3(c[f>>2]|0,j);h[(c[g>>2]|0)+8>>3]=k;if((c[f>>2]|0)==(c[j>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[f>>2]=c[j>>2];k=+x3(c[f>>2]|0,j);h[(c[g>>2]|0)+16>>3]=k;if((c[f>>2]|0)==(c[j>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[f>>2]=c[j>>2];k=+x3(c[f>>2]|0,j);h[(c[g>>2]|0)+24>>3]=k;if((c[f>>2]|0)==(c[j>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}else{c[f>>2]=c[j>>2];c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}return 0}function FS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[f>>2]=a;c[g>>2]=b;c[f>>2]=CS(c[f>>2]|0,j)|0;if(!(c[f>>2]|0)){c[e>>2]=c[f>>2];n=c[e>>2]|0;i=d;return n|0}b=P4(c[j>>2]|0,24)|0;c[l>>2]=b;c[k>>2]=b;c[c[g>>2]>>2]=c[j>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[g>>2]>>2]|0)){o=10;break}p=+x3(c[f>>2]|0,m);h[c[l>>2]>>3]=p;if((c[f>>2]|0)==(c[m>>2]|0)){o=6;break}c[f>>2]=c[m>>2];p=+x3(c[f>>2]|0,m);h[(c[l>>2]|0)+8>>3]=p;if((c[f>>2]|0)==(c[m>>2]|0)){o=8;break}c[f>>2]=c[m>>2];h[(c[l>>2]|0)+16>>3]=0.0;c[l>>2]=(c[l>>2]|0)+24;c[j>>2]=(c[j>>2]|0)+1}if((o|0)==6){O4(c[k>>2]|0);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}else if((o|0)==8){O4(c[k>>2]|0);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}else if((o|0)==10){c[(c[g>>2]|0)+4>>2]=c[k>>2];c[e>>2]=c[f>>2];n=c[e>>2]|0;i=d;return n|0}return 0}function GS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[e>>2]=CS(c[e>>2]|0,g)|0;do if((c[g>>2]|0)>=0){b=c[f>>2]|0;if((c[g>>2]|0)>0){c[b>>2]=2;break}else{c[b>>2]=1;break}}else c[c[f>>2]>>2]=0;while(0);i=d;return c[e>>2]|0}function HS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=y3(c[f>>2]|0,h,10)|0;c[c[g>>2]>>2]=b;if((c[f>>2]|0)==(c[h>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function IS(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+16|0;e=b+8|0;f=b;c[d>>2]=a;h[e>>3]=+h[(c[(c[d>>2]|0)+16>>2]|0)+16>>3];h[f>>3]=+h[(c[(c[d>>2]|0)+16>>2]|0)+16+8>>3];d=(KS(~~(+h[e>>3]>+h[f>>3]?+h[e>>3]:+h[f>>3])>>>0)|0)+1|0;i=b;return d|0}function JS(b,e,f,g,j){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+112|0;l=k+96|0;m=k+92|0;n=k+88|0;o=k+84|0;p=k+80|0;q=k+76|0;r=k+72|0;s=k+68|0;t=k+32|0;u=k+64|0;v=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;c[u>>2]=LS(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;p=MS(c[u>>2]|0)|0;c[r>>2]=p;if((p|0)<0){c[l>>2]=c[r>>2];w=c[l>>2]|0;i=k;return w|0}c[r>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;do if(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0){NS(v,c[u>>2]|0,(c[m>>2]|0)+((c[s>>2]|0)*40|0)|0);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];if(!(c[t>>2]|0)){a[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+36>>0]=1;break}if(+h[t+8>>3]==0.0){h[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+16>>3]=+h[t+16>>3];h[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+16+8>>3]=+h[t+16+8>>3];a[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+36>>0]=1;break}if((d[(c[q>>2]|0)+32>>0]|0|0)==1){h[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+16>>3]=+h[t+16>>3];h[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+16+8>>3]=+h[t+16+8>>3];a[(c[(c[m>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)+36>>0]=1;break}else{c[r>>2]=1;break}}while(0);c[s>>2]=(c[s>>2]|0)+1}OS(c[u>>2]|0);c[l>>2]=c[r>>2];w=c[l>>2]|0;i=k;return w|0}function KS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-1;g=c[d>>2]|0;i=b;return g|0}if((c[e>>2]|0)>>>0>=65536){c[e>>2]=(c[e>>2]|0)>>>16;c[f>>2]=(c[f>>2]|0)+16}if((c[e>>2]|0)>>>0>=256){c[e>>2]=(c[e>>2]|0)>>>8;c[f>>2]=(c[f>>2]|0)+8}if((c[e>>2]|0)>>>0>=16){c[e>>2]=(c[e>>2]|0)>>>4;c[f>>2]=(c[f>>2]|0)+4}if((c[e>>2]|0)>>>0>=4){c[e>>2]=(c[e>>2]|0)>>>2;c[f>>2]=(c[f>>2]|0)+2}if((c[e>>2]|0)>>>0>=2)c[f>>2]=(c[f>>2]|0)+1;c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function LS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;h=g+8|0;j=g;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=bK(28)|0;f=Nz(61452,c[12990]|0)|0;c[(c[q>>2]|0)+20>>2]=f;do if(f){e=vV()|0;c[(c[q>>2]|0)+24>>2]=e;if(!e){Y2(c[24742]|0,149343,h)|0;break}c[c[q>>2]>>2]=c[l>>2];c[(c[q>>2]|0)+4>>2]=c[m>>2];c[(c[q>>2]|0)+8>>2]=c[n>>2];c[(c[q>>2]|0)+12>>2]=c[o>>2];c[(c[q>>2]|0)+16>>2]=c[p>>2];c[k>>2]=c[q>>2];r=c[k>>2]|0;i=g;return r|0}else Y2(c[24742]|0,149343,j)|0;while(0);if(c[(c[q>>2]|0)+20>>2]|0)Jz(c[(c[q>>2]|0)+20>>2]|0)|0;if(c[(c[q>>2]|0)+24>>2]|0)xV(c[(c[q>>2]|0)+24>>2]|0)|0;O4(c[q>>2]|0);c[k>>2]=0;r=c[k>>2]|0;i=g;return r|0}function MS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=0;a=YS(c[e>>2]|0)|0;c[f>>2]=a;if((a|0)<0){c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}a=ZS(c[e>>2]|0)|0;c[f>>2]=a;if((a|0)<0){c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}else{_S(c[e>>2]|0);c[d>>2]=Jz(c[(c[e>>2]|0)+20>>2]|0)|0;g=c[d>>2]|0;i=b;return g|0}return 0}function NS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;e=i;i=i+512|0;f=e+508|0;g=e+504|0;j=e+500|0;k=e+456|0;l=e+448|0;m=e+464|0;n=e+416|0;o=e+384|0;p=e+352|0;q=e+320|0;r=e+288|0;s=e+256|0;t=e+224|0;u=e+192|0;v=e+160|0;w=e+128|0;x=e+96|0;y=e+64|0;z=e+32|0;A=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=c[(c[g>>2]|0)+32>>2];h[k>>3]=(+h[c[j>>2]>>3]*2.0+ +h[(c[g>>2]|0)+16>>3])/8.0;h[l>>3]=(+h[(c[j>>2]|0)+8>>3]*2.0+ +h[(c[g>>2]|0)+16+8>>3])/2.0;if(!(c[(c[g>>2]|0)+32>>2]|0))La(149136,149146,445,149156);d=m;b=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]-+h[c[j>>2]>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3];QS(p,c[f>>2]|0,c[g>>2]|0,m);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];if(!(c[n>>2]|0)){c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];i=e;return}h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3];QS(q,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];c[o+16>>2]=c[q+16>>2];c[o+20>>2]=c[q+20>>2];c[o+24>>2]=c[q+24>>2];c[o+28>>2]=c[q+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];QS(r,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];c[o+16>>2]=c[r+16>>2];c[o+20>>2]=c[r+20>>2];c[o+24>>2]=c[r+24>>2];c[o+28>>2]=c[r+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3];QS(s,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[s>>2];c[o+4>>2]=c[s+4>>2];c[o+8>>2]=c[s+8>>2];c[o+12>>2]=c[s+12>>2];c[o+16>>2]=c[s+16>>2];c[o+20>>2]=c[s+20>>2];c[o+24>>2]=c[s+24>>2];c[o+28>>2]=c[s+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];QS(t,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[t>>2];c[o+4>>2]=c[t+4>>2];c[o+8>>2]=c[t+8>>2];c[o+12>>2]=c[t+12>>2];c[o+16>>2]=c[t+16>>2];c[o+20>>2]=c[t+20>>2];c[o+24>>2]=c[t+24>>2];c[o+28>>2]=c[t+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]+ +h[(c[g>>2]|0)+16>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3];QS(u,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];c[o+16>>2]=c[u+16>>2];c[o+20>>2]=c[u+20>>2];c[o+24>>2]=c[u+24>>2];c[o+28>>2]=c[u+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3];QS(v,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[v>>2];c[o+4>>2]=c[v+4>>2];c[o+8>>2]=c[v+8>>2];c[o+12>>2]=c[v+12>>2];c[o+16>>2]=c[v+16>>2];c[o+20>>2]=c[v+20>>2];c[o+24>>2]=c[v+24>>2];c[o+28>>2]=c[v+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];QS(w,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[o+16>>2]=c[w+16>>2];c[o+20>>2]=c[w+20>>2];c[o+24>>2]=c[w+24>>2];c[o+28>>2]=c[w+28>>2];if(!(c[o>>2]|0)){c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}do if(((c[m+24>>2]|0)==0?(c[m+28>>2]|0)==0:0)?(c[m+32>>2]|0)==0:0){if(c[m+12>>2]|0){B=38;break}if(c[m>>2]|0)B=38}else B=38;while(0);a:do if((B|0)==38){b:do if(!(c[m+28>>2]|0)){if(c[m+32>>2]|0)break;h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]-+h[c[j>>2]>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3];while(1){if(!(+h[(c[j>>2]|0)+16>>3]<=+h[c[g>>2]>>3]+ +h[(c[g>>2]|0)+16>>3]))break b;QS(x,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[o+12>>2]=c[x+12>>2];c[o+16>>2]=c[x+16>>2];c[o+20>>2]=c[x+20>>2];c[o+24>>2]=c[x+24>>2];c[o+28>>2]=c[x+28>>2];if(!(c[o>>2]|0))break;if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}w=(c[j>>2]|0)+16|0;h[w>>3]=+h[w>>3]+ +h[k>>3]}c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}while(0);if(!(c[m+12>>2]|0)){if(c[m>>2]|0)break;h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]-+h[c[j>>2]>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3];while(1){if(!(+h[(c[j>>2]|0)+16+8>>3]>=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3]))break a;QS(y,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[y>>2];c[o+4>>2]=c[y+4>>2];c[o+8>>2]=c[y+8>>2];c[o+12>>2]=c[y+12>>2];c[o+16>>2]=c[y+16>>2];c[o+20>>2]=c[y+20>>2];c[o+24>>2]=c[y+24>>2];c[o+28>>2]=c[y+28>>2];if(!(c[o>>2]|0))break;if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}w=(c[j>>2]|0)+16+8|0;h[w>>3]=+h[w>>3]-+h[l>>3]}c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}}while(0);h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]+ +h[(c[g>>2]|0)+16>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];do if((c[m+8>>2]|0)==0?(c[m+4>>2]|0)==0:0){if(c[m>>2]|0){B=61;break}if(c[m+20>>2]|0){B=61;break}if(c[m+32>>2]|0)B=61}else B=61;while(0);c:do if((B|0)==61){d:do if(!(c[m+4>>2]|0)){if(c[m>>2]|0)break;h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]+ +h[(c[g>>2]|0)+16>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];while(1){if(!(+h[(c[j>>2]|0)+16>>3]>=+h[c[g>>2]>>3]-+h[c[j>>2]>>3]))break d;QS(z,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[z>>2];c[o+4>>2]=c[z+4>>2];c[o+8>>2]=c[z+8>>2];c[o+12>>2]=c[z+12>>2];c[o+16>>2]=c[z+16>>2];c[o+20>>2]=c[z+20>>2];c[o+24>>2]=c[z+24>>2];c[o+28>>2]=c[z+28>>2];if(!(c[o>>2]|0))break;if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}y=(c[j>>2]|0)+16|0;h[y>>3]=+h[y>>3]-+h[k>>3]}c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}while(0);if(c[m+20>>2]|0)break;if(c[m+32>>2]|0)break;h[(c[j>>2]|0)+16>>3]=+h[c[g>>2]>>3]+ +h[(c[g>>2]|0)+16>>3];h[(c[j>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3];while(1){if(!(+h[(c[j>>2]|0)+16+8>>3]<=+h[(c[g>>2]|0)+8>>3]+ +h[(c[g>>2]|0)+16+8>>3]))break c;QS(A,c[f>>2]|0,c[g>>2]|0,m);c[o>>2]=c[A>>2];c[o+4>>2]=c[A+4>>2];c[o+8>>2]=c[A+8>>2];c[o+12>>2]=c[A+12>>2];c[o+16>>2]=c[A+16>>2];c[o+20>>2]=c[A+20>>2];c[o+24>>2]=c[A+24>>2];c[o+28>>2]=c[A+28>>2];if(!(c[o>>2]|0))break;if(+h[o+8>>3]<+h[n+8>>3]){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2]}y=(c[j>>2]|0)+16+8|0;h[y>>3]=+h[y>>3]+ +h[l>>3]}c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];c[a+16>>2]=c[o+16>>2];c[a+20>>2]=c[o+20>>2];c[a+24>>2]=c[o+24>>2];c[a+28>>2]=c[o+28>>2];i=e;return}while(0);c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];i=e;return}function OS(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;xV(c[(c[d>>2]|0)+24>>2]|0)|0;O4(c[d>>2]|0);i=b;return}function PS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+4|0;k=f;c[f+20>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f+8>>2]=e;c[j>>2]=c[c[g>>2]>>2];c[k>>2]=c[c[h>>2]>>2];i=f;return (c[j>>2]|0)-(c[k>>2]|0)|0}function QS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+112|0;j=g+108|0;k=g+104|0;l=g+100|0;m=g+96|0;n=g+92|0;o=g+88|0;p=g+72|0;q=g+56|0;r=g+16|0;s=g+8|0;t=g;u=g+48|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(!(c[(c[k>>2]|0)+32>>2]|0))La(149136,149146,382,149165);c[r>>2]=0;h[r+8>>3]=0.0;f=r+16|0;e=(c[(c[k>>2]|0)+32>>2]|0)+16|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[m>>2]=0;while(1){v=c[k>>2]|0;if((c[m>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;do if((v|0)!=((c[c[j>>2]>>2]|0)+((c[m>>2]|0)*40|0)|0)){if(+h[(c[c[j>>2]>>2]|0)+((c[m>>2]|0)*40|0)+16>>3]>0.0?+h[(c[c[j>>2]>>2]|0)+((c[m>>2]|0)*40|0)+16+8>>3]>0.0:0)break;if(RS(c[k>>2]|0,(c[c[j>>2]>>2]|0)+((c[m>>2]|0)*40|0)|0)|0)c[r>>2]=(c[r>>2]|0)+1}while(0);c[m>>2]=(c[m>>2]|0)+1}SS(v,p);c[o>>2]=yV(c[(c[j>>2]|0)+24>>2]|0,c[c[(c[j>>2]|0)+24>>2]>>2]|0,p)|0;if(!(c[o>>2]|0)){c[b>>2]=c[r>>2];c[b+4>>2]=c[r+4>>2];c[b+8>>2]=c[r+8>>2];c[b+12>>2]=c[r+12>>2];c[b+16>>2]=c[r+16>>2];c[b+20>>2]=c[r+20>>2];c[b+24>>2]=c[r+24>>2];c[b+28>>2]=c[r+28>>2];i=g;return}c[n>>2]=c[o>>2];while(1){if(!(c[n>>2]|0))break;c[u>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+16>>2];if((c[u>>2]|0)!=(c[k>>2]|0)){TS(c[u>>2]|0,q);h[s>>3]=+US(p,q);if(+h[s>>3]>0.0){h[t>>3]=+VS(c[j>>2]|0,c[k>>2]|0,c[u>>2]|0,p,+h[s>>3],c[l>>2]|0);c[r>>2]=(c[r>>2]|0)+1;v=r+8|0;h[v>>3]=+h[v>>3]+ +h[t>>3]}if(((c[(c[u>>2]|0)+32>>2]|0)!=0?(a[(c[(c[u>>2]|0)+32>>2]|0)+36>>0]|0)!=0:0)?(SS(c[u>>2]|0,q),h[s>>3]=+US(p,q),+h[s>>3]>0.0):0){h[t>>3]=+WS(c[j>>2]|0,c[k>>2]|0,c[u>>2]|0,p,+h[s>>3],c[l>>2]|0);c[r>>2]=(c[r>>2]|0)+1;v=r+8|0;h[v>>3]=+h[v>>3]+ +h[t>>3]}}c[n>>2]=c[c[n>>2]>>2]}uV(c[o>>2]|0);c[b>>2]=c[r>>2];c[b+4>>2]=c[r+4>>2];c[b+8>>2]=c[r+8>>2];c[b+12>>2]=c[r+12>>2];c[b+16>>2]=c[r+16>>2];c[b+20>>2]=c[r+20>>2];c[b+24>>2]=c[r+24>>2];c[b+28>>2]=c[r+28>>2];i=g;return}function RS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[f>>2]|0)+32>>2];if(!(+h[(c[g>>2]|0)+16>>3]==0.0))La(149202,149146,219,149239);if(!(+h[(c[g>>2]|0)+16+8>>3]==0.0))La(149202,149146,219,149239);if(!(c[j>>2]|0)){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if((+h[c[g>>2]>>3]>+h[(c[j>>2]|0)+16>>3]?+h[c[g>>2]>>3]<+h[(c[j>>2]|0)+16>>3]+ +h[c[j>>2]>>3]:0)?+h[(c[g>>2]|0)+8>>3]>+h[(c[j>>2]|0)+16+8>>3]:0)l=+h[(c[g>>2]|0)+8>>3]<+h[(c[j>>2]|0)+16+8>>3]+ +h[(c[j>>2]|0)+8>>3];else l=0;c[e>>2]=l&1;k=c[e>>2]|0;i=d;return k|0}function SS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+32>>2];c[c[f>>2]>>2]=~~+h[(c[g>>2]|0)+16>>3];c[(c[f>>2]|0)+4>>2]=~~+h[(c[g>>2]|0)+16+8>>3];c[(c[f>>2]|0)+8>>2]=~~(+h[(c[g>>2]|0)+16>>3]+ +h[c[g>>2]>>3]);c[(c[f>>2]|0)+12>>2]=~~(+h[(c[g>>2]|0)+16+8>>3]+ +h[(c[g>>2]|0)+8>>3]);i=d;return}function TS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[f>>2]>>2]=~~+h[c[e>>2]>>3];c[(c[f>>2]|0)+4>>2]=~~+h[(c[e>>2]|0)+8>>3];c[(c[f>>2]|0)+8>>2]=~~(+h[c[e>>2]>>3]+ +h[(c[e>>2]|0)+16>>3]);c[(c[f>>2]|0)+12>>2]=~~(+h[(c[e>>2]|0)+8>>3]+ +h[(c[e>>2]|0)+16+8>>3]);i=d;return}function US(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;d=i;i=i+48|0;e=d+32|0;f=d+44|0;g=d+40|0;j=d+24|0;k=d+16|0;l=d+8|0;m=d;c[f>>2]=a;c[g>>2]=b;if((c[(c[f>>2]|0)+8>>2]|0)>=(c[c[g>>2]>>2]|0)?(c[c[f>>2]>>2]|0)<=(c[(c[g>>2]|0)+8>>2]|0):0){if((c[(c[f>>2]|0)+12>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0)?(c[(c[f>>2]|0)+4>>2]|0)<=(c[(c[g>>2]|0)+12>>2]|0):0){if((c[c[f>>2]>>2]|0)>(c[c[g>>2]>>2]|0))n=c[c[f>>2]>>2]|0;else n=c[c[g>>2]>>2]|0;h[j>>3]=+(n|0);if((c[(c[f>>2]|0)+4>>2]|0)>(c[(c[g>>2]|0)+4>>2]|0))o=c[(c[f>>2]|0)+4>>2]|0;else o=c[(c[g>>2]|0)+4>>2]|0;h[k>>3]=+(o|0);if((c[(c[f>>2]|0)+8>>2]|0)<(c[(c[g>>2]|0)+8>>2]|0))p=c[(c[f>>2]|0)+8>>2]|0;else p=c[(c[g>>2]|0)+8>>2]|0;h[l>>3]=+(p|0);if((c[(c[f>>2]|0)+12>>2]|0)<(c[(c[g>>2]|0)+12>>2]|0))q=c[(c[f>>2]|0)+12>>2]|0;else q=c[(c[g>>2]|0)+12>>2]|0;h[m>>3]=+(q|0);h[e>>3]=(+h[l>>3]-+h[j>>3])*(+h[m>>3]-+h[k>>3]);r=+h[e>>3];i=d;return +r}h[e>>3]=0.0;r=+h[e>>3];i=d;return +r}h[e>>3]=0.0;r=+h[e>>3];i=d;return +r}function VS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;j=i;i=i+80|0;k=j+24|0;l=j+68|0;m=j+64|0;n=j+60|0;o=j+56|0;p=j+16|0;q=j+52|0;r=j+48|0;s=j+8|0;t=j;u=j+32|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;h[p>>3]=f;c[q>>2]=g;g=XS(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[r>>2]=g;c[r>>2]=(c[r>>2]|0)<0?5:g;if(!(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)){c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[n>>2];h[k>>3]=+h[p>>3];v=+h[k>>3];i=j;return +v}h[t>>3]=0.0;TS(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0,u);h[s>>3]=+US(c[o>>2]|0,u);if(+h[s>>3]>+h[p>>3])h[t>>3]=+h[s>>3];if((c[(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)+32>>2]|0)!=0?(SS(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0,u),h[s>>3]=+US(c[o>>2]|0,u),+h[s>>3]>+h[p>>3]):0)h[t>>3]=+h[s>>3]>+h[t>>3]?+h[s>>3]:+h[t>>3];if(+h[t>>3]>0.0){h[k>>3]=+h[t>>3];v=+h[k>>3];i=j;return +v}else{c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[n>>2];h[k>>3]=+h[p>>3];v=+h[k>>3];i=j;return +v}return +(0.0)}function WS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;j=i;i=i+80|0;k=j+24|0;l=j+68|0;m=j+64|0;n=j+60|0;o=j+56|0;p=j+16|0;q=j+52|0;r=j+48|0;s=j+8|0;t=j;u=j+32|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;h[p>>3]=f;c[q>>2]=g;g=XS(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[r>>2]=g;c[r>>2]=(c[r>>2]|0)<0?5:g;if(!(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)){c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[n>>2];h[k>>3]=+h[p>>3];v=+h[k>>3];i=j;return +v}h[t>>3]=0.0;TS(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0,u);h[s>>3]=+US(c[o>>2]|0,u);if(+h[s>>3]>+h[p>>3])h[t>>3]=+h[s>>3];if((c[(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)+32>>2]|0)!=0?(SS(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0,u),h[s>>3]=+US(c[o>>2]|0,u),+h[s>>3]>+h[p>>3]):0)h[t>>3]=+h[s>>3]>+h[t>>3]?+h[s>>3]:+h[t>>3];if(+h[t>>3]>0.0){h[k>>3]=+h[t>>3];v=+h[k>>3];i=j;return +v}else{c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[n>>2];h[k>>3]=+h[p>>3];v=+h[k>>3];i=j;return +v}return +(0.0)}function XS(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+24|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[f+20>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=-1;c[m>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=c[(c[k>>2]|0)+32>>2];if((c[m>>2]|0)==(c[n>>2]|0))La(149181,149146,276,149191);if((d[(c[m>>2]|0)+36>>0]|0|0)!=0?(d[(c[n>>2]|0)+36>>0]|0|0)!=0:0){if(!(+h[c[j>>2]>>3]==0.0?+h[(c[j>>2]|0)+8>>3]==0.0:0))o=8;do if((o|0)==8){if(+h[c[k>>2]>>3]==0.0?+h[(c[k>>2]|0)+8>>3]==0.0:0)break;n=c[k>>2]|0;do if(+h[(c[k>>2]|0)+8>>3]<+h[(c[j>>2]|0)+8>>3]){if(+h[n>>3]<+h[c[j>>2]>>3]){c[l>>2]=0;break}if(+h[c[k>>2]>>3]>+h[c[j>>2]>>3]){c[l>>2]=2;break}else{c[l>>2]=1;break}}else{m=+h[c[k>>2]>>3]<+h[c[j>>2]>>3];if(!(+h[n+8>>3]>+h[(c[j>>2]|0)+8>>3])){if(m){c[l>>2]=3;break}if(!(+h[c[k>>2]>>3]>+h[c[j>>2]>>3]))break;c[l>>2]=5;break}if(m){c[l>>2]=6;break}if(+h[c[k>>2]>>3]>+h[c[j>>2]>>3]){c[l>>2]=8;break}else{c[l>>2]=7;break}}while(0);c[g>>2]=c[l>>2];p=c[g>>2]|0;i=f;return p|0}while(0);c[g>>2]=c[l>>2];p=c[g>>2]|0;i=f;return p|0}c[g>>2]=c[l>>2];p=c[g>>2]|0;i=f;return p|0}function YS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+64|0;d=b+48|0;e=b+40|0;f=b+36|0;g=b+32|0;h=b+28|0;j=b+24|0;k=b+16|0;l=b;c[f>>2]=a;c[h>>2]=IS(c[f>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){m=6;break}c[j>>2]=bK(32)|0;c[(c[j>>2]|0)+12+16>>2]=(c[c[f>>2]>>2]|0)+((c[g>>2]|0)*40|0);a=(c[j>>2]|0)+12|0;$S(l,c[f>>2]|0,(c[c[f>>2]>>2]|0)+((c[g>>2]|0)*40|0)|0);c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[k>>2]=(c[(c[j>>2]|0)+12>>2]|0)+(((c[(c[j>>2]|0)+12+8>>2]|0)-(c[(c[j>>2]|0)+12>>2]|0)|0)/2|0);c[k+4>>2]=(c[(c[j>>2]|0)+12+4>>2]|0)+(((c[(c[j>>2]|0)+12+12>>2]|0)-(c[(c[j>>2]|0)+12+4>>2]|0)|0)/2|0);a=c[h>>2]|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];n=aT(d,a)|0;c[(c[j>>2]|0)+8>>2]=n;if(!(Hb[c[c[(c[f>>2]|0)+20>>2]>>2]&63](c[(c[f>>2]|0)+20>>2]|0,c[j>>2]|0,1)|0)){m=4;break}c[g>>2]=(c[g>>2]|0)+1}if((m|0)==4){c[e>>2]=-1;o=c[e>>2]|0;i=b;return o|0}else if((m|0)==6){c[e>>2]=0;o=c[e>>2]|0;i=b;return o|0}return 0}function ZS(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;c[e>>2]=Hb[c[c[(c[d>>2]|0)+20>>2]>>2]&63](c[(c[d>>2]|0)+20>>2]|0,0,128)|0;while(1){if(!(c[e>>2]|0))break;zV(c[(c[d>>2]|0)+24>>2]|0,(c[e>>2]|0)+12|0,c[(c[e>>2]|0)+12+16>>2]|0,c[(c[d>>2]|0)+24>>2]|0,0)|0;c[e>>2]=Hb[c[c[(c[d>>2]|0)+20>>2]>>2]&63](c[(c[d>>2]|0)+20>>2]|0,c[e>>2]|0,8)|0}i=b;return 0}function _S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=Pz(c[(c[d>>2]|0)+20>>2]|0)|0;c[f>>2]=0;while(1){if(!(Pz(c[(c[d>>2]|0)+20>>2]|0)|0))break;do if(c[(c[(c[(c[d>>2]|0)+20>>2]|0)+8>>2]|0)+4>>2]|0){a=c[(c[(c[(c[d>>2]|0)+20>>2]|0)+8>>2]|0)+4>>2]|0;if((c[(c[(c[(c[d>>2]|0)+20>>2]|0)+4>>2]|0)+8>>2]|0)<0){h=c[a+8>>2]|0;break}else{h=a+(0-(c[(c[(c[(c[d>>2]|0)+20>>2]|0)+4>>2]|0)+8>>2]|0))|0;break}}else h=0;while(0);c[g>>2]=h;if(!(c[g>>2]|0)){j=8;break}if(!(c[g>>2]|0))continue;Hb[c[c[(c[d>>2]|0)+20>>2]>>2]&63](c[(c[d>>2]|0)+20>>2]|0,c[g>>2]|0,4096)|0;O4(c[g>>2]|0);c[f>>2]=(c[f>>2]|0)+1}if((j|0)==8)La(149252,149146,616,149255);if((c[e>>2]|0)==(c[f>>2]|0)){i=b;return}else La(149267,149146,623,149255)}function $S(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+48|0;f=e+32|0;g=e+16|0;j=e;c[e+36>>2]=b;c[f>>2]=d;h[j+8>>3]=0.0;h[j>>3]=0.0;if(c[(c[f>>2]|0)+32>>2]|0){d=c[(c[f>>2]|0)+32>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2]}c[g>>2]=~~+M(+(+h[c[f>>2]>>3]-+h[j>>3]));c[g+4>>2]=~~+M(+(+h[(c[f>>2]|0)+8>>3]-+h[j+8>>3]));c[g+8>>2]=~~+Z(+(+h[c[f>>2]>>3]+ +h[(c[f>>2]|0)+16>>3]+ +h[j>>3]));if((c[g+8>>2]|0)>=2147483647)La(149279,149146,264,149306);c[g+12>>2]=~~+Z(+(+h[(c[f>>2]|0)+8>>3]+ +h[(c[f>>2]|0)+16+8>>3]+ +h[j+8>>3]));if((c[g+12>>2]|0)<2147483647){c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}else La(149316,149146,266,149306)}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=b;c[g>>2]=c[a>>2];c[h>>2]=c[a+4>>2];c[l>>2]=0;c[f>>2]=(c[e>>2]|0)-1;while(1){if((c[f>>2]|0)<0)break;c[j>>2]=c[g>>2]>>c[f>>2]&1;c[k>>2]=c[h>>2]>>c[f>>2]&1;c[l>>2]=(c[l>>2]<<2)+(c[j>>2]<<1)+(c[j>>2]^c[k>>2]);c[g>>2]=c[g>>2]^c[h>>2];c[h>>2]=c[h>>2]^c[g>>2]&(c[k>>2]|0)-1;c[g>>2]=c[g>>2]^c[h>>2];c[g>>2]=c[g>>2]^0-(c[j>>2]|0)&(c[k>>2]|0)-1;c[h>>2]=c[h>>2]^0-(c[j>>2]|0)&(c[k>>2]|0)-1;c[f>>2]=(c[f>>2]|0)+-1}i=d;return c[l>>2]|0}function bT(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+20|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=b;c[j>>2]=c[g>>2];c[l>>2]=N3(c[g>>2]|0)|0;if((c[l>>2]|0)>=(c[15372]|0)?(c[15372]=(c[l>>2]|0)+1+10,c[15373]=eK(c[15373]|0,c[15372]|0)|0,(c[15373]|0)==0):0){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}c[k>>2]=c[15373];while(1){l=c[j>>2]|0;c[j>>2]=l+1;g=a[l>>0]|0;a[h>>0]=g;if(!(g<<24>>24))break;if(s1(d[h>>0]|0)|0)a[h>>0]=H1(d[h>>0]|0)|0;g=a[h>>0]|0;l=c[k>>2]|0;c[k>>2]=l+1;a[l>>0]=g}a[c[k>>2]>>0]=0;c[f>>2]=c[15373];m=c[f>>2]|0;i=e;return m|0}function cT(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0;g=i;i=i+192|0;j=g+104|0;k=g+88|0;l=g+172|0;m=g+168|0;n=g+164|0;o=g+160|0;p=g+156|0;q=g+152|0;r=g+140|0;s=g+176|0;t=g+80|0;u=g+72|0;v=g+64|0;w=g+56|0;x=g+48|0;y=g+40|0;z=g+32|0;A=g+24|0;B=g+16|0;C=g+8|0;D=g;E=g+136|0;F=g+132|0;G=g+128|0;H=g+124|0;I=g+120|0;J=g+116|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[(c[n>>2]|0)+32>>2]=c[o>>2];c[J>>2]=0;while(1){K=c[m>>2]|0;if((a[c[m>>2]>>0]|0)!=32)break;c[m>>2]=K+1}c[p>>2]=K;c[H>>2]=255;if((d[c[p>>2]>>0]|0)==35?(K=c[p>>2]|0,c[k>>2]=E,c[k+4>>2]=F,c[k+8>>2]=G,c[k+12>>2]=H,(l3(K,149358,k)|0)>=3):0){switch(c[o>>2]|0){case 0:{h[x>>3]=+((c[E>>2]|0)>>>0)/255.0;h[y>>3]=+((c[F>>2]|0)>>>0)/255.0;h[z>>3]=+((c[G>>2]|0)>>>0)/255.0;h[w>>3]=+((c[H>>2]|0)>>>0)/255.0;eT(+h[x>>3],+h[y>>3],+h[z>>3],t,u,v);h[c[n>>2]>>3]=+h[t>>3];h[(c[n>>2]|0)+8>>3]=+h[u>>3];h[(c[n>>2]|0)+16>>3]=+h[v>>3];h[(c[n>>2]|0)+24>>3]=+h[w>>3];break}case 1:{a[c[n>>2]>>0]=c[E>>2];a[(c[n>>2]|0)+1>>0]=c[F>>2];a[(c[n>>2]|0)+2>>0]=c[G>>2];a[(c[n>>2]|0)+3>>0]=c[H>>2];break}case 3:{h[x>>3]=+((c[E>>2]|0)>>>0)/255.0;h[y>>3]=+((c[F>>2]|0)>>>0)/255.0;h[z>>3]=+((c[G>>2]|0)>>>0)/255.0;fT(+h[x>>3],+h[y>>3],+h[z>>3],A,B,C,D);a[c[n>>2]>>0]=~~+h[A>>3]*255;a[(c[n>>2]|0)+1>>0]=~~+h[B>>3]*255;a[(c[n>>2]|0)+2>>0]=~~+h[C>>3]*255;a[(c[n>>2]|0)+3>>0]=~~+h[D>>3]*255;break}case 2:{c[c[n>>2]>>2]=(((c[E>>2]|0)*65535|0)>>>0)/255|0;c[(c[n>>2]|0)+4>>2]=(((c[F>>2]|0)*65535|0)>>>0)/255|0;c[(c[n>>2]|0)+8>>2]=(((c[G>>2]|0)*65535|0)>>>0)/255|0;c[(c[n>>2]|0)+12>>2]=(((c[H>>2]|0)*65535|0)>>>0)/255|0;break}case 4:{h[c[n>>2]>>3]=+((c[E>>2]|0)>>>0)/255.0;h[(c[n>>2]|0)+8>>3]=+((c[F>>2]|0)>>>0)/255.0;h[(c[n>>2]|0)+16>>3]=+((c[G>>2]|0)>>>0)/255.0;h[(c[n>>2]|0)+24>>3]=+((c[H>>2]|0)>>>0)/255.0;break}default:{}}c[l>>2]=c[J>>2];L=c[l>>2]|0;i=g;return L|0}H=a[c[p>>2]>>0]|0;a[s>>0]=H;if(!((H&255|0)!=46?(p1(d[s>>0]|0)|0)==0:0)){c[I>>2]=N3(c[p>>2]|0)|0;if((c[I>>2]|0)>=(c[15374]|0)?(c[15374]=(c[I>>2]|0)+1+10,c[15375]=eK(c[15375]|0,c[15374]|0)|0,(c[15375]|0)==0):0){c[J>>2]=-1;c[l>>2]=c[J>>2];L=c[l>>2]|0;i=g;return L|0}c[q>>2]=c[15375];while(1){I=c[p>>2]|0;c[p>>2]=I+1;H=a[I>>0]|0;a[s>>0]=H;if(!(H<<24>>24))break;if((d[s>>0]|0)==44)a[s>>0]=32;H=a[s>>0]|0;I=c[q>>2]|0;c[q>>2]=I+1;a[I>>0]=H}a[c[q>>2]>>0]=0;q=c[15375]|0;c[j>>2]=t;c[j+4>>2]=u;c[j+8>>2]=v;if((l3(q,149372,j)|0)==3){if((+h[t>>3]<1.0?+h[t>>3]:1.0)>0.0)M=+h[t>>3]<1.0?+h[t>>3]:1.0;else M=0.0;h[t>>3]=M;if((+h[u>>3]<1.0?+h[u>>3]:1.0)>0.0)N=+h[u>>3]<1.0?+h[u>>3]:1.0;else N=0.0;h[u>>3]=N;if((+h[v>>3]<1.0?+h[v>>3]:1.0)>0.0)O=+h[v>>3]<1.0?+h[v>>3]:1.0;else O=0.0;h[v>>3]=O;switch(c[o>>2]|0){case 0:{h[c[n>>2]>>3]=+h[t>>3];h[(c[n>>2]|0)+8>>3]=+h[u>>3];h[(c[n>>2]|0)+16>>3]=+h[v>>3];h[(c[n>>2]|0)+24>>3]=1.0;break}case 1:{gT(+h[t>>3],+h[u>>3],+h[v>>3],x,y,z);a[c[n>>2]>>0]=~~(+h[x>>3]*255.0);a[(c[n>>2]|0)+1>>0]=~~(+h[y>>3]*255.0);a[(c[n>>2]|0)+2>>0]=~~(+h[z>>3]*255.0);a[(c[n>>2]|0)+3>>0]=-1;break}case 3:{gT(+h[t>>3],+h[u>>3],+h[v>>3],x,y,z);fT(+h[x>>3],+h[y>>3],+h[z>>3],A,B,C,D);a[c[n>>2]>>0]=~~+h[A>>3]*255;a[(c[n>>2]|0)+1>>0]=~~+h[B>>3]*255;a[(c[n>>2]|0)+2>>0]=~~+h[C>>3]*255;a[(c[n>>2]|0)+3>>0]=~~+h[D>>3]*255;break}case 2:{gT(+h[t>>3],+h[u>>3],+h[v>>3],x,y,z);c[c[n>>2]>>2]=~~(+h[x>>3]*65535.0);c[(c[n>>2]|0)+4>>2]=~~(+h[y>>3]*65535.0);c[(c[n>>2]|0)+8>>2]=~~(+h[z>>3]*65535.0);c[(c[n>>2]|0)+12>>2]=65535;break}case 4:{gT(+h[t>>3],+h[u>>3],+h[v>>3],x,y,z);h[c[n>>2]>>3]=+h[x>>3];h[(c[n>>2]|0)+8>>3]=+h[y>>3];h[(c[n>>2]|0)+16>>3]=+h[z>>3];h[(c[n>>2]|0)+24>>3]=1.0;break}default:{}}c[l>>2]=c[J>>2];L=c[l>>2]|0;i=g;return L|0}}c[r>>2]=hT(c[m>>2]|0)|0;if(!(c[r>>2]|0)){c[l>>2]=-1;L=c[l>>2]|0;i=g;return L|0}if(!(((c[15376]|0)!=0?(a[c[c[15376]>>2]>>0]|0)==(a[c[r>>2]>>0]|0):0)?(J3(c[c[15376]>>2]|0,c[r>>2]|0)|0)==0:0))c[15376]=v3(r,61508,2491,12,103)|0;if(c[15376]|0){switch(c[o>>2]|0){case 0:{h[c[n>>2]>>3]=+(d[(c[15376]|0)+4>>0]|0)/255.0;h[(c[n>>2]|0)+8>>3]=+(d[(c[15376]|0)+5>>0]|0)/255.0;h[(c[n>>2]|0)+16>>3]=+(d[(c[15376]|0)+6>>0]|0)/255.0;h[(c[n>>2]|0)+24>>3]=+(d[(c[15376]|0)+10>>0]|0)/255.0;break}case 1:{a[c[n>>2]>>0]=a[(c[15376]|0)+7>>0]|0;a[(c[n>>2]|0)+1>>0]=a[(c[15376]|0)+8>>0]|0;a[(c[n>>2]|0)+2>>0]=a[(c[15376]|0)+9>>0]|0;a[(c[n>>2]|0)+3>>0]=a[(c[15376]|0)+10>>0]|0;break}case 3:{h[x>>3]=+(d[(c[15376]|0)+7>>0]|0)/255.0;h[y>>3]=+(d[(c[15376]|0)+8>>0]|0)/255.0;h[z>>3]=+(d[(c[15376]|0)+9>>0]|0)/255.0;fT(+h[x>>3],+h[y>>3],+h[z>>3],A,B,C,D);a[c[n>>2]>>0]=~~+h[A>>3]*255;a[(c[n>>2]|0)+1>>0]=~~+h[B>>3]*255;a[(c[n>>2]|0)+2>>0]=~~+h[C>>3]*255;a[(c[n>>2]|0)+3>>0]=~~+h[D>>3]*255;break}case 2:{c[c[n>>2]>>2]=((d[(c[15376]|0)+7>>0]|0)*65535|0)/255|0;c[(c[n>>2]|0)+4>>2]=((d[(c[15376]|0)+8>>0]|0)*65535|0)/255|0;c[(c[n>>2]|0)+8>>2]=((d[(c[15376]|0)+9>>0]|0)*65535|0)/255|0;c[(c[n>>2]|0)+12>>2]=((d[(c[15376]|0)+10>>0]|0)*65535|0)/255|0;break}case 4:{h[c[n>>2]>>3]=+(d[(c[15376]|0)+7>>0]|0)/255.0;h[(c[n>>2]|0)+8>>3]=+(d[(c[15376]|0)+8>>0]|0)/255.0;h[(c[n>>2]|0)+16>>3]=+(d[(c[15376]|0)+9>>0]|0)/255.0;h[(c[n>>2]|0)+24>>3]=+(d[(c[15376]|0)+10>>0]|0)/255.0;break}default:{}}c[l>>2]=c[J>>2];L=c[l>>2]|0;i=g;return L|0}else{c[J>>2]=1;switch(c[o>>2]|0){case 0:{h[(c[n>>2]|0)+16>>3]=0.0;h[(c[n>>2]|0)+8>>3]=0.0;h[c[n>>2]>>3]=0.0;h[(c[n>>2]|0)+24>>3]=1.0;break}case 1:{a[(c[n>>2]|0)+2>>0]=0;a[(c[n>>2]|0)+1>>0]=0;a[c[n>>2]>>0]=0;a[(c[n>>2]|0)+3>>0]=-1;break}case 3:{a[(c[n>>2]|0)+3>>0]=0;a[(c[n>>2]|0)+2>>0]=0;a[(c[n>>2]|0)+1>>0]=0;a[c[n>>2]>>0]=0;break}case 2:{c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+4>>2]=0;c[c[n>>2]>>2]=0;c[(c[n>>2]|0)+12>>2]=65535;break}case 4:{h[(c[n>>2]|0)+16>>3]=0.0;h[(c[n>>2]|0)+8>>3]=0.0;h[c[n>>2]>>3]=0.0;h[(c[n>>2]|0)+24>>3]=1.0;break}default:{}}c[l>>2]=c[J>>2];L=c[l>>2]|0;i=g;return L|0}return 0}function dT(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[22850]=c[d>>2];i=b;return}function eT(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0.0,D=0,E=0.0,F=0;j=i;i=i+96|0;k=j+72|0;l=j+64|0;m=j+56|0;n=j+88|0;o=j+84|0;p=j+80|0;q=j+48|0;r=j+40|0;s=j+32|0;t=j+24|0;u=j+16|0;v=j+8|0;w=j;h[k>>3]=a;h[l>>3]=b;h[m>>3]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;h[v>>3]=0.0;h[w>>3]=0.0;if(+h[k>>3]<(+h[l>>3]<+h[m>>3]?+h[l>>3]:+h[m>>3]))x=+h[k>>3];else x=+h[l>>3]<+h[m>>3]?+h[l>>3]:+h[m>>3];h[q>>3]=x;if(+h[k>>3]>(+h[l>>3]>+h[m>>3]?+h[l>>3]:+h[m>>3]))y=+h[k>>3];else y=+h[l>>3]>+h[m>>3]?+h[l>>3]:+h[m>>3];h[r>>3]=y;if(+h[r>>3]>0.0)h[w>>3]=(+h[r>>3]-+h[q>>3])/+h[r>>3];if(!(+h[w>>3]>0.0)){z=+h[v>>3];A=z/360.0;B=c[n>>2]|0;h[B>>3]=A;C=+h[r>>3];D=c[p>>2]|0;h[D>>3]=C;E=+h[w>>3];F=c[o>>2]|0;h[F>>3]=E;i=j;return}h[s>>3]=(+h[r>>3]-+h[k>>3])/(+h[r>>3]-+h[q>>3]);h[u>>3]=(+h[r>>3]-+h[l>>3])/(+h[r>>3]-+h[q>>3]);h[t>>3]=(+h[r>>3]-+h[m>>3])/(+h[r>>3]-+h[q>>3]);do if(!(+h[k>>3]==+h[r>>3])){if(+h[l>>3]==+h[r>>3]){h[v>>3]=+h[s>>3]+2.0-+h[t>>3];break}if(+h[m>>3]==+h[r>>3])h[v>>3]=+h[u>>3]+4.0-+h[s>>3]}else h[v>>3]=+h[t>>3]-+h[u>>3];while(0);h[v>>3]=+h[v>>3]*60.0;if(!(+h[v>>3]<0.0)){z=+h[v>>3];A=z/360.0;B=c[n>>2]|0;h[B>>3]=A;C=+h[r>>3];D=c[p>>2]|0;h[D>>3]=C;E=+h[w>>3];F=c[o>>2]|0;h[F>>3]=E;i=j;return}h[v>>3]=+h[v>>3]+360.0;z=+h[v>>3];A=z/360.0;B=c[n>>2]|0;h[B>>3]=A;C=+h[r>>3];D=c[p>>2]|0;h[D>>3]=C;E=+h[w>>3];F=c[o>>2]|0;h[F>>3]=E;i=j;return}function fT(a,b,d,e,f,g,j){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;k=i;i=i+48|0;l=k+16|0;m=k+8|0;n=k;o=k+36|0;p=k+32|0;q=k+28|0;r=k+24|0;h[l>>3]=a;h[m>>3]=b;h[n>>3]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;h[c[o>>2]>>3]=1.0-+h[l>>3];h[c[p>>2]>>3]=1.0-+h[m>>3];h[c[q>>2]>>3]=1.0-+h[n>>3];if(+h[c[o>>2]>>3]<+h[c[p>>2]>>3])s=+h[c[o>>2]>>3];else s=+h[c[p>>2]>>3];h[c[r>>2]>>3]=s;if(+h[c[q>>2]>>3]<+h[c[r>>2]>>3])t=+h[c[q>>2]>>3];else t=+h[c[r>>2]>>3];h[c[r>>2]>>3]=t;n=c[o>>2]|0;h[n>>3]=+h[n>>3]-+h[c[r>>2]>>3];n=c[p>>2]|0;h[n>>3]=+h[n>>3]-+h[c[r>>2]>>3];n=c[q>>2]|0;h[n>>3]=+h[n>>3]-+h[c[r>>2]>>3];i=k;return}function gT(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+80|0;k=j+48|0;l=j+40|0;m=j+32|0;n=j+68|0;o=j+64|0;p=j+60|0;q=j+56|0;r=j+24|0;s=j+16|0;t=j+8|0;u=j;h[k>>3]=a;h[l>>3]=b;h[m>>3]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;if(+h[l>>3]<=0.0){h[c[n>>2]>>3]=+h[m>>3];h[c[o>>2]>>3]=+h[m>>3];h[c[p>>2]>>3]=+h[m>>3];i=j;return}if(+h[k>>3]>=1.0)h[k>>3]=0.0;h[k>>3]=+h[k>>3]*6.0;c[q>>2]=~~+h[k>>3];h[r>>3]=+h[k>>3]-+(c[q>>2]|0);h[s>>3]=+h[m>>3]*(1.0-+h[l>>3]);h[t>>3]=+h[m>>3]*(1.0-+h[l>>3]*+h[r>>3]);h[u>>3]=+h[m>>3]*(1.0-+h[l>>3]*(1.0-+h[r>>3]));switch(c[q>>2]|0){case 0:{h[c[n>>2]>>3]=+h[m>>3];h[c[o>>2]>>3]=+h[u>>3];h[c[p>>2]>>3]=+h[s>>3];i=j;return}case 1:{h[c[n>>2]>>3]=+h[t>>3];h[c[o>>2]>>3]=+h[m>>3];h[c[p>>2]>>3]=+h[s>>3];i=j;return}case 2:{h[c[n>>2]>>3]=+h[s>>3];h[c[o>>2]>>3]=+h[m>>3];h[c[p>>2]>>3]=+h[u>>3];i=j;return}case 3:{h[c[n>>2]>>3]=+h[s>>3];h[c[o>>2]>>3]=+h[t>>3];h[c[p>>2]>>3]=+h[m>>3];i=j;return}case 4:{h[c[n>>2]>>3]=+h[u>>3];h[c[o>>2]>>3]=+h[s>>3];h[c[p>>2]>>3]=+h[m>>3];i=j;return}case 5:{h[c[n>>2]>>3]=+h[m>>3];h[c[o>>2]>>3]=+h[s>>3];h[c[p>>2]>>3]=+h[t>>3];i=j;return}default:{i=j;return}}}function hT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=b;if((a[c[f>>2]>>0]|0)!=98?(P3((c[f>>2]|0)+1|0,174869,4)|0)!=0:0){if((a[c[f>>2]>>0]|0)!=119?(P3((c[f>>2]|0)+1|0,174874,4)|0)!=0:0){if((a[c[f>>2]>>0]|0)!=108?(P3((c[f>>2]|0)+1|0,174879,8)|0)!=0:0){do if((a[c[f>>2]>>0]|0)==47){c[j>>2]=(c[f>>2]|0)+1;b=H3(c[j>>2]|0,47)|0;c[h>>2]=b;k=c[j>>2]|0;if(!b){c[g>>2]=k;break}if((a[k>>0]|0)!=47)if(O3(174888,c[j>>2]|0,4)|0){c[g>>2]=c[f>>2];break}else{c[g>>2]=(c[h>>2]|0)+1;break}if(((c[22850]|0)!=0?(a[c[22850]>>0]|0)!=0:0)?(O3(174888,c[22850]|0,3)|0)!=0:0){c[g>>2]=jT(c[22850]|0,(c[j>>2]|0)+1|0)|0;break}c[g>>2]=(c[j>>2]|0)+1}else{if(((c[22850]|0)!=0?(a[c[22850]>>0]|0)!=0:0)?(O3(174888,c[22850]|0,3)|0)!=0:0){c[g>>2]=jT(c[22850]|0,c[f>>2]|0)|0;break}c[g>>2]=c[f>>2]}while(0);c[e>>2]=bT(c[g>>2]|0)|0;l=c[e>>2]|0;i=d;return l|0}c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}function iT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=F3(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;i=d;return b|0}function jT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;c[f>>2]=a;c[g>>2]=b;b=N3(c[f>>2]|0)|0;c[h>>2]=b+(N3(c[g>>2]|0)|0)+3;if((c[h>>2]|0)>=(c[22851]|0)){c[22851]=(c[h>>2]|0)+10;c[22852]=eK(c[22852]|0,c[22851]|0)|0}h=c[22852]|0;b=c[g>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=b;k3(h,174893,e)|0;i=d;return c[22852]|0}function kT(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+240|0;j=g+224|0;k=g+216|0;l=g+208|0;m=g+200|0;n=g;o=g+232|0;h[j>>3]=b;h[k>>3]=d;h[l>>3]=e;h[m>>3]=f;lT(n,+h[a>>3],+h[a+8>>3],+h[j>>3],+h[k>>3],0.0,+h[l>>3],+h[m>>3]);c[o>>2]=mT(n,3,1.0e-05,1)|0;i=g;return c[o>>2]|0}function lT(a,b,d,e,f,g,j,k){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;j=+j;k=+k;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=i;i=i+64|0;m=l+56|0;n=l+48|0;o=l+40|0;p=l+32|0;q=l+24|0;r=l+16|0;s=l+8|0;t=l;c[m>>2]=a;h[n>>3]=b;h[o>>3]=d;h[p>>3]=e;h[q>>3]=f;h[r>>3]=g;h[s>>3]=j;h[t>>3]=k;h[c[m>>2]>>3]=+h[n>>3];h[(c[m>>2]|0)+8>>3]=+h[o>>3];h[(c[m>>2]|0)+16>>3]=+h[p>>3];h[(c[m>>2]|0)+24>>3]=+h[q>>3];h[(c[m>>2]|0)+32>>3]=+h[r>>3];k=+R(+(+h[s>>3]));j=+Q(+(+h[s>>3]));g=+W(+(k/+h[q>>3]),+(j/+h[p>>3]));h[(c[m>>2]|0)+56>>3]=g;g=+R(+(+h[t>>3]));j=+Q(+(+h[t>>3]));k=+W(+(g/+h[q>>3]),+(j/+h[p>>3]));h[(c[m>>2]|0)+64>>3]=k;k=+Q(+(+h[r>>3]));h[(c[m>>2]|0)+40>>3]=k;k=+R(+(+h[r>>3]));h[(c[m>>2]|0)+48>>3]=k;k=+M(+((+h[(c[m>>2]|0)+64>>3]-+h[(c[m>>2]|0)+56>>3])/6.283185307179586))*6.283185307179586;r=(c[m>>2]|0)+64|0;h[r>>3]=+h[r>>3]-k;if(+h[t>>3]-+h[s>>3]>3.141592653589793?+h[(c[m>>2]|0)+64>>3]-+h[(c[m>>2]|0)+56>>3]<3.141592653589793:0){s=(c[m>>2]|0)+64|0;h[s>>3]=+h[s>>3]+6.283185307179586}sT(c[m>>2]|0);tT(c[m>>2]|0);uT(c[m>>2]|0);h[(c[m>>2]|0)+168>>3]=(+h[(c[m>>2]|0)+16>>3]-+h[(c[m>>2]|0)+24>>3])/+h[(c[m>>2]|0)+16>>3];h[(c[m>>2]|0)+176>>3]=+h[(c[m>>2]|0)+168>>3]*(2.0-+h[(c[m>>2]|0)+168>>3]);h[(c[m>>2]|0)+184>>3]=1.0-+h[(c[m>>2]|0)+168>>3];h[(c[m>>2]|0)+192>>3]=+h[(c[m>>2]|0)+184>>3]*+h[(c[m>>2]|0)+184>>3];i=l;return}function mT(b,e,f,g){b=b|0;e=e|0;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0;j=i;i=i+208|0;k=j+192|0;l=j+188|0;m=j+168|0;n=j+197|0;o=j+160|0;p=j+152|0;q=j+144|0;r=j+136|0;s=j+128|0;t=j+120|0;u=j+112|0;v=j+104|0;w=j+96|0;x=j+88|0;y=j+80|0;z=j+72|0;A=j+64|0;B=j+56|0;C=j+184|0;D=j+196|0;E=j+180|0;F=j+176|0;G=j+48|0;H=j+40|0;I=j+32|0;J=j+24|0;K=j+16|0;L=j+8|0;M=j;c[k>>2]=b;c[l>>2]=e;h[m>>3]=f;a[n>>0]=g;c[C>>2]=bK(8)|0;a[D>>0]=0;c[F>>2]=1;while(1){N=(+h[(c[k>>2]|0)+64>>3]-+h[(c[k>>2]|0)+56>>3])/+(c[F>>2]|0);if(!((a[D>>0]|0)!=0?0:(c[F>>2]|0)<1024))break;h[G>>3]=N;a:do if(+h[G>>3]<=1.5707963267948966){h[H>>3]=+h[(c[k>>2]|0)+56>>3];a[D>>0]=1;c[E>>2]=0;while(1){if(!(d[D>>0]|0))break a;if((c[E>>2]|0)>=(c[F>>2]|0))break a;h[I>>3]=+h[H>>3];h[H>>3]=+h[H>>3]+ +h[G>>3];f=+nT(c[k>>2]|0,c[l>>2]|0,+h[I>>3],+h[H>>3]);a[D>>0]=f<=+h[m>>3];c[E>>2]=(c[E>>2]|0)+1}}while(0);c[F>>2]=c[F>>2]<<1}h[o>>3]=N;h[p>>3]=+h[(c[k>>2]|0)+56>>3];h[q>>3]=+Q(+(+h[p>>3]));h[r>>3]=+R(+(+h[p>>3]));h[s>>3]=+h[(c[k>>2]|0)+16>>3]*+h[q>>3];h[t>>3]=+h[(c[k>>2]|0)+24>>3]*+h[r>>3];h[u>>3]=+h[(c[k>>2]|0)+16>>3]*+h[r>>3];h[v>>3]=+h[(c[k>>2]|0)+24>>3]*+h[q>>3];h[w>>3]=+h[c[k>>2]>>3]+ +h[s>>3]*+h[(c[k>>2]|0)+40>>3]-+h[t>>3]*+h[(c[k>>2]|0)+48>>3];h[x>>3]=+h[(c[k>>2]|0)+8>>3]+ +h[s>>3]*+h[(c[k>>2]|0)+48>>3]+ +h[t>>3]*+h[(c[k>>2]|0)+40>>3];h[y>>3]=-+h[u>>3]*+h[(c[k>>2]|0)+40>>3]-+h[v>>3]*+h[(c[k>>2]|0)+48>>3];h[z>>3]=-+h[u>>3]*+h[(c[k>>2]|0)+48>>3]+ +h[v>>3]*+h[(c[k>>2]|0)+40>>3];m=c[C>>2]|0;if(a[n>>0]|0){oT(m,+h[c[k>>2]>>3],+h[(c[k>>2]|0)+8>>3]);pT(c[C>>2]|0,+h[w>>3],+h[x>>3])}else oT(m,+h[w>>3],+h[x>>3]);h[A>>3]=+S(+(+h[o>>3]*.5));N=+R(+(+h[o>>3]));h[B>>3]=N*(+O(+(+h[A>>3]*3.0*+h[A>>3]+4.0))-1.0)/3.0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[F>>2]|0))break;h[J>>3]=+h[w>>3];h[K>>3]=+h[x>>3];h[L>>3]=+h[y>>3];h[M>>3]=+h[z>>3];h[p>>3]=+h[p>>3]+ +h[o>>3];h[q>>3]=+Q(+(+h[p>>3]));h[r>>3]=+R(+(+h[p>>3]));h[s>>3]=+h[(c[k>>2]|0)+16>>3]*+h[q>>3];h[t>>3]=+h[(c[k>>2]|0)+24>>3]*+h[r>>3];h[u>>3]=+h[(c[k>>2]|0)+16>>3]*+h[r>>3];h[v>>3]=+h[(c[k>>2]|0)+24>>3]*+h[q>>3];h[w>>3]=+h[c[k>>2]>>3]+ +h[s>>3]*+h[(c[k>>2]|0)+40>>3]-+h[t>>3]*+h[(c[k>>2]|0)+48>>3];h[x>>3]=+h[(c[k>>2]|0)+8>>3]+ +h[s>>3]*+h[(c[k>>2]|0)+48>>3]+ +h[t>>3]*+h[(c[k>>2]|0)+40>>3];h[y>>3]=-+h[u>>3]*+h[(c[k>>2]|0)+40>>3]-+h[v>>3]*+h[(c[k>>2]|0)+48>>3];h[z>>3]=-+h[u>>3]*+h[(c[k>>2]|0)+48>>3]+ +h[v>>3]*+h[(c[k>>2]|0)+40>>3];A=c[C>>2]|0;if((c[l>>2]|0)==1)pT(A,+h[w>>3],+h[x>>3]);else qT(A,+h[J>>3]+ +h[B>>3]*+h[L>>3],+h[K>>3]+ +h[B>>3]*+h[M>>3],+h[w>>3]-+h[B>>3]*+h[y>>3],+h[x>>3]-+h[B>>3]*+h[z>>3],+h[w>>3],+h[x>>3]);c[E>>2]=(c[E>>2]|0)+1}rT(c[C>>2]|0,a[n>>0]|0);i=j;return c[C>>2]|0}function nT(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0;f=i;i=i+224|0;g=f+192|0;j=f+212|0;k=f+208|0;l=f+184|0;m=f+176|0;n=f+168|0;o=f+160|0;p=f+152|0;q=f+144|0;r=f+136|0;s=f+128|0;t=f+120|0;u=f+112|0;v=f+104|0;w=f+96|0;x=f+88|0;y=f+80|0;z=f+72|0;A=f+64|0;B=f+56|0;C=f+48|0;D=f+40|0;E=f+32|0;F=f+24|0;G=f+16|0;H=f+8|0;I=f;J=f+204|0;K=f+200|0;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;h[m>>3]=e;h[p>>3]=(+h[l>>3]+ +h[m>>3])*.5;b=c[j>>2]|0;if((c[k>>2]|0)<2){h[q>>3]=+h[b+16>>3]*+Q(+(+h[l>>3]));h[r>>3]=+h[(c[j>>2]|0)+24>>3]*+R(+(+h[l>>3]));h[s>>3]=+h[c[j>>2]>>3]+ +h[q>>3]*+h[(c[j>>2]|0)+40>>3]-+h[r>>3]*+h[(c[j>>2]|0)+48>>3];h[t>>3]=+h[(c[j>>2]|0)+8>>3]+ +h[q>>3]*+h[(c[j>>2]|0)+48>>3]+ +h[r>>3]*+h[(c[j>>2]|0)+40>>3];h[u>>3]=+h[(c[j>>2]|0)+16>>3]*+Q(+(+h[m>>3]));h[v>>3]=+h[(c[j>>2]|0)+24>>3]*+R(+(+h[m>>3]));h[w>>3]=+h[c[j>>2]>>3]+ +h[u>>3]*+h[(c[j>>2]|0)+40>>3]-+h[v>>3]*+h[(c[j>>2]|0)+48>>3];h[x>>3]=+h[(c[j>>2]|0)+8>>3]+ +h[u>>3]*+h[(c[j>>2]|0)+48>>3]+ +h[v>>3]*+h[(c[j>>2]|0)+40>>3];h[y>>3]=+h[(c[j>>2]|0)+16>>3]*+Q(+(+h[p>>3]));h[z>>3]=+h[(c[j>>2]|0)+24>>3]*+R(+(+h[p>>3]));h[A>>3]=+h[c[j>>2]>>3]+ +h[y>>3]*+h[(c[j>>2]|0)+40>>3]-+h[z>>3]*+h[(c[j>>2]|0)+48>>3];h[B>>3]=+h[(c[j>>2]|0)+8>>3]+ +h[y>>3]*+h[(c[j>>2]|0)+48>>3]+ +h[z>>3]*+h[(c[j>>2]|0)+40>>3];h[C>>3]=+h[w>>3]-+h[s>>3];h[D>>3]=+h[x>>3]-+h[t>>3];e=+(N(~~(+h[A>>3]*+h[D>>3]-+h[B>>3]*+h[C>>3]+ +h[w>>3]*+h[t>>3]-+h[s>>3]*+h[x>>3])|0)|0);h[g>>3]=e/+O(+(+h[C>>3]*+h[C>>3]+ +h[D>>3]*+h[D>>3]));L=+h[g>>3];i=f;return +L}h[E>>3]=+h[b+24>>3]/+h[(c[j>>2]|0)+16>>3];h[F>>3]=+h[m>>3]-+h[l>>3];h[G>>3]=+Q(+(+h[p>>3]*2.0));h[H>>3]=+Q(+(+h[p>>3]*4.0));h[I>>3]=+Q(+(+h[p>>3]*6.0));p=+h[E>>3]<.25;if((c[k>>2]|0)==2){c[J>>2]=p?42904:43160;c[K>>2]=43416}else{c[J>>2]=p?43448:43704;c[K>>2]=43960}h[n>>3]=(+h[E>>3]*(+h[E>>3]*+h[c[J>>2]>>3]+ +h[(c[J>>2]|0)+8>>3])+ +h[(c[J>>2]|0)+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+24>>3])+ +h[G>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+32>>3]+ +h[(c[J>>2]|0)+32+8>>3])+ +h[(c[J>>2]|0)+32+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+32+24>>3]))+ +h[H>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+64>>3]+ +h[(c[J>>2]|0)+64+8>>3])+ +h[(c[J>>2]|0)+64+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+64+24>>3]))+ +h[I>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+96>>3]+ +h[(c[J>>2]|0)+96+8>>3])+ +h[(c[J>>2]|0)+96+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+96+24>>3]));h[o>>3]=(+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+128>>3]+ +h[(c[J>>2]|0)+128+8>>3])+ +h[(c[J>>2]|0)+128+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+128+24>>3])+ +h[G>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+128+32>>3]+ +h[(c[J>>2]|0)+128+32+8>>3])+ +h[(c[J>>2]|0)+128+32+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+128+32+24>>3]))+ +h[H>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+128+64>>3]+ +h[(c[J>>2]|0)+128+64+8>>3])+ +h[(c[J>>2]|0)+128+64+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+128+64+24>>3]))+ +h[I>>3]*((+h[E>>3]*(+h[E>>3]*+h[(c[J>>2]|0)+128+96>>3]+ +h[(c[J>>2]|0)+128+96+8>>3])+ +h[(c[J>>2]|0)+128+96+16>>3])/(+h[E>>3]+ +h[(c[J>>2]|0)+128+96+24>>3]));h[g>>3]=(+h[E>>3]*(+h[E>>3]*+h[c[K>>2]>>3]+ +h[(c[K>>2]|0)+8>>3])+ +h[(c[K>>2]|0)+16>>3])/(+h[E>>3]+ +h[(c[K>>2]|0)+24>>3])*+h[(c[j>>2]|0)+16>>3]*+X(+(+h[n>>3]+ +h[o>>3]*+h[F>>3]));L=+h[g>>3];i=f;return +L}function oT(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;j=e;c[f>>2]=a;h[g>>3]=b;h[j>>3]=d;c[22853]=100;a=bK(c[22853]<<4)|0;c[c[f>>2]>>2]=a;h[c[c[f>>2]>>2]>>3]=+h[g>>3];h[(c[c[f>>2]>>2]|0)+8>>3]=+h[j>>3];c[(c[f>>2]|0)+4>>2]=1;i=e;return}function pT(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+48|0;f=e+32|0;g=e+24|0;j=e+16|0;k=e;c[f>>2]=a;h[g>>3]=b;h[j>>3]=d;a=(c[c[f>>2]>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<4)|0;c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];qT(c[f>>2]|0,+h[k>>3],+h[k+8>>3],+h[g>>3],+h[j>>3],+h[g>>3],+h[j>>3]);i=e;return}function qT(a,b,d,e,f,g,j){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+64|0;l=k+48|0;m=k+40|0;n=k+32|0;o=k+24|0;p=k+16|0;q=k+8|0;r=k;c[l>>2]=a;h[m>>3]=b;h[n>>3]=d;h[o>>3]=e;h[p>>3]=f;h[q>>3]=g;h[r>>3]=j;if(((c[(c[l>>2]|0)+4>>2]|0)+3|0)>=(c[22853]|0)){c[22853]=c[22853]<<1;a=Q4(c[c[l>>2]>>2]|0,c[22853]<<4)|0;c[c[l>>2]>>2]=a}h[(c[c[l>>2]>>2]|0)+(c[(c[l>>2]|0)+4>>2]<<4)>>3]=+h[m>>3];j=+h[n>>3];n=(c[l>>2]|0)+4|0;m=c[n>>2]|0;c[n>>2]=m+1;h[(c[c[l>>2]>>2]|0)+(m<<4)+8>>3]=j;h[(c[c[l>>2]>>2]|0)+(c[(c[l>>2]|0)+4>>2]<<4)>>3]=+h[o>>3];j=+h[p>>3];p=(c[l>>2]|0)+4|0;o=c[p>>2]|0;c[p>>2]=o+1;h[(c[c[l>>2]>>2]|0)+(o<<4)+8>>3]=j;h[(c[c[l>>2]>>2]|0)+(c[(c[l>>2]|0)+4>>2]<<4)>>3]=+h[q>>3];j=+h[r>>3];r=(c[l>>2]|0)+4|0;q=c[r>>2]|0;c[r>>2]=q+1;h[(c[c[l>>2]>>2]|0)+(q<<4)+8>>3]=j;i=k;return}function rT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+16|0;g=e+20|0;j=e;c[f>>2]=b;a[g>>0]=d;if(a[g>>0]|0){g=c[c[f>>2]>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];pT(c[f>>2]|0,+h[j>>3],+h[j+8>>3])}j=Q4(c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]<<4)|0;c[c[f>>2]>>2]=j;c[22853]=0;i=e;return}function sT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+24|0;e=b+16|0;f=b+8|0;g=b;c[d>>2]=a;h[e>>3]=+O(+(+h[(c[d>>2]|0)+16>>3]*+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+24>>3]*+h[(c[d>>2]|0)+24>>3]));h[f>>3]=+h[e>>3]*+h[(c[d>>2]|0)+40>>3];h[g>>3]=+h[e>>3]*+h[(c[d>>2]|0)+48>>3];h[(c[d>>2]|0)+104>>3]=+h[c[d>>2]>>3]-+h[f>>3];h[(c[d>>2]|0)+112>>3]=+h[(c[d>>2]|0)+8>>3]-+h[g>>3];h[(c[d>>2]|0)+120>>3]=+h[c[d>>2]>>3]+ +h[f>>3];h[(c[d>>2]|0)+128>>3]=+h[(c[d>>2]|0)+8>>3]+ +h[g>>3];i=b;return}function tT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0;b=i;i=i+48|0;d=b+32|0;e=b+24|0;f=b+16|0;g=b+8|0;j=b;c[d>>2]=a;h[e>>3]=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[(c[d>>2]|0)+56>>3]));h[f>>3]=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[(c[d>>2]|0)+56>>3]));h[g>>3]=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[(c[d>>2]|0)+64>>3]));h[j>>3]=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[(c[d>>2]|0)+64>>3]));h[(c[d>>2]|0)+72>>3]=+h[c[d>>2]>>3]+ +h[e>>3]*+h[(c[d>>2]|0)+40>>3]-+h[f>>3]*+h[(c[d>>2]|0)+48>>3];h[(c[d>>2]|0)+80>>3]=+h[(c[d>>2]|0)+8>>3]+ +h[e>>3]*+h[(c[d>>2]|0)+48>>3]+ +h[f>>3]*+h[(c[d>>2]|0)+40>>3];h[(c[d>>2]|0)+88>>3]=+h[c[d>>2]>>3]+ +h[g>>3]*+h[(c[d>>2]|0)+40>>3]-+h[j>>3]*+h[(c[d>>2]|0)+48>>3];h[(c[d>>2]|0)+96>>3]=+h[(c[d>>2]|0)+8>>3]+ +h[g>>3]*+h[(c[d>>2]|0)+48>>3]+ +h[j>>3]*+h[(c[d>>2]|0)+40>>3];i=b;return}function uT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0,z=0;b=i;i=i+64|0;d=b+56|0;e=b+48|0;f=b+40|0;g=b+32|0;j=b+24|0;k=b+16|0;l=b+8|0;m=b;c[d>>2]=a;h[e>>3]=+h[(c[d>>2]|0)+24>>3]/+h[(c[d>>2]|0)+16>>3];a=+(N(~~+h[(c[d>>2]|0)+48>>3]|0)|0)<.1;n=c[d>>2]|0;do if(a){h[l>>3]=+h[n+48>>3]/+h[(c[d>>2]|0)+40>>3];o=-+V(+(+h[l>>3]*+h[e>>3]));if(+h[(c[d>>2]|0)+40>>3]<0.0){h[f>>3]=o;h[g>>3]=+h[f>>3]+3.141592653589793;h[j>>3]=1.5707963267948966-+V(+(+h[l>>3]/+h[e>>3]));h[k>>3]=+h[j>>3]+3.141592653589793;break}else{h[g>>3]=o;h[f>>3]=+h[g>>3]-3.141592653589793;h[k>>3]=1.5707963267948966-+V(+(+h[l>>3]/+h[e>>3]));h[j>>3]=+h[k>>3]-3.141592653589793;break}}else{h[m>>3]=+h[n+40>>3]/+h[(c[d>>2]|0)+48>>3];o=+V(+(+h[m>>3]/+h[e>>3]))+1.5707963267948966;if(+h[(c[d>>2]|0)+48>>3]<0.0){h[g>>3]=o;h[f>>3]=+h[g>>3]-3.141592653589793;h[j>>3]=+V(+(+h[m>>3]*+h[e>>3]));h[k>>3]=+h[j>>3]+3.141592653589793;break}else{h[f>>3]=o;h[g>>3]=+h[f>>3]+3.141592653589793;h[k>>3]=+V(+(+h[m>>3]*+h[e>>3]));h[j>>3]=+h[k>>3]-3.141592653589793;break}}while(0);o=+M(+((+h[f>>3]-+h[(c[d>>2]|0)+56>>3])/6.283185307179586))*6.283185307179586;h[f>>3]=+h[f>>3]-o;o=+M(+((+h[j>>3]-+h[(c[d>>2]|0)+56>>3])/6.283185307179586))*6.283185307179586;h[j>>3]=+h[j>>3]-o;o=+M(+((+h[g>>3]-+h[(c[d>>2]|0)+56>>3])/6.283185307179586))*6.283185307179586;h[g>>3]=+h[g>>3]-o;o=+M(+((+h[k>>3]-+h[(c[d>>2]|0)+56>>3])/6.283185307179586))*6.283185307179586;h[k>>3]=+h[k>>3]-o;e=c[d>>2]|0;do if(!(+h[f>>3]<=+h[(c[d>>2]|0)+64>>3])){m=c[d>>2]|0;if(+h[e+72>>3]<+h[(c[d>>2]|0)+88>>3]){p=+h[m+72>>3];break}else{p=+h[m+88>>3];break}}else{o=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[f>>3]));q=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[f>>3]));p=+h[e>>3]+o*+h[(c[d>>2]|0)+40>>3]-q*+h[(c[d>>2]|0)+48>>3]}while(0);h[(c[d>>2]|0)+136>>3]=p;e=c[d>>2]|0;do if(!(+h[j>>3]<=+h[(c[d>>2]|0)+64>>3])){f=c[d>>2]|0;if(+h[e+80>>3]<+h[(c[d>>2]|0)+96>>3]){r=+h[f+80>>3];break}else{r=+h[f+96>>3];break}}else{p=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[j>>3]));q=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[j>>3]));r=+h[e+8>>3]+p*+h[(c[d>>2]|0)+48>>3]+q*+h[(c[d>>2]|0)+40>>3]}while(0);h[(c[d>>2]|0)+144>>3]=r;e=c[d>>2]|0;do if(!(+h[g>>3]<=+h[(c[d>>2]|0)+64>>3])){j=c[d>>2]|0;if(+h[e+72>>3]>+h[(c[d>>2]|0)+88>>3]){s=+h[j+72>>3];break}else{s=+h[j+88>>3];break}}else{r=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[g>>3]));q=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[g>>3]));s=+h[e>>3]+r*+h[(c[d>>2]|0)+40>>3]-q*+h[(c[d>>2]|0)+48>>3]}while(0);h[(c[d>>2]|0)+152>>3]=s-+h[(c[d>>2]|0)+136>>3];e=c[d>>2]|0;if(+h[k>>3]<=+h[(c[d>>2]|0)+64>>3]){s=+h[(c[d>>2]|0)+16>>3]*+Q(+(+h[k>>3]));q=+h[(c[d>>2]|0)+24>>3]*+R(+(+h[k>>3]));t=+h[e+8>>3]+s*+h[(c[d>>2]|0)+48>>3]+q*+h[(c[d>>2]|0)+40>>3];u=c[d>>2]|0;v=u+144|0;w=+h[v>>3];x=t-w;y=c[d>>2]|0;z=y+160|0;h[z>>3]=x;i=b;return}k=c[d>>2]|0;if(+h[e+80>>3]>+h[(c[d>>2]|0)+96>>3]){t=+h[k+80>>3];u=c[d>>2]|0;v=u+144|0;w=+h[v>>3];x=t-w;y=c[d>>2]|0;z=y+160|0;h[z>>3]=x;i=b;return}else{t=+h[k+96>>3];u=c[d>>2]|0;v=u+144|0;w=+h[v>>3];x=t-w;y=c[d>>2]|0;z=y+160|0;h[z>>3]=x;i=b;return}}function vT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+112|0;g=f+100|0;j=f+96|0;k=f+92|0;l=f+16|0;m=f;n=f+88|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;IT(c[g>>2]|0);e=(c[k>>2]|0)+56|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];switch(a[(c[k>>2]|0)+80>>0]|0){case 116:{h[m+8>>3]=+h[(c[k>>2]|0)+56+8>>3]+(+h[(c[k>>2]|0)+40+8>>3]-+JT(c[j>>2]|0))/2.0-1.0;break}case 98:{h[m+8>>3]=+h[(c[k>>2]|0)+56+8>>3]-(+h[(c[k>>2]|0)+40+8>>3]-+JT(c[j>>2]|0))/2.0-1.0;break}default:{}}c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];c[l+16+4>>2]=c[(c[k>>2]|0)+8>>2];c[l+16>>2]=c[(c[k>>2]|0)+4>>2];h[l+16+16>>3]=+h[(c[k>>2]|0)+16>>3];c[l+56>>2]=yA(c[(c[(c[g>>2]|0)+16>>2]|0)+8>>2]|0,174900)|0;c[l+60>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+212>>2];a[l+64>>0]=0;if(!((c[l+56>>2]|0)!=0?(a[c[l+56>>2]>>0]|0)!=0:0))c[l+56>>2]=174911;if((a[(c[j>>2]|0)+4>>0]|0)==1){c[n>>2]=c[c[j>>2]>>2];rR(c[g>>2]|0,c[(c[c[g>>2]>>2]|0)+336>>2]|0);k=c[g>>2]|0;if(c[(c[n>>2]|0)+24>>2]|0)oR(k,c[(c[n>>2]|0)+24>>2]|0);else oR(k,174917);KT(c[g>>2]|0,c[n>>2]|0,l)}else LT(c[g>>2]|0,c[c[j>>2]>>2]|0,l);if(!(a[l+64>>0]|0)){o=c[g>>2]|0;MT(o);i=f;return}O4(c[l+60>>2]|0);o=c[g>>2]|0;MT(o);i=f;return}function wT(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);O4(c[(c[d>>2]|0)+4>>2]|0);O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[(c[d>>2]|0)+12>>2]|0);O4(c[(c[d>>2]|0)+20>>2]|0);O4(c[(c[d>>2]|0)+24>>2]|0);i=b;return}function xT(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;if(!(c[e>>2]|0)){i=d;return}c[f>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(b[(c[e>>2]|0)+4>>1]|0))break;c[g>>2]=c[c[f>>2]>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[(c[f>>2]|0)+4>>1]|0))break;if(c[c[g>>2]>>2]|0)O4(c[c[g>>2]>>2]|0);if((c[(c[g>>2]|0)+8>>2]|0)!=0?(c[(c[g>>2]|0)+12>>2]|0)!=0:0)Bb[c[(c[g>>2]|0)+12>>2]&127](c[(c[g>>2]|0)+8>>2]|0);c[g>>2]=(c[g>>2]|0)+56;c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+24;c[h>>2]=(c[h>>2]|0)+1}if(c[c[e>>2]>>2]|0)O4(c[c[e>>2]>>2]|0);O4(c[e>>2]|0);i=d;return}function yT(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[d>>2]|0)+32>>2]|0);O4(c[d>>2]|0);i=b;return}function zT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[f>>2]|0;do if((a[(c[f>>2]|0)+4>>0]|0)!=1){b=c[f>>2]|0;if((a[d+4>>0]|0)==3){yT(c[b>>2]|0);break}else{xT(c[b>>2]|0);break}}else NT(c[d>>2]|0);while(0);if(!(c[g>>2]|0)){i=e;return}O4(c[f>>2]|0);i=e;return}function AT(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[n>>2]=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]|0)+72>>2];c[o>>2]=0;if((a[(c[n>>2]|0)+4>>0]|0)==2){c[h>>2]=0;p=c[h>>2]|0;i=g;return p|0}c[m>>2]=OT(c[c[n>>2]>>2]|0,c[k>>2]|0)|0;if(c[m>>2]|0){c[o>>2]=(c[m>>2]|0)+48;c[c[l>>2]>>2]=d[(c[m>>2]|0)+35>>0]}c[h>>2]=c[o>>2];p=c[h>>2]|0;i=g;return p|0}function BT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=i;i=i+32|0;c[g+16>>2]=a;c[g+12>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;i=g;return 0}function CT(b){b=b|0;var d=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0;d=i;i=i+32|0;f=d+28|0;g=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[f>>2]=b;b=bK((c[(c[f>>2]|0)+100>>2]|0)+1<<2)|0;c[(c[f>>2]|0)+92>>2]=b;b=bK((c[(c[f>>2]|0)+104>>2]|0)+1<<2)|0;c[(c[f>>2]|0)+96>>2]=b;c[j>>2]=c[(c[f>>2]|0)+80+4>>2];while(1){if(!(c[c[j>>2]>>2]|0))break;c[g>>2]=c[c[j>>2]>>2];p=+h[(c[g>>2]|0)+48+16+8>>3];if((e[(c[g>>2]|0)+82>>1]|0)==1)c[l>>2]=~~p;else{q=p-+(_((a[(c[f>>2]|0)+32>>0]|0)-1|0,(e[(c[g>>2]|0)+82>>1]|0)-1|0)|0);c[l>>2]=~~(q/+(e[(c[g>>2]|0)+82>>1]|0));c[l>>2]=(c[l>>2]|0)>1?c[l>>2]|0:1}q=+h[(c[g>>2]|0)+48+16>>3];if((e[(c[g>>2]|0)+80>>1]|0)==1)c[k>>2]=~~q;else{p=q-+(_((a[(c[f>>2]|0)+32>>0]|0)-1|0,(e[(c[g>>2]|0)+80>>1]|0)-1|0)|0);c[k>>2]=~~(p/+(e[(c[g>>2]|0)+80>>1]|0));c[k>>2]=(c[k>>2]|0)>1?c[k>>2]|0:1}c[m>>2]=e[(c[g>>2]|0)+86>>1];while(1){if((c[m>>2]|0)>=((e[(c[g>>2]|0)+86>>1]|0)+(e[(c[g>>2]|0)+82>>1]|0)|0))break;c[o>>2]=c[(c[(c[f>>2]|0)+92>>2]|0)+(c[m>>2]<<2)>>2];c[(c[(c[f>>2]|0)+92>>2]|0)+(c[m>>2]<<2)>>2]=(c[o>>2]|0)>(c[l>>2]|0)?c[o>>2]|0:c[l>>2]|0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=e[(c[g>>2]|0)+84>>1];while(1){if((c[m>>2]|0)>=((e[(c[g>>2]|0)+84>>1]|0)+(e[(c[g>>2]|0)+80>>1]|0)|0))break;c[n>>2]=c[(c[(c[f>>2]|0)+96>>2]|0)+(c[m>>2]<<2)>>2];c[(c[(c[f>>2]|0)+96>>2]|0)+(c[m>>2]<<2)>>2]=(c[n>>2]|0)>(c[k>>2]|0)?c[n>>2]|0:c[k>>2]|0;c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+4}i=d;return}function DT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;e=b+8|0;f=b+4|0;c[f>>2]=a;a=c[f>>2]|0;if((c[f>>2]|0)>>>0<21){c[e>>2]=c[91416+(a<<2)>>2];g=c[e>>2]|0;i=b;return g|0}else{c[d>>2]=a;k3(174923,175023,d)|0;c[e>>2]=174923;g=c[e>>2]|0;i=b;return g|0}return 0}function ET(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;g=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>(c[(c[g>>2]|0)+104>>2]|0))break;d=c[k>>2]|0;c[n>>2]=fC(d,DT(c[q>>2]|0)|0,1)|0;MC(c[n>>2]|0,175026,304,1)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+172+4>>2]=0;d=bK((c[(c[g>>2]|0)+100>>2]|0)+1<<2)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+172>>2]=d;c[(c[(c[n>>2]|0)+8>>2]|0)+180+4>>2]=0;d=bK((c[(c[g>>2]|0)+100>>2]|0)+1<<2)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+180>>2]=d;d=c[n>>2]|0;if(c[o>>2]|0){c[(c[(c[o>>2]|0)+8>>2]|0)+164>>2]=d;c[o>>2]=c[n>>2]}else{c[(c[(c[k>>2]|0)+8>>2]|0)+192>>2]=d;c[o>>2]=d}c[q>>2]=(c[q>>2]|0)+1}c[o>>2]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>(c[(c[g>>2]|0)+100>>2]|0))break;d=c[j>>2]|0;c[n>>2]=fC(d,DT(c[q>>2]|0)|0,1)|0;MC(c[n>>2]|0,175026,304,1)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+172+4>>2]=0;d=bK((c[(c[g>>2]|0)+104>>2]|0)+1<<2)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+172>>2]=d;c[(c[(c[n>>2]|0)+8>>2]|0)+180+4>>2]=0;d=bK((c[(c[g>>2]|0)+104>>2]|0)+1<<2)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+180>>2]=d;d=c[n>>2]|0;if(c[o>>2]|0){c[(c[(c[o>>2]|0)+8>>2]|0)+164>>2]=d;c[o>>2]=c[n>>2]}else{c[(c[(c[j>>2]|0)+8>>2]|0)+192>>2]=d;c[o>>2]=d}c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=c[(c[g>>2]|0)+80+4>>2];while(1){if(!(c[c[m>>2]>>2]|0))break;c[l>>2]=c[c[m>>2]>>2];g=c[k>>2]|0;c[n>>2]=fC(g,DT(e[(c[l>>2]|0)+84>>1]|0)|0,0)|0;g=c[k>>2]|0;c[p>>2]=fC(g,DT((e[(c[l>>2]|0)+84>>1]|0)+(e[(c[l>>2]|0)+80>>1]|0)|0)|0,0)|0;PT(c[k>>2]|0,c[n>>2]|0,c[p>>2]|0,~~+h[(c[l>>2]|0)+48+16>>3]);g=c[j>>2]|0;c[n>>2]=fC(g,DT(e[(c[l>>2]|0)+86>>1]|0)|0,0)|0;g=c[j>>2]|0;c[p>>2]=fC(g,DT((e[(c[l>>2]|0)+86>>1]|0)+(e[(c[l>>2]|0)+82>>1]|0)|0)|0,0)|0;PT(c[j>>2]|0,c[n>>2]|0,c[p>>2]|0,~~+h[(c[l>>2]|0)+48+16+8>>3]);c[m>>2]=(c[m>>2]|0)+4}QT(c[k>>2]|0);QT(c[j>>2]|0);i=f;return}function FT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+192>>2];c[j>>2]=0;c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2];while(1){if(!(c[k>>2]|0))break;c[(c[(c[f>>2]|0)+92>>2]|0)+(c[j>>2]<<2)>>2]=(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)-(c[l>>2]|0);c[l>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];c[j>>2]=(c[j>>2]|0)+1;c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]}c[l>>2]=0;c[k>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+192>>2];c[j>>2]=0;c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2];while(1){if(!(c[k>>2]|0))break;c[(c[(c[f>>2]|0)+96>>2]|0)+(c[j>>2]<<2)>>2]=(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)-(c[l>>2]|0);c[l>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];c[j>>2]=(c[j>>2]|0)+1;c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]}i=e;return}function GT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[h>>2]=c[13066];if((c[(c[e>>2]|0)+100>>2]|0)!=1?(c[(c[e>>2]|0)+104>>2]|0)!=1:0){a=bK((c[(c[e>>2]|0)+100>>2]|0)+1<<2)|0;c[(c[e>>2]|0)+92>>2]=a;a=bK((c[(c[e>>2]|0)+104>>2]|0)+1<<2)|0;c[(c[e>>2]|0)+96>>2]=a;c[d>>2]=c[h>>2];c[f>>2]=gB(175039,d,0)|0;c[d>>2]=c[h>>2];c[g>>2]=gB(175044,d,0)|0;MC(c[f>>2]|0,175049,280,1)|0;MC(c[g>>2]|0,175049,280,1)|0;ET(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0);gK(c[f>>2]|0,2,2147483647)|0;gK(c[g>>2]|0,2,2147483647)|0;FT(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0);RT(c[f>>2]|0,c[g>>2]|0);i=b;return}CT(c[e>>2]|0);i=b;return}function HT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+400|0;f=e+184|0;g=e+256|0;j=e+252|0;k=e+248|0;l=e+244|0;m=e+176|0;n=e+168|0;o=e+136|0;p=e+240|0;q=e+236|0;r=e+64|0;s=e+232|0;t=e+216|0;u=e+264|0;v=e+32|0;w=e;c[j>>2]=b;c[k>>2]=d;c[r+48>>2]=c[j>>2];switch(BC(c[j>>2]|0)|0){case 0:{c[r+52>>2]=c[(c[j>>2]|0)+48>>2];break}case 1:{c[r+52>>2]=qC(c[j>>2]|0)|0;break}case 2:{d=c[j>>2]|0;c[r+52>>2]=qC(c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0;break}default:{}}c[p>>2]=c[(c[r+52>>2]|0)+48>>2];h[r+16+16>>3]=+h[(c[k>>2]|0)+16>>3];c[r+16>>2]=c[(c[k>>2]|0)+4>>2];c[r+16+4>>2]=c[(c[k>>2]|0)+8>>2];d=r+16+24|0;c[d>>2]=c[d>>2]&-128;c[q>>2]=WV(c[c[k>>2]>>2]|0,l,r)|0;if(!(c[q>>2]|0)){dA(t,128,u);a[(c[k>>2]|0)+82>>0]=0;u=M3(ST(c[j>>2]|0,t)|0)|0;c[c[k>>2]>>2]=u;u=c[c[k>>2]>>2]|0;if((c[(c[k>>2]|0)+12>>2]|0)==1)c[s>>2]=KO(u)|0;else c[s>>2]=JO(u,c[r+52>>2]|0)|0;O4(c[c[k>>2]>>2]|0);c[c[k>>2]>>2]=c[s>>2];RJ(c[(c[(c[p>>2]|0)+8>>2]|0)+144>>2]|0,c[k>>2]|0);hA(t);c[g>>2]=c[l>>2];x=c[g>>2]|0;i=e;return x|0}if((a[(c[q>>2]|0)+4>>0]|0)==1){if((c[(c[c[q>>2]>>2]|0)+24>>2]|0)==0?(TT(c[j>>2]|0)|0)!=0:0){t=M3(TT(c[j>>2]|0)|0)|0;c[(c[c[q>>2]>>2]|0)+24>>2]=t}t=UT(c[p>>2]|0,c[c[q>>2]>>2]|0,0,r)|0;c[l>>2]=c[l>>2]|t;h[m>>3]=+h[(c[c[q>>2]>>2]|0)+48+16>>3]/2.0;h[n>>3]=+h[(c[c[q>>2]>>2]|0)+48+16+8>>3]/2.0;VT(v,-+h[m>>3],-+h[n>>3],+h[m>>3],+h[n>>3]);c[o>>2]=c[v>>2];c[o+4>>2]=c[v+4>>2];c[o+8>>2]=c[v+8>>2];c[o+12>>2]=c[v+12>>2];c[o+16>>2]=c[v+16>>2];c[o+20>>2]=c[v+20>>2];c[o+24>>2]=c[v+24>>2];c[o+28>>2]=c[v+28>>2];v=c[c[q>>2]>>2]|0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[f+16>>2]=c[o+16>>2];c[f+20>>2]=c[o+20>>2];c[f+24>>2]=c[o+24>>2];c[f+28>>2]=c[o+28>>2];WT(v,f,15);h[(c[k>>2]|0)+24>>3]=+h[o+16>>3]-+h[o>>3];h[(c[k>>2]|0)+24+8>>3]=+h[o+16+8>>3]-+h[o+8>>3]}else{f=XT(c[(c[(c[p>>2]|0)+8>>2]|0)+144>>2]|0,c[c[q>>2]>>2]|0,r)|0;c[l>>2]=c[l>>2]|f;h[m>>3]=+h[(c[c[q>>2]>>2]|0)+8+16>>3]/2.0;h[n>>3]=+h[(c[c[q>>2]>>2]|0)+8+16+8>>3]/2.0;VT(w,-+h[m>>3],-+h[n>>3],+h[m>>3],+h[n>>3]);c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[o+16>>2]=c[w+16>>2];c[o+20>>2]=c[w+20>>2];c[o+24>>2]=c[w+24>>2];c[o+28>>2]=c[w+28>>2];w=(c[c[q>>2]>>2]|0)+8|0;c[w>>2]=c[o>>2];c[w+4>>2]=c[o+4>>2];c[w+8>>2]=c[o+8>>2];c[w+12>>2]=c[o+12>>2];c[w+16>>2]=c[o+16>>2];c[w+20>>2]=c[o+20>>2];c[w+24>>2]=c[o+24>>2];c[w+28>>2]=c[o+28>>2];h[(c[k>>2]|0)+24>>3]=+h[o+16>>3]-+h[o>>3];h[(c[k>>2]|0)+24+8>>3]=+h[o+16+8>>3]-+h[o+8>>3]}c[(c[k>>2]|0)+72>>2]=c[q>>2];if((a[(c[q>>2]|0)+4>>0]|0)==1){O4(c[c[k>>2]>>2]|0);q=M3(179620)|0;c[c[k>>2]>>2]=q}c[g>>2]=c[l>>2];x=c[g>>2]|0;i=e;return x|0}function IT(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=wH(c[e>>2]|0)|0;c[g>>2]=c[c[f>>2]>>2];c[(c[f>>2]|0)+4>>2]=c[(c[g>>2]|0)+4>>2];c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];switch(c[(c[f>>2]|0)+4>>2]|0){case 2:{c[(c[f>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];break}case 0:{c[(c[f>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];break}case 1:{c[(c[f>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];break}case 3:{c[(c[f>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];break}default:{}}c[(c[f>>2]|0)+208>>2]=c[(c[g>>2]|0)+208>>2];c[(c[f>>2]|0)+228>>2]=c[(c[g>>2]|0)+228>>2];c[(c[f>>2]|0)+244>>2]=c[(c[g>>2]|0)+244>>2];e=(c[f>>2]|0)+260|0;b[e>>1]=b[e>>1]&-2|(b[(c[g>>2]|0)+260>>1]<<15&65535)<<16>>16>>15&1;i=d;return}function JT(b){b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+16|0;e=d+8|0;f=d;c[e>>2]=b;h[f>>3]=0.0;switch(a[(c[e>>2]|0)+4>>0]|0){case 1:{h[f>>3]=+h[(c[c[e>>2]>>2]|0)+48+16+8>>3]-+h[(c[c[e>>2]>>2]|0)+48+8>>3];g=+h[f>>3];i=d;return +g}case 3:{h[f>>3]=+h[(c[c[e>>2]>>2]|0)+16+8>>3]-+h[(c[c[e>>2]>>2]|0)+8>>3];g=+h[f>>3];i=d;return +g}case 2:{h[f>>3]=+h[(c[c[e>>2]>>2]|0)+8+16+8>>3]-+h[(c[c[e>>2]>>2]|0)+8+8>>3];g=+h[f>>3];i=d;return +g}default:{g=+h[f>>3];i=d;return +g}}return +(0.0)}function KT(b,f,g){b=b|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;j=i;i=i+224|0;k=j+112|0;l=j+220|0;m=j+216|0;n=j+212|0;o=j+80|0;p=j+64|0;q=j+208|0;r=j+204|0;s=j+168|0;t=j+164|0;u=j+160|0;v=j;w=j+152|0;x=j+144|0;c[l>>2]=b;c[m>>2]=f;c[n>>2]=g;g=(c[m>>2]|0)+48|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];g=c[n>>2]|0;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];c[q>>2]=c[(c[m>>2]|0)+80+4>>2];if(c[c[m>>2]>>2]|0)y=1;else y=(c[(c[m>>2]|0)+8>>2]|0)!=0;c[u>>2]=y&1;if(c[(c[m>>2]|0)+108>>2]|0)$T(c[n>>2]|0,c[(c[m>>2]|0)+108>>2]|0,44024);h[o>>3]=+h[o>>3]+ +h[p>>3];y=o+16|0;h[y>>3]=+h[y>>3]+ +h[p>>3];y=o+8|0;h[y>>3]=+h[y>>3]+ +h[p+8>>3];y=o+16+8|0;h[y>>3]=+h[y>>3]+ +h[p+8>>3];if((c[u>>2]|0)!=0?(c[(c[l>>2]|0)+152>>2]&4|0)==0:0){p=c[l>>2]|0;y=c[n>>2]|0;g=c[m>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];c[t>>2]=iU(p,y,g,k,s,1)|0}else c[t>>2]=0;if(!(e[(c[m>>2]|0)+42>>1]&32)){if(c[(c[m>>2]|0)+20>>2]|0){c[x>>2]=jU(c[l>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+28>>2]|0,e[(c[m>>2]|0)+42>>1]|0,w)|0;g=c[l>>2]|0;if(e[(c[m>>2]|0)+42>>1]&4){y=d[(c[m>>2]|0)+33>>0]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];p=kU(v,k,y)|0;cM(g,p,4,4,c[x>>2]|0)}else{p=c[x>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];uR(g,k,p)}O4(c[w>>2]|0)}while(1){if(!(c[c[q>>2]>>2]|0))break;lU(c[l>>2]|0,c[c[q>>2]>>2]|0,c[n>>2]|0);c[q>>2]=(c[q>>2]|0)+4}c[q>>2]=c[(c[m>>2]|0)+80+4>>2];zR(c[l>>2]|0,1.0);while(1){w=c[q>>2]|0;c[q>>2]=w+4;p=c[w>>2]|0;c[r>>2]=p;if(!p)break;if(!(a[(c[r>>2]|0)+100>>0]|0))continue;mU(c[l>>2]|0,c[r>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+24>>2]|0,c[c[q>>2]>>2]|0)}if(a[(c[m>>2]|0)+33>>0]|0){q=c[l>>2]|0;r=c[m>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];nU(q,r,k)}}if(c[t>>2]|0)oU(c[l>>2]|0,s,1);if(((c[u>>2]|0)!=0?(c[(c[l>>2]|0)+152>>2]&4|0)!=0:0)?(u=c[l>>2]|0,t=c[n>>2]|0,r=c[m>>2]|0,c[k>>2]=c[o>>2],c[k+4>>2]=c[o+4>>2],c[k+8>>2]=c[o+8>>2],c[k+12>>2]=c[o+12>>2],c[k+16>>2]=c[o+16>>2],c[k+20>>2]=c[o+20>>2],c[k+24>>2]=c[o+24>>2],c[k+28>>2]=c[o+28>>2],(iU(u,t,r,k,s,0)|0)!=0):0)oU(c[l>>2]|0,s,0);if(!(c[(c[m>>2]|0)+108>>2]|0)){i=j;return}bU(c[n>>2]|0,44024);i=j;return}function LT(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;g=i;i=i+128|0;j=g+72|0;k=g+40|0;l=g+24|0;m=g+112|0;n=g+108|0;o=g+104|0;p=g+16|0;q=g;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if((b[(c[n>>2]|0)+4>>1]|0)<1){i=g;return}h[p>>3]=(+h[(c[n>>2]|0)+8+16>>3]-+h[(c[n>>2]|0)+8>>3])/2.0;h[q>>3]=+h[c[o>>2]>>3]+(+h[(c[n>>2]|0)+8+16>>3]+ +h[(c[n>>2]|0)+8>>3])/2.0;h[q+8>>3]=+h[(c[o>>2]|0)+8>>3]+(+h[(c[n>>2]|0)+8+16+8>>3]+ +h[(c[n>>2]|0)+8+8>>3])/2.0;f=c[m>>2]|0;m=b[(c[n>>2]|0)+4>>1]|0;e=c[c[n>>2]>>2]|0;r=+h[p>>3];p=(c[o>>2]|0)+16|0;o=(c[n>>2]|0)+8|0;d=a[(c[n>>2]|0)+6>>0]|0;c[l>>2]=c[q>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[l+12>>2]=c[q+12>>2];c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];c[j+16>>2]=c[o+16>>2];c[j+20>>2]=c[o+20>>2];c[j+24>>2]=c[o+24>>2];c[j+28>>2]=c[o+28>>2];hU(f,m,e,l,r,k,j,d);i=g;return}function MT(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+16>>2];c[(c[e>>2]|0)+208>>2]=0;c[(c[e>>2]|0)+228>>2]=0;c[(c[e>>2]|0)+244>>2]=0;c[(c[e>>2]|0)+212>>2]=0;xH(c[d>>2]|0);i=b;return}function NT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=(c[d>>2]|0)+80|0;if((c[(c[d>>2]|0)+100>>2]|0)==-1){Jz(c[a+4>>2]|0)|0;f=c[d>>2]|0;wT(f);g=c[d>>2]|0;O4(g);i=b;return}c[e>>2]=c[a+4>>2];O4(c[(c[d>>2]|0)+92>>2]|0);O4(c[(c[d>>2]|0)+96>>2]|0);while(1){if(!(c[c[e>>2]>>2]|0))break;gU(c[c[e>>2]>>2]|0);c[e>>2]=(c[e>>2]|0)+4}O4(c[(c[d>>2]|0)+80+4>>2]|0);f=c[d>>2]|0;wT(f);g=c[d>>2]|0;O4(g);i=b;return}function OT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+4>>2]|0)!=0?(F3(c[(c[e>>2]|0)+4>>2]|0,c[f>>2]|0)|0)==0:0){c[g>>2]=c[e>>2];k=c[g>>2]|0;i=d;return k|0}c[g>>2]=0;c[h>>2]=c[(c[e>>2]|0)+80+4>>2];while(1){e=c[h>>2]|0;c[h>>2]=e+4;b=c[e>>2]|0;c[j>>2]=b;if(!b){l=7;break}b=fU(c[j>>2]|0,c[f>>2]|0)|0;c[g>>2]=b;if(b){l=7;break}}if((l|0)==7){k=c[g>>2]|0;i=d;return k|0}return 0}function PT(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[j>>2]=a;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[n>>2]=VA(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0)|0;if(c[n>>2]|0){if((e[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0|0)>(c[m>>2]|0))o=e[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0;else o=c[m>>2]|0;b[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]=o;i=h;return}c[n>>2]=VA(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,0,1)|0;MC(c[n>>2]|0,175319,176,1)|0;b[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]=c[m>>2];m=(c[(c[k>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0)p=eK(c[m>>2]|0,(c[(c[(c[k>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else p=cK((c[m+4>>2]|0)+2<<2)|0;c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]=p;p=c[n>>2]|0;m=(c[(c[k>>2]|0)+8>>2]|0)+180+4|0;j=c[m>>2]|0;c[m>>2]=j+1;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0)+(j<<2)>>2]=p;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;k=(c[(c[l>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0)q=eK(c[k>>2]|0,(c[(c[(c[l>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0;else q=cK((c[k+4>>2]|0)+2<<2)|0;c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]=q;q=c[n>>2]|0;n=(c[(c[l>>2]|0)+8>>2]|0)+172+4|0;k=c[n>>2]|0;c[n>>2]=k+1;c[(c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0)+(k<<2)>>2]=q;c[(c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[l>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0;i=h;return}function QT(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];c[g>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2];while(1){if(!(c[g>>2]|0))break;if(!(VA(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,0,0)|0)){c[h>>2]=VA(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,0,1)|0;MC(c[h>>2]|0,175319,176,1)|0;b[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]=0;a=(c[(c[f>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)j=eK(c[a>>2]|0,(c[(c[(c[f>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else j=cK((c[a+4>>2]|0)+2<<2)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]=j;a=c[h>>2]|0;k=(c[(c[f>>2]|0)+8>>2]|0)+180+4|0;l=c[k>>2]|0;c[k>>2]=l+1;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)+(l<<2)>>2]=a;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;a=(c[(c[g>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)m=eK(c[a>>2]|0,(c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0;else m=cK((c[a+4>>2]|0)+2<<2)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=m;a=c[h>>2]|0;l=(c[(c[g>>2]|0)+8>>2]|0)+172+4|0;k=c[l>>2]|0;c[l>>2]=k+1;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(k<<2)>>2]=a;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0}c[f>>2]=c[g>>2];c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}i=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;if(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0);if(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0);c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}jB(c[e>>2]|0)|0;jB(c[f>>2]|0)|0;i=d;return}function ST(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;a:do switch(BC(c[f>>2]|0)|0){case 0:{gA(c[g>>2]|0,wB(c[f>>2]|0)|0)|0;break}case 1:{gA(c[g>>2]|0,wB(c[f>>2]|0)|0)|0;break}case 2:{c[h>>2]=c[f>>2];d=c[h>>2]|0;gA(c[g>>2]|0,wB(c[((c[c[h>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)|0)|0;d=c[h>>2]|0;gA(c[g>>2]|0,wB(c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0)|0;d=c[h>>2]|0;b=(nB(qC(c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0)|0)!=0;d=c[g>>2]|0;if(b){gA(d,175316)|0;break a}else{gA(d,178535)|0;break a}break}default:{}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>>0){j=c[g>>2]|0;k=j+4|0;l=c[k>>2]|0;m=l+1|0;c[k>>2]=m;a[l>>0]=0;n=c[g>>2]|0;o=c[n>>2]|0;p=c[g>>2]|0;q=p+4|0;c[q>>2]=o;i=e;return o|0}eA(c[g>>2]|0,1)|0;j=c[g>>2]|0;k=j+4|0;l=c[k>>2]|0;m=l+1|0;c[k>>2]=m;a[l>>0]=0;n=c[g>>2]|0;o=c[n>>2]|0;p=c[g>>2]|0;q=p+4|0;c[q>>2]=o;i=e;return o|0}function TT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;b=yA(c[f>>2]|0,175307)|0;c[g>>2]=b;if((b|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}b=yA(c[f>>2]|0,178832)|0;c[g>>2]=b;if((b|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function UT(b,f,g,j){b=b|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;k=i;i=i+48|0;l=k+8|0;m=k;n=k+40|0;o=k+36|0;p=k+32|0;q=k+28|0;r=k+24|0;s=k+20|0;t=k+16|0;u=k+12|0;c[n>>2]=b;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;c[u>>2]=0;if(c[(c[o>>2]|0)+108>>2]|0)$T(c[q>>2]|0,c[(c[o>>2]|0)+108>>2]|0,43992);c[(c[o>>2]|0)+80>>2]=c[p>>2];c[u>>2]=aU(c[n>>2]|0,c[o>>2]|0,c[q>>2]|0)|0;if(!(e[(c[o>>2]|0)+36>>1]&128))a[(c[o>>2]|0)+32>>0]=2;if(!(e[(c[o>>2]|0)+36>>1]&32))a[(c[o>>2]|0)+33>>0]=1;GT(c[o>>2]|0);n=_((c[(c[o>>2]|0)+104>>2]|0)+1|0,a[(c[o>>2]|0)+32>>0]|0)|0;c[s>>2]=n+(d[(c[o>>2]|0)+33>>0]<<1);n=_((c[(c[o>>2]|0)+100>>2]|0)+1|0,a[(c[o>>2]|0)+32>>0]|0)|0;c[t>>2]=n+(d[(c[o>>2]|0)+33>>0]<<1);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[o>>2]|0)+104>>2]|0))break;c[s>>2]=(c[s>>2]|0)+(c[(c[(c[o>>2]|0)+96>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[o>>2]|0)+100>>2]|0))break;c[t>>2]=(c[t>>2]|0)+(c[(c[(c[o>>2]|0)+92>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}do if(e[(c[o>>2]|0)+36>>1]&1){if((e[(c[o>>2]|0)+38>>1]|0)!=0?(e[(c[o>>2]|0)+40>>1]|0)!=0:0){if(!((e[(c[o>>2]|0)+38>>1]|0)>=(c[s>>2]|0)?(e[(c[o>>2]|0)+40>>1]|0)>=(c[t>>2]|0):0)){$z(0,175107,m)|0;c[u>>2]=1}c[t>>2]=0;c[s>>2]=0;break}$z(0,175141,l)|0;c[u>>2]=1}while(0);if((c[s>>2]|0)>(e[(c[o>>2]|0)+38>>1]|0))v=c[s>>2]|0;else v=e[(c[o>>2]|0)+38>>1]|0;h[(c[o>>2]|0)+48+16>>3]=+(v|0);if((c[t>>2]|0)>(e[(c[o>>2]|0)+40>>1]|0))w=c[t>>2]|0;else w=e[(c[o>>2]|0)+40>>1]|0;h[(c[o>>2]|0)+48+16+8>>3]=+(w|0);if(!(c[(c[o>>2]|0)+108>>2]|0)){x=c[u>>2]|0;i=k;return x|0}bU(c[q>>2]|0,43992);x=c[u>>2]|0;i=k;return x|0}function VT(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+64|0;j=g+56|0;k=g+48|0;l=g+40|0;m=g+32|0;n=g;h[j>>3]=b;h[k>>3]=d;h[l>>3]=e;h[m>>3]=f;h[n>>3]=+h[j>>3];h[n+8>>3]=+h[k>>3];h[n+16>>3]=+h[l>>3];h[n+16+8>>3]=+h[m>>3];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];i=g;return}function WT(b,f,g){b=b|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0;j=i;i=i+128|0;k=j+32|0;l=j+112|0;m=j+108|0;n=j+104|0;o=j+100|0;p=j+96|0;q=j+92|0;r=j+88|0;s=j+84|0;t=j+80|0;u=j+76|0;v=j+72|0;w=j+68|0;x=j;y=j+64|0;c[l>>2]=b;c[m>>2]=g;c[v>>2]=c[(c[l>>2]|0)+80+4>>2];if(((c[(c[l>>2]|0)+80>>2]|0)!=0?(c[(c[(c[l>>2]|0)+80>>2]|0)+24>>2]|0)!=0:0)?(c[(c[l>>2]|0)+24>>2]|0)==0:0){g=M3(c[(c[(c[l>>2]|0)+80>>2]|0)+24>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=g}c[r>>2]=~~+h[(c[l>>2]|0)+48+16>>3];c[p>>2]=~~(+h[f+16>>3]-+h[f>>3]-+(c[r>>2]|0));if((c[p>>2]|0)<0)La(175062,175072,1765,175084);c[r>>2]=~~+h[(c[l>>2]|0)+48+16+8>>3];c[q>>2]=~~(+h[f+16+8>>3]-+h[f+8>>3]-+(c[r>>2]|0));if((c[q>>2]|0)<0)La(175097,175072,1768,175084);if(e[(c[l>>2]|0)+36>>1]&1){if((c[p>>2]|0)>0){switch(e[(c[l>>2]|0)+36>>1]&6|0){case 4:{h[f+16>>3]=+h[f>>3]+ +(c[r>>2]|0);break}case 2:{g=f+16|0;h[g>>3]=+h[g>>3]+ +(c[p>>2]|0);h[f>>3]=+h[f>>3]+ +(c[p>>2]|0);break}default:{h[f>>3]=+h[f>>3]+ +((c[p>>2]|0)/2|0|0);g=f+16|0;h[g>>3]=+h[g>>3]-+((c[p>>2]|0)/2|0|0)}}c[p>>2]=0}if((c[q>>2]|0)>0){switch(e[(c[l>>2]|0)+36>>1]&24|0){case 16:{h[f+16+8>>3]=+h[f+8>>3]+ +(c[r>>2]|0);break}case 8:{r=f+16+8|0;h[r>>3]=+h[r>>3]+ +(c[q>>2]|0);r=f+8|0;h[r>>3]=+h[r>>3]+ +(c[q>>2]|0);break}default:{r=f+8|0;h[r>>3]=+h[r>>3]+ +((c[q>>2]|0)/2|0|0);r=f+16+8|0;h[r>>3]=+h[r>>3]-+((c[q>>2]|0)/2|0|0)}}c[q>>2]=0}}c[n>>2]=~~(+h[f>>3]+ +(d[(c[l>>2]|0)+33>>0]|0)+ +(a[(c[l>>2]|0)+32>>0]|0));c[t>>2]=(c[p>>2]|0)/(c[(c[l>>2]|0)+104>>2]|0)|0;r=((c[p>>2]|0)-(_(c[t>>2]|0,c[(c[l>>2]|0)+104>>2]|0)|0)|0)>=0;z=+((c[p>>2]|0)-(_(c[t>>2]|0,c[(c[l>>2]|0)+104>>2]|0)|0)|0);c[u>>2]=~~(r?z+.5:z-.5);c[s>>2]=0;while(1){if((c[s>>2]|0)>(c[(c[l>>2]|0)+104>>2]|0))break;c[p>>2]=(c[(c[(c[l>>2]|0)+96>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[t>>2]|0)+((c[s>>2]|0)<(c[u>>2]|0)?1:0);c[(c[(c[l>>2]|0)+96>>2]|0)+(c[s>>2]<<2)>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+((c[p>>2]|0)+(a[(c[l>>2]|0)+32>>0]|0));c[s>>2]=(c[s>>2]|0)+1}c[o>>2]=~~(+h[f+16+8>>3]-+(d[(c[l>>2]|0)+33>>0]|0)-+(a[(c[l>>2]|0)+32>>0]|0));c[t>>2]=(c[q>>2]|0)/(c[(c[l>>2]|0)+100>>2]|0)|0;p=((c[q>>2]|0)-(_(c[t>>2]|0,c[(c[l>>2]|0)+100>>2]|0)|0)|0)>=0;z=+((c[q>>2]|0)-(_(c[t>>2]|0,c[(c[l>>2]|0)+100>>2]|0)|0)|0);c[u>>2]=~~(p?z+.5:z-.5);c[s>>2]=0;while(1){if((c[s>>2]|0)>(c[(c[l>>2]|0)+100>>2]|0))break;c[q>>2]=(c[(c[(c[l>>2]|0)+92>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[t>>2]|0)+((c[s>>2]|0)<(c[u>>2]|0)?1:0);c[(c[(c[l>>2]|0)+92>>2]|0)+(c[s>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)-((c[q>>2]|0)+(a[(c[l>>2]|0)+32>>0]|0));c[s>>2]=(c[s>>2]|0)+1}while(1){s=c[v>>2]|0;c[v>>2]=s+4;q=c[s>>2]|0;c[w>>2]=q;if(!q)break;c[y>>2]=0;if(c[m>>2]|0){if(!(e[(c[w>>2]|0)+84>>1]|0))c[y>>2]=c[y>>2]|8;if(!(e[(c[w>>2]|0)+86>>1]|0))c[y>>2]=c[y>>2]|4;if(((e[(c[w>>2]|0)+84>>1]|0)+(e[(c[w>>2]|0)+80>>1]|0)|0)==(c[(c[l>>2]|0)+104>>2]|0))c[y>>2]=c[y>>2]|2;if(((e[(c[w>>2]|0)+86>>1]|0)+(e[(c[w>>2]|0)+82>>1]|0)|0)==(c[(c[l>>2]|0)+100>>2]|0))c[y>>2]=c[y>>2]|1}h[x>>3]=+(c[(c[(c[l>>2]|0)+96>>2]|0)+(e[(c[w>>2]|0)+84>>1]<<2)>>2]|0);h[x+16>>3]=+((c[(c[(c[l>>2]|0)+96>>2]|0)+((e[(c[w>>2]|0)+84>>1]|0)+(e[(c[w>>2]|0)+80>>1]|0)<<2)>>2]|0)-(a[(c[l>>2]|0)+32>>0]|0)|0);h[x+16+8>>3]=+(c[(c[(c[l>>2]|0)+92>>2]|0)+(e[(c[w>>2]|0)+86>>1]<<2)>>2]|0);h[x+8>>3]=+((c[(c[(c[l>>2]|0)+92>>2]|0)+((e[(c[w>>2]|0)+86>>1]|0)+(e[(c[w>>2]|0)+82>>1]|0)<<2)>>2]|0)+(a[(c[l>>2]|0)+32>>0]|0)|0);q=c[w>>2]|0;s=c[m>>2]&c[y>>2];c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[k+12>>2]=c[x+12>>2];c[k+16>>2]=c[x+16>>2];c[k+20>>2]=c[x+20>>2];c[k+24>>2]=c[x+24>>2];c[k+28>>2]=c[x+28>>2];YT(q,k,s)}a[(c[l>>2]|0)+35>>0]=c[m>>2];m=(c[l>>2]|0)+48|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[m+16>>2]=c[f+16>>2];c[m+20>>2]=c[f+20>>2];c[m+24>>2]=c[f+24>>2];c[m+28>>2]=c[f+28>>2];i=j;return}function XT(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0;g=i;i=i+224|0;j=g+216|0;k=g+212|0;l=g+208|0;m=g+184|0;n=g+176|0;o=g+168|0;p=g+160|0;q=g+152|0;r=g+136|0;s=g+204|0;t=g+200|0;u=g+128|0;v=g+72|0;w=g+40|0;x=g+32|0;y=g+24|0;z=g+196|0;A=g+16|0;B=g+192|0;C=g;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;h[m>>3]=0.0;h[n>>3]=0.0;h[p>>3]=0.0;h[q>>3]=0.0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[z>>2]=1;h[A>>3]=-1.0;c[B>>2]=0;c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(b[(c[k>>2]|0)+4>>1]|0))break;if((b[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+4>>1]|0)>1){D=4;break}do if(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]|0){if(c[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]|0)+24>>2]&127){D=7;break a}if(+h[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]|0)+16>>3]>0.0)h[w+16>>3]=+h[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]|0)+16>>3];else h[w+16>>3]=+h[(c[l>>2]|0)+16+16>>3];if(c[c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]>>2]|0){c[w>>2]=c[c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+4>>2]>>2];break}else{c[w>>2]=c[(c[l>>2]|0)+16>>2];break}}else{h[w+16>>3]=+h[(c[l>>2]|0)+16+16>>3];c[w>>2]=c[(c[l>>2]|0)+16>>2]}while(0);E=+h[w+16>>3];if(!(+h[A>>3]==-1.0)){if(E!=+h[A>>3]){D=18;break}}else h[A>>3]=E;f=c[w>>2]|0;if(c[B>>2]|0){if(J3(f,c[B>>2]|0)|0){D=22;break}}else c[B>>2]=f;c[s>>2]=(c[s>>2]|0)+1}if((D|0)==4)c[z>>2]=0;else if((D|0)==7)c[z>>2]=0;else if((D|0)==18)c[z>>2]=0;else if((D|0)==22)c[z>>2]=0;a[(c[k>>2]|0)+6>>0]=c[z>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(b[(c[k>>2]|0)+4>>1]|0))break;h[u>>3]=0.0;h[p>>3]=0.0;h[x>>3]=0.0;h[y>>3]=0.0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(b[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+4>>1]|0))break;c[v>>2]=WJ(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)>>2]|0,c[(c[l>>2]|0)+48>>2]|0)|0;do if(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0){do if(!(c[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+24>>2]&127))if((c[(c[l>>2]|0)+16+24>>2]&127|0)>0){D=w+24|0;c[D>>2]=c[D>>2]&-128|c[(c[l>>2]|0)+16+24>>2]&127;break}else{D=w+24|0;c[D>>2]=c[D>>2]&-128;break}else{D=w+24|0;c[D>>2]=c[D>>2]&-128|c[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+24>>2]&127}while(0);if(+h[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+16>>3]>0.0)h[w+16>>3]=+h[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+16>>3];else h[w+16>>3]=+h[(c[l>>2]|0)+16+16>>3];if(c[c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]>>2]|0)c[w>>2]=c[c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]>>2];else c[w>>2]=c[(c[l>>2]|0)+16>>2];if(c[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+4>>2]|0){c[w+4>>2]=c[(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]|0)+4>>2];break}else{c[w+4>>2]=c[(c[l>>2]|0)+16+4>>2];break}}else{h[w+16>>3]=+h[(c[l>>2]|0)+16+16>>3];c[w>>2]=c[(c[l>>2]|0)+16>>2];c[w+4>>2]=c[(c[l>>2]|0)+16+4>>2];D=w+24|0;c[D>>2]=c[D>>2]&-128|c[(c[l>>2]|0)+16+24>>2]&127}while(0);c[v+4>>2]=Hb[c[c[(c[j>>2]|0)+144>>2]>>2]&63](c[(c[j>>2]|0)+144>>2]|0,w,1)|0;SN(C,c[j>>2]|0,v);c[r>>2]=c[C>>2];c[r+4>>2]=c[C+4>>2];c[r+8>>2]=c[C+8>>2];c[r+12>>2]=c[C+12>>2];O4(c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)>>2]|0);c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)>>2]=c[v>>2];h[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+32>>3]=+h[r>>3];h[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+16>>3]=+h[v+16>>3];h[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+24>>3]=+h[v+24>>3];c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+4>>2]=c[v+4>>2];c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+8>>2]=c[v+8>>2];c[(c[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)>>2]|0)+((c[t>>2]|0)*56|0)+12>>2]=c[v+12>>2];h[u>>3]=+h[u>>3]+ +h[r>>3];h[p>>3]=+h[w+16>>3]>+h[p>>3]?+h[w+16>>3]:+h[p>>3];h[y>>3]=+h[r+8>>3]>+h[y>>3]?+h[r+8>>3]:+h[y>>3];h[x>>3]=+h[v+24>>3]>+h[x>>3]?+h[v+24>>3]:+h[x>>3];c[t>>2]=(c[t>>2]|0)+1}h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+8>>3]=+h[u>>3];do if(c[z>>2]|0){h[o>>3]=+h[y>>3];if(!(c[s>>2]|0)){h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+16>>3]=+h[p>>3];break}else{h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+16>>3]=+h[y>>3];break}}else{h[o>>3]=+h[p>>3];E=+h[p>>3];if(!(c[s>>2]|0)){h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+16>>3]=E-+h[x>>3];break}else{h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+16>>3]=E+ +h[n>>3]-+h[q>>3]-+h[x>>3];break}}while(0);h[q>>3]=+h[q>>3]+ +h[(c[c[k>>2]>>2]|0)+((c[s>>2]|0)*24|0)+16>>3];h[m>>3]=+h[u>>3]>+h[m>>3]?+h[u>>3]:+h[m>>3];h[n>>3]=+h[n>>3]+ +h[o>>3];c[s>>2]=(c[s>>2]|0)+1}h[(c[k>>2]|0)+8+16>>3]=+h[m>>3];if((b[(c[k>>2]|0)+4>>1]|0)==1){h[(c[k>>2]|0)+8+16+8>>3]=+h[y>>3];i=g;return 0}else{h[(c[k>>2]|0)+8+16+8>>3]=+h[n>>3];i=g;return 0}return 0}function YT(b,f,g){b=b|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+112|0;k=j+64|0;l=j+104|0;m=j+100|0;n=j+56|0;o=j+48|0;p=j+32|0;q=j;r=j+108|0;s=j+96|0;c[l>>2]=b;c[m>>2]=g;if((c[(c[l>>2]|0)+24>>2]|0)==0?(c[(c[(c[l>>2]|0)+96>>2]|0)+24>>2]|0)!=0:0){g=M3(c[(c[(c[l>>2]|0)+96>>2]|0)+24>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=g}a:do if(e[(c[l>>2]|0)+36>>1]&1){g=(c[l>>2]|0)+48+16|0;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];h[n>>3]=+h[f+16>>3]-+h[f>>3]-+h[p>>3];b:do if(+h[n>>3]>0.0)switch(e[(c[l>>2]|0)+36>>1]&6|0){case 4:{h[f+16>>3]=+h[f>>3]+ +h[p>>3];break b;break}case 2:{g=f+16|0;h[g>>3]=+h[g>>3]+ +h[n>>3];h[f>>3]=+h[f>>3]+ +h[n>>3];break b;break}default:{h[f>>3]=+h[f>>3]+ +h[n>>3]/2.0;g=f+16|0;h[g>>3]=+h[g>>3]-+h[n>>3]/2.0;break b}}while(0);h[o>>3]=+h[f+16+8>>3]-+h[f+8>>3]-+h[p+8>>3];if(+h[o>>3]>0.0)switch(e[(c[l>>2]|0)+36>>1]&24|0){case 16:{h[f+16+8>>3]=+h[f+8>>3]+ +h[p+8>>3];break a;break}case 8:{g=f+16+8|0;h[g>>3]=+h[g>>3]+ +h[o>>3];g=f+8|0;h[g>>3]=+h[g>>3]+ +h[o>>3];break a;break}default:{g=f+8|0;h[g>>3]=+h[g>>3]+ +h[o>>3]/2.0;g=f+16+8|0;h[g>>3]=+h[g>>3]-+h[o>>3]/2.0;break a}}}while(0);g=(c[l>>2]|0)+48|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[g+16>>2]=c[f+16>>2];c[g+20>>2]=c[f+20>>2];c[g+24>>2]=c[f+24>>2];c[g+28>>2]=c[f+28>>2];a[(c[l>>2]|0)+35>>0]=c[m>>2];h[q>>3]=+h[f>>3]+ +(d[(c[l>>2]|0)+33>>0]|0)+ +(d[(c[l>>2]|0)+34>>0]|0);h[q+8>>3]=+h[f+8>>3]+ +(d[(c[l>>2]|0)+33>>0]|0)+ +(d[(c[l>>2]|0)+34>>0]|0);h[q+16>>3]=+h[f+16>>3]-+(d[(c[l>>2]|0)+33>>0]|0)-+(d[(c[l>>2]|0)+34>>0]|0);h[q+16+8>>3]=+h[f+16+8>>3]-+(d[(c[l>>2]|0)+33>>0]|0)-+(d[(c[l>>2]|0)+34>>0]|0);f=(c[l>>2]|0)+88|0;if((a[(c[l>>2]|0)+88+4>>0]|0)==1){g=c[f>>2]|0;b=c[m>>2]|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[k+16>>2]=c[q+16>>2];c[k+20>>2]=c[q+20>>2];c[k+24>>2]=c[q+24>>2];c[k+28>>2]=c[q+28>>2];WT(g,k,b);i=j;return}b=(c[l>>2]|0)+88|0;if((a[f+4>>0]|0)==3){f=(c[b>>2]|0)+16|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];h[n>>3]=+h[q+16>>3]-+h[q>>3]-+h[p>>3];c:do if(+h[n>>3]>0.0)switch(e[(c[l>>2]|0)+36>>1]&6|0){case 4:{f=q+16|0;h[f>>3]=+h[f>>3]-+h[n>>3];break c;break}case 2:{h[q>>3]=+h[q>>3]+ +h[n>>3];break c;break}default:break c}while(0);h[o>>3]=+h[q+16+8>>3]-+h[q+8>>3]-+h[p+8>>3];d:do if(+h[o>>3]>0.0)switch(e[(c[l>>2]|0)+36>>1]&24|0){case 16:{f=q+16+8|0;h[f>>3]=+h[f>>3]-+h[o>>3];break d;break}case 8:{f=q+8|0;h[f>>3]=+h[f>>3]+ +h[o>>3];break d;break}default:break d}while(0);f=c[(c[l>>2]|0)+88>>2]|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[k+16>>2]=c[q+16>>2];c[k+20>>2]=c[q+20>>2];c[k+24>>2]=c[q+24>>2];c[k+28>>2]=c[q+28>>2];ZT(f,k);i=j;return}k=(c[b>>2]|0)+8+16|0;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];h[n>>3]=+h[q+16>>3]-+h[q>>3]-+h[p>>3];e:do if(+h[n>>3]>0.0?(k=e[(c[l>>2]|0)+36>>1]&6,c[s>>2]=k,(k|0)!=6):0)switch(c[s>>2]|0){case 4:{k=q+16|0;h[k>>3]=+h[k>>3]-+h[n>>3];break e;break}case 2:{h[q>>3]=+h[q>>3]+ +h[n>>3];break e;break}default:{h[q>>3]=+h[q>>3]+ +h[n>>3]/2.0;k=q+16|0;h[k>>3]=+h[k>>3]-+h[n>>3]/2.0;break e}}while(0);h[o>>3]=+h[q+16+8>>3]-+h[q+8>>3]-+h[p+8>>3];f:do if(+h[o>>3]>0.0)switch(e[(c[l>>2]|0)+36>>1]&24|0){case 16:{p=q+16+8|0;h[p>>3]=+h[p>>3]-+h[o>>3];break f;break}case 8:{p=q+8|0;h[p>>3]=+h[p>>3]+ +h[o>>3];break f;break}default:{p=q+8|0;h[p>>3]=+h[p>>3]+ +h[o>>3]/2.0;p=q+16+8|0;h[p>>3]=+h[p>>3]-+h[o>>3]/2.0;break f}}while(0);o=(c[(c[l>>2]|0)+88>>2]|0)+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];c[o+16>>2]=c[q+16>>2];c[o+20>>2]=c[q+20>>2];c[o+24>>2]=c[q+24>>2];c[o+28>>2]=c[q+28>>2];switch(e[(c[l>>2]|0)+36>>1]&768|0){case 512:{a[r>>0]=108;break}case 256:{a[r>>0]=114;break}default:a[r>>0]=110}_T(c[(c[l>>2]|0)+88>>2]|0,a[r>>0]|0);i=j;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=c[e>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];i=d;return}function _T(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f+8|0;j=f;c[g>>2]=d;a[h>>0]=e;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[(c[g>>2]|0)+4>>1]|0))break;if(!(a[(c[c[g>>2]>>2]|0)+((c[j>>2]|0)*24|0)+6>>0]|0))a[(c[c[g>>2]>>2]|0)+((c[j>>2]|0)*24|0)+6>>0]=a[h>>0]|0;c[j>>2]=(c[j>>2]|0)+1}i=f;return}function $T(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;do if(c[(c[f>>2]|0)+16>>2]|0)if(c[c[g>>2]>>2]|0){c[c[j>>2]>>2]=c[(c[f>>2]|0)+16>>2];c[(c[f>>2]|0)+16>>2]=c[c[g>>2]>>2];break}else{c[c[j>>2]>>2]=0;break}while(0);do if(c[(c[f>>2]|0)+16+4>>2]|0)if(c[(c[g>>2]|0)+4>>2]|0){c[(c[j>>2]|0)+4>>2]=c[(c[f>>2]|0)+16+4>>2];c[(c[f>>2]|0)+16+4>>2]=c[(c[g>>2]|0)+4>>2];break}else{c[(c[j>>2]|0)+4>>2]=0;break}while(0);if(!(+h[(c[f>>2]|0)+16+16>>3]>=0.0)){i=e;return}if(+h[(c[g>>2]|0)+16>>3]>=0.0){h[(c[j>>2]|0)+16>>3]=+h[(c[f>>2]|0)+16+16>>3];h[(c[f>>2]|0)+16+16>>3]=+h[(c[g>>2]|0)+16>>3];i=e;return}else{h[(c[j>>2]|0)+16>>3]=-1.0;i=e;return}}function aU(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;j=i;i=i+80|0;k=j+64|0;l=j+60|0;m=j+56|0;n=j+52|0;o=j+48|0;p=j+44|0;q=j+40|0;r=j+36|0;s=j+32|0;t=j+28|0;u=j+24|0;v=j+20|0;w=j+16|0;x=j+12|0;y=j+8|0;z=j+4|0;A=j;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[v>>2]=c[(c[l>>2]|0)+80+4>>2];c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=VK()|0;c[A>>2]=rU()|0;c[n>>2]=Lz(c[v>>2]|0)|0;c[s>>2]=0;c[q>>2]=0;while(1){if(!(c[n>>2]|0))break;c[p>>2]=c[(c[n>>2]|0)+8>>2];c[o>>2]=Lz(c[p>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=(c[s>>2]|0)+1;c[o>>2]=c[c[o>>2]>>2]}if(a[(c[n>>2]|0)+12>>0]|0)sU(c[A>>2]|0,(c[q>>2]|0)+1|0);c[n>>2]=c[c[n>>2]>>2];c[q>>2]=(c[q>>2]|0)+1}h=bK((c[s>>2]|0)+1<<2)|0;c[(c[l>>2]|0)+80+4>>2]=h;c[u>>2]=h;c[n>>2]=Lz(c[v>>2]|0)|0;c[q>>2]=0;while(1){if(!(c[n>>2]|0))break;c[p>>2]=c[(c[n>>2]|0)+8>>2];c[o>>2]=Lz(c[p>>2]|0)|0;c[r>>2]=0;while(1){if(!(c[o>>2]|0))break;c[t>>2]=c[(c[o>>2]|0)+8>>2];h=c[t>>2]|0;s=c[u>>2]|0;c[u>>2]=s+4;c[s>>2]=h;h=cU(c[k>>2]|0,c[t>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;c[w>>2]=c[w>>2]|h;c[r>>2]=dU(c[z>>2]|0,c[q>>2]|0,c[r>>2]|0,c[t>>2]|0)|0;b[(c[t>>2]|0)+86>>1]=c[q>>2];b[(c[t>>2]|0)+84>>1]=c[r>>2];c[r>>2]=(c[r>>2]|0)+(e[(c[t>>2]|0)+80>>1]|0);c[y>>2]=(c[r>>2]|0)>(c[y>>2]|0)?c[r>>2]|0:c[y>>2]|0;if(((c[q>>2]|0)+(e[(c[t>>2]|0)+82>>1]|0)|0)>(c[x>>2]|0))B=(c[q>>2]|0)+(e[(c[t>>2]|0)+82>>1]|0)|0;else B=c[x>>2]|0;c[x>>2]=B;if(tU(c[A>>2]|0,(c[q>>2]|0)+(e[(c[t>>2]|0)+82>>1]|0)|0)|0){h=(c[t>>2]|0)+100|0;a[h>>0]=d[h>>0]|2}c[o>>2]=c[c[o>>2]>>2]}c[n>>2]=c[c[n>>2]>>2];c[q>>2]=(c[q>>2]|0)+1}c[(c[l>>2]|0)+100>>2]=c[x>>2];c[(c[l>>2]|0)+104>>2]=c[y>>2];Jz(c[v>>2]|0)|0;Jz(c[A>>2]|0)|0;WK(c[z>>2]|0);i=j;return c[w>>2]|0}function bU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[c[f>>2]>>2]|0)c[(c[e>>2]|0)+16>>2]=c[c[f>>2]>>2];if(c[(c[f>>2]|0)+4>>2]|0)c[(c[e>>2]|0)+16+4>>2]=c[(c[f>>2]|0)+4>>2];if(!(+h[(c[f>>2]|0)+16>>3]>=0.0)){i=d;return}h[(c[e>>2]|0)+16+16>>3]=+h[(c[f>>2]|0)+16>>3];i=d;return} +function Wb(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function Xb(){return i|0}function Yb(a){a=a|0;i=a}function Zb(a,b){a=a|0;b=b|0;i=a;j=b}function _b(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function $b(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function ac(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function bc(a){a=a|0;C=a}function cc(){return C|0}function dc(a){a=a|0;yb(0,a|0)|0;return 0}function ec(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+4|0;g=e;if(!(c[11034]|0)){h=$F()|0;c[11034]=h;dG(h,44140);dG(c[11034]|0,50084);dG(c[11034]|0,50544)}Zz(1)|0;Yz(18)|0;eD(1);h=PB(a)|0;if(!h){j=0;i=e;return j|0}else{k=h;l=0}while(1){if(!l){aG(c[11034]|0,k,d)|0;cG(c[11034]|0,k,b,f,g)|0;gF(c[11034]|0,k)|0}jB(k)|0;k=PB(178518)|0;h=c[f>>2]|0;if(!k){j=h;break}else l=h}i=e;return j|0}function fc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+1072|0;j=g;k=g+24|0;l=g+20|0;m=g+16|0;n=g+32|0;c[k>>2]=b;c[l>>2]=d;a[g+1056>>0]=f;c[m>>2]=c[(c[(c[k>>2]|0)+16>>2]|0)+12>>2];gA(c[44788+(c[m>>2]<<2)>>2]|0,104802)|0;f=c[44788+(c[m>>2]<<2)>>2]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];gc(f,j);hc(n,+h[e+16>>3]-+h[e>>3]);gA(c[44788+(c[m>>2]<<2)>>2]|0,n)|0;hc(n,+h[e+16+8>>3]-+h[e+8>>3]);gA(c[44788+(c[m>>2]<<2)>>2]|0,n)|0;ic(c[k>>2]|0,178518,c[(c[l>>2]|0)+8>>2]|0);i=g;return}function gc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+1040|0;e=d;f=d+8|0;c[e>>2]=a;hc(f,+h[b>>3]);gA(c[e>>2]|0,f)|0;hc(f,+GK(+h[b+8>>3]));gA(c[e>>2]|0,f)|0;i=d;return}function hc(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+8|0;f=d+16|0;g=d;c[f>>2]=a;h[g>>3]=b;a=c[f>>2]|0;h[e>>3]=+h[g>>3];k3(a,105074,e)|0;xc(c[f>>2]|0,1);i=d;return}function ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2];Cc(c[44788+(c[j>>2]<<2)>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function jc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[h>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+8>>2];switch(c[(c[d>>2]|0)+60+4>>2]|0){case 0:{JK(c[h>>2]|0);i=b;return}case 1:{if(!((e[(c[(c[h>>2]|0)+8>>2]|0)+136>>1]|0)&1)){i=b;return}GO(c[h>>2]|0);i=b;return}case 4:case 5:case 6:{IK(c[h>>2]|0,g,f);Ec(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0,c[(c[d>>2]|0)+60+4>>2]|0);i=b;return}default:{i=b;return}}}function kc(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+8>>2];if(!(c[11225]|0)){c[11225]=c[13099];c[11226]=57;c[11227]=19}c[f>>2]=c[(c[(c[e>>2]|0)+52>>2]|0)+8>>2];c[(c[(c[e>>2]|0)+52>>2]|0)+8>>2]=44900;switch(c[(c[d>>2]|0)+60+4>>2]|0){case 2:{HK(c[d>>2]|0,c[e>>2]|0,c[d>>2]|0,0);break}case 3:{HK(c[d>>2]|0,c[e>>2]|0,c[d>>2]|0,1);break}case 1:case 0:{if(!(c[(c[d>>2]|0)+152>>2]&134217728))VD(c[e>>2]|0,c[d>>2]|0)|0;break}case 6:case 5:case 4:{Dc(c[e>>2]|0);if(!(c[(c[d>>2]|0)+152>>2]&134217728))VD(c[e>>2]|0,c[d>>2]|0)|0;break}default:{}}c[(c[(c[e>>2]|0)+52>>2]|0)+8>>2]=c[f>>2];i=b;return}function lc(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+8>>2];e=c[f>>2]|0;b=c[c[11209]>>2]|0;if((c[(c[11198]|0)+4>>2]|0)>>>0>=(c[(c[11198]|0)+8>>2]|0)>>>0)eA(c[11198]|0,1)|0;g=(c[11198]|0)+4|0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=0;j=c[c[11198]>>2]|0;c[(c[11198]|0)+4>>2]=j;BA(e,b,j)|0;if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)){h[24]=1.0;h[28]=1.0;c[11214]=0;c[11218]=0;i=d;return}j=c[f>>2]|0;f=c[(c[11209]|0)+4>>2]|0;if((c[(c[11202]|0)+4>>2]|0)>>>0>=(c[(c[11202]|0)+8>>2]|0)>>>0)eA(c[11202]|0,1)|0;b=(c[11202]|0)+4|0;e=c[b>>2]|0;c[b>>2]=e+1;a[e>>0]=0;e=c[c[11202]>>2]|0;c[(c[11202]|0)+4>>2]=e;BA(j,f,e)|0;h[24]=1.0;h[28]=1.0;c[11214]=0;c[11218]=0;i=d;return}function mc(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+8>>2];if((c[(c[11205]|0)+4>>2]|0)-(c[c[11205]>>2]|0)|0){e=c[f>>2]|0;b=c[(c[11209]|0)+8>>2]|0;if((c[(c[11205]|0)+4>>2]|0)>>>0>=(c[(c[11205]|0)+8>>2]|0)>>>0)eA(c[11205]|0,1)|0;g=(c[11205]|0)+4|0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=0;j=c[c[11205]>>2]|0;c[(c[11205]|0)+4>>2]=j;BA(e,b,j)|0}if(!((c[(c[11207]|0)+4>>2]|0)-(c[c[11207]>>2]|0)|0)){h[31]=1.0;h[33]=1.0;c[11221]=0;c[11223]=0;i=d;return}j=c[f>>2]|0;f=c[(c[11209]|0)+12>>2]|0;if((c[(c[11207]|0)+4>>2]|0)>>>0>=(c[(c[11207]|0)+8>>2]|0)>>>0)eA(c[11207]|0,1)|0;b=(c[11207]|0)+4|0;e=c[b>>2]|0;c[b>>2]=e+1;a[e>>0]=0;e=c[c[11207]>>2]|0;c[(c[11207]|0)+4>>2]=e;BA(j,f,e)|0;h[31]=1.0;h[33]=1.0;c[11221]=0;c[11223]=0;i=d;return}function nc(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+8>>2];if((c[(c[11206]|0)+4>>2]|0)-(c[c[11206]>>2]|0)|0){e=c[f>>2]|0;b=c[(c[11209]|0)+16>>2]|0;if((c[(c[11206]|0)+4>>2]|0)>>>0>=(c[(c[11206]|0)+8>>2]|0)>>>0)eA(c[11206]|0,1)|0;g=(c[11206]|0)+4|0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=0;j=c[c[11206]>>2]|0;c[(c[11206]|0)+4>>2]=j;BA(e,b,j)|0}if((c[(c[11199]|0)+4>>2]|0)-(c[c[11199]>>2]|0)|0){j=c[f>>2]|0;b=c[(c[11209]|0)+24>>2]|0;if((c[(c[11199]|0)+4>>2]|0)>>>0>=(c[(c[11199]|0)+8>>2]|0)>>>0)eA(c[11199]|0,1)|0;e=(c[11199]|0)+4|0;g=c[e>>2]|0;c[e>>2]=g+1;a[g>>0]=0;g=c[c[11199]>>2]|0;c[(c[11199]|0)+4>>2]=g;BA(j,b,g)|0}if((c[(c[11200]|0)+4>>2]|0)-(c[c[11200]>>2]|0)|0){g=c[f>>2]|0;b=c[(c[11209]|0)+20>>2]|0;if((c[(c[11200]|0)+4>>2]|0)>>>0>=(c[(c[11200]|0)+8>>2]|0)>>>0)eA(c[11200]|0,1)|0;j=(c[11200]|0)+4|0;e=c[j>>2]|0;c[j>>2]=e+1;a[e>>0]=0;e=c[c[11200]>>2]|0;c[(c[11200]|0)+4>>2]=e;BA(g,b,e)|0}if((c[(c[11208]|0)+4>>2]|0)-(c[c[11208]>>2]|0)|0){e=c[f>>2]|0;b=c[(c[11209]|0)+28>>2]|0;if((c[(c[11208]|0)+4>>2]|0)>>>0>=(c[(c[11208]|0)+8>>2]|0)>>>0)eA(c[11208]|0,1)|0;g=(c[11208]|0)+4|0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=0;j=c[c[11208]>>2]|0;c[(c[11208]|0)+4>>2]=j;BA(e,b,j)|0}if((c[(c[11203]|0)+4>>2]|0)-(c[c[11203]>>2]|0)|0){j=c[f>>2]|0;b=c[(c[11209]|0)+36>>2]|0;if((c[(c[11203]|0)+4>>2]|0)>>>0>=(c[(c[11203]|0)+8>>2]|0)>>>0)eA(c[11203]|0,1)|0;e=(c[11203]|0)+4|0;g=c[e>>2]|0;c[e>>2]=g+1;a[g>>0]=0;g=c[c[11203]>>2]|0;c[(c[11203]|0)+4>>2]=g;BA(j,b,g)|0}if(!((c[(c[11204]|0)+4>>2]|0)-(c[c[11204]>>2]|0)|0)){h[32]=1.0;h[34]=1.0;h[25]=1.0;h[26]=1.0;h[29]=1.0;h[30]=1.0;c[11222]=0;c[11224]=0;c[11215]=0;c[11216]=0;c[11219]=0;c[11220]=0;i=d;return}g=c[f>>2]|0;f=c[(c[11209]|0)+32>>2]|0;if((c[(c[11204]|0)+4>>2]|0)>>>0>=(c[(c[11204]|0)+8>>2]|0)>>>0)eA(c[11204]|0,1)|0;b=(c[11204]|0)+4|0;j=c[b>>2]|0;c[b>>2]=j+1;a[j>>0]=0;j=c[c[11204]>>2]|0;c[(c[11204]|0)+4>>2]=j;BA(g,f,j)|0;h[32]=1.0;h[34]=1.0;h[25]=1.0;h[26]=1.0;h[29]=1.0;h[30]=1.0;c[11222]=0;c[11224]=0;c[11215]=0;c[11216]=0;c[11219]=0;c[11220]=0;i=d;return}function oc(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+1088|0;j=g+16|0;k=g+8|0;l=g;m=g+56|0;n=g+52|0;o=g+48|0;p=g+44|0;q=g+64|0;r=g+40|0;s=g+36|0;t=g+32|0;c[m>>2]=b;c[n>>2]=f;c[o>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+12>>2];gA(c[44788+(c[o>>2]<<2)>>2]|0,104969)|0;hc(q,+h[(c[(c[n>>2]|0)+4>>2]|0)+16>>3]);gA(c[44788+(c[o>>2]<<2)>>2]|0,q)|0;ic(c[m>>2]|0,178518,c[c[(c[n>>2]|0)+4>>2]>>2]|0);uc(c[m>>2]|0);switch(a[(c[n>>2]|0)+48>>0]|0){case 108:{c[r>>2]=-1;break}case 114:{c[r>>2]=1;break}default:c[r>>2]=0}if(c[(c[n>>2]|0)+4>>2]|0)c[p>>2]=c[(c[(c[n>>2]|0)+4>>2]|0)+24>>2]&127;else c[p>>2]=0;if((e[(c[11209]|0)+8232>>1]|0)>=15?(c[s>>2]=c[44840+((e[(c[11209]|0)+8232>>1]|0)-15<<2)>>2],c[t>>2]=c[p>>2]&c[s>>2],(c[44852+(c[o>>2]<<2)>>2]|0)!=(c[t>>2]|0)):0){c[l>>2]=c[t>>2];k3(q,104972,l)|0;gA(c[44788+(c[o>>2]<<2)>>2]|0,q)|0;c[44852+(c[o>>2]<<2)>>2]=c[t>>2]}t=d+8|0;h[t>>3]=+h[t>>3]+ +h[(c[n>>2]|0)+24>>3];gA(c[44788+(c[o>>2]<<2)>>2]|0,104978)|0;t=c[44788+(c[o>>2]<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];gc(t,j);c[k>>2]=c[r>>2];k3(q,14e4,k)|0;gA(c[44788+(c[o>>2]<<2)>>2]|0,q)|0;hc(q,+h[(c[n>>2]|0)+32>>3]);gA(c[44788+(c[o>>2]<<2)>>2]|0,q)|0;ic(c[m>>2]|0,178518,c[c[n>>2]>>2]|0);i=g;return}function pc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+1056|0;f=e;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+32|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+12>>2];tc(c[g>>2]|0);uc(c[g>>2]|0);if(c[k>>2]|0){d=c[g>>2]|0;if((c[k>>2]|0)==2|(c[k>>2]|0)==3)yc(d,c[k>>2]|0,c[j>>2]|0,2);else zc(d);gA(c[44788+(c[l>>2]<<2)>>2]|0,104963)|0}else gA(c[44788+(c[l>>2]<<2)>>2]|0,104966)|0;d=c[44788+(c[l>>2]<<2)>>2]|0;k=c[j>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2];gc(d,f);hc(m,+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3]);gA(c[44788+(c[l>>2]<<2)>>2]|0,m)|0;hc(m,+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3]);gA(c[44788+(c[l>>2]<<2)>>2]|0,m)|0;i=e;return}function qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;tc(c[g>>2]|0);uc(c[g>>2]|0);if(!(c[k>>2]|0)){vc(c[g>>2]|0,112,c[h>>2]|0,c[j>>2]|0);i=f;return}e=c[g>>2]|0;if((c[k>>2]|0)==2|(c[k>>2]|0)==3)yc(e,c[k>>2]|0,c[h>>2]|0,c[j>>2]|0);else zc(e);vc(c[g>>2]|0,80,c[h>>2]|0,c[j>>2]|0);i=f;return}function rc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[h+8>>2]=e;c[h+4>>2]=f;c[m>>2]=g;tc(c[j>>2]|0);uc(c[j>>2]|0);if(!(c[m>>2]|0)){vc(c[j>>2]|0,66,c[k>>2]|0,c[l>>2]|0);i=h;return}g=c[j>>2]|0;if((c[m>>2]|0)==2|(c[m>>2]|0)==3)yc(g,c[m>>2]|0,c[k>>2]|0,c[l>>2]|0);else zc(g);vc(c[j>>2]|0,98,c[k>>2]|0,c[l>>2]|0);i=h;return}function sc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;tc(c[f>>2]|0);uc(c[f>>2]|0);vc(c[f>>2]|0,76,c[g>>2]|0,c[h>>2]|0);i=e;return}function tc(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+1200|0;e=d;f=d+40|0;g=d+48|0;j=d+24|0;k=d+16|0;l=d+12|0;m=d+8|0;c[f>>2]=b;dA(j,1024,d+176|0);if(+h[(c[(c[f>>2]|0)+16>>2]|0)+152>>3]!=+h[184+(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]<<3)>>3]){h[184+(c[(c[(c[f>>2]|0)+16>>2]|0)+12>>2]<<3)>>3]=+h[(c[(c[f>>2]|0)+16>>2]|0)+152>>3];gA(j,104928)|0;h[e>>3]=+h[(c[(c[f>>2]|0)+16>>2]|0)+152>>3];k3(g,104942,e)|0;xc(g,0);gA(j,g)|0;if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;g=j+4|0;e=c[g>>2]|0;c[g>>2]=e+1;a[e>>0]=41;e=c[f>>2]|0;if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;g=j+4|0;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=0;b=c[j>>2]|0;c[j+4>>2]=b;ic(e,104947,b)}c[l>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+160>>2];if(!(c[l>>2]|0)){i=d;return}while(1){b=c[l>>2]|0;c[l>>2]=b+4;e=c[b>>2]|0;c[k>>2]=e;if(!e)break;if((a[c[k>>2]>>0]|0)==(a[148663]|0)?(J3(c[k>>2]|0,148663)|0)==0:0)continue;if((a[c[k>>2]>>0]|0)==(a[148645]|0)?(J3(c[k>>2]|0,148645)|0)==0:0)continue;if((a[c[k>>2]>>0]|0)==(a[148650]|0)?(J3(c[k>>2]|0,148650)|0)==0:0)continue;gA(j,c[k>>2]|0)|0;do{e=(a[c[k>>2]>>0]|0)!=0;c[k>>2]=(c[k>>2]|0)+1}while(e);if(a[c[k>>2]>>0]|0){if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;e=j+4|0;b=c[e>>2]|0;c[e>>2]=b+1;a[b>>0]=40;c[m>>2]=0;while(1){if(!(a[c[k>>2]>>0]|0))break;if(c[m>>2]|0){if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;b=j+4|0;e=c[b>>2]|0;c[b>>2]=e+1;a[e>>0]=44}gA(j,c[k>>2]|0)|0;do{e=(a[c[k>>2]>>0]|0)!=0;c[k>>2]=(c[k>>2]|0)+1}while(e);c[m>>2]=(c[m>>2]|0)+1}if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;e=j+4|0;b=c[e>>2]|0;c[e>>2]=b+1;a[b>>0]=41}b=c[f>>2]|0;if((c[j+4>>2]|0)>>>0>=(c[j+8>>2]|0)>>>0)eA(j,1)|0;e=j+4|0;g=c[e>>2]|0;c[e>>2]=g+1;a[g>>0]=0;g=c[j>>2]|0;c[j+4>>2]=g;ic(b,104947,g)}hA(j);i=d;return}function uc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;ic(a,113060,wc((c[(c[d>>2]|0)+16>>2]|0)+16|0)|0);i=b;return}function vc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+1072|0;h=g;j=g+36|0;k=g+1064|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+40|0;p=g+20|0;c[j>>2]=b;a[k>>0]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[(c[(c[j>>2]|0)+16>>2]|0)+12>>2];if((c[(c[44788+(c[n>>2]<<2)>>2]|0)+4>>2]|0)>>>0>=(c[(c[44788+(c[n>>2]<<2)>>2]|0)+8>>2]|0)>>>0)eA(c[44788+(c[n>>2]<<2)>>2]|0,1)|0;j=a[k>>0]|0;k=(c[44788+(c[n>>2]<<2)>>2]|0)+4|0;f=c[k>>2]|0;c[k>>2]=f+1;a[f>>0]=j;c[g+16>>2]=j&255;c[h>>2]=c[m>>2];k3(o,104895,h)|0;gA(c[44788+(c[n>>2]<<2)>>2]|0,o)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[m>>2]|0))break;o=c[44788+(c[n>>2]<<2)>>2]|0;j=(c[l>>2]|0)+(c[p>>2]<<4)|0;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];gc(o,h);c[p>>2]=(c[p>>2]|0)+1}i=g;return}function wc(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+48|0;e=b+16|0;f=b;g=b+32|0;c[g>>2]=a;a=d[c[g>>2]>>0]|0;h=d[(c[g>>2]|0)+1>>0]|0;j=d[(c[g>>2]|0)+2>>0]|0;if((d[(c[g>>2]|0)+3>>0]|0|0)==255){c[f>>2]=a;c[f+4>>2]=h;c[f+8>>2]=j;k3(104900,112940,f)|0;i=b;return 104900}else{f=d[(c[g>>2]|0)+3>>0]|0;c[e>>2]=a;c[e+4>>2]=h;c[e+8>>2]=j;c[e+12>>2]=f;k3(104900,104910,e)|0;i=b;return 104900}return 0}function xc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;d=H3(c[f>>2]|0,46)|0;c[h>>2]=d;do if(d){c[j>>2]=(c[h>>2]|0)+1;while(1){k=c[j>>2]|0;if(!(a[c[j>>2]>>0]|0))break;c[j>>2]=k+1}c[j>>2]=k+-1;while(1){l=c[j>>2]|0;if((a[c[j>>2]>>0]|0)!=48)break;c[j>>2]=l+-1;a[l>>0]=0}b=c[j>>2]|0;if((a[l>>0]|0)==46){a[b>>0]=0;break}else{c[j>>2]=b+1;break}}else if(c[g>>2]|0){b=c[f>>2]|0;c[j>>2]=b+(N3(c[f>>2]|0)|0)}while(0);if(!(c[g>>2]|0)){i=e;return}g=c[j>>2]|0;c[j>>2]=g+1;a[g>>0]=32;a[c[j>>2]>>0]=0;i=e;return}function yc(b,d,f,j){b=b|0;d=d|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;k=i;i=i+1152|0;l=k+64|0;m=k+124|0;n=k+120|0;o=k+116|0;p=k+112|0;q=k+96|0;r=k+92|0;s=k+88|0;t=k+84|0;u=k+80|0;v=k+32|0;w=k+16|0;x=k;c[m>>2]=b;c[n>>2]=d;c[o>>2]=f;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+16>>2];g[s>>2]=+(c[(c[r>>2]|0)+136>>2]|0)*3.141592653589793/180.0;if((e[(c[11209]|0)+8232>>1]|0|0)<14){zc(c[m>>2]|0);i=k;return}dA(q,1024,k+128|0);j=c[o>>2]|0;o=c[p>>2]|0;if((c[n>>2]|0)==2){RO(j,v,o,+g[s>>2],2);if((c[q+4>>2]|0)>>>0>=(c[q+8>>2]|0)>>>0)eA(q,1)|0;p=q+4|0;f=c[p>>2]|0;c[p>>2]=f+1;a[f>>0]=91;c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[l+12>>2]=c[v+12>>2];gc(q,l);f=v+16|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];gc(q,l)}else{RO(j,v,o,0.0,3);g[t>>2]=+h[v+16>>3];g[u>>2]=+h[v+16+8>>3];y=+h[v>>3];if(+g[s>>2]==0.0){h[w>>3]=y;h[w+8>>3]=+h[v+8>>3]}else{h[w>>3]=y+ +g[u>>2]/4.0*+Q(+(+g[s>>2]));h[w+8>>3]=+h[v+8>>3]+ +g[u>>2]/4.0*+R(+(+g[s>>2]))}h[x>>3]=+h[v>>3];h[x+8>>3]=+h[v+8>>3];g[t>>2]=+g[u>>2]/4.0;if((c[q+4>>2]|0)>>>0>=(c[q+8>>2]|0)>>>0)eA(q,1)|0;v=q+4|0;s=c[v>>2]|0;c[v>>2]=s+1;a[s>>0]=40;c[l>>2]=c[w>>2];c[l+4>>2]=c[w+4>>2];c[l+8>>2]=c[w+8>>2];c[l+12>>2]=c[w+12>>2];gc(q,l);Ac(q,+g[t>>2]);c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];gc(q,l);Ac(q,+g[u>>2])}gA(q,104953)|0;u=c[r>>2]|0;if(+g[(c[r>>2]|0)+140>>2]>0.0){Bc(q,+g[u+140>>2],(c[r>>2]|0)+56|0);Bc(q,+g[(c[r>>2]|0)+140>>2],(c[r>>2]|0)+96|0)}else{Bc(q,0.0,u+56|0);Bc(q,1.0,(c[r>>2]|0)+96|0)}iA(q)|0;r=(c[q+4>>2]|0)>>>0>=(c[q+8>>2]|0)>>>0;if((c[n>>2]|0)==2){if(r)eA(q,1)|0;n=q+4|0;u=c[n>>2]|0;c[n>>2]=u+1;a[u>>0]=93}else{if(r)eA(q,1)|0;r=q+4|0;u=c[r>>2]|0;c[r>>2]=u+1;a[u>>0]=41}u=c[m>>2]|0;if((c[q+4>>2]|0)>>>0>=(c[q+8>>2]|0)>>>0)eA(q,1)|0;m=q+4|0;r=c[m>>2]|0;c[m>>2]=r+1;a[r>>0]=0;r=c[q>>2]|0;c[q+4>>2]=r;ic(u,104950,r);hA(q);i=k;return}function zc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;ic(a,104950,wc((c[(c[d>>2]|0)+16>>2]|0)+56|0)|0);i=b;return}function Ac(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0;d=i;i=i+1040|0;e=d+8|0;f=d;g=d+16|0;c[e>>2]=a;h[f>>3]=b;hc(g,+h[f>>3]);gA(c[e>>2]|0,g)|0;i=d;return}function Bc(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0;e=i;i=i+1056|0;f=e;j=e+16|0;k=e+12|0;l=e+8|0;m=e+24|0;c[j>>2]=a;g[k>>2]=b;c[l>>2]=d;h[f>>3]=+g[k>>2];k3(m,131543,f)|0;xc(m,1);f=c[j>>2]|0;Cc(f,m,wc(c[l>>2]|0)|0);i=e;return}function Cc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+1056|0;g=f;h=f+16|0;j=f+12|0;k=f+8|0;l=f+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[j>>2]|0;j=N3(c[k>>2]|0)|0;c[g>>2]=e;c[g+4>>2]=j;k3(l,104956,g)|0;gA(c[h>>2]|0,l)|0;gA(c[h>>2]|0,c[k>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<(c[(c[h>>2]|0)+8>>2]|0)>>>0){m=c[h>>2]|0;n=m+4|0;o=c[n>>2]|0;p=o+1|0;c[n>>2]=p;a[o>>0]=32;i=f;return}eA(c[h>>2]|0,1)|0;m=c[h>>2]|0;n=m+4|0;o=c[n>>2]|0;p=o+1|0;c[n>>2]=p;a[o>>0]=32;i=f;return}function Dc(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;if((c[(c[11197]|0)+4>>2]|0)-(c[c[11197]>>2]|0)|0){if(!(c[c[11209]>>2]|0)){b=HO(c[e>>2]|0,0,137480,178518)|0;c[c[11209]>>2]=b}b=c[e>>2]|0;g=c[c[11209]>>2]|0;if((c[(c[11197]|0)+4>>2]|0)>>>0>=(c[(c[11197]|0)+8>>2]|0)>>>0)eA(c[11197]|0,1)|0;j=(c[11197]|0)+4|0;k=c[j>>2]|0;c[j>>2]=k+1;a[k>>0]=0;k=c[c[11197]>>2]|0;c[(c[11197]|0)+4>>2]=k;BA(b,g,k)|0}if(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0){k=c[e>>2]|0;g=c[(c[11209]|0)+4>>2]|0;if((c[(c[11201]|0)+4>>2]|0)>>>0>=(c[(c[11201]|0)+8>>2]|0)>>>0)eA(c[11201]|0,1)|0;b=(c[11201]|0)+4|0;j=c[b>>2]|0;c[b>>2]=j+1;a[j>>0]=0;j=c[c[11201]>>2]|0;c[(c[11201]|0)+4>>2]=j;BA(k,g,j)|0}CA(c[e>>2]|0,104981,c[(c[11209]|0)+8236>>2]|0,178518)|0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=8)break;hA(44912+(c[f>>2]<<4)|0);c[f>>2]=(c[f>>2]|0)+1}O4(c[11209]|0);h[23]=1.0;h[27]=1.0;c[11213]=0;c[11217]=0;i=d;return}function Ec(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+12|0;o=j+8|0;p=j+4|0;q=j;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[11209]=N4(8240)|0;do if((c[n>>2]|0)==6){b[(c[11209]|0)+8232>>1]=14;c[(c[11209]|0)+8236>>2]=104993}else{if((c[n>>2]|0)==5){b[(c[11209]|0)+8232>>1]=12;c[(c[11209]|0)+8236>>2]=104997;break}h=yA(c[k>>2]|0,104981)|0;c[q>>2]=h;if(((h|0)!=0?(a[c[q>>2]>>0]|0)!=0:0)?(h=(Fc(c[q>>2]|0)|0)&65535,c[p>>2]=h,(h|0)>10):0){b[(c[11209]|0)+8232>>1]=c[p>>2];c[(c[11209]|0)+8236>>2]=c[q>>2];break}h=Fc(105001)|0;b[(c[11209]|0)+8232>>1]=h;c[(c[11209]|0)+8236>>2]=105001}while(0);if(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0){q=HO(c[k>>2]|0,0,137480,178518)|0;c[c[11209]>>2]=q}else c[c[11209]>>2]=0;if(d[(c[(c[k>>2]|0)+8>>2]|0)+113>>0]&8){q=HO(c[k>>2]|0,0,105005,178518)|0;c[(c[11209]|0)+4>>2]=q}else c[(c[11209]|0)+4>>2]=0;q=HO(c[k>>2]|0,1,137480,178518)|0;c[(c[11209]|0)+8>>2]=q;q=HO(c[k>>2]|0,1,105005,178518)|0;c[(c[11209]|0)+12>>2]=q;q=HO(c[k>>2]|0,2,137480,178518)|0;c[(c[11209]|0)+16>>2]=q;if(c[m>>2]|0){m=HO(c[k>>2]|0,2,105013,178518)|0;c[(c[11209]|0)+20>>2]=m}else c[(c[11209]|0)+20>>2]=0;if(c[l>>2]|0){l=HO(c[k>>2]|0,2,105021,178518)|0;c[(c[11209]|0)+24>>2]=l}else c[(c[11209]|0)+24>>2]=0;if(d[(c[(c[k>>2]|0)+8>>2]|0)+113>>0]&33){l=HO(c[k>>2]|0,2,105005,178518)|0;c[(c[11209]|0)+28>>2]=l}else c[(c[11209]|0)+28>>2]=0;if(d[(c[(c[k>>2]|0)+8>>2]|0)+113>>0]&2){l=HO(c[k>>2]|0,2,105029,178518)|0;c[(c[11209]|0)+32>>2]=l}else c[(c[11209]|0)+32>>2]=0;if(d[(c[(c[k>>2]|0)+8>>2]|0)+113>>0]&4){l=HO(c[k>>2]|0,2,105038,178518)|0;c[(c[11209]|0)+36>>2]=l}else c[(c[11209]|0)+36>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=8)break;dA(44912+(c[o>>2]<<4)|0,1024,(c[11209]|0)+40+(c[o>>2]<<10)|0);c[o>>2]=(c[o>>2]|0)+1}i=j;return}function Fc(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+1056|0;f=e;g=e+12|0;h=e+1048|0;j=e+24|0;k=e+8|0;l=e+4|0;m=e+16|0;c[g>>2]=d;c[k>>2]=0;c[l>>2]=c[g>>2];while(1){d=c[l>>2]|0;c[l>>2]=d+1;n=a[d>>0]|0;a[h>>0]=n;if(!(n<<24>>24))break;if(!(p1(a[h>>0]|0)|0))continue;if((c[k>>2]|0)>=1023){o=6;break}n=a[h>>0]|0;d=c[k>>2]|0;c[k>>2]=d+1;a[j+d>>0]=n}if((o|0)==6){c[f>>2]=c[g>>2];$z(0,105047,f)|0}a[j+(c[k>>2]|0)>>0]=0;b[m>>1]=u3(j)|0;i=e;return b[m>>1]|0}function Gc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+48|0;d=b+24|0;e=b+16|0;f=b;g=b+32|0;h=b+28|0;c[g>>2]=a;c[h>>2]=c[(c[g>>2]|0)+16>>2];jF(c[g>>2]|0,105410)|0;a=c[g>>2]|0;j=c[(c[c[(c[g>>2]|0)+12>>2]>>2]|0)+4>>2]|0;k=c[(c[c[(c[g>>2]|0)+12>>2]>>2]|0)+8>>2]|0;c[f>>2]=c[c[c[(c[g>>2]|0)+12>>2]>>2]>>2];c[f+4>>2]=j;c[f+8>>2]=k;oF(a,105420,f);f=c[g>>2]|0;c[e>>2]=wB(c[(c[h>>2]|0)+8>>2]|0)|0;oF(f,105455,e);e=c[g>>2]|0;c[d>>2]=_(c[(c[g>>2]|0)+164>>2]|0,c[(c[g>>2]|0)+164+4>>2]|0)|0;oF(e,105468,d);jF(c[g>>2]|0,105481)|0;jF(c[g>>2]|0,105491)|0;jF(c[g>>2]|0,105499)|0;jF(c[g>>2]|0,105507)|0;jF(c[g>>2]|0,105515)|0;jF(c[g>>2]|0,105523)|0;jF(c[g>>2]|0,105531)|0;jF(c[g>>2]|0,105535)|0;jF(c[g>>2]|0,105540)|0;i=b;return}function Hc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,105391)|0;i=b;return}function Ic(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11318]=2;i=b;return}function Jc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11318]=1;i=b;return}function Kc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11318]=2;i=b;return}function Lc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11318]=0;i=b;return}function Mc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11318]=2;i=b;return}function Nc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0;f=i;i=i+160|0;g=f+32|0;j=f+152|0;k=f+148|0;l=f+144|0;m=f+140|0;n=f+136|0;o=f+132|0;p=f+128|0;q=f+124|0;r=f+120|0;s=f+116|0;t=f+24|0;u=f+16|0;v=f+112|0;w=f+8|0;x=f;c[j>>2]=b;c[k>>2]=e;c[l>>2]=c[(c[j>>2]|0)+16>>2];c[n>>2]=4;c[o>>2]=0;c[p>>2]=c[(c[l>>2]|0)+16>>2];c[q>>2]=c[11318];c[r>>2]=0;c[s>>2]=-1;h[t>>3]=+h[(c[(c[k>>2]|0)+4>>2]|0)+16>>3]*+h[(c[j>>2]|0)+352>>3];h[u>>3]=(c[(c[j>>2]|0)+360>>2]|0)!=0?1.5707963267948966:0.0;c[v>>2]=6;h[w>>3]=0.0;h[x>>3]=0.0;c[m>>2]=c[(c[(c[k>>2]|0)+4>>2]|0)+8>>2];if(c[m>>2]|0)c[s>>2]=c[(c[m>>2]|0)+20>>2];switch(a[(c[k>>2]|0)+48>>0]|0){case 108:{c[o>>2]=0;break}case 114:{c[o>>2]=2;break}default:c[o>>2]=1}m=c[j>>2]|0;j=c[n>>2]|0;n=c[o>>2]|0;o=c[p>>2]|0;p=c[q>>2]|0;q=c[r>>2]|0;r=c[s>>2]|0;y=+h[t>>3];z=+h[u>>3];u=c[v>>2]|0;A=+h[w>>3];B=+h[x>>3];C=+h[d>>3];x=~~(+h[d>>3]>=0.0?C+.5:C-.5);C=+h[d+8>>3];w=~~(+h[d+8>>3]>=0.0?C+.5:C-.5);d=Xc(c[c[k>>2]>>2]|0)|0;c[g>>2]=j;c[g+4>>2]=n;c[g+8>>2]=o;c[g+12>>2]=p;c[g+16>>2]=q;c[g+20>>2]=r;h[g+24>>3]=y;h[g+32>>3]=z;c[g+40>>2]=u;h[g+48>>3]=A;h[g+56>>3]=B;c[g+64>>2]=x;c[g+68>>2]=w;c[g+72>>2]=d;oF(m,105336,g);i=f;return}function Oc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f;h=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=0;switch(c[(c[j>>2]|0)+32>>2]|0){case 5:{c[l>>2]=0;while(1){if(!(c[45276+(c[l>>2]<<2)>>2]|0)){n=12;break}if((a[c[45276+(c[l>>2]<<2)>>2]>>0]|0)==(a[c[c[j>>2]>>2]>>0]|0)?(J3(c[45276+(c[l>>2]<<2)>>2]|0,c[c[j>>2]>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==12){o=c[j>>2]|0;p=o+32|0;c[p>>2]=6;i=f;return}c[c[j>>2]>>2]=c[l>>2];o=c[j>>2]|0;p=o+32|0;c[p>>2]=6;i=f;return}case 1:{c[l>>2]=32+(Wc(m,d[c[j>>2]>>0]|0,d[(c[j>>2]|0)+1>>0]|0,d[(c[j>>2]|0)+2>>0]|0)|0);if(c[m>>2]|0){m=c[h>>2]|0;h=c[l>>2]|0;n=d[c[j>>2]>>0]|0;e=d[(c[j>>2]|0)+1>>0]|0;b=d[(c[j>>2]|0)+2>>0]|0;c[g>>2]=c[k>>2];c[g+4>>2]=h;c[g+8>>2]=n;c[g+12>>2]=e;c[g+16>>2]=b;oF(m,105297,g)}c[c[j>>2]>>2]=c[l>>2];o=c[j>>2]|0;p=o+32|0;c[p>>2]=6;i=f;return}default:La(176099,105156,165,105318)}}function Pc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0;e=i;i=i+208|0;f=e+16|0;g=e+196|0;j=e+192|0;k=e+188|0;l=e+184|0;m=e+180|0;n=e+176|0;o=e+172|0;p=e+168|0;q=e+164|0;r=e+160|0;s=e+156|0;t=e+152|0;u=e+148|0;v=e+8|0;w=e+144|0;x=e;y=e+140|0;z=e+136|0;A=e+132|0;B=e+128|0;C=e+124|0;D=e+120|0;E=e+116|0;F=e+112|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[g>>2]|0)+16>>2];c[m>>2]=1;c[n>>2]=1;c[p>>2]=~~+h[(c[l>>2]|0)+152>>3];c[q>>2]=c[(c[l>>2]|0)+16>>2];c[r>>2]=c[(c[l>>2]|0)+56>>2];c[s>>2]=c[11318];c[t>>2]=0;c[u>>2]=(c[k>>2]|0)!=0?20:-1;c[w>>2]=0;h[x>>3]=0.0;Uc(c[l>>2]|0,o,v);G=+h[c[j>>2]>>3];l=~~(+h[c[j>>2]>>3]>=0.0?G+.5:G-.5);c[y>>2]=l;c[C>>2]=l;G=+h[(c[j>>2]|0)+8>>3];l=~~(+h[(c[j>>2]|0)+8>>3]>=0.0?G+.5:G-.5);c[z>>2]=l;c[D>>2]=l;G=+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3];c[A>>2]=~~(+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3]>=0.0?G+.5:G-.5);G=+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3];c[B>>2]=~~(+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3]>=0.0?G+.5:G-.5);G=+h[(c[j>>2]|0)+16>>3];c[E>>2]=~~(+h[(c[j>>2]|0)+16>>3]>=0.0?G+.5:G-.5);G=+h[(c[j>>2]|0)+16+8>>3];c[F>>2]=~~(+h[(c[j>>2]|0)+16+8>>3]>=0.0?G+.5:G-.5);j=c[g>>2]|0;g=c[n>>2]|0;n=c[o>>2]|0;o=c[p>>2]|0;p=c[q>>2]|0;q=c[r>>2]|0;r=c[s>>2]|0;s=c[t>>2]|0;t=c[u>>2]|0;G=+h[v>>3];v=c[w>>2]|0;H=+h[x>>3];x=c[y>>2]|0;y=c[z>>2]|0;z=c[A>>2]|0;A=c[B>>2]|0;B=c[C>>2]|0;C=c[D>>2]|0;D=c[E>>2]|0;E=c[F>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=g;c[f+8>>2]=n;c[f+12>>2]=o;c[f+16>>2]=p;c[f+20>>2]=q;c[f+24>>2]=r;c[f+28>>2]=s;c[f+32>>2]=t;h[f+40>>3]=G;c[f+48>>2]=v;h[f+56>>3]=H;c[f+64>>2]=x;c[f+68>>2]=y;c[f+72>>2]=z;c[f+76>>2]=A;c[f+80>>2]=B;c[f+84>>2]=C;c[f+88>>2]=D;c[f+92>>2]=E;oF(j,105232,f);i=e;return}function Qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0;f=i;i=i+160|0;g=f+8|0;j=f+156|0;k=f+152|0;l=f+148|0;m=f+144|0;n=f+140|0;o=f+136|0;p=f+132|0;q=f+128|0;r=f+124|0;s=f+120|0;t=f+116|0;u=f+112|0;v=f+108|0;w=f+104|0;x=f;y=f+100|0;z=f+96|0;A=f+92|0;B=f+88|0;C=f+84|0;D=f+80|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=c[(c[j>>2]|0)+16>>2];c[o>>2]=2;c[p>>2]=3;c[r>>2]=~~+h[(c[n>>2]|0)+152>>3];c[s>>2]=c[(c[n>>2]|0)+16>>2];c[t>>2]=c[(c[n>>2]|0)+56>>2];c[u>>2]=c[11318];c[v>>2]=0;c[w>>2]=(c[m>>2]|0)!=0?20:-1;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[C>>2]=0;c[D>>2]=(c[l>>2]|0)+1;Uc(c[n>>2]|0,q,x);n=c[j>>2]|0;m=c[p>>2]|0;p=c[q>>2]|0;q=c[r>>2]|0;r=c[s>>2]|0;s=c[t>>2]|0;t=c[u>>2]|0;u=c[v>>2]|0;v=c[w>>2]|0;E=+h[x>>3];x=c[y>>2]|0;y=c[z>>2]|0;z=c[A>>2]|0;A=c[B>>2]|0;B=c[C>>2]|0;C=c[D>>2]|0;c[g>>2]=c[o>>2];c[g+4>>2]=m;c[g+8>>2]=p;c[g+12>>2]=q;c[g+16>>2]=r;c[g+20>>2]=s;c[g+24>>2]=t;c[g+28>>2]=u;c[g+32>>2]=v;h[g+40>>3]=E;c[g+48>>2]=x;c[g+52>>2]=y;c[g+56>>2]=z;c[g+60>>2]=A;c[g+64>>2]=B;c[g+68>>2]=C;oF(n,105098,g);Vc(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,1);i=f;return}function Rc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0;j=i;i=i+320|0;k=j+192|0;l=j+184|0;m=j+120|0;n=j+112|0;o=j+104|0;p=j+312|0;q=j+308|0;r=j+304|0;s=j+292|0;t=j+288|0;u=j+284|0;v=j+280|0;w=j+276|0;x=j+272|0;y=j+268|0;z=j+264|0;A=j+260|0;B=j+256|0;C=j+252|0;D=j+96|0;E=j+248|0;F=j+244|0;G=j+240|0;H=j+236|0;I=j+232|0;J=j+80|0;K=j+16|0;L=j+224|0;M=j+216|0;N=j+212|0;O=j+208|0;P=j+204|0;Q=j+200|0;R=j+196|0;S=j;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[j+300>>2]=e;c[j+296>>2]=f;c[s>>2]=g;c[t>>2]=c[(c[p>>2]|0)+16>>2];c[u>>2]=3;c[x>>2]=~~+h[(c[t>>2]|0)+152>>3];c[y>>2]=c[(c[t>>2]|0)+16>>2];c[z>>2]=c[(c[t>>2]|0)+56>>2];c[A>>2]=c[11318];c[B>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=c[r>>2];c[O>>2]=0;if((c[r>>2]|0)<4)La(105149,105156,356,105176);c[Q>>2]=N4((((c[H>>2]|0)+1|0)*7|0)*20|0)|0;c[R>>2]=c[Q>>2];Uc(c[t>>2]|0,w,D);if(c[s>>2]|0){c[v>>2]=5;c[C>>2]=20;c[z>>2]=c[(c[(c[p>>2]|0)+16>>2]|0)+56>>2]}else{c[v>>2]=4;c[C>>2]=-1;c[z>>2]=0}h[K+48>>3]=+h[c[q>>2]>>3];h[K+48+8>>3]=+h[(c[q>>2]|0)+8>>3];c[O>>2]=(c[O>>2]|0)+1;T=+h[c[q>>2]>>3];c[L>>2]=~~(+h[c[q>>2]>>3]>=0.0?T+.5:T-.5);T=+h[(c[q>>2]|0)+8>>3];c[L+4>>2]=~~(+h[(c[q>>2]|0)+8>>3]>=0.0?T+.5:T-.5);s=c[R>>2]|0;t=c[L+4>>2]|0;c[o>>2]=c[L>>2];c[o+4>>2]=t;c[P>>2]=k3(s,118296,o)|0;c[R>>2]=(c[R>>2]|0)+(c[P>>2]|0);c[I>>2]=0;while(1){if(((c[I>>2]|0)+3|0)>=(c[r>>2]|0))break;o=K+48|0;c[K>>2]=c[o>>2];c[K+4>>2]=c[o+4>>2];c[K+8>>2]=c[o+8>>2];c[K+12>>2]=c[o+12>>2];c[M>>2]=1;while(1){if((c[M>>2]|0)>3)break;h[K+(c[M>>2]<<4)>>3]=+h[(c[q>>2]|0)+((c[I>>2]|0)+(c[M>>2]|0)<<4)>>3];h[K+(c[M>>2]<<4)+8>>3]=+h[(c[q>>2]|0)+((c[I>>2]|0)+(c[M>>2]|0)<<4)+8>>3];c[M>>2]=(c[M>>2]|0)+1}c[N>>2]=1;while(1){if((c[N>>2]|0)>6)break;c[O>>2]=(c[O>>2]|0)+1;qO(S,K,3,+(c[N>>2]|0)/6.0,0,0);c[J>>2]=c[S>>2];c[J+4>>2]=c[S+4>>2];c[J+8>>2]=c[S+8>>2];c[J+12>>2]=c[S+12>>2];T=+h[J>>3];c[L>>2]=~~(+h[J>>3]>=0.0?T+.5:T-.5);T=+h[J+8>>3];c[L+4>>2]=~~(+h[J+8>>3]>=0.0?T+.5:T-.5);o=c[R>>2]|0;s=c[L+4>>2]|0;c[n>>2]=c[L>>2];c[n+4>>2]=s;c[P>>2]=k3(o,118296,n)|0;c[R>>2]=(c[R>>2]|0)+(c[P>>2]|0);c[N>>2]=(c[N>>2]|0)+1}c[I>>2]=(c[I>>2]|0)+3}N=c[p>>2]|0;P=c[v>>2]|0;v=c[w>>2]|0;w=c[x>>2]|0;x=c[y>>2]|0;y=c[z>>2]|0;z=c[A>>2]|0;A=c[B>>2]|0;B=c[C>>2]|0;T=+h[D>>3];D=c[E>>2]|0;E=c[F>>2]|0;F=c[G>>2]|0;G=c[O>>2]|0;c[m>>2]=c[u>>2];c[m+4>>2]=P;c[m+8>>2]=v;c[m+12>>2]=w;c[m+16>>2]=x;c[m+20>>2]=y;c[m+24>>2]=z;c[m+28>>2]=A;c[m+32>>2]=B;h[m+40>>3]=T;c[m+48>>2]=D;c[m+52>>2]=E;c[m+56>>2]=F;c[m+60>>2]=G;oF(N,105187,m);m=c[p>>2]|0;c[l>>2]=c[Q>>2];oF(m,118303,l);O4(c[Q>>2]|0);c[I>>2]=0;while(1){U=c[p>>2]|0;if((c[I>>2]|0)>=(c[O>>2]|0))break;c[k>>2]=((c[I>>2]|0)%((c[O>>2]|0)-1|0)|0|0)!=0?1:0;oF(U,118308,k);c[I>>2]=(c[I>>2]|0)+1}jF(U,193392)|0;i=j;return}function Sc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0;e=i;i=i+160|0;f=e+8|0;g=e+152|0;j=e+148|0;k=e+144|0;l=e+140|0;m=e+136|0;n=e+132|0;o=e+128|0;p=e+124|0;q=e+120|0;r=e+116|0;s=e+112|0;t=e+108|0;u=e+104|0;v=e;w=e+100|0;x=e+96|0;y=e+92|0;z=e+88|0;A=e+84|0;B=e+80|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[g>>2]|0)+16>>2];c[m>>2]=2;c[n>>2]=1;c[p>>2]=~~+h[(c[l>>2]|0)+152>>3];c[q>>2]=c[(c[l>>2]|0)+16>>2];c[r>>2]=0;c[s>>2]=c[11318];c[t>>2]=0;c[u>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[B>>2]=c[k>>2];Uc(c[l>>2]|0,o,v);l=c[g>>2]|0;d=c[n>>2]|0;n=c[o>>2]|0;o=c[p>>2]|0;p=c[q>>2]|0;q=c[r>>2]|0;r=c[s>>2]|0;s=c[t>>2]|0;t=c[u>>2]|0;C=+h[v>>3];v=c[w>>2]|0;w=c[x>>2]|0;x=c[y>>2]|0;y=c[z>>2]|0;z=c[A>>2]|0;A=c[B>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=d;c[f+8>>2]=n;c[f+12>>2]=o;c[f+16>>2]=p;c[f+20>>2]=q;c[f+24>>2]=r;c[f+28>>2]=s;c[f+32>>2]=t;h[f+40>>3]=C;c[f+48>>2]=v;c[f+52>>2]=w;c[f+56>>2]=x;c[f+60>>2]=y;c[f+64>>2]=z;c[f+68>>2]=A;oF(l,105098,f);Vc(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,0);i=e;return}function Tc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+8|0;g=d+4|0;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;c[e>>2]=c[g>>2];oF(b,105092,e);i=d;return}function Uc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;switch(c[(c[f>>2]|0)+144>>2]|0){case 1:{c[c[g>>2]>>2]=1;h[c[j>>2]>>3]=10.0;i=e;return}case 2:{c[c[g>>2]>>2]=2;h[c[j>>2]>>3]=10.0;i=e;return}default:{c[c[g>>2]>>2]=0;h[c[j>>2]>>3]=0.0;i=e;return}}}function Vc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0;f=i;i=i+48|0;g=f+8|0;j=f;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+16|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;q=+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3];c[p>>2]=~~(+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3]>=0.0?q+.5:q-.5);q=+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3];c[p+4>>2]=~~(+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3]>=0.0?q+.5:q-.5);e=c[k>>2]|0;d=c[p+4>>2]|0;c[j>>2]=c[p>>2];c[j+4>>2]=d;oF(e,118296,j);c[o>>2]=(c[o>>2]|0)+1}if(!(c[n>>2]|0)){r=c[k>>2]|0;jF(r,193392)|0;i=f;return}q=+h[c[l>>2]>>3];c[p>>2]=~~(+h[c[l>>2]>>3]>=0.0?q+.5:q-.5);q=+h[(c[l>>2]|0)+8>>3];c[p+4>>2]=~~(+h[(c[l>>2]|0)+8>>3]>=0.0?q+.5:q-.5);l=c[k>>2]|0;n=c[p+4>>2]|0;c[g>>2]=c[p>>2];c[g+4>>2]=n;oF(l,118296,g);r=c[k>>2]|0;jF(r,193392)|0;i=f;return}function Wc(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+48|0;h=g+44|0;j=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g;c[j>>2]=a;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[o>>2]=-1;c[t>>2]=195075;c[c[j>>2]>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[11328]|0))break;c[p>>2]=(b[100448+(c[n>>2]<<1)>>1]|0)-(c[k>>2]|0);c[q>>2]=(b[100960+(c[n>>2]<<1)>>1]|0)-(c[l>>2]|0);c[r>>2]=(b[101472+(c[n>>2]<<1)>>1]|0)-(c[m>>2]|0);f=_(c[p>>2]|0,c[p>>2]|0)|0;e=f+(_(c[q>>2]|0,c[q>>2]|0)|0)|0;c[s>>2]=e+(_(c[r>>2]|0,c[r>>2]|0)|0);if((c[s>>2]|0)<(c[t>>2]|0)){if(!(c[s>>2]|0)){u=5;break}c[t>>2]=c[s>>2];c[o>>2]=c[n>>2]}c[n>>2]=(c[n>>2]|0)+1}if((u|0)==5){c[h>>2]=c[n>>2];v=c[h>>2]|0;i=g;return v|0}u=c[11328]|0;c[11328]=u+1;if((u|0)==256){c[h>>2]=c[o>>2];v=c[h>>2]|0;i=g;return v|0}else{b[100448+(c[n>>2]<<1)>>1]=c[k>>2];b[100960+(c[n>>2]<<1)>>1]=c[l>>2];b[101472+(c[n>>2]<<1)>>1]=c[m>>2];c[c[j>>2]>>2]=1;c[h>>2]=c[n>>2];v=c[h>>2]|0;i=g;return v|0}return 0}function Xc(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e;g=e+12|0;h=e+8|0;j=e+4|0;k=e+16|0;c[g>>2]=b;c[h>>2]=0;if(!(c[11329]|0)){c[11330]=64;c[11329]=N4(c[11330]|0)|0}c[j>>2]=c[11329];while(1){b=c[g>>2]|0;c[g>>2]=b+1;l=a[b>>0]|0;a[k>>0]=l;if(!(l<<24>>24))break;if((c[h>>2]|0)>((c[11330]|0)-8|0)){c[11330]=c[11330]<<1;c[11329]=Q4(c[11329]|0,c[11330]|0)|0;c[j>>2]=(c[11329]|0)+(c[h>>2]|0)}if(!(n1(d[k>>0]|0)|0)){l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=92;l=c[j>>2]|0;c[f>>2]=d[k>>0];k3(l,118421,f)|0;c[j>>2]=(c[j>>2]|0)+3;c[h>>2]=(c[h>>2]|0)+4;continue}if((d[k>>0]|0|0)==92){l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=92;c[h>>2]=(c[h>>2]|0)+1}l=a[k>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=l;c[h>>2]=(c[h>>2]|0)+1}a[c[j>>2]>>0]=0;i=e;return c[11329]|0}function Yc(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;c[f>>2]=c[(c[e>>2]|0)+16>>2];switch(c[(c[e>>2]|0)+60+4>>2]|0){case 0:{jF(c[e>>2]|0,105883)|0;if(!(c[(c[f>>2]|0)+208>>2]|0)){i=d;return}if(!(a[c[(c[f>>2]|0)+208>>2]>>0]|0)){i=d;return}jF(c[e>>2]|0,105897)|0;jF(c[e>>2]|0,XJ(c[(c[f>>2]|0)+208>>2]|0)|0)|0;jF(c[e>>2]|0,193392)|0;i=d;return}case 1:{if(!(c[(c[f>>2]|0)+208>>2]|0)){i=d;return}if(!(a[c[(c[f>>2]|0)+208>>2]>>0]|0)){i=d;return}jF(c[e>>2]|0,105897)|0;jF(c[e>>2]|0,XJ(c[(c[f>>2]|0)+208>>2]|0)|0)|0;jF(c[e>>2]|0,140232)|0;jF(c[e>>2]|0,XJ(wB(c[(c[f>>2]|0)+8>>2]|0)|0)|0)|0;jF(c[e>>2]|0,193392)|0;i=d;return}case 3:{c[g>>2]=XJ(wB(c[(c[f>>2]|0)+8>>2]|0)|0)|0;jF(c[e>>2]|0,105906)|0;jF(c[e>>2]|0,c[g>>2]|0)|0;jF(c[e>>2]|0,105916)|0;jF(c[e>>2]|0,c[g>>2]|0)|0;jF(c[e>>2]|0,105871)|0;i=d;return}default:{i=d;return}}}function Zc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+16>>2];switch(c[(c[d>>2]|0)+60+4>>2]|0){case 2:{$c(c[d>>2]|0,c[(c[e>>2]|0)+264>>2]|0,c[(c[e>>2]|0)+272>>2]|0,c[(c[e>>2]|0)+268>>2]|0,c[(c[e>>2]|0)+208>>2]|0,c[(c[e>>2]|0)+228>>2]|0,c[(c[e>>2]|0)+244>>2]|0,c[(c[e>>2]|0)+212>>2]|0);i=b;return}case 3:{$c(c[d>>2]|0,c[(c[e>>2]|0)+264>>2]|0,c[(c[e>>2]|0)+272>>2]|0,c[(c[e>>2]|0)+268>>2]|0,c[(c[e>>2]|0)+208>>2]|0,c[(c[e>>2]|0)+228>>2]|0,c[(c[e>>2]|0)+244>>2]|0,c[(c[e>>2]|0)+212>>2]|0);jF(c[d>>2]|0,105875)|0;i=b;return}default:{i=b;return}}}function _c(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[(c[h>>2]|0)+16>>2];$c(c[h>>2]|0,c[(c[n>>2]|0)+264>>2]|0,c[(c[n>>2]|0)+272>>2]|0,c[(c[n>>2]|0)+268>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=g;return}function $c(b,d,e,f,g,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0;m=i;i=i+176|0;n=m+120|0;o=m+112|0;p=m+96|0;q=m+80|0;r=m+56|0;s=m+48|0;t=m+40|0;u=m+24|0;v=m;w=m+160|0;x=m+156|0;y=m+152|0;z=m+148|0;A=m+144|0;B=m+140|0;C=m+136|0;D=m+132|0;E=m+128|0;c[w>>2]=b;c[x>>2]=d;c[y>>2]=e;c[z>>2]=f;c[A>>2]=g;c[B>>2]=j;c[C>>2]=k;c[D>>2]=l;if(!((c[y>>2]|0)!=0&(c[z>>2]|0)!=0)){i=m;return}if((c[11406]|0)<(c[z>>2]|0)){c[11406]=(c[z>>2]|0)+10;c[11407]=Q4(c[11407]|0,c[11406]<<3)|0}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[z>>2]|0))break;F=+h[(c[y>>2]|0)+(c[E>>2]<<4)>>3];c[(c[11407]|0)+(c[E>>2]<<3)>>2]=~~(+h[(c[y>>2]|0)+(c[E>>2]<<4)>>3]>=0.0?F+.5:F-.5);F=+h[(c[y>>2]|0)+(c[E>>2]<<4)+8>>3];c[(c[11407]|0)+(c[E>>2]<<3)+4>>2]=~~(+h[(c[y>>2]|0)+(c[E>>2]<<4)+8>>3]>=0.0?F+.5:F-.5);c[E>>2]=(c[E>>2]|0)+1}if(((c[A>>2]|0)!=0?(c[(c[w>>2]|0)+60+4>>2]|0)==0:0)?(a[c[A>>2]>>0]|0)!=0:0)switch(c[x>>2]|0){case 0:{y=c[w>>2]|0;l=c[c[11407]>>2]|0;k=c[(c[11407]|0)+8+4>>2]|0;j=c[(c[11407]|0)+8>>2]|0;g=c[(c[11407]|0)+4>>2]|0;c[v>>2]=c[A>>2];c[v+4>>2]=l;c[v+8>>2]=k;c[v+12>>2]=j;c[v+16>>2]=g;oF(y,105611,v);i=m;return}case 1:{v=c[w>>2]|0;y=c[c[11407]>>2]|0;g=c[(c[11407]|0)+4>>2]|0;j=(c[(c[11407]|0)+8>>2]|0)-(c[c[11407]>>2]|0)|0;c[u>>2]=c[A>>2];c[u+4>>2]=y;c[u+8>>2]=g;c[u+12>>2]=j;oF(v,105632,u);i=m;return}case 2:{u=c[w>>2]|0;c[t>>2]=c[A>>2];oF(u,105652,t);c[E>>2]=0;while(1){G=c[w>>2]|0;if((c[E>>2]|0)>=(c[z>>2]|0))break;t=c[(c[11407]|0)+(c[E>>2]<<3)+4>>2]|0;c[s>>2]=c[(c[11407]|0)+(c[E>>2]<<3)>>2];c[s+4>>2]=t;oF(G,105660,s);c[E>>2]=(c[E>>2]|0)+1}jF(G,193392)|0;i=m;return}default:La(176099,105667,65,105687)}if(((c[A>>2]|0)!=0?(c[(c[w>>2]|0)+60+4>>2]|0)==1:0)?(a[c[A>>2]>>0]|0)!=0:0){if(c[x>>2]|0)La(176099,105667,77,105687);G=c[w>>2]|0;s=c[(c[11407]|0)+8+4>>2]|0;t=c[(c[11407]|0)+8>>2]|0;u=c[(c[11407]|0)+4>>2]|0;v=c[A>>2]|0;j=c[B>>2]|0;c[r>>2]=c[c[11407]>>2];c[r+4>>2]=s;c[r+8>>2]=t;c[r+12>>2]=u;c[r+16>>2]=v;c[r+20>>2]=j;oF(G,105704,r);i=m;return}if((c[(c[w>>2]|0)+60+4>>2]|0)!=2?(c[(c[w>>2]|0)+60+4>>2]|0)!=3:0){i=m;return}switch(c[x>>2]|0){case 1:{jF(c[w>>2]|0,105737)|0;break}case 0:{jF(c[w>>2]|0,105758)|0;break}case 2:{jF(c[w>>2]|0,105777)|0;break}default:La(176099,105667,93,105687)}if((c[D>>2]|0)!=0?(a[c[D>>2]>>0]|0)!=0:0){jF(c[w>>2]|0,105796)|0;r=c[w>>2]|0;jF(r,ZJ(c[D>>2]|0)|0)|0;jF(c[w>>2]|0,136329)|0}if((c[A>>2]|0)!=0?(a[c[A>>2]>>0]|0)!=0:0){jF(c[w>>2]|0,105802)|0;D=c[w>>2]|0;jF(D,ZJ(c[A>>2]|0)|0)|0;jF(c[w>>2]|0,136329)|0}if((c[C>>2]|0)!=0?(a[c[C>>2]>>0]|0)!=0:0){jF(c[w>>2]|0,111736)|0;A=c[w>>2]|0;jF(A,XJ(c[C>>2]|0)|0)|0;jF(c[w>>2]|0,136329)|0}if((c[B>>2]|0)!=0?(a[c[B>>2]>>0]|0)!=0:0){jF(c[w>>2]|0,105810)|0;C=c[w>>2]|0;jF(C,XJ(c[B>>2]|0)|0)|0;jF(c[w>>2]|0,136329)|0}jF(c[w>>2]|0,105819)|0;jF(c[w>>2]|0,105827)|0;a:do switch(c[x>>2]|0){case 1:{B=c[w>>2]|0;C=c[(c[11407]|0)+4>>2]|0;A=(c[(c[11407]|0)+8>>2]|0)-(c[c[11407]>>2]|0)|0;c[q>>2]=c[c[11407]>>2];c[q+4>>2]=C;c[q+8>>2]=A;oF(B,105837,q);break}case 0:{B=c[w>>2]|0;A=c[(c[11407]|0)+8+4>>2]|0;C=c[(c[11407]|0)+8>>2]|0;D=c[(c[11407]|0)+4>>2]|0;c[p>>2]=c[c[11407]>>2];c[p+4>>2]=A;c[p+8>>2]=C;c[p+12>>2]=D;oF(B,105846,p);break}case 2:{B=c[w>>2]|0;D=c[(c[11407]|0)+4>>2]|0;c[o>>2]=c[c[11407]>>2];c[o+4>>2]=D;oF(B,105858,o);c[E>>2]=1;while(1){if((c[E>>2]|0)>=(c[z>>2]|0))break a;B=c[w>>2]|0;D=c[(c[11407]|0)+(c[E>>2]<<3)+4>>2]|0;c[n>>2]=c[(c[11407]|0)+(c[E>>2]<<3)>>2];c[n+4>>2]=D;oF(B,105864,n);c[E>>2]=(c[E>>2]|0)+1}break}default:{}}while(0);E=c[w>>2]|0;if((c[(c[w>>2]|0)+60+4>>2]|0)==3){jF(E,110674)|0;i=m;return}else{jF(E,105871)|0;i=m;return}}function ad(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;e=b+12|0;c[e>>2]=a;jF(c[e>>2]|0,110515)|0;a=c[e>>2]|0;if((c[(c[e>>2]|0)+60+4>>2]|0)==2)jF(a,110530)|0;else jF(a,193392)|0;a=c[e>>2]|0;f=c[(c[c[(c[e>>2]|0)+12>>2]>>2]|0)+4>>2]|0;g=c[(c[c[(c[e>>2]|0)+12>>2]>>2]|0)+8>>2]|0;c[d>>2]=c[c[c[(c[e>>2]|0)+12>>2]>>2]>>2];c[d+4>>2]=f;c[d+8>>2]=g;oF(a,110541,d);i=b;return}function bd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+8|0;e=b;f=b+24|0;c[f>>2]=a;jF(c[f>>2]|0,110469)|0;if((c[(c[f>>2]|0)+60+4>>2]|0)!=2){a=c[f>>2]|0;c[e>>2]=c[(c[(c[f>>2]|0)+12>>2]|0)+28>>2];oF(a,110480,e)}if(c[(c[(c[f>>2]|0)+12>>2]|0)+20>>2]|0){g=c[f>>2]|0;jF(g,110495)|0;h=c[f>>2]|0;jF(h,110508)|0;i=b;return}if((c[(c[f>>2]|0)+60+4>>2]|0)==2){g=c[f>>2]|0;jF(g,110495)|0;h=c[f>>2]|0;jF(h,110508)|0;i=b;return}e=c[f>>2]|0;a=c[(c[f>>2]|0)+472+4>>2]|0;j=c[(c[f>>2]|0)+472+8>>2]|0;k=c[(c[f>>2]|0)+472+8+4>>2]|0;c[d>>2]=c[(c[f>>2]|0)+472>>2];c[d+4>>2]=a;c[d+8>>2]=j;c[d+12>>2]=k;oF(e,106833,d);g=c[f>>2]|0;jF(g,110495)|0;h=c[f>>2]|0;jF(h,110508)|0;i=b;return}function cd(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;f=e+24|0;g=e+8|0;h=e;j=e+44|0;k=e+40|0;l=e+32|0;c[j>>2]=b;c[k>>2]=c[(c[j>>2]|0)+16>>2];a[106763]=0;if(!(c[(c[(c[j>>2]|0)+12>>2]|0)+28>>2]|0)){b=c[j>>2]|0;c[h>>2]=wB(c[(c[k>>2]|0)+8>>2]|0)|0;oF(b,106764,h);h=c[j>>2]|0;if((c[(c[j>>2]|0)+60+4>>2]|0)!=2)jF(h,106779)|0;else jF(h,106797)|0;do if(!(c[(c[(c[j>>2]|0)+12>>2]|0)+20>>2]|0)){h=c[j>>2]|0;if((c[(c[j>>2]|0)+60+4>>2]|0)!=2){jF(h,106809)|0;break}else{b=c[(c[j>>2]|0)+456+4>>2]|0;m=c[(c[j>>2]|0)+456+8>>2]|0;n=c[(c[j>>2]|0)+456+8+4>>2]|0;c[g>>2]=c[(c[j>>2]|0)+456>>2];c[g+4>>2]=b;c[g+8>>2]=m;c[g+12>>2]=n;oF(h,106833,g);break}}while(0);jF(c[j>>2]|0,106863)|0;HL(c[j>>2]|0,c[(c[(c[j>>2]|0)+12>>2]|0)+24>>2]|0,45876);JL(c[j>>2]|0);if(c[(c[(c[j>>2]|0)+12>>2]|0)+20>>2]|0){c[l>>2]=c[c[(c[(c[j>>2]|0)+12>>2]|0)+20>>2]>>2];c[l+4>>2]=0;HL(c[j>>2]|0,0,l)}}c[11468]=(d[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+115>>0]|0)==1?1:-1;if(!(a[106763]|0)){jF(c[j>>2]|0,106883)|0;a[106763]=1}if(!(c[(c[k>>2]|0)+208>>2]|0)){i=e;return}l=c[j>>2]|0;c[f>>2]=KL(c[(c[k>>2]|0)+208>>2]|0,c[11468]|0)|0;oF(l,106896,f);i=e;return}function dd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f;h=f+20|0;j=f+12|0;k=f+8|0;c[h>>2]=a;c[f+16>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[h>>2]|0;h=c[k>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=h;oF(e,106747,g);i=f;return}function ed(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0;b=i;i=i+176|0;d=b+128|0;e=b+112|0;f=b+72|0;g=b+56|0;j=b+40|0;k=b+32|0;l=b+24|0;m=b+8|0;n=b;o=b+160|0;p=b+144|0;c[o>>2]=a;a=(c[o>>2]|0)+456|0;c[p>>2]=c[a>>2];c[p+4>>2]=c[a+4>>2];c[p+8>>2]=c[a+8>>2];c[p+12>>2]=c[a+12>>2];a=c[o>>2]|0;q=(c[(c[(c[o>>2]|0)+12>>2]|0)+28>>2]|0)+1|0;c[n>>2]=(c[(c[(c[o>>2]|0)+12>>2]|0)+28>>2]|0)+1;c[n+4>>2]=q;oF(a,106374,n);if(!(c[(c[(c[o>>2]|0)+12>>2]|0)+20>>2]|0)){n=c[o>>2]|0;a=c[p+4>>2]|0;q=c[p+8>>2]|0;r=c[p+8+4>>2]|0;c[m>>2]=c[p>>2];c[m+4>>2]=a;c[m+8>>2]=q;c[m+12>>2]=r;oF(n,106391,m)}m=c[o>>2]|0;c[l>>2]=(c[(c[o>>2]|0)+360>>2]|0)!=0?106425:106435;oF(m,106444,l);if((c[(c[o>>2]|0)+60+4>>2]|0)==1){l=c[o>>2]|0;m=c[p+8+4>>2]|0;c[k>>2]=c[p+8>>2];c[k+4>>2]=m;oF(l,106469,k)}k=c[o>>2]|0;l=c[(c[o>>2]|0)+196+4>>2]|0;m=c[(c[o>>2]|0)+204>>2]|0;c[j>>2]=c[(c[o>>2]|0)+196>>2];c[j+4>>2]=l;c[j+8>>2]=m;oF(k,106508,j);if(!(c[(c[(c[o>>2]|0)+12>>2]|0)+20>>2]|0)){j=c[o>>2]|0;k=c[p+4>>2]|0;m=(c[p+8>>2]|0)-(c[p>>2]|0)|0;l=(c[p+8+4>>2]|0)-(c[p+4>>2]|0)|0;c[g>>2]=c[p>>2];c[g+4>>2]=k;c[g+8>>2]=m;c[g+12>>2]=l;oF(j,106528,g)}g=c[o>>2]|0;s=+h[(c[o>>2]|0)+488+8>>3];j=c[(c[o>>2]|0)+360>>2]|0;t=+h[(c[o>>2]|0)+504>>3];u=+h[(c[o>>2]|0)+504+8>>3];h[f>>3]=+h[(c[o>>2]|0)+488>>3];h[f+8>>3]=s;c[f+16>>2]=j;h[f+24>>3]=t;h[f+32>>3]=u;oF(g,106568,f);if((c[(c[o>>2]|0)+60+4>>2]|0)!=1){i=b;return}if(!((c[p+8>>2]|0)<14400?(c[p+8+4>>2]|0)<14400:0)){f=c[(c[(c[o>>2]|0)+12>>2]|0)+16>>2]|0;g=c[p+8+4>>2]|0;c[e>>2]=c[p+8>>2];c[e+4>>2]=g;c[e+8>>2]=14400;Db[f&31](106611,e)}e=c[o>>2]|0;o=c[p+4>>2]|0;f=c[p+8>>2]|0;g=c[p+8+4>>2]|0;c[d>>2]=c[p>>2];c[d+4>>2]=o;c[d+8>>2]=f;c[d+12>>2]=g;oF(e,106706,d);i=b;return}function fd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;if(c[(c[(c[e>>2]|0)+12>>2]|0)+20>>2]|0){jF(c[e>>2]|0,106298)|0;HL(c[e>>2]|0,0,(c[(c[(c[e>>2]|0)+12>>2]|0)+20>>2]|0)+4|0)}jF(c[e>>2]|0,106315)|0;jF(c[e>>2]|0,106342)|0;a=c[e>>2]|0;c[d>>2]=c[(c[(c[e>>2]|0)+12>>2]|0)+28>>2];oF(a,106357,d);i=b;return}function gd(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;f=b+4|0;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+16>>2];a=c[e>>2]|0;c[d>>2]=wB(c[(c[f>>2]|0)+8>>2]|0)|0;oF(a,106291,d);jF(c[e>>2]|0,106284)|0;i=b;return}function hd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,121737)|0;i=b;return}function id(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,106284)|0;i=b;return}function jd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,121737)|0;i=b;return}function kd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,106284)|0;i=b;return}function ld(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,121737)|0;i=b;return}function md(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g;j=g+24|0;k=g+20|0;l=g+4|0;c[j>>2]=a;c[k>>2]=b;c[g+16>>2]=d;c[g+12>>2]=e;c[g+8>>2]=f;c[l>>2]=c[(c[j>>2]|0)+16>>2];if(!(c[k>>2]|0)){i=g;return}if(!(c[(c[l>>2]|0)+272>>2]|0)){i=g;return}jF(c[j>>2]|0,106180)|0;rF(c[j>>2]|0,c[(c[l>>2]|0)+272>>2]|0,2);jF(c[j>>2]|0,106191)|0;l=c[j>>2]|0;c[h>>2]=KL(c[k>>2]|0,c[11468]|0)|0;oF(l,106195,h);i=g;return}function nd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;g=f+8|0;j=f;k=f+32|0;l=f+28|0;m=f+24|0;c[k>>2]=b;c[l>>2]=e;if(+h[(c[(c[k>>2]|0)+16>>2]|0)+16+24>>3]<.5){i=f;return}ud(c[k>>2]|0,(c[(c[k>>2]|0)+16>>2]|0)+16|0);pF(c[k>>2]|0,+h[(c[(c[l>>2]|0)+4>>2]|0)+16>>3]);e=c[k>>2]|0;c[g>>2]=c[c[(c[l>>2]|0)+4>>2]>>2];oF(e,106139,g);c[m>>2]=KL(c[c[l>>2]>>2]|0,c[11468]|0)|0;switch(a[(c[l>>2]|0)+48>>0]|0){case 114:{h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+32>>3];break}case 108:{h[d>>3]=+h[d>>3]-0.0;break}default:h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+32>>3]/2.0}e=d+8|0;h[e>>3]=+h[e>>3]+ +h[(c[l>>2]|0)+24>>3];e=c[k>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];qF(e,g);jF(c[k>>2]|0,106154)|0;pF(c[k>>2]|0,+h[(c[l>>2]|0)+32>>3]);l=c[k>>2]|0;c[j>>2]=c[m>>2];oF(l,106163,j);i=f;return}function od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;j=e+32|0;k=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;d=c[g>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];h[k+16>>3]=+h[(c[g>>2]|0)+16>>3]-+h[c[g>>2]>>3];h[k+16+8>>3]=+h[(c[g>>2]|0)+16+8>>3]-+h[(c[g>>2]|0)+8>>3];if((c[j>>2]|0)!=0?+h[(c[(c[f>>2]|0)+16>>2]|0)+56+24>>3]>.5:0){ud(c[f>>2]|0,(c[(c[f>>2]|0)+16>>2]|0)+56|0);rF(c[f>>2]|0,k,2);jF(c[f>>2]|0,106097)|0}if(!(+h[(c[(c[f>>2]|0)+16>>2]|0)+16+24>>3]>.5)){i=e;return}vd(c[f>>2]|0);ud(c[f>>2]|0,(c[(c[f>>2]|0)+16>>2]|0)+16|0);rF(c[f>>2]|0,k,2);jF(c[f>>2]|0,106117)|0;i=e;return}function pd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[m>>2]|0)!=0?+h[(c[(c[j>>2]|0)+16>>2]|0)+56+24>>3]>.5:0){ud(c[j>>2]|0,(c[(c[j>>2]|0)+16>>2]|0)+56|0);jF(c[j>>2]|0,106018)|0;m=c[j>>2]|0;e=c[k>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];qF(m,g);jF(c[j>>2]|0,106027)|0;c[n>>2]=1;while(1){o=c[j>>2]|0;if((c[n>>2]|0)>=(c[l>>2]|0))break;m=(c[k>>2]|0)+(c[n>>2]<<4)|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];qF(o,g);jF(c[j>>2]|0,106036)|0;c[n>>2]=(c[n>>2]|0)+1}jF(o,106063)|0}if(!(+h[(c[(c[j>>2]|0)+16>>2]|0)+16+24>>3]>.5)){i=f;return}vd(c[j>>2]|0);ud(c[j>>2]|0,(c[(c[j>>2]|0)+16>>2]|0)+16|0);jF(c[j>>2]|0,106018)|0;o=c[j>>2]|0;m=c[k>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];qF(o,g);jF(c[j>>2]|0,106027)|0;c[n>>2]=1;while(1){p=c[j>>2]|0;if((c[n>>2]|0)>=(c[l>>2]|0))break;o=(c[k>>2]|0)+(c[n>>2]<<4)|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];qF(p,g);jF(c[j>>2]|0,106036)|0;c[n>>2]=(c[n>>2]|0)+1}jF(p,106079)|0;i=f;return}function qd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;k=j;l=j+40|0;m=j+36|0;n=j+32|0;o=j+20|0;p=j+16|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[j+28>>2]=e;c[j+24>>2]=f;c[o>>2]=g;if((c[o>>2]|0)!=0?+h[(c[(c[l>>2]|0)+16>>2]|0)+56+24>>3]>.5:0){ud(c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+56|0);jF(c[l>>2]|0,106018)|0;o=c[l>>2]|0;g=c[m>>2]|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];qF(o,k);jF(c[l>>2]|0,106027)|0;c[p>>2]=1;while(1){q=c[l>>2]|0;if((c[p>>2]|0)>=(c[n>>2]|0))break;rF(q,(c[m>>2]|0)+(c[p>>2]<<4)|0,3);jF(c[l>>2]|0,106053)|0;c[p>>2]=(c[p>>2]|0)+3}jF(q,106063)|0}if(!(+h[(c[(c[l>>2]|0)+16>>2]|0)+16+24>>3]>.5)){i=j;return}vd(c[l>>2]|0);ud(c[l>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+16|0);jF(c[l>>2]|0,106018)|0;q=c[l>>2]|0;o=c[m>>2]|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];qF(q,k);jF(c[l>>2]|0,106027)|0;c[p>>2]=1;while(1){r=c[l>>2]|0;if((c[p>>2]|0)>=(c[n>>2]|0))break;rF(r,(c[m>>2]|0)+(c[p>>2]<<4)|0,3);jF(c[l>>2]|0,106053)|0;c[p>>2]=(c[p>>2]|0)+3}jF(r,106045)|0;i=j;return}function rd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;if(!(+h[(c[(c[g>>2]|0)+16>>2]|0)+16+24>>3]>.5)){i=e;return}vd(c[g>>2]|0);ud(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+16|0);jF(c[g>>2]|0,106018)|0;d=c[g>>2]|0;b=c[j>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];qF(d,f);jF(c[g>>2]|0,106027)|0;c[l>>2]=1;while(1){m=c[g>>2]|0;if((c[l>>2]|0)>=(c[k>>2]|0))break;d=(c[j>>2]|0)+(c[l>>2]<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];qF(m,f);jF(c[g>>2]|0,106036)|0;c[l>>2]=(c[l>>2]|0)+1}jF(m,106045)|0;i=e;return}function sd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;jF(c[e>>2]|0,106015)|0;jF(c[e>>2]|0,c[f>>2]|0)|0;jF(c[e>>2]|0,193392)|0;i=d;return}function td(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+64|0;j=g+16|0;k=g+8|0;l=g;m=g+48|0;n=g+44|0;o=g+40|0;p=g+36|0;q=g+32|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;if((c[q>>2]|0)!=0?+h[(c[(c[m>>2]|0)+16>>2]|0)+56+24>>3]>.5:0){ud(c[m>>2]|0,(c[(c[m>>2]|0)+16>>2]|0)+56|0);jF(c[m>>2]|0,121632)|0;rF(c[m>>2]|0,c[o>>2]|0,c[p>>2]|0);jF(c[m>>2]|0,140232)|0;q=c[m>>2]|0;f=c[o>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];qF(q,j);q=c[m>>2]|0;f=c[n>>2]|0;c[l>>2]=c[p>>2];c[l+4>>2]=f;oF(q,105932,l)}if(!(+h[(c[(c[m>>2]|0)+16>>2]|0)+16+24>>3]>.5)){i=g;return}vd(c[m>>2]|0);ud(c[m>>2]|0,(c[(c[m>>2]|0)+16>>2]|0)+16|0);jF(c[m>>2]|0,121632)|0;rF(c[m>>2]|0,c[o>>2]|0,c[p>>2]|0);jF(c[m>>2]|0,140232)|0;l=c[m>>2]|0;q=c[o>>2]|0;c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];qF(l,j);j=c[m>>2]|0;m=c[n>>2]|0;c[k>>2]=c[p>>2];c[k+4>>2]=m;oF(j,105948,k);i=g;return}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0,l=0.0;d=i;i=i+48|0;e=d;f=d+40|0;g=d+36|0;j=d+32|0;c[f>>2]=a;c[g>>2]=b;if(!(c[g>>2]|0)){i=d;return}switch(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0){case 1:case 0:{c[j>>2]=149098;break}case 2:{c[j>>2]=149084;break}case 3:{c[j>>2]=149079;break}default:c[j>>2]=105984}b=c[f>>2]|0;k=+h[(c[g>>2]|0)+8>>3];l=+h[(c[g>>2]|0)+16>>3];f=c[j>>2]|0;h[e>>3]=+h[c[g>>2]>>3];h[e+8>>3]=k;h[e+16>>3]=l;c[e+24>>2]=f;oF(b,105991,e);i=d;return}function vd(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;e=d+16|0;f=d+8|0;g=d+32|0;j=d;k=d+28|0;l=d+24|0;m=d+20|0;c[g>>2]=b;h[j>>3]=+h[(c[(c[g>>2]|0)+16>>2]|0)+152>>3];c[m>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+160>>2];pF(c[g>>2]|0,+h[j>>3]);jF(c[g>>2]|0,105965)|0;while(1){if(!(c[m>>2]|0)){n=12;break}j=c[m>>2]|0;c[m>>2]=j+4;b=c[j>>2]|0;c[l>>2]=b;c[k>>2]=b;if(!b){n=12;break}if(!(J3(c[l>>2]|0,148650)|0))continue;do{b=(a[c[k>>2]>>0]|0)!=0;c[k>>2]=(c[k>>2]|0)+1}while(b);a:while(1){if(!(a[c[k>>2]>>0]|0))break;b=c[g>>2]|0;c[f>>2]=c[k>>2];oF(b,105980,f);while(1){b=(a[c[k>>2]>>0]|0)!=0;c[k>>2]=(c[k>>2]|0)+1;if(!b)continue a}}if(!(J3(c[l>>2]|0,171938)|0))h[(c[(c[g>>2]|0)+16>>2]|0)+152>>3]=0.0;b=c[g>>2]|0;c[e>>2]=c[l>>2];oF(b,134465,e)}if((n|0)==12){i=d;return}}function wd(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;jF(c[e>>2]|0,112090)|0;b=yA(c[(c[c[e>>2]>>2]|0)+168>>2]|0,112146)|0;c[f>>2]=b;if((b|0)!=0?(a[c[f>>2]>>0]|0)!=0:0){jF(c[e>>2]|0,112157)|0;jF(c[e>>2]|0,c[f>>2]|0)|0;jF(c[e>>2]|0,112181)|0}jF(c[e>>2]|0,112202)|0;jF(c[e>>2]|0,112250)|0;jF(c[e>>2]|0,112304)|0;f=c[e>>2]|0;jF(f,XJ(c[c[c[(c[e>>2]|0)+12>>2]>>2]>>2]|0)|0)|0;jF(c[e>>2]|0,115407)|0;f=c[e>>2]|0;jF(f,XJ(c[(c[c[(c[e>>2]|0)+12>>2]>>2]|0)+4>>2]|0)|0)|0;jF(c[e>>2]|0,115417)|0;f=c[e>>2]|0;jF(f,XJ(c[(c[c[(c[e>>2]|0)+12>>2]>>2]|0)+8>>2]|0)|0)|0;jF(c[e>>2]|0,112628)|0;jF(c[e>>2]|0,112731)|0;i=d;return}function xd(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0,m=0.0,n=0.0;d=i;i=i+64|0;e=d+16|0;f=d+8|0;g=d;j=d+52|0;k=d+48|0;c[j>>2]=b;c[k>>2]=c[(c[j>>2]|0)+16>>2];jF(c[j>>2]|0,111925)|0;if(a[(wB(c[(c[k>>2]|0)+8>>2]|0)|0)>>0]|0){jF(c[j>>2]|0,112591)|0;b=c[j>>2]|0;jF(b,XJ(wB(c[(c[k>>2]|0)+8>>2]|0)|0)|0)|0}k=c[j>>2]|0;c[g>>2]=_(c[(c[j>>2]|0)+164>>2]|0,c[(c[j>>2]|0)+164+4>>2]|0)|0;oF(k,111930,g);g=c[j>>2]|0;k=c[(c[j>>2]|0)+452>>2]|0;c[f>>2]=c[(c[j>>2]|0)+448>>2];c[f+4>>2]=k;oF(g,111946,f);f=c[j>>2]|0;l=+h[(c[j>>2]|0)+384+8>>3];m=+h[(c[j>>2]|0)+384+16>>3];n=+h[(c[j>>2]|0)+384+16+8>>3];h[e>>3]=+h[(c[j>>2]|0)+384>>3];h[e+8>>3]=l;h[e+16>>3]=m;h[e+24>>3]=n;oF(f,111979,e);jF(c[j>>2]|0,112010)|0;jF(c[j>>2]|0,112046)|0;jF(c[j>>2]|0,113614)|0;i=d;return}function yd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111917)|0;i=b;return}function zd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;c[g>>2]=a;c[h>>2]=b;c[f+4>>2]=d;c[f>>2]=e;jF(c[g>>2]|0,111746)|0;e=c[g>>2]|0;jF(e,XJ(c[h>>2]|0)|0)|0;jF(c[g>>2]|0,111899)|0;i=f;return}function Ad(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111690)|0;i=b;return}function Bd(b){b=b|0;var d=0,e=0,f=0,g=0,j=0.0,k=0,l=0.0,m=0.0;d=i;i=i+48|0;e=d;f=d+44|0;g=d+40|0;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+16>>2];jF(c[f>>2]|0,111746)|0;b=c[f>>2]|0;jF(b,XJ(c[(c[g>>2]|0)+212>>2]|0)|0)|0;jF(c[f>>2]|0,111827)|0;b=c[f>>2]|0;j=+h[(c[f>>2]|0)+488+8>>3];k=0-(c[(c[f>>2]|0)+360>>2]|0)|0;l=+h[(c[f>>2]|0)+504>>3];m=-+h[(c[f>>2]|0)+504+8>>3];h[e>>3]=+h[(c[f>>2]|0)+488>>3];h[e+8>>3]=j;c[e+16>>2]=k;h[e+24>>3]=l;h[e+32>>3]=m;oF(b,111843,e);if(!(a[(wB(c[(c[g>>2]|0)+8>>2]|0)|0)>>0]|0)){i=d;return}jF(c[f>>2]|0,111770)|0;e=c[f>>2]|0;jF(e,XJ(wB(c[(c[g>>2]|0)+8>>2]|0)|0)|0)|0;jF(c[f>>2]|0,111778)|0;i=d;return}function Cd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111690)|0;i=b;return}function Dd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+16>>2];jF(c[d>>2]|0,111746)|0;a=c[d>>2]|0;jF(a,XJ(c[(c[e>>2]|0)+212>>2]|0)|0)|0;jF(c[d>>2]|0,111808)|0;jF(c[d>>2]|0,111770)|0;a=c[d>>2]|0;jF(a,XJ(wB(c[(c[e>>2]|0)+8>>2]|0)|0)|0)|0;jF(c[d>>2]|0,111778)|0;i=b;return}function Ed(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111690)|0;i=b;return}function Fd(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;f=b+4|0;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+16>>2];jF(c[e>>2]|0,111746)|0;a=c[e>>2]|0;jF(a,XJ(c[(c[f>>2]|0)+212>>2]|0)|0)|0;if((c[(c[e>>2]|0)+160>>2]|0)>1){a=c[e>>2]|0;c[d>>2]=XJ(c[(c[(c[c[e>>2]>>2]|0)+308>>2]|0)+(c[(c[e>>2]|0)+160>>2]<<2)>>2]|0)|0;oF(a,111788,d)}jF(c[e>>2]|0,111792)|0;jF(c[e>>2]|0,111770)|0;d=c[e>>2]|0;jF(d,XJ(wB(c[(c[f>>2]|0)+8>>2]|0)|0)|0)|0;jF(c[e>>2]|0,111778)|0;i=b;return}function Gd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111690)|0;i=b;return}function Hd(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+16>>2];jF(c[d>>2]|0,111746)|0;a=c[d>>2]|0;jF(a,XJ(c[(c[e>>2]|0)+212>>2]|0)|0)|0;jF(c[d>>2]|0,111754)|0;jF(c[d>>2]|0,111770)|0;c[f>>2]=WJ(139926,c[(c[e>>2]|0)+8>>2]|0)|0;e=c[d>>2]|0;jF(e,XJ(c[f>>2]|0)|0)|0;O4(c[f>>2]|0);jF(c[d>>2]|0,111778)|0;i=b;return}function Id(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,111690)|0;i=b;return}function Jd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;jF(c[j>>2]|0,111696)|0;if(c[n>>2]|0){jF(c[j>>2]|0,111699)|0;g=c[j>>2]|0;jF(g,XJ(c[n>>2]|0)|0)|0;jF(c[j>>2]|0,136329)|0}jF(c[j>>2]|0,111679)|0;jF(c[j>>2]|0,113575)|0;if((c[k>>2]|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){jF(c[j>>2]|0,111707)|0;jF(c[j>>2]|0,c[k>>2]|0)|0;jF(c[j>>2]|0,136329)|0}if((c[l>>2]|0)!=0?(a[c[l>>2]>>0]|0)!=0:0){jF(c[j>>2]|0,111721)|0;k=c[j>>2]|0;jF(k,XJ(c[l>>2]|0)|0)|0;jF(c[j>>2]|0,136329)|0}if(!(c[m>>2]|0)){o=c[j>>2]|0;jF(o,113614)|0;i=h;return}if(!(a[c[m>>2]>>0]|0)){o=c[j>>2]|0;jF(o,113614)|0;i=h;return}jF(c[j>>2]|0,111736)|0;l=c[j>>2]|0;jF(l,XJ(c[m>>2]|0)|0)|0;jF(c[j>>2]|0,136329)|0;o=c[j>>2]|0;jF(o,113614)|0;i=h;return}function Kd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,113569)|0;jF(c[d>>2]|0,111690)|0;i=b;return}function Ld(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0,P=0,Q=0,R=0,S=0;g=i;i=i+208|0;j=g+152|0;k=g+144|0;l=g+136|0;m=g+128|0;n=g+120|0;o=g+112|0;p=g+104|0;q=g+96|0;r=g+88|0;s=g+80|0;t=g+72|0;u=g+64|0;v=g+56|0;w=g+48|0;x=g+40|0;y=g+32|0;z=g+24|0;A=g+16|0;B=g;C=g+200|0;D=g+196|0;E=g+192|0;F=g+188|0;G=g+184|0;H=g+180|0;I=g+176|0;J=g+172|0;K=g+168|0;L=g+164|0;c[C>>2]=b;c[D>>2]=f;c[E>>2]=c[(c[C>>2]|0)+16>>2];c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;jF(c[C>>2]|0,111307)|0;switch(a[(c[D>>2]|0)+48>>0]|0){case 108:{jF(c[C>>2]|0,111313)|0;break}case 114:{jF(c[C>>2]|0,111334)|0;break}default:jF(c[C>>2]|0,111353)|0}f=e+8|0;h[f>>3]=+h[f>>3]+ +h[(c[D>>2]|0)+24>>3];f=c[C>>2]|0;M=-+h[e+8>>3];h[B>>3]=+h[e>>3];h[B+8>>3]=M;oF(f,111375,B);c[F>>2]=c[(c[(c[D>>2]|0)+4>>2]|0)+8>>2];B=c[C>>2]|0;if(c[F>>2]|0){switch(c[(c[(c[(c[B>>2]|0)+168>>2]|0)+8>>2]|0)+244>>2]|0){case 1:{c[G>>2]=c[c[F>>2]>>2];c[H>>2]=c[(c[F>>2]|0)+8>>2];c[J>>2]=c[(c[F>>2]|0)+16>>2];break}case 2:{c[G>>2]=c[(c[F>>2]|0)+24>>2];c[H>>2]=c[(c[F>>2]|0)+28>>2];c[J>>2]=c[(c[F>>2]|0)+32>>2];break}default:{c[G>>2]=c[(c[F>>2]|0)+4>>2];c[H>>2]=c[(c[F>>2]|0)+8>>2];c[J>>2]=c[(c[F>>2]|0)+16>>2]}}c[I>>2]=c[(c[F>>2]|0)+12>>2];f=c[C>>2]|0;c[A>>2]=c[G>>2];oF(f,111390,A);if(c[(c[F>>2]|0)+24>>2]|0){A=c[C>>2]|0;c[z>>2]=c[(c[F>>2]|0)+24>>2];oF(A,111407,z)}jF(c[C>>2]|0,136329)|0;if(c[H>>2]|0){z=c[C>>2]|0;c[y>>2]=c[H>>2];oF(z,111411,y)}if(c[I>>2]|0){y=c[C>>2]|0;c[x>>2]=c[I>>2];oF(y,111429,x)}if(c[J>>2]|0){x=c[C>>2]|0;c[w>>2]=c[J>>2];oF(x,111448,w)}}else{c[v>>2]=c[c[(c[D>>2]|0)+4>>2]>>2];oF(B,111465,v)}if((c[(c[D>>2]|0)+4>>2]|0)!=0?(v=c[(c[(c[D>>2]|0)+4>>2]|0)+24>>2]&127,c[K>>2]=v,(v|0)!=0):0){if(!((c[K>>2]&1|0)==0|(c[H>>2]|0)!=0))oF(c[C>>2]|0,111483,u);if(!((c[K>>2]&2|0)==0|(c[J>>2]|0)!=0))oF(c[C>>2]|0,111503,t);if(c[K>>2]&100){c[L>>2]=0;oF(c[C>>2]|0,111524,s);if(c[K>>2]&4){oF(c[C>>2]|0,143412,r);c[L>>2]=1}if(c[K>>2]&64){r=c[C>>2]|0;c[q>>2]=(c[L>>2]|0)!=0?138350:178518;oF(r,111543,q);c[L>>2]=1}if(c[K>>2]&32){q=c[C>>2]|0;c[p>>2]=(c[L>>2]|0)!=0?138350:178518;oF(q,111554,p)}oF(c[C>>2]|0,136329,o)}if(c[K>>2]&8)oF(c[C>>2]|0,111569,n);if(c[K>>2]&16)oF(c[C>>2]|0,111593,m)}m=c[C>>2]|0;h[l>>3]=+h[(c[(c[D>>2]|0)+4>>2]|0)+16>>3];oF(m,111615,l);switch(c[(c[E>>2]|0)+16+32>>2]|0){case 5:{if(!(F3(c[(c[E>>2]|0)+16>>2]|0,174917)|0)){N=c[C>>2]|0;jF(N,111679)|0;O=c[C>>2]|0;P=c[D>>2]|0;Q=c[P>>2]|0;R=YJ(Q,1)|0;jF(O,R)|0;S=c[C>>2]|0;jF(S,111681)|0;i=g;return}l=c[C>>2]|0;c[k>>2]=c[(c[E>>2]|0)+16>>2];oF(l,111633,k);N=c[C>>2]|0;jF(N,111679)|0;O=c[C>>2]|0;P=c[D>>2]|0;Q=c[P>>2]|0;R=YJ(Q,1)|0;jF(O,R)|0;S=c[C>>2]|0;jF(S,111681)|0;i=g;return}case 1:{k=c[C>>2]|0;l=d[(c[E>>2]|0)+16+1>>0]|0;m=d[(c[E>>2]|0)+16+2>>0]|0;c[j>>2]=d[(c[E>>2]|0)+16>>0];c[j+4>>2]=l;c[j+8>>2]=m;oF(k,111644,j);N=c[C>>2]|0;jF(N,111679)|0;O=c[C>>2]|0;P=c[D>>2]|0;Q=c[P>>2]|0;R=YJ(Q,1)|0;jF(O,R)|0;S=c[C>>2]|0;jF(S,111681)|0;i=g;return}default:La(176099,110810,440,111666)}}function Md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;e=i;i=i+48|0;f=e+16|0;g=e;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=0;if((c[l>>2]|0)!=2){if((c[l>>2]|0)==3)c[m>>2]=Ud(c[j>>2]|0,c[k>>2]|0,2)|0}else c[m>>2]=Td(c[j>>2]|0,c[k>>2]|0,2)|0;jF(c[j>>2]|0,111264)|0;Rd(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0);m=c[j>>2]|0;n=-+h[(c[k>>2]|0)+8>>3];h[g>>3]=+h[c[k>>2]>>3];h[g+8>>3]=n;oF(m,111273,g);g=c[j>>2]|0;n=+h[(c[k>>2]|0)+16+8>>3]-+h[(c[k>>2]|0)+8>>3];h[f>>3]=+h[(c[k>>2]|0)+16>>3]-+h[c[k>>2]>>3];h[f+8>>3]=n;oF(g,111290,f);jF(c[j>>2]|0,122272)|0;i=e;return}function Nd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;f=i;i=i+64|0;g=f+16|0;j=f;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;o=f+36|0;p=f+32|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[p>>2]=0;if((c[n>>2]|0)!=2){if((c[n>>2]|0)==3)c[p>>2]=Ud(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else c[p>>2]=Td(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;jF(c[k>>2]|0,111249)|0;Rd(c[k>>2]|0,c[n>>2]|0,c[p>>2]|0);jF(c[k>>2]|0,110657)|0;c[o>>2]=0;while(1){q=c[k>>2]|0;if((c[o>>2]|0)>=(c[m>>2]|0))break;r=-+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3];h[j>>3]=+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3];h[j+8>>3]=r;oF(q,110667,j);c[o>>2]=(c[o>>2]|0)+1}r=-+h[(c[l>>2]|0)+8>>3];h[g>>3]=+h[c[l>>2]>>3];h[g+8>>3]=r;oF(q,111258,g);jF(c[k>>2]|0,110674)|0;i=f;return}function Od(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+4|0;n=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[h+12>>2]=e;c[h+8>>2]=f;c[m>>2]=g;c[n>>2]=0;if((c[m>>2]|0)!=2){if((c[m>>2]|0)==3)c[n>>2]=Ud(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0}else c[n>>2]=Td(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;jF(c[j>>2]|0,110846)|0;Rd(c[j>>2]|0,c[m>>2]|0,c[n>>2]|0);jF(c[j>>2]|0,110852)|0;Vd(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);jF(c[j>>2]|0,110674)|0;i=h;return}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;e=i;i=i+32|0;f=e;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;jF(c[g>>2]|0,110647)|0;Rd(c[g>>2]|0,0,0);jF(c[g>>2]|0,110657)|0;c[l>>2]=0;while(1){m=c[g>>2]|0;if((c[l>>2]|0)>=(c[k>>2]|0))break;n=-+h[(c[j>>2]|0)+(c[l>>2]<<4)+8>>3];h[f>>3]=+h[(c[j>>2]|0)+(c[l>>2]<<4)>>3];h[f+8>>3]=n;oF(m,110667,f);c[l>>2]=(c[l>>2]|0)+1}jF(m,110674)|0;i=e;return}function Qd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;jF(c[e>>2]|0,110641)|0;b=c[e>>2]|0;jF(b,XJ(c[f>>2]|0)|0)|0;jF(c[e>>2]|0,112731)|0;i=d;return}function Rd(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=i;i=i+112|0;g=f+56|0;j=f+48|0;k=f+40|0;l=f+32|0;m=f+24|0;n=f+16|0;o=f+8|0;p=f;q=f+108|0;r=f+104|0;s=f+100|0;t=f+96|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=e;c[t>>2]=c[(c[q>>2]|0)+16>>2];jF(c[q>>2]|0,110679)|0;do if((c[r>>2]|0)!=2){if((c[r>>2]|0)==3){e=c[q>>2]|0;c[o>>2]=c[s>>2];oF(e,110698,o);break}e=c[q>>2]|0;if(!(c[r>>2]|0)){jF(e,173312)|0;break}u=g;v=(c[t>>2]|0)+56|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));Sd(e,g);if(((c[(c[t>>2]|0)+56+32>>2]|0)==1?(d[(c[t>>2]|0)+56+3>>0]|0|0)>0:0)?(d[(c[t>>2]|0)+56+3>>0]|0|0)<255:0){b=c[q>>2]|0;h[n>>3]=+(d[(c[t>>2]|0)+56+3>>0]|0)/255.0;oF(b,110709,n)}}else{b=c[q>>2]|0;c[p>>2]=c[s>>2];oF(b,110687,p)}while(0);jF(c[q>>2]|0,110728)|0;p=c[q>>2]|0;u=g;v=(c[t>>2]|0)+16|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));Sd(p,g);if(+h[(c[t>>2]|0)+152>>3]!=1.0){g=c[q>>2]|0;h[m>>3]=+h[(c[t>>2]|0)+152>>3];oF(g,110739,m)}if((c[(c[t>>2]|0)+144>>2]|0)!=1){if((c[(c[t>>2]|0)+144>>2]|0)==2){m=c[q>>2]|0;c[k>>2]=c[11840];oF(m,110758,k)}}else{k=c[q>>2]|0;c[l>>2]=c[11839];oF(k,110758,l)}if((c[(c[t>>2]|0)+16+32>>2]|0)!=1){x=c[q>>2]|0;jF(x,136329)|0;i=f;return}if((d[(c[t>>2]|0)+16+3>>0]|0|0)<=0){x=c[q>>2]|0;jF(x,136329)|0;i=f;return}if((d[(c[t>>2]|0)+16+3>>0]|0|0)>=255){x=c[q>>2]|0;jF(x,136329)|0;i=f;return}l=c[q>>2]|0;h[j>>3]=+(d[(c[t>>2]|0)+16+3>>0]|0)/255.0;oF(l,110781,j);x=c[q>>2]|0;jF(x,136329)|0;i=f;return}function Sd(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e;g=e+12|0;c[g>>2]=a;switch(c[b+32>>2]|0){case 5:{jF(c[g>>2]|0,c[b>>2]|0)|0;i=e;return}case 1:{a=c[g>>2]|0;if(!(d[b+3>>0]|0)){jF(a,173312)|0;i=e;return}else{g=d[b+1>>0]|0;h=d[b+2>>0]|0;c[f>>2]=d[b>>0];c[f+4>>2]=g;c[f+8>>2]=h;oF(a,112940,f);i=e;return}break}default:La(176099,110810,83,110830)}}function Td(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0;f=i;i=i+144|0;j=f+72|0;k=f+64|0;l=f+56|0;m=f+48|0;n=f+40|0;o=f+32|0;p=f+132|0;q=f+128|0;r=f+124|0;s=f;t=f+120|0;u=f+116|0;v=f+112|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=e;e=c[11842]|0;c[11842]=e+1;c[u>>2]=e;c[v>>2]=c[(c[p>>2]|0)+16>>2];g[t>>2]=+(c[(c[v>>2]|0)+136>>2]|0)*3.141592653589793/180.0;h[s+16+8>>3]=0.0;h[s+16>>3]=0.0;h[s+8>>3]=0.0;h[s>>3]=0.0;RO(c[q>>2]|0,s,c[r>>2]|0,+g[t>>2],0);t=c[p>>2]|0;c[o>>2]=c[u>>2];oF(t,111077,o);o=c[p>>2]|0;w=+h[s+8>>3];x=+h[s+16>>3];y=+h[s+16+8>>3];h[j>>3]=+h[s>>3];h[j+8>>3]=w;h[j+16>>3]=x;h[j+24>>3]=y;oF(o,111142,j);o=c[p>>2]|0;if(+g[(c[v>>2]|0)+140>>2]>0.0){h[n>>3]=+g[(c[v>>2]|0)+140>>2]-.001;oF(o,111177,n)}else jF(o,110949)|0;o=c[p>>2]|0;n=j;s=(c[v>>2]|0)+56|0;t=n+40|0;do{c[n>>2]=c[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(t|0));Sd(o,j);jF(c[p>>2]|0,110985)|0;if(((c[(c[v>>2]|0)+56+32>>2]|0)==1?(d[(c[v>>2]|0)+56+3>>0]|0|0)>0:0)?(d[(c[v>>2]|0)+56+3>>0]|0|0)<255:0){o=c[p>>2]|0;h[m>>3]=+(d[(c[v>>2]|0)+56+3>>0]|0)/255.0;oF(o,136944,m)}else jF(c[p>>2]|0,111e3)|0;jF(c[p>>2]|0,111003)|0;m=c[p>>2]|0;if(+g[(c[v>>2]|0)+140>>2]>0.0){h[l>>3]=+g[(c[v>>2]|0)+140>>2];oF(m,111177,l)}else jF(m,111009)|0;m=c[p>>2]|0;n=j;s=(c[v>>2]|0)+96|0;t=n+40|0;do{c[n>>2]=c[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(t|0));Sd(m,j);jF(c[p>>2]|0,110985)|0;if(((c[(c[v>>2]|0)+96+32>>2]|0)==1?(d[(c[v>>2]|0)+96+3>>0]|0|0)>0:0)?(d[(c[v>>2]|0)+96+3>>0]|0|0)<255:0){j=c[p>>2]|0;h[k>>3]=+(d[(c[v>>2]|0)+96+3>>0]|0)/255.0;oF(j,136944,k);z=c[p>>2]|0;jF(z,111217)|0;A=c[u>>2]|0;i=f;return A|0}jF(c[p>>2]|0,111e3)|0;z=c[p>>2]|0;jF(z,111217)|0;A=c[u>>2]|0;i=f;return A|0}function Ud(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+96|0;j=f+16|0;k=f+8|0;l=f;m=f+84|0;n=f+72|0;o=f+68|0;p=f+64|0;q=f+60|0;r=f+56|0;c[m>>2]=a;c[f+80>>2]=b;c[f+76>>2]=e;e=c[11841]|0;c[11841]=e+1;c[q>>2]=e;c[r>>2]=c[(c[m>>2]|0)+16>>2];g[n>>2]=+(c[(c[r>>2]|0)+136>>2]|0)*3.141592653589793/180.0;if(+g[n>>2]==0.0){c[p>>2]=50;c[o>>2]=50}else{c[o>>2]=~~((+Q(+(+g[n>>2]))+1.0)*50.0);c[p>>2]=~~((1.0-+R(+(+g[n>>2])))*50.0)}n=c[m>>2]|0;e=c[o>>2]|0;o=c[p>>2]|0;c[j>>2]=c[q>>2];c[j+4>>2]=e;c[j+8>>2]=o;oF(n,110865,j);jF(c[m>>2]|0,110949)|0;n=c[m>>2]|0;o=j;e=(c[r>>2]|0)+56|0;p=o+40|0;do{c[o>>2]=c[e>>2];o=o+4|0;e=e+4|0}while((o|0)<(p|0));Sd(n,j);jF(c[m>>2]|0,110985)|0;if(((c[(c[r>>2]|0)+56+32>>2]|0)==1?(d[(c[r>>2]|0)+56+3>>0]|0|0)>0:0)?(d[(c[r>>2]|0)+56+3>>0]|0|0)<255:0){n=c[m>>2]|0;h[l>>3]=+(d[(c[r>>2]|0)+56+3>>0]|0)/255.0;oF(n,136944,l)}else jF(c[m>>2]|0,111e3)|0;jF(c[m>>2]|0,111003)|0;jF(c[m>>2]|0,111009)|0;l=c[m>>2]|0;o=j;e=(c[r>>2]|0)+96|0;p=o+40|0;do{c[o>>2]=c[e>>2];o=o+4|0;e=e+4|0}while((o|0)<(p|0));Sd(l,j);jF(c[m>>2]|0,110985)|0;if(((c[(c[r>>2]|0)+96+32>>2]|0)==1?(d[(c[r>>2]|0)+96+3>>0]|0|0)>0:0)?(d[(c[r>>2]|0)+96+3>>0]|0|0)<255:0){j=c[m>>2]|0;h[k>>3]=+(d[(c[r>>2]|0)+96+3>>0]|0)/255.0;oF(j,136944,k);s=c[m>>2]|0;jF(s,111045)|0;t=c[q>>2]|0;i=f;return t|0}jF(c[m>>2]|0,111e3)|0;s=c[m>>2]|0;jF(s,111045)|0;t=c[q>>2]|0;i=f;return t|0}function Vd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;f=i;i=i+48|0;g=f;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+40|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;a[n>>0]=77;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;e=c[j>>2]|0;o=+h[(c[k>>2]|0)+(c[m>>2]<<4)>>3];p=-+h[(c[k>>2]|0)+(c[m>>2]<<4)+8>>3];c[g>>2]=a[n>>0];h[g+8>>3]=o;h[g+16>>3]=p;oF(e,110857,g);if(!(c[m>>2]|0))a[n>>0]=67;else a[n>>0]=32;c[m>>2]=(c[m>>2]|0)+1}i=f;return}function Wd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,112612)|0;a=c[d>>2]|0;jF(a,ee(c[c[c[(c[d>>2]|0)+12>>2]>>2]>>2]|0)|0)|0;jF(c[d>>2]|0,115407)|0;a=c[d>>2]|0;jF(a,ee(c[(c[c[(c[d>>2]|0)+12>>2]>>2]|0)+4>>2]|0)|0)|0;jF(c[d>>2]|0,115417)|0;a=c[d>>2]|0;jF(a,ee(c[(c[c[(c[d>>2]|0)+12>>2]>>2]|0)+8>>2]|0)|0)|0;jF(c[d>>2]|0,112628)|0;i=b;return}function Xd(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+8|0;g=d+4|0;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+16>>2];jF(c[f>>2]|0,112589)|0;if(a[(wB(c[(c[g>>2]|0)+8>>2]|0)|0)>>0]|0){jF(c[f>>2]|0,112591)|0;b=c[f>>2]|0;jF(b,ee(wB(c[(c[g>>2]|0)+8>>2]|0)|0)|0)|0}g=c[f>>2]|0;c[e>>2]=_(c[(c[f>>2]|0)+164>>2]|0,c[(c[f>>2]|0)+164+4>>2]|0)|0;oF(g,112600,e);i=d;return}function Yd(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11893]=1;i=b;return}function Zd(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;c[11893]=-1;i=b;return}function _d(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+80|0;g=f+8|0;j=f;k=f+68|0;l=f+64|0;m=f+60|0;n=f+56|0;o=f+52|0;p=f+48|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=c[(c[k>>2]|0)+16>>2];if(!(c[(c[m>>2]|0)+144>>2]|0)){i=f;return}c[p>>2]=~~(+h[(c[(c[l>>2]|0)+4>>2]|0)+16>>3]*+h[(c[k>>2]|0)+352>>3]);if(!(c[p>>2]|0)){i=f;return}fe(c[k>>2]|0);jF(c[k>>2]|0,112528)|0;e=d+8|0;h[e>>3]=+h[e>>3]-+(c[p>>2]|0)*.55;e=c[k>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];qF(e,g);jF(c[k>>2]|0,112542)|0;jF(c[k>>2]|0,c[c[l>>2]>>2]|0)|0;jF(c[k>>2]|0,112551)|0;jF(c[k>>2]|0,112349)|0;e=c[k>>2]|0;d=g;b=(c[m>>2]|0)+16|0;m=d+40|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(m|0));ge(e,g);jF(c[k>>2]|0,112553)|0;c[o>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+8>>2];if(c[o>>2]|0)c[n>>2]=c[(c[o>>2]|0)+4>>2];else c[n>>2]=c[c[(c[l>>2]|0)+4>>2]>>2];jF(c[k>>2]|0,136329)|0;jF(c[k>>2]|0,c[n>>2]|0)|0;jF(c[k>>2]|0,136329)|0;n=c[k>>2]|0;c[j>>2]=c[p>>2];oF(n,112562,j);switch(a[(c[l>>2]|0)+48>>0]|0){case 108:{jF(c[k>>2]|0,112567)|0;break}case 114:{jF(c[k>>2]|0,112578)|0;break}default:{}}he(c[k>>2]|0);jF(c[k>>2]|0,193392)|0;i=f;return}function $d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+80|0;f=e+16|0;g=e+68|0;j=e+64|0;k=e+60|0;l=e+56|0;m=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[(c[g>>2]|0)+16>>2];if(!(c[(c[l>>2]|0)+144>>2]|0)){i=e;return}h[m>>3]=+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3];h[m+8>>3]=+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3];d=c[j>>2]|0;h[d>>3]=+h[d>>3]-+h[m>>3];d=(c[j>>2]|0)+8|0;h[d>>3]=+h[d>>3]-+h[m+8>>3];fe(c[g>>2]|0);jF(c[g>>2]|0,112514)|0;rF(c[g>>2]|0,c[j>>2]|0,2);jF(c[g>>2]|0,112349)|0;do if(!(c[k>>2]|0)){j=c[g>>2]|0;if(c[11893]|0){jF(j,174801)|0;break}else{jF(j,134866)|0;break}}else{j=c[g>>2]|0;n=f;o=(c[l>>2]|0)+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));ge(j,f)}while(0);if((c[11893]|0)==1)c[11893]=0;jF(c[g>>2]|0,112460)|0;pF(c[g>>2]|0,+h[(c[l>>2]|0)+152>>3]);jF(c[g>>2]|0,112503)|0;k=c[g>>2]|0;n=f;o=(c[l>>2]|0)+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));ge(k,f);if((c[(c[l>>2]|0)+144>>2]|0)==1)jF(c[g>>2]|0,112357)|0;if((c[(c[l>>2]|0)+144>>2]|0)==2)jF(c[g>>2]|0,112366)|0;he(c[g>>2]|0);jF(c[g>>2]|0,193392)|0;i=e;return}function ae(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f;j=f+56|0;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=c[(c[j>>2]|0)+16>>2];if(!(c[(c[n>>2]|0)+144>>2]|0)){i=f;return}fe(c[j>>2]|0);jF(c[j>>2]|0,112486)|0;rF(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);jF(c[j>>2]|0,112349)|0;do if(!(c[m>>2]|0)){l=c[j>>2]|0;if(c[11893]|0){jF(l,174801)|0;break}else{jF(l,134866)|0;break}}else{l=c[j>>2]|0;o=g;p=(c[n>>2]|0)+56|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0));ge(l,g)}while(0);if((c[11893]|0)==1)c[11893]=0;jF(c[j>>2]|0,112460)|0;pF(c[j>>2]|0,+h[(c[n>>2]|0)+152>>3]);jF(c[j>>2]|0,112503)|0;m=c[j>>2]|0;o=g;p=(c[n>>2]|0)+16|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0));ge(m,g);if((c[(c[n>>2]|0)+144>>2]|0)==1)jF(c[j>>2]|0,112357)|0;if((c[(c[n>>2]|0)+144>>2]|0)==2)jF(c[j>>2]|0,112366)|0;he(c[j>>2]|0);jF(c[j>>2]|0,193392)|0;i=f;return}function be(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+80|0;k=j;l=j+64|0;m=j+60|0;n=j+56|0;o=j+40|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[j+52>>2]=e;c[j+48>>2]=f;c[j+44>>2]=g;c[o>>2]=c[(c[l>>2]|0)+16>>2];if(!(c[(c[o>>2]|0)+144>>2]|0)){i=j;return}fe(c[l>>2]|0);jF(c[l>>2]|0,112335)|0;rF(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0);jF(c[l>>2]|0,112349)|0;n=c[l>>2]|0;m=k;g=(c[o>>2]|0)+16|0;f=m+40|0;do{c[m>>2]=c[g>>2];m=m+4|0;g=g+4|0}while((m|0)<(f|0));ge(n,k);jF(c[l>>2]|0,112460)|0;pF(c[l>>2]|0,+h[(c[o>>2]|0)+152>>3]);if((c[(c[o>>2]|0)+144>>2]|0)==1)jF(c[l>>2]|0,112357)|0;if((c[(c[o>>2]|0)+144>>2]|0)==2)jF(c[l>>2]|0,112366)|0;jF(c[l>>2]|0,112469)|0;he(c[l>>2]|0);jF(c[l>>2]|0,193392)|0;i=j;return}function ce(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+64|0;f=e;g=e+52|0;h=e+48|0;j=e+44|0;k=e+40|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=c[(c[g>>2]|0)+16>>2];if(!(c[(c[k>>2]|0)+144>>2]|0)){i=e;return}fe(c[g>>2]|0);jF(c[g>>2]|0,112335)|0;rF(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0);jF(c[g>>2]|0,112349)|0;j=c[g>>2]|0;h=f;d=(c[k>>2]|0)+16|0;b=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(b|0));ge(j,f);if((c[(c[k>>2]|0)+144>>2]|0)==1)jF(c[g>>2]|0,112357)|0;if((c[(c[k>>2]|0)+144>>2]|0)==2)jF(c[g>>2]|0,112366)|0;he(c[g>>2]|0);jF(c[g>>2]|0,193392)|0;i=e;return}function de(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;jF(c[e>>2]|0,112332)|0;b=c[e>>2]|0;jF(b,ee(c[f>>2]|0)|0)|0;jF(c[e>>2]|0,193392)|0;i=d;return}function ee(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[d>>2]|0}function fe(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=c[e>>2]|0;if(a[(c[e>>2]|0)+144>>0]|0){jF(b,c[(c[e>>2]|0)+148>>2]|0)|0;i=d;return}else{jF(b,112457)|0;i=d;return}}function ge(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e;g=e+12|0;c[g>>2]=a;switch(c[b+32>>2]|0){case 5:{jF(c[g>>2]|0,c[b>>2]|0)|0;i=e;return}case 1:{a=c[g>>2]|0;if(!(d[b+3>>0]|0)){jF(a,134866)|0;i=e;return}else{g=d[b+1>>0]|0;h=d[b+2>>0]|0;c[f>>2]=d[b>>0];c[f+4>>2]=g;c[f+8>>2]=h;oF(a,112940,f);i=e;return}break}default:La(176099,112387,51,112439)}}function he(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b;e=b+28|0;f=b+24|0;g=b+20|0;h=b+16|0;j=b+12|0;c[e>>2]=a;c[h>>2]=c[(c[e>>2]|0)+16>>2];switch(c[(c[h>>2]|0)+12>>2]|0){case 8:{c[f>>2]=149084;c[j>>2]=1;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}case 10:{c[f>>2]=149084;c[j>>2]=0;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}case 3:case 2:case 9:{c[f>>2]=149079;c[j>>2]=1;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}case 7:case 6:case 11:{c[f>>2]=149079;c[j>>2]=0;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}case 0:{c[f>>2]=149098;c[j>>2]=1;c[g>>2]=-1;break}case 4:{c[j>>2]=0;c[f>>2]=112375;c[g>>2]=-1;break}case 1:{c[f>>2]=149098;c[j>>2]=1;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}case 5:{c[f>>2]=149098;c[j>>2]=0;c[g>>2]=(c[c[(c[h>>2]|0)+8>>2]>>2]|0)>>>4;break}default:La(176099,112387,108,112406)}h=c[e>>2]|0;e=c[f>>2]|0;f=c[g>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=e;c[d+8>>2]=f;oF(h,112423,d);i=b;return}function ie(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=i;i=i+64|0;f=e;g=e+40|0;h=e+36|0;j=e+32|0;k=e+28|0;l=e+24|0;m=e+20|0;n=e+16|0;o=e+12|0;p=e+8|0;q=e+48|0;r=e+4|0;s=e+45|0;t=e+44|0;c[g>>2]=b;c[k>>2]=0;c[m>>2]=0;c[p>>2]=0;c[r>>2]=0;if(!(c[11946]|0)){c[11947]=64;c[11946]=cK(c[11947]|0)|0}c[h>>2]=c[11946];a:while(1){if(!(c[g>>2]|0)){u=42;break}if(!(a[c[g>>2]>>0]|0)){u=42;break}if((c[m>>2]|0)>((c[11947]|0)-8|0)){c[11947]=c[11947]<<1;c[11946]=eK(c[11946]|0,c[11947]|0)|0;c[h>>2]=(c[11946]|0)+(c[m>>2]|0)}if((a[c[g>>2]>>0]|0)==38?(je(c[g>>2]|0)|0)==0:0){c[j>>2]=139881;c[l>>2]=5}else u=11;do if((u|0)==11){u=0;if((a[c[g>>2]>>0]|0)==60){c[j>>2]=139887;c[l>>2]=4;break}if((a[c[g>>2]>>0]|0)==62){c[j>>2]=139892;c[l>>2]=4;break}if((a[c[g>>2]>>0]|0)==45){c[j>>2]=139897;c[l>>2]=5;break}if(((c[k>>2]|0)!=0?(a[c[g>>2]>>0]|0)==32:0)?(a[c[k>>2]>>0]|0)==32:0){c[j>>2]=139903;c[l>>2]=6;break}if((a[c[g>>2]>>0]|0)==34){c[j>>2]=139910;c[l>>2]=6;break}if((a[c[g>>2]>>0]|0)==39){c[j>>2]=139917;c[l>>2]=5;break}b=c[g>>2]|0;if((d[c[g>>2]>>0]|0)<=127){c[j>>2]=b;c[l>>2]=1;break}a[s>>0]=a[b>>0]|0;c[o>>2]=0;a[t>>0]=127;while(1){v=c[o>>2]|0;if((d[t>>0]|0)>=(d[s>>0]|0))break;c[o>>2]=v+1;a[s>>0]=d[s>>0]&d[t>>0];a[t>>0]=d[t>>0]>>1}if((v|0)>1){c[r>>2]=d[s>>0];c[p>>2]=(c[o>>2]|0)-1}else{c[r>>2]=c[r>>2]<<6;c[r>>2]=(c[r>>2]|0)+(d[s>>0]|0);c[p>>2]=(c[p>>2]|0)+-1}if((c[p>>2]|0)>0){c[g>>2]=(c[g>>2]|0)+1;continue a}a[q+15>>0]=59;c[j>>2]=q+14;c[l>>2]=3;do{c[n>>2]=((c[r>>2]|0)>>>0)%10|0;b=48+(c[n>>2]|0)&255;w=c[j>>2]|0;c[j>>2]=w+-1;a[w>>0]=b;c[r>>2]=((c[r>>2]|0)>>>0)/10|0;c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>12){u=35;break a}}while((c[r>>2]|0)>>>0>0);b=c[j>>2]|0;c[j>>2]=b+-1;a[b>>0]=35;a[c[j>>2]>>0]=38}while(0);while(1){b=c[l>>2]|0;c[l>>2]=b+-1;if(!b)break;b=c[j>>2]|0;c[j>>2]=b+1;w=a[b>>0]|0;b=c[h>>2]|0;c[h>>2]=b+1;a[b>>0]=w;c[m>>2]=(c[m>>2]|0)+1}c[k>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+1}if((u|0)==35){Y2(c[24742]|0,112631,f)|0;wb(1)}else if((u|0)==42){a[c[h>>2]>>0]=0;i=e;return c[11946]|0}return 0}function je(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)+1;a:do if((a[c[f>>2]>>0]|0)==35){c[f>>2]=(c[f>>2]|0)+1;if((a[c[f>>2]>>0]|0)!=120?(a[c[f>>2]>>0]|0)!=88:0)while(1){if((a[c[f>>2]>>0]|0)<48)break a;if((a[c[f>>2]>>0]|0)>57)break a;c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+1;while(1){if(!((a[c[f>>2]>>0]|0)>=48?(a[c[f>>2]>>0]|0)<=57:0))g=7;do if((g|0)==7){g=0;if((a[c[f>>2]>>0]|0)>=97?(a[c[f>>2]>>0]|0)<=102:0)break;if((a[c[f>>2]>>0]|0)<65)break a;if((a[c[f>>2]>>0]|0)>70)break a}while(0);c[f>>2]=(c[f>>2]|0)+1}}else while(1){if(!((a[c[f>>2]>>0]|0)>=97?(a[c[f>>2]>>0]|0)<=122:0)){if((a[c[f>>2]>>0]|0)<65)break a;if((a[c[f>>2]>>0]|0)>90)break a}c[f>>2]=(c[f>>2]|0)+1}while(0);if((a[c[f>>2]>>0]|0)==59){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}return 0}function ke(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,115379)|0;jF(c[d>>2]|0,115387)|0;a=c[d>>2]|0;jF(a,ie(c[c[c[(c[d>>2]|0)+12>>2]>>2]>>2]|0)|0)|0;jF(c[d>>2]|0,115407)|0;a=c[d>>2]|0;jF(a,ie(c[(c[c[(c[d>>2]|0)+12>>2]>>2]|0)+4>>2]|0)|0)|0;jF(c[d>>2]|0,115417)|0;a=c[d>>2]|0;jF(a,ie(c[(c[c[(c[d>>2]|0)+12>>2]>>2]|0)+8>>2]|0)|0)|0;jF(c[d>>2]|0,115420)|0;i=b;return}function le(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d+24|0;f=d+16|0;g=d+8|0;j=d;k=d+40|0;l=d+36|0;m=d+32|0;c[k>>2]=b;c[l>>2]=c[(c[k>>2]|0)+16>>2];c[11944]=~~(+h[(c[k>>2]|0)+208+16+8>>3]-+h[(c[k>>2]|0)+208+8>>3]);c[11945]=~~(+h[(c[k>>2]|0)+208+16>>3]-+h[(c[k>>2]|0)+208>>3]);jF(c[k>>2]|0,114066)|0;jF(c[k>>2]|0,114073)|0;c[m>>2]=wB(c[(c[l>>2]|0)+8>>2]|0)|0;if(a[c[m>>2]>>0]|0){jF(c[k>>2]|0,114142)|0;l=c[k>>2]|0;jF(l,ie(c[m>>2]|0)|0)|0;jF(c[k>>2]|0,114150)|0}m=c[k>>2]|0;c[j>>2]=_(c[(c[k>>2]|0)+164>>2]|0,c[(c[k>>2]|0)+164+4>>2]|0)|0;oF(m,114159,j);jF(c[k>>2]|0,114179)|0;jF(c[k>>2]|0,114214)|0;jF(c[k>>2]|0,114242)|0;jF(c[k>>2]|0,114248)|0;jF(c[k>>2]|0,114291)|0;jF(c[k>>2]|0,114332)|0;jF(c[k>>2]|0,114351)|0;jF(c[k>>2]|0,114368)|0;jF(c[k>>2]|0,114416)|0;jF(c[k>>2]|0,114469)|0;jF(c[k>>2]|0,114545)|0;jF(c[k>>2]|0,114621)|0;jF(c[k>>2]|0,114630)|0;jF(c[k>>2]|0,114653)|0;jF(c[k>>2]|0,114680)|0;jF(c[k>>2]|0,114733)|0;jF(c[k>>2]|0,114755)|0;jF(c[k>>2]|0,114800)|0;jF(c[k>>2]|0,114812)|0;jF(c[k>>2]|0,114822)|0;jF(c[k>>2]|0,114848)|0;jF(c[k>>2]|0,114733)|0;jF(c[k>>2]|0,114900)|0;jF(c[k>>2]|0,114800)|0;jF(c[k>>2]|0,114812)|0;jF(c[k>>2]|0,114944)|0;jF(c[k>>2]|0,114653)|0;jF(c[k>>2]|0,114680)|0;jF(c[k>>2]|0,114733)|0;jF(c[k>>2]|0,114900)|0;jF(c[k>>2]|0,114800)|0;jF(c[k>>2]|0,114812)|0;jF(c[k>>2]|0,114822)|0;jF(c[k>>2]|0,114848)|0;jF(c[k>>2]|0,114733)|0;jF(c[k>>2]|0,114755)|0;jF(c[k>>2]|0,114800)|0;jF(c[k>>2]|0,114812)|0;jF(c[k>>2]|0,114957)|0;jF(c[k>>2]|0,114965)|0;jF(c[k>>2]|0,114971)|0;jF(c[k>>2]|0,114985)|0;jF(c[k>>2]|0,114993)|0;jF(c[k>>2]|0,115026)|0;j=c[k>>2]|0;m=10+(c[11944]|0)|0;c[g>>2]=c[11945];c[g+4>>2]=m;oF(j,115103,g);jF(c[k>>2]|0,115133)|0;jF(c[k>>2]|0,115142)|0;jF(c[k>>2]|0,115200)|0;jF(c[k>>2]|0,115210)|0;jF(c[k>>2]|0,115275)|0;g=c[k>>2]|0;j=c[11944]|0;c[f>>2]=c[11945];c[f+4>>2]=j;oF(g,115312,f);f=c[k>>2]|0;k=c[11944]|0;c[e>>2]=c[11945];c[e+4>>2]=k;oF(f,115340,e);i=d;return}function me(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,113617)|0;jF(c[d>>2]|0,113629)|0;jF(c[d>>2]|0,113637)|0;jF(c[d>>2]|0,113700)|0;jF(c[d>>2]|0,113629)|0;jF(c[d>>2]|0,113745)|0;jF(c[d>>2]|0,113794)|0;jF(c[d>>2]|0,113848)|0;jF(c[d>>2]|0,113629)|0;jF(c[d>>2]|0,113948)|0;jF(c[d>>2]|0,113997)|0;jF(c[d>>2]|0,113629)|0;jF(c[d>>2]|0,114049)|0;i=b;return}function ne(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+48|0;j=h+16|0;k=h+8|0;l=h;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[h+20>>2]=g;jF(c[m>>2]|0,113575)|0;if((c[n>>2]|0)!=0?(a[c[n>>2]>>0]|0)!=0:0){g=c[m>>2]|0;c[l>>2]=ie(c[n>>2]|0)|0;oF(g,113578,l)}if((c[o>>2]|0)!=0?(a[c[o>>2]>>0]|0)!=0:0){l=c[m>>2]|0;c[k>>2]=ie(c[o>>2]|0)|0;oF(l,113589,k)}if(!(c[p>>2]|0)){q=c[m>>2]|0;jF(q,113614)|0;i=h;return}if(!(a[c[p>>2]>>0]|0)){q=c[m>>2]|0;jF(q,113614)|0;i=h;return}k=c[m>>2]|0;c[j>>2]=ie(c[p>>2]|0)|0;oF(k,113601,j);q=c[m>>2]|0;jF(q,113614)|0;i=h;return}function oe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,113569)|0;i=b;return}function pe(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;g=i;i=i+160|0;j=g+128|0;k=g+120|0;l=g+112|0;m=g+104|0;n=g+96|0;o=g+88|0;p=g+80|0;q=g+72|0;r=g+56|0;s=g+40|0;t=g+32|0;u=g+152|0;v=g+148|0;w=g+16|0;x=g;y=g+144|0;z=g+140|0;c[u>>2]=b;c[v>>2]=f;c[y>>2]=c[(c[u>>2]|0)+16>>2];switch(a[(c[v>>2]|0)+48>>0]|0){case 108:{h[w>>3]=+h[e>>3];break}case 114:{h[w>>3]=+h[e>>3]-+h[(c[v>>2]|0)+32>>3];break}default:h[w>>3]=+h[e>>3]-+h[(c[v>>2]|0)+32>>3]/2.0}h[x>>3]=+h[w>>3]+ +h[(c[v>>2]|0)+32>>3];if(+h[(c[v>>2]|0)+32+8>>3]<+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3])h[(c[v>>2]|0)+32+8>>3]=+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3]*1.1+1.0;h[w>>3]=+h[w>>3]-8.0;h[x>>3]=+h[x>>3]+8.0;h[x+8>>3]=+((c[11944]|0)>>>0)-+h[e+8>>3];h[w+8>>3]=+h[x+8>>3]-+h[(c[v>>2]|0)+32+8>>3];A=+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3]/5.0;if(+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3]<12.0){e=w+8|0;h[e>>3]=+h[e>>3]+(1.4+A);e=x+8|0;h[e>>3]=+h[e>>3]+(+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3]/5.0+1.4)}else{e=w+8|0;h[e>>3]=+h[e>>3]+(2.0+A);e=x+8|0;h[e>>3]=+h[e>>3]+(+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3]/5.0+2.0)}oF(c[u>>2]|0,113231,t);t=c[u>>2]|0;A=+h[w+8>>3];h[s>>3]=+h[w>>3];h[s+8>>3]=A;oF(t,113168,s);s=c[u>>2]|0;A=+h[x+8>>3]-+h[w+8>>3];h[r>>3]=+h[x>>3]-+h[w>>3];h[r+8>>3]=A;oF(s,113192,r);jF(c[u>>2]|0,113266)|0;jF(c[u>>2]|0,113300)|0;c[z>>2]=c[(c[(c[v>>2]|0)+4>>2]|0)+8>>2];r=c[u>>2]|0;if(c[z>>2]|0){c[q>>2]=c[(c[z>>2]|0)+4>>2];oF(r,113390,q);if(c[(c[z>>2]|0)+8>>2]|0){q=c[u>>2]|0;c[p>>2]=c[(c[z>>2]|0)+8>>2];oF(q,113409,p)}if(c[(c[z>>2]|0)+12>>2]|0){p=c[u>>2]|0;c[o>>2]=c[(c[z>>2]|0)+12>>2];oF(p,113426,o)}if(c[(c[z>>2]|0)+16>>2]|0){o=c[u>>2]|0;c[n>>2]=c[(c[z>>2]|0)+16>>2];oF(o,113444,n)}}else{c[m>>2]=c[c[(c[v>>2]|0)+4>>2]>>2];oF(r,113390,m)}m=c[u>>2]|0;h[l>>3]=+h[(c[(c[v>>2]|0)+4>>2]|0)+16>>3];oF(m,113460,l);switch(c[(c[y>>2]|0)+16+32>>2]|0){case 5:{if(!(F3(c[(c[y>>2]|0)+16>>2]|0,174917)|0)){B=c[u>>2]|0;jF(B,113524)|0;C=c[u>>2]|0;D=c[v>>2]|0;E=c[D>>2]|0;F=ie(E)|0;jF(C,F)|0;G=c[u>>2]|0;jF(G,113535)|0;H=c[u>>2]|0;jF(H,113558)|0;i=g;return}l=c[u>>2]|0;c[k>>2]=c[(c[y>>2]|0)+16>>2];oF(l,113480,k);B=c[u>>2]|0;jF(B,113524)|0;C=c[u>>2]|0;D=c[v>>2]|0;E=c[D>>2]|0;F=ie(E)|0;jF(C,F)|0;G=c[u>>2]|0;jF(G,113535)|0;H=c[u>>2]|0;jF(H,113558)|0;i=g;return}case 1:{k=c[u>>2]|0;l=d[(c[y>>2]|0)+16+1>>0]|0;m=d[(c[y>>2]|0)+16+2>>0]|0;c[j>>2]=d[(c[y>>2]|0)+16>>0];c[j+4>>2]=l;c[j+8>>2]=m;oF(k,113490,j);B=c[u>>2]|0;jF(B,113524)|0;C=c[u>>2]|0;D=c[v>>2]|0;E=c[D>>2]|0;F=ie(E)|0;jF(C,F)|0;G=c[u>>2]|0;jF(G,113535)|0;H=c[u>>2]|0;jF(H,113558)|0;i=g;return}default:La(176099,112954,439,113511)}}function qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;e=i;i=i+96|0;f=e+64|0;g=e+48|0;j=e+88|0;k=e+84|0;l=e+80|0;m=e+40|0;n=e+32|0;o=e+24|0;p=e+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;jF(c[j>>2]|0,113132)|0;h[m>>3]=+h[(c[k>>2]|0)+16>>3]-+h[c[k>>2]>>3];h[n>>3]=+h[(c[k>>2]|0)+16+8>>3]-+h[(c[k>>2]|0)+8>>3];h[p>>3]=+((c[11944]|0)>>>0)-(+h[(c[k>>2]|0)+8>>3]+ +h[n>>3]);h[e>>3]=+h[p>>3]+ +h[n>>3]+ +h[n>>3];h[o>>3]=+h[c[k>>2]>>3]-+h[m>>3];h[e+16>>3]=+h[(c[k>>2]|0)+16>>3];k=c[j>>2]|0;q=+h[p>>3];h[g>>3]=+h[o>>3];h[g+8>>3]=q;oF(k,113168,g);g=c[j>>2]|0;q=+h[n>>3]*2.0;h[f>>3]=+h[m>>3]*2.0;h[f+8>>3]=q;oF(g,113192,f);xe(c[j>>2]|0,c[l>>2]|0);jF(c[j>>2]|0,113014)|0;ve(c[j>>2]|0,c[l>>2]|0);jF(c[j>>2]|0,113220)|0;i=e;return}function re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;f=i;i=i+64|0;g=f+24|0;j=f+16|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+8|0;q=f;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;jF(c[k>>2]|0,112737)|0;e=c[k>>2]|0;d=c[11944]|0;c[j>>2]=c[11945];c[j+4>>2]=d;oF(e,112990,j);xe(c[k>>2]|0,c[n>>2]|0);jF(c[k>>2]|0,113014)|0;ve(c[k>>2]|0,c[n>>2]|0);jF(c[k>>2]|0,113017)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;h[p>>3]=+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3];h[q>>3]=+((c[11944]|0)>>>0)-+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3];if(!(c[o>>2]|0))jF(c[k>>2]|0,113044)|0;n=c[k>>2]|0;r=+h[q>>3];h[g>>3]=+h[p>>3];h[g+8>>3]=r;oF(n,113110,g);if(!(c[o>>2]|0))jF(c[k>>2]|0,113121)|0;if((c[o>>2]|0)==((c[m>>2]|0)-1|0))jF(c[k>>2]|0,113124)|0;c[o>>2]=(c[o>>2]|0)+1}jF(c[k>>2]|0,112853)|0;i=f;return}function se(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h;k=h+28|0;l=h+24|0;m=h+20|0;n=h+8|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[h+16>>2]=e;c[h+12>>2]=f;c[n>>2]=g;jF(c[k>>2]|0,112737)|0;g=c[k>>2]|0;f=c[11944]|0;c[j>>2]=c[11945];c[j+4>>2]=f;oF(g,112990,j);xe(c[k>>2]|0,c[n>>2]|0);jF(c[k>>2]|0,113014)|0;ve(c[k>>2]|0,c[n>>2]|0);jF(c[k>>2]|0,113017)|0;ye(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);jF(c[k>>2]|0,113030)|0;i=h;return}function te(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;e=i;i=i+48|0;f=e+8|0;g=e;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;jF(c[j>>2]|0,112737)|0;d=c[j>>2]|0;b=c[11944]|0;c[g>>2]=c[11945];c[g+4>>2]=b;oF(d,112774,g);jF(c[j>>2]|0,112814)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;if(!(c[m>>2]|0))jF(c[j>>2]|0,112826)|0;g=c[j>>2]|0;n=+((c[11944]|0)>>>0)-+h[(c[k>>2]|0)+(c[m>>2]<<4)+8>>3];h[f>>3]=+h[(c[k>>2]|0)+(c[m>>2]<<4)>>3];h[f+8>>3]=n;oF(g,112830,f);if(!(c[m>>2]|0))jF(c[j>>2]|0,112841)|0;if((c[m>>2]|0)==((c[l>>2]|0)-1|0))jF(c[j>>2]|0,112845)|0;c[m>>2]=(c[m>>2]|0)+1}jF(c[j>>2]|0,112849)|0;ve(c[j>>2]|0,0);jF(c[j>>2]|0,112853)|0;i=e;return}function ue(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;jF(c[e>>2]|0,112719)|0;b=c[e>>2]|0;jF(b,ie(c[f>>2]|0)|0)|0;jF(c[e>>2]|0,112731)|0;i=d;return}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+64|0;e=d+8|0;f=d;g=d+56|0;j=d+48|0;c[g>>2]=a;c[d+52>>2]=b;c[j>>2]=c[(c[g>>2]|0)+16>>2];jF(c[g>>2]|0,112865)|0;b=c[g>>2]|0;a=e;k=(c[j>>2]|0)+16|0;l=a+40|0;do{c[a>>2]=c[k>>2];a=a+4|0;k=k+4|0}while((a|0)<(l|0));we(b,e);if(+h[(c[j>>2]|0)+152>>3]!=1.0){e=c[g>>2]|0;h[f>>3]=+h[(c[j>>2]|0)+152>>3];oF(e,112883,f)}if((c[(c[j>>2]|0)+144>>2]|0)==1){jF(c[g>>2]|0,112900)|0;m=c[g>>2]|0;jF(m,112935)|0;i=d;return}if((c[(c[j>>2]|0)+144>>2]|0)!=2){m=c[g>>2]|0;jF(m,112935)|0;i=d;return}jF(c[g>>2]|0,112918)|0;m=c[g>>2]|0;jF(m,112935)|0;i=d;return}function we(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e;g=e+12|0;c[g>>2]=a;switch(c[b+32>>2]|0){case 5:{jF(c[g>>2]|0,c[b>>2]|0)|0;i=e;return}case 1:{a=c[g>>2]|0;if(!(d[b+3>>0]|0)){jF(a,173312)|0;i=e;return}else{g=d[b+1>>0]|0;h=d[b+2>>0]|0;c[f>>2]=d[b>>0];c[f+4>>2]=g;c[f+8>>2]=h;oF(a,112940,f);i=e;return}break}default:La(176099,112954,95,112974)}}function xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+64|0;e=d;f=d+48|0;g=d+44|0;h=d+40|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[(c[f>>2]|0)+16>>2];b=c[f>>2]|0;if(c[g>>2]|0){jF(b,113063)|0;g=c[f>>2]|0;a=e;j=(c[h>>2]|0)+56|0;h=a+40|0;do{c[a>>2]=c[j>>2];a=a+4|0;j=j+4|0}while((a|0)<(h|0));we(g,e);jF(c[f>>2]|0,113090)|0;i=d;return}else{jF(b,113093)|0;i=d;return}}function ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;e=i;i=i+48|0;f=e;g=e+40|0;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[m>>2]=113044;c[l>>2]=0;while(1){n=c[g>>2]|0;if((c[l>>2]|0)>=(c[k>>2]|0))break;o=+h[(c[j>>2]|0)+(c[l>>2]<<4)>>3];p=+((c[11944]|0)>>>0)-+h[(c[j>>2]|0)+(c[l>>2]<<4)+8>>3];c[f>>2]=c[m>>2];h[f+8>>3]=o;h[f+16>>3]=p;oF(n,113047,f);if(!(c[l>>2]|0))c[m>>2]=113060;else c[m>>2]=178518;c[l>>2]=(c[l>>2]|0)+1}jF(n,136329)|0;i=e;return}function ze(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+1072|0;f=e;g=e+36|0;h=e+32|0;j=e+40|0;k=e+28|0;l=e+24|0;m=e+8|0;c[g>>2]=a;c[h>>2]=b;c[m>>2]=d;c[k>>2]=q3(j,1024,c[h>>2]|0,m)|0;if((c[k>>2]|0)>>>0<0){b=c[(c[(c[g>>2]|0)+12>>2]|0)+16>>2]|0;c[f>>2]=M1(c[(L1()|0)>>2]|0)|0;Db[b&31](115427,f);c[l>>2]=M3(178518)|0;n=c[l>>2]|0;i=e;return n|0}if((c[k>>2]|0)>>>0>=1024){c[l>>2]=N4((c[k>>2]|0)+1|0)|0;c[m>>2]=d;c[k>>2]=r3(c[l>>2]|0,c[h>>2]|0,m)|0;n=c[l>>2]|0;i=e;return n|0}else{c[l>>2]=M3(j)|0;n=c[l>>2]|0;i=e;return n|0}return 0}function Ae(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+8|0;e=b;f=b+16|0;c[f>>2]=a;jF(c[f>>2]|0,118069)|0;jF(c[f>>2]|0,118084)|0;jF(c[f>>2]|0,118123)|0;jF(c[f>>2]|0,118172)|0;a=c[f>>2]|0;c[e>>2]=174917;c[e+4>>2]=118260;oF(a,118241,e);e=c[f>>2]|0;c[d>>2]=174801;c[d+4>>2]=118266;oF(e,118241,d);i=b;return}function Be(a){a=a|0;var b=0,d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0;b=i;i=i+96|0;d=b+8|0;e=b;f=b+84|0;j=b+80|0;k=b+76|0;l=b+72|0;m=b+68|0;n=b+64|0;c[f>>2]=a;a=c[f>>2]|0;c[e>>2]=wB(c[(c[(c[f>>2]|0)+16>>2]|0)+8>>2]|0)|0;oF(a,117022,e);g[j>>2]=+h[(c[f>>2]|0)+368>>3]/2.0*+h[(c[f>>2]|0)+488>>3];g[k>>2]=+h[(c[f>>2]|0)+368+8>>3]/2.0*+h[(c[f>>2]|0)+488+8>>3];g[l>>2]=-500.0;g[m>>2]=+V(+(+g[j>>2]/+(N(~~+g[l>>2]|0)|0)))*180.0/3.141592653589793*2.0;g[n>>2]=+V(+(+g[k>>2]/+(N(~~+g[l>>2]|0)|0)))*180.0/3.141592653589793*2.0;e=c[f>>2]|0;o=+g[k>>2];p=+g[l>>2];q=+g[j>>2];r=+g[k>>2];s=(+g[m>>2]>+g[n>>2]?+g[m>>2]:+g[n>>2])*1.2;h[d>>3]=+g[j>>2];h[d+8>>3]=o;h[d+16>>3]=p;h[d+24>>3]=q;h[d+32>>3]=r;h[d+40>>3]=0.0;h[d+48>>3]=s;oF(e,117044,d);jF(c[f>>2]|0,117191)|0;jF(c[f>>2]|0,118021)|0;i=b;return}function Ce(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,117005)|0;i=b;return}function De(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[j>>2]|0;j=c[l>>2]|0;d=c[m>>2]|0;c[h>>2]=c[k>>2];c[h+4>>2]=j;c[h+8>>2]=d;oF(e,116975,h);g[12136]=+(_(c[l>>2]|0,-10)|0);i=f;return}function Ee(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116958)|0;i=b;return}function Fe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116940)|0;i=b;return}function Ge(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116924)|0;i=b;return}function He(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116903)|0;g[12136]=+g[12136]-2.0;i=b;return}function Ie(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116884)|0;i=b;return}function Je(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;a=c[e>>2]|0;c[d>>2]=wB(c[(c[(c[e>>2]|0)+16>>2]|0)+8>>2]|0)|0;oF(a,116862,d);i=b;return}function Ke(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116846)|0;i=b;return}function Le(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116828)|0;g[12136]=+g[12136]-5.0;i=b;return}function Me(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;jF(c[d>>2]|0,116812)|0;g[12136]=+g[12136]+5.0;i=b;return}function Ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0;f=i;i=i+192|0;j=f+120|0;k=f+72|0;l=f+48|0;m=f+40|0;n=f+16|0;o=f+184|0;p=f+180|0;q=f+8|0;r=f;s=f+176|0;t=f+172|0;u=f+168|0;v=f+164|0;w=f+160|0;c[o>>2]=b;c[p>>2]=e;e=c[o>>2]|0;x=+h[(c[(c[p>>2]|0)+4>>2]|0)+16>>3];b=c[c[(c[p>>2]|0)+4>>2]>>2]|0;c[n>>2]=c[c[p>>2]>>2];h[n+8>>3]=x;c[n+16>>2]=b;oF(e,116658,n);g[12137]=+g[12136]-9.0;switch(a[(c[p>>2]|0)+48>>0]|0){case 108:break;case 114:{h[d>>3]=+h[d>>3]-+h[(c[p>>2]|0)+32>>3];break}default:h[d>>3]=+h[d>>3]-+h[(c[p>>2]|0)+32>>3]/2.0}h[q>>3]=(+h[d>>3]+ +h[(c[o>>2]|0)+504>>3])*+h[(c[o>>2]|0)+488>>3];h[r>>3]=(+h[d+8>>3]+ +h[(c[o>>2]|0)+504+8>>3])*+h[(c[o>>2]|0)+488+8>>3];d=c[o>>2]|0;h[m>>3]=+h[(c[(c[p>>2]|0)+4>>2]|0)+16>>3]*+h[(c[o>>2]|0)+488>>3];c[t>>2]=ze(d,116710,m)|0;m=c[o>>2]|0;x=+(c[(c[o>>2]|0)+360>>2]|0);h[l>>3]=0.0;h[l+8>>3]=0.0;h[l+16>>3]=x;c[u>>2]=ze(m,115949,l)|0;l=c[o>>2]|0;x=+h[r>>3];y=+g[12137];h[j>>3]=+h[q>>3];h[j+8>>3]=x;h[j+16>>3]=y;c[v>>2]=ze(l,115981,j)|0;l=c[o>>2]|0;q=j;r=(c[(c[o>>2]|0)+16>>2]|0)+16|0;m=q+40|0;do{c[q>>2]=c[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(m|0));c[w>>2]=Te(l,j,0.0)|0;j=c[o>>2]|0;l=c[c[p>>2]>>2]|0;r=c[t>>2]|0;q=c[u>>2]|0;m=c[v>>2]|0;d=c[w>>2]|0;c[k>>2]=c[c[(c[p>>2]|0)+4>>2]>>2];h[k+8>>3]=.25;h[k+16>>3]=0.0;c[k+24>>2]=l;c[k+28>>2]=116797;c[k+32>>2]=r;c[k+36>>2]=q;c[k+40>>2]=m;c[k+44>>2]=d;c[s>>2]=ze(j,116722,k)|0;jF(c[o>>2]|0,c[s>>2]|0)|0;O4(c[s>>2]|0);O4(c[u>>2]|0);O4(c[w>>2]|0);O4(c[v>>2]|0);O4(c[t>>2]|0);i=f;return}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0;e=i;i=i+288|0;f=e+192|0;j=e+152|0;k=e+128|0;l=e+104|0;m=e+80|0;n=e+48|0;o=e+24|0;p=e;q=e+280|0;r=e+276|0;s=e+272|0;t=e+268|0;u=e+264|0;v=e+260|0;w=e+256|0;x=e+252|0;y=e+248|0;z=e+244|0;A=e+240|0;B=e+236|0;C=e+232|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;jF(c[q>>2]|0,116535)|0;g[12137]=+g[12136]-6.0;g[y>>2]=(+h[c[r>>2]>>3]+ +h[(c[q>>2]|0)+504>>3])*+h[(c[q>>2]|0)+488>>3];g[z>>2]=(+h[(c[r>>2]|0)+8>>3]+ +h[(c[q>>2]|0)+504+8>>3])*+h[(c[q>>2]|0)+488+8>>3];g[A>>2]=(+h[(c[r>>2]|0)+16>>3]-+h[c[r>>2]>>3])*+h[(c[q>>2]|0)+488>>3];g[B>>2]=(+h[(c[r>>2]|0)+16+8>>3]-+h[(c[r>>2]|0)+8>>3])*+h[(c[q>>2]|0)+488+8>>3];g[C>>2]=+h[(c[(c[q>>2]|0)+16>>2]|0)+152>>3]/(+g[A>>2]+ +g[B>>2])/2.0*5.0;r=c[q>>2]|0;D=(+g[A>>2]+ +g[B>>2])/4.0;E=+g[B>>2];h[p>>3]=+g[A>>2];h[p+8>>3]=D;h[p+16>>3]=E;c[u>>2]=ze(r,115917,p)|0;p=c[q>>2]|0;E=+(c[(c[q>>2]|0)+360>>2]|0);h[o>>3]=90.0;h[o+8>>3]=0.0;h[o+16>>3]=E;c[v>>2]=ze(p,115949,o)|0;o=c[q>>2]|0;E=+g[z>>2];D=+g[12137];h[f>>3]=+g[y>>2];h[f+8>>3]=E;h[f+16>>3]=D;c[w>>2]=ze(o,115981,f)|0;o=c[q>>2]|0;p=f;r=(c[(c[q>>2]|0)+16>>2]|0)+16|0;d=p+40|0;do{c[p>>2]=c[r>>2];p=p+4|0;r=r+4|0}while((p|0)<(d|0));c[x>>2]=Te(o,f,0.0)|0;o=c[q>>2]|0;D=+g[C>>2];C=c[u>>2]|0;b=c[v>>2]|0;a=c[w>>2]|0;F=c[x>>2]|0;h[n>>3]=1.0;h[n+8>>3]=D;c[n+16>>2]=C;c[n+20>>2]=b;c[n+24>>2]=a;c[n+28>>2]=F;c[t>>2]=ze(o,116550,n)|0;jF(c[q>>2]|0,c[t>>2]|0)|0;O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);O4(c[x>>2]|0);O4(c[t>>2]|0);if(!(c[s>>2]|0)){i=e;return}s=c[q>>2]|0;D=+g[B>>2];h[m>>3]=+g[A>>2];h[m+8>>3]=D;h[m+16>>3]=1.0;c[u>>2]=ze(s,115917,m)|0;m=c[q>>2]|0;D=+(c[(c[q>>2]|0)+360>>2]|0);h[l>>3]=0.0;h[l+8>>3]=0.0;h[l+16>>3]=D;c[v>>2]=ze(m,115949,l)|0;l=c[q>>2]|0;D=+g[z>>2];E=+g[12137];h[k>>3]=+g[y>>2];h[k+8>>3]=D;h[k+16>>3]=E;c[w>>2]=ze(l,115981,k)|0;k=c[q>>2]|0;p=f;r=(c[(c[q>>2]|0)+16>>2]|0)+56|0;d=p+40|0;do{c[p>>2]=c[r>>2];p=p+4|0;r=r+4|0}while((p|0)<(d|0));c[x>>2]=Te(k,f,0.0)|0;f=c[q>>2]|0;k=c[u>>2]|0;r=c[v>>2]|0;p=c[w>>2]|0;d=c[x>>2]|0;h[j>>3]=0.0;h[j+8>>3]=0.0;h[j+16>>3]=0.0;c[j+24>>2]=k;c[j+28>>2]=r;c[j+32>>2]=p;c[j+36>>2]=d;c[t>>2]=ze(f,116596,j)|0;jF(c[q>>2]|0,c[t>>2]|0)|0;O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);O4(c[x>>2]|0);O4(c[t>>2]|0);i=e;return}function Pe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0,P=0.0,Q=0;f=i;i=i+384|0;j=f+296|0;k=f+288|0;l=f+272|0;m=f+264|0;n=f+240|0;o=f+232|0;p=f+208|0;q=f+184|0;r=f+160|0;s=f+152|0;t=f+136|0;u=f+128|0;v=f+96|0;w=f+88|0;x=f+56|0;y=f+48|0;z=f+24|0;A=f;B=f+380|0;C=f+376|0;D=f+372|0;E=f+368|0;F=f+364|0;G=f+360|0;H=f+356|0;I=f+352|0;J=f+348|0;K=f+344|0;L=f+340|0;M=f+336|0;c[B>>2]=a;c[C>>2]=b;c[D>>2]=d;c[E>>2]=e;jF(c[B>>2]|0,116400)|0;g[12137]=+g[12136]-2.0;e=c[B>>2]|0;N=+h[(c[B>>2]|0)+488+8>>3];h[A>>3]=+h[(c[B>>2]|0)+488>>3];h[A+8>>3]=N;h[A+16>>3]=1.0;c[G>>2]=ze(e,115917,A)|0;A=c[B>>2]|0;N=+(c[(c[B>>2]|0)+360>>2]|0);h[z>>3]=0.0;h[z+8>>3]=0.0;h[z+16>>3]=N;c[H>>2]=ze(A,115949,z)|0;z=c[B>>2]|0;N=+g[12137]-2.0;h[j>>3]=0.0;h[j+8>>3]=0.0;h[j+16>>3]=N;c[I>>2]=ze(z,115981,j)|0;z=c[B>>2]|0;A=j;e=(c[(c[B>>2]|0)+16>>2]|0)+16|0;d=A+40|0;do{c[A>>2]=c[e>>2];A=A+4|0;e=e+4|0}while((A|0)<(d|0));c[J>>2]=Te(z,j,0.0)|0;z=c[B>>2]|0;b=(c[D>>2]|0)+1|0;c[y>>2]=116044;c[y+4>>2]=b;c[F>>2]=ze(z,116013,y)|0;c[M>>2]=0;while(1){O=c[B>>2]|0;if((c[M>>2]|0)>=(c[D>>2]|0))break;N=+h[(c[C>>2]|0)+(c[M>>2]<<4)+8>>3]+ +h[(c[B>>2]|0)+504+8>>3];P=+h[(c[(c[B>>2]|0)+16>>2]|0)+152>>3];h[x>>3]=+h[(c[C>>2]|0)+(c[M>>2]<<4)>>3]+ +h[(c[B>>2]|0)+504>>3];h[x+8>>3]=N;h[x+16>>3]=0.0;h[x+24>>3]=P;c[K>>2]=ze(O,116058,x)|0;y=c[B>>2]|0;z=c[K>>2]|0;c[w>>2]=c[F>>2];c[w+4>>2]=z;c[L>>2]=ze(y,116087,w)|0;O4(c[K>>2]|0);O4(c[F>>2]|0);c[F>>2]=c[L>>2];c[M>>2]=(c[M>>2]|0)+1}P=+h[(c[C>>2]|0)+8>>3]+ +h[(c[B>>2]|0)+504+8>>3];N=+h[(c[(c[B>>2]|0)+16>>2]|0)+152>>3];h[v>>3]=+h[c[C>>2]>>3]+ +h[(c[B>>2]|0)+504>>3];h[v+8>>3]=P;h[v+16>>3]=0.0;h[v+24>>3]=N;c[K>>2]=ze(O,116058,v)|0;v=c[B>>2]|0;O=c[K>>2]|0;c[u>>2]=c[F>>2];c[u+4>>2]=O;c[L>>2]=ze(v,116087,u)|0;O4(c[K>>2]|0);O4(c[F>>2]|0);c[F>>2]=c[L>>2];u=c[B>>2]|0;v=c[H>>2]|0;O=c[I>>2]|0;w=c[J>>2]|0;c[t>>2]=c[G>>2];c[t+4>>2]=v;c[t+8>>2]=O;c[t+12>>2]=w;c[L>>2]=ze(u,116415,t)|0;t=c[B>>2]|0;u=c[L>>2]|0;c[s>>2]=c[F>>2];c[s+4>>2]=u;c[F>>2]=ze(t,116142,s)|0;O4(c[L>>2]|0);jF(c[B>>2]|0,c[F>>2]|0)|0;O4(c[G>>2]|0);O4(c[H>>2]|0);O4(c[I>>2]|0);O4(c[J>>2]|0);O4(c[F>>2]|0);if(!(c[E>>2]|0)){i=f;return}E=c[B>>2]|0;N=+h[(c[B>>2]|0)+488+8>>3];h[r>>3]=+h[(c[B>>2]|0)+488>>3];h[r+8>>3]=N;h[r+16>>3]=1.0;c[G>>2]=ze(E,115917,r)|0;r=c[B>>2]|0;N=+(c[(c[B>>2]|0)+360>>2]|0);h[q>>3]=0.0;h[q+8>>3]=0.0;h[q+16>>3]=N;c[H>>2]=ze(r,115949,q)|0;q=c[B>>2]|0;N=+g[12137]-2.0;h[p>>3]=0.0;h[p+8>>3]=0.0;h[p+16>>3]=N;c[I>>2]=ze(q,115981,p)|0;p=c[B>>2]|0;A=j;e=(c[(c[B>>2]|0)+16>>2]|0)+56|0;d=A+40|0;do{c[A>>2]=c[e>>2];A=A+4|0;e=e+4|0}while((A|0)<(d|0));c[J>>2]=Te(p,j,.25)|0;j=c[B>>2]|0;c[o>>2]=c[D>>2];c[F>>2]=ze(j,116460,o)|0;c[M>>2]=0;while(1){Q=c[B>>2]|0;if((c[M>>2]|0)>=(c[D>>2]|0))break;N=+h[(c[C>>2]|0)+(c[M>>2]<<4)+8>>3]+ +h[(c[B>>2]|0)+504+8>>3];h[n>>3]=+h[(c[C>>2]|0)+(c[M>>2]<<4)>>3]+ +h[(c[B>>2]|0)+504>>3];h[n+8>>3]=N;h[n+16>>3]=0.0;c[K>>2]=ze(Q,116475,n)|0;o=c[B>>2]|0;j=c[K>>2]|0;c[m>>2]=c[F>>2];c[m+4>>2]=j;c[L>>2]=ze(o,116497,m)|0;O4(c[K>>2]|0);O4(c[F>>2]|0);c[F>>2]=c[L>>2];c[M>>2]=(c[M>>2]|0)+1}M=c[H>>2]|0;K=c[I>>2]|0;m=c[J>>2]|0;c[l>>2]=c[G>>2];c[l+4>>2]=M;c[l+8>>2]=K;c[l+12>>2]=m;c[L>>2]=ze(Q,116507,l)|0;l=c[B>>2]|0;Q=c[L>>2]|0;c[k>>2]=c[F>>2];c[k+4>>2]=Q;c[F>>2]=ze(l,116142,k)|0;O4(c[L>>2]|0);jF(c[B>>2]|0,c[F>>2]|0)|0;O4(c[G>>2]|0);O4(c[H>>2]|0);O4(c[I>>2]|0);O4(c[J>>2]|0);O4(c[F>>2]|0);i=f;return}function Qe(a,b,d,e,f,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0.0;k=i;i=i+256|0;l=k+160|0;m=k+152|0;n=k+136|0;o=k+128|0;p=k+96|0;q=k+88|0;r=k+56|0;s=k+48|0;t=k+24|0;u=k;v=k+252|0;w=k+248|0;x=k+244|0;y=k+228|0;z=k+224|0;A=k+220|0;B=k+216|0;C=k+212|0;D=k+208|0;E=k+204|0;F=k+200|0;c[v>>2]=a;c[w>>2]=b;c[x>>2]=d;c[k+240>>2]=e;c[k+236>>2]=f;c[k+232>>2]=j;jF(c[v>>2]|0,116327)|0;g[12137]=+g[12136]-4.0;j=c[v>>2]|0;G=+h[(c[v>>2]|0)+488+8>>3];h[u>>3]=+h[(c[v>>2]|0)+488>>3];h[u+8>>3]=G;h[u+16>>3]=1.0;c[C>>2]=ze(j,115917,u)|0;u=c[v>>2]|0;G=+(c[(c[v>>2]|0)+360>>2]|0);h[t>>3]=0.0;h[t+8>>3]=0.0;h[t+16>>3]=G;c[D>>2]=ze(u,115949,t)|0;t=c[v>>2]|0;G=+g[12137]-2.0;h[l>>3]=0.0;h[l+8>>3]=0.0;h[l+16>>3]=G;c[E>>2]=ze(t,115981,l)|0;t=c[v>>2]|0;u=l;j=(c[(c[v>>2]|0)+16>>2]|0)+56|0;f=u+40|0;do{c[u>>2]=c[j>>2];u=u+4|0;j=j+4|0}while((u|0)<(f|0));c[F>>2]=Te(t,l,0.0)|0;l=c[v>>2]|0;t=(c[x>>2]|0)+2|0;c[s>>2]=116341;c[s+4>>2]=t;c[B>>2]=ze(l,116013,s)|0;c[y>>2]=0;while(1){H=c[v>>2]|0;if((c[y>>2]|0)>=(c[x>>2]|0))break;G=+h[(c[w>>2]|0)+(c[y>>2]<<4)+8>>3]+ +h[(c[v>>2]|0)+504+8>>3];I=+h[(c[(c[v>>2]|0)+16>>2]|0)+152>>3];h[r>>3]=+h[(c[w>>2]|0)+(c[y>>2]<<4)>>3]+ +h[(c[v>>2]|0)+504>>3];h[r+8>>3]=G;h[r+16>>3]=0.0;h[r+24>>3]=I;c[z>>2]=ze(H,116058,r)|0;s=c[v>>2]|0;l=c[z>>2]|0;c[q>>2]=c[B>>2];c[q+4>>2]=l;c[A>>2]=ze(s,116087,q)|0;O4(c[z>>2]|0);O4(c[B>>2]|0);c[B>>2]=c[A>>2];if(!((c[y>>2]|0)!=0?(c[y>>2]|0)!=((c[x>>2]|0)-1|0):0)){s=c[v>>2]|0;I=+h[(c[w>>2]|0)+(c[y>>2]<<4)+8>>3]+ +h[(c[v>>2]|0)+504+8>>3];G=+h[(c[(c[v>>2]|0)+16>>2]|0)+152>>3];h[p>>3]=+h[(c[w>>2]|0)+(c[y>>2]<<4)>>3]+ +h[(c[v>>2]|0)+504>>3];h[p+8>>3]=I;h[p+16>>3]=0.0;h[p+24>>3]=G;c[z>>2]=ze(s,116058,p)|0;s=c[v>>2]|0;l=c[z>>2]|0;c[o>>2]=c[B>>2];c[o+4>>2]=l;c[A>>2]=ze(s,116087,o)|0;O4(c[z>>2]|0);O4(c[B>>2]|0);c[B>>2]=c[A>>2]}c[y>>2]=(c[y>>2]|0)+1}y=c[D>>2]|0;z=c[E>>2]|0;o=c[F>>2]|0;c[n>>2]=c[C>>2];c[n+4>>2]=y;c[n+8>>2]=z;c[n+12>>2]=o;c[A>>2]=ze(H,116350,n)|0;n=c[v>>2]|0;H=c[A>>2]|0;c[m>>2]=c[B>>2];c[m+4>>2]=H;c[B>>2]=ze(n,116142,m)|0;O4(c[A>>2]|0);jF(c[v>>2]|0,c[B>>2]|0)|0;O4(c[C>>2]|0);O4(c[D>>2]|0);O4(c[E>>2]|0);O4(c[F>>2]|0);O4(c[B>>2]|0);i=k;return}function Re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0.0;e=i;i=i+208|0;f=e+120|0;j=e+112|0;k=e+96|0;l=e+88|0;m=e+56|0;n=e+48|0;o=e+24|0;p=e;q=e+200|0;r=e+196|0;s=e+192|0;t=e+188|0;u=e+184|0;v=e+180|0;w=e+176|0;x=e+172|0;y=e+168|0;z=e+164|0;A=e+160|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;jF(c[q>>2]|0,115901)|0;g[12137]=+g[12136]-6.0;d=c[q>>2]|0;B=+h[(c[q>>2]|0)+488+8>>3];h[p>>3]=+h[(c[q>>2]|0)+488>>3];h[p+8>>3]=B;h[p+16>>3]=1.0;c[u>>2]=ze(d,115917,p)|0;p=c[q>>2]|0;B=+(c[(c[q>>2]|0)+360>>2]|0);h[o>>3]=0.0;h[o+8>>3]=0.0;h[o+16>>3]=B;c[v>>2]=ze(p,115949,o)|0;o=c[q>>2]|0;B=+g[12137];h[f>>3]=0.0;h[f+8>>3]=0.0;h[f+16>>3]=B;c[w>>2]=ze(o,115981,f)|0;o=c[q>>2]|0;p=f;d=(c[(c[q>>2]|0)+16>>2]|0)+16|0;b=p+40|0;do{c[p>>2]=c[d>>2];p=p+4|0;d=d+4|0}while((p|0)<(b|0));c[x>>2]=Te(o,f,0.0)|0;f=c[q>>2]|0;o=c[s>>2]|0;c[n>>2]=116044;c[n+4>>2]=o;c[t>>2]=ze(f,116013,n)|0;c[A>>2]=0;while(1){C=c[q>>2]|0;if((c[A>>2]|0)>=(c[s>>2]|0))break;B=+h[(c[r>>2]|0)+(c[A>>2]<<4)+8>>3]+ +h[(c[q>>2]|0)+504+8>>3];D=+h[(c[(c[q>>2]|0)+16>>2]|0)+152>>3];h[m>>3]=+h[(c[r>>2]|0)+(c[A>>2]<<4)>>3]+ +h[(c[q>>2]|0)+504>>3];h[m+8>>3]=B;h[m+16>>3]=0.0;h[m+24>>3]=D;c[y>>2]=ze(C,116058,m)|0;n=c[q>>2]|0;f=c[y>>2]|0;c[l>>2]=c[t>>2];c[l+4>>2]=f;c[z>>2]=ze(n,116087,l)|0;O4(c[y>>2]|0);O4(c[t>>2]|0);c[t>>2]=c[z>>2];c[A>>2]=(c[A>>2]|0)+1}A=c[v>>2]|0;y=c[w>>2]|0;l=c[x>>2]|0;c[k>>2]=c[u>>2];c[k+4>>2]=A;c[k+8>>2]=y;c[k+12>>2]=l;c[z>>2]=ze(C,116096,k)|0;k=c[q>>2]|0;C=c[z>>2]|0;c[j>>2]=c[t>>2];c[j+4>>2]=C;c[t>>2]=ze(k,116142,j)|0;O4(c[z>>2]|0);jF(c[q>>2]|0,c[t>>2]|0)|0;O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);O4(c[x>>2]|0);O4(c[t>>2]|0);i=e;return}function Se(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+8|0;g=d+4|0;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;c[e>>2]=c[g>>2];oF(b,115882,e);i=d;return}function Te(a,b,e){a=a|0;b=b|0;e=+e;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0;f=i;i=i+128|0;j=f+104|0;k=f+96|0;l=f+64|0;m=f+48|0;n=f+32|0;o=f+16|0;p=f;q=f+120|0;r=f+116|0;s=f+112|0;t=f+108|0;c[q>>2]=a;g[r>>2]=e;a:do switch(c[b+32>>2]|0){case 5:{if(!(J3(c[b>>2]|0,173905)|0)){a=c[q>>2]|0;e=+g[r>>2];c[p>>2]=116164;h[p+8>>3]=e;c[t>>2]=ze(a,116147,p)|0;break a}if(!(J3(c[b>>2]|0,171035)|0)){a=c[q>>2]|0;e=+g[r>>2];c[o>>2]=116168;h[o+8>>3]=e;c[t>>2]=ze(a,116147,o)|0;break a}a=(J3(c[b>>2]|0,169034)|0)!=0;u=c[q>>2]|0;if(a){e=+g[r>>2];c[m>>2]=c[b>>2];h[m+8>>3]=e;c[t>>2]=ze(u,116147,m)|0;break a}else{e=+g[r>>2];c[n>>2]=116174;h[n+8>>3]=e;c[t>>2]=ze(u,116147,n)|0;break a}break}case 1:{u=c[q>>2]|0;e=+(d[b+1>>0]|0|0)/256.0;v=+(d[b+2>>0]|0|0)/256.0;w=+g[r>>2];h[l>>3]=+(d[b>>0]|0|0)/256.0;h[l+8>>3]=e;h[l+16>>3]=v;h[l+24>>3]=w;c[t>>2]=ze(u,116179,l)|0;break}default:{u=c[24742]|0;a=c[b>>2]|0;c[k>>2]=c[b+32>>2];c[k+4>>2]=a;Y2(u,116218,k)|0;La(176099,116268,438,116288)}}while(0);k=c[q>>2]|0;c[j>>2]=c[t>>2];c[s>>2]=ze(k,116305,j)|0;O4(c[t>>2]|0);i=f;return c[s>>2]|0}function Ue(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+48|0;d=b+24|0;e=b+16|0;f=b;g=b+32|0;h=b+28|0;c[g>>2]=a;c[h>>2]=c[(c[g>>2]|0)+16>>2];a=c[g>>2]|0;j=c[c[c[(c[g>>2]|0)+12>>2]>>2]>>2]|0;k=c[(c[c[(c[g>>2]|0)+12>>2]>>2]|0)+4>>2]|0;l=c[(c[c[(c[g>>2]|0)+12>>2]>>2]|0)+8>>2]|0;c[f>>2]=c[12188];c[f+4>>2]=j;c[f+8>>2]=k;c[f+12>>2]=l;oF(a,120901,f);f=c[g>>2]|0;a=c[12188]|0;l=wB(c[(c[h>>2]|0)+8>>2]|0)|0;c[e>>2]=a;c[e+4>>2]=l;oF(f,120933,e);e=c[g>>2]|0;c[d>>2]=c[12188];oF(e,120947,d);i=b;return}function Ve(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;a=c[e>>2]|0;c[d>>2]=c[12188];oF(a,120849,d);i=b;return}function We(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0,R=0,S=0,T=0,U=0.0;b=i;i=i+352|0;d=b+320|0;e=b+312|0;f=b+296|0;g=b+288|0;j=b+280|0;k=b+272|0;l=b+264|0;m=b+256|0;n=b+248|0;o=b+240|0;p=b+232|0;q=b+224|0;r=b+216|0;s=b+208|0;t=b+200|0;u=b+192|0;v=b+184|0;w=b+176|0;x=b+168|0;y=b+160|0;z=b+152|0;A=b+144|0;B=b+136|0;C=b+128|0;D=b+120|0;E=b+112|0;F=b+104|0;G=b+96|0;H=b+88|0;I=b+80|0;J=b+72|0;K=b+64|0;L=b+48|0;M=b+40|0;N=b+24|0;O=b+344|0;Q=b+328|0;R=b+16|0;S=b+8|0;T=b;c[O>>2]=a;a=(c[O>>2]|0)+456|0;c[Q>>2]=c[a>>2];c[Q+4>>2]=c[a+4>>2];c[Q+8>>2]=c[a+8>>2];c[Q+12>>2]=c[a+12>>2];if(((c[12261]|0)!=0?(c[(c[O>>2]|0)+360>>2]|0)!=0:0)?(c[(c[O>>2]|0)+360>>2]|0)!=90:0){gf(129372);c[12261]=0}h[R>>3]=(+(c[Q+8+4>>2]|0)-+(c[Q+4>>2]|0))/72.0;h[S>>3]=(+(c[Q+8>>2]|0)-+(c[Q>>2]|0))/72.0;if((c[(c[O>>2]|0)+360>>2]|0)==90){h[T>>3]=+h[S>>3];h[S>>3]=+h[R>>3];h[R>>3]=+h[T>>3]}T=c[O>>2]|0;U=+h[R>>3];h[N>>3]=+h[S>>3];h[N+8>>3]=U;oF(T,118478,N);N=c[O>>2]|0;c[M>>2]=c[12188];oF(N,118493,M);if(+h[S>>3]>0.0){h[137]=+e2(+h[S>>3]);h[137]=+h[137]+(3.0-+(~~+h[137]|0))}else h[137]=3.0;h[137]=+P(10.0,+(+h[137]));M=c[O>>2]|0;U=+h[137];h[L>>3]=+h[137];h[L+8>>3]=U;oF(M,118662,L);L=c[O>>2]|0;c[K>>2]=c[12188];oF(L,118697,K);K=c[O>>2]|0;c[J>>2]=c[12188];oF(K,118755,J);J=c[O>>2]|0;c[I>>2]=c[12188];oF(J,118815,I);I=c[O>>2]|0;c[H>>2]=c[12188];oF(I,118864,H);H=c[O>>2]|0;c[G>>2]=c[12188];oF(H,118903,G);G=c[O>>2]|0;c[F>>2]=c[12188];oF(G,118954,F);F=c[O>>2]|0;c[E>>2]=c[12188];oF(F,119016,E);E=c[O>>2]|0;c[D>>2]=c[12188];oF(E,119126,D);D=c[O>>2]|0;c[C>>2]=c[12188];oF(D,119217,C);C=c[O>>2]|0;c[B>>2]=c[12188];oF(C,119271,B);B=c[O>>2]|0;c[A>>2]=c[12188];oF(B,119340,A);oF(c[O>>2]|0,119376,z);z=c[O>>2]|0;c[y>>2]=c[12188];oF(z,119501,y);y=c[O>>2]|0;c[x>>2]=c[12188];oF(y,119530,x);oF(c[O>>2]|0,119570,w);w=c[O>>2]|0;c[v>>2]=c[12188];oF(w,119663,v);v=c[O>>2]|0;c[u>>2]=c[12188];oF(v,119722,u);u=c[O>>2]|0;c[t>>2]=c[12188];oF(u,119803,t);oF(c[O>>2]|0,119873,s);s=c[O>>2]|0;c[r>>2]=c[12188];oF(s,119962,r);r=c[O>>2]|0;c[q>>2]=c[12188];oF(r,120067,q);q=c[O>>2]|0;c[p>>2]=c[12188];oF(q,120143,p);p=c[O>>2]|0;c[o>>2]=c[12188];oF(p,120182,o);o=c[O>>2]|0;c[n>>2]=c[12188];oF(o,120281,n);n=c[O>>2]|0;c[m>>2]=c[12188];oF(n,120327,m);oF(c[O>>2]|0,120416,l);l=c[O>>2]|0;c[k>>2]=c[12188];oF(l,120457,k);k=c[O>>2]|0;c[j>>2]=c[12188];oF(k,120540,j);j=c[O>>2]|0;c[g>>2]=c[12188];oF(j,120641,g);g=c[O>>2]|0;U=+h[S>>3];h[f>>3]=+h[R>>3];h[f+8>>3]=U;oF(g,120705,f);oF(c[O>>2]|0,120733,e);oF(c[O>>2]|0,120741,d);i=b;return}function Xe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b+4|0;c[d>>2]=a;oF(c[d>>2]|0,118471,b);i=b;return}function Ye(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0,x=0.0;f=i;i=i+64|0;g=f+24|0;j=f+8|0;k=f;l=f+56|0;m=f+52|0;n=f+48|0;c[l>>2]=b;c[m>>2]=e;switch(a[(c[m>>2]|0)+48>>0]|0){case 108:break;case 114:{h[d>>3]=+h[d>>3]-+h[(c[m>>2]|0)+32>>3];break}default:h[d>>3]=+h[d>>3]-+h[(c[m>>2]|0)+32>>3]/2.0}e=d+8|0;h[e>>3]=+h[e>>3]+ +h[(c[(c[m>>2]|0)+4>>2]|0)+16>>3]/216.0;h[d>>3]=+h[d>>3]+ +h[(c[m>>2]|0)+32>>3]/144.0;do if(c[c[(c[m>>2]|0)+4>>2]>>2]|0){if((c[12189]|0)!=0?(J3(c[12189]|0,c[c[(c[m>>2]|0)+4>>2]>>2]|0)|0)==0:0)break;e=c[l>>2]|0;c[k>>2]=ef(c[c[(c[m>>2]|0)+4>>2]>>2]|0)|0;oF(e,118370,k);c[12189]=c[c[(c[m>>2]|0)+4>>2]>>2]}while(0);c[n>>2]=~~+h[(c[(c[m>>2]|0)+4>>2]|0)+16>>3];c[n>>2]=1;if((c[n>>2]|0)==(c[12190]|0)){o=c[l>>2]|0;p=c[m>>2]|0;q=c[p>>2]|0;r=ff(q)|0;s=+h[d>>3];t=d+8|0;u=+h[t>>3];c[g>>2]=r;v=g+8|0;h[v>>3]=s;w=g+16|0;h[w>>3]=u;oF(o,118399,g);i=f;return}k=c[l>>2]|0;x=+h[137];c[j>>2]=c[n>>2];h[j+8>>3]=x;oF(k,118378,j);c[12190]=c[n>>2];o=c[l>>2]|0;p=c[m>>2]|0;q=c[p>>2]|0;r=ff(q)|0;s=+h[d>>3];t=d+8|0;u=+h[t>>3];c[g>>2]=r;v=g+8|0;h[v>>3]=s;w=g+16|0;h[w>>3]=u;oF(o,118399,g);i=f;return}function Ze(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0;e=i;i=i+64|0;f=e;g=e+48|0;j=e+44|0;k=e+40|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;d=c[g>>2]|0;g=(c[k>>2]|0)!=0?118312:178518;l=(+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3])*2.0/72.0;m=(+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3])*2.0/72.0;n=+h[c[j>>2]>>3]/72.0;o=+h[(c[j>>2]|0)+8>>3]/72.0;c[f>>2]=1;c[f+4>>2]=g;h[f+8>>3]=l;h[f+16>>3]=m;h[f+24>>3]=n;h[f+32>>3]=o;oF(d,118318,f);i=e;return}function _e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+96|0;g=f+80|0;j=f+76|0;k=f+72|0;l=f+68|0;m=f+64|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=c[(c[g>>2]|0)+16>>2];c[f+60>>2]=2;c[f+56>>2]=3;c[f+48>>2]=~~+h[(c[m>>2]|0)+152>>3];c[f+44>>2]=c[(c[m>>2]|0)+16>>2];c[f+40>>2]=c[(c[m>>2]|0)+56>>2];c[f+36>>2]=0;c[f+32>>2]=(c[l>>2]|0)!=0?20:-1;c[f+28>>2]=0;c[f+24>>2]=0;c[f+20>>2]=0;c[f+16>>2]=0;c[f+12>>2]=0;c[f+8>>2]=(c[k>>2]|0)+1;cf(c[m>>2]|0,f+52|0,f);df(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0,1);i=f;return}function $e(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0;j=i;i=i+256|0;k=j+128|0;l=j+120|0;m=j+112|0;n=j+104|0;o=j+244|0;p=j+240|0;q=j+236|0;r=j+224|0;s=j+220|0;t=j+212|0;u=j+196|0;v=j+188|0;w=j+172|0;x=j+168|0;y=j+80|0;z=j+16|0;A=j+160|0;B=j+152|0;C=j+148|0;D=j+144|0;E=j+140|0;F=j+136|0;G=j+132|0;H=j;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[j+232>>2]=e;c[j+228>>2]=f;c[r>>2]=g;c[s>>2]=c[(c[o>>2]|0)+16>>2];c[j+216>>2]=3;c[j+204>>2]=~~+h[(c[s>>2]|0)+152>>3];c[j+200>>2]=c[(c[s>>2]|0)+16>>2];c[u>>2]=c[(c[s>>2]|0)+56>>2];c[j+192>>2]=0;c[j+184>>2]=0;c[j+180>>2]=0;c[j+176>>2]=0;c[w>>2]=c[q>>2];c[D>>2]=0;c[F>>2]=N4((((c[w>>2]|0)+1|0)*7|0)*20|0)|0;c[G>>2]=c[F>>2];cf(c[s>>2]|0,j+208|0,j+96|0);if(c[r>>2]|0){c[t>>2]=5;c[v>>2]=20;c[u>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+56>>2]}else{c[t>>2]=4;c[v>>2]=-1;c[u>>2]=0}h[z+48>>3]=+h[c[p>>2]>>3];h[z+48+8>>3]=+h[(c[p>>2]|0)+8>>3];c[D>>2]=(c[D>>2]|0)+1;I=+h[c[p>>2]>>3];c[A>>2]=~~(+h[c[p>>2]>>3]>=0.0?I+.5:I-.5);I=+h[(c[p>>2]|0)+8>>3];c[A+4>>2]=~~(+h[(c[p>>2]|0)+8>>3]>=0.0?I+.5:I-.5);u=c[G>>2]|0;v=c[A+4>>2]|0;c[n>>2]=c[A>>2];c[n+4>>2]=v;c[E>>2]=k3(u,118296,n)|0;c[G>>2]=(c[G>>2]|0)+(c[E>>2]|0);c[x>>2]=0;while(1){if(((c[x>>2]|0)+3|0)>=(c[q>>2]|0))break;n=z+48|0;c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];c[z+8>>2]=c[n+8>>2];c[z+12>>2]=c[n+12>>2];c[B>>2]=1;while(1){if((c[B>>2]|0)>3)break;h[z+(c[B>>2]<<4)>>3]=+h[(c[p>>2]|0)+((c[x>>2]|0)+(c[B>>2]|0)<<4)>>3];h[z+(c[B>>2]<<4)+8>>3]=+h[(c[p>>2]|0)+((c[x>>2]|0)+(c[B>>2]|0)<<4)+8>>3];c[B>>2]=(c[B>>2]|0)+1}c[C>>2]=1;while(1){if((c[C>>2]|0)>6)break;c[D>>2]=(c[D>>2]|0)+1;qO(H,z,3,+(c[C>>2]|0)/6.0,0,0);c[y>>2]=c[H>>2];c[y+4>>2]=c[H+4>>2];c[y+8>>2]=c[H+8>>2];c[y+12>>2]=c[H+12>>2];I=+h[y>>3];c[A>>2]=~~(+h[y>>3]>=0.0?I+.5:I-.5);I=+h[y+8>>3];c[A+4>>2]=~~(+h[y+8>>3]>=0.0?I+.5:I-.5);n=c[G>>2]|0;u=c[A+4>>2]|0;c[m>>2]=c[A>>2];c[m+4>>2]=u;c[E>>2]=k3(n,118296,m)|0;c[G>>2]=(c[G>>2]|0)+(c[E>>2]|0);c[C>>2]=(c[C>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+3}C=c[o>>2]|0;c[l>>2]=c[F>>2];oF(C,118303,l);O4(c[F>>2]|0);c[x>>2]=0;while(1){J=c[o>>2]|0;if((c[x>>2]|0)>=(c[D>>2]|0))break;c[k>>2]=((c[x>>2]|0)%((c[D>>2]|0)-1|0)|0|0)!=0?1:0;oF(J,118308,k);c[x>>2]=(c[x>>2]|0)+1}jF(J,193392)|0;i=j;return}function af(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+80|0;f=e+76|0;g=e+72|0;j=e+68|0;k=e+64|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[(c[f>>2]|0)+16>>2];c[e+60>>2]=2;c[e+56>>2]=1;c[e+48>>2]=~~+h[(c[k>>2]|0)+152>>3];c[e+44>>2]=c[(c[k>>2]|0)+16>>2];c[e+40>>2]=0;c[e+36>>2]=0;c[e+32>>2]=0;c[e+28>>2]=0;c[e+24>>2]=0;c[e+20>>2]=0;c[e+16>>2]=0;c[e+12>>2]=0;c[e+8>>2]=c[j>>2];cf(c[k>>2]|0,e+52|0,e);df(c[f>>2]|0,c[g>>2]|0,c[j>>2]|0,0);i=e;return}function bf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+12|0;g=d+8|0;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;f=c[g>>2]|0;c[e>>2]=c[12188];c[e+4>>2]=f;oF(b,118284,e);i=d;return}function cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;switch(c[(c[f>>2]|0)+144>>2]|0){case 1:{c[c[g>>2]>>2]=1;h[c[j>>2]>>3]=10.0;i=e;return}case 2:{c[c[g>>2]>>2]=2;h[c[j>>2]>>3]=10.0;i=e;return}default:{c[c[g>>2]>>2]=0;h[c[j>>2]>>3]=0.0;i=e;return}}}function df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0;f=i;i=i+48|0;g=f+8|0;j=f;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+16|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;q=+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3];c[p>>2]=~~(+h[(c[l>>2]|0)+(c[o>>2]<<4)>>3]>=0.0?q+.5:q-.5);q=+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3];c[p+4>>2]=~~(+h[(c[l>>2]|0)+(c[o>>2]<<4)+8>>3]>=0.0?q+.5:q-.5);e=c[k>>2]|0;d=c[p+4>>2]|0;c[j>>2]=c[p>>2];c[j+4>>2]=d;oF(e,118296,j);c[o>>2]=(c[o>>2]|0)+1}if(!(c[n>>2]|0)){r=c[k>>2]|0;jF(r,193392)|0;i=f;return}q=+h[c[l>>2]>>3];c[p>>2]=~~(+h[c[l>>2]>>3]>=0.0?q+.5:q-.5);q=+h[(c[l>>2]|0)+8>>3];c[p+4>>2]=~~(+h[(c[l>>2]|0)+8>>3]>=0.0?q+.5:q-.5);l=c[k>>2]|0;n=c[p+4>>2]|0;c[g>>2]=c[p>>2];c[g+4>>2]=n;oF(l,118296,g);r=c[k>>2]|0;jF(r,193392)|0;i=f;return}function ef(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;c[f>>2]=b;c[h>>2]=48772;while(1){if(!(c[(c[h>>2]|0)+4>>2]|0))break;if(!(J3(c[(c[h>>2]|0)+4>>2]|0,c[f>>2]|0)|0))break;c[h>>2]=(c[h>>2]|0)+8}if(c[(c[h>>2]|0)+4>>2]|0){c[g>>2]=c[h>>2];j=c[g>>2]|0;i=d;return j|0}h=c[f>>2]|0;c[e>>2]=118452;c[e+4>>2]=h;$z(1,118426,e)|0;e=S3(c[f>>2]|0,45)|0;c[g>>2]=e;if(e){a[c[g>>2]>>0]=0;c[g>>2]=ef(c[f>>2]|0)|0;j=c[g>>2]|0;i=d;return j|0}else{c[g>>2]=118469;j=c[g>>2]|0;i=d;return j|0}return 0}function ff(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e;g=e+12|0;h=e+8|0;j=e+4|0;k=e+16|0;c[g>>2]=b;c[h>>2]=0;if(!(c[12191]|0)){c[12192]=64;c[12191]=N4(c[12192]|0)|0}c[j>>2]=c[12191];while(1){b=c[g>>2]|0;c[g>>2]=b+1;l=a[b>>0]|0;a[k>>0]=l;if(!(l<<24>>24))break;if((c[h>>2]|0)>((c[12192]|0)-8|0)){c[12192]=c[12192]<<1;c[12191]=Q4(c[12191]|0,c[12192]|0)|0;c[j>>2]=(c[12191]|0)+(c[h>>2]|0)}if(!(n1(d[k>>0]|0)|0)){l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=92;l=c[j>>2]|0;c[f>>2]=d[k>>0];k3(l,118421,f)|0;c[j>>2]=(c[j>>2]|0)+3;c[h>>2]=(c[h>>2]|0)+4;continue}if((d[k>>0]|0|0)==92){l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=92;c[h>>2]=(c[h>>2]|0)+1}l=a[k>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[b>>0]=l;c[h>>2]=(c[h>>2]|0)+1}a[c[j>>2]>>0]=0;i=e;return c[12191]|0}function gf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+8|0;c[e>>2]=a;a=c[e>>2]|0;c[d>>2]=118452;c[d+4>>2]=a;$z(0,120831,d)|0;i=b;return}function hf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;e=i;i=i+16|0;c[e+4>>2]=b;c[e>>2]=d;a[e+8>>0]=f;i=e;return}function jf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0;g=i;i=i+48|0;j=g+8|0;k=g;l=g+36|0;m=g+32|0;c[l>>2]=b;c[m>>2]=d;a[g+40>>0]=f;f=c[l>>2]|0;d=c[(c[m>>2]|0)+8>>2]|0;c[k>>2]=c[(c[m>>2]|0)+8>>2];c[k+4>>2]=d;oF(f,121408,k);k=c[l>>2]|0;n=(+h[e+16>>3]+ +h[e>>3])/2.0;o=(+h[e+16+8>>3]+ +h[e+8>>3])/2.0;c[j>>2]=c[(c[m>>2]|0)+8>>2];h[j+8>>3]=n;h[j+16>>3]=o;oF(k,121450,j);i=g;return}function kf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;g=i;i=i+64|0;j=g;k=g+48|0;l=g+44|0;m=g+40|0;c[k>>2]=b;c[l>>2]=d;a[g+52>>0]=f;c[m>>2]=~~(+h[(c[k>>2]|0)+208+16+8>>3]-+h[(c[k>>2]|0)+208+8>>3]);f=c[k>>2]|0;n=+h[e+16>>3]-+h[e>>3];o=+h[e+16+8>>3]-+h[e+8>>3];p=+h[e>>3];q=+((c[m>>2]|0)>>>0)-+h[e+16+8>>3];c[j>>2]=c[(c[l>>2]|0)+8>>2];h[j+8>>3]=n;h[j+16>>3]=o;h[j+24>>3]=p;h[j+32>>3]=q;oF(f,121495,j);jF(c[k>>2]|0,121587)|0;i=g;return}function lf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0;g=i;i=i+192|0;j=g+152|0;k=g+136|0;l=g+120|0;m=g+112|0;n=g+104|0;o=g+88|0;p=g+72|0;q=g+172|0;r=g+168|0;s=g+176|0;t=g+164|0;u=g;c[q>>2]=b;c[r>>2]=d;a[s>>0]=f;if(!(c[q>>2]|0))La(148844,121592,214,121611);if(!(c[r>>2]|0))La(148874,121592,215,121611);if(!(c[(c[r>>2]|0)+8>>2]|0))La(148877,121592,216,121611);f=c[(c[r>>2]|0)+52>>2]|0;c[g+160>>2]=f;if(!f){i=g;return};c[u>>2]=c[e>>2];c[u+4>>2]=c[e+4>>2];c[u+8>>2]=c[e+8>>2];c[u+12>>2]=c[e+12>>2];f=u+32|0;d=e+16|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];h[u+16>>3]=+h[u>>3];h[u+16+8>>3]=+h[u+32+8>>3];h[u+48>>3]=+h[u+32>>3];h[u+48+8>>3]=+h[u+8>>3];if(a[s>>0]|0){oF(c[q>>2]|0,121632,g+64|0);c[t>>2]=0;while(1){v=c[q>>2]|0;if((c[t>>2]|0)>=4)break;w=+h[u+(c[t>>2]<<4)+8>>3];h[p>>3]=+h[u+(c[t>>2]<<4)>>3];h[p+8>>3]=w;oF(v,121635,p);c[t>>2]=(c[t>>2]|0)+1}w=+h[u+8>>3];h[o>>3]=+h[u>>3];h[o+8>>3]=w;oF(v,121635,o);o=c[q>>2]|0;v=c[(c[r>>2]|0)+8>>2]|0;c[n>>2]=4;c[n+4>>2]=v;oF(o,121642,n)}oF(c[q>>2]|0,121632,m);c[t>>2]=0;while(1){x=c[q>>2]|0;if((c[t>>2]|0)>=4)break;w=+h[u+(c[t>>2]<<4)+8>>3];h[l>>3]=+h[u+(c[t>>2]<<4)>>3];h[l+8>>3]=w;oF(x,121635,l);c[t>>2]=(c[t>>2]|0)+1}w=+h[u+8>>3];h[k>>3]=+h[u>>3];h[k+8>>3]=w;oF(x,121635,k);k=c[q>>2]|0;q=c[(c[r>>2]|0)+8>>2]|0;c[j>>2]=4;c[j+4>>2]=q;oF(k,121657,j);i=g;return}function mf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;g=i;i=i+128|0;j=g+24|0;k=g+16|0;l=g;m=g+112|0;n=g+108|0;o=g+104|0;p=g+28|0;c[m>>2]=b;c[n>>2]=d;a[g+116>>0]=f;if(!(c[m>>2]|0))La(148844,121592,155,121673);if(!(c[n>>2]|0))La(148874,121592,156,121673);if(!(c[(c[n>>2]|0)+8>>2]|0))La(148877,121592,157,121673);if((c[(c[n>>2]|0)+52>>2]|0)!=0?(c[(c[n>>2]|0)+60>>2]|0)!=91:0){Bb[c[(c[n>>2]|0)+60>>2]&127](c[n>>2]|0);c[(c[n>>2]|0)+52>>2]=0;c[(c[n>>2]|0)+60>>2]=0;c[(c[n>>2]|0)+56>>2]=0}if(!(c[(c[n>>2]|0)+52>>2]|0)){if(!((CF(c[n>>2]|0)|0)<<24>>24)){i=g;return}c[o>>2]=W2(c[(c[n>>2]|0)+20>>2]|0)|0;if(((c[(c[n>>2]|0)+24>>2]|0)+-6|0)>>>0<2){C2(c[o>>2]|0,p)|0;c[(c[n>>2]|0)+56>>2]=c[p+36>>2];f=j2(0,c[p+36>>2]|0,1,1,c[o>>2]|0,0)|0;c[(c[n>>2]|0)+52>>2]=f;a[(c[n>>2]|0)+16>>0]=1}if(c[(c[n>>2]|0)+52>>2]|0)c[(c[n>>2]|0)+60>>2]=91;DF(c[n>>2]|0)}if(!(c[(c[n>>2]|0)+52>>2]|0)){i=g;return}f=c[m>>2]|0;q=+h[e+8>>3]-+(c[(c[n>>2]|0)+36>>2]|0);h[l>>3]=+h[e>>3]-+(c[(c[n>>2]|0)+32>>2]|0);h[l+8>>3]=q;oF(f,121691,l);l=c[m>>2]|0;f=c[n>>2]|0;if(a[(c[n>>2]|0)+16>>0]|0)IL(l,f);else{c[k>>2]=c[f+12>>2];oF(l,121722,k)}oF(c[m>>2]|0,121737,j);i=g;return}function nf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;k2(c[(c[d>>2]|0)+52>>2]|0,c[(c[d>>2]|0)+56>>2]|0)|0;i=b;return}function of(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;e=i;i=i+96|0;g=e+48|0;h=e+80|0;j=e+76|0;k=e+72|0;l=e+68|0;c[h>>2]=b;c[j>>2]=d;a[e+84>>0]=f;if(!(c[h>>2]|0))La(148844,121592,123,121747);c[k>>2]=c[(c[h>>2]|0)+16>>2];if(!(c[k>>2]|0))La(137574,121592,125,121747);if(!(c[j>>2]|0))La(148874,121592,126,121747);if(!(c[(c[j>>2]|0)+8>>2]|0))La(148877,121592,127,121747);c[l>>2]=c[(c[(c[h>>2]|0)+16>>2]|0)+8>>2];if(c[l>>2]|0){oF(c[h>>2]|0,121767,e);oF(c[h>>2]|0,121776,e+8|0);oF(c[h>>2]|0,121803,e+16|0);oF(c[h>>2]|0,121828,e+24|0);oF(c[h>>2]|0,121857,e+32|0);oF(c[h>>2]|0,121885,e+40|0);l=c[h>>2]|0;c[g>>2]=c[(c[j>>2]|0)+8>>2];oF(l,121892,g);oF(c[h>>2]|0,121931,e+56|0);oF(c[h>>2]|0,148626,e+64|0);i=e;return}else La(176617,121592,130,121747)}function pf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;g=i;i=i+224|0;j=g+88|0;k=g+8|0;l=g+212|0;m=g+208|0;n=g+204|0;o=g+200|0;p=g+196|0;q=g+192|0;r=g+188|0;s=g+184|0;t=g+180|0;u=g+176|0;v=g+172|0;w=g;x=g+168|0;y=g+164|0;z=g+160|0;A=g+156|0;B=g+152|0;C=g+148|0;D=g+144|0;E=g+128|0;c[l>>2]=b;c[m>>2]=d;a[g+216>>0]=f;c[n>>2]=2;c[o>>2]=5;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=-1;c[t>>2]=1;c[u>>2]=-1;c[v>>2]=0;h[w>>3]=0.0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[C>>2]=5;c[D>>2]=0;if(!(c[l>>2]|0))La(148844,121592,99,121936);if(!(c[m>>2]|0))La(148874,121592,100,121936);if(c[(c[m>>2]|0)+8>>2]|0){F=+h[e>>3];c[E>>2]=~~(+h[e>>3]>=0.0?F+.5:F-.5);F=+h[e+8>>3];c[E+4>>2]=~~(+h[e+8>>3]>=0.0?F+.5:F-.5);F=+h[e+16>>3];c[E+8>>2]=~~(+h[e+16>>3]>=0.0?F+.5:F-.5);F=+h[e+16+8>>3];c[E+8+4>>2]=~~(+h[e+16+8>>3]>=0.0?F+.5:F-.5);e=c[l>>2]|0;f=c[o>>2]|0;o=c[p>>2]|0;p=c[q>>2]|0;q=c[r>>2]|0;r=c[s>>2]|0;s=c[t>>2]|0;t=c[u>>2]|0;u=c[v>>2]|0;F=+h[w>>3];w=c[x>>2]|0;x=c[y>>2]|0;y=c[z>>2]|0;z=c[A>>2]|0;A=c[B>>2]|0;B=c[C>>2]|0;C=c[D>>2]|0;D=c[(c[m>>2]|0)+8>>2]|0;c[k>>2]=c[n>>2];c[k+4>>2]=f;c[k+8>>2]=o;c[k+12>>2]=p;c[k+16>>2]=q;c[k+20>>2]=r;c[k+24>>2]=s;c[k+28>>2]=t;c[k+32>>2]=u;h[k+40>>3]=F;c[k+48>>2]=w;c[k+52>>2]=x;c[k+56>>2]=y;c[k+60>>2]=z;c[k+64>>2]=A;c[k+68>>2]=B;c[k+72>>2]=C;c[k+76>>2]=D;oF(e,121955,k);k=c[l>>2]|0;l=c[E+4>>2]|0;e=c[E>>2]|0;D=c[E+8+4>>2]|0;C=c[E+8>>2]|0;B=c[E+8+4>>2]|0;A=c[E+8>>2]|0;z=c[E+4>>2]|0;y=c[E>>2]|0;x=c[E+4>>2]|0;c[j>>2]=c[E>>2];c[j+4>>2]=l;c[j+8>>2]=e;c[j+12>>2]=D;c[j+16>>2]=C;c[j+20>>2]=B;c[j+24>>2]=A;c[j+28>>2]=z;c[j+32>>2]=y;c[j+36>>2]=x;oF(k,122013,j);i=g;return}else La(148877,121592,101,121936)}function qf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0;g=i;i=i+144|0;j=g+88|0;k=g+64|0;l=g+32|0;m=g+124|0;n=g+120|0;o=g+24|0;p=g+16|0;q=g+8|0;r=g;c[m>>2]=b;c[n>>2]=d;a[g+128>>0]=f;h[o>>3]=+h[e+16>>3]-+h[e>>3];h[p>>3]=+h[e+16+8>>3]-+h[e+8>>3];h[q>>3]=(+h[e+16>>3]+ +h[e>>3]-+h[o>>3])/2.0;h[r>>3]=(+h[e+16+8>>3]+ +h[e+8>>3]+ +h[p>>3])/2.0;if(!(c[m>>2]|0))La(148844,121592,55,122045);if(!(c[n>>2]|0))La(148874,121592,56,122045);if(!(c[(c[n>>2]|0)+8>>2]|0))La(148877,121592,57,122045);jF(c[m>>2]|0,122064)|0;jF(c[m>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0;n=c[m>>2]|0;if(c[(c[m>>2]|0)+360>>2]|0){s=+h[o>>3];t=+h[q>>3];u=-+h[r>>3];h[l>>3]=+h[p>>3];h[l+8>>3]=s;h[l+16>>3]=t;h[l+24>>3]=u;oF(n,122084,l);l=c[m>>2]|0;u=+h[q>>3];t=-+h[r>>3];c[k>>2]=c[(c[m>>2]|0)+360>>2];h[k+8>>3]=u;h[k+16>>3]=t;oF(l,122163,k);v=c[m>>2]|0;jF(v,122272)|0;i=g;return}else{t=+h[p>>3];u=+h[q>>3];s=-+h[r>>3];h[j>>3]=+h[o>>3];h[j+8>>3]=t;h[j+16>>3]=u;h[j+24>>3]=s;oF(n,122193,j);v=c[m>>2]|0;jF(v,122272)|0;i=g;return}}function rf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;vf(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;wf(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function sf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;xf(c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2]|0);c[e>>2]=$B(c[d>>2]|0)|0;while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}yf(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}zf(g);i=b;return}function tf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(kB(c[d>>2]|0)|0)Af(c[d>>2]|0);nL(c[d>>2]|0);i=b;return}function uf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[(c[(rC(c[d>>2]|0)|0)+8>>2]|0)+188>>2]|0;i=b;return a|0}function vf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175026,304,1)|0;xO(c[d>>2]|0);a=c[d>>2]|0;VO(a,c[(c[(qC(c[d>>2]|0)|0)+8>>2]|0)+116>>2]&1);c[(c[(c[d>>2]|0)+8>>2]|0)+172+4>>2]=0;a=bK(20)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+180+4>>2]=0;a=bK(20)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+196+4>>2]=0;a=bK(12)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+196>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+188+4>>2]=0;a=bK(12)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+188>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+204+4>>2]=0;a=bK(12)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+204>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+216>>2]=1;i=b;return}function wf(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=d;MC(c[f>>2]|0,175319,176,1)|0;yO(c[f>>2]|0)|0;d=eO(c[f>>2]|0,c[13851]|0,1,0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]=d;d=c[f>>2]|0;c[g>>2]=hO(c[((c[c[f>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0,c[13845]|0,178518)|0;d=c[f>>2]|0;c[h>>2]=hO(c[((c[c[f>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[13845]|0,178518)|0;b[(c[(c[f>>2]|0)+8>>2]|0)+154>>1]=1;b[(c[(c[f>>2]|0)+8>>2]|0)+168>>1]=1;if((a[c[g>>2]>>0]|0)!=0?(c[g>>2]|0)==(c[h>>2]|0):0){b[(c[(c[f>>2]|0)+8>>2]|0)+154>>1]=1e3;h=(c[(c[f>>2]|0)+8>>2]|0)+156|0;c[h>>2]=(c[h>>2]|0)*100}if(!(hk(c[f>>2]|0)|0)){j=c[f>>2]|0;k=c[13871]|0;l=eO(j,k,0,0)|0;m=l&255;n=c[f>>2]|0;o=n+8|0;p=c[o>>2]|0;q=p+152|0;a[q>>0]=m;r=c[f>>2]|0;s=c[13852]|0;t=eO(r,s,1,0)|0;u=t&65535;v=c[f>>2]|0;w=v+8|0;x=c[w>>2]|0;y=x+170|0;b[y>>1]=u;i=e;return}b[(c[(c[f>>2]|0)+8>>2]|0)+154>>1]=0;c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]=0;j=c[f>>2]|0;k=c[13871]|0;l=eO(j,k,0,0)|0;m=l&255;n=c[f>>2]|0;o=n+8|0;p=c[o>>2]|0;q=p+152|0;a[q>>0]=m;r=c[f>>2]|0;s=c[13852]|0;t=eO(r,s,1,0)|0;u=t&65535;v=c[f>>2]|0;w=v+8|0;x=c[w>>2]|0;y=x+170|0;b[y>>1]=u;i=e;return}function xf(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2];Jf(c[e>>2]|0);if((a[(c[(c[e>>2]|0)+8>>2]|0)+156>>0]|0)==1){if(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0);O4(c[(c[e>>2]|0)+8>>2]|0);O4(c[e>>2]|0)}c[e>>2]=c[f>>2]}i=d;return}function yf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+188>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+188>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+196>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+196>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+204>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+204>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+104>>2]|0);UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+108>>2]|0);if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)){e=c[d>>2]|0;NC(e,175026)|0;i=b;return}Bb[c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+4>>2]&127](c[d>>2]|0);e=c[d>>2]|0;NC(e,175026)|0;i=b;return}function zf(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[g>>2]=GD(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;zf(c[g>>2]|0);c[g>>2]=HD(c[g>>2]|0)|0}if(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0);do if(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0){c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;O4(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+12>>2]|0);c[f>>2]=(c[f>>2]|0)+1}g=c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0;if((b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]|0)==-1){O4(g+-64|0);break}else{O4(g);break}}while(0);f=c[e>>2]|0;if((f|0)==(rC(c[e>>2]|0)|0)){i=d;return}NC(c[e>>2]|0,175049)|0;i=d;return}function Af(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+64|0;d=b+56|0;e=b+52|0;f=b+48|0;g=b+44|0;h=b+40|0;j=b+8|0;k=b+4|0;l=b;c[d>>2]=a;c[k>>2]=JG(c[d>>2]|0,-1,8)|0;c[l>>2]=IG(c[d>>2]|0,0,j)|0;GG(c[d>>2]|0,2,8,j)|0;if((c[l>>2]|0)==0&(c[k>>2]|0)<0){Bf(c[d>>2]|0);i=b;return}if(c[l>>2]|0){if((c[k>>2]|0)<0)c[k>>2]=8}else c[j+16>>2]=2;c[j+8>>2]=c[k>>2];c[j+20>>2]=0;c[e>>2]=hG(c[d>>2]|0,g,0)|0;k=c[d>>2]|0;do if((c[g>>2]|0)==1)Bf(k);else{if(c[(c[(c[k+8>>2]|0)+8>>2]|0)+84>>2]|0){Bf(c[d>>2]|0);break}c[j+12>>2]=1;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+(c[h>>2]<<2)>>2];Cf(c[f>>2]|0,c[d>>2]|0);Bf(c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+1}Df(c[d>>2]|0);FG(c[g>>2]|0,c[e>>2]|0,c[d>>2]|0,j)|0;Ef(c[d>>2]|0)}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break;O4(c[(c[(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)+8>>2]|0)+8>>2]|0);pC(c[d>>2]|0,c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+1}O4(c[e>>2]|0);i=b;return}function Bf(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+64|0;d=b+40|0;f=b+52|0;g=b;h=b+48|0;j=b+44|0;c[f>>2]=a;a=c[f>>2]|0;c[j>>2]=eO(a,qA(c[f>>2]|0,0,122287,0)|0,-1,1)|0;QO(c[f>>2]|0,10);c[h>>2]=Yj(c[f>>2]|0,g)|0;Ff(c[f>>2]|0,c[f>>2]|0);rf(c[f>>2]|0);while(1){Ui(c[f>>2]|0,c[h>>2]|0);if((c[j>>2]|0)==1){k=3;break}if(c[g+32>>2]|0){$z(0,122293,d)|0;c[h>>2]=0;c[g+24>>2]=0}bh(c[f>>2]|0,(c[h>>2]|0)!=0&1);l=c[f>>2]|0;if((c[j>>2]|0)==2){k=7;break}fi(l,c[h>>2]|0);if((c[j>>2]|0)==3){k=9;break}a=g+28|0;c[a>>2]=(c[a>>2]|0)+-1;if(!(c[g+24>>2]|0)){k=12;break}if(!(c[g+28>>2]|0)){k=12;break}}if((k|0)==3){Gf(c[f>>2]|0,1);i=b;return}else if((k|0)==7){Gf(l,2);i=b;return}else if((k|0)==9){Gf(c[f>>2]|0,2);i=b;return}else if((k|0)==12){if((e[(c[(c[f>>2]|0)+8>>2]|0)+136>>1]|0)&16)Hf(c[f>>2]|0);Oj(c[f>>2]|0);Lf(c[f>>2]|0);if(!((kO(yA(c[f>>2]|0,122384)|0)|0)<<24>>24)){i=b;return}Ik(c[f>>2]|0);i=b;return}}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;MC(c[f>>2]|0,175049,280,1)|0;d=bK(96)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]=d;h[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>3]=+h[c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]>>3];h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3];c[(c[(c[f>>2]|0)+8>>2]|0)+144>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+144>>2];a[(c[(c[f>>2]|0)+8>>2]|0)+115>>0]=a[(c[(c[g>>2]|0)+8>>2]|0)+115>>0]|0;c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+248>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+252>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+252>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+244>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+244>>2];i=e;return}function Df(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=bK((kB(c[d>>2]|0)|0)<<1<<3)|0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]=c[f>>2];h[c[f>>2]>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]/72.0;h[(c[f>>2]|0)+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]/72.0;c[f>>2]=(c[f>>2]|0)+16;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function Ef(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2];c[g>>2]=c[f>>2];c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]=0;h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]=+h[c[g>>2]>>3]*72.0;h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[g>>2]|0)+8>>3]*72.0;c[g>>2]=(c[g>>2]|0)+16;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}O4(c[f>>2]|0);i=b;return}function Ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((b|0)!=(rC(c[e>>2]|0)|0))MC(c[e>>2]|0,175049,280,1)|0;if((c[e>>2]|0)==(c[f>>2]|0)){b=c[f>>2]|0;c[(c[(rC(c[e>>2]|0)|0)+8>>2]|0)+188>>2]=b}c[g>>2]=GD(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;Ff(c[g>>2]|0,c[f>>2]|0);c[g>>2]=HD(c[g>>2]|0)|0}i=d;return}function Gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+1056|0;e=d+8|0;f=d;g=d+28|0;h=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+32|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=qA(c[g>>2]|0,1,124202,178518)|0;c[k>>2]=qA(c[g>>2]|0,1,122427,178518)|0;c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;if((c[h>>2]|0)>=1){c[f>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2];k3(m,175023,f)|0;BA(c[l>>2]|0,c[j>>2]|0,m)|0}if((c[h>>2]|0)>=2){c[e>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2];k3(m,175023,e)|0;BA(c[l>>2]|0,c[k>>2]|0,m)|0}c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}i=d;return}function Hf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=FD(c[d>>2]|0,123706,0)|0;if(!(c[g>>2]|0)){i=b;return}c[e>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=aC(c[g>>2]|0,c[e>>2]|0)|0;Rg(c[d>>2]|0,c[e>>2]|0);If(c[d>>2]|0,c[e>>2]|0);yf(c[e>>2]|0);hC(c[d>>2]|0,c[e>>2]|0)|0;c[e>>2]=c[f>>2]}JD(c[d>>2]|0,c[g>>2]|0)|0;i=b;return}function If(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[g>>2]=c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2];b=(c[g>>2]|0)==(c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+1;if(b){k=4;break}}if((k|0)==4){while(1){k=0;if((c[h>>2]|0)>=(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+((c[h>>2]|0)-1<<2)>>2]=c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2];c[h>>2]=(c[h>>2]|0)+1;k=4}k=(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)|0;c[k>>2]=(c[k>>2]|0)+-1}if((c[g>>2]|0)==(c[f>>2]|0)){i=d;return}else La(122393,122400,243,122410)}function Jf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=(c[(c[(c[d>>2]|0)+8>>2]|0)+172+4>>2]|0)-1;while(1){if((c[f>>2]|0)<0)break;c[e>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0)+(c[f>>2]<<2)>>2];Kg(c[e>>2]|0);O4(c[(c[e>>2]|0)+8>>2]|0);O4(c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1}c[f>>2]=(c[(c[(c[d>>2]|0)+8>>2]|0)+180+4>>2]|0)-1;while(1){if((c[f>>2]|0)<0)break;c[e>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)+(c[f>>2]<<2)>>2];Kg(c[e>>2]|0);O4(c[(c[e>>2]|0)+8>>2]|0);O4(c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1}i=b;return}function Kf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+16|0;f=e+4|0;g=e;j=d[a+28>>0]|0;if(!(d[b+28>>0]|0)){c[f>>2]=(j|0)!=0?1:0;k=c[f>>2]|0;i=e;return k|0}if(!j){c[f>>2]=-1;k=c[f>>2]|0;i=e;return k|0}c[g>>2]=~~(+h[a>>3]-+h[b>>3]);if(!(c[g>>2]|0))c[g>>2]=~~(+h[a+8>>3]-+h[b+8>>3]);c[f>>2]=c[g>>2];k=c[f>>2]|0;i=e;return k|0}function Lf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Mf(c[d>>2]|0,1);i=b;return}function Mf(f,g){f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;j=i;i=i+736|0;k=j+408|0;l=j+368|0;m=j+360|0;n=j+716|0;o=j+712|0;p=j+708|0;q=j+704|0;r=j+700|0;s=j+696|0;t=j+692|0;u=j+688|0;v=j+684|0;w=j+680|0;x=j+616|0;y=j+552|0;z=j+544|0;A=j+540|0;B=j+536|0;C=j+532|0;D=j+528|0;E=j+524|0;F=j+520|0;G=j+516|0;H=j+512|0;I=j+492|0;J=j+488|0;K=j+484|0;L=j;M=j+720|0;N=j+480|0;O=j+476|0;P=j+472|0;Q=j+468|0;R=j+464|0;S=j+460|0;T=j+456|0;U=j+452|0;V=j+448|0;c[n>>2]=f;c[o>>2]=g;c[J>>2]=e[(c[(c[n>>2]|0)+8>>2]|0)+136>>1]&14;c[x+8>>2]=j+184;c[y+8>>2]=j+8;if(!(c[J>>2]|0)){i=j;return}a:do if((c[J>>2]|0)!=4){g=c[n>>2]|0;if((c[J>>2]|0)==8){Nf(g);f=c[n>>2]|0;if(d[(c[(c[n>>2]|0)+8>>2]|0)+113>>0]&1){Of(f);yP(c[n>>2]|0,1);break}else{yP(f,0);break}}zk(g);if(PL()|0){i=j;return}c[H>>2]=bK(96)|0;c[I+8>>2]=(c[(c[(c[n>>2]|0)+8>>2]|0)+248>>2]|0)/4|0;c[I+12>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+248>>2];c[G>>2]=bK(512)|0;c[I+4>>2]=0;c[I>>2]=0;c[s>>2]=0;c[t>>2]=0;c[p>>2]=b[(c[(c[n>>2]|0)+8>>2]|0)+236>>1];b:while(1){if((c[p>>2]|0)>(b[(c[(c[n>>2]|0)+8>>2]|0)+238>>1]|0))break;c[s>>2]=(c[s>>2]|0)+(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)>>2]|0);g=c[c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)+4>>2]>>2]|0;c[w>>2]=g;if(g){if(+(c[I>>2]|0)<+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[w>>2]|0)+8>>2]|0)+88>>3])W=+(c[I>>2]|0);else W=+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[w>>2]|0)+8>>2]|0)+88>>3];c[I>>2]=~~W}if((c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)>>2]|0)!=0?(g=c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)+4>>2]|0)+((c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)>>2]|0)-1<<2)>>2]|0,c[w>>2]=g,(g|0)!=0):0){if(+(c[I+4>>2]|0)>+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3])X=+(c[I+4>>2]|0);else X=+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3];c[I+4>>2]=~~X}c[I>>2]=(c[I>>2]|0)-16;g=I+4|0;c[g>>2]=(c[g>>2]|0)+16;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)>>2]|0))break;c[w>>2]=c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[p>>2]<<6)+4>>2]|0)+(c[q>>2]<<2)>>2];if(c[(c[(c[w>>2]|0)+8>>2]|0)+112>>2]|0){c[K>>2]=c[(c[(c[w>>2]|0)+8>>2]|0)+112>>2];if(!(c[(c[(c[K>>2]|0)+8>>2]|0)+96>>2]|0)){Y=33;break b}g=(c[(c[(c[K>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;f=(c[(c[w>>2]|0)+8>>2]|0)+16|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];a[(c[(c[(c[K>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1}if(!((a[(c[(c[w>>2]|0)+8>>2]|0)+156>>0]|0)!=0?((Fb[c[50164>>2]&63](c[w>>2]|0)|0)&255|0)==0:0))Y=37;c:do if((Y|0)==37){Y=0;c[r>>2]=0;while(1){f=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+180>>2]|0)+(c[r>>2]<<2)>>2]|0;c[z>>2]=f;if(!f)break;if(((a[(c[(c[z>>2]|0)+8>>2]|0)+112>>0]|0)!=4?(a[(c[(c[z>>2]|0)+8>>2]|0)+112>>0]|0)!=6:0)?(Pf(c[z>>2]|0,1,16,64),f=c[z>>2]|0,g=c[t>>2]|0,c[t>>2]=g+1,c[(c[G>>2]|0)+(g<<2)>>2]=f,((c[t>>2]|0)%128|0|0)==0):0){if(c[G>>2]|0)Z=eK(c[G>>2]|0,(c[t>>2]|0)+128<<2)|0;else Z=cK((c[t>>2]|0)+128<<2)|0;c[G>>2]=Z}c[r>>2]=(c[r>>2]|0)+1}d:do if(c[(c[(c[w>>2]|0)+8>>2]|0)+188>>2]|0){c[r>>2]=0;while(1){f=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+188>>2]|0)+(c[r>>2]<<2)>>2]|0;c[z>>2]=f;if(!f)break d;Pf(c[z>>2]|0,2,0,128);f=c[z>>2]|0;g=c[t>>2]|0;c[t>>2]=g+1;c[(c[G>>2]|0)+(g<<2)>>2]=f;if(!((c[t>>2]|0)%128|0)){if(c[G>>2]|0)_=eK(c[G>>2]|0,(c[t>>2]|0)+128<<2)|0;else _=cK((c[t>>2]|0)+128<<2)|0;c[G>>2]=_}c[r>>2]=(c[r>>2]|0)+1}}while(0);if(c[(c[(c[w>>2]|0)+8>>2]|0)+204>>2]|0){if(!(a[(c[(c[w>>2]|0)+8>>2]|0)+156>>0]|0)){h[L>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3];h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+240>>3];h[(c[(c[w>>2]|0)+8>>2]|0)+240>>3]=+h[L>>3]}c[r>>2]=0;while(1){f=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+204>>2]|0)+(c[r>>2]<<2)>>2]|0;c[z>>2]=f;if(!f)break c;Pf(c[z>>2]|0,0,0,128);f=c[z>>2]|0;g=c[t>>2]|0;c[t>>2]=g+1;c[(c[G>>2]|0)+(g<<2)>>2]=f;if(!((c[t>>2]|0)%128|0)){if(c[G>>2]|0)$=eK(c[G>>2]|0,(c[t>>2]|0)+128<<2)|0;else $=cK((c[t>>2]|0)+128<<2)|0;c[G>>2]=$}c[r>>2]=(c[r>>2]|0)+1}}}while(0);c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}if((Y|0)==33)La(122501,122514,319,122527);w3(c[G>>2]|0,c[t>>2]|0,4,58);f=bK((c[s>>2]|0)+360<<5)|0;c[(c[H>>2]|0)+84>>2]=f;c[I+16>>2]=bK(c[p>>2]<<5)|0;e:do if((c[J>>2]|0)==2){c[w>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[w>>2]|0))break e;if((a[(c[(c[w>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[w>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0)Rf(c[w>>2]|0);c[w>>2]=c[(c[(c[w>>2]|0)+8>>2]|0)+164>>2]}}while(0);c[p>>2]=0;f:while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break;c[u>>2]=c[p>>2];f=c[p>>2]|0;c[p>>2]=f+1;g=c[(c[G>>2]|0)+(f<<2)>>2]|0;c[A>>2]=g;c[E>>2]=Sf(g)|0;if((d[(c[(c[A>>2]|0)+8>>2]|0)+16+28>>0]|0)==0?(d[(c[(c[A>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0){a[M>>0]=0;c[C>>2]=c[E>>2]}else{a[M>>0]=1;c[C>>2]=c[A>>2]}if(c[(c[(c[C>>2]|0)+8>>2]|0)+164>>2]&32){c[N>>2]=x;c[O>>2]=c[(c[N>>2]|0)+8>>2];Z4(c[O>>2]|0,c[(c[C>>2]|0)+8>>2]|0,176)|0;g=c[N>>2]|0;f=c[C>>2]|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[g+16>>2]=c[f+16>>2];c[g+20>>2]=c[f+20>>2];c[g+24>>2]=c[f+24>>2];c[g+28>>2]=c[f+28>>2];c[(c[N>>2]|0)+8>>2]=c[O>>2];f=c[C>>2]|0;g=c[N>>2]|0;c[((c[c[N>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2];f=c[C>>2]|0;g=c[N>>2]|0;c[((c[c[N>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==3?f:f+32|0)+28>>2];aa=(c[(c[N>>2]|0)+8>>2]|0)+16|0;ba=(c[(c[C>>2]|0)+8>>2]|0)+56|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));aa=(c[(c[N>>2]|0)+8>>2]|0)+56|0;ba=(c[(c[C>>2]|0)+8>>2]|0)+16|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));a[(c[(c[N>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[N>>2]|0)+8>>2]|0)+116>>2]=c[C>>2];c[C>>2]=x}c[v>>2]=1;while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break;f=c[E>>2]|0;g=c[(c[G>>2]|0)+(c[p>>2]<<2)>>2]|0;c[B>>2]=g;da=Sf(g)|0;c[F>>2]=da;if((f|0)!=(da|0))break;if(!(a[(c[(c[A>>2]|0)+8>>2]|0)+113>>0]|0)){if((d[(c[(c[B>>2]|0)+8>>2]|0)+16+28>>0]|0)==0?(d[(c[(c[B>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0){if(a[M>>0]|0)break;c[D>>2]=c[F>>2]}else{if(!(a[M>>0]|0))break;c[D>>2]=c[B>>2]}if(c[(c[(c[D>>2]|0)+8>>2]|0)+164>>2]&32){c[P>>2]=y;c[Q>>2]=c[(c[P>>2]|0)+8>>2];Z4(c[Q>>2]|0,c[(c[D>>2]|0)+8>>2]|0,176)|0;da=c[P>>2]|0;f=c[D>>2]|0;c[da>>2]=c[f>>2];c[da+4>>2]=c[f+4>>2];c[da+8>>2]=c[f+8>>2];c[da+12>>2]=c[f+12>>2];c[da+16>>2]=c[f+16>>2];c[da+20>>2]=c[f+20>>2];c[da+24>>2]=c[f+24>>2];c[da+28>>2]=c[f+28>>2];c[(c[P>>2]|0)+8>>2]=c[Q>>2];f=c[D>>2]|0;da=c[P>>2]|0;c[((c[c[P>>2]>>2]&3|0)==3?da:da+32|0)+28>>2]=c[((c[c[D>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2];f=c[D>>2]|0;da=c[P>>2]|0;c[((c[c[P>>2]>>2]&3|0)==2?da:da+-32|0)+28>>2]=c[((c[c[D>>2]>>2]&3|0)==3?f:f+32|0)+28>>2];aa=(c[(c[P>>2]|0)+8>>2]|0)+16|0;ba=(c[(c[D>>2]|0)+8>>2]|0)+56|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));aa=(c[(c[P>>2]|0)+8>>2]|0)+56|0;ba=(c[(c[D>>2]|0)+8>>2]|0)+16|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));a[(c[(c[P>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[P>>2]|0)+8>>2]|0)+116>>2]=c[D>>2];c[D>>2]=y}f=(c[(c[D>>2]|0)+8>>2]|0)+16|0;aa=l;ba=(c[(c[C>>2]|0)+8>>2]|0)+16|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));aa=k;ba=f;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));if(Kf(l,k)|0)break;f=(c[(c[D>>2]|0)+8>>2]|0)+56|0;aa=l;ba=(c[(c[C>>2]|0)+8>>2]|0)+56|0;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));aa=k;ba=f;ca=aa+40|0;do{c[aa>>2]=c[ba>>2];aa=aa+4|0;ba=ba+4|0}while((aa|0)<(ca|0));if(Kf(l,k)|0)break;if((c[(c[(c[A>>2]|0)+8>>2]|0)+164>>2]&15|0)==2?(c[(c[(c[A>>2]|0)+8>>2]|0)+96>>2]|0)!=(c[(c[(c[B>>2]|0)+8>>2]|0)+96>>2]|0):0)break;if(c[(c[(c[(c[G>>2]|0)+(c[p>>2]<<2)>>2]|0)+8>>2]|0)+164>>2]&64)break}c[v>>2]=(c[v>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1}f=c[A>>2]|0;da=c[A>>2]|0;g=c[A>>2]|0;ea=c[((c[c[A>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0;if((c[((c[c[A>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)!=(c[((c[c[A>>2]>>2]&3|0)==2?da:da+-32|0)+28>>2]|0)){da=c[A>>2]|0;f=c[n>>2]|0;g=c[H>>2]|0;fa=c[G>>2]|0;ga=c[u>>2]|0;ha=c[v>>2]|0;ia=c[J>>2]|0;if((c[(c[ea+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[A>>2]>>2]&3|0)==2?da:da+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){Tf(f,I,g,fa,ga,ha,ia);continue}else{Uf(f,I,g,fa,ga,ha,ia);continue}}c[w>>2]=ea;c[T>>2]=c[(c[(c[w>>2]|0)+8>>2]|0)+232>>2];ea=c[T>>2]|0;do if((c[T>>2]|0)==(b[(c[(c[n>>2]|0)+8>>2]|0)+238>>1]|0))if((ea|0)>0){c[S>>2]=~~(+h[(c[(c[c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+((c[T>>2]|0)-1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]);break}else{c[S>>2]=~~+h[(c[(c[w>>2]|0)+8>>2]|0)+80>>3];break}else if((ea|0)==(b[(c[(c[n>>2]|0)+8>>2]|0)+236>>1]|0)){c[S>>2]=~~(+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+((c[T>>2]|0)+1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]);break}else{c[U>>2]=~~(+h[(c[(c[c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+((c[T>>2]|0)-1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]);c[V>>2]=~~(+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+((c[T>>2]|0)+1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]);c[S>>2]=(c[U>>2]|0)<(c[V>>2]|0)?c[U>>2]|0:c[V>>2]|0;break}while(0);oN(c[H>>2]|0,c[G>>2]|0,c[u>>2]|0,c[v>>2]|0,+(c[I+12>>2]|0),+((c[S>>2]|0)/2|0|0),50160);c[R>>2]=0;while(1){if((c[R>>2]|0)>=(c[v>>2]|0))continue f;c[z>>2]=c[(c[G>>2]|0)+((c[u>>2]|0)+(c[R>>2]|0)<<2)>>2];if(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)AO(c[n>>2]|0,c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0);c[R>>2]=(c[R>>2]|0)+1}}c[w>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[w>>2]|0))break;if((a[(c[(c[w>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[w>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0){Rf(c[w>>2]|0);AO(c[n>>2]|0,c[(c[(c[w>>2]|0)+8>>2]|0)+104>>2]|0)}c[w>>2]=c[(c[(c[w>>2]|0)+8>>2]|0)+164>>2]}if(c[o>>2]|0)Vf(c[n>>2]|0)}else{Nf(c[n>>2]|0);if(d[(c[(c[n>>2]|0)+8>>2]|0)+113>>0]&1)$z(0,122433,m)|0;c[w>>2]=$B(c[n>>2]|0)|0;while(1){if(!(c[w>>2]|0))break a;c[z>>2]=OA(c[n>>2]|0,c[w>>2]|0)|0;while(1){ja=c[n>>2]|0;if(!(c[z>>2]|0))break;TL(ja,c[z>>2]|0,c[J>>2]|0,50160);c[z>>2]=QA(c[n>>2]|0,c[z>>2]|0)|0}c[w>>2]=aC(ja,c[w>>2]|0)|0}}while(0);g:do if((c[13881]|0)!=0|(c[13882]|0)!=0?(c[13887]|0)!=0|(c[13886]|0)!=0:0){c[w>>2]=$B(c[n>>2]|0)|0;while(1){if(!(c[w>>2]|0))break g;h:do if(c[13881]|0){c[z>>2]=RA(c[n>>2]|0,c[w>>2]|0)|0;while(1){if(!(c[z>>2]|0))break h;ja=c[z>>2]|0;if(c[(c[((c[c[z>>2]>>2]&3|0)==2?ja:ja+-32|0)+8>>2]|0)+100>>2]|0){ja=c[z>>2]|0;qN((c[c[z>>2]>>2]&3|0)==2?ja:ja+-32|0,1)|0;ja=c[z>>2]|0;AO(c[n>>2]|0,c[(c[((c[c[z>>2]>>2]&3|0)==2?ja:ja+-32|0)+8>>2]|0)+100>>2]|0)}c[z>>2]=SA(c[n>>2]|0,c[z>>2]|0)|0}}while(0);i:do if(c[13882]|0){c[z>>2]=OA(c[n>>2]|0,c[w>>2]|0)|0;while(1){if(!(c[z>>2]|0))break i;if((c[(c[(c[z>>2]|0)+8>>2]|0)+104>>2]|0)!=0?(qN(c[z>>2]|0,0)|0)!=0:0)AO(c[n>>2]|0,c[(c[(c[z>>2]|0)+8>>2]|0)+104>>2]|0);c[z>>2]=QA(c[n>>2]|0,c[z>>2]|0)|0}}while(0);c[w>>2]=aC(c[n>>2]|0,c[w>>2]|0)|0}}while(0);if((c[J>>2]|0)!=8&(c[J>>2]|0)!=4){O4(c[G>>2]|0);O4(c[(c[H>>2]|0)+84>>2]|0);O4(c[H>>2]|0);O4(c[I+16>>2]|0);QL()}c[13800]=1;c[13801]=1;i=j;return}function Nf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;if(c[(c[(c[e>>2]|0)+8>>2]|0)+204>>2]|0){h[f>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+96>>3];h[(c[(c[e>>2]|0)+8>>2]|0)+96>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+240>>3];h[(c[(c[e>>2]|0)+8>>2]|0)+240>>3]=+h[f>>3]}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function Of(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[f>>2]|0)){j=13;break}if((a[(c[(c[f>>2]|0)+8>>2]|0)+156>>0]|0)==1){b=c[(c[f>>2]|0)+8>>2]|0;if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)){k=c[b+104>>2]|0;c[g>>2]=k;if(k)Rf(c[f>>2]|0)}else{c[h>>2]=c[b+112>>2];b=c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2]|0;c[g>>2]=b;if(!b){j=6;break}b=(c[g>>2]|0)+56|0;k=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];a[(c[g>>2]|0)+81>>0]=1}if(c[g>>2]|0)AO(c[e>>2]|0,c[g>>2]|0)}c[f>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]}if((j|0)==6)La(122578,122514,234,122597);else if((j|0)==13){i=d;return}}function Pf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;do if(c[j>>2]|0)c[m>>2]=c[j>>2];else{f=c[h>>2]|0;e=c[h>>2]|0;b=c[h>>2]|0;if((c[((c[c[h>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)!=(c[((c[c[h>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)){e=c[h>>2]|0;f=c[h>>2]|0;if((c[(c[(c[((c[b>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){c[m>>2]=2;break}else{c[m>>2]=1;break}}if((d[(c[b+8>>2]|0)+16+28>>0]|0|0)==0?(d[(c[(c[h>>2]|0)+8>>2]|0)+56+28>>0]|0|0)==0:0){c[m>>2]=8;break}c[m>>2]=4}while(0);do if(!(c[k>>2]|0)){if((c[m>>2]|0)==1){j=c[h>>2]|0;b=c[h>>2]|0;c[n>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)<(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)?16:32;break}if((c[m>>2]|0)==2){b=c[h>>2]|0;j=c[h>>2]|0;c[n>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)?16:32;break}else{c[n>>2]=16;break}}else c[n>>2]=c[k>>2];while(0);c[(c[(c[h>>2]|0)+8>>2]|0)+164>>2]=c[m>>2]|c[n>>2]|c[l>>2];i=g;return}function Qf(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;f=i;i=i+656|0;g=f+408|0;j=f+368|0;k=f+648|0;l=f+644|0;m=f+640|0;n=f+576|0;o=f+512|0;p=f+504|0;q=f+500|0;r=f+496|0;s=f+492|0;t=f+488|0;u=f+484|0;v=f+480|0;w=f+476|0;x=f+472|0;y=f+468|0;z=f+464|0;A=f+8|0;B=f;C=f+460|0;D=f+456|0;E=f+452|0;F=f+448|0;c[l>>2]=b;c[m>>2]=e;c[n+8>>2]=f+192;c[o+8>>2]=f+16;c[p>>2]=c[c[l>>2]>>2];c[q>>2]=c[c[m>>2]>>2];c[v>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+164>>2]&15;c[w>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+164>>2]&15;if((c[v>>2]|0)!=(c[w>>2]|0)){c[k>>2]=(c[w>>2]|0)-(c[v>>2]|0);G=c[k>>2]|0;i=f;return G|0}c[t>>2]=Sf(c[p>>2]|0)|0;c[u>>2]=Sf(c[q>>2]|0)|0;m=c[t>>2]|0;l=c[t>>2]|0;h[A>>3]=+((c[(c[(c[((c[c[t>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[t>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0);l=c[u>>2]|0;m=c[u>>2]|0;h[B>>3]=+((c[(c[(c[((c[c[u>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[u>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0);m=~~+h[A>>3];c[x>>2]=(~~+h[A>>3]|0)>=0?m:0-m|0;m=~~+h[B>>3];c[y>>2]=(~~+h[B>>3]|0)>=0?m:0-m|0;if((c[x>>2]|0)!=(c[y>>2]|0)){c[k>>2]=(c[x>>2]|0)-(c[y>>2]|0);G=c[k>>2]|0;i=f;return G|0}m=c[t>>2]|0;l=c[t>>2]|0;h[A>>3]=+h[(c[(c[((c[c[t>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[((c[c[t>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+16>>3];l=c[u>>2]|0;m=c[u>>2]|0;h[B>>3]=+h[(c[(c[((c[c[u>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[((c[c[u>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+16>>3];m=~~+h[A>>3];c[x>>2]=(~~+h[A>>3]|0)>=0?m:0-m|0;m=~~+h[B>>3];c[y>>2]=(~~+h[B>>3]|0)>=0?m:0-m|0;if((c[x>>2]|0)!=(c[y>>2]|0)){c[k>>2]=(c[x>>2]|0)-(c[y>>2]|0);G=c[k>>2]|0;i=f;return G|0}if(((c[c[t>>2]>>2]|0)>>>4|0)!=((c[c[u>>2]>>2]|0)>>>4|0)){c[k>>2]=((c[c[t>>2]>>2]|0)>>>4)-((c[c[u>>2]>>2]|0)>>>4);G=c[k>>2]|0;i=f;return G|0}if((d[(c[(c[p>>2]|0)+8>>2]|0)+16+28>>0]|0|0)==0?(d[(c[(c[p>>2]|0)+8>>2]|0)+56+28>>0]|0|0)==0:0)H=c[t>>2]|0;else H=c[p>>2]|0;c[r>>2]=H;if(c[(c[(c[r>>2]|0)+8>>2]|0)+164>>2]&32){c[C>>2]=n;c[D>>2]=c[(c[C>>2]|0)+8>>2];Z4(c[D>>2]|0,c[(c[r>>2]|0)+8>>2]|0,176)|0;H=c[C>>2]|0;t=c[r>>2]|0;c[H>>2]=c[t>>2];c[H+4>>2]=c[t+4>>2];c[H+8>>2]=c[t+8>>2];c[H+12>>2]=c[t+12>>2];c[H+16>>2]=c[t+16>>2];c[H+20>>2]=c[t+20>>2];c[H+24>>2]=c[t+24>>2];c[H+28>>2]=c[t+28>>2];c[(c[C>>2]|0)+8>>2]=c[D>>2];D=c[r>>2]|0;t=c[C>>2]|0;c[((c[c[C>>2]>>2]&3|0)==3?t:t+32|0)+28>>2]=c[((c[c[r>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2];D=c[r>>2]|0;t=c[C>>2]|0;c[((c[c[C>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]=c[((c[c[r>>2]>>2]&3|0)==3?D:D+32|0)+28>>2];I=(c[(c[C>>2]|0)+8>>2]|0)+16|0;J=(c[(c[r>>2]|0)+8>>2]|0)+56|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));I=(c[(c[C>>2]|0)+8>>2]|0)+56|0;J=(c[(c[r>>2]|0)+8>>2]|0)+16|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));a[(c[(c[C>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[C>>2]|0)+8>>2]|0)+116>>2]=c[r>>2];c[r>>2]=n}if((d[(c[(c[q>>2]|0)+8>>2]|0)+16+28>>0]|0|0)==0?(d[(c[(c[q>>2]|0)+8>>2]|0)+56+28>>0]|0|0)==0:0)L=c[u>>2]|0;else L=c[q>>2]|0;c[s>>2]=L;if(c[(c[(c[s>>2]|0)+8>>2]|0)+164>>2]&32){c[E>>2]=o;c[F>>2]=c[(c[E>>2]|0)+8>>2];Z4(c[F>>2]|0,c[(c[s>>2]|0)+8>>2]|0,176)|0;L=c[E>>2]|0;u=c[s>>2]|0;c[L>>2]=c[u>>2];c[L+4>>2]=c[u+4>>2];c[L+8>>2]=c[u+8>>2];c[L+12>>2]=c[u+12>>2];c[L+16>>2]=c[u+16>>2];c[L+20>>2]=c[u+20>>2];c[L+24>>2]=c[u+24>>2];c[L+28>>2]=c[u+28>>2];c[(c[E>>2]|0)+8>>2]=c[F>>2];F=c[s>>2]|0;u=c[E>>2]|0;c[((c[c[E>>2]>>2]&3|0)==3?u:u+32|0)+28>>2]=c[((c[c[s>>2]>>2]&3|0)==2?F:F+-32|0)+28>>2];F=c[s>>2]|0;u=c[E>>2]|0;c[((c[c[E>>2]>>2]&3|0)==2?u:u+-32|0)+28>>2]=c[((c[c[s>>2]>>2]&3|0)==3?F:F+32|0)+28>>2];I=(c[(c[E>>2]|0)+8>>2]|0)+16|0;J=(c[(c[s>>2]|0)+8>>2]|0)+56|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));I=(c[(c[E>>2]|0)+8>>2]|0)+56|0;J=(c[(c[s>>2]|0)+8>>2]|0)+16|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));a[(c[(c[E>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[E>>2]|0)+8>>2]|0)+116>>2]=c[s>>2];c[s>>2]=o}o=(c[(c[s>>2]|0)+8>>2]|0)+16|0;I=j;J=(c[(c[r>>2]|0)+8>>2]|0)+16|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));I=g;J=o;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));o=Kf(j,g)|0;c[z>>2]=o;if(o){c[k>>2]=c[z>>2];G=c[k>>2]|0;i=f;return G|0}o=(c[(c[s>>2]|0)+8>>2]|0)+56|0;I=j;J=(c[(c[r>>2]|0)+8>>2]|0)+56|0;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));I=g;J=o;K=I+40|0;do{c[I>>2]=c[J>>2];I=I+4|0;J=J+4|0}while((I|0)<(K|0));J=Kf(j,g)|0;c[z>>2]=J;if(J){c[k>>2]=c[z>>2];G=c[k>>2]|0;i=f;return G|0}c[v>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+164>>2]&192;c[w>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+164>>2]&192;z=c[v>>2]|0;if((c[v>>2]|0)!=(c[w>>2]|0)){c[k>>2]=z-(c[w>>2]|0);G=c[k>>2]|0;i=f;return G|0}if((z|0)==2?(c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)!=(c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]|0):0){c[k>>2]=((c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)-(c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]|0)|0)/88|0;G=c[k>>2]|0;i=f;return G|0}c[k>>2]=((c[c[p>>2]>>2]|0)>>>4)-((c[c[q>>2]>>2]|0)>>>4);G=c[k>>2]|0;i=f;return G|0}function Rf(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+28|0;f=d+8|0;g=d;j=d+24|0;c[e>>2]=b;if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+172+4>>2]|0)){i=d;return}c[j>>2]=c[c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]>>2];while(1){k=c[(c[j>>2]|0)+8>>2]|0;if(!(a[(c[(c[j>>2]|0)+8>>2]|0)+112>>0]|0))break;c[j>>2]=c[k+116>>2]}b=(c[k+96>>2]|0)+24|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=(c[(c[(qC(c[e>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;h[g>>3]=b?+h[f+8>>3]:+h[f>>3];h[(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]+ +h[g>>3]/2.0;h[(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3];a[(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;i=d;return}function Sf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];while(1){if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0))break;c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]}while(1){f=c[e>>2]|0;if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+116>>2]|0))break;c[e>>2]=c[(c[f+8>>2]|0)+116>>2]}i=b;return f|0}function Tf(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;m=i;i=i+1824|0;n=m+1624|0;o=m+1808|0;p=m+1804|0;q=m+1800|0;r=m+1796|0;s=m+1792|0;t=m+1788|0;u=m+1784|0;v=m+1780|0;w=m+1776|0;x=m+1712|0;y=m+1704|0;z=m+1700|0;A=m+1696|0;B=m+1692|0;C=m+1688|0;D=m+1440|0;E=m+1432|0;F=m+1424|0;G=m+1684|0;H=m+1680|0;I=m+1676|0;J=m+1672|0;K=m+728|0;L=m+32|0;M=m+1668|0;N=m+1664|0;O=m+1660|0;P=m+1656|0;Q=m;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=k;c[u>>2]=l;c[x+8>>2]=m+1448;c[y>>2]=c[(c[r>>2]|0)+(c[s>>2]<<2)>>2];c[C>>2]=a[(c[(c[y>>2]|0)+8>>2]|0)+113>>0];if(c[(c[(c[y>>2]|0)+8>>2]|0)+164>>2]&32){c[M>>2]=x;c[N>>2]=c[(c[M>>2]|0)+8>>2];Z4(c[N>>2]|0,c[(c[y>>2]|0)+8>>2]|0,176)|0;l=c[M>>2]|0;k=c[y>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];c[l+16>>2]=c[k+16>>2];c[l+20>>2]=c[k+20>>2];c[l+24>>2]=c[k+24>>2];c[l+28>>2]=c[k+28>>2];c[(c[M>>2]|0)+8>>2]=c[N>>2];N=c[y>>2]|0;k=c[M>>2]|0;c[((c[c[M>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]=c[((c[c[y>>2]>>2]&3|0)==2?N:N+-32|0)+28>>2];N=c[y>>2]|0;k=c[M>>2]|0;c[((c[c[M>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]=c[((c[c[y>>2]>>2]&3|0)==3?N:N+32|0)+28>>2];N=(c[(c[M>>2]|0)+8>>2]|0)+16|0;k=(c[(c[y>>2]|0)+8>>2]|0)+56|0;l=N+40|0;do{c[N>>2]=c[k>>2];N=N+4|0;k=k+4|0}while((N|0)<(l|0));N=(c[(c[M>>2]|0)+8>>2]|0)+56|0;k=(c[(c[y>>2]|0)+8>>2]|0)+16|0;l=N+40|0;do{c[N>>2]=c[k>>2];N=N+4|0;k=k+4|0}while((N|0)<(l|0));a[(c[(c[M>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[M>>2]|0)+8>>2]|0)+116>>2]=c[y>>2];c[y>>2]=x}c[A>>2]=1;while(1){if((c[A>>2]|0)>=(c[t>>2]|0))break;if(a[(c[(c[(c[r>>2]|0)+((c[s>>2]|0)+(c[A>>2]|0)<<2)>>2]|0)+8>>2]|0)+113>>0]|0){R=6;break}c[A>>2]=(c[A>>2]|0)+1}if((R|0)==6)c[C>>2]=1;if(c[C>>2]|0){qg(c[o>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[y>>2]|0,c[u>>2]|0);i=m;return}if(c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0){rg(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[y>>2]|0,c[u>>2]|0);i=m;return}C=c[y>>2]|0;if((c[u>>2]|0)==2){x=c[y>>2]|0;M=c[y>>2]|0;sg(c[((c[C>>2]&3|0)==3?x:x+32|0)+28>>2]|0,c[((c[c[y>>2]>>2]&3|0)==2?M:M+-32|0)+28>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0);i=m;return}c[G>>2]=d[(c[C+8>>2]|0)+16+33>>0];c[H>>2]=d[(c[(c[y>>2]|0)+8>>2]|0)+56+33>>0];if(!((c[G>>2]|0)==1&(c[H>>2]|0)!=4)?!((c[H>>2]|0)==1&(c[G>>2]|0)!=4):0){G=c[y>>2]|0;c[v>>2]=c[((c[c[y>>2]>>2]&3|0)==3?G:G+32|0)+28>>2];G=c[y>>2]|0;c[w>>2]=c[((c[c[y>>2]>>2]&3|0)==2?G:G+-32|0)+28>>2];c[B>>2]=c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2];G=c[(c[o>>2]|0)+8>>2]|0;if((c[B>>2]|0)>0){H=c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0;C=c[B>>2]|0;if(d[G+113>>0]&1)c[O>>2]=H+(C-2<<6);else c[O>>2]=H+(C-1<<6);h[F>>3]=+h[(c[(c[c[(c[O>>2]|0)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[O>>2]|0)+16>>3]-+h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[B>>2]<<6)+24>>3]}else h[F>>3]=+(c[G+252>>2]|0);h[D>>3]=+(c[(c[p>>2]|0)+12>>2]|0)/+((c[t>>2]|0)+1|0);h[E>>3]=+h[F>>3]/+((c[t>>2]|0)+1|0);ug(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[v>>2]|0,c[y>>2]|0,K,1);ug(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[w>>2]|0,c[y>>2]|0,L,0);c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[t>>2]|0)){R=39;break}c[y>>2]=c[(c[r>>2]|0)+((c[s>>2]|0)+(c[A>>2]|0)<<2)>>2];c[P>>2]=0;w=K+56+((c[K+52>>2]|0)-1<<5)|0;c[Q>>2]=c[w>>2];c[Q+4>>2]=c[w+4>>2];c[Q+8>>2]=c[w+8>>2];c[Q+12>>2]=c[w+12>>2];c[Q+16>>2]=c[w+16>>2];c[Q+20>>2]=c[w+20>>2];c[Q+24>>2]=c[w+24>>2];c[Q+28>>2]=c[w+28>>2];h[1104+(c[P>>2]<<5)>>3]=+h[Q>>3];h[1104+(c[P>>2]<<5)+8>>3]=+h[Q+16+8>>3];h[1104+(c[P>>2]<<5)+16>>3]=+h[Q+16>>3]+ +((c[A>>2]|0)+1|0)*+h[D>>3];h[1104+(c[P>>2]<<5)+16+8>>3]=+h[Q+16+8>>3]+ +((c[A>>2]|0)+1|0)*+h[E>>3];c[P>>2]=(c[P>>2]|0)+1;h[1104+(c[P>>2]<<5)>>3]=+h[K+56+((c[K+52>>2]|0)-1<<5)>>3];h[1104+(c[P>>2]<<5)+8>>3]=+h[1104+((c[P>>2]|0)-1<<5)+16+8>>3];h[1104+(c[P>>2]<<5)+16>>3]=+h[L+56+((c[L+52>>2]|0)-1<<5)+16>>3];h[1104+(c[P>>2]<<5)+16+8>>3]=+h[1104+(c[P>>2]<<5)+8>>3]+ +h[E>>3];c[P>>2]=(c[P>>2]|0)+1;w=L+56+((c[L+52>>2]|0)-1<<5)|0;c[Q>>2]=c[w>>2];c[Q+4>>2]=c[w+4>>2];c[Q+8>>2]=c[w+8>>2];c[Q+12>>2]=c[w+12>>2];c[Q+16>>2]=c[w+16>>2];c[Q+20>>2]=c[w+20>>2];c[Q+24>>2]=c[w+24>>2];c[Q+28>>2]=c[w+28>>2];h[1104+(c[P>>2]<<5)+16>>3]=+h[Q+16>>3];h[1104+(c[P>>2]<<5)+8>>3]=+h[Q+16+8>>3];h[1104+(c[P>>2]<<5)>>3]=+h[Q>>3]-+((c[A>>2]|0)+1|0)*+h[D>>3];h[1104+(c[P>>2]<<5)+16+8>>3]=+h[1104+((c[P>>2]|0)-1<<5)+8>>3];c[P>>2]=(c[P>>2]|0)+1;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[K+52>>2]|0))break;w=c[q>>2]|0;v=K+56+(c[z>>2]<<5)|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];c[n+16>>2]=c[v+16>>2];c[n+20>>2]=c[v+20>>2];c[n+24>>2]=c[v+24>>2];c[n+28>>2]=c[v+28>>2];kN(w,n);c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[P>>2]|0))break;w=c[q>>2]|0;v=1104+(c[z>>2]<<5)|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];c[n+16>>2]=c[v+16>>2];c[n+20>>2]=c[v+20>>2];c[n+24>>2]=c[v+24>>2];c[n+28>>2]=c[v+28>>2];kN(w,n);c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=(c[L+52>>2]|0)-1;while(1){if((c[z>>2]|0)<0)break;w=c[q>>2]|0;v=L+56+(c[z>>2]<<5)|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];c[n+16>>2]=c[v+16>>2];c[n+20>>2]=c[v+20>>2];c[n+24>>2]=c[v+24>>2];c[n+28>>2]=c[v+28>>2];kN(w,n);c[z>>2]=(c[z>>2]|0)+-1}w=c[q>>2]|0;if((c[u>>2]|0)==10)c[J>>2]=RL(w,I)|0;else c[J>>2]=SL(w,I)|0;if(!(c[I>>2]|0)){R=39;break}w=c[y>>2]|0;jN(c[y>>2]|0,c[((c[c[y>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]|0,c[J>>2]|0,c[I>>2]|0,50160);c[(c[q>>2]|0)+80>>2]=0;c[A>>2]=(c[A>>2]|0)+1}if((R|0)==39){i=m;return}}tg(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[y>>2]|0,(c[u>>2]|0)==10&1);i=m;return}function Uf(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0,sa=0;m=i;i=i+2672|0;n=m+2304|0;o=m+2656|0;p=m+2652|0;q=m+2648|0;r=m+2644|0;s=m+2640|0;t=m+2636|0;u=m+2632|0;v=m+2628|0;w=m+2624|0;x=m+2128|0;y=m+1952|0;z=m+2560|0;A=m+2496|0;B=m+2432|0;C=m+2424|0;D=m+2420|0;E=m+2416|0;F=m+2412|0;G=m+2408|0;H=m+1080|0;I=m+384|0;J=m+352|0;K=m+2404|0;L=m+2400|0;M=m+2396|0;N=m+2392|0;O=m+2388|0;P=m+2384|0;Q=m+2380|0;R=m+2376|0;S=m+2372|0;T=m+2368|0;U=m+2364|0;V=m+2360|0;W=m+2356|0;X=m+2352|0;Y=m+2348|0;Z=m+2344|0;$=m+320|0;aa=m+288|0;ba=m+256|0;ca=m+224|0;da=m+192|0;ea=m+160|0;fa=m+128|0;ga=m+96|0;ha=m+64|0;ia=m+32|0;ja=m;ka=m+2340|0;la=m+2336|0;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=k;c[u>>2]=l;c[z+8>>2]=x;c[A+8>>2]=y;c[B+8>>2]=m+1776;if(!(c[12543]|0)){c[12543]=cK(32e3)|0;c[12544]=cK(32e3)|0;c[12545]=2e3;c[12546]=2e3}c[L>>2]=0;c[C>>2]=c[(c[r>>2]|0)+(c[s>>2]<<2)>>2];c[S>>2]=0;l=c[C>>2]|0;k=c[C>>2]|0;j=c[C>>2]|0;g=c[C>>2]|0;f=(c[(c[(c[((c[c[C>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[C>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0;g=c[C>>2]|0;if(((((c[(c[(c[((c[c[C>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[C>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0)>=0?f:0-f|0)|0)<=1){if(c[(c[g+8>>2]|0)+164>>2]&32){c[X>>2]=z;c[Y>>2]=c[(c[X>>2]|0)+8>>2];Z4(c[Y>>2]|0,c[(c[C>>2]|0)+8>>2]|0,176)|0;f=c[X>>2]|0;k=c[C>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2];c[f+16>>2]=c[k+16>>2];c[f+20>>2]=c[k+20>>2];c[f+24>>2]=c[k+24>>2];c[f+28>>2]=c[k+28>>2];c[(c[X>>2]|0)+8>>2]=c[Y>>2];Y=c[C>>2]|0;k=c[X>>2]|0;c[((c[c[X>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==2?Y:Y+-32|0)+28>>2];Y=c[C>>2]|0;k=c[X>>2]|0;c[((c[c[X>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==3?Y:Y+32|0)+28>>2];ma=(c[(c[X>>2]|0)+8>>2]|0)+16|0;na=(c[(c[C>>2]|0)+8>>2]|0)+56|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));ma=(c[(c[X>>2]|0)+8>>2]|0)+56|0;na=(c[(c[C>>2]|0)+8>>2]|0)+16|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));a[(c[(c[X>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[X>>2]|0)+8>>2]|0)+116>>2]=c[C>>2];c[C>>2]=z}}else{Z4(x|0,c[g+8>>2]|0,176)|0;g=c[C>>2]|0;c[z>>2]=c[g>>2];c[z+4>>2]=c[g+4>>2];c[z+8>>2]=c[g+8>>2];c[z+12>>2]=c[g+12>>2];c[z+16>>2]=c[g+16>>2];c[z+20>>2]=c[g+20>>2];c[z+24>>2]=c[g+24>>2];c[z+28>>2]=c[g+28>>2];c[z+8>>2]=x;if(c[(c[(c[C>>2]|0)+8>>2]|0)+164>>2]&32){c[V>>2]=A;c[W>>2]=c[(c[V>>2]|0)+8>>2];Z4(c[W>>2]|0,c[(c[C>>2]|0)+8>>2]|0,176)|0;x=c[V>>2]|0;g=c[C>>2]|0;c[x>>2]=c[g>>2];c[x+4>>2]=c[g+4>>2];c[x+8>>2]=c[g+8>>2];c[x+12>>2]=c[g+12>>2];c[x+16>>2]=c[g+16>>2];c[x+20>>2]=c[g+20>>2];c[x+24>>2]=c[g+24>>2];c[x+28>>2]=c[g+28>>2];c[(c[V>>2]|0)+8>>2]=c[W>>2];W=c[C>>2]|0;g=c[V>>2]|0;c[((c[c[V>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==2?W:W+-32|0)+28>>2];W=c[C>>2]|0;g=c[V>>2]|0;c[((c[c[V>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==3?W:W+32|0)+28>>2];ma=(c[(c[V>>2]|0)+8>>2]|0)+16|0;na=(c[(c[C>>2]|0)+8>>2]|0)+56|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));ma=(c[(c[V>>2]|0)+8>>2]|0)+56|0;na=(c[(c[C>>2]|0)+8>>2]|0)+16|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));a[(c[(c[V>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[V>>2]|0)+8>>2]|0)+116>>2]=c[C>>2];V=c[C>>2]|0;c[((c[z>>2]&3|0)==3?z:z+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==2?V:V+-32|0)+28>>2];ma=(c[z+8>>2]|0)+16|0;na=(c[(c[C>>2]|0)+8>>2]|0)+56|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0))}else{Z4(y|0,c[(c[C>>2]|0)+8>>2]|0,176)|0;V=c[C>>2]|0;c[A>>2]=c[V>>2];c[A+4>>2]=c[V+4>>2];c[A+8>>2]=c[V+8>>2];c[A+12>>2]=c[V+12>>2];c[A+16>>2]=c[V+16>>2];c[A+20>>2]=c[V+20>>2];c[A+24>>2]=c[V+24>>2];c[A+28>>2]=c[V+28>>2];c[A+8>>2]=y;y=c[C>>2]|0;c[((c[z>>2]&3|0)==3?z:z+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==3?y:y+32|0)+28>>2]}c[E>>2]=Sf(c[C>>2]|0)|0;while(1){pa=c[E>>2]|0;if(!(c[(c[(c[E>>2]|0)+8>>2]|0)+172>>2]|0))break;c[E>>2]=c[(c[pa+8>>2]|0)+172>>2]}y=c[E>>2]|0;c[((c[z>>2]&3|0)==2?z:z+-32|0)+28>>2]=c[((c[pa>>2]&3|0)==2?y:y+-32|0)+28>>2];a[(c[z+8>>2]|0)+56+28>>0]=0;a[(c[z+8>>2]|0)+112>>0]=1;h[(c[z+8>>2]|0)+56+8>>3]=0.0;h[(c[z+8>>2]|0)+56>>3]=0.0;c[(c[z+8>>2]|0)+116>>2]=c[C>>2];c[C>>2]=z;c[S>>2]=1}c[D>>2]=c[C>>2];if(!((c[u>>2]|0)==2?(z=Yf(c[o>>2]|0,c[D>>2]|0,c[12543]|0,w)|0,c[U>>2]=z,(z|0)!=0):0)){c[Z>>2]=(c[u>>2]|0)==10&1;c[K>>2]=0;c[U>>2]=0;c[F>>2]=c[C>>2];z=c[C>>2]|0;c[v>>2]=c[((c[c[C>>2]>>2]&3|0)==3?z:z+32|0)+28>>2];z=c[C>>2]|0;c[w>>2]=c[((c[c[C>>2]>>2]&3|0)==2?z:z+-32|0)+28>>2];Zf($,c[o>>2]|0,c[p>>2]|0,c[v>>2]|0,0,c[C>>2]|0);c[H>>2]=c[$>>2];c[H+4>>2]=c[$+4>>2];c[H+8>>2]=c[$+8>>2];c[H+12>>2]=c[$+12>>2];c[H+16>>2]=c[$+16>>2];c[H+20>>2]=c[$+20>>2];c[H+24>>2]=c[$+24>>2];c[H+28>>2]=c[$+28>>2];c[J>>2]=c[H>>2];c[J+4>>2]=c[H+4>>2];c[J+8>>2]=c[H+8>>2];c[J+12>>2]=c[H+12>>2];c[J+16>>2]=c[H+16>>2];c[J+20>>2]=c[H+20>>2];c[J+24>>2]=c[H+24>>2];c[J+28>>2]=c[H+28>>2];$=c[q>>2]|0;z=c[C>>2]|0;lN($,z,1,H,_f(c[v>>2]|0)|0);h[J+16+8>>3]=+h[H+56+((c[H+52>>2]|0)-1<<5)+16+8>>3];h[J+8>>3]=+h[H+56+((c[H+52>>2]|0)-1<<5)+8>>3];qa=+h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]<<6)+16>>3];c[n>>2]=c[J>>2];c[n+4>>2]=c[J+4>>2];c[n+8>>2]=c[J+8>>2];c[n+12>>2]=c[J+12>>2];c[n+16>>2]=c[J+16>>2];c[n+20>>2]=c[J+20>>2];c[n+24>>2]=c[J+24>>2];c[n+28>>2]=c[J+28>>2];$f(aa,n,1,qa);c[J>>2]=c[aa>>2];c[J+4>>2]=c[aa+4>>2];c[J+8>>2]=c[aa+8>>2];c[J+12>>2]=c[aa+12>>2];c[J+16>>2]=c[aa+16>>2];c[J+20>>2]=c[aa+20>>2];c[J+24>>2]=c[aa+24>>2];c[J+28>>2]=c[aa+28>>2];if(+h[J>>3]<+h[J+16>>3]?+h[J+8>>3]<+h[J+16+8>>3]:0){aa=H+52|0;z=c[aa>>2]|0;c[aa>>2]=z+1;aa=H+56+(z<<5)|0;c[aa>>2]=c[J>>2];c[aa+4>>2]=c[J+4>>2];c[aa+8>>2]=c[J+8>>2];c[aa+12>>2]=c[J+12>>2];c[aa+16>>2]=c[J+16>>2];c[aa+20>>2]=c[J+20>>2];c[aa+24>>2]=c[J+24>>2];c[aa+28>>2]=c[J+28>>2]}c[T>>2]=0;c[N>>2]=0;c[M>>2]=-1;while(1){if((a[(c[(c[w>>2]|0)+8>>2]|0)+156>>0]|0)!=1)break;if(!((Fb[c[50164>>2]&63](c[w>>2]|0)|0)<<24>>24!=0^1))break;c[T>>2]=1;aa=c[K>>2]|0;c[K>>2]=aa+1;z=1104+(aa<<5)|0;ag(ba,c[p>>2]|0,c[o>>2]|0,c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]|0);c[z>>2]=c[ba>>2];c[z+4>>2]=c[ba+4>>2];c[z+8>>2]=c[ba+8>>2];c[z+12>>2]=c[ba+12>>2];c[z+16>>2]=c[ba+16>>2];c[z+20>>2]=c[ba+20>>2];c[z+24>>2]=c[ba+24>>2];c[z+28>>2]=c[ba+28>>2];if((c[N>>2]|0)==0?(z=bg(c[w>>2]|0)|0,c[L>>2]=z,(z|0)>=(((d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&1|0)!=0?5:3)|0)):0){c[N>>2]=1;c[M>>2]=1;c[L>>2]=(c[L>>2]|0)-2}if((c[N>>2]|0)==0|(c[M>>2]|0)>0){c[M>>2]=(c[M>>2]|0)+-1;z=c[K>>2]|0;c[K>>2]=z+1;aa=1104+(z<<5)|0;Zf(ca,c[o>>2]|0,c[p>>2]|0,c[w>>2]|0,c[C>>2]|0,c[c[(c[(c[w>>2]|0)+8>>2]|0)+180>>2]>>2]|0);c[aa>>2]=c[ca>>2];c[aa+4>>2]=c[ca+4>>2];c[aa+8>>2]=c[ca+8>>2];c[aa+12>>2]=c[ca+12>>2];c[aa+16>>2]=c[ca+16>>2];c[aa+20>>2]=c[ca+20>>2];c[aa+24>>2]=c[ca+24>>2];c[aa+28>>2]=c[ca+28>>2];c[C>>2]=c[c[(c[(c[w>>2]|0)+8>>2]|0)+180>>2]>>2];aa=c[C>>2]|0;c[v>>2]=c[((c[c[C>>2]>>2]&3|0)==3?aa:aa+32|0)+28>>2];aa=c[C>>2]|0;c[w>>2]=c[((c[c[C>>2]>>2]&3|0)==2?aa:aa+-32|0)+28>>2];continue}Zf(da,c[o>>2]|0,c[p>>2]|0,c[w>>2]|0,c[C>>2]|0,c[c[(c[(c[w>>2]|0)+8>>2]|0)+180>>2]>>2]|0);c[I>>2]=c[da>>2];c[I+4>>2]=c[da+4>>2];c[I+8>>2]=c[da+8>>2];c[I+12>>2]=c[da+12>>2];c[I+16>>2]=c[da+16>>2];c[I+20>>2]=c[da+20>>2];c[I+24>>2]=c[da+24>>2];c[I+28>>2]=c[da+28>>2];aa=c[q>>2]|0;z=c[C>>2]|0;$=c[C>>2]|0;mN(aa,z,1,I,_f(c[((c[c[C>>2]>>2]&3|0)==2?$:$+-32|0)+28>>2]|0)|0);$=I+56+((c[I+52>>2]|0)-1<<5)|0;qa=+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[w>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3];c[n>>2]=c[$>>2];c[n+4>>2]=c[$+4>>2];c[n+8>>2]=c[$+8>>2];c[n+12>>2]=c[$+12>>2];c[n+16>>2]=c[$+16>>2];c[n+20>>2]=c[$+20>>2];c[n+24>>2]=c[$+24>>2];c[n+28>>2]=c[$+28>>2];$f(ea,n,4,qa);c[J>>2]=c[ea>>2];c[J+4>>2]=c[ea+4>>2];c[J+8>>2]=c[ea+8>>2];c[J+12>>2]=c[ea+12>>2];c[J+16>>2]=c[ea+16>>2];c[J+20>>2]=c[ea+20>>2];c[J+24>>2]=c[ea+24>>2];c[J+28>>2]=c[ea+28>>2];if(+h[J>>3]<+h[J+16>>3]?+h[J+8>>3]<+h[J+16+8>>3]:0){$=I+52|0;z=c[$>>2]|0;c[$>>2]=z+1;$=I+56+(z<<5)|0;c[$>>2]=c[J>>2];c[$+4>>2]=c[J+4>>2];c[$+8>>2]=c[J+8>>2];c[$+12>>2]=c[J+12>>2];c[$+16>>2]=c[J+16>>2];c[$+20>>2]=c[J+20>>2];c[$+24>>2]=c[J+24>>2];c[$+28>>2]=c[J+28>>2]}h[(c[q>>2]|0)+40+16>>3]=1.5707963267948966;a[(c[q>>2]|0)+40+29>>0]=1;cg(c[q>>2]|0,c[F>>2]|0,c[C>>2]|0,H,I,1104,c[K>>2]|0,1);$=c[q>>2]|0;if(!(c[Z>>2]|0)){c[G>>2]=SL($,R)|0;if((c[u>>2]|0)==2&(c[R>>2]|0)>4){z=(c[G>>2]|0)+16|0;aa=c[G>>2]|0;c[z>>2]=c[aa>>2];c[z+4>>2]=c[aa+4>>2];c[z+8>>2]=c[aa+8>>2];c[z+12>>2]=c[aa+12>>2];aa=(c[G>>2]|0)+48|0;z=(c[G>>2]|0)+32|0;y=(c[G>>2]|0)+((c[R>>2]|0)-1<<4)|0;c[z>>2]=c[y>>2];c[z+4>>2]=c[y+4>>2];c[z+8>>2]=c[y+8>>2];c[z+12>>2]=c[y+12>>2];c[aa>>2]=c[z>>2];c[aa+4>>2]=c[z+4>>2];c[aa+8>>2]=c[z+8>>2];c[aa+12>>2]=c[z+12>>2];c[R>>2]=4}}else c[G>>2]=RL($,R)|0;if(!(c[R>>2]|0)){ra=82;break}if(((c[U>>2]|0)+(c[R>>2]|0)|0)>(c[12545]|0)){c[12545]=(c[U>>2]|0)+(c[R>>2]|0)<<1;c[12543]=eK(c[12543]|0,c[12545]<<4)|0}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[R>>2]|0))break;$=c[U>>2]|0;c[U>>2]=$+1;z=(c[12543]|0)+($<<4)|0;$=(c[G>>2]|0)+(c[O>>2]<<4)|0;c[z>>2]=c[$>>2];c[z+4>>2]=c[$+4>>2];c[z+8>>2]=c[$+8>>2];c[z+12>>2]=c[$+12>>2];c[O>>2]=(c[O>>2]|0)+1}c[C>>2]=dg(c[c[(c[(c[w>>2]|0)+8>>2]|0)+180>>2]>>2]|0,c[L>>2]|0,c[12543]|0,U)|0;eg(c[F>>2]|0,c[q>>2]|0);c[F>>2]=c[C>>2];$=c[C>>2]|0;c[v>>2]=c[((c[c[C>>2]>>2]&3|0)==3?$:$+32|0)+28>>2];$=c[C>>2]|0;c[w>>2]=c[((c[c[C>>2]>>2]&3|0)==2?$:$+-32|0)+28>>2];c[K>>2]=0;Zf(fa,c[o>>2]|0,c[p>>2]|0,c[v>>2]|0,c[c[(c[(c[v>>2]|0)+8>>2]|0)+172>>2]>>2]|0,c[C>>2]|0);c[H>>2]=c[fa>>2];c[H+4>>2]=c[fa+4>>2];c[H+8>>2]=c[fa+8>>2];c[H+12>>2]=c[fa+12>>2];c[H+16>>2]=c[fa+16>>2];c[H+20>>2]=c[fa+20>>2];c[H+24>>2]=c[fa+24>>2];c[H+28>>2]=c[fa+28>>2];$=c[q>>2]|0;z=c[C>>2]|0;lN($,z,1,H,_f(c[v>>2]|0)|0);z=H+56+((c[H+52>>2]|0)-1<<5)|0;qa=+h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]<<6)+16>>3];c[n>>2]=c[z>>2];c[n+4>>2]=c[z+4>>2];c[n+8>>2]=c[z+8>>2];c[n+12>>2]=c[z+12>>2];c[n+16>>2]=c[z+16>>2];c[n+20>>2]=c[z+20>>2];c[n+24>>2]=c[z+24>>2];c[n+28>>2]=c[z+28>>2];$f(ga,n,1,qa);c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[J+16>>2]=c[ga+16>>2];c[J+20>>2]=c[ga+20>>2];c[J+24>>2]=c[ga+24>>2];c[J+28>>2]=c[ga+28>>2];if(+h[J>>3]<+h[J+16>>3]?+h[J+8>>3]<+h[J+16+8>>3]:0){z=H+52|0;$=c[z>>2]|0;c[z>>2]=$+1;z=H+56+($<<5)|0;c[z>>2]=c[J>>2];c[z+4>>2]=c[J+4>>2];c[z+8>>2]=c[J+8>>2];c[z+12>>2]=c[J+12>>2];c[z+16>>2]=c[J+16>>2];c[z+20>>2]=c[J+20>>2];c[z+24>>2]=c[J+24>>2];c[z+28>>2]=c[J+28>>2]}h[(c[q>>2]|0)+16>>3]=-1.5707963267948966;a[(c[q>>2]|0)+29>>0]=1;c[N>>2]=0}if((ra|0)==82){i=m;return}ra=c[K>>2]|0;c[K>>2]=ra+1;N=1104+(ra<<5)|0;ag(ha,c[p>>2]|0,c[o>>2]|0,c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]|0);c[N>>2]=c[ha>>2];c[N+4>>2]=c[ha+4>>2];c[N+8>>2]=c[ha+8>>2];c[N+12>>2]=c[ha+12>>2];c[N+16>>2]=c[ha+16>>2];c[N+20>>2]=c[ha+20>>2];c[N+24>>2]=c[ha+24>>2];c[N+28>>2]=c[ha+28>>2];Zf(ia,c[o>>2]|0,c[p>>2]|0,c[w>>2]|0,c[C>>2]|0,0);c[I>>2]=c[ia>>2];c[I+4>>2]=c[ia+4>>2];c[I+8>>2]=c[ia+8>>2];c[I+12>>2]=c[ia+12>>2];c[I+16>>2]=c[ia+16>>2];c[I+20>>2]=c[ia+20>>2];c[I+24>>2]=c[ia+24>>2];c[I+28>>2]=c[ia+28>>2];c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2];c[J+16>>2]=c[I+16>>2];c[J+20>>2]=c[I+20>>2];c[J+24>>2]=c[I+24>>2];c[J+28>>2]=c[I+28>>2];ia=c[q>>2]|0;ha=(c[S>>2]|0)!=0?A:c[C>>2]|0;N=c[C>>2]|0;mN(ia,ha,1,I,_f(c[((c[c[C>>2]>>2]&3|0)==2?N:N+-32|0)+28>>2]|0)|0);h[J+16+8>>3]=+h[I+56+((c[I+52>>2]|0)-1<<5)+16+8>>3];h[J+8>>3]=+h[I+56+((c[I+52>>2]|0)-1<<5)+8>>3];qa=+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[w>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3];c[n>>2]=c[J>>2];c[n+4>>2]=c[J+4>>2];c[n+8>>2]=c[J+8>>2];c[n+12>>2]=c[J+12>>2];c[n+16>>2]=c[J+16>>2];c[n+20>>2]=c[J+20>>2];c[n+24>>2]=c[J+24>>2];c[n+28>>2]=c[J+28>>2];$f(ja,n,4,qa);c[J>>2]=c[ja>>2];c[J+4>>2]=c[ja+4>>2];c[J+8>>2]=c[ja+8>>2];c[J+12>>2]=c[ja+12>>2];c[J+16>>2]=c[ja+16>>2];c[J+20>>2]=c[ja+20>>2];c[J+24>>2]=c[ja+24>>2];c[J+28>>2]=c[ja+28>>2];if(+h[J>>3]<+h[J+16>>3]?+h[J+8>>3]<+h[J+16+8>>3]:0){ja=I+52|0;n=c[ja>>2]|0;c[ja>>2]=n+1;ja=I+56+(n<<5)|0;c[ja>>2]=c[J>>2];c[ja+4>>2]=c[J+4>>2];c[ja+8>>2]=c[J+8>>2];c[ja+12>>2]=c[J+12>>2];c[ja+16>>2]=c[J+16>>2];c[ja+20>>2]=c[J+20>>2];c[ja+24>>2]=c[J+24>>2];c[ja+28>>2]=c[J+28>>2]}cg(c[q>>2]|0,c[F>>2]|0,c[C>>2]|0,H,I,1104,c[K>>2]|0,c[T>>2]|0);T=c[q>>2]|0;if(c[Z>>2]|0)c[G>>2]=RL(T,R)|0;else c[G>>2]=SL(T,R)|0;if((c[u>>2]|0)==2&(c[R>>2]|0)>4){u=(c[G>>2]|0)+16|0;T=c[G>>2]|0;c[u>>2]=c[T>>2];c[u+4>>2]=c[T+4>>2];c[u+8>>2]=c[T+8>>2];c[u+12>>2]=c[T+12>>2];T=(c[G>>2]|0)+48|0;u=(c[G>>2]|0)+32|0;Z=(c[G>>2]|0)+((c[R>>2]|0)-1<<4)|0;c[u>>2]=c[Z>>2];c[u+4>>2]=c[Z+4>>2];c[u+8>>2]=c[Z+8>>2];c[u+12>>2]=c[Z+12>>2];c[T>>2]=c[u>>2];c[T+4>>2]=c[u+4>>2];c[T+8>>2]=c[u+8>>2];c[T+12>>2]=c[u+12>>2];c[R>>2]=4}if(!(c[R>>2]|0)){i=m;return}if(((c[U>>2]|0)+(c[R>>2]|0)|0)>(c[12545]|0)){c[12545]=(c[U>>2]|0)+(c[R>>2]|0)<<1;c[12543]=eK(c[12543]|0,c[12545]<<4)|0}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[R>>2]|0))break;u=c[U>>2]|0;c[U>>2]=u+1;T=(c[12543]|0)+(u<<4)|0;u=(c[G>>2]|0)+(c[O>>2]<<4)|0;c[T>>2]=c[u>>2];c[T+4>>2]=c[u+4>>2];c[T+8>>2]=c[u+8>>2];c[T+12>>2]=c[u+12>>2];c[O>>2]=(c[O>>2]|0)+1}eg(c[F>>2]|0,c[q>>2]|0);if(c[S>>2]|0)sa=c[((c[A>>2]&3|0)==2?A:A+-32|0)+28>>2]|0;else{A=c[C>>2]|0;sa=c[((c[c[C>>2]>>2]&3|0)==2?A:A+-32|0)+28>>2]|0}c[w>>2]=sa}if((c[t>>2]|0)==1){jN(c[D>>2]|0,c[w>>2]|0,c[12543]|0,c[U>>2]|0,50160);i=m;return}c[Q>>2]=(_(c[(c[p>>2]|0)+12>>2]|0,(c[t>>2]|0)-1|0)|0)/2|0;c[O>>2]=1;while(1){if((c[O>>2]|0)>=((c[U>>2]|0)-1|0))break;sa=(c[12543]|0)+(c[O>>2]<<4)|0;h[sa>>3]=+h[sa>>3]-+(c[Q>>2]|0);c[O>>2]=(c[O>>2]|0)+1}if((c[12545]|0)>(c[12546]|0)){c[12546]=c[12545];c[12544]=eK(c[12544]|0,c[12546]<<4)|0}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[U>>2]|0))break;Q=(c[12544]|0)+(c[O>>2]<<4)|0;sa=(c[12543]|0)+(c[O>>2]<<4)|0;c[Q>>2]=c[sa>>2];c[Q+4>>2]=c[sa+4>>2];c[Q+8>>2]=c[sa+8>>2];c[Q+12>>2]=c[sa+12>>2];c[O>>2]=(c[O>>2]|0)+1}jN(c[D>>2]|0,c[w>>2]|0,c[12544]|0,c[U>>2]|0,50160);c[P>>2]=1;while(1){if((c[P>>2]|0)>=(c[t>>2]|0))break;c[C>>2]=c[(c[r>>2]|0)+((c[s>>2]|0)+(c[P>>2]|0)<<2)>>2];if(c[(c[(c[C>>2]|0)+8>>2]|0)+164>>2]&32){c[ka>>2]=B;c[la>>2]=c[(c[ka>>2]|0)+8>>2];Z4(c[la>>2]|0,c[(c[C>>2]|0)+8>>2]|0,176)|0;w=c[ka>>2]|0;D=c[C>>2]|0;c[w>>2]=c[D>>2];c[w+4>>2]=c[D+4>>2];c[w+8>>2]=c[D+8>>2];c[w+12>>2]=c[D+12>>2];c[w+16>>2]=c[D+16>>2];c[w+20>>2]=c[D+20>>2];c[w+24>>2]=c[D+24>>2];c[w+28>>2]=c[D+28>>2];c[(c[ka>>2]|0)+8>>2]=c[la>>2];D=c[C>>2]|0;w=c[ka>>2]|0;c[((c[c[ka>>2]>>2]&3|0)==3?w:w+32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2];D=c[C>>2]|0;w=c[ka>>2]|0;c[((c[c[ka>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]=c[((c[c[C>>2]>>2]&3|0)==3?D:D+32|0)+28>>2];ma=(c[(c[ka>>2]|0)+8>>2]|0)+16|0;na=(c[(c[C>>2]|0)+8>>2]|0)+56|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));ma=(c[(c[ka>>2]|0)+8>>2]|0)+56|0;na=(c[(c[C>>2]|0)+8>>2]|0)+16|0;oa=ma+40|0;do{c[ma>>2]=c[na>>2];ma=ma+4|0;na=na+4|0}while((ma|0)<(oa|0));a[(c[(c[ka>>2]|0)+8>>2]|0)+112>>0]=1;c[(c[(c[ka>>2]|0)+8>>2]|0)+116>>2]=c[C>>2];c[C>>2]=B}c[O>>2]=1;while(1){if((c[O>>2]|0)>=((c[U>>2]|0)-1|0))break;D=(c[12543]|0)+(c[O>>2]<<4)|0;h[D>>3]=+h[D>>3]+ +(c[(c[p>>2]|0)+12>>2]|0);c[O>>2]=(c[O>>2]|0)+1}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[U>>2]|0))break;D=(c[12544]|0)+(c[O>>2]<<4)|0;w=(c[12543]|0)+(c[O>>2]<<4)|0;c[D>>2]=c[w>>2];c[D+4>>2]=c[w+4>>2];c[D+8>>2]=c[w+8>>2];c[D+12>>2]=c[w+12>>2];c[O>>2]=(c[O>>2]|0)+1}w=c[C>>2]|0;jN(c[C>>2]|0,c[((c[c[C>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]|0,c[12544]|0,c[U>>2]|0,50160);c[P>>2]=(c[P>>2]|0)+1}i=m;return}function Vf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[e>>2]=OA(c[d>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;if(((Fb[c[12540]&63](c[e>>2]|0)|0)&255|0)!=0?(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)Wf(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0);c[e>>2]=QA(c[d>>2]|0,c[e>>2]|0)|0}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}i=b;return}function Wf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[j>>2]=c[(c[d>>2]|0)+4>>2];c[e>>2]=cK((c[j>>2]|0)*48|0)|0;c[f>>2]=c[e>>2];c[g>>2]=(c[c[d>>2]>>2]|0)+(((c[j>>2]|0)-1|0)*48|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0))break;a=c[g>>2]|0;c[g>>2]=a+-48;k=c[f>>2]|0;c[f>>2]=k+48;Xf(a,k);c[h>>2]=(c[h>>2]|0)+1}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[j>>2]|0))break;O4(c[(c[c[d>>2]>>2]|0)+((c[h>>2]|0)*48|0)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}O4(c[c[d>>2]>>2]|0);c[c[d>>2]>>2]=c[e>>2];i=b;return}function Xf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=cK(c[l>>2]<<4)|0;c[h>>2]=c[g>>2];c[j>>2]=(c[c[e>>2]>>2]|0)+((c[l>>2]|0)-1<<4);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0))break;b=c[h>>2]|0;c[h>>2]=b+16;a=c[j>>2]|0;c[j>>2]=a+-16;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[k>>2]=(c[k>>2]|0)+1}c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[l>>2];c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+12>>2];c[(c[f>>2]|0)+12>>2]=c[(c[e>>2]|0)+8>>2];l=(c[f>>2]|0)+16|0;g=(c[e>>2]|0)+32|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];g=(c[f>>2]|0)+32|0;f=(c[e>>2]|0)+16|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];i=d;return}function Yf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0.0,K=0;j=i;i=i+240|0;k=j+176|0;l=j+160|0;m=j+144|0;n=j+228|0;o=j+224|0;p=j+220|0;q=j+216|0;r=j+212|0;s=j+208|0;t=j+204|0;u=j+200|0;v=j+196|0;w=j+192|0;x=j+128|0;y=j+112|0;z=j+96|0;A=j+80|0;B=j+72|0;C=j+64|0;D=j+48|0;E=j+32|0;F=j+16|0;G=j;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[w>>2]=c[p>>2];while(1){H=c[w>>2]|0;if(!(a[(c[(c[w>>2]|0)+8>>2]|0)+112>>0]|0))break;c[w>>2]=c[(c[H+8>>2]|0)+116>>2]}g=c[w>>2]|0;c[u>>2]=c[((c[H>>2]&3|0)==2?g:g+-32|0)+28>>2];g=c[w>>2]|0;c[v>>2]=c[((c[c[w>>2]>>2]&3|0)==3?g:g+32|0)+28>>2];g=(c[(c[(c[u>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]|0)|0;c[s>>2]=((c[(c[(c[u>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[v>>2]|0)+8>>2]|0)+232>>2]|0)|0)>=0?g:0-g|0;do if((c[s>>2]|0)!=1){if((c[s>>2]|0)==2?(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&1|0)!=0:0)break;g=c[p>>2]|0;H=c[w>>2]|0;if((c[((c[c[p>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)==(c[((c[c[w>>2]>>2]&3|0)==3?H:H+32|0)+28>>2]|0)){c[c[r>>2]>>2]=c[u>>2];H=(c[(c[v>>2]|0)+8>>2]|0)+16|0;g=(c[(c[w>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[H>>2];c[l+4>>2]=c[H+4>>2];c[l+8>>2]=c[H+8>>2];c[l+12>>2]=c[H+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];og(D,l,k);c[x>>2]=c[D>>2];c[x+4>>2]=c[D+4>>2];c[x+8>>2]=c[D+8>>2];c[x+12>>2]=c[D+12>>2];g=(c[(c[u>>2]|0)+8>>2]|0)+16|0;H=(c[(c[w>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];og(E,l,k);c[y>>2]=c[E>>2];c[y+4>>2]=c[E+4>>2];c[y+8>>2]=c[E+8>>2];c[y+12>>2]=c[E+12>>2]}else{c[c[r>>2]>>2]=c[v>>2];H=(c[(c[u>>2]|0)+8>>2]|0)+16|0;g=(c[(c[w>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[H>>2];c[l+4>>2]=c[H+4>>2];c[l+8>>2]=c[H+8>>2];c[l+12>>2]=c[H+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];og(F,l,k);c[x>>2]=c[F>>2];c[x+4>>2]=c[F+4>>2];c[x+8>>2]=c[F+8>>2];c[x+12>>2]=c[F+12>>2];g=(c[(c[v>>2]|0)+8>>2]|0)+16|0;H=(c[(c[w>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];og(G,l,k);c[y>>2]=c[G>>2];c[y+4>>2]=c[G+4>>2];c[y+8>>2]=c[G+8>>2];c[y+12>>2]=c[G+12>>2]}if(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0){H=(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;c[A>>2]=c[H>>2];c[A+4>>2]=c[H+4>>2];c[A+8>>2]=c[H+8>>2];c[A+12>>2]=c[H+12>>2];if(c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+116>>2]&1){h[B>>3]=+h[A+8>>3];h[C>>3]=+h[A>>3]}else{h[B>>3]=+h[A>>3];h[C>>3]=+h[A+8>>3]}H=(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;c[z>>2]=c[H>>2];c[z+4>>2]=c[H+4>>2];c[z+8>>2]=c[H+8>>2];c[z+12>>2]=c[H+12>>2];c[m>>2]=c[y>>2];c[m+4>>2]=c[y+4>>2];c[m+8>>2]=c[y+8>>2];c[m+12>>2]=c[y+12>>2];c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];c[k>>2]=c[z>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[k+12>>2]=c[z+12>>2];H=(pg(m,l,k)|0)!=0;I=+h[B>>3]/2.0;J=+h[z>>3];if(H){h[z>>3]=J+I;H=z+8|0;h[H>>3]=+h[H>>3]-+h[C>>3]/2.0}else{h[z>>3]=J-I;H=z+8|0;h[H>>3]=+h[H>>3]+ +h[C>>3]/2.0}H=(c[q>>2]|0)+16|0;g=c[q>>2]|0;c[g>>2]=c[x>>2];c[g+4>>2]=c[x+4>>2];c[g+8>>2]=c[x+8>>2];c[g+12>>2]=c[x+12>>2];c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[H+12>>2]=c[g+12>>2];g=(c[q>>2]|0)+32|0;H=(c[q>>2]|0)+48|0;f=(c[q>>2]|0)+64|0;c[f>>2]=c[z>>2];c[f+4>>2]=c[z+4>>2];c[f+8>>2]=c[z+8>>2];c[f+12>>2]=c[z+12>>2];c[H>>2]=c[f>>2];c[H+4>>2]=c[f+4>>2];c[H+8>>2]=c[f+8>>2];c[H+12>>2]=c[f+12>>2];c[g>>2]=c[H>>2];c[g+4>>2]=c[H+4>>2];c[g+8>>2]=c[H+8>>2];c[g+12>>2]=c[H+12>>2];H=(c[q>>2]|0)+80|0;g=(c[q>>2]|0)+96|0;c[g>>2]=c[y>>2];c[g+4>>2]=c[y+4>>2];c[g+8>>2]=c[y+8>>2];c[g+12>>2]=c[y+12>>2];c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[H+12>>2]=c[g+12>>2];c[t>>2]=7}else{g=(c[q>>2]|0)+16|0;H=c[q>>2]|0;c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];c[g>>2]=c[H>>2];c[g+4>>2]=c[H+4>>2];c[g+8>>2]=c[H+8>>2];c[g+12>>2]=c[H+12>>2];H=(c[q>>2]|0)+48|0;g=(c[q>>2]|0)+32|0;c[g>>2]=c[y>>2];c[g+4>>2]=c[y+4>>2];c[g+8>>2]=c[y+8>>2];c[g+12>>2]=c[y+12>>2];c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[H+12>>2]=c[g+12>>2];c[t>>2]=4}c[n>>2]=c[t>>2];K=c[n>>2]|0;i=j;return K|0}while(0);c[n>>2]=0;K=c[n>>2]|0;i=j;return K|0}function Zf(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0;k=i;i=i+96|0;l=k+80|0;m=k+76|0;n=k+72|0;o=k+68|0;p=k+64|0;q=k+40|0;r=k+32|0;s=k+60|0;t=k+56|0;u=k+52|0;v=k+48|0;w=k;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=j;c[t>>2]=0;c[s>>2]=0;h[q>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+88>>3]-4.0;j=kg(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,-1)|0;c[u>>2]=j;if(j){j=lg(c[l>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;c[s>>2]=j;do if(!j){h[r>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+240>>3];if(!(a[(c[(c[u>>2]|0)+8>>2]|0)+156>>0]|0)){h[r>>3]=+h[r>>3]+ +(c[(c[(c[l>>2]|0)+8>>2]|0)+248>>2]|0)/2.0;break}else{h[r>>3]=+h[r>>3]+ +(c[(c[m>>2]|0)+8>>2]|0);break}}else h[r>>3]=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16>>3]+ +(c[(c[m>>2]|0)+8>>2]|0);while(0);if(+h[r>>3]<+h[q>>3])h[q>>3]=+h[r>>3];x=+h[q>>3];h[w>>3]=+(~~(+h[q>>3]>=0.0?x+.5:x-.5)|0)}else{x=+h[q>>3];if((~~(+h[q>>3]>=0.0?x+.5:x-.5)|0)<(c[c[m>>2]>>2]|0)){x=+h[q>>3];y=~~(+h[q>>3]>=0.0?x+.5:x-.5)}else y=c[c[m>>2]>>2]|0;h[w>>3]=+(y|0)}if((a[(c[(c[n>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[n>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0)h[q>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]+10.0;else h[q>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[n>>2]|0)+8>>2]|0)+96>>3]+4.0;y=kg(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,1)|0;c[v>>2]=y;if(y){y=lg(c[l>>2]|0,c[n>>2]|0,c[v>>2]|0)|0;c[t>>2]=y;do if(!y){h[r>>3]=+h[(c[(c[v>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[v>>2]|0)+8>>2]|0)+88>>3];if(!(a[(c[(c[v>>2]|0)+8>>2]|0)+156>>0]|0)){h[r>>3]=+h[r>>3]-+(c[(c[(c[l>>2]|0)+8>>2]|0)+248>>2]|0)/2.0;break}else{h[r>>3]=+h[r>>3]-+(c[(c[m>>2]|0)+8>>2]|0);break}}else h[r>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+16>>3]-+(c[(c[m>>2]|0)+8>>2]|0);while(0);if(+h[r>>3]>+h[q>>3])h[q>>3]=+h[r>>3];x=+h[q>>3];h[w+16>>3]=+(~~(+h[q>>3]>=0.0?x+.5:x-.5)|0)}else{x=+h[q>>3];if((~~(+h[q>>3]>=0.0?x+.5:x-.5)|0)>(c[(c[m>>2]|0)+4>>2]|0)){x=+h[q>>3];z=~~(+h[q>>3]>=0.0?x+.5:x-.5)}else z=c[(c[m>>2]|0)+4>>2]|0;h[w+16>>3]=+(z|0)}if(((a[(c[(c[n>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[n>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0)?(z=w+16|0,h[z>>3]=+h[z>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+96>>3],+h[w+16>>3]<+h[w>>3]):0)h[w+16>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3];h[w+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[n>>2]|0)+8>>2]|0)+232>>2]<<6)+16>>3];h[w+16+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[n>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3];c[b>>2]=c[w>>2];c[b+4>>2]=c[w+4>>2];c[b+8>>2]=c[w+8>>2];c[b+12>>2]=c[w+12>>2];c[b+16>>2]=c[w+16>>2];c[b+20>>2]=c[w+20>>2];c[b+24>>2]=c[w+24>>2];c[b+28>>2]=c[w+28>>2];i=k;return}function _f(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((a[(c[(c[e>>2]|0)+8>>2]|0)+156>>0]|0)==1)if((c[(c[(c[e>>2]|0)+8>>2]|0)+172+4>>2]|0)>1)f=1;else f=(c[(c[(c[e>>2]|0)+8>>2]|0)+180+4>>2]|0)>1;else f=0;i=d;return f&1|0}function $f(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+112|0;g=f+104|0;j=f+96|0;k=f+64|0;l=f+32|0;m=f;c[g>>2]=d;h[j>>3]=e;switch(c[g>>2]|0){case 1:{jg(l,+h[b>>3],+h[j>>3],+h[b+16>>3],+h[b+8>>3]);c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];c[k+16>>2]=c[l+16>>2];c[k+20>>2]=c[l+20>>2];c[k+24>>2]=c[l+24>>2];c[k+28>>2]=c[l+28>>2];break}case 4:{jg(m,+h[b>>3],+h[b+16+8>>3],+h[b+16>>3],+h[j>>3]);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];break}default:{}}c[a>>2]=c[k>>2];c[a+4>>2]=c[k+4>>2];c[a+8>>2]=c[k+8>>2];c[a+12>>2]=c[k+12>>2];c[a+16>>2]=c[k+16>>2];c[a+20>>2]=c[k+20>>2];c[a+24>>2]=c[k+24>>2];c[a+28>>2]=c[k+28>>2];i=f;return}function ag(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+64|0;g=f+48|0;j=f+44|0;k=f+40|0;l=f;m=f+36|0;n=f+32|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;e=(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<5)|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];c[l+16>>2]=c[e+16>>2];c[l+20>>2]=c[e+20>>2];c[l+24>>2]=c[e+24>>2];c[l+28>>2]=c[e+28>>2];if(!(+h[l>>3]==+h[l+16>>3])){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=f;return}c[m>>2]=c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]>>2];c[n>>2]=c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+((c[k>>2]|0)+1<<6)+4>>2]>>2];h[l>>3]=+(c[c[g>>2]>>2]|0);h[l+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+((c[k>>2]|0)+1<<6)+24>>3];h[l+16>>3]=+(c[(c[g>>2]|0)+4>>2]|0);h[l+16+8>>3]=+h[(c[(c[m>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+16>>3];j=(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<5)|0;c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2];c[j+16>>2]=c[l+16>>2];c[j+20>>2]=c[l+20>>2];c[j+24>>2]=c[l+24>>2];c[j+28>>2]=c[l+28>>2];c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=f;return}function bg(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;c[f>>2]=0;c[g>>2]=c[e>>2];while(1){b=c[c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[g>>2]=c[((c[c[c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];if((a[(c[(c[g>>2]|0)+8>>2]|0)+156>>0]|0)!=1){j=7;break}if((c[(c[(c[g>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1){j=7;break}if((c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]|0)!=1){j=7;break}if(+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]!=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]){j=7;break}c[f>>2]=(c[f>>2]|0)+1}if((j|0)==7){i=d;return c[f>>2]|0}return 0}function cg(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;k=i;i=i+112|0;l=k;m=k+100|0;n=k+96|0;o=k+92|0;p=k+88|0;q=k+84|0;r=k+80|0;s=k+76|0;t=k+68|0;u=k+64|0;v=k+60|0;w=k+56|0;x=k+52|0;y=k+48|0;z=k+44|0;A=k+40|0;B=k+36|0;C=k+32|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[k+72>>2]=j;c[z>>2]=-1;c[y>>2]=-1;c[u>>2]=0;c[t>>2]=0;c[t>>2]=gg(c[n>>2]|0,-1)|0;c[u>>2]=gg(c[n>>2]|0,1)|0;do if(c[t>>2]|0){n=tN(c[t>>2]|0)|0;c[A>>2]=n;if(n){c[B>>2]=c[c[c[A>>2]>>2]>>2];c[C>>2]=c[(c[c[A>>2]>>2]|0)+4>>2];break}else{i=k;return}}while(0);do if(c[u>>2]|0){t=tN(c[u>>2]|0)|0;c[A>>2]=t;if(t){c[B>>2]=c[c[c[A>>2]>>2]>>2];c[C>>2]=c[(c[c[A>>2]>>2]|0)+4>>2];break}else{i=k;return}}while(0);c[w>>2]=0;c[v>>2]=0;c[v>>2]=hg(c[o>>2]|0,-1)|0;c[w>>2]=hg(c[o>>2]|0,1)|0;do if(c[v>>2]|0){o=tN(c[v>>2]|0)|0;c[A>>2]=o;if(o){c[B>>2]=c[(c[c[A>>2]>>2]|0)+(((c[(c[A>>2]|0)+4>>2]|0)-1|0)*48|0)>>2];c[C>>2]=c[(c[c[A>>2]>>2]|0)+(((c[(c[A>>2]|0)+4>>2]|0)-1|0)*48|0)+4>>2];break}else{i=k;return}}while(0);do if(c[w>>2]|0){v=tN(c[w>>2]|0)|0;c[A>>2]=v;if(v){c[B>>2]=c[(c[c[A>>2]>>2]|0)+(((c[(c[A>>2]|0)+4>>2]|0)-1|0)*48|0)>>2];c[C>>2]=c[(c[c[A>>2]>>2]|0)+(((c[(c[A>>2]|0)+4>>2]|0)-1|0)*48|0)+4>>2];break}else{i=k;return}}while(0);c[x>>2]=0;while(1){D=c[m>>2]|0;if((c[x>>2]|0)>=(c[(c[p>>2]|0)+52>>2]|0))break;A=(c[p>>2]|0)+56+(c[x>>2]<<5)|0;c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];c[l+8>>2]=c[A+8>>2];c[l+12>>2]=c[A+12>>2];c[l+16>>2]=c[A+16>>2];c[l+20>>2]=c[A+20>>2];c[l+24>>2]=c[A+24>>2];c[l+28>>2]=c[A+28>>2];kN(D,l);c[x>>2]=(c[x>>2]|0)+1}c[y>>2]=(c[D+80>>2]|0)+1;c[z>>2]=(c[y>>2]|0)+(c[s>>2]|0)-3;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[s>>2]|0))break;D=c[m>>2]|0;p=(c[r>>2]|0)+(c[x>>2]<<5)|0;c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[l+12>>2]=c[p+12>>2];c[l+16>>2]=c[p+16>>2];c[l+20>>2]=c[p+20>>2];c[l+24>>2]=c[p+24>>2];c[l+28>>2]=c[p+28>>2];kN(D,l);c[x>>2]=(c[x>>2]|0)+1}c[x>>2]=(c[(c[q>>2]|0)+52>>2]|0)-1;while(1){E=c[m>>2]|0;if((c[x>>2]|0)<0)break;r=(c[q>>2]|0)+56+(c[x>>2]<<5)|0;c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];c[l+16>>2]=c[r+16>>2];c[l+20>>2]=c[r+20>>2];c[l+24>>2]=c[r+24>>2];c[l+28>>2]=c[r+28>>2];kN(E,l);c[x>>2]=(c[x>>2]|0)+-1}ig(E,c[y>>2]|0,c[z>>2]|0);i=k;return}function dg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[c[k>>2]>>2];c[m>>2]=c[g>>2];while(1){g=c[h>>2]|0;c[h>>2]=g+-1;if(!g)break;g=c[m>>2]|0;c[m>>2]=c[c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}h=c[k>>2]|0;g=c[h>>2]|0;c[h>>2]=g+1;h=(c[j>>2]|0)+(g<<4)|0;g=(c[j>>2]|0)+((c[l>>2]|0)-1<<4)|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];g=c[k>>2]|0;h=c[g>>2]|0;c[g>>2]=h+1;g=(c[j>>2]|0)+(h<<4)|0;h=(c[j>>2]|0)+((c[l>>2]|0)-1<<4)|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];h=(c[j>>2]|0)+(c[c[k>>2]>>2]<<4)|0;k=c[m>>2]|0;j=(c[(c[((c[c[m>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+16|0;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];i=f;return c[m>>2]|0}function eg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;d=c[f>>2]|0;c[k>>2]=c[((c[c[f>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];while(1){if((a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0)!=1){l=14;break}if(!((Fb[c[50164>>2]&63](c[k>>2]|0)|0)<<24>>24!=0^1)){l=14;break}while(1){if((c[j>>2]|0)<(c[(c[g>>2]|0)+80>>2]|0))m=+h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)+8>>3]>+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3];else m=0;n=c[j>>2]|0;if(!m)break;c[j>>2]=n+1}if((n|0)>=(c[(c[g>>2]|0)+80>>2]|0)){l=14;break}do if(!(+h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)+16+8>>3]<+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3])){d=c[k>>2]|0;f=~~+h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)>>3];b=(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)|0;if(c[(c[(c[k>>2]|0)+8>>2]|0)+104>>2]|0){fg(d,f,~~+h[b+16>>3],~~(+h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)+16>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]));break}else{fg(d,f,~~((+h[b>>3]+ +h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)+16>>3])/2.0),~~+h[(c[(c[g>>2]|0)+84>>2]|0)+(c[j>>2]<<5)+16>>3]);break}}while(0);b=c[c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[k>>2]=c[((c[c[c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]}if((l|0)==14){i=e;return}}function fg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]=+(c[k>>2]|0);h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]=+((c[k>>2]|0)-(c[j>>2]|0)|0);h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3]=+((c[l>>2]|0)-(c[k>>2]|0)|0);i=f;return}function gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=0;while(1){b=c[e>>2]|0;a=c[(c[(c[(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(c[j>>2]<<2)>>2]|0;c[g>>2]=a;if(!a)break;a=c[g>>2]|0;b=c[e>>2]|0;do if((_(c[f>>2]|0,(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)|0)>0){if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)){if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]|0))break;if(!(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]|0)+8>>2]|0)+8>>2]|0))break}if((c[h>>2]|0)!=0?(k=c[h>>2]|0,l=c[g>>2]|0,(_(c[f>>2]|0,(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)|0)<=0):0)break;c[h>>2]=c[g>>2]}while(0);c[j>>2]=(c[j>>2]|0)+1}i=d;return c[h>>2]|0}function hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=0;while(1){b=c[e>>2]|0;a=c[(c[(c[(c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[j>>2]<<2)>>2]|0;c[g>>2]=a;if(!a)break;a=c[g>>2]|0;b=c[e>>2]|0;do if((_(c[f>>2]|0,(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)|0)>0){if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)){if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]|0))break;if(!(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]|0)+8>>2]|0)+8>>2]|0))break}if((c[h>>2]|0)!=0?(k=c[h>>2]|0,l=c[g>>2]|0,(_(c[f>>2]|0,(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)|0)<=0):0)break;c[h>>2]=c[g>>2]}while(0);c[j>>2]=(c[j>>2]|0)+1}i=d;return c[h>>2]|0}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[m>>2]=(c[g>>2]|0)-1;while(1){if((c[m>>2]|0)>=((c[j>>2]|0)+1|0))break;c[k>>2]=(c[(c[f>>2]|0)+84>>2]|0)+(c[m>>2]<<5);o=+h[c[k>>2]>>3];if(!(((c[m>>2]|0)-(c[g>>2]|0)|0)%2|0)){if(o>=+h[(c[k>>2]|0)+16>>3]){c[n>>2]=~~((+h[c[k>>2]>>3]+ +h[(c[k>>2]|0)+16>>3])/2.0);h[c[k>>2]>>3]=+((c[n>>2]|0)-8|0);h[(c[k>>2]|0)+16>>3]=+((c[n>>2]|0)+8|0)}}else if(o+16.0>+h[(c[k>>2]|0)+16>>3]){c[n>>2]=~~((+h[c[k>>2]>>3]+ +h[(c[k>>2]|0)+16>>3])/2.0);h[c[k>>2]>>3]=+((c[n>>2]|0)-8|0);h[(c[k>>2]|0)+16>>3]=+((c[n>>2]|0)+8|0)}c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=((c[(c[f>>2]|0)+80>>2]|0)-1|0))break;c[k>>2]=(c[(c[f>>2]|0)+84>>2]|0)+(c[m>>2]<<5);c[l>>2]=(c[(c[f>>2]|0)+84>>2]|0)+((c[m>>2]|0)+1<<5);if(((c[m>>2]|0)>=(c[g>>2]|0)?(c[m>>2]|0)<=(c[j>>2]|0):0)?(((c[m>>2]|0)-(c[g>>2]|0)|0)%2|0|0)==0:0){if(+h[c[k>>2]>>3]+16.0>+h[(c[l>>2]|0)+16>>3])h[(c[l>>2]|0)+16>>3]=+h[c[k>>2]>>3]+16.0;if(+h[(c[k>>2]|0)+16>>3]-16.0<+h[c[l>>2]>>3])h[c[l>>2]>>3]=+h[(c[k>>2]|0)+16>>3]-16.0}else p=18;if((((p|0)==18?(p=0,((c[m>>2]|0)+1|0)>=(c[g>>2]|0)):0)?(c[m>>2]|0)<(c[j>>2]|0):0)?(((c[m>>2]|0)+1-(c[g>>2]|0)|0)%2|0|0)==0:0){if(+h[c[k>>2]>>3]+16.0>+h[(c[l>>2]|0)+16>>3])h[c[k>>2]>>3]=+h[(c[l>>2]|0)+16>>3]-16.0;if(+h[(c[k>>2]|0)+16>>3]-16.0<+h[c[l>>2]>>3])h[(c[k>>2]|0)+16>>3]=+h[c[l>>2]>>3]+16.0}c[m>>2]=(c[m>>2]|0)+1}i=e;return}function jg(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+64|0;j=g+56|0;k=g+48|0;l=g+40|0;m=g+32|0;n=g;h[j>>3]=b;h[k>>3]=d;h[l>>3]=e;h[m>>3]=f;h[n>>3]=+h[j>>3];h[n+8>>3]=+h[k>>3];h[n+16>>3]=+h[l>>3];h[n+16+8>>3]=+h[m>>3];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];i=g;return}function kg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+48|0;j=h+32|0;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;c[r>>2]=(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<6);c[o>>2]=(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]|0)+(c[n>>2]|0);while(1){if((c[o>>2]|0)<0){s=12;break}if((c[o>>2]|0)>=(c[c[r>>2]>>2]|0)){s=12;break}c[p>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2];if((a[(c[(c[p>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[p>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0){s=6;break}t=c[p>>2]|0;if(!(a[(c[(c[p>>2]|0)+8>>2]|0)+156>>0]|0)){s=8;break}if(!((ng(t,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)&255)){s=10;break}c[o>>2]=(c[o>>2]|0)+(c[n>>2]|0)}if((s|0)==6){c[q>>2]=c[p>>2];u=c[q>>2]|0;i=h;return u|0}else if((s|0)==8){c[q>>2]=t;u=c[q>>2]|0;i=h;return u|0}else if((s|0)==10){c[q>>2]=c[p>>2];u=c[q>>2]|0;i=h;return u|0}else if((s|0)==12){u=c[q>>2]|0;i=h;return u|0}return 0}function lg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=0;e=c[(c[h>>2]|0)+8>>2]|0;if(!(a[(c[(c[h>>2]|0)+8>>2]|0)+156>>0]|0)){h=c[e+212>>2]|0;c[n>>2]=h;c[m>>2]=h}else{c[o>>2]=c[(c[(c[c[e+180>>2]>>2]|0)+8>>2]|0)+116>>2];e=c[o>>2]|0;c[m>>2]=c[(c[(c[((c[c[o>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+212>>2];e=c[o>>2]|0;c[n>>2]=c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]}e=c[(c[j>>2]|0)+8>>2]|0;if(!(a[(c[(c[j>>2]|0)+8>>2]|0)+156>>0]|0)){if((c[e+212>>2]|0)==(c[g>>2]|0))p=0;else p=c[(c[(c[j>>2]|0)+8>>2]|0)+212>>2]|0;c[l>>2]=p;if(!(c[l>>2]|0)){q=c[k>>2]|0;i=f;return q|0}if((c[l>>2]|0)==(c[m>>2]|0)){q=c[k>>2]|0;i=f;return q|0}if((c[l>>2]|0)==(c[n>>2]|0)){q=c[k>>2]|0;i=f;return q|0}c[k>>2]=c[l>>2];q=c[k>>2]|0;i=f;return q|0}c[o>>2]=c[(c[(c[c[e+180>>2]>>2]|0)+8>>2]|0)+116>>2];e=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)==(c[g>>2]|0))r=0;else{e=c[o>>2]|0;r=c[(c[(c[((c[c[o>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0}c[l>>2]=r;if((((c[l>>2]|0)!=0?(c[l>>2]|0)!=(c[m>>2]|0):0)?(c[l>>2]|0)!=(c[n>>2]|0):0)?(mg(c[l>>2]|0,c[j>>2]|0)|0)!=0:0){c[k>>2]=c[l>>2];q=c[k>>2]|0;i=f;return q|0}r=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)==(c[g>>2]|0))s=0;else{g=c[o>>2]|0;s=c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0}c[l>>2]=s;if(!(c[l>>2]|0)){q=c[k>>2]|0;i=f;return q|0}if((c[l>>2]|0)==(c[m>>2]|0)){q=c[k>>2]|0;i=f;return q|0}if((c[l>>2]|0)==(c[n>>2]|0)){q=c[k>>2]|0;i=f;return q|0}if(!(mg(c[l>>2]|0,c[j>>2]|0)|0)){q=c[k>>2]|0;i=f;return q|0}c[k>>2]=c[l>>2];q=c[k>>2]|0;i=f;return q|0}function mg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]<=+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3])){g=0;j=g&1;i=d;return j|0}if(!(+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]<=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+16>>3])){g=0;j=g&1;i=d;return j|0}if(!(+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]<=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3])){g=0;j=g&1;i=d;return j|0}g=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]<=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+16+8>>3];j=g&1;i=d;return j|0}function ng(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+48|0;h=g+40|0;j=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[r>>2]=(c[(c[(c[j>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]|0)&1;if((c[(c[(c[j>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1?(c[(c[(c[j>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1:0){a[h>>0]=0;t=a[h>>0]|0;i=g;return t|0}c[o>>2]=c[m>>2];a:do if((c[o>>2]|0)!=0?(c[(c[(c[j>>2]|0)+8>>2]|0)+180+4>>2]|0)==1:0){c[n>>2]=c[c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=2)break a;m=c[n>>2]|0;k=c[((c[c[n>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0;c[p>>2]=k;m=c[o>>2]|0;f=c[((c[c[o>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0;c[q>>2]=f;if((k|0)==(f|0))break a;if((c[r>>2]|0)!=((c[(c[(c[p>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[q>>2]|0)+8>>2]|0)+236>>2]|0)|0))break;if((c[(c[(c[p>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1)break a;if(!(a[(c[(c[p>>2]|0)+8>>2]|0)+156>>0]|0))break a;c[n>>2]=c[c[(c[(c[p>>2]|0)+8>>2]|0)+180>>2]>>2];if((c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1)break a;if(!(a[(c[(c[q>>2]|0)+8>>2]|0)+156>>0]|0))break a;c[o>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]>>2];c[s>>2]=(c[s>>2]|0)+1}a[h>>0]=1;t=a[h>>0]|0;i=g;return t|0}while(0);c[o>>2]=c[l>>2];b:do if((c[o>>2]|0)!=0?(c[(c[(c[j>>2]|0)+8>>2]|0)+172+4>>2]|0)==1:0){c[n>>2]=c[c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=2)break b;l=c[n>>2]|0;f=c[((c[c[n>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0;c[p>>2]=f;l=c[o>>2]|0;k=c[((c[c[o>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0;c[q>>2]=k;if((f|0)==(k|0))break b;if((c[r>>2]|0)!=((c[(c[(c[p>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[q>>2]|0)+8>>2]|0)+236>>2]|0)|0))break;if((c[(c[(c[p>>2]|0)+8>>2]|0)+172+4>>2]|0)!=1)break b;if(!(a[(c[(c[p>>2]|0)+8>>2]|0)+156>>0]|0))break b;c[n>>2]=c[c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]>>2];if((c[(c[(c[q>>2]|0)+8>>2]|0)+172+4>>2]|0)!=1)break b;if(!(a[(c[(c[q>>2]|0)+8>>2]|0)+156>>0]|0))break b;c[o>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]>>2];c[s>>2]=(c[s>>2]|0)+1}a[h>>0]=1;t=a[h>>0]|0;i=g;return t|0}while(0);a[h>>0]=0;t=a[h>>0]|0;i=g;return t|0}function og(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function pg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=~~((+h[a+8>>3]-+h[b+8>>3])*(+h[d>>3]-+h[b>>3])-(+h[d+8>>3]-+h[b+8>>3])*(+h[a>>3]-+h[b>>3]));i=e;return (c[f>>2]|0)>0|0}function qg(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0;m=i;i=i+352|0;n=m+208|0;o=m+192|0;p=m+336|0;q=m+328|0;r=m+324|0;s=m+320|0;t=m+316|0;u=m+312|0;v=m+308|0;w=m+304|0;x=m+300|0;y=m+296|0;z=m+292|0;A=m+288|0;B=m+284|0;C=m+280|0;D=m+276|0;E=m+272|0;F=m+268|0;G=m+264|0;H=m+260|0;I=m+256|0;J=m+252|0;K=m+248|0;L=m+244|0;M=m+176|0;N=m+240|0;O=m+236|0;P=m+232|0;Q=m+228|0;R=m+224|0;S=m+160|0;T=m+144|0;U=m+80|0;V=m+64|0;W=m+48|0;X=m+32|0;Y=m+16|0;Z=m;c[p>>2]=b;c[m+332>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=k;c[u>>2]=l;c[z>>2]=0;c[A>>2]=0;c[N>>2]=0;l=c[t>>2]|0;c[w>>2]=c[((c[c[t>>2]>>2]&3|0)==3?l:l+32|0)+28>>2];l=c[t>>2]|0;c[x>>2]=c[((c[c[t>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2];c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[s>>2]|0))break;c[y>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)+(c[G>>2]|0)<<2)>>2];if(c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0)c[z>>2]=(c[z>>2]|0)+1;if(!((d[(c[(c[y>>2]|0)+8>>2]|0)+16+28>>0]|0)==0?(d[(c[(c[y>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0))c[A>>2]=1;c[G>>2]=(c[G>>2]|0)+1}if(!(c[A>>2]|0)){A=c[w>>2]|0;l=c[x>>2]|0;t=c[q>>2]|0;k=c[r>>2]|0;j=c[s>>2]|0;g=c[u>>2]|0;if(!(c[z>>2]|0)){sg(A,l,t,k,j,g);i=m;return}else{xg(A,l,t,k,j,g,c[z>>2]|0);i=m;return}}c[O>>2]=bK(156)|0;c[B>>2]=yg(c[p>>2]|0,c[O>>2]|0)|0;c[C>>2]=FD(c[B>>2]|0,122540,1)|0;MC(c[C>>2]|0,175049,280,1)|0;AA(c[C>>2]|0,124202,124216)|0;c[L>>2]=~~+h[(c[(c[x>>2]|0)+8>>2]|0)+16>>3];c[K>>2]=~~+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3];if(c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1){c[P>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[P>>2]}c[D>>2]=zg(c[C>>2]|0,c[w>>2]|0,c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1)|0;c[E>>2]=zg(c[B>>2]|0,c[x>>2]|0,c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1)|0;c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[s>>2]|0))break;c[y>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)+(c[G>>2]|0)<<2)>>2];while(1){_=c[y>>2]|0;if(!(a[(c[(c[y>>2]|0)+8>>2]|0)+112>>0]|0))break;c[y>>2]=c[(c[_+8>>2]|0)+116>>2]}C=c[y>>2]|0;P=c[B>>2]|0;if((c[((c[_>>2]&3|0)==3?C:C+32|0)+28>>2]|0)==(c[w>>2]|0))c[F>>2]=Ag(P,c[D>>2]|0,c[E>>2]|0,c[y>>2]|0)|0;else c[F>>2]=Ag(P,c[E>>2]|0,c[D>>2]|0,c[y>>2]|0)|0;c[(c[(c[y>>2]|0)+8>>2]|0)+120>>2]=c[F>>2];if(((c[N>>2]|0)==0?(a[(c[(c[y>>2]|0)+8>>2]|0)+16+28>>0]|0)==0:0)?(a[(c[(c[y>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0){c[N>>2]=c[F>>2];c[(c[(c[N>>2]|0)+8>>2]|0)+120>>2]=c[y>>2]}c[G>>2]=(c[G>>2]|0)+1}if(!(c[N>>2]|0))c[N>>2]=VA(c[B>>2]|0,c[D>>2]|0,c[E>>2]|0,0,1)|0;BA(c[N>>2]|0,c[13851]|0,122544)|0;c[(c[(c[B>>2]|0)+8>>2]|0)+144>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+144>>2];c[(c[(c[B>>2]|0)+8>>2]|0)+188>>2]=c[B>>2];QO(c[B>>2]|0,c[u>>2]|0);rf(c[B>>2]|0);Ui(c[B>>2]|0,0);bh(c[B>>2]|0,0);fi(c[B>>2]|0,0);c[I>>2]=~~((+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3]+ +h[(c[(c[x>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[x>>2]|0)+8>>2]|0)+88>>3])/2.0);c[J>>2]=~~((+h[(c[(c[D>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[E>>2]|0)+8>>2]|0)+16>>3])/2.0);c[v>>2]=c[(c[(c[B>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[v>>2]|0))break;do if((c[v>>2]|0)!=(c[D>>2]|0))if((c[v>>2]|0)==(c[E>>2]|0)){h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]=+(c[K>>2]|0);h[(c[(c[v>>2]|0)+8>>2]|0)+16>>3]=+(c[J>>2]|0);break}else{h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]=+(c[I>>2]|0);break}else{h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]=+(c[L>>2]|0);h[(c[(c[v>>2]|0)+8>>2]|0)+16>>3]=+(c[J>>2]|0)}while(0);c[v>>2]=c[(c[(c[v>>2]|0)+8>>2]|0)+164>>2]}Oj(c[B>>2]|0);Mf(c[B>>2]|0,0);nL(c[B>>2]|0);$=+h[(c[(c[w>>2]|0)+8>>2]|0)+16>>3];v=(c[(c[D>>2]|0)+8>>2]|0)+16|0;if(c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1){h[M>>3]=$-+h[v+8>>3];h[M+8>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[D>>2]|0)+8>>2]|0)+16>>3]}else{h[M>>3]=$-+h[v>>3];h[M+8>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[D>>2]|0)+8>>2]|0)+16+8>>3]}c[G>>2]=0;while(1){if((c[G>>2]|0)>=(c[s>>2]|0))break;c[y>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)+(c[G>>2]|0)<<2)>>2];while(1){aa=c[(c[y>>2]|0)+8>>2]|0;if(!(a[(c[(c[y>>2]|0)+8>>2]|0)+112>>0]|0))break;c[y>>2]=c[aa+116>>2]}c[F>>2]=c[aa+120>>2];if(!((c[F>>2]|0)==(c[N>>2]|0)&(((c[(c[(c[F>>2]|0)+8>>2]|0)+120>>2]|0)!=0^1)&1))){c[Q>>2]=c[c[(c[(c[F>>2]|0)+8>>2]|0)+8>>2]>>2];c[R>>2]=iN(c[y>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c[(c[R>>2]|0)+8>>2]=c[(c[Q>>2]|0)+8>>2];D=(c[R>>2]|0)+16|0;w=(c[Q>>2]|0)+16|0;v=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(S,o,n,v);c[D>>2]=c[S>>2];c[D+4>>2]=c[S+4>>2];c[D+8>>2]=c[S+8>>2];c[D+12>>2]=c[S+12>>2];c[(c[R>>2]|0)+12>>2]=c[(c[Q>>2]|0)+12>>2];D=(c[R>>2]|0)+32|0;v=(c[Q>>2]|0)+32|0;w=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[v>>2];c[o+4>>2]=c[v+4>>2];c[o+8>>2]=c[v+8>>2];c[o+12>>2]=c[v+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(T,o,n,w);c[D>>2]=c[T>>2];c[D+4>>2]=c[T+4>>2];c[D+8>>2]=c[T+8>>2];c[D+12>>2]=c[T+12>>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[(c[Q>>2]|0)+4>>2]|0))break;D=(c[c[R>>2]>>2]|0)+(c[H>>2]<<4)|0;w=(c[c[Q>>2]>>2]|0)+(c[H>>2]<<4)|0;v=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(V,o,n,v);c[D>>2]=c[V>>2];c[D+4>>2]=c[V+4>>2];c[D+8>>2]=c[V+8>>2];c[D+12>>2]=c[V+12>>2];c[U>>2]=c[D>>2];c[U+4>>2]=c[D+4>>2];c[U+8>>2]=c[D+8>>2];c[U+12>>2]=c[D+12>>2];c[H>>2]=(c[H>>2]|0)+1;if((c[H>>2]|0)>=(c[(c[Q>>2]|0)+4>>2]|0))break;D=U+16|0;v=(c[c[R>>2]>>2]|0)+(c[H>>2]<<4)|0;w=(c[c[Q>>2]>>2]|0)+(c[H>>2]<<4)|0;J=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(W,o,n,J);c[v>>2]=c[W>>2];c[v+4>>2]=c[W+4>>2];c[v+8>>2]=c[W+8>>2];c[v+12>>2]=c[W+12>>2];c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];c[D+8>>2]=c[v+8>>2];c[D+12>>2]=c[v+12>>2];c[H>>2]=(c[H>>2]|0)+1;v=U+32|0;D=(c[c[R>>2]>>2]|0)+(c[H>>2]<<4)|0;J=(c[c[Q>>2]>>2]|0)+(c[H>>2]<<4)|0;w=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[J>>2];c[o+4>>2]=c[J+4>>2];c[o+8>>2]=c[J+8>>2];c[o+12>>2]=c[J+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(X,o,n,w);c[D>>2]=c[X>>2];c[D+4>>2]=c[X+4>>2];c[D+8>>2]=c[X+8>>2];c[D+12>>2]=c[X+12>>2];c[v>>2]=c[D>>2];c[v+4>>2]=c[D+4>>2];c[v+8>>2]=c[D+8>>2];c[v+12>>2]=c[D+12>>2];c[H>>2]=(c[H>>2]|0)+1;D=U+48|0;v=(c[c[Q>>2]>>2]|0)+(c[H>>2]<<4)|0;w=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[v>>2];c[o+4>>2]=c[v+4>>2];c[o+8>>2]=c[v+8>>2];c[o+12>>2]=c[v+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(Y,o,n,w);c[D>>2]=c[Y>>2];c[D+4>>2]=c[Y+4>>2];c[D+8>>2]=c[Y+8>>2];c[D+12>>2]=c[Y+12>>2];DH((c[(c[p>>2]|0)+8>>2]|0)+16|0,U)}if(c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0){D=(c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;w=(c[(c[(c[F>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;v=c[(c[(c[p>>2]|0)+8>>2]|0)+116>>2]&1;c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[n>>2]=c[M>>2];c[n+4>>2]=c[M+4>>2];c[n+8>>2]=c[M+8>>2];c[n+12>>2]=c[M+12>>2];Bg(Z,o,n,v);c[D>>2]=c[Z>>2];c[D+4>>2]=c[Z+4>>2];c[D+8>>2]=c[Z+8>>2];c[D+12>>2]=c[Z+12>>2];a[(c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;AO(c[p>>2]|0,c[(c[(c[y>>2]|0)+8>>2]|0)+96>>2]|0)}}c[G>>2]=(c[G>>2]|0)+1}Cg(c[B>>2]|0,c[O>>2]|0);i=m;return}function rg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;j=i;i=i+1728|0;k=j+1632|0;l=j+1616|0;m=j+1716|0;n=j+1712|0;o=j+1708|0;p=j+1704|0;q=j+1700|0;r=j+1696|0;s=j+1692|0;t=j+1688|0;u=j+1684|0;v=j+920|0;w=j+224|0;x=j+192|0;y=j+1680|0;z=j+1676|0;A=j+1672|0;B=j+1668|0;C=j+1664|0;D=j+80|0;E=j+64|0;F=j+48|0;G=j+32|0;H=j+16|0;I=j;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;g=c[p>>2]|0;c[r>>2]=c[((c[c[p>>2]>>2]&3|0)==3?g:g+32|0)+28>>2];g=c[p>>2]|0;c[s>>2]=c[((c[c[p>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2];c[C>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2];while(1){J=c[C>>2]|0;if(!(c[(c[(c[C>>2]|0)+8>>2]|0)+172>>2]|0))break;c[C>>2]=c[(c[J+8>>2]|0)+172>>2]}g=c[C>>2]|0;c[t>>2]=c[((c[J>>2]&3|0)==3?g:g+32|0)+28>>2];g=(c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;J=(c[(c[t>>2]|0)+8>>2]|0)+16|0;c[g>>2]=c[J>>2];c[g+4>>2]=c[J+4>>2];c[g+8>>2]=c[J+8>>2];c[g+12>>2]=c[J+12>>2];a[(c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;if((c[q>>2]|0)!=2){h[x>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[t>>2]|0)+8>>2]|0)+88>>3];h[x+16>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[t>>2]|0)+8>>2]|0)+96>>3];h[x+16+8>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[t>>2]|0)+8>>2]|0)+80>>3]/2.0;c[B>>2]=~~(+h[(c[(c[t>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[m>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[r>>2]|0)+8>>2]|0)+232>>2]<<6)+16>>3]-+h[(c[(c[r>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[m>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[r>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3]);c[B>>2]=~~(+(c[B>>2]|0)/6.0);h[x+8>>3]=+h[x+16+8>>3]-(5.0>+(c[B>>2]|0)?5.0:+(c[B>>2]|0));c[y>>2]=0;ug(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[r>>2]|0,c[p>>2]|0,v,1);ug(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[s>>2]|0,c[p>>2]|0,w,0);h[1104+(c[y>>2]<<5)>>3]=+h[v+56+((c[v+52>>2]|0)-1<<5)>>3];h[1104+(c[y>>2]<<5)+8>>3]=+h[v+56+((c[v+52>>2]|0)-1<<5)+16+8>>3];h[1104+(c[y>>2]<<5)+16>>3]=+h[x>>3];h[1104+(c[y>>2]<<5)+16+8>>3]=+h[x+8>>3];c[y>>2]=(c[y>>2]|0)+1;h[1104+(c[y>>2]<<5)>>3]=+h[v+56+((c[v+52>>2]|0)-1<<5)>>3];h[1104+(c[y>>2]<<5)+8>>3]=+h[x+8>>3];h[1104+(c[y>>2]<<5)+16>>3]=+h[w+56+((c[w+52>>2]|0)-1<<5)+16>>3];h[1104+(c[y>>2]<<5)+16+8>>3]=+h[x+16+8>>3];c[y>>2]=(c[y>>2]|0)+1;h[1104+(c[y>>2]<<5)>>3]=+h[x+16>>3];h[1104+(c[y>>2]<<5)+16+8>>3]=+h[x+8>>3];h[1104+(c[y>>2]<<5)+8>>3]=+h[w+56+((c[w+52>>2]|0)-1<<5)+16+8>>3];h[1104+(c[y>>2]<<5)+16>>3]=+h[w+56+((c[w+52>>2]|0)-1<<5)+16>>3];c[y>>2]=(c[y>>2]|0)+1;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[v+52>>2]|0))break;x=c[o>>2]|0;n=v+56+(c[z>>2]<<5)|0;c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[k+16>>2]=c[n+16>>2];c[k+20>>2]=c[n+20>>2];c[k+24>>2]=c[n+24>>2];c[k+28>>2]=c[n+28>>2];kN(x,k);c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[y>>2]|0))break;v=c[o>>2]|0;x=1104+(c[z>>2]<<5)|0;c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[k+12>>2]=c[x+12>>2];c[k+16>>2]=c[x+16>>2];c[k+20>>2]=c[x+20>>2];c[k+24>>2]=c[x+24>>2];c[k+28>>2]=c[x+28>>2];kN(v,k);c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=(c[w+52>>2]|0)-1;while(1){if((c[z>>2]|0)<0)break;y=c[o>>2]|0;v=w+56+(c[z>>2]<<5)|0;c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[k+12>>2]=c[v+12>>2];c[k+16>>2]=c[v+16>>2];c[k+20>>2]=c[v+20>>2];c[k+24>>2]=c[v+24>>2];c[k+28>>2]=c[v+28>>2];kN(y,k);c[z>>2]=(c[z>>2]|0)+-1}z=c[o>>2]|0;if((c[q>>2]|0)==10)c[u>>2]=RL(z,A)|0;else c[u>>2]=SL(z,A)|0;if(!(c[A>>2]|0)){i=j;return}}else{z=(c[(c[r>>2]|0)+8>>2]|0)+16|0;r=(c[(c[p>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[z>>2];c[l+4>>2]=c[z+4>>2];c[l+8>>2]=c[z+8>>2];c[l+12>>2]=c[z+12>>2];c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];og(H,l,k);c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[E+8>>2]=c[H+8>>2];c[E+12>>2]=c[H+12>>2];H=(c[(c[s>>2]|0)+8>>2]|0)+16|0;s=(c[(c[p>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[H>>2];c[l+4>>2]=c[H+4>>2];c[l+8>>2]=c[H+8>>2];c[l+12>>2]=c[H+12>>2];c[k>>2]=c[s>>2];c[k+4>>2]=c[s+4>>2];c[k+8>>2]=c[s+8>>2];c[k+12>>2]=c[s+12>>2];og(I,l,k);c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];c[F+8>>2]=c[I+8>>2];c[F+12>>2]=c[I+12>>2];I=(c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];c[G+8>>2]=c[I+8>>2];c[G+12>>2]=c[I+12>>2];I=G+8|0;h[I>>3]=+h[I>>3]-+h[(c[(c[(c[p>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]/2.0;I=D+16|0;c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];c[D+8>>2]=c[E+8>>2];c[D+12>>2]=c[E+12>>2];c[I>>2]=c[D>>2];c[I+4>>2]=c[D+4>>2];c[I+8>>2]=c[D+8>>2];c[I+12>>2]=c[D+12>>2];I=D+32|0;E=D+48|0;k=D+64|0;c[k>>2]=c[G>>2];c[k+4>>2]=c[G+4>>2];c[k+8>>2]=c[G+8>>2];c[k+12>>2]=c[G+12>>2];c[E>>2]=c[k>>2];c[E+4>>2]=c[k+4>>2];c[E+8>>2]=c[k+8>>2];c[E+12>>2]=c[k+12>>2];c[I>>2]=c[E>>2];c[I+4>>2]=c[E+4>>2];c[I+8>>2]=c[E+8>>2];c[I+12>>2]=c[E+12>>2];E=D+80|0;I=D+96|0;c[I>>2]=c[F>>2];c[I+4>>2]=c[F+4>>2];c[I+8>>2]=c[F+8>>2];c[I+12>>2]=c[F+12>>2];c[E>>2]=c[I>>2];c[E+4>>2]=c[I+4>>2];c[E+8>>2]=c[I+8>>2];c[E+12>>2]=c[I+12>>2];c[u>>2]=D;c[A>>2]=7}D=c[p>>2]|0;jN(c[p>>2]|0,c[((c[c[p>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0,c[u>>2]|0,c[A>>2]|0,50160);i=j;return}function sg(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0.0;j=i;i=i+448|0;k=j+384|0;l=j+368|0;m=j+432|0;n=j+428|0;o=j+424|0;p=j+420|0;q=j+416|0;r=j+412|0;s=j+408|0;t=j+208|0;u=j+192|0;v=j+176|0;w=j+404|0;x=j+400|0;y=j+168|0;z=j+160|0;A=j+144|0;B=j+128|0;C=j+112|0;D=j+96|0;E=j+80|0;F=j+64|0;G=j+48|0;H=j+32|0;I=j+16|0;J=j;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=c[(c[o>>2]|0)+(c[p>>2]<<2)>>2];g=(c[(c[m>>2]|0)+8>>2]|0)+16|0;f=(c[(c[s>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];og(A,l,k);c[u>>2]=c[A>>2];c[u+4>>2]=c[A+4>>2];c[u+8>>2]=c[A+8>>2];c[u+12>>2]=c[A+12>>2];A=(c[(c[n>>2]|0)+8>>2]|0)+16|0;n=(c[(c[s>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];c[l+8>>2]=c[A+8>>2];c[l+12>>2]=c[A+12>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];og(B,l,k);c[v>>2]=c[B>>2];c[v+4>>2]=c[B+4>>2];c[v+8>>2]=c[B+8>>2];c[v+12>>2]=c[B+12>>2];if((c[q>>2]|0)>1)K=+h[(c[(c[m>>2]|0)+8>>2]|0)+80>>3]/+((c[q>>2]|0)-1|0);else K=0.0;h[y>>3]=K;if((c[q>>2]|0)>1)L=+h[(c[(c[m>>2]|0)+8>>2]|0)+80>>3]/2.0;else L=0.0;h[z>>3]=+h[u+8>>3]-L;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[q>>2]|0))break;c[s>>2]=c[(c[o>>2]|0)+((c[p>>2]|0)+(c[w>>2]|0)<<2)>>2];c[x>>2]=0;m=(c[r>>2]|0)==10|(c[r>>2]|0)==2;B=c[x>>2]|0;c[x>>2]=B+1;k=t+(B<<4)|0;c[k>>2]=c[u>>2];c[k+4>>2]=c[u+4>>2];c[k+8>>2]=c[u+8>>2];c[k+12>>2]=c[u+12>>2];k=c[x>>2]|0;c[x>>2]=k+1;B=t+(k<<4)|0;if(m){wg(C,(+h[u>>3]*2.0+ +h[v>>3])/3.0,+h[z>>3]);c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];c[B+8>>2]=c[C+8>>2];c[B+12>>2]=c[C+12>>2];m=c[x>>2]|0;c[x>>2]=m+1;k=t+(m<<4)|0;wg(D,(+h[v>>3]*2.0+ +h[u>>3])/3.0,+h[z>>3]);c[k>>2]=c[D>>2];c[k+4>>2]=c[D+4>>2];c[k+8>>2]=c[D+8>>2];c[k+12>>2]=c[D+12>>2];k=c[x>>2]|0;c[x>>2]=k+1;m=t+(k<<4)|0;c[m>>2]=c[v>>2];c[m+4>>2]=c[v+4>>2];c[m+8>>2]=c[v+8>>2];c[m+12>>2]=c[v+12>>2]}else{c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];B=c[x>>2]|0;c[x>>2]=B+1;m=t+(B<<4)|0;wg(E,(+h[u>>3]*2.0+ +h[v>>3])/3.0,+h[z>>3]);c[m>>2]=c[E>>2];c[m+4>>2]=c[E+4>>2];c[m+8>>2]=c[E+8>>2];c[m+12>>2]=c[E+12>>2];m=c[x>>2]|0;c[x>>2]=m+1;B=t+(m<<4)|0;wg(F,(+h[u>>3]*2.0+ +h[v>>3])/3.0,+h[z>>3]);c[B>>2]=c[F>>2];c[B+4>>2]=c[F+4>>2];c[B+8>>2]=c[F+8>>2];c[B+12>>2]=c[F+12>>2];B=c[x>>2]|0;c[x>>2]=B+1;m=t+(B<<4)|0;wg(G,(+h[u>>3]*2.0+ +h[v>>3])/3.0,+h[z>>3]);c[m>>2]=c[G>>2];c[m+4>>2]=c[G+4>>2];c[m+8>>2]=c[G+8>>2];c[m+12>>2]=c[G+12>>2];m=c[x>>2]|0;c[x>>2]=m+1;B=t+(m<<4)|0;wg(H,(+h[v>>3]*2.0+ +h[u>>3])/3.0,+h[z>>3]);c[B>>2]=c[H>>2];c[B+4>>2]=c[H+4>>2];c[B+8>>2]=c[H+8>>2];c[B+12>>2]=c[H+12>>2];B=c[x>>2]|0;c[x>>2]=B+1;m=t+(B<<4)|0;wg(I,(+h[v>>3]*2.0+ +h[u>>3])/3.0,+h[z>>3]);c[m>>2]=c[I>>2];c[m+4>>2]=c[I+4>>2];c[m+8>>2]=c[I+8>>2];c[m+12>>2]=c[I+12>>2];m=c[x>>2]|0;c[x>>2]=m+1;B=t+(m<<4)|0;wg(J,(+h[v>>3]*2.0+ +h[u>>3])/3.0,+h[z>>3]);c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2];B=c[x>>2]|0;c[x>>2]=B+1;m=t+(B<<4)|0;c[m>>2]=c[v>>2];c[m+4>>2]=c[v+4>>2];c[m+8>>2]=c[v+8>>2];c[m+12>>2]=c[v+12>>2];m=c[x>>2]|0;c[x>>2]=m+1;B=t+(m<<4)|0;c[B>>2]=c[v>>2];c[B+4>>2]=c[v+4>>2];c[B+8>>2]=c[v+8>>2];c[B+12>>2]=c[v+12>>2]}h[z>>3]=+h[z>>3]+ +h[y>>3];B=c[s>>2]|0;jN(c[s>>2]|0,c[((c[c[s>>2]>>2]&3|0)==2?B:B+-32|0)+28>>2]|0,t,c[x>>2]|0,50160);c[w>>2]=(c[w>>2]|0)+1}i=j;return}function tg(a,d,e,f,g,j,k,l){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;m=i;i=i+1552|0;n=m+1448|0;o=m+1544|0;p=m+1540|0;q=m+1536|0;r=m+1532|0;s=m+1528|0;t=m+1524|0;u=m+1520|0;v=m+1516|0;w=m+1512|0;x=m+1508|0;y=m+1504|0;z=m+1500|0;A=m+1496|0;B=m+1440|0;C=m+1432|0;D=m+1424|0;E=m+1492|0;F=m+1488|0;G=m+1484|0;H=m+728|0;I=m+32|0;J=m+1480|0;K=m;c[o>>2]=a;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=j;c[u>>2]=k;c[v>>2]=l;l=c[u>>2]|0;c[w>>2]=c[((c[c[u>>2]>>2]&3|0)==3?l:l+32|0)+28>>2];l=c[u>>2]|0;c[x>>2]=c[((c[c[u>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2];c[A>>2]=c[(c[(c[w>>2]|0)+8>>2]|0)+232>>2];l=c[(c[o>>2]|0)+8>>2]|0;if((c[A>>2]|0)<(b[(c[(c[o>>2]|0)+8>>2]|0)+238>>1]|0)){c[E>>2]=(c[l+196>>2]|0)+((c[A>>2]|0)+1<<6);h[D>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+196>>2]|0)+(c[A>>2]<<6)+32>>3]-(+h[(c[(c[c[(c[E>>2]|0)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[E>>2]|0)+40>>3])}else h[D>>3]=+(c[l+252>>2]|0);h[B>>3]=+(c[(c[p>>2]|0)+12>>2]|0)/+((c[t>>2]|0)+1|0);h[C>>3]=+h[D>>3]/+((c[t>>2]|0)+1|0);vg(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[w>>2]|0,c[u>>2]|0,H,1);vg(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0,c[u>>2]|0,I,0);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[t>>2]|0)){L=20;break}c[u>>2]=c[(c[r>>2]|0)+((c[s>>2]|0)+(c[z>>2]|0)<<2)>>2];c[J>>2]=0;x=H+56+((c[H+52>>2]|0)-1<<5)|0;c[K>>2]=c[x>>2];c[K+4>>2]=c[x+4>>2];c[K+8>>2]=c[x+8>>2];c[K+12>>2]=c[x+12>>2];c[K+16>>2]=c[x+16>>2];c[K+20>>2]=c[x+20>>2];c[K+24>>2]=c[x+24>>2];c[K+28>>2]=c[x+28>>2];h[1104+(c[J>>2]<<5)>>3]=+h[K>>3];h[1104+(c[J>>2]<<5)+16+8>>3]=+h[K+8>>3];h[1104+(c[J>>2]<<5)+16>>3]=+h[K+16>>3]+ +((c[z>>2]|0)+1|0)*+h[B>>3];h[1104+(c[J>>2]<<5)+8>>3]=+h[K+8>>3]-+((c[z>>2]|0)+1|0)*+h[C>>3];c[J>>2]=(c[J>>2]|0)+1;h[1104+(c[J>>2]<<5)>>3]=+h[H+56+((c[H+52>>2]|0)-1<<5)>>3];h[1104+(c[J>>2]<<5)+16+8>>3]=+h[1104+((c[J>>2]|0)-1<<5)+8>>3];h[1104+(c[J>>2]<<5)+16>>3]=+h[I+56+((c[I+52>>2]|0)-1<<5)+16>>3];h[1104+(c[J>>2]<<5)+8>>3]=+h[1104+(c[J>>2]<<5)+16+8>>3]-+h[C>>3];c[J>>2]=(c[J>>2]|0)+1;x=I+56+((c[I+52>>2]|0)-1<<5)|0;c[K>>2]=c[x>>2];c[K+4>>2]=c[x+4>>2];c[K+8>>2]=c[x+8>>2];c[K+12>>2]=c[x+12>>2];c[K+16>>2]=c[x+16>>2];c[K+20>>2]=c[x+20>>2];c[K+24>>2]=c[x+24>>2];c[K+28>>2]=c[x+28>>2];h[1104+(c[J>>2]<<5)+16>>3]=+h[K+16>>3];h[1104+(c[J>>2]<<5)+16+8>>3]=+h[K+8>>3];h[1104+(c[J>>2]<<5)>>3]=+h[K>>3]-+((c[z>>2]|0)+1|0)*+h[B>>3];h[1104+(c[J>>2]<<5)+8>>3]=+h[1104+((c[J>>2]|0)-1<<5)+16+8>>3];c[J>>2]=(c[J>>2]|0)+1;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[H+52>>2]|0))break;x=c[q>>2]|0;p=H+56+(c[y>>2]<<5)|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];kN(x,n);c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[J>>2]|0))break;x=c[q>>2]|0;p=1104+(c[y>>2]<<5)|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];kN(x,n);c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=(c[I+52>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;x=c[q>>2]|0;p=I+56+(c[y>>2]<<5)|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];kN(x,n);c[y>>2]=(c[y>>2]|0)+-1}x=c[q>>2]|0;if(c[v>>2]|0)c[G>>2]=RL(x,F)|0;else c[G>>2]=SL(x,F)|0;if(!(c[F>>2]|0)){L=20;break}x=c[u>>2]|0;jN(c[u>>2]|0,c[((c[c[u>>2]>>2]&3|0)==2?x:x+-32|0)+28>>2]|0,c[G>>2]|0,c[F>>2]|0,50160);c[(c[q>>2]|0)+80>>2]=0;c[z>>2]=(c[z>>2]|0)+1}if((L|0)==20){i=m;return}}function ug(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;l=i;i=i+160|0;m=l+96|0;n=l+148|0;o=l+144|0;p=l+140|0;q=l+136|0;r=l+132|0;s=l+128|0;t=l+152|0;u=l+64|0;v=l+32|0;w=l;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;a[t>>0]=k;k=c[s>>2]|0;Zf(v,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,0,c[r>>2]|0);c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[k+12>>2]=c[v+12>>2];c[k+16>>2]=c[v+16>>2];c[k+20>>2]=c[v+20>>2];c[k+24>>2]=c[v+24>>2];c[k+28>>2]=c[v+28>>2];c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];c[u+16>>2]=c[k+16>>2];c[u+20>>2]=c[k+20>>2];c[u+24>>2]=c[k+24>>2];c[u+28>>2]=c[k+28>>2];c[(c[s>>2]|0)+48>>2]=4;k=c[p>>2]|0;p=c[r>>2]|0;r=c[s>>2]|0;if(a[t>>0]|0)lN(k,p,2,r,0);else mN(k,p,2,r,0);h[u+16+8>>3]=+h[(c[s>>2]|0)+56+((c[(c[s>>2]|0)+52>>2]|0)-1<<5)+16+8>>3];h[u+8>>3]=+h[(c[s>>2]|0)+56+((c[(c[s>>2]|0)+52>>2]|0)-1<<5)+8>>3];x=+h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3];c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[m+16>>2]=c[u+16>>2];c[m+20>>2]=c[u+20>>2];c[m+24>>2]=c[u+24>>2];c[m+28>>2]=c[u+28>>2];$f(w,m,4,x);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];c[u+16>>2]=c[w+16>>2];c[u+20>>2]=c[w+20>>2];c[u+24>>2]=c[w+24>>2];c[u+28>>2]=c[w+28>>2];if(!(+h[u>>3]<+h[u+16>>3])){i=l;return}if(!(+h[u+8>>3]<+h[u+16+8>>3])){i=l;return}w=(c[s>>2]|0)+52|0;m=c[w>>2]|0;c[w>>2]=m+1;w=(c[s>>2]|0)+56+(m<<5)|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[w+12>>2]=c[u+12>>2];c[w+16>>2]=c[u+16>>2];c[w+20>>2]=c[u+20>>2];c[w+24>>2]=c[u+24>>2];c[w+28>>2]=c[u+28>>2];i=l;return}function vg(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;l=i;i=i+160|0;m=l+96|0;n=l+148|0;o=l+144|0;p=l+140|0;q=l+136|0;r=l+132|0;s=l+128|0;t=l+152|0;u=l+64|0;v=l+32|0;w=l;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;a[t>>0]=k;k=c[s>>2]|0;Zf(v,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,0,c[r>>2]|0);c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[k+12>>2]=c[v+12>>2];c[k+16>>2]=c[v+16>>2];c[k+20>>2]=c[v+20>>2];c[k+24>>2]=c[v+24>>2];c[k+28>>2]=c[v+28>>2];c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];c[u+16>>2]=c[k+16>>2];c[u+20>>2]=c[k+20>>2];c[u+24>>2]=c[k+24>>2];c[u+28>>2]=c[k+28>>2];c[(c[s>>2]|0)+48>>2]=1;k=c[p>>2]|0;p=c[r>>2]|0;r=c[s>>2]|0;if(a[t>>0]|0)lN(k,p,2,r,0);else mN(k,p,2,r,0);h[u+16+8>>3]=+h[(c[s>>2]|0)+56+((c[(c[s>>2]|0)+52>>2]|0)-1<<5)+16+8>>3];h[u+8>>3]=+h[(c[s>>2]|0)+56+((c[(c[s>>2]|0)+52>>2]|0)-1<<5)+8>>3];x=+h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+232>>2]<<6)+24>>3];c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[m+16>>2]=c[u+16>>2];c[m+20>>2]=c[u+20>>2];c[m+24>>2]=c[u+24>>2];c[m+28>>2]=c[u+28>>2];$f(w,m,1,x);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];c[u+16>>2]=c[w+16>>2];c[u+20>>2]=c[w+20>>2];c[u+24>>2]=c[w+24>>2];c[u+28>>2]=c[w+28>>2];if(!(+h[u>>3]<+h[u+16>>3])){i=l;return}if(!(+h[u+8>>3]<+h[u+16+8>>3])){i=l;return}w=(c[s>>2]|0)+52|0;m=c[w>>2]|0;c[w>>2]=m+1;w=(c[s>>2]|0)+56+(m<<5)|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[w+12>>2]=c[u+12>>2];c[w+16>>2]=c[u+16>>2];c[w+20>>2]=c[u+20>>2];c[w+24>>2]=c[u+24>>2];c[w+28>>2]=c[u+28>>2];i=l;return}function wg(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function xg(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;l=i;i=i+416|0;m=l+336|0;n=l+320|0;o=l+304|0;p=l+412|0;q=l+408|0;r=l+404|0;s=l+400|0;t=l+396|0;u=l+392|0;v=l+388|0;w=l+384|0;x=l+376|0;y=l+368|0;z=l+364|0;A=l+144|0;B=l+128|0;C=l+112|0;D=l+360|0;E=l+356|0;F=l+104|0;G=l+96|0;H=l+88|0;I=l+80|0;J=l+72|0;K=l+64|0;L=l+56|0;M=l+48|0;N=l+40|0;O=l+32|0;P=l+352|0;Q=l+16|0;R=l;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[z>>2]=c[(c[r>>2]|0)+(c[s>>2]<<2)>>2];c[P>>2]=bK(c[t>>2]<<2)|0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[t>>2]|0))break;c[(c[P>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[r>>2]|0)+((c[s>>2]|0)+(c[D>>2]|0)<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}w3(c[P>>2]|0,c[t>>2]|0,4,59);s=(c[(c[p>>2]|0)+8>>2]|0)+16|0;r=(c[(c[z>>2]|0)+8>>2]|0)+16|0;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];og(Q,n,m);c[B>>2]=c[Q>>2];c[B+4>>2]=c[Q+4>>2];c[B+8>>2]=c[Q+8>>2];c[B+12>>2]=c[Q+12>>2];Q=(c[(c[q>>2]|0)+8>>2]|0)+16|0;r=(c[(c[z>>2]|0)+8>>2]|0)+56|0;c[n>>2]=c[Q>>2];c[n+4>>2]=c[Q+4>>2];c[n+8>>2]=c[Q+8>>2];c[n+12>>2]=c[Q+12>>2];c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];og(R,n,m);c[C>>2]=c[R>>2];c[C+4>>2]=c[R+4>>2];c[C+8>>2]=c[R+8>>2];c[C+12>>2]=c[R+12>>2];h[F>>3]=+h[B>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+96>>3];h[G>>3]=+h[C>>3]-+h[(c[(c[q>>2]|0)+8>>2]|0)+88>>3];h[H>>3]=(+h[F>>3]+ +h[G>>3])/2.0;c[z>>2]=c[c[P>>2]>>2];c[E>>2]=0;q=c[E>>2]|0;c[E>>2]=q+1;p=A+(q<<4)|0;c[p>>2]=c[B>>2];c[p+4>>2]=c[B+4>>2];c[p+8>>2]=c[B+8>>2];c[p+12>>2]=c[B+12>>2];p=c[E>>2]|0;c[E>>2]=p+1;q=A+(p<<4)|0;c[q>>2]=c[B>>2];c[q+4>>2]=c[B+4>>2];c[q+8>>2]=c[B+8>>2];c[q+12>>2]=c[B+12>>2];q=c[E>>2]|0;c[E>>2]=q+1;p=A+(q<<4)|0;c[p>>2]=c[C>>2];c[p+4>>2]=c[C+4>>2];c[p+8>>2]=c[C+8>>2];c[p+12>>2]=c[C+12>>2];p=c[E>>2]|0;c[E>>2]=p+1;q=A+(p<<4)|0;c[q>>2]=c[C>>2];c[q+4>>2]=c[C+4>>2];c[q+8>>2]=c[C+8>>2];c[q+12>>2]=c[C+12>>2];q=c[z>>2]|0;jN(c[z>>2]|0,c[((c[c[z>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0,A,c[E>>2]|0,50160);h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[H>>3];h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[B+8>>3]+(+h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]+6.0)/2.0;a[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;h[J>>3]=+h[B+8>>3]+3.0;h[K>>3]=+h[J>>3]+ +h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3];h[L>>3]=+h[H>>3]-+h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]/2.0;h[M>>3]=+h[H>>3]+ +h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]/2.0;c[D>>2]=1;while(1){if((c[D>>2]|0)>=(c[v>>2]|0))break;c[z>>2]=c[(c[P>>2]|0)+(c[D>>2]<<2)>>2];if((c[D>>2]|0)%2|0){if((c[D>>2]|0)==1){h[N>>3]=+h[H>>3]-+h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]/2.0;h[O>>3]=+h[H>>3]+ +h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]/2.0}h[J>>3]=+h[J>>3]-(+h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]+6.0);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2];h[A+16>>3]=+h[B>>3];h[A+16+8>>3]=+h[J>>3]-6.0;h[A+32>>3]=+h[C>>3];h[A+32+8>>3]=+h[A+16+8>>3];E=A+48|0;c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2];h[A+64>>3]=+h[O>>3];h[A+64+8>>3]=+h[C+8>>3];h[A+80>>3]=+h[O>>3];h[A+80+8>>3]=+h[J>>3];h[A+96>>3]=+h[N>>3];h[A+96+8>>3]=+h[J>>3];h[A+112>>3]=+h[N>>3];h[A+112+8>>3]=+h[B+8>>3];h[I>>3]=+h[J>>3]+ +h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]/2.0}else{c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2];h[A+16>>3]=+h[L>>3];h[A+16+8>>3]=+h[B+8>>3];h[A+32>>3]=+h[L>>3];h[A+32+8>>3]=+h[K>>3];h[A+48>>3]=+h[M>>3];h[A+48+8>>3]=+h[K>>3];h[A+64>>3]=+h[M>>3];h[A+64+8>>3]=+h[C+8>>3];h[A+80>>3]=+h[C>>3];h[A+80+8>>3]=+h[C+8>>3];h[A+96>>3]=+h[C>>3];h[A+96+8>>3]=+h[K>>3]+6.0;h[A+112>>3]=+h[B>>3];h[A+112+8>>3]=+h[K>>3]+6.0;h[I>>3]=+h[K>>3]+ +h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]/2.0+6.0;h[K>>3]=+h[K>>3]+(+h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]+6.0)}c[x+4>>2]=8;c[x>>2]=A;E=(c[u>>2]|0)==6&1;c[o>>2]=c[B>>2];c[o+4>>2]=c[B+4>>2];c[o+8>>2]=c[B+8>>2];c[o+12>>2]=c[B+12>>2];c[n>>2]=c[C>>2];c[n+4>>2]=c[C+4>>2];c[n+8>>2]=c[C+8>>2];c[n+12>>2]=c[C+12>>2];c[m>>2]=c[x>>2];c[m+4>>2]=c[x+4>>2];c[w>>2]=OL(o,n,m,y,E)|0;if(!(c[y>>2]|0)){S=22;break}h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[H>>3];h[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[I>>3];a[(c[(c[(c[z>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;E=c[z>>2]|0;jN(c[z>>2]|0,c[((c[c[z>>2]>>2]&3|0)==2?E:E+-32|0)+28>>2]|0,c[w>>2]|0,c[y>>2]|0,50160);c[D>>2]=(c[D>>2]|0)+1}if((S|0)==22){i=l;return}while(1){if((c[D>>2]|0)>=(c[t>>2]|0))break;c[z>>2]=c[(c[P>>2]|0)+(c[D>>2]<<2)>>2];if((c[D>>2]|0)%2|0){if((c[D>>2]|0)==1){h[N>>3]=(+h[F>>3]*2.0+ +h[G>>3])/3.0;h[O>>3]=(+h[F>>3]+ +h[G>>3]*2.0)/3.0}h[J>>3]=+h[J>>3]-6.0;c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2];h[A+16>>3]=+h[B>>3];h[A+16+8>>3]=+h[J>>3]-6.0;h[A+32>>3]=+h[C>>3];h[A+32+8>>3]=+h[A+16+8>>3];I=A+48|0;c[I>>2]=c[C>>2];c[I+4>>2]=c[C+4>>2];c[I+8>>2]=c[C+8>>2];c[I+12>>2]=c[C+12>>2];h[A+64>>3]=+h[O>>3];h[A+64+8>>3]=+h[C+8>>3];h[A+80>>3]=+h[O>>3];h[A+80+8>>3]=+h[J>>3];h[A+96>>3]=+h[N>>3];h[A+96+8>>3]=+h[J>>3];h[A+112>>3]=+h[N>>3];h[A+112+8>>3]=+h[B+8>>3]}else{c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2];h[A+16>>3]=+h[L>>3];h[A+16+8>>3]=+h[B+8>>3];h[A+32>>3]=+h[L>>3];h[A+32+8>>3]=+h[K>>3];h[A+48>>3]=+h[M>>3];h[A+48+8>>3]=+h[K>>3];h[A+64>>3]=+h[M>>3];h[A+64+8>>3]=+h[C+8>>3];h[A+80>>3]=+h[C>>3];h[A+80+8>>3]=+h[C+8>>3];h[A+96>>3]=+h[C>>3];h[A+96+8>>3]=+h[K>>3]+6.0;h[A+112>>3]=+h[B>>3];h[A+112+8>>3]=+h[K>>3]+6.0;h[K>>3]=+h[K>>3]+6.0}c[x+4>>2]=8;c[x>>2]=A;I=(c[u>>2]|0)==6&1;c[o>>2]=c[B>>2];c[o+4>>2]=c[B+4>>2];c[o+8>>2]=c[B+8>>2];c[o+12>>2]=c[B+12>>2];c[n>>2]=c[C>>2];c[n+4>>2]=c[C+4>>2];c[n+8>>2]=c[C+8>>2];c[n+12>>2]=c[C+12>>2];c[m>>2]=c[x>>2];c[m+4>>2]=c[x+4>>2];c[w>>2]=OL(o,n,m,y,I)|0;if(!(c[y>>2]|0)){S=22;break}I=c[z>>2]|0;jN(c[z>>2]|0,c[((c[c[z>>2]>>2]&3|0)==2?I:I+-32|0)+28>>2]|0,c[w>>2]|0,c[y>>2]|0,50160);c[D>>2]=(c[D>>2]|0)+1}if((S|0)==22){i=l;return}O4(c[P>>2]|0);i=l;return}function yg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=b;c[j>>2]=d;if(nB(c[g>>2]|0)|0){c[f>>2]=c[13065];c[l>>2]=gB(122555,f,0)|0}else{c[f>>2]=c[13067];c[l>>2]=gB(122555,f,0)|0}MC(c[l>>2]|0,175049,280,1)|0;qA(c[l>>2]|0,0,124202,178518)|0;f=bK(96)|0;c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]=f;h[c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]>>3]=+h[c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]>>3];h[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3];a[(c[(c[l>>2]|0)+8>>2]|0)+115>>0]=a[(c[(c[g>>2]|0)+8>>2]|0)+115>>0]|0;f=(c[(c[l>>2]|0)+8>>2]|0)+116|0;if(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1)c[f>>2]=0;else c[f>>2]=1;c[(c[(c[l>>2]|0)+8>>2]|0)+248>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+252>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+252>>2];c[k>>2]=rA(rC(c[g>>2]|0)|0,1,0)|0;while(1){if(!(c[k>>2]|0))break;qA(c[l>>2]|0,1,c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+12>>2]|0)|0;f=rC(c[g>>2]|0)|0;c[k>>2]=rA(f,1,c[k>>2]|0)|0}c[k>>2]=rA(rC(c[g>>2]|0)|0,2,0)|0;while(1){m=c[l>>2]|0;if(!(c[k>>2]|0))break;qA(m,2,c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+12>>2]|0)|0;f=rC(c[g>>2]|0)|0;c[k>>2]=rA(f,2,c[k>>2]|0)|0}if(!(qA(m,2,149061,0)|0))qA(c[l>>2]|0,2,149061,178518)|0;if(qA(c[l>>2]|0,2,149070,0)|0){n=c[l>>2]|0;o=c[j>>2]|0;Dg(n,o);p=c[l>>2]|0;i=e;return p|0}qA(c[l>>2]|0,2,149070,178518)|0;n=c[l>>2]|0;o=c[j>>2]|0;Dg(n,o);p=c[l>>2]|0;i=e;return p|0}function zg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e;g=e+24|0;h=e+20|0;j=e+12|0;k=e+8|0;l=e+4|0;c[g>>2]=a;c[h>>2]=b;c[e+16>>2]=d;d=c[g>>2]|0;c[j>>2]=fC(d,wB(c[h>>2]|0)|0,1)|0;MC(c[j>>2]|0,175026,304,1)|0;DA(c[h>>2]|0,c[j>>2]|0)|0;if((dM(c[h>>2]|0)|0)!=2){m=c[j>>2]|0;i=e;return m|0}c[k>>2]=N3(c[c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]>>2]|0)|0;c[l>>2]=cK((c[k>>2]|0)+3|0)|0;k=c[l>>2]|0;c[f>>2]=c[c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]>>2];k3(k,122550,f)|0;AA(c[j>>2]|0,147656,c[l>>2]|0)|0;m=c[j>>2]|0;i=e;return m|0}function Ag(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=VA(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0,1)|0;MC(c[l>>2]|0,175319,176,1)|0;DA(c[k>>2]|0,c[l>>2]|0)|0;i=f;return c[l>>2]|0}function Bg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+24|0;j=f+8|0;k=f+40|0;l=f;c[k>>2]=e;if(c[k>>2]|0){h[l>>3]=+h[b>>3];h[b>>3]=+h[b+8>>3];h[b+8>>3]=-+h[l>>3]};c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];og(a,j,g);i=f;return}function Cg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[13873]=c[c[f>>2]>>2];c[13877]=c[(c[f>>2]|0)+4>>2];c[13878]=c[(c[f>>2]|0)+8>>2];c[13851]=c[(c[f>>2]|0)+12>>2];c[13852]=c[(c[f>>2]|0)+16>>2];c[13865]=c[(c[f>>2]|0)+20>>2];c[13864]=c[(c[f>>2]|0)+24>>2];c[13863]=c[(c[f>>2]|0)+28>>2];c[13889]=c[(c[f>>2]|0)+32>>2];c[13881]=c[(c[f>>2]|0)+36>>2];c[13866]=c[(c[f>>2]|0)+40>>2];c[13876]=c[(c[f>>2]|0)+44>>2];c[13885]=c[(c[f>>2]|0)+48>>2];c[13884]=c[(c[f>>2]|0)+52>>2];c[13883]=c[(c[f>>2]|0)+56>>2];c[13888]=c[(c[f>>2]|0)+60>>2];c[13882]=c[(c[f>>2]|0)+64>>2];c[13867]=c[(c[f>>2]|0)+68>>2];c[13814]=c[(c[f>>2]|0)+72>>2];c[13815]=c[(c[f>>2]|0)+76>>2];c[13816]=c[(c[f>>2]|0)+80>>2];c[13834]=c[(c[f>>2]|0)+84>>2];c[13827]=c[(c[f>>2]|0)+88>>2];c[13828]=c[(c[f>>2]|0)+92>>2];c[13829]=c[(c[f>>2]|0)+96>>2];c[13831]=c[(c[f>>2]|0)+100>>2];c[13832]=c[(c[f>>2]|0)+104>>2];c[13835]=c[(c[f>>2]|0)+108>>2];c[13838]=c[(c[f>>2]|0)+112>>2];c[13836]=c[(c[f>>2]|0)+116>>2];c[13837]=c[(c[f>>2]|0)+120>>2];c[13840]=c[(c[f>>2]|0)+124>>2];c[13839]=c[(c[f>>2]|0)+128>>2];c[13841]=c[(c[f>>2]|0)+132>>2];c[13842]=c[(c[f>>2]|0)+136>>2];c[13833]=c[(c[f>>2]|0)+140>>2];c[13845]=c[(c[f>>2]|0)+144>>2];c[13809]=c[(c[f>>2]|0)+148>>2];c[13800]=c[(c[f>>2]|0)+152>>2];O4(c[f>>2]|0);sf(c[e>>2]|0);jB(c[e>>2]|0)|0;i=d;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[f>>2]>>2]=c[13873];c[(c[f>>2]|0)+4>>2]=c[13877];c[(c[f>>2]|0)+8>>2]=c[13878];c[(c[f>>2]|0)+12>>2]=c[13851];c[(c[f>>2]|0)+16>>2]=c[13852];c[(c[f>>2]|0)+20>>2]=c[13865];c[(c[f>>2]|0)+24>>2]=c[13864];c[(c[f>>2]|0)+28>>2]=c[13863];c[(c[f>>2]|0)+32>>2]=c[13889];c[(c[f>>2]|0)+36>>2]=c[13881];c[(c[f>>2]|0)+40>>2]=c[13866];c[(c[f>>2]|0)+44>>2]=c[13876];c[(c[f>>2]|0)+48>>2]=c[13885];c[(c[f>>2]|0)+52>>2]=c[13884];c[(c[f>>2]|0)+56>>2]=c[13883];c[(c[f>>2]|0)+60>>2]=c[13888];c[(c[f>>2]|0)+64>>2]=c[13882];c[(c[f>>2]|0)+68>>2]=c[13867];c[(c[f>>2]|0)+72>>2]=c[13814];c[(c[f>>2]|0)+76>>2]=c[13815];c[(c[f>>2]|0)+80>>2]=c[13816];c[(c[f>>2]|0)+84>>2]=c[13834];c[(c[f>>2]|0)+88>>2]=c[13827];c[(c[f>>2]|0)+92>>2]=c[13828];c[(c[f>>2]|0)+96>>2]=c[13829];c[(c[f>>2]|0)+100>>2]=c[13831];c[(c[f>>2]|0)+104>>2]=c[13832];c[(c[f>>2]|0)+108>>2]=c[13835];c[(c[f>>2]|0)+112>>2]=c[13838];c[(c[f>>2]|0)+116>>2]=c[13836];c[(c[f>>2]|0)+120>>2]=c[13837];c[(c[f>>2]|0)+124>>2]=c[13840];c[(c[f>>2]|0)+128>>2]=c[13839];c[(c[f>>2]|0)+132>>2]=c[13841];c[(c[f>>2]|0)+136>>2]=c[13842];c[(c[f>>2]|0)+140>>2]=c[13833];c[(c[f>>2]|0)+144>>2]=c[13845];c[(c[f>>2]|0)+152>>2]=c[13800];c[(c[f>>2]|0)+148>>2]=c[13809];c[13873]=0;c[13877]=qA(c[e>>2]|0,2,124443,0)|0;c[13878]=qA(c[e>>2]|0,2,124452,0)|0;c[13851]=qA(c[e>>2]|0,2,139333,0)|0;if(!(c[13851]|0))c[13851]=qA(c[e>>2]|0,2,139333,178518)|0;c[13852]=0;c[13865]=0;c[13864]=qA(c[e>>2]|0,2,139229,0)|0;c[13863]=qA(c[e>>2]|0,2,139220,0)|0;c[13889]=qA(c[e>>2]|0,2,139509,0)|0;c[13881]=0;c[13866]=qA(c[e>>2]|0,2,147656,0)|0;c[13876]=qA(c[e>>2]|0,2,122560,0)|0;c[13885]=0;c[13884]=qA(c[e>>2]|0,2,139409,0)|0;c[13883]=qA(c[e>>2]|0,2,139395,0)|0;c[13888]=qA(c[e>>2]|0,2,139500,0)|0;c[13882]=0;c[13867]=0;c[13814]=qA(c[e>>2]|0,1,179057,0)|0;c[13815]=qA(c[e>>2]|0,1,179125,0)|0;c[13816]=qA(c[e>>2]|0,1,147662,0)|0;c[13834]=0;c[13827]=qA(c[e>>2]|0,1,139220,0)|0;c[13828]=qA(c[e>>2]|0,1,139229,0)|0;c[13829]=0;c[13831]=qA(c[e>>2]|0,1,147656,0)|0;c[13832]=0;c[13835]=0;c[13838]=qA(c[e>>2]|0,1,139201,0)|0;c[13836]=qA(c[e>>2]|0,1,179085,0)|0;c[13837]=qA(c[e>>2]|0,1,139264,0)|0;c[13840]=qA(c[e>>2]|0,1,139276,0)|0;c[13839]=qA(c[e>>2]|0,1,139140,0)|0;c[13841]=qA(c[e>>2]|0,1,139281,0)|0;c[13842]=qA(c[e>>2]|0,1,122572,0)|0;c[13833]=0;c[13845]=0;c[13809]=qA(c[e>>2]|0,0,139201,0)|0;i=d;return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+64|0;e=d+48|0;f=d+44|0;g=d+40|0;j=d+36|0;k=d+32|0;l=d+16|0;m=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[k>>2]=c[c[g>>2]>>2];g=(c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)!=0;do if(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0){if(!g){c[e>>2]=-1;break}f=(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];f=(c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];if(+h[l>>3]>+h[m>>3]){c[e>>2]=-1;break}if(+h[l>>3]<+h[m>>3]){c[e>>2]=1;break}if(+h[l+8>>3]>+h[m+8>>3]){c[e>>2]=-1;break}if(+h[l+8>>3]<+h[m+8>>3]){c[e>>2]=1;break}else{c[e>>2]=0;break}}else if(g){c[e>>2]=1;break}else{c[e>>2]=0;break}while(0);i=d;return c[e>>2]|0}function Fg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;while(1){g=c[f>>2]|0;if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]|0))break;c[f>>2]=c[(c[g+8>>2]|0)+116>>2]}b=c[f>>2]|0;h=c[f>>2]|0;if((c[(c[(c[((c[g>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){a[e>>0]=0;j=a[e>>0]|0;i=d;return j|0}h=c[f>>2]|0;b=c[f>>2]|0;if((c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)<(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){a[e>>0]=1;j=a[e>>0]|0;i=d;return j|0}b=c[f>>2]|0;h=c[f>>2]|0;if((c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>=(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)){a[e>>0]=0;j=a[e>>0]|0;i=d;return j|0}else{a[e>>0]=1;j=a[e>>0]|0;i=d;return j|0}return 0}function Gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;c[h>>2]=b;b=c[g>>2]|0;a=(c[(c[g>>2]|0)+8>>2]|0)+180|0;g=c[h>>2]|0;j=(c[(c[h>>2]|0)+8>>2]|0)+172|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];j=Xg(b,f,g,e)|0;i=d;return j|0}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d+4|0;h=d;c[g>>2]=a;c[h>>2]=b;b=c[g>>2]|0;a=(c[(c[g>>2]|0)+8>>2]|0)+188|0;g=c[h>>2]|0;j=(c[(c[h>>2]|0)+8>>2]|0)+196|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];j=Xg(b,f,g,e)|0;i=d;return j|0}function Ig(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;e=(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?c[d>>2]|0:(c[d>>2]|0)+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0){a=c[d>>2]|0;f=eK(c[e>>2]|0,(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0}else f=cK((c[e+4>>2]|0)+2<<2)|0;e=c[d>>2]|0;c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+180>>2]=f;f=c[d>>2]|0;e=c[d>>2]|0;a=(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+180+4|0;e=c[a>>2]|0;c[a>>2]=e+1;a=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(e<<2)>>2]=f;f=c[d>>2]|0;e=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;f=c[d>>2]|0;e=(c[(c[((c[c[d>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?c[d>>2]|0:(c[d>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0){f=c[d>>2]|0;g=eK(c[e>>2]|0,(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0}else g=cK((c[e+4>>2]|0)+2<<2)|0;e=c[d>>2]|0;c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]=g;g=c[d>>2]|0;e=c[d>>2]|0;f=(c[(c[((c[c[d>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+172+4|0;e=c[f>>2]|0;c[f>>2]=e+1;f=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(e<<2)>>2]=g;g=c[d>>2]|0;e=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0;i=b;return c[d>>2]|0}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){h=6;break}if((c[(c[c[e>>2]>>2]|0)+(c[g>>2]<<2)>>2]|0)==(c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if((h|0)==6){i=d;return}h=(c[e>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+-1;c[(c[c[e>>2]>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]<<2)>>2];c[(c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]<<2)>>2]=0;i=d;return}function Kg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[d>>2]|0){a=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+180|0,c[d>>2]|0);a=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172|0,c[d>>2]|0);i=b;return}else La(122613,122623,117,122632)}function Lg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;e=(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+204|0;if(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?c[d>>2]|0:(c[d>>2]|0)+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0){a=c[d>>2]|0;f=eK(c[e>>2]|0,(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+204+4>>2]|0)+2<<2)|0}else f=cK((c[e+4>>2]|0)+2<<2)|0;e=c[d>>2]|0;c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+204>>2]=f;f=c[d>>2]|0;e=c[d>>2]|0;a=(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+204+4|0;e=c[a>>2]|0;c[a>>2]=e+1;a=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0)+(e<<2)>>2]=f;f=c[d>>2]|0;e=c[d>>2]|0;c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0)+(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+204+4>>2]<<2)>>2]=0;i=b;return}function Mg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Yg(c[d>>2]|0,(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+204|0);i=b;return}function Ng(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[m>>2]=bK(64)|0;f=(c[m>>2]|0)+32|0;c[f>>2]=c[f>>2]&-4|3;f=c[m>>2]|0;c[f>>2]=c[f>>2]&-4|2;f=bK(176)|0;c[(c[m>>2]|0)+8>>2]=f;c[l>>2]=c[m>>2];f=c[l>>2]|0;c[((c[c[l>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]=c[h>>2];h=c[l>>2]|0;c[((c[c[l>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]=c[j>>2];a[(c[(c[l>>2]|0)+8>>2]|0)+112>>0]=1;if(!(c[k>>2]|0)){c[(c[(c[l>>2]|0)+8>>2]|0)+156>>2]=1;b[(c[(c[l>>2]|0)+8>>2]|0)+154>>1]=1;b[(c[(c[l>>2]|0)+8>>2]|0)+168>>1]=1;b[(c[(c[l>>2]|0)+8>>2]|0)+170>>1]=1;n=c[l>>2]|0;i=g;return n|0}j=c[l>>2]|0;c[j>>2]=c[j>>2]&15|((c[c[k>>2]>>2]|0)>>>4&268435455)<<4;j=(c[m>>2]|0)+32|0;c[j>>2]=c[j>>2]&15|((c[c[k>>2]>>2]|0)>>>4&268435455)<<4;b[(c[(c[l>>2]|0)+8>>2]|0)+168>>1]=b[(c[(c[k>>2]|0)+8>>2]|0)+168>>1]|0;b[(c[(c[l>>2]|0)+8>>2]|0)+154>>1]=b[(c[(c[k>>2]|0)+8>>2]|0)+154>>1]|0;c[(c[(c[l>>2]|0)+8>>2]|0)+156>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+156>>2];b[(c[(c[l>>2]|0)+8>>2]|0)+170>>1]=b[(c[(c[k>>2]|0)+8>>2]|0)+170>>1]|0;j=c[l>>2]|0;m=c[k>>2]|0;h=c[l>>2]|0;if((c[((c[c[l>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)!=(c[((c[c[k>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)){m=c[l>>2]|0;j=c[k>>2]|0;if((c[((c[h>>2]&3|0)==3?m:m+32|0)+28>>2]|0)==(c[((c[c[k>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)){o=(c[(c[l>>2]|0)+8>>2]|0)+16|0;p=(c[(c[k>>2]|0)+8>>2]|0)+56|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0))}}else{o=(c[h+8>>2]|0)+16|0;p=(c[(c[k>>2]|0)+8>>2]|0)+16|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0))}h=c[l>>2]|0;j=c[k>>2]|0;m=c[l>>2]|0;if((c[((c[c[l>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)!=(c[((c[c[k>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)){j=c[l>>2]|0;h=c[k>>2]|0;if((c[((c[m>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)==(c[((c[c[k>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)){o=(c[(c[l>>2]|0)+8>>2]|0)+56|0;p=(c[(c[k>>2]|0)+8>>2]|0)+16|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0))}}else{o=(c[m+8>>2]|0)+56|0;p=(c[(c[k>>2]|0)+8>>2]|0)+56|0;q=o+40|0;do{c[o>>2]=c[p>>2];o=o+4|0;p=p+4|0}while((o|0)<(q|0))}if(!(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0))c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]=c[l>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+116>>2]=c[k>>2];n=c[l>>2]|0;i=g;return n|0}function Og(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Ig(Ng(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)|0;i=e;return d|0}function Pg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];if(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)+8>>2]|0)+168>>2]=c[f>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=c[f>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]=0;if((c[f>>2]|0)!=(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)){i=d;return}else La(122649,122623,215,122665)}function Qg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==(c[f>>2]|0))La(122675,122623,220,122682);if(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)La(122695,122623,221,122682);c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2];if(c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]|0)c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]|0)+8>>2]|0)+168>>2]=c[f>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]=c[e>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]=c[f>>2];i=d;return}function Rg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(Zg(c[e>>2]|0,c[f>>2]|0)|0))La(122714,122623,231,122735);if(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)+8>>2]|0)+168>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2];b=c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0;if(c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]|0){c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]|0)+8>>2]|0)+164>>2]=b;i=d;return}else{c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=b;i=d;return}}function Sg(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=bK(52)|0;b=c[f>>2]|0;c[b>>2]=c[b>>2]&-4|1;b=bK(304)|0;c[(c[f>>2]|0)+8>>2]=b;b=rC(c[e>>2]|0)|0;c[(c[f>>2]|0)+12>>2]=b;a[(c[(c[f>>2]|0)+8>>2]|0)+156>>0]=1;h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3]=1.0;h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3]=1.0;h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]=1.0;c[(c[(c[f>>2]|0)+8>>2]|0)+216>>2]=1;c[(c[(c[f>>2]|0)+8>>2]|0)+172+4>>2]=0;b=bK(20)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]=b;c[(c[(c[f>>2]|0)+8>>2]|0)+180+4>>2]=0;b=bK(20)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]=b;Pg(c[e>>2]|0,c[f>>2]|0);b=(c[(c[e>>2]|0)+8>>2]|0)+232|0;c[b>>2]=(c[b>>2]|0)+1;i=d;return c[f>>2]|0}function Tg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[g>>2]|0;b=(c[(c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+188|0;if(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?c[g>>2]|0:(c[g>>2]|0)+32|0)+28>>2]|0)+8>>2]|0)+188>>2]|0){d=c[g>>2]|0;h=eK(c[b>>2]|0,(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+188+4>>2]|0)+2<<2)|0}else h=cK((c[b+4>>2]|0)+2<<2)|0;b=c[g>>2]|0;c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+188>>2]=h;h=c[g>>2]|0;b=c[g>>2]|0;d=(c[(c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+188+4|0;b=c[d>>2]|0;c[d>>2]=b+1;d=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+188>>2]|0)+(b<<2)>>2]=h;h=c[g>>2]|0;b=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+188>>2]|0)+(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+188+4>>2]<<2)>>2]=0;h=c[g>>2]|0;b=(c[(c[((c[c[g>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+196|0;if(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?c[g>>2]|0:(c[g>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+196>>2]|0){h=c[g>>2]|0;j=eK(c[b>>2]|0,(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+196+4>>2]|0)+2<<2)|0}else j=cK((c[b+4>>2]|0)+2<<2)|0;b=c[g>>2]|0;c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+196>>2]=j;j=c[g>>2]|0;b=c[g>>2]|0;h=(c[(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+196+4|0;b=c[h>>2]|0;c[h>>2]=b+1;h=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+196>>2]|0)+(b<<2)>>2]=j;j=c[g>>2]|0;b=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+196+4>>2]<<2)>>2]=0;a[(c[(c[f>>2]|0)+8>>2]|0)+240>>0]=1;a[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+240>>0]=1;i=e;return}function Ug(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0))La(122613,122623,269,122752);if((c[(c[(c[d>>2]|0)+8>>2]|0)+116>>2]|0)!=0?(c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+116>>2]|0)+8>>2]|0)+172>>2]|0)==(c[d>>2]|0):0)c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+116>>2]|0)+8>>2]|0)+172>>2]=0;a=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+188|0,c[d>>2]|0);a=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+196|0,c[d>>2]|0);i=b;return}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0)){$z(0,122769,d)|0;i=d;return}if(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0)La(124624,122623,340,122790);c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]=c[f>>2];_g(c[e>>2]|0,c[f>>2]|0);i=d;return}function Wg(d){d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=d;c[g>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2];while(1){if(!(c[g>>2]|0))break;$g(c[g>>2]|0,c[f>>2]|0);c[h>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2];if(!(b[(c[(c[g>>2]|0)+8>>2]|0)+168>>1]|0))ah(c[g>>2]|0);while(1){if((a[(c[(c[g>>2]|0)+8>>2]|0)+112>>0]|0)!=1)break;d=c[g>>2]|0;if((a[(c[(c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+156>>0]|0)!=1)break;d=c[g>>2]|0;if((c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]|0)!=1)break;d=c[g>>2]|0;c[g>>2]=c[c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2];$g(c[g>>2]|0,c[f>>2]|0)}c[g>>2]=c[h>>2]}c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]=0;i=e;return}function Xg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=d;if((c[b+4>>2]|0)>0?(c[e+4>>2]|0)>0:0){d=(c[b+4>>2]|0)<(c[e+4>>2]|0);c[j>>2]=0;if(d){while(1){d=c[(c[b>>2]|0)+(c[j>>2]<<2)>>2]|0;c[k>>2]=d;if(!d){l=11;break}d=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)==(c[h>>2]|0)){l=11;break}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==11){m=c[k>>2]|0;i=f;return m|0}}else{while(1){h=c[(c[e>>2]|0)+(c[j>>2]<<2)>>2]|0;c[k>>2]=h;if(!h){l=11;break}h=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)==(c[g>>2]|0)){l=11;break}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==11){m=c[k>>2]|0;i=f;return m|0}}}c[k>>2]=0;m=c[k>>2]|0;i=f;return m|0}function Yg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;if((c[e>>2]|0)==(c[(c[c[f>>2]>>2]|0)+(c[g>>2]<<2)>>2]|0)){h=9;break}c[g>>2]=(c[g>>2]|0)+1}if((h|0)==9){i=d;return}h=c[f>>2]|0;if(c[c[f>>2]>>2]|0)j=eK(c[h>>2]|0,(c[(c[f>>2]|0)+4>>2]|0)+2<<2)|0;else j=cK((c[h+4>>2]|0)+2<<2)|0;c[c[f>>2]>>2]=j;j=c[e>>2]|0;e=(c[f>>2]|0)+4|0;h=c[e>>2]|0;c[e>>2]=h+1;c[(c[c[f>>2]>>2]|0)+(h<<2)>>2]=j;c[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+4>>2]<<2)>>2]=0;i=d;return}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0)){h=5;break}if((c[g>>2]|0)==(c[f>>2]|0)){h=5;break}c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}if((h|0)==5){i=d;return c[g>>2]|0}return 0}function _g(a,d){a=a|0;d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=a;c[h>>2]=d;if((e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0)<(e[(c[(c[g>>2]|0)+8>>2]|0)+170>>1]|0))b[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+170>>1]|0;while(1){if(!(c[h>>2]|0))break;d=(c[(c[h>>2]|0)+8>>2]|0)+168|0;b[d>>1]=(b[d>>1]|0)+(b[(c[(c[g>>2]|0)+8>>2]|0)+168>>1]|0);d=(c[(c[h>>2]|0)+8>>2]|0)+154|0;b[d>>1]=(b[d>>1]|0)+(b[(c[(c[g>>2]|0)+8>>2]|0)+154>>1]|0);d=(c[(c[h>>2]|0)+8>>2]|0)+156|0;c[d>>2]=(c[d>>2]|0)+(c[(c[(c[g>>2]|0)+8>>2]|0)+156>>2]|0);c[h>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]}i=f;return}function $g(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=d;d=(c[(c[f>>2]|0)+8>>2]|0)+168|0;b[d>>1]=(b[d>>1]|0)-(b[(c[(c[g>>2]|0)+8>>2]|0)+168>>1]|0);d=(c[(c[f>>2]|0)+8>>2]|0)+154|0;b[d>>1]=(b[d>>1]|0)-(b[(c[(c[g>>2]|0)+8>>2]|0)+154>>1]|0);d=(c[(c[f>>2]|0)+8>>2]|0)+156|0;c[d>>2]=(c[d>>2]|0)-(c[(c[(c[g>>2]|0)+8>>2]|0)+156>>2]|0);i=e;return}function ah(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(!(c[d>>2]|0))La(122613,122623,128,122803);c[e>>2]=0;while(1){a=c[d>>2]|0;g=c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(c[e>>2]<<2)>>2]|0;c[f>>2]=g;if(!g)break;if((c[f>>2]|0)==(c[d>>2]|0)){g=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+180|0,c[d>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}c[e>>2]=0;while(1){g=c[d>>2]|0;a=c[(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[e>>2]<<2)>>2]|0;c[f>>2]=a;if(!a)break;if((c[f>>2]|0)==(c[d>>2]|0)){a=c[d>>2]|0;Jg((c[(c[((c[c[d>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172|0,c[d>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}i=b;return}function bh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;mh(c[f>>2]|0);c[h>>2]=0;c[j>>2]=0;while(1){l=c[f>>2]|0;if((c[h>>2]|0)>=(c[(c[(c[f>>2]|0)+8>>2]|0)+216+4>>2]|0))break;nh(l,c[h>>2]|0);d=oh(c[f>>2]|0,0,2,c[g>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+d;c[h>>2]=(c[h>>2]|0)+1}ph(l);c[h>>2]=1;while(1){m=c[f>>2]|0;if((c[h>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;l=qh(m,c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[h>>2]<<2)>>2]|0,c[g>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+l;c[h>>2]=(c[h>>2]|0)+1}if((c[(c[m+8>>2]|0)+180>>2]|0)<=0){n=c[f>>2]|0;o=c[j>>2]|0;rh(n,o);i=e;return}m=yA(c[f>>2]|0,122825)|0;c[k>>2]=m;if((m|0)!=0?((kO(c[k>>2]|0)|0)&255|0)==0:0){n=c[f>>2]|0;o=c[j>>2]|0;rh(n,o);i=e;return}zk(c[f>>2]|0);a[122836]=1;c[j>>2]=oh(c[f>>2]|0,2,2,c[g>>2]|0)|0;n=c[f>>2]|0;o=c[j>>2]|0;rh(n,o);i=e;return}function ch(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)){i=d;return}c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[f>>2]<<2)>>2]=c[c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+4>>2]>>2];c[f>>2]=(c[f>>2]|0)+1}i=d;return}function dh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;ch(c[d>>2]|0);c[e>>2]=1;while(1){if((c[e>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;dh(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=b;return}function eh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;eh(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)){i=d;return}c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;c[j>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[f>>2]<<2)>>2];c[h>>2]=sh(c[e>>2]|0,c[j>>2]|0,-1)|0;c[k>>2]=sh(c[e>>2]|0,c[j>>2]|0,1)|0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];g=c[f>>2]|0;a=c[(c[(c[(uf(c[e>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(g<<6)+4>>2]|0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+4>>2]=a+(c[(c[(c[h>>2]|0)+8>>2]|0)+236>>2]<<2);c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)>>2]=(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[h>>2]|0)+8>>2]|0)+236>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}i=d;return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;d=c[g>>2]|0;a:do if(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+188>>2]|0){c[h>>2]=0;while(1){b=c[g>>2]|0;k=c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+188>>2]|0)+(c[h>>2]<<2)>>2]|0;c[j>>2]=k;if(!k)break a;k=c[j>>2]|0;b=c[g>>2]|0;if((c[((c[c[j>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)==(c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0))break a;c[h>>2]=(c[h>>2]|0)+1}}else c[j>>2]=0;while(0);h=c[g>>2]|0;if(!(c[j>>2]|0)){d=c[g>>2]|0;b=c[g>>2]|0;c[j>>2]=Ng(c[((c[h>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,c[g>>2]|0)|0;b=(c[(c[j>>2]|0)+8>>2]|0)+112|0;if((a[(c[(c[g>>2]|0)+8>>2]|0)+112>>0]|0)==4)a[b>>0]=4;else a[b>>0]=3;c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2];Tg(c[f>>2]|0,c[j>>2]|0);i=e;return}Vg(h,c[j>>2]|0);if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0))c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=c[j>>2];if((a[(c[(c[j>>2]|0)+8>>2]|0)+112>>0]|0)==4?(c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]|0)==0:0)c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]=c[g>>2];j=c[g>>2]|0;h=c[g>>2]|0;f=(c[(c[((c[c[g>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+204|0;if(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0){j=c[g>>2]|0;l=eK(c[f>>2]|0,(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+204+4>>2]|0)+2<<2)|0}else l=cK((c[f+4>>2]|0)+2<<2)|0;f=c[g>>2]|0;c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+204>>2]=l;l=c[g>>2]|0;f=c[g>>2]|0;j=(c[(c[((c[c[g>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+204+4|0;f=c[j>>2]|0;c[j>>2]=f+1;j=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0)+(f<<2)>>2]=l;l=c[g>>2]|0;f=c[g>>2]|0;c[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+204>>2]|0)+(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+204+4>>2]<<2)>>2]=0;i=e;return}function gh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=a;c[j>>2]=bK((b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)+2<<2)|0;c[k>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;a=(c[j>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+1;c[l>>2]=OA(c[e>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;a=c[l>>2]|0;c[g>>2]=c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+232>>2];a=c[l>>2]|0;c[h>>2]=c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+232>>2];if((c[g>>2]|0)>(c[h>>2]|0)){c[m>>2]=c[g>>2];c[g>>2]=c[h>>2];c[h>>2]=c[m>>2]}c[f>>2]=(c[g>>2]|0)+1;while(1){if((c[f>>2]|0)>=(c[h>>2]|0))break;a=(c[j>>2]|0)+(c[f>>2]<<2)|0;c[a>>2]=(c[a>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}c[l>>2]=QA(c[e>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(c[e>>2]|0,c[k>>2]|0)|0}k=bK((b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)+2<<6)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]=k;c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;k=c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)>>2]=k;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+8>>2]=k;k=bK((c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0)+1<<2)|0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+4>>2]=k;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+12>>2]=k;c[f>>2]=(c[f>>2]|0)+1}O4(c[j>>2]|0);i=d;return}function hh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+112|0;f=e+64|0;g=e+48|0;h=e+24|0;j=e;k=e+104|0;l=e+100|0;m=e+96|0;n=e+92|0;c[k>>2]=a;c[l>>2]=d;c[n>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2];c[m>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)>>2];if((c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]|0)<=0){d=wB(c[k>>2]|0)|0;a=wB(c[l>>2]|0)|0;o=c[n>>2]|0;p=c[m>>2]|0;c[j>>2]=1070;c[j+4>>2]=d;c[j+8>>2]=a;c[j+12>>2]=o;c[j+16>>2]=p;$z(1,122837,j)|0;i=e;return}c[(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+(c[m>>2]<<2)>>2]=c[l>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]=c[m>>2];m=(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)|0;c[m>>2]=(c[m>>2]|0)+1;if((c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)>>2]|0)>(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]|0))La(122892,122928,1077,122939);if((c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]|0)){m=wB(c[l>>2]|0)|0;j=c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]|0;p=c[n>>2]|0;o=c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]|0;c[h>>2]=1090;c[h+4>>2]=m;c[h+8>>2]=j;c[h+12>>2]=p;c[h+16>>2]=o;$z(1,122955,h)|0;i=e;return}if((c[n>>2]|0)>=(b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]|0)?(c[n>>2]|0)<=(b[(c[(c[k>>2]|0)+8>>2]|0)+238>>1]|0):0){if(((c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+(c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]<<2)|0)>>>0<=((c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+12>>2]|0)+(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]<<2)|0)>>>0){i=e;return}h=c[n>>2]|0;o=wB(c[l>>2]|0)|0;p=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+(c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]<<2)|0;l=c[n>>2]|0;j=c[n>>2]|0;m=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+12>>2]|0)+(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+8>>2]<<2)|0;c[f>>2]=1101;c[f+4>>2]=h;c[f+8>>2]=o;c[f+12>>2]=p;c[f+16>>2]=l;c[f+20>>2]=j;c[f+24>>2]=m;$z(1,123089,f)|0;i=e;return}f=c[n>>2]|0;n=b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]|0;m=b[(c[(c[k>>2]|0)+8>>2]|0)+238>>1]|0;c[g>>2]=1095;c[g+4>>2]=f;c[g+8>>2]=n;c[g+12>>2]=m;$z(1,123028,g)|0;i=e;return}function ih(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+48|0;g=f;h=f+44|0;j=f+40|0;k=f+36|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;s=f+4|0;c[h>>2]=d;c[j>>2]=e;c[p>>2]=aO(c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]|0)|0;c[m>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[m>>2]|0))break;a[(c[(c[m>>2]|0)+8>>2]|0)+157>>0]=0;c[m>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+164>>2]}c[k>>2]=b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[k>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]=0;c[k>>2]=(c[k>>2]|0)+1}c[m>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[m>>2]|0))break;e=c[(c[m>>2]|0)+8>>2]|0;if(!(c[j>>2]|0))t=c[e+172>>2]|0;else t=c[e+180>>2]|0;c[o>>2]=t;a:do if((c[c[o>>2]>>2]|0)==0?(a[(c[(c[m>>2]|0)+8>>2]|0)+157>>0]|0)==0:0){a[(c[(c[m>>2]|0)+8>>2]|0)+157>>0]=1;cO(c[p>>2]|0,c[m>>2]|0);while(1){e=dO(c[p>>2]|0)|0;c[n>>2]=e;if(!e)break a;e=c[h>>2]|0;d=c[n>>2]|0;if((a[(c[(c[n>>2]|0)+8>>2]|0)+159>>0]|0)!=7){hh(e,d);jh(c[p>>2]|0,c[n>>2]|0,c[j>>2]|0);continue}else{yk(e,d,c[j>>2]|0,c[p>>2]|0);continue}}}while(0);c[m>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+164>>2]}if(dO(c[p>>2]|0)|0)$z(1,123201,g)|0;c[k>>2]=b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[k>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+49>>0]=0;b:do if((c[(c[(c[h>>2]|0)+8>>2]|0)+116>>2]&1|0)!=0?(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0)>0:0){c[s>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2];c[q>>2]=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0)-1;c[r>>2]=(c[q>>2]|0)/2|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>(c[r>>2]|0))break b;th(c[(c[s>>2]|0)+(c[l>>2]<<2)>>2]|0,c[(c[s>>2]|0)+((c[q>>2]|0)-(c[l>>2]|0)<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}}while(0);c[k>>2]=(c[k>>2]|0)+1}k=c[h>>2]|0;if((k|0)!=(uf(c[h>>2]|0)|0)){u=c[p>>2]|0;bO(u);i=f;return}if((kh(c[h>>2]|0)|0)<=0){u=c[p>>2]|0;bO(u);i=f;return}uh(c[h>>2]|0,0);u=c[p>>2]|0;bO(u);i=f;return}function jh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;e=(c[j>>2]|0)==0;c[k>>2]=0;if(e){while(1){if((c[k>>2]|0)>=(c[(c[(c[h>>2]|0)+8>>2]|0)+180+4>>2]|0))break;c[l>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]|0)+(c[k>>2]<<2)>>2];e=c[l>>2]|0;if(!(a[(c[(c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)){e=c[l>>2]|0;a[(c[(c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]=1;e=c[l>>2]|0;cO(c[g>>2]|0,c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}i=f;return}else{while(1){if((c[k>>2]|0)>=(c[(c[(c[h>>2]|0)+8>>2]|0)+172+4>>2]|0))break;c[l>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2];e=c[l>>2]|0;if(!(a[(c[(c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)){e=c[l>>2]|0;a[(c[(c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+157>>0]=1;e=c[l>>2]|0;cO(c[g>>2]|0,c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)}c[k>>2]=(c[k>>2]|0)+1}i=f;return}}function kh(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=d;c[f>>2]=c[12547];c[h>>2]=0;c[g>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[g>>2]|0)>=(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;if(a[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+49>>0]|0)c[h>>2]=(c[h>>2]|0)+(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+52>>2]|0);else{d=vh(c[f>>2]|0,c[g>>2]|0)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+52>>2]=d;c[j>>2]=d;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);a[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+49>>0]=1}c[g>>2]=(c[g>>2]|0)+1}i=e;return c[h>>2]|0}function lh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=c[d>>2]|0;f=wh(c[((c[c[d>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)|0;a=c[d>>2]|0;c[e>>2]=c[50192+((wh(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)|0)*12|0)+(f<<2)>>2];f=(c[(c[d>>2]|0)+8>>2]|0)+156|0;c[f>>2]=_(c[f>>2]|0,c[e>>2]|0)|0;i=b;return}function mh(d){d=d|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=d;if(a[138998]|0)_N();a[122836]=0;c[12547]=c[g>>2];c[h>>2]=(lB(uf(c[g>>2]|0)|0)|0)+1;c[12560]=bK(c[h>>2]<<2)|0;c[12559]=bK(c[h>>2]<<2)|0;ci(c[g>>2]|0);if(e[(c[(c[g>>2]|0)+8>>2]|0)+136>>1]&16)di(c[g>>2]|0);mk(c[g>>2]|0);bl(c[g>>2]|0,1);gh(c[g>>2]|0);Gh(c[g>>2]|0);c[12561]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];c[12562]=b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1];i=f;return}function nh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=d;c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+216>>2]|0)+(c[g>>2]<<2)>>2];if((c[g>>2]|0)<=0){i=e;return}c[h>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[h>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+4>>2]=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+4>>2]|0)+(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]<<2);c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}i=e;return}function oh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+64|0;j=g;k=g+56|0;l=g+52|0;m=g+48|0;n=g+44|0;o=g+40|0;p=g+36|0;q=g+32|0;r=g+28|0;s=g+24|0;t=g+20|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if((c[l>>2]|0)>1){f=kh(c[k>>2]|0)|0;c[t>>2]=f;c[s>>2]=f;Uh(c[k>>2]|0)}else{c[t>>2]=2147483647;c[s>>2]=2147483647}c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>(c[m>>2]|0))break;l=c[13798]|0;if((c[r>>2]|0)<=1){c[o>>2]=4<(l|0)?4:c[13798]|0;f=c[k>>2]|0;if((f|0)==(uf(c[k>>2]|0)|0))ih(c[k>>2]|0,c[r>>2]|0);if(!(c[r>>2]|0))Hh(c[k>>2]|0);Ih(c[k>>2]|0);f=kh(c[k>>2]|0)|0;c[s>>2]=f;if((f|0)<=(c[t>>2]|0)){Uh(c[k>>2]|0);c[t>>2]=c[s>>2]}c[q>>2]=0}else{c[o>>2]=l;if((c[s>>2]|0)>(c[t>>2]|0))Vh(c[k>>2]|0);c[s>>2]=c[t>>2]}c[q>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;if(a[138998]|0){l=c[24742]|0;f=c[p>>2]|0;e=c[q>>2]|0;d=c[s>>2]|0;b=c[t>>2]|0;c[j>>2]=c[r>>2];c[j+4>>2]=f;c[j+8>>2]=e;c[j+12>>2]=d;c[j+16>>2]=b;Y2(l,123634,j)|0}l=c[q>>2]|0;c[q>>2]=l+1;if((l|0)>=(c[12563]|0)|(c[s>>2]|0)==0)break;Wh(c[k>>2]|0,c[p>>2]|0);l=kh(c[k>>2]|0)|0;c[s>>2]=l;if((l|0)<=(c[t>>2]|0)){Uh(c[k>>2]|0);if(+(c[s>>2]|0)<+h[4138]*+(c[t>>2]|0))c[q>>2]=0;c[t>>2]=c[s>>2]}c[p>>2]=(c[p>>2]|0)+1}if(!(c[s>>2]|0))break;c[r>>2]=(c[r>>2]|0)+1}if((c[s>>2]|0)>(c[t>>2]|0))Vh(c[k>>2]|0);if((c[t>>2]|0)>0){uh(c[k>>2]|0,0);c[t>>2]=kh(c[k>>2]|0)|0}if(!(c[n>>2]|0)){u=c[t>>2]|0;i=g;return u|0}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;Xh(c[k>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+1}u=c[t>>2]|0;i=g;return u|0}function ph(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;c[g>>2]=d;Th(c[g>>2]|0);c[j>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+8>>2];c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+12>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[k>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2];if(!(c[k>>2]|0)){l=6;break}c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+1}if((l|0)==6){l=0;if(a[138998]|0){d=c[24742]|0;m=wB(c[g>>2]|0)|0;n=c[j>>2]|0;o=c[h>>2]|0;p=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0;c[f>>2]=m;c[f+4>>2]=n;c[f+8>>2]=o;c[f+12>>2]=p;Y2(d,123584,f)|0}c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]=c[h>>2]}c[j>>2]=(c[j>>2]|0)+1}i=e;return} +function Pp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;j=i;i=i+64|0;k=j+52|0;l=j+48|0;m=j+44|0;n=j+40|0;o=j+36|0;p=j+32|0;q=j+28|0;r=j+24|0;s=j+20|0;t=j+16|0;u=j+12|0;v=j+8|0;w=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[v>>2]=0;c[q>>2]=cK(c[c[l>>2]>>2]<<2)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0))break;c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=1;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;if((c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0)>=0?(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0)<(c[c[l>>2]>>2]|0):0)c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]=-1;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0))break;if((c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)>=0){g=c[v>>2]|0;c[v>>2]=g+1;c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=g}c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[l>>2]>>2]|0))break;a:do if((c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)>=0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[k>>2]|0))break a;v=_(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0,c[k>>2]|0)|0;g=_(c[r>>2]|0,c[k>>2]|0)|0;h[(c[o>>2]|0)+(g+(c[u>>2]|0)<<3)>>3]=+h[(c[p>>2]|0)+(v+(c[u>>2]|0)<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}}while(0);c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;c[s>>2]=c[(c[n>>2]|0)+(c[r>>2]<<2)>>2];h[w>>3]=+((c[(c[(c[l>>2]|0)+20>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+20>>2]|0)+(c[s>>2]<<2)>>2]|0)|0);c[u>>2]=0;while(1){x=c[s>>2]|0;if((c[u>>2]|0)>=(c[k>>2]|0))break;p=_(x,c[k>>2]|0)|0;h[(c[o>>2]|0)+(p+(c[u>>2]|0)<<3)>>3]=0.0;c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=c[(c[(c[l>>2]|0)+20>>2]|0)+(x<<2)>>2];while(1){p=(c[t>>2]|0)<(c[(c[(c[l>>2]|0)+20>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0);c[u>>2]=0;if(!p)break;while(1){y=c[t>>2]|0;if((c[u>>2]|0)>=(c[k>>2]|0))break;p=_(c[(c[(c[l>>2]|0)+24>>2]|0)+(y<<2)>>2]|0,c[k>>2]|0)|0;v=_(c[s>>2]|0,c[k>>2]|0)|0;g=(c[o>>2]|0)+(v+(c[u>>2]|0)<<3)|0;h[g>>3]=+h[g>>3]+ +h[(c[o>>2]|0)+(p+(c[u>>2]|0)<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=y+1}while(1){if((c[u>>2]|0)>=(c[k>>2]|0))break;p=_(c[s>>2]|0,c[k>>2]|0)|0;g=(c[o>>2]|0)+(p+(c[u>>2]|0)<<3)|0;h[g>>3]=+h[g>>3]/+h[w>>3];c[u>>2]=(c[u>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}O4(c[q>>2]|0);i=j;return}function Qp(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=+k;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;l=i;i=i+64|0;m=l+56|0;n=l+52|0;o=l+48|0;p=l+44|0;q=l+40|0;r=l+36|0;s=l+32|0;t=l;u=l+28|0;v=l+24|0;w=l+20|0;x=l+16|0;y=l+12|0;z=l+8|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;h[t>>3]=k;Wv(c[o>>2]|0,0,c[q>>2]|0,0,r,0,c[m>>2]|0);if(!((c[s>>2]|0)>0&(c[s>>2]|0)<7)){i=l;return}Fp(c[m>>2]|0,c[n>>2]|0,c[r>>2]|0);c[u>>2]=c[c[p>>2]>>2];c[v>>2]=c[(c[p>>2]|0)+20>>2];c[w>>2]=c[(c[p>>2]|0)+24>>2];c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[u>>2]|0))break;c[y>>2]=(c[(c[v>>2]|0)+(c[x>>2]<<2)>>2]|0)+1;while(1){if((c[y>>2]|0)>=(c[(c[v>>2]|0)+((c[x>>2]|0)+1<<2)>>2]|0))break;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[m>>2]|0))break;k=+h[t>>3];A=k*(+rw()-.5);p=_(c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]|0,c[m>>2]|0)|0;n=(c[r>>2]|0)+(p+(c[z>>2]|0)<<3)|0;h[n>>3]=+h[n>>3]+A;c[z>>2]=(c[z>>2]|0)+1}c[y>>2]=(c[y>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}i=l;return}function Rp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+96|0;g=f+80|0;j=f+76|0;k=f+72|0;l=f+56|0;m=f+68|0;n=f+64|0;o=f+40|0;p=f+24|0;q=f+16|0;r=f+8|0;s=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;h[s>>3]=.017453277777777776;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;h[p+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;c[n>>2]=0;while(1){t=c[m>>2]|0;if((c[n>>2]|0)>=(c[j>>2]|0))break;d=_(t,c[j>>2]|0)|0;b=p+(c[n>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[k>>2]|0)+(d+(c[n>>2]|0)<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=t+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;t=p+(c[m>>2]<<3)|0;h[t>>3]=+h[t>>3]/+(c[g>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;t=_(c[j>>2]|0,c[m>>2]|0)|0;d=_(c[j>>2]|0,c[m>>2]|0)|0;h[(c[k>>2]|0)+(d+(c[n>>2]|0)<<3)>>3]=+h[(c[k>>2]|0)+(t+(c[n>>2]|0)<<3)>>3]-+h[p+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}h[o>>3]=+Q(+(-+h[l>>3]*+h[s>>3]));h[o+8>>3]=+R(+(-+h[l>>3]*+h[s>>3]));c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;s=_(c[j>>2]|0,c[m>>2]|0)|0;l=(_(c[j>>2]|0,c[m>>2]|0)|0)+1|0;h[q>>3]=+h[(c[k>>2]|0)+(s<<3)>>3]*+h[o>>3]+ +h[(c[k>>2]|0)+(l<<3)>>3]*+h[o+8>>3];l=_(c[j>>2]|0,c[m>>2]|0)|0;s=(_(c[j>>2]|0,c[m>>2]|0)|0)+1|0;h[r>>3]=-+h[(c[k>>2]|0)+(l<<3)>>3]*+h[o+8>>3]+ +h[(c[k>>2]|0)+(s<<3)>>3]*+h[o>>3];s=_(c[j>>2]|0,c[m>>2]|0)|0;h[(c[k>>2]|0)+(s<<3)>>3]=+h[q>>3];s=(_(c[j>>2]|0,c[m>>2]|0)|0)+1|0;h[(c[k>>2]|0)+(s<<3)>>3]=+h[r>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;w3(c[f>>2]|0,c[e>>2]|0,8,68);i=d;return}function Tp(a,b,d,e,f,g){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;m=j+8|0;n=j;o=j+20|0;p=j+16|0;c[k>>2]=a;c[l>>2]=b;h[m>>3]=d;h[n>>3]=e;c[o>>2]=f;c[p>>2]=g;e=+Q(+(+h[n>>3]));g=_(c[l>>2]|0,c[o>>2]|0)|0;f=_(c[l>>2]|0,c[p>>2]|0)|0;h[(c[k>>2]|0)+(f<<3)>>3]=e*+h[m>>3]+ +h[(c[k>>2]|0)+(g<<3)>>3];e=+R(+(+h[n>>3]));n=(_(c[l>>2]|0,c[o>>2]|0)|0)+1|0;o=(_(c[l>>2]|0,c[p>>2]|0)|0)+1|0;h[(c[k>>2]|0)+(o<<3)>>3]=e*+h[m>>3]+ +h[(c[k>>2]|0)+(n<<3)>>3];i=j;return}function Up(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+64|0;l=k+52|0;m=k+48|0;n=k+44|0;o=k+40|0;p=k+36|0;q=k+8|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k;v=k+20|0;w=k+16|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;h[q>>3]=g;c[r>>2]=j;h[u>>3]=0.0;c[w>>2]=c[m>>2];if(!((Ov(c[w>>2]|0,0)|0)!=0?(c[(c[w>>2]|0)+16>>2]|0)==1:0))x=3;do if((x|0)==3){j=c[w>>2]|0;if((c[(c[w>>2]|0)+16>>2]|0)==1){c[w>>2]=Mv(j,0)|0;c[w>>2]=Sv(c[w>>2]|0)|0;break}else{c[w>>2]=bw(j)|0;break}}while(0);c[w>>2]=Sv(c[w>>2]|0)|0;c[c[r>>2]>>2]=0;c[s>>2]=c[c[w>>2]>>2];a:do if(!(c[n>>2]|0)){x=cK(_(c[s>>2]<<3,c[l>>2]|0)|0)|0;c[c[n>>2]>>2]=x;s2(123);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(_(c[l>>2]|0,c[s>>2]|0)|0))break a;g=+rw();h[(c[c[n>>2]>>2]|0)+(c[v>>2]<<3)>>3]=g;c[v>>2]=(c[v>>2]|0)+1}}while(0);x=c[w>>2]|0;j=c[l>>2]|0;g=+h[u>>3];u=c[c[n>>2]>>2]|0;if(c[o>>2]|0)c[t>>2]=ix(x,j,g,u,2,1)|0;else c[t>>2]=ix(x,j,g,u,0,1)|0;if(c[t>>2]|0){h[(c[t>>2]|0)+40>>3]=.1;c[(c[t>>2]|0)+24>>2]=5;+kx(c[t>>2]|0,c[l>>2]|0,c[c[n>>2]>>2]|0,c[p>>2]|0,+h[q>>3]);c[v>>2]=0;while(1){q=(c[v>>2]|0)<(_(c[l>>2]|0,c[s>>2]|0)|0);y=c[t>>2]|0;if(!q)break;q=(c[c[n>>2]>>2]|0)+(c[v>>2]<<3)|0;h[q>>3]=+h[q>>3]/+h[y+32>>3];c[v>>2]=(c[v>>2]|0)+1}jx(y)}else c[c[r>>2]>>2]=-1;if((c[w>>2]|0)==(c[m>>2]|0)){i=k;return}Lv(c[w>>2]|0);i=k;return}function Vp(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+48|0;m=l+32|0;n=l+24|0;o=l+20|0;p=l+16|0;q=l+12|0;r=l;s=l+8|0;c[m>>2]=a;c[l+28>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;h[r>>3]=j;c[s>>2]=k;Up(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,+h[r>>3],c[s>>2]|0);i=l;return}function Wp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0;j=i;i=i+128|0;k=j+124|0;l=j+116|0;m=j+40|0;n=j+32|0;o=j+104|0;p=j+100|0;q=j+96|0;r=j+92|0;s=j+88|0;t=j+84|0;u=j+80|0;v=j+76|0;w=j+72|0;x=j+68|0;y=j+64|0;z=j+60|0;A=j+56|0;B=j+52|0;C=j+48|0;D=j+24|0;E=j+16|0;F=j+8|0;G=j;c[j+120>>2]=a;c[l>>2]=b;c[j+112>>2]=d;h[m>>3]=e;h[n>>3]=f;c[j+108>>2]=g;c[s>>2]=c[c[l>>2]>>2];c[t>>2]=c[(c[l>>2]|0)+20>>2];c[u>>2]=c[(c[l>>2]|0)+24>>2];c[C>>2]=c[(c[l>>2]|0)+28>>2];h[G>>3]=.01;if(!(Ov(c[l>>2]|0,0)|0))La(133286,129831,37,129848);c[o>>2]=cK(56)|0;c[(c[o>>2]|0)+20>>2]=0;c[(c[o>>2]|0)+24>>2]=2;c[(c[o>>2]|0)+12>>2]=0;g=cK(16)|0;c[(c[o>>2]|0)+20>>2]=g;h[c[(c[o>>2]|0)+20>>2]>>3]=+h[m>>3];h[(c[(c[o>>2]|0)+20>>2]|0)+8>>3]=+h[n>>3];c[(c[o>>2]|0)+16>>2]=96;h[(c[o>>2]|0)+40>>3]=.01;n=~~+O(+(+(c[c[l>>2]>>2]|0)));c[(c[o>>2]|0)+48>>2]=n;n=Nv(c[s>>2]|0,c[s>>2]|0,(c[(c[l>>2]|0)+8>>2]|0)+(c[s>>2]|0)|0,1,1)|0;c[(c[o>>2]|0)+4>>2]=n;n=Nv(c[s>>2]|0,c[s>>2]|0,(c[(c[l>>2]|0)+8>>2]|0)+(c[s>>2]|0)|0,1,1)|0;c[(c[o>>2]|0)+8>>2]=n;c[v>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+20>>2];c[w>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+24>>2];c[x>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+20>>2];c[y>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+24>>2];c[B>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+28>>2];c[A>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+28>>2];if((c[(c[o>>2]|0)+4>>2]|0)!=0?(c[(c[o>>2]|0)+8>>2]|0)!=0:0){c[v>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+20>>2];c[w>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+24>>2];c[x>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+20>>2];c[y>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+24>>2];c[B>>2]=c[(c[(c[o>>2]|0)+4>>2]|0)+28>>2];c[A>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+28>>2];c[c[x>>2]>>2]=0;c[c[v>>2]>>2]=0;c[z>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[s>>2]|0))break;h[E>>3]=0.0;h[D>>3]=0.0;c[q>>2]=c[(c[t>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[t>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;c[r>>2]=c[(c[u>>2]|0)+(c[q>>2]<<2)>>2];if((c[r>>2]|0)!=(c[p>>2]|0)){f=+h[(c[C>>2]|0)+(c[q>>2]<<3)>>3];if((+h[(c[C>>2]|0)+(c[q>>2]<<3)>>3]>=0.0?f:-f)>+h[G>>3]){f=+h[(c[C>>2]|0)+(c[q>>2]<<3)>>3];H=+h[(c[C>>2]|0)+(c[q>>2]<<3)>>3]>=0.0?f:-f}else H=+h[G>>3];h[F>>3]=H;n=c[r>>2]|0;c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]=n;c[(c[y>>2]|0)+(c[z>>2]<<2)>>2]=n;h[(c[B>>2]|0)+(c[z>>2]<<3)>>3]=-1.0/(+h[F>>3]*+h[F>>3]);h[(c[B>>2]|0)+(c[z>>2]<<3)>>3]=-1.0;h[(c[A>>2]|0)+(c[z>>2]<<3)>>3]=+h[(c[B>>2]|0)+(c[z>>2]<<3)>>3]*+h[F>>3];h[E>>3]=+h[E>>3]+ +h[(c[B>>2]|0)+(c[z>>2]<<3)>>3];h[D>>3]=+h[D>>3]+ +h[(c[A>>2]|0)+(c[z>>2]<<3)>>3];c[z>>2]=(c[z>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}n=c[p>>2]|0;c[(c[w>>2]|0)+(c[z>>2]<<2)>>2]=n;c[(c[y>>2]|0)+(c[z>>2]<<2)>>2]=n;h[(c[B>>2]|0)+(c[z>>2]<<3)>>3]=-+h[E>>3];h[(c[A>>2]|0)+(c[z>>2]<<3)>>3]=-+h[D>>3];c[z>>2]=(c[z>>2]|0)+1;c[(c[v>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[z>>2];c[(c[x>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}c[(c[(c[o>>2]|0)+4>>2]|0)+8>>2]=c[z>>2];c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]=c[z>>2];c[k>>2]=c[o>>2];I=c[k>>2]|0;i=j;return I|0}hx(c[o>>2]|0);c[k>>2]=0;I=c[k>>2]|0;i=j;return I|0}function Xp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;hx(c[d>>2]|0);i=b;return}function Yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0.0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;l=+lx(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,.001);i=f;return +l}function Zp(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d;g=d+16|0;j=d+12|0;k=d+8|0;c[e>>2]=a;h[f>>3]=b;a=c[e>>2]|0;if((c[(c[e>>2]|0)+16>>2]|0)==1)c[g>>2]=Mv(a,0)|0;else c[g>>2]=bw(a)|0;c[j>>2]=c[(c[g>>2]|0)+28>>2];if(!(+h[f>>3]!=1.0)){l=c[g>>2]|0;i=d;return l|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[g>>2]|0)+8>>2]|0))break;a=(c[j>>2]|0)+(c[k>>2]<<3)|0;h[a>>3]=+h[a>>3]*+h[f>>3];c[k>>2]=(c[k>>2]|0)+1}l=c[g>>2]|0;i=d;return l|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0;f=i;i=i+80|0;g=f+64|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+16|0;o=f+8|0;p=f;q=f+44|0;r=f+40|0;s=f+36|0;t=f+32|0;u=f+28|0;v=f+24|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[n>>3]=10.1;h[o>>3]=100.0;h[p>>3]=1.0;c[q>>2]=300;c[r>>2]=1;c[u>>2]=c[c[j>>2]>>2];c[v>>2]=0;c[c[l>>2]>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(_(c[g>>2]|0,c[u>>2]|0)|0))break;w=+h[o>>3];x=w*+rw();h[(c[k>>2]|0)+(c[s>>2]<<3)>>3]=x;c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[u>>2]|0))break;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[g>>2]|0))break;e=_(c[s>>2]|0,c[g>>2]|0)|0;d=_(c[s>>2]|0,c[g>>2]|0)|0;x=+h[(c[k>>2]|0)+(0+(c[t>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(d+(c[t>>2]|0)<<3)>>3];if((+h[(c[k>>2]|0)+(0+(c[t>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(e+(c[t>>2]|0)<<3)>>3]>=0.0?x:-x)>1.0e-16){y=9;break}c[t>>2]=(c[t>>2]|0)+1}if((y|0)==9){y=0;c[r>>2]=0;c[s>>2]=c[u>>2]}c[s>>2]=(c[s>>2]|0)+1}a:do if(c[r>>2]|0){s2(1);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(_(c[g>>2]|0,c[u>>2]|0)|0))break a;x=+h[o>>3];w=x*+rw();h[(c[k>>2]|0)+(c[s>>2]<<3)>>3]=w;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=Zp(c[j>>2]|0,+h[p>>3])|0;if(Ov(c[v>>2]|0,0)|0){c[m>>2]=Wp(c[g>>2]|0,c[v>>2]|0,c[k>>2]|0,+h[n>>3]*1.0e6,+h[o>>3],c[l>>2]|0)|0;+Yp(c[m>>2]|0,c[g>>2]|0,c[k>>2]|0,c[q>>2]|0);Xp(c[m>>2]|0);c[m>>2]=Wp(c[g>>2]|0,c[v>>2]|0,c[k>>2]|0,+h[n>>3]*1.0e4,+h[o>>3],c[l>>2]|0)|0;+Yp(c[m>>2]|0,c[g>>2]|0,c[k>>2]|0,c[q>>2]|0);Xp(c[m>>2]|0);c[m>>2]=Wp(c[g>>2]|0,c[v>>2]|0,c[k>>2]|0,+h[n>>3]*100.0,+h[o>>3],c[l>>2]|0)|0;+Yp(c[m>>2]|0,c[g>>2]|0,c[k>>2]|0,c[q>>2]|0);Xp(c[m>>2]|0);c[m>>2]=Wp(c[g>>2]|0,c[v>>2]|0,c[k>>2]|0,+h[n>>3],+h[o>>3],c[l>>2]|0)|0;+Yp(c[m>>2]|0,c[g>>2]|0,c[k>>2]|0,c[q>>2]|0);Xp(c[m>>2]|0);Bw(0.0,0.0,490.0,700.0,c[c[j>>2]>>2]|0,c[g>>2]|0,c[k>>2]|0);Lv(c[v>>2]|0);i=f;return}else La(129874,129831,164,129910)}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+32|0;g=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[j>>2]=d;c[k>>2]=e;c[m>>2]=cK((kB(c[g>>2]|0)|0)<<1<<3)|0;c[l>>2]=$B(c[g>>2]|0)|0;while(1){q=(c[k>>2]|0)!=0;if(!(c[l>>2]|0))break;if(q?(P3(wB(c[l>>2]|0)|0,129925,11)|0)==0:0)c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+120>>2];h[(c[m>>2]|0)+(c[n>>2]<<1<<3)>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+32>>3]*.5+ +h[b>>3];h[(c[m>>2]|0)+((c[n>>2]<<1)+1<<3)>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3]*.5+ +h[b+8>>3];c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}if(!(q&(c[o>>2]|0)!=0)){r=c[m>>2]|0;i=f;return r|0}c[p>>2]=cK(c[o>>2]<<2)|0;c[o>>2]=0;c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;if(!(P3(wB(c[l>>2]|0)|0,129925,11)|0)){q=c[(c[(c[l>>2]|0)+8>>2]|0)+120>>2]|0;b=c[o>>2]|0;c[o>>2]=b+1;c[(c[p>>2]|0)+(b<<2)>>2]=q}c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}c[c[k>>2]>>2]=c[p>>2];c[c[j>>2]>>2]=c[o>>2];r=c[m>>2]|0;i=f;return r|0}function aq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;e=i;i=i+96|0;f=e+16|0;g=e+8|0;j=e+88|0;k=e+84|0;l=e+76|0;m=e+72|0;n=e+68|0;o=e+64|0;p=e+60|0;q=e+56|0;r=e+52|0;s=e+48|0;t=e+44|0;u=e+40|0;v=e+36|0;w=e+32|0;x=e;y=e+28|0;z=e+24|0;A=e+20|0;c[k>>2]=a;c[e+80>>2]=b;c[l>>2]=d;c[m>>2]=0;c[y>>2]=1;c[z>>2]=0;c[A>>2]=0;if(!(c[k>>2]|0)){c[j>>2]=0;B=c[j>>2]|0;i=e;return B|0}c[q>>2]=kB(c[k>>2]|0)|0;c[r>>2]=lB(c[k>>2]|0)|0;c[s>>2]=0;c[n>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;d=c[s>>2]|0;c[s>>2]=d+1;c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2]=d;c[n>>2]=aC(c[k>>2]|0,c[n>>2]|0)|0}c[u>>2]=cK(c[r>>2]<<2)|0;c[v>>2]=cK(c[r>>2]<<2)|0;c[w>>2]=cK(c[r>>2]<<3)|0;c[p>>2]=qA(c[k>>2]|0,2,139333,0)|0;if(c[l>>2]|0){c[z>>2]=qA(c[k>>2]|0,2,129937,0)|0;c[A>>2]=bK(c[r>>2]<<3)|0}c[s>>2]=0;c[n>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;c[t>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2];c[o>>2]=OA(c[k>>2]|0,c[n>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]=c[t>>2];d=c[o>>2]|0;c[(c[v>>2]|0)+(c[s>>2]<<2)>>2]=c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+120>>2];if(!((c[p>>2]|0)!=0?(d=zA(c[o>>2]|0,c[p>>2]|0)|0,c[g>>2]=x,(l3(d,139001,g)|0)==1):0))h[x>>3]=1.0;h[(c[w>>2]|0)+(c[s>>2]<<3)>>3]=+h[x>>3];if(c[z>>2]|0){d=zA(c[o>>2]|0,c[z>>2]|0)|0;c[f>>2]=x;if((l3(d,139001,f)|0)!=1)h[x>>3]=1.0;h[(c[A>>2]|0)+(c[s>>2]<<3)>>3]=+h[x>>3]}c[s>>2]=(c[s>>2]|0)+1;c[o>>2]=QA(c[k>>2]|0,c[o>>2]|0)|0}c[n>>2]=aC(c[k>>2]|0,c[n>>2]|0)|0}c[m>>2]=Vv(c[r>>2]|0,c[q>>2]|0,c[q>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[y>>2]|0,8)|0;if(c[l>>2]|0){n=Vv(c[r>>2]|0,c[q>>2]|0,c[q>>2]|0,c[u>>2]|0,c[v>>2]|0,c[A>>2]|0,c[y>>2]|0,8)|0;c[c[l>>2]>>2]=n}O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);if(c[A>>2]|0)O4(c[A>>2]|0);c[j>>2]=c[m>>2];B=c[j>>2]|0;i=e;return B|0}function bq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0;b=i;i=i+80|0;d=b+72|0;e=b+68|0;f=b+64|0;g=b+60|0;j=b+48|0;k=b+40|0;l=b+32|0;m=b+16|0;n=b;o=b+56|0;c[e>>2]=a;if(!(iq(c[e>>2]|0,j)|0)){c[d>>2]=0;p=c[d>>2]|0;i=b;return p|0}c[f>>2]=$B(c[e>>2]|0)|0;h[m>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3];h[m+8>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];c[f>>2]=$B(c[e>>2]|0)|0;while(1){q=+h[m>>3];if(!(c[f>>2]|0))break;a=c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0;h[a>>3]=+h[a>>3]-q;a=(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[a>>3]=+h[a>>3]-+h[m+8>>3];c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}if(!(q!=0.0)?!(+h[m+8>>3]!=0.0):0)c[o>>2]=0;else c[o>>2]=1;c[g>>2]=0;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;a=OA(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=a;if(a)break;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}if(!(c[g>>2]|0)){c[d>>2]=c[o>>2];p=c[d>>2]|0;i=b;return p|0}a=c[g>>2]|0;r=c[g>>2]|0;s=c[g>>2]|0;t=c[g>>2]|0;q=+W(+(+h[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]),+(+h[c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?t:t+32|0)+28>>2]|0)+8>>2]|0)+132>>2]>>3]));h[j>>3]=+h[j>>3]-q;if(!(+h[j>>3]!=0.0)){c[d>>2]=c[o>>2];p=c[d>>2]|0;i=b;return p|0}o=c[g>>2]|0;h[n>>3]=+h[c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+132>>2]>>3];o=c[g>>2]|0;h[n+8>>3]=+h[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[k>>3]=+Q(+(+h[j>>3]));h[l>>3]=+R(+(+h[j>>3]));c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;h[m>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[n>>3];h[m+8>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[n+8>>3];h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[m>>3]*+h[k>>3]-+h[m+8>>3]*+h[l>>3]+ +h[n>>3];h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[m>>3]*+h[l>>3]+ +h[m+8>>3]*+h[k>>3]+ +h[n+8>>3];c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[d>>2]=1;p=c[d>>2]|0;i=b;return p|0}function cq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=yA(c[f>>2]|0,129941)|0;d=c[f>>2]|0;if(c[j>>2]|0){k=c[j>>2]|0;l=c[g>>2]|0;m=jq(d,k,l)|0;i=e;return m|0}else{k=(c[h>>2]|0)!=0?c[h>>2]|0:178518;l=c[g>>2]|0;m=jq(d,k,l)|0;i=e;return m|0}return 0}function dq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+8|0;g=e;h=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;c[j>>2]=b;c[k>>2]=d;if((kB(c[j>>2]|0)|0)<2){c[h>>2]=0;n=c[h>>2]|0;i=e;return n|0}c[m>>2]=bq(c[j>>2]|0)|0;d=kq(c[j>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+d;if(!(c[c[k>>2]>>2]|0)){c[h>>2]=c[m>>2];n=c[h>>2]|0;i=e;return n|0}if(a[138998]|0){d=c[24742]|0;b=wB(c[j>>2]|0)|0;o=c[(c[k>>2]|0)+4>>2]|0;c[g>>2]=b;c[g+4>>2]=o;Y2(d,129949,g)|0}if((c[c[k>>2]>>2]|0)>>>0>2){switch(c[c[k>>2]>>2]|0){case 3:{c[l>>2]=Wq(c[j>>2]|0,1)|0;break}case 4:{c[l>>2]=Wq(c[j>>2]|0,0)|0;break}case 6:case 5:break;case 10:case 9:case 7:case 8:case 14:case 13:case 11:case 12:{Vq(c[j>>2]|0,c[c[k>>2]>>2]|0)|0;break}case 15:{c[l>>2]=Wq(c[j>>2]|0,-1)|0;break}default:if((c[c[k>>2]>>2]|0)!=1?(c[c[k>>2]>>2]|0)!=2:0){c[f>>2]=c[(c[k>>2]|0)+4>>2];$z(0,129972,f)|0}}c[h>>2]=(c[m>>2]|0)+(c[l>>2]|0);n=c[h>>2]|0;i=e;return n|0}else{if(lq(c[j>>2]|0)|0){mq();O4(c[12779]|0);c[12779]=0;c[h>>2]=c[m>>2];n=c[h>>2]|0;i=e;return n|0}nq(c[j>>2]|0);if((c[c[k>>2]>>2]|0)==2)c[l>>2]=oq()|0;else c[l>>2]=pq()|0;if(c[l>>2]|0)qq(c[j>>2]|0);mq();O4(c[12779]|0);c[12779]=0;c[h>>2]=(c[l>>2]|0)+(c[m>>2]|0);n=c[h>>2]|0;i=e;return n|0}return 0}function eq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d;c[f>>2]=a;c[g>>2]=b;if((kB(c[f>>2]|0)|0)<2){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{jq(c[f>>2]|0,c[g>>2]|0,h)|0;c[e>>2]=dq(c[f>>2]|0,h)|0;j=c[e>>2]|0;i=d;return j|0}return 0}function fq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;e=eq(a,yA(c[d>>2]|0,129941)|0)|0;i=b;return e|0}function gq(b,e){b=b|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;f=i;i=i+48|0;j=f;k=f+40|0;l=f+28|0;m=f+24|0;c[k>>2]=e;e=yA(c[k>>2]|0,13e4)|0;c[m>>2]=e;if(!((e|0)!=0?(rq(c[m>>2]|0,l,1.0)|0)!=0:0))n=3;do if((n|0)==3){e=yA(c[k>>2]|0,130004)|0;c[m>>2]=e;if((e|0)!=0?(rq(c[m>>2]|0,l,.800000011920929)|0)!=0:0)break;g[l+4>>2]=4.0;g[l>>2]=4.0;a[l+8>>0]=1}while(0);if(!(a[138998]|0)){c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];i=f;return}m=c[24742]|0;o=+g[l>>2];p=+g[l+4>>2];c[j>>2]=d[l+8>>0];h[j+8>>3]=o;h[j+16>>3]=p;Y2(m,130009,j)|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];i=f;return}function hq(b,e){b=b|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;f=i;i=i+48|0;j=f;k=f+40|0;l=f+28|0;m=f+24|0;c[k>>2]=e;e=yA(c[k>>2]|0,130004)|0;c[m>>2]=e;if(!((e|0)!=0?(rq(c[m>>2]|0,l,1.0)|0)!=0:0))n=3;do if((n|0)==3){e=yA(c[k>>2]|0,13e4)|0;c[m>>2]=e;if((e|0)!=0?(rq(c[m>>2]|0,l,1.25)|0)!=0:0)break;g[l+4>>2]=3.200000047683716;g[l>>2]=3.200000047683716;a[l+8>>0]=1}while(0);if(!(a[138998]|0)){c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];i=f;return}m=c[24742]|0;o=+g[l>>2];p=+g[l+4>>2];c[j>>2]=d[l+8>>0];h[j+8>>3]=o;h[j+16>>3]=p;Y2(m,130042,j)|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];i=f;return}function iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e;l=e+12|0;m=e+8|0;c[g>>2]=b;c[j>>2]=d;c[m>>2]=yA(c[g>>2]|0,130614)|0;if((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=0:0){h[k>>3]=+x3(c[m>>2]|0,l);do if((c[l>>2]|0)==(c[m>>2]|0)){if((kO(c[m>>2]|0)|0)<<24>>24){h[k>>3]=0.0;break}c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}while(0);while(1){if(!(+h[k>>3]>180.0))break;h[k>>3]=+h[k>>3]-360.0}while(1){o=+h[k>>3];if(!(+h[k>>3]<=-180.0))break;h[k>>3]=o+360.0}h[c[j>>2]>>3]=o/180.0*3.141592653589793;c[f>>2]=1;n=c[f>>2]|0;i=e;return n|0}c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}function jq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;g=f+8|0;h=f;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=51156;if((c[k>>2]|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){while(1){if(!(c[(c[m>>2]|0)+4>>2]|0))break;e=(O3(c[k>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[(c[m>>2]|0)+8>>2]|0)|0)!=0;o=c[m>>2]|0;if(!e){p=6;break}c[m>>2]=o+16}if((p|0)==6){if(!(c[o+12>>2]|0)){c[h>>2]=c[(c[m>>2]|0)+4>>2];$z(0,130188,h)|0;c[m>>2]=51156}c[c[l>>2]>>2]=c[c[m>>2]>>2];c[(c[l>>2]|0)+4>>2]=c[(c[m>>2]|0)+12>>2];if((c[c[m>>2]>>2]|0)==18)Hq(c[j>>2]|0,(c[k>>2]|0)+(c[(c[m>>2]|0)+8>>2]|0)|0,c[l>>2]|0)}if(c[(c[m>>2]|0)+4>>2]|0){q=c[l>>2]|0;i=f;return q|0}c[n>>2]=(uO(c[k>>2]|0,63)|0)&255;if((c[n>>2]|0)==63){c[g>>2]=c[k>>2];$z(0,130230,g)|0;c[n>>2]=0}if(c[n>>2]|0){c[c[l>>2]>>2]=c[12785];c[(c[l>>2]|0)+4>>2]=c[12788]}else{c[c[l>>2]>>2]=c[12789];c[(c[l>>2]|0)+4>>2]=c[12792]}if((c[c[l>>2]>>2]|0)!=18){q=c[l>>2]|0;i=f;return q|0}Hq(c[j>>2]|0,178518,c[l>>2]|0);q=c[l>>2]|0;i=f;return q|0}c[c[l>>2]>>2]=c[12785];c[(c[l>>2]|0)+4>>2]=c[12788];q=c[l>>2]|0;i=f;return q|0}function kq(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;d=i;i=i+64|0;e=d+24|0;f=d+16|0;g=d+56|0;j=d+52|0;k=d;l=d+48|0;m=d+44|0;n=d+40|0;c[j>>2]=b;b=yA(c[j>>2]|0,178751)|0;c[n>>2]=b;if((b|0)!=0?(b=c[n>>2]|0,c[f>>2]=k,c[f+4>>2]=k+8,n=l3(b,143965,f)|0,c[m>>2]=n,(n|0)!=0):0){if(+N(+(+h[k>>3]))<1.0e-09){c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}if((c[m>>2]|0)!=1){if(+N(+(+h[k+8>>3]))<1.0e-09){c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}}else h[k+8>>3]=+h[k>>3];if(+h[k+8>>3]==1.0?+h[k>>3]==1.0:0){c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}if(a[138998]|0){m=c[24742]|0;p=+h[k+8>>3];h[e>>3]=+h[k>>3];h[e+8>>3]=p;Y2(m,130165,e)|0}c[l>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;e=c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0;h[e>>3]=+h[e>>3]*+h[k>>3];e=(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[e>>3]=+h[e>>3]*+h[k+8>>3];c[l>>2]=aC(c[j>>2]|0,c[l>>2]|0)|0}c[g>>2]=1;o=c[g>>2]|0;i=d;return o|0}c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}function lq(b){b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;e=d+44|0;f=d+40|0;j=d+36|0;k=d+32|0;l=d+28|0;m=d+16|0;n=d+12|0;o=d;c[f>>2]=b;c[12875]=kB(c[f>>2]|0)|0;Or();c[12890]=cK((c[12875]|0)*96|0)|0;c[j>>2]=$B(c[f>>2]|0)|0;c[l>>2]=c[12890];gq(o,c[f>>2]|0);c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];if(a[m+8>>0]|0){c[n>>2]=1;g[m>>2]=+g[m>>2]/72.0;g[m+4>>2]=+g[m+4>>2]/72.0}else c[n>>2]=2;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[12875]|0)){p=9;break}h[(c[l>>2]|0)+8>>3]=+h[c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]>>3];h[(c[l>>2]|0)+8+8>>3]=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];if(Cb[c[n>>2]&3]((c[l>>2]|0)+40|0,c[j>>2]|0,+g[m>>2],+g[m+4>>2])|0){p=7;break}c[(c[l>>2]|0)+8+16>>2]=c[k>>2];c[(c[l>>2]|0)+8+20>>2]=1;c[c[l>>2]>>2]=c[j>>2];c[(c[l>>2]|0)+88>>2]=0;c[j>>2]=aC(c[f>>2]|0,c[j>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+96;c[k>>2]=(c[k>>2]|0)+1}if((p|0)==7){O4(c[12890]|0);c[12890]=0;c[e>>2]=1;q=c[e>>2]|0;i=d;return q|0}else if((p|0)==9){c[e>>2]=0;q=c[e>>2]|0;i=d;return q|0}return 0}function mq(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=c[12890];c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[12875]|0))break;Kt((c[d>>2]|0)+40|0);c[d>>2]=(c[d>>2]|0)+96;c[b>>2]=(c[b>>2]|0)+1}Jt();os();O4(c[12890]|0);i=a;return}function nq(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=i;i=i+160|0;e=d+144|0;f=d+140|0;g=d+112|0;j=d+96|0;k=d+136|0;l=d+88|0;m=d+80|0;n=d+72|0;o=d+64|0;p=d+56|0;q=d+48|0;r=d+40|0;s=d+32|0;t=d+24|0;u=d+16|0;v=d+8|0;w=d;x=d+132|0;y=d+128|0;c[e>>2]=b;c[x>>2]=c[12890];c[y>>2]=(c[x>>2]|0)+40;h[l>>3]=+h[(c[x>>2]|0)+8>>3];h[m>>3]=+h[(c[x>>2]|0)+8+8>>3];h[n>>3]=+h[c[y>>2]>>3]+ +h[l>>3];h[p>>3]=+h[(c[y>>2]|0)+8>>3]+ +h[m>>3];h[o>>3]=+h[(c[y>>2]|0)+16>>3]+ +h[l>>3];h[q>>3]=+h[(c[y>>2]|0)+16+8>>3]+ +h[m>>3];c[k>>2]=1;while(1){if((c[k>>2]|0)>=(c[12875]|0))break;c[x>>2]=(c[x>>2]|0)+96;c[y>>2]=(c[x>>2]|0)+40;h[l>>3]=+h[(c[x>>2]|0)+8>>3];h[m>>3]=+h[(c[x>>2]|0)+8+8>>3];h[r>>3]=+h[c[y>>2]>>3]+ +h[l>>3];h[t>>3]=+h[(c[y>>2]|0)+8>>3]+ +h[m>>3];h[s>>3]=+h[(c[y>>2]|0)+16>>3]+ +h[l>>3];h[u>>3]=+h[(c[y>>2]|0)+16+8>>3]+ +h[m>>3];if(+h[r>>3]<+h[n>>3])h[n>>3]=+h[r>>3];if(+h[t>>3]<+h[p>>3])h[p>>3]=+h[t>>3];if(+h[s>>3]>+h[o>>3])h[o>>3]=+h[s>>3];if(+h[u>>3]>+h[q>>3])h[q>>3]=+h[u>>3];c[k>>2]=(c[k>>2]|0)+1}c[f>>2]=yA(c[e>>2]|0,130153)|0;if((c[f>>2]|0)!=0?(a[c[f>>2]>>0]|0)!=0:0)h[4197]=+t3(c[f>>2]|0);h[v>>3]=+h[4197]*(+h[q>>3]-+h[p>>3]);h[w>>3]=+h[4197]*(+h[o>>3]-+h[n>>3]);h[g>>3]=+h[n>>3]-+h[w>>3];h[g+8>>3]=+h[p>>3]-+h[v>>3];h[j>>3]=+h[o>>3]+ +h[w>>3];h[j+8>>3]=+h[q>>3]+ +h[v>>3];zq(g,j);i=d;return}function oq(){var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;b=i;i=i+64|0;d=b+24|0;e=b+16|0;f=b+52|0;g=b+48|0;j=b+44|0;k=b+40|0;l=b;c[g>>2]=0;c[j>>2]=0;if((c[12780]|0)==0|(c[12781]|0)>0)c[j>>2]=sq(c[g>>2]|0)|0;if((c[j>>2]|0)==0|(c[12781]|0)==0){c[f>>2]=0;m=c[f>>2]|0;i=b;return m|0}tq();h[l>>3]=(+h[4201]+ +h[4200])/2.0;h[l+8>>3]=(+h[4199]+ +h[4198])/2.0;do{c[d>>2]=c[l>>2];c[d+4>>2]=c[l+4>>2];c[d+8>>2]=c[l+8>>2];c[d+12>>2]=c[l+12>>2];+Gq(d);c[g>>2]=(c[g>>2]|0)+1;if((c[12780]|0)!=0?(c[g>>2]|0)==(c[12781]|0):0)break;c[k>>2]=sq(c[g>>2]|0)|0}while((c[k>>2]|0)!=0);if(a[138998]|0){k=c[24742]|0;c[e>>2]=c[g>>2];Y2(k,130081,e)|0}c[f>>2]=1;m=c[f>>2]|0;i=b;return m|0}function pq(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;i=i+48|0;d=b+8|0;e=b;f=b+32|0;g=b+28|0;h=b+24|0;j=b+20|0;k=b+16|0;l=b+12|0;c[g>>2]=0;c[h>>2]=0;c[j>>2]=0;c[k>>2]=0;if((c[12780]|0)==0|(c[12781]|0)>0)c[h>>2]=sq(c[g>>2]|0)|0;if((c[h>>2]|0)==0|(c[12781]|0)==0){c[f>>2]=0;m=c[f>>2]|0;i=b;return m|0}tq();uq(0);ru(0,1);while(1){wq();c[g>>2]=(c[g>>2]|0)+1;if((c[12780]|0)!=0?(c[g>>2]|0)==(c[12781]|0):0)break;c[l>>2]=sq(c[g>>2]|0)|0;if(!(c[l>>2]|0))break;if((c[l>>2]|0)>=(c[h>>2]|0))c[j>>2]=(c[j>>2]|0)+1;else c[j>>2]=0;c[h>>2]=c[l>>2];n=(c[j>>2]|0)==0;c[12782]=1;if(!n){c[k>>2]=(c[k>>2]|0)+1;xq()}uq(1);ru(0,1)}if(a[138998]|0){j=c[24742]|0;c[e>>2]=c[g>>2];Y2(j,130081,e)|0;e=c[24742]|0;c[d>>2]=c[k>>2];Y2(e,130108,d)|0}yq();c[f>>2]=1;m=c[f>>2]|0;i=b;return m|0}function qq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[b+8>>2]=a;c[e>>2]=c[12890];c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[12875]|0))break;h[c[(c[(c[c[e>>2]>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[(c[e>>2]|0)+8>>3];h[(c[(c[(c[c[e>>2]>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[e>>2]|0)+8+8>>3];c[e>>2]=(c[e>>2]|0)+96;c[d>>2]=(c[d>>2]|0)+1}i=b;return}function rq(b,d,e){b=b|0;d=d|0;e=+e;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;h=f;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;c[k>>2]=b;c[l>>2]=d;g[m>>2]=e;while(1){d=(r1(a[c[k>>2]>>0]|0)|0)!=0;q=c[k>>2]|0;if(!d)break;c[k>>2]=q+1}if((a[q>>0]|0)==43){c[k>>2]=(c[k>>2]|0)+1;a[(c[l>>2]|0)+8>>0]=1}else a[(c[l>>2]|0)+8>>0]=0;q=c[k>>2]|0;c[h>>2]=o;c[h+4>>2]=p;k=l3(q,130075,h)|0;c[n>>2]=k;if(!k){c[j>>2]=0;r=c[j>>2]|0;i=f;return r|0}if((c[n>>2]|0)==1)g[p>>2]=+g[o>>2];e=+g[o>>2]/+g[m>>2];if(a[(c[l>>2]|0)+8>>0]|0){g[c[l>>2]>>2]=e;g[(c[l>>2]|0)+4>>2]=+g[p>>2]/+g[m>>2]}else{g[c[l>>2]>>2]=1.0+e;g[(c[l>>2]|0)+4>>2]=+g[p>>2]/+g[m>>2]+1.0}c[j>>2]=1;r=c[j>>2]|0;i=f;return r|0}function sq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=i;i=i+64|0;e=b+24|0;f=b+8|0;g=b;h=b+60|0;j=b+56|0;k=b+52|0;l=b+48|0;m=b+44|0;n=b+40|0;c[h>>2]=a;c[j>>2]=0;c[m>>2]=c[12890];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[12875]|0))break;c[(c[12890]|0)+((c[k>>2]|0)*96|0)+32>>2]=0;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=((c[12875]|0)-1|0))break;c[n>>2]=(c[m>>2]|0)+96;c[l>>2]=(c[k>>2]|0)+1;while(1){o=c[m>>2]|0;if((c[l>>2]|0)>=(c[12875]|0))break;a=o+8|0;p=(c[m>>2]|0)+40|0;q=(c[n>>2]|0)+8|0;r=(c[n>>2]|0)+40|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];if(Nt(f,p,e,r)|0){c[j>>2]=(c[j>>2]|0)+1;c[(c[m>>2]|0)+32>>2]=1;c[(c[n>>2]|0)+32>>2]=1}c[n>>2]=(c[n>>2]|0)+96;c[l>>2]=(c[l>>2]|0)+1}c[m>>2]=o+96;c[k>>2]=(c[k>>2]|0)+1}if((d[138998]|0|0)<=1){s=c[j>>2]|0;i=b;return s|0}k=c[24742]|0;o=c[j>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=o;Y2(k,130134,g)|0;s=c[j>>2]|0;i=b;return s|0}function tq(){var a=0,b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;a=i;i=i+32|0;b=a+28|0;d=a+24|0;e=a+20|0;f=a+16|0;g=a+12|0;j=a;k=a+8|0;Eq();c[e>>2]=c[12779];while(1){if((c[e>>2]|0)>>>0>=(c[12784]|0)>>>0)break;c[f>>2]=(c[e>>2]|0)+4;if(((c[f>>2]|0)>>>0<(c[12784]|0)>>>0?!(+h[c[c[f>>2]>>2]>>3]!=+h[c[c[e>>2]>>2]>>3]):0)?!(+h[(c[c[f>>2]>>2]|0)+8>>3]!=+h[(c[c[e>>2]>>2]|0)+8>>3]):0){c[d>>2]=2;c[g>>2]=(c[f>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0>=(c[12784]|0)>>>0)break;if(!(+h[c[c[g>>2]>>2]>>3]==+h[c[c[e>>2]>>2]>>3]))break;if(!(+h[(c[c[g>>2]>>2]|0)+8>>3]==+h[(c[c[e>>2]>>2]|0)+8>>3]))break;c[d>>2]=(c[d>>2]|0)+1;c[f>>2]=c[g>>2];c[g>>2]=(c[f>>2]|0)+4}a:do if((c[g>>2]|0)>>>0<(c[12784]|0)>>>0?+h[(c[c[g>>2]>>2]|0)+8>>3]==+h[(c[c[e>>2]>>2]|0)+8>>3]:0){h[j>>3]=(+h[c[c[g>>2]>>2]>>3]-+h[c[c[e>>2]>>2]>>3])/+(c[d>>2]|0);c[b>>2]=1;c[f>>2]=(c[e>>2]|0)+4;while(1){if((c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break a;l=c[c[f>>2]>>2]|0;h[l>>3]=+h[l>>3]+ +(c[b>>2]|0)*+h[j>>3];c[b>>2]=(c[b>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+4}}else m=17;while(0);b:do if((m|0)==17){m=0;c[f>>2]=(c[e>>2]|0)+4;while(1){if((c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break b;c[k>>2]=(c[12890]|0)+((c[(c[c[e>>2]>>2]|0)+16>>2]|0)*96|0);h[j>>3]=+h[(c[k>>2]|0)+40+16>>3]-+h[(c[k>>2]|0)+40>>3];c[k>>2]=(c[12890]|0)+((c[(c[c[f>>2]>>2]|0)+16>>2]|0)*96|0);h[j>>3]=+h[j>>3]+(+h[(c[k>>2]|0)+40+16>>3]-+h[(c[k>>2]|0)+40>>3]);h[c[c[f>>2]>>2]>>3]=+h[c[c[e>>2]>>2]>>3]+ +h[j>>3]/2.0;c[e>>2]=(c[e>>2]|0)+4;c[f>>2]=(c[f>>2]|0)+4}}while(0);c[e>>2]=c[g>>2];continue}c[e>>2]=c[f>>2]}i=a;return}function uq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(c[d>>2]|0)Eq();h[4204]=+h[c[c[12779]>>2]>>3];h[4205]=+h[c[c[12779]>>2]>>3];c[e>>2]=1;while(1){if((c[e>>2]|0)>=(c[12875]|0))break;if(+h[c[(c[12779]|0)+(c[e>>2]<<2)>>2]>>3]<+h[4204])h[4204]=+h[c[(c[12779]|0)+(c[e>>2]<<2)>>2]>>3];if(+h[c[(c[12779]|0)+(c[e>>2]<<2)>>2]>>3]>+h[4205])h[4205]=+h[c[(c[12779]|0)+(c[e>>2]<<2)>>2]>>3];c[e>>2]=(c[e>>2]|0)+1}h[4206]=+h[(c[c[12779]>>2]|0)+8>>3];h[4207]=+h[(c[(c[12779]|0)+((c[12875]|0)-1<<2)>>2]|0)+8>>3];h[4209]=+h[4207]-+h[4206];h[4208]=+h[4205]-+h[4204];i=b;return}function vq(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a+4|0;d=a;if((c[12783]|0)>>>0<(c[12784]|0)>>>0){e=c[12783]|0;c[12783]=e+4;c[d>>2]=c[e>>2];c[b>>2]=c[d>>2];f=c[b>>2]|0;i=a;return f|0}else{c[b>>2]=0;f=c[b>>2]|0;i=a;return f|0}return 0}function wq(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=c[12890];Aq();c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[12875]|0))break;if(!((c[12782]|0)==0?(c[(c[d>>2]|0)+32>>2]|0)==0:0))Bq(c[d>>2]|0);c[d>>2]=(c[d>>2]|0)+96;c[b>>2]=(c[b>>2]|0)+1}i=a;return}function xq(){var a=0,b=0,c=0,d=0,e=0,f=0;a=i;i=i+48|0;b=a+40|0;c=a+32|0;d=a+16|0;e=a;h[e>>3]=+h[4200];h[e+8>>3]=+h[4198];h[d>>3]=+h[4201];h[d+8>>3]=+h[4199];h[b>>3]=+h[4188]*(+h[e+8>>3]-+h[d+8>>3]);h[c>>3]=+h[4188]*(+h[e>>3]-+h[d>>3]);h[e>>3]=+h[e>>3]+ +h[c>>3];f=e+8|0;h[f>>3]=+h[f>>3]+ +h[b>>3];h[d>>3]=+h[d>>3]-+h[c>>3];c=d+8|0;h[c>>3]=+h[c>>3]-+h[b>>3];zq(d,e);i=a;return}function yq(){_r();bs();du();Hr();return}function zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;h[4201]=+h[c[e>>2]>>3];h[4200]=+h[c[f>>2]>>3];h[4199]=+h[(c[e>>2]|0)+8>>3];h[4198]=+h[(c[f>>2]|0)+8>>3];g=+h[4201];h[4189]=g;h[4191]=g;g=+h[4200];h[4193]=g;h[4195]=g;g=+h[4198];h[4196]=g;h[4192]=g;g=+h[4199];h[4194]=g;h[4190]=g;i=d;return}function Aq(){var a=0,b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;a=i;i=i+64|0;b=a+60|0;d=a+56|0;e=a+52|0;f=a+48|0;g=a+44|0;j=a+32|0;k=a+24|0;l=a+16|0;m=a+8|0;n=a;o=a+40|0;c[b>>2]=c[12890];c[d>>2]=c[b>>2];c[e>>2]=c[b>>2];c[f>>2]=c[b>>2];c[g>>2]=c[b>>2];h[j>>3]=+Pr((c[b>>2]|0)+8|0,33512);h[k>>3]=+Pr((c[b>>2]|0)+8|0,33528);h[l>>3]=+Pr((c[b>>2]|0)+8|0,33544);h[m>>3]=+Pr((c[b>>2]|0)+8|0,33560);c[b>>2]=(c[b>>2]|0)+96;c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[12875]|0))break;h[n>>3]=+Pr((c[b>>2]|0)+8|0,33512);if(+h[n>>3]<+h[j>>3]){h[j>>3]=+h[n>>3];c[d>>2]=c[b>>2]}h[n>>3]=+Pr((c[b>>2]|0)+8|0,33544);if(+h[n>>3]<+h[l>>3]){h[l>>3]=+h[n>>3];c[f>>2]=c[b>>2]}h[n>>3]=+Pr((c[b>>2]|0)+8|0,33528);if(+h[n>>3]<+h[k>>3]){h[k>>3]=+h[n>>3];c[e>>2]=c[b>>2]}h[n>>3]=+Pr((c[b>>2]|0)+8|0,33560);if(+h[n>>3]<+h[m>>3]){h[m>>3]=+h[n>>3];c[g>>2]=c[b>>2]}c[b>>2]=(c[b>>2]|0)+96;c[o>>2]=(c[o>>2]|0)+1}ps((c[d>>2]|0)+8|0,+h[4189],+h[4190]);ps((c[f>>2]|0)+8|0,+h[4193],+h[4194]);ps((c[e>>2]|0)+8|0,+h[4191],+h[4192]);ps((c[g>>2]|0)+8|0,+h[4195],+h[4196]);i=a;return}function Bq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=i;i=i+112|0;d=b+80|0;e=b+64|0;f=b+48|0;g=b+108|0;j=b+104|0;k=b+100|0;l=b+96|0;m=b+40|0;n=b+32|0;o=b+24|0;p=b+16|0;q=b+8|0;r=b;c[g>>2]=a;c[j>>2]=c[(c[g>>2]|0)+88>>2];h[m>>3]=0.0;h[n>>3]=0.0;h[o>>3]=0.0;c[k>>2]=c[c[j>>2]>>2];c[l>>2]=c[c[k>>2]>>2];while(1){if(!(c[l>>2]|0))break;a=(c[j>>2]|0)+8|0;s=(c[k>>2]|0)+8|0;t=(c[l>>2]|0)+8|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];c[d>>2]=c[t>>2];c[d+4>>2]=c[t+4>>2];c[d+8>>2]=c[t+8>>2];c[d+12>>2]=c[t+12>>2];h[r>>3]=+Cq(f,e,d);t=(c[j>>2]|0)+8|0;s=(c[k>>2]|0)+8|0;a=(c[l>>2]|0)+8|0;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];Dq(f,e,d,p,q);h[n>>3]=+h[n>>3]+ +h[r>>3]*+h[p>>3];h[o>>3]=+h[o>>3]+ +h[r>>3]*+h[q>>3];h[m>>3]=+h[m>>3]+ +h[r>>3];c[k>>2]=c[l>>2];c[l>>2]=c[c[l>>2]>>2]}h[(c[g>>2]|0)+8>>3]=+h[n>>3]/+h[m>>3];h[(c[g>>2]|0)+8+8>>3]=+h[o>>3]/+h[m>>3];i=b;return}function Cq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=i;i=i+16|0;e=d;h[e>>3]=+N(+(+h[a>>3]*(+h[b+8>>3]-+h[c+8>>3])+ +h[b>>3]*(+h[c+8>>3]-+h[a+8>>3])+ +h[c>>3]*(+h[a+8>>3]-+h[b+8>>3])))/2.0;i=d;return +(+h[e>>3])}function Dq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0;g=i;i=i+16|0;j=g+4|0;k=g;c[j>>2]=e;c[k>>2]=f;h[c[j>>2]>>3]=(+h[a>>3]+ +h[b>>3]+ +h[d>>3])/3.0;h[c[k>>2]>>3]=(+h[a+8>>3]+ +h[b+8>>3]+ +h[d+8>>3])/3.0;i=g;return}function Eq(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+16|0;b=a+8|0;d=a+4|0;e=a;if(!(c[12779]|0)){c[12779]=cK(c[12875]<<2)|0;c[12784]=(c[12779]|0)+(c[12875]<<2)}c[d>>2]=c[12779];c[e>>2]=c[12890];os();c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[12875]|0))break;f=(c[e>>2]|0)+8|0;g=c[d>>2]|0;c[d>>2]=g+4;c[g>>2]=f;c[(c[e>>2]|0)+88>>2]=0;c[(c[e>>2]|0)+8+20>>2]=1;c[e>>2]=(c[e>>2]|0)+96;c[b>>2]=(c[b>>2]|0)+1}w3(c[12779]|0,c[12875]|0,4,69);c[12783]=c[12779];i=a;return}function Fq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[k>>2]=c[c[g>>2]>>2];do if(!(+h[(c[j>>2]|0)+8>>3]<+h[(c[k>>2]|0)+8>>3])){if(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3]){c[e>>2]=1;break}if(+h[c[j>>2]>>3]<+h[c[k>>2]>>3]){c[e>>2]=-1;break}if(+h[c[j>>2]>>3]>+h[c[k>>2]>>3]){c[e>>2]=1;break}else{c[e>>2]=0;break}}else c[e>>2]=-1;while(0);i=d;return c[e>>2]|0}function Gq(a){a=a|0;var b=0,d=0,e=0,f=0.0;a=i;i=i+16|0;b=a+12|0;d=a+8|0;e=a;c[d>>2]=c[12890];h[e>>3]=+h[4188]+1.0;c[b>>2]=0;while(1){f=+h[e>>3];if((c[b>>2]|0)>=(c[12875]|0))break;h[(c[d>>2]|0)+8>>3]=f*+h[(c[d>>2]|0)+8>>3];h[(c[d>>2]|0)+8+8>>3]=+h[e>>3]*+h[(c[d>>2]|0)+8+8>>3];c[d>>2]=(c[d>>2]|0)+96;c[b>>2]=(c[b>>2]|0)+1}i=a;return +f}function Hq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;e=i;i=i+32|0;f=e;g=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;d=c[j>>2]|0;c[f>>2]=l;j=(l3(d,175023,f)|0)>0;if(j&(c[l>>2]|0)>=0)c[(c[k>>2]|0)+8>>2]=c[l>>2];else c[(c[k>>2]|0)+8>>2]=1e3;l=c[g>>2]|0;m=+fO(l,qA(c[g>>2]|0,0,130277,0)|0,-4.0,-1.0e10);h[(c[k>>2]|0)+16>>3]=m;i=e;return}function Iq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;j=h+32|0;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[r>>2]=2147483647;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0))break;c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]=-1;c[o>>2]=(c[o>>2]|0)+1}c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]=0;Jq(c[n>>2]|0,c[j>>2]|0);a:do if(!(c[(c[k>>2]|0)+8>>2]|0))b:while(1){if(!((Kq(c[n>>2]|0,p)|0)<<24>>24))break a;c[r>>2]=c[(c[m>>2]|0)+(c[p>>2]<<2)>>2];c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[(c[k>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0))continue b;c[q>>2]=c[(c[(c[k>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0)+(c[o>>2]<<2)>>2];if(+(c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]|0)<-.5){c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]=(c[r>>2]|0)+1;Lq(c[n>>2]|0,c[q>>2]|0)|0}c[o>>2]=(c[o>>2]|0)+1}}else c:while(1){if(!((Kq(c[n>>2]|0,p)|0)<<24>>24))break a;c[r>>2]=c[(c[m>>2]|0)+(c[p>>2]<<2)>>2];c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[(c[k>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0))continue c;c[q>>2]=c[(c[(c[k>>2]|0)+((c[p>>2]|0)*20|0)+4>>2]|0)+(c[o>>2]<<2)>>2];if(+(c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]|0)<-.5){c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]=(c[r>>2]|0)+~~+g[(c[(c[k>>2]|0)+((c[p>>2]|0)*20|0)+8>>2]|0)+(c[o>>2]<<2)>>2];Lq(c[n>>2]|0,c[q>>2]|0)|0}c[o>>2]=(c[o>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0))break;if(+(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)<-.5)c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]=(c[r>>2]|0)+10;c[o>>2]=(c[o>>2]|0)+1}i=h;return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[c[e>>2]>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+8>>2]=1;i=d;return}function Kq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;if((c[(c[g>>2]|0)+12>>2]|0)>=(c[(c[g>>2]|0)+8>>2]|0)){a[f>>0]=0;j=a[f>>0]|0;i=e;return j|0}else{d=(c[g>>2]|0)+12|0;b=c[d>>2]|0;c[d>>2]=b+1;c[c[h>>2]>>2]=c[(c[c[g>>2]>>2]|0)+(b<<2)>>2];a[f>>0]=1;j=a[f>>0]|0;i=e;return j|0}return 0}function Lq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;if((c[(c[g>>2]|0)+8>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0)){a[f>>0]=0;j=a[f>>0]|0;i=e;return j|0}else{d=c[h>>2]|0;h=(c[g>>2]|0)+8|0;b=c[h>>2]|0;c[h>>2]=b+1;c[(c[c[g>>2]>>2]|0)+(b<<2)>>2]=d;a[f>>0]=1;j=a[f>>0]|0;i=e;return j|0}return 0}function Mq(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;j=i;i=i+48|0;k=j+44|0;l=j+40|0;m=j+32|0;n=j+28|0;o=j+24|0;p=j+20|0;q=j+16|0;r=j+12|0;s=j+8|0;t=j+4|0;u=j;c[k>>2]=a;c[l>>2]=b;c[j+36>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]=0;Jq(c[n>>2]|0,c[k>>2]|0);c[r>>2]=0;a:while(1){if(!((Kq(c[n>>2]|0,s)|0)<<24>>24))break;c[u>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];v=c[s>>2]|0;if((c[u>>2]|0)>(c[o>>2]|0)){w=4;break}h=c[r>>2]|0;c[r>>2]=h+1;c[(c[p>>2]|0)+(h<<2)>>2]=v;c[q>>2]=1;while(1){if((c[q>>2]|0)>=(c[(c[l>>2]|0)+((c[s>>2]|0)*20|0)>>2]|0))continue a;c[t>>2]=c[(c[(c[l>>2]|0)+((c[s>>2]|0)*20|0)+4>>2]|0)+(c[q>>2]<<2)>>2];if(+(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)<-.5){c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]=(c[u>>2]|0)+1;Lq(c[n>>2]|0,c[t>>2]|0)|0}c[q>>2]=(c[q>>2]|0)+1}}if((w|0)==4)c[(c[m>>2]|0)+(v<<2)>>2]=-1;while(1){if(!((Kq(c[n>>2]|0,s)|0)<<24>>24))break;c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]=-1}c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]=-1;i=j;return c[r>>2]|0}function Nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=cK(c[f>>2]<<2)|0;c[c[e>>2]>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=d;return}function Oq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);i=b;return}function Pq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+28|0;j=f+24|0;k=f+20|0;l=f;m=f+16|0;n=f+12|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;if(a[138998]|0)Y2(c[24742]|0,130624,f+8|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[l>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;if((c[m>>2]|0)!=(c[n>>2]|0))h[l>>3]=+h[l>>3]+ +h[(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}h[(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=-+h[l>>3];c[m>>2]=(c[m>>2]|0)+1}m=Rs(c[j>>2]|0,c[k>>2]|0,(c[g>>2]|0)-1|0)|0;i=f;return m|0}function Qq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Mm(c[f>>2]|0,c[f>>2]|0,0.0)|0;c[j>>2]=Mm(c[f>>2]|0,c[f>>2]|0,0.0)|0;c[n>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;c[o>>2]=TA(c[e>>2]|0,c[n>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;b=c[o>>2]|0;c[l>>2]=(c[c[((c[c[o>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]>>2]|0)>>>4;b=c[o>>2]|0;c[m>>2]=(c[c[((c[c[o>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]>>2]|0)>>>4;if((c[l>>2]|0)!=(c[m>>2]|0)){p=-1.0/+h[(c[(c[o>>2]|0)+8>>2]|0)+136>>3];h[(c[(c[g>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=p;h[(c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=p}c[o>>2]=UA(c[e>>2]|0,c[o>>2]|0,c[n>>2]|0)|0}c[n>>2]=aC(c[e>>2]|0,c[n>>2]|0)|0}c[k>>2]=Pq(c[f>>2]|0,c[g>>2]|0,c[j>>2]|0)|0;if(!(c[k>>2]|0)){q=c[g>>2]|0;Nm(q);r=c[j>>2]|0;Nm(r);s=c[k>>2]|0;i=d;return s|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[f>>2]|0))break;c[m>>2]=0;while(1){t=c[l>>2]|0;if((c[m>>2]|0)>=(c[f>>2]|0))break;h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[(c[j>>2]|0)+(c[l>>2]<<2)>>2]|0)+(t<<3)>>3]+ +h[(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]-+h[(c[(c[j>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]*2.0;c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=t+1}q=c[g>>2]|0;Nm(q);r=c[j>>2]|0;Nm(r);s=c[k>>2]|0;i=d;return s|0}function Rq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;j=i;i=i+112|0;k=j+48|0;l=j+100|0;m=j+96|0;n=j+92|0;o=j+88|0;p=j+40|0;q=j+84|0;r=j+80|0;s=j+76|0;t=j+32|0;u=j+24|0;v=j+16|0;w=j+8|0;x=j;y=j+72|0;z=j+68|0;A=j+64|0;B=j+60|0;C=j+56|0;D=j+52|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;h[p>>3]=f;c[q>>2]=g;c[s>>2]=0;c[y>>2]=cK(c[o>>2]<<3)|0;c[z>>2]=cK(c[o>>2]<<3)|0;c[A>>2]=cK(c[o>>2]<<3)|0;c[B>>2]=cK(c[o>>2]<<3)|0;c[C>>2]=cK(c[o>>2]<<3)|0;c[D>>2]=cK(c[o>>2]<<3)|0;ht(c[o>>2]|0,c[n>>2]|0,c[D>>2]|0);at(c[o>>2]|0,c[D>>2]|0);at(c[o>>2]|0,c[m>>2]|0);ct(c[l>>2]|0,c[o>>2]|0,c[m>>2]|0,c[B>>2]|0);et(c[o>>2]|0,c[D>>2]|0,c[B>>2]|0,c[y>>2]|0);ht(c[o>>2]|0,c[y>>2]|0,c[z>>2]|0);h[v>>3]=+it(c[o>>2]|0,c[y>>2]|0,c[y>>2]|0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0))break;f=+jt(c[o>>2]|0,c[y>>2]|0);if(!(f>+h[p>>3]))break;ct(c[l>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);h[x>>3]=+it(c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);if(+h[x>>3]==0.0)break;h[t>>3]=+h[v>>3]/+h[x>>3];gt(c[o>>2]|0,c[z>>2]|0,+h[t>>3],c[C>>2]|0);ft(c[o>>2]|0,c[m>>2]|0,c[C>>2]|0,c[m>>2]|0);if((c[r>>2]|0)<((c[q>>2]|0)-1|0)){gt(c[o>>2]|0,c[A>>2]|0,+h[t>>3],c[A>>2]|0);et(c[o>>2]|0,c[y>>2]|0,c[A>>2]|0,c[y>>2]|0);h[w>>3]=+it(c[o>>2]|0,c[y>>2]|0,c[y>>2]|0);if(+h[v>>3]==0.0){E=7;break}h[u>>3]=+h[w>>3]/+h[v>>3];h[v>>3]=+h[w>>3];gt(c[o>>2]|0,c[z>>2]|0,+h[u>>3],c[z>>2]|0);ft(c[o>>2]|0,c[y>>2]|0,c[z>>2]|0,c[z>>2]|0)}c[r>>2]=(c[r>>2]|0)+1}if((E|0)==7){$z(1,130650,k)|0;c[s>>2]=1}O4(c[y>>2]|0);O4(c[z>>2]|0);O4(c[A>>2]|0);O4(c[B>>2]|0);O4(c[C>>2]|0);O4(c[D>>2]|0);i=j;return c[s>>2]|0}function Sq(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;l=i;i=i+112|0;m=l+48|0;n=l+100|0;o=l+96|0;p=l+92|0;q=l+88|0;r=l+40|0;s=l+84|0;t=l+104|0;u=l+80|0;v=l+76|0;w=l+32|0;x=l+24|0;y=l+16|0;z=l+8|0;A=l;B=l+72|0;C=l+68|0;D=l+64|0;E=l+60|0;F=l+56|0;G=l+52|0;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;h[r>>3]=g;c[s>>2]=j;a[t>>0]=k;c[v>>2]=0;c[B>>2]=cK(c[q>>2]<<3)|0;c[C>>2]=cK(c[q>>2]<<3)|0;c[D>>2]=cK(c[q>>2]<<3)|0;c[E>>2]=cK(c[q>>2]<<3)|0;c[F>>2]=cK(c[q>>2]<<3)|0;c[G>>2]=cK(c[q>>2]<<3)|0;ht(c[q>>2]|0,c[p>>2]|0,c[G>>2]|0);if(a[t>>0]|0){at(c[q>>2]|0,c[G>>2]|0);at(c[q>>2]|0,c[o>>2]|0)}dt(c[n>>2]|0,c[q>>2]|0,c[o>>2]|0,c[E>>2]|0);et(c[q>>2]|0,c[G>>2]|0,c[E>>2]|0,c[B>>2]|0);ht(c[q>>2]|0,c[B>>2]|0,c[C>>2]|0);h[y>>3]=+it(c[q>>2]|0,c[B>>2]|0,c[B>>2]|0);c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break;g=+jt(c[q>>2]|0,c[B>>2]|0);if(!(g>+h[r>>3]))break;dt(c[n>>2]|0,c[q>>2]|0,c[C>>2]|0,c[D>>2]|0);h[A>>3]=+it(c[q>>2]|0,c[C>>2]|0,c[D>>2]|0);if(+h[A>>3]==0.0)break;h[w>>3]=+h[y>>3]/+h[A>>3];gt(c[q>>2]|0,c[C>>2]|0,+h[w>>3],c[F>>2]|0);ft(c[q>>2]|0,c[o>>2]|0,c[F>>2]|0,c[o>>2]|0);if((c[u>>2]|0)<((c[s>>2]|0)-1|0)){gt(c[q>>2]|0,c[D>>2]|0,+h[w>>3],c[D>>2]|0);et(c[q>>2]|0,c[B>>2]|0,c[D>>2]|0,c[B>>2]|0);h[z>>3]=+it(c[q>>2]|0,c[B>>2]|0,c[B>>2]|0);if(+h[y>>3]==0.0){H=9;break}h[x>>3]=+h[z>>3]/+h[y>>3];h[y>>3]=+h[z>>3];gt(c[q>>2]|0,c[C>>2]|0,+h[x>>3],c[C>>2]|0);ft(c[q>>2]|0,c[B>>2]|0,c[C>>2]|0,c[C>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}if((H|0)==9){c[v>>2]=1;$z(1,130650,m)|0}O4(c[B>>2]|0);O4(c[C>>2]|0);O4(c[D>>2]|0);O4(c[E>>2]|0);O4(c[F>>2]|0);O4(c[G>>2]|0);i=l;return c[v>>2]|0}function Tq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;j=i;i=i+96|0;k=j+48|0;l=j+92|0;m=j+88|0;n=j+84|0;o=j+80|0;p=j+40|0;q=j+76|0;r=j+72|0;s=j+68|0;t=j+32|0;u=j+24|0;v=j+16|0;w=j+8|0;x=j;y=j+64|0;z=j+60|0;A=j+56|0;B=j+52|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;h[p>>3]=f;c[q>>2]=g;c[s>>2]=0;c[y>>2]=bK(c[o>>2]<<2)|0;c[z>>2]=bK(c[o>>2]<<2)|0;c[A>>2]=bK(c[o>>2]<<2)|0;c[B>>2]=bK(c[o>>2]<<2)|0;lt(c[o>>2]|0,c[m>>2]|0);lt(c[o>>2]|0,c[n>>2]|0);mt(c[l>>2]|0,c[o>>2]|0,c[m>>2]|0,c[B>>2]|0);lt(c[o>>2]|0,c[B>>2]|0);nt(c[o>>2]|0,c[n>>2]|0,c[B>>2]|0,c[y>>2]|0);rt(c[o>>2]|0,c[y>>2]|0,c[z>>2]|0);h[v>>3]=+st(c[o>>2]|0,c[y>>2]|0,c[y>>2]|0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0)){C=10;break}f=+vt(c[o>>2]|0,c[y>>2]|0);if(!(f>+h[p>>3])){C=10;break}lt(c[o>>2]|0,c[z>>2]|0);lt(c[o>>2]|0,c[m>>2]|0);lt(c[o>>2]|0,c[y>>2]|0);mt(c[l>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);lt(c[o>>2]|0,c[A>>2]|0);h[x>>3]=+st(c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);if(+h[x>>3]==0.0){C=10;break}h[t>>3]=+h[v>>3]/+h[x>>3];pt(c[o>>2]|0,c[m>>2]|0,+h[t>>3],c[z>>2]|0);if((c[r>>2]|0)<((c[q>>2]|0)-1|0)){pt(c[o>>2]|0,c[y>>2]|0,-+h[t>>3],c[A>>2]|0);h[w>>3]=+st(c[o>>2]|0,c[y>>2]|0,c[y>>2]|0);if(+h[v>>3]==0.0){C=7;break}h[u>>3]=+h[w>>3]/+h[v>>3];h[v>>3]=+h[w>>3];qt(c[o>>2]|0,c[z>>2]|0,+h[u>>3],c[z>>2]|0);ot(c[o>>2]|0,c[y>>2]|0,c[z>>2]|0,c[z>>2]|0)}c[r>>2]=(c[r>>2]|0)+1}if((C|0)==7){c[s>>2]=1;$z(1,130650,k)|0;D=c[y>>2]|0;O4(D);E=c[z>>2]|0;O4(E);F=c[A>>2]|0;O4(F);G=c[B>>2]|0;O4(G);H=c[s>>2]|0;i=j;return H|0}else if((C|0)==10){D=c[y>>2]|0;O4(D);E=c[z>>2]|0;O4(E);F=c[A>>2]|0;O4(F);G=c[B>>2]|0;O4(G);H=c[s>>2]|0;i=j;return H|0}return 0}function Uq(b,e,f,j,k,l,m,n,o,p){b=b|0;e=e|0;f=f|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=+p;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0.0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;q=i;i=i+352|0;r=q+160|0;s=q+152|0;t=q+144|0;u=q+136|0;v=q+128|0;w=q+120|0;x=q+112|0;y=q+104|0;z=q+336|0;A=q+332|0;B=q+328|0;C=q+324|0;D=q+320|0;E=q+316|0;F=q+312|0;G=q+308|0;H=q+304|0;I=q+300|0;J=q+96|0;K=q+296|0;L=q+292|0;M=q+288|0;O=q+284|0;P=q+341|0;Q=q+280|0;R=q+276|0;S=q+272|0;T=q+268|0;U=q+264|0;V=q+260|0;W=q+256|0;X=q+252|0;Y=q+248|0;Z=q+88|0;$=q+244|0;aa=q+240|0;ba=q+80|0;ca=q+236|0;da=q+232|0;ea=q+228|0;fa=q+224|0;ga=q+72|0;ha=q+64|0;ia=q+220|0;ja=q+216|0;ka=q+212|0;la=q+208|0;ma=q+56|0;na=q+204|0;oa=q+200|0;pa=q+48|0;qa=q+40|0;ra=q+340|0;sa=q+196|0;ta=q+192|0;ua=q+188|0;va=q+184|0;wa=q+180|0;xa=q+32|0;ya=q+176|0;za=q+24|0;Aa=q+172|0;Ba=q+16|0;Ca=q+8|0;Da=q;Ea=q+168|0;c[A>>2]=b;c[B>>2]=e;c[C>>2]=f;c[D>>2]=j;c[E>>2]=k;c[F>>2]=l;c[G>>2]=m;c[H>>2]=n;c[I>>2]=o;h[J>>3]=p;c[K>>2]=0;a[P>>0]=0;c[Q>>2]=0;c[R>>2]=0;c[S>>2]=0;c[T>>2]=0;c[U>>2]=0;c[V>>2]=0;c[X>>2]=0;c[Y>>2]=0;h[Z>>3]=.001;c[$>>2]=0;c[aa>>2]=0;c[da>>2]=c[G>>2]&4;c[fa>>2]=0;h[ga>>3]=.01;h[ha>>3]=.1;c[ia>>2]=0;c[ja>>2]=0;a:do if(c[(c[A>>2]|0)+16>>2]|0){c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[B>>2]|0))break a;c[M>>2]=1;while(1){if((c[M>>2]|0)>=(c[(c[A>>2]|0)+((c[L>>2]|0)*20|0)>>2]|0))break;if(d[P>>0]|0)Fa=1;else Fa=+g[(c[(c[A>>2]|0)+((c[L>>2]|0)*20|0)+16>>2]|0)+(c[M>>2]<<2)>>2]!=0.0;a[P>>0]=Fa&1;c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}}while(0);if(!(a[P>>0]|0)){c[z>>2]=Fm(c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0,c[H>>2]|0,c[I>>2]|0)|0;Ga=c[z>>2]|0;i=q;return Ga|0}do if(c[da>>2]|0){b:do if((c[F>>2]|0)>2){if((Fm(c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,(c[D>>2]|0)+4|0,c[E>>2]|0,(c[F>>2]|0)-1|0,c[G>>2]|0,c[H>>2]|0,15)|0)<0){c[z>>2]=-1;Ga=c[z>>2]|0;i=q;return Ga|0}c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[B>>2]|0))break b;h[(c[(c[D>>2]|0)+((c[F>>2]|0)-1<<2)>>2]|0)+(c[L>>2]<<3)>>3]=+h[(c[(c[D>>2]|0)+4>>2]|0)+(c[L>>2]<<3)>>3];c[L>>2]=(c[L>>2]|0)+1}}while(0);c[va>>2]=c[c[D>>2]>>2];c[wa>>2]=c[(c[D>>2]|0)+4>>2];if(Et(c[A>>2]|0,c[B>>2]|0,c[wa>>2]|0,c[B>>2]|0)|0){c[K>>2]=-1;break}if(Xx(c[A>>2]|0,c[B>>2]|0,+h[ga>>3],+h[ha>>3],c[wa>>2]|0,ia,ja,ta)|0){c[K>>2]=-1;break}if((c[ta>>2]|0)<1){c[z>>2]=Fm(c[A>>2]|0,c[B>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,c[G>>2]|0,c[H>>2]|0,c[I>>2]|0)|0;Ga=c[z>>2]|0;i=q;return Ga|0}c:do if(+h[J>>3]>0.0){h[xa>>3]=0.0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[ta>>2]|0))break c;if(0.0>+h[J>>3]-(+h[(c[wa>>2]|0)+(c[(c[ia>>2]|0)+(c[(c[ja>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2]<<3)>>3]+ +h[xa>>3]-+h[(c[wa>>2]|0)+(c[(c[ia>>2]|0)+((c[(c[ja>>2]|0)+(c[L>>2]<<2)>>2]|0)-1<<2)>>2]<<3)>>3]))Ha=0.0;else Ha=+h[J>>3]-(+h[(c[wa>>2]|0)+(c[(c[ia>>2]|0)+(c[(c[ja>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2]<<3)>>3]+ +h[xa>>3]-+h[(c[wa>>2]|0)+(c[(c[ia>>2]|0)+((c[(c[ja>>2]|0)+(c[L>>2]<<2)>>2]|0)-1<<2)>>2]<<3)>>3]);h[xa>>3]=+h[xa>>3]+Ha;if((c[L>>2]|0)<((c[ta>>2]|0)-1|0))Ia=c[(c[ja>>2]|0)+((c[L>>2]|0)+1<<2)>>2]|0;else Ia=c[B>>2]|0;c[ya>>2]=Ia;c[M>>2]=c[(c[ja>>2]|0)+(c[L>>2]<<2)>>2];while(1){if((c[M>>2]|0)>=(c[ya>>2]|0))break;P=(c[wa>>2]|0)+(c[(c[ia>>2]|0)+(c[M>>2]<<2)>>2]<<3)|0;h[P>>3]=+h[P>>3]+ +h[xa>>3];c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}}while(0);if((c[F>>2]|0)==2?(ju(c[A>>2]|0,c[B>>2]|0,c[wa>>2]|0,c[va>>2]|0,+h[4247])|0)!=0:0)c[K>>2]=-1;else Ja=42}else{Am(c[A>>2]|0,c[B>>2]|0,c[F>>2]|0,c[D>>2]|0,c[E>>2]|0)|0;if(Xx(c[A>>2]|0,c[B>>2]|0,+h[ga>>3],+h[ha>>3],0,ia,ja,ta)|0)c[K>>2]=-1;else Ja=42}while(0);do if((Ja|0)==42){if((c[B>>2]|0)==1){c[z>>2]=0;Ga=c[z>>2]|0;i=q;return Ga|0}c[ua>>2]=cK(c[ta>>2]<<2)|0;if(!(c[I>>2]|0)){c[z>>2]=c[K>>2];Ga=c[z>>2]|0;i=q;return Ga|0}if(a[138998]|0)_N();do if((c[H>>2]|0)!=2){if((c[H>>2]|0)==1){c[fa>>2]=Bm(c[A>>2]|0,c[B>>2]|0)|0;if(c[fa>>2]|0)break;$z(0,130723,x)|0;$z(3,130772,w)|0;break}if((c[H>>2]|0)==3){if(a[138998]|0)Y2(c[24742]|0,130825,v)|0;c[fa>>2]=Cm(c[A>>2]|0,c[B>>2]|0)|0}}else{if(a[138998]|0)Y2(c[24742]|0,130698,y)|0;c[fa>>2]=Em(c[A>>2]|0,c[B>>2]|0)|0}while(0);if(!(c[fa>>2]|0)){if(a[138998]|0)Y2(c[24742]|0,130847,u)|0;c[fa>>2]=Dm(c[A>>2]|0,c[B>>2]|0)|0}if(a[138998]|0){ha=c[24742]|0;h[t>>3]=+$N();Y2(ha,130874,t)|0;Y2(c[24742]|0,130886,s)|0;_N()}c[ea>>2]=-1;c[ca>>2]=(c[B>>2]|0)+((_(c[B>>2]|0,(c[B>>2]|0)-1|0)|0)/2|0);c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[ca>>2]|0))break;if(+g[(c[fa>>2]|0)+(c[L>>2]<<2)>>2]>+(c[ea>>2]|0))c[ea>>2]=~~+g[(c[fa>>2]|0)+(c[L>>2]<<2)>>2];c[L>>2]=(c[L>>2]|0)+1}d:do if(!(c[da>>2]|0)){h[za>>3]=1.0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[F>>2]|0))break;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[B>>2]|0))break;Ha=+N(+(+h[(c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<3)>>3]));if(Ha>+h[za>>3])h[za>>3]=+N(+(+h[(c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<3)>>3]));c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[F>>2]|0))break d;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[B>>2]|0))break;ha=(c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<3)|0;h[ha>>3]=+h[ha>>3]*(10.0/+h[za>>3]);c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}}while(0);e:do if(+h[J>>3]>0.0){c[Aa>>2]=(c[B>>2]|0)+((_(c[B>>2]|0,(c[B>>2]|0)-1|0)|0)/2|0);h[Ba>>3]=+((_(c[B>>2]|0,(c[B>>2]|0)-1|0)|0)/2|0|0);h[Ca>>3]=0.0;c[Ea>>2]=0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=((c[B>>2]|0)-1|0))break;c[Ea>>2]=(c[Ea>>2]|0)+1;c[M>>2]=(c[L>>2]|0)+1;while(1){if((c[M>>2]|0)>=(c[B>>2]|0))break;Ha=+ys(c[D>>2]|0,c[F>>2]|0,c[L>>2]|0,c[M>>2]|0);h[Ca>>3]=+h[Ca>>3]+Ha/+g[(c[fa>>2]|0)+(c[Ea>>2]<<2)>>2];c[M>>2]=(c[M>>2]|0)+1;c[Ea>>2]=(c[Ea>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}h[Da>>3]=+h[Ca>>3]/+h[Ba>>3];c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[Aa>>2]|0))break e;ha=(c[fa>>2]|0)+(c[L>>2]<<2)|0;g[ha>>2]=+g[ha>>2]*+h[Da>>3];c[L>>2]=(c[L>>2]|0)+1}}while(0);c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[F>>2]|0))break;at(c[B>>2]|0,c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0);c[L>>2]=(c[L>>2]|0)+1}h[ba>>3]=+h[c[(c[D>>2]|0)+4>>2]>>3];c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[B>>2]|0))break;ha=(c[(c[D>>2]|0)+4>>2]|0)+(c[L>>2]<<3)|0;h[ha>>3]=+h[ha>>3]-+h[ba>>3];c[L>>2]=(c[L>>2]|0)+1}c[Y>>2]=cK(c[F>>2]<<2)|0;c[X>>2]=cK((_(c[F>>2]|0,c[B>>2]|0)|0)<<2)|0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[F>>2]|0))break;ha=(c[X>>2]|0)+((_(c[L>>2]|0,c[B>>2]|0)|0)<<2)|0;c[(c[Y>>2]|0)+(c[L>>2]<<2)>>2]=ha;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[B>>2]|0))break;g[(c[(c[Y>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<2)>>2]=+h[(c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<3)>>3];c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}g[ka>>2]=+((_(c[B>>2]|0,(c[B>>2]|0)-1|0)|0)/2|0|0);if(a[138998]|0){ha=c[24742]|0;h[r>>3]=+$N();Y2(ha,130912,r)|0}c[V>>2]=c[fa>>2];c[W>>2]=(c[B>>2]|0)+((_(c[B>>2]|0,(c[B>>2]|0)-1|0)|0)/2|0);wt(c[W>>2]|0,c[V>>2]|0);xt(c[W>>2]|0,c[V>>2]|0);c[la>>2]=0;c[U>>2]=cK(c[B>>2]<<3)|0;tt(c[B>>2]|0,0.0,c[U>>2]|0);c[L>>2]=0;while(1){if((c[L>>2]|0)>=((c[B>>2]|0)-1|0))break;h[ma>>3]=0.0;c[la>>2]=(c[la>>2]|0)+1;c[M>>2]=1;while(1){if((c[M>>2]|0)>=((c[B>>2]|0)-(c[L>>2]|0)|0))break;g[oa>>2]=+g[(c[V>>2]|0)+(c[la>>2]<<2)>>2];h[ma>>3]=+h[ma>>3]+ +g[oa>>2];ha=(c[U>>2]|0)+((c[L>>2]|0)+(c[M>>2]|0)<<3)|0;h[ha>>3]=+h[ha>>3]-+g[oa>>2];c[M>>2]=(c[M>>2]|0)+1;c[la>>2]=(c[la>>2]|0)+1}ha=(c[U>>2]|0)+(c[L>>2]<<3)|0;h[ha>>3]=+h[ha>>3]-+h[ma>>3];c[L>>2]=(c[L>>2]|0)+1}c[na>>2]=c[B>>2];c[la>>2]=0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[B>>2]|0))break;g[(c[V>>2]|0)+(c[la>>2]<<2)>>2]=+h[(c[U>>2]|0)+(c[L>>2]<<3)>>3];c[L>>2]=(c[L>>2]|0)+1;c[la>>2]=(c[la>>2]|0)+(c[na>>2]|0);c[na>>2]=(c[na>>2]|0)+-1}c[T>>2]=cK(c[F>>2]<<2)|0;ha=cK((_(c[F>>2]|0,c[B>>2]|0)|0)<<2)|0;c[c[T>>2]>>2]=ha;c[O>>2]=1;while(1){if((c[O>>2]|0)>=(c[F>>2]|0))break;ha=(c[c[T>>2]>>2]|0)+((_(c[O>>2]|0,c[B>>2]|0)|0)<<2)|0;c[(c[T>>2]|0)+(c[O>>2]<<2)>>2]=ha;c[O>>2]=(c[O>>2]|0)+1}c[S>>2]=cK(c[B>>2]<<2)|0;c[R>>2]=cK(c[B>>2]<<2)|0;c[Q>>2]=cK(c[W>>2]<<2)|0;h[pa>>3]=1797693134862315708145274.0e284;c[$>>2]=Zt(c[V>>2]|0,c[B>>2]|0)|0;c[aa>>2]=au(c[V>>2]|0,c[B>>2]|0,c[ia>>2]|0,c[ja>>2]|0,c[ta>>2]|0)|0;a[ra>>0]=0;c[K>>2]=0;f:while(1){if((c[K>>2]|0)>=(c[I>>2]|0))break;if(!((a[ra>>0]|0)!=0^1))break;tt(c[B>>2]|0,0.0,c[U>>2]|0);yt(c[W>>2]|0,c[V>>2]|0,c[Q>>2]|0);c[la>>2]=0;c[L>>2]=0;while(1){Ka=c[B>>2]|0;if((c[L>>2]|0)>=((c[B>>2]|0)-1|0))break;c[sa>>2]=Ka-(c[L>>2]|0)-1;ut(c[B>>2]|0,0.0,c[R>>2]|0);c[O>>2]=0;while(1){La=c[sa>>2]|0;if((c[O>>2]|0)>=(c[F>>2]|0))break;ut(La,+g[(c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0)+(c[L>>2]<<2)>>2],c[S>>2]|0);pt(c[sa>>2]|0,c[S>>2]|0,-1.0,(c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0)+(c[L>>2]<<2)+4|0);wt(c[sa>>2]|0,c[S>>2]|0);ot(c[sa>>2]|0,c[S>>2]|0,c[R>>2]|0,c[R>>2]|0);c[O>>2]=(c[O>>2]|0)+1}zt(La,c[R>>2]|0);c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[sa>>2]|0))break;if(!(!(+g[(c[R>>2]|0)+(c[M>>2]<<2)>>2]>=3402823466385288598117041.0e14)?!(+g[(c[R>>2]|0)+(c[M>>2]<<2)>>2]<0.0):0))g[(c[R>>2]|0)+(c[M>>2]<<2)>>2]=0.0;c[M>>2]=(c[M>>2]|0)+1}c[la>>2]=(c[la>>2]|0)+1;h[ma>>3]=0.0;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[sa>>2]|0))break;ha=(c[Q>>2]|0)+(c[la>>2]<<2)|0;Ha=+g[ha>>2]*+g[(c[R>>2]|0)+(c[M>>2]<<2)>>2];g[ha>>2]=Ha;g[oa>>2]=Ha;h[ma>>3]=+h[ma>>3]+ +g[oa>>2];ha=(c[U>>2]|0)+((c[L>>2]|0)+(c[M>>2]|0)+1<<3)|0;h[ha>>3]=+h[ha>>3]-+g[oa>>2];c[M>>2]=(c[M>>2]|0)+1;c[la>>2]=(c[la>>2]|0)+1}ha=(c[U>>2]|0)+(c[L>>2]<<3)|0;h[ha>>3]=+h[ha>>3]-+h[ma>>3];c[L>>2]=(c[L>>2]|0)+1}c[na>>2]=Ka;c[la>>2]=0;c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[B>>2]|0))break;g[(c[Q>>2]|0)+(c[la>>2]<<2)>>2]=+h[(c[U>>2]|0)+(c[L>>2]<<3)>>3];c[L>>2]=(c[L>>2]|0)+1;c[la>>2]=(c[la>>2]|0)+(c[na>>2]|0);c[na>>2]=(c[na>>2]|0)+-1}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[F>>2]|0))break;mt(c[Q>>2]|0,c[B>>2]|0,c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0,c[(c[T>>2]|0)+(c[O>>2]<<2)>>2]|0);c[O>>2]=(c[O>>2]|0)+1}h[qa>>3]=0.0;c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[F>>2]|0))break;Ha=+st(c[B>>2]|0,c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0,c[(c[T>>2]|0)+(c[O>>2]<<2)>>2]|0);h[qa>>3]=+h[qa>>3]+Ha;c[O>>2]=(c[O>>2]|0)+1}h[qa>>3]=+h[qa>>3]*2.0;h[qa>>3]=+h[qa>>3]+ +g[ka>>2];c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[F>>2]|0))break;mt(c[V>>2]|0,c[B>>2]|0,c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0,c[S>>2]|0);Ha=+st(c[B>>2]|0,c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0,c[S>>2]|0);h[qa>>3]=+h[qa>>3]-Ha;c[O>>2]=(c[O>>2]|0)+1}Ha=+N(+(+h[qa>>3]-+h[pa>>3]));p=Ha/+N(+(+h[pa>>3]+1.0e-10));a[ra>>0]=p<+h[4247];if(!(d[ra>>0]|0))if((c[K>>2]|0)>1)Ma=+h[qa>>3]>+h[pa>>3];else Ma=0;else Ma=1;a[ra>>0]=Ma&1;h[pa>>3]=+h[qa>>3];c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[F>>2]|0))break;if((c[O>>2]|0)!=1){if(Tq(c[V>>2]|0,c[(c[Y>>2]|0)+(c[O>>2]<<2)>>2]|0,c[(c[T>>2]|0)+(c[O>>2]<<2)>>2]|0,c[B>>2]|0,+h[Z>>3],c[B>>2]|0)|0){Ja=159;break f}}else _t(c[aa>>2]|0,c[(c[T>>2]|0)+(c[O>>2]<<2)>>2]|0,c[Y>>2]|0,c[F>>2]|0,c[O>>2]|0,15,c[ua>>2]|0,+h[J>>3])|0;c[O>>2]=(c[O>>2]|0)+1}c[K>>2]=(c[K>>2]|0)+1}if((Ja|0)==159){c[K>>2]=-1;break}O4(c[ua>>2]|0);$t(c[aa>>2]|0);if(c[Y>>2]|0){c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[F>>2]|0))break;c[M>>2]=0;while(1){if((c[M>>2]|0)>=(c[B>>2]|0))break;h[(c[(c[D>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<3)>>3]=+g[(c[(c[Y>>2]|0)+(c[L>>2]<<2)>>2]|0)+(c[M>>2]<<2)>>2];c[M>>2]=(c[M>>2]|0)+1}c[L>>2]=(c[L>>2]|0)+1}O4(c[c[Y>>2]>>2]|0);O4(c[Y>>2]|0)}if(c[T>>2]|0){O4(c[c[T>>2]>>2]|0);O4(c[T>>2]|0)}O4(c[S>>2]|0);O4(c[R>>2]|0);O4(c[U>>2]|0);O4(c[V>>2]|0);O4(c[Q>>2]|0)}while(0);O4(c[ia>>2]|0);O4(c[ja>>2]|0);if(c[$>>2]|0){O4(c[c[$>>2]>>2]|0);O4(c[$>>2]|0)}c[z>>2]=c[K>>2];Ga=c[z>>2]|0;i=q;return Ga|0}function Vq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+80|0;e=d+64|0;f=d+60|0;g=d+56|0;j=d+44|0;k=d+40|0;l=d+36|0;m=d+32|0;n=d+28|0;o=d+24|0;p=d+20|0;q=d+8|0;r=d;c[f>>2]=a;c[g>>2]=b;c[m>>2]=kB(c[f>>2]|0)|0;c[n>>2]=cK((c[m>>2]|0)*48|0)|0;c[o>>2]=c[n>>2];gq(q,c[f>>2]|0);c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[p>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;q=c[p>>2]|0;b=c[o>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];Xq(q,b,e);c[o>>2]=(c[o>>2]|0)+48;c[p>>2]=aC(c[f>>2]|0,c[p>>2]|0)|0}if(!(Yq(c[n>>2]|0,c[m>>2]|0)|0)){c[k>>2]=0;s=c[n>>2]|0;O4(s);t=c[k>>2]|0;i=d;return t|0}switch(c[g>>2]|0){case 9:{_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,1);ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,1);break}case 10:{ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,1);_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,1);break}case 7:{_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,72,1);ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,1);u=9;break}case 8:{u=9;break}case 13:{u=10;break}case 14:{ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,0);_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,0);break}case 12:{ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,73,0);_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,0);break}default:{_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,72,0);ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,0)}}if((u|0)==9){ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,73,1);_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,1);u=10}if((u|0)==10){_q(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,70,0);ar(c[f>>2]|0,c[n>>2]|0,c[m>>2]|0,71,0)}c[o>>2]=c[n>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0))break;c[p>>2]=c[(c[o>>2]|0)+20>>2];f=(c[o>>2]|0)+12|0;c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];h[c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]>>3]=+(c[r>>2]|0)/72.0/10.0;h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+(c[r+4>>2]|0)/72.0/10.0;c[o>>2]=(c[o>>2]|0)+48;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=1;s=c[n>>2]|0;O4(s);t=c[k>>2]|0;i=d;return t|0}function Wq(b,d){b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0;e=i;i=i+144|0;f=e+56|0;j=e+48|0;k=e+132|0;l=e+128|0;m=e+124|0;n=e+120|0;o=e+116|0;p=e+112|0;q=e+108|0;r=e+32|0;s=e+104|0;t=e+92|0;u=e+88|0;v=e+84|0;w=e+72|0;x=e+24|0;y=e+16|0;z=e;c[l>>2]=b;c[m>>2]=d;c[n>>2]=kB(c[l>>2]|0)|0;c[o>>2]=cK((c[n>>2]|0)*72|0)|0;c[p>>2]=c[o>>2];gq(w,c[l>>2]|0);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];c[t+8>>2]=c[w+8>>2];if(a[t+8>>0]|0){g[t>>2]=+g[t>>2]/72.0;g[t+4>>2]=+g[t+4>>2]/72.0}c[q>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;if(a[t+8>>0]|0){h[x>>3]=+h[(c[(c[q>>2]|0)+8>>2]|0)+32>>3]/2.0+ +g[t>>2];h[y>>3]=+h[(c[(c[q>>2]|0)+8>>2]|0)+40>>3]/2.0+ +g[t+4>>2]}else{h[x>>3]=+g[t>>2]*+h[(c[(c[q>>2]|0)+8>>2]|0)+32>>3]/2.0;h[y>>3]=+g[t+4>>2]*+h[(c[(c[q>>2]|0)+8>>2]|0)+40>>3]/2.0}h[c[p>>2]>>3]=+h[c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]>>3];h[(c[p>>2]|0)+8>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[(c[p>>2]|0)+16>>3]=+h[c[p>>2]>>3]-+h[x>>3];h[(c[p>>2]|0)+16+8>>3]=+h[(c[p>>2]|0)+8>>3]-+h[y>>3];h[(c[p>>2]|0)+16+16>>3]=+h[c[p>>2]>>3]+ +h[x>>3];h[(c[p>>2]|0)+16+16+8>>3]=+h[(c[p>>2]|0)+8>>3]+ +h[y>>3];h[(c[p>>2]|0)+48>>3]=+h[x>>3];h[(c[p>>2]|0)+56>>3]=+h[y>>3];c[(c[p>>2]|0)+64>>2]=c[q>>2];c[p>>2]=(c[p>>2]|0)+72;c[q>>2]=aC(c[l>>2]|0,c[q>>2]|0)|0}q=c[o>>2]|0;l=c[n>>2]|0;do if((c[m>>2]|0)<0){A=+dr(q,l);h[r+8>>3]=A;h[r>>3]=A;if(+h[r>>3]==0.0){O4(c[o>>2]|0);c[k>>2]=0;B=c[k>>2]|0;i=e;return B|0}else{if(!(a[138998]|0))break;y=c[24742]|0;h[j>>3]=+h[r>>3];Y2(y,130923,j)|0;break}}else{c[u>>2]=er(q,l,v)|0;if(!(c[v>>2]|0)){O4(c[u>>2]|0);O4(c[o>>2]|0);c[k>>2]=0;B=c[k>>2]|0;i=e;return B|0}y=c[u>>2]|0;x=c[v>>2]|0;if(c[m>>2]|0){A=+fr(y,x);h[r+8>>3]=A;h[r>>3]=A}else{gr(z,y,x);c[r>>2]=c[z>>2];c[r+4>>2]=c[z+4>>2];c[r+8>>2]=c[z+8>>2];c[r+12>>2]=c[z+12>>2]}O4(c[u>>2]|0);if(a[138998]|0){x=c[24742]|0;A=+h[r+8>>3];h[f>>3]=+h[r>>3];h[f+8>>3]=A;Y2(x,130937,f)|0}}while(0);c[p>>2]=c[o>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;h[c[(c[(c[(c[p>>2]|0)+64>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[r>>3]*+h[c[p>>2]>>3];h[(c[(c[(c[(c[p>>2]|0)+64>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[r+8>>3]*+h[(c[p>>2]|0)+8>>3];c[p>>2]=(c[p>>2]|0)+72;c[s>>2]=(c[s>>2]|0)+1}O4(c[o>>2]|0);c[k>>2]=1;B=c[k>>2]|0;i=e;return B|0}function Xq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;f=i;i=i+48|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f;c[j>>2]=b;c[k>>2]=d;q=+h[c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]>>3]*10.0*72.0;c[l>>2]=~~(+h[c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]>>3]*10.0*72.0>=0.0?q+.5:q-.5);q=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*10.0*72.0;c[m>>2]=~~(+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*10.0*72.0>=0.0?q+.5:q-.5);if(a[e+8>>0]|0){q=+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]/2.0*72.0;c[n>>2]=~~((+(~~(+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]/2.0*72.0>=0.0?q+.5:q-.5)|0)+ +g[e>>2])*10.0);q=+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]/2.0*72.0;c[o>>2]=~~((+(~~(+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]/2.0*72.0>=0.0?q+.5:q-.5)|0)+ +g[e+4>>2])*10.0)}else{q=+g[e>>2]*5.0*+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]*72.0;c[n>>2]=~~(+g[e>>2]*5.0*+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]*72.0>=0.0?q+.5:q-.5);q=+g[e+4>>2]*5.0*+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]*72.0;c[o>>2]=~~(+g[e+4>>2]*5.0*+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]*72.0>=0.0?q+.5:q-.5)}c[p>>2]=(c[l>>2]|0)-(c[n>>2]|0);c[p+4>>2]=(c[m>>2]|0)-(c[o>>2]|0);c[p+8>>2]=(c[l>>2]|0)+(c[n>>2]|0);c[p+8+4>>2]=(c[m>>2]|0)+(c[o>>2]|0);c[(c[k>>2]|0)+12>>2]=c[l>>2];c[(c[k>>2]|0)+12+4>>2]=c[m>>2];c[(c[k>>2]|0)+20>>2]=c[j>>2];j=(c[k>>2]|0)+32|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];i=f;return}function Yq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[k>>2]=c[f>>2];c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=((c[g>>2]|0)-1|0)){m=12;break}c[l>>2]=(c[k>>2]|0)+48;c[j>>2]=(c[h>>2]|0)+1;while(1){n=c[k>>2]|0;if((c[j>>2]|0)>=(c[g>>2]|0))break;if((((c[n+32>>2]|0)<=(c[(c[l>>2]|0)+32+8>>2]|0)?(c[(c[l>>2]|0)+32>>2]|0)<=(c[(c[k>>2]|0)+32+8>>2]|0):0)?(c[(c[k>>2]|0)+32+4>>2]|0)<=(c[(c[l>>2]|0)+32+8+4>>2]|0):0)?(c[(c[l>>2]|0)+32+4>>2]|0)<=(c[(c[k>>2]|0)+32+8+4>>2]|0):0){m=9;break a}c[l>>2]=(c[l>>2]|0)+48;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=n+48;c[h>>2]=(c[h>>2]|0)+1}if((m|0)==9){c[e>>2]=1;o=c[e>>2]|0;i=d;return o|0}else if((m|0)==12){c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}return 0}function Zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+32+4>>2]|0)>(c[(c[f>>2]|0)+32+8+4>>2]|0)){g=0;h=g&1;i=d;return h|0}g=(c[(c[f>>2]|0)+32+4>>2]|0)<=(c[(c[e>>2]|0)+32+8+4>>2]|0);h=g&1;i=d;return h|0}function _q(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+48|0;h=g+44|0;j=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=Nz(51428,c[12990]|0)|0;c[o>>2]=c[j>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[(c[o>>2]|0)+8>>2]=c[(c[o>>2]|0)+12>>2];Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,c[o>>2]|0,1)|0;c[o>>2]=(c[o>>2]|0)+48;c[q>>2]=(c[q>>2]|0)+1}f=c[h>>2]|0;h=c[n>>2]|0;e=c[l>>2]|0;if(c[m>>2]|0)c[p>>2]=kr(f,h,e,74)|0;else c[p>>2]=lr(f,h,e,74)|0;gK(c[p>>2]|0,2,2147483647)|0;c[o>>2]=c[j>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[s>>2]=c[(c[o>>2]|0)+12>>2];c[r>>2]=c[(c[(c[(c[o>>2]|0)+24>>2]|0)+8>>2]|0)+232>>2];c[t>>2]=(c[r>>2]|0)-(c[s>>2]|0);c[(c[o>>2]|0)+12>>2]=c[r>>2];j=(c[o>>2]|0)+32|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);j=(c[o>>2]|0)+32+8|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);c[o>>2]=(c[o>>2]|0)+48;c[q>>2]=(c[q>>2]|0)+1}mr(c[p>>2]|0);Jz(c[n>>2]|0)|0;i=g;return}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[(c[e>>2]|0)+32>>2]|0)>(c[(c[f>>2]|0)+32+8>>2]|0)){g=0;h=g&1;i=d;return h|0}g=(c[(c[f>>2]|0)+32>>2]|0)<=(c[(c[e>>2]|0)+32+8>>2]|0);h=g&1;i=d;return h|0}function ar(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+48|0;h=g+44|0;j=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=Nz(51428,c[12990]|0)|0;c[o>>2]=c[j>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[(c[o>>2]|0)+8>>2]=c[(c[o>>2]|0)+12+4>>2];Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,c[o>>2]|0,1)|0;c[o>>2]=(c[o>>2]|0)+48;c[q>>2]=(c[q>>2]|0)+1}f=c[h>>2]|0;h=c[n>>2]|0;e=c[l>>2]|0;if(c[m>>2]|0)c[p>>2]=kr(f,h,e,75)|0;else c[p>>2]=lr(f,h,e,75)|0;gK(c[p>>2]|0,2,2147483647)|0;c[o>>2]=c[j>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[s>>2]=c[(c[o>>2]|0)+12+4>>2];c[r>>2]=c[(c[(c[(c[o>>2]|0)+24>>2]|0)+8>>2]|0)+232>>2];c[t>>2]=(c[r>>2]|0)-(c[s>>2]|0);c[(c[o>>2]|0)+12+4>>2]=c[r>>2];j=(c[o>>2]|0)+32+4|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);j=(c[o>>2]|0)+32+8+4|0;c[j>>2]=(c[j>>2]|0)+(c[t>>2]|0);c[o>>2]=(c[o>>2]|0)+48;c[q>>2]=(c[q>>2]|0)+1}mr(c[p>>2]|0);Jz(c[n>>2]|0)|0;i=g;return}function br(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;if((c[(c[f>>2]|0)+32+4>>2]|0)<=(c[(c[g>>2]|0)+32+8+4>>2]|0))l=(c[(c[g>>2]|0)+32+4>>2]|0)<=(c[(c[f>>2]|0)+32+8+4>>2]|0);else l=0;c[k>>2]=l&1;if(!(c[k>>2]|0)){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}if((c[(c[f>>2]|0)+32+8>>2]|0)<(c[(c[g>>2]|0)+32>>2]|0)){c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}k=jr((c[f>>2]|0)+32|0,(c[g>>2]|0)+32|0)|0;c[h>>2]=k-((c[(c[g>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+12>>2]|0));k=(c[(c[g>>2]|0)+12+4>>2]|0)>=(c[(c[f>>2]|0)+12+4>>2]|0);l=ir((c[f>>2]|0)+32|0,(c[g>>2]|0)+32|0)|0;if(k)c[j>>2]=l-((c[(c[g>>2]|0)+12+4>>2]|0)-(c[(c[f>>2]|0)+12+4>>2]|0));else c[j>>2]=l-((c[(c[f>>2]|0)+12+4>>2]|0)-(c[(c[g>>2]|0)+12+4>>2]|0));c[e>>2]=(c[h>>2]|0)<=(c[j>>2]|0)&1;m=c[e>>2]|0;i=d;return m|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;if((c[(c[f>>2]|0)+32>>2]|0)<=(c[(c[g>>2]|0)+32+8>>2]|0))l=(c[(c[g>>2]|0)+32>>2]|0)<=(c[(c[f>>2]|0)+32+8>>2]|0);else l=0;c[k>>2]=l&1;if(!(c[k>>2]|0)){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}if((c[(c[f>>2]|0)+32+8+4>>2]|0)<(c[(c[g>>2]|0)+32+4>>2]|0)){c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}k=ir((c[f>>2]|0)+32|0,(c[g>>2]|0)+32|0)|0;c[j>>2]=k-((c[(c[g>>2]|0)+12+4>>2]|0)-(c[(c[f>>2]|0)+12+4>>2]|0));k=(c[(c[g>>2]|0)+12>>2]|0)>=(c[(c[f>>2]|0)+12>>2]|0);l=jr((c[f>>2]|0)+32|0,(c[g>>2]|0)+32|0)|0;if(k)c[h>>2]=l-((c[(c[g>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+12>>2]|0));else c[h>>2]=l-((c[(c[f>>2]|0)+12>>2]|0)-(c[(c[g>>2]|0)+12>>2]|0));c[e>>2]=(c[j>>2]|0)<=(c[h>>2]|0)&1;m=c[e>>2]|0;i=d;return m|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0.0;d=i;i=i+64|0;e=d+32|0;f=d+60|0;g=d+56|0;j=d+52|0;k=d+48|0;l=d+44|0;m=d+40|0;n=d+24|0;o=d+16|0;p=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[f>>2];h[o>>3]=0.0;c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=(c[g>>2]|0)){q=23;break}c[k>>2]=(c[j>>2]|0)+72;c[m>>2]=(c[l>>2]|0)+1;while(1){r=c[j>>2]|0;if((c[m>>2]|0)>=(c[g>>2]|0))break;if(((+h[r+16>>3]<=+h[(c[k>>2]|0)+16+16>>3]?+h[(c[k>>2]|0)+16>>3]<=+h[(c[j>>2]|0)+16+16>>3]:0)?+h[(c[j>>2]|0)+16+8>>3]<=+h[(c[k>>2]|0)+16+16+8>>3]:0)?+h[(c[k>>2]|0)+16+8>>3]<=+h[(c[j>>2]|0)+16+16+8>>3]:0){q=9;break a}if(+h[c[j>>2]>>3]==+h[c[k>>2]>>3])h[p>>3]=s;else h[p>>3]=(+h[(c[j>>2]|0)+48>>3]+ +h[(c[k>>2]|0)+48>>3])/+N(+(+h[c[j>>2]>>3]-+h[c[k>>2]>>3]));if(+h[(c[j>>2]|0)+8>>3]==+h[(c[k>>2]|0)+8>>3])h[p+8>>3]=s;else h[p+8>>3]=(+h[(c[j>>2]|0)+56>>3]+ +h[(c[k>>2]|0)+56>>3])/+N(+(+h[(c[j>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8>>3]));if(+h[p+8>>3]<+h[p>>3])h[n>>3]=+h[p+8>>3];else h[n>>3]=+h[p>>3];if(+h[n>>3]>+h[o>>3])h[o>>3]=+h[n>>3];c[k>>2]=(c[k>>2]|0)+72;c[m>>2]=(c[m>>2]|0)+1}c[j>>2]=r+72;c[l>>2]=(c[l>>2]|0)+1}if((q|0)==9){h[e>>3]=0.0;t=+h[e>>3];i=d;return +t}else if((q|0)==23){h[e>>3]=+h[o>>3];t=+h[e>>3];i=d;return +t}return +(0.0)}function er(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[f>>2];c[m>>2]=c[g>>2];c[n>>2]=cK((c[m>>2]|0)+1<<4)|0;c[q>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[g>>2]|0))break;c[l>>2]=(c[k>>2]|0)+72;c[p>>2]=(c[o>>2]|0)+1;while(1){t=c[k>>2]|0;if((c[p>>2]|0)>=(c[g>>2]|0))break;if(((+h[t+16>>3]<=+h[(c[l>>2]|0)+16+16>>3]?+h[(c[l>>2]|0)+16>>3]<=+h[(c[k>>2]|0)+16+16>>3]:0)?+h[(c[k>>2]|0)+16+8>>3]<=+h[(c[l>>2]|0)+16+16+8>>3]:0)?+h[(c[l>>2]|0)+16+8>>3]<=+h[(c[k>>2]|0)+16+16+8>>3]:0){if((c[q>>2]|0)==(c[m>>2]|0)){c[m>>2]=(c[m>>2]|0)+(c[g>>2]|0);c[n>>2]=eK(c[n>>2]|0,(c[m>>2]|0)+1<<4)|0}if(!(+h[c[k>>2]>>3]==+h[c[l>>2]>>3])){h[r>>3]=(+h[(c[k>>2]|0)+48>>3]+ +h[(c[l>>2]|0)+48>>3])/+N(+(+h[c[k>>2]>>3]-+h[c[l>>2]>>3]));if(+h[r>>3]<1.0)h[r>>3]=1.0}else h[r>>3]=s;if(!(+h[(c[k>>2]|0)+8>>3]==+h[(c[l>>2]|0)+8>>3])){h[r+8>>3]=(+h[(c[k>>2]|0)+56>>3]+ +h[(c[l>>2]|0)+56>>3])/+N(+(+h[(c[k>>2]|0)+8>>3]-+h[(c[l>>2]|0)+8>>3]));if(+h[r+8>>3]<1.0)h[r+8>>3]=1.0}else h[r+8>>3]=s;f=(c[q>>2]|0)+1|0;c[q>>2]=f;d=(c[n>>2]|0)+(f<<4)|0;c[d>>2]=c[r>>2];c[d+4>>2]=c[r+4>>2];c[d+8>>2]=c[r+8>>2];c[d+12>>2]=c[r+12>>2]}c[l>>2]=(c[l>>2]|0)+72;c[p>>2]=(c[p>>2]|0)+1}c[k>>2]=t+72;c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=eK(c[n>>2]|0,(c[q>>2]|0)+1<<4)|0;c[c[j>>2]>>2]=c[q>>2];i=e;return c[n>>2]|0}function fr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;g=d+32|0;j=d+24|0;k=d+16|0;l=d;c[e>>2]=a;c[f>>2]=b;h[j>>3]=0.0;c[e>>2]=(c[e>>2]|0)+16;c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[f>>2]|0))break;b=c[e>>2]|0;c[e>>2]=b+16;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];c[l+12>>2]=c[b+12>>2];h[k>>3]=+h[l>>3]<+h[l+8>>3]?+h[l>>3]:+h[l+8>>3];if(+h[k>>3]>+h[j>>3])h[j>>3]=+h[k>>3];c[g>>2]=(c[g>>2]|0)+1}i=d;return +(+h[j>>3])}function gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;j=e+40|0;k=e+24|0;l=e+16|0;m=e+36|0;n=e+32|0;o=e;c[f>>2]=b;c[g>>2]=d;c[n>>2]=0;h[c[f>>2]>>3]=1.0;h[(c[f>>2]|0)+8>>3]=s;w3((c[f>>2]|0)+16|0,c[g>>2]|0,16,76);c[j>>2]=cK((c[g>>2]|0)+1<<4)|0;h[(c[j>>2]|0)+(c[g>>2]<<4)>>3]=+h[(c[f>>2]|0)+(c[g>>2]<<4)>>3];h[(c[j>>2]|0)+(c[g>>2]<<4)+8>>3]=1.0;c[m>>2]=(c[g>>2]|0)-1;while(1){if((c[m>>2]|0)<0)break;h[(c[j>>2]|0)+(c[m>>2]<<4)>>3]=+h[(c[f>>2]|0)+(c[m>>2]<<4)>>3];d=(c[m>>2]|0)+1|0;if(+h[(c[f>>2]|0)+((c[m>>2]|0)+1<<4)+8>>3]>+h[(c[j>>2]|0)+((c[m>>2]|0)+1<<4)+8>>3])p=+h[(c[f>>2]|0)+(d<<4)+8>>3];else p=+h[(c[j>>2]|0)+(d<<4)+8>>3];h[(c[j>>2]|0)+(c[m>>2]<<4)+8>>3]=p;c[m>>2]=(c[m>>2]|0)+-1}h[l>>3]=s;c[m>>2]=0;while(1){if((c[m>>2]|0)>(c[g>>2]|0))break;h[k>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<4)>>3]*+h[(c[j>>2]|0)+(c[m>>2]<<4)+8>>3];if(+h[k>>3]<+h[l>>3]){h[l>>3]=+h[k>>3];c[n>>2]=c[m>>2]}c[m>>2]=(c[m>>2]|0)+1}if(+h[l>>3]>3]=+h[(c[j>>2]|0)+(c[n>>2]<<4)>>3];h[o+8>>3]=+h[(c[j>>2]|0)+(c[n>>2]<<4)+8>>3];c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];i=e;return}else La(130954,130974,834,130987)}function hr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;do if(!(+h[c[f>>2]>>3]<+h[c[g>>2]>>3])){if(+h[c[f>>2]>>3]>+h[c[g>>2]>>3]){c[e>>2]=1;break}if(+h[(c[f>>2]|0)+8>>3]<+h[(c[g>>2]|0)+8>>3]){c[e>>2]=-1;break}if(+h[(c[f>>2]|0)+8>>3]>+h[(c[g>>2]|0)+8>>3]){c[e>>2]=1;break}else{c[e>>2]=0;break}}else c[e>>2]=-1;while(0);i=d;return c[e>>2]|0}function ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return ((c[(c[e>>2]|0)+8+4>>2]|0)-(c[(c[e>>2]|0)+4>>2]|0)+((c[(c[f>>2]|0)+8+4>>2]|0)-(c[(c[f>>2]|0)+4>>2]|0))|0)/2|0|0}function jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return ((c[(c[e>>2]|0)+8>>2]|0)-(c[c[e>>2]>>2]|0)+((c[(c[f>>2]|0)+8>>2]|0)-(c[c[f>>2]>>2]|0))|0)/2|0|0}function kr(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=i;i=i+80|0;h=g+68|0;j=g+60|0;k=g+56|0;l=g+52|0;m=g+48|0;n=g+44|0;o=g+40|0;p=g+36|0;q=g+32|0;r=g+28|0;s=g+24|0;t=g+20|0;u=g+16|0;v=g+12|0;w=g+8|0;x=g+4|0;y=g;c[g+64>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[n>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[w>>2]=-2147483647;c[x>>2]=0;c[h>>2]=c[13066];c[y>>2]=gB(131002,h,0)|0;MC(c[y>>2]|0,175049,280,1)|0;c[v>>2]=0;c[m>>2]=Lz(c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;if((c[w>>2]|0)!=(c[(c[m>>2]|0)+8>>2]|0)){c[w>>2]=c[(c[m>>2]|0)+8>>2];c[v>>2]=(c[v>>2]|0)+1}c[m>>2]=c[c[m>>2]>>2]}c[w>>2]=-2147483647;c[u>>2]=0;c[m>>2]=Lz(c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;if((c[w>>2]|0)!=(c[(c[m>>2]|0)+8>>2]|0)){c[w>>2]=c[(c[m>>2]|0)+8>>2];f=c[y>>2]|0;c[s>>2]=fC(f,wB(c[(c[m>>2]|0)+20>>2]|0)|0,1)|0;MC(c[s>>2]|0,175026,304,1)|0;c[(c[(c[s>>2]|0)+8>>2]|0)+112>>2]=c[m>>2];f=c[s>>2]|0;if(c[r>>2]|0){c[(c[(c[x>>2]|0)+8>>2]|0)+164>>2]=f;c[x>>2]=c[s>>2]}else{c[r>>2]=f;f=c[s>>2]|0;c[(c[(c[y>>2]|0)+8>>2]|0)+192>>2]=f;c[x>>2]=f}c[(c[(c[s>>2]|0)+8>>2]|0)+172+4>>2]=0;f=bK((c[u>>2]|0)+1<<2)|0;c[(c[(c[s>>2]|0)+8>>2]|0)+172>>2]=f;if(c[q>>2]|0){f=(c[q>>2]|0)==(c[r>>2]|0);c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]=0;e=c[v>>2]|0;if(f){f=bK((e-1<<1)+1<<2)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=f}else{f=bK(e-(c[u>>2]|0)-1+1<<2)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=f}c[t>>2]=VA(c[y>>2]|0,c[q>>2]|0,c[s>>2]|0,0,1)|0;MC(c[t>>2]|0,175319,176,1)|0;b[(c[(c[t>>2]|0)+8>>2]|0)+170>>1]=10;c[(c[(c[t>>2]|0)+8>>2]|0)+156>>2]=1;f=(c[(c[q>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)z=eK(c[f>>2]|0,(c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else z=cK((c[f+4>>2]|0)+2<<2)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=z;f=c[t>>2]|0;e=(c[(c[q>>2]|0)+8>>2]|0)+180+4|0;d=c[e>>2]|0;c[e>>2]=d+1;c[(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)+(d<<2)>>2]=f;c[(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;f=(c[(c[s>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[s>>2]|0)+8>>2]|0)+172>>2]|0)A=eK(c[f>>2]|0,(c[(c[(c[s>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0;else A=cK((c[f+4>>2]|0)+2<<2)|0;c[(c[(c[s>>2]|0)+8>>2]|0)+172>>2]=A;f=c[t>>2]|0;d=(c[(c[s>>2]|0)+8>>2]|0)+172+4|0;e=c[d>>2]|0;c[d>>2]=e+1;c[(c[(c[(c[s>>2]|0)+8>>2]|0)+172>>2]|0)+(e<<2)>>2]=f;c[(c[(c[(c[s>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[s>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0}c[u>>2]=(c[u>>2]|0)+1;c[q>>2]=c[s>>2]}c[(c[m>>2]|0)+24>>2]=c[s>>2];c[m>>2]=c[c[m>>2]>>2]}c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]=0;u=bK(4)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=u;c[h>>2]=c[13066];c[p>>2]=gB(131036,h,0)|0;c[m>>2]=Lz(c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;h=c[p>>2]|0;c[s>>2]=fC(h,wB(c[(c[m>>2]|0)+20>>2]|0)|0,1)|0;MC(c[s>>2]|0,175026,304,1)|0;c[(c[m>>2]|0)+28>>2]=c[s>>2];c[(c[(c[s>>2]|0)+8>>2]|0)+112>>2]=c[m>>2];c[m>>2]=c[c[m>>2]>>2]}c[w>>2]=-2147483647;c[m>>2]=Lz(c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0)){B=42;break}if((c[w>>2]|0)!=(c[(c[m>>2]|0)+8>>2]|0)){c[w>>2]=c[(c[m>>2]|0)+8>>2];c[n>>2]=c[c[m>>2]>>2];while(1){if(!(c[n>>2]|0))break;if((c[(c[n>>2]|0)+8>>2]|0)!=(c[w>>2]|0))break;c[n>>2]=c[c[n>>2]>>2]}if(!(c[n>>2]|0)){B=42;break}}c[o>>2]=c[n>>2];while(1){if(!(c[o>>2]|0))break;if(Ob[c[k>>2]&127](c[m>>2]|0,c[o>>2]|0)|0)VA(c[p>>2]|0,c[(c[m>>2]|0)+28>>2]|0,c[(c[o>>2]|0)+28>>2]|0,0,1)|0;c[o>>2]=c[c[o>>2]>>2]}c[m>>2]=c[c[m>>2]>>2]}if((B|0)==42){nr(c[p>>2]|0,c[y>>2]|0,c[l>>2]|0);jB(c[p>>2]|0)|0;i=g;return c[y>>2]|0}return 0}function lr(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+64|0;j=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+8|0;u=g;c[k>>2]=a;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[s>>2]=0;c[j>>2]=c[13066];c[t>>2]=gB(131002,j,0)|0;MC(c[t>>2]|0,175049,280,1)|0;c[o>>2]=Lz(c[l>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;j=c[t>>2]|0;c[q>>2]=fC(j,wB(c[(c[o>>2]|0)+20>>2]|0)|0,1)|0;MC(c[q>>2]|0,175026,304,1)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+112>>2]=c[o>>2];c[(c[o>>2]|0)+24>>2]=c[q>>2];c[(c[(c[q>>2]|0)+8>>2]|0)+172+4>>2]=0;j=bK(4)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]=j;c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]=0;j=bK(4)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=j;j=c[q>>2]|0;if(c[s>>2]|0){c[(c[(c[s>>2]|0)+8>>2]|0)+164>>2]=j;c[s>>2]=c[q>>2]}else{c[(c[(c[t>>2]|0)+8>>2]|0)+192>>2]=j;c[s>>2]=j}c[o>>2]=c[c[o>>2]>>2]}c[o>>2]=Lz(c[l>>2]|0)|0;a:while(1){if(!(c[o>>2]|0))break;c[p>>2]=c[c[o>>2]>>2];while(1){if(!(c[p>>2]|0))break;c[r>>2]=0;if(Ob[c[m>>2]&127](c[o>>2]|0,c[p>>2]|0)|0){h[u>>3]=+(Ob[c[n>>2]&127]((c[o>>2]|0)+32|0,(c[p>>2]|0)+32|0)|0);c[r>>2]=VA(c[t>>2]|0,c[(c[o>>2]|0)+24>>2]|0,c[(c[p>>2]|0)+24>>2]|0,0,1)|0;MC(c[r>>2]|0,175319,176,1)|0;if(!(+h[u>>3]<=65535.0)){v=13;break a}b[(c[(c[r>>2]|0)+8>>2]|0)+170>>1]=~~+h[u>>3];c[(c[(c[r>>2]|0)+8>>2]|0)+156>>2]=1}if((c[r>>2]|0)!=0?(VA(c[k>>2]|0,c[(c[o>>2]|0)+20>>2]|0,c[(c[p>>2]|0)+20>>2]|0,0,0)|0)!=0:0)c[(c[(c[r>>2]|0)+8>>2]|0)+156>>2]=100;c[p>>2]=c[c[p>>2]>>2]}c[o>>2]=c[c[o>>2]>>2]}if((v|0)==13)La(131005,130974,256,131021);c[o>>2]=Lz(c[l>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;c[q>>2]=c[(c[o>>2]|0)+24>>2];c[r>>2]=OA(c[t>>2]|0,c[q>>2]|0)|0;while(1){if(!(c[r>>2]|0))break;l=(c[(c[q>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)w=eK(c[l>>2]|0,(c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else w=cK((c[l+4>>2]|0)+2<<2)|0;c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]=w;l=c[r>>2]|0;v=(c[(c[q>>2]|0)+8>>2]|0)+180+4|0;p=c[v>>2]|0;c[v>>2]=p+1;c[(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)+(p<<2)>>2]=l;c[(c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;l=c[r>>2]|0;p=(c[(c[((c[c[r>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?c[r>>2]|0:(c[r>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0){l=c[r>>2]|0;x=eK(c[p>>2]|0,(c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0}else x=cK((c[p+4>>2]|0)+2<<2)|0;p=c[r>>2]|0;c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]=x;p=c[r>>2]|0;l=c[r>>2]|0;v=(c[(c[((c[c[r>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+172+4|0;l=c[v>>2]|0;c[v>>2]=l+1;v=c[r>>2]|0;c[(c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?v:v+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(l<<2)>>2]=p;p=c[r>>2]|0;l=c[r>>2]|0;c[(c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0;c[r>>2]=QA(c[t>>2]|0,c[r>>2]|0)|0}c[o>>2]=c[c[o>>2]>>2]}i=g;return c[t>>2]|0}function mr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;if(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}jB(c[d>>2]|0)|0;i=b;return}function nr(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;h=g+40|0;j=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=a;c[j>>2]=d;c[k>>2]=f;c[l>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[q>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2];c[o>>2]=c[(c[q>>2]|0)+24>>2];c[m>>2]=OA(c[h>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;f=c[m>>2]|0;c[r>>2]=c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+112>>2];c[s>>2]=Ob[c[k>>2]&127]((c[q>>2]|0)+32|0,(c[r>>2]|0)+32|0)|0;c[p>>2]=c[(c[r>>2]|0)+24>>2];c[n>>2]=VA(c[j>>2]|0,c[o>>2]|0,c[p>>2]|0,0,1)|0;MC(c[n>>2]|0,175319,176,1)|0;c[(c[(c[n>>2]|0)+8>>2]|0)+156>>2]=1;if((e[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0|0)<(c[s>>2]|0)){if(+(e[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0|0)==0.0){f=(c[(c[o>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]|0)t=eK(c[f>>2]|0,(c[(c[(c[o>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else t=cK((c[f+4>>2]|0)+2<<2)|0;c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]=t;f=c[n>>2]|0;d=(c[(c[o>>2]|0)+8>>2]|0)+180+4|0;a=c[d>>2]|0;c[d>>2]=a+1;c[(c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]|0)+(a<<2)>>2]=f;c[(c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[o>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;f=(c[(c[p>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]|0)u=eK(c[f>>2]|0,(c[(c[(c[p>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0;else u=cK((c[f+4>>2]|0)+2<<2)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]=u;f=c[n>>2]|0;a=(c[(c[p>>2]|0)+8>>2]|0)+172+4|0;d=c[a>>2]|0;c[a>>2]=d+1;c[(c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]|0)+(d<<2)>>2]=f;c[(c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[p>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0}b[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]=c[s>>2]}c[m>>2]=QA(c[h>>2]|0,c[m>>2]|0)|0}c[l>>2]=aC(c[h>>2]|0,c[l>>2]|0)|0}i=g;return}function or(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;c[f+12>>2]=a;c[g>>2]=b;c[h>>2]=d;c[f>>2]=e;i=f;return (c[c[g>>2]>>2]|0)-(c[c[h>>2]>>2]|0)|0}function pr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+12>>2]=a;c[e+8>>2]=b;c[e+4>>2]=d;c[f>>2]=c[12866];$z(1,131039,f)|0;i=e;return 0}function qr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+32|0;g=f;c[f+16>>2]=a;c[f+12>>2]=b;c[f+8>>2]=d;c[f+4>>2]=e;c[g>>2]=c[12866];$z(1,131067,g)|0;i=f;return 0}function rr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;f=i;i=i+112|0;g=f+108|0;j=f+104|0;k=f+100|0;l=f+96|0;m=f+92|0;n=f+88|0;o=f+84|0;p=f+48|0;q=f+40|0;r=f+32|0;s=f+24|0;t=f+16|0;u=f+8|0;v=f;w=f+80|0;x=f+76|0;y=f+72|0;z=f+68|0;A=f+64|0;B=f+60|0;C=f+56|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[l>>2]|0)==2){c[B>>2]=cK(16)|0;c[n>>2]=cK((c[l>>2]|0)*12|0)|0;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+4>>2]=c[B>>2];c[c[n>>2]>>2]=2;c[c[(c[n>>2]|0)+4>>2]>>2]=0;c[(c[(c[n>>2]|0)+4>>2]|0)+4>>2]=1;c[(c[n>>2]|0)+12+4>>2]=(c[B>>2]|0)+8;c[(c[n>>2]|0)+12+8>>2]=0;c[(c[n>>2]|0)+12>>2]=2;c[c[(c[n>>2]|0)+12+4>>2]>>2]=1;c[(c[(c[n>>2]|0)+12+4>>2]|0)+4>>2]=0;c[g>>2]=c[n>>2];D=c[g>>2]|0;i=f;return D|0}if((c[l>>2]|0)==1){c[C>>2]=cK(4)|0;c[n>>2]=cK((c[l>>2]|0)*12|0)|0;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+4>>2]=c[C>>2];c[c[n>>2]>>2]=1;c[c[(c[n>>2]|0)+4>>2]>>2]=0;c[g>>2]=c[n>>2];D=c[g>>2]|0;i=f;return D|0}c[n>>2]=pr(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;C=(c[m>>2]|0)!=0;c[o>>2]=0;a:do if(C)while(1){if((c[o>>2]|0)>=(c[l>>2]|0))break a;h[s>>3]=+h[(c[j>>2]|0)+(c[o>>2]<<3)>>3];h[t>>3]=+h[(c[k>>2]|0)+(c[o>>2]<<3)>>3];c[w>>2]=1;while(1){if((c[w>>2]|0)>=(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)>>2]|0))break;c[y>>2]=c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(c[w>>2]<<2)>>2];if((c[y>>2]|0)<(c[o>>2]|0)){c[w>>2]=(c[w>>2]|0)+1;continue}h[u>>3]=+h[(c[j>>2]|0)+(c[y>>2]<<3)>>3];h[v>>3]=+h[(c[k>>2]|0)+(c[y>>2]<<3)>>3];h[p>>3]=(+h[u>>3]-+h[s>>3])*(+h[u>>3]-+h[s>>3])+(+h[v>>3]-+h[t>>3])*(+h[v>>3]-+h[t>>3]);c[A>>2]=0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break;if(!((c[A>>2]|0)!=0^1))break;h[q>>3]=(+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3]-+h[s>>3])*(+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3]-+h[s>>3])+(+h[(c[k>>2]|0)+(c[x>>2]<<3)>>3]-+h[t>>3])*(+h[(c[k>>2]|0)+(c[x>>2]<<3)>>3]-+h[t>>3]);if(+h[q>>3]<+h[p>>3]?(h[r>>3]=(+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3]-+h[u>>3])*(+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3]-+h[u>>3])+(+h[(c[k>>2]|0)+(c[x>>2]<<3)>>3]-+h[v>>3])*(+h[(c[k>>2]|0)+(c[x>>2]<<3)>>3]-+h[v>>3]),+h[r>>3]<+h[p>>3]):0){m=(c[n>>2]|0)+((c[o>>2]|0)*12|0)|0;B=(c[m>>2]|0)+-1|0;c[m>>2]=B;c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(c[w>>2]<<2)>>2]=c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(B<<2)>>2];ur(c[n>>2]|0,c[y>>2]|0,c[o>>2]|0);c[A>>2]=1}c[x>>2]=(c[x>>2]|0)+1}if(c[A>>2]|0)continue;c[w>>2]=(c[w>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}else while(1){if((c[o>>2]|0)>=(c[l>>2]|0))break a;h[s>>3]=+h[(c[j>>2]|0)+(c[o>>2]<<3)>>3];h[t>>3]=+h[(c[k>>2]|0)+(c[o>>2]<<3)>>3];c[w>>2]=1;while(1){if((c[w>>2]|0)>=(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)>>2]|0))break;c[y>>2]=c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(c[w>>2]<<2)>>2];h[u>>3]=+h[(c[j>>2]|0)+(c[y>>2]<<3)>>3];h[v>>3]=+h[(c[k>>2]|0)+(c[y>>2]<<3)>>3];h[p>>3]=(+h[u>>3]-+h[s>>3])*(+h[u>>3]-+h[s>>3])+(+h[v>>3]-+h[t>>3])*(+h[v>>3]-+h[t>>3]);c[A>>2]=0;c[x>>2]=1;while(1){if((c[x>>2]|0)>=(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)>>2]|0))break;if(!((c[A>>2]|0)!=0^1))break;c[z>>2]=c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(c[x>>2]<<2)>>2];h[q>>3]=(+h[(c[j>>2]|0)+(c[z>>2]<<3)>>3]-+h[s>>3])*(+h[(c[j>>2]|0)+(c[z>>2]<<3)>>3]-+h[s>>3])+(+h[(c[k>>2]|0)+(c[z>>2]<<3)>>3]-+h[t>>3])*(+h[(c[k>>2]|0)+(c[z>>2]<<3)>>3]-+h[t>>3]);if(+h[q>>3]<+h[p>>3]?(h[r>>3]=(+h[(c[j>>2]|0)+(c[z>>2]<<3)>>3]-+h[u>>3])*(+h[(c[j>>2]|0)+(c[z>>2]<<3)>>3]-+h[u>>3])+(+h[(c[k>>2]|0)+(c[z>>2]<<3)>>3]-+h[v>>3])*(+h[(c[k>>2]|0)+(c[z>>2]<<3)>>3]-+h[v>>3]),+h[r>>3]<+h[p>>3]):0){B=(c[n>>2]|0)+((c[o>>2]|0)*12|0)|0;m=(c[B>>2]|0)+-1|0;c[B>>2]=m;c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(c[w>>2]<<2)>>2]=c[(c[(c[n>>2]|0)+((c[o>>2]|0)*12|0)+4>>2]|0)+(m<<2)>>2];ur(c[n>>2]|0,c[y>>2]|0,c[o>>2]|0);c[A>>2]=1}c[x>>2]=(c[x>>2]|0)+1}if(c[A>>2]|0)continue;c[w>>2]=(c[w>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}while(0);c[g>>2]=c[n>>2];D=c[g>>2]|0;i=f;return D|0}function sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+4>>2]|0)O4(c[(c[d>>2]|0)+4>>2]|0);if(c[(c[d>>2]|0)+8>>2]|0)O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function tr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+4>>2]|0)O4(c[(c[d>>2]|0)+4>>2]|0);if(c[(c[d>>2]|0)+8>>2]|0)O4(c[(c[d>>2]|0)+8>>2]|0);if(c[(c[d>>2]|0)+16>>2]|0)O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[d>>2]|0);i=b;return}function ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=1;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+((c[g>>2]|0)*12|0)>>2]|0)){k=6;break}if((c[(c[(c[f>>2]|0)+((c[g>>2]|0)*12|0)+4>>2]|0)+(c[j>>2]<<2)>>2]|0)==(c[h>>2]|0))break;c[j>>2]=(c[j>>2]|0)+1}if((k|0)==6){i=e;return}k=(c[f>>2]|0)+((c[g>>2]|0)*12|0)|0;h=(c[k>>2]|0)+-1|0;c[k>>2]=h;c[(c[(c[f>>2]|0)+((c[g>>2]|0)*12|0)+4>>2]|0)+(c[j>>2]<<2)>>2]=c[(c[(c[f>>2]|0)+((c[g>>2]|0)*12|0)+4>>2]|0)+(h<<2)>>2];i=e;return}function vr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;h=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[r>>2]=2147483647;c[12867]=Q4(c[12867]|0,c[k>>2]<<2)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[k>>2]|0))break;c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=2147483647;c[m>>2]=(c[m>>2]|0)+1}c[(c[l>>2]|0)+(c[h>>2]<<2)>>2]=0;c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0))break;c[(c[l>>2]|0)+(c[(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]=~~+g[(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}yr(n,c[h>>2]|0,c[12867]|0,c[l>>2]|0,c[k>>2]|0);while(1){if(!((zr(n,o,c[12867]|0,c[l>>2]|0)|0)<<24>>24))break;c[q>>2]=c[(c[l>>2]|0)+(c[o>>2]<<2)>>2];if(+(c[q>>2]|0)==2147483647.0)break;c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)>>2]|0))break;c[p>>2]=c[(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)+4>>2]|0)+(c[m>>2]<<2)>>2];Ar(n,c[p>>2]|0,(c[q>>2]|0)+~~+g[(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)+8>>2]|0)+(c[m>>2]<<2)>>2]|0,c[12867]|0,c[l>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[r>>2]=c[q>>2]}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[k>>2]|0))break;if(+(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)==2147483647.0)c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=(c[r>>2]|0)+10;c[m>>2]=(c[m>>2]|0)+1}Br(n);i=f;return}function wr(b,d,e,f,h,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+80|0;l=k+68|0;m=k+64|0;n=k+60|0;o=k+56|0;p=k+52|0;q=k+48|0;r=k+44|0;s=k+40|0;t=k+24|0;u=k+16|0;v=k+12|0;w=k+8|0;x=k+4|0;y=k;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=h;c[q>>2]=j;c[y>>2]=0;Nq(t,c[n>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]=-1;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=Mq(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,t,c[p>>2]|0,c[q>>2]|0)|0;if((c[12868]|0)<(c[n>>2]|0)){c[12869]=Q4(c[12869]|0,c[n>>2]|0)|0;c[s>>2]=c[12868];while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;a[(c[12869]|0)+(c[s>>2]|0)>>0]=0;c[s>>2]=(c[s>>2]|0)+1}c[12868]=c[n>>2]}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;a[(c[12869]|0)+(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)>>0]=1;c[s>>2]=(c[s>>2]|0)+1}c[12870]=Q4(c[12870]|0,c[n>>2]<<2)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]=2147483647;c[s>>2]=(c[s>>2]|0)+1}c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]=0;c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[(c[m>>2]|0)+((c[l>>2]|0)*20|0)>>2]|0))break;c[(c[o>>2]|0)+(c[(c[(c[m>>2]|0)+((c[l>>2]|0)*20|0)+4>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]=~~+g[(c[(c[m>>2]|0)+((c[l>>2]|0)*20|0)+8>>2]|0)+(c[s>>2]<<2)>>2];c[s>>2]=(c[s>>2]|0)+1}yr(u,c[l>>2]|0,c[12870]|0,c[o>>2]|0,c[n>>2]|0);a:while(1){if((c[y>>2]|0)>=(c[r>>2]|0))break;if(!((zr(u,v,c[12870]|0,c[o>>2]|0)|0)&255))break;if(a[(c[12869]|0)+(c[v>>2]|0)>>0]|0)c[y>>2]=(c[y>>2]|0)+1;c[x>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];if(+(c[x>>2]|0)==2147483647.0)break;c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[(c[m>>2]|0)+((c[v>>2]|0)*20|0)>>2]|0))continue a;c[w>>2]=c[(c[(c[m>>2]|0)+((c[v>>2]|0)*20|0)+4>>2]|0)+(c[s>>2]<<2)>>2];Ar(u,c[w>>2]|0,(c[x>>2]|0)+~~+g[(c[(c[m>>2]|0)+((c[v>>2]|0)*20|0)+8>>2]|0)+(c[s>>2]<<2)>>2]|0,c[12870]|0,c[o>>2]|0);c[s>>2]=(c[s>>2]|0)+1}}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;a[(c[12869]|0)+(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)>>0]=0;c[s>>2]=(c[s>>2]|0)+1}Br(u);Oq(t);i=k;return c[r>>2]|0}function xr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;h=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[o>>2]=0;c[r>>2]=cK(c[k>>2]<<2)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[k>>2]|0))break;g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=3402823466385288598117041.0e14;c[m>>2]=(c[m>>2]|0)+1}g[(c[l>>2]|0)+(c[h>>2]<<2)>>2]=0.0;c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0))break;g[(c[l>>2]|0)+(c[(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]=+g[(c[(c[j>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}Cr(n,c[h>>2]|0,c[r>>2]|0,c[l>>2]|0,c[k>>2]|0);a:while(1){if(!((Dr(n,o,c[r>>2]|0,c[l>>2]|0)|0)<<24>>24)){s=13;break}g[q>>2]=+g[(c[l>>2]|0)+(c[o>>2]<<2)>>2];if(+g[q>>2]==3402823466385288598117041.0e14){s=13;break}c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)>>2]|0))continue a;c[p>>2]=c[(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)+4>>2]|0)+(c[m>>2]<<2)>>2];Er(n,c[p>>2]|0,+g[q>>2]+ +g[(c[(c[j>>2]|0)+((c[o>>2]|0)*20|0)+8>>2]|0)+(c[m>>2]<<2)>>2],c[r>>2]|0,c[l>>2]|0);c[m>>2]=(c[m>>2]|0)+1}}if((s|0)==13){Br(n);O4(c[r>>2]|0);i=f;return}}function yr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if((c[m>>2]|0)==1)c[c[h>>2]>>2]=0;else{f=cK((c[m>>2]|0)-1<<2)|0;c[c[h>>2]>>2]=f}c[(c[h>>2]|0)+4>>2]=(c[m>>2]|0)-1;c[o>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[m>>2]|0))break;if((c[n>>2]|0)!=(c[j>>2]|0)){c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]=c[n>>2];c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=((c[m>>2]|0)-1|0)/2|0;while(1){if((c[p>>2]|0)<0)break;Gr(c[h>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0);c[p>>2]=(c[p>>2]|0)+-1}i=g;return}function zr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[(c[j>>2]|0)+4>>2]|0)){a[h>>0]=0;n=a[h>>0]|0;i=g;return n|0}else{c[c[k>>2]>>2]=c[c[c[j>>2]>>2]>>2];c[c[c[j>>2]>>2]>>2]=c[(c[c[j>>2]>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-1<<2)>>2];c[(c[l>>2]|0)+(c[c[c[j>>2]>>2]>>2]<<2)>>2]=0;k=(c[j>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+-1;Gr(c[j>>2]|0,0,c[l>>2]|0,c[m>>2]|0);a[h>>0]=1;n=a[h>>0]|0;i=g;return n|0}return 0}function Ar(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if((c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)<=(c[k>>2]|0)){i=g;return}c[n>>2]=c[(c[l>>2]|0)+(c[j>>2]<<2)>>2];c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]=c[k>>2];c[o>>2]=c[n>>2];while(1){if((c[o>>2]|0)<=0)break;if((c[(c[m>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(((c[o>>2]|0)/2|0)<<2)>>2]<<2)>>2]|0)<=(c[k>>2]|0))break;c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[c[h>>2]>>2]|0)+(((c[o>>2]|0)/2|0)<<2)>>2];c[(c[l>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)/2|0}c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]=c[j>>2];c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=c[o>>2];i=g;return}function Br(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[c[d>>2]>>2]|0)){i=b;return}O4(c[c[d>>2]>>2]|0);i=b;return}function Cr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;f=cK((c[m>>2]|0)-1<<2)|0;c[c[h>>2]>>2]=f;c[(c[h>>2]|0)+4>>2]=(c[m>>2]|0)-1;c[o>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[m>>2]|0))break;if((c[n>>2]|0)!=(c[j>>2]|0)){c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]=c[n>>2];c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=((c[m>>2]|0)-1|0)/2|0;while(1){if((c[p>>2]|0)<0)break;Fr(c[h>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0);c[p>>2]=(c[p>>2]|0)+-1}i=g;return}function Dr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[(c[j>>2]|0)+4>>2]|0)){a[h>>0]=0;n=a[h>>0]|0;i=g;return n|0}else{c[c[k>>2]>>2]=c[c[c[j>>2]>>2]>>2];c[c[c[j>>2]>>2]>>2]=c[(c[c[j>>2]>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-1<<2)>>2];c[(c[l>>2]|0)+(c[c[c[j>>2]>>2]>>2]<<2)>>2]=0;k=(c[j>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+-1;Fr(c[j>>2]|0,0,c[l>>2]|0,c[m>>2]|0);a[h>>0]=1;n=a[h>>0]|0;i=g;return n|0}return 0}function Er(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=a;c[k>>2]=b;g[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if(+g[(c[n>>2]|0)+(c[k>>2]<<2)>>2]<=+g[l>>2]){i=h;return}c[o>>2]=c[(c[m>>2]|0)+(c[k>>2]<<2)>>2];g[(c[n>>2]|0)+(c[k>>2]<<2)>>2]=+g[l>>2];c[p>>2]=c[o>>2];while(1){if((c[p>>2]|0)<=0)break;if(!(+g[(c[n>>2]|0)+(c[(c[c[j>>2]>>2]|0)+(((c[p>>2]|0)/2|0)<<2)>>2]<<2)>>2]>+g[l>>2]))break;c[(c[c[j>>2]>>2]|0)+(c[p>>2]<<2)>>2]=c[(c[c[j>>2]>>2]|0)+(((c[p>>2]|0)/2|0)<<2)>>2];c[(c[m>>2]|0)+(c[(c[c[j>>2]>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]=c[p>>2];c[p>>2]=(c[p>>2]|0)/2|0}c[(c[c[j>>2]>>2]|0)+(c[p>>2]<<2)>>2]=c[k>>2];c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]=c[p>>2];i=h;return}function Fr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;while(1){c[m>>2]=c[j>>2]<<1;c[n>>2]=(c[j>>2]<<1)+1;if((c[m>>2]|0)<(c[(c[h>>2]|0)+4>>2]|0)?+g[(c[l>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]<+g[(c[l>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[j>>2]<<2)>>2]<<2)>>2]:0)c[o>>2]=c[m>>2];else c[o>>2]=c[j>>2];if((c[n>>2]|0)<(c[(c[h>>2]|0)+4>>2]|0)?+g[(c[l>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]<+g[(c[l>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]:0)c[o>>2]=c[n>>2];if((c[o>>2]|0)==(c[j>>2]|0))break;c[p>>2]=c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2];c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[c[h>>2]>>2]|0)+(c[j>>2]<<2)>>2];c[(c[c[h>>2]>>2]|0)+(c[j>>2]<<2)>>2]=c[p>>2];c[(c[k>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]=c[o>>2];c[(c[k>>2]|0)+(c[(c[c[h>>2]>>2]|0)+(c[j>>2]<<2)>>2]<<2)>>2]=c[j>>2];c[j>>2]=c[o>>2]}i=f;return}function Gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;while(1){c[l>>2]=c[h>>2]<<1;c[m>>2]=(c[h>>2]<<1)+1;if((c[l>>2]|0)<(c[(c[g>>2]|0)+4>>2]|0)?(c[(c[k>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[l>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[h>>2]<<2)>>2]<<2)>>2]|0):0)c[n>>2]=c[l>>2];else c[n>>2]=c[h>>2];if((c[m>>2]|0)<(c[(c[g>>2]|0)+4>>2]|0)?(c[(c[k>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]|0):0)c[n>>2]=c[m>>2];if((c[n>>2]|0)==(c[h>>2]|0))break;c[o>>2]=c[(c[c[g>>2]>>2]|0)+(c[n>>2]<<2)>>2];c[(c[c[g>>2]>>2]|0)+(c[n>>2]<<2)>>2]=c[(c[c[g>>2]>>2]|0)+(c[h>>2]<<2)>>2];c[(c[c[g>>2]>>2]|0)+(c[h>>2]<<2)>>2]=c[o>>2];c[(c[j>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[n>>2];c[(c[j>>2]|0)+(c[(c[c[g>>2]>>2]|0)+(c[h>>2]<<2)>>2]<<2)>>2]=c[h>>2];c[h>>2]=c[n>>2]}i=f;return}function Hr(){At(51484,48);c[12874]=0;return}function Ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;g=d+24|0;j=d+16|0;k=d+8|0;l=d;m=d+32|0;c[e>>2]=a;c[f>>2]=b;c[m>>2]=Bt(51484)|0;c[(c[m>>2]|0)+32>>2]=c[e>>2];c[(c[m>>2]|0)+32+4>>2]=c[f>>2];iu(c[e>>2]|0);iu(c[f>>2]|0);c[(c[m>>2]|0)+24>>2]=0;c[(c[m>>2]|0)+24+4>>2]=0;h[g>>3]=+h[c[f>>2]>>3]-+h[c[e>>2]>>3];h[j>>3]=+h[(c[f>>2]|0)+8>>3]-+h[(c[e>>2]|0)+8>>3];n=+h[g>>3];h[k>>3]=+h[g>>3]>0.0?n:-n;n=+h[j>>3];h[l>>3]=+h[j>>3]>0.0?n:-n;h[(c[m>>2]|0)+16>>3]=+h[c[e>>2]>>3]*+h[g>>3]+ +h[(c[e>>2]|0)+8>>3]*+h[j>>3]+(+h[g>>3]*+h[g>>3]+ +h[j>>3]*+h[j>>3])*.5;e=c[m>>2]|0;if(+h[k>>3]>+h[l>>3]){h[e>>3]=1.0;h[(c[m>>2]|0)+8>>3]=+h[j>>3]/+h[g>>3];l=(c[m>>2]|0)+16|0;h[l>>3]=+h[l>>3]/+h[g>>3];o=c[12874]|0;p=c[m>>2]|0;q=p+40|0;c[q>>2]=o;r=c[12874]|0;s=r+1|0;c[12874]=s;t=c[m>>2]|0;i=d;return t|0}else{h[e+8>>3]=1.0;h[c[m>>2]>>3]=+h[g>>3]/+h[j>>3];g=(c[m>>2]|0)+16|0;h[g>>3]=+h[g>>3]/+h[j>>3];o=c[12874]|0;p=c[m>>2]|0;q=p+40|0;c[q>>2]=o;r=c[12874]|0;s=r+1|0;c[12874]=s;t=c[m>>2]|0;i=d;return t|0}return 0}function Jr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+48|0;d=b+40|0;e=b+36|0;f=b+32|0;g=b+24|0;j=b+16|0;k=b+8|0;l=b;c[d>>2]=a;if(+h[c[d>>2]>>3]==1.0?+h[(c[d>>2]|0)+8>>3]>=0.0:0){c[e>>2]=c[(c[d>>2]|0)+24+4>>2];c[f>>2]=c[(c[d>>2]|0)+24>>2]}else{c[e>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=c[(c[d>>2]|0)+24+4>>2]}a=(c[e>>2]|0)!=0;if(+h[c[d>>2]>>3]==1.0){do if(a){h[k>>3]=+h[(c[e>>2]|0)+8>>3];if(+h[k>>3]>+h[4198]){i=b;return}if(+h[k>>3]>=+h[4199]){h[g>>3]=+h[c[e>>2]>>3];break}else{h[k>>3]=+h[4199];h[g>>3]=+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+8>>3]*+h[k>>3];break}}else{h[k>>3]=+h[4199];h[g>>3]=+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+8>>3]*+h[k>>3]}while(0);do if(c[f>>2]|0){h[l>>3]=+h[(c[f>>2]|0)+8>>3];if(+h[l>>3]<+h[4199]){i=b;return}if(+h[l>>3]<=+h[4198]){h[j>>3]=+h[c[f>>2]>>3];break}else{h[l>>3]=+h[4198];h[j>>3]=+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+8>>3]*+h[l>>3];break}}else{h[l>>3]=+h[4198];h[j>>3]=+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+8>>3]*+h[l>>3]}while(0);if((+h[g>>3]>+h[4200]?+h[j>>3]>+h[4200]:0)|(+h[g>>3]<+h[4201]?+h[j>>3]<+h[4201]:0)){i=b;return}if(+h[g>>3]>+h[4200]){h[g>>3]=+h[4200];h[k>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[g>>3])/+h[(c[d>>2]|0)+8>>3]}if(+h[g>>3]<+h[4201]){h[g>>3]=+h[4201];h[k>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[g>>3])/+h[(c[d>>2]|0)+8>>3]}if(+h[j>>3]>+h[4200]){h[j>>3]=+h[4200];h[l>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[j>>3])/+h[(c[d>>2]|0)+8>>3]}if(+h[j>>3]<+h[4201]){h[j>>3]=+h[4201];h[l>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[j>>3])/+h[(c[d>>2]|0)+8>>3]}}else{do if(a){h[g>>3]=+h[c[e>>2]>>3];if(+h[g>>3]>+h[4200]){i=b;return}if(+h[g>>3]>=+h[4201]){h[k>>3]=+h[(c[e>>2]|0)+8>>3];break}else{h[g>>3]=+h[4201];h[k>>3]=+h[(c[d>>2]|0)+16>>3]-+h[c[d>>2]>>3]*+h[g>>3];break}}else{h[g>>3]=+h[4201];h[k>>3]=+h[(c[d>>2]|0)+16>>3]-+h[c[d>>2]>>3]*+h[g>>3]}while(0);do if(c[f>>2]|0){h[j>>3]=+h[c[f>>2]>>3];if(+h[j>>3]<+h[4201]){i=b;return}if(+h[j>>3]<=+h[4200]){h[l>>3]=+h[(c[f>>2]|0)+8>>3];break}else{h[j>>3]=+h[4200];h[l>>3]=+h[(c[d>>2]|0)+16>>3]-+h[c[d>>2]>>3]*+h[j>>3];break}}else{h[j>>3]=+h[4200];h[l>>3]=+h[(c[d>>2]|0)+16>>3]-+h[c[d>>2]>>3]*+h[j>>3]}while(0);if((+h[k>>3]>+h[4198]?+h[l>>3]>+h[4198]:0)|(+h[k>>3]<+h[4199]?+h[l>>3]<+h[4199]:0)){i=b;return}if(+h[k>>3]>+h[4198]){h[k>>3]=+h[4198];h[g>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[k>>3])/+h[c[d>>2]>>3]}if(+h[k>>3]<+h[4199]){h[k>>3]=+h[4199];h[g>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[k>>3])/+h[c[d>>2]>>3]}if(+h[l>>3]>+h[4198]){h[l>>3]=+h[4198];h[j>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[l>>3])/+h[c[d>>2]>>3]}if(+h[l>>3]<+h[4199]){h[l>>3]=+h[4199];h[j>>3]=(+h[(c[d>>2]|0)+16>>3]-+h[l>>3])/+h[c[d>>2]>>3]}}Lr(c[d>>2]|0,+h[g>>3],+h[k>>3],+h[j>>3],+h[l>>3]);i=b;return}function Kr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+24+(c[g>>2]<<2)>>2]=c[h>>2];iu(c[h>>2]|0);if(!(c[(c[f>>2]|0)+24+(1-(c[g>>2]|0)<<2)>>2]|0)){i=e;return}Jr(c[f>>2]|0);hu(c[(c[f>>2]|0)+32>>2]|0);hu(c[(c[f>>2]|0)+32+4>>2]|0);Ct(c[f>>2]|0,51484);i=e;return}function Lr(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;j=g+32|0;k=g+24|0;l=g+16|0;m=g+8|0;n=g;c[j>>2]=a;h[k>>3]=b;h[l>>3]=d;h[m>>3]=e;h[n>>3]=f;ps(c[(c[j>>2]|0)+32>>2]|0,+h[k>>3],+h[l>>3]);ps(c[(c[j>>2]|0)+32>>2]|0,+h[m>>3],+h[n>>3]);ps(c[(c[j>>2]|0)+32+4>>2]|0,+h[k>>3],+h[l>>3]);ps(c[(c[j>>2]|0)+32+4>>2]|0,+h[m>>3],+h[n>>3]);i=g;return}function Mr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=i;i=i+80|0;h=g+68|0;j=g+64|0;k=g+60|0;l=g+56|0;m=g+52|0;n=g+48|0;o=g+44|0;p=g+40|0;q=g+36|0;r=g+32|0;s=g+28|0;t=g+24|0;u=g+8|0;v=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[q>>2]=cK((_(c[j>>2]|0,c[k>>2]|0)|0)<<2)|0;c[r>>2]=c[c[l>>2]>>2];c[s>>2]=cK(c[j>>2]<<2)|0;c[t>>2]=c[(c[h>>2]|0)+8>>2];c[v>>2]=0;if(c[r>>2]|0){O4(c[c[r>>2]>>2]|0);O4(c[r>>2]|0)}f=cK(c[k>>2]<<2)|0;c[r>>2]=f;c[c[l>>2]>>2]=f;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;f=(c[q>>2]|0)+((_(c[n>>2]|0,c[j>>2]|0)|0)<<2)|0;c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=f;c[n>>2]=(c[n>>2]|0)+1}if(c[m>>2]|0)ws(c[h>>2]|0,c[j>>2]|0);q=t2()|0;c[p>>2]=(q|0)%(c[j>>2]|0)|0;Nq(u,c[j>>2]|0);q=c[p>>2]|0;f=c[h>>2]|0;l=c[j>>2]|0;e=c[c[r>>2]>>2]|0;if(c[m>>2]|0)vr(q,f,l,e);else Iq(q,f,l,e,u);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]=c[(c[c[r>>2]>>2]|0)+(c[n>>2]<<2)>>2];if((c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]|0)>(c[v>>2]|0)){c[p>>2]=c[n>>2];c[v>>2]=c[(c[s>>2]|0)+(c[n>>2]<<2)>>2]}c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;e=c[p>>2]|0;l=c[h>>2]|0;f=c[j>>2]|0;q=c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]|0;if(c[m>>2]|0)vr(e,l,f,q);else Iq(e,l,f,q,u);c[v>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[j>>2]|0))break;q=c[o>>2]|0;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[o>>2]<<2)>>2]|0))w=c[(c[s>>2]|0)+(q<<2)>>2]|0;else w=c[(c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]|0)+(q<<2)>>2]|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=w;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[v>>2]|0)){c[p>>2]=c[o>>2];c[v>>2]=c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]}c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}O4(c[s>>2]|0);if(!(c[m>>2]|0)){i=g;return}xs(c[h>>2]|0,c[j>>2]|0,c[t>>2]|0);i=g;return}function Nr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+8|0;n=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;h[m>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[g>>2]|0))break;h[m>>3]=+h[m>>3]+ +(c[(c[(c[f>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<2)>>2]|0);c[l>>2]=(c[l>>2]|0)+1}h[n>>3]=+h[m>>3]/+(c[g>>2]|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[g>>2]|0))break;d=(c[(c[f>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)-~~+h[n>>3];c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}i=e;return}function Or(){var a=0,b=0;a=i;i=i+16|0;b=a;h[b>>3]=+((c[12875]|0)+4|0);c[12876]=~~+O(+(+h[b>>3]));i=a;return}function Pr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+8|0;j=d;c[e>>2]=a;c[f>>2]=b;h[g>>3]=+h[c[e>>2]>>3]-+h[c[f>>2]>>3];h[j>>3]=+h[(c[e>>2]|0)+8>>3]-+h[(c[f>>2]|0)+8>>3];i=d;return +(+h[g>>3]*+h[g>>3]+ +h[j>>3]*+h[j>>3])}function Qr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;h[c[f>>2]>>3]=+h[b>>3]-+h[d>>3];h[(c[f>>2]|0)+8>>3]=+h[b+8>>3]-+h[d+8>>3];i=e;return}function Rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;h[c[f>>2]>>3]=+h[b>>3]+ +h[d>>3];h[(c[f>>2]|0)+8>>3]=+h[b+8>>3]+ +h[d+8>>3];i=e;return}function Sr(a,b,c){a=a|0;b=b|0;c=c|0;return +((+h[a+8>>3]-+h[b+8>>3])*(+h[c>>3]-+h[b>>3])-(+h[c+8>>3]-+h[b+8>>3])*(+h[a>>3]-+h[b>>3]))}function Tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+48|0;f=e+32|0;g=e+16|0;h=e;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=+Sr(h,g,f)>0.0&1;i=e;return d|0}function Ur(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+28|0;k=g+24|0;l=g+16|0;m=g+8|0;n=g;c[k>>2]=f;h[n>>3]=+h[a>>3]*(+h[e+8>>3]-+h[d+8>>3])+ +h[b>>3]*(+h[d+8>>3]-+h[e+8>>3])+ +h[e>>3]*(+h[b+8>>3]-+h[a+8>>3])+ +h[d>>3]*(+h[a+8>>3]-+h[b+8>>3]);if(+h[n>>3]==0.0){c[j>>2]=0;o=c[j>>2]|0;i=g;return o|0}h[l>>3]=(+h[a>>3]*(+h[e+8>>3]-+h[d+8>>3])+ +h[d>>3]*(+h[a+8>>3]-+h[e+8>>3])+ +h[e>>3]*(+h[d+8>>3]-+h[a+8>>3]))/+h[n>>3];h[m>>3]=-(+h[a>>3]*(+h[d+8>>3]-+h[b+8>>3])+ +h[b>>3]*(+h[a+8>>3]-+h[d+8>>3])+ +h[d>>3]*(+h[b+8>>3]-+h[a+8>>3]))/+h[n>>3];h[c[k>>2]>>3]=+h[a>>3]+ +h[l>>3]*(+h[b>>3]-+h[a>>3]);h[(c[k>>2]|0)+8>>3]=+h[a+8>>3]+ +h[l>>3]*(+h[b+8>>3]-+h[a+8>>3]);if(0.0<=+h[l>>3]&+h[l>>3]<=1.0&0.0<=+h[m>>3]&+h[m>>3]<=1.0){c[j>>2]=1;o=c[j>>2]|0;i=g;return o|0}else{c[j>>2]=0;o=c[j>>2]|0;i=g;return o|0}return 0}function Vr(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e;k=e+12|0;l=e+8|0;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;c[(c[f>>2]|0)+20>>2]=c[g>>2];iu(c[g>>2]|0);h[(c[f>>2]|0)+24>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[j>>3];j=as(c[f>>2]|0)|0;c[k>>2]=(c[12877]|0)+(j*40|0);while(1){j=c[(c[k>>2]|0)+32>>2]|0;c[l>>2]=j;if(!j)break;if(!(+h[(c[f>>2]|0)+24>>3]>+h[(c[l>>2]|0)+24>>3])){if(!(+h[(c[f>>2]|0)+24>>3]==+h[(c[l>>2]|0)+24>>3]))break;if(!(+h[c[g>>2]>>3]>+h[c[(c[l>>2]|0)+20>>2]>>3]))break}c[k>>2]=c[l>>2]}c[(c[f>>2]|0)+32>>2]=c[(c[k>>2]|0)+32>>2];c[(c[k>>2]|0)+32>>2]=c[f>>2];c[12878]=(c[12878]|0)+1;i=e;return}function Wr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(!(c[(c[d>>2]|0)+20>>2]|0)){i=b;return}a=as(c[d>>2]|0)|0;c[e>>2]=(c[12877]|0)+(a*40|0);while(1){if((c[(c[e>>2]|0)+32>>2]|0)==(c[d>>2]|0))break;c[e>>2]=c[(c[e>>2]|0)+32>>2]}c[(c[e>>2]|0)+32>>2]=c[(c[d>>2]|0)+32>>2];c[12878]=(c[12878]|0)-1;hu(c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;i=b;return}function Xr(){return (c[12878]|0)==0|0}function Yr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;while(1){e=c[12879]|0;if(c[(c[12877]|0)+((c[12879]|0)*40|0)+32>>2]|0)break;c[12879]=e+1}h[d>>3]=+h[c[(c[(c[12877]|0)+(e*40|0)+32>>2]|0)+20>>2]>>3];h[d+8>>3]=+h[(c[(c[12877]|0)+((c[12879]|0)*40|0)+32>>2]|0)+24>>3];c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=b;return}function Zr(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=c[(c[12877]|0)+((c[12879]|0)*40|0)+32>>2];c[(c[12877]|0)+((c[12879]|0)*40|0)+32>>2]=c[(c[b>>2]|0)+32>>2];c[12878]=(c[12878]|0)-1;i=a;return c[b>>2]|0}function _r(){O4(c[12877]|0);c[12877]=0;return}function $r(){var a=0,b=0;a=i;i=i+16|0;b=a;c[12878]=0;c[12879]=0;c[12880]=c[12876]<<2;if(!(c[12877]|0))c[12877]=cK((c[12880]|0)*40|0)|0;c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[12880]|0))break;c[(c[12877]|0)+((c[b>>2]|0)*40|0)+32>>2]=0;c[b>>2]=(c[b>>2]|0)+1}i=a;return}function as(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b;c[d>>2]=a;h[f>>3]=(+h[(c[d>>2]|0)+24>>3]-+h[4206])/+h[4209]*+(c[12880]|0);do if(!(+h[f>>3]<0.0))if(+h[f>>3]>=+(c[12880]|0)){c[e>>2]=(c[12880]|0)-1;break}else{c[e>>2]=~~+h[f>>3];break}else c[e>>2]=0;while(0);if((c[e>>2]|0)>=(c[12879]|0)){g=c[e>>2]|0;i=b;return g|0}c[12879]=c[e>>2];g=c[e>>2]|0;i=b;return g|0}function bs(){At(51532,40);O4(c[12886]|0);c[12886]=0;return}function cs(){var a=0,b=0;a=i;i=i+16|0;b=a;At(51532,40);c[12887]=c[12876]<<1;if(!(c[12886]|0))c[12886]=cK(c[12887]<<2)|0;c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[12887]|0))break;c[(c[12886]|0)+(c[b>>2]<<2)>>2]=0;c[b>>2]=(c[b>>2]|0)+1}c[12881]=ds(0,0)|0;c[12882]=ds(0,0)|0;c[c[12881]>>2]=0;c[(c[12881]|0)+4>>2]=c[12882];c[c[12882]>>2]=c[12881];c[(c[12882]|0)+4>>2]=0;c[c[12886]>>2]=c[12881];c[(c[12886]|0)+((c[12887]|0)-1<<2)>>2]=c[12882];i=a;return}function ds(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e+8|0;h=e;c[f>>2]=b;a[g>>0]=d;c[h>>2]=Bt(51532)|0;c[(c[h>>2]|0)+8>>2]=c[f>>2];a[(c[h>>2]|0)+16>>0]=a[g>>0]|0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+12>>2]=0;i=e;return c[h>>2]|0}function es(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+64|0;f=e+56|0;g=e+52|0;j=e+48|0;k=e+44|0;l=e+40|0;m=e+36|0;n=e+32|0;o=e+16|0;p=e+8|0;q=e;r=e+28|0;s=e+24|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[(c[g>>2]|0)+8>>2];c[l>>2]=c[(c[j>>2]|0)+8>>2];if((c[k>>2]|0)==0|(c[l>>2]|0)==0){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}if((c[(c[k>>2]|0)+32+4>>2]|0)==(c[(c[l>>2]|0)+32+4>>2]|0)){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}h[o>>3]=+h[c[k>>2]>>3]*+h[(c[l>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8>>3]*+h[c[l>>2]>>3];if(-1.0e-10<+h[o>>3]&+h[o>>3]<1.0e-10){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}h[p>>3]=(+h[(c[k>>2]|0)+16>>3]*+h[(c[l>>2]|0)+8>>3]-+h[(c[l>>2]|0)+16>>3]*+h[(c[k>>2]|0)+8>>3])/+h[o>>3];h[q>>3]=(+h[(c[l>>2]|0)+16>>3]*+h[c[k>>2]>>3]-+h[(c[k>>2]|0)+16>>3]*+h[c[l>>2]>>3])/+h[o>>3];do if(+h[(c[(c[k>>2]|0)+32+4>>2]|0)+8>>3]<+h[(c[(c[l>>2]|0)+32+4>>2]|0)+8>>3])u=10;else{if(+h[(c[(c[k>>2]|0)+32+4>>2]|0)+8>>3]==+h[(c[(c[l>>2]|0)+32+4>>2]|0)+8>>3]?+h[c[(c[k>>2]|0)+32+4>>2]>>3]<+h[c[(c[l>>2]|0)+32+4>>2]>>3]:0){u=10;break}c[n>>2]=c[j>>2];c[m>>2]=c[l>>2]}while(0);if((u|0)==10){c[n>>2]=c[g>>2];c[m>>2]=c[k>>2]}c[r>>2]=+h[p>>3]>=+h[c[(c[m>>2]|0)+32+4>>2]>>3]&1;if(!((c[r>>2]|0)!=0?(a[(c[n>>2]|0)+16>>0]|0)==0:0))u=14;do if((u|0)==14){if((c[r>>2]|0)==0?(a[(c[n>>2]|0)+16>>0]|0)==1:0)break;c[s>>2]=eu()|0;c[(c[s>>2]|0)+20>>2]=0;h[c[s>>2]>>3]=+h[p>>3];h[(c[s>>2]|0)+8>>3]=+h[q>>3];c[f>>2]=c[s>>2];t=c[f>>2]|0;i=e;return t|0}while(0);c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}function fs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+96|0;f=e+84|0;g=e+80|0;j=e+76|0;k=e+72|0;l=e+68|0;m=e+64|0;n=e+60|0;o=e+56|0;p=e+48|0;q=e+40|0;r=e+32|0;s=e+24|0;t=e+16|0;u=e+8|0;v=e;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[(c[g>>2]|0)+8>>2];c[l>>2]=c[(c[k>>2]|0)+32+4>>2];c[m>>2]=+h[c[j>>2]>>3]>+h[c[l>>2]>>3]&1;if((c[m>>2]|0)!=0?(a[(c[g>>2]|0)+16>>0]|0)==0:0){c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}if((c[m>>2]|0)==0?(a[(c[g>>2]|0)+16>>0]|0)==1:0){c[f>>2]=0;w=c[f>>2]|0;i=e;return w|0}if(+h[c[k>>2]>>3]==1.0){h[q>>3]=+h[(c[j>>2]|0)+8>>3]-+h[(c[l>>2]|0)+8>>3];h[p>>3]=+h[c[j>>2]>>3]-+h[c[l>>2]>>3];c[o>>2]=0;if(!(((c[m>>2]|0)!=0^1)&1&+h[(c[k>>2]|0)+8>>3]<0.0|c[m>>2]&+h[(c[k>>2]|0)+8>>3]>=0.0)){c[n>>2]=+h[c[j>>2]>>3]+ +h[(c[j>>2]|0)+8>>3]*+h[(c[k>>2]|0)+8>>3]>+h[(c[k>>2]|0)+16>>3]&1;if(+h[(c[k>>2]|0)+8>>3]<0.0)c[n>>2]=((c[n>>2]|0)!=0^1)&1;if(!(c[n>>2]|0))c[o>>2]=1}else{c[n>>2]=+h[q>>3]>=+h[(c[k>>2]|0)+8>>3]*+h[p>>3]&1;c[o>>2]=c[n>>2]}if((c[o>>2]|0)==0?(h[r>>3]=+h[c[l>>2]>>3]-+h[c[(c[k>>2]|0)+32>>2]>>3],c[n>>2]=+h[(c[k>>2]|0)+8>>3]*(+h[p>>3]*+h[p>>3]-+h[q>>3]*+h[q>>3])<+h[r>>3]*+h[q>>3]*(+h[p>>3]*2.0/+h[r>>3]+1.0+ +h[(c[k>>2]|0)+8>>3]*+h[(c[k>>2]|0)+8>>3])&1,+h[(c[k>>2]|0)+8>>3]<0.0):0)c[n>>2]=((c[n>>2]|0)!=0^1)&1}else{h[v>>3]=+h[(c[k>>2]|0)+16>>3]-+h[c[k>>2]>>3]*+h[c[j>>2]>>3];h[s>>3]=+h[(c[j>>2]|0)+8>>3]-+h[v>>3];h[t>>3]=+h[c[j>>2]>>3]-+h[c[l>>2]>>3];h[u>>3]=+h[v>>3]-+h[(c[l>>2]|0)+8>>3];c[n>>2]=+h[s>>3]*+h[s>>3]>+h[t>>3]*+h[t>>3]+ +h[u>>3]*+h[u>>3]&1}u=c[n>>2]|0;if(!(a[(c[g>>2]|0)+16>>0]|0))x=u;else x=((u|0)!=0^1)&1;c[f>>2]=x;w=c[f>>2]|0;i=e;return w|0}function gs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[f>>2]>>2]=c[e>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+4>>2];c[c[(c[e>>2]|0)+4>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return}function hs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;a=~~((+h[c[d>>2]>>3]-+h[4204])/+h[4208]*+(c[12887]|0));c[f>>2]=a;c[f>>2]=(c[f>>2]|0)<0?0:a;if((c[f>>2]|0)>=(c[12887]|0))c[f>>2]=(c[12887]|0)-1;c[g>>2]=ns(c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=1;while(1){a=ns((c[f>>2]|0)-(c[e>>2]|0)|0)|0;c[g>>2]=a;if(a)break;a=ns((c[f>>2]|0)+(c[e>>2]|0)|0)|0;c[g>>2]=a;if(a)break;c[e>>2]=(c[e>>2]|0)+1}c[12888]=(c[12888]|0)+(c[e>>2]|0)}c[12889]=(c[12889]|0)+1;a:do if((c[g>>2]|0)==(c[12881]|0))j=12;else{if((c[g>>2]|0)!=(c[12882]|0)?(fs(c[g>>2]|0,c[d>>2]|0)|0)!=0:0){j=12;break}do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>2]|0)==(c[12881]|0))break a}while((fs(c[g>>2]|0,c[d>>2]|0)|0)!=0^1)}while(0);if((j|0)==12){while(1){j=0;c[g>>2]=c[(c[g>>2]|0)+4>>2];if((c[g>>2]|0)==(c[12882]|0))break;if(fs(c[g>>2]|0,c[d>>2]|0)|0)j=12;else break}c[g>>2]=c[c[g>>2]>>2]}if((c[f>>2]|0)<=0){k=c[g>>2]|0;i=b;return k|0}if((c[f>>2]|0)>=((c[12887]|0)-1|0)){k=c[g>>2]|0;i=b;return k|0}if(c[(c[12886]|0)+(c[f>>2]<<2)>>2]|0){j=(c[(c[12886]|0)+(c[f>>2]<<2)>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)-1}c[(c[12886]|0)+(c[f>>2]<<2)>>2]=c[g>>2];j=(c[(c[12886]|0)+(c[f>>2]<<2)>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;k=c[g>>2]|0;i=b;return k|0}function is(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[c[d>>2]>>2]|0)+4>>2]=c[(c[d>>2]|0)+4>>2];c[c[(c[d>>2]|0)+4>>2]>>2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+8>>2]=-2;i=b;return}function js(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+4>>2]|0}function ks(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[c[d>>2]>>2]|0}function ls(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;if(!(c[(c[f>>2]|0)+8>>2]|0)){c[e>>2]=c[12940];g=c[e>>2]|0;i=d;return g|0}b=(c[(c[f>>2]|0)+8>>2]|0)+32|0;if(!(a[(c[f>>2]|0)+16>>0]|0))h=c[b>>2]|0;else h=c[b+4>>2]|0;c[e>>2]=h;g=c[e>>2]|0;i=d;return g|0}function ms(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;if(!(c[(c[f>>2]|0)+8>>2]|0)){c[e>>2]=c[12940];g=c[e>>2]|0;i=d;return g|0}b=(c[(c[f>>2]|0)+8>>2]|0)+32|0;if(!(a[(c[f>>2]|0)+16>>0]|0))h=c[b+4>>2]|0;else h=c[b>>2]|0;c[e>>2]=h;g=c[e>>2]|0;i=d;return g|0}function ns(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if((c[e>>2]|0)>=0?(c[e>>2]|0)<(c[12887]|0):0){c[f>>2]=c[(c[12886]|0)+(c[e>>2]<<2)>>2];if((c[f>>2]|0)!=0?(c[(c[f>>2]|0)+8>>2]|0)==(-2|0):0){c[(c[12886]|0)+(c[e>>2]<<2)>>2]=0;e=(c[f>>2]|0)+12|0;a=(c[e>>2]|0)-1|0;c[e>>2]=a;if(!a)Ct(c[f>>2]|0,51532);c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}function os(){At(51564,24);return}function ps(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+80|0;f=e+64|0;g=e+32|0;j=e+24|0;k=e+60|0;l=e+56|0;m=e+52|0;n=e+48|0;o=e+44|0;p=e;q=e+40|0;c[f>>2]=a;h[g>>3]=b;h[j>>3]=d;c[o>>2]=c[f>>2];c[k>>2]=(c[12890]|0)+((c[(c[f>>2]|0)+16>>2]|0)*96|0);c[m>>2]=c[(c[k>>2]|0)+88>>2];h[p+8>>3]=+h[g>>3];h[p+8+8>>3]=+h[j>>3];c[q>>2]=qs(c[o>>2]|0,p,c[m>>2]|0)|0;if(!(c[q>>2]|0)){i=e;return}if((c[q>>2]|0)<0){c[l>>2]=Bt(51564)|0;h[(c[l>>2]|0)+8>>3]=+h[g>>3];h[(c[l>>2]|0)+8+8>>3]=+h[j>>3];c[c[l>>2]>>2]=c[m>>2];c[(c[k>>2]|0)+88>>2]=c[l>>2];i=e;return}c[n>>2]=c[m>>2];c[m>>2]=c[c[m>>2]>>2];while(1){k=qs(c[o>>2]|0,p,c[m>>2]|0)|0;c[q>>2]=k;if((k|0)<=0)break;c[n>>2]=c[m>>2];c[m>>2]=c[c[m>>2]>>2]}if(!(c[q>>2]|0)){i=e;return}c[l>>2]=Bt(51564)|0;h[(c[l>>2]|0)+8>>3]=+h[g>>3];h[(c[l>>2]|0)+8+8>>3]=+h[j>>3];c[c[n>>2]>>2]=c[l>>2];c[c[l>>2]>>2]=c[m>>2];i=e;return}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;e=i;i=i+64|0;f=e+60|0;g=e+56|0;j=e+52|0;k=e+48|0;l=e+40|0;m=e+32|0;n=e+24|0;o=e+16|0;p=e+8|0;q=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;do if(c[k>>2]|0){if(+h[(c[j>>2]|0)+8>>3]==+h[(c[k>>2]|0)+8>>3]?+h[(c[j>>2]|0)+8+8>>3]==+h[(c[k>>2]|0)+8+8>>3]:0){c[f>>2]=0;break}h[l>>3]=+h[(c[j>>2]|0)+8>>3]-+h[c[g>>2]>>3];h[m>>3]=+h[(c[j>>2]|0)+8+8>>3]-+h[(c[g>>2]|0)+8>>3];h[n>>3]=+h[(c[k>>2]|0)+8>>3]-+h[c[g>>2]>>3];h[o>>3]=+h[(c[k>>2]|0)+8+8>>3]-+h[(c[g>>2]|0)+8>>3];r=+h[n>>3];if(!(+h[l>>3]>=0.0)){if(r>=0.0){c[f>>2]=1;break}h[p>>3]=+h[o>>3]/+h[n>>3];h[q>>3]=+h[m>>3]/+h[l>>3];if(+h[q>>3]<+h[p>>3]){c[f>>2]=-1;break}if(+h[q>>3]>+h[p>>3]){c[f>>2]=1;break}if(+h[l>>3]>+h[n>>3]){c[f>>2]=-1;break}else{c[f>>2]=1;break}}if(r<0.0){c[f>>2]=-1;break}d=+h[n>>3]>0.0;if(+h[l>>3]>0.0){r=+h[o>>3];if(!d)if(r>0.0){c[f>>2]=-1;break}else{c[f>>2]=1;break}h[p>>3]=r/+h[n>>3];h[q>>3]=+h[m>>3]/+h[l>>3];if(+h[q>>3]<+h[p>>3]){c[f>>2]=-1;break}if(+h[q>>3]>+h[p>>3]){c[f>>2]=1;break}if(+h[l>>3]<+h[n>>3]){c[f>>2]=-1;break}else{c[f>>2]=1;break}}else{r=+h[m>>3];if(d)if(r<=0.0){c[f>>2]=-1;break}else{c[f>>2]=1;break}if(r<+h[o>>3])if(+h[o>>3]<=0.0){c[f>>2]=1;break}else{c[f>>2]=-1;break}else if(+h[m>>3]<=0.0){c[f>>2]=-1;break}else{c[f>>2]=1;break}}}else c[f>>2]=-1;while(0);i=e;return c[f>>2]|0}function rs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+24|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[f+20>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=0;c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0))break;c[k>>2]=c[(c[(c[g>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(c[m>>2]<<2)>>2];if((c[(c[j>>2]|0)+(c[k>>2]<<2)>>2]|0)>0)c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}i=f;return c[l>>2]|0}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=1;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+((c[g>>2]|0)*20|0)>>2]|0))break;c[(c[h>>2]|0)+(c[(c[(c[f>>2]|0)+((c[g>>2]|0)*20|0)+4>>2]|0)+(c[j>>2]<<2)>>2]<<2)>>2]=1;c[j>>2]=(c[j>>2]|0)+1}i=e;return}function ts(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=1;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+((c[g>>2]|0)*20|0)>>2]|0))break;c[(c[h>>2]|0)+(c[(c[(c[f>>2]|0)+((c[g>>2]|0)*20|0)+4>>2]|0)+(c[j>>2]<<2)>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}i=e;return}function us(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;a=c[g>>2]|0;if(c[(c[f>>2]|0)+8>>2]|0){c[e>>2]=Bs(b,a)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=Cs(b,a)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function vs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+8>>2];ws(c[e>>2]|0,c[f>>2]|0);c[g>>2]=Bs(c[e>>2]|0,c[f>>2]|0)|0;xs(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0);i=d;return c[g>>2]|0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;h=d+28|0;j=d+24|0;k=d+20|0;l=d+16|0;m=d+12|0;n=d+8|0;o=d+4|0;p=d;c[e>>2]=a;c[f>>2]=b;c[k>>2]=0;c[m>>2]=cK(c[f>>2]<<2)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=(c[k>>2]|0)+(c[(c[e>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[l>>2]=cK(c[k>>2]<<2)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;c[(c[m>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;c[(c[e>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]=c[l>>2];ss(c[e>>2]|0,c[h>>2]|0,c[m>>2]|0);c[n>>2]=(c[(c[e>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0)-1;c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[n>>2]|0))break;c[p>>2]=c[(c[(c[e>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(c[j>>2]<<2)>>2];c[o>>2]=(c[(c[e>>2]|0)+((c[p>>2]|0)*20|0)>>2]|0)-1;k=(c[n>>2]|0)+(c[o>>2]|0)|0;q=+(k-((rs(c[e>>2]|0,c[h>>2]|0,c[p>>2]|0,c[m>>2]|0)|0)<<1)|0);g[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=q;c[j>>2]=(c[j>>2]|0)+1}ts(c[e>>2]|0,c[h>>2]|0,c[m>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[(c[e>>2]|0)+((c[h>>2]|0)*20|0)>>2]<<2);c[h>>2]=(c[h>>2]|0)+1}O4(c[m>>2]|0);i=d;return}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;O4(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+8>>2]=0;if(!(c[h>>2]|0)){i=e;return}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[g>>2]|0))break;c[(c[f>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+(c[(c[f>>2]|0)+((c[j>>2]|0)*20|0)>>2]<<2);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function ys(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f;n=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[m>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;h[m>>3]=+h[m>>3]+(+h[(c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3])*(+h[(c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]);c[n>>2]=(c[n>>2]|0)+1}o=+O(+(+h[m>>3]));i=f;return +o}function zs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)>=(c[k>>2]|0)){i=f;return}c[12894]=c[g>>2];w3((c[h>>2]|0)+(c[j>>2]<<2)|0,(c[k>>2]|0)-(c[j>>2]|0)+1|0,4,77);i=f;return}function As(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)>=(c[k>>2]|0)){i=f;return}Es(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,l);As(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,(c[l>>2]|0)-1|0);As(c[g>>2]|0,c[h>>2]|0,(c[l>>2]|0)+1|0,c[k>>2]|0);if(!(Fs(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,(c[l>>2]|0)-1|0)|0))As(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,(c[l>>2]|0)-1|0);if(Fs(c[g>>2]|0,c[h>>2]|0,(c[l>>2]|0)+1|0,c[k>>2]|0)|0){i=f;return}As(c[g>>2]|0,c[h>>2]|0,(c[l>>2]|0)+1|0,c[k>>2]|0);i=f;return}function Bs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=cK((_(c[f>>2]|0,c[f>>2]|0)|0)<<2)|0;c[j>>2]=cK(c[f>>2]<<2)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;b=(c[h>>2]|0)+((_(c[g>>2]|0,c[f>>2]|0)|0)<<2)|0;c[(c[j>>2]|0)+(c[g>>2]<<2)>>2]=b;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;vr(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0,c[(c[j>>2]|0)+(c[g>>2]<<2)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}i=d;return c[j>>2]|0}function Cs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=cK((_(c[f>>2]|0,c[f>>2]|0)|0)<<2)|0;c[j>>2]=cK(c[f>>2]<<2)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;b=(c[h>>2]|0)+((_(c[g>>2]|0,c[f>>2]|0)|0)<<2)|0;c[(c[j>>2]|0)+(c[g>>2]<<2)>>2]=b;c[g>>2]=(c[g>>2]|0)+1}Nq(k,c[f>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;Iq(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0,c[(c[j>>2]|0)+(c[g>>2]<<2)>>2]|0,k);c[g>>2]=(c[g>>2]|0)+1}Oq(k);i=d;return c[j>>2]|0}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[h>>2]=b;g[j>>2]=+g[(c[12894]|0)+(c[c[f>>2]>>2]<<2)>>2];g[k>>2]=+g[(c[12894]|0)+(c[c[h>>2]>>2]<<2)>>2];if(+g[j>>2]<+g[k>>2]){c[e>>2]=-1;l=c[e>>2]|0;i=d;return l|0}if(+g[j>>2]>+g[k>>2]){c[e>>2]=1;l=c[e>>2]|0;i=d;return l|0}else{c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}return 0}function Es(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;g=i;i=i+48|0;j=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g;r=g+16|0;s=g+12|0;t=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=t2()|0;e=f|(t2()|0)<<16;c[o>>2]=((e>>>0)%(((c[m>>2]|0)-(c[l>>2]|0)+1|0)>>>0)|0)+(c[l>>2]|0);c[r>>2]=(c[l>>2]|0)+1;c[s>>2]=c[m>>2];c[p>>2]=c[(c[k>>2]|0)+(c[o>>2]<<2)>>2];c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[l>>2]<<2)>>2];c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]=c[p>>2];h[q>>3]=+h[(c[j>>2]|0)+(c[p>>2]<<3)>>3];while(1){if((c[r>>2]|0)>=(c[s>>2]|0))break;while(1){if((c[r>>2]|0)>=(c[s>>2]|0))break;if(!(+h[(c[j>>2]|0)+(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]<<3)>>3]<=+h[q>>3]))break;c[r>>2]=(c[r>>2]|0)+1}while(1){if((c[r>>2]|0)>=(c[s>>2]|0))break;if(!(+h[(c[j>>2]|0)+(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]<<3)>>3]>+h[q>>3]))break;c[s>>2]=(c[s>>2]|0)+-1}if((c[r>>2]|0)>=(c[s>>2]|0))continue;c[t>>2]=c[(c[k>>2]|0)+(c[r>>2]<<2)>>2];c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[s>>2]<<2)>>2];c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=c[t>>2];c[r>>2]=(c[r>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+-1}if(!(+h[(c[j>>2]|0)+(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]<<3)>>3]>+h[q>>3])){u=c[r>>2]|0;v=c[n>>2]|0;c[v>>2]=u;w=c[r>>2]|0;x=c[k>>2]|0;y=x+(w<<2)|0;z=c[y>>2]|0;A=c[l>>2]|0;B=c[k>>2]|0;C=B+(A<<2)|0;c[C>>2]=z;D=c[p>>2]|0;E=c[r>>2]|0;F=c[k>>2]|0;G=F+(E<<2)|0;c[G>>2]=D;i=g;return}c[r>>2]=(c[r>>2]|0)-1;u=c[r>>2]|0;v=c[n>>2]|0;c[v>>2]=u;w=c[r>>2]|0;x=c[k>>2]|0;y=x+(w<<2)|0;z=c[y>>2]|0;A=c[l>>2]|0;B=c[k>>2]|0;C=B+(A<<2)|0;c[C>>2]=z;D=c[p>>2]|0;E=c[r>>2]|0;F=c[k>>2]|0;G=F+(E<<2)|0;c[G>>2]=D;i=g;return}function Fs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=1;c[m>>2]=(c[k>>2]|0)+1;while(1){if(!((c[m>>2]|0)<=(c[l>>2]|0)?(c[n>>2]|0)!=0:0))break;if(+h[(c[g>>2]|0)+(c[(c[j>>2]|0)+((c[m>>2]|0)-1<<2)>>2]<<3)>>3]>+h[(c[g>>2]|0)+(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]<<3)>>3])c[n>>2]=0;c[m>>2]=(c[m>>2]|0)+1}i=f;return c[n>>2]|0}function Gs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;d=i;i=i+240048|0;e=4;f=N4(40)|0;c[f>>2]=0;g=d+240032|0;j=d+32|0;k=d;n=0;l=ia(23,b*40|0)|0;m=n;n=0;if((m|0)!=0&(o|0)!=0){p=Y4(c[m>>2]|0,f|0,e|0)|0;if(!p)Pa(m|0,o|0);C=o}else p=-1;if((p|0)!=1){p=0;m=0;while(1){if((p|0)>=(b|0))break;q=m+(c[(c[a+(p<<2)>>2]|0)+4>>2]|0)|0;p=p+1|0;m=q}n=0;p=ia(23,m*24|0)|0;q=n;n=0;if((q|0)!=0&(o|0)!=0){r=Y4(c[q>>2]|0,f|0,e|0)|0;if(!r)Pa(q|0,o|0);C=o}else r=-1;if((r|0)!=1){r=0;q=0;while(1){if((r|0)>=(b|0))break;c[l+(r*40|0)>>2]=p+(q*24|0);h[k+8>>3]=1797693134862315708145274.0e284;h[k>>3]=1797693134862315708145274.0e284;h[k+16+8>>3]=-1797693134862315708145274.0e284;h[k+16>>3]=-1797693134862315708145274.0e284;s=0;t=q;while(1){if((s|0)>=(c[(c[a+(r<<2)>>2]|0)+4>>2]|0))break;u=+h[(c[c[a+(r<<2)>>2]>>2]|0)+(s<<4)>>3];v=+h[(c[c[a+(r<<2)>>2]>>2]|0)+(s<<4)+8>>3];h[k>>3]=+h[k>>3]>3]:u;h[k+8>>3]=+h[k+8>>3]>3]:v;h[k+16>>3]=+h[k+16>>3]>u?+h[k+16>>3]:u;if(+h[k+16+8>>3]>v)w=+h[k+16+8>>3];else w=v;h[k+16+8>>3]=w;h[p+(t*24|0)>>3]=u;h[p+(t*24|0)+8>>3]=v;c[p+(t*24|0)+16>>2]=l+(r*40|0);c[p+(t*24|0)+20>>2]=0;s=s+1|0;t=t+1|0}c[l+(r*40|0)+4>>2]=p+((t-1|0)*24|0);s=l+(r*40|0)+8|0;c[s>>2]=c[k>>2];c[s+4>>2]=c[k+4>>2];c[s+8>>2]=c[k+8>>2];c[s+12>>2]=c[k+12>>2];c[s+16>>2]=c[k+16>>2];c[s+20>>2]=c[k+20>>2];c[s+24>>2]=c[k+24>>2];c[s+28>>2]=c[k+28>>2];r=r+1|0;q=t}c[g>>2]=m;c[g+4>>2]=b;f=W4(51580,1,f|0,e|0)|0;e=C;n=0;m=n;n=0;if((m|0)!=0&(o|0)!=0){x=Y4(c[m>>2]|0,f|0,e|0)|0;if(!x)Pa(m|0,o|0);C=o}else x=-1;if((x|0)==1){y=C;z=l;A=p}else{y=0;z=l;A=p}}else{y=C;z=l;A=0}}else{y=C;z=0;A=0}while(1){if(y){n=0;ea(96,z|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){B=Y4(c[l>>2]|0,f|0,e|0)|0;if(!B)Pa(l|0,o|0);C=o}else B=-1;if((B|0)==1){D=A;E=z;y=C;A=D;z=E;continue}n=0;ea(96,A|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){F=Y4(c[l>>2]|0,f|0,e|0)|0;if(!F)Pa(l|0,o|0);C=o}else F=-1;if((F|0)==1){D=A;E=z;y=C;A=D;z=E;continue}else{G=20;break}}n=0;l=va(50,A|0,z|0,g|0,j|0)|0;p=n;n=0;if((p|0)!=0&(o|0)!=0){H=Y4(c[p>>2]|0,f|0,e|0)|0;if(!H)Pa(p|0,o|0);C=o}else H=-1;if((H|0)==1){D=A;E=z;y=C;A=D;z=E;continue}if(l)I=l;else{n=0;l=ka(29,a|0,b|0,z|0)|0;p=n;n=0;if((p|0)!=0&(o|0)!=0){J=Y4(c[p>>2]|0,f|0,e|0)|0;if(!J)Pa(p|0,o|0);C=o}else J=-1;if((J|0)==1){D=A;E=z;y=C;A=D;z=E;continue}I=l}n=0;ea(96,z|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){K=Y4(c[l>>2]|0,f|0,e|0)|0;if(!K)Pa(l|0,o|0);C=o}else K=-1;if((K|0)==1){D=A;E=z;y=C;A=D;z=E;continue}n=0;ea(96,A|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){L=Y4(c[l>>2]|0,f|0,e|0)|0;if(!L)Pa(l|0,o|0);C=o}else L=-1;if((L|0)==1){D=A;E=z;y=C;A=D;z=E}else{G=27;break}}if((G|0)==20){M=0;O4(f|0);i=d;return M|0}else if((G|0)==27){M=((I|0)!=0^1)&1;O4(f|0);i=d;return M|0}return 0}function Hs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+80|0;g=f;h=f+68|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+28|0;q=f+24|0;r=f+20|0;s=f+16|0;t=f+12|0;u=f+8|0;v=f+4|0;c[h>>2]=a;c[f+64>>2]=b;c[j>>2]=d;c[k>>2]=e;c[o>>2]=0;c[(c[j>>2]|0)+8>>2]=0;c[p+4>>2]=0;c[p>>2]=0;c[p+8>>2]=0;c[v>>2]=cK(c[c[j>>2]>>2]<<2)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[j>>2]>>2]|0))break;c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]=(c[h>>2]|0)+((c[l>>2]|0)*24|0);c[l>>2]=(c[l>>2]|0)+1}w3(c[v>>2]|0,c[c[j>>2]>>2]|0,4,78);c[l>>2]=0;a:while(1){if((c[l>>2]|0)>=(c[c[j>>2]>>2]|0))break;c[s>>2]=c[(c[v>>2]|0)+(c[l>>2]<<2)>>2];h=c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0;if((c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[c[(c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0)+16>>2]>>2]|0))w=c[(c[h+16>>2]|0)+4>>2]|0;else w=h+-24|0;c[t>>2]=w;c[u>>2]=w;c[n>>2]=0;while(1){if((c[n>>2]|0)>=2)break;switch(Js(s,t)|0){case -1:{c[r>>2]=c[p>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[p+8>>2]|0))break;c[o>>2]=Ks(c[c[r>>2]>>2]|0,c[u>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;if(c[o>>2]|0)break a;c[m>>2]=(c[m>>2]|0)+1;c[r>>2]=c[(c[r>>2]|0)+4>>2]}c[q>>2]=cK(12)|0;h=c[q>>2]|0;if(!(c[p+8>>2]|0)){c[p>>2]=h;c[(c[q>>2]|0)+8>>2]=0}else{c[(c[p+4>>2]|0)+4>>2]=h;c[(c[q>>2]|0)+8>>2]=c[p+4>>2]}c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+4>>2]=0;c[(c[u>>2]|0)+20>>2]=c[q>>2];c[p+4>>2]=c[q>>2];h=p+8|0;c[h>>2]=(c[h>>2]|0)+1;break}case 1:{h=c[(c[u>>2]|0)+20>>2]|0;c[r>>2]=h;if(!h){x=21;break a}do if((c[p+8>>2]|0)!=1){if((c[r>>2]|0)==(c[p>>2]|0)){c[p>>2]=c[(c[p>>2]|0)+4>>2];c[(c[p>>2]|0)+8>>2]=0;break}if((c[r>>2]|0)==(c[p+4>>2]|0)){c[p+4>>2]=c[(c[p+4>>2]|0)+8>>2];c[(c[p+4>>2]|0)+4>>2]=0;break}else{c[(c[(c[r>>2]|0)+8>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2];c[(c[(c[r>>2]|0)+4>>2]|0)+8>>2]=c[(c[r>>2]|0)+8>>2];break}}else{c[p>>2]=0;c[p+4>>2]=0}while(0);O4(c[r>>2]|0);h=p+8|0;c[h>>2]=(c[h>>2]|0)+-1;c[(c[u>>2]|0)+20>>2]=0;break}default:{}}h=c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0;if((c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[(c[(c[(c[v>>2]|0)+(c[l>>2]<<2)>>2]|0)+16>>2]|0)+4>>2]|0))y=c[c[h+16>>2]>>2]|0;else y=h+24|0;c[t>>2]=y;c[u>>2]=c[(c[v>>2]|0)+(c[l>>2]<<2)>>2];c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=(c[l>>2]|0)+1}if((x|0)==21){$z(1,131135,g)|0;Pa(51580,1)}c[r>>2]=c[p>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[p+8>>2]|0))break;c[q>>2]=c[(c[r>>2]|0)+4>>2];O4(c[r>>2]|0);c[m>>2]=(c[m>>2]|0)+1;c[r>>2]=c[q>>2]}O4(c[v>>2]|0);i=f;return c[o>>2]|0}function Is(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+80|0;f=e+16|0;g=e+64|0;j=e+60|0;k=e+56|0;l=e+52|0;m=e+48|0;n=e+44|0;o=e+40|0;p=e;q=e+36|0;r=e+32|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=0;a:while(1){if((c[n>>2]|0)>=(c[l>>2]|0)){s=27;break}c[q>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];d=c[c[q>>2]>>2]|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[o>>2]=(c[n>>2]|0)+1;while(1){if((c[o>>2]|0)>=(c[l>>2]|0))break;c[r>>2]=c[(c[k>>2]|0)+(c[o>>2]<<2)>>2];if(((((((+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8>>3]<=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16>>3]?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8>>3]>=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+8>>3]<=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16+8>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+8>>3]>=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+8>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16>>3]<=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16>>3]>=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16+8>>3]<=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16+8>>3]:0)?+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16+8>>3]>=+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+8>>3]:0){d=c[r>>2]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];if(qX(g,f)|0){s=14;break a}}else s=15;if((((((((((s|0)==15?(s=0,+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8>>3]<=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16>>3]):0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8>>3]>=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+8>>3]<=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16+8>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+8>>3]>=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+8>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16>>3]<=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16>>3]>=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16+8>>3]<=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+16+8>>3]:0)?+h[(c[m>>2]|0)+((c[o>>2]|0)*40|0)+8+16+8>>3]>=+h[(c[m>>2]|0)+((c[n>>2]|0)*40|0)+8+8>>3]:0)?(d=c[q>>2]|0,b=c[c[r>>2]>>2]|0,c[g>>2]=c[d>>2],c[g+4>>2]=c[d+4>>2],c[f>>2]=c[b>>2],c[f+4>>2]=c[b+4>>2],c[f+8>>2]=c[b+8>>2],c[f+12>>2]=c[b+12>>2],(qX(g,f)|0)!=0):0){s=24;break a}c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((s|0)==14){c[j>>2]=1;t=c[j>>2]|0;i=e;return t|0}else if((s|0)==24){c[j>>2]=1;t=c[j>>2]|0;i=e;return t|0}else if((s|0)==27){c[j>>2]=0;t=c[j>>2]|0;i=e;return t|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d;c[f>>2]=a;c[g>>2]=b;k=+h[c[c[f>>2]>>2]>>3]-+h[c[c[g>>2]>>2]>>3];h[j>>3]=k;if(k!=0.0){c[e>>2]=+h[j>>3]>0.0?1:-1;l=c[e>>2]|0;i=d;return l|0}k=+h[(c[c[f>>2]>>2]|0)+8>>3]-+h[(c[c[g>>2]>>2]|0)+8>>3];h[j>>3]=k;if(k==0.0){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}else{c[e>>2]=+h[j>>3]>0.0?1:-1;l=c[e>>2]|0;i=d;return l|0}return 0}function Ks(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+80|0;g=f+32|0;j=f+76|0;k=f+72|0;l=f+68|0;m=f+24|0;n=f+16|0;o=f;p=f+48|0;c[k>>2]=a;c[l>>2]=b;c[f+64>>2]=d;c[f+60>>2]=e;Ls(c[k>>2]|0,c[l>>2]|0,p);if((c[p+8>>2]|0)>0){c[j>>2]=0;q=c[j>>2]|0;i=f;return q|0}if((c[p+8>>2]|0)<0){Ls(c[l>>2]|0,c[k>>2]|0,p);if((c[p+8>>2]|0)>0){c[j>>2]=0;q=c[j>>2]|0;i=f;return q|0}e=c[k>>2]|0;d=c[l>>2]|0;if((c[p+8>>2]|0)<0)r=3;else{b=c[p>>2]|0;r=Ms(c[l>>2]|0,c[k>>2]|0,(c[p>>2]|0)>=0?b:0-b|0)|0}if(!(Ns(e,d,m,n,r)|0)){c[j>>2]=0;q=c[j>>2]|0;i=f;return q|0}}else{r=c[k>>2]|0;d=c[l>>2]|0;e=c[k>>2]|0;b=c[l>>2]|0;if((c[p>>2]|0)==(c[p+4>>2]|0)){a=Ms(e,b,0)|0;s=(a|0)>(Ms(c[k>>2]|0,c[l>>2]|0,1)|0);a=c[k>>2]|0;t=c[l>>2]|0;if(s)u=Ms(a,t,0)|0;else u=Ms(a,t,1)|0;v=u<<1}else{u=c[p>>2]|0;v=Ms(e,b,(c[p>>2]|0)>=0?u:0-u|0)|0}if(!(Ns(r,d,m,n,v)|0)){c[j>>2]=0;q=c[j>>2]|0;i=f;return q|0}}h[o>>3]=+h[m>>3];h[o+8>>3]=+h[n>>3];n=c[k>>2]|0;k=c[l>>2]|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[j>>2]=Os(n,k,g)|0;q=c[j>>2]|0;i=f;return q|0}function Ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;e=i;i=i+96|0;f=e+80|0;g=e+76|0;j=e+72|0;k=e+64|0;l=e+56|0;m=e+48|0;n=e+40|0;o=e+32|0;p=e+24|0;q=e+16|0;r=e+8|0;s=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[k>>3]=+h[c[f>>2]>>3];h[l>>3]=+h[(c[f>>2]|0)+8>>3];d=c[f>>2]|0;if((c[f>>2]|0)==(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0))t=c[c[d+16>>2]>>2]|0;else t=d+24|0;h[m>>3]=+h[t>>3]-+h[k>>3];t=c[f>>2]|0;if((c[f>>2]|0)==(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0))u=c[c[t+16>>2]>>2]|0;else u=t+24|0;h[n>>3]=+h[u+8>>3]-+h[l>>3];h[o>>3]=+h[c[g>>2]>>3]-+h[k>>3];h[p>>3]=+h[(c[g>>2]|0)+8>>3]-+h[l>>3];u=c[g>>2]|0;if((c[g>>2]|0)==(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0))v=c[c[u+16>>2]>>2]|0;else v=u+24|0;h[q>>3]=+h[v>>3]-+h[k>>3];k=c[g>>2]|0;if((c[g>>2]|0)==(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0))w=c[c[k+16>>2]>>2]|0;else w=k+24|0;h[r>>3]=+h[w+8>>3]-+h[l>>3];h[s>>3]=+h[m>>3]*+h[p>>3]-+h[n>>3]*+h[o>>3];if(+h[s>>3]==0.0)x=0;else x=+h[s>>3]>0.0?1:-1;c[c[j>>2]>>2]=x;h[s>>3]=+h[m>>3]*+h[r>>3]-+h[n>>3]*+h[q>>3];if(+h[s>>3]==0.0){y=0;z=c[j>>2]|0;A=z+4|0;c[A>>2]=y;B=c[j>>2]|0;C=c[B>>2]|0;D=c[j>>2]|0;E=D+4|0;F=c[E>>2]|0;G=_(C,F)|0;H=c[j>>2]|0;I=H+8|0;c[I>>2]=G;i=e;return}y=+h[s>>3]>0.0?1:-1;z=c[j>>2]|0;A=z+4|0;c[A>>2]=y;B=c[j>>2]|0;C=c[B>>2]|0;D=c[j>>2]|0;E=D+4|0;F=c[E>>2]|0;G=_(C,F)|0;H=c[j>>2]|0;I=H+8|0;c[I>>2]=G;i=e;return}function Ms(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0;e=i;i=i+64|0;f=e+56|0;g=e+52|0;j=e+48|0;k=e+32|0;l=e+16|0;m=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;d=c[f>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];d=c[f>>2]|0;if((c[f>>2]|0)==(c[(c[(c[f>>2]|0)+16>>2]|0)+4>>2]|0))n=c[c[d+16>>2]>>2]|0;else n=d+24|0;c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2];n=c[g>>2]|0;if(!(c[j>>2]|0)){c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2]}else{j=c[g>>2]|0;if((n|0)==(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0))o=c[c[j+16>>2]>>2]|0;else o=j+24|0;c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2]}p=+h[k>>3];q=+h[m>>3];if(!(+h[k>>3]==+h[l>>3])){r=Qs(p,q,+h[l>>3])|0;i=e;return r|0}if(p==q)s=-1!=(Qs(+h[k+8>>3],+h[m+8>>3],+h[l+8>>3])|0);else s=0;r=s&1;i=e;return r|0}function Ns(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=i;i=i+160|0;j=g+148|0;k=g+144|0;l=g+140|0;m=g+136|0;n=g+132|0;o=g+128|0;p=g+112|0;q=g+96|0;r=g+80|0;s=g+64|0;t=g+48|0;u=g+32|0;v=g+24|0;w=g+16|0;x=g+8|0;y=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if((c[o>>2]|0)<=0){c[j>>2]=0;z=c[j>>2]|0;i=g;return z|0}f=c[k>>2]|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];f=c[k>>2]|0;if((c[k>>2]|0)==(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0))A=c[c[f+16>>2]>>2]|0;else A=f+24|0;c[q>>2]=c[A>>2];c[q+4>>2]=c[A+4>>2];c[q+8>>2]=c[A+8>>2];c[q+12>>2]=c[A+12>>2];A=c[l>>2]|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];A=c[l>>2]|0;if((c[l>>2]|0)==(c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0))B=c[c[A+16>>2]>>2]|0;else B=A+24|0;c[s>>2]=c[B>>2];c[s+4>>2]=c[B+4>>2];c[s+8>>2]=c[B+8>>2];c[s+12>>2]=c[B+12>>2];a:do switch(c[o>>2]|0){case 3:{if(+h[p>>3]==+h[q>>3]){h[c[m>>2]>>3]=+h[p>>3];h[c[n>>2]>>3]=+h[s+8>>3]+(+h[r+8>>3]-+h[s+8>>3])/(+h[r>>3]-+h[s>>3])*(+h[c[m>>2]>>3]-+h[s>>3]);break a}if(+h[r>>3]==+h[s>>3]){h[c[m>>2]>>3]=+h[r>>3];h[c[n>>2]>>3]=+h[q+8>>3]+(+h[p+8>>3]-+h[q+8>>3])/(+h[p>>3]-+h[q>>3])*(+h[c[m>>2]>>3]-+h[q>>3]);break a}else{h[v>>3]=(+h[r+8>>3]-+h[s+8>>3])/(+h[r>>3]-+h[s>>3]);h[w>>3]=(+h[p+8>>3]-+h[q+8>>3])/(+h[p>>3]-+h[q>>3]);h[x>>3]=+h[r+8>>3]-+h[v>>3]*+h[r>>3];h[y>>3]=+h[p+8>>3]-+h[w>>3]*+h[p>>3];h[c[m>>2]>>3]=(+h[y>>3]-+h[x>>3])/(+h[v>>3]-+h[w>>3]);h[c[n>>2]>>3]=(+h[v>>3]*+h[y>>3]-+h[x>>3]*+h[w>>3])/(+h[v>>3]-+h[w>>3]);break a}break}case 2:{do if((Ms(c[k>>2]|0,c[l>>2]|0,0)|0)==-1){c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];if((Ms(c[l>>2]|0,c[k>>2]|0,1)|0)!=-1){c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];c[u+8>>2]=c[s+8>>2];c[u+12>>2]=c[s+12>>2];break}if((Ms(c[l>>2]|0,c[k>>2]|0,0)|0)==-1){c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];break}else{c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];c[u+12>>2]=c[p+12>>2];break}}else{if((Ms(c[k>>2]|0,c[l>>2]|0,1)|0)!=-1){if((Ms(c[l>>2]|0,c[k>>2]|0,0)|0)==-1){c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];break}c[j>>2]=0;z=c[j>>2]|0;i=g;return z|0};c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];if((Ms(c[k>>2]|0,c[l>>2]|0,0)|0)!=-1){c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];break}if((Ms(c[l>>2]|0,c[k>>2]|0,0)|0)==-1){c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];break}else{c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];c[u+12>>2]=c[p+12>>2];break}}while(0);h[c[m>>2]>>3]=(+h[t>>3]+ +h[u>>3])/2.0;h[c[n>>2]>>3]=(+h[t+8>>3]+ +h[u+8>>3])/2.0;break}case 1:{if((+h[p>>3]-+h[q>>3])*(+h[r+8>>3]-+h[p+8>>3])==(+h[p+8>>3]-+h[q+8>>3])*(+h[r>>3]-+h[p>>3])){h[c[m>>2]>>3]=+h[r>>3];h[c[n>>2]>>3]=+h[r+8>>3];break a}else{h[c[m>>2]>>3]=+h[s>>3];h[c[n>>2]>>3]=+h[s+8>>3];break a}break}default:{}}while(0);c[j>>2]=1;z=c[j>>2]|0;i=g;return z|0}function Os(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;f=i;i=i+96|0;g=f+64|0;j=f+88|0;k=f+84|0;l=f+80|0;m=f+48|0;n=f+32|0;o=f+16|0;p=f;c[k>>2]=a;c[l>>2]=b;b=c[k>>2]|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];b=c[k>>2]|0;if((c[k>>2]|0)==(c[(c[(c[k>>2]|0)+16>>2]|0)+4>>2]|0))q=c[c[b+16>>2]>>2]|0;else q=b+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];q=c[l>>2]|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];q=c[l>>2]|0;if((c[l>>2]|0)==(c[(c[(c[l>>2]|0)+16>>2]|0)+4>>2]|0))r=c[c[q+16>>2]>>2]|0;else r=q+24|0;c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];if(!(+h[m>>3]!=+h[o>>3]?+h[n>>3]!=+h[p>>3]:0))s=9;a:do if((s|0)==9){do if(+h[m>>3]==+h[o>>3]){if(+h[m>>3]==+h[e>>3]?+h[m+8>>3]==+h[e+8>>3]:0)break;if(!(+h[o>>3]==+h[e>>3]))break a;if(!(+h[o+8>>3]==+h[e+8>>3]))break a}while(0);do if(+h[n>>3]==+h[p>>3]){if(+h[n>>3]==+h[e>>3]?+h[n+8>>3]==+h[e+8>>3]:0)break;if(!(+h[p>>3]==+h[e>>3]))break a;if(!(+h[p+8>>3]==+h[e+8>>3]))break a}while(0);c[j>>2]=0;t=c[j>>2]|0;i=f;return t|0}while(0);if((d[138998]|0|0)>1){p=c[24742]|0;u=+h[e+8>>3];h[g>>3]=+h[e>>3];h[g+8>>3]=u;Y2(p,131164,g)|0;Ps(1,c[k>>2]|0);Ps(2,c[l>>2]|0)}c[j>>2]=1;t=c[j>>2]|0;i=f;return t|0}function Ps(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0.0,k=0.0,l=0,m=0.0,n=0,o=0.0;d=i;i=i+48|0;e=d;f=d+44|0;g=d+40|0;c[f>>2]=a;c[g>>2]=b;b=c[24742]|0;j=+h[c[g>>2]>>3];k=+h[(c[g>>2]|0)+8>>3];a=c[g>>2]|0;if((c[g>>2]|0)==(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0))l=c[c[a+16>>2]>>2]|0;else l=a+24|0;m=+h[l>>3];l=c[g>>2]|0;if((c[g>>2]|0)==(c[(c[(c[g>>2]|0)+16>>2]|0)+4>>2]|0))n=c[c[l+16>>2]>>2]|0;else n=l+24|0;o=+h[n+8>>3];c[e>>2]=c[f>>2];h[e+8>>3]=j;h[e+16>>3]=k;h[e+24>>3]=m;h[e+32>>3]=o;Y2(b,131192,e)|0;i=d;return}function Qs(a,b,d){a=+a;b=+b;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e+8|0;k=e;h[g>>3]=a;h[j>>3]=b;h[k>>3]=d;if(!(+h[g>>3]==+h[j>>3])?!(+h[j>>3]==+h[k>>3]):0){if(+h[g>>3]<+h[j>>3])l=+h[j>>3]<+h[k>>3];else l=+h[k>>3]<+h[j>>3];c[f>>2]=l?1:-1;m=c[f>>2]|0;i=e;return m|0}c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}function Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;if(!(Yx(c[g>>2]|0,c[k>>2]|0)|0)){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}c[n>>2]=bK(c[k>>2]<<3)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[k>>2]|0))break;h[(c[n>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}h[(c[n>>2]|0)+(c[l>>2]<<3)>>3]=1.0;Zx(c[(c[j>>2]|0)+(c[l>>2]<<2)>>2]|0,c[n>>2]|0,c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}O4(c[n>>2]|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;h[o>>3]=+h[(c[(c[j>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3];h[(c[(c[j>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];h[(c[(c[j>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=+h[o>>3];c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=1;p=c[f>>2]|0;i=e;return p|0}function Ss(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;j=i;i=i+96|0;k=j+92|0;l=j+88|0;m=j+84|0;n=j+80|0;o=j+76|0;p=j+72|0;q=j+68|0;r=j+64|0;s=j+60|0;t=j+56|0;u=j+52|0;v=j+32|0;w=j+24|0;x=j+16|0;y=j+48|0;z=j+44|0;A=j+8|0;B=j+40|0;C=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[s>>2]=cK(c[l>>2]<<3)|0;c[t>>2]=cK(c[l>>2]<<3)|0;c[y>>2]=0;c[B>>2]=(c[l>>2]|0)*30;h[C>>3]=1.0-+h[4210];if((c[m>>2]|0)>=(c[l>>2]|0))c[m>>2]=c[l>>2];c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(c[m>>2]|0))break;c[u>>2]=c[(c[n>>2]|0)+(c[q>>2]<<2)>>2];do{b:do if(c[p>>2]|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0))break b;D=+((t2()|0)%100|0|0);h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=D;c[r>>2]=(c[r>>2]|0)+1}}while(0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0))break;h[x>>3]=-+Ts(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0,0,(c[l>>2]|0)-1|0,c[u>>2]|0);Us(c[u>>2]|0,0,(c[l>>2]|0)-1|0,+h[x>>3],c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}h[v>>3]=+Vs(c[u>>2]|0,0,(c[l>>2]|0)-1|0)}while(+h[v>>3]<1.0e-10);Ws(c[u>>2]|0,0,(c[l>>2]|0)-1|0,1.0/+h[v>>3],c[u>>2]|0);c[y>>2]=0;do{c[y>>2]=(c[y>>2]|0)+1;Xs(c[t>>2]|0,0,(c[l>>2]|0)-1|0,c[u>>2]|0);Ys(c[k>>2]|0,c[l>>2]|0,c[l>>2]|0,c[u>>2]|0,c[s>>2]|0);Xs(c[u>>2]|0,0,(c[l>>2]|0)-1|0,c[s>>2]|0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0))break;h[x>>3]=-+Ts(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0,0,(c[l>>2]|0)-1|0,c[u>>2]|0);Us(c[u>>2]|0,0,(c[l>>2]|0)-1|0,+h[x>>3],c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}h[v>>3]=+Vs(c[u>>2]|0,0,(c[l>>2]|0)-1|0);if(+h[v>>3]<1.0e-10)break a;if((c[y>>2]|0)>(c[B>>2]|0))break a;Ws(c[u>>2]|0,0,(c[l>>2]|0)-1|0,1.0/+h[v>>3],c[u>>2]|0);h[w>>3]=+Ts(c[u>>2]|0,0,(c[l>>2]|0)-1|0,c[t>>2]|0);D=+N(+(+h[w>>3]))}while(D<+h[C>>3]);h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]=+h[w>>3]*+h[v>>3];c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[q>>2]|0)>=(c[m>>2]|0))break;c[u>>2]=c[(c[n>>2]|0)+(c[q>>2]<<2)>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0))break;D=+((t2()|0)%100|0|0);h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=D;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[q>>2]|0))break;h[x>>3]=-+Ts(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0,0,(c[l>>2]|0)-1|0,c[u>>2]|0);Us(c[u>>2]|0,0,(c[l>>2]|0)-1|0,+h[x>>3],c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}h[v>>3]=+Vs(c[u>>2]|0,0,(c[l>>2]|0)-1|0);Ws(c[u>>2]|0,0,(c[l>>2]|0)-1|0,1.0/+h[v>>3],c[u>>2]|0);h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]=0.0;c[q>>2]=(c[q>>2]|0)+1}c[q>>2]=0;while(1){if((c[q>>2]|0)>=((c[m>>2]|0)-1|0))break;c[z>>2]=c[q>>2];h[A>>3]=+h[(c[o>>2]|0)+(c[z>>2]<<3)>>3];c[r>>2]=(c[q>>2]|0)+1;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;if(+h[A>>3]<+h[(c[o>>2]|0)+(c[r>>2]<<3)>>3]){c[z>>2]=c[r>>2];h[A>>3]=+h[(c[o>>2]|0)+(c[z>>2]<<3)>>3]}c[r>>2]=(c[r>>2]|0)+1}if((c[z>>2]|0)!=(c[q>>2]|0)){Xs(c[s>>2]|0,0,(c[l>>2]|0)-1|0,c[(c[n>>2]|0)+(c[q>>2]<<2)>>2]|0);Xs(c[(c[n>>2]|0)+(c[q>>2]<<2)>>2]|0,0,(c[l>>2]|0)-1|0,c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]|0);Xs(c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]|0,0,(c[l>>2]|0)-1|0,c[s>>2]|0);h[(c[o>>2]|0)+(c[z>>2]<<3)>>3]=+h[(c[o>>2]|0)+(c[q>>2]<<3)>>3];h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]=+h[A>>3]}c[q>>2]=(c[q>>2]|0)+1}O4(c[s>>2]|0);O4(c[t>>2]|0);i=j;return (c[y>>2]|0)<=(c[B>>2]|0)|0}function Ts(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[n>>3]=0.0;c[g>>2]=(c[g>>2]|0)+(c[j>>2]<<3);c[l>>2]=(c[l>>2]|0)+(c[j>>2]<<3);c[m>>2]=(c[k>>2]|0)-(c[j>>2]|0)+1;while(1){if(!(c[m>>2]|0))break;j=c[g>>2]|0;c[g>>2]=j+8;o=+h[j>>3];j=c[l>>2]|0;c[l>>2]=j+8;h[n>>3]=+h[n>>3]+o*+h[j>>3];c[m>>2]=(c[m>>2]|0)+-1}i=f;return +(+h[n>>3])}function Us(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;g=i;i=i+32|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g;n=g+12|0;o=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;c[n>>2]=f;c[j>>2]=(c[j>>2]|0)+(c[k>>2]<<3);c[n>>2]=(c[n>>2]|0)+(c[k>>2]<<3);c[o>>2]=(c[l>>2]|0)-(c[k>>2]|0)+1;while(1){if(!(c[o>>2]|0))break;e=+h[m>>3];k=c[n>>2]|0;c[n>>2]=k+8;p=e*+h[k>>3];k=c[j>>2]|0;c[j>>2]=k+8;h[k>>3]=+h[k>>3]+p;c[o>>2]=(c[o>>2]|0)+-1}i=g;return}function Vs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0.0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;j=+O(+(+Ts(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[f>>2]|0)));i=e;return +j}function Ws(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;g=i;i=i+32|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g;n=g+12|0;o=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;c[n>>2]=f;c[j>>2]=(c[j>>2]|0)+(c[k>>2]<<3);c[n>>2]=(c[n>>2]|0)+(c[k>>2]<<3);c[o>>2]=(c[l>>2]|0)-(c[k>>2]|0)+1;while(1){if(!(c[o>>2]|0))break;e=+h[m>>3];k=c[n>>2]|0;c[n>>2]=k+8;p=e*+h[k>>3];k=c[j>>2]|0;c[j>>2]=k+8;h[k>>3]=p;c[o>>2]=(c[o>>2]|0)+-1}i=g;return}function Xs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[g>>2]=(c[g>>2]|0)+(c[j>>2]<<3);c[l>>2]=(c[l>>2]|0)+(c[j>>2]<<3);c[m>>2]=(c[k>>2]|0)-(c[j>>2]|0)+1;while(1){if(!(c[m>>2]|0))break;j=c[l>>2]|0;c[l>>2]=j+8;n=+h[j>>3];j=c[g>>2]|0;c[g>>2]=j+8;h[j>>3]=n;c[m>>2]=(c[m>>2]|0)+-1}i=f;return}function Ys(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0))break;h[q>>3]=0.0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[l>>2]|0))break;h[q>>3]=+h[q>>3]+ +h[(c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)+(c[p>>2]<<3)>>3]*+h[(c[m>>2]|0)+(c[p>>2]<<3)>>3];c[p>>2]=(c[p>>2]|0)+1}h[(c[n>>2]|0)+(c[o>>2]<<3)>>3]=+h[q>>3];c[o>>2]=(c[o>>2]|0)+1}i=g;return}function Zs(a,b,d,e,f,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+64|0;l=k+48|0;m=k+44|0;n=k+40|0;o=k+36|0;p=k+32|0;q=k+28|0;r=k;s=k+24|0;t=k+20|0;u=k+16|0;v=k+12|0;w=k+8|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=j;c[w>>2]=c[c[q>>2]>>2];if(c[w>>2]|0){c[v>>2]=Q4(c[c[w>>2]>>2]|0,(_(c[n>>2]|0,c[p>>2]|0)|0)<<2)|0;j=Q4(c[w>>2]|0,c[n>>2]<<2)|0;c[w>>2]=j;c[c[q>>2]>>2]=j}else{c[v>>2]=N4((_(c[n>>2]|0,c[p>>2]|0)|0)<<2)|0;j=N4(c[n>>2]<<2)|0;c[w>>2]=j;c[c[q>>2]>>2]=j}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+(c[p>>2]<<2);c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[p>>2]|0))break;h[r>>3]=0.0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[o>>2]|0))break;h[r>>3]=+h[r>>3]+ +h[(c[(c[l>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[u>>2]<<3)>>3]*+g[(c[(c[m>>2]|0)+(c[u>>2]<<2)>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=(c[u>>2]|0)+1}g[(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[t>>2]<<2)>>2]=+h[r>>3];c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}i=k;return}function _s(a,b,d,e,f,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+64|0;l=k+48|0;m=k+44|0;n=k+40|0;o=k+36|0;p=k+32|0;q=k+28|0;r=k+24|0;s=k+20|0;t=k+16|0;u=k+12|0;v=k+8|0;w=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=j;c[r>>2]=c[c[q>>2]>>2];if(c[r>>2]|0){c[s>>2]=Q4(c[c[r>>2]>>2]|0,(_(c[n>>2]|0,c[p>>2]|0)|0)<<3)|0;j=Q4(c[r>>2]|0,c[n>>2]<<2)|0;c[r>>2]=j;c[c[q>>2]>>2]=j}else{c[s>>2]=N4((_(c[n>>2]|0,c[p>>2]|0)|0)<<3)|0;j=N4(c[n>>2]<<2)|0;c[r>>2]=j;c[c[q>>2]>>2]=j}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[n>>2]|0))break;c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]=c[s>>2];c[s>>2]=(c[s>>2]|0)+(c[p>>2]<<3);c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[n>>2]|0))break;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0))break;h[w>>3]=0.0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[o>>2]|0))break;h[w>>3]=+h[w>>3]+ +h[(c[(c[l>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[v>>2]<<3)>>3]*+g[(c[(c[m>>2]|0)+(c[v>>2]<<2)>>2]|0)+(c[u>>2]<<2)>>2];c[v>>2]=(c[v>>2]|0)+1}h[(c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[u>>2]<<3)>>3]=+h[w>>3];c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}i=k;return}function $s(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;j=i;i=i+64|0;k=j+56|0;l=j+52|0;m=j+48|0;n=j+44|0;o=j+40|0;p=j+36|0;q=j+32|0;r=j+28|0;s=j+24|0;t=j;u=j+20|0;v=j+16|0;w=j+12|0;x=j+8|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[x>>2]=c[c[o>>2]>>2];if(c[x>>2]|0){c[p>>2]=Q4(c[c[x>>2]>>2]|0,(_(c[m>>2]|0,c[n>>2]|0)|0)*20|0)|0;f=Q4(c[x>>2]|0,c[m>>2]<<2)|0;c[x>>2]=f;c[c[o>>2]>>2]=f}else{c[p>>2]=N4((_(c[m>>2]|0,c[n>>2]|0)|0)*20|0)|0;f=N4(c[m>>2]<<2)|0;c[x>>2]=f;c[c[o>>2]>>2]=f}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[m>>2]|0))break;c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]=c[p>>2];c[p>>2]=(c[p>>2]|0)+(c[n>>2]<<2);c[q>>2]=(c[q>>2]|0)+1}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[m>>2]|0))break;c[v>>2]=c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)+4>>2];c[u>>2]=c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)+8>>2];c[w>>2]=c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;h[t>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;h[t>>3]=+h[t>>3]+ +g[(c[u>>2]|0)+(c[s>>2]<<2)>>2]*+h[(c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[(c[v>>2]|0)+(c[s>>2]<<2)>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}g[(c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<2)>>2]=+h[t>>3];c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}i=j;return}function at(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;j=d+8|0;k=d;c[e>>2]=a;c[f>>2]=b;h[k>>3]=0.0;c[j>>2]=c[f>>2];c[g>>2]=c[e>>2];while(1){if(!(c[g>>2]|0))break;b=c[j>>2]|0;c[j>>2]=b+8;h[k>>3]=+h[k>>3]+ +h[b>>3];c[g>>2]=(c[g>>2]|0)+-1}h[k>>3]=+h[k>>3]/+(c[e>>2]|0);c[j>>2]=c[f>>2];c[g>>2]=c[e>>2];while(1){if(!(c[g>>2]|0))break;l=+h[k>>3];e=c[j>>2]|0;c[j>>2]=e+8;h[e>>3]=+h[e>>3]-l;c[g>>2]=(c[g>>2]|0)+-1}i=d;return}function bt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0.0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[e>>2]|0))break;j=+((t2()|0)%500|0|0);h[(c[f>>2]|0)+(c[g>>2]<<3)>>3]=j;c[g>>2]=(c[g>>2]|0)+1}at(c[e>>2]|0,c[f>>2]|0);i=d;return}function ct(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;h[p>>3]=0.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]|0))break;h[p>>3]=+h[p>>3]+ +g[(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]|0)+(c[o>>2]<<2)>>2]*+h[(c[l>>2]|0)+(c[(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)+4>>2]|0)+(c[o>>2]<<2)>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}h[(c[m>>2]|0)+(c[n>>2]<<3)>>3]=+h[p>>3];c[n>>2]=(c[n>>2]|0)+1}i=f;return}function dt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;h[p>>3]=0.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0))break;h[p>>3]=+h[p>>3]+ +g[(c[(c[j>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[o>>2]<<2)>>2]*+h[(c[l>>2]|0)+(c[o>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}h[(c[m>>2]|0)+(c[n>>2]<<3)>>3]=+h[p>>3];c[n>>2]=(c[n>>2]|0)+1}i=f;return}function et(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[(c[l>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]-+h[(c[k>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function ft(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[(c[l>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]+ +h[(c[k>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function gt(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f;l=f+12|0;m=f+8|0;c[g>>2]=a;c[j>>2]=b;h[k>>3]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[(c[l>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]*+h[k>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function ht(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function it(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[l>>3]=0.0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[l>>3]=+h[l>>3]+ +h[(c[g>>2]|0)+(c[k>>2]<<3)>>3]*+h[(c[j>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return +(+h[l>>3])}function jt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d;j=d+8|0;c[e>>2]=a;c[f>>2]=b;h[g>>3]=-1.e+50;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[e>>2]|0))break;k=+N(+(+h[(c[f>>2]|0)+(c[j>>2]<<3)>>3]));if(k>+h[g>>3])h[g>>3]=+N(+(+h[(c[f>>2]|0)+(c[j>>2]<<3)>>3]));c[j>>2]=(c[j>>2]|0)+1}i=d;return +(+h[g>>3])}function kt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0))break;h[q>>3]=0.0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[l>>2]|0))break;h[q>>3]=+h[q>>3]+ +h[(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)+(c[o>>2]<<3)>>3]*+h[(c[m>>2]|0)+(c[p>>2]<<3)>>3];c[p>>2]=(c[p>>2]|0)+1}h[(c[n>>2]|0)+(c[o>>2]<<3)>>3]=+h[q>>3];c[o>>2]=(c[o>>2]|0)+1}i=g;return}function lt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;g[k>>2]=0.0;c[j>>2]=c[f>>2];c[h>>2]=c[e>>2];while(1){if(!(c[h>>2]|0))break;b=c[j>>2]|0;c[j>>2]=b+4;g[k>>2]=+g[k>>2]+ +g[b>>2];c[h>>2]=(c[h>>2]|0)+-1}g[k>>2]=+g[k>>2]/+(c[e>>2]|0);c[j>>2]=c[f>>2];c[h>>2]=c[e>>2];while(1){if(!(c[h>>2]|0))break;l=+g[k>>2];e=c[j>>2]|0;c[j>>2]=e+4;g[e>>2]=+g[e>>2]-l;c[h>>2]=(c[h>>2]|0)+-1}i=d;return}function mt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;h=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[o>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;g[q>>2]=0.0;g[p>>2]=+g[(c[k>>2]|0)+(c[m>>2]<<2)>>2];e=c[o>>2]|0;c[o>>2]=e+1;g[q>>2]=+g[q>>2]+ +g[(c[h>>2]|0)+(e<<2)>>2]*+g[p>>2];c[n>>2]=(c[m>>2]|0)+1;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;g[q>>2]=+g[q>>2]+ +g[(c[h>>2]|0)+(c[o>>2]<<2)>>2]*+g[(c[k>>2]|0)+(c[n>>2]<<2)>>2];e=(c[l>>2]|0)+(c[n>>2]<<2)|0;g[e>>2]=+g[e>>2]+ +g[(c[h>>2]|0)+(c[o>>2]<<2)>>2]*+g[p>>2];c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+1}e=(c[l>>2]|0)+(c[m>>2]<<2)|0;g[e>>2]=+g[e>>2]+ +g[q>>2];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function nt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[h>>2]|0))break;g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=+g[(c[j>>2]|0)+(c[m>>2]<<2)>>2]-+g[(c[k>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function ot(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[h>>2]|0))break;g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=+g[(c[j>>2]|0)+(c[m>>2]<<2)>>2]+ +g[(c[k>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function pt(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;g[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[h>>2]|0))break;g[(c[j>>2]|0)+(c[m>>2]<<2)>>2]=+g[(c[j>>2]|0)+(c[m>>2]<<2)>>2]+ +g[k>>2]*+g[(c[l>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function qt(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;g[k>>2]=d;c[l>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[h>>2]|0))break;g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=+g[(c[j>>2]|0)+(c[m>>2]<<2)>>2]*+g[k>>2];c[m>>2]=(c[m>>2]|0)+1}i=f;return}function rt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;g[(c[j>>2]|0)+(c[k>>2]<<2)>>2]=+g[(c[h>>2]|0)+(c[k>>2]<<2)>>2];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function st(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e;c[f>>2]=a;c[j>>2]=b;c[k>>2]=d;h[m>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[f>>2]|0))break;h[m>>3]=+h[m>>3]+ +g[(c[j>>2]|0)+(c[l>>2]<<2)>>2]*+g[(c[k>>2]|0)+(c[l>>2]<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}i=e;return +(+h[m>>3])}function tt(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e;j=e+12|0;k=e+8|0;c[f>>2]=a;h[g>>3]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=+h[g>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function ut(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;g[h>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;g[(c[j>>2]|0)+(c[k>>2]<<2)>>2]=+g[h>>2];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0.0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;g[j>>2]=-1000000015047466219876688.0e6;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[e>>2]|0))break;k=+N(+(+g[(c[f>>2]|0)+(c[h>>2]<<2)>>2]));if(k>+g[j>>2])g[j>>2]=+N(+(+g[(c[f>>2]|0)+(c[h>>2]<<2)>>2]));c[h>>2]=(c[h>>2]|0)+1}i=d;return +(+g[j>>2])}function wt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[e>>2]|0))break;b=(c[f>>2]|0)+(c[h>>2]<<2)|0;g[b>>2]=+g[b>>2]*+g[(c[f>>2]|0)+(c[h>>2]<<2)>>2];c[h>>2]=(c[h>>2]|0)+1}i=d;return}function xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0.0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[e>>2]|0))break;k=+g[(c[f>>2]|0)+(c[h>>2]<<2)>>2];g[j>>2]=k;if(k!=0.0)g[(c[f>>2]|0)+(c[h>>2]<<2)>>2]=1.0/+g[j>>2];c[h>>2]=(c[h>>2]|0)+1}i=d;return}function yt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0.0;e=i;i=i+32|0;f=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e;n=e+8|0;c[f>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[f>>2]|0))break;o=+g[(c[j>>2]|0)+(c[l>>2]<<2)>>2];g[n>>2]=o;if(o>=0.0){h[m>>3]=+O(+(+g[n>>2]));g[(c[k>>2]|0)+(c[l>>2]<<2)>>2]=+h[m>>3]}c[l>>2]=(c[l>>2]|0)+1}i=e;return}function zt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0.0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;j=d+12|0;k=d;l=d+8|0;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[e>>2]|0))break;m=+g[(c[f>>2]|0)+(c[j>>2]<<2)>>2];g[l>>2]=m;if(m>0.0){h[k>>3]=1.0/+O(+(+g[l>>2]));g[(c[f>>2]|0)+(c[j>>2]<<2)>>2]=+h[k>>3]}c[j>>2]=(c[j>>2]|0)+1}i=d;return}function At(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=0;b=c[f>>2]|0;if(((c[f>>2]|0)>>>0)%4|0)if(!(4%(b>>>0)|0))j=4;else{a=c[f>>2]|0;j=_(a,4/((Dt(c[f>>2]|0,4)|0)>>>0)|0)|0}else j=b;c[(c[e>>2]|0)+8>>2]=j;if(!(c[(c[e>>2]|0)+4>>2]|0)){k=c[e>>2]|0;l=k+4|0;c[l>>2]=0;i=d;return}c[g>>2]=c[(c[e>>2]|0)+4>>2];while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[c[g>>2]>>2];O4(c[(c[g>>2]|0)+4>>2]|0);O4(c[g>>2]|0);c[g>>2]=c[h>>2]}k=c[e>>2]|0;l=k+4|0;c[l>>2]=0;i=d;return}function Bt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;if(c[c[d>>2]>>2]|0){k=c[d>>2]|0;l=c[k>>2]|0;c[f>>2]=l;m=c[f>>2]|0;n=c[m>>2]|0;o=c[d>>2]|0;c[o>>2]=n;p=c[f>>2]|0;i=b;return p|0}c[h>>2]=c[(c[d>>2]|0)+8>>2];c[g>>2]=cK(8)|0;a=cK(_(c[12876]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+4>>2]=a;c[j>>2]=c[(c[g>>2]|0)+4>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[12876]|0))break;a=(c[j>>2]|0)+(_(c[e>>2]|0,c[h>>2]|0)|0)|0;Ct(a,c[d>>2]|0);c[e>>2]=(c[e>>2]|0)+1}c[c[g>>2]>>2]=c[(c[d>>2]|0)+4>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2];k=c[d>>2]|0;l=c[k>>2]|0;c[f>>2]=l;m=c[f>>2]|0;n=c[m>>2]|0;o=c[d>>2]|0;c[o>>2]=n;p=c[f>>2]|0;i=b;return p|0}function Ct(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=c[e>>2];i=d;return}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;while(1){if((c[f>>2]|0)==(c[e>>2]|0))break;if((c[e>>2]|0)<(c[f>>2]|0)){c[f>>2]=(c[f>>2]|0)-(c[e>>2]|0);continue}else{c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0);continue}}i=d;return c[f>>2]|0}function Et(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+64|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+28|0;p=f+24|0;q=f+20|0;r=f;s=f+16|0;t=f+12|0;u=f+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[p>>2]=0;c[q>>2]=bK(c[k>>2]<<3)|0;h[r>>3]=.001;c[s>>2]=0;c[u>>2]=c[(c[j>>2]|0)+8>>2];Ft(c[j>>2]|0,c[k>>2]|0,c[q>>2]|0);bt(c[k>>2]|0,c[l>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[s>>2]=(c[s>>2]|0)+(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[t>>2]=cK(c[s>>2]<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]=c[t>>2];g[c[t>>2]>>2]=+(0-((c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]|0)-1)|0);c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]|0))break;g[(c[t>>2]|0)+(c[o>>2]<<2)>>2]=1.0;c[o>>2]=(c[o>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]<<2);c[n>>2]=(c[n>>2]|0)+1}if((Rq(c[j>>2]|0,c[l>>2]|0,c[q>>2]|0,c[k>>2]|0,+h[r>>3],c[m>>2]|0)|0)<0)c[p>>2]=1;O4(c[(c[j>>2]|0)+8>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)+8>>2]=c[u>>2];c[u>>2]=(c[u>>2]|0)+(c[(c[j>>2]|0)+((c[n>>2]|0)*20|0)>>2]<<2);c[n>>2]=(c[n>>2]|0)+1}O4(c[q>>2]|0);i=f;return c[p>>2]|0}function Ft(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e;c[f>>2]=a;c[j>>2]=b;c[k>>2]=d;h[n>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[j>>2]|0))break;h[n>>3]=0.0;if(c[(c[f>>2]|0)+16>>2]|0){c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[(c[f>>2]|0)+((c[l>>2]|0)*20|0)>>2]|0))break;h[n>>3]=+h[n>>3]+ +g[(c[(c[f>>2]|0)+((c[l>>2]|0)*20|0)+8>>2]|0)+(c[m>>2]<<2)>>2]*+g[(c[(c[f>>2]|0)+((c[l>>2]|0)*20|0)+16>>2]|0)+(c[m>>2]<<2)>>2];c[m>>2]=(c[m>>2]|0)+1}h[(c[k>>2]|0)+(c[l>>2]<<3)>>3]=+h[n>>3]}c[l>>2]=(c[l>>2]|0)+1}i=e;return}function Gt(a,b,d,e,f,g,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;k=k|0;l=l|0;var m=0;m=i;i=i+48|0;c[m+40>>2]=a;c[m+36>>2]=b;c[m+32>>2]=d;c[m+28>>2]=e;c[m+24>>2]=f;c[m+20>>2]=g;h[m>>3]=j;c[m+16>>2]=k;c[m+12>>2]=l;if(c[12934]|0){i=m;return}c[12934]=1;$z(1,131228,m+8|0)|0;i=m;return}function Ht(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;g=i;i=i+64|0;j=g+52|0;k=g+48|0;l=g+44|0;m=g+40|0;n=g+36|0;o=g+32|0;p=g;q=g+28|0;r=g+24|0;s=g+20|0;t=g+16|0;u=g+12|0;v=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;c[t>>2]=0;c[u>>2]=0;c[t>>2]=cK(c[n>>2]<<2)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[n>>2]|0))break;f=cK(c[k>>2]<<3)|0;c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]=f;c[q>>2]=(c[q>>2]|0)+1}c[u>>2]=cK(c[n>>2]<<3)|0;c[o>>2]=cK(c[k>>2]<<2)|0;c[v>>2]=cK((_(c[k>>2]|0,c[k>>2]|0)|0)<<3)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+(c[k>>2]<<3);c[q>>2]=(c[q>>2]|0)+1}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[r>>2]=0;while(1){if((c[r>>2]|0)>(c[q>>2]|0))break;h[p>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;w=+(_(c[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0,c[(c[(c[j>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)|0);h[p>>3]=+h[p>>3]+w;c[s>>2]=(c[s>>2]|0)+1}w=+h[p>>3];h[(c[(c[o>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[q>>2]<<3)>>3]=w;h[(c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3]=w;c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}Ss(c[o>>2]|0,c[k>>2]|0,c[n>>2]|0,c[t>>2]|0,c[u>>2]|0,1)|0;c[r>>2]=0;while(1){v=(c[r>>2]|0)<(c[n>>2]|0);c[q>>2]=0;if(!v)break;while(1){if((c[q>>2]|0)>=(c[l>>2]|0))break;h[p>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[k>>2]|0))break;h[p>>3]=+h[p>>3]+ +(c[(c[(c[j>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[q>>2]<<2)>>2]|0)*+h[(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}h[(c[(c[m>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[q>>2]<<3)>>3]=+h[p>>3];c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}while(1){if((c[q>>2]|0)>=(c[n>>2]|0))break;O4(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]|0);c[q>>2]=(c[q>>2]|0)+1}O4(c[t>>2]|0);O4(c[u>>2]|0);O4(c[c[o>>2]>>2]|0);O4(c[o>>2]|0);i=g;return}function It(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[n>>2]=0;Mx(c[c[g>>2]>>2]|0,c[j>>2]|0,_(c[12935]|0,c[j>>2]|0)|0,l);$s(c[l>>2]|0,c[g>>2]|0,c[j>>2]|0,c[h>>2]|0,m);_s(c[g>>2]|0,c[m>>2]|0,c[h>>2]|0,c[j>>2]|0,c[h>>2]|0,n);O4(c[c[m>>2]>>2]|0);O4(c[m>>2]|0);m=(Ss(c[n>>2]|0,c[h>>2]|0,1,k,f,1)|0)&255;i=f;return m|0}function Jt(){c[12936]=0;O4(c[12937]|0);O4(c[12938]|0);O4(c[12939]|0);c[12937]=0;c[12938]=0;c[12939]=0;return}function Kt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[d>>2]|0)+36>>2]|0);i=b;return}function Lt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;j=i;i=i+160|0;k=j+120|0;l=j+156|0;m=j+152|0;n=j+148|0;o=j+144|0;p=j+140|0;q=j+136|0;r=j+132|0;s=j+128|0;t=j+124|0;u=j+88|0;v=j+72|0;w=j+64|0;x=j+48|0;y=j+32|0;z=j+16|0;A=j;c[m>>2]=b;c[n>>2]=d;g[o>>2]=e;g[p>>2]=f;a:do if(c[(c[(c[n>>2]|0)+8>>2]|0)+212>>2]|0){c[r>>2]=4;h[v>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+32>>3]/2.0+ +g[o>>2];h[v+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+40>>3]/2.0+ +g[p>>2];c[(c[m>>2]|0)+40>>2]=1;c[s>>2]=cK(c[r>>2]<<4)|0;h[c[s>>2]>>3]=+h[v>>3];h[(c[s>>2]|0)+8>>3]=+h[v+8>>3];h[(c[s>>2]|0)+16>>3]=-+h[v>>3];h[(c[s>>2]|0)+16+8>>3]=+h[v+8>>3];h[(c[s>>2]|0)+32>>3]=-+h[v>>3];h[(c[s>>2]|0)+32+8>>3]=-+h[v+8>>3];h[(c[s>>2]|0)+48>>3]=+h[v>>3];h[(c[s>>2]|0)+48+8>>3]=-+h[v+8>>3]}else switch(dM(c[n>>2]|0)|0){case 1:{c[t>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2];c[r>>2]=c[(c[t>>2]|0)+8>>2];if((a[c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[147668]|0)?(J3(c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]|0,147668)|0)==0:0)c[(c[m>>2]|0)+40>>2]=1;else B=7;do if((B|0)==7){if(((a[c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[143162]|0)?(J3(c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143162)|0)==0:0)?(Ot(c[(c[t>>2]|0)+44>>2]|0,c[r>>2]|0)|0)!=0:0){c[(c[m>>2]|0)+40>>2]=1;break}if((c[(c[t>>2]|0)+8>>2]|0)<3?(c[c[t>>2]>>2]|0)!=0:0){c[(c[m>>2]|0)+40>>2]=2;break}c[(c[m>>2]|0)+40>>2]=0}while(0);if((c[r>>2]|0)<3){c[s>>2]=Pt(c[n>>2]|0,r,+g[o>>2],+g[p>>2])|0;break a}c[s>>2]=cK(c[r>>2]<<4)|0;if((c[(c[m>>2]|0)+40>>2]|0)==1){h[c[s>>2]>>3]=+h[c[(c[t>>2]|0)+44>>2]>>3]/72.0+ +g[o>>2];h[(c[s>>2]|0)+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+8>>3]/72.0+ +g[p>>2];h[(c[s>>2]|0)+16>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+16>>3]/72.0-+g[o>>2];h[(c[s>>2]|0)+16+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+16+8>>3]/72.0+ +g[p>>2];h[(c[s>>2]|0)+32>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+32>>3]/72.0-+g[o>>2];h[(c[s>>2]|0)+32+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+32+8>>3]/72.0-+g[p>>2];h[(c[s>>2]|0)+48>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+48>>3]/72.0+ +g[o>>2];h[(c[s>>2]|0)+48+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+48+8>>3]/72.0-+g[p>>2];break a}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break a;h[w>>3]=+O(+(+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)>>3]*+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)>>3]+ +h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)+8>>3]*+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)+8>>3]));h[(c[s>>2]|0)+(c[q>>2]<<4)>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)>>3]*(+g[o>>2]/+h[w>>3]+1.0);h[(c[s>>2]|0)+(c[q>>2]<<4)+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)+8>>3]*(+g[p>>2]/+h[w>>3]+1.0);h[(c[s>>2]|0)+(c[q>>2]<<4)>>3]=+h[(c[s>>2]|0)+(c[q>>2]<<4)>>3]/72.0;h[(c[s>>2]|0)+(c[q>>2]<<4)+8>>3]=+h[(c[s>>2]|0)+(c[q>>2]<<4)+8>>3]/72.0;c[q>>2]=(c[q>>2]|0)+1}break}case 2:{c[r>>2]=4;c[s>>2]=cK(c[r>>2]<<4)|0;d=(c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2]|0)+16|0;c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];c[u+12>>2]=c[d+12>>2];c[u+16>>2]=c[d+16>>2];c[u+20>>2]=c[d+20>>2];c[u+24>>2]=c[d+24>>2];c[u+28>>2]=c[d+28>>2];d=c[s>>2]|0;Qt(x,~~+h[u>>3],~~+h[u+8>>3],-+g[o>>2],-+g[p>>2]);c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];d=(c[s>>2]|0)+16|0;Qt(y,~~+h[u+16>>3],~~+h[u+8>>3],+g[o>>2],-+g[p>>2]);c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];d=(c[s>>2]|0)+32|0;Qt(z,~~+h[u+16>>3],~~+h[u+16+8>>3],+g[o>>2],+g[p>>2]);c[d>>2]=c[z>>2];c[d+4>>2]=c[z+4>>2];c[d+8>>2]=c[z+8>>2];c[d+12>>2]=c[z+12>>2];d=(c[s>>2]|0)+48|0;Qt(A,~~+h[u>>3],~~+h[u+16+8>>3],-+g[o>>2],+g[p>>2]);c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];c[(c[m>>2]|0)+40>>2]=1;break a;break}case 3:{c[(c[m>>2]|0)+40>>2]=2;c[s>>2]=Pt(c[n>>2]|0,r,+g[o>>2],+g[p>>2])|0;break a;break}default:{c[k>>2]=c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2];$z(1,131291,k)|0;c[l>>2]=1;C=c[l>>2]|0;i=j;return C|0}}while(0);c[(c[m>>2]|0)+36>>2]=c[s>>2];c[(c[m>>2]|0)+32>>2]=c[r>>2];Rt(c[s>>2]|0,c[r>>2]|0,c[m>>2]|0,(c[m>>2]|0)+16|0);if((c[r>>2]|0)>(c[12936]|0))c[12936]=c[r>>2];c[l>>2]=0;C=c[l>>2]|0;i=j;return C|0}function Mt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;j=i;i=i+160|0;k=j+112|0;l=j+148|0;m=j+144|0;n=j+140|0;o=j+136|0;p=j+132|0;q=j+128|0;r=j+124|0;s=j+120|0;t=j+116|0;u=j+80|0;v=j+64|0;w=j+48|0;x=j+32|0;y=j+16|0;z=j;c[m>>2]=b;c[n>>2]=d;g[o>>2]=e;g[p>>2]=f;a:do if(c[(c[(c[n>>2]|0)+8>>2]|0)+212>>2]|0){c[r>>2]=4;h[v>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+32>>3]/2.0;h[v+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+40>>3]/2.0;c[(c[m>>2]|0)+40>>2]=1;c[s>>2]=cK(c[r>>2]<<4)|0;h[c[s>>2]>>3]=+h[v>>3];h[(c[s>>2]|0)+8>>3]=+h[v+8>>3];h[(c[s>>2]|0)+16>>3]=-+h[v>>3];h[(c[s>>2]|0)+16+8>>3]=+h[v+8>>3];h[(c[s>>2]|0)+32>>3]=-+h[v>>3];h[(c[s>>2]|0)+32+8>>3]=-+h[v+8>>3];h[(c[s>>2]|0)+48>>3]=+h[v>>3];h[(c[s>>2]|0)+48+8>>3]=-+h[v+8>>3]}else switch(dM(c[n>>2]|0)|0){case 1:{c[t>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2];c[r>>2]=c[(c[t>>2]|0)+8>>2];b:do if((c[r>>2]|0)>=3){c[s>>2]=cK(c[r>>2]<<4)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break b;h[(c[s>>2]|0)+(c[q>>2]<<4)>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)>>3]/72.0;h[(c[s>>2]|0)+(c[q>>2]<<4)+8>>3]=+h[(c[(c[t>>2]|0)+44>>2]|0)+(c[q>>2]<<4)+8>>3]/72.0;c[q>>2]=(c[q>>2]|0)+1}}else c[s>>2]=Pt(c[n>>2]|0,r,0.0,0.0)|0;while(0);if((a[c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[147668]|0)?(J3(c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]|0,147668)|0)==0:0){c[(c[m>>2]|0)+40>>2]=1;break a}if(((a[c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[143162]|0)?(J3(c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143162)|0)==0:0)?(Ot(c[s>>2]|0,c[r>>2]|0)|0)!=0:0){c[(c[m>>2]|0)+40>>2]=1;break a}if((c[(c[t>>2]|0)+8>>2]|0)<3?(c[c[t>>2]>>2]|0)!=0:0){c[(c[m>>2]|0)+40>>2]=2;break a}c[(c[m>>2]|0)+40>>2]=0;break a;break}case 2:{c[r>>2]=4;c[s>>2]=cK(c[r>>2]<<4)|0;d=(c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2]|0)+16|0;c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];c[u+12>>2]=c[d+12>>2];c[u+16>>2]=c[d+16>>2];c[u+20>>2]=c[d+20>>2];c[u+24>>2]=c[d+24>>2];c[u+28>>2]=c[d+28>>2];d=c[s>>2]|0;St(w,+h[u>>3],+h[u+8>>3]);c[d>>2]=c[w>>2];c[d+4>>2]=c[w+4>>2];c[d+8>>2]=c[w+8>>2];c[d+12>>2]=c[w+12>>2];d=(c[s>>2]|0)+16|0;St(x,+h[u+16>>3],+h[u+8>>3]);c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];d=(c[s>>2]|0)+32|0;St(y,+h[u+16>>3],+h[u+16+8>>3]);c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];d=(c[s>>2]|0)+48|0;St(z,+h[u>>3],+h[u+16+8>>3]);c[d>>2]=c[z>>2];c[d+4>>2]=c[z+4>>2];c[d+8>>2]=c[z+8>>2];c[d+12>>2]=c[z+12>>2];c[(c[m>>2]|0)+40>>2]=1;break a;break}case 3:{c[(c[m>>2]|0)+40>>2]=2;c[s>>2]=Pt(c[n>>2]|0,r,0.0,0.0)|0;break a;break}default:{c[k>>2]=c[c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]>>2];$z(1,131327,k)|0;c[l>>2]=1;A=c[l>>2]|0;i=j;return A|0}}while(0);if(!(!(+g[o>>2]!=1.0)?!(+g[p>>2]!=1.0):0))Tt(c[s>>2]|0,c[r>>2]|0,+g[o>>2],+g[p>>2]);c[(c[m>>2]|0)+36>>2]=c[s>>2];c[(c[m>>2]|0)+32>>2]=c[r>>2];Rt(c[s>>2]|0,c[r>>2]|0,c[m>>2]|0,(c[m>>2]|0)+16|0);if((c[r>>2]|0)>(c[12936]|0))c[12936]=c[r>>2];c[l>>2]=0;A=c[l>>2]|0;i=j;return A|0}function Nt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=i;i=i+176|0;g=f+136|0;j=f+120|0;k=f+104|0;l=f;m=f+160|0;n=f+156|0;o=f+152|0;p=f+88|0;q=f+72|0;r=f+56|0;s=f+40|0;t=f+32|0;u=f+24|0;v=f+16|0;c[n>>2]=b;c[o>>2]=e;e=c[n>>2]|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];Rr(p,j,g);e=(c[n>>2]|0)+16|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];Rr(q,j,g);e=c[o>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];Rr(r,j,g);e=(c[o>>2]|0)+16|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];Rr(s,j,g);c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[l+12>>2]=c[p+12>>2];c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];if(!(Ut(l,k,j,g)|0)){c[m>>2]=0;w=c[m>>2]|0;i=f;return w|0}if((c[(c[n>>2]|0)+40>>2]&1|0)!=0?(c[(c[o>>2]|0)+40>>2]&1|0)!=0:0){c[m>>2]=1;w=c[m>>2]|0;i=f;return w|0}if((c[(c[n>>2]|0)+40>>2]&2|0)!=0?(c[(c[o>>2]|0)+40>>2]&2|0)!=0:0){h[t>>3]=+h[(c[n>>2]|0)+16>>3]-+h[c[n>>2]>>3]+ +h[(c[o>>2]|0)+16>>3]-+h[c[o>>2]>>3];h[u>>3]=+h[a>>3]-+h[d>>3];h[v>>3]=+h[a+8>>3]-+h[d+8>>3];if(+h[u>>3]*+h[u>>3]+ +h[v>>3]*+h[v>>3]>+h[t>>3]*+h[t>>3]/4.0){c[m>>2]=0;w=c[m>>2]|0;i=f;return w|0}else{c[m>>2]=1;w=c[m>>2]|0;i=f;return w|0}}if(!(c[12937]|0)){c[12937]=cK(c[12936]<<4)|0;c[12938]=cK(c[12936]<<4)|0}t=c[(c[n>>2]|0)+36>>2]|0;v=c[(c[n>>2]|0)+32>>2]|0;u=c[12937]|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];Vt(t,v,g,u);u=c[(c[o>>2]|0)+36>>2]|0;v=c[(c[o>>2]|0)+32>>2]|0;t=c[12938]|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];Vt(u,v,g,t);do if(!(Wt(c[12937]|0,c[12938]|0,c[(c[n>>2]|0)+32>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)){t=c[12937]|0;c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];if((Xt(k,j,g)|0)!=0?(t=c[12938]|0,v=c[(c[o>>2]|0)+32>>2]|0,u=c[12937]|0,c[g>>2]=c[u>>2],c[g+4>>2]=c[u+4>>2],c[g+8>>2]=c[u+8>>2],c[g+12>>2]=c[u+12>>2],(Yt(t,v,g)|0)!=0):0){x=1;break}v=c[12938]|0;c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[k+12>>2]=c[v+12>>2];c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];if(Xt(k,j,g)|0){v=c[12937]|0;t=c[(c[n>>2]|0)+32>>2]|0;u=c[12938]|0;c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];x=(Yt(v,t,g)|0)!=0}else x=0}else x=1;while(0);c[m>>2]=x&1;w=c[m>>2]|0;i=f;return w|0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)!=4){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}g=c[f>>2]|0;if(+h[(c[f>>2]|0)+8>>3]==+h[(c[f>>2]|0)+16+8>>3]){if(+h[g+32+8>>3]==+h[(c[f>>2]|0)+48+8>>3]?+h[c[f>>2]>>3]==+h[(c[f>>2]|0)+48>>3]:0)k=+h[(c[f>>2]|0)+16>>3]==+h[(c[f>>2]|0)+32>>3];else k=0;c[e>>2]=k&1;j=c[e>>2]|0;i=d;return j|0}if((+h[g>>3]==+h[(c[f>>2]|0)+16>>3]?+h[(c[f>>2]|0)+32>>3]==+h[(c[f>>2]|0)+48>>3]:0)?+h[(c[f>>2]|0)+8>>3]==+h[(c[f>>2]|0)+48+8>>3]:0)l=+h[(c[f>>2]|0)+16+8>>3]==+h[(c[f>>2]|0)+32+8>>3];else l=0;c[e>>2]=l&1;j=c[e>>2]|0;i=d;return j|0}function Pt(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[j>>2]=a;c[k>>2]=b;g[l>>2]=d;g[m>>2]=e;c[n>>2]=0;c[p>>2]=yA(c[j>>2]|0,140333)|0;if(c[p>>2]|0)c[n>>2]=u3(c[p>>2]|0)|0;if((c[n>>2]|0)<3)c[n>>2]=20;c[o>>2]=cK(c[n>>2]<<4)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[n>>2]|0))break;e=(+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]/2.0+ +g[l>>2])*+Q(+(+(c[q>>2]|0)/+(c[n>>2]|0)*3.141592653589793*2.0));h[(c[o>>2]|0)+(c[q>>2]<<4)>>3]=e;e=(+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]/2.0+ +g[m>>2])*+R(+(+(c[q>>2]|0)/+(c[n>>2]|0)*3.141592653589793*2.0));h[(c[o>>2]|0)+(c[q>>2]<<4)+8>>3]=e;c[q>>2]=(c[q>>2]|0)+1}c[c[k>>2]>>2]=c[n>>2];i=f;return c[o>>2]|0}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=+f;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;m=j+20|0;n=j+16|0;o=j;c[k>>2]=b;c[l>>2]=d;g[m>>2]=e;g[n>>2]=f;h[o>>3]=+(c[k>>2]|0)/72.0+ +g[m>>2];h[o+8>>3]=+(c[l>>2]|0)/72.0+ +g[n>>2];c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];i=j;return}function Rt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;f=i;i=i+64|0;g=f+48|0;j=f+44|0;k=f+40|0;l=f+36|0;m=f+24|0;n=f+16|0;o=f+8|0;p=f;q=f+32|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;r=+h[c[g>>2]>>3];h[o>>3]=r;h[m>>3]=r;r=+h[(c[g>>2]|0)+8>>3];h[p>>3]=r;h[n>>3]=r;c[q>>2]=1;while(1){if((c[q>>2]|0)>=(c[j>>2]|0))break;c[g>>2]=(c[g>>2]|0)+16;if(+h[c[g>>2]>>3]<+h[m>>3])h[m>>3]=+h[c[g>>2]>>3];if(+h[(c[g>>2]|0)+8>>3]<+h[n>>3])h[n>>3]=+h[(c[g>>2]|0)+8>>3];if(+h[c[g>>2]>>3]>+h[o>>3])h[o>>3]=+h[c[g>>2]>>3];if(+h[(c[g>>2]|0)+8>>3]>+h[p>>3])h[p>>3]=+h[(c[g>>2]|0)+8>>3];c[q>>2]=(c[q>>2]|0)+1}h[c[k>>2]>>3]=+h[m>>3];h[(c[k>>2]|0)+8>>3]=+h[n>>3];h[c[l>>2]>>3]=+h[o>>3];h[(c[l>>2]|0)+8>>3]=+h[p>>3];i=f;return}function St(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3]/72.0;h[j+8>>3]=+h[g>>3]/72.0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function Tt(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[j>>2]=a;c[k>>2]=b;g[l>>2]=d;g[m>>2]=e;c[o>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;j=c[o>>2]|0;h[j>>3]=+h[j>>3]*+g[l>>2];j=(c[o>>2]|0)+8|0;h[j>>3]=+h[j>>3]*+g[m>>2];c[o>>2]=(c[o>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1}i=f;return}function Ut(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((+h[a>>3]<=+h[d>>3]?+h[c>>3]<=+h[b>>3]:0)?+h[a+8>>3]<=+h[d+8>>3]:0)e=+h[c+8>>3]<=+h[b+8>>3];else e=0;return e&1|0}function Vt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[j>>2]|0))break;h[c[k>>2]>>3]=+h[c[g>>2]>>3]+ +h[d>>3];h[(c[k>>2]|0)+8>>3]=+h[(c[g>>2]|0)+8>>3]+ +h[d+8>>3];c[g>>2]=(c[g>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+16;c[l>>2]=(c[l>>2]|0)+1}i=f;return}function Wt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;f=i;i=i+176|0;g=f+104|0;j=f+88|0;k=f+72|0;l=f+56|0;m=f+172|0;n=f+168|0;o=f+164|0;p=f+160|0;q=f+156|0;r=f+152|0;s=f+148|0;t=f+144|0;u=f+140|0;v=f+136|0;w=f+132|0;x=f+40|0;y=f+24|0;z=f+16|0;A=f+128|0;B=f+124|0;C=f;D=f+120|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[D>>2]=0;while(1){c[v>>2]=((c[r>>2]|0)+(c[p>>2]|0)-1|0)%(c[p>>2]|0)|0;c[w>>2]=((c[s>>2]|0)+(c[q>>2]|0)-1|0)%(c[q>>2]|0)|0;e=(c[n>>2]|0)+(c[r>>2]<<4)|0;d=(c[n>>2]|0)+(c[v>>2]<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];Qr(x,j,g);d=(c[o>>2]|0)+(c[s>>2]<<4)|0;e=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];Qr(y,j,g);c[k>>2]=c[8404];c[k+4>>2]=c[8405];c[k+8>>2]=c[8406];c[k+12>>2]=c[8407];c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[j+12>>2]=c[x+12>>2];c[g>>2]=c[y>>2];c[g+4>>2]=c[y+4>>2];c[g+8>>2]=c[y+8>>2];c[g+12>>2]=c[y+12>>2];h[z>>3]=+Sr(k,j,g);e=(c[n>>2]|0)+(c[v>>2]<<4)|0;d=(c[n>>2]|0)+(c[r>>2]<<4)|0;b=(c[o>>2]|0)+(c[s>>2]<<4)|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[A>>2]=Tr(k,j,g)|0;b=(c[o>>2]|0)+(c[w>>2]<<4)|0;d=(c[o>>2]|0)+(c[s>>2]<<4)|0;e=(c[n>>2]|0)+(c[r>>2]<<4)|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[B>>2]=Tr(k,j,g)|0;e=(c[n>>2]|0)+(c[v>>2]<<4)|0;d=(c[n>>2]|0)+(c[r>>2]<<4)|0;b=(c[o>>2]|0)+(c[w>>2]<<4)|0;a=(c[o>>2]|0)+(c[s>>2]<<4)|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];if(Ur(l,k,j,g,C)|0){E=3;break}do if(+h[z>>3]!=0.0|(c[A>>2]|0)!=0|(c[B>>2]|0)!=0)if(+h[z>>3]>=0.0)if(c[A>>2]|0){c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=((c[r>>2]|0)+1|0)%(c[p>>2]|0)|0;break}else{c[u>>2]=(c[u>>2]|0)+1;c[s>>2]=((c[s>>2]|0)+1|0)%(c[q>>2]|0)|0;break}else if(c[B>>2]|0){c[u>>2]=(c[u>>2]|0)+1;c[s>>2]=((c[s>>2]|0)+1|0)%(c[q>>2]|0)|0;break}else{c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=((c[r>>2]|0)+1|0)%(c[p>>2]|0)|0;break}else if((c[D>>2]|0)==1){c[u>>2]=(c[u>>2]|0)+1;c[s>>2]=((c[s>>2]|0)+1|0)%(c[q>>2]|0)|0;break}else{c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=((c[r>>2]|0)+1|0)%(c[p>>2]|0)|0;break}while(0);if((c[t>>2]|0)>=(c[p>>2]|0)?(c[u>>2]|0)>=(c[q>>2]|0):0){E=19;break}if((c[t>>2]|0)>=(c[p>>2]<<1|0)){E=19;break}if((c[u>>2]|0)>=(c[q>>2]<<1|0)){E=19;break}}if((E|0)==3){c[m>>2]=1;F=c[m>>2]|0;i=f;return F|0}else if((E|0)==19){c[m>>2]=0;F=c[m>>2]|0;i=f;return F|0}return 0}function Xt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((+h[a>>3]<=+h[c>>3]?+h[a>>3]>=+h[b>>3]:0)?+h[a+8>>3]<=+h[c+8>>3]:0)d=+h[a+8>>3]>=+h[b+8>>3];else d=0;return d&1|0}function Yt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+8|0;n=e;c[g>>2]=a;c[j>>2]=b;h[n>>3]=0.0;if(!(c[12939]|0))c[12939]=cK(c[12936]<<4)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;h[(c[12939]|0)+(c[k>>2]<<4)>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<4)>>3]-+h[d>>3];h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<4)+8>>3]-+h[d+8>>3];c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;a:while(1){if((c[k>>2]|0)>=(c[j>>2]|0)){o=24;break}c[l>>2]=((c[k>>2]|0)+(c[j>>2]|0)-1|0)%(c[j>>2]|0)|0;if(+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]==0.0?+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]==0.0:0){if(+h[(c[12939]|0)+(c[k>>2]<<4)>>3]*+h[(c[12939]|0)+(c[l>>2]<<4)>>3]<0.0){o=11;break}}else o=12;do if((o|0)==12){o=0;if(!(+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]>=0.0?+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]<=0.0:0)){if(!(+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]>=0.0))break;if(!(+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]<=0.0))break}h[m>>3]=(+h[(c[12939]|0)+(c[k>>2]<<4)>>3]*+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]-+h[(c[12939]|0)+(c[l>>2]<<4)>>3]*+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3])/(+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]-+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]);if(+h[m>>3]==0.0){o=17;break a}if(+h[m>>3]>0.0){if(!(+h[(c[12939]|0)+(c[k>>2]<<4)+8>>3]==0.0)?!(+h[(c[12939]|0)+(c[l>>2]<<4)+8>>3]==0.0):0){h[n>>3]=+h[n>>3]+1.0;break}h[n>>3]=+h[n>>3]+.5}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((o|0)==11){c[f>>2]=1;p=c[f>>2]|0;i=e;return p|0}else if((o|0)==17){c[f>>2]=1;p=c[f>>2]|0;i=e;return p|0}else if((o|0)==24)if(((~~+h[n>>3]|0)%2|0|0)==1){c[f>>2]=1;p=c[f>>2]|0;i=e;return p|0}else{c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}return 0}function Zt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0.0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=cK(c[f>>2]<<2)|0;b=cK((_(c[f>>2]|0,c[f>>2]|0)|0)<<2)|0;c[c[h>>2]>>2]=b;b=_(c[f>>2]|0,c[f>>2]|0)|0;ut(b,0.0,c[c[h>>2]>>2]|0);c[j>>2]=1;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;b=(c[c[h>>2]>>2]|0)+((_(c[j>>2]|0,c[f>>2]|0)|0)<<2)|0;c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;c[l>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[j>>2];while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;m=+g[(c[e>>2]|0)+(c[l>>2]<<2)>>2];g[(c[(c[h>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<2)>>2]=m;g[(c[(c[h>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]=m;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}i=d;return c[h>>2]|0}function _t(b,e,f,j,k,l,m,n){b=b|0;e=e|0;f=f|0;j=j|0;k=k|0;l=l|0;m=m|0;n=+n;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0.0,la=0.0,ma=0;o=i;i=i+208|0;p=o+188|0;q=o+184|0;r=o+180|0;s=o+176|0;t=o+168|0;u=o+164|0;v=o+160|0;w=o+156|0;x=o+152|0;y=o+148|0;z=o+144|0;A=o+140|0;B=o+136|0;C=o+132|0;D=o+128|0;E=o+124|0;F=o+120|0;G=o+192|0;H=o+116|0;I=o+112|0;J=o+108|0;K=o+104|0;L=o+100|0;M=o+96|0;O=o+92|0;P=o+88|0;Q=o+84|0;R=o+80|0;S=o+76|0;T=o+72|0;U=o+68|0;V=o+64|0;W=o+60|0;X=o+56|0;Y=o+52|0;Z=o+48|0;_=o+44|0;$=o+40|0;aa=o+36|0;ba=o+32|0;ca=o+28|0;da=o+24|0;ea=o+8|0;fa=o;ga=o+20|0;ha=o+16|0;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[o+172>>2]=j;c[t>>2]=k;c[u>>2]=l;c[v>>2]=m;g[w>>2]=n;c[x>>2]=c[(c[s>>2]|0)+(c[t>>2]<<2)>>2];c[A>>2]=c[(c[q>>2]|0)+4>>2];c[B>>2]=c[c[q>>2]>>2];c[C>>2]=c[(c[q>>2]|0)+48>>2];c[D>>2]=c[(c[q>>2]|0)+52>>2];c[E>>2]=c[(c[q>>2]|0)+56>>2];a[G>>0]=0;c[Z>>2]=-1;c[_>>2]=0;if((c[u>>2]|0)<=0){c[p>>2]=0;ia=c[p>>2]|0;i=o;return ia|0}cu(c[x>>2]|0,c[A>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,+g[w>>2]);c[S>>2]=c[(c[q>>2]|0)+28>>2];c[T>>2]=c[(c[q>>2]|0)+32>>2];c[U>>2]=c[(c[q>>2]|0)+36>>2];c[V>>2]=c[(c[q>>2]|0)+12>>2];c[Y>>2]=c[(c[q>>2]|0)+16>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[A>>2]|0))break;do if((c[y>>2]|0)>=(c[_>>2]|0)){c[Z>>2]=(c[Z>>2]|0)+1;if((c[Z>>2]|0)==(c[E>>2]|0)){c[_>>2]=c[A>>2];break}else{c[_>>2]=c[(c[D>>2]|0)+(c[Z>>2]<<2)>>2];break}}while(0);c[J>>2]=c[(c[C>>2]|0)+(c[y>>2]<<2)>>2];c[(c[Y>>2]|0)+(c[J>>2]<<2)>>2]=c[Z>>2];c[y>>2]=(c[y>>2]|0)+1}c[aa>>2]=c[(c[q>>2]|0)+40>>2];c[$>>2]=0;while(1){if((c[$>>2]|0)>=(c[u>>2]|0))break;if(!((a[G>>0]|0)!=0^1))break;a[G>>0]=1;g[I>>2]=-1.0e9;c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[A>>2]|0))break;g[M>>2]=+g[(c[x>>2]|0)+(c[(c[C>>2]|0)+(c[K>>2]<<2)>>2]<<2)>>2];g[ba>>2]=0.0;g[ca>>2]=+g[M>>2];g[(c[aa>>2]|0)+(c[(c[C>>2]|0)+(c[K>>2]<<2)>>2]<<2)>>2]=0.0;c[L>>2]=(c[K>>2]|0)+1;while(1){if((c[L>>2]|0)>=(c[A>>2]|0))break;if((c[(c[Y>>2]|0)+(c[L>>2]<<2)>>2]|0)>(c[(c[Y>>2]|0)+((c[L>>2]|0)-1<<2)>>2]|0)){g[ca>>2]=+g[ca>>2]+ +g[w>>2];g[ba>>2]=+g[ba>>2]+ +g[w>>2]}c[J>>2]=c[(c[C>>2]|0)+(c[L>>2]<<2)>>2];if(+N(+(+g[(c[x>>2]|0)+(c[J>>2]<<2)>>2]-+g[ca>>2]))>1.0e-09)break;g[(c[aa>>2]|0)+(c[J>>2]<<2)>>2]=+g[(c[x>>2]|0)+(c[J>>2]<<2)>>2]-+g[M>>2];c[L>>2]=(c[L>>2]|0)+1}c[y>>2]=c[K>>2];while(1){if((c[y>>2]|0)>=(c[L>>2]|0))break;c[J>>2]=c[(c[C>>2]|0)+(c[y>>2]<<2)>>2];g[F>>2]=-+g[(c[r>>2]|0)+(c[J>>2]<<2)>>2];c[R>>2]=c[(c[B>>2]|0)+(c[J>>2]<<2)>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[A>>2]|0))break;if((c[z>>2]|0)!=(c[J>>2]|0))g[F>>2]=+g[F>>2]+ +g[(c[R>>2]|0)+(c[z>>2]<<2)>>2]*+g[(c[x>>2]|0)+(c[z>>2]<<2)>>2];c[z>>2]=(c[z>>2]|0)+1}g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]=+g[F>>2]/-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]-+g[(c[aa>>2]|0)+(c[J>>2]<<2)>>2];c[y>>2]=(c[y>>2]|0)+1}c[W>>2]=0;c[X>>2]=0;c[y>>2]=c[K>>2];while(1){if((c[y>>2]|0)>=(c[L>>2]|0))break;c[Z>>2]=c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2];q=c[L>>2]|0;if((c[Z>>2]|0)==(c[E>>2]|0))c[X>>2]=q;else{if((q|0)<(c[(c[D>>2]|0)+(c[Z>>2]<<2)>>2]|0))ja=c[L>>2]|0;else ja=c[(c[D>>2]|0)+(c[Z>>2]<<2)>>2]|0;c[X>>2]=ja}c[z>>2]=c[y>>2];while(1){if((c[z>>2]|0)>=(c[X>>2]|0))break;c[J>>2]=c[(c[C>>2]|0)+(c[z>>2]<<2)>>2];if(+g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]<+g[M>>2]){q=c[J>>2]|0;_=c[W>>2]|0;c[W>>2]=_+1;c[(c[V>>2]|0)+(_<<2)>>2]=q}c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=c[y>>2];while(1){if((c[z>>2]|0)>=(c[X>>2]|0))break;c[J>>2]=c[(c[C>>2]|0)+(c[z>>2]<<2)>>2];if(+g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]==+g[M>>2]){q=c[J>>2]|0;_=c[W>>2]|0;c[W>>2]=_+1;c[(c[V>>2]|0)+(_<<2)>>2]=q}c[z>>2]=(c[z>>2]|0)+1}c[z>>2]=c[y>>2];while(1){if((c[z>>2]|0)>=(c[X>>2]|0))break;c[J>>2]=c[(c[C>>2]|0)+(c[z>>2]<<2)>>2];if(+g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]>+g[M>>2]){q=c[J>>2]|0;_=c[W>>2]|0;c[W>>2]=_+1;c[(c[V>>2]|0)+(_<<2)>>2]=q}c[z>>2]=(c[z>>2]|0)+1}c[y>>2]=c[X>>2]}g[O>>2]=0.0;g[P>>2]=0.0;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[W>>2]|0))break;c[J>>2]=c[(c[V>>2]|0)+(c[y>>2]<<2)>>2];g[Q>>2]=0.0;c[R>>2]=c[(c[B>>2]|0)+(c[J>>2]<<2)>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[y>>2]|0))break;g[Q>>2]=+g[Q>>2]-+g[(c[R>>2]|0)+(c[(c[V>>2]|0)+(c[z>>2]<<2)>>2]<<2)>>2];c[z>>2]=(c[z>>2]|0)+1}g[Q>>2]=+g[Q>>2]*2.0;g[O>>2]=(+g[P>>2]*+g[O>>2]+-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]*+g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]+ +g[Q>>2]*+g[M>>2])/(+g[P>>2]-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]+ +g[Q>>2]);g[(c[T>>2]|0)+(c[y>>2]<<2)>>2]=+g[O>>2];g[P>>2]=+g[P>>2]+(+g[Q>>2]-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]);c[y>>2]=(c[y>>2]|0)+1}if((c[W>>2]|0)==(c[A>>2]|0))g[(c[T>>2]|0)+((c[A>>2]|0)-1<<2)>>2]=+g[M>>2];g[O>>2]=0.0;g[P>>2]=0.0;c[y>>2]=(c[W>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;c[J>>2]=c[(c[V>>2]|0)+(c[y>>2]<<2)>>2];g[Q>>2]=0.0;c[R>>2]=c[(c[B>>2]|0)+(c[J>>2]<<2)>>2];c[z>>2]=(c[y>>2]|0)+1;while(1){if((c[z>>2]|0)>=(c[W>>2]|0))break;g[Q>>2]=+g[Q>>2]-+g[(c[R>>2]|0)+(c[(c[V>>2]|0)+(c[z>>2]<<2)>>2]<<2)>>2];c[z>>2]=(c[z>>2]|0)+1}g[Q>>2]=+g[Q>>2]*2.0;g[O>>2]=(+g[P>>2]*+g[O>>2]+-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]*+g[(c[S>>2]|0)+(c[J>>2]<<2)>>2]+ +g[Q>>2]*+g[M>>2])/(+g[P>>2]-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]+ +g[Q>>2]);g[(c[U>>2]|0)+(c[y>>2]<<2)>>2]=+g[O>>2];g[P>>2]=+g[P>>2]+(+g[Q>>2]-+g[(c[R>>2]|0)+(c[J>>2]<<2)>>2]);c[y>>2]=(c[y>>2]|0)+-1}if((c[W>>2]|0)==(c[A>>2]|0))g[c[U>>2]>>2]=+g[M>>2];c[da>>2]=-1;h[ea>>3]=0.0;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[W>>2]|0))break;g[ha>>2]=+g[(c[U>>2]|0)+(c[y>>2]<<2)>>2];if((c[y>>2]|0)>0)ka=+g[(c[T>>2]|0)+((c[y>>2]|0)-1<<2)>>2];else ka=+g[ha>>2];g[ga>>2]=ka;do if(+g[ha>>2]<+g[ga>>2]){q=+g[ga>>2]>+g[M>>2];if(!(+g[ha>>2]<+g[M>>2])){if(!q)break;g[ga>>2]=+g[ha>>2];break}if(q)g[ga>>2]=+g[M>>2];g[ha>>2]=+g[ga>>2]}while(0);n=+((c[W>>2]|0)-(c[y>>2]|0)|0)*+N(+(+g[ha>>2]-+g[M>>2]));h[fa>>3]=n+ +(c[y>>2]|0)*+N(+(+g[ga>>2]-+g[M>>2]));if(+h[fa>>3]>+h[ea>>3]){h[ea>>3]=+h[fa>>3];c[da>>2]=c[y>>2]}c[y>>2]=(c[y>>2]|0)+1}do if((c[da>>2]|0)>=0){g[ha>>2]=+g[(c[U>>2]|0)+(c[da>>2]<<2)>>2];if((c[da>>2]|0)>0)la=+g[(c[T>>2]|0)+((c[da>>2]|0)-1<<2)>>2];else la=+g[ha>>2];g[ga>>2]=la;do if((c[L>>2]|0)<(c[A>>2]|0)){n=+g[(c[x>>2]|0)+(c[(c[C>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2];if((c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2]|0)>(c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+((c[L>>2]|0)-1<<2)>>2]<<2)>>2]|0)){g[H>>2]=n-+g[w>>2]-+g[(c[aa>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2];break}else{g[H>>2]=n-+g[(c[aa>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2];break}}else g[H>>2]=1.0e9;while(0);g[ha>>2]=+g[ha>>2]<+g[H>>2]?+g[ha>>2]:+g[H>>2];g[ga>>2]=+g[ga>>2]>+g[I>>2]?+g[ga>>2]:+g[I>>2];do if(+g[ha>>2]<+g[ga>>2]){q=+g[ga>>2]>+g[M>>2];if(!(+g[ha>>2]<+g[M>>2])){if(!q)break;g[ga>>2]=+g[ha>>2];break}if(q)g[ga>>2]=+g[M>>2];g[ha>>2]=+g[ga>>2]}while(0);c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[da>>2]|0))break;g[(c[x>>2]|0)+(c[(c[V>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=+g[ga>>2]+ +g[(c[aa>>2]|0)+(c[(c[V>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2];c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=c[da>>2];while(1){if((c[y>>2]|0)>=(c[W>>2]|0))break;g[(c[x>>2]|0)+(c[(c[V>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=+g[ha>>2]+ +g[(c[aa>>2]|0)+(c[(c[V>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2];c[y>>2]=(c[y>>2]|0)+1}if((c[L>>2]|0)<(c[A>>2]|0)?(c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2]|0)>(c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+((c[L>>2]|0)-1<<2)>>2]<<2)>>2]|0):0)g[I>>2]=+g[(c[x>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2]+ +g[w>>2];else g[I>>2]=+g[(c[x>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2];c[y>>2]=c[K>>2];while(1){if((c[y>>2]|0)>=(c[L>>2]|0))break;c[(c[C>>2]|0)+(c[y>>2]<<2)>>2]=c[(c[V>>2]|0)+((c[y>>2]|0)-(c[K>>2]|0)<<2)>>2];c[y>>2]=(c[y>>2]|0)+1}if((d[G>>0]|0)!=0?+N(+(+g[ga>>2]-+g[M>>2]))<.01:0)ma=+N(+(+g[ha>>2]-+g[M>>2]))<.01;else ma=0;a[G>>0]=ma&1}else{if((c[L>>2]|0)<(c[A>>2]|0)?(c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+(c[L>>2]<<2)>>2]<<2)>>2]|0)>(c[(c[Y>>2]|0)+(c[(c[C>>2]|0)+((c[L>>2]|0)-1<<2)>>2]<<2)>>2]|0):0){g[I>>2]=+g[(c[x>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2]+ +g[w>>2];break}g[I>>2]=+g[(c[x>>2]|0)+(c[(c[V>>2]|0)+((c[W>>2]|0)-1<<2)>>2]<<2)>>2]}while(0);c[K>>2]=c[L>>2]}lt(c[A>>2]|0,c[x>>2]|0);bu(c[x>>2]|0,c[A>>2]|0,c[C>>2]|0,c[D>>2]|0,c[E>>2]|0,c[v>>2]|0);c[$>>2]=(c[$>>2]|0)+1}c[p>>2]=c[$>>2];ia=c[p>>2]|0;i=o;return ia|0}function $t(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[c[d>>2]>>2]>>2]|0);O4(c[c[d>>2]>>2]|0);O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[(c[d>>2]|0)+28>>2]|0);O4(c[(c[d>>2]|0)+32>>2]|0);O4(c[(c[d>>2]|0)+36>>2]|0);O4(c[(c[d>>2]|0)+40>>2]|0);O4(c[(c[d>>2]|0)+12>>2]|0);O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[(c[d>>2]|0)+20>>2]|0);O4(c[(c[d>>2]|0)+24>>2]|0);O4(c[d>>2]|0);i=b;return}function au(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;h=g+32|0;j=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[o>>2]=-1;c[p>>2]=0;c[q>>2]=cK(60)|0;c[c[q>>2]>>2]=0;c[(c[q>>2]|0)+4>>2]=c[j>>2];c[(c[q>>2]|0)+48>>2]=c[k>>2];c[(c[q>>2]|0)+52>>2]=c[l>>2];c[(c[q>>2]|0)+56>>2]=c[m>>2];f=Zt(c[h>>2]|0,c[j>>2]|0)|0;c[c[q>>2]>>2]=f;f=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+8>>2]=f;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[q>>2]|0)+4>>2]|0))break;if((c[n>>2]|0)>=(c[p>>2]|0)){c[o>>2]=(c[o>>2]|0)+1;if((c[o>>2]|0)==(c[m>>2]|0))r=c[(c[q>>2]|0)+4>>2]|0;else r=c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0;c[p>>2]=r}c[(c[(c[q>>2]|0)+8>>2]|0)+(c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[o>>2];c[n>>2]=(c[n>>2]|0)+1}n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+28>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+32>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+36>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+40>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+12>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+16>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+20>>2]=n;n=cK(c[j>>2]<<2)|0;c[(c[q>>2]|0)+24>>2]=n;i=g;return c[q>>2]|0}function bu(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+24|0;l=j+16|0;m=j+12|0;n=j+8|0;o=j+4|0;p=j;c[k>>2]=a;c[j+20>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=h;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[n>>2]|0))break;g[(c[o>>2]|0)+(c[p>>2]<<2)>>2]=+g[(c[k>>2]|0)+(c[(c[l>>2]|0)+((c[(c[m>>2]|0)+(c[p>>2]<<2)>>2]|0)-1<<2)>>2]<<2)>>2];c[p>>2]=(c[p>>2]|0)+1}i=j;return}function cu(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=+h;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;j=i;i=i+48|0;k=j+40|0;l=j+36|0;m=j+32|0;n=j+28|0;o=j+24|0;p=j+20|0;q=j+16|0;r=j+12|0;s=j+8|0;t=j+4|0;u=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;g[p>>2]=h;g[u>>2]=-1.0e9;c[s>>2]=-1;c[t>>2]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[l>>2]|0))break;if((c[q>>2]|0)>=(c[t>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;if((c[s>>2]|0)==(c[o>>2]|0))c[t>>2]=c[l>>2];else c[t>>2]=c[(c[n>>2]|0)+(c[s>>2]<<2)>>2];if((c[q>>2]|0)>0)v=+g[(c[k>>2]|0)+(c[(c[m>>2]|0)+((c[q>>2]|0)-1<<2)>>2]<<2)>>2]+ +g[p>>2];else v=-1.0e9;g[u>>2]=v;zs(c[k>>2]|0,c[m>>2]|0,c[q>>2]|0,(c[t>>2]|0)-1|0)}c[r>>2]=c[(c[m>>2]|0)+(c[q>>2]<<2)>>2];if(+g[(c[k>>2]|0)+(c[r>>2]<<2)>>2]<+g[u>>2])g[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=+g[u>>2];c[q>>2]=(c[q>>2]|0)+1}i=j;return}function du(){At(51764,24);c[12944]=0;return}function eu(){return Bt(51764)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+16|0;j=d+8|0;k=d;c[e>>2]=a;c[f>>2]=b;h[j>>3]=+h[c[e>>2]>>3]-+h[c[f>>2]>>3];h[k>>3]=+h[(c[e>>2]|0)+8>>3]-+h[(c[f>>2]|0)+8>>3];h[g>>3]=+O(+(+h[j>>3]*+h[j>>3]+ +h[k>>3]*+h[k>>3]));i=d;return +(+h[g>>3])}function gu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+16>>2]=c[12944];c[12944]=(c[12944]|0)+1;i=b;return}function hu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+20|0;c[a>>2]=(c[a>>2]|0)-1;if(c[(c[d>>2]|0)+20>>2]|0){i=b;return}Ct(c[d>>2]|0,51764);i=b;return}function iu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+20|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return}function ju(b,d,e,f,j){b=b|0;d=d|0;e=e|0;f=f|0;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;k=i;i=i+128|0;l=k+116|0;m=k+112|0;n=k+108|0;o=k+104|0;p=k+48|0;q=k+100|0;r=k+96|0;s=k+92|0;t=k+88|0;u=k+84|0;v=k+80|0;w=k+76|0;x=k+40|0;y=k+72|0;z=k+68|0;A=k+64|0;B=k+60|0;C=k+32|0;D=k+56|0;E=k+24|0;F=k+120|0;G=k+16|0;H=k+8|0;I=k;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;h[p>>3]=j;c[t>>2]=0;c[v>>2]=0;c[w>>2]=c[n>>2];c[y>>2]=0;c[z>>2]=c[o>>2];c[A>>2]=cK(c[m>>2]<<2)|0;c[D>>2]=cK(c[m>>2]<<3)|0;c[u>>2]=us(c[l>>2]|0,c[m>>2]|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;o=(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)|0;c[o>>2]=c[o>>2]<<8;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}if(!(c[w>>2]|0))La(131360,131368,283,131382);c[y>>2]=cK(c[m>>2]<<3)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[(c[y>>2]|0)+(c[r>>2]<<3)>>3]=+h[(c[w>>2]|0)+(c[r>>2]<<3)>>3];c[r>>2]=(c[r>>2]|0)+1}ku(c[y>>2]|0,c[m>>2]|0);h[H>>3]=0.0;h[G>>3]=0.0;c[r>>2]=1;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;j=1.0/+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)*+N(+(+h[(c[w>>2]|0)+(c[r>>2]<<3)>>3]-+h[(c[w>>2]|0)+(c[s>>2]<<3)>>3]));h[G>>3]=+h[G>>3]+j;j=1.0/+(_(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0,c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)|0);J=j*+N(+(+h[(c[w>>2]|0)+(c[r>>2]<<3)>>3]-+h[(c[w>>2]|0)+(c[s>>2]<<3)>>3]));j=J*+N(+(+h[(c[w>>2]|0)+(c[r>>2]<<3)>>3]-+h[(c[w>>2]|0)+(c[s>>2]<<3)>>3]));h[H>>3]=+h[H>>3]+j;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}h[x>>3]=+h[G>>3]/+h[H>>3];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;H=(c[w>>2]|0)+(c[r>>2]<<3)|0;h[H>>3]=+h[H>>3]*+h[x>>3];c[r>>2]=(c[r>>2]|0)+1}lu(c[l>>2]|0,c[m>>2]|0,1,z,+h[p>>3],c[w>>2]|0,c[u>>2]|0);c[v>>2]=cK((_(c[m>>2]|0,c[m>>2]|0)|0)<<2)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;l=(c[v>>2]|0)+((_(c[r>>2]|0,c[m>>2]|0)|0)<<2)|0;c[(c[A>>2]|0)+(c[r>>2]<<2)>>2]=l;g[B>>2]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;if((c[s>>2]|0)!=(c[r>>2]|0)){j=-1.0/(+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)*+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0));g[(c[(c[A>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]=j;g[B>>2]=+g[B>>2]-j}c[s>>2]=(c[s>>2]|0)+1}g[(c[(c[A>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[r>>2]<<2)>>2]=+g[B>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=1;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[C>>3]=+h[(c[w>>2]|0)+(c[r>>2]<<3)>>3];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;h[I>>3]=+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)*+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)-(+h[C>>3]-+h[(c[w>>2]|0)+(c[s>>2]<<3)>>3])*(+h[C>>3]-+h[(c[w>>2]|0)+(c[s>>2]<<3)>>3]);if(+h[I>>3]>0.0)K=~~+O(+(+h[I>>3]));else K=0;c[(c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]|0)+(c[r>>2]<<2)>>2]=K;c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]=K;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[C>>3]=+h[(c[z>>2]|0)+(c[r>>2]<<3)>>3];h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;do if((c[s>>2]|0)!=(c[r>>2]|0)){j=+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)*-+g[(c[(c[A>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2];K=(c[D>>2]|0)+(c[r>>2]<<3)|0;J=+h[K>>3];if(+h[C>>3]>=+h[(c[z>>2]|0)+(c[s>>2]<<3)>>3]){h[K>>3]=J+j;break}else{h[K>>3]=J-j;break}}while(0);c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}a[F>>0]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=200)break;if(!((a[F>>0]|0)!=0^1))break;if((Sq(c[A>>2]|0,c[z>>2]|0,c[D>>2]|0,c[m>>2]|0,+h[p>>3],c[m>>2]|0,1)|0)<0){L=51;break}a[F>>0]=1;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[C>>3]=+h[(c[z>>2]|0)+(c[r>>2]<<3)>>3];h[E>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;do if((c[s>>2]|0)!=(c[r>>2]|0)){j=+(c[(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]|0)*-+g[(c[(c[A>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2];J=+h[E>>3];if(+h[C>>3]>=+h[(c[z>>2]|0)+(c[s>>2]<<3)>>3]){h[E>>3]=J+j;break}else{h[E>>3]=J-j;break}}while(0);c[s>>2]=(c[s>>2]|0)+1}if(+h[E>>3]!=+h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]?+N(+(1.0-+h[E>>3]/+h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]))>1.0e-05:0){a[F>>0]=0;h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]=+h[E>>3]}c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}if((L|0)==51){c[t>>2]=1;M=c[u>>2]|0;P=c[M>>2]|0;O4(P);Q=c[u>>2]|0;O4(Q);R=c[A>>2]|0;S=c[R>>2]|0;O4(S);T=c[A>>2]|0;O4(T);U=c[y>>2]|0;O4(U);V=c[D>>2]|0;O4(V);W=c[t>>2]|0;i=k;return W|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;L=(c[w>>2]|0)+(c[r>>2]<<3)|0;h[L>>3]=+h[L>>3]/+h[x>>3];L=(c[z>>2]|0)+(c[r>>2]<<3)|0;h[L>>3]=+h[L>>3]/+h[x>>3];c[r>>2]=(c[r>>2]|0)+1}M=c[u>>2]|0;P=c[M>>2]|0;O4(P);Q=c[u>>2]|0;O4(Q);R=c[A>>2]|0;S=c[R>>2]|0;O4(S);T=c[A>>2]|0;O4(T);U=c[y>>2]|0;O4(U);V=c[D>>2]|0;O4(V);W=c[t>>2]|0;i=k;return W|0}function ku(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+8|0;j=d;k=d+16|0;c[e>>2]=a;c[f>>2]=b;h[j>>3]=0.0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[j>>3]=+h[j>>3]+ +h[(c[e>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}h[j>>3]=+h[j>>3]/+(c[f>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;b=(c[e>>2]|0)+(c[k>>2]<<3)|0;h[b>>3]=+h[b>>3]-+h[j>>3];c[k>>2]=(c[k>>2]|0)+1}h[g>>3]=+Vs(c[e>>2]|0,0,(c[f>>2]|0)-1|0);Ws(c[e>>2]|0,0,(c[f>>2]|0)-1|0,1.0/+h[g>>3],c[e>>2]|0);i=d;return}function lu(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+64|0;l=k+44|0;m=k+40|0;n=k+36|0;o=k;p=k+32|0;q=k+28|0;r=k+24|0;s=k+20|0;t=k+16|0;u=k+12|0;v=k+8|0;c[k+48>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;h[o>>3]=f;c[p>>2]=g;c[q>>2]=j;c[t>>2]=mu(c[q>>2]|0,c[l>>2]|0)|0;c[u>>2]=cK(c[m>>2]<<3)|0;c[v>>2]=0;if(c[p>>2]|0){c[v>>2]=cK(c[l>>2]<<3)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[l>>2]|0))break;h[(c[v>>2]|0)+(c[r>>2]<<3)>>3]=+h[(c[p>>2]|0)+(c[r>>2]<<3)>>3];c[r>>2]=(c[r>>2]|0)+1}ku(c[v>>2]|0,c[l>>2]|0)}nu(c[t>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[u>>2]|0,c[v>>2]|0,+h[o>>3]);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;c[s>>2]=0;while(1){w=c[r>>2]|0;if((c[s>>2]|0)>=(c[l>>2]|0))break;f=+O(+(+N(+(+h[(c[u>>2]|0)+(w<<3)>>3]))));o=(c[(c[n>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<3)|0;h[o>>3]=+h[o>>3]*f;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=w+1}O4(c[c[t>>2]>>2]|0);O4(c[t>>2]|0);O4(c[u>>2]|0);O4(c[v>>2]|0);i=k;return}function mu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=a;c[f>>2]=b;c[k>>2]=cK((_(c[f>>2]|0,c[f>>2]|0)|0)<<2)|0;c[l>>2]=cK(c[f>>2]<<2)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;b=(c[k>>2]|0)+((_(c[h>>2]|0,c[f>>2]|0)|0)<<2)|0;c[(c[l>>2]|0)+(c[h>>2]<<2)>>2]=b;c[h>>2]=(c[h>>2]|0)+1}c[m>>2]=pu(c[e>>2]|0,c[f>>2]|0,n)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;c[j>>2]=0;while(1){if((c[j>>2]|0)>(c[h>>2]|0))break;g[(c[(c[l>>2]|0)+(c[h>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]=-+(c[(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0)*+(c[(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0)+ +g[(c[m>>2]|0)+(c[h>>2]<<2)>>2]+ +g[(c[m>>2]|0)+(c[j>>2]<<2)>>2]-+g[n>>2];g[(c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[h>>2]<<2)>>2]=+g[(c[(c[l>>2]|0)+(c[h>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1}O4(c[m>>2]|0);i=d;return c[l>>2]|0}function nu(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+112|0;l=k+96|0;m=k+92|0;n=k+88|0;o=k+84|0;p=k+80|0;q=k+76|0;r=k+40|0;s=k+72|0;t=k+68|0;u=k+64|0;v=k+60|0;w=k+56|0;x=k+32|0;y=k+24|0;z=k+16|0;A=k+52|0;B=k+48|0;C=k+8|0;D=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;h[r>>3]=j;c[u>>2]=cK(c[m>>2]<<3)|0;c[v>>2]=cK(c[m>>2]<<3)|0;h[D>>3]=1.0-+h[r>>3];if((c[n>>2]|0)>=(c[m>>2]|0))c[n>>2]=c[m>>2];c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[w>>2]=c[(c[o>>2]|0)+(c[s>>2]<<2)>>2];do{c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[m>>2]|0))break;j=+((t2()|0)%100|0|0);h[(c[w>>2]|0)+(c[t>>2]<<3)>>3]=j;c[t>>2]=(c[t>>2]|0)+1}if(c[q>>2]|0){h[z>>3]=-+Ts(c[q>>2]|0,0,(c[m>>2]|0)-1|0,c[w>>2]|0);Us(c[w>>2]|0,0,(c[m>>2]|0)-1|0,+h[z>>3],c[q>>2]|0)}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;h[z>>3]=-+Ts(c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0,0,(c[m>>2]|0)-1|0,c[w>>2]|0);Us(c[w>>2]|0,0,(c[m>>2]|0)-1|0,+h[z>>3],c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0);c[t>>2]=(c[t>>2]|0)+1}h[x>>3]=+Vs(c[w>>2]|0,0,(c[m>>2]|0)-1|0)}while(+h[x>>3]<1.0e-10);Ws(c[w>>2]|0,0,(c[m>>2]|0)-1|0,1.0/+h[x>>3],c[w>>2]|0);c[A>>2]=0;do{c[A>>2]=(c[A>>2]|0)+1;Xs(c[v>>2]|0,0,(c[m>>2]|0)-1|0,c[w>>2]|0);ou(c[l>>2]|0,c[m>>2]|0,c[m>>2]|0,c[w>>2]|0,c[u>>2]|0,c[q>>2]|0);Xs(c[w>>2]|0,0,(c[m>>2]|0)-1|0,c[u>>2]|0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;h[z>>3]=-+Ts(c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0,0,(c[m>>2]|0)-1|0,c[w>>2]|0);Us(c[w>>2]|0,0,(c[m>>2]|0)-1|0,+h[z>>3],c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0);c[t>>2]=(c[t>>2]|0)+1}h[x>>3]=+Vs(c[w>>2]|0,0,(c[m>>2]|0)-1|0);if(+h[x>>3]<1.0e-10)break a;Ws(c[w>>2]|0,0,(c[m>>2]|0)-1|0,1.0/+h[x>>3],c[w>>2]|0);h[y>>3]=+Ts(c[w>>2]|0,0,(c[m>>2]|0)-1|0,c[v>>2]|0);j=+N(+(+h[y>>3]))}while(j<+h[D>>3]);h[(c[p>>2]|0)+(c[s>>2]<<3)>>3]=+h[y>>3]*+h[x>>3];c[s>>2]=(c[s>>2]|0)+1}while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;c[w>>2]=c[(c[o>>2]|0)+(c[s>>2]<<2)>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[m>>2]|0))break;j=+((t2()|0)%100|0|0);h[(c[w>>2]|0)+(c[t>>2]<<3)>>3]=j;c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;h[z>>3]=-+Ts(c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0,0,(c[m>>2]|0)-1|0,c[w>>2]|0);Us(c[w>>2]|0,0,(c[m>>2]|0)-1|0,+h[z>>3],c[(c[o>>2]|0)+(c[t>>2]<<2)>>2]|0);c[t>>2]=(c[t>>2]|0)+1}h[x>>3]=+Vs(c[w>>2]|0,0,(c[m>>2]|0)-1|0);Ws(c[w>>2]|0,0,(c[m>>2]|0)-1|0,1.0/+h[x>>3],c[w>>2]|0);h[(c[p>>2]|0)+(c[s>>2]<<3)>>3]=0.0;c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=((c[n>>2]|0)-1|0))break;c[B>>2]=c[s>>2];h[C>>3]=+h[(c[p>>2]|0)+(c[B>>2]<<3)>>3];c[t>>2]=(c[s>>2]|0)+1;while(1){if((c[t>>2]|0)>=(c[n>>2]|0))break;if(+h[C>>3]<+h[(c[p>>2]|0)+(c[t>>2]<<3)>>3]){c[B>>2]=c[t>>2];h[C>>3]=+h[(c[p>>2]|0)+(c[B>>2]<<3)>>3]}c[t>>2]=(c[t>>2]|0)+1}if((c[B>>2]|0)!=(c[s>>2]|0)){Xs(c[u>>2]|0,0,(c[m>>2]|0)-1|0,c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]|0);Xs(c[(c[o>>2]|0)+(c[s>>2]<<2)>>2]|0,0,(c[m>>2]|0)-1|0,c[(c[o>>2]|0)+(c[B>>2]<<2)>>2]|0);Xs(c[(c[o>>2]|0)+(c[B>>2]<<2)>>2]|0,0,(c[m>>2]|0)-1|0,c[u>>2]|0);h[(c[p>>2]|0)+(c[B>>2]<<3)>>3]=+h[(c[p>>2]|0)+(c[s>>2]<<3)>>3];h[(c[p>>2]|0)+(c[s>>2]<<3)>>3]=+h[C>>3]}c[s>>2]=(c[s>>2]|0)+1}O4(c[u>>2]|0);O4(c[v>>2]|0);i=k;return}function ou(a,b,d,e,f,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=i;i=i+48|0;l=k+44|0;m=k+40|0;n=k+36|0;o=k+32|0;p=k+28|0;q=k+24|0;r=k+20|0;s=k+16|0;t=k+8|0;u=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=j;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[t>>3]=0.0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>2]|0))break;h[t>>3]=+h[t>>3]+ +g[(c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]*+h[(c[o>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}h[(c[p>>2]|0)+(c[r>>2]<<3)>>3]=+h[t>>3];c[r>>2]=(c[r>>2]|0)+1}if(!(c[q>>2]|0)){i=k;return}h[u>>3]=-+Ts(c[p>>2]|0,0,(c[m>>2]|0)-1|0,c[q>>2]|0);Us(c[p>>2]|0,0,(c[m>>2]|0)-1|0,+h[u>>3],c[q>>2]|0);i=k;return}function pu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;e=i;i=i+48|0;f=e+36|0;j=e+32|0;k=e+28|0;l=e+24|0;m=e+20|0;n=e+16|0;o=e+8|0;p=e;c[f>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=cK(c[j>>2]<<2)|0;h[o>>3]=0.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;h[p>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;h[o>>3]=+h[o>>3]+ +(c[(c[(c[f>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<2)>>2]|0)*+(c[(c[(c[f>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<2)>>2]|0);h[p>>3]=+h[p>>3]+ +(c[(c[(c[f>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<2)>>2]|0)*+(c[(c[(c[f>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}g[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=+h[p>>3]/+(c[j>>2]|0);c[m>>2]=(c[m>>2]|0)+1}q=+h[o>>3]/+(_(c[j>>2]|0,c[j>>2]|0)|0);g[c[k>>2]>>2]=q;i=e;return c[l>>2]|0}function qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0;f=i;i=i+96|0;g=f+24|0;j=f+92|0;k=f+88|0;l=f+84|0;m=f+80|0;n=f+76|0;o=f+72|0;p=f+16|0;q=f+8|0;r=f;s=f+68|0;t=f+64|0;u=f+60|0;v=f+56|0;w=f+52|0;x=f+48|0;y=f+44|0;z=f+40|0;A=f+36|0;B=f+32|0;C=f+28|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[y>>2]=0;c[B>>2]=_(c[m>>2]|0,c[m>>2]|0)|0;c[n>>2]=cK(c[B>>2]<<3)|0;c[o>>2]=cK(c[m>>2]<<3)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;h[(c[o>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[l>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[B>>2]|0))break;h[(c[n>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[A>>2]=(c[m>>2]|0)-1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[A>>2]|0)){D=25;break}h[p>>3]=0.0;c[t>>2]=c[s>>2];while(1){if((c[t>>2]|0)>=(c[m>>2]|0))break;e=_(c[t>>2]|0,c[m>>2]|0)|0;h[q>>3]=+N(+(+h[(c[j>>2]|0)+(e+(c[s>>2]|0)<<3)>>3]));if(!(+h[q>>3]<+h[p>>3])){c[y>>2]=c[t>>2];h[p>>3]=+h[q>>3]}c[t>>2]=(c[t>>2]|0)+1}if(+h[p>>3]<1.0e-10)break;c[u>>2]=c[s>>2];while(1){E=c[y>>2]|0;if((c[u>>2]|0)>=(c[m>>2]|0))break;e=_(E,c[m>>2]|0)|0;c[C>>2]=e+(c[u>>2]|0);h[q>>3]=+h[(c[j>>2]|0)+(c[C>>2]<<3)>>3];e=_(c[s>>2]|0,c[m>>2]|0)|0;h[(c[j>>2]|0)+(c[C>>2]<<3)>>3]=+h[(c[j>>2]|0)+(e+(c[u>>2]|0)<<3)>>3];e=_(c[s>>2]|0,c[m>>2]|0)|0;h[(c[j>>2]|0)+(e+(c[u>>2]|0)<<3)>>3]=+h[q>>3];c[u>>2]=(c[u>>2]|0)+1}h[q>>3]=+h[(c[l>>2]|0)+(E<<3)>>3];h[(c[l>>2]|0)+(c[y>>2]<<3)>>3]=+h[(c[l>>2]|0)+(c[s>>2]<<3)>>3];h[(c[l>>2]|0)+(c[s>>2]<<3)>>3]=+h[q>>3];c[z>>2]=(c[s>>2]|0)+1;c[t>>2]=c[z>>2];while(1){if((c[t>>2]|0)>=(c[m>>2]|0))break;e=_(c[t>>2]|0,c[m>>2]|0)|0;d=_(c[s>>2]|0,c[m>>2]|0)|0;h[r>>3]=+h[(c[j>>2]|0)+(e+(c[s>>2]|0)<<3)>>3]/+h[(c[j>>2]|0)+(d+(c[s>>2]|0)<<3)>>3];h[(c[l>>2]|0)+(c[t>>2]<<3)>>3]=+h[(c[l>>2]|0)+(c[t>>2]<<3)>>3]-+h[r>>3]*+h[(c[l>>2]|0)+(c[s>>2]<<3)>>3];c[u>>2]=0;while(1){F=c[t>>2]|0;if((c[u>>2]|0)>=(c[m>>2]|0))break;d=_(F,c[m>>2]|0)|0;e=_(c[s>>2]|0,c[m>>2]|0)|0;b=_(c[t>>2]|0,c[m>>2]|0)|0;h[(c[j>>2]|0)+(b+(c[u>>2]|0)<<3)>>3]=+h[(c[j>>2]|0)+(d+(c[u>>2]|0)<<3)>>3]-+h[r>>3]*+h[(c[j>>2]|0)+(e+(c[u>>2]|0)<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=F+1}c[s>>2]=(c[s>>2]|0)+1}if((D|0)==25?(D=(_(c[m>>2]|0,c[m>>2]|0)|0)-1|0,!(+N(+(+h[(c[j>>2]|0)+(D<<3)>>3]))<1.0e-10)):0){D=(_(c[m>>2]|0,c[m>>2]|0)|0)-1|0;h[(c[k>>2]|0)+((c[m>>2]|0)-1<<3)>>3]=+h[(c[l>>2]|0)+((c[m>>2]|0)-1<<3)>>3]/+h[(c[j>>2]|0)+(D<<3)>>3];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[A>>2]|0))break;c[w>>2]=(c[m>>2]|0)-(c[v>>2]|0)-2;h[(c[k>>2]|0)+(c[w>>2]<<3)>>3]=+h[(c[l>>2]|0)+(c[w>>2]<<3)>>3];c[x>>2]=(c[w>>2]|0)+1;c[u>>2]=c[x>>2];while(1){G=+h[(c[k>>2]|0)+(c[w>>2]<<3)>>3];H=_(c[w>>2]|0,c[m>>2]|0)|0;if((c[u>>2]|0)>=(c[m>>2]|0))break;h[(c[k>>2]|0)+(c[w>>2]<<3)>>3]=G-+h[(c[j>>2]|0)+(H+(c[u>>2]|0)<<3)>>3]*+h[(c[k>>2]|0)+(c[u>>2]<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}h[(c[k>>2]|0)+(c[w>>2]<<3)>>3]=G/+h[(c[j>>2]|0)+(H+(c[w>>2]|0)<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[m>>2]|0))break;h[(c[l>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[o>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[B>>2]|0))break;h[(c[j>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[n>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}O4(c[n>>2]|0);O4(c[o>>2]|0);i=f;return}i3(131397,g)|0;O4(c[n>>2]|0);O4(c[o>>2]|0);i=f;return}function ru(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=i;i=i+96|0;f=e+80|0;g=e+76|0;j=e+72|0;k=e+68|0;l=e+64|0;m=e+60|0;n=e+56|0;o=e+16|0;p=e+88|0;q=e+52|0;r=e+48|0;s=e+44|0;t=e+40|0;u=e+36|0;v=e+32|0;w=e;c[e+84>>2]=b;c[f>>2]=d;Hr();du();$r();c[12940]=Qb[c[f>>2]&7]()|0;cs();c[g>>2]=Qb[c[f>>2]&7]()|0;a:while(1){if(!(Xr()|0)){Yr(w);c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2]}do if(c[g>>2]|0){if((Xr()|0)==0?!(+h[(c[g>>2]|0)+8>>3]<+h[o+8>>3]):0){if(!(+h[(c[g>>2]|0)+8>>3]==+h[o+8>>3]))break;if(!(+h[c[g>>2]>>3]<+h[o>>3]))break}c[q>>2]=hs(c[g>>2]|0)|0;c[r>>2]=js(c[q>>2]|0)|0;c[j>>2]=ms(c[q>>2]|0)|0;c[v>>2]=Ir(c[j>>2]|0,c[g>>2]|0)|0;c[u>>2]=ds(c[v>>2]|0,0)|0;gs(c[q>>2]|0,c[u>>2]|0);d=es(c[q>>2]|0,c[u>>2]|0)|0;c[m>>2]=d;if(d){Wr(c[q>>2]|0);d=c[q>>2]|0;b=c[m>>2]|0;Vr(d,b,+fu(c[m>>2]|0,c[g>>2]|0))}c[q>>2]=c[u>>2];c[u>>2]=ds(c[v>>2]|0,1)|0;gs(c[q>>2]|0,c[u>>2]|0);b=es(c[u>>2]|0,c[r>>2]|0)|0;c[m>>2]=b;if(b){b=c[u>>2]|0;d=c[m>>2]|0;Vr(b,d,+fu(c[m>>2]|0,c[g>>2]|0))}c[g>>2]=Qb[c[f>>2]&7]()|0;continue a}while(0);if(Xr()|0)break;c[q>>2]=Zr()|0;c[s>>2]=ks(c[q>>2]|0)|0;c[r>>2]=js(c[q>>2]|0)|0;c[t>>2]=js(c[r>>2]|0)|0;c[j>>2]=ls(c[q>>2]|0)|0;c[k>>2]=ms(c[r>>2]|0)|0;c[n>>2]=c[(c[q>>2]|0)+20>>2];gu(c[n>>2]|0);Kr(c[(c[q>>2]|0)+8>>2]|0,a[(c[q>>2]|0)+16>>0]|0,c[n>>2]|0);Kr(c[(c[r>>2]|0)+8>>2]|0,a[(c[r>>2]|0)+16>>0]|0,c[n>>2]|0);is(c[q>>2]|0);Wr(c[r>>2]|0);is(c[r>>2]|0);a[p>>0]=0;if(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3]){c[l>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[l>>2];a[p>>0]=1}c[v>>2]=Ir(c[j>>2]|0,c[k>>2]|0)|0;c[u>>2]=ds(c[v>>2]|0,a[p>>0]|0)|0;gs(c[s>>2]|0,c[u>>2]|0);Kr(c[v>>2]|0,1-(a[p>>0]|0)|0,c[n>>2]|0);hu(c[n>>2]|0);d=es(c[s>>2]|0,c[u>>2]|0)|0;c[m>>2]=d;if(d){Wr(c[s>>2]|0);d=c[s>>2]|0;b=c[m>>2]|0;Vr(d,b,+fu(c[m>>2]|0,c[j>>2]|0))}b=es(c[u>>2]|0,c[t>>2]|0)|0;c[m>>2]=b;if(!b)continue;b=c[u>>2]|0;d=c[m>>2]|0;Vr(b,d,+fu(c[m>>2]|0,c[j>>2]|0))}c[q>>2]=js(c[12881]|0)|0;while(1){if((c[q>>2]|0)==(c[12882]|0))break;c[v>>2]=c[(c[q>>2]|0)+8>>2];Jr(c[v>>2]|0);c[q>>2]=js(c[q>>2]|0)|0}i=e;return}function su(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;c[j>>2]=b;c[k>>2]=d;d=(kB(c[j>>2]|0)|0)==1;b=c[j>>2]|0;if(d){c[m>>2]=$B(b)|0;h[c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]>>3]=0.0;h[(c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=0.0;c[g>>2]=c[k>>2];n=c[g>>2]|0;i=e;return n|0}tu(b);if(!(c[k>>2]|0))c[k>>2]=uu(c[j>>2]|0)|0;if(a[138998]|0){b=c[24742]|0;c[f>>2]=wB(c[k>>2]|0)|0;Y2(b,133871,f)|0}c[l>>2]=vu(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)<0){$z(1,131414,e+8|0)|0;c[g>>2]=c[k>>2];n=c[g>>2]|0;i=e;return n|0}else{wu(c[j>>2]|0);xu(c[j>>2]|0,c[k>>2]|0);yu(c[j>>2]|0,c[k>>2]|0);zu(c[j>>2]|0,c[l>>2]|0);c[g>>2]=c[k>>2];n=c[g>>2]|0;i=e;return n|0}return 0}function tu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[f>>2]=kB(c[d>>2]|0)|0;c[g>>2]=_(c[f>>2]|0,c[f>>2]|0)|0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]=c[g>>2];h[(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]=10.0;if(Hu(c[d>>2]|0,c[e>>2]|0)|0)c[c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]>>2]=0;else c[c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]>>2]=c[g>>2];c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function uu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[g>>2]=0;c[h>>2]=0;a=(kB(c[e>>2]|0)|0)<=2;j=$B(c[e>>2]|0)|0;if(a){c[d>>2]=j;k=c[d>>2]|0;i=b;return k|0}c[f>>2]=j;while(1){if(!(c[f>>2]|0))break;if(!(c[c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]>>2]|0))Gu(c[e>>2]|0,c[f>>2]|0,0);c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if((c[c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]>>2]|0)>>>0>(c[h>>2]|0)>>>0){c[h>>2]=c[c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]>>2];c[g>>2]=c[f>>2]}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[d>>2]=c[g>>2];k=c[d>>2]|0;i=b;return k|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=0;c[k>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2];c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]=0;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=0;Du(c[f>>2]|0,c[g>>2]|0);c[h>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0)){l=8;break}if((c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)==(c[k>>2]|0)){l=4;break}if((c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)>>>0>(c[j>>2]|0)>>>0)c[j>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2];c[h>>2]=aC(c[f>>2]|0,c[h>>2]|0)|0}if((l|0)==4){c[e>>2]=-1;m=c[e>>2]|0;i=d;return m|0}else if((l|0)==8){c[e>>2]=c[j>>2];m=c[e>>2]|0;i=d;return m|0}return 0}function wu(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;a:do if((c[(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)>>>0<=0){a=(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;c[f>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2];while(1){if(!(c[f>>2]|0))break a;a=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;c[f>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]}}while(0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;h[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]=6.283185307179586;Cu(c[e>>2]|0,c[f>>2]|0);i=d;return}function yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;h[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]=0.0;Bu(c[e>>2]|0,c[f>>2]|0);i=d;return}function zu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;e=i;i=i+48|0;f=e+8|0;g=e+32|0;j=e+28|0;k=e+24|0;l=e;m=e+20|0;n=e+16|0;c[g>>2]=b;c[j>>2]=d;c[m>>2]=Au(c[g>>2]|0,c[j>>2]|0)|0;if(a[138998]|0){_2(131470,c[24742]|0)|0;c[n>>2]=0;while(1){o=c[24742]|0;if((c[n>>2]|0)>(c[j>>2]|0))break;h[f>>3]=+h[(c[m>>2]|0)+(c[n>>2]<<3)>>3];Y2(o,131489,f)|0;c[n>>2]=(c[n>>2]|0)+1}_2(193392,o)|0}c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;h[l>>3]=+h[(c[m>>2]|0)+(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]<<3)>>3];p=+h[l>>3]*+Q(+(+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]));h[c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]>>3]=p;p=+h[l>>3]*+R(+(+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]));h[(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=p;c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}O4(c[m>>2]|0);i=e;return}function Au(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;j=e+40|0;k=e+36|0;l=e+52|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+16|0;q=e+8|0;r=e;c[f>>2]=b;c[g>>2]=d;c[n>>2]=1;c[o>>2]=bK((c[g>>2]|0)+1<<3)|0;h[p>>3]=0.0;d=c[f>>2]|0;b=hO(d,qA(c[(c[f>>2]|0)+48>>2]|0,0,139080,0)|0,0)|0;c[j>>2]=b;a:do if(b)b:while(1){if((c[n>>2]|0)>(c[g>>2]|0))break a;s=+x3(c[j>>2]|0,k);h[r>>3]=s;if(!(s>0.0))break a;h[q>>3]=+h[r>>3]>.02?+h[r>>3]:.02;h[p>>3]=+h[p>>3]+ +h[q>>3];s=+h[p>>3];f=c[n>>2]|0;c[n>>2]=f+1;h[(c[o>>2]|0)+(f<<3)>>3]=s;c[j>>2]=c[k>>2];while(1){f=a[c[j>>2]>>0]|0;a[l>>0]=f;if(!(f<<24>>24))continue b;if((r1(a[l>>0]|0)|0)==0?(a[l>>0]|0)!=58:0)continue b;c[j>>2]=(c[j>>2]|0)+1}}else h[q>>3]=1.0;while(0);c[m>>2]=c[n>>2];while(1){if((c[m>>2]|0)>(c[g>>2]|0))break;h[p>>3]=+h[p>>3]+ +h[q>>3];h[(c[o>>2]|0)+(c[m>>2]<<3)>>3]=+h[p>>3];c[m>>2]=(c[m>>2]|0)+1}i=e;return c[o>>2]|0}function Bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;j=d+8|0;k=d;c[e>>2]=a;c[f>>2]=b;if(!(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]|0))h[k>>3]=0.0;else h[k>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]-+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]/2.0;c[j>>2]=TA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;b=c[j>>2]|0;a=c[((c[c[j>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0;c[g>>2]=a;if((a|0)==(c[f>>2]|0)){a=c[j>>2]|0;c[g>>2]=c[((c[c[j>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]}if(((c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]|0)==(c[f>>2]|0)?!(+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]!=10.0):0)?(h[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+32>>3]=+h[k>>3]+ +h[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]/2.0,h[k>>3]=+h[k>>3]+ +h[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3],(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)>>>0>0):0)Bu(c[e>>2]|0,c[g>>2]|0);c[j>>2]=UA(c[e>>2]|0,c[j>>2]|0,c[f>>2]|0)|0}i=d;return}function Cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;j=d+8|0;k=d;c[e>>2]=a;c[f>>2]=b;h[k>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]/+((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]|0)>>>0);c[g>>2]=TA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;b=c[g>>2]|0;a=c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0;c[j>>2]=a;if((a|0)==(c[f>>2]|0)){a=c[g>>2]|0;c[j>>2]=c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]}if(((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]|0)==(c[f>>2]|0)?!(+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]!=0.0):0)?(h[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+24>>3]=+h[k>>3]*+((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]|0)>>>0),(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)>>>0>0):0)Cu(c[e>>2]|0,c[j>>2]|0);c[g>>2]=UA(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0)|0}i=d;return}function Du(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=b;c[g>>2]=d;c[k>>2]=qA(c[f>>2]|0,2,139333,0)|0;c[m>>2]=l;c[l+4>>2]=0;c[l>>2]=0;Eu(c[m>>2]|0,c[g>>2]|0);a:while(1){l=Fu(c[m>>2]|0)|0;c[g>>2]=l;if(!l)break;c[n>>2]=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)+1;c[j>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))continue a;if(!(((c[k>>2]|0)!=0?(l=a[(zA(c[j>>2]|0,c[k>>2]|0)|0)>>0]|0,(l|0)==(a[176099]|0)):0)?(J3(zA(c[j>>2]|0,c[k>>2]|0)|0,176099)|0)==0:0)){l=c[j>>2]|0;d=c[((c[c[j>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0;c[h>>2]=d;if((d|0)==(c[g>>2]|0)){d=c[j>>2]|0;c[h>>2]=c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]}if((c[n>>2]|0)>>>0<(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)>>>0){c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]=c[n>>2];c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=c[g>>2];d=(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+1;Eu(c[m>>2]|0,c[h>>2]|0)}}c[j>>2]=UA(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|0}}i=e;return}function Eu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=bK(8)|0;c[c[g>>2]>>2]=c[f>>2];f=c[g>>2]|0;b=c[e>>2]|0;if(c[(c[e>>2]|0)+4>>2]|0){c[(c[b+4>>2]|0)+4>>2]=f;c[(c[e>>2]|0)+4>>2]=c[g>>2];i=d;return}else{c[b>>2]=f;c[(c[e>>2]|0)+4>>2]=f;i=d;return}}function Fu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;a=c[c[e>>2]>>2]|0;c[f>>2]=a;if(!a){c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}c[g>>2]=c[c[f>>2]>>2];c[c[e>>2]>>2]=c[(c[f>>2]|0)+4>>2];O4(c[f>>2]|0);if(!(c[c[e>>2]>>2]|0))c[(c[e>>2]|0)+4>>2]=0;c[d>>2]=c[g>>2];h=c[d>>2]|0;i=b;return h|0}function Gu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=(c[c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]>>2]|0)+1;c[k>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;d=c[k>>2]|0;b=c[((c[c[k>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0;c[j>>2]=b;if((b|0)==(c[g>>2]|0)){b=c[k>>2]|0;c[j>>2]=c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]}if((c[h>>2]|0)!=(c[j>>2]|0)?(c[l>>2]|0)>>>0<(c[c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]>>2]|0)>>>0:0){c[c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]>>2]=c[l>>2];Gu(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)}c[k>>2]=UA(c[f>>2]|0,c[k>>2]|0,c[g>>2]|0)|0}i=e;return}function Hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=0;c[h>>2]=TA(c[f>>2]|0,c[g>>2]|0)|0;a:while(1){if(!(c[h>>2]|0)){l=11;break}b=c[h>>2]|0;a=c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0;c[k>>2]=a;if((a|0)==(c[g>>2]|0)){a=c[h>>2]|0;c[k>>2]=c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]}do if((c[g>>2]|0)!=(c[k>>2]|0))if(c[j>>2]|0)if((c[j>>2]|0)!=(c[k>>2]|0)){l=8;break a}else break;else{c[j>>2]=c[k>>2];break}while(0);c[h>>2]=UA(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0}if((l|0)==8){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}else if((l|0)==11){c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}return 0}function Iu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;b=i;i=i+64|0;d=b+56|0;e=b+52|0;f=b+48|0;g=b+44|0;j=b+40|0;k=b+32|0;l=b;c[d>>2]=a;c[f>>2]=qA(c[d>>2]|0,1,131497,0)|0;c[g>>2]=qA(c[d>>2]|0,0,131497,0)|0;c[j>>2]=qA(c[d>>2]|0,0,131502,0)|0;c[e>>2]=Ju(c[d>>2]|0,c[g>>2]|0,c[f>>2]|0,c[j>>2]|0)|0;h[k>>3]=+h[c[e>>2]>>3];j=(c[e>>2]|0)+16|0;m=+O(+(+h[k>>3]+.1));Tu(l,0.0,0.0,m,+O(+(+h[k>>3]+.1)));c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2];c[j+16>>2]=c[l+16>>2];c[j+20>>2]=c[l+20>>2];c[j+24>>2]=c[l+24>>2];c[j+28>>2]=c[l+28>>2];Ku(c[e>>2]|0);Lu(c[e>>2]|0);Mu(c[e>>2]|0);i=b;return}function Ju(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0;f=i;i=i+64|0;g=f+52|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+28|0;p=f+24|0;q=f+20|0;r=f+16|0;s=f+12|0;t=f+8|0;u=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=bK(72)|0;c[q>>2]=0;c[r>>2]=0;c[t>>2]=0;h[u>>3]=0.0;c[(c[m>>2]|0)+60>>2]=0;c[(c[m>>2]|0)+56>>2]=c[g>>2];c[s>>2]=1;while(1){if((c[s>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;c[n>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[s>>2]<<2)>>2];c[p>>2]=Ju(c[n>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+1;h[u>>3]=+h[u>>3]+ +h[c[p>>2]>>3];if(!(c[q>>2]|0))c[q>>2]=c[p>>2];if(c[r>>2]|0)c[(c[r>>2]|0)+52>>2]=c[p>>2];c[r>>2]=c[p>>2];c[s>>2]=(c[s>>2]|0)+1}c[o>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;if(!(c[c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]>>2]|0)){c[p>>2]=Pu(c[o>>2]|0,c[k>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+1;h[u>>3]=+h[u>>3]+ +h[c[p>>2]>>3];if(!(c[q>>2]|0))c[q>>2]=c[p>>2];if(c[r>>2]|0)c[(c[r>>2]|0)+52>>2]=c[p>>2];c[r>>2]=c[p>>2];c[c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]>>2]=c[g>>2]}c[o>>2]=aC(c[g>>2]|0,c[o>>2]|0)|0}c[(c[m>>2]|0)+64>>2]=c[t>>2];if(c[t>>2]|0){h[(c[m>>2]|0)+8>>3]=+h[u>>3];v=+Qu(c[m>>2]|0,c[l>>2]|0);h[c[m>>2]>>3]=v;w=c[q>>2]|0;x=c[m>>2]|0;y=x+48|0;c[y>>2]=w;z=c[m>>2]|0;i=f;return z|0}else{v=+Ru(c[g>>2]|0,c[j>>2]|0);h[c[m>>2]>>3]=v;w=c[q>>2]|0;x=c[m>>2]|0;y=x+48|0;c[y>>2]=w;z=c[m>>2]|0;i=f;return z|0}return 0}function Ku(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0;d=i;i=i+256|0;e=d+184|0;f=d+104|0;g=d+72|0;j=d+240|0;k=d+236|0;l=d+232|0;m=d+228|0;n=d+224|0;o=d+220|0;p=d+216|0;q=d+40|0;r=d+32|0;s=d+24|0;t=d+16|0;u=d+8|0;v=d;c[j>>2]=b;if(!(c[(c[j>>2]|0)+64>>2]|0)){i=d;return}c[o>>2]=c[(c[j>>2]|0)+64>>2];c[l>>2]=bK(c[o>>2]<<2)|0;c[p>>2]=c[(c[j>>2]|0)+48>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2];c[p>>2]=c[(c[p>>2]|0)+52>>2];c[n>>2]=(c[n>>2]|0)+1}w3(c[l>>2]|0,c[o>>2]|0,4,79);c[m>>2]=bK(c[o>>2]<<3)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;h[(c[m>>2]|0)+(c[n>>2]<<3)>>3]=+h[c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]>>3];c[n>>2]=(c[n>>2]|0)+1}if(+h[c[j>>2]>>3]==+h[(c[j>>2]|0)+8>>3]){b=c[o>>2]|0;w=c[m>>2]|0;x=(c[j>>2]|0)+16|0;c[e>>2]=c[x>>2];c[e+4>>2]=c[x+4>>2];c[e+8>>2]=c[x+8>>2];c[e+12>>2]=c[x+12>>2];c[e+16>>2]=c[x+16>>2];c[e+20>>2]=c[x+20>>2];c[e+24>>2]=c[x+24>>2];c[e+28>>2]=c[x+28>>2];c[k>>2]=Su(b,w,e)|0}else{h[u>>3]=+h[(c[j>>2]|0)+16+16+8>>3];h[v>>3]=+h[(c[j>>2]|0)+16+16>>3];h[q>>3]=+h[(c[j>>2]|0)+16>>3];h[q+8>>3]=+h[(c[j>>2]|0)+16+8>>3];h[s>>3]=+h[u>>3]-+h[v>>3];h[r>>3]=+O(+(+h[s>>3]*+h[s>>3]+ +h[(c[j>>2]|0)+8>>3]*4.0));h[t>>3]=(+h[u>>3]+ +h[v>>3]-+h[r>>3])/2.0;h[q+16>>3]=+h[v>>3]-+h[t>>3];h[q+16+8>>3]=+h[u>>3]-+h[t>>3];t=c[o>>2]|0;u=c[m>>2]|0;c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];c[e+16>>2]=c[q+16>>2];c[e+20>>2]=c[q+20>>2];c[e+24>>2]=c[q+24>>2];c[e+28>>2]=c[q+28>>2];c[k>>2]=Su(t,u,e)|0}if(a[138998]|0){e=c[24742]|0;y=+h[(c[j>>2]|0)+16+8>>3];z=+h[(c[j>>2]|0)+16+16>>3];A=+h[(c[j>>2]|0)+16+16+8>>3];h[g>>3]=+h[(c[j>>2]|0)+16>>3];h[g+8>>3]=y;h[g+16>>3]=z;h[g+24>>3]=A;Y2(e,131549,g)|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;g=(c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]|0)+16|0;e=(c[k>>2]|0)+(c[n>>2]<<5)|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];if(a[138998]|0){e=c[24742]|0;A=+h[(c[k>>2]|0)+(c[n>>2]<<5)>>3]-+h[(c[k>>2]|0)+(c[n>>2]<<5)+16>>3]*.5;z=+h[(c[k>>2]|0)+(c[n>>2]<<5)+8>>3]-+h[(c[k>>2]|0)+(c[n>>2]<<5)+16+8>>3]*.5;y=+h[(c[k>>2]|0)+(c[n>>2]<<5)>>3]+ +h[(c[k>>2]|0)+(c[n>>2]<<5)+16>>3]*.5;B=+h[(c[k>>2]|0)+(c[n>>2]<<5)+8>>3]+ +h[(c[k>>2]|0)+(c[n>>2]<<5)+16+8>>3]*.5;C=+h[(c[k>>2]|0)+(c[n>>2]<<5)+16>>3]*+h[(c[k>>2]|0)+(c[n>>2]<<5)+16+8>>3];D=+h[(c[k>>2]|0)+(c[n>>2]<<5)>>3];E=+h[(c[k>>2]|0)+(c[n>>2]<<5)+8>>3];F=+h[(c[k>>2]|0)+(c[n>>2]<<5)+16>>3];G=+h[(c[k>>2]|0)+(c[n>>2]<<5)+16+8>>3];h[f>>3]=+h[(c[m>>2]|0)+(c[n>>2]<<3)>>3];h[f+8>>3]=A;h[f+16>>3]=z;h[f+24>>3]=y;h[f+32>>3]=B;h[f+40>>3]=C;h[f+48>>3]=D;h[f+56>>3]=E;h[f+64>>3]=F;h[f+72>>3]=G;Y2(e,131566,f)|0}c[n>>2]=(c[n>>2]|0)+1}O4(c[l>>2]|0);O4(c[m>>2]|0);O4(c[k>>2]|0);c[p>>2]=c[(c[j>>2]|0)+48>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;if(!(c[(c[p>>2]|0)+60>>2]|0))Ku(c[p>>2]|0);c[p>>2]=c[(c[p>>2]|0)+52>>2];c[n>>2]=(c[n>>2]|0)+1}i=d;return}function Lu(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;d=i;i=i+176|0;e=d+112|0;f=d+160|0;g=d+156|0;j=d+152|0;k=d+96|0;l=d+64|0;m=d+32|0;n=d+24|0;o=d+16|0;p=d+8|0;q=d;c[f>>2]=b;b=c[f>>2]|0;if(c[(c[f>>2]|0)+60>>2]|0){r=b+16|0;c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];c[l+16>>2]=c[r+16>>2];c[l+20>>2]=c[r+20>>2];c[l+24>>2]=c[r+24>>2];c[l+28>>2]=c[r+28>>2];h[k>>3]=+h[l>>3];h[k+8>>3]=+h[l+8>>3];c[j>>2]=c[(c[f>>2]|0)+56>>2];r=(c[(c[j>>2]|0)+8>>2]|0)+16|0;c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];c[r+8>>2]=c[k+8>>2];c[r+12>>2]=c[k+12>>2];h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3]=+h[l+16>>3]/72.0;h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3]=+h[l+16+8>>3]/72.0;l=c[j>>2]|0;VO(l,c[(c[(qC(c[j>>2]|0)|0)+8>>2]|0)+116>>2]&1);Nu(c[j>>2]|0);if(!(a[138998]|0)){i=d;return}l=c[24742]|0;k=wB(c[j>>2]|0)|0;s=+h[(c[(c[j>>2]|0)+8>>2]|0)+16>>3];t=+h[(c[(c[j>>2]|0)+8>>2]|0)+16+8>>3];u=+h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3];v=+h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3];c[e>>2]=k;h[e+8>>3]=s;h[e+16>>3]=t;h[e+24>>3]=u;h[e+32>>3]=v;Y2(l,131508,e)|0;i=d;return}c[g>>2]=c[b+48>>2];while(1){if(!(c[g>>2]|0))break;Lu(c[g>>2]|0);c[g>>2]=c[(c[g>>2]|0)+52>>2]}h[n>>3]=+h[(c[f>>2]|0)+16>>3];h[o>>3]=+h[(c[f>>2]|0)+16+8>>3];h[p>>3]=+h[(c[f>>2]|0)+16+16>>3];h[q>>3]=+h[(c[f>>2]|0)+16+16+8>>3];h[m>>3]=+h[n>>3]-+h[p>>3]/2.0;h[m+8>>3]=+h[o>>3]-+h[q>>3]/2.0;h[m+16>>3]=+h[m>>3]+ +h[p>>3];h[m+16+8>>3]=+h[m+8>>3]+ +h[q>>3];q=(c[(c[(c[f>>2]|0)+56>>2]|0)+8>>2]|0)+16|0;c[q>>2]=c[m>>2];c[q+4>>2]=c[m+4>>2];c[q+8>>2]=c[m+8>>2];c[q+12>>2]=c[m+12>>2];c[q+16>>2]=c[m+16>>2];c[q+20>>2]=c[m+20>>2];c[q+24>>2]=c[m+24>>2];c[q+28>>2]=c[m+28>>2];i=d;return}function Mu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+48>>2];c[g>>2]=c[(c[d>>2]|0)+64>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))break;Mu(c[e>>2]|0);c[e>>2]=c[(c[e>>2]|0)+52>>2];c[f>>2]=(c[f>>2]|0)+1}O4(c[d>>2]|0);i=b;return}function Nu(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+64|0;e=d;f=d+12|0;g=d+16|0;j=d+8|0;c[f>>2]=b;if((c[13827]|0)!=0?(c[j>>2]=zA(c[f>>2]|0,c[13827]|0)|0,(a[c[j>>2]>>0]|0)==0):0){h[e>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]*.7;k3(g,131543,e)|0;BA(c[f>>2]|0,c[13827]|0,g)|0}xO(c[f>>2]|0);i=d;return}function Ou(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=+h[c[c[f>>2]>>2]>>3]-+h[c[c[g>>2]>>2]>>3];do if(!(+h[j>>3]<0.0))if(+h[j>>3]>0.0){c[e>>2]=-1;break}else{c[e>>2]=0;break}else c[e>>2]=1;while(0);i=d;return c[e>>2]|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0.0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=bK(72)|0;j=+Ru(c[e>>2]|0,c[f>>2]|0);h[c[g>>2]>>3]=j;c[(c[g>>2]|0)+60>>2]=1;c[(c[g>>2]|0)+56>>2]=c[e>>2];i=d;return c[g>>2]|0}function Qu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+16|0;f=d+28|0;g=d+24|0;j=d+8|0;k=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=+fO(c[(c[f>>2]|0)+56>>2]|0,c[g>>2]|0,0.0,0.0);if(+h[j>>3]==0.0){h[e>>3]=+h[(c[f>>2]|0)+8>>3];l=+h[e>>3];i=d;return +l}else{h[k>>3]=+h[j>>3]*2.0+ +O(+(+h[(c[f>>2]|0)+8>>3]));h[e>>3]=+h[k>>3]*+h[k>>3];l=+h[e>>3];i=d;return +l}return +(0.0)}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d;c[e>>2]=a;c[f>>2]=b;h[g>>3]=+fO(c[e>>2]|0,c[f>>2]|0,1.0,0.0);if(+h[g>>3]==0.0)h[g>>3]=1.0;h[g>>3]=+h[g>>3]*1.0e3;i=d;return +(+h[g>>3])}function Su(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0;e=i;i=i+96|0;f=e+40|0;g=e+92|0;j=e+88|0;k=e+84|0;l=e+80|0;m=e+76|0;n=e+32|0;o=e+24|0;p=e+16|0;q=e+8|0;r=e;s=e+72|0;c[j>>2]=a;c[k>>2]=b;h[n>>3]=0.0;h[o>>3]=1.0;h[p>>3]=0.0;h[q>>3]=1.0;h[r>>3]=0.0;c[s>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;h[n>>3]=+h[n>>3]+ +h[(c[k>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}if(+h[n>>3]>+h[d+16>>3]*+h[d+16+8>>3]+.001){c[g>>2]=0;t=c[g>>2]|0;i=e;return t|0}else{c[l>>2]=bK(c[j>>2]<<5)|0;n=c[j>>2]|0;j=c[k>>2]|0;k=c[l>>2]|0;m=c[s>>2]|0;u=+h[p>>3];v=+h[o>>3];w=+h[r>>3];x=+h[q>>3];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[f+24>>2]=c[d+24>>2];c[f+28>>2]=c[d+28>>2];Uu(n,j,k,m,u,v,w,x,f);c[g>>2]=c[l>>2];t=c[g>>2]|0;i=e;return t|0}return 0}function Tu(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+64|0;j=g+56|0;k=g+48|0;l=g+40|0;m=g+32|0;n=g;h[j>>3]=b;h[k>>3]=d;h[l>>3]=e;h[m>>3]=f;h[n>>3]=+h[j>>3];h[n+8>>3]=+h[k>>3];h[n+16>>3]=+h[l>>3];h[n+16+8>>3]=+h[m>>3];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];i=g;return}function Uu(b,d,e,f,g,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=+g;j=+j;k=+k;l=+l;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0;n=i;i=i+256|0;o=n+200|0;p=n+168|0;q=n+160|0;r=n+128|0;s=n+248|0;t=n+244|0;u=n+240|0;v=n+236|0;w=n+120|0;x=n+112|0;y=n+104|0;z=n+96|0;A=n+88|0;B=n+232|0;C=n+80|0;D=n+72|0;E=n+64|0;F=n+56|0;G=n+48|0;H=n+40|0;I=n+32|0;J=n+24|0;K=n+16|0;L=n+8|0;M=n;c[s>>2]=b;c[t>>2]=d;c[u>>2]=e;c[v>>2]=f;h[w>>3]=g;h[x>>3]=j;h[y>>3]=k;h[z>>3]=l;f=m+16|0;h[A>>3]=+h[m+16>>3]<+h[m+16+8>>3]?+h[f>>3]:+h[f+8>>3];if((c[s>>2]|0)<=0){i=n;return}if(a[138998]|0){f=c[24742]|0;l=+h[m+16>>3];k=+h[m+8>>3];j=+h[m+16+8>>3];h[r>>3]=+h[m>>3];h[r+8>>3]=l;h[r+16>>3]=k;h[r+24>>3]=j;Y2(f,131603,r)|0;r=c[24742]|0;c[q>>2]=c[v>>2];Y2(r,131649,q)|0}if(!(c[v>>2]|0)){c[v>>2]=1;j=+h[c[t>>2]>>3];h[x>>3]=j;h[w>>3]=j;if(+h[c[t>>2]>>3]/(+h[A>>3]*+h[A>>3])>+h[A>>3]*+h[A>>3]/+h[c[t>>2]>>3])N=+h[c[t>>2]>>3]/(+h[A>>3]*+h[A>>3]);else N=+h[A>>3]*+h[A>>3]/+h[c[t>>2]>>3];h[z>>3]=N;h[y>>3]=+h[c[t>>2]>>3];q=c[s>>2]|0;r=c[t>>2]|0;f=c[u>>2]|0;e=c[v>>2]|0;N=+h[w>>3];j=+h[x>>3];k=+h[y>>3];l=+h[z>>3];c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2];Uu(q,r,f,e,N,j,k,l,o);i=n;return}if((c[v>>2]|0)<(c[s>>2]|0)){if(+h[w>>3]>+h[(c[t>>2]|0)+(c[v>>2]<<3)>>3])O=+h[w>>3];else O=+h[(c[t>>2]|0)+(c[v>>2]<<3)>>3];h[C>>3]=O;if(+h[x>>3]<+h[(c[t>>2]|0)+(c[v>>2]<<3)>>3])P=+h[x>>3];else P=+h[(c[t>>2]|0)+(c[v>>2]<<3)>>3];h[D>>3]=P;h[E>>3]=+h[y>>3]+ +h[(c[t>>2]|0)+(c[v>>2]<<3)>>3];h[F>>3]=+h[E>>3]/+h[A>>3];h[G>>3]=+h[C>>3]/+h[F>>3];h[H>>3]=+h[D>>3]/+h[F>>3];if(+h[F>>3]/+h[H>>3]>+h[G>>3]/+h[F>>3])Q=+h[F>>3]/+h[H>>3];else Q=+h[G>>3]/+h[F>>3];h[I>>3]=Q}if((c[v>>2]|0)<(c[s>>2]|0)?+h[I>>3]<=+h[z>>3]:0){z=c[s>>2]|0;F=c[t>>2]|0;G=c[u>>2]|0;H=(c[v>>2]|0)+1|0;c[v>>2]=H;Q=+h[C>>3];P=+h[D>>3];O=+h[E>>3];l=+h[I>>3];c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2];Uu(z,F,G,H,Q,P,O,l,o);i=n;return}if(a[138998]|0){H=c[24742]|0;l=+h[y>>3];O=+h[A>>3];P=+h[y>>3]/+h[A>>3];c[p>>2]=c[v>>2];h[p+8>>3]=l;h[p+16>>3]=O;h[p+24>>3]=P;Y2(H,131674,p)|0}P=+h[y>>3]/+h[A>>3];if(+h[A>>3]==+h[m+16>>3]){h[J>>3]=P;h[L>>3]=+h[m>>3]-+h[m+16>>3]/2.0;c[B>>2]=0;while(1){R=+h[J>>3];if((c[B>>2]|0)>=(c[v>>2]|0))break;h[(c[u>>2]|0)+(c[B>>2]<<5)+16+8>>3]=R;h[K>>3]=+h[(c[t>>2]|0)+(c[B>>2]<<3)>>3]/+h[J>>3];h[(c[u>>2]|0)+(c[B>>2]<<5)+16>>3]=+h[K>>3];h[(c[u>>2]|0)+(c[B>>2]<<5)+8>>3]=+h[m+8>>3]+ +h[m+16+8>>3]*.5-+h[J>>3]/2.0;h[(c[u>>2]|0)+(c[B>>2]<<5)>>3]=+h[L>>3]+ +h[K>>3]/2.0;h[L>>3]=+h[L>>3]+ +h[K>>3];c[B>>2]=(c[B>>2]|0)+1}L=m+8|0;h[L>>3]=+h[L>>3]-R/2.0;L=m+16+8|0;h[L>>3]=+h[L>>3]-+h[J>>3]}else{h[K>>3]=P;h[M>>3]=+h[m+8>>3]+ +h[m+16+8>>3]/2.0;c[B>>2]=0;while(1){S=+h[K>>3];if((c[B>>2]|0)>=(c[v>>2]|0))break;h[(c[u>>2]|0)+(c[B>>2]<<5)+16>>3]=S;h[J>>3]=+h[(c[t>>2]|0)+(c[B>>2]<<3)>>3]/+h[K>>3];h[(c[u>>2]|0)+(c[B>>2]<<5)+16+8>>3]=+h[J>>3];h[(c[u>>2]|0)+(c[B>>2]<<5)>>3]=+h[m>>3]-+h[m+16>>3]*.5+ +h[K>>3]/2.0;h[(c[u>>2]|0)+(c[B>>2]<<5)+8>>3]=+h[M>>3]-+h[J>>3]/2.0;h[M>>3]=+h[M>>3]-+h[J>>3];c[B>>2]=(c[B>>2]|0)+1}h[m>>3]=+h[m>>3]+S/2.0;B=m+16|0;h[B>>3]=+h[B>>3]-+h[K>>3]}K=(c[s>>2]|0)-(c[v>>2]|0)|0;s=(c[t>>2]|0)+(c[v>>2]<<3)|0;t=(c[u>>2]|0)+(c[v>>2]<<5)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2];Uu(K,s,t,0,0.0,0.0,0.0,1.0,o);i=n;return}function Vu(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=i;i=i+80|0;h=g+8|0;j=g;k=g+64|0;l=g+60|0;m=g+52|0;n=g+48|0;o=g+44|0;p=g+40|0;q=g+36|0;r=g+32|0;s=g+28|0;t=g+24|0;u=g+16|0;c[k>>2]=d;c[l>>2]=e;c[g+56>>2]=f;c[q>>2]=0;c[r>>2]=0;c[t>>2]=0;c[m>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;c[o>>2]=OA(c[k>>2]|0,c[m>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;f=c[o>>2]|0;c[n>>2]=c[((c[c[o>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2];if((c[m>>2]|0)==(c[n>>2]|0)?(b[(c[(c[o>>2]|0)+8>>2]|0)+168>>1]|0)!=0:0){if(!(c[r>>2]|0)){c[r>>2]=bK(96)|0;f=bK((kB(c[k>>2]|0)|0)+360<<5)|0;c[(c[r>>2]|0)+84>>2]=f}_l(c[r>>2]|0,c[o>>2]|0,c[(c[(c[k>>2]|0)+8>>2]|0)+248>>2]|0)}else v=10;do if((v|0)==10?(v=0,(b[(c[(c[o>>2]|0)+8>>2]|0)+168>>1]|0)!=0):0){c[q>>2]=Wu(c[o>>2]|0,c[l>>2]|0)|0;if(!(Gs(c[(c[q>>2]|0)+8>>2]|0,c[c[q>>2]>>2]|0)|0)){if(a[138998]|0)Y2(c[24742]|0,131811,h)|0;c[t>>2]=1;break}c[s>>2]=mX(c[(c[q>>2]|0)+8>>2]|0,c[c[q>>2]>>2]|0)|0;if(!(c[s>>2]|0)){$z(0,131727,j)|0;c[t>>2]=1;break}c[p>>2]=c[o>>2];while(1){if(!(c[p>>2]|0))break;f=(c[(c[p>>2]|0)+8>>2]|0)+144|0;am(u,c[p>>2]|0,c[s>>2]|0,0,c[(c[q>>2]|0)+8>>2]|0,c[c[q>>2]>>2]|0);c[f>>2]=c[u>>2];c[f+4>>2]=c[u+4>>2];bm(c[k>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+8>>2]|0,c[c[q>>2]>>2]|0,0);c[p>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]}Xu(c[q>>2]|0)}while(0);c[o>>2]=QA(c[k>>2]|0,c[o>>2]|0)|0}c[m>>2]=aC(c[k>>2]|0,c[m>>2]|0)|0}Yu(c[q>>2]|0);if(!(c[r>>2]|0)){w=c[t>>2]|0;i=g;return w|0}O4(c[(c[r>>2]|0)+84>>2]|0);O4(c[r>>2]|0);w=c[t>>2]|0;i=g;return w|0}function Wu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[f>>2]=b;c[g>>2]=d;d=c[f>>2]|0;c[h>>2]=c[((c[c[f>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];d=c[f>>2]|0;c[j>>2]=c[((c[c[f>>2]>>2]&3|0)==3?d:d+32|0)+28>>2];c[k>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2];c[l>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+212>>2];c[q>>2]=bK(12)|0;if(a[(c[(c[h>>2]|0)+8>>2]|0)+118>>0]|0){c[o>>2]=c[k>>2];c[k>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]}else c[o>>2]=c[h>>2];if(a[(c[(c[j>>2]|0)+8>>2]|0)+118>>0]|0){c[p>>2]=c[l>>2];c[l>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]}else c[p>>2]=c[j>>2];c[m>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+44>>2];c[n>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+44>>2];if((c[m>>2]|0)<=(c[n>>2]|0)){if((c[n>>2]|0)>(c[m>>2]|0)){Zu(c[q>>2]|0,c[n>>2]|0,c[p>>2]|0,c[m>>2]|0,l,c[g>>2]|0);c[p>>2]=c[l>>2];c[l>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]}}else{Zu(c[q>>2]|0,c[m>>2]|0,c[o>>2]|0,c[n>>2]|0,k,c[g>>2]|0);c[o>>2]=c[k>>2];c[k>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]}while(1){r=c[q>>2]|0;if((c[k>>2]|0)==(c[l>>2]|0))break;_u(r,c[k>>2]|0,0,c[o>>2]|0,c[g>>2]|0);_u(c[q>>2]|0,c[l>>2]|0,c[p>>2]|0,0,c[g>>2]|0);c[o>>2]=c[k>>2];c[k>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2];c[p>>2]=c[l>>2];c[l>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]}_u(r,c[l>>2]|0,c[p>>2]|0,c[o>>2]|0,c[g>>2]|0);i=e;return c[q>>2]|0}function Xu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=0;i=b;return}function Yu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function Zu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+28|0;k=h+24|0;l=h+20|0;m=h+16|0;n=h+12|0;o=h+8|0;p=h+4|0;q=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=c[c[n>>2]>>2];c[q>>2]=c[k>>2];while(1){if((c[q>>2]|0)<=(c[m>>2]|0))break;_u(c[j>>2]|0,c[p>>2]|0,c[l>>2]|0,0,c[o>>2]|0);c[l>>2]=c[p>>2];c[p>>2]=c[(c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2];c[q>>2]=(c[q>>2]|0)+-1}c[c[n>>2]>>2]=c[l>>2];i=h;return}function _u(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+28|0;k=h+24|0;l=h+20|0;m=h+16|0;n=h+12|0;o=h+8|0;p=h+4|0;q=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;if((((c[(c[(c[o>>2]|0)+8>>2]|0)+212>>2]|0)==(c[k>>2]|0)?(c[o>>2]|0)!=(c[l>>2]|0):0)?(c[o>>2]|0)!=(c[m>>2]|0):0)?(a[(c[(c[o>>2]|0)+8>>2]|0)+118>>0]|0)==0:0){g=c[j>>2]|0;$u(g,$l(c[o>>2]|0,c[n>>2]|0,0)|0)}c[o>>2]=aC(c[k>>2]|0,c[o>>2]|0)|0}c[q>>2]=1;while(1){if((c[q>>2]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0))break;c[p>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2];if((c[p>>2]|0)!=(c[l>>2]|0)?(c[p>>2]|0)!=(c[m>>2]|0):0){o=c[j>>2]|0;$u(o,av(c[p>>2]|0,c[n>>2]|0)|0)}c[q>>2]=(c[q>>2]|0)+1}i=h;return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;do if((c[(c[e>>2]|0)+4>>2]|0)==(c[c[e>>2]>>2]|0))if(c[(c[e>>2]|0)+8>>2]|0){b=(c[e>>2]|0)+4|0;c[b>>2]=c[b>>2]<<1;b=eK(c[(c[e>>2]|0)+8>>2]|0,c[(c[e>>2]|0)+4>>2]<<2)|0;c[(c[e>>2]|0)+8>>2]=b;break}else{b=cK(400)|0;c[(c[e>>2]|0)+8>>2]=b;c[(c[e>>2]|0)+4>>2]=100;break}while(0);b=c[f>>2]|0;f=c[e>>2]|0;a=c[f>>2]|0;c[f>>2]=a+1;c[(c[(c[e>>2]|0)+8>>2]|0)+(a<<2)>>2]=b;i=d;return}function av(b,d){b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+112|0;f=e+104|0;j=e+100|0;k=e+96|0;l=e+64|0;m=e+32|0;n=e+16|0;o=e+8|0;p=e;c[f>>2]=b;c[j>>2]=d;c[k>>2]=bK(8)|0;d=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[d>>2];c[l+4>>2]=c[d+4>>2];c[l+8>>2]=c[d+8>>2];c[l+12>>2]=c[d+12>>2];c[l+16>>2]=c[d+16>>2];c[l+20>>2]=c[d+20>>2];c[l+24>>2]=c[d+24>>2];c[l+28>>2]=c[d+28>>2];c[(c[k>>2]|0)+4>>2]=4;d=bK(64)|0;c[c[k>>2]>>2]=d;h[n>>3]=(+h[l+16>>3]+ +h[l>>3])/2.0;h[n+8>>3]=(+h[l+16+8>>3]+ +h[l+8>>3])/2.0;if(a[(c[j>>2]|0)+8>>0]|0){h[m+16>>3]=+h[l+16>>3]+ +g[c[j>>2]>>2];h[m+16+8>>3]=+h[l+16+8>>3]+ +g[(c[j>>2]|0)+4>>2];h[m>>3]=+h[l>>3]-+g[c[j>>2]>>2];h[m+8>>3]=+h[l+8>>3]-+g[(c[j>>2]|0)+4>>2]}else{h[o>>3]=+g[c[j>>2]>>2]-1.0;h[p>>3]=+g[(c[j>>2]|0)+4>>2]-1.0;h[m+16>>3]=+g[c[j>>2]>>2]*+h[l+16>>3]-+h[o>>3]*+h[n>>3];h[m+16+8>>3]=+g[(c[j>>2]|0)+4>>2]*+h[l+16+8>>3]-+h[p>>3]*+h[n+8>>3];h[m>>3]=+g[c[j>>2]>>2]*+h[l>>3]-+h[o>>3]*+h[n>>3];h[m+8>>3]=+g[(c[j>>2]|0)+4>>2]*+h[l+8>>3]-+h[p>>3]*+h[n+8>>3]}h[c[c[k>>2]>>2]>>3]=+h[m>>3];h[(c[c[k>>2]>>2]|0)+8>>3]=+h[m+8>>3];h[(c[c[k>>2]>>2]|0)+16>>3]=+h[m>>3];h[(c[c[k>>2]>>2]|0)+16+8>>3]=+h[m+16+8>>3];h[(c[c[k>>2]>>2]|0)+32>>3]=+h[m+16>>3];h[(c[c[k>>2]>>2]|0)+32+8>>3]=+h[m+16+8>>3];h[(c[c[k>>2]>>2]|0)+48>>3]=+h[m+16>>3];h[(c[c[k>>2]>>2]|0)+48+8>>3]=+h[m+8>>3];i=e;return c[k>>2]|0}function bv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+208|0;h=g+16|0;j=g+8|0;k=g;l=g+64|0;m=g+60|0;n=g+56|0;o=g+52|0;p=g+48|0;q=g+72|0;r=g+44|0;s=g+40|0;t=g+36|0;u=g+32|0;v=g+28|0;w=g+24|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[r>>2]=0;c[w>>2]=0;c[s>>2]=bK(kB(c[l>>2]|0)|0)|0;c[p>>2]=0;f=c[c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]>>2]|0;c[t>>2]=f;a:do if(f){e=wB(c[l>>2]|0)|0;b=c[r>>2]|0;c[r>>2]=b+1;x=b+(c[12945]|0)|0;c[k>>2]=e;c[k+4>>2]=x;k3(q,131862,k)|0;c[p>>2]=FD(c[l>>2]|0,q,1)|0;MC(c[p>>2]|0,175049,280,1)|0;x=bK(56)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]=x;c[c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]>>2]=c[t>>2];c[(c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2];while(1){if(!(c[(c[t>>2]|0)+4>>2]|0))break a;if(!(a[(c[s>>2]|0)+(c[(c[(c[(c[t>>2]|0)+4>>2]|0)+8>>2]|0)+120>>2]|0)>>0]|0))cv(c[l>>2]|0,c[(c[t>>2]|0)+4>>2]|0,c[p>>2]|0,c[s>>2]|0);c[t>>2]=(c[t>>2]|0)+16}}while(0);c[o>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;if((a[(c[s>>2]|0)+(c[(c[(c[o>>2]|0)+8>>2]|0)+120>>2]|0)>>0]|0)==0?(d[(c[(c[o>>2]|0)+8>>2]|0)+119>>0]|0)==3:0){if(!(c[p>>2]|0)){t=wB(c[l>>2]|0)|0;k=c[r>>2]|0;c[r>>2]=k+1;f=k+(c[12945]|0)|0;c[j>>2]=t;c[j+4>>2]=f;k3(q,131862,j)|0;c[p>>2]=FD(c[l>>2]|0,q,1)|0;MC(c[p>>2]|0,175049,280,1)|0;f=bK(56)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]=f}c[w>>2]=1;cv(c[l>>2]|0,c[o>>2]|0,c[p>>2]|0,c[s>>2]|0)}c[o>>2]=aC(c[l>>2]|0,c[o>>2]|0)|0}if(c[p>>2]|0)iG(c[p>>2]|0)|0;c[o>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;if(!(a[(c[s>>2]|0)+(c[(c[(c[o>>2]|0)+8>>2]|0)+120>>2]|0)>>0]|0)){j=wB(c[l>>2]|0)|0;f=c[r>>2]|0;c[r>>2]=f+1;t=f+(c[12945]|0)|0;c[h>>2]=j;c[h+4>>2]=t;k3(q,131870,h)|0;c[p>>2]=FD(c[l>>2]|0,q,1)|0;MC(c[p>>2]|0,175049,280,1)|0;t=bK(56)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+140>>2]=t;cv(c[l>>2]|0,c[o>>2]|0,c[p>>2]|0,c[s>>2]|0);iG(c[p>>2]|0)|0}c[o>>2]=aC(c[l>>2]|0,c[o>>2]|0)|0}O4(c[s>>2]|0);c[12945]=(c[12945]|0)+(c[r>>2]|0);if(c[m>>2]|0)c[c[m>>2]>>2]=c[r>>2];if(c[n>>2]|0)c[c[n>>2]>>2]=c[w>>2];w=bK((c[r>>2]|0)+1<<2)|0;c[v>>2]=w;c[u>>2]=w;c[p>>2]=GD(c[l>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;l=c[p>>2]|0;w=c[v>>2]|0;c[v>>2]=w+4;c[w>>2]=l;c[r>>2]=(c[r>>2]|0)+-1;c[p>>2]=HD(c[p>>2]|0)|0}if(!(c[r>>2]|0)){c[c[v>>2]>>2]=0;i=g;return c[u>>2]|0}else La(131878,131889,134,131896);return 0}function cv(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;a[(c[l>>2]|0)+(c[(c[(c[j>>2]|0)+8>>2]|0)+120>>2]|0)>>0]=1;eC(c[k>>2]|0,c[j>>2]|0,1)|0;c[m>>2]=TA(c[h>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;f=c[m>>2]|0;e=c[((c[c[m>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0;c[n>>2]=e;if((e|0)==(c[j>>2]|0)){e=c[m>>2]|0;c[n>>2]=c[((c[c[m>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]}if(!(a[(c[l>>2]|0)+(c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2]|0)>>0]|0))cv(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0,c[l>>2]|0);c[m>>2]=UA(c[h>>2]|0,c[m>>2]|0,c[j>>2]|0)|0}i=g;return}function dv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(24)|0;c[12946]=c[e>>2];a=Nz(51788,c[12989]|0)|0;c[c[e>>2]>>2]=a;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+12>>2]=0;a=kv(c[d>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=a;i=b;return c[e>>2]|0}function ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<=(c[(c[e>>2]|0)+12>>2]|0)){i=d;return}if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]<<1|0))h=c[f>>2]|0;else h=c[(c[e>>2]|0)+12>>2]<<1;c[g>>2]=h;if(c[(c[e>>2]|0)+16>>2]|0)O4(c[(c[e>>2]|0)+16>>2]|0);h=cK(c[g>>2]<<3)|0;c[(c[e>>2]|0)+16>>2]=h;c[(c[e>>2]|0)+12>>2]=c[g>>2];i=d;return}function fv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Hb[c[c[c[d>>2]>>2]>>2]&63](c[c[d>>2]>>2]|0,0,64)|0;c[(c[d>>2]|0)+20>>2]=c[(c[d>>2]|0)+16>>2];c[(c[d>>2]|0)+8>>2]=c[(c[d>>2]|0)+4>>2];c[(c[(c[d>>2]|0)+8>>2]|0)+4>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];i=b;return}function gv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jz(c[c[d>>2]>>2]|0)|0;lv(c[(c[d>>2]|0)+4>>2]|0);O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[d>>2]|0);i=b;return}function hv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+64|0;h=g;j=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+12|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[o>>2]=c[k>>2];c[o+4>>2]=c[l>>2];c[n>>2]=Hb[c[c[c[j>>2]>>2]>>2]&63](c[c[j>>2]>>2]|0,o,1)|0;o=mv(c[j>>2]|0,c[m>>2]|0,c[(c[n>>2]|0)+8>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=o;if((d[138998]|0|0)<3){i=g;return}o=c[24742]|0;n=c[k>>2]|0;k=c[l>>2]|0;l=wB(c[m>>2]|0)|0;c[h>>2]=n;c[h+4>>2]=k;c[h+8>>2]=l;Y2(o,131906,h)|0;i=g;return}function iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Uz(c[c[e>>2]>>2]|0,c[f>>2]|0,c[e>>2]|0)|0;i=d;return}function jv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[g>>2];c[j+4>>2]=c[h>>2];h=Hb[c[c[c[f>>2]>>2]>>2]&63](c[c[f>>2]>>2]|0,j,4)|0;i=e;return h|0}function kv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(16)|0;c[(c[e>>2]|0)+12>>2]=0;a=cK((c[d>>2]|0)*20|0)|0;c[c[e>>2]>>2]=a;c[(c[e>>2]|0)+8>>2]=(c[c[e>>2]>>2]|0)+((c[d>>2]|0)*20|0);c[(c[e>>2]|0)+4>>2]=c[c[e>>2]>>2];i=b;return c[e>>2]|0}function lv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=c[(c[d>>2]|0)+12>>2];O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);lv(c[e>>2]|0);i=b;return}function mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=(c[f>>2]|0)+20|0;f=c[d>>2]|0;c[d>>2]=f+8;c[j>>2]=f;c[c[j>>2]>>2]=c[g>>2];c[(c[j>>2]|0)+4>>2]=c[h>>2];i=e;return c[j>>2]|0}function nv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+12|0;g=e+4|0;h=e;c[e+16>>2]=a;c[f>>2]=b;c[e+8>>2]=d;c[g>>2]=c[f>>2];c[h>>2]=pv(c[12946]|0)|0;c[c[h>>2]>>2]=c[c[g>>2]>>2];c[(c[h>>2]|0)+4>>2]=c[(c[g>>2]|0)+4>>2];c[(c[h>>2]|0)+8>>2]=0;i=e;return c[h>>2]|0}function ov(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;h=f+12|0;j=f+8|0;k=f;c[f+16>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f+4>>2]=e;e=(c[c[h>>2]>>2]|0)-(c[c[j>>2]>>2]|0)|0;c[k>>2]=e;if(e){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=f;return l|0}else{c[g>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[j>>2]|0)+4>>2]|0);l=c[g>>2]|0;i=f;return l|0}return 0}function pv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];if((c[(c[f>>2]|0)+4>>2]|0)!=(c[(c[f>>2]|0)+8>>2]|0)){g=c[f>>2]|0;h=g+4|0;j=c[h>>2]|0;k=j+20|0;c[h>>2]=k;c[e>>2]=j;l=c[e>>2]|0;i=b;return l|0}if(!(c[(c[f>>2]|0)+12>>2]|0)){a=kv((((c[(c[f>>2]|0)+8>>2]|0)-(c[c[f>>2]>>2]|0)|0)/20|0)<<1)|0;c[(c[f>>2]|0)+12>>2]=a}a=c[(c[f>>2]|0)+12>>2]|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=a;c[(c[f>>2]|0)+4>>2]=c[c[f>>2]>>2];g=c[f>>2]|0;h=g+4|0;j=c[h>>2]|0;k=j+20|0;c[h>>2]=k;c[e>>2]=j;l=c[e>>2]|0;i=b;return l|0}function qv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];O4(c[(c[e>>2]|0)+8>>2]|0);O4(c[e>>2]|0);i=b;return}function rv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return +(+h[c[e>>2]>>3])}function sv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[(c[e>>2]|0)+8>>2]|0}function tv(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return ~~+h[(c[e>>2]|0)+16>>3]|0}function uv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;if((c[c[k>>2]>>2]|0)<(c[c[l>>2]>>2]|0)){i=h;return}if(10>0)p=10;else p=0;c[c[l>>2]>>2]=(c[c[k>>2]>>2]|0)+p;p=eK(c[c[m>>2]>>2]|0,_(c[c[l>>2]>>2]<<3,c[j>>2]|0)|0)|0;c[c[m>>2]>>2]=p;p=eK(c[c[n>>2]>>2]|0,c[c[l>>2]>>2]<<3)|0;c[c[n>>2]>>2]=p;p=eK(c[c[o>>2]>>2]|0,c[c[l>>2]>>2]<<3)|0;c[c[o>>2]>>2]=p;i=h;return}function vv(a,b,d,e,f,g,j,k,l,m,n){a=a|0;b=+b;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;o=i;i=i+80|0;p=o+68|0;q=o+8|0;r=o+64|0;s=o+60|0;t=o+56|0;u=o+52|0;v=o+48|0;w=o+44|0;x=o+40|0;y=o+36|0;z=o+32|0;A=o+28|0;B=o+24|0;C=o;D=o+20|0;E=o+16|0;c[p>>2]=a;h[q>>3]=b;c[r>>2]=d;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=j;c[w>>2]=k;c[x>>2]=l;c[y>>2]=m;c[z>>2]=n;n=c[y>>2]|0;h[n>>3]=+h[n>>3]+1.0;if(!(c[p>>2]|0)){i=o;return}c[D>>2]=c[(c[p>>2]|0)+16>>2];c[A>>2]=c[(c[p>>2]|0)+40>>2];if((c[A>>2]|0)!=0&(c[A>>2]|0)!=0)do{uv(c[D>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0);n=tv(ry(c[A>>2]|0)|0)|0;if((n|0)!=(c[s>>2]|0)){c[B>>2]=sv(ry(c[A>>2]|0)|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[D>>2]|0))break;n=_(c[D>>2]|0,c[c[t>>2]>>2]|0)|0;h[(c[c[v>>2]>>2]|0)+(n+(c[E>>2]|0)<<3)>>3]=+h[(c[B>>2]|0)+(c[E>>2]<<3)>>3];c[E>>2]=(c[E>>2]|0)+1}b=+rv(ry(c[A>>2]|0)|0);h[(c[c[w>>2]>>2]|0)+(c[c[t>>2]>>2]<<3)>>3]=b;b=+Aw(c[r>>2]|0,c[B>>2]|0,c[D>>2]|0);h[(c[c[x>>2]>>2]|0)+(c[c[t>>2]>>2]<<3)>>3]=b;n=c[t>>2]|0;c[n>>2]=(c[n>>2]|0)+1}c[A>>2]=sy(c[A>>2]|0)|0}while((c[A>>2]|0)!=0);if(!(c[(c[p>>2]|0)+36>>2]|0)){i=o;return}h[C>>3]=+Aw(c[(c[p>>2]|0)+20>>2]|0,c[r>>2]|0,c[D>>2]|0);if(!(+h[(c[p>>2]|0)+24>>3]<+h[q>>3]*+h[C>>3])){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(1<>2]|0))break;vv(c[(c[(c[p>>2]|0)+36>>2]|0)+(c[E>>2]<<2)>>2]|0,+h[q>>3],c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0);c[E>>2]=(c[E>>2]|0)+1}i=o;return}uv(c[D>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0);c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[D>>2]|0))break;u=_(c[D>>2]|0,c[c[t>>2]>>2]|0)|0;h[(c[c[v>>2]>>2]|0)+(u+(c[E>>2]|0)<<3)>>3]=+h[(c[(c[p>>2]|0)+32>>2]|0)+(c[E>>2]<<3)>>3];c[E>>2]=(c[E>>2]|0)+1}h[(c[c[w>>2]>>2]|0)+(c[c[t>>2]>>2]<<3)>>3]=+h[(c[p>>2]|0)+8>>3];b=+Aw(c[(c[p>>2]|0)+32>>2]|0,c[r>>2]|0,c[D>>2]|0);h[(c[c[x>>2]>>2]|0)+(c[c[t>>2]>>2]<<3)>>3]=b;x=c[t>>2]|0;c[x>>2]=(c[x>>2]|0)+1;i=o;return}function wv(a,b,d,e,f,g,j,k,l,m,n){a=a|0;b=+b;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;o=i;i=i+64|0;p=o+48|0;q=o;r=o+44|0;s=o+40|0;t=o+36|0;u=o+32|0;v=o+28|0;w=o+24|0;x=o+20|0;y=o+16|0;z=o+12|0;A=o+8|0;c[p>>2]=a;h[q>>3]=b;c[r>>2]=d;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=j;c[w>>2]=k;c[x>>2]=l;c[y>>2]=m;c[z>>2]=n;c[A>>2]=c[(c[p>>2]|0)+16>>2];h[c[y>>2]>>3]=0.0;c[c[t>>2]>>2]=0;c[c[z>>2]>>2]=0;c[c[u>>2]>>2]=10;if(!(c[c[v>>2]>>2]|0)){n=cK(_(c[c[u>>2]>>2]<<3,c[A>>2]|0)|0)|0;c[c[v>>2]>>2]=n}if(!(c[c[w>>2]>>2]|0)){n=cK(c[c[u>>2]>>2]<<3)|0;c[c[w>>2]>>2]=n}if(!(c[c[x>>2]>>2]|0)){n=cK(c[c[u>>2]>>2]<<3)|0;c[c[x>>2]>>2]=n}vv(c[p>>2]|0,+h[q>>3],c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0,c[y>>2]|0,c[z>>2]|0);i=o;return}function xv(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+64|0;m=l+52|0;n=l+48|0;o=l+44|0;p=l+16|0;q=l+8|0;r=l;s=l+40|0;t=l+36|0;u=l+32|0;v=l+28|0;w=l+24|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;h[p>>3]=e;h[q>>3]=f;h[r>>3]=g;c[s>>2]=j;c[t>>2]=k;c[u>>2]=c[c[m>>2]>>2];c[v>>2]=c[(c[m>>2]|0)+16>>2];c[w>>2]=0;while(1){if((c[w>>2]|0)>=4)break;h[(c[s>>2]|0)+(c[w>>2]<<3)>>3]=0.0;c[w>>2]=(c[w>>2]|0)+1}c[c[t>>2]>>2]=0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(_(c[v>>2]|0,c[u>>2]|0)|0))break;h[(c[n>>2]|0)+(c[w>>2]<<3)>>3]=0.0;c[w>>2]=(c[w>>2]|0)+1}Dv(c[m>>2]|0,c[m>>2]|0,c[o>>2]|0,c[n>>2]|0,+h[p>>3],+h[q>>3],+h[r>>3],c[s>>2]|0);Ev(c[m>>2]|0,c[n>>2]|0,c[s>>2]|0);c[w>>2]=0;while(1){if((c[w>>2]|0)>=4)break;n=(c[s>>2]|0)+(c[w>>2]<<3)|0;h[n>>3]=+h[n>>3]/+(c[u>>2]|0);c[w>>2]=(c[w>>2]|0)+1}i=l;return}function yv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0;g=i;i=i+64|0;j=g+52|0;k=g+48|0;l=g+44|0;m=g+40|0;n=g+36|0;o=g+32|0;p=g+28|0;q=g+24|0;r=g+20|0;s=g;t=g+16|0;u=g+12|0;v=g+8|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[t>>2]=0;c[p>>2]=cK(c[k>>2]<<3)|0;c[q>>2]=cK(c[k>>2]<<3)|0;c[r>>2]=cK(c[k>>2]<<3)|0;if(!((c[p>>2]|0)!=0&(c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){c[j>>2]=0;w=c[j>>2]|0;i=g;return w|0}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[k>>2]|0))break;h[(c[p>>2]|0)+(c[u>>2]<<3)>>3]=+h[(c[n>>2]|0)+(c[u>>2]<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[k>>2]|0))break;h[(c[q>>2]|0)+(c[u>>2]<<3)>>3]=+h[(c[n>>2]|0)+(c[u>>2]<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=1;while(1){if((c[u>>2]|0)>=(c[l>>2]|0))break;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;f=_(c[u>>2]|0,c[k>>2]|0)|0;if(+h[(c[p>>2]|0)+(c[v>>2]<<3)>>3]<+h[(c[n>>2]|0)+(f+(c[v>>2]|0)<<3)>>3])x=+h[(c[p>>2]|0)+(c[v>>2]<<3)>>3];else{f=_(c[u>>2]|0,c[k>>2]|0)|0;x=+h[(c[n>>2]|0)+(f+(c[v>>2]|0)<<3)>>3]}h[(c[p>>2]|0)+(c[v>>2]<<3)>>3]=x;f=_(c[u>>2]|0,c[k>>2]|0)|0;if(+h[(c[q>>2]|0)+(c[v>>2]<<3)>>3]>+h[(c[n>>2]|0)+(f+(c[v>>2]|0)<<3)>>3])y=+h[(c[q>>2]|0)+(c[v>>2]<<3)>>3];else{f=_(c[u>>2]|0,c[k>>2]|0)|0;y=+h[(c[n>>2]|0)+(f+(c[v>>2]|0)<<3)>>3]}h[(c[q>>2]|0)+(c[v>>2]<<3)>>3]=y;c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}h[s>>3]=+h[c[q>>2]>>3]-+h[c[p>>2]>>3];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[k>>2]|0))break;h[(c[r>>2]|0)+(c[u>>2]<<3)>>3]=(+h[(c[p>>2]|0)+(c[u>>2]<<3)>>3]+ +h[(c[q>>2]|0)+(c[u>>2]<<3)>>3])*.5;if(+h[s>>3]>+h[(c[q>>2]|0)+(c[u>>2]<<3)>>3]-+h[(c[p>>2]|0)+(c[u>>2]<<3)>>3])z=+h[s>>3];else z=+h[(c[q>>2]|0)+(c[u>>2]<<3)>>3]-+h[(c[p>>2]|0)+(c[u>>2]<<3)>>3];h[s>>3]=z;c[u>>2]=(c[u>>2]|0)+1}if(+h[s>>3]==0.0)h[s>>3]=1.0e-05;h[s>>3]=+h[s>>3]*.52;c[t>>2]=zv(c[k>>2]|0,c[r>>2]|0,+h[s>>3],c[m>>2]|0)|0;m=(c[o>>2]|0)!=0;c[u>>2]=0;a:do if(m)while(1){if((c[u>>2]|0)>=(c[l>>2]|0))break a;s=_(c[u>>2]|0,c[k>>2]|0)|0;c[t>>2]=Av(c[t>>2]|0,(c[n>>2]|0)+(s<<3)|0,+h[(c[o>>2]|0)+(c[u>>2]<<3)>>3],c[u>>2]|0)|0;c[u>>2]=(c[u>>2]|0)+1}else while(1){if((c[u>>2]|0)>=(c[l>>2]|0))break a;s=_(c[u>>2]|0,c[k>>2]|0)|0;c[t>>2]=Av(c[t>>2]|0,(c[n>>2]|0)+(s<<3)|0,1.0,c[u>>2]|0)|0;c[u>>2]=(c[u>>2]|0)+1}while(0);O4(c[p>>2]|0);O4(c[q>>2]|0);O4(c[r>>2]|0);c[j>>2]=c[t>>2];w=c[j>>2]|0;i=g;return w|0}function zv(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f;l=f+16|0;m=f+12|0;n=f+8|0;c[g>>2]=a;c[j>>2]=b;h[k>>3]=d;c[l>>2]=e;c[m>>2]=cK(56)|0;c[(c[m>>2]|0)+16>>2]=c[g>>2];c[c[m>>2]>>2]=0;e=cK(c[g>>2]<<3)|0;c[(c[m>>2]|0)+20>>2]=e;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;h[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}if(+h[k>>3]>0.0){h[(c[m>>2]|0)+24>>3]=+h[k>>3];h[(c[m>>2]|0)+8>>3]=0.0;c[(c[m>>2]|0)+32>>2]=0;c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;c[(c[m>>2]|0)+44>>2]=c[l>>2];c[(c[m>>2]|0)+48>>2]=0;i=f;return c[m>>2]|0}else La(131923,131933,405,131944);return 0}function Av(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f;m=f+8|0;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;c[m>>2]=e;e=c[j>>2]|0;if(c[j>>2]|0){c[g>>2]=Fv(e,c[k>>2]|0,+h[l>>3],c[m>>2]|0,0)|0;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=e;n=c[g>>2]|0;i=f;return n|0}return 0}function Bv(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[f>>2]=c[(c[d>>2]|0)+16>>2];O4(c[(c[d>>2]|0)+20>>2]|0);O4(c[(c[d>>2]|0)+32>>2]|0);if(c[(c[d>>2]|0)+48>>2]|0)O4(c[(c[d>>2]|0)+48>>2]|0);if(c[(c[d>>2]|0)+36>>2]|0){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(1<>2]|0))break;Bv(c[(c[(c[d>>2]|0)+36>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+36>>2]|0)}py(c[(c[d>>2]|0)+40>>2]|0,97);O4(c[d>>2]|0);i=b;return} +function eH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+112|0;k=j+108|0;l=j+104|0;m=j+100|0;n=j+96|0;o=j+92|0;p=j+88|0;q=j+80|0;r=j+16|0;s=j+8|0;t=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;h[s>>3]=+cH(c[k>>2]|0,c[p>>2]|0);h[t>>3]=+h[s>>3]*+h[s>>3];c[(c[o>>2]|0)+8>>2]=c[p>>2];p=(c[o>>2]|0)+16|0;s=(c[l>>2]|0)+(c[m>>2]<<4)|0;c[p>>2]=c[s>>2];c[p+4>>2]=c[s+4>>2];c[p+8>>2]=c[s+8>>2];c[p+12>>2]=c[s+12>>2];if((c[n>>2]|0)>(c[m>>2]|0)?(+h[(c[l>>2]|0)+(c[m>>2]<<4)>>3]-+h[(c[l>>2]|0)+((c[m>>2]|0)+3<<4)>>3])*(+h[(c[l>>2]|0)+(c[m>>2]<<4)>>3]-+h[(c[l>>2]|0)+((c[m>>2]|0)+3<<4)>>3])+(+h[(c[l>>2]|0)+(c[m>>2]<<4)+8>>3]-+h[(c[l>>2]|0)+((c[m>>2]|0)+3<<4)+8>>3])*(+h[(c[l>>2]|0)+(c[m>>2]<<4)+8>>3]-+h[(c[l>>2]|0)+((c[m>>2]|0)+3<<4)+8>>3])<+h[t>>3]:0)c[m>>2]=(c[m>>2]|0)+3;n=(c[l>>2]|0)+((c[m>>2]|0)+3<<4)|0;c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];n=r+16|0;s=(c[l>>2]|0)+((c[m>>2]|0)+2<<4)|0;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];s=r+32|0;n=(c[l>>2]|0)+((c[m>>2]|0)+1<<4)|0;c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];n=r+48|0;s=(c[o>>2]|0)+16|0;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];c[q>>2]=r+48;c[q+4>>2]=t;gN(q,92,r,0);q=(c[l>>2]|0)+(c[m>>2]<<4)|0;t=r+48|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];t=(c[l>>2]|0)+((c[m>>2]|0)+1<<4)|0;q=r+32|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];q=(c[l>>2]|0)+((c[m>>2]|0)+2<<4)|0;t=r+16|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];t=(c[l>>2]|0)+((c[m>>2]|0)+3<<4)|0;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];i=j;return c[m>>2]|0}function fH(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0;k=i;i=i+144|0;l=k+136|0;m=k+132|0;n=k+128|0;o=k+124|0;p=k+120|0;q=k+116|0;r=k+112|0;s=k+96|0;t=k+80|0;u=k+64|0;v=k+48|0;w=k+32|0;x=k+24|0;y=k+16|0;z=k+8|0;A=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;if((c[q>>2]|0)!=0&(c[r>>2]|0)!=0?(c[o>>2]|0)==(c[n>>2]|0):0){j=(c[m>>2]|0)+(c[o>>2]<<4)|0;c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[s+12>>2]=c[j+12>>2];j=(c[m>>2]|0)+((c[o>>2]|0)+3<<4)|0;c[t>>2]=c[j>>2];c[t+4>>2]=c[j+4>>2];c[t+8>>2]=c[j+8>>2];c[t+12>>2]=c[j+12>>2];h[y>>3]=+cH(c[l>>2]|0,c[q>>2]|0);h[z>>3]=+cH(c[l>>2]|0,c[r>>2]|0);h[x>>3]=+O(+((+h[s>>3]-+h[t>>3])*(+h[s>>3]-+h[t>>3])+(+h[s+8>>3]-+h[t+8>>3])*(+h[s+8>>3]-+h[t+8>>3])));if(+h[z>>3]+ +h[y>>3]>=+h[x>>3]){B=+h[x>>3]/3.0;h[y>>3]=B;h[z>>3]=B}do if(+h[s+8>>3]==+h[t+8>>3]){B=+h[s+8>>3];h[w+8>>3]=B;h[v+8>>3]=B;B=+h[t>>3];C=+h[z>>3];if(+h[s>>3]<+h[t>>3]){h[w>>3]=B-C;h[v>>3]=+h[s>>3]+ +h[y>>3];break}else{h[w>>3]=B+C;h[v>>3]=+h[s>>3]-+h[y>>3];break}}else{C=+h[s>>3];h[w>>3]=C;h[v>>3]=C;C=+h[t+8>>3];B=+h[z>>3];if(+h[s+8>>3]<+h[t+8>>3]){h[w+8>>3]=C-B;h[v+8>>3]=+h[s+8>>3]+ +h[y>>3];break}else{h[w+8>>3]=C+B;h[v+8>>3]=+h[s+8>>3]-+h[y>>3];break}}while(0);j=(c[m>>2]|0)+(c[o>>2]<<4)|0;g=(c[m>>2]|0)+((c[o>>2]|0)+1<<4)|0;c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];g=(c[m>>2]|0)+((c[o>>2]|0)+2<<4)|0;j=(c[m>>2]|0)+((c[o>>2]|0)+3<<4)|0;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];c[(c[p>>2]|0)+12>>2]=c[r>>2];j=(c[p>>2]|0)+32|0;c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];c[(c[p>>2]|0)+8>>2]=c[q>>2];j=(c[p>>2]|0)+16|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];i=k;return}if(c[r>>2]|0){h[z>>3]=+cH(c[l>>2]|0,c[r>>2]|0);j=(c[m>>2]|0)+(c[o>>2]<<4)|0;c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[s+12>>2]=c[j+12>>2];j=(c[m>>2]|0)+((c[o>>2]|0)+3<<4)|0;c[t>>2]=c[j>>2];c[t+4>>2]=c[j+4>>2];c[t+8>>2]=c[j+8>>2];c[t+12>>2]=c[j+12>>2];h[x>>3]=+O(+((+h[s>>3]-+h[t>>3])*(+h[s>>3]-+h[t>>3])+(+h[s+8>>3]-+h[t+8>>3])*(+h[s+8>>3]-+h[t+8>>3])));h[A>>3]=+h[x>>3]*.9;if(+h[z>>3]>=+h[A>>3])h[z>>3]=+h[A>>3];do if(+h[s+8>>3]==+h[t+8>>3]){h[u+8>>3]=+h[s+8>>3];B=+h[t>>3];C=+h[z>>3];if(+h[s>>3]<+h[t>>3]){h[u>>3]=B-C;break}else{h[u>>3]=B+C;break}}else{h[u>>3]=+h[s>>3];C=+h[t+8>>3];B=+h[z>>3];if(+h[s+8>>3]<+h[t+8>>3]){h[u+8>>3]=C-B;break}else{h[u+8>>3]=C+B;break}}while(0);z=(c[m>>2]|0)+((c[o>>2]|0)+1<<4)|0;c[z>>2]=c[s>>2];c[z+4>>2]=c[s+4>>2];c[z+8>>2]=c[s+8>>2];c[z+12>>2]=c[s+12>>2];z=(c[m>>2]|0)+((c[o>>2]|0)+2<<4)|0;j=(c[m>>2]|0)+((c[o>>2]|0)+3<<4)|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];c[z>>2]=c[j>>2];c[z+4>>2]=c[j+4>>2];c[z+8>>2]=c[j+8>>2];c[z+12>>2]=c[j+12>>2];c[(c[p>>2]|0)+12>>2]=c[r>>2];r=(c[p>>2]|0)+32|0;c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2]}if(!(c[q>>2]|0)){i=k;return}h[y>>3]=+cH(c[l>>2]|0,c[q>>2]|0);l=(c[m>>2]|0)+(c[n>>2]<<4)|0;c[s>>2]=c[l>>2];c[s+4>>2]=c[l+4>>2];c[s+8>>2]=c[l+8>>2];c[s+12>>2]=c[l+12>>2];l=(c[m>>2]|0)+((c[n>>2]|0)+3<<4)|0;c[t>>2]=c[l>>2];c[t+4>>2]=c[l+4>>2];c[t+8>>2]=c[l+8>>2];c[t+12>>2]=c[l+12>>2];h[x>>3]=+O(+((+h[s>>3]-+h[t>>3])*(+h[s>>3]-+h[t>>3])+(+h[s+8>>3]-+h[t+8>>3])*(+h[s+8>>3]-+h[t+8>>3])));h[A>>3]=+h[x>>3]*.9;if(+h[y>>3]>=+h[A>>3])h[y>>3]=+h[A>>3];do if(+h[s+8>>3]==+h[t+8>>3]){h[u+8>>3]=+h[s+8>>3];B=+h[s>>3];C=+h[y>>3];if(+h[s>>3]<+h[t>>3]){h[u>>3]=B+C;break}else{h[u>>3]=B-C;break}}else{h[u>>3]=+h[s>>3];C=+h[s+8>>3];B=+h[y>>3];if(+h[s+8>>3]<+h[t+8>>3]){h[u+8>>3]=C+B;break}else{h[u+8>>3]=C-B;break}}while(0);y=(c[m>>2]|0)+(c[n>>2]<<4)|0;A=(c[m>>2]|0)+((c[n>>2]|0)+1<<4)|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];c[y>>2]=c[A>>2];c[y+4>>2]=c[A+4>>2];c[y+8>>2]=c[A+8>>2];c[y+12>>2]=c[A+12>>2];A=(c[m>>2]|0)+((c[n>>2]|0)+2<<4)|0;c[A>>2]=c[t>>2];c[A+4>>2]=c[t+4>>2];c[A+8>>2]=c[t+8>>2];c[A+12>>2]=c[t+12>>2];c[(c[p>>2]|0)+8>>2]=c[q>>2];q=(c[p>>2]|0)+16|0;c[q>>2]=c[s>>2];c[q+4>>2]=c[s+4>>2];c[q+8>>2]=c[s+8>>2];c[q+12>>2]=c[s+12>>2];i=k;return}function gH(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0;g=i;i=i+144|0;j=g+120|0;k=g+112|0;l=g+80|0;m=g+72|0;n=g+64|0;o=g+56|0;p=g+48|0;q=g+40|0;r=g+32|0;s=g+24|0;t=g+16|0;u=g+8|0;v=g;h[j>>3]=e;c[g+128>>2]=f;h[d>>3]=+h[d>>3]-+h[b>>3];f=d+8|0;h[f>>3]=+h[f>>3]-+h[b+8>>3];h[k>>3]=+h[j>>3]*10.0/(+O(+(+h[d>>3]*+h[d>>3]+ +h[d+8>>3]*+h[d+8>>3]))+.0001);h[d>>3]=+h[d>>3]+(+h[d>>3]>=0.0?.0001:-.0001);j=d+8|0;h[j>>3]=+h[j>>3]+(+h[d+8>>3]>=0.0?.0001:-.0001);h[d>>3]=+h[d>>3]*+h[k>>3];j=d+8|0;h[j>>3]=+h[j>>3]*+h[k>>3];h[u>>3]=+h[d>>3]/2.0;h[v>>3]=+h[d+8>>3]/2.0;h[m>>3]=+h[b>>3]-+h[v>>3];h[n>>3]=+h[b+8>>3]-+h[u>>3];h[o>>3]=+h[b>>3]+ +h[v>>3];h[p>>3]=+h[b+8>>3]+ +h[u>>3];h[q>>3]=+h[m>>3]+ +h[d>>3];h[r>>3]=+h[n>>3]+ +h[d+8>>3];h[s>>3]=+h[o>>3]+ +h[d>>3];h[t>>3]=+h[p>>3]+ +h[d+8>>3];if(+h[o>>3]>(+h[q>>3]>+h[s>>3]?+h[q>>3]:+h[s>>3]))w=+h[o>>3];else w=+h[q>>3]>+h[s>>3]?+h[q>>3]:+h[s>>3];do if(!(+h[m>>3]>w))if(+h[o>>3]>(+h[q>>3]>+h[s>>3]?+h[q>>3]:+h[s>>3])){x=+h[o>>3];break}else{x=+h[q>>3]>+h[s>>3]?+h[q>>3]:+h[s>>3];break}else x=+h[m>>3];while(0);h[l+16>>3]=x;if(+h[p>>3]>(+h[r>>3]>+h[t>>3]?+h[r>>3]:+h[t>>3]))y=+h[p>>3];else y=+h[r>>3]>+h[t>>3]?+h[r>>3]:+h[t>>3];do if(!(+h[n>>3]>y))if(+h[p>>3]>(+h[r>>3]>+h[t>>3]?+h[r>>3]:+h[t>>3])){z=+h[p>>3];break}else{z=+h[r>>3]>+h[t>>3]?+h[r>>3]:+h[t>>3];break}else z=+h[n>>3];while(0);h[l+16+8>>3]=z;if(+h[o>>3]<(+h[q>>3]<+h[s>>3]?+h[q>>3]:+h[s>>3]))A=+h[o>>3];else A=+h[q>>3]<+h[s>>3]?+h[q>>3]:+h[s>>3];do if(!(+h[m>>3]>3]<(+h[q>>3]<+h[s>>3]?+h[q>>3]:+h[s>>3])){B=+h[o>>3];break}else{B=+h[q>>3]<+h[s>>3]?+h[q>>3]:+h[s>>3];break}else B=+h[m>>3];while(0);h[l>>3]=B;if(+h[p>>3]<(+h[r>>3]<+h[t>>3]?+h[r>>3]:+h[t>>3]))C=+h[p>>3];else C=+h[r>>3]<+h[t>>3]?+h[r>>3]:+h[t>>3];if(+h[n>>3]>3];E=l+8|0;h[E>>3]=D;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=g;return}if(+h[p>>3]<(+h[r>>3]<+h[t>>3]?+h[r>>3]:+h[t>>3])){D=+h[p>>3];E=l+8|0;h[E>>3]=D;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=g;return}else{D=+h[r>>3]<+h[t>>3]?+h[r>>3]:+h[t>>3];E=l+8|0;h[E>>3]=D;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[a+16>>2]=c[l+16>>2];c[a+20>>2]=c[l+20>>2];c[a+24>>2]=c[l+24>>2];c[a+28>>2]=c[l+28>>2];i=g;return}}function hH(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=i;i=i+112|0;l=k+56|0;m=k+40|0;n=k+96|0;o=k+92|0;p=k+32|0;q=k+24|0;r=k+88|0;s=k+84|0;t=k+16|0;u=k+80|0;v=k+76|0;w=k+72|0;x=k;c[n>>2]=a;c[o>>2]=b;h[p>>3]=f;h[q>>3]=g;c[r>>2]=j;c[s>>2]=c[(c[n>>2]|0)+16>>2];c[w>>2]=c[(c[s>>2]|0)+12>>2];c[(c[s>>2]|0)+12>>2]=c[o>>2];rR(c[n>>2]|0,c[(c[c[n>>2]>>2]|0)+336>>2]|0);zR(c[n>>2]|0,+h[q>>3]);h[e>>3]=+h[e>>3]-+h[d>>3];o=e+8|0;h[o>>3]=+h[o>>3]-+h[d+8>>3];h[t>>3]=10.0/(+O(+(+h[e>>3]*+h[e>>3]+ +h[e+8>>3]*+h[e+8>>3]))+.0001);h[e>>3]=+h[e>>3]+(+h[e>>3]>=0.0?.0001:-.0001);o=e+8|0;h[o>>3]=+h[o>>3]+(+h[e+8>>3]>=0.0?.0001:-.0001);h[e>>3]=+h[e>>3]*+h[t>>3];o=e+8|0;h[o>>3]=+h[o>>3]*+h[t>>3];c[u>>2]=0;while(1){if((c[u>>2]|0)>=4){y=5;break}c[v>>2]=c[r>>2]>>(c[u>>2]<<3)&255;if(!(c[v>>2]|0)){y=5;break}t=c[n>>2]|0;g=+h[p>>3];f=+h[q>>3];o=c[v>>2]|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];kH(x,t,m,l,g,f,o);c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];c[u>>2]=(c[u>>2]|0)+1}if((y|0)==5){c[(c[s>>2]|0)+12>>2]=c[w>>2];i=k;return}}function iH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[g>>2];c[c[h>>2]>>2]=0;c[l>>2]=0;while(1){if(!((a[c[j>>2]>>0]|0)!=0?(c[l>>2]|0)<4:0)){n=12;break}c[m>>2]=0;c[k>>2]=c[j>>2];c[j>>2]=tH(c[k>>2]|0,m)|0;if(!(c[m>>2]|0))break;if((c[m>>2]|0)==8&(c[l>>2]|0)==3)c[m>>2]=0;if((c[m>>2]|0)==8&(c[l>>2]|0)==0?(a[c[j>>2]>>0]|0)==0:0)c[m>>2]=0;if(!(c[m>>2]|0))continue;g=c[m>>2]|0;d=c[l>>2]|0;c[l>>2]=d+1;b=c[h>>2]|0;c[b>>2]=c[b>>2]|g<<(d<<3)}if((n|0)==12){i=e;return}c[f>>2]=c[k>>2];$z(0,137373,f)|0;i=e;return}function jH(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;i=d;return (+h[b>>3]-+h[c[c[e>>2]>>2]>>3])*(+h[b>>3]-+h[c[c[e>>2]>>2]>>3])+(+h[b+8>>3]-+h[(c[c[e>>2]>>2]|0)+8>>3])*(+h[b+8>>3]-+h[(c[c[e>>2]>>2]|0)+8>>3])<=+h[c[(c[e>>2]|0)+4>>2]>>3]&255|0}function kH(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=i;i=i+64|0;l=k+32|0;m=k+16|0;n=k+60|0;o=k+8|0;p=k;q=k+56|0;r=k+52|0;s=k+48|0;c[n>>2]=b;h[o>>3]=f;h[p>>3]=g;c[q>>2]=j;c[r>>2]=c[q>>2]&15;c[s>>2]=33736;while(1){if(!(c[c[s>>2]>>2]|0)){t=6;break}u=c[s>>2]|0;if((c[r>>2]|0)==(c[c[s>>2]>>2]|0))break;c[s>>2]=u+24}if((t|0)==6){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=k;return}h[e>>3]=+h[e>>3]*(+h[u+8>>3]*+h[o>>3]);u=e+8|0;h[u>>3]=+h[u>>3]*(+h[(c[s>>2]|0)+8>>3]*+h[o>>3]);u=c[(c[s>>2]|0)+16>>2]|0;s=c[n>>2]|0;g=+h[o>>3];f=+h[p>>3];p=c[q>>2]|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];Rb[u&15](s,m,l,g,f,p);h[d>>3]=+h[d>>3]+ +h[e>>3];h[d+8>>3]=+h[d+8>>3]+ +h[e+8>>3];c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=k;return}function lH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+144|0;k=j+140|0;l=j+120|0;m=j+136|0;n=j+104|0;o=j+88|0;p=j+8|0;q=j;c[k>>2]=a;h[j+128>>3]=e;h[l>>3]=f;c[m>>2]=g;h[q>>3]=.35;if(+h[l>>3]>4.0)h[q>>3]=+h[q>>3]*(+h[l>>3]/4.0);h[o>>3]=-+h[d+8>>3]*+h[q>>3];h[o+8>>3]=+h[d>>3]*+h[q>>3];h[n>>3]=+h[b>>3]+ +h[d>>3];h[n+8>>3]=+h[b+8>>3]+ +h[d+8>>3];d=p+64|0;if(c[m>>2]&32){c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];h[p+16>>3]=+h[b>>3]-+h[o>>3];h[p+16+8>>3]=+h[b+8>>3]-+h[o+8>>3];q=p+32|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];h[p+48>>3]=+h[b>>3]+ +h[o>>3];h[p+48+8>>3]=+h[b+8>>3]+ +h[o+8>>3]}else{c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];h[p+16>>3]=+h[n>>3]-+h[o>>3];h[p+16+8>>3]=+h[n+8>>3]-+h[o+8>>3];d=p+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[p+48>>3]=+h[n>>3]+ +h[o>>3];h[p+48+8>>3]=+h[n+8>>3]+ +h[o+8>>3]}if(c[m>>2]&64){tR(c[k>>2]|0,p,3,((c[m>>2]&16|0)!=0^1)&1);i=j;return}o=c[k>>2]|0;if(c[m>>2]&128){tR(o,p+32|0,3,((c[m>>2]&16|0)!=0^1)&1);i=j;return}else{tR(o,p+16|0,3,((c[m>>2]&16|0)!=0^1)&1);i=j;return}}function mH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+256|0;k=j+244|0;l=j+232|0;m=j+224|0;n=j+240|0;o=j+208|0;p=j+192|0;q=j+176|0;r=j+160|0;s=j+16|0;t=j+8|0;u=j;c[k>>2]=a;h[l>>3]=e;h[m>>3]=f;c[n>>2]=g;h[t>>3]=.45;if(+h[m>>3]>+h[l>>3]*4.0?(c[n>>2]&32|0)!=0:0)h[t>>3]=+h[t>>3]*(+h[m>>3]/(+h[l>>3]*4.0));h[u>>3]=0.0;if(+h[m>>3]>1.0?(c[n>>2]&32|0)!=0:0)h[u>>3]=(+h[m>>3]-1.0)*.05/+h[l>>3];h[q>>3]=-+h[d+8>>3]*+h[t>>3];h[q+8>>3]=+h[d>>3]*+h[t>>3];h[r>>3]=-+h[d+8>>3]*+h[u>>3];h[r+8>>3]=+h[d>>3]*+h[u>>3];h[p>>3]=+h[b>>3]+ +h[d>>3];h[p+8>>3]=+h[b+8>>3]+ +h[d+8>>3];h[o>>3]=+h[b>>3]+ +h[d>>3]*.5;h[o+8>>3]=+h[b+8>>3]+ +h[d+8>>3]*.5;d=s+128|0;if(c[n>>2]&32){c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[s>>2]=c[d>>2];c[s+4>>2]=c[d+4>>2];c[s+8>>2]=c[d+8>>2];c[s+12>>2]=c[d+12>>2];h[s+16>>3]=+h[p>>3]-+h[q>>3];h[s+16+8>>3]=+h[p+8>>3]-+h[q+8>>3];h[s+32>>3]=+h[o>>3]-+h[r>>3];h[s+32+8>>3]=+h[o+8>>3]-+h[r+8>>3];h[s+48>>3]=+h[p>>3]-+h[r>>3];h[s+48+8>>3]=+h[p+8>>3]-+h[r+8>>3];u=s+64|0;c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];c[u+12>>2]=c[p+12>>2];h[s+80>>3]=+h[p>>3]+ +h[r>>3];h[s+80+8>>3]=+h[p+8>>3]+ +h[r+8>>3];h[s+96>>3]=+h[o>>3]+ +h[r>>3];h[s+96+8>>3]=+h[o+8>>3]+ +h[r+8>>3];h[s+112>>3]=+h[p>>3]+ +h[q>>3];h[s+112+8>>3]=+h[p+8>>3]+ +h[q+8>>3]}else{c[d>>2]=c[p>>2];c[d+4>>2]=c[p+4>>2];c[d+8>>2]=c[p+8>>2];c[d+12>>2]=c[p+12>>2];c[s>>2]=c[d>>2];c[s+4>>2]=c[d+4>>2];c[s+8>>2]=c[d+8>>2];c[s+12>>2]=c[d+12>>2];h[s+16>>3]=+h[b>>3]-+h[q>>3];h[s+16+8>>3]=+h[b+8>>3]-+h[q+8>>3];h[s+32>>3]=+h[o>>3]-+h[r>>3];h[s+32+8>>3]=+h[o+8>>3]-+h[r+8>>3];h[s+48>>3]=+h[b>>3];h[s+48+8>>3]=+h[b+8>>3];d=s+64|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[s+80>>3]=+h[b>>3];h[s+80+8>>3]=+h[b+8>>3];h[s+96>>3]=+h[o>>3]+ +h[r>>3];h[s+96+8>>3]=+h[o+8>>3]+ +h[r+8>>3];h[s+112>>3]=+h[b>>3]+ +h[q>>3];h[s+112+8>>3]=+h[b+8>>3]+ +h[q+8>>3]}if(c[n>>2]&64){tR(c[k>>2]|0,s,6,1);i=j;return}q=c[k>>2]|0;if(c[n>>2]&128){tR(q,s+48|0,6,1);i=j;return}else{tR(q,s,9,1);i=j;return}}function nH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+160|0;k=j+148|0;l=j+144|0;m=j+112|0;n=j+96|0;o=j+80|0;p=j+64|0;q=j;c[k>>2]=a;h[j+136>>3]=e;h[j+128>>3]=f;c[l>>2]=g;h[p>>3]=-+h[d+8>>3];h[p+8>>3]=+h[d>>3];h[o>>3]=+h[b>>3]+ +h[d>>3];h[o+8>>3]=+h[b+8>>3]+ +h[d+8>>3];h[m>>3]=+h[b>>3]+ +h[d>>3]*.2;h[m+8>>3]=+h[b+8>>3]+ +h[d+8>>3]*.2;h[n>>3]=+h[b>>3]+ +h[d>>3]*.6;h[n+8>>3]=+h[b+8>>3]+ +h[d+8>>3]*.6;h[q>>3]=+h[m>>3]+ +h[p>>3];h[q+8>>3]=+h[m+8>>3]+ +h[p+8>>3];h[q+16>>3]=+h[m>>3]-+h[p>>3];h[q+16+8>>3]=+h[m+8>>3]-+h[p+8>>3];h[q+32>>3]=+h[n>>3]-+h[p>>3];h[q+32+8>>3]=+h[n+8>>3]-+h[p+8>>3];h[q+48>>3]=+h[n>>3]+ +h[p>>3];h[q+48+8>>3]=+h[n+8>>3]+ +h[p+8>>3];if(!(c[l>>2]&64)){if(c[l>>2]&128){l=q+16|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];l=q+32|0;c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2]}}else{c[q>>2]=c[m>>2];c[q+4>>2]=c[m+4>>2];c[q+8>>2]=c[m+8>>2];c[q+12>>2]=c[m+12>>2];m=q+48|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2]}tR(c[k>>2]|0,q,4,1);c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];b=q+16|0;c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];c[b+12>>2]=c[o+12>>2];wR(c[k>>2]|0,q,2);i=j;return}function oH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+144|0;k=j+132|0;l=j+128|0;m=j+96|0;n=j+80|0;o=j+64|0;p=j;c[k>>2]=a;h[j+120>>3]=e;h[j+112>>3]=f;c[l>>2]=g;h[o>>3]=-+h[d+8>>3]*.4;h[o+8>>3]=+h[d>>3]*.4;h[m>>3]=+h[b>>3]+ +h[d>>3]*.8;h[m+8>>3]=+h[b+8>>3]+ +h[d+8>>3]*.8;h[n>>3]=+h[b>>3]+ +h[d>>3];h[n+8>>3]=+h[b+8>>3]+ +h[d+8>>3];h[p>>3]=+h[b>>3]+ +h[o>>3];h[p+8>>3]=+h[b+8>>3]+ +h[o+8>>3];h[p+16>>3]=+h[b>>3]-+h[o>>3];h[p+16+8>>3]=+h[b+8>>3]-+h[o+8>>3];h[p+32>>3]=+h[m>>3]-+h[o>>3];h[p+32+8>>3]=+h[m+8>>3]-+h[o+8>>3];h[p+48>>3]=+h[m>>3]+ +h[o>>3];h[p+48+8>>3]=+h[m+8>>3]+ +h[o+8>>3];if(!(c[l>>2]&64)){if(c[l>>2]&128){o=p+16|0;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];o=p+32|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2]}}else{c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];b=p+48|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2]}tR(c[k>>2]|0,p,4,((c[l>>2]&16|0)!=0^1)&1);c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];m=p+16|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];wR(c[k>>2]|0,p,2);i=j;return}function pH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+160|0;k=j+148|0;l=j+144|0;m=j+112|0;n=j+96|0;o=j+80|0;p=j;c[k>>2]=a;h[j+136>>3]=e;h[j+128>>3]=f;c[l>>2]=g;h[o>>3]=-+h[d+8>>3]/3.0;h[o+8>>3]=+h[d>>3]/3.0;h[n>>3]=+h[b>>3]+ +h[d>>3]/2.0;h[n+8>>3]=+h[b+8>>3]+ +h[d+8>>3]/2.0;h[m>>3]=+h[b>>3]+ +h[d>>3];h[m+8>>3]=+h[b+8>>3]+ +h[d+8>>3];d=p+64|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];h[p+16>>3]=+h[n>>3]+ +h[o>>3];h[p+16+8>>3]=+h[n+8>>3]+ +h[o+8>>3];d=p+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[p+48>>3]=+h[n>>3]-+h[o>>3];h[p+48+8>>3]=+h[n+8>>3]-+h[o+8>>3];if(c[l>>2]&64){tR(c[k>>2]|0,p+32|0,3,((c[l>>2]&16|0)!=0^1)&1);i=j;return}o=c[k>>2]|0;k=((c[l>>2]&16|0)!=0^1)&1;if(c[l>>2]&128){tR(o,p,3,k);i=j;return}else{tR(o,p,4,k);i=j;return}}function qH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+64|0;k=j+60|0;l=j+56|0;m=j+32|0;n=j;c[k>>2]=a;h[j+48>>3]=e;h[j+40>>3]=f;c[l>>2]=g;h[m>>3]=+O(+(+h[d>>3]*+h[d>>3]+ +h[d+8>>3]*+h[d+8>>3]))/2.0;h[n>>3]=+h[b>>3]+ +h[d>>3]/2.0-+h[m>>3];h[n+8>>3]=+h[b+8>>3]+ +h[d+8>>3]/2.0-+h[m>>3];h[n+16>>3]=+h[b>>3]+ +h[d>>3]/2.0+ +h[m>>3];h[n+16+8>>3]=+h[b+8>>3]+ +h[d+8>>3]/2.0+ +h[m>>3];sR(c[k>>2]|0,n,2,((c[l>>2]&16|0)!=0^1)&1);i=j;return}function rH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;j=i;i=i+208|0;k=j+204|0;l=j+184|0;m=j+200|0;n=j+176|0;o=j+160|0;p=j+144|0;q=j+128|0;r=j+64|0;s=j+32|0;c[k>>2]=a;h[j+192>>3]=e;h[l>>3]=f;c[m>>2]=g;if(+h[l>>3]>4.0)t=+h[l>>3]*.5/4.0;else t=.5;h[n>>3]=t;h[o>>3]=+h[b>>3]+ +h[d>>3];h[o+8>>3]=+h[b+8>>3]+ +h[d+8>>3];h[p>>3]=-+h[d+8>>3]*+h[n>>3];h[p+8>>3]=+h[d>>3]*+h[n>>3];h[q>>3]=+h[p+8>>3];h[q+8>>3]=-+h[p>>3];c[s>>2]=c[b>>2];c[s+4>>2]=c[b+4>>2];c[s+8>>2]=c[b+8>>2];c[s+12>>2]=c[b+12>>2];n=s+16|0;c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];h[r>>3]=+h[b>>3]+ +h[p>>3]+ +h[q>>3];h[r+8>>3]=+h[b+8>>3]+ +h[p+8>>3]+ +h[q+8>>3];h[r+48>>3]=+h[b>>3]-+h[p>>3]+ +h[q>>3];h[r+48+8>>3]=+h[b+8>>3]-+h[p+8>>3]+ +h[q+8>>3];h[r+16>>3]=+h[b>>3]+ +h[p>>3]*.95+ +h[q>>3]-+h[q>>3]*4.0/3.0;h[r+16+8>>3]=+h[r+8>>3]-+h[q+8>>3]*4.0/3.0;h[r+32>>3]=+h[b>>3]-+h[p>>3]*.95+ +h[q>>3]-+h[q>>3]*4.0/3.0;h[r+32+8>>3]=+h[r+48+8>>3]-+h[q+8>>3]*4.0/3.0;wR(c[k>>2]|0,s,2);if(c[m>>2]&64){qO(j+16|0,r,3,.5,0,r);u=c[k>>2]|0;vR(u,r,4,0,0,0);i=j;return}if(!(c[m>>2]&128)){u=c[k>>2]|0;vR(u,r,4,0,0,0);i=j;return}qO(j,r,3,.5,r,0);u=c[k>>2]|0;vR(u,r,4,0,0,0);i=j;return}function sH(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var j=0,k=0,l=0,m=0;j=i;i=i+80|0;k=j+68|0;l=j+32|0;m=j;c[k>>2]=a;h[j+56>>3]=e;h[j+48>>3]=f;c[j+64>>2]=g;h[l>>3]=+h[b>>3]+ +h[d>>3];h[l+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];b=m+16|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2];wR(c[k>>2]|0,m,2);i=j;return}function tH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;c[h>>2]=uH(c[e>>2]|0,54640,j)|0;if((c[h>>2]|0)==(c[e>>2]|0)){do{c[g>>2]=c[h>>2];c[h>>2]=uH(c[g>>2]|0,54656,j)|0}while((c[g>>2]|0)!=(c[h>>2]|0));c[h>>2]=uH(c[h>>2]|0,54704,j)|0}if((c[j>>2]|0)!=0?(c[j>>2]&15|0)==0:0)c[j>>2]=c[j>>2]|1;g=c[f>>2]|0;c[g>>2]=c[g>>2]|c[j>>2];i=d;return c[h>>2]|0}function uH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[l>>2]=c[f>>2];c[j>>2]=c[g>>2];while(1){if(!(c[c[j>>2]>>2]|0)){m=6;break}c[k>>2]=N3(c[c[j>>2]>>2]|0)|0;g=(P3(c[f>>2]|0,c[c[j>>2]>>2]|0,c[k>>2]|0)|0)==0;n=c[j>>2]|0;if(g)break;c[j>>2]=n+8}if((m|0)==6){o=c[l>>2]|0;i=e;return o|0}m=c[h>>2]|0;c[m>>2]=c[m>>2]|c[n+4>>2];c[l>>2]=(c[l>>2]|0)+(c[k>>2]|0);o=c[l>>2]|0;i=e;return o|0}function vH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;c[h>>2]=b;c[k>>2]=0;b=yA(c[h>>2]|0,137468)|0;c[j>>2]=b;if(!((b|0)!=0?(a[c[j>>2]>>0]|0)!=0:0))l=3;do if((l|0)==3){b=yA(c[h>>2]|0,137480)|0;c[j>>2]=b;if((b|0)!=0?(a[c[j>>2]>>0]|0)!=0:0)break;c[g>>2]=0;m=c[g>>2]|0;i=d;return m|0}while(0);c[k>>2]=tS(c[j>>2]|0,0,120)|0;if(!(c[k>>2]|0)){c[f>>2]=wB(c[h>>2]|0)|0;$z(0,137487,f)|0;c[e>>2]=c[j>>2];$z(3,137540,e)|0}c[g>>2]=c[k>>2];m=c[g>>2]|0;i=d;return m|0}function wH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;c[d>>2]=a;a=bK(304)|0;c[e>>2]=a;if(!a)$z(1,137548,b)|0;a=c[(c[d>>2]|0)+16>>2]|0;c[c[e>>2]>>2]=a;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=c[e>>2];d=c[e>>2]|0;if(c[f>>2]|0){a=d+16|0;g=(c[f>>2]|0)+16|0;j=a+40|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(j|0));a=(c[e>>2]|0)+56|0;g=(c[f>>2]|0)+56|0;j=a+40|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(j|0));c[(c[e>>2]|0)+144>>2]=c[(c[f>>2]|0)+144>>2];c[(c[e>>2]|0)+148>>2]=c[(c[f>>2]|0)+148>>2];h[(c[e>>2]|0)+152>>3]=+h[(c[f>>2]|0)+152>>3];c[(c[e>>2]|0)+136>>2]=c[(c[f>>2]|0)+136>>2];a=(c[e>>2]|0)+96|0;g=(c[f>>2]|0)+96|0;j=a+40|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(j|0));k=c[e>>2]|0;i=b;return k|0}else{c[d+144>>2]=3;c[(c[e>>2]|0)+148>>2]=0;h[(c[e>>2]|0)+152>>3]=1.0;k=c[e>>2]|0;i=b;return k|0}return 0}function xH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+16>>2];if(c[e>>2]|0){O4(c[(c[e>>2]|0)+212>>2]|0);O4(c[(c[e>>2]|0)+208>>2]|0);O4(c[(c[e>>2]|0)+216>>2]|0);O4(c[(c[e>>2]|0)+220>>2]|0);O4(c[(c[e>>2]|0)+224>>2]|0);O4(c[(c[e>>2]|0)+228>>2]|0);O4(c[(c[e>>2]|0)+232>>2]|0);O4(c[(c[e>>2]|0)+236>>2]|0);O4(c[(c[e>>2]|0)+240>>2]|0);O4(c[(c[e>>2]|0)+244>>2]|0);O4(c[(c[e>>2]|0)+248>>2]|0);O4(c[(c[e>>2]|0)+252>>2]|0);O4(c[(c[e>>2]|0)+256>>2]|0);O4(c[(c[e>>2]|0)+272>>2]|0);O4(c[(c[e>>2]|0)+284>>2]|0);O4(c[(c[e>>2]|0)+280>>2]|0);c[(c[d>>2]|0)+16>>2]=c[c[e>>2]>>2];O4(c[e>>2]|0);i=b;return}else La(137574,137578,119,137585)}function yH(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+48|0;m=l+36|0;n=l+32|0;o=l+28|0;p=l+24|0;q=l+20|0;r=l+16|0;s=l+12|0;t=l+8|0;u=l+4|0;v=l;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;c[s>>2]=k;c[t>>2]=c[(c[m>>2]|0)+16>>2];c[u>>2]=c[(c[m>>2]|0)+152>>2];c[v>>2]=0;if((c[u>>2]&32768|0)!=0&(c[n>>2]|0)!=0)c[(c[t>>2]|0)+192>>2]=c[n>>2];if(((c[u>>2]&65536|0)!=0?(n=WJ(c[r>>2]|0,c[s>>2]|0)|0,c[(c[t>>2]|0)+212>>2]=n,(c[o>>2]|0)!=0):0)?(a[c[o>>2]>>0]|0)!=0:0){n=WJ(c[o>>2]|0,c[s>>2]|0)|0;c[(c[t>>2]|0)+208>>2]=n;c[v>>2]=1}do if(c[u>>2]&4194304){if((c[p>>2]|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){n=WJ(c[p>>2]|0,c[s>>2]|0)|0;c[(c[t>>2]|0)+228>>2]=n;n=(c[t>>2]|0)+260|0;b[n>>1]=b[n>>1]&-2|1;c[v>>2]=1;break}if(c[(c[t>>2]|0)+192>>2]|0){n=M3(c[(c[t>>2]|0)+192>>2]|0)|0;c[(c[t>>2]|0)+228>>2]=n;c[v>>2]=1}}while(0);if(!((c[u>>2]&8388608|0)!=0&(c[q>>2]|0)!=0)){w=c[v>>2]|0;i=l;return w|0}if(!(a[c[q>>2]>>0]|0)){w=c[v>>2]|0;i=l;return w|0}u=WJ(c[q>>2]|0,c[s>>2]|0)|0;c[(c[t>>2]|0)+244>>2]=u;c[v>>2]=1;w=c[v>>2]|0;i=l;return w|0}function zH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+112|0;g=f;h=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f+40|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=c[(c[c[j>>2]>>2]|0)+168>>2];c[o>>2]=c[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+92>>2];MH(c[j>>2]|0,c[l>>2]|0);c[m>>2]=yA(c[k>>2]|0,179069)|0;if((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=0:0){gA(c[l>>2]|0,c[m>>2]|0)|0;if((c[(c[l>>2]|0)+4>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)eA(c[l>>2]|0,1)|0;m=(c[l>>2]|0)+4|0;j=c[m>>2]|0;c[m>>2]=j+1;a[j>>0]=0;j=c[c[l>>2]>>2]|0;c[(c[l>>2]|0)+4>>2]=j;c[h>>2]=j;s=c[h>>2]|0;i=f;return s|0}if((c[o>>2]|0)!=0?(c[k>>2]|0)!=(c[n>>2]|0):0){gA(c[l>>2]|0,c[o>>2]|0)|0;if((c[(c[l>>2]|0)+4>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)eA(c[l>>2]|0,1)|0;o=(c[l>>2]|0)+4|0;j=c[o>>2]|0;c[o>>2]=j+1;a[j>>0]=95}a:do switch(BC(c[k>>2]|0)|0){case 0:{c[p>>2]=(c[c[k>>2]>>2]|0)>>>4;if((c[n>>2]|0)==(c[k>>2]|0)){c[q>>2]=149098;break a}else{c[q>>2]=137599;break a}break}case 1:{c[p>>2]=(c[c[k>>2]>>2]|0)>>>4;c[q>>2]=149084;break}case 2:{c[p>>2]=(c[c[k>>2]>>2]|0)>>>4;c[q>>2]=149079;break}default:{}}while(0);gA(c[l>>2]|0,c[q>>2]|0)|0;c[g>>2]=c[p>>2];k3(r,137605,g)|0;gA(c[l>>2]|0,r)|0;if((c[(c[l>>2]|0)+4>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)eA(c[l>>2]|0,1)|0;r=(c[l>>2]|0)+4|0;g=c[r>>2]|0;c[r>>2]=g+1;a[g>>0]=0;g=c[c[l>>2]>>2]|0;c[(c[l>>2]|0)+4>>2]=g;c[h>>2]=g;s=c[h>>2]|0;i=f;return s|0}function AH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0;e=i;i=i+112|0;f=e+56|0;j=e+100|0;k=e+96|0;l=e+92|0;m=e+88|0;n=e+84|0;o=e+80|0;p=e+76|0;q=e+48|0;r=e+32|0;s=e+16|0;t=e+72|0;u=e+8|0;v=e;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;h[q>>3]=+h[(c[(c[k>>2]|0)+16>>2]|0)+152>>3];c[p>>2]=NH(c[m>>2]|0,0,n)|0;if((c[p>>2]|0)==1|(c[p>>2]|0)==2){c[j>>2]=c[p>>2];w=c[j>>2]|0;i=e;return w|0}h[r>>3]=(+h[c[l>>2]>>3]+ +h[(c[l>>2]|0)+16>>3])/2.0;h[r+8>>3]=(+h[(c[l>>2]|0)+8>>3]+ +h[(c[l>>2]|0)+16+8>>3])/2.0;h[s>>3]=+h[(c[l>>2]|0)+16>>3]-+h[r>>3];h[s+8>>3]=+h[(c[l>>2]|0)+16+8>>3]-+h[r+8>>3];if(+h[q>>3]>.5)zR(c[k>>2]|0,.5);h[u>>3]=0.0;c[o>>2]=c[(c[n>>2]|0)+8>>2];while(1){if(!(c[c[o>>2]>>2]|0))break;if(!(+g[(c[o>>2]|0)+4>>2]==0.0)){if(c[c[o>>2]>>2]|0)x=c[c[o>>2]>>2]|0;else x=174917;pR(c[k>>2]|0,x);if(!(c[(c[o>>2]|0)+12>>2]|0))h[v>>3]=6.283185307179586;else h[v>>3]=+h[u>>3]+ +g[(c[o>>2]|0)+4>>2]*6.283185307179586;y=+h[s>>3];z=+h[s+8>>3];A=+h[u>>3];B=+h[v>>3];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];c[t>>2]=kT(f,y,z,A,B)|0;vR(c[k>>2]|0,c[c[t>>2]>>2]|0,c[(c[t>>2]|0)+4>>2]|0,0,0,1);h[u>>3]=+h[v>>3];hY(c[t>>2]|0)}c[o>>2]=(c[o>>2]|0)+12}if(+h[q>>3]>.5)zR(c[k>>2]|0,+h[q>>3]);OH(c[n>>2]|0);c[j>>2]=c[p>>2];w=c[j>>2]|0;i=e;return w|0}function BH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0;f=i;i=i+128|0;j=f+116|0;k=f+112|0;l=f+108|0;m=f+104|0;n=f+100|0;o=f+96|0;p=f+92|0;q=f+88|0;r=f+80|0;s=f+16|0;t=f+8|0;u=f;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;h[u>>3]=+h[(c[(c[k>>2]|0)+16>>2]|0)+152>>3];c[q>>2]=NH(c[m>>2]|0,0,o)|0;if((c[q>>2]|0)==1|(c[q>>2]|0)==2){c[j>>2]=c[q>>2];v=c[j>>2]|0;i=f;return v|0}m=c[l>>2]|0;if(c[n>>2]|0){n=m+32|0;c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];n=s+16|0;e=(c[l>>2]|0)+48|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];e=s+32|0;n=c[l>>2]|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];n=s+48|0;e=(c[l>>2]|0)+16|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2]}else{c[s>>2]=c[m>>2];c[s+4>>2]=c[m+4>>2];c[s+8>>2]=c[m+8>>2];c[s+12>>2]=c[m+12>>2];m=s+16|0;e=(c[l>>2]|0)+16|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];e=s+32|0;m=(c[l>>2]|0)+32|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];m=s+48|0;e=(c[l>>2]|0)+48|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2]}h[t>>3]=+h[s+16>>3];h[r>>3]=+h[s+16>>3]-+h[s>>3];w=+h[s>>3];h[s+32>>3]=w;h[s+16>>3]=w;if(+h[u>>3]>.5)zR(c[k>>2]|0,.5);c[p>>2]=c[(c[o>>2]|0)+8>>2];while(1){if(!(c[c[p>>2]>>2]|0))break;if(!(+g[(c[p>>2]|0)+4>>2]==0.0)){if(c[c[p>>2]>>2]|0)x=c[c[p>>2]>>2]|0;else x=174917;pR(c[k>>2]|0,x);if(!(c[(c[p>>2]|0)+12>>2]|0)){w=+h[t>>3];h[s+32>>3]=w;h[s+16>>3]=w}else{w=+h[s>>3]+ +h[r>>3]*+g[(c[p>>2]|0)+4>>2];h[s+32>>3]=w;h[s+16>>3]=w}tR(c[k>>2]|0,s,4,1);w=+h[s+16>>3];h[s+48>>3]=w;h[s>>3]=w}c[p>>2]=(c[p>>2]|0)+12}if(+h[u>>3]>.5)zR(c[k>>2]|0,+h[u>>3]);OH(c[o>>2]|0);c[j>>2]=c[q>>2];v=c[j>>2]|0;i=f;return v|0}function CH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[g>>2]=c[(c[e>>2]|0)+152>>2];if(!(c[g>>2]&4259840)){i=d;return}a=(c[f>>2]|0)+264|0;if(c[g>>2]&131072){c[a>>2]=0;c[(c[f>>2]|0)+268>>2]=2}else{c[a>>2]=2;c[(c[f>>2]|0)+268>>2]=4}O4(c[(c[f>>2]|0)+272>>2]|0);a=bK(c[(c[f>>2]|0)+268>>2]<<4)|0;c[h>>2]=a;c[(c[f>>2]|0)+272>>2]=a;a=c[h>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];a=(c[h>>2]|0)+16|0;f=b+16|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];if(!(c[g>>2]&8192))UQ(c[e>>2]|0,c[h>>2]|0,c[h>>2]|0,2)|0;if(c[g>>2]&131072){i=d;return}DJ(c[h>>2]|0);i=d;return}function DH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;d=i;i=i+160|0;e=d+152|0;f=d+148|0;g=d+144|0;j=d+80|0;k=d+16|0;l=d;c[e>>2]=a;c[f>>2]=b;if(((((((((((((((!(+h[c[f>>2]>>3]>+h[(c[e>>2]|0)+16>>3])?!(+h[c[f>>2]>>3]<+h[c[e>>2]>>3]):0)?!(+h[(c[f>>2]|0)+8>>3]>+h[(c[e>>2]|0)+16+8>>3]):0)?!(+h[(c[f>>2]|0)+8>>3]<+h[(c[e>>2]|0)+8>>3]):0)?!(+h[(c[f>>2]|0)+16>>3]>+h[(c[e>>2]|0)+16>>3]):0)?!(+h[(c[f>>2]|0)+16>>3]<+h[c[e>>2]>>3]):0)?!(+h[(c[f>>2]|0)+16+8>>3]>+h[(c[e>>2]|0)+16+8>>3]):0)?!(+h[(c[f>>2]|0)+16+8>>3]<+h[(c[e>>2]|0)+8>>3]):0)?!(+h[(c[f>>2]|0)+32>>3]>+h[(c[e>>2]|0)+16>>3]):0)?!(+h[(c[f>>2]|0)+32>>3]<+h[c[e>>2]>>3]):0)?!(+h[(c[f>>2]|0)+32+8>>3]>+h[(c[e>>2]|0)+16+8>>3]):0)?!(+h[(c[f>>2]|0)+32+8>>3]<+h[(c[e>>2]|0)+8>>3]):0)?!(+h[(c[f>>2]|0)+48>>3]>+h[(c[e>>2]|0)+16>>3]):0)?!(+h[(c[f>>2]|0)+48>>3]<+h[c[e>>2]>>3]):0)?!(+h[(c[f>>2]|0)+48+8>>3]>+h[(c[e>>2]|0)+16+8>>3]):0)?!(+h[(c[f>>2]|0)+48+8>>3]<+h[(c[e>>2]|0)+8>>3]):0){i=d;return}if(!(PH(c[f>>2]|0)|0)){qO(l,c[f>>2]|0,3,.5,j,k);DH(c[e>>2]|0,j);DH(c[e>>2]|0,k);i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=4)break;m=+h[(c[f>>2]|0)+(c[g>>2]<<4)>>3];k=c[e>>2]|0;if(!(+h[(c[f>>2]|0)+(c[g>>2]<<4)>>3]>+h[(c[e>>2]|0)+16>>3])){if(m<+h[k>>3])h[c[e>>2]>>3]=+h[(c[f>>2]|0)+(c[g>>2]<<4)>>3]}else h[k+16>>3]=m;m=+h[(c[f>>2]|0)+(c[g>>2]<<4)+8>>3];k=c[e>>2]|0;if(!(+h[(c[f>>2]|0)+(c[g>>2]<<4)+8>>3]>+h[(c[e>>2]|0)+16+8>>3])){if(m<+h[k+8>>3])h[(c[e>>2]|0)+8>>3]=+h[(c[f>>2]|0)+(c[g>>2]<<4)+8>>3]}else h[k+16+8>>3]=m;c[g>>2]=(c[g>>2]|0)+1}i=d;return}function EH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+384|0;f=e+328|0;g=e+368|0;j=e+364|0;k=e+360|0;l=e+356|0;m=e+320|0;n=e+352|0;o=e+288|0;p=e+272|0;q=e+240|0;r=e+208|0;s=e+348|0;t=e+176|0;u=e+144|0;v=e+344|0;w=e+112|0;x=e+80|0;y=e+48|0;z=e+32|0;A=e;c[g>>2]=d;c[j>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+144>>2];h[m>>3]=0.0;c[n>>2]=0;d=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[r>>2]=c[d>>2];c[r+4>>2]=c[d+4>>2];c[r+8>>2]=c[d+8>>2];c[r+12>>2]=c[d+12>>2];c[r+16>>2]=c[d+16>>2];c[r+20>>2]=c[d+20>>2];c[r+24>>2]=c[d+24>>2];c[r+28>>2]=c[d+28>>2];c[s>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;if(!(c[s>>2]|0)){c[b>>2]=c[r>>2];c[b+4>>2]=c[r+4>>2];c[b+8>>2]=c[r+8>>2];c[b+12>>2]=c[r+12>>2];c[b+16>>2]=c[r+16>>2];c[b+20>>2]=c[r+20>>2];c[b+24>>2]=c[r+24>>2];c[b+28>>2]=c[r+28>>2];i=e;return}if(+h[r>>3]==+h[r+16>>3]?+h[r+8>>3]==+h[r+16+8>>3]:0){h[r+8>>3]=1797693134862315708145274.0e284;h[r>>3]=1797693134862315708145274.0e284;h[r+16+8>>3]=-1797693134862315708145274.0e284;h[r+16>>3]=-1797693134862315708145274.0e284}c[k>>2]=c[(c[s>>2]|0)+8>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[c[s>>2]>>2]|0))break;c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];c[t+12>>2]=c[u+12>>2];c[t+16>>2]=c[u+16>>2];c[t+20>>2]=c[u+20>>2];c[t+24>>2]=c[u+24>>2];c[t+28>>2]=c[u+28>>2];switch(c[c[k>>2]>>2]|0){case 1:case 0:{h[o>>3]=+h[(c[k>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8+16>>3];h[o+8>>3]=+h[(c[k>>2]|0)+8+8>>3]-+h[(c[k>>2]|0)+8+24>>3];h[o+16>>3]=+h[(c[k>>2]|0)+8>>3]+ +h[(c[k>>2]|0)+8+16>>3];h[o+16+8>>3]=+h[(c[k>>2]|0)+8+8>>3]+ +h[(c[k>>2]|0)+8+24>>3];g=(c[k>>2]|0)+80|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];g=(c[k>>2]|0)+80+16|0;d=o+16|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];QH(r,f);d=o+16|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];QH(r,f);break}case 3:case 2:{d=(c[k>>2]|0)+80|0;RH(w,c[(c[k>>2]|0)+8+4>>2]|0,c[(c[k>>2]|0)+8>>2]|0,r);c[d>>2]=c[w>>2];c[d+4>>2]=c[w+4>>2];c[d+8>>2]=c[w+8>>2];c[d+12>>2]=c[w+12>>2];c[d+16>>2]=c[w+16>>2];c[d+20>>2]=c[w+20>>2];c[d+24>>2]=c[w+24>>2];c[d+28>>2]=c[w+28>>2];break}case 5:case 4:{d=(c[k>>2]|0)+80|0;RH(x,c[(c[k>>2]|0)+8+4>>2]|0,c[(c[k>>2]|0)+8>>2]|0,r);c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];c[d+16>>2]=c[x+16>>2];c[d+20>>2]=c[x+20>>2];c[d+24>>2]=c[x+24>>2];c[d+28>>2]=c[x+28>>2];break}case 6:{d=(c[k>>2]|0)+80|0;RH(y,c[(c[k>>2]|0)+8+4>>2]|0,c[(c[k>>2]|0)+8>>2]|0,r);c[d>>2]=c[y>>2];c[d+4>>2]=c[y+4>>2];c[d+8>>2]=c[y+8>>2];c[d+12>>2]=c[y+12>>2];c[d+16>>2]=c[y+16>>2];c[d+20>>2]=c[y+20>>2];c[d+24>>2]=c[y+24>>2];c[d+28>>2]=c[y+28>>2];break}case 7:{d=bK(56)|0;c[(c[k>>2]|0)+112>>2]=d;d=M3(c[(c[k>>2]|0)+8+32>>2]|0)|0;c[c[(c[k>>2]|0)+112>>2]>>2]=d;a[(c[(c[k>>2]|0)+112>>2]|0)+48>>0]=a[137609+(c[(c[k>>2]|0)+8+16>>2]|0)>>0]|0;c[t>>2]=c[n>>2];h[t+16>>3]=+h[m>>3];d=t+24|0;c[d>>2]=c[d>>2]&-128|c[v>>2]&127;d=Hb[c[c[(c[j>>2]|0)+144>>2]>>2]&63](c[(c[j>>2]|0)+144>>2]|0,t,1)|0;c[(c[(c[k>>2]|0)+112>>2]|0)+4>>2]=d;SN(z,c[j>>2]|0,c[(c[k>>2]|0)+112>>2]|0);c[p>>2]=c[z>>2];c[p+4>>2]=c[z+4>>2];c[p+8>>2]=c[z+8>>2];c[p+12>>2]=c[z+12>>2];SH(A,+h[(c[k>>2]|0)+8>>3],+h[(c[k>>2]|0)+8+8>>3],c[(c[k>>2]|0)+112>>2]|0);c[q>>2]=c[A>>2];c[q+4>>2]=c[A+4>>2];c[q+8>>2]=c[A+8>>2];c[q+12>>2]=c[A+12>>2];c[q+16>>2]=c[A+16>>2];c[q+20>>2]=c[A+20>>2];c[q+24>>2]=c[A+24>>2];c[q+28>>2]=c[A+28>>2];d=(c[k>>2]|0)+80|0;c[d>>2]=c[q>>2];c[d+4>>2]=c[q+4>>2];c[d+8>>2]=c[q+8>>2];c[d+12>>2]=c[q+12>>2];c[d+16>>2]=c[q+16>>2];c[d+20>>2]=c[q+20>>2];c[d+24>>2]=c[q+24>>2];c[d+28>>2]=c[q+28>>2];c[f>>2]=c[q>>2];c[f+4>>2]=c[q+4>>2];c[f+8>>2]=c[q+8>>2];c[f+12>>2]=c[q+12>>2];QH(r,f);d=q+16|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];QH(r,f);if(!(c[(c[s>>2]|0)+12>>2]|0))c[(c[s>>2]|0)+12>>2]=100;break}case 10:{h[m>>3]=+h[(c[k>>2]|0)+8>>3];c[n>>2]=c[(c[k>>2]|0)+8+8>>2];break}case 15:{c[v>>2]=c[(c[k>>2]|0)+8>>2];break}default:{}}c[k>>2]=(c[k>>2]|0)+120;c[l>>2]=(c[l>>2]|0)+1}c[b>>2]=c[r>>2];c[b+4>>2]=c[r+4>>2];c[b+8>>2]=c[r+8>>2];c[b+12>>2]=c[r+12>>2];c[b+16>>2]=c[r+16>>2];c[b+20>>2]=c[r+20>>2];c[b+24>>2]=c[r+24>>2];c[b+28>>2]=c[r+28>>2];i=e;return}function FH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=b;c[g>>2]=d;c[l>>2]=c[(c[f>>2]|0)+152>>2];h[(c[f>>2]|0)+488>>3]=+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+432>>3]/72.0;h[(c[f>>2]|0)+488+8>>3]=+h[(c[f>>2]|0)+352>>3]*+h[(c[f>>2]|0)+432+8>>3]/72.0;h[(c[f>>2]|0)+520>>3]=+h[(c[f>>2]|0)+432>>3]/72.0;h[(c[f>>2]|0)+520+8>>3]=+h[(c[f>>2]|0)+432+8>>3]/72.0;if((c[13802]|0)!=0?1:(c[(c[f>>2]|0)+152>>2]&4096|0)!=0){d=(c[f>>2]|0)+520+8|0;h[d>>3]=+h[d>>3]*-1.0}n=+((c[(c[f>>2]|0)+448>>2]|0)>>>0);d=(c[f>>2]|0)+488|0;if(c[(c[f>>2]|0)+360>>2]|0){h[(c[f>>2]|0)+368+8>>3]=n/+h[d+8>>3];h[(c[f>>2]|0)+368>>3]=+((c[(c[f>>2]|0)+452>>2]|0)>>>0)/+h[(c[f>>2]|0)+488>>3]}else{h[(c[f>>2]|0)+368>>3]=n/+h[d>>3];h[(c[f>>2]|0)+368+8>>3]=+((c[(c[f>>2]|0)+452>>2]|0)>>>0)/+h[(c[f>>2]|0)+488+8>>3]}d=c[g>>2]|0;c[k>>2]=hO(d,qA(c[g>>2]|0,0,139314,0)|0,178518)|0;xR(c[f>>2]|0,c[k>>2]|0);c[(c[f>>2]|0)+160>>2]=0;UH(c[f>>2]|0,c[g>>2]|0);if(c[l>>2]&2)VH(c[f>>2]|0,c[g>>2]|0);c[j>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;a[(c[(c[j>>2]|0)+8>>2]|0)+116>>0]=0;c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}WH(c[f>>2]|0,m);while(1){j=(XH(c[f>>2]|0)|0)<<24>>24!=0;o=c[f>>2]|0;if(!j)break;if((YH(o)|0)>1)ZQ(c[f>>2]|0);ZH(c[f>>2]|0);while(1){j=(_H(c[f>>2]|0)|0)<<24>>24!=0;p=c[f>>2]|0;if(!j)break;$H(p,c[g>>2]|0);aI(c[f>>2]|0)}if((YH(p)|0)>1)_Q(c[f>>2]|0);bI(c[f>>2]|0,m)}cI(o,c[g>>2]|0);i=e;return}function GH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if(!(c[13702]|0))c[13702]=Nz(54812,c[12989]|0)|0;if(Hb[c[c[13702]>>2]&63](c[13702]|0,c[e>>2]|0,4)|0){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{a=c[c[13702]>>2]|0;g=c[13702]|0;h=M3(c[e>>2]|0)|0;Hb[a&63](g,h,1)|0;c[d>>2]=1;f=c[d>>2]|0;i=b;return f|0}return 0}function HH(e,f,j){e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=i;i=i+208|0;l=k+80|0;m=k+72|0;n=k+196|0;o=k+192|0;p=k+188|0;q=k+184|0;r=k+180|0;s=k+176|0;t=k+172|0;u=k+8|0;v=k+168|0;w=k+164|0;x=k+160|0;y=k+156|0;z=k+152|0;A=k+148|0;B=k+144|0;C=k+140|0;D=k+136|0;E=k+132|0;F=k+128|0;G=k;H=k+120|0;I=k+116|0;J=k+112|0;c[n>>2]=e;c[o>>2]=f;c[p>>2]=j;c[r>>2]=1;while(1){if((c[r>>2]|0)>(c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]|0))break;c[A>>2]=c[(c[(c[(c[o>>2]|0)+8>>2]|0)+184>>2]|0)+(c[r>>2]<<2)>>2];if((dI(c[n>>2]|0,c[A>>2]|0)|0)&255){if(c[p>>2]&4)HH(c[n>>2]|0,c[A>>2]|0,c[p>>2]|0);eI(c[n>>2]|0,c[A>>2]|0);c[D>>2]=c[(c[n>>2]|0)+16>>2];if(c[(c[D>>2]|0)+208>>2]|0)K=1;else K=((b[(c[D>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)!=0;c[F>>2]=K&1;dT(yA(c[A>>2]|0,137612)|0);if((c[F>>2]|0)!=0?(c[p>>2]&4|0)==0:0){j=c[n>>2]|0;f=(c[(c[A>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[l+16>>2]=c[f+16>>2];c[l+20>>2]=c[f+20>>2];c[l+24>>2]=c[f+24>>2];c[l+28>>2]=c[f+28>>2];CH(j,l);jR(c[n>>2]|0,c[(c[D>>2]|0)+208>>2]|0,c[(c[D>>2]|0)+228>>2]|0,c[(c[D>>2]|0)+244>>2]|0,c[(c[D>>2]|0)+212>>2]|0)}c[t>>2]=0;c[s>>2]=0;j=fI(c[A>>2]|0,s)|0;c[y>>2]=j;if((j|0)!=0?(rR(c[n>>2]|0,c[y>>2]|0),(c[s>>2]&1|0)!=0):0)c[t>>2]=1;c[x>>2]=0;c[w>>2]=0;j=c[A>>2]|0;do if(!(d[(c[(c[A>>2]|0)+8>>2]|0)+112>>0]&1)){f=c[A>>2]|0;if(d[(c[j+8>>2]|0)+112>>0]&2){c[x>>2]=iO(f,c[13803]|0,143682)|0;c[w>>2]=iO(c[A>>2]|0,c[13804]|0,143690)|0;c[t>>2]=1;break}e=c[A>>2]|0;if(d[(c[f+8>>2]|0)+112>>0]&8){c[x>>2]=iO(e,c[13807]|0,143698)|0;c[w>>2]=iO(c[A>>2]|0,c[13808]|0,143706)|0;c[t>>2]=1;break}f=c[A>>2]|0;if(d[(c[e+8>>2]|0)+112>>0]&4){c[x>>2]=iO(f,c[13805]|0,143714)|0;c[w>>2]=iO(c[A>>2]|0,c[13806]|0,143722)|0;c[t>>2]=1;break}e=yA(f,178832)|0;c[v>>2]=e;if((e|0)!=0?(a[c[v>>2]>>0]|0)!=0:0){e=c[v>>2]|0;c[x>>2]=e;c[w>>2]=e}e=yA(c[A>>2]|0,175307)|0;c[v>>2]=e;if((e|0)!=0?(a[c[v>>2]>>0]|0)!=0:0)c[x>>2]=c[v>>2];e=yA(c[A>>2]|0,139210)|0;c[v>>2]=e;if((e|0)!=0?(a[c[v>>2]>>0]|0)!=0:0)c[w>>2]=c[v>>2];if((!((c[t>>2]|0)!=0&(c[w>>2]|0)!=0)?(e=yA(c[A>>2]|0,178986)|0,c[v>>2]=e,(e|0)!=0):0)?(a[c[v>>2]>>0]|0)!=0:0){c[w>>2]=c[v>>2];c[t>>2]=1}}else{c[x>>2]=iO(j,c[13803]|0,143666)|0;c[w>>2]=iO(c[A>>2]|0,c[13804]|0,143674)|0;c[t>>2]=1}while(0);if(!(c[x>>2]|0))c[x>>2]=174917;if(!(c[w>>2]|0))c[w>>2]=172403;c[H>>2]=0;do if(c[t>>2]|0){j=(IH(c[w>>2]|0,H,I)|0)<<24>>24!=0;e=c[n>>2]|0;if(!j){pR(e,c[w>>2]|0);break}pR(e,c[H>>2]|0);e=c[n>>2]|0;if(c[H+4>>2]|0){j=c[H+4>>2]|0;f=eO(c[A>>2]|0,c[13812]|0,0,0)|0;qR(e,j,f,+g[I>>2])}else{f=eO(c[A>>2]|0,c[13812]|0,0,0)|0;qR(e,174917,f,+g[I>>2])}if(c[s>>2]&2){c[t>>2]=3;break}else{c[t>>2]=2;break}}while(0);if(((c[13811]|0)!=0?(f=zA(c[A>>2]|0,c[13811]|0)|0,c[z>>2]=f,(f|0)!=0):0)?(a[c[z>>2]>>0]|0)!=0:0){h[G>>3]=+fO(c[A>>2]|0,c[13811]|0,1.0,0.0);zR(c[n>>2]|0,+h[G>>3])}do if(c[s>>2]&4){f=eO(c[A>>2]|0,c[13810]|0,1,0)|0;c[q>>2]=f;if((f|0)!=0|(c[t>>2]|0)!=0){f=(c[(c[A>>2]|0)+8>>2]|0)+16|0;c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];f=u+32|0;e=(c[(c[A>>2]|0)+8>>2]|0)+16+16|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];h[u+16>>3]=+h[u+32>>3];h[u+16+8>>3]=+h[u+8>>3];h[u+48>>3]=+h[u>>3];h[u+48+8>>3]=+h[u+32+8>>3];e=c[n>>2]|0;if(c[q>>2]|0)oR(e,c[x>>2]|0);else oR(e,175430);cM(c[n>>2]|0,u,4,c[s>>2]|0,c[t>>2]|0)}}else{if(!(c[s>>2]&64)){if(eO(c[A>>2]|0,c[13810]|0,1,0)|0){oR(c[n>>2]|0,c[x>>2]|0);e=c[n>>2]|0;f=(c[(c[A>>2]|0)+8>>2]|0)+16|0;j=c[t>>2]|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[l+16>>2]=c[f+16>>2];c[l+20>>2]=c[f+20>>2];c[l+24>>2]=c[f+24>>2];c[l+28>>2]=c[f+28>>2];uR(e,l,j);break}if(!(c[t>>2]|0))break;oR(c[n>>2]|0,175430);j=c[n>>2]|0;e=(c[(c[A>>2]|0)+8>>2]|0)+16|0;f=c[t>>2]|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];c[l+16>>2]=c[e+16>>2];c[l+20>>2]=c[e+20>>2];c[l+24>>2]=c[e+24>>2];c[l+28>>2]=c[e+28>>2];uR(j,l,f);break}f=(c[(c[A>>2]|0)+8>>2]|0)+16|0;c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];f=u+32|0;j=(c[(c[A>>2]|0)+8>>2]|0)+16+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];h[u+16>>3]=+h[u+32>>3];h[u+16+8>>3]=+h[u+8>>3];h[u+48>>3]=+h[u>>3];h[u+48+8>>3]=+h[u+32+8>>3];j=(eO(c[A>>2]|0,c[13810]|0,1,0)|0)==0;f=c[n>>2]|0;if(j)oR(f,175430);else oR(f,c[x>>2]|0);c[J>>2]=BH(c[n>>2]|0,u,c[w>>2]|0,0)|0;if((c[J>>2]|0)>1){c[m>>2]=wB(c[A>>2]|0)|0;$z(3,137624,m)|0}f=c[n>>2]|0;j=(c[(c[A>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];c[l+16>>2]=c[j+16>>2];c[l+20>>2]=c[j+20>>2];c[l+24>>2]=c[j+24>>2];c[l+28>>2]=c[j+28>>2];uR(f,l,0)}while(0);O4(c[H>>2]|0);f=c[(c[(c[A>>2]|0)+8>>2]|0)+12>>2]|0;c[E>>2]=f;if(f)VJ(c[n>>2]|0,5,c[E>>2]|0);if(c[F>>2]|0){if(c[p>>2]&4){f=c[n>>2]|0;j=(c[(c[A>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];c[l+16>>2]=c[j+16>>2];c[l+20>>2]=c[j+20>>2];c[l+24>>2]=c[j+24>>2];c[l+28>>2]=c[j+28>>2];CH(f,l);jR(c[n>>2]|0,c[(c[D>>2]|0)+208>>2]|0,c[(c[D>>2]|0)+228>>2]|0,c[(c[D>>2]|0)+244>>2]|0,c[(c[D>>2]|0)+212>>2]|0)}kR(c[n>>2]|0)}a:do if(c[p>>2]&8){c[B>>2]=$B(c[A>>2]|0)|0;while(1){if(!(c[B>>2]|0))break a;gI(c[n>>2]|0,c[B>>2]|0);c[C>>2]=OA(c[A>>2]|0,c[B>>2]|0)|0;while(1){if(!(c[C>>2]|0))break;hI(c[n>>2]|0,c[C>>2]|0);c[C>>2]=QA(c[A>>2]|0,c[C>>2]|0)|0}c[B>>2]=aC(c[A>>2]|0,c[B>>2]|0)|0}}while(0);iI(c[n>>2]|0,c[o>>2]|0);if(!(c[p>>2]&4))HH(c[n>>2]|0,c[A>>2]|0,c[p>>2]|0)}c[r>>2]=(c[r>>2]|0)+1}i=k;return}function IH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;h=f;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[o>>2]=NH(c[k>>2]|0,0,n)|0;if(((c[o>>2]|0)==0?(c[c[n>>2]>>2]|0)>=2:0)?(c[c[(c[n>>2]|0)+8>>2]>>2]|0)!=0:0){if((c[c[n>>2]>>2]|0)>2)$z(0,137639,h)|0;h=cK((N3(c[k>>2]|0)|0)+1|0)|0;c[c[l>>2]>>2]=h;K3(c[c[l>>2]>>2]|0,c[c[(c[n>>2]|0)+8>>2]>>2]|0)|0;h=c[l>>2]|0;if(c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2]|0){k=c[h>>2]|0;o=k+((N3(c[c[l>>2]>>2]|0)|0)+1)|0;c[(c[l>>2]|0)+4>>2]=o;K3(c[(c[l>>2]|0)+4>>2]|0,c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2]|0)|0}else c[h+4>>2]=0;h=c[(c[n>>2]|0)+8>>2]|0;do if(!(a[(c[(c[n>>2]|0)+8>>2]|0)+8>>0]|0))if(a[h+12+8>>0]|0){g[c[m>>2]>>2]=1.0-+g[(c[(c[n>>2]|0)+8>>2]|0)+12+4>>2];break}else{g[c[m>>2]>>2]=0.0;break}else g[c[m>>2]>>2]=+g[h+4>>2];while(0);OH(c[n>>2]|0);a[j>>0]=1;p=a[j>>0]|0;i=f;return p|0}c[c[l>>2]>>2]=0;a[j>>0]=0;p=a[j>>0]|0;i=f;return p|0}function JH(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+208|0;f=e+24|0;g=e+16|0;h=e+8|0;j=e;k=e+64|0;l=e+60|0;m=e+56|0;n=e+200|0;o=e+52|0;p=e+48|0;q=e+32|0;c[l>>2]=b;c[m>>2]=0;a[n>>0]=0;if(a[137705]|0){dA(54848,128,137706);a[137705]=0}dA(q,128,e+72|0);c[o>>2]=c[l>>2];a:while(1){b=jI(o,q)|0;c[p>>2]=b;if(!b){r=23;break}switch(c[p>>2]|0){case 40:{if(a[n>>0]|0){r=7;break a}a[n>>0]=1;continue a;break}case 41:{if(!(d[n>>0]|0)){r=10;break a}a[n>>0]=0;continue a;break}default:{if(!(d[n>>0]|0)){if((c[m>>2]|0)==63){r=14;break a}if((c[13713]|0)>>>0>=(c[13714]|0)>>>0)eA(54848,1)|0;b=c[13713]|0;c[13713]=b+1;a[b>>0]=0;b=c[13713]|0;s=c[m>>2]|0;c[m>>2]=s+1;c[54864+(s<<2)>>2]=b}if((c[q+4>>2]|0)>>>0>=(c[q+8>>2]|0)>>>0)eA(q,1)|0;b=q+4|0;s=c[b>>2]|0;c[b>>2]=s+1;a[s>>0]=0;s=c[q>>2]|0;c[q+4>>2]=s;gA(54848,s)|0;if((c[13713]|0)>>>0>=(c[13714]|0)>>>0)eA(54848,1)|0;s=c[13713]|0;c[13713]=s+1;a[s>>0]=0;continue a}}}if((r|0)==7){c[j>>2]=c[l>>2];$z(1,137834,j)|0;c[13716]=0;hA(q);c[k>>2]=54864;t=c[k>>2]|0;i=e;return t|0}else if((r|0)==10){c[h>>2]=c[l>>2];$z(1,137868,h)|0;c[13716]=0;hA(q);c[k>>2]=54864;t=c[k>>2]|0;i=e;return t|0}else if((r|0)==14){c[g>>2]=c[l>>2];$z(0,137896,g)|0;c[54864+(c[m>>2]<<2)>>2]=0;hA(q);c[k>>2]=54864;t=c[k>>2]|0;i=e;return t|0}else if((r|0)==23){if(a[n>>0]|0){c[f>>2]=c[l>>2];$z(1,137919,f)|0;c[13716]=0;hA(q);c[k>>2]=54864;t=c[k>>2]|0;i=e;return t|0}c[54864+(c[m>>2]<<2)>>2]=0;hA(q);if((c[13713]|0)>>>0>=(c[13714]|0)>>>0)eA(54848,1)|0;q=c[13713]|0;c[13713]=q+1;a[q>>0]=0;c[13713]=c[13712];c[k>>2]=54864;t=c[k>>2]|0;i=e;return t|0}return 0}function KH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[13780]|0;if(c[d>>2]|0){c[13780]=a+1;if((c[13780]|0)==1)c[13781]=M3(T1(1,0)|0)|0}else if((a|0)>0?(c[13780]=(c[13780]|0)+-1,(c[13780]|0)==0):0)O4(c[13781]|0);i=b;return}function LH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0;e=i;i=i+112|0;f=e+72|0;g=e+56|0;j=e+48|0;k=e+32|0;l=e+24|0;m=e+8|0;n=e;o=e+104|0;p=e+100|0;q=e+96|0;r=e+92|0;s=e+88|0;c[p>>2]=b;c[q>>2]=d;if(a[138998]|0)_N();if((MC(c[q>>2]|0,175049,0,1)|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){kI(c[q>>2]|0);lI(c[p>>2]|0,c[q>>2]|0);mI(c[p>>2]|0,c[q>>2]|0);KH(1);c[r>>2]=IR(c[p>>2]|0)|0;while(1){if(!(c[r>>2]|0)){t=38;break}if(c[(c[p>>2]|0)+56>>2]|0){c[(c[r>>2]|0)+20>>2]=c[(c[(c[p>>2]|0)+56>>2]|0)+8>>2];c[(c[r>>2]|0)+24>>2]=c[(c[(c[p>>2]|0)+56>>2]|0)+12>>2]}else{c[(c[r>>2]|0)+20>>2]=0;c[(c[r>>2]|0)+24>>2]=0}c[(c[r>>2]|0)+12>>2]=c[p>>2];c[(c[r>>2]|0)+28>>2]=c[(c[p>>2]|0)+172+12>>2];c[(c[r>>2]|0)+620>>2]=61256;c[(c[r>>2]|0)+624>>2]=c[15342];if(!(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)){t=14;break}d=QQ(c[r>>2]|0,c[(c[r>>2]|0)+52>>2]|0)|0;c[(c[r>>2]|0)+56>>2]=d;u=c[r>>2]|0;if((c[(c[r>>2]|0)+56>>2]|0)==999){t=18;break}switch(c[u+56>>2]|0){case 21:{d=(c[r>>2]|0)+152|0;c[d>>2]=c[d>>2]|1;break}case 24:{d=(c[r>>2]|0)+152|0;c[d>>2]=c[d>>2]|520;break}default:{d=nI(c[q>>2]|0)|0;b=(c[r>>2]|0)+152|0;c[b>>2]=c[b>>2]|d}}c[s>>2]=c[(c[p>>2]|0)+192>>2];do if(c[s>>2]|0){if((c[(c[s>>2]|0)+152>>2]&32|0)!=0?(J3(c[(c[r>>2]|0)+52>>2]|0,c[(c[s>>2]|0)+52>>2]|0)|0)==0:0)break;SQ(c[s>>2]|0);c[(c[p>>2]|0)+192>>2]=0;c[(c[p>>2]|0)+28>>2]=0;c[13782]=0}else c[13782]=0;while(0);d=c[r>>2]|0;if(!(c[13782]|0)){if(!(RQ(d)|0)){c[(c[p>>2]|0)+192>>2]=c[r>>2];t=34}}else{c[(c[13782]|0)+8>>2]=d;c[(c[r>>2]|0)+36>>2]=c[(c[13782]|0)+36>>2];t=34}if((t|0)==34){t=0;c[(c[r>>2]|0)+8>>2]=0;c[(c[r>>2]|0)+104>>2]=61372;oI(c[r>>2]|0);pI(c[r>>2]|0);qI(c[r>>2]|0,c[q>>2]|0);rI(c[r>>2]|0,c[q>>2]|0);sI(c[r>>2]|0,c[q>>2]|0);if(!(c[(c[r>>2]|0)+152>>2]&128))FH(c[r>>2]|0,c[q>>2]|0);c[13782]=c[r>>2]}c[r>>2]=JR(c[p>>2]|0)|0}if((t|0)==14){$z(1,138026,l)|0;KH(0);if(a[138998]|0){l=c[24742]|0;p=wB(c[q>>2]|0)|0;v=+$N();c[k>>2]=p;h[k+8>>3]=v;Y2(l,137997,k)|0}c[o>>2]=-1;w=c[o>>2]|0;i=e;return w|0}else if((t|0)==18){c[j>>2]=c[u+52>>2];$z(1,138047,j)|0;KH(0);if(a[138998]|0){j=c[24742]|0;u=wB(c[q>>2]|0)|0;v=+$N();c[g>>2]=u;h[g+8>>3]=v;Y2(j,137997,g)|0}c[o>>2]=-1;w=c[o>>2]|0;i=e;return w|0}else if((t|0)==38){KH(0);if(a[138998]|0){t=c[24742]|0;g=wB(c[q>>2]|0)|0;v=+$N();c[f>>2]=g;h[f+8>>3]=v;Y2(t,137997,f)|0}c[o>>2]=0;w=c[o>>2]|0;i=e;return w|0}}$z(1,137949,n)|0;if(a[138998]|0){n=c[24742]|0;f=wB(c[q>>2]|0)|0;v=+$N();c[m>>2]=f;h[m+8>>3]=v;Y2(n,137997,m)|0}c[o>>2]=-1;w=c[o>>2]|0;i=e;return w|0}function MH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+144|0;f=e;g=e+12|0;h=e+8|0;j=e+16|0;c[g>>2]=b;c[h>>2]=d;if((c[(c[g>>2]|0)+160>>2]|0)>1?(c[(c[g>>2]|0)+152>>2]&64|0)!=0:0){gA(c[h>>2]|0,c[(c[(c[c[g>>2]>>2]|0)+308>>2]|0)+(c[(c[g>>2]|0)+160>>2]<<2)>>2]|0)|0;if((c[(c[h>>2]|0)+4>>2]|0)>>>0>=(c[(c[h>>2]|0)+8>>2]|0)>>>0)eA(c[h>>2]|0,1)|0;d=(c[h>>2]|0)+4|0;b=c[d>>2]|0;c[d>>2]=b+1;a[b>>0]=95}if((c[(c[g>>2]|0)+196>>2]|0)<=0?(c[(c[g>>2]|0)+196>>2]|0)<=0:0){i=e;return}b=c[(c[g>>2]|0)+196+4>>2]|0;c[f>>2]=c[(c[g>>2]|0)+196>>2];c[f+4>>2]=b;k3(j,138987,f)|0;gA(c[h>>2]|0,j)|0;i=e;return}function NH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0;f=i;i=i+96|0;j=f+40|0;k=f+32|0;l=f+88|0;m=f+84|0;n=f+80|0;o=f+76|0;p=f+72|0;q=f+68|0;r=f+64|0;s=f+60|0;t=f+56|0;u=f+24|0;v=f+16|0;w=f+52|0;x=f+48|0;y=f+44|0;z=f+8|0;A=f;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=bK(12)|0;c[r>>2]=M3(c[m>>2]|0)|0;c[t>>2]=0;h[v>>3]=1.0;c[x>>2]=0;a:do if(!(c[n>>2]|0)){c[n>>2]=1;c[y>>2]=c[r>>2];while(1){if(!(a[c[y>>2]>>0]|0))break a;if((a[c[y>>2]>>0]|0)==58)c[n>>2]=(c[n>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+1}}while(0);c[(c[p>>2]|0)+4>>2]=c[r>>2];y=bK(((c[n>>2]|0)+1|0)*12|0)|0;c[q>>2]=y;c[(c[p>>2]|0)+8>>2]=y;c[s>>2]=V3(c[r>>2]|0,148898)|0;while(1){if(!(c[s>>2]|0))break;B=+BJ(c[s>>2]|0);h[u>>3]=B;if(!(B>=0.0)){C=20;break}h[z>>3]=+h[u>>3]-+h[v>>3];if(+h[z>>3]>0.0){if((c[13788]|0)!=0?!(+h[z>>3]<1.0e-05&+h[z>>3]>-1.0e-05):0){c[k>>2]=c[m>>2];$z(0,138906,k)|0;c[13788]=0;c[x>>2]=3}h[u>>3]=+h[v>>3]}h[v>>3]=+h[v>>3]-+h[u>>3];if(+h[u>>3]>0.0)a[(c[q>>2]|0)+((c[t>>2]|0)*12|0)+8>>0]=1;if(a[c[s>>2]>>0]|0)c[(c[q>>2]|0)+((c[t>>2]|0)*12|0)>>2]=c[s>>2];B=+h[u>>3];r=c[t>>2]|0;c[t>>2]=r+1;g[(c[q>>2]|0)+(r*12|0)+4>>2]=B;if(+h[v>>3]<1.0e-05&+h[v>>3]>-1.0e-05){C=24;break}c[s>>2]=V3(0,148898)|0}if((C|0)==20){if(c[13788]|0){c[j>>2]=c[m>>2];$z(1,138941,j)|0;c[13788]=0;c[x>>2]=2}else c[x>>2]=1;OH(c[p>>2]|0);c[l>>2]=c[x>>2];D=c[l>>2]|0;i=f;return D|0}else if((C|0)==24)h[v>>3]=0.0;b:do if(+h[v>>3]>0.0){c[n>>2]=0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0))break;if(+g[(c[q>>2]|0)+((c[w>>2]|0)*12|0)+4>>2]==0.0)c[n>>2]=(c[n>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}B=+h[v>>3];if((c[n>>2]|0)<=0){C=(c[q>>2]|0)+(((c[t>>2]|0)-1|0)*12|0)+4|0;g[C>>2]=+g[C>>2]+B;break}h[A>>3]=B/+(c[n>>2]|0);c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[t>>2]|0))break b;if(+g[(c[q>>2]|0)+((c[w>>2]|0)*12|0)+4>>2]==0.0)g[(c[q>>2]|0)+((c[w>>2]|0)*12|0)+4>>2]=+h[A>>3];c[w>>2]=(c[w>>2]|0)+1}}while(0);c[n>>2]=0;c[w>>2]=(c[t>>2]|0)-1;while(1){if((c[w>>2]|0)<0)break;if(+g[(c[q>>2]|0)+((c[w>>2]|0)*12|0)+4>>2]>0.0)break;c[w>>2]=(c[w>>2]|0)+-1}c[(c[q>>2]|0)+(((c[w>>2]|0)+1|0)*12|0)>>2]=0;c[c[p>>2]>>2]=(c[w>>2]|0)+1;c[c[o>>2]>>2]=c[p>>2];c[l>>2]=c[x>>2];D=c[l>>2]|0;i=f;return D|0}function OH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[d>>2]|0)+4>>2]|0);O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function PH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+80|0;d=b+48|0;e=b+32|0;f=b+16|0;g=b+68|0;j=b+64|0;k=b+8|0;l=b;c[j>>2]=a;a=c[j>>2]|0;m=(c[j>>2]|0)+48|0;n=(c[j>>2]|0)+16|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];h[k>>3]=+HJ(f,e,d);n=c[j>>2]|0;m=(c[j>>2]|0)+48|0;a=(c[j>>2]|0)+32|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];h[l>>3]=+HJ(f,e,d);if(+h[k>>3]<4.0&+h[l>>3]<4.0){c[g>>2]=1;o=c[g>>2]|0;i=b;return o|0}else{c[g>>2]=0;o=c[g>>2]|0;i=b;return o|0}return 0}function QH(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;if(+h[b>>3]>+h[(c[e>>2]|0)+16>>3])h[(c[e>>2]|0)+16>>3]=+h[b>>3];if(+h[b>>3]<+h[c[e>>2]>>3])h[c[e>>2]>>3]=+h[b>>3];if(+h[b+8>>3]>+h[(c[e>>2]|0)+16+8>>3])h[(c[e>>2]|0)+16+8>>3]=+h[b+8>>3];if(!(+h[b+8>>3]<+h[(c[e>>2]|0)+8>>3])){i=d;return}h[(c[e>>2]|0)+8>>3]=+h[b+8>>3];i=d;return}function RH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;f=i;i=i+64|0;g=f+32|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f;n=f+48|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;o=+h[c[j>>2]>>3];h[m+16>>3]=o;h[m>>3]=o;o=+h[(c[j>>2]|0)+8>>3];h[m+16+8>>3]=o;h[m+8>>3]=o;c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[j>>2]=(c[j>>2]|0)+24;o=+h[c[j>>2]>>3];if(!(+h[c[j>>2]>>3]<+h[m>>3])){if(o>+h[m+16>>3])h[m+16>>3]=+h[c[j>>2]>>3]}else h[m>>3]=o;o=+h[(c[j>>2]|0)+8>>3];if(!(+h[(c[j>>2]|0)+8>>3]<+h[m+8>>3])){if(o>+h[m+16+8>>3])h[m+16+8>>3]=+h[(c[j>>2]|0)+8>>3]}else h[m+8>>3]=o;c[n>>2]=(c[n>>2]|0)+1}n=c[l>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];QH(n,g);n=c[l>>2]|0;l=m+16|0;c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];QH(n,g);c[a>>2]=c[m>>2];c[a+4>>2]=c[m+4>>2];c[a+8>>2]=c[m+8>>2];c[a+12>>2]=c[m+12>>2];c[a+16>>2]=c[m+16>>2];c[a+20>>2]=c[m+20>>2];c[a+24>>2]=c[m+24>>2];c[a+28>>2]=c[m+28>>2];i=f;return}function SH(b,d,e,f){b=b|0;d=+d;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+80|0;j=g+56|0;k=g+48|0;l=g+64|0;m=g+16|0;n=g;h[j>>3]=d;h[k>>3]=e;c[l>>2]=f;f=(c[l>>2]|0)+32|0;c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];switch(a[(c[l>>2]|0)+48>>0]|0){case 108:{h[m>>3]=+h[j>>3];h[m+16>>3]=+h[m>>3]+ +h[n>>3];break}case 110:{h[m>>3]=+h[j>>3]-+h[n>>3]/2.0;h[m+16>>3]=+h[j>>3]+ +h[n>>3]/2.0;break}case 114:{h[m+16>>3]=+h[j>>3];h[m>>3]=+h[m+16>>3]-+h[n>>3];break}default:{}}h[m+16+8>>3]=+h[k>>3]+ +h[(c[l>>2]|0)+16>>3];h[m+8>>3]=+h[m+16+8>>3]-+h[n+8>>3];c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];c[b+16>>2]=c[m+16>>2];c[b+20>>2]=c[m+20>>2];c[b+24>>2]=c[m+24>>2];c[b+28>>2]=c[m+28>>2];i=g;return}function TH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[c[d>>2]>>2]|0)!=7){i=b;return}TJ(c[(c[d>>2]|0)+112>>2]|0,1);i=b;return}function UH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=wH(c[e>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+8>>2]=c[f>>2];c[(c[g>>2]|0)+12>>2]=0;nJ(c[e>>2]|0,c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0,c[f>>2]|0);VQ(c[e>>2]|0,c[f>>2]|0);i=d;return}function VH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=b;c[g>>2]=d;pR(c[f>>2]|0,172403);d=yA(c[g>>2]|0,178986)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)pR(c[f>>2]|0,c[k>>2]|0);d=yA(c[g>>2]|0,139238)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);AJ(c[f>>2]|0,c[g>>2]|0);c[h>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;d=yA(c[h>>2]|0,178832)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,175307)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)pR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,139210)|0;c[k>>2]=d;do if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){if(!(H3(c[k>>2]|0,58)|0)){oR(c[f>>2]|0,c[k>>2]|0);break}c[l>>2]=M3(c[k>>2]|0)|0;c[k>>2]=V3(c[l>>2]|0,148898)|0;while(1){if(!(c[k>>2]|0))break;if(a[c[k>>2]>>0]|0)oR(c[f>>2]|0,c[k>>2]|0);c[k>>2]=V3(0,148898)|0}O4(c[l>>2]|0)}while(0);d=yA(c[h>>2]|0,139238)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);c[j>>2]=OA(c[g>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;d=yA(c[j>>2]|0,178832)|0;c[k>>2]=d;do if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0){if(!(H3(c[k>>2]|0,58)|0)){oR(c[f>>2]|0,c[k>>2]|0);break}c[l>>2]=M3(c[k>>2]|0)|0;c[k>>2]=V3(c[l>>2]|0,148898)|0;while(1){if(!(c[k>>2]|0))break;if(a[c[k>>2]>>0]|0)oR(c[f>>2]|0,c[k>>2]|0);c[k>>2]=V3(0,148898)|0}O4(c[l>>2]|0)}while(0);d=yA(c[j>>2]|0,139238)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);c[j>>2]=QA(c[g>>2]|0,c[j>>2]|0)|0}c[h>>2]=aC(c[g>>2]|0,c[h>>2]|0)|0}i=e;return}function WH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;c[g>>2]=a;c[h>>2]=b;c[(c[g>>2]|0)+156>>2]=c[(c[c[g>>2]>>2]|0)+312>>2];b=c[g>>2]|0;if(c[(c[c[g>>2]>>2]|0)+316>>2]|0){c[j>>2]=c[(c[b>>2]|0)+316>>2];a=c[j>>2]|0;c[j>>2]=a+4;c[k>>2]=c[a>>2];if((c[k>>2]|0)>1?(c[(c[g>>2]|0)+152>>2]&64|0)==0:0){c[f>>2]=c[(c[g>>2]|0)+52>>2];$z(0,138871,f)|0;c[(c[j>>2]|0)+4>>2]=(c[(c[g>>2]|0)+156>>2]|0)+1}f=c[j>>2]|0;c[j>>2]=f+4;c[(c[g>>2]|0)+160>>2]=c[f>>2];c[c[h>>2]>>2]=c[j>>2];i=d;return}else{if((c[b+156>>2]|0)>1?(c[(c[g>>2]|0)+152>>2]&64|0)==0:0){c[e>>2]=c[(c[g>>2]|0)+52>>2];$z(0,138871,e)|0;c[(c[g>>2]|0)+156>>2]=1}c[(c[g>>2]|0)+160>>2]=1;c[c[h>>2]>>2]=0;i=d;return}}function XH(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return (c[(c[d>>2]|0)+160>>2]|0)<=(c[(c[d>>2]|0)+156>>2]|0)&255|0}function YH(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;a=c[e>>2]|0;if(c[(c[c[e>>2]>>2]|0)+316>>2]|0){c[d>>2]=c[c[(c[a>>2]|0)+316>>2]>>2];f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=c[a+156>>2];f=c[d>>2]|0;i=b;return f|0}return 0}function ZH(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+196|0;e=(c[d>>2]|0)+172|0;c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];i=b;return}function _H(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(((c[(c[d>>2]|0)+196>>2]|0)>=0?(c[(c[d>>2]|0)+196>>2]|0)<(c[(c[d>>2]|0)+164>>2]|0):0)?(c[(c[d>>2]|0)+196+4>>2]|0)>=0:0)e=(c[(c[d>>2]|0)+196+4>>2]|0)<(c[(c[d>>2]|0)+164+4>>2]|0);else e=0;i=b;return e&1|0}function $H(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+208|0;g=f;h=f+76|0;j=f+72|0;k=f+68|0;l=f+64|0;m=f+60|0;n=f+56|0;o=f+52|0;p=f+48|0;q=f+80|0;r=f+32|0;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[(c[h>>2]|0)+16>>2];c[l>>2]=0;c[m>>2]=c[(c[h>>2]|0)+152>>2];c[o>>2]=0;if(((c[(c[h>>2]|0)+160>>2]|0)<=1?(c[(c[h>>2]|0)+196>>2]|0)<=0:0)?(c[(c[h>>2]|0)+196>>2]|0)<=0:0)c[p>>2]=0;else{dA(r,128,q);c[p>>2]=c[(c[k>>2]|0)+212>>2];MH(c[h>>2]|0,r);gA(r,c[p>>2]|0)|0;if((c[r+4>>2]|0)>>>0>=(c[r+8>>2]|0)>>>0)eA(r,1)|0;q=r+4|0;e=c[q>>2]|0;c[q>>2]=e+1;a[e>>0]=0;e=c[r>>2]|0;c[r+4>>2]=e;c[(c[k>>2]|0)+212>>2]=e}dT(yA(c[j>>2]|0,137612)|0);tJ(c[h>>2]|0,c[j>>2]|0);XQ(c[h>>2]|0);oR(c[h>>2]|0,174917);pR(c[h>>2]|0,172403);do if(c[m>>2]&4259840){if((c[(c[k>>2]|0)+208>>2]|0)==0?((b[(c[k>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0)break;if(c[m>>2]&655360){e=(c[k>>2]|0)+264|0;if(c[m>>2]&131072){c[e>>2]=0;c[l>>2]=2}else{c[e>>2]=2;c[l>>2]=4}c[o>>2]=bK(c[l>>2]<<4)|0;e=c[o>>2]|0;q=(c[h>>2]|0)+288|0;c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];q=(c[o>>2]|0)+16|0;e=(c[h>>2]|0)+288+16|0;c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[q+12>>2]=c[e+12>>2];if(!(c[m>>2]&131072))DJ(c[o>>2]|0)}if(!(c[m>>2]&8192))UQ(c[h>>2]|0,c[o>>2]|0,c[o>>2]|0,c[l>>2]|0)|0;c[(c[k>>2]|0)+272>>2]=c[o>>2];c[(c[k>>2]|0)+268>>2]=c[l>>2]}while(0);if((c[m>>2]&32768|0)!=0?(l=c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0,c[n>>2]=l,(l|0)!=0):0)c[(c[k>>2]|0)+192>>2]=c[c[n>>2]>>2];do if(!(c[m>>2]&4)){if((c[(c[k>>2]|0)+208>>2]|0)==0?((b[(c[k>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0)break;n=c[h>>2]|0;l=(c[h>>2]|0)+256|0;c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];c[g+16>>2]=c[l+16>>2];c[g+20>>2]=c[l+20>>2];c[g+24>>2]=c[l+24>>2];c[g+28>>2]=c[l+28>>2];CH(n,g);jR(c[h>>2]|0,c[(c[k>>2]|0)+208>>2]|0,c[(c[k>>2]|0)+228>>2]|0,c[(c[k>>2]|0)+244>>2]|0,c[(c[k>>2]|0)+212>>2]|0)}while(0);uJ(c[h>>2]|0,c[j>>2]|0);if(c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0)VJ(c[h>>2]|0,4,c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0);do if(!(c[m>>2]&4)){if((c[(c[k>>2]|0)+208>>2]|0)==0?((b[(c[k>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0)break;kR(c[h>>2]|0)}while(0);vJ(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0);YQ(c[h>>2]|0);if(!(c[p>>2]|0)){i=f;return}hA(r);c[(c[k>>2]|0)+212>>2]=c[p>>2];i=f;return}function aI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+48|0;d=b+32|0;e=b+24|0;f=b+16|0;g=b+8|0;h=b;c[f>>2]=a;a=(c[f>>2]|0)+196|0;j=(c[f>>2]|0)+196|0;k=(c[f>>2]|0)+188|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];sJ(g,e,d);c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];if((_H(c[f>>2]|0)|0)&255){i=b;return}g=(c[f>>2]|0)+172|0;if(c[(c[f>>2]|0)+180+4>>2]|0)c[(c[f>>2]|0)+196>>2]=c[g>>2];else c[(c[f>>2]|0)+196+4>>2]=c[g+4>>2];g=(c[f>>2]|0)+196|0;a=(c[f>>2]|0)+196|0;k=(c[f>>2]|0)+180|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];sJ(h,e,d);c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];i=b;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[c[f>>2]>>2];if(c[g>>2]|0){b=c[g>>2]|0;c[g>>2]=b+4;c[(c[e>>2]|0)+160>>2]=c[b>>2];c[c[f>>2]>>2]=c[g>>2];i=d;return}else{g=(c[e>>2]|0)+160|0;c[g>>2]=(c[g>>2]|0)+1;i=d;return}}function cI(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;WQ(c[e>>2]|0);xH(c[e>>2]|0);i=d;return}function dI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;do if((c[(c[g>>2]|0)+156>>2]|0)>1){d=c[h>>2]|0;c[j>>2]=hO(d,qA(c[h>>2]|0,0,139302,0)|0,178518)|0;if((hJ(c[g>>2]|0,c[j>>2]|0)|0)<<24>>24){a[f>>0]=1;break}if(a[c[j>>2]>>0]|0){a[f>>0]=0;break}c[k>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0)){l=12;break}if((jJ(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)<<24>>24){l=10;break}c[k>>2]=aC(c[h>>2]|0,c[k>>2]|0)|0}if((l|0)==10){a[f>>0]=1;break}else if((l|0)==12){a[f>>0]=0;break}}else a[f>>0]=1;while(0);i=e;return a[f>>0]|0}function eI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=wH(c[e>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=1;c[(c[g>>2]|0)+8>>2]=c[f>>2];c[(c[g>>2]|0)+12>>2]=1;nJ(c[e>>2]|0,c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0,c[f>>2]|0);$Q(c[e>>2]|0,c[f>>2]|0);i=d;return}function fI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=0;d=yA(c[f>>2]|0,179091)|0;c[h>>2]=d;if(!d){o=c[k>>2]|0;p=c[g>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}if(!(a[c[h>>2]>>0]|0)){o=c[k>>2]|0;p=c[g>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}d=JH(c[h>>2]|0)|0;c[j>>2]=d;c[l>>2]=d;a:while(1){d=c[c[l>>2]>>2]|0;c[n>>2]=d;if(!d)break;if(!(J3(c[n>>2]|0,148663)|0)){c[k>>2]=c[k>>2]|1;c[l>>2]=(c[l>>2]|0)+4;continue}if(!(J3(c[n>>2]|0,143760)|0)){c[k>>2]=c[k>>2]|3;c[m>>2]=c[l>>2];while(1){c[m>>2]=(c[m>>2]|0)+4;c[(c[m>>2]|0)+-4>>2]=c[c[m>>2]>>2];if(!(c[c[m>>2]>>2]|0))continue a}}if(!(J3(c[n>>2]|0,143767)|0)){c[k>>2]=c[k>>2]|64;c[m>>2]=c[l>>2];while(1){c[m>>2]=(c[m>>2]|0)+4;c[(c[m>>2]|0)+-4>>2]=c[c[m>>2]>>2];if(!(c[c[m>>2]>>2]|0))continue a}}if(J3(c[n>>2]|0,143742)|0){c[l>>2]=(c[l>>2]|0)+4;continue}c[k>>2]=c[k>>2]|4;c[m>>2]=c[l>>2];while(1){c[m>>2]=(c[m>>2]|0)+4;c[(c[m>>2]|0)+-4>>2]=c[c[m>>2]>>2];if(!(c[c[m>>2]>>2]|0))continue a}}o=c[k>>2]|0;p=c[g>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}function gI(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+64|0;g=f;h=f+60|0;j=f+56|0;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;o=f+36|0;p=f+32|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=c[c[h>>2]>>2];c[n>>2]=0;if(!(c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2]|0)){i=f;return}e=c[h>>2]|0;b=qC(c[j>>2]|0)|0;if(!((jJ(e,b,c[j>>2]|0)|0)&255)){i=f;return}b=c[j>>2]|0;e=(c[h>>2]|0)+256|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];if(!((kJ(b,g)|0)&255)){i=f;return}if((a[(c[(c[j>>2]|0)+8>>2]|0)+116>>0]|0)==(c[(c[k>>2]|0)+28>>2]|0)){i=f;return}a[(c[(c[j>>2]|0)+8>>2]|0)+116>>0]=c[(c[k>>2]|0)+28>>2];k=c[h>>2]|0;xR(k,wB(c[j>>2]|0)|0);c[l>>2]=hO(c[j>>2]|0,c[13846]|0,178518)|0;if(a[c[l>>2]>>0]|0)xR(c[h>>2]|0,c[l>>2]|0);c[m>>2]=hO(c[j>>2]|0,c[13834]|0,178518)|0;a:do if(a[c[m>>2]>>0]|0){c[n>>2]=JH(c[m>>2]|0)|0;c[o>>2]=c[n>>2];while(1){l=c[o>>2]|0;c[o>>2]=l+4;k=c[l>>2]|0;c[p>>2]=k;if(!k)break a;if((a[c[p>>2]>>0]|0)!=(a[171938]|0))continue;if(!(J3(c[p>>2]|0,171938)|0))break}i=f;return}while(0);lJ(c[h>>2]|0,c[j>>2]|0);Db[c[(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+20>>2]&31](c[h>>2]|0,c[j>>2]|0);if((c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0)!=0:0)VJ(c[h>>2]|0,10,c[(c[(c[j>>2]|0)+8>>2]|0)+108>>2]|0);mJ(c[h>>2]|0);i=f;return}function hI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+64|0;f=e;g=e+56|0;h=e+52|0;j=e+48|0;k=e+44|0;l=e+40|0;m=e+36|0;n=e+32|0;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;d=c[h>>2]|0;b=(c[g>>2]|0)+256|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];if(!((GI(d,f)|0)&255)){i=e;return}f=c[g>>2]|0;d=c[h>>2]|0;b=qC(c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0;if(!((HI(f,b,c[h>>2]|0)|0)&255)){i=e;return}b=c[h>>2]|0;f=(N3(wB(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0)|0)+2|0;b=c[h>>2]|0;c[j>>2]=N4(f+(N3(wB(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0)|0)+1|0)|0;b=c[j>>2]|0;f=c[h>>2]|0;K3(b,wB(c[((c[c[h>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)|0)|0;f=c[h>>2]|0;b=(nB(qC(c[((c[c[h>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)|0)|0)!=0;f=c[j>>2]|0;if(b)G3(f,175316)|0;else G3(f,178535)|0;f=c[j>>2]|0;b=c[h>>2]|0;G3(f,wB(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0)|0;xR(c[g>>2]|0,c[j>>2]|0);O4(c[j>>2]|0);c[j>>2]=hO(c[h>>2]|0,c[13875]|0,178518)|0;if(a[c[j>>2]>>0]|0)xR(c[g>>2]|0,c[j>>2]|0);c[k>>2]=hO(c[h>>2]|0,c[13869]|0,178518)|0;a:do if(a[c[k>>2]>>0]|0){c[l>>2]=JH(c[k>>2]|0)|0;c[m>>2]=c[l>>2];while(1){j=c[m>>2]|0;c[m>>2]=j+4;b=c[j>>2]|0;c[n>>2]=b;if(!b)break a;if((a[c[n>>2]>>0]|0)!=(a[171938]|0))continue;if(!(J3(c[n>>2]|0,171938)|0))break}i=e;return}while(0);II(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0);JI(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0);KI(c[g>>2]|0);i=e;return}function iI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;aR(c[e>>2]|0,c[f>>2]|0);xH(c[e>>2]|0);i=d;return}function jI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;l=e+20|0;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[c[f>>2]>>2];while(1){if(a[c[h>>2]>>0]|0)if(r1(a[c[h>>2]>>0]|0)|0)m=1;else m=(a[c[h>>2]>>0]|0)==44;else m=0;n=c[h>>2]|0;if(!m)break;c[h>>2]=n+1}switch(a[n>>0]|0){case 0:{c[j>>2]=0;o=c[h>>2]|0;p=c[f>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}case 41:case 40:{n=c[h>>2]|0;c[h>>2]=n+1;c[j>>2]=a[n>>0];o=c[h>>2]|0;p=c[f>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}default:{c[j>>2]=1;while(1){n=a[c[h>>2]>>0]|0;a[l>>0]=n;if(!((FI(n<<24>>24)|0)<<24>>24!=0^1))break;if((c[(c[g>>2]|0)+4>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0)eA(c[g>>2]|0,1)|0;n=a[l>>0]|0;m=(c[g>>2]|0)+4|0;d=c[m>>2]|0;c[m>>2]=d+1;a[d>>0]=n;c[k>>2]=n&255;c[h>>2]=(c[h>>2]|0)+1}o=c[h>>2]|0;p=c[f>>2]|0;c[p>>2]=o;q=c[j>>2]|0;i=e;return q|0}}return 0}function kI(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;BI(c[d>>2]|0,c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function lI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;e=i;i=i+48|0;f=e+24|0;g=e+16|0;j=e+44|0;k=e+40|0;l=e+8|0;m=e;n=e+36|0;o=e+32|0;c[j>>2]=b;c[k>>2]=d;c[(c[j>>2]|0)+168>>2]=c[k>>2];a[(c[j>>2]|0)+293>>0]=0;d=yA(c[k>>2]|0,143958)|0;c[n>>2]=d;if((d|0)!=0?(d=c[n>>2]|0,c[g>>2]=l,c[g+4>>2]=m,c[o>>2]=l3(d,143965,g)|0,(c[o>>2]|0)>0):0){p=+h[l>>3]*72.0;h[(c[j>>2]|0)+200+8>>3]=p;h[(c[j>>2]|0)+200>>3]=p;if((c[o>>2]|0)>1)h[(c[j>>2]|0)+200+8>>3]=+h[m>>3]*72.0;a[(c[j>>2]|0)+293>>0]=1}a[(c[j>>2]|0)+292>>0]=0;g=yA(c[k>>2]|0,138453)|0;c[n>>2]=g;if((g|0)!=0?(g=c[n>>2]|0,c[f>>2]=l,c[f+4>>2]=m,c[o>>2]=l3(g,143965,f)|0,(c[o>>2]|0)>0):0){p=+h[l>>3]*72.0;h[(c[j>>2]|0)+216+8>>3]=p;h[(c[j>>2]|0)+216>>3]=p;if((c[o>>2]|0)>1)h[(c[j>>2]|0)+216+8>>3]=+h[m>>3]*72.0;a[(c[j>>2]|0)+292>>0]=1}a[(c[j>>2]|0)+294>>0]=0;m=(c[j>>2]|0)+232|0;o=(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+48|0;c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];if(+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+48>>3]>.001?+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+48+8>>3]>.001:0)a[(c[j>>2]|0)+294>>0]=1;o=(c[j>>2]|0)+288|0;if(a[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+81>>0]|0)c[o>>2]=90;else c[o>>2]=0;c[(c[j>>2]|0)+196>>2]=138457;o=yA(c[k>>2]|0,138460)|0;c[n>>2]=o;if((o|0)!=0?(a[c[n>>2]>>0]|0)!=0:0)c[(c[j>>2]|0)+196>>2]=c[n>>2];n=(c[j>>2]|0)+256|0;o=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[n+16>>2]=c[o+16>>2];c[n+20>>2]=c[o+20>>2];c[n+24>>2]=c[o+24>>2];c[n+28>>2]=c[o+28>>2];c[13810]=qA(c[k>>2]|0,0,139264,0)|0;c[13811]=qA(c[k>>2]|0,0,139255,0)|0;o=iO(0,c[13828]|0,145601)|0;c[(c[j>>2]|0)+320>>2]=o;p=+fO(0,c[13827]|0,14.0,1.0);h[(c[j>>2]|0)+328>>3]=p;c[(c[j>>2]|0)+336>>2]=55132;o=wB(c[k>>2]|0)|0;c[(c[j>>2]|0)+188>>2]=o;i=e;return}function mI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>2]|0)+304>>2]|0){O4(c[(c[f>>2]|0)+304>>2]|0);c[(c[f>>2]|0)+304>>2]=0}if(c[(c[f>>2]|0)+308>>2]|0){O4(c[(c[f>>2]|0)+308>>2]|0);c[(c[f>>2]|0)+308>>2]=0}if(c[(c[f>>2]|0)+316>>2]|0){O4(c[(c[f>>2]|0)+316>>2]|0);c[(c[f>>2]|0)+316>>2]=0}d=yA(c[g>>2]|0,138200)|0;c[h>>2]=d;b=c[f>>2]|0;if(!d){c[b+308>>2]=0;c[(c[f>>2]|0)+312>>2]=1;i=e;return}d=wI(b,c[g>>2]|0,c[h>>2]|0)|0;c[(c[f>>2]|0)+312>>2]=d;d=yA(c[g>>2]|0,138207)|0;c[h>>2]=d;if(!d){i=e;return}if(!(a[c[h>>2]>>0]|0)){i=e;return}d=xI(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;c[(c[f>>2]|0)+316>>2]=d;i=e;return}function nI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;h=d+12|0;c[f>>2]=b;c[g>>2]=yA(c[f>>2]|0,138168)|0;if(c[g>>2]|0){a[h>>0]=a[c[g>>2]>>0]|0;if((a[h>>0]|0)==110?(J3((c[g>>2]|0)+1|0,138180)|0)==0:0){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}if((a[h>>0]|0)==101?(J3((c[g>>2]|0)+1|0,138190)|0)==0:0){c[e>>2]=16;j=c[e>>2]|0;i=d;return j|0}}c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function oI(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=c[c[e>>2]>>2];b=c[e>>2]|0;if(a[(c[f>>2]|0)+292>>0]|0){g=b+240|0;j=(c[f>>2]|0)+216|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];i=d;return}j=c[e>>2]|0;if((c[b+56>>2]|0)==300){k=+h[(c[j+60+8>>2]|0)+8>>3];h[(c[e>>2]|0)+240+8>>3]=k;h[(c[e>>2]|0)+240>>3]=k;i=d;return}else{h[j+240+8>>3]=4.0;h[(c[e>>2]|0)+240>>3]=4.0;i=d;return}}function pI(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=c[c[e>>2]>>2];b=c[e>>2]|0;if(a[(c[f>>2]|0)+293>>0]|0){g=b+416|0;j=(c[f>>2]|0)+200|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];i=d;return}switch(c[b+56>>2]|0){case 300:{b=(c[e>>2]|0)+416|0;j=(c[(c[e>>2]|0)+76+8>>2]|0)+8|0;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];i=d;return}case 30:case 21:case 22:case 4:case 3:case 2:{h[(c[e>>2]|0)+416+8>>3]=36.0;h[(c[e>>2]|0)+416>>3]=36.0;i=d;return}default:{h[(c[e>>2]|0)+416+8>>3]=0.0;h[(c[e>>2]|0)+416>>3]=0.0;i=d;return}}}function qI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0.0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[c[f>>2]>>2]|0)+192>>2];if(+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3]!=0.0){k=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3];h[(c[f>>2]|0)+432+8>>3]=k;h[(c[f>>2]|0)+432>>3]=k;i=e;return}if((c[j>>2]|0)!=0?(d[(c[j>>2]|0)+128>>0]|0|0)!=0:0){g=(c[f>>2]|0)+432|0;b=(c[j>>2]|0)+112|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];i=e;return}b=(c[f>>2]|0)+432|0;if((c[(c[f>>2]|0)+56>>2]|0)==300){g=(c[(c[f>>2]|0)+76+8>>2]|0)+40|0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];i=e;return}else{h[b+8>>3]=96.0;h[(c[f>>2]|0)+432>>3]=96.0;i=e;return}}function rI(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0.0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0.0,N=0,O=0,P=0.0,Q=0,R=0,S=0;e=i;i=i+208|0;f=e+144|0;g=e+120|0;j=e+104|0;k=e+192|0;l=e+188|0;m=e+184|0;n=e+88|0;o=e+72|0;p=e+56|0;q=e+40|0;r=e+32|0;s=e+24|0;t=e+16|0;u=e+8|0;v=e;w=e+180|0;x=e+176|0;y=e+172|0;z=e+168|0;A=e+164|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=c[c[k>>2]>>2];c[z>>2]=0;c[A>>2]=0;b=(c[m>>2]|0)+256+16|0;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];b=(c[m>>2]|0)+256|0;c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];h[(c[k>>2]|0)+208>>3]=+h[n>>3]-+h[(c[k>>2]|0)+240>>3];h[(c[k>>2]|0)+208+8>>3]=+h[n+8>>3]-+h[(c[k>>2]|0)+240+8>>3];h[(c[k>>2]|0)+208+16>>3]=+h[o>>3]+ +h[(c[k>>2]|0)+240>>3];h[(c[k>>2]|0)+208+16+8>>3]=+h[o+8>>3]+ +h[(c[k>>2]|0)+240+8>>3];h[q>>3]=+h[(c[k>>2]|0)+208+16>>3]-+h[(c[k>>2]|0)+208>>3];h[q+8>>3]=+h[(c[k>>2]|0)+208+16+8>>3]-+h[(c[k>>2]|0)+208+8>>3];h[t>>3]=1.0;do if(+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]>.001?+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]>.001:0){b=(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+64|0;c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];if(+h[q>>3]==0.0)h[q>>3]=+h[p>>3];if(+h[q+8>>3]==0.0)h[q+8>>3]=+h[p+8>>3];if(!(+h[p>>3]<+h[q>>3])?!(+h[p+8>>3]<+h[q+8>>3]):0){if(!(d[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+80>>0]|0))break;if(!(+h[p>>3]>+h[q>>3]))break;if(!(+h[p+8>>3]>+h[q+8>>3]))break}if(+h[p>>3]/+h[q>>3]<+h[p+8>>3]/+h[q+8>>3])B=+h[p>>3]/+h[q>>3];else B=+h[p+8>>3]/+h[q+8>>3];h[t>>3]=B}while(0);h[u>>3]=(+h[n>>3]+ +h[o>>3])/2.0;h[v>>3]=(+h[n+8>>3]+ +h[o+8>>3])/2.0;c[(c[k>>2]|0)+360>>2]=c[(c[c[k>>2]>>2]|0)+288>>2];h[r>>3]=+h[q>>3]*+h[t>>3];h[s>>3]=+h[q+8>>3]*+h[t>>3];q=yA(c[l>>2]|0,138099)|0;c[y>>2]=q;if(!q){C=+h[r>>3];D=c[k>>2]|0;E=D+368|0;h[E>>3]=C;F=+h[s>>3];G=c[k>>2]|0;H=G+368|0;I=H+8|0;h[I>>3]=F;J=+h[t>>3];K=c[k>>2]|0;L=K+352|0;h[L>>3]=J;M=+h[u>>3];N=c[k>>2]|0;O=N+336|0;h[O>>3]=M;P=+h[v>>3];Q=c[k>>2]|0;R=Q+336|0;S=R+8|0;h[S>>3]=P;i=e;return}c[z>>2]=N4((N3(c[y>>2]|0)|0)+1|0)|0;c[A>>2]=N4((N3(c[y>>2]|0)|0)+1|0)|0;q=c[y>>2]|0;o=c[z>>2]|0;c[j>>2]=r;c[j+4>>2]=s;c[j+8>>2]=t;c[j+12>>2]=o;c[w>>2]=l3(q,138108,j)|0;do if((c[w>>2]|0)==4){c[x>>2]=fC(c[(c[l>>2]|0)+48>>2]|0,c[z>>2]|0,0)|0;if(c[x>>2]|0){h[u>>3]=+h[(c[(c[x>>2]|0)+8>>2]|0)+16>>3];h[v>>3]=+h[(c[(c[x>>2]|0)+8>>2]|0)+16+8>>3]}}else{j=c[y>>2]|0;q=c[z>>2]|0;o=c[A>>2]|0;c[g>>2]=r;c[g+4>>2]=s;c[g+8>>2]=t;c[g+12>>2]=q;c[g+16>>2]=o;c[w>>2]=l3(j,138128,g)|0;if((c[w>>2]|0)!=4){j=c[y>>2]|0;c[f>>2]=r;c[f+4>>2]=s;c[f+8>>2]=t;c[f+12>>2]=u;c[f+16>>2]=v;c[w>>2]=l3(j,138148,f)|0;break}c[x>>2]=fC(c[(c[l>>2]|0)+48>>2]|0,c[z>>2]|0,0)|0;if(c[x>>2]|0){h[u>>3]=+h[(c[(c[x>>2]|0)+8>>2]|0)+16>>3];h[v>>3]=+h[(c[(c[x>>2]|0)+8>>2]|0)+16+8>>3]}}while(0);O4(c[z>>2]|0);O4(c[A>>2]|0);C=+h[r>>3];D=c[k>>2]|0;E=D+368|0;h[E>>3]=C;F=+h[s>>3];G=c[k>>2]|0;H=G+368|0;I=H+8|0;h[I>>3]=F;J=+h[t>>3];K=c[k>>2]|0;L=K+352|0;h[L>>3]=J;M=+h[u>>3];N=c[k>>2]|0;O=N+336|0;h[O>>3]=M;P=+h[v>>3];Q=c[k>>2]|0;R=Q+336|0;S=R+8|0;h[S>>3]=P;i=e;return}function sI(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0;f=i;i=i+240|0;g=f+152|0;j=f+112|0;k=f+224|0;l=f+220|0;m=f+216|0;n=f+136|0;o=f+120|0;p=f+96|0;q=f+80|0;r=f+64|0;s=f+208|0;t=f+200|0;u=f+192|0;v=f+184|0;w=f+48|0;x=f+32|0;y=f+16|0;z=f;A=f+176|0;B=f+168|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=c[c[k>>2]>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;e=(c[k>>2]|0)+368|0;c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];if(c[(c[k>>2]|0)+360>>2]|0){c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];tI(r,g);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2]}r=(c[k>>2]|0)+416|0;c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];if((d[(c[m>>2]|0)+294>>0]|0)!=0?(c[(c[k>>2]|0)+152>>2]&32|0)!=0:0){h[n>>3]=+h[(c[m>>2]|0)+232>>3]-+h[p>>3]*2.0;h[n+8>>3]=+h[(c[m>>2]|0)+232+8>>3]-+h[p+8>>3]*2.0;if(!(+h[n>>3]<.0001)){c[(c[k>>2]|0)+164>>2]=~~(+h[o>>3]/+h[n>>3]);if(+h[o>>3]-+(c[(c[k>>2]|0)+164>>2]|0)*+h[n>>3]>.0001){r=(c[k>>2]|0)+164|0;c[r>>2]=(c[r>>2]|0)+1}}else c[(c[k>>2]|0)+164>>2]=1;if(!(+h[n+8>>3]<.0001)){c[(c[k>>2]|0)+164+4>>2]=~~(+h[o+8>>3]/+h[n+8>>3]);if(+h[o+8>>3]-+(c[(c[k>>2]|0)+164+4>>2]|0)*+h[n+8>>3]>.0001){r=(c[k>>2]|0)+164+4|0;c[r>>2]=(c[r>>2]|0)+1}}else c[(c[k>>2]|0)+164+4>>2]=1;r=_(c[(c[k>>2]|0)+164>>2]|0,c[(c[k>>2]|0)+164+4>>2]|0)|0;c[(c[k>>2]|0)+204>>2]=r;h[o>>3]=+h[o>>3]<+h[n>>3]?+h[o>>3]:+h[n>>3];h[o+8>>3]=+h[o+8>>3]<+h[n+8>>3]?+h[o+8>>3]:+h[n+8>>3]}else{if(c[(c[k>>2]|0)+60+8>>2]|0){h[n>>3]=+h[(c[(c[k>>2]|0)+76+8>>2]|0)+24>>3]-+h[p>>3]*2.0;if(+h[n>>3]<0.0)h[n>>3]=0.0;h[n+8>>3]=+h[(c[(c[k>>2]|0)+76+8>>2]|0)+24+8>>3]-+h[p+8>>3]*2.0;if(+h[n+8>>3]<0.0)h[n+8>>3]=0.0}else{h[n+8>>3]=0.0;h[n>>3]=0.0}c[(c[k>>2]|0)+204>>2]=1;c[(c[k>>2]|0)+164+4>>2]=1;c[(c[k>>2]|0)+164>>2]=1;if(+h[n>>3]<+h[o>>3])h[n>>3]=+h[o>>3];if(+h[n+8>>3]<+h[o+8>>3])h[n+8>>3]=+h[o+8>>3]}C=(+h[n>>3]+ +h[p>>3]*2.0)*+h[(c[k>>2]|0)+432>>3]/72.0;c[(c[k>>2]|0)+448>>2]=~~((+h[n>>3]+ +h[p>>3]*2.0)*+h[(c[k>>2]|0)+432>>3]/72.0>=0.0?C+.5:C-.5);C=(+h[n+8>>3]+ +h[p+8>>3]*2.0)*+h[(c[k>>2]|0)+432+8>>3]/72.0;c[(c[k>>2]|0)+452>>2]=~~((+h[n+8>>3]+ +h[p+8>>3]*2.0)*+h[(c[k>>2]|0)+432+8>>3]/72.0>=0.0?C+.5:C-.5);c[(c[k>>2]|0)+188+4>>2]=0;c[(c[k>>2]|0)+188>>2]=0;c[(c[k>>2]|0)+180+4>>2]=0;c[(c[k>>2]|0)+180>>2]=0;c[(c[k>>2]|0)+172+4>>2]=0;c[(c[k>>2]|0)+172>>2]=0;r=(c[k>>2]|0)+180|0;uI(s,c[k>>2]|0,a[c[(c[m>>2]|0)+196>>2]>>0]|0);c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];s=(c[k>>2]|0)+188|0;uI(t,c[k>>2]|0,a[(c[(c[m>>2]|0)+196>>2]|0)+1>>0]|0);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];if(!((N((c[(c[k>>2]|0)+180>>2]|0)+(c[(c[k>>2]|0)+188>>2]|0)|0)|0)==1?(N((c[(c[k>>2]|0)+180+4>>2]|0)+(c[(c[k>>2]|0)+188+4>>2]|0)|0)|0)==1:0)){t=(c[k>>2]|0)+180|0;uI(u,c[k>>2]|0,66);c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];u=(c[k>>2]|0)+188|0;uI(v,c[k>>2]|0,76);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[j>>2]=c[(c[m>>2]|0)+196>>2];$z(0,138079,j)|0}if(a[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+82>>0]|0){if(+h[n>>3]>+h[o>>3])h[q>>3]=(+h[n>>3]-+h[o>>3])/2.0;if(+h[n+8>>3]>+h[o+8>>3])h[q+8>>3]=(+h[n+8>>3]-+h[o+8>>3])/2.0}if(c[(c[k>>2]|0)+360>>2]|0){c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];tI(w,g);c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];tI(x,g);c[n>>2]=c[x>>2];c[n+4>>2]=c[x+4>>2];c[n+8>>2]=c[x+8>>2];c[n+12>>2]=c[x+12>>2];c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];tI(y,g);c[p>>2]=c[y>>2];c[p+4>>2]=c[y+4>>2];c[p+8>>2]=c[y+8>>2];c[p+12>>2]=c[y+12>>2];c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];tI(z,g);c[q>>2]=c[z>>2];c[q+4>>2]=c[z+4>>2];c[q+8>>2]=c[z+8>>2];c[q+12>>2]=c[z+12>>2]}h[(c[k>>2]|0)+384>>3]=+h[p>>3]+ +h[q>>3];h[(c[k>>2]|0)+384+8>>3]=+h[p+8>>3]+ +h[q+8>>3];h[(c[k>>2]|0)+384+16>>3]=+h[p>>3]+ +h[q>>3]+ +h[o>>3];h[(c[k>>2]|0)+384+16+8>>3]=+h[p+8>>3]+ +h[q+8>>3]+ +h[o+8>>3];h[(c[k>>2]|0)+320>>3]=+h[o>>3]/+h[(c[k>>2]|0)+352>>3];h[(c[k>>2]|0)+320+8>>3]=+h[o+8>>3]/+h[(c[k>>2]|0)+352>>3];C=+h[(c[k>>2]|0)+384>>3]*+h[(c[k>>2]|0)+432>>3]/72.0;c[(c[k>>2]|0)+456>>2]=~~(+h[(c[k>>2]|0)+384>>3]*+h[(c[k>>2]|0)+432>>3]/72.0>=0.0?C+.5:C-.5);C=+h[(c[k>>2]|0)+384+8>>3]*+h[(c[k>>2]|0)+432+8>>3]/72.0;c[(c[k>>2]|0)+456+4>>2]=~~(+h[(c[k>>2]|0)+384+8>>3]*+h[(c[k>>2]|0)+432+8>>3]/72.0>=0.0?C+.5:C-.5);C=+h[(c[k>>2]|0)+384+16>>3]*+h[(c[k>>2]|0)+432>>3]/72.0;c[(c[k>>2]|0)+456+8>>2]=~~(+h[(c[k>>2]|0)+384+16>>3]*+h[(c[k>>2]|0)+432>>3]/72.0>=0.0?C+.5:C-.5);C=+h[(c[k>>2]|0)+384+16+8>>3]*+h[(c[k>>2]|0)+432+8>>3]/72.0;c[(c[k>>2]|0)+456+8+4>>2]=~~(+h[(c[k>>2]|0)+384+16+8>>3]*+h[(c[k>>2]|0)+432+8>>3]/72.0>=0.0?C+.5:C-.5);if(!(c[(c[k>>2]|0)+360>>2]|0)){i=f;return}o=(c[k>>2]|0)+456|0;q=(c[k>>2]|0)+456|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];vI(A,g);c[o>>2]=c[A>>2];c[o+4>>2]=c[A+4>>2];A=(c[k>>2]|0)+456+8|0;o=(c[k>>2]|0)+456+8|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];vI(B,g);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];i=f;return}function tI(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;h[e>>3]=+h[b+8>>3];h[e+8>>3]=+h[b>>3];c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];i=d;return}function uI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+12|0;j=f;c[g>>2]=d;a[h>>0]=e;c[j+4>>2]=0;c[j>>2]=0;switch(a[h>>0]|0){case 84:{c[(c[g>>2]|0)+172+4>>2]=(c[(c[g>>2]|0)+164+4>>2]|0)-1;c[j+4>>2]=-1;break}case 66:{c[j+4>>2]=1;break}case 76:{c[j>>2]=1;break}case 82:{c[(c[g>>2]|0)+172>>2]=(c[(c[g>>2]|0)+164>>2]|0)-1;c[j>>2]=-1;break}default:{}}c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];i=f;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=c[b+4>>2];c[e+4>>2]=c[b>>2];c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];i=d;return}function wI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;g=f;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=yA(c[j>>2]|0,138324)|0;c[(c[h>>2]|0)+296>>2]=e;if(!(c[(c[h>>2]|0)+296>>2]|0))c[(c[h>>2]|0)+296>>2]=138333;e=yA(c[j>>2]|0,138337)|0;c[(c[h>>2]|0)+300>>2]=e;if(!(c[(c[h>>2]|0)+300>>2]|0))c[(c[h>>2]|0)+300>>2]=138350;e=R3(c[(c[h>>2]|0)+296>>2]|0,c[(c[h>>2]|0)+300>>2]|0)|0;c[m>>2]=e;if(e){c[g>>2]=a[c[m>>2]>>0];$z(0,138352,g)|0;c[(c[h>>2]|0)+300>>2]=178518}c[l>>2]=0;c[n>>2]=0;g=M3(c[k>>2]|0)|0;c[(c[h>>2]|0)+304>>2]=g;c[m>>2]=V3(c[(c[h>>2]|0)+304>>2]|0,c[(c[h>>2]|0)+296>>2]|0)|0;while(1){o=c[l>>2]|0;if(!(c[m>>2]|0))break;c[l>>2]=o+1;if((c[l>>2]|0)>(c[n>>2]|0)){c[n>>2]=(c[n>>2]|0)+128;if(c[(c[h>>2]|0)+308>>2]|0)p=eK(c[(c[h>>2]|0)+308>>2]|0,c[n>>2]<<2)|0;else p=cK(c[n>>2]<<2)|0;c[(c[h>>2]|0)+308>>2]=p}c[(c[(c[h>>2]|0)+308>>2]|0)+(c[l>>2]<<2)>>2]=c[m>>2];c[m>>2]=V3(0,c[(c[h>>2]|0)+296>>2]|0)|0}if(!o){q=c[l>>2]|0;i=f;return q|0}o=eK(c[(c[h>>2]|0)+308>>2]|0,(c[l>>2]|0)+2<<2)|0;c[(c[h>>2]|0)+308>>2]=o;c[c[(c[h>>2]|0)+308>>2]>>2]=0;c[(c[(c[h>>2]|0)+308>>2]|0)+((c[l>>2]|0)+1<<2)>>2]=0;q=c[l>>2]|0;i=f;return q|0}function xI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e;g=e+24|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;c[g>>2]=a;c[e+20>>2]=b;c[h>>2]=d;c[j>>2]=cK((c[(c[g>>2]|0)+312>>2]|0)+2<<2)|0;c[l>>2]=0;c[k>>2]=1;while(1){if((c[k>>2]|0)>(c[(c[g>>2]|0)+312>>2]|0))break;if((yI(c[g>>2]|0,c[k>>2]|0,c[(c[g>>2]|0)+312>>2]|0,c[h>>2]|0)|0)<<24>>24){d=c[k>>2]|0;b=(c[l>>2]|0)+1|0;c[l>>2]=b;c[(c[j>>2]|0)+(b<<2)>>2]=d}c[k>>2]=(c[k>>2]|0)+1}if(c[l>>2]|0){c[c[j>>2]>>2]=c[l>>2];c[(c[j>>2]|0)+((c[l>>2]|0)+1<<2)>>2]=(c[(c[g>>2]|0)+312>>2]|0)+1;m=c[j>>2]|0;i=e;return m|0}else{c[f>>2]=c[h>>2];$z(0,138219,f)|0;c[c[j>>2]>>2]=c[l>>2];O4(c[j>>2]|0);c[j>>2]=0;m=c[j>>2]|0;i=e;return m|0}return 0}function yI(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=i;i=i+208|0;j=h+68|0;k=h+64|0;l=h+60|0;m=h+56|0;n=h+52|0;o=h+48|0;p=h+44|0;q=h+40|0;r=h+36|0;s=h+32|0;t=h+28|0;u=h+24|0;v=h+8|0;w=h+72|0;x=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[r>>2]=0;c[s>>2]=0;a[w>>0]=0;dA(v,128,h+80|0);gA(v,c[m>>2]|0)|0;if((c[v+4>>2]|0)>>>0>=(c[v+8>>2]|0)>>>0)eA(v,1)|0;m=v+4|0;g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=0;g=c[v>>2]|0;c[v+4>>2]=g;c[u>>2]=g;while(1){if(d[w>>0]|0){y=18;break}g=W3(c[u>>2]|0,c[(c[j>>2]|0)+300>>2]|0,r)|0;c[t>>2]=g;if(!g){y=18;break}g=W3(c[t>>2]|0,c[(c[j>>2]|0)+296>>2]|0,s)|0;c[p>>2]=g;c[q>>2]=g;if(c[p>>2]|0)c[q>>2]=W3(0,c[(c[j>>2]|0)+296>>2]|0,s)|0;switch(((c[p>>2]|0)!=0&1)+((c[q>>2]|0)!=0&1)|0){case 0:{a[w>>0]=0;break}case 1:{c[n>>2]=zI(c[j>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;a[w>>0]=(c[n>>2]|0)==(c[k>>2]|0);break}case 2:{c[n>>2]=zI(c[j>>2]|0,c[p>>2]|0,0)|0;c[o>>2]=zI(c[j>>2]|0,c[q>>2]|0,c[l>>2]|0)|0;if((c[n>>2]|0)>=0|(c[o>>2]|0)>=0){if((c[n>>2]|0)>(c[o>>2]|0)){c[x>>2]=c[n>>2];c[n>>2]=c[o>>2];c[o>>2]=c[x>>2]}if((c[n>>2]|0)<=(c[k>>2]|0))z=(c[k>>2]|0)<=(c[o>>2]|0);else z=0;a[w>>0]=z&1}break}default:{}}c[u>>2]=0}if((y|0)==18){hA(v);i=h;return a[w>>0]|0}return 0}function zI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((a[c[j>>2]>>0]|0)==(a[138320]|0)?(J3(c[j>>2]|0,138320)|0)==0:0){c[g>>2]=c[k>>2];m=c[g>>2]|0;i=f;return m|0}if((AI(c[j>>2]|0)|0)<<24>>24){c[g>>2]=u3(c[j>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}a:do if(c[(c[h>>2]|0)+308>>2]|0){c[l>>2]=1;while(1){if((c[l>>2]|0)>(c[(c[h>>2]|0)+312>>2]|0))break a;if((a[c[j>>2]>>0]|0)==(a[c[(c[(c[h>>2]|0)+308>>2]|0)+(c[l>>2]<<2)>>2]>>0]|0)?(J3(c[j>>2]|0,c[(c[(c[h>>2]|0)+308>>2]|0)+(c[l>>2]<<2)>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=c[l>>2];m=c[g>>2]|0;i=f;return m|0}while(0);c[g>>2]=-1;m=c[g>>2]|0;i=f;return m|0}function AI(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=c[g>>2];while(1){if(!(a[c[h>>2]>>0]|0)){j=5;break}g=c[h>>2]|0;c[h>>2]=g+1;if(!(p1(d[g>>0]|0)|0)){j=4;break}}if((j|0)==4){a[f>>0]=0;k=a[f>>0]|0;i=e;return k|0}else if((j|0)==5){a[f>>0]=1;k=a[f>>0]|0;i=e;return k|0}return 0}function BI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;h[(c[(c[f>>2]|0)+8>>2]|0)+48>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+48+8>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]/2.0;h[(c[(c[f>>2]|0)+8>>2]|0)+48+16>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+48+16+8>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[f>>2]|0)+8>>2]|0)+80>>3]/2.0;c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;CI(c[g>>2]|0);c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function CI(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2];if(!(c[e>>2]|0)){i=b;return}DI(c[e>>2]|0);i=b;return}function DI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0,w=0.0;b=i;i=i+320|0;d=b+256|0;e=b+240|0;f=b+308|0;g=b+304|0;j=b+192|0;k=b+160|0;l=b+128|0;m=b+96|0;n=b+64|0;o=b+32|0;p=b;c[f>>2]=a;if((c[(c[f>>2]|0)+4>>2]|0)<=0)La(138491,137578,3899,138505);a=j;q=c[c[f>>2]>>2]|0;r=a+48|0;do{c[a>>2]=c[q>>2];a=a+4|0;q=q+4|0}while((a|0)<(r|0));a=d;q=j;r=a+48|0;do{c[a>>2]=c[q>>2];a=a+4|0;q=q+4|0}while((a|0)<(r|0));EI(m,d);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;if((c[g>>2]|0)>0){a=j;q=(c[c[f>>2]>>2]|0)+((c[g>>2]|0)*48|0)|0;r=a+48|0;do{c[a>>2]=c[q>>2];a=a+4|0;q=q+4|0}while((a|0)<(r|0));a=d;q=j;r=a+48|0;do{c[a>>2]=c[q>>2];a=a+4|0;q=q+4|0}while((a|0)<(r|0));EI(n,d);c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2];c[l+16>>2]=c[n+16>>2];c[l+20>>2]=c[n+20>>2];c[l+24>>2]=c[n+24>>2];c[l+28>>2]=c[n+28>>2];h[k>>3]=+h[k>>3]<+h[l>>3]?+h[k>>3]:+h[l>>3];h[k+8>>3]=+h[k+8>>3]<+h[l+8>>3]?+h[k+8>>3]:+h[l+8>>3];h[k+16>>3]=+h[k+16>>3]>+h[l+16>>3]?+h[k+16>>3]:+h[l+16>>3];if(+h[k+16+8>>3]>+h[l+16+8>>3])s=+h[k+16+8>>3];else s=+h[l+16+8>>3];h[k+16+8>>3]=s}if(c[j+8>>2]|0){m=j+16|0;t=c[j>>2]|0;u=c[j+8>>2]|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[d>>2]=c[t>>2];c[d+4>>2]=c[t+4>>2];c[d+8>>2]=c[t+8>>2];c[d+12>>2]=c[t+12>>2];gH(o,e,d,1.0,u);c[l>>2]=c[o>>2];c[l+4>>2]=c[o+4>>2];c[l+8>>2]=c[o+8>>2];c[l+12>>2]=c[o+12>>2];c[l+16>>2]=c[o+16>>2];c[l+20>>2]=c[o+20>>2];c[l+24>>2]=c[o+24>>2];c[l+28>>2]=c[o+28>>2];h[k>>3]=+h[k>>3]<+h[l>>3]?+h[k>>3]:+h[l>>3];h[k+8>>3]=+h[k+8>>3]<+h[l+8>>3]?+h[k+8>>3]:+h[l+8>>3];h[k+16>>3]=+h[k+16>>3]>+h[l+16>>3]?+h[k+16>>3]:+h[l+16>>3];if(+h[k+16+8>>3]>+h[l+16+8>>3])v=+h[k+16+8>>3];else v=+h[l+16+8>>3];h[k+16+8>>3]=v}if(c[j+12>>2]|0){u=j+32|0;t=(c[j>>2]|0)+((c[j+4>>2]|0)-1<<4)|0;m=c[j+12>>2]|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[d>>2]=c[t>>2];c[d+4>>2]=c[t+4>>2];c[d+8>>2]=c[t+8>>2];c[d+12>>2]=c[t+12>>2];gH(p,e,d,1.0,m);c[l>>2]=c[p>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[l+12>>2]=c[p+12>>2];c[l+16>>2]=c[p+16>>2];c[l+20>>2]=c[p+20>>2];c[l+24>>2]=c[p+24>>2];c[l+28>>2]=c[p+28>>2];h[k>>3]=+h[k>>3]<+h[l>>3]?+h[k>>3]:+h[l>>3];h[k+8>>3]=+h[k+8>>3]<+h[l+8>>3]?+h[k+8>>3]:+h[l+8>>3];h[k+16>>3]=+h[k+16>>3]>+h[l+16>>3]?+h[k+16>>3]:+h[l+16>>3];if(+h[k+16+8>>3]>+h[l+16+8>>3])w=+h[k+16+8>>3];else w=+h[l+16+8>>3];h[k+16+8>>3]=w}c[g>>2]=(c[g>>2]|0)+1}g=(c[f>>2]|0)+8|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[g+16>>2]=c[k+16>>2];c[g+20>>2]=c[k+20>>2];c[g+24>>2]=c[k+24>>2];c[g+28>>2]=c[k+28>>2];i=b;return}function EI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0;d=i;i=i+96|0;e=d+80|0;f=d+64|0;g=d+48|0;j=d+32|0;k=d;if((c[b+4>>2]|0)<=0)La(138521,137578,3873,138533);if(((c[b+4>>2]|0)%3|0|0)!=1)La(138543,137578,3874,138533);l=k+16|0;m=c[b>>2]|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];c[k>>2]=c[l>>2];c[k+4>>2]=c[l+4>>2];c[k+8>>2]=c[l+8>>2];c[k+12>>2]=c[l+12>>2];c[e>>2]=1;while(1){if((c[e>>2]|0)>=(c[b+4>>2]|0))break;l=(c[b>>2]|0)+(c[e>>2]<<4)|0;c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];c[e>>2]=(c[e>>2]|0)+1;l=(c[b>>2]|0)+(c[e>>2]<<4)|0;c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2];c[e>>2]=(c[e>>2]|0)+1;h[f>>3]=(+h[g>>3]+ +h[j>>3])/2.0;h[f+8>>3]=(+h[g+8>>3]+ +h[j+8>>3])/2.0;h[k>>3]=+h[k>>3]<+h[f>>3]?+h[k>>3]:+h[f>>3];h[k+8>>3]=+h[k+8>>3]<+h[f+8>>3]?+h[k+8>>3]:+h[f+8>>3];h[k+16>>3]=+h[k+16>>3]>+h[f>>3]?+h[k+16>>3]:+h[f>>3];if(+h[k+16+8>>3]>+h[f+8>>3])n=+h[k+16+8>>3];else n=+h[f+8>>3];h[k+16+8>>3]=n;l=(c[b>>2]|0)+(c[e>>2]<<4)|0;c[f>>2]=c[l>>2];c[f+4>>2]=c[l+4>>2];c[f+8>>2]=c[l+8>>2];c[f+12>>2]=c[l+12>>2];h[k>>3]=+h[k>>3]<+h[f>>3]?+h[k>>3]:+h[f>>3];h[k+8>>3]=+h[k+8>>3]<+h[f+8>>3]?+h[k+8>>3]:+h[f+8>>3];h[k+16>>3]=+h[k+16>>3]>+h[f>>3]?+h[k+16>>3]:+h[f>>3];if(+h[k+16+8>>3]>+h[f+8>>3])o=+h[k+16+8>>3];else o=+h[f+8>>3];h[k+16+8>>3]=o;c[e>>2]=(c[e>>2]|0)+1}c[a>>2]=c[k>>2];c[a+4>>2]=c[k+4>>2];c[a+8>>2]=c[k+8>>2];c[a+12>>2]=c[k+12>>2];c[a+16>>2]=c[k+16>>2];c[a+20>>2]=c[k+20>>2];c[a+24>>2]=c[k+24>>2];c[a+28>>2]=c[k+28>>2];i=d;return}function FI(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;switch(c[f>>2]|0){case 0:case 44:case 41:case 40:{a[e>>0]=1;break}default:a[e>>0]=0}i=d;return a[e>>0]|0}function GI(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+80|0;g=f+32|0;h=f;j=f+76|0;k=f+72|0;l=f+68|0;m=f+64|0;c[k>>2]=b;c[l>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2];if((c[l>>2]|0)!=0?(b=(c[l>>2]|0)+8|0,c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[h+16>>2]=c[b+16>>2],c[h+20>>2]=c[b+20>>2],c[h+24>>2]=c[b+24>>2],c[h+28>>2]=c[b+28>>2],c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[g+16>>2]=c[e+16>>2],c[g+20>>2]=c[e+20>>2],c[g+24>>2]=c[e+24>>2],c[g+28>>2]=c[e+28>>2],(iJ(h,g)|0)!=0):0){a[j>>0]=1;n=a[j>>0]|0;i=f;return n|0}c[m>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2];if((c[m>>2]|0)!=0?(h=c[m>>2]|0,c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[g+16>>2]=c[e+16>>2],c[g+20>>2]=c[e+20>>2],c[g+24>>2]=c[e+24>>2],c[g+28>>2]=c[e+28>>2],((NO(h,g)|0)&255|0)!=0):0){a[j>>0]=1;n=a[j>>0]|0;i=f;return n|0}c[m>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+108>>2];if(((c[m>>2]|0)!=0?(d[(c[m>>2]|0)+81>>0]|0|0)!=0:0)?(k=c[m>>2]|0,c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[g+16>>2]=c[e+16>>2],c[g+20>>2]=c[e+20>>2],c[g+24>>2]=c[e+24>>2],c[g+28>>2]=c[e+28>>2],((NO(k,g)|0)&255|0)!=0):0){a[j>>0]=1;n=a[j>>0]|0;i=f;return n|0}a[j>>0]=0;n=a[j>>0]|0;i=f;return n|0}function HI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=b;c[f+16>>2]=d;c[j>>2]=e;if((c[(c[h>>2]|0)+156>>2]|0)<=1){a[g>>0]=1;n=a[g>>0]|0;i=f;return n|0}c[k>>2]=hO(c[j>>2]|0,c[13874]|0,178518)|0;if((hJ(c[h>>2]|0,c[k>>2]|0)|0)<<24>>24){a[g>>0]=1;n=a[g>>0]|0;i=f;return n|0}if(a[c[k>>2]>>0]|0){a[g>>0]=0;n=a[g>>0]|0;i=f;return n|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>=2){o=16;break}k=c[c[j>>2]>>2]&3;if((c[m>>2]|0)<1){e=c[j>>2]|0;p=c[((k|0)==3?e:e+32|0)+28>>2]|0}else{e=c[j>>2]|0;p=c[((k|0)==2?e:e+-32|0)+28>>2]|0}c[l>>2]=hO(p,c[13844]|0,178518)|0;if(!(a[c[l>>2]>>0]|0)){o=14;break}if((hJ(c[h>>2]|0,c[l>>2]|0)|0)&255){o=14;break}c[m>>2]=(c[m>>2]|0)+1}if((o|0)==14){a[g>>0]=1;n=a[g>>0]|0;i=f;return n|0}else if((o|0)==16){a[g>>0]=0;n=a[g>>0]|0;i=f;return n|0}return 0}function II(d,f,g){d=d|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0.0;j=i;i=i+240|0;k=j+100|0;l=j+96|0;m=j+92|0;n=j+88|0;o=j+84|0;p=j+80|0;q=j+76|0;r=j+72|0;s=j+68|0;t=j+64|0;u=j+60|0;v=j+56|0;w=j+52|0;x=j+48|0;y=j+44|0;z=j+40|0;A=j+8|0;B=j+24|0;C=j+104|0;D=j+20|0;E=j+16|0;F=j;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[k>>2]|0)+152>>2];c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[n>>2]=wH(c[k>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=3;c[(c[n>>2]|0)+8>>2]=c[l>>2];c[(c[n>>2]|0)+12>>2]=9;if((c[m>>2]|0)!=0?(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)rR(c[k>>2]|0,c[m>>2]|0);if(((c[13890]|0)!=0?(m=zA(c[l>>2]|0,c[13890]|0)|0,c[p>>2]=m,(m|0)!=0):0)?(a[c[p>>2]>>0]|0)!=0:0){h[A>>3]=+fO(c[l>>2]|0,c[13890]|0,1.0,0.0);zR(c[k>>2]|0,+h[A>>3])}do if(c[o>>2]&16777216){A=c[l>>2]|0;if((e[(c[(qC(c[((c[c[l>>2]>>2]&3|0)==3?A:A+32|0)+28>>2]|0)|0)+8>>2]|0)+178>>1]|0)>=3){A=c[l>>2]|0;m=c[l>>2]|0;G=+h[(c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0;h[(c[n>>2]|0)+176>>3]=+(~~(+h[(c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?A:A+32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0>=0.0?G+.5:G-.5)|0);A=c[l>>2]|0;m=c[l>>2]|0;G=+h[(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0;h[(c[n>>2]|0)+184>>3]=+(~~(+h[(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?A:A+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0>=0.0?G+.5:G-.5)|0);break}else{h[(c[n>>2]|0)+184>>3]=0.0;h[(c[n>>2]|0)+176>>3]=0.0;break}}while(0);if(c[o>>2]&32768){A=c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0;c[q>>2]=A;if(A)c[(c[n>>2]|0)+192>>2]=c[c[q>>2]>>2];q=c[(c[n>>2]|0)+192>>2]|0;c[(c[n>>2]|0)+196>>2]=q;c[(c[n>>2]|0)+204>>2]=q;c[(c[n>>2]|0)+200>>2]=q;q=c[(c[(c[l>>2]|0)+8>>2]|0)+108>>2]|0;c[r>>2]=q;if(q)c[(c[n>>2]|0)+196>>2]=c[c[r>>2]>>2];q=c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0;c[r>>2]=q;if(q)c[(c[n>>2]|0)+200>>2]=c[c[r>>2]>>2];r=c[(c[(c[l>>2]|0)+8>>2]|0)+100>>2]|0;c[s>>2]=r;if(r)c[(c[n>>2]|0)+204>>2]=c[c[s>>2]>>2]}a:do if(c[o>>2]&65536){dA(B,128,C);c[p>>2]=zH(c[k>>2]|0,c[l>>2]|0,B)|0;s=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+212>>2]=s;hA(B);s=yA(c[l>>2]|0,179064)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)H=26;else H=24;if(((H|0)==24?(s=yA(c[l>>2]|0,149053)|0,c[p>>2]=s,(s|0)!=0):0)?(a[c[p>>2]>>0]|0)!=0:0)H=26;if((H|0)==26)c[y>>2]=WJ(c[p>>2]|0,c[l>>2]|0)|0;s=yA(c[l>>2]|0,138621)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)H=31;else H=29;do if((H|0)==29){s=yA(c[l>>2]|0,138630)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){H=31;break}if(c[y>>2]|0){s=M3(c[y>>2]|0)|0;c[(c[n>>2]|0)+208>>2]=s}}while(0);if((H|0)==31){s=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+208>>2]=s}s=yA(c[l>>2]|0,138638)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)H=38;else H=36;do if((H|0)==36){s=yA(c[l>>2]|0,138648)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){H=38;break}if(c[y>>2]|0){s=M3(c[y>>2]|0)|0;c[(c[n>>2]|0)+216>>2]=s}}while(0);if((H|0)==38){s=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+216>>2]=s}s=yA(c[l>>2]|0,138657)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)H=45;else H=43;do if((H|0)==43){s=yA(c[l>>2]|0,138666)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){H=45;break}if(c[y>>2]|0){s=M3(c[y>>2]|0)|0;c[(c[n>>2]|0)+220>>2]=s}}while(0);if((H|0)==45){s=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+220>>2]=s;s=(c[n>>2]|0)+260|0;b[s>>1]=b[s>>1]&-129|128}s=yA(c[l>>2]|0,138674)|0;c[p>>2]=s;if(!((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0))H=50;do if((H|0)==50){s=yA(c[l>>2]|0,138683)|0;c[p>>2]=s;if((s|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)break;if(!(c[y>>2]|0))break a;s=M3(c[y>>2]|0)|0;c[(c[n>>2]|0)+224>>2]=s;break a}while(0);s=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+224>>2]=s;s=(c[n>>2]|0)+260|0;b[s>>1]=b[s>>1]&-257|256}while(0);do if(c[o>>2]&8388608){B=yA(c[l>>2]|0,179097)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)c[z>>2]=WJ(c[p>>2]|0,c[l>>2]|0)|0;B=yA(c[l>>2]|0,138691)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-65|64;B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+244>>2]=B}else H=62;if((H|0)==62?(c[z>>2]|0)!=0:0){B=M3(c[z>>2]|0)|0;c[(c[n>>2]|0)+244>>2]=B}B=yA(c[l>>2]|0,138702)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+248>>2]=B}else H=67;if((H|0)==67?(c[z>>2]|0)!=0:0){B=M3(c[z>>2]|0)|0;c[(c[n>>2]|0)+248>>2]=B}B=yA(c[l>>2]|0,138714)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+252>>2]=B;B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-17|16}else H=72;if((H|0)==72?(c[z>>2]|0)!=0:0){B=M3(c[z>>2]|0)|0;c[(c[n>>2]|0)+252>>2]=B}B=yA(c[l>>2]|0,138725)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-33|32;B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+256>>2]=B;break}if(c[z>>2]|0){B=M3(c[z>>2]|0)|0;c[(c[n>>2]|0)+256>>2]=B}}while(0);do if(c[o>>2]&4194304){B=yA(c[l>>2]|0,179110)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0)H=84;else H=82;do if((H|0)==82){B=yA(c[l>>2]|0,138736)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){H=84;break}if(c[(c[n>>2]|0)+192>>2]|0){B=M3(c[(c[n>>2]|0)+192>>2]|0)|0;c[(c[n>>2]|0)+228>>2]=B}}while(0);if((H|0)==84){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+228>>2]=B;B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-2|1}B=yA(c[l>>2]|0,138748)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+232>>2]=B;B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-9|8}else H=90;if((H|0)==90?(c[(c[n>>2]|0)+192>>2]|0)!=0:0){B=M3(c[(c[n>>2]|0)+192>>2]|0)|0;c[(c[n>>2]|0)+232>>2]=B}B=yA(c[l>>2]|0,138761)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+236>>2]=B;B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-3|2}else H=95;if((H|0)==95?(c[(c[n>>2]|0)+200>>2]|0)!=0:0){B=M3(c[(c[n>>2]|0)+200>>2]|0)|0;c[(c[n>>2]|0)+236>>2]=B}B=yA(c[l>>2]|0,138773)|0;c[p>>2]=B;if((B|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){B=WJ(c[p>>2]|0,c[l>>2]|0)|0;c[(c[n>>2]|0)+240>>2]=B;B=(c[n>>2]|0)+260|0;b[B>>1]=b[B>>1]&-5|4;break}if(c[(c[n>>2]|0)+204>>2]|0){B=M3(c[(c[n>>2]|0)+204>>2]|0)|0;c[(c[n>>2]|0)+240>>2]=B}}while(0);O4(c[y>>2]|0);O4(c[z>>2]|0);do if((c[o>>2]&4259840|0)!=0?(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){if((c[(c[n>>2]|0)+208>>2]|0)==0?(c[(c[n>>2]|0)+228>>2]|0)==0:0)break;if(c[o>>2]&524288){if(+h[(c[(c[k>>2]|0)+16>>2]|0)+152>>3]/2.0>2.0)I=+h[(c[(c[k>>2]|0)+16>>2]|0)+152>>3]/2.0;else I=2.0;h[F>>3]=I;c[E>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2];c[D>>2]=c[(c[E>>2]|0)+4>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[D>>2]|0))break;bJ(t,w,x,(c[c[E>>2]>>2]|0)+((c[u>>2]|0)*48|0)|0,+h[F>>3]);c[u>>2]=(c[u>>2]|0)+1}c[(c[n>>2]|0)+276>>2]=c[x>>2];c[(c[n>>2]|0)+280>>2]=c[w>>2];if(!(c[o>>2]&8192)){c[v>>2]=0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[x>>2]|0))break;c[v>>2]=(c[v>>2]|0)+(c[(c[w>>2]|0)+(c[u>>2]<<2)>>2]|0);c[u>>2]=(c[u>>2]|0)+1}UQ(c[k>>2]|0,c[t>>2]|0,c[t>>2]|0,c[v>>2]|0)|0}c[(c[n>>2]|0)+284>>2]=c[t>>2];c[(c[n>>2]|0)+264>>2]=2;c[(c[n>>2]|0)+272>>2]=c[t>>2];c[(c[n>>2]|0)+268>>2]=c[c[w>>2]>>2]}}while(0);hR(c[k>>2]|0,c[l>>2]|0);if((c[(c[n>>2]|0)+208>>2]|0)==0?((b[(c[n>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0){i=j;return}jR(c[k>>2]|0,c[(c[n>>2]|0)+208>>2]|0,c[(c[n>>2]|0)+228>>2]|0,c[(c[n>>2]|0)+244>>2]|0,c[(c[n>>2]|0)+212>>2]|0);i=j;return}function JI(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0,_=0.0;g=i;i=i+432|0;j=g+328|0;k=g+312|0;l=g+296|0;m=g+280|0;n=g+420|0;o=g+416|0;p=g+412|0;q=g+408|0;r=g+404|0;s=g+400|0;t=g+396|0;u=g+392|0;v=g+388|0;w=g+384|0;x=g+380|0;y=g+376|0;z=g+372|0;A=g+368|0;B=g+364|0;C=g+232|0;D=g+192|0;E=g+152|0;F=g+136|0;G=g+120|0;H=g+104|0;I=g+88|0;J=g+360|0;K=g+356|0;L=g+80|0;M=g+72|0;N=g+64|0;O=g+352|0;P=g+424|0;Q=g+348|0;R=g+344|0;S=g+48|0;T=g+32|0;U=g+16|0;V=g;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[t>>2]=0;c[u>>2]=0;c[B>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;h[N>>3]=+h[(c[(c[n>>2]|0)+16>>2]|0)+152>>3];a[P>>0]=0;dT(yA(c[o>>2]|0,137612)|0);if(!(c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]|0)){i=g;return}h[L>>3]=+fO(c[o>>2]|0,c[13872]|0,1.0,0.0);c[v>>2]=hO(c[o>>2]|0,c[13853]|0,178518)|0;a:do if(c[p>>2]|0){c[Q>>2]=c[p>>2];while(1){f=c[Q>>2]|0;c[Q>>2]=f+4;e=c[f>>2]|0;c[O>>2]=e;if(!e)break a;if((a[c[O>>2]>>0]|0)!=(a[148679]|0))continue;if(!(J3(c[O>>2]|0,148679)|0))break}a[P>>0]=1}while(0);c[O>>2]=c[v>>2];while(1){if(!(a[c[O>>2]>>0]|0))break;if((a[c[O>>2]>>0]|0)!=58){if((a[c[O>>2]>>0]|0)==59)c[u>>2]=(c[u>>2]|0)+1}else c[t>>2]=(c[t>>2]|0)+1;c[O>>2]=(c[O>>2]|0)+1}do if((c[u>>2]|0)!=0&(c[t>>2]|0)!=0)if(RI(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[v>>2]|0,(c[t>>2]|0)+1|0,+h[L>>3],+h[N>>3])|0){c[v>>2]=174917;break}else{i=g;return}while(0);u=c[v>>2]|0;c[w>>2]=u;c[x>>2]=u;u=c[o>>2]|0;do if(!(d[(c[(c[o>>2]|0)+8>>2]|0)+115>>0]&1)){O=c[o>>2]|0;if(d[(c[u+8>>2]|0)+115>>0]&2){Q=c[13857]|0;c[w>>2]=iO(O,Q,SI(c[w>>2]|0,143682)|0)|0;c[x>>2]=iO(c[o>>2]|0,c[13858]|0,143690)|0;break}Q=c[o>>2]|0;if(d[(c[O+8>>2]|0)+115>>0]&8){O=c[13861]|0;c[w>>2]=iO(Q,O,SI(c[w>>2]|0,143698)|0)|0;c[x>>2]=iO(c[o>>2]|0,c[13862]|0,143706)|0;break}O=c[o>>2]|0;if(d[(c[Q+8>>2]|0)+115>>0]&4){Q=c[13859]|0;c[w>>2]=iO(O,Q,SI(c[w>>2]|0,143714)|0)|0;c[x>>2]=iO(c[o>>2]|0,c[13860]|0,143722)|0;break}else{c[x>>2]=iO(O,c[13854]|0,c[v>>2]|0)|0;break}}else{O=c[13855]|0;c[w>>2]=iO(u,O,SI(c[w>>2]|0,143666)|0)|0;c[x>>2]=iO(c[o>>2]|0,c[13856]|0,143674)|0}while(0);if((c[w>>2]|0)!=(c[v>>2]|0))oR(c[n>>2]|0,c[w>>2]|0);if((c[x>>2]|0)!=(c[v>>2]|0))pR(c[n>>2]|0,c[x>>2]|0);c[v>>2]=c[w>>2];if(a[P>>0]|0){if(!(a[c[v>>2]>>0]|0))c[v>>2]=174917;if(!(a[c[x>>2]>>0]|0))c[x>>2]=174917;oR(c[n>>2]|0,175430);pR(c[n>>2]|0,c[v>>2]|0);W=C;X=c[c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]>>2]|0;Y=W+48|0;do{c[W>>2]=c[X>>2];W=W+4|0;X=X+4|0}while((W|0)<(Y|0));P=TI(c[o>>2]|0)|0;c[R>>2]=GN(C,P,+h[N>>3],0,0)|0;tR(c[n>>2]|0,c[(c[R>>2]|0)+8>>2]|0,c[c[R>>2]>>2]|0,1);UI(c[R>>2]|0);oR(c[n>>2]|0,c[v>>2]|0);if((c[x>>2]|0)!=(c[v>>2]|0))pR(c[n>>2]|0,c[x>>2]|0);if(c[C+8>>2]|0){R=c[n>>2]|0;P=C+16|0;w=c[C>>2]|0;Z=+h[L>>3];_=+h[N>>3];u=c[C+8>>2]|0;c[k>>2]=c[P>>2];c[k+4>>2]=c[P+4>>2];c[k+8>>2]=c[P+8>>2];c[k+12>>2]=c[P+12>>2];c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];hH(R,2,k,j,Z,_,u)}if(!(c[C+12>>2]|0)){i=g;return}u=c[n>>2]|0;R=C+32|0;w=(c[C>>2]|0)+((c[C+4>>2]|0)-1<<4)|0;_=+h[L>>3];Z=+h[N>>3];P=c[C+12>>2]|0;c[k>>2]=c[R>>2];c[k+4>>2]=c[R+4>>2];c[k+8>>2]=c[R+8>>2];c[k+12>>2]=c[R+12>>2];c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];hH(u,3,k,j,_,Z,P);i=g;return}P=c[(c[o>>2]|0)+8>>2]|0;if(!(c[t>>2]|0)){do if(!(d[P+115>>0]&3)){u=c[n>>2]|0;if(a[c[v>>2]>>0]|0){oR(u,c[v>>2]|0);pR(c[n>>2]|0,c[x>>2]|0);break}oR(u,174917);u=c[n>>2]|0;if(a[c[x>>2]>>0]|0){pR(u,c[x>>2]|0);break}else{pR(u,174917);break}}while(0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;W=C;X=(c[c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[q>>2]|0)*48|0)|0;Y=W+48|0;do{c[W>>2]=c[X>>2];W=W+4|0;X=X+4|0}while((W|0)<(Y|0));x=c[n>>2]|0;u=c[C>>2]|0;w=c[C+4>>2]|0;do if(!(c[(c[n>>2]|0)+152>>2]&16384)){vR(x,u,w,0,0,0);if(c[C+8>>2]|0){R=c[n>>2]|0;O=C+16|0;Q=c[C>>2]|0;Z=+h[L>>3];_=+h[N>>3];e=c[C+8>>2]|0;c[k>>2]=c[O>>2];c[k+4>>2]=c[O+4>>2];c[k+8>>2]=c[O+8>>2];c[k+12>>2]=c[O+12>>2];c[j>>2]=c[Q>>2];c[j+4>>2]=c[Q+4>>2];c[j+8>>2]=c[Q+8>>2];c[j+12>>2]=c[Q+12>>2];hH(R,2,k,j,Z,_,e)}if(c[C+12>>2]|0){e=c[n>>2]|0;R=C+32|0;Q=(c[C>>2]|0)+((c[C+4>>2]|0)-1<<4)|0;_=+h[L>>3];Z=+h[N>>3];O=c[C+12>>2]|0;c[k>>2]=c[R>>2];c[k+4>>2]=c[R+4>>2];c[k+8>>2]=c[R+8>>2];c[k+12>>2]=c[R+12>>2];c[j>>2]=c[Q>>2];c[j+4>>2]=c[Q+4>>2];c[j+8>>2]=c[Q+8>>2];c[j+12>>2]=c[Q+12>>2];hH(e,3,k,j,_,Z,O)}if((c[(c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(c[C+8>>2]|0){if(!(c[p>>2]|0))break}else if(!((c[C+12>>2]|0)!=0&(c[p>>2]|0)!=0))break;rR(c[n>>2]|0,c[p>>2]|0)}}else vR(x,u,w,c[C+8>>2]|0,c[C+12>>2]|0,0);while(0);c[q>>2]=(c[q>>2]|0)+1}i=g;return}p=c[(c[P+8>>2]|0)+4>>2]|0;c[D+4>>2]=p;c[E+4>>2]=p;c[D>>2]=N4((c[D+4>>2]|0)*48|0)|0;c[E>>2]=N4((c[E+4>>2]|0)*48|0)|0;h[M>>3]=+(2+(c[t>>2]|0)|0)/2.0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[D+4>>2]|0))break;W=C;X=(c[c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[q>>2]|0)*48|0)|0;Y=W+48|0;do{c[W>>2]=c[X>>2];W=W+4|0;X=X+4|0}while((W|0)<(Y|0));t=c[C+4>>2]|0;c[(c[D>>2]|0)+((c[q>>2]|0)*48|0)+4>>2]=t;c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)+4>>2]=t;t=N4(c[C+4>>2]<<4)|0;c[(c[D>>2]|0)+((c[q>>2]|0)*48|0)>>2]=t;c[J>>2]=t;t=N4(c[C+4>>2]<<4)|0;c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)>>2]=t;c[K>>2]=t;t=c[C>>2]|0;c[I>>2]=c[t>>2];c[I+4>>2]=c[t+4>>2];c[I+8>>2]=c[t+8>>2];c[I+12>>2]=c[t+12>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=((c[C+4>>2]|0)-1|0))break;c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];c[F+8>>2]=c[I+8>>2];c[F+12>>2]=c[I+12>>2];t=(c[C>>2]|0)+((c[r>>2]|0)+1<<4)|0;c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[G+8>>2]=c[t+8>>2];c[G+12>>2]=c[t+12>>2];t=(c[J>>2]|0)+(c[r>>2]<<4)|0;if(!(c[r>>2]|0)){c[k>>2]=c[F>>2];c[k+4>>2]=c[F+4>>2];c[k+8>>2]=c[F+8>>2];c[k+12>>2]=c[F+12>>2];c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];c[j+12>>2]=c[G+12>>2];VI(S,k,j,2.0);c[t>>2]=c[S>>2];c[t+4>>2]=c[S+4>>2];c[t+8>>2]=c[S+8>>2];c[t+12>>2]=c[S+12>>2]}else{c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];c[j+12>>2]=c[G+12>>2];VI(T,k,j,2.0);c[t>>2]=c[T>>2];c[t+4>>2]=c[T+4>>2];c[t+8>>2]=c[T+8>>2];c[t+12>>2]=c[T+12>>2]}t=(c[C>>2]|0)+((c[r>>2]|0)+2<<4)|0;c[H>>2]=c[t>>2];c[H+4>>2]=c[t+4>>2];c[H+8>>2]=c[t+8>>2];c[H+12>>2]=c[t+12>>2];t=(c[C>>2]|0)+((c[r>>2]|0)+3<<4)|0;c[I>>2]=c[t>>2];c[I+4>>2]=c[t+4>>2];c[I+8>>2]=c[t+8>>2];c[I+12>>2]=c[t+12>>2];t=(c[J>>2]|0)+((c[r>>2]|0)+1<<4)|0;p=(c[J>>2]|0)+((c[r>>2]|0)+2<<4)|0;c[m>>2]=c[F>>2];c[m+4>>2]=c[F+4>>2];c[m+8>>2]=c[F+8>>2];c[m+12>>2]=c[F+12>>2];c[l>>2]=c[G>>2];c[l+4>>2]=c[G+4>>2];c[l+8>>2]=c[G+8>>2];c[l+12>>2]=c[G+12>>2];c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];c[j>>2]=c[I>>2];c[j+4>>2]=c[I+4>>2];c[j+8>>2]=c[I+8>>2];c[j+12>>2]=c[I+12>>2];WI(U,m,l,k,j,2.0);c[p>>2]=c[U>>2];c[p+4>>2]=c[U+4>>2];c[p+8>>2]=c[U+8>>2];c[p+12>>2]=c[U+12>>2];c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];h[(c[K>>2]|0)+(c[r>>2]<<4)>>3]=+h[F>>3]-+h[M>>3]*+h[(c[J>>2]|0)+(c[r>>2]<<4)>>3];h[(c[K>>2]|0)+(c[r>>2]<<4)+8>>3]=+h[F+8>>3]-+h[M>>3]*+h[(c[J>>2]|0)+(c[r>>2]<<4)+8>>3];h[(c[K>>2]|0)+((c[r>>2]|0)+1<<4)>>3]=+h[G>>3]-+h[M>>3]*+h[(c[J>>2]|0)+((c[r>>2]|0)+1<<4)>>3];h[(c[K>>2]|0)+((c[r>>2]|0)+1<<4)+8>>3]=+h[G+8>>3]-+h[M>>3]*+h[(c[J>>2]|0)+((c[r>>2]|0)+1<<4)+8>>3];h[(c[K>>2]|0)+((c[r>>2]|0)+2<<4)>>3]=+h[H>>3]-+h[M>>3]*+h[(c[J>>2]|0)+((c[r>>2]|0)+2<<4)>>3];h[(c[K>>2]|0)+((c[r>>2]|0)+2<<4)+8>>3]=+h[H+8>>3]-+h[M>>3]*+h[(c[J>>2]|0)+((c[r>>2]|0)+2<<4)+8>>3];c[r>>2]=(c[r>>2]|0)+3}p=(c[J>>2]|0)+(c[r>>2]<<4)|0;c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];c[j>>2]=c[I>>2];c[j+4>>2]=c[I+4>>2];c[j+8>>2]=c[I+8>>2];c[j+12>>2]=c[I+12>>2];VI(V,k,j,2.0);c[p>>2]=c[V>>2];c[p+4>>2]=c[V+4>>2];c[p+8>>2]=c[V+8>>2];c[p+12>>2]=c[V+12>>2];h[(c[K>>2]|0)+(c[r>>2]<<4)>>3]=+h[I>>3]-+h[M>>3]*+h[(c[J>>2]|0)+(c[r>>2]<<4)>>3];h[(c[K>>2]|0)+(c[r>>2]<<4)+8>>3]=+h[I+8>>3]-+h[M>>3]*+h[(c[J>>2]|0)+(c[r>>2]<<4)+8>>3];c[q>>2]=(c[q>>2]|0)+1}M=c[v>>2]|0;c[z>>2]=M;c[y>>2]=M;c[A>>2]=M;c[B>>2]=M3(c[v>>2]|0)|0;c[s>>2]=0;c[v>>2]=V3(c[B>>2]|0,148898)|0;while(1){if(!(c[v>>2]|0))break;if(!(a[c[v>>2]>>0]|0))c[v>>2]=174917;if((c[v>>2]|0)!=(c[A>>2]|0)){if(!(d[(c[(c[o>>2]|0)+8>>2]|0)+115>>0]&3)){oR(c[n>>2]|0,c[v>>2]|0);pR(c[n>>2]|0,c[v>>2]|0)}c[A>>2]=c[v>>2]}if(!(c[s>>2]|0)){M=c[v>>2]|0;c[z>>2]=M;c[y>>2]=M}if((c[s>>2]|0)==1)c[z>>2]=c[v>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[E+4>>2]|0))break;c[K>>2]=c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)>>2];c[J>>2]=c[(c[D>>2]|0)+((c[q>>2]|0)*48|0)>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)+4>>2]|0))break;M=(c[K>>2]|0)+(c[r>>2]<<4)|0;h[M>>3]=+h[M>>3]+ +h[(c[J>>2]|0)+(c[r>>2]<<4)>>3];M=(c[K>>2]|0)+(c[r>>2]<<4)+8|0;h[M>>3]=+h[M>>3]+ +h[(c[J>>2]|0)+(c[r>>2]<<4)+8>>3];c[r>>2]=(c[r>>2]|0)+1}vR(c[n>>2]|0,c[K>>2]|0,c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)+4>>2]|0,0,0,0);c[q>>2]=(c[q>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1;c[v>>2]=V3(0,148898)|0}if(c[C+8>>2]|0){if((c[v>>2]|0)!=(c[z>>2]|0)?(c[v>>2]=c[z>>2],(d[(c[(c[o>>2]|0)+8>>2]|0)+115>>0]&3|0)==0):0){oR(c[n>>2]|0,c[v>>2]|0);pR(c[n>>2]|0,c[v>>2]|0)}z=c[n>>2]|0;s=C+16|0;K=c[C>>2]|0;Z=+h[L>>3];_=+h[N>>3];r=c[C+8>>2]|0;c[k>>2]=c[s>>2];c[k+4>>2]=c[s+4>>2];c[k+8>>2]=c[s+8>>2];c[k+12>>2]=c[s+12>>2];c[j>>2]=c[K>>2];c[j+4>>2]=c[K+4>>2];c[j+8>>2]=c[K+8>>2];c[j+12>>2]=c[K+12>>2];hH(z,2,k,j,Z,_,r)}if(c[C+12>>2]|0){if((c[v>>2]|0)!=(c[y>>2]|0)?(c[v>>2]=c[y>>2],(d[(c[(c[o>>2]|0)+8>>2]|0)+115>>0]&3|0)==0):0){oR(c[n>>2]|0,c[v>>2]|0);pR(c[n>>2]|0,c[v>>2]|0)}v=c[n>>2]|0;n=C+32|0;o=(c[C>>2]|0)+((c[C+4>>2]|0)-1<<4)|0;_=+h[L>>3];Z=+h[N>>3];N=c[C+12>>2]|0;c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];hH(v,3,k,j,_,Z,N)}O4(c[B>>2]|0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[D+4>>2]|0))break;O4(c[(c[D>>2]|0)+((c[q>>2]|0)*48|0)>>2]|0);O4(c[(c[E>>2]|0)+((c[q>>2]|0)*48|0)>>2]|0);c[q>>2]=(c[q>>2]|0)+1}O4(c[D>>2]|0);O4(c[E>>2]|0);i=g;return}function KI(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=i;i=i+112|0;e=d+64|0;f=d+96|0;g=d+92|0;h=d+88|0;j=d+84|0;k=d+80|0;l=d+48|0;m=d;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+16>>2];c[h>>2]=c[(c[g>>2]|0)+8>>2];if(!((c[(c[g>>2]|0)+208>>2]|0)==0?((b[(c[g>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0))n=3;a:do if((n|0)==3?(kR(c[f>>2]|0),(c[(c[g>>2]|0)+276>>2]|0)!=0):0){c[k>>2]=c[c[(c[g>>2]|0)+280>>2]>>2];c[j>>2]=1;while(1){if((c[j>>2]|0)>=(c[(c[g>>2]|0)+276>>2]|0))break a;c[(c[g>>2]|0)+268>>2]=c[(c[(c[g>>2]|0)+280>>2]|0)+(c[j>>2]<<2)>>2];c[(c[g>>2]|0)+272>>2]=(c[(c[g>>2]|0)+284>>2]|0)+(c[k>>2]<<4);jR(c[f>>2]|0,c[(c[g>>2]|0)+208>>2]|0,c[(c[g>>2]|0)+228>>2]|0,c[(c[g>>2]|0)+244>>2]|0,c[(c[g>>2]|0)+212>>2]|0);kR(c[f>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[(c[(c[g>>2]|0)+280>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}}while(0);c[(c[g>>2]|0)+268>>2]=0;c[(c[g>>2]|0)+272>>2]=0;if(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0){j=m;k=c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0;n=j+48|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));if(c[m+8>>2]|0){a=m+16|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2]}else{a=c[m>>2]|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2]}a=c[f>>2]|0;o=(b[(c[g>>2]|0)+260>>1]<<8&65535)<<16>>16>>15&255;p=c[(c[g>>2]|0)+220>>2]|0;q=(b[(c[g>>2]|0)+260>>1]<<14&65535)<<16>>16>>15&255;r=c[(c[g>>2]|0)+236>>2]|0;s=(b[(c[g>>2]|0)+260>>1]<<11&65535)<<16>>16>>15&255;t=c[(c[g>>2]|0)+252>>2]|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];LI(a,e,o,p,q,r,s,t);j=m;k=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+(((c[(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)-1|0)*48|0)|0;n=j+48|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(n|0));if(c[m+12>>2]|0){k=m+32|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2]}else{k=(c[m>>2]|0)+((c[m+4>>2]|0)-1<<4)|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2]}k=c[f>>2]|0;m=(b[(c[g>>2]|0)+260>>1]<<7&65535)<<16>>16>>15&255;j=c[(c[g>>2]|0)+224>>2]|0;n=(b[(c[g>>2]|0)+260>>1]<<13&65535)<<16>>16>>15&255;t=c[(c[g>>2]|0)+240>>2]|0;s=(b[(c[g>>2]|0)+260>>1]<<10&65535)<<16>>16>>15&255;r=c[(c[g>>2]|0)+256>>2]|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];LI(k,e,m,j,n,t,s,r)}r=c[f>>2]|0;s=c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2]|0;t=(b[(c[g>>2]|0)+260>>1]<<12&65535)<<16>>16>>15<<16>>16;n=c[(c[g>>2]|0)+216>>2]|0;j=c[(c[g>>2]|0)+232>>2]|0;m=c[(c[g>>2]|0)+248>>2]|0;e=c[(c[g>>2]|0)+212>>2]|0;if(((kO(hO(c[h>>2]|0,c[13870]|0,174911)|0)|0)&255|0)!=0?(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)u=c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0;else u=0;MI(r,s,11,t,n,j,m,e,u);u=c[f>>2]|0;e=c[(c[(c[h>>2]|0)+8>>2]|0)+108>>2]|0;m=(b[(c[g>>2]|0)+260>>1]<<12&65535)<<16>>16>>15<<16>>16;j=c[(c[g>>2]|0)+216>>2]|0;n=c[(c[g>>2]|0)+232>>2]|0;t=c[(c[g>>2]|0)+248>>2]|0;s=c[(c[g>>2]|0)+212>>2]|0;if(((kO(hO(c[h>>2]|0,c[13870]|0,174911)|0)|0)&255|0)!=0?(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)v=c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0;else v=0;MI(u,e,11,m,j,n,t,s,v);MI(c[f>>2]|0,c[(c[(c[h>>2]|0)+8>>2]|0)+100>>2]|0,7,(b[(c[g>>2]|0)+260>>1]<<13&65535)<<16>>16>>15<<16>>16,c[(c[g>>2]|0)+224>>2]|0,c[(c[g>>2]|0)+240>>2]|0,c[(c[g>>2]|0)+256>>2]|0,c[(c[g>>2]|0)+212>>2]|0,0);MI(c[f>>2]|0,c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]|0,6,(b[(c[g>>2]|0)+260>>1]<<14&65535)<<16>>16>>15<<16>>16,c[(c[g>>2]|0)+220>>2]|0,c[(c[g>>2]|0)+236>>2]|0,c[(c[g>>2]|0)+252>>2]|0,c[(c[g>>2]|0)+212>>2]|0,0);iR(c[f>>2]|0);xH(c[f>>2]|0);i=d;return}function LI(e,f,g,h,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=i;i=i+64|0;o=n;p=n+44|0;q=n+51|0;r=n+40|0;s=n+50|0;t=n+36|0;u=n+49|0;v=n+32|0;w=n+28|0;x=n+24|0;y=n+20|0;z=n+16|0;A=n+48|0;c[p>>2]=e;a[q>>0]=g;c[r>>2]=h;a[s>>0]=j;c[t>>2]=k;a[u>>0]=l;c[v>>2]=m;c[w>>2]=c[(c[p>>2]|0)+16>>2];if(a[q>>0]|0)c[x>>2]=c[r>>2];else c[x>>2]=c[(c[w>>2]|0)+208>>2];do if(!(a[s>>0]|0))if((b[(c[w>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16){c[y>>2]=c[(c[w>>2]|0)+228>>2];a[A>>0]=1;break}else{a[A>>0]=0;c[y>>2]=c[t>>2];break}else{c[y>>2]=c[t>>2];a[A>>0]=1}while(0);do if(!(a[u>>0]|0))if((b[(c[w>>2]|0)+260>>1]<<9&65535)<<16>>16>>15<<16>>16){c[z>>2]=c[(c[w>>2]|0)+244>>2];break}else{c[z>>2]=c[v>>2];break}else c[z>>2]=c[v>>2];while(0);if((c[x>>2]|0)==0?(d[A>>0]|0)==0:0){i=n;return}A=c[p>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];QI(A,o);i=n;return}function MI(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+64|0;n=m;o=m+56|0;p=m+52|0;q=m+48|0;r=m+44|0;s=m+40|0;t=m+36|0;u=m+32|0;v=m+28|0;w=m+24|0;x=m+20|0;y=m+16|0;z=m+12|0;A=m+8|0;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=c[(c[o>>2]|0)+152>>2];if(!(c[p>>2]|0)){i=m;return}if(!(a[(c[p>>2]|0)+81>>0]|0)){i=m;return}if(c[v>>2]|0){c[z>>2]=bK((N3(c[v>>2]|0)|0)+11|0)|0;switch(c[q>>2]|0){case 11:{c[A>>2]=147656;break}case 7:{c[A>>2]=139375;break}case 6:{c[A>>2]=139385;break}default:La(176099,137578,2645,138560)}l=c[z>>2]|0;k=c[A>>2]|0;c[n>>2]=c[v>>2];c[n+4>>2]=k;k3(l,138576,n)|0}else c[z>>2]=0;c[y>>2]=c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2];c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]=c[q>>2];if((c[s>>2]|0)!=0|(c[r>>2]|0)!=0?(c[x>>2]&4|0)==0:0){NI(c[o>>2]|0,c[p>>2]|0);jR(c[o>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[z>>2]|0)}VJ(c[o>>2]|0,c[q>>2]|0,c[p>>2]|0);if(c[w>>2]|0)OI(c[o>>2]|0,c[p>>2]|0,c[w>>2]|0);if((c[s>>2]|0)!=0|(c[r>>2]|0)!=0){if(c[x>>2]&4){NI(c[o>>2]|0,c[p>>2]|0);jR(c[o>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[z>>2]|0)}kR(c[o>>2]|0)}if(c[z>>2]|0)O4(c[z>>2]|0);c[(c[(c[o>>2]|0)+16>>2]|0)+12>>2]=c[y>>2];i=m;return}function NI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+16>>2];c[j>>2]=c[(c[e>>2]|0)+152>>2];if(!(c[j>>2]&4259840)){i=d;return}b=(c[g>>2]|0)+264|0;if(c[j>>2]&131072){c[b>>2]=0;c[(c[g>>2]|0)+268>>2]=2}else{c[b>>2]=2;c[(c[g>>2]|0)+268>>2]=4}O4(c[(c[g>>2]|0)+272>>2]|0);b=bK(c[(c[g>>2]|0)+268>>2]<<4)|0;c[k>>2]=b;c[(c[g>>2]|0)+272>>2]=b;h[c[k>>2]>>3]=+h[(c[f>>2]|0)+56>>3]-+h[(c[f>>2]|0)+24>>3]/2.0;h[(c[k>>2]|0)+8>>3]=+h[(c[f>>2]|0)+56+8>>3]-+h[(c[f>>2]|0)+24+8>>3]/2.0;h[(c[k>>2]|0)+16>>3]=+h[(c[f>>2]|0)+56>>3]+ +h[(c[f>>2]|0)+24>>3]/2.0;h[(c[k>>2]|0)+16+8>>3]=+h[(c[f>>2]|0)+56+8>>3]+ +h[(c[f>>2]|0)+24+8>>3]/2.0;if(!(c[j>>2]&8192))UQ(c[e>>2]|0,c[k>>2]|0,c[k>>2]|0,2)|0;if(c[j>>2]&131072){i=d;return}DJ(c[k>>2]|0);i=d;return}function OI(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+144|0;j=g+112|0;k=g+140|0;l=g+136|0;m=g+132|0;n=g+96|0;o=g+48|0;p=g+128|0;q=g+32|0;r=g+16|0;s=g;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[p>>2]=c[c[l>>2]>>2];while(1){if(!(a[c[p>>2]>>0]|0))break;if(!(r1(d[c[p>>2]>>0]|0)|0))break;c[p>>2]=(c[p>>2]|0)+1}if(!(d[c[p>>2]>>0]|0)){i=g;return}p=(c[l>>2]|0)+24|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];PI(q,+h[(c[l>>2]|0)+56>>3]+ +h[n>>3]/2.0,+h[(c[l>>2]|0)+56+8>>3]-+h[n+8>>3]/2.0);c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];q=o+16|0;PI(r,+h[o>>3]-+h[n>>3],+h[o+8>>3]);c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];r=o+32|0;q=c[m>>2]|0;m=(c[l>>2]|0)+56|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];vO(s,q,j);c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];rR(c[k>>2]|0,c[(c[c[k>>2]>>2]|0)+336>>2]|0);oR(c[k>>2]|0,c[(c[l>>2]|0)+8>>2]|0);wR(c[k>>2]|0,o,3);i=g;return}function PI(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+16>>2];c[g>>2]=c[(c[e>>2]|0)+152>>2];if(!(c[g>>2]&4259840)){i=d;return}a=(c[f>>2]|0)+264|0;if(c[g>>2]&131072){c[a>>2]=0;c[(c[f>>2]|0)+268>>2]=2}else{c[a>>2]=2;c[(c[f>>2]|0)+268>>2]=4}O4(c[(c[f>>2]|0)+272>>2]|0);a=bK(c[(c[f>>2]|0)+268>>2]<<4)|0;c[j>>2]=a;c[(c[f>>2]|0)+272>>2]=a;h[c[j>>2]>>3]=+h[b>>3]-3.0;h[(c[j>>2]|0)+8>>3]=+h[b+8>>3]-3.0;h[(c[j>>2]|0)+16>>3]=+h[b>>3]+3.0;h[(c[j>>2]|0)+16+8>>3]=+h[b+8>>3]+3.0;if(!(c[g>>2]&8192))UQ(c[e>>2]|0,c[j>>2]|0,c[j>>2]|0,2)|0;if(c[g>>2]&131072){i=d;return}DJ(c[j>>2]|0);i=d;return}function RI(a,b,d,e,f,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=+j;k=+k;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;l=i;i=i+320|0;m=l+248|0;n=l+232|0;o=l+216|0;p=l+312|0;q=l+308|0;r=l+304|0;s=l+300|0;t=l+296|0;u=l+292|0;v=l+208|0;w=l+200|0;x=l+152|0;y=l+104|0;z=l+56|0;A=l+8|0;B=l+288|0;C=l+284|0;D=l+280|0;E=l+276|0;F=l+272|0;G=l;H=l+268|0;I=l+264|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;c[t>>2]=e;c[u>>2]=f;h[v>>3]=j;h[w>>3]=k;c[C>>2]=NH(c[t>>2]|0,c[u>>2]|0,D)|0;if((c[C>>2]|0)>1){u=c[r>>2]|0;c[I>>2]=qC(c[((c[c[r>>2]>>2]&3|0)==3?u:u+32|0)+28>>2]|0)|0;u=c[r>>2]|0;t=wB(c[((c[c[r>>2]>>2]&3|0)==3?u:u+32|0)+28>>2]|0)|0;u=(nB(c[I>>2]|0)|0)!=0;I=c[r>>2]|0;f=wB(c[((c[c[r>>2]>>2]&3|0)==2?I:I+-32|0)+28>>2]|0)|0;c[o>>2]=t;c[o+4>>2]=u?138595:138600;c[o+8>>2]=f;$z(3,138605,o)|0;if((c[C>>2]|0)==2){c[p>>2]=1;J=c[p>>2]|0;i=l;return J|0}}else if((c[C>>2]|0)==1){c[p>>2]=1;J=c[p>>2]|0;i=l;return J|0}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[(c[(c[(c[r>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;h[G>>3]=1.0;C=x;o=(c[c[(c[(c[r>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[B>>2]|0)*48|0)|0;f=C+48|0;do{c[C>>2]=c[o>>2];C=C+4|0;o=o+4|0}while((C|0)<(f|0));c[H>>2]=1;c[E>>2]=c[(c[D>>2]|0)+8>>2];a:while(1){if(!(c[c[E>>2]>>2]|0))break;if(!(+g[(c[E>>2]|0)+4>>2]<1.0e-05?+g[(c[E>>2]|0)+4>>2]>-1.0e-05:0))K=12;do if((K|0)==12){K=0;oR(c[q>>2]|0,c[c[E>>2]>>2]|0);h[G>>3]=+h[G>>3]-+g[(c[E>>2]|0)+4>>2];c[F>>2]=c[c[E>>2]>>2];if(c[H>>2]|0){c[H>>2]=0;$I(x,+g[(c[E>>2]|0)+4>>2],z,A);vR(c[q>>2]|0,c[z>>2]|0,c[z+4>>2]|0,0,0,0);O4(c[z>>2]|0);if(+h[G>>3]<1.0e-05&+h[G>>3]>-1.0e-05){K=14;break a}else break}if(+h[G>>3]<1.0e-05&+h[G>>3]>-1.0e-05){K=16;break a}C=y;o=A;f=C+48|0;do{c[C>>2]=c[o>>2];C=C+4|0;o=o+4|0}while((C|0)<(f|0));$I(y,+g[(c[E>>2]|0)+4>>2]/(+h[G>>3]+ +g[(c[E>>2]|0)+4>>2]),z,A);O4(c[y>>2]|0);vR(c[q>>2]|0,c[z>>2]|0,c[z+4>>2]|0,0,0,0);O4(c[z>>2]|0)}while(0);c[E>>2]=(c[E>>2]|0)+12}if((K|0)==14){K=0;O4(c[A>>2]|0)}else if((K|0)==16){K=0;vR(c[q>>2]|0,c[A>>2]|0,c[A+4>>2]|0,0,0,0);O4(c[A>>2]|0)}if(c[x+8>>2]|0){oR(c[q>>2]|0,c[c[(c[D>>2]|0)+8>>2]>>2]|0);pR(c[q>>2]|0,c[c[(c[D>>2]|0)+8>>2]>>2]|0);o=c[q>>2]|0;C=x+16|0;f=c[x>>2]|0;k=+h[v>>3];j=+h[w>>3];u=c[x+8>>2]|0;c[n>>2]=c[C>>2];c[n+4>>2]=c[C+4>>2];c[n+8>>2]=c[C+8>>2];c[n+12>>2]=c[C+12>>2];c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];hH(o,2,n,m,k,j,u)}if(c[x+12>>2]|0){oR(c[q>>2]|0,c[F>>2]|0);pR(c[q>>2]|0,c[F>>2]|0);u=c[q>>2]|0;o=x+32|0;f=(c[x>>2]|0)+((c[x+4>>2]|0)-1<<4)|0;j=+h[v>>3];k=+h[w>>3];C=c[x+12>>2]|0;c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];hH(u,3,n,m,j,k,C)}do if((c[(c[(c[(c[r>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(c[x+8>>2]|0){if(!(c[s>>2]|0))break}else if(!((c[x+12>>2]|0)!=0&(c[s>>2]|0)!=0))break;rR(c[q>>2]|0,c[s>>2]|0)}while(0);c[B>>2]=(c[B>>2]|0)+1}O4(c[D>>2]|0);c[p>>2]=0;J=c[p>>2]|0;i=l;return J|0}function SI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[k>>2]=1;c[h>>2]=c[f>>2];while(1){if(!(a[c[h>>2]>>0]|0))break;if((a[c[h>>2]>>0]|0)==58)c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}h=c[k>>2]|0;c[j>>2]=_(h,(N3(c[g>>2]|0)|0)+1|0)|0;if((c[13786]|0)<(c[j>>2]|0)){c[13786]=(c[j>>2]|0)+10;c[13787]=Q4(c[13787]|0,c[13786]|0)|0}K3(c[13787]|0,c[g>>2]|0)|0;while(1){j=(c[k>>2]|0)+-1|0;c[k>>2]=j;l=c[13787]|0;if(!j)break;G3(l,148898)|0;G3(c[13787]|0,c[g>>2]|0)|0}i=e;return l|0}function TI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if((c[13868]|0)!=0?(b=zA(c[f>>2]|0,c[13868]|0)|0,c[g>>2]=b,(a[b>>0]|0)!=0):0){if((a[c[g>>2]>>0]|0)==(a[138582]|0)?(J3(c[g>>2]|0,138582)|0)==0:0){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}if((a[c[g>>2]>>0]|0)==(a[138590]|0)?(J3(c[g>>2]|0,138590)|0)==0:0){c[e>>2]=2;h=c[e>>2]|0;i=d;return h|0}if((a[c[g>>2]>>0]|0)==(a[148783]|0)?(J3(c[g>>2]|0,148783)|0)==0:0){c[e>>2]=3;h=c[e>>2]|0;i=d;return h|0}if((a[c[g>>2]>>0]|0)==(a[173312]|0)?(J3(c[g>>2]|0,173312)|0)==0:0){c[e>>2]=4;h=c[e>>2]|0;i=d;return h|0}}g=c[f>>2]|0;b=(nB(qC(c[((c[c[f>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)|0)|0)!=0;c[e>>2]=b?1:4;h=c[e>>2]|0;i=d;return h|0}function UI(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function VI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+32|0;j=f+16|0;k=f+8|0;l=f;h[g>>3]=e;h[k>>3]=+h[b>>3]-+h[d>>3];h[l>>3]=+h[b+8>>3]-+h[d+8>>3];e=+O(+(+h[k>>3]*+h[k>>3]+ +h[l>>3]*+h[l>>3]+.0001));h[g>>3]=+h[g>>3]/e;h[j>>3]=+h[l>>3]*+h[g>>3];h[j+8>>3]=-+h[k>>3]*+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=f;return}function WI(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;k=j+40|0;l=j+24|0;m=j+16|0;n=j+8|0;o=j;h[k>>3]=g;h[n>>3]=+h[d>>3]-+h[e>>3];h[o>>3]=+h[d+8>>3]-+h[e+8>>3];h[m>>3]=+O(+(+h[n>>3]*+h[n>>3]+ +h[o>>3]*+h[o>>3]));if(+h[m>>3]<.0001){h[n>>3]=+h[b>>3]-+h[f>>3];h[o>>3]=+h[b+8>>3]-+h[f+8>>3];h[m>>3]=+O(+(+h[n>>3]*+h[n>>3]+ +h[o>>3]*+h[o>>3]+.0001))}h[k>>3]=+h[k>>3]/+h[m>>3];h[l>>3]=+h[o>>3]*+h[k>>3];h[l+8>>3]=-+h[n>>3]*+h[k>>3];c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];i=j;return}function XI(a,b,c){a=+a;b=+b;c=+c;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d;h[e>>3]=a;h[f>>3]=b;h[g>>3]=c;i=d;return +((1.0-+h[e>>3]/+h[f>>3])*+h[g>>3]/2.0)}function YI(a,b,c){a=+a;b=+b;c=+c;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d;h[e>>3]=a;h[f>>3]=b;h[g>>3]=c;i=d;return +(+h[e>>3]/+h[f>>3]*+h[g>>3]/2.0)}function ZI(a,b,c){a=+a;b=+b;c=+c;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+48|0;e=d+32|0;f=d+24|0;g=d+16|0;j=d+8|0;k=d;h[f>>3]=a;h[g>>3]=b;h[j>>3]=c;h[k>>3]=+h[f>>3]/+h[g>>3];c=+h[k>>3];if(+h[k>>3]<=.5){h[e>>3]=c*+h[j>>3];l=+h[e>>3];i=d;return +l}else{h[e>>3]=(1.0-c)*+h[j>>3];l=+h[e>>3];i=d;return +l}return +(0.0)}function _I(a,b,c){a=+a;b=+b;c=+c;var d=0,e=0;d=i;i=i+32|0;e=d;h[d+16>>3]=a;h[d+8>>3]=b;h[e>>3]=c;i=d;return +(+h[e>>3]/2.0)}function $I(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+112|0;j=f+96|0;k=f+92|0;l=f+88|0;m=f+84|0;n=f+80|0;o=f+76|0;p=f+72|0;q=f+68|0;r=f+64|0;s=f+48|0;t=f+40|0;u=f+32|0;v=f+60|0;w=f+56|0;x=f;c[j>>2]=a;g[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[q>>2]=((c[(c[j>>2]|0)+4>>2]|0)-1|0)/3|0;if((c[q>>2]|0)==1){c[(c[l>>2]|0)+4>>2]=4;e=bK(64)|0;c[c[l>>2]>>2]=e;c[(c[m>>2]|0)+4>>2]=4;e=bK(64)|0;c[c[m>>2]>>2]=e;qO(f+16|0,c[c[j>>2]>>2]|0,3,+g[k>>2],c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0);i=f;return}c[r>>2]=bK(c[q>>2]<<3)|0;h[u>>3]=0.0;c[v>>2]=c[c[j>>2]>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[q>>2]|0))break;b=+aJ(c[v>>2]|0);h[(c[r>>2]|0)+(c[n>>2]<<3)>>3]=b;h[u>>3]=+h[u>>3]+ +h[(c[r>>2]|0)+(c[n>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+48;c[n>>2]=(c[n>>2]|0)+1}h[t>>3]=+g[k>>2]*+h[u>>3];h[u>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[q>>2]|0))break;h[u>>3]=+h[u>>3]+ +h[(c[r>>2]|0)+(c[n>>2]<<3)>>3];if(+h[u>>3]>=+h[t>>3])break;c[n>>2]=(c[n>>2]|0)+1}c[(c[l>>2]|0)+4>>2]=(((c[n>>2]|0)+1|0)*3|0)+1;k=bK(c[(c[l>>2]|0)+4>>2]<<4)|0;c[c[l>>2]>>2]=k;c[(c[m>>2]|0)+4>>2]=(((c[q>>2]|0)-(c[n>>2]|0)|0)*3|0)+1;q=bK(c[(c[m>>2]|0)+4>>2]<<4)|0;c[c[m>>2]>>2]=q;c[o>>2]=0;while(1){y=c[o>>2]|0;if((c[o>>2]|0)>=(c[(c[l>>2]|0)+4>>2]|0))break;q=(c[c[l>>2]>>2]|0)+(y<<4)|0;k=(c[c[j>>2]>>2]|0)+(c[o>>2]<<4)|0;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=y-4;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0))break;y=(c[c[m>>2]>>2]|0)+(c[o>>2]<<4)|0;k=c[p>>2]|0;c[p>>2]=k+1;q=(c[c[j>>2]>>2]|0)+(k<<4)|0;c[y>>2]=c[q>>2];c[y+4>>2]=c[q+4>>2];c[y+8>>2]=c[q+8>>2];c[y+12>>2]=c[q+12>>2];c[o>>2]=(c[o>>2]|0)+1}h[s>>3]=+h[(c[r>>2]|0)+(c[n>>2]<<3)>>3];g[w>>2]=(+h[t>>3]-(+h[u>>3]-+h[s>>3]))/+h[s>>3];qO(x,(c[c[j>>2]>>2]|0)+((c[n>>2]|0)*3<<4)|0,3,+g[w>>2],(c[c[l>>2]>>2]|0)+((c[n>>2]|0)*3<<4)|0,c[c[m>>2]>>2]|0);O4(c[r>>2]|0);i=f;return}function aJ(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=i;i=i+16|0;d=b+8|0;e=b;c[d>>2]=a;h[e>>3]=+O(+((+h[c[d>>2]>>3]-+h[(c[d>>2]|0)+16>>3])*(+h[c[d>>2]>>3]-+h[(c[d>>2]|0)+16>>3])+(+h[(c[d>>2]|0)+8>>3]-+h[(c[d>>2]|0)+16+8>>3])*(+h[(c[d>>2]|0)+8>>3]-+h[(c[d>>2]|0)+16+8>>3])));f=+O(+((+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+32>>3])*(+h[(c[d>>2]|0)+16>>3]-+h[(c[d>>2]|0)+32>>3])+(+h[(c[d>>2]|0)+16+8>>3]-+h[(c[d>>2]|0)+32+8>>3])*(+h[(c[d>>2]|0)+16+8>>3]-+h[(c[d>>2]|0)+32+8>>3])));h[e>>3]=+h[e>>3]+f;f=+O(+((+h[(c[d>>2]|0)+32>>3]-+h[(c[d>>2]|0)+48>>3])*(+h[(c[d>>2]|0)+32>>3]-+h[(c[d>>2]|0)+48>>3])+(+h[(c[d>>2]|0)+32+8>>3]-+h[(c[d>>2]|0)+48+8>>3])*(+h[(c[d>>2]|0)+32+8>>3]-+h[(c[d>>2]|0)+48+8>>3])));h[e>>3]=+h[e>>3]+f;i=b;return +(+h[e>>3])}function bJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+1728|0;j=g+1716|0;k=g+1712|0;l=g+1708|0;m=g+1704|0;n=g+1664|0;o=g+1700|0;p=g+1696|0;q=g+1692|0;r=g+1688|0;s=g+1684|0;t=g+1680|0;u=g+1676|0;v=g+1672|0;w=g+1600|0;x=g+800|0;y=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;h[n>>3]=f;c[o>>2]=cK(24)|0;c[p>>2]=c[o>>2];c[(c[o>>2]|0)+16>>2]=1;c[s>>2]=((c[(c[m>>2]|0)+4>>2]|0)-1|0)/3|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;c[u>>2]=0;while(1){if((c[u>>2]|0)>=4)break;e=w+(c[u>>2]<<4)|0;d=(c[c[m>>2]>>2]|0)+(((c[t>>2]|0)*3|0)+(c[u>>2]|0)<<4)|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[u>>2]=(c[u>>2]|0)+1}c[p>>2]=cJ(w,c[p>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+1}c[p>>2]=c[o>>2];c[q>>2]=0;c[v>>2]=0;while(1){if(!(c[p>>2]|0))break;c[r>>2]=c[(c[p>>2]|0)+16>>2];dJ(c[q>>2]|0,c[p>>2]|0,c[r>>2]|0,x+(c[v>>2]<<4)|0,y+(c[v>>2]<<4)|0,+h[n>>3]);c[v>>2]=(c[v>>2]|0)+1;if((c[r>>2]|0)==0|(c[v>>2]|0)==50){eJ(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[v>>2]|0,x,y);t=x+((c[v>>2]|0)-1<<4)|0;c[x>>2]=c[t>>2];c[x+4>>2]=c[t+4>>2];c[x+8>>2]=c[t+8>>2];c[x+12>>2]=c[t+12>>2];t=y+((c[v>>2]|0)-1<<4)|0;c[y>>2]=c[t>>2];c[y+4>>2]=c[t+4>>2];c[y+8>>2]=c[t+8>>2];c[y+12>>2]=c[t+12>>2];c[v>>2]=1}c[q>>2]=c[p>>2];c[p>>2]=c[r>>2]}while(1){if(!(c[o>>2]|0))break;c[p>>2]=c[(c[o>>2]|0)+16>>2];O4(c[o>>2]|0);c[o>>2]=c[p>>2]}i=g;return}function cJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+176|0;e=d+144|0;f=d+164|0;g=d+160|0;h=d+80|0;j=d+16|0;c[f>>2]=a;c[g>>2]=b;if(!(PH(c[f>>2]|0)|0)){qO(d,c[f>>2]|0,3,.5,h,j);c[g>>2]=cJ(h,c[g>>2]|0)|0;c[g>>2]=cJ(j,c[g>>2]|0)|0;k=c[g>>2]|0;i=d;return k|0}if((c[(c[g>>2]|0)+16>>2]|0)==1){c[(c[g>>2]|0)+16>>2]=0;j=c[g>>2]|0;h=c[f>>2]|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2]}h=(c[f>>2]|0)+48|0;f=c[g>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];c[g>>2]=gJ(e,f)|0;k=c[g>>2]|0;i=d;return k|0}function dJ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;j=i;i=i+176|0;k=j+128|0;l=j+112|0;m=j+96|0;n=j+160|0;o=j+156|0;p=j+152|0;q=j+148|0;r=j+144|0;s=j+88|0;t=j+72|0;u=j+56|0;v=j+40|0;w=j+32|0;x=j+24|0;y=j+16|0;z=j;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;h[s>>3]=g;f=c[o>>2]|0;c[t>>2]=c[f>>2];c[t+4>>2]=c[f+4>>2];c[t+8>>2]=c[f+8>>2];c[t+12>>2]=c[f+12>>2];do if(c[n>>2]|0){f=c[n>>2]|0;c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];if(c[p>>2]|0){f=c[p>>2]|0;c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];break}else{h[v>>3]=+h[t>>3]*2.0-+h[u>>3];h[v+8>>3]=+h[t+8>>3]*2.0-+h[u+8>>3];break}}else{f=c[p>>2]|0;c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];h[u>>3]=+h[t>>3]*2.0-+h[v>>3];h[u+8>>3]=+h[t+8>>3]*2.0-+h[v+8>>3]}while(0);c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[l>>2]=c[t>>2];c[l+4>>2]=c[t+4>>2];c[l+8>>2]=c[t+8>>2];c[l+12>>2]=c[t+12>>2];c[k>>2]=c[v>>2];c[k+4>>2]=c[v+4>>2];c[k+8>>2]=c[v+8>>2];c[k+12>>2]=c[v+12>>2];h[w>>3]=+fJ(m,l,k);h[x>>3]=+h[s>>3]*+Q(+(+h[w>>3]));h[y>>3]=+h[s>>3]*+R(+(+h[w>>3]));h[z>>3]=+h[t>>3]+ +h[x>>3];h[z+8>>3]=+h[t+8>>3]+ +h[y>>3];w=c[q>>2]|0;c[w>>2]=c[z>>2];c[w+4>>2]=c[z+4>>2];c[w+8>>2]=c[z+8>>2];c[w+12>>2]=c[z+12>>2];h[z>>3]=+h[t>>3]-+h[x>>3];h[z+8>>3]=+h[t+8>>3]-+h[y>>3];y=c[r>>2]|0;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];i=j;return}function eJ(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;j=h+32|0;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=0;c[q>>2]=0;c[r>>2]=(c[m>>2]<<1)-1;while(1){if((c[p>>2]|0)>=(c[c[l>>2]>>2]|0))break;c[q>>2]=(c[q>>2]|0)+(c[(c[c[k>>2]>>2]|0)+(c[p>>2]<<2)>>2]|0);c[p>>2]=(c[p>>2]|0)+1}g=c[l>>2]|0;c[g>>2]=(c[g>>2]|0)+1;g=eK(c[c[k>>2]>>2]|0,c[c[l>>2]>>2]<<2)|0;c[c[k>>2]>>2]=g;c[(c[c[k>>2]>>2]|0)+(c[p>>2]<<2)>>2]=c[m>>2]<<1;k=eK(c[c[j>>2]>>2]|0,(c[q>>2]|0)+(c[m>>2]<<1)<<4)|0;c[c[j>>2]>>2]=k;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[m>>2]|0))break;k=(c[c[j>>2]>>2]|0)+((c[q>>2]|0)+(c[p>>2]|0)<<4)|0;g=(c[n>>2]|0)+(c[p>>2]<<4)|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];g=(c[c[j>>2]>>2]|0)+((c[q>>2]|0)+(c[r>>2]|0)-(c[p>>2]|0)<<4)|0;k=(c[o>>2]|0)+(c[p>>2]<<4)|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[p>>2]=(c[p>>2]|0)+1}i=h;return}function fJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,j=0.0,k=0.0,l=0.0,m=0.0;d=i;i=i+32|0;e=d+16|0;f=d+8|0;g=d;h[f>>3]=+W(+(+h[c+8>>3]-+h[b+8>>3]),+(+h[c>>3]-+h[b>>3]));h[g>>3]=+W(+(+h[a+8>>3]-+h[b+8>>3]),+(+h[a>>3]-+h[b>>3]));h[e>>3]=+h[f>>3]-+h[g>>3];if(!(+h[e>>3]>0.0)){j=+h[g>>3];k=+h[e>>3];l=k/2.0;m=j+l;i=d;return +m}h[e>>3]=+h[e>>3]-6.283185307179586;j=+h[g>>3];k=+h[e>>3];l=k/2.0;m=j+l;i=d;return +m}function gJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=cK(24)|0;c[(c[f>>2]|0)+16>>2]=0;b=c[f>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return c[f>>2]|0}function hJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=yI(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+160>>2]|0,c[(c[e>>2]|0)+156>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function iJ(a,b){a=a|0;b=b|0;var c=0,d=0;if(!(+h[a+16>>3]>=+h[b>>3])){c=0;d=c&1;return d|0}if(!(+h[b+16>>3]>=+h[a>>3])){c=0;d=c&1;return d|0}if(!(+h[a+16+8>>3]>=+h[b+8>>3])){c=0;d=c&1;return d|0}c=+h[b+16+8>>3]>=+h[a+8>>3];d=c&1;return d|0}function jJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[(c[h>>2]|0)+156>>2]|0)<=1){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}c[l>>2]=hO(c[k>>2]|0,c[13844]|0,178518)|0;if((hJ(c[h>>2]|0,c[l>>2]|0)|0)<<24>>24){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}if(a[c[l>>2]>>0]|0){a[g>>0]=0;o=a[g>>0]|0;i=f;return o|0}l=TA(c[j>>2]|0,c[k>>2]|0)|0;c[n>>2]=l;if(!l){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}c[n>>2]=TA(c[j>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[n>>2]|0)){p=15;break}c[m>>2]=hO(c[n>>2]|0,c[13874]|0,178518)|0;if(!(a[c[m>>2]>>0]|0)){p=13;break}if((hJ(c[h>>2]|0,c[m>>2]|0)|0)&255){p=13;break}c[n>>2]=UA(c[j>>2]|0,c[n>>2]|0,c[k>>2]|0)|0}if((p|0)==13){a[g>>0]=1;o=a[g>>0]|0;i=f;return o|0}else if((p|0)==15){a[g>>0]=0;o=a[g>>0]|0;i=f;return o|0}return 0}function kJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+80|0;e=d+32|0;f=d;g=d+64|0;c[g>>2]=a;a=(c[(c[g>>2]|0)+8>>2]|0)+48|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];c[f+20>>2]=c[a+20>>2];c[f+24>>2]=c[a+24>>2];c[f+28>>2]=c[a+28>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];b=(iJ(f,e)|0)&255;i=d;return b|0}function lJ(a,d){a=a|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0,E=0,F=0,G=0;f=i;i=i+96|0;g=f+84|0;j=f+80|0;k=f+76|0;l=f+72|0;m=f+68|0;n=f+64|0;o=f+60|0;p=f+56|0;q=f+52|0;r=f+48|0;s=f+44|0;t=f+40|0;u=f+36|0;v=f+32|0;w=f+28|0;x=f;y=f+24|0;z=f+20|0;A=f+16|0;c[g>>2]=a;c[j>>2]=d;c[l>>2]=c[(c[g>>2]|0)+152>>2];c[q>>2]=0;c[r>>2]=0;c[t>>2]=0;c[u>>2]=0;c[w>>2]=0;c[k>>2]=wH(c[g>>2]|0)|0;c[(c[k>>2]|0)+4>>2]=2;c[(c[k>>2]|0)+8>>2]=c[j>>2];c[(c[k>>2]|0)+12>>2]=8;do if(c[l>>2]&16777216)if((e[(c[(qC(c[j>>2]|0)|0)+8>>2]|0)+178>>1]|0|0)>=3){B=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0;h[(c[k>>2]|0)+168>>3]=+(~~(+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0>=0.0?B+.5:B-.5)|0);break}else{h[(c[k>>2]|0)+168>>3]=0.0;break}while(0);nJ(c[g>>2]|0,c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]|0,c[j>>2]|0);if(!(c[l>>2]&4259840)){C=c[j>>2]|0;D=yA(C,137612)|0;dT(D);E=c[g>>2]|0;F=c[j>>2]|0;fR(E,F);i=f;return}if((c[(c[k>>2]|0)+208>>2]|0)==0?((b[(c[k>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0){C=c[j>>2]|0;D=yA(C,137612)|0;dT(D);E=c[g>>2]|0;F=c[j>>2]|0;fR(E,F);i=f;return}c[s>>2]=dM(c[j>>2]|0)|0;d=(c[(c[j>>2]|0)+8>>2]|0)+16|0;c[x>>2]=c[d>>2];c[x+4>>2]=c[d+4>>2];c[x+8>>2]=c[d+8>>2];c[x+12>>2]=c[d+12>>2];c[q>>2]=oJ(c[j>>2]|0)|0;if(((c[s>>2]|0)==1|(c[s>>2]|0)==3?(c[u>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2],((pJ(c[u>>2]|0)|0)&255|0)!=0):0)?((c[q>>2]|0)!=0?1:(c[(c[u>>2]|0)+4>>2]|0)!=0):0)c[r>>2]=1;a:do if(!((c[u>>2]|0)==0|(c[r>>2]|0)!=0)?(c[l>>2]&524288|0)!=0:0){if((c[(c[u>>2]|0)+8>>2]|0)<3)c[m>>2]=1;else c[m>>2]=c[(c[u>>2]|0)+8>>2];if((c[(c[u>>2]|0)+4>>2]|0)<2)c[n>>2]=1;else c[n>>2]=c[(c[u>>2]|0)+4>>2];c[v>>2]=c[(c[u>>2]|0)+44>>2];s=yA(c[j>>2]|0,140333)|0;c[y>>2]=s;if(s)c[t>>2]=u3(c[y>>2]|0)|0;if((c[t>>2]|0)<4|(c[t>>2]|0)>60)c[t>>2]=20;if(!((c[q>>2]|0)!=0?1:(c[(c[u>>2]|0)+4>>2]|0)!=0)){c[(c[k>>2]|0)+264>>2]=0;c[t>>2]=2;c[w>>2]=bK(c[t>>2]<<4)|0;h[c[w>>2]>>3]=+h[x>>3]-+h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3];h[(c[w>>2]|0)+8>>3]=+h[x+8>>3]-+h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0;h[(c[w>>2]|0)+16>>3]=+h[x>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3];h[(c[w>>2]|0)+16+8>>3]=+h[x+8>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0;break}if(((c[(c[u>>2]|0)+8>>2]|0)<3?+h[(c[u>>2]|0)+32>>3]==0.0:0)?+h[(c[u>>2]|0)+24>>3]==0.0:0){s=(c[k>>2]|0)+264|0;if(c[c[u>>2]>>2]|0){c[s>>2]=1;c[t>>2]=2;c[w>>2]=bK(c[t>>2]<<4)|0;h[c[w>>2]>>3]=+h[x>>3];h[(c[w>>2]|0)+8>>3]=+h[x+8>>3];h[(c[w>>2]|0)+16>>3]=+h[x>>3]+ +h[(c[v>>2]|0)+((c[n>>2]<<1)-1<<4)>>3];h[(c[w>>2]|0)+16+8>>3]=+h[x+8>>3]+ +h[(c[v>>2]|0)+((c[n>>2]<<1)-1<<4)+8>>3];break}c[s>>2]=2;c[w>>2]=qJ(+h[(c[v>>2]|0)+((c[n>>2]<<1)-1<<4)>>3],+h[(c[v>>2]|0)+((c[n>>2]<<1)-1<<4)+8>>3],c[t>>2]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break a;s=(c[w>>2]|0)+(c[o>>2]<<4)|0;h[s>>3]=+h[s>>3]+ +h[x>>3];s=(c[w>>2]|0)+(c[o>>2]<<4)+8|0;h[s>>3]=+h[s>>3]+ +h[x+8>>3];c[o>>2]=(c[o>>2]|0)+1}}c[z>>2]=_((c[n>>2]|0)-1|0,c[(c[u>>2]|0)+8>>2]|0)|0;c[(c[k>>2]|0)+264>>2]=2;if((c[(c[u>>2]|0)+8>>2]|0)>=(c[t>>2]|0)){c[A>>2]=(c[(c[u>>2]|0)+8>>2]|0)/(c[t>>2]|0)|0;c[w>>2]=bK(c[t>>2]<<4)|0;c[o>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break a;h[(c[w>>2]|0)+(c[p>>2]<<4)>>3]=+h[x>>3]+ +h[(c[v>>2]|0)+((c[o>>2]|0)+(c[z>>2]|0)<<4)>>3];h[(c[w>>2]|0)+(c[p>>2]<<4)+8>>3]=+h[x+8>>3]+ +h[(c[v>>2]|0)+((c[o>>2]|0)+(c[z>>2]|0)<<4)+8>>3];c[o>>2]=(c[o>>2]|0)+(c[A>>2]|0);c[p>>2]=(c[p>>2]|0)+1}}else{c[t>>2]=c[m>>2];c[w>>2]=bK(c[t>>2]<<4)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break a;h[(c[w>>2]|0)+(c[o>>2]<<4)>>3]=+h[x>>3]+ +h[(c[v>>2]|0)+((c[o>>2]|0)+(c[z>>2]|0)<<4)>>3];h[(c[w>>2]|0)+(c[o>>2]<<4)+8>>3]=+h[x+8>>3]+ +h[(c[v>>2]|0)+((c[o>>2]|0)+(c[z>>2]|0)<<4)+8>>3];c[o>>2]=(c[o>>2]|0)+1}}}else G=41;while(0);if((G|0)==41){c[(c[k>>2]|0)+264>>2]=0;c[t>>2]=2;c[w>>2]=bK(c[t>>2]<<4)|0;h[c[w>>2]>>3]=+h[x>>3]-+h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3];h[(c[w>>2]|0)+8>>3]=+h[x+8>>3]-+h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0;h[(c[w>>2]|0)+16>>3]=+h[x>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3];h[(c[w>>2]|0)+16+8>>3]=+h[x+8>>3]+ +h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0}if(!(c[l>>2]&8192))UQ(c[g>>2]|0,c[w>>2]|0,c[w>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+272>>2]=c[w>>2];c[(c[k>>2]|0)+268>>2]=c[t>>2];C=c[j>>2]|0;D=yA(C,137612)|0;dT(D);E=c[g>>2]|0;F=c[j>>2]|0;fR(E,F);i=f;return}function mJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;gR(c[d>>2]|0);xH(c[d>>2]|0);i=b;return}function nJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+176|0;g=f+44|0;h=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=yA(c[j>>2]|0,179064)|0;c[m>>2]=yA(c[j>>2]|0,179110)|0;c[n>>2]=yA(c[j>>2]|0,179097)|0;dA(p,128,f+48|0);if(c[h>>2]|0)c[k>>2]=c[c[h>>2]>>2];else c[k>>2]=0;if(!((c[l>>2]|0)!=0?(a[c[l>>2]>>0]|0)!=0:0))c[l>>2]=yA(c[j>>2]|0,149053)|0;c[o>>2]=zH(c[g>>2]|0,c[j>>2]|0,p)|0;yH(c[g>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[j>>2]|0)|0;hA(p);i=f;return}function oJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=b;c[j>>2]=0;c[f>>2]=iO(c[e>>2]|0,c[13834]|0,178518)|0;if(!(a[c[f>>2]>>0]|0)){k=c[j>>2]|0;i=d;return k|0}c[h>>2]=JH(c[f>>2]|0)|0;while(1){f=c[c[h>>2]>>2]|0;c[g>>2]=f;if(!f)break;if(!(J3(c[g>>2]|0,148663)|0))c[j>>2]=1;c[h>>2]=(c[h>>2]|0)+4}k=c[j>>2]|0;i=d;return k|0}function pJ(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(((c[(c[d>>2]|0)+8>>2]|0)==4?(e=+h[(c[d>>2]|0)+16>>3],((~~(+h[(c[d>>2]|0)+16>>3]>=0.0?e+.5:e-.5)|0)%90|0|0)==0):0)?+h[(c[d>>2]|0)+24>>3]==0.0:0)f=+h[(c[d>>2]|0)+32>>3]==0.0;else f=0;i=b;return f&1|0}function qJ(a,b,d){a=+a;b=+b;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;f=e+24|0;g=e+16|0;j=e+40|0;k=e+8|0;l=e;m=e+36|0;n=e+32|0;h[f>>3]=a;h[g>>3]=b;c[j>>2]=d;h[k>>3]=0.0;h[l>>3]=6.283185307179586/+(c[j>>2]|0);c[n>>2]=bK(c[j>>2]<<4)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;b=+h[f>>3]*+Q(+(+h[k>>3]));h[(c[n>>2]|0)+(c[m>>2]<<4)>>3]=b;b=+h[g>>3]*+R(+(+h[k>>3]));h[(c[n>>2]|0)+(c[m>>2]<<4)+8>>3]=b;h[k>>3]=+h[k>>3]+ +h[l>>3];c[m>>2]=(c[m>>2]|0)+1}i=e;return c[n>>2]|0}function rJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function sJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=(c[b>>2]|0)+(c[d>>2]|0);c[f+4>>2]=(c[b+4>>2]|0)+(c[d+4>>2]|0);c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];i=e;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;g=d+24|0;j=d+16|0;k=d+8|0;l=d;c[f>>2]=a;c[d+32>>2]=b;b=(c[f>>2]|0)+196|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];b=(c[f>>2]|0)+164|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];if(c[(c[f>>2]|0)+360>>2]|0){c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];vI(k,e);c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];vI(l,e);c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2]}h[(c[f>>2]|0)+288>>3]=+(c[g>>2]|0)*+h[(c[f>>2]|0)+320>>3]-+h[(c[f>>2]|0)+240>>3];h[(c[f>>2]|0)+288+8>>3]=+(c[g+4>>2]|0)*+h[(c[f>>2]|0)+320+8>>3]-+h[(c[f>>2]|0)+240+8>>3];h[(c[f>>2]|0)+288+16>>3]=+h[(c[f>>2]|0)+288>>3]+ +h[(c[f>>2]|0)+320>>3];h[(c[f>>2]|0)+288+16+8>>3]=+h[(c[f>>2]|0)+288+8>>3]+ +h[(c[f>>2]|0)+320+8>>3];l=(c[f>>2]|0)+472|0;if(!(c[(c[(c[f>>2]|0)+12>>2]|0)+28>>2]|0)){e=(c[f>>2]|0)+456|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2]}else{e=c[f>>2]|0;if((c[l>>2]|0)<(c[(c[f>>2]|0)+456>>2]|0))m=c[e+472>>2]|0;else m=c[e+456>>2]|0;c[(c[f>>2]|0)+472>>2]=m;m=c[f>>2]|0;if((c[(c[f>>2]|0)+472+4>>2]|0)<(c[(c[f>>2]|0)+456+4>>2]|0))n=c[m+472+4>>2]|0;else n=c[m+456+4>>2]|0;c[(c[f>>2]|0)+472+4>>2]=n;n=c[f>>2]|0;if((c[(c[f>>2]|0)+472+8>>2]|0)>(c[(c[f>>2]|0)+456+8>>2]|0))o=c[n+472+8>>2]|0;else o=c[n+456+8>>2]|0;c[(c[f>>2]|0)+472+8>>2]=o;o=c[f>>2]|0;if((c[(c[f>>2]|0)+472+8+4>>2]|0)>(c[(c[f>>2]|0)+456+8+4>>2]|0))p=c[o+472+8+4>>2]|0;else p=c[o+456+8+4>>2]|0;c[(c[f>>2]|0)+472+8+4>>2]=p}q=+h[(c[f>>2]|0)+336>>3];p=c[f>>2]|0;if(c[(c[f>>2]|0)+152>>2]&128){h[(c[f>>2]|0)+256>>3]=q-+h[p+368>>3]/2.0;h[(c[f>>2]|0)+256+8>>3]=+h[(c[f>>2]|0)+336+8>>3]-+h[(c[f>>2]|0)+368+8>>3]/2.0;h[(c[f>>2]|0)+256+16>>3]=+h[(c[f>>2]|0)+336>>3]+ +h[(c[f>>2]|0)+368>>3]/2.0;h[(c[f>>2]|0)+256+16+8>>3]=+h[(c[f>>2]|0)+336+8>>3]+ +h[(c[f>>2]|0)+368+8>>3]/2.0}else{h[(c[f>>2]|0)+256>>3]=q+ +h[p+320>>3]*(+(c[g>>2]|0)-+(c[j>>2]|0)/2.0);h[(c[f>>2]|0)+256+8>>3]=+h[(c[f>>2]|0)+336+8>>3]+ +h[(c[f>>2]|0)+320+8>>3]*(+(c[g+4>>2]|0)-+(c[j+4>>2]|0)/2.0);h[(c[f>>2]|0)+256+16>>3]=+h[(c[f>>2]|0)+256>>3]+ +h[(c[f>>2]|0)+320>>3];h[(c[f>>2]|0)+256+16+8>>3]=+h[(c[f>>2]|0)+256+8>>3]+ +h[(c[f>>2]|0)+320+8>>3]}j=(c[f>>2]|0)+256|0;if(c[(c[f>>2]|0)+360>>2]|0){h[(c[f>>2]|0)+504+8>>3]=-+h[j+16+8>>3]-+h[(c[f>>2]|0)+384+8>>3]/+h[(c[f>>2]|0)+352>>3];g=(c[f>>2]|0)+256|0;if((c[13802]|0)!=0?1:(c[(c[f>>2]|0)+152>>2]&4096|0)!=0){h[(c[f>>2]|0)+504>>3]=-+h[g+16>>3]-+h[(c[f>>2]|0)+384>>3]/+h[(c[f>>2]|0)+352>>3];i=d;return}else{h[(c[f>>2]|0)+504>>3]=-+h[g>>3]+ +h[(c[f>>2]|0)+384>>3]/+h[(c[f>>2]|0)+352>>3];i=d;return}}else{h[(c[f>>2]|0)+504>>3]=-+h[j>>3]+ +h[(c[f>>2]|0)+384>>3]/+h[(c[f>>2]|0)+352>>3];j=(c[f>>2]|0)+256|0;if((c[13802]|0)!=0?1:(c[(c[f>>2]|0)+152>>2]&4096|0)!=0){h[(c[f>>2]|0)+504+8>>3]=-+h[j+16+8>>3]-+h[(c[f>>2]|0)+384+8>>3]/+h[(c[f>>2]|0)+352>>3];i=d;return}else{h[(c[f>>2]|0)+504+8>>3]=-+h[j+8>>3]+ +h[(c[f>>2]|0)+384+8>>3]/+h[(c[f>>2]|0)+352>>3];i=d;return}}}function uJ(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+80|0;f=e;h=e+72|0;j=e+68|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+48|0;o=e+40|0;p=e+36|0;q=e+32|0;c[h>>2]=b;c[j>>2]=d;d=yA(c[j>>2]|0,178986)|0;c[l>>2]=d;if((d|0)!=0?(a[c[l>>2]>>0]|0)!=0:0)c[m>>2]=0;else{c[l>>2]=174801;c[m>>2]=1}if(((c[(c[h>>2]|0)+152>>2]&256|0)==0?(a[c[l>>2]>>0]|0)==(a[175430]|0):0)?(J3(c[l>>2]|0,175430)|0)==0:0){c[l>>2]=174801;c[m>>2]=1}if(!(((c[(c[h>>2]|0)+152>>2]&256|0)!=0?(a[c[l>>2]>>0]|0)==(a[175430]|0):0)?(J3(c[l>>2]|0,175430)|0)==0:0))r=12;do if((r|0)==12?!((c[m>>2]|0)!=0?(c[(c[h>>2]|0)+152>>2]&33554432|0)!=0:0):0){if(!((IH(c[l>>2]|0,n,o)|0)<<24>>24)){pR(c[h>>2]|0,c[l>>2]|0);oR(c[h>>2]|0,175430);d=c[h>>2]|0;b=(c[h>>2]|0)+256|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];uR(d,f,1);break}c[q>>2]=0;pR(c[h>>2]|0,c[n>>2]|0);oR(c[h>>2]|0,175430);fI(c[j>>2]|0,q)|0;d=c[h>>2]|0;if(c[n+4>>2]|0){b=c[n+4>>2]|0;s=eO(c[j>>2]|0,c[13812]|0,0,0)|0;qR(d,b,s,+g[o>>2])}else{s=eO(c[j>>2]|0,c[13812]|0,0,0)|0;qR(d,174917,s,+g[o>>2])}if(c[q>>2]&2)c[p>>2]=3;else c[p>>2]=2;s=c[h>>2]|0;d=(c[h>>2]|0)+256|0;b=c[p>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[f+24>>2]=c[d+24>>2];c[f+28>>2]=c[d+28>>2];uR(s,f,b);O4(c[n>>2]|0)}while(0);n=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2]|0;c[k>>2]=n;if(!n){i=e;return}yJ(c[h>>2]|0,c[k>>2]|0);i=e;return}function vJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[c[f>>2]>>2];d=(c[j>>2]|0)+28|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[h>>2]&4))HH(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);a:do if(c[h>>2]&1){bR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){m=c[f>>2]|0;if(!(c[k>>2]|0))break;gI(m,c[k>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}cR(m);dR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[l>>2]=OA(c[g>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;hI(c[f>>2]|0,c[l>>2]|0);c[l>>2]=QA(c[g>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}eR(c[f>>2]|0)}else{if(c[h>>2]&16){dR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[l>>2]=OA(c[g>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;hI(c[f>>2]|0,c[l>>2]|0);c[l>>2]=QA(c[g>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}eR(c[f>>2]|0);bR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){n=c[f>>2]|0;if(!(c[k>>2]|0))break;gI(n,c[k>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}cR(n);break}if(!(c[h>>2]&8)){c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break a;gI(c[f>>2]|0,c[k>>2]|0);c[l>>2]=OA(c[g>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;d=c[l>>2]|0;gI(c[f>>2]|0,c[((c[c[l>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0);hI(c[f>>2]|0,c[l>>2]|0);c[l>>2]=QA(c[g>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}}bR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if((wJ(c[g>>2]|0,c[k>>2]|0)|0)<<24>>24)gI(c[f>>2]|0,c[k>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}cR(c[f>>2]|0);dR(c[f>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[l>>2]=OA(c[g>>2]|0,c[k>>2]|0)|0;while(1){o=c[g>>2]|0;if(!(c[l>>2]|0))break;if((xJ(o,c[l>>2]|0)|0)<<24>>24)hI(c[f>>2]|0,c[l>>2]|0);c[l>>2]=QA(c[g>>2]|0,c[l>>2]|0)|0}c[k>>2]=aC(o,c[k>>2]|0)|0}eR(c[f>>2]|0)}while(0);if(!(c[h>>2]&4)){i=e;return}HH(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function wJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=1;while(1){if((c[k>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)){l=6;break}c[j>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[k>>2]<<2)>>2];if(AC(c[j>>2]|0,c[h>>2]|0)|0){l=4;break}c[k>>2]=(c[k>>2]|0)+1}if((l|0)==4){a[f>>0]=0;m=a[f>>0]|0;i=e;return m|0}else if((l|0)==6){a[f>>0]=1;m=a[f>>0]|0;i=e;return m|0}return 0}function xJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=1;while(1){if((c[k>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)){l=6;break}c[j>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[k>>2]<<2)>>2];if(AC(c[j>>2]|0,c[h>>2]|0)|0){l=4;break}c[k>>2]=(c[k>>2]|0)+1}if((l|0)==4){a[f>>0]=0;m=a[f>>0]|0;i=e;return m|0}else if((l|0)==6){a[f>>0]=1;m=a[f>>0]|0;i=e;return m|0}return 0}function yJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=i;i=i+144|0;e=d+48|0;f=d+16|0;j=d+8|0;k=d;l=d+136|0;m=d+132|0;n=d+128|0;o=d+124|0;p=d+120|0;q=d+116|0;r=d+112|0;s=d+108|0;t=d+104|0;u=d+100|0;v=d+96|0;w=d+92|0;x=d+88|0;y=d+84|0;z=d+80|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=1;c[o>>2]=1e3;c[p>>2]=cK(16e3)|0;c[t>>2]=0;c[u>>2]=1;c[q>>2]=c[(c[m>>2]|0)+8>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[c[m>>2]>>2]|0))break;a:do switch(c[c[q>>2]>>2]|0){case 1:case 0:{b=(c[q>>2]|0)+80|0;a=(c[l>>2]|0)+256|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[e+16>>2]=c[a+16>>2];c[e+20>>2]=c[a+20>>2];c[e+24>>2]=c[a+24>>2];c[e+28>>2]=c[a+28>>2];if(iJ(f,e)|0){h[c[p>>2]>>3]=+h[(c[q>>2]|0)+8>>3]-+h[(c[q>>2]|0)+8+16>>3];h[(c[p>>2]|0)+8>>3]=+h[(c[q>>2]|0)+8+8>>3]-+h[(c[q>>2]|0)+8+24>>3];h[(c[p>>2]|0)+16>>3]=+h[(c[q>>2]|0)+8+16>>3];h[(c[p>>2]|0)+16+8>>3]=+h[(c[q>>2]|0)+8+24>>3];sR(c[l>>2]|0,c[p>>2]|0,2,(c[c[q>>2]>>2]|0)==0?c[u>>2]|0:0)}break}case 3:case 2:{a=(c[q>>2]|0)+80|0;b=(c[l>>2]|0)+256|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];c[f+20>>2]=c[a+20>>2];c[f+24>>2]=c[a+24>>2];c[f+28>>2]=c[a+28>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];if(iJ(f,e)|0){c[p>>2]=zJ(c[p>>2]|0,o,c[(c[q>>2]|0)+8+4>>2]|0,c[(c[q>>2]|0)+8>>2]|0)|0;tR(c[l>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+8>>2]|0,(c[c[q>>2]>>2]|0)==2?c[u>>2]|0:0)}break}case 5:case 4:{b=(c[q>>2]|0)+80|0;a=(c[l>>2]|0)+256|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[e+16>>2]=c[a+16>>2];c[e+20>>2]=c[a+20>>2];c[e+24>>2]=c[a+24>>2];c[e+28>>2]=c[a+28>>2];if(iJ(f,e)|0){c[p>>2]=zJ(c[p>>2]|0,o,c[(c[q>>2]|0)+8+4>>2]|0,c[(c[q>>2]|0)+8>>2]|0)|0;vR(c[l>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+8>>2]|0,0,0,((c[c[q>>2]>>2]|0)==4?c[u>>2]|0:0)&255)}break}case 6:{a=(c[q>>2]|0)+80|0;b=(c[l>>2]|0)+256|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];c[f+20>>2]=c[a+20>>2];c[f+24>>2]=c[a+24>>2];c[f+28>>2]=c[a+28>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];if(iJ(f,e)|0){c[p>>2]=zJ(c[p>>2]|0,o,c[(c[q>>2]|0)+8+4>>2]|0,c[(c[q>>2]|0)+8>>2]|0)|0;wR(c[l>>2]|0,c[p>>2]|0,c[(c[q>>2]|0)+8>>2]|0)}break}case 7:{b=(c[q>>2]|0)+80|0;a=(c[l>>2]|0)+256|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[e+16>>2]=c[a+16>>2];c[e+20>>2]=c[a+20>>2];c[e+24>>2]=c[a+24>>2];c[e+28>>2]=c[a+28>>2];if(iJ(f,e)|0){h[c[p>>2]>>3]=+h[(c[q>>2]|0)+8>>3];h[(c[p>>2]|0)+8>>3]=+h[(c[q>>2]|0)+8+8>>3];a=c[l>>2]|0;b=c[p>>2]|0;A=c[(c[q>>2]|0)+112>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];nR(a,e,A)}break}case 8:{pR(c[l>>2]|0,c[(c[q>>2]|0)+8>>2]|0);c[u>>2]=1;break}case 9:{oR(c[l>>2]|0,c[(c[q>>2]|0)+8>>2]|0);c[u>>2]=1;break}case 13:{A=(c[q>>2]|0)+8+8|0;if((c[(c[q>>2]|0)+8>>2]|0)!=2){c[z>>2]=A;c[v>>2]=c[(c[(c[z>>2]|0)+36>>2]|0)+4>>2];c[w>>2]=c[(c[(c[z>>2]|0)+36>>2]|0)+8+4>>2];g[x>>2]=+g[(c[(c[z>>2]|0)+36>>2]|0)+8>>2];c[s>>2]=~~(+W(+(+h[(c[z>>2]|0)+24>>3]-+h[(c[z>>2]|0)+8>>3]),+(+h[(c[z>>2]|0)+16>>3]-+h[c[z>>2]>>3]))*180.0/3.141592653589793);pR(c[l>>2]|0,c[v>>2]|0);qR(c[l>>2]|0,c[w>>2]|0,c[s>>2]|0,+g[x>>2]);c[u>>2]=2;break a}c[y>>2]=A;c[v>>2]=c[(c[(c[y>>2]|0)+52>>2]|0)+4>>2];c[w>>2]=c[(c[(c[y>>2]|0)+52>>2]|0)+8+4>>2];g[x>>2]=+g[(c[(c[y>>2]|0)+52>>2]|0)+8>>2];if(+h[(c[y>>2]|0)+24>>3]==+h[c[y>>2]>>3]?+h[(c[y>>2]|0)+32>>3]==+h[(c[y>>2]|0)+8>>3]:0)c[s>>2]=0;else c[s>>2]=~~(+T(+((+h[c[y>>2]>>3]-+h[(c[y>>2]|0)+24>>3])/+h[(c[y>>2]|0)+16>>3]))*180.0/3.141592653589793);pR(c[l>>2]|0,c[v>>2]|0);qR(c[l>>2]|0,c[w>>2]|0,c[s>>2]|0,+g[x>>2]);c[u>>2]=3;break}case 14:{$z(0,138785,k)|0;break}case 12:{if(c[n>>2]|0){$z(0,138825,j)|0;c[n>>2]=0}break}case 11:{c[t>>2]=JH(c[(c[q>>2]|0)+8>>2]|0)|0;rR(c[l>>2]|0,c[t>>2]|0);break}default:{}}while(0);c[q>>2]=(c[q>>2]|0)+120;c[r>>2]=(c[r>>2]|0)+1}if(!(c[t>>2]|0)){B=c[p>>2]|0;O4(B);i=d;return}rR(c[l>>2]|0,c[(c[c[l>>2]>>2]|0)+336>>2]|0);B=c[p>>2]|0;O4(B);i=d;return}function zJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=c[c[j>>2]>>2];if((c[l>>2]|0)>(c[n>>2]|0)){c[n>>2]=(c[n>>2]<<1|0)>(c[l>>2]|0)?c[n>>2]<<1:c[l>>2]|0;c[g>>2]=eK(c[g>>2]|0,c[n>>2]<<4)|0;c[c[j>>2]>>2]=c[n>>2]}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;h[(c[g>>2]|0)+(c[m>>2]<<4)>>3]=+h[(c[k>>2]|0)+((c[m>>2]|0)*24|0)>>3];h[(c[g>>2]|0)+(c[m>>2]<<4)+8>>3]=+h[(c[k>>2]|0)+((c[m>>2]|0)*24|0)+8>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return c[g>>2]|0}function AJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;c[h>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2];AJ(c[f>>2]|0,c[h>>2]|0);d=yA(c[h>>2]|0,178832)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,175307)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,178986)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,139210)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)pR(c[f>>2]|0,c[k>>2]|0);d=yA(c[h>>2]|0,139238)|0;c[k>>2]=d;if((d|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)oR(c[f>>2]|0,c[k>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function BJ(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+8|0;f=d+24|0;g=d+20|0;j=d+16|0;k=d;c[f>>2]=b;c[g>>2]=H3(c[f>>2]|0,59)|0;if(!(c[g>>2]|0)){h[e>>3]=0.0;l=+h[e>>3];i=d;return +l}f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=0;h[k>>3]=+x3(c[g>>2]|0,j);if(+h[k>>3]>=0.0?(c[j>>2]|0)!=(c[g>>2]|0):0){h[e>>3]=+h[k>>3];l=+h[e>>3];i=d;return +l}else{h[e>>3]=-1.0;l=+h[e>>3];i=d;return +l}return +(0.0)}function CJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;j=e+40|0;k=e+32|0;l=e+24|0;m=e+16|0;n=e+8|0;o=e;if((+h[a>>3]>=+h[d>>3]?+h[a>>3]<=+h[d+16>>3]:0)?+h[a+8>>3]>=+h[d+8>>3]:0)p=+h[a+8>>3]<=+h[d+16+8>>3];else p=0;c[g>>2]=p&1;if((+h[b>>3]>=+h[d>>3]?+h[b>>3]<=+h[d+16>>3]:0)?+h[b+8>>3]>=+h[d+8>>3]:0)q=+h[b+8>>3]<=+h[d+16+8>>3];else q=0;c[j>>2]=q&1;if((c[g>>2]|0)!=(c[j>>2]|0)){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}if(c[g>>2]&c[j>>2]){c[f>>2]=1;r=c[f>>2]|0;i=e;return r|0}s=+h[a+8>>3];do if(+h[a>>3]==+h[b>>3]){if(((s>=+h[d+8>>3]^+h[b+8>>3]>=+h[d+8>>3]|0)!=0?+h[a>>3]>=+h[d>>3]:0)?+h[a>>3]<=+h[d+16>>3]:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}}else{if(s==+h[b+8>>3]){if(!(+h[a>>3]>=+h[d>>3]^+h[b>>3]>=+h[d>>3]))break;if(!(+h[a+8>>3]>=+h[d+8>>3]))break;if(!(+h[a+8>>3]<=+h[d+16+8>>3]))break;c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}h[k>>3]=(+h[b+8>>3]-+h[a+8>>3])/(+h[b>>3]-+h[a>>3]);if(+h[a>>3]<+h[b>>3]){h[n>>3]=+h[a>>3];h[o>>3]=+h[b>>3]}else{h[n>>3]=+h[b>>3];h[o>>3]=+h[a>>3]}h[m>>3]=+h[a+8>>3]+(+h[d>>3]-+h[a>>3])*+h[k>>3];if(((+h[d>>3]>=+h[n>>3]?+h[d>>3]<=+h[o>>3]:0)?+h[m>>3]>=+h[d+8>>3]:0)?+h[m>>3]<=+h[d+16+8>>3]:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}h[m>>3]=+h[m>>3]+(+h[d+16>>3]-+h[d>>3])*+h[k>>3];if(((+h[m>>3]>=+h[d+8>>3]?+h[m>>3]<=+h[d+16+8>>3]:0)?+h[d+16>>3]>=+h[n>>3]:0)?+h[d+16>>3]<=+h[o>>3]:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}if(+h[a+8>>3]<+h[b+8>>3]){h[n>>3]=+h[a+8>>3];h[o>>3]=+h[b+8>>3]}else{h[n>>3]=+h[b+8>>3];h[o>>3]=+h[a+8>>3]}h[l>>3]=+h[a>>3]+(+h[d+8>>3]-+h[a+8>>3])/+h[k>>3];if(((+h[l>>3]>=+h[d>>3]?+h[l>>3]<=+h[d+16>>3]:0)?+h[d+8>>3]>=+h[n>>3]:0)?+h[d+8>>3]<=+h[o>>3]:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}h[l>>3]=+h[l>>3]+(+h[d+16+8>>3]-+h[d+8>>3])/+h[k>>3];if(((+h[l>>3]>=+h[d>>3]?+h[l>>3]<=+h[d+16>>3]:0)?+h[d+16+8>>3]>=+h[n>>3]:0)?+h[d+16+8>>3]<=+h[o>>3]:0){c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}}while(0);c[f>>2]=-1;r=c[f>>2]|0;i=e;return r|0}function DJ(a){a=a|0;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b;c[d>>2]=a;e=+h[(c[d>>2]|0)+16>>3];h[(c[d>>2]|0)+32>>3]=e;h[(c[d>>2]|0)+48>>3]=e;h[(c[d>>2]|0)+32+8>>3]=+h[(c[d>>2]|0)+16+8>>3];h[(c[d>>2]|0)+48+8>>3]=+h[(c[d>>2]|0)+8>>3];h[(c[d>>2]|0)+16>>3]=+h[c[d>>2]>>3];i=b;return}function EJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+48|0;f=e+16|0;g=e+32|0;j=e+8|0;k=e;c[g>>2]=d;h[j>>3]=+h[b>>3];h[k>>3]=+h[b+8>>3];switch(c[g>>2]|0){case 0:break;case 90:{h[b>>3]=+h[k>>3];h[b+8>>3]=-+h[j>>3];break}case 180:{h[b>>3]=+h[j>>3];h[b+8>>3]=-+h[k>>3];break}case 270:{h[b>>3]=+h[k>>3];h[b+8>>3]=+h[j>>3];break}default:{j=c[g>>2]|0;if((c[g>>2]|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];FJ(a,f,0-j|0);i=e;return}k=c[g>>2]|0;if((j|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];EJ(a,f,(k|0)%360|0);i=e;return}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];IJ(a,f,k);i=e;return}}}c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=e;return}function FJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+48|0;f=e+16|0;g=e+32|0;j=e+8|0;k=e;c[g>>2]=d;h[j>>3]=+h[b>>3];h[k>>3]=+h[b+8>>3];switch(c[g>>2]|0){case 0:break;case 90:{h[b>>3]=-+h[k>>3];h[b+8>>3]=+h[j>>3];break}case 180:{h[b>>3]=+h[j>>3];h[b+8>>3]=-+h[k>>3];break}case 270:{h[b>>3]=+h[k>>3];h[b+8>>3]=+h[j>>3];break}default:{j=c[g>>2]|0;if((c[g>>2]|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];EJ(a,f,0-j|0);i=e;return}k=c[g>>2]|0;if((j|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];FJ(a,f,(k|0)%360|0);i=e;return}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];IJ(a,f,360-k|0);i=e;return}}}c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=e;return}function GJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+32|0;f=e;h[f+16>>3]=+h[b+16+8>>3];h[f+16+8>>3]=+h[b+16>>3];h[f>>3]=+h[b+8>>3];h[f+8>>3]=+h[b>>3];h[f>>3]=+h[f>>3]+ +h[d>>3];b=f+8|0;h[b>>3]=+h[b>>3]+ +h[d+8>>3];b=f+16|0;h[b>>3]=+h[b>>3]+ +h[d>>3];b=f+16+8|0;h[b>>3]=+h[b>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[a+28>>2]=c[f+28>>2];i=e;return}function HJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;e=d+24|0;f=d+16|0;g=d+8|0;j=d;h[f>>3]=+h[b>>3]-+h[a>>3];h[g>>3]=+h[b+8>>3]-+h[a+8>>3];h[j>>3]=(+h[c+8>>3]-+h[a+8>>3])*+h[f>>3]-(+h[c>>3]-+h[a>>3])*+h[g>>3];h[j>>3]=+h[j>>3]*+h[j>>3];if(+h[j>>3]<1.0e-10){h[e>>3]=0.0;k=+h[e>>3];i=d;return +k}else{h[e>>3]=+h[j>>3]/(+h[f>>3]*+h[f>>3]+ +h[g>>3]*+h[g>>3]);k=+h[e>>3];i=d;return +k}return +(0.0)}function IJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=d;if((c[f>>2]|0)!=(c[13789]|0)){i2(+(c[f>>2]|0)/6.283185307179586,33952,33960);c[13789]=c[f>>2]}h[g>>3]=+h[b>>3]*+h[4245]-+h[b+8>>3]*+h[4244];h[g+8>>3]=+h[b+8>>3]*+h[4245]+ +h[b>>3]*+h[4244];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=e;return}function JJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+8|0;g=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;d=yA(c[g>>2]|0,c[j>>2]|0)|0;c[l>>2]=d;if(!d){i=e;return}d=c[l>>2]|0;c[f>>2]=m;if((l3(d,139001,f)|0)<1){i=e;return}h[c[k>>2]>>3]=+h[m>>3];i=e;return}function KJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0;e=i;i=i+32|0;f=e+8|0;g=e+20|0;j=e+24|0;k=e+16|0;l=e;m=e+12|0;c[g>>2]=b;a[j>>0]=d;d=bK(96)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]=d;d=yA(c[g>>2]|0,139005)|0;c[k>>2]=d;if(!((d|0)==0?(d=eb(139014)|0,c[k>>2]=d,(d|0)==0):0))rb(139026,c[k>>2]|0,1)|0;d=(OJ(c[g>>2]|0)|0)&255;a[(c[(c[g>>2]|0)+8>>2]|0)+115>>0]=d;if((c[13794]|0)==0?(c[13793]=yA(c[g>>2]|0,139037)|0,(c[13793]|0)==0):0)c[13793]=c[13792];d=c[g>>2]|0;n=+fO(d,qA(c[g>>2]|0,0,139047,0)|0,0.0,0.0);h[c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]>>3]=n;c[m>>2]=0;d=yA(c[g>>2]|0,139055)|0;c[k>>2]=d;do if(d){if((a[c[k>>2]>>0]|0)==(a[139063]|0)?(J3(c[k>>2]|0,139063)|0)==0:0){c[m>>2]=1;break}if((a[c[k>>2]>>0]|0)==(a[139066]|0)?(J3(c[k>>2]|0,139066)|0)==0:0){c[m>>2]=2;break}if((a[c[k>>2]>>0]|0)==(a[139069]|0)?(J3(c[k>>2]|0,139069)|0)==0:0)c[m>>2]=3}while(0);d=c[m>>2]<<2;if(a[j>>0]|0)c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]=d|c[m>>2];else c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]=d;d=c[g>>2]|0;h[l>>3]=+fO(d,qA(c[g>>2]|0,0,139072,0)|0,.25,.02);n=+h[l>>3]*72.0;c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]=~~(+h[l>>3]*72.0>=0.0?n+.5:n-.5);d=c[g>>2]|0;c[k>>2]=hO(d,qA(c[g>>2]|0,0,139080,0)|0,0)|0;if(c[k>>2]|0){d=c[k>>2]|0;c[f>>2]=l;if(l3(d,139001,f)|0){if(+h[l>>3]<.02)h[l>>3]=.02}else h[l>>3]=.5;if(U3(c[k>>2]|0,139088)|0)a[(c[(c[g>>2]|0)+8>>2]|0)+276>>0]=1}else h[l>>3]=.5;n=+h[l>>3]*72.0;c[(c[(c[g>>2]|0)+8>>2]|0)+252>>2]=~~(+h[l>>3]*72.0>=0.0?n+.5:n-.5);l=c[g>>2]|0;f=(eO(l,qA(c[g>>2]|0,0,139096,0)|0,0,0)|0)&255;a[(c[(c[g>>2]|0)+8>>2]|0)+243>>0]=f;f=c[g>>2]|0;c[k>>2]=hO(f,qA(c[g>>2]|0,0,139106,0)|0,0)|0;f=tO(c[k>>2]|0,55564,55580)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+244>>2]=f;PJ(c[g>>2]|0);f=QJ(c[g>>2]|0,139116,(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+64|0)|0;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+80>>0]=f;QJ(c[g>>2]|0,139121,(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+48|0)|0;f=kO(yA(c[g>>2]|0,139126)|0)|0;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+82>>0]=f;f=yA(c[g>>2]|0,139133)|0;c[k>>2]=f;do if(f){l=(u3(c[k>>2]|0)|0)==90&255;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+81>>0]=l}else{l=yA(c[g>>2]|0,139140)|0;c[k>>2]=l;if(!l){l=yA(c[g>>2]|0,139152)|0;c[k>>2]=l;if(!l)break;l=kO(c[k>>2]|0)|0;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+81>>0]=l;break}if((a[c[k>>2]>>0]|0)==108)o=1;else o=(a[c[k>>2]>>0]|0)==76;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+81>>0]=o&1}while(0);c[k>>2]=yA(c[g>>2]|0,139162)|0;c[13797]=tO(c[k>>2]|0,55596,55612)|0;c[k>>2]=yA(c[g>>2]|0,139174)|0;a[139e3]=kO(c[k>>2]|0)|0;c[13800]=0;c[13801]=0;h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3]=0.0;o=yA(c[g>>2]|0,139186)|0;c[k>>2]=o;if((o|0)!=0?(a[c[k>>2]>>0]|0)!=0:0)p=40;else p=38;if(((p|0)==38?(o=yA(c[g>>2]|0,139190)|0,c[k>>2]=o,(o|0)!=0):0)?(a[c[k>>2]>>0]|0)!=0:0)p=40;if((p|0)==40){n=+t3(c[k>>2]|0);h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3]=n}LJ(c[g>>2]|0);h[4248]=1.e+37;c[13809]=qA(c[g>>2]|0,0,139201,0)|0;c[13812]=qA(c[g>>2]|0,0,179043,0)|0;c[13813]=qA(c[g>>2]|0,0,143958,0)|0;c[13814]=qA(c[g>>2]|0,1,179057,0)|0;c[13815]=qA(c[g>>2]|0,1,179125,0)|0;c[13816]=qA(c[g>>2]|0,1,147662,0)|0;c[13817]=qA(c[g>>2]|0,1,178832,0)|0;c[13818]=qA(c[g>>2]|0,1,139210,0)|0;c[13834]=qA(c[g>>2]|0,1,179091,0)|0;c[13827]=qA(c[g>>2]|0,1,139220,0)|0;c[13828]=qA(c[g>>2]|0,1,139229,0)|0;c[13829]=qA(c[g>>2]|0,1,139238,0)|0;c[13831]=qA(c[g>>2]|0,1,147656,0)|0;if(!(c[13831]|0))c[13831]=qA(c[g>>2]|0,1,147656,143955)|0;c[13832]=qA(c[g>>2]|0,1,139248,0)|0;c[13835]=qA(c[g>>2]|0,1,139096,0)|0;c[13849]=qA(c[g>>2]|0,1,139255,0)|0;c[13838]=qA(c[g>>2]|0,1,139201,0)|0;c[13830]=qA(c[g>>2]|0,1,143958,0)|0;c[13836]=qA(c[g>>2]|0,1,179085,0)|0;c[13837]=qA(c[g>>2]|0,1,139264,0)|0;c[13840]=qA(c[g>>2]|0,1,139276,0)|0;c[13839]=qA(c[g>>2]|0,1,139140,0)|0;c[13841]=qA(c[g>>2]|0,1,139281,0)|0;c[13842]=qA(c[g>>2]|0,1,179033,0)|0;c[13843]=qA(c[g>>2]|0,1,174900,0)|0;c[13833]=qA(c[g>>2]|0,1,139292,0)|0;c[13844]=qA(c[g>>2]|0,1,139302,0)|0;c[13845]=qA(c[g>>2]|0,1,139308,0)|0;c[13846]=qA(c[g>>2]|0,1,139314,0)|0;c[13847]=qA(c[g>>2]|0,1,139322,0)|0;c[13848]=qA(c[g>>2]|0,1,139331,0)|0;c[13850]=qA(c[g>>2]|0,1,179043,0)|0;c[13851]=qA(c[g>>2]|0,2,139333,0)|0;c[13853]=qA(c[g>>2]|0,2,178832,0)|0;c[13854]=qA(c[g>>2]|0,2,139210,0)|0;c[13863]=qA(c[g>>2]|0,2,139220,0)|0;c[13864]=qA(c[g>>2]|0,2,139229,0)|0;c[13865]=qA(c[g>>2]|0,2,139238,0)|0;c[13866]=qA(c[g>>2]|0,2,147656,0)|0;c[13867]=qA(c[g>>2]|0,2,139248,0)|0;c[13876]=qA(c[g>>2]|0,2,139340,0)|0;c[13868]=qA(c[g>>2]|0,2,139351,0)|0;c[13879]=qA(c[g>>2]|0,2,139355,0)|0;c[13880]=qA(c[g>>2]|0,2,139365,0)|0;c[13881]=qA(c[g>>2]|0,2,139375,0)|0;c[13882]=qA(c[g>>2]|0,2,139385,0)|0;c[13883]=qA(c[g>>2]|0,2,139395,0)|0;c[13884]=qA(c[g>>2]|0,2,139409,0)|0;c[13885]=qA(c[g>>2]|0,2,139423,0)|0;c[13886]=qA(c[g>>2]|0,2,139438,0)|0;c[13887]=qA(c[g>>2]|0,2,139452,0)|0;c[13852]=qA(c[g>>2]|0,2,139463,0)|0;c[13871]=qA(c[g>>2]|0,2,139096,0)|0;c[13869]=qA(c[g>>2]|0,2,179091,0)|0;c[13870]=qA(c[g>>2]|0,2,139470,0)|0;c[13872]=qA(c[g>>2]|0,2,139479,0)|0;c[13873]=qA(c[g>>2]|0,2,139489,0)|0;c[13874]=qA(c[g>>2]|0,2,139302,0)|0;c[13875]=qA(c[g>>2]|0,2,139314,0)|0;c[13888]=qA(c[g>>2]|0,2,139500,0)|0;c[13889]=qA(c[g>>2]|0,2,139509,0)|0;c[13890]=qA(c[g>>2]|0,2,139255,0)|0;p=vH(c[g>>2]|0)|0;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2]=p;p=yA(c[g>>2]|0,179069)|0;c[k>>2]=p;if(!p){i=e;return}if(!(a[c[k>>2]>>0]|0)){i=e;return}p=WJ(c[k>>2]|0,c[g>>2]|0)|0;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+92>>2]=p;i=e;return}function LJ(b){b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+36|0;n=e;c[f>>2]=b;b=yA(c[f>>2]|0,147656)|0;c[g>>2]=b;if(!b){i=e;return}if(!(a[c[g>>2]>>0]|0)){i=e;return}b=(c[(c[(c[f>>2]|0)+48>>2]|0)+8>>2]|0)+113|0;a[b>>0]=d[b>>0]|8;b=c[f>>2]|0;o=c[g>>2]|0;p=($C(c[g>>2]|0)|0)!=0;g=c[f>>2]|0;q=+fO(g,qA(c[f>>2]|0,0,139220,0)|0,14.0,1.0);g=c[f>>2]|0;r=iO(g,qA(c[f>>2]|0,0,139229,0)|0,145601)|0;g=c[f>>2]|0;s=SJ(b,o,p?2:0,q,r,iO(g,qA(c[f>>2]|0,0,139238,0)|0,174917)|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]=s;c[j>>2]=yA(c[f>>2]|0,144073)|0;s=c[f>>2]|0;g=(s|0)!=(rC(c[f>>2]|0)|0);s=(c[j>>2]|0)!=0;do if(g){if(s?(a[c[j>>2]>>0]|0)==98:0){a[m>>0]=0;break}a[m>>0]=1}else{if(s?(a[c[j>>2]>>0]|0)==116:0){a[m>>0]=1;break}a[m>>0]=0}while(0);c[k>>2]=yA(c[f>>2]|0,139518)|0;do if(c[k>>2]|0){if((a[c[k>>2]>>0]|0)==108){a[m>>0]=a[m>>0]|2;break}if((a[c[k>>2]>>0]|0)==114)a[m>>0]=a[m>>0]|4}while(0);a[(c[(c[f>>2]|0)+8>>2]|0)+275>>0]=a[m>>0]|0;m=c[f>>2]|0;if((m|0)==(rC(c[f>>2]|0)|0)){i=e;return}m=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+24|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];h[n>>3]=+h[n>>3]+16.0;m=n+8|0;h[m>>3]=+h[m>>3]+8.0;m=(c[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;k=(a[(c[(c[f>>2]|0)+8>>2]|0)+275>>0]&1|0)!=0;if(m){if(k)c[l>>2]=1;else c[l>>2]=3;h[(c[(c[f>>2]|0)+8>>2]|0)+48+(c[l>>2]<<4)>>3]=+h[n+8>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+48+(c[l>>2]<<4)+8>>3]=+h[n>>3];i=e;return}else{if(k)c[l>>2]=2;else c[l>>2]=0;k=(c[(c[f>>2]|0)+8>>2]|0)+48+(c[l>>2]<<4)|0;c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];i=e;return}}function MJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)!=0?(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2]|0)!=0:0)uS(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2]|0);if((c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)!=0?(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+92>>2]|0)!=0:0)O4(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+92>>2]|0);O4(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0);c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]=0;UJ(c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2]|0);PC(c[d>>2]|0,0,175049);i=b;return}function NJ(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;e=b+8|0;f=b+4|0;c[e>>2]=a;switch(c[e>>2]|0){case 0:{c[f>>2]=139528;break}case 1:{c[f>>2]=139534;break}case 2:{c[f>>2]=139545;break}default:{c[d>>2]=c[e>>2];$z(1,139551,d)|0;c[f>>2]=139528}}i=b;return c[f>>2]|0}function OJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;a=c[e>>2]|0;c[g>>2]=iO(a,qA(c[e>>2]|0,0,139652,0)|0,139660)|0;if(((((((F3(c[g>>2]|0,139666)|0)!=0?(F3(c[g>>2]|0,139674)|0)!=0:0)?(F3(c[g>>2]|0,139681)|0)!=0:0)?(F3(c[g>>2]|0,139534)|0)!=0:0)?(F3(c[g>>2]|0,139684)|0)!=0:0)?(F3(c[g>>2]|0,139695)|0)!=0:0)?(F3(c[g>>2]|0,139705)|0)!=0:0){if((F3(c[g>>2]|0,139716)|0)!=0?(F3(c[g>>2]|0,139722)|0)!=0:0){if((F3(c[g>>2]|0,139660)|0)!=0?(F3(c[g>>2]|0,139727)|0)!=0:0){c[d>>2]=c[g>>2];$z(0,139732,d)|0;c[f>>2]=0;h=c[f>>2]|0;i=b;return h|0}c[f>>2]=0;h=c[f>>2]|0;i=b;return h|0}c[f>>2]=2;h=c[f>>2]|0;i=b;return h|0}c[f>>2]=1;h=c[f>>2]|0;i=b;return h|0}function PJ(b){b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+12|0;f=d+8|0;g=d+16|0;j=d;c[e>>2]=b;b=yA(c[e>>2]|0,139610)|0;c[f>>2]=b;if(!b){i=d;return}b=a[c[f>>2]>>0]|0;a[g>>0]=b;if(!(b<<24>>24)){i=d;return}switch(a[g>>0]|0){case 97:{if((a[c[f>>2]>>0]|0)!=(a[139616]|0)){i=d;return}if(J3(c[f>>2]|0,139616)|0){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=4;i=d;return}case 99:{if((a[c[f>>2]>>0]|0)!=(a[139621]|0)){i=d;return}if(J3(c[f>>2]|0,139621)|0){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=3;i=d;return}case 101:{if((a[c[f>>2]>>0]|0)!=(a[139630]|0)){i=d;return}if(J3(c[f>>2]|0,139630)|0){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=5;i=d;return}case 102:{if((a[c[f>>2]>>0]|0)!=(a[139637]|0)){i=d;return}if(J3(c[f>>2]|0,139637)|0){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=2;i=d;return}default:{h[j>>3]=+t3(c[f>>2]|0);if(!(+h[j>>3]>0.0)){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=1;h[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+16>>3]=+h[j>>3];i=d;return}}}function QJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0;f=i;i=i+64|0;g=f+32|0;j=f+16|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+8|0;q=f;r=f+61|0;s=f+60|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;a[r>>0]=0;a[s>>0]=0;e=yA(c[k>>2]|0,c[l>>2]|0)|0;c[n>>2]=e;if(!e){t=a[s>>0]|0;i=f;return t|0}e=c[n>>2]|0;c[j>>2]=p;c[j+4>>2]=q;c[j+8>>2]=r;c[o>>2]=l3(e,139594,j)|0;if((c[o>>2]|0)>1&+h[p>>3]>0.0&+h[q>>3]>0.0){u=+h[p>>3]*72.0;h[c[m>>2]>>3]=+(~~(+h[p>>3]*72.0>=0.0?u+.5:u-.5)|0);u=+h[q>>3]*72.0;h[(c[m>>2]|0)+8>>3]=+(~~(+h[q>>3]*72.0>=0.0?u+.5:u-.5)|0);if((a[r>>0]|0)!=33){t=a[s>>0]|0;i=f;return t|0}a[s>>0]=1;t=a[s>>0]|0;i=f;return t|0}a[r>>0]=0;q=c[n>>2]|0;c[g>>2]=p;c[g+4>>2]=r;c[o>>2]=l3(q,139604,g)|0;if(!((c[o>>2]|0)>0&+h[p>>3]>0.0)){t=a[s>>0]|0;i=f;return t|0}u=+h[p>>3]*72.0;v=+(~~(+h[p>>3]*72.0>=0.0?u+.5:u-.5)|0);h[c[m>>2]>>3]=v;h[(c[m>>2]|0)+8>>3]=v;if((a[r>>0]|0)!=33){t=a[s>>0]|0;i=f;return t|0}a[s>>0]=1;t=a[s>>0]|0;i=f;return t|0}function RJ(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+25|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;p=f+24|0;c[g>>2]=b;c[j>>2]=e;c[o>>2]=c[c[j>>2]>>2];a[p>>0]=0;h[(c[j>>2]|0)+24+8>>3]=0.0;h[(c[j>>2]|0)+24>>3]=0.0;if(!(a[c[o>>2]>>0]|0)){i=f;return}c[n>>2]=0;c[m>>2]=0;c[l>>2]=c[o>>2];o=cK((N3(c[l>>2]|0)|0)+1|0)|0;c[n>>2]=o;c[m>>2]=o;a[c[m>>2]>>0]=0;while(1){o=c[l>>2]|0;c[l>>2]=o+1;e=a[o>>0]|0;a[k>>0]=e;if(!(e<<24>>24))break;a[p>>0]=a[k>>0]|0;if(((c[(c[j>>2]|0)+12>>2]|0)==2?161<=(d[p>>0]|0):0)?(d[p>>0]|0)<=254:0){e=a[k>>0]|0;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=e;e=c[l>>2]|0;c[l>>2]=e+1;a[k>>0]=a[e>>0]|0;e=a[k>>0]|0;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=e;if(a[k>>0]|0)continue;else break}if((a[k>>0]|0)!=92)if((a[k>>0]|0)==10){e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=0;_J(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0,110);c[m>>2]=c[n>>2];continue}else{e=a[k>>0]|0;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=e;continue}switch(a[c[l>>2]>>0]|0){case 114:case 108:case 110:{e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=0;_J(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0,a[c[l>>2]>>0]|0);c[m>>2]=c[n>>2];break}default:{e=a[c[l>>2]>>0]|0;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=e}}if(!(a[c[l>>2]>>0]|0))continue;c[l>>2]=(c[l>>2]|0)+1}if((c[m>>2]|0)!=(c[n>>2]|0)){l=c[n>>2]|0;c[n>>2]=l+1;a[l>>0]=0;_J(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0,110)}m=(c[j>>2]|0)+40|0;g=(c[j>>2]|0)+24|0;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];i=f;return}function SJ(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;l=i;i=i+80|0;m=l+24|0;n=l+16|0;o=l+8|0;p=l+76|0;q=l+72|0;r=l+68|0;s=l;t=l+64|0;u=l+60|0;v=l+56|0;w=l+52|0;x=l+48|0;y=l+44|0;z=l+40|0;A=l+36|0;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;h[s>>3]=g;c[t>>2]=j;c[u>>2]=k;c[v>>2]=bK(88)|0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;switch(BC(c[p>>2]|0)|0){case 0:{c[x>>2]=c[p>>2];c[w>>2]=c[(c[x>>2]|0)+48>>2];break}case 1:{c[y>>2]=c[p>>2];c[w>>2]=rC(qC(c[y>>2]|0)|0)|0;break}case 2:{c[z>>2]=c[p>>2];k=c[z>>2]|0;c[w>>2]=rC(qC(c[((c[c[z>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)|0)|0;break}default:{}}c[(c[v>>2]|0)+4>>2]=c[t>>2];c[(c[v>>2]|0)+8>>2]=c[u>>2];h[(c[v>>2]|0)+16>>3]=+h[s>>3];c[(c[v>>2]|0)+12>>2]=d[(c[(c[w>>2]|0)+8>>2]|0)+115>>0];if(c[r>>2]&4){s=M3(c[q>>2]|0)|0;c[c[v>>2]>>2]=s;if(!(c[r>>2]&2)){B=c[v>>2]|0;i=l;return B|0}a[(c[v>>2]|0)+82>>0]=1;B=c[v>>2]|0;i=l;return B|0}if((c[r>>2]|0)!=2){if(c[r>>2]|0)La(139845,139861,166,139870);r=$J(c[q>>2]|0,c[p>>2]|0,0)|0;c[c[v>>2]>>2]=r;r=c[c[v>>2]>>2]|0;if((c[(c[v>>2]|0)+12>>2]|0)==1)c[A>>2]=KO(r)|0;else c[A>>2]=JO(r,c[w>>2]|0)|0;O4(c[c[v>>2]>>2]|0);c[c[v>>2]>>2]=c[A>>2];RJ(c[(c[(c[w>>2]|0)+8>>2]|0)+144>>2]|0,c[v>>2]|0);B=c[v>>2]|0;i=l;return B|0}A=M3(c[q>>2]|0)|0;c[c[v>>2]>>2]=A;a[(c[v>>2]|0)+82>>0]=1;if(!(HT(c[p>>2]|0,c[v>>2]|0)|0)){B=c[v>>2]|0;i=l;return B|0}switch(BC(c[p>>2]|0)|0){case 0:{c[o>>2]=wB(c[x>>2]|0)|0;$z(3,139775,o)|0;B=c[v>>2]|0;i=l;return B|0}case 1:{c[n>>2]=wB(c[y>>2]|0)|0;$z(3,139797,n)|0;B=c[v>>2]|0;i=l;return B|0}case 2:{n=c[z>>2]|0;y=wB(c[((c[c[z>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)|0;n=(nB(c[w>>2]|0)|0)!=0;w=c[z>>2]|0;o=wB(c[((c[c[z>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]|0)|0;c[m>>2]=y;c[m+4>>2]=n?175316:178535;c[m+8>>2]=o;$z(3,139818,m)|0;B=c[v>>2]|0;i=l;return B|0}default:{B=c[v>>2]|0;i=l;return B|0}}return 0}function TJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[e>>2];if(!(c[e>>2]|0)){i=d;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;if((c[g>>2]|0)==0?(c[c[h>>2]>>2]|0)!=0:0)O4(c[c[h>>2]>>2]|0);if((c[(c[h>>2]|0)+8>>2]|0)!=0?(c[(c[h>>2]|0)+12>>2]|0)!=0:0)Bb[c[(c[h>>2]|0)+12>>2]&127](c[(c[h>>2]|0)+8>>2]|0);c[h>>2]=(c[h>>2]|0)+56;c[g>>2]=(c[g>>2]|0)+1}O4(c[e>>2]|0);i=d;return}function UJ(d){d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;if(!(c[f>>2]|0)){i=e;return}O4(c[c[f>>2]>>2]|0);d=(c[f>>2]|0)+72|0;if(a[(c[f>>2]|0)+82>>0]|0){if(c[d>>2]|0)zT(c[(c[f>>2]|0)+72>>2]|0,1)}else TJ(c[d>>2]|0,b[(c[f>>2]|0)+72+4>>1]|0);O4(c[f>>2]|0);i=e;return}function VJ(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+64|0;j=g+16|0;k=g+52|0;l=g+48|0;m=g+44|0;n=g+40|0;o=g+36|0;p=g;q=g+32|0;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[(c[k>>2]|0)+16>>2];c[q>>2]=c[(c[n>>2]|0)+12>>2];c[(c[n>>2]|0)+12>>2]=c[l>>2];if(a[(c[m>>2]|0)+82>>0]|0){vT(c[k>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[m>>2]|0);c[(c[n>>2]|0)+12>>2]=c[q>>2];i=g;return}if((b[(c[m>>2]|0)+72+4>>1]|0)<1){i=g;return}lR(c[k>>2]|0,0);oR(c[k>>2]|0,c[(c[m>>2]|0)+8>>2]|0);switch(a[(c[m>>2]|0)+80>>0]|0){case 116:{h[p+8>>3]=+h[(c[m>>2]|0)+56+8>>3]+ +h[(c[m>>2]|0)+40+8>>3]/2.0-+h[(c[m>>2]|0)+16>>3];break}case 98:{h[p+8>>3]=+h[(c[m>>2]|0)+56+8>>3]-+h[(c[m>>2]|0)+40+8>>3]/2.0+ +h[(c[m>>2]|0)+24+8>>3]-+h[(c[m>>2]|0)+16>>3];break}default:h[p+8>>3]=+h[(c[m>>2]|0)+56+8>>3]+ +h[(c[m>>2]|0)+24+8>>3]/2.0-+h[(c[m>>2]|0)+16>>3]}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(b[(c[m>>2]|0)+72+4>>1]|0))break;switch(a[(c[(c[m>>2]|0)+72>>2]|0)+((c[o>>2]|0)*56|0)+48>>0]|0){case 108:{h[p>>3]=+h[(c[m>>2]|0)+56>>3]-+h[(c[m>>2]|0)+40>>3]/2.0;break}case 114:{h[p>>3]=+h[(c[m>>2]|0)+56>>3]+ +h[(c[m>>2]|0)+40>>3]/2.0;break}default:h[p>>3]=+h[(c[m>>2]|0)+56>>3]}l=c[k>>2]|0;f=(c[(c[m>>2]|0)+72>>2]|0)+((c[o>>2]|0)*56|0)|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];nR(l,j,f);f=p+8|0;h[f>>3]=+h[f>>3]-+h[(c[(c[m>>2]|0)+72>>2]|0)+((c[o>>2]|0)*56|0)+32+8>>3];c[o>>2]=(c[o>>2]|0)+1}mR(c[k>>2]|0);c[(c[n>>2]|0)+12>>2]=c[q>>2];i=g;return}function WJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=$J(c[e>>2]|0,c[f>>2]|0,1)|0;i=d;return b|0}function XJ(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=YJ(c[d>>2]|0,0)|0;i=b;return a|0}function YJ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+20|0;h=f+24|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=b;a[h>>0]=e;c[l>>2]=0;c[n>>2]=0;if(!(c[13907]|0)){c[13908]=64;c[13907]=cK(c[13908]|0)|0}c[j>>2]=c[13907];while(1){if(!(c[g>>2]|0)){o=29;break}if(!(a[c[g>>2]>>0]|0)){o=29;break}if((c[n>>2]|0)>((c[13908]|0)-8|0)){c[13908]=c[13908]<<1;c[13907]=eK(c[13907]|0,c[13908]|0)|0;c[j>>2]=(c[13907]|0)+(c[n>>2]|0)}do if((a[c[g>>2]>>0]|0)==38){if((d[h>>0]|0)==0?(aK(c[g>>2]|0)|0)!=0:0){o=12;break}c[k>>2]=139881;c[m>>2]=5}else o=12;while(0);do if((o|0)==12){o=0;if((a[c[g>>2]>>0]|0)==60){c[k>>2]=139887;c[m>>2]=4;break}if((a[c[g>>2]>>0]|0)==62){c[k>>2]=139892;c[m>>2]=4;break}if((a[c[g>>2]>>0]|0)==45){c[k>>2]=139897;c[m>>2]=5;break}if(((c[l>>2]|0)!=0?(a[c[g>>2]>>0]|0)==32:0)?(a[c[l>>2]>>0]|0)==32:0){c[k>>2]=139903;c[m>>2]=6;break}if((a[c[g>>2]>>0]|0)==34){c[k>>2]=139910;c[m>>2]=6;break}if((a[c[g>>2]>>0]|0)==39){c[k>>2]=139917;c[m>>2]=5;break}else{c[k>>2]=c[g>>2];c[m>>2]=1;break}}while(0);while(1){e=c[m>>2]|0;c[m>>2]=e+-1;if(!e)break;e=c[k>>2]|0;c[k>>2]=e+1;b=a[e>>0]|0;e=c[j>>2]|0;c[j>>2]=e+1;a[e>>0]=b;c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+1}if((o|0)==29){a[c[j>>2]>>0]=0;i=f;return c[13907]|0}return 0}function ZJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=b;c[j>>2]=0;if(!(c[13909]|0)){c[13910]=64;c[13909]=cK(c[13910]|0)|0}c[f>>2]=c[13909];while(1){if(!(c[e>>2]|0)){k=23;break}if(!(a[c[e>>2]>>0]|0)){k=23;break}if((c[j>>2]|0)>((c[13910]|0)-8|0)){c[13910]=c[13910]<<1;c[13909]=eK(c[13909]|0,c[13910]|0)|0;c[f>>2]=(c[13909]|0)+(c[j>>2]|0)}if((a[c[e>>2]>>0]|0)==38?(aK(c[e>>2]|0)|0)==0:0){c[g>>2]=139881;c[h>>2]=5}else k=11;do if((k|0)==11){k=0;if((a[c[e>>2]>>0]|0)==60){c[g>>2]=139887;c[h>>2]=4;break}if((a[c[e>>2]>>0]|0)==62){c[g>>2]=139892;c[h>>2]=4;break}if((a[c[e>>2]>>0]|0)==34){c[g>>2]=139910;c[h>>2]=6;break}if((a[c[e>>2]>>0]|0)==39){c[g>>2]=139917;c[h>>2]=5;break}else{c[g>>2]=c[e>>2];c[h>>2]=1;break}}while(0);while(1){b=c[h>>2]|0;c[h>>2]=b+-1;if(!b)break;b=c[g>>2]|0;c[g>>2]=b+1;l=a[b>>0]|0;b=c[f>>2]|0;c[f>>2]=b+1;a[b>>0]=l;c[j>>2]=(c[j>>2]|0)+1}c[e>>2]=(c[e>>2]|0)+1}if((k|0)==23){a[c[f>>2]>>0]=0;i=d;return c[13909]|0}return 0}function _J(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0.0,D=0.0;j=i;i=i+64|0;k=j+48|0;l=j+44|0;m=j+40|0;n=j+52|0;o=j+16|0;p=j+36|0;q=j+32|0;r=j;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;a[n>>0]=g;c[q>>2]=(b[(c[l>>2]|0)+72+4>>1]|0)+1;if(c[(c[l>>2]|0)+72>>2]|0)s=dK(c[(c[l>>2]|0)+72>>2]|0,(c[q>>2]|0)+1|0,56,c[q>>2]|0)|0;else s=bK(((c[q>>2]|0)+1|0)*56|0)|0;c[(c[l>>2]|0)+72>>2]=s;c[p>>2]=(c[(c[l>>2]|0)+72>>2]|0)+((b[(c[l>>2]|0)+72+4>>1]|0)*56|0);c[c[p>>2]>>2]=c[m>>2];a[(c[p>>2]|0)+48>>0]=a[n>>0]|0;if((c[m>>2]|0)!=0?(a[c[m>>2]>>0]|0)!=0:0){c[8512]=c[(c[l>>2]|0)+4>>2];h[4258]=+h[(c[l>>2]|0)+16>>3];m=Hb[c[c[(c[k>>2]|0)+144>>2]>>2]&63](c[(c[k>>2]|0)+144>>2]|0,34048,1)|0;c[(c[p>>2]|0)+4>>2]=m;SN(r,c[k>>2]|0,c[p>>2]|0);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2]}else{h[o>>3]=0.0;t=+(~~(+h[(c[l>>2]|0)+16>>3]*1.2)|0);h[o+8>>3]=t;h[(c[p>>2]|0)+32+8>>3]=t}p=(c[l>>2]|0)+72+4|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;if(+h[(c[l>>2]|0)+24>>3]>+h[o>>3]){u=+h[(c[l>>2]|0)+24>>3];v=c[l>>2]|0;w=v+24|0;h[w>>3]=u;x=o+8|0;y=+h[x>>3];z=c[l>>2]|0;A=z+24|0;B=A+8|0;C=+h[B>>3];D=C+y;h[B>>3]=D;i=j;return}else{u=+h[o>>3];v=c[l>>2]|0;w=v+24|0;h[w>>3]=u;x=o+8|0;y=+h[x>>3];z=c[l>>2]|0;A=z+24|0;B=A+8|0;C=+h[B>>3];D=C+y;h[B>>3]=D;i=j;return}}function $J(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;f=i;i=i+160|0;g=f+140|0;h=f+136|0;j=f+132|0;k=f+144|0;l=f+128|0;m=f+124|0;n=f+120|0;o=f+116|0;p=f+112|0;q=f+108|0;r=f+104|0;s=f+100|0;t=f+96|0;u=f+92|0;v=f+88|0;w=f+84|0;x=f+80|0;y=f+76|0;z=f+72|0;A=f+68|0;B=f+64|0;C=f+60|0;D=f+56|0;E=f+52|0;F=f+48|0;G=f+44|0;H=f+40|0;I=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[p>>2]=178518;c[q>>2]=178518;c[r>>2]=139923;c[s>>2]=143955;c[t>>2]=139926;c[u>>2]=139929;c[v>>2]=139932;c[w>>2]=139935;c[x>>2]=2;c[y>>2]=2;c[z>>2]=2;c[A>>2]=2;c[B>>2]=2;c[C>>2]=2;c[D>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;switch(BC(c[h>>2]|0)|0){case 0:{c[r>>2]=wB(c[h>>2]|0)|0;c[x>>2]=N3(c[r>>2]|0)|0;c[H>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2];if((c[H>>2]|0)!=0?(c[w>>2]=c[c[H>>2]>>2],(c[g>>2]|0)!=0):0)c[C>>2]=N3(c[w>>2]|0)|0;break}case 1:{c[r>>2]=wB(qC(c[h>>2]|0)|0)|0;c[x>>2]=N3(c[r>>2]|0)|0;c[s>>2]=wB(c[h>>2]|0)|0;c[y>>2]=N3(c[s>>2]|0)|0;c[H>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2];if((c[H>>2]|0)!=0?(c[w>>2]=c[c[H>>2]>>2],(c[g>>2]|0)!=0):0)c[C>>2]=N3(c[w>>2]|0)|0;break}case 2:{c[G>>2]=1;e=c[h>>2]|0;c[r>>2]=wB(rC(qC(c[((c[c[h>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)|0)|0)|0;c[x>>2]=N3(c[r>>2]|0)|0;e=c[h>>2]|0;c[v>>2]=wB(c[((c[c[h>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)|0;c[B>>2]=N3(c[v>>2]|0)|0;e=I;d=(c[(c[h>>2]|0)+8>>2]|0)+16|0;b=e+40|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));J=c[I+36>>2]|0;c[p>>2]=J;if(J)c[D>>2]=N3(c[p>>2]|0)|0;J=c[h>>2]|0;c[u>>2]=wB(c[((c[c[h>>2]>>2]&3|0)==2?J:J+-32|0)+28>>2]|0)|0;c[A>>2]=N3(c[u>>2]|0)|0;e=I;d=(c[(c[h>>2]|0)+8>>2]|0)+56|0;b=e+40|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));d=c[I+36>>2]|0;c[q>>2]=d;if(d)c[E>>2]=N3(c[q>>2]|0)|0;c[A>>2]=N3(c[u>>2]|0)|0;c[H>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2];if((c[H>>2]|0)!=0?(c[w>>2]=c[c[H>>2]>>2],(c[g>>2]|0)!=0):0)c[C>>2]=N3(c[w>>2]|0)|0;H=c[h>>2]|0;if(nB(rC(qC(c[((c[c[h>>2]>>2]&3|0)==3?H:H+32|0)+28>>2]|0)|0)|0)|0)c[t>>2]=175316;else c[t>>2]=178535;c[z>>2]=(c[B>>2]|0)+((c[D>>2]|0)!=0?(c[D>>2]|0)+1|0:0)+2+(c[A>>2]|0)+((c[E>>2]|0)!=0?(c[E>>2]|0)+1|0:0);break}default:{}}c[l>>2]=c[g>>2];a:while(1){H=c[l>>2]|0;c[l>>2]=H+1;h=a[H>>0]|0;a[k>>0]=h;if(!(h<<24>>24))break;if((a[k>>0]|0)!=92){c[F>>2]=(c[F>>2]|0)+1;continue}h=c[l>>2]|0;c[l>>2]=h+1;H=a[h>>0]|0;a[k>>0]=H;switch(H<<24>>24|0){case 71:{c[F>>2]=(c[F>>2]|0)+(c[x>>2]|0);continue a;break}case 78:{c[F>>2]=(c[F>>2]|0)+(c[y>>2]|0);continue a;break}case 69:{c[F>>2]=(c[F>>2]|0)+(c[z>>2]|0);continue a;break}case 72:{c[F>>2]=(c[F>>2]|0)+(c[A>>2]|0);continue a;break}case 84:{c[F>>2]=(c[F>>2]|0)+(c[B>>2]|0);continue a;break}case 76:{c[F>>2]=(c[F>>2]|0)+(c[C>>2]|0);continue a;break}case 92:{if(c[j>>2]|0){c[F>>2]=(c[F>>2]|0)+1;continue a}break}default:{}}c[F>>2]=(c[F>>2]|0)+2}c[o>>2]=cK((c[F>>2]|0)+1|0)|0;c[l>>2]=c[g>>2];c[m>>2]=c[o>>2];b:while(1){g=c[l>>2]|0;c[l>>2]=g+1;F=a[g>>0]|0;a[k>>0]=F;if(!(F<<24>>24))break;if((a[k>>0]|0)!=92){F=a[k>>0]|0;g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=F;continue}F=c[l>>2]|0;c[l>>2]=F+1;g=a[F>>0]|0;a[k>>0]=g;switch(g<<24>>24|0){case 71:{c[n>>2]=c[r>>2];while(1){g=c[n>>2]|0;c[n>>2]=g+1;F=a[g>>0]|0;a[c[m>>2]>>0]=F;if(!(F<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 78:{c[n>>2]=c[s>>2];while(1){F=c[n>>2]|0;c[n>>2]=F+1;g=a[F>>0]|0;a[c[m>>2]>>0]=g;if(!(g<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 69:{if(!(c[G>>2]|0))continue b;c[n>>2]=c[v>>2];while(1){g=c[n>>2]|0;c[n>>2]=g+1;F=a[g>>0]|0;a[c[m>>2]>>0]=F;if(!(F<<24>>24))break;c[m>>2]=(c[m>>2]|0)+1}c:do if(c[D>>2]|0){F=c[m>>2]|0;c[m>>2]=F+1;a[F>>0]=58;c[n>>2]=c[p>>2];while(1){F=c[n>>2]|0;c[n>>2]=F+1;g=a[F>>0]|0;a[c[m>>2]>>0]=g;if(!(g<<24>>24))break c;c[m>>2]=(c[m>>2]|0)+1}}while(0);c[n>>2]=c[t>>2];while(1){g=c[n>>2]|0;c[n>>2]=g+1;F=a[g>>0]|0;a[c[m>>2]>>0]=F;if(!(F<<24>>24))break;c[m>>2]=(c[m>>2]|0)+1}c[n>>2]=c[u>>2];while(1){F=c[n>>2]|0;c[n>>2]=F+1;g=a[F>>0]|0;a[c[m>>2]>>0]=g;if(!(g<<24>>24))break;c[m>>2]=(c[m>>2]|0)+1}if(!(c[E>>2]|0))continue b;g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=58;c[n>>2]=c[q>>2];while(1){g=c[n>>2]|0;c[n>>2]=g+1;F=a[g>>0]|0;a[c[m>>2]>>0]=F;if(!(F<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 84:{c[n>>2]=c[v>>2];while(1){F=c[n>>2]|0;c[n>>2]=F+1;g=a[F>>0]|0;a[c[m>>2]>>0]=g;if(!(g<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 72:{c[n>>2]=c[u>>2];while(1){g=c[n>>2]|0;c[n>>2]=g+1;F=a[g>>0]|0;a[c[m>>2]>>0]=F;if(!(F<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 76:{c[n>>2]=c[w>>2];while(1){F=c[n>>2]|0;c[n>>2]=F+1;g=a[F>>0]|0;a[c[m>>2]>>0]=g;if(!(g<<24>>24))continue b;c[m>>2]=(c[m>>2]|0)+1}break}case 92:{if(c[j>>2]|0){g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=92;continue b}break}default:{}}g=c[m>>2]|0;c[m>>2]=g+1;a[g>>0]=92;g=a[k>>0]|0;F=c[m>>2]|0;c[m>>2]=F+1;a[F>>0]=g}k=c[m>>2]|0;c[m>>2]=k+1;a[k>>0]=0;i=f;return c[o>>2]|0}function aK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;c[f>>2]=(c[f>>2]|0)+1;a:do if((a[c[f>>2]>>0]|0)==35){c[f>>2]=(c[f>>2]|0)+1;if((a[c[f>>2]>>0]|0)!=120?(a[c[f>>2]>>0]|0)!=88:0)while(1){if((a[c[f>>2]>>0]|0)<48)break a;if((a[c[f>>2]>>0]|0)>57)break a;c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+1;while(1){if(!((a[c[f>>2]>>0]|0)>=48?(a[c[f>>2]>>0]|0)<=57:0))g=7;do if((g|0)==7){g=0;if((a[c[f>>2]>>0]|0)>=97?(a[c[f>>2]>>0]|0)<=102:0)break;if((a[c[f>>2]>>0]|0)<65)break a;if((a[c[f>>2]>>0]|0)>70)break a}while(0);c[f>>2]=(c[f>>2]|0)+1}}else while(1){if(!((a[c[f>>2]>>0]|0)>=97?(a[c[f>>2]>>0]|0)<=122:0)){if((a[c[f>>2]>>0]|0)<65)break a;if((a[c[f>>2]>>0]|0)>90)break a}c[f>>2]=(c[f>>2]|0)+1}while(0);if((a[c[f>>2]>>0]|0)==59){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}return 0}function bK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}else{c[f>>2]=cK(c[e>>2]|0)|0;$4(c[f>>2]|0,0,c[e>>2]|0)|0;c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function cK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=N4(c[e>>2]|0)|0;if(!(c[f>>2]|0))Y2(c[24742]|0,149343,b)|0;c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function dK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=Q4(c[h>>2]|0,_(c[j>>2]|0,c[k>>2]|0)|0)|0;if((c[m>>2]|0)==0&(c[j>>2]|0)!=0){Y2(c[24742]|0,149343,f)|0;c[g>>2]=c[m>>2];n=c[g>>2]|0;i=f;return n|0}if((c[l>>2]|0)>>>0<(c[j>>2]|0)>>>0){h=(c[m>>2]|0)+(_(c[l>>2]|0,c[k>>2]|0)|0)|0;$4(h|0,0,_((c[j>>2]|0)-(c[l>>2]|0)|0,c[k>>2]|0)|0)|0}c[g>>2]=c[m>>2];n=c[g>>2]|0;i=f;return n|0}function eK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Q4(c[e>>2]|0,c[f>>2]|0)|0;if(!((c[g>>2]|0)==0&(c[f>>2]|0)!=0)){h=c[g>>2]|0;i=d;return h|0}Y2(c[24742]|0,149343,d)|0;h=c[g>>2]|0;i=d;return h|0}function fK(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0;j=i;i=i+64|0;k=j+32|0;l=j+24|0;m=j;p=4;q=N4(40)|0;c[q>>2]=0;r=j+60|0;s=j+56|0;if(a[138998]|0){n=0;wa(59,b|0,r|0,s|0);t=n;n=0;if((t|0)!=0&(o|0)!=0){u=Y4(c[t>>2]|0,q|0,p|0)|0;if(!u)Pa(t|0,o|0);C=o}else u=-1;if((u|0)!=1){u=c[24742]|0;t=c[r>>2]|0;r=c[s>>2]|0;n=0;c[m>>2]=139938;c[m+4>>2]=t;c[m+8>>2]=r;c[m+12>>2]=f;c[m+16>>2]=e;ka(36,u|0,139956,m|0)|0;m=n;n=0;if((m|0)!=0&(o|0)!=0){v=Y4(c[m>>2]|0,q|0,p|0)|0;if(!v)Pa(m|0,o|0);C=o}else v=-1;if((v|0)!=1){n=0;xa(1);v=n;n=0;if((v|0)!=0&(o|0)!=0){w=Y4(c[v>>2]|0,q|0,p|0)|0;if(!w)Pa(v|0,o|0);C=o}else w=-1;if((w|0)!=1)x=6;else{y=C;z=0}}else{y=C;z=0}}else{y=C;z=0}}else x=6;do if((x|0)==6){n=0;w=ia(27,b|0)|0;v=n;n=0;if((v|0)!=0&(o|0)!=0){A=Y4(c[v>>2]|0,q|0,p|0)|0;if(!A)Pa(v|0,o|0);C=o}else A=-1;if((A|0)!=1){if(!w){n=0;xa(2);w=n;n=0;if((w|0)!=0&(o|0)!=0){B=Y4(c[w>>2]|0,q|0,p|0)|0;if(!B)Pa(w|0,o|0);C=o}else B=-1;if((B|0)==1){y=C;z=0;break}}if((f|0)<=0){n=0;ea(101,b|0);w=n;n=0;if((w|0)!=0&(o|0)!=0){D=Y4(c[w>>2]|0,q|0,p|0)|0;if(!D)Pa(w|0,o|0);C=o}else D=-1;if((D|0)==1){y=C;z=0;break}E=0;O4(q|0);i=j;return E|0}if((g|0)>=0)c[13911]=g;else c[13911]=30;q=W4(55648,1,q|0,p|0)|0;p=C;n=0;w=n;n=0;if((w|0)!=0&(o|0)!=0){F=Y4(c[w>>2]|0,q|0,p|0)|0;if(!F)Pa(w|0,o|0);C=o}else F=-1;if((F|0)!=1){y=0;z=0}else{y=C;z=0}}else{y=C;z=0}}while(0);a:while(1){if(y){x=19;break}n=0;F=ta(2)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){G=Y4(c[g>>2]|0,q|0,p|0)|0;if(!G)Pa(g|0,o|0);C=o}else G=-1;if((G|0)==1){H=z;y=C;z=H;continue}if(F){n=0;ea(101,b|0);F=n;n=0;if((F|0)!=0&(o|0)!=0){I=Y4(c[F>>2]|0,q|0,p|0)|0;if(!I)Pa(F|0,o|0);C=o}else I=-1;if((I|0)==1){H=z;y=C;z=H;continue}else{x=23;break}}else J=z;while(1){n=0;F=ta(3)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){K=Y4(c[g>>2]|0,q|0,p|0)|0;if(!K)Pa(g|0,o|0);C=o}else K=-1;if((K|0)==1){y=C;z=J;continue a}if(!F){L=J;break}n=0;g=ia(28,F|0)|0;D=n;n=0;if((D|0)!=0&(o|0)!=0){M=Y4(c[D>>2]|0,q|0,p|0)|0;if(!M)Pa(D|0,o|0);C=o}else M=-1;if((M|0)==1){y=C;z=J;continue a}n=0;ga(20,F|0,g|0);g=n;n=0;if((g|0)!=0&(o|0)!=0){N=Y4(c[g>>2]|0,q|0,p|0)|0;if(!N)Pa(g|0,o|0);C=o}else N=-1;if((N|0)==1){y=C;z=J;continue a}g=J+1|0;if((d[138998]|0)!=0?((g|0)%100|0|0)==0:0){if(((g|0)%1e3|0|0)==100){n=0;ra(93,139938,c[24742]|0)|0;F=n;n=0;if((F|0)!=0&(o|0)!=0){O=Y4(c[F>>2]|0,q|0,p|0)|0;if(!O)Pa(F|0,o|0);C=o}else O=-1;if((O|0)==1){y=C;z=g;continue a}}F=c[24742]|0;n=0;c[l>>2]=g;ka(36,F|0,14e4,l|0)|0;F=n;n=0;if((F|0)!=0&(o|0)!=0){P=Y4(c[F>>2]|0,q|0,p|0)|0;if(!P)Pa(F|0,o|0);C=o}else P=-1;if((P|0)==1){y=C;z=g;continue a}if(!((g|0)%1e3|0)){n=0;ra(94,10,c[24742]|0)|0;F=n;n=0;if((F|0)!=0&(o|0)!=0){Q=Y4(c[F>>2]|0,q|0,p|0)|0;if(!Q)Pa(F|0,o|0);C=o}else Q=-1;if((Q|0)==1){y=C;z=g;continue a}}}if((g|0)>=(f|0)){L=g;break}else J=g}switch(e|0){case 1:{n=0;xa(3);g=n;n=0;if((g|0)!=0&(o|0)!=0){R=Y4(c[g>>2]|0,q|0,p|0)|0;if(!R)Pa(g|0,o|0);C=o}else R=-1;if((R|0)==1){y=C;z=L;continue a}break}case 2:{n=0;xa(4);g=n;n=0;if((g|0)!=0&(o|0)!=0){S=Y4(c[g>>2]|0,q|0,p|0)|0;if(!S)Pa(g|0,o|0);C=o}else S=-1;if((S|0)==1){y=C;z=L;continue a}break}default:{n=0;xa(5);g=n;n=0;if((g|0)!=0&(o|0)!=0){T=Y4(c[g>>2]|0,q|0,p|0)|0;if(!T)Pa(g|0,o|0);C=o}else T=-1;if((T|0)==1){y=C;z=L;continue a}n=0;ea(101,c[13951]|0);g=n;n=0;if((g|0)!=0&(o|0)!=0){U=Y4(c[g>>2]|0,q|0,p|0)|0;if(!U)Pa(g|0,o|0);C=o}else U=-1;if((U|0)==1){y=C;z=L;continue a}}}if(!(a[138998]|0))break;if((L|0)>=100){n=0;ra(94,10,c[24742]|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){V=Y4(c[g>>2]|0,q|0,p|0)|0;if(!V)Pa(g|0,o|0);C=o}else V=-1;if((V|0)==1){y=C;z=L;continue}}g=c[24742]|0;F=c[13952]|0;D=c[13953]|0;n=0;W=+sa(1);B=n;n=0;if((B|0)!=0&(o|0)!=0){X=Y4(c[B>>2]|0,q|0,p|0)|0;if(!X)Pa(B|0,o|0);C=o}else X=-1;if((X|0)==1){y=C;z=L;continue}n=0;c[k>>2]=139938;c[k+4>>2]=F;c[k+8>>2]=D;c[k+12>>2]=L;h[k+16>>3]=W;ka(36,g|0,140004,k|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){Y=Y4(c[g>>2]|0,q|0,p|0)|0;if(!Y)Pa(g|0,o|0);C=o}else Y=-1;if((Y|0)==1){y=C;z=L}else{x=52;break}}if((x|0)==19){E=2;O4(q|0);i=j;return E|0}else if((x|0)==23){E=1;O4(q|0);i=j;return E|0}E=0;O4(q|0);i=j;return E|0}function gK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=yA(c[f>>2]|0,140042)|0;c[j>>2]=d;if(d)c[k>>2]=u3(c[j>>2]|0)|0;else c[k>>2]=30;j=fK(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;i=e;return j|0}function hK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[k>>2]=0;c[m>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){o=c[k>>2]|0;if(!(c[m>>2]|0))break;c[k>>2]=o+1;c[j>>2]=0;while(1){f=c[(c[(c[(c[m>>2]|0)+8>>2]|0)+180>>2]|0)+(c[j>>2]<<2)>>2]|0;c[n>>2]=f;if(!f)break;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}c[m>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+164>>2]}c[c[g>>2]>>2]=o;c[c[h>>2]>>2]=c[l>>2];i=e;return}function iK(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=b;c[13951]=c[f>>2];c[13962]=0;c[13953]=0;c[13952]=0;c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[j>>2]|0))break;a[(c[(c[j>>2]|0)+8>>2]|0)+157>>0]=0;c[13952]=(c[13952]|0)+1;c[g>>2]=0;while(1){b=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+(c[g>>2]<<2)>>2]|0;c[k>>2]=b;if(!b)break;c[13953]=(c[13953]|0)+1;c[g>>2]=(c[g>>2]|0)+1}c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]}if(c[13963]|0)l=eK(c[13963]|0,c[13952]<<2)|0;else l=cK(c[13952]<<2)|0;c[13963]=l;c[13964]=0;if(c[13956]|0)m=eK(c[13956]|0,c[13952]<<2)|0;else m=cK(c[13952]<<2)|0;c[13956]=m;c[13957]=0;c[h>>2]=1;c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[j>>2]|0))break;c[(c[(c[j>>2]|0)+8>>2]|0)+292>>2]=0;c[g>>2]=0;while(1){f=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]|0)+(c[g>>2]<<2)>>2]|0;c[k>>2]=f;if(!f)break;f=(c[(c[j>>2]|0)+8>>2]|0)+292|0;c[f>>2]=(c[f>>2]|0)+1;c[(c[(c[k>>2]|0)+8>>2]|0)+160>>2]=0;c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]=-1;if((c[h>>2]|0)!=0?(f=c[k>>2]|0,m=c[k>>2]|0,((c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0)<(e[(c[(c[k>>2]|0)+8>>2]|0)+170>>1]|0|0)):0)c[h>>2]=0;c[g>>2]=(c[g>>2]|0)+1}m=bK((c[g>>2]|0)+1<<2)|0;c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]=m;c[(c[(c[j>>2]|0)+8>>2]|0)+264+4>>2]=0;c[g>>2]=0;while(1){m=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+(c[g>>2]<<2)>>2]|0;c[k>>2]=m;n=(c[g>>2]|0)+1|0;if(!m)break;c[g>>2]=n}m=bK(n<<2)|0;c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]=m;c[(c[(c[j>>2]|0)+8>>2]|0)+272+4>>2]=0;c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]}i=d;return c[h>>2]|0}function jK(){var a=0,b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;a=i;i=i+48|0;b=a+8|0;d=a;f=a+32|0;g=a+28|0;h=a+24|0;j=a+20|0;k=a+16|0;c[h>>2]=aO(c[13952]|0)|0;c[g>>2]=0;c[j>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[j>>2]|0))break;if(!(c[(c[(c[j>>2]|0)+8>>2]|0)+292>>2]|0))cO(c[h>>2]|0,c[j>>2]|0);c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]}a:while(1){l=dO(c[h>>2]|0)|0;c[j>>2]=l;if(!l)break;c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]=0;c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=0;while(1){l=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]|0)+(c[f>>2]<<2)>>2]|0;c[k>>2]=l;if(!l)break;l=c[k>>2]|0;if((c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)>((c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)+(e[(c[(c[k>>2]|0)+8>>2]|0)+170>>1]|0)|0))m=c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0;else{l=c[k>>2]|0;m=(c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)+(e[(c[(c[k>>2]|0)+8>>2]|0)+170>>1]|0)|0}c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]=m;c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=0;while(1){l=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+(c[f>>2]<<2)>>2]|0;c[k>>2]=l;if(!l)continue a;l=c[k>>2]|0;n=(c[(c[((c[c[k>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+292|0;l=(c[n>>2]|0)+-1|0;c[n>>2]=l;if((l|0)<=0){l=c[k>>2]|0;cO(c[h>>2]|0,c[((c[c[k>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)}c[f>>2]=(c[f>>2]|0)+1}}if((c[g>>2]|0)==(c[13952]|0)){o=c[h>>2]|0;bO(o);i=a;return}$z(1,140195,d)|0;c[j>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[j>>2]|0))break;if(c[(c[(c[j>>2]|0)+8>>2]|0)+292>>2]|0){d=wB(c[j>>2]|0)|0;g=c[(c[(c[j>>2]|0)+8>>2]|0)+292>>2]|0;c[b>>2]=d;c[b+4>>2]=g;$z(3,140217,b)|0}c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]}o=c[h>>2]|0;bO(o);i=a;return}function kK(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[d+4>>2]=b;c[e>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[e>>2]|0))break;if(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+272>>2]|0)O4(c[(c[(c[e>>2]|0)+8>>2]|0)+272>>2]|0);a[(c[(c[e>>2]|0)+8>>2]|0)+157>>0]=0;c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]}i=d;return}function lK(){var a=0,b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=i;i=i+32|0;b=a+20|0;d=a+16|0;f=a+12|0;g=a+8|0;h=a+4|0;j=a;if((c[13952]|0)<=1){c[b>>2]=0;k=c[b>>2]|0;i=a;return k|0}a:while(1){l=yK()|0;if((l|0)>=(c[13952]|0)){m=23;break}c[h>>2]=0;c[g>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;c[d>>2]=0;while(1){l=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)+(c[d>>2]<<2)>>2]|0;c[j>>2]=l;if(!l)break;do if(((c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]|0)>=0|0)==0?(zK(c[j>>2]|0)|0)!=0:0){if((c[h>>2]|0)!=0?(l=c[j>>2]|0,n=c[j>>2]|0,o=c[h>>2]|0,p=c[h>>2]|0,((c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[j>>2]|0)+8>>2]|0)+170>>1]|0)|0)>=((c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0)|0)):0)break;c[h>>2]=c[j>>2]}while(0);c[d>>2]=(c[d>>2]|0)+1}c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}if(!(c[h>>2]|0)){m=22;break}p=c[h>>2]|0;o=c[h>>2]|0;c[f>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0);if(!(c[f>>2]|0))continue;o=zK(c[h>>2]|0)|0;p=c[h>>2]|0;if((o|0)==(c[((c[c[h>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0))c[f>>2]=0-(c[f>>2]|0);c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[13964]|0))continue a;p=(c[(c[(c[13963]|0)+(c[d>>2]<<2)>>2]|0)+8>>2]|0)+232|0;c[p>>2]=(c[p>>2]|0)+(c[f>>2]|0);c[d>>2]=(c[d>>2]|0)+1}}if((m|0)==22){c[b>>2]=1;k=c[b>>2]|0;i=a;return k|0}else if((m|0)==23){AK();c[b>>2]=0;k=c[b>>2]|0;i=a;return k|0}return 0}function mK(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a=i;i=i+32|0;b=a+16|0;d=a+12|0;e=a+8|0;f=a+4|0;g=a;c[e>>2]=0;c[g>>2]=0;c[f>>2]=c[13962];while(1){if((c[13962]|0)>=(c[13957]|0))break;h=c[(c[13956]|0)+(c[13962]<<2)>>2]|0;c[d>>2]=h;if((c[(c[h+8>>2]|0)+160>>2]|0)<0){if(c[e>>2]|0){if((c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+160>>2]|0))c[e>>2]=c[d>>2]}else c[e>>2]=c[(c[13956]|0)+(c[13962]<<2)>>2];h=(c[g>>2]|0)+1|0;c[g>>2]=h;if((h|0)>=(c[13911]|0)){j=9;break}}c[13962]=(c[13962]|0)+1}if((j|0)==9){c[b>>2]=c[e>>2];k=c[b>>2]|0;i=a;return k|0}a:do if((c[f>>2]|0)>0){c[13962]=0;while(1){if((c[13962]|0)>=(c[f>>2]|0))break a;j=c[(c[13956]|0)+(c[13962]<<2)>>2]|0;c[d>>2]=j;if((c[(c[j+8>>2]|0)+160>>2]|0)<0){if(c[e>>2]|0){if((c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+160>>2]|0))c[e>>2]=c[d>>2]}else c[e>>2]=c[(c[13956]|0)+(c[13962]<<2)>>2];j=(c[g>>2]|0)+1|0;c[g>>2]=j;if((j|0)>=(c[13911]|0))break}c[13962]=(c[13962]|0)+1}c[b>>2]=c[e>>2];k=c[b>>2]|0;i=a;return k|0}while(0);c[b>>2]=c[e>>2];k=c[b>>2]|0;i=a;return k|0}function nK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;a=c[d>>2]|0;g=c[d>>2]|0;h=c[c[d>>2]>>2]&3;if((c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)){g=c[d>>2]|0;c[e>>2]=c[((h|0)==3?g:g+32|0)+28>>2];c[f>>2]=0}else{g=c[d>>2]|0;c[e>>2]=c[((h|0)==2?g:g+-32|0)+28>>2];c[f>>2]=1}c[13958]=0;c[13959]=2147483647;c[13960]=c[(c[(c[e>>2]|0)+8>>2]|0)+284>>2];c[13961]=c[(c[(c[e>>2]|0)+8>>2]|0)+288>>2];g=c[e>>2]|0;if(c[f>>2]|0){wK(g);j=c[13958]|0;i=b;return j|0}else{xK(g);j=c[13958]|0;i=b;return j|0}return 0}function oK(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;f=d;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;c[g>>2]=a;c[h>>2]=b;b=c[h>>2]|0;a=c[h>>2]|0;c[k>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0);do if((c[k>>2]|0)>0){a=c[g>>2]|0;b=c[g>>2]|0;c[m>>2]=(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+264+4>>2]|0)+(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+272+4>>2]|0);b=c[c[g>>2]>>2]&3;if((c[m>>2]|0)==1){a=c[g>>2]|0;sK(c[((b|0)==3?a:a+32|0)+28>>2]|0,c[k>>2]|0);break}a=c[g>>2]|0;n=c[g>>2]|0;c[m>>2]=(c[(c[(c[((b|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+264+4>>2]|0)+(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+272+4>>2]|0);n=c[c[g>>2]>>2]&3;if((c[m>>2]|0)==1){a=c[g>>2]|0;sK(c[((n|0)==2?a:a+-32|0)+28>>2]|0,0-(c[k>>2]|0)|0);break}a=c[g>>2]|0;b=c[g>>2]|0;o=c[c[g>>2]>>2]&3;if((c[(c[(c[((n|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)){b=c[g>>2]|0;sK(c[((o|0)==3?b:b+32|0)+28>>2]|0,c[k>>2]|0);break}else{b=c[g>>2]|0;sK(c[((o|0)==2?b:b+-32|0)+28>>2]|0,0-(c[k>>2]|0)|0);break}}while(0);c[j>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2];k=c[h>>2]|0;m=c[h>>2]|0;c[l>>2]=tK(c[((c[c[h>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0,c[((c[c[h>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0,c[j>>2]|0,1)|0;m=c[h>>2]|0;k=c[h>>2]|0;b=tK(c[((c[c[h>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0,c[((c[c[h>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0,c[j>>2]|0,0)|0;if((b|0)!=(c[l>>2]|0)){$z(1,140053,f)|0;Pa(55648,1)}else{c[(c[(c[h>>2]|0)+8>>2]|0)+160>>2]=0-(c[j>>2]|0);c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2]=0;uK(c[g>>2]|0,c[h>>2]|0);vK(c[l>>2]|0,c[(c[(c[l>>2]|0)+8>>2]|0)+280>>2]|0,c[(c[(c[l>>2]|0)+8>>2]|0)+284>>2]|0)|0;i=d;return}}function pK(){var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b=i;i=i+48|0;d=b+32|0;f=b+28|0;g=b+24|0;h=b+20|0;j=b+16|0;k=b+12|0;l=b+8|0;m=b+4|0;n=b;rK();c[l>>2]=bK((c[13955]|0)+1<<2)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>(c[13955]|0))break;c[(c[l>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}c[d>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[d>>2]|0))break;if(!(a[(c[(c[d>>2]|0)+8>>2]|0)+156>>0]|0)){o=(c[l>>2]|0)+(c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]<<2)|0;c[o>>2]=(c[o>>2]|0)+1}c[d>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+164>>2]}c[d>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[d>>2]|0))break;if(!(a[(c[(c[d>>2]|0)+8>>2]|0)+156>>0]|0)){c[n>>2]=0;c[m>>2]=0;c[h>>2]=0;c[j>>2]=c[13955];c[g>>2]=0;while(1){o=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0)+(c[g>>2]<<2)>>2]|0;c[f>>2]=o;if(!o)break;c[m>>2]=(c[m>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]|0);o=c[f>>2]|0;if((c[h>>2]|0)>((c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)+(e[(c[(c[f>>2]|0)+8>>2]|0)+170>>1]|0)|0))p=c[h>>2]|0;else{o=c[f>>2]|0;p=(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)+(e[(c[(c[f>>2]|0)+8>>2]|0)+170>>1]|0)|0}c[h>>2]=p;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){o=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)+(c[g>>2]<<2)>>2]|0;c[f>>2]=o;if(!o)break;c[n>>2]=(c[n>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]|0);o=c[f>>2]|0;if((c[j>>2]|0)<((c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[f>>2]|0)+8>>2]|0)+170>>1]|0)|0))q=c[j>>2]|0;else{o=c[f>>2]|0;q=(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[f>>2]|0)+8>>2]|0)+170>>1]|0)|0}c[j>>2]=q;c[g>>2]=(c[g>>2]|0)+1}if((c[h>>2]|0)<0)c[h>>2]=0;if((c[m>>2]|0)==(c[n>>2]|0)){c[k>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+1;while(1){if((c[g>>2]|0)>(c[j>>2]|0))break;if((c[(c[l>>2]|0)+(c[g>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[k>>2]<<2)>>2]|0))c[k>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+1}o=(c[l>>2]|0)+(c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]<<2)|0;c[o>>2]=(c[o>>2]|0)+-1;o=(c[l>>2]|0)+(c[k>>2]<<2)|0;c[o>>2]=(c[o>>2]|0)+1;c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]=c[k>>2]}if(c[(c[(c[d>>2]|0)+8>>2]|0)+264>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+264>>2]|0);if(c[(c[(c[d>>2]|0)+8>>2]|0)+272>>2]|0)O4(c[(c[(c[d>>2]|0)+8>>2]|0)+272>>2]|0);a[(c[(c[d>>2]|0)+8>>2]|0)+157>>0]=0}c[d>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+164>>2]}O4(c[l>>2]|0);i=b;return}function qK(){var a=0,b=0,d=0,f=0,g=0,h=0,j=0,k=0;a=i;i=i+16|0;b=a+12|0;d=a+8|0;f=a+4|0;g=a;c[b>>2]=0;while(1){if((c[b>>2]|0)>=(c[13957]|0))break;c[f>>2]=c[(c[13956]|0)+(c[b>>2]<<2)>>2];do if(((c[(c[(c[f>>2]|0)+8>>2]|0)+160>>2]|0)==0?(c[g>>2]=nK(c[f>>2]|0)|0,(c[g>>2]|0)!=0):0)?(h=c[g>>2]|0,j=c[g>>2]|0,c[d>>2]=(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[g>>2]|0)+8>>2]|0)+170>>1]|0),(c[d>>2]|0)>1):0){j=c[f>>2]|0;h=c[f>>2]|0;k=c[c[f>>2]>>2]&3;if((c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)){h=c[f>>2]|0;sK(c[((k|0)==3?h:h+32|0)+28>>2]|0,(c[d>>2]|0)/2|0);break}else{h=c[f>>2]|0;sK(c[((k|0)==2?h:h+-32|0)+28>>2]|0,(0-(c[d>>2]|0)|0)/2|0);break}}while(0);c[b>>2]=(c[b>>2]|0)+1}kK(c[13951]|0);i=a;return}function rK(){var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;c[13954]=2147483647;c[13955]=-2147483647;c[d>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[d>>2]|0))break;if(!(a[(c[(c[d>>2]|0)+8>>2]|0)+156>>0]|0)){if((c[13954]|0)<(c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]|0))e=c[13954]|0;else e=c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]|0;c[13954]=e;if((c[13955]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]|0))f=c[13955]|0;else f=c[(c[(c[d>>2]|0)+8>>2]|0)+232>>2]|0;c[13955]=f}c[d>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+164>>2]}if(!(c[13954]|0)){i=b;return}c[d>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){g=c[13954]|0;if(!(c[d>>2]|0))break;f=(c[(c[d>>2]|0)+8>>2]|0)+232|0;c[f>>2]=(c[f>>2]|0)-g;c[d>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+164>>2]}c[13955]=(c[13955]|0)-g;c[13954]=0;i=b;return}function sK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[e>>2]|0)+8>>2]|0)+232|0;c[b>>2]=(c[b>>2]|0)-(c[f>>2]|0);c[g>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+272>>2]|0)+(c[g>>2]<<2)>>2]|0;c[h>>2]=b;if(!b)break;if((c[h>>2]|0)!=(c[(c[(c[e>>2]|0)+8>>2]|0)+280>>2]|0)){b=c[h>>2]|0;sK(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[f>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0)+(c[g>>2]<<2)>>2]|0;c[h>>2]=b;if(!b)break;if((c[h>>2]|0)!=(c[(c[(c[e>>2]|0)+8>>2]|0)+280>>2]|0)){b=c[h>>2]|0;sK(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,c[f>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}i=d;return}function tK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;while(1){if((c[(c[(c[g>>2]|0)+8>>2]|0)+284>>2]|0)<=(c[(c[(c[h>>2]|0)+8>>2]|0)+288>>2]|0))n=(c[(c[(c[h>>2]|0)+8>>2]|0)+288>>2]|0)<=(c[(c[(c[g>>2]|0)+8>>2]|0)+288>>2]|0);else n=0;o=c[g>>2]|0;if(!(n^1))break;c[l>>2]=c[(c[o+8>>2]|0)+280>>2];e=c[l>>2]|0;d=c[k>>2]|0;if((c[g>>2]|0)==(c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0))c[m>>2]=d;else c[m>>2]=((d|0)!=0^1)&1;d=c[j>>2]|0;e=(c[(c[l>>2]|0)+8>>2]|0)+160|0;b=c[e>>2]|0;if(c[m>>2]|0)c[e>>2]=b+d;else c[e>>2]=b-d;d=c[l>>2]|0;b=c[l>>2]|0;e=c[c[l>>2]>>2]&3;if((c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)>(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)){b=c[l>>2]|0;c[g>>2]=c[((e|0)==3?b:b+32|0)+28>>2];continue}else{b=c[l>>2]|0;c[g>>2]=c[((e|0)==2?b:b+-32|0)+28>>2];continue}}i=f;return o|0}function uK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2];c[(c[13956]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]<<2)>>2]=c[f>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]=-1;b=c[e>>2]|0;c[j>>2]=c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];b=(c[(c[j>>2]|0)+8>>2]|0)+272+4|0;a=(c[b>>2]|0)+-1|0;c[b>>2]=a;c[g>>2]=a;c[h>>2]=0;while(1){if((c[h>>2]|0)>(c[g>>2]|0))break;if((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(c[h>>2]<<2)>>2]|0)==(c[e>>2]|0))break;c[h>>2]=(c[h>>2]|0)+1}c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(c[h>>2]<<2)>>2]=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(c[g>>2]<<2)>>2];c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(c[g>>2]<<2)>>2]=0;a=c[e>>2]|0;c[j>>2]=c[((c[c[e>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2];a=(c[(c[j>>2]|0)+8>>2]|0)+264+4|0;b=(c[a>>2]|0)+-1|0;c[a>>2]=b;c[g>>2]=b;c[h>>2]=0;while(1){if((c[h>>2]|0)>(c[g>>2]|0))break;if((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(c[h>>2]<<2)>>2]|0)==(c[e>>2]|0))break;c[h>>2]=(c[h>>2]|0)+1}c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(c[h>>2]<<2)>>2]=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(c[g>>2]<<2)>>2];c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(c[g>>2]<<2)>>2]=0;g=c[f>>2]|0;c[j>>2]=c[((c[c[f>>2]>>2]&3|0)==3?g:g+32|0)+28>>2];g=c[f>>2]|0;h=(c[(c[j>>2]|0)+8>>2]|0)+272+4|0;e=c[h>>2]|0;c[h>>2]=e+1;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(e<<2)>>2]=g;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+272>>2]|0)+(c[(c[(c[j>>2]|0)+8>>2]|0)+272+4>>2]<<2)>>2]=0;g=c[f>>2]|0;c[j>>2]=c[((c[c[f>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2];g=c[f>>2]|0;f=(c[(c[j>>2]|0)+8>>2]|0)+264+4|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(e<<2)>>2]=g;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+264>>2]|0)+(c[(c[(c[j>>2]|0)+8>>2]|0)+264+4>>2]<<2)>>2]=0;i=d;return}function vK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=c[h>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+280>>2]=c[g>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+284>>2]=c[h>>2];c[k>>2]=0;while(1){h=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+272>>2]|0)+(c[k>>2]<<2)>>2]|0;c[j>>2]=h;if(!h)break;if((c[j>>2]|0)!=(c[g>>2]|0)){h=c[j>>2]|0;c[l>>2]=vK(c[((c[c[j>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0,c[j>>2]|0,c[l>>2]|0)|0}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){h=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+264>>2]|0)+(c[k>>2]<<2)>>2]|0;c[j>>2]=h;if(!h)break;if((c[j>>2]|0)!=(c[g>>2]|0)){h=c[j>>2]|0;c[l>>2]=vK(c[((c[c[j>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0,c[j>>2]|0,c[l>>2]|0)|0}c[k>>2]=(c[k>>2]|0)+1}c[(c[(c[f>>2]|0)+8>>2]|0)+288>>2]=c[l>>2];i=e;return (c[l>>2]|0)+1|0}function wK(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[f>>2]=0;while(1){a=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)+(c[f>>2]<<2)>>2]|0;c[h>>2]=a;if(!a)break;do if(!((c[(c[(c[h>>2]|0)+8>>2]|0)+164>>2]|0)>=0|0)){a=c[h>>2]|0;if((c[13960]|0)<=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)?(a=c[h>>2]|0,(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<=(c[13961]|0)):0)break;a=c[h>>2]|0;j=c[h>>2]|0;c[g>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0);if((c[13958]|0)==0?1:(c[g>>2]|0)<(c[13959]|0)){c[13958]=c[h>>2];c[13959]=c[g>>2]}}else{j=c[h>>2]|0;if((c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[d>>2]|0)+8>>2]|0)+288>>2]|0)){j=c[h>>2]|0;wK(c[((c[c[h>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)}}while(0);c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=0;while(1){g=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+264>>2]|0)+(c[f>>2]<<2)>>2]|0;c[h>>2]=g;if(!((g|0)!=0?(c[13959]|0)>0:0))break;g=c[h>>2]|0;if((c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[d>>2]|0)+8>>2]|0)+288>>2]|0)){g=c[h>>2]|0;wK(c[((c[c[h>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)}c[f>>2]=(c[f>>2]|0)+1}i=b;return}function xK(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[f>>2]=0;while(1){a=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0)+(c[f>>2]<<2)>>2]|0;c[h>>2]=a;if(!a)break;do if(!((c[(c[(c[h>>2]|0)+8>>2]|0)+164>>2]|0)>=0|0)){a=c[h>>2]|0;if((c[13960]|0)<=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)?(a=c[h>>2]|0,(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<=(c[13961]|0)):0)break;a=c[h>>2]|0;j=c[h>>2]|0;c[g>>2]=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0);if((c[13958]|0)==0?1:(c[g>>2]|0)<(c[13959]|0)){c[13958]=c[h>>2];c[13959]=c[g>>2]}}else{j=c[h>>2]|0;if((c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[d>>2]|0)+8>>2]|0)+288>>2]|0)){j=c[h>>2]|0;xK(c[((c[c[h>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)}}while(0);c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=0;while(1){g=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+272>>2]|0)+(c[f>>2]<<2)>>2]|0;c[h>>2]=g;if(!((g|0)!=0?(c[13959]|0)>0:0))break;g=c[h>>2]|0;if((c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+288>>2]|0)<(c[(c[(c[d>>2]|0)+8>>2]|0)+288>>2]|0)){g=c[h>>2]|0;xK(c[((c[c[h>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)}c[f>>2]=(c[f>>2]|0)+1}i=b;return}function yK(){var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!(c[e>>2]|0))break;a[(c[(c[e>>2]|0)+8>>2]|0)+157>>0]=0;c[c[(c[(c[e>>2]|0)+8>>2]|0)+272>>2]>>2]=0;c[c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]>>2]=0;c[(c[(c[e>>2]|0)+8>>2]|0)+272+4>>2]=0;c[(c[(c[e>>2]|0)+8>>2]|0)+264+4>>2]=0;c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]}c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[13957]|0))break;c[(c[(c[(c[13956]|0)+(c[d>>2]<<2)>>2]|0)+8>>2]|0)+164>>2]=-1;c[d>>2]=(c[d>>2]|0)+1}c[13957]=0;c[13964]=0;c[e>>2]=c[(c[(c[13951]|0)+8>>2]|0)+192>>2];while(1){if(!((c[e>>2]|0)!=0?(c[13957]|0)==0:0))break;EK(c[e>>2]|0)|0;c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]}i=b;return c[13964]|0}function zK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;b=c[f>>2]|0;g=c[f>>2]|0;h=a[(c[(c[((c[c[f>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0;if(a[(c[(c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0){if(!(h<<24>>24)){b=c[f>>2]|0;c[e>>2]=c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];j=c[e>>2]|0;i=d;return j|0}}else if(h<<24>>24){h=c[f>>2]|0;c[e>>2]=c[((c[c[f>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2];j=c[e>>2]|0;i=d;return j|0}c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}function AK(){vK(c[(c[(c[13951]|0)+8>>2]|0)+192>>2]|0,0,1)|0;BK(c[(c[(c[13951]|0)+8>>2]|0)+192>>2]|0,0);return}function BK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+272>>2]|0)+(c[g>>2]<<2)>>2]|0;c[h>>2]=b;if(!b)break;if((c[h>>2]|0)!=(c[f>>2]|0)){b=c[h>>2]|0;BK(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[h>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0)+(c[g>>2]<<2)>>2]|0;c[h>>2]=b;if(!b)break;if((c[h>>2]|0)!=(c[f>>2]|0)){b=c[h>>2]|0;BK(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,c[h>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if(!(c[f>>2]|0)){i=d;return}CK(c[f>>2]|0);i=d;return}function CK(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;a=c[d>>2]|0;k=c[c[d>>2]>>2]&3;if((c[(c[(c[((c[c[d>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+280>>2]|0)==(c[d>>2]|0)){a=c[d>>2]|0;c[e>>2]=c[((k|0)==3?a:a+32|0)+28>>2];c[j>>2]=1}else{a=c[d>>2]|0;c[e>>2]=c[((k|0)==2?a:a+-32|0)+28>>2];c[j>>2]=-1}c[h>>2]=0;c[g>>2]=0;while(1){a=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a)break;a=DK(c[f>>2]|0,c[e>>2]|0,c[j>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+a;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){a=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]|0)+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a)break;a=DK(c[f>>2]|0,c[e>>2]|0,c[j>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+a;c[g>>2]=(c[g>>2]|0)+1}c[(c[(c[d>>2]|0)+8>>2]|0)+160>>2]=c[h>>2];i=b;return}function DK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=c[f>>2]|0;b=c[c[f>>2]>>2]&3;if((c[((c[c[f>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)==(c[g>>2]|0)){d=c[f>>2]|0;c[j>>2]=c[((b|0)==2?d:d+-32|0)+28>>2]}else{d=c[f>>2]|0;c[j>>2]=c[((b|0)==3?d:d+32|0)+28>>2]}if((c[(c[(c[g>>2]|0)+8>>2]|0)+284>>2]|0)<=(c[(c[(c[j>>2]|0)+8>>2]|0)+288>>2]|0)?(c[(c[(c[j>>2]|0)+8>>2]|0)+288>>2]|0)<=(c[(c[(c[g>>2]|0)+8>>2]|0)+288>>2]|0):0){c[m>>2]=0;if((c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)>=0)c[l>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+160>>2];else c[l>>2]=0;c[l>>2]=(c[l>>2]|0)-(c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]|0)}else{c[m>>2]=1;c[l>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+156>>2]}j=c[c[f>>2]>>2]&3;do if((c[h>>2]|0)>0){d=c[f>>2]|0;if((c[((j|0)==2?d:d+-32|0)+28>>2]|0)==(c[g>>2]|0)){c[k>>2]=1;break}else{c[k>>2]=-1;break}}else{d=c[f>>2]|0;if((c[((j|0)==3?d:d+32|0)+28>>2]|0)==(c[g>>2]|0)){c[k>>2]=1;break}else{c[k>>2]=-1;break}}while(0);if(c[m>>2]|0)c[k>>2]=0-(c[k>>2]|0);if((c[k>>2]|0)>=0){n=c[l>>2]|0;i=e;return n|0}c[l>>2]=0-(c[l>>2]|0);n=c[l>>2]|0;i=e;return n|0}function EK(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[g>>2]=b;c[h>>2]=0;while(1){b=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)+(c[h>>2]<<2)>>2]|0;c[j>>2]=b;if(!b)break;b=c[j>>2]|0;if((a[(c[(c[((c[c[j>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)==0?(b=c[j>>2]|0,k=c[j>>2]|0,((c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[j>>2]|0)+8>>2]|0)+170>>1]|0)|0)==0):0){FK(c[j>>2]|0);if((c[13957]|0)==((c[13952]|0)-1|0)){l=7;break}k=c[j>>2]|0;if(EK(c[((c[c[j>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)|0){l=7;break}}c[h>>2]=(c[h>>2]|0)+1}if((l|0)==7){c[f>>2]=1;m=c[f>>2]|0;i=d;return m|0}c[h>>2]=0;while(1){k=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(c[h>>2]<<2)>>2]|0;c[j>>2]=k;if(!k){l=17;break}k=c[j>>2]|0;if((a[(c[(c[((c[c[j>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)==0?(k=c[j>>2]|0,b=c[j>>2]|0,((c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(e[(c[(c[j>>2]|0)+8>>2]|0)+170>>1]|0)|0)==0):0){FK(c[j>>2]|0);if((c[13957]|0)==((c[13952]|0)-1|0)){l=15;break}b=c[j>>2]|0;if(EK(c[((c[c[j>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0){l=15;break}}c[h>>2]=(c[h>>2]|0)+1}if((l|0)==15){c[f>>2]=1;m=c[f>>2]|0;i=d;return m|0}else if((l|0)==17){c[f>>2]=0;m=c[f>>2]|0;i=d;return m|0}return 0}function FK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;c[e>>2]=b;if((c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]|0)>=0){$z(1,140092,d)|0;Pa(55648,1)}c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]=c[13957];b=c[e>>2]|0;g=c[13957]|0;c[13957]=g+1;c[(c[13956]|0)+(g<<2)>>2]=b;b=c[e>>2]|0;if(!(a[(c[(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)){b=c[e>>2]|0;g=c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0;b=c[13964]|0;c[13964]=b+1;c[(c[13963]|0)+(b<<2)>>2]=g}g=c[e>>2]|0;if(!(a[(c[(c[((c[c[e>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)){g=c[e>>2]|0;b=c[((c[c[e>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0;g=c[13964]|0;c[13964]=g+1;c[(c[13963]|0)+(g<<2)>>2]=b}b=c[e>>2]|0;c[f>>2]=c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];a[(c[(c[f>>2]|0)+8>>2]|0)+157>>0]=1;b=c[e>>2]|0;g=(c[(c[f>>2]|0)+8>>2]|0)+272+4|0;h=c[g>>2]|0;c[g>>2]=h+1;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+272>>2]|0)+(h<<2)>>2]=b;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+272>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+272+4>>2]<<2)>>2]=0;if(!(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+272+4>>2]|0)-1<<2)>>2]|0)){$z(1,140126,d+8|0)|0;Pa(55648,1)}b=c[e>>2]|0;c[f>>2]=c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];a[(c[(c[f>>2]|0)+8>>2]|0)+157>>0]=1;b=c[e>>2]|0;e=(c[(c[f>>2]|0)+8>>2]|0)+264+4|0;h=c[e>>2]|0;c[e>>2]=h+1;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+264>>2]|0)+(h<<2)>>2]=b;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+264>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+264+4>>2]<<2)>>2]=0;if(!(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+264+4>>2]|0)-1<<2)>>2]|0)){$z(1,140161,d+16|0)|0;Pa(55648,1)}else{i=d;return}}function GK(a){a=+a;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b;h[d>>3]=a;if(c[13802]|0){e=+h[4260]-+h[d>>3];i=b;return +e}else{e=+h[d>>3];i=b;return +e}return +(0.0)}function HK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=i;i=i+144|0;j=g+64|0;k=g+124|0;l=g+120|0;m=g+116|0;n=g+128|0;o=g+112|0;p=g+108|0;q=g+104|0;r=g+100|0;s=g+96|0;t=g+92|0;u=g+88|0;v=g+16|0;w=g;x=g+84|0;y=g+80|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;a[n>>0]=f;c[13965]=c[(c[(c[(c[l>>2]|0)+52>>2]|0)+8>>2]|0)+4>>2];KK(c[l>>2]|0);f=(c[(c[l>>2]|0)+8>>2]|0)+16+16|0;c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];LK(c[m>>2]|0,140225,+h[(c[k>>2]|0)+352>>3]);LK(c[m>>2]|0,140232,+h[w>>3]/72.0);LK(c[m>>2]|0,140232,+h[w+8>>3]/72.0);MK(10,c[m>>2]|0);c[t>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;if(!(a[(c[(c[t>>2]|0)+8>>2]|0)+118>>0]|0)){w=c[m>>2]|0;NK(w,140234,TD(wB(c[t>>2]|0)|0)|0);w=c[m>>2]|0;k=(c[(c[t>>2]|0)+8>>2]|0)+16|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];OK(w,j);w=c[t>>2]|0;if(a[(c[(c[(c[t>>2]|0)+8>>2]|0)+104>>2]|0)+82>>0]|0)c[x>>2]=TD(zA(w,c[13831]|0)|0)|0;else{k=qC(w)|0;c[x>>2]=PK(k,c[c[(c[(c[t>>2]|0)+8>>2]|0)+104>>2]>>2]|0)|0}LK(c[m>>2]|0,140232,+h[(c[(c[t>>2]|0)+8>>2]|0)+32>>3]);LK(c[m>>2]|0,140232,+h[(c[(c[t>>2]|0)+8>>2]|0)+40>>3]);NK(c[m>>2]|0,140232,c[x>>2]|0);k=c[m>>2]|0;NK(k,140232,iO(c[t>>2]|0,c[13834]|0,148629)|0);NK(c[m>>2]|0,140232,c[c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2]>>2]|0);k=c[m>>2]|0;NK(k,140232,iO(c[t>>2]|0,c[13817]|0,174917)|0);c[y>>2]=iO(c[t>>2]|0,c[13818]|0,178518)|0;if(!(a[c[y>>2]>>0]|0))c[y>>2]=iO(c[t>>2]|0,c[13817]|0,172403)|0;NK(c[m>>2]|0,140232,c[y>>2]|0);MK(10,c[m>>2]|0)}c[t>>2]=aC(c[l>>2]|0,c[t>>2]|0)|0}c[t>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;c[u>>2]=OA(c[l>>2]|0,c[t>>2]|0)|0;while(1){if(!(c[u>>2]|0))break;if(a[n>>0]|0){y=yA(c[u>>2]|0,149070)|0;c[r>>2]=y;c[r>>2]=(y|0)!=0?y:178518;y=yA(c[u>>2]|0,149061)|0;c[s>>2]=y;c[s>>2]=(y|0)!=0?y:178518}else{c[s>>2]=178518;c[r>>2]=178518}a:do if(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0){c[q>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;z=v;A=(c[c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[o>>2]|0)*48|0)|0;B=z+48|0;do{c[z>>2]=c[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));c[q>>2]=(c[q>>2]|0)+(c[v+4>>2]|0);c[o>>2]=(c[o>>2]|0)+1}NK(c[m>>2]|0,0,149079);y=c[u>>2]|0;QK(c[m>>2]|0,c[((c[c[u>>2]>>2]&3|0)==3?y:y+32|0)+28>>2]|0,c[r>>2]|0);y=c[u>>2]|0;QK(c[m>>2]|0,c[((c[c[u>>2]>>2]&3|0)==2?y:y+-32|0)+28>>2]|0,c[s>>2]|0);RK(c[m>>2]|0,140232,c[q>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break a;z=v;A=(c[c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[o>>2]|0)*48|0)|0;B=z+48|0;do{c[z>>2]=c[A>>2];z=z+4|0;A=A+4|0}while((z|0)<(B|0));c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[v+4>>2]|0))break;y=c[m>>2]|0;x=(c[v>>2]|0)+(c[p>>2]<<4)|0;c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[j+12>>2]=c[x+12>>2];OK(y,j);c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}}while(0);if(c[(c[(c[u>>2]|0)+8>>2]|0)+96>>2]|0){y=c[m>>2]|0;x=c[u>>2]|0;k=qC(c[((c[c[u>>2]>>2]&3|0)==3?x:x+32|0)+28>>2]|0)|0;NK(y,140232,PK(k,c[c[(c[(c[u>>2]|0)+8>>2]|0)+96>>2]>>2]|0)|0);k=c[m>>2]|0;y=(c[(c[(c[u>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;c[j>>2]=c[y>>2];c[j+4>>2]=c[y+4>>2];c[j+8>>2]=c[y+8>>2];c[j+12>>2]=c[y+12>>2];OK(k,j)}k=c[m>>2]|0;NK(k,140232,iO(c[u>>2]|0,c[13869]|0,148629)|0);k=c[m>>2]|0;NK(k,140232,iO(c[u>>2]|0,c[13853]|0,174917)|0);MK(10,c[m>>2]|0);c[u>>2]=QA(c[l>>2]|0,c[u>>2]|0)|0}c[t>>2]=aC(c[l>>2]|0,c[t>>2]|0)|0}SK(140240,c[m>>2]|0);i=g;return}function IK(b,f,g){b=b|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,S=0,T=0,U=0,V=0,W=0,X=0.0,Y=0.0,Z=0.0,_=0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0,la=0,ma=0,na=0;j=i;i=i+2384|0;k=j+224|0;l=j+208|0;m=j+192|0;n=j+176|0;o=j+160|0;p=j+144|0;q=j+128|0;r=j+112|0;s=j+96|0;t=j+80|0;u=j+72|0;v=j+64|0;w=j+48|0;x=j+40|0;y=j+16|0;z=j+332|0;A=j+328|0;B=j+324|0;C=j+320|0;D=j+316|0;E=j+312|0;F=j+308|0;G=j+304|0;H=j+1360|0;I=j+288|0;J=j+280|0;K=j+276|0;L=j;M=j+272|0;N=j+268|0;O=j+264|0;P=j+260|0;S=j+256|0;T=j+252|0;U=j+248|0;V=j+244|0;W=j+240|0;c[z>>2]=b;c[A>>2]=f;c[B>>2]=g;c[M>>2]=(e[(c[(c[z>>2]|0)+8>>2]|0)+178>>1]|0)>=3&1;KH(1);c[D>>2]=0;c[C>>2]=0;KK(c[z>>2]|0);dA(I,1024,j+336|0);HO(c[z>>2]|0,1,140246,178518)|0;HO(c[z>>2]|0,1,140250,178518)|0;c[13815]=HO(c[z>>2]|0,1,179125,178518)|0;c[13814]=HO(c[z>>2]|0,1,179057,178518)|0;HO(c[z>>2]|0,2,140246,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&16)HO(c[z>>2]|0,1,140256,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&1)HO(c[z>>2]|0,2,140260,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&32)HO(c[z>>2]|0,2,140256,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&2)HO(c[z>>2]|0,2,140263,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&4)HO(c[z>>2]|0,2,140271,178518)|0;if(d[(c[(c[z>>2]|0)+8>>2]|0)+113>>0]&8){c[O>>2]=HO(c[z>>2]|0,0,140260,178518)|0;c[P>>2]=HO(c[z>>2]|0,0,140279,178518)|0;c[S>>2]=HO(c[z>>2]|0,0,140286,178518)|0}c[N>>2]=HO(c[z>>2]|0,0,140294,178518)|0;c[J>>2]=$B(c[z>>2]|0)|0;while(1){if(!(c[J>>2]|0))break;X=+h[(c[(c[J>>2]|0)+8>>2]|0)+16>>3];g=(c[13802]|0)!=0;if(c[M>>2]|0){if(g)Y=+h[4260]-+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3];else Y=+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3];Z=+h[(c[(c[(c[J>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0;h[y>>3]=X;h[y+8>>3]=Y;h[y+16>>3]=Z;k3(H,140297,y)|0;gA(I,H)|0;c[T>>2]=3;while(1){if((c[T>>2]|0)>=(e[(c[(c[z>>2]|0)+8>>2]|0)+178>>1]|0))break;h[x>>3]=+h[(c[(c[(c[J>>2]|0)+8>>2]|0)+132>>2]|0)+(c[T>>2]<<3)>>3]*72.0;k3(H,140312,x)|0;gA(I,H)|0;c[T>>2]=(c[T>>2]|0)+1}f=c[J>>2]|0;if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;b=I+4|0;_=c[b>>2]|0;c[b>>2]=_+1;a[_>>0]=0;_=c[I>>2]|0;c[I+4>>2]=_;AA(f,140246,_)|0}else{if(g)$=+h[4260]-+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3];else $=+h[(c[(c[J>>2]|0)+8>>2]|0)+16+8>>3];h[w>>3]=X;h[w+8>>3]=$;k3(H,140318,w)|0;AA(c[J>>2]|0,140246,H)|0}h[v>>3]=+h[(c[(c[J>>2]|0)+8>>2]|0)+80>>3]/72.0;k3(H,140328,v)|0;BA(c[J>>2]|0,c[13814]|0,H)|0;h[u>>3]=(+h[(c[(c[J>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[J>>2]|0)+8>>2]|0)+96>>3])/72.0;k3(H,140328,u)|0;BA(c[J>>2]|0,c[13815]|0,H)|0;if((c[(c[(c[J>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[J>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0)!=0:0){_=(c[(c[(c[J>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;c[L>>2]=c[_>>2];c[L+4>>2]=c[_+4>>2];c[L+8>>2]=c[_+8>>2];c[L+12>>2]=c[_+12>>2];if(c[13802]|0)aa=+h[4260]-+h[L+8>>3];else aa=+h[L+8>>3];h[t>>3]=+h[L>>3];h[t+8>>3]=aa;k3(H,140318,t)|0;AA(c[J>>2]|0,140256,H)|0}if(J3(c[c[(c[(c[J>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143646)|0){if((c[13847]|0)!=0?((eM(c[J>>2]|0)|0)&255|0)!=0:0){c[U>>2]=c[(c[(c[J>>2]|0)+8>>2]|0)+12>>2];c[G>>2]=c[(c[U>>2]|0)+8>>2];if((c[G>>2]|0)<3){c[W>>2]=yA(c[J>>2]|0,140333)|0;if(c[W>>2]|0)c[G>>2]=u3(c[W>>2]|0)|0;else c[G>>2]=8;if((c[G>>2]|0)<3)c[G>>2]=8}c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[G>>2]|0))break;if((c[V>>2]|0)>0){if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;_=I+4|0;f=c[_>>2]|0;c[_>>2]=f+1;a[f>>0]=32}if((c[(c[U>>2]|0)+8>>2]|0)>=3){if(c[13802]|0)ba=+h[4261]-+h[(c[(c[U>>2]|0)+44>>2]|0)+(c[V>>2]<<4)+8>>3]/72.0;else ba=+h[(c[(c[U>>2]|0)+44>>2]|0)+(c[V>>2]<<4)+8>>3]/72.0;h[s>>3]=+h[(c[(c[U>>2]|0)+44>>2]|0)+(c[V>>2]<<4)>>3]/72.0;h[s+8>>3]=ba;k3(H,140346,s)|0}else{Z=+h[(c[(c[J>>2]|0)+8>>2]|0)+32>>3]/2.0*+Q(+(+(c[V>>2]|0)/+(c[G>>2]|0)*3.141592653589793*2.0));if(c[13802]|0)ca=+h[4261]-+h[(c[(c[J>>2]|0)+8>>2]|0)+40>>3]/2.0*+R(+(+(c[V>>2]|0)/+(c[G>>2]|0)*3.141592653589793*2.0));else ca=+h[(c[(c[J>>2]|0)+8>>2]|0)+40>>3]/2.0*+R(+(+(c[V>>2]|0)/+(c[G>>2]|0)*3.141592653589793*2.0));h[r>>3]=Z;h[r+8>>3]=ca;k3(H,140346,r)|0}gA(I,H)|0;c[V>>2]=(c[V>>2]|0)+1}g=c[J>>2]|0;f=c[13847]|0;if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;_=I+4|0;b=c[_>>2]|0;c[_>>2]=b+1;a[b>>0]=0;b=c[I>>2]|0;c[I+4>>2]=b;BA(g,f,b)|0}}else{TK(c[J>>2]|0,c[(c[(c[J>>2]|0)+8>>2]|0)+12>>2]|0,I);iA(I)|0;b=c[J>>2]|0;if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;f=I+4|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=0;g=c[I>>2]|0;c[I+4>>2]=g;AA(b,140250,g)|0}a:do if((c[13800]|0)>=1){c[K>>2]=OA(c[z>>2]|0,c[J>>2]|0)|0;while(1){if(!(c[K>>2]|0))break a;do if((a[(c[(c[K>>2]|0)+8>>2]|0)+112>>0]|0)!=6?(c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[(c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;if((c[E>>2]|0)>0){if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;g=I+4|0;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=59}if(c[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+8>>2]|0){c[D>>2]=1;if(c[13802]|0)da=+h[4260]-+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+16+8>>3];else da=+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+16+8>>3];h[q>>3]=+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+16>>3];h[q+8>>3]=da;k3(H,140356,q)|0;gA(I,H)|0}if(c[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+12>>2]|0){c[C>>2]=1;if(c[13802]|0)ea=+h[4260]-+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+32+8>>3];else ea=+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+32+8>>3];h[p>>3]=+h[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+32>>3];h[p+8>>3]=ea;k3(H,140369,p)|0;gA(I,H)|0}c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)+4>>2]|0))break;if((c[F>>2]|0)>0){if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;b=I+4|0;g=c[b>>2]|0;c[b>>2]=g+1;a[g>>0]=32}g=(c[(c[c[(c[(c[K>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[E>>2]|0)*48|0)>>2]|0)+(c[F>>2]<<4)|0;c[L>>2]=c[g>>2];c[L+4>>2]=c[g+4>>2];c[L+8>>2]=c[g+8>>2];c[L+12>>2]=c[g+12>>2];if(c[13802]|0)fa=+h[4260]-+h[L+8>>3];else fa=+h[L+8>>3];h[o>>3]=+h[L>>3];h[o+8>>3]=fa;k3(H,140318,o)|0;gA(I,H)|0;c[F>>2]=(c[F>>2]|0)+1}c[E>>2]=(c[E>>2]|0)+1}g=c[K>>2]|0;if((c[I+4>>2]|0)>>>0>=(c[I+8>>2]|0)>>>0)eA(I,1)|0;b=I+4|0;f=c[b>>2]|0;c[b>>2]=f+1;a[f>>0]=0;f=c[I>>2]|0;c[I+4>>2]=f;AA(g,140246,f)|0;if(c[(c[(c[K>>2]|0)+8>>2]|0)+96>>2]|0){f=(c[(c[(c[K>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;c[L>>2]=c[f>>2];c[L+4>>2]=c[f+4>>2];c[L+8>>2]=c[f+8>>2];c[L+12>>2]=c[f+12>>2];if(c[13802]|0)ga=+h[4260]-+h[L+8>>3];else ga=+h[L+8>>3];h[n>>3]=+h[L>>3];h[n+8>>3]=ga;k3(H,140318,n)|0;AA(c[K>>2]|0,140260,H)|0}do if(c[(c[(c[K>>2]|0)+8>>2]|0)+108>>2]|0){if(!(d[(c[(c[(c[K>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0))break;f=(c[(c[(c[K>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;c[L>>2]=c[f>>2];c[L+4>>2]=c[f+4>>2];c[L+8>>2]=c[f+8>>2];c[L+12>>2]=c[f+12>>2];if(c[13802]|0)ha=+h[4260]-+h[L+8>>3];else ha=+h[L+8>>3];h[m>>3]=+h[L>>3];h[m+8>>3]=ha;k3(H,140318,m)|0;AA(c[K>>2]|0,140256,H)|0}while(0);if(c[(c[(c[K>>2]|0)+8>>2]|0)+100>>2]|0){f=(c[(c[(c[K>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;c[L>>2]=c[f>>2];c[L+4>>2]=c[f+4>>2];c[L+8>>2]=c[f+8>>2];c[L+12>>2]=c[f+12>>2];if(c[13802]|0)ia=+h[4260]-+h[L+8>>3];else ia=+h[L+8>>3];h[l>>3]=+h[L>>3];h[l+8>>3]=ia;k3(H,140318,l)|0;AA(c[K>>2]|0,140263,H)|0}if(!(c[(c[(c[K>>2]|0)+8>>2]|0)+104>>2]|0))break;f=(c[(c[(c[K>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;c[L>>2]=c[f>>2];c[L+4>>2]=c[f+4>>2];c[L+8>>2]=c[f+8>>2];c[L+12>>2]=c[f+12>>2];if(c[13802]|0)ja=+h[4260]-+h[L+8>>3];else ja=+h[L+8>>3];h[k>>3]=+h[L>>3];h[k+8>>3]=ja;k3(H,140318,k)|0;AA(c[K>>2]|0,140271,H)|0}while(0);c[K>>2]=QA(c[z>>2]|0,c[K>>2]|0)|0}}while(0);c[J>>2]=aC(c[z>>2]|0,c[J>>2]|0)|0}UK(c[z>>2]|0,c[N>>2]|0,c[O>>2]|0,c[P>>2]|0,c[S>>2]|0);hA(I);if(!(e[(c[(c[z>>2]|0)+8>>2]|0)+136>>1]&1)){ka=c[D>>2]|0;la=c[A>>2]|0;c[la>>2]=ka;ma=c[C>>2]|0;na=c[B>>2]|0;c[na>>2]=ma;KH(0);i=j;return}GO(c[z>>2]|0);ka=c[D>>2]|0;la=c[A>>2]|0;c[la>>2]=ka;ma=c[C>>2]|0;na=c[B>>2]|0;c[na>>2]=ma;KH(0);i=j;return}function JK(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b+8|0;c[d>>2]=a;IK(c[d>>2]|0,b,b+4|0);i=b;return}function KK(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[13802]|0)){i=b;return}h[4260]=+h[(c[(c[d>>2]|0)+8>>2]|0)+16+16+8>>3]+ +h[(c[(c[d>>2]|0)+8>>2]|0)+16+8>>3];h[4261]=+h[4260]/72.0;i=b;return}function LK(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+1056|0;f=e+8|0;g=e+20|0;j=e+16|0;k=e;l=e+24|0;c[g>>2]=a;c[j>>2]=b;h[k>>3]=d;if(c[j>>2]|0)SK(c[j>>2]|0,c[g>>2]|0);h[f>>3]=+h[k>>3];k3(l,140328,f)|0;SK(l,c[g>>2]|0);i=e;return}function MK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[140428]=c[f>>2];Ob[c[13965]&127](c[g>>2]|0,140428)|0;i=e;return}function NK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[g>>2]|0)SK(c[g>>2]|0,c[f>>2]|0);SK(c[h>>2]|0,c[f>>2]|0);i=e;return}function OK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0;d=i;i=i+16|0;e=d;c[e>>2]=a;LK(c[e>>2]|0,140232,+h[b>>3]/72.0);a=c[e>>2]|0;if(c[13802]|0){f=+h[4260]-+h[b+8>>3];g=f/72.0;LK(a,140232,g);i=d;return}else{f=+h[b+8>>3];g=f/72.0;LK(a,140232,g);i=d;return}}function PK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=YC(c[e>>2]|0,c[f>>2]|0)|0;c[h>>2]=TD(c[g>>2]|0)|0;_C(c[e>>2]|0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function QK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;e=c[h>>2]|0;if(a[(c[(c[h>>2]|0)+8>>2]|0)+118>>0]|0){d=qC(e)|0;c[k>>2]=PK(d,(H3(wB(c[h>>2]|0)|0,58)|0)+1|0)|0}else c[k>>2]=TD(wB(e)|0)|0;NK(c[g>>2]|0,140232,c[k>>2]|0);if(!(c[j>>2]|0)){i=f;return}if(!(a[c[j>>2]>>0]|0)){i=f;return}k=c[g>>2]|0;NK(k,148898,TD(c[j>>2]|0)|0);i=f;return}function RK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+1040|0;f=e;g=e+12|0;h=e+8|0;j=e+4|0;k=e+16|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(c[h>>2]|0)SK(c[h>>2]|0,c[g>>2]|0);c[f>>2]=c[j>>2];k3(k,175023,f)|0;SK(k,c[g>>2]|0);i=e;return}function SK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Ob[c[13965]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return}function TK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0;e=i;i=i+1072|0;f=e;g=e+44|0;j=e+40|0;k=e+36|0;l=e+32|0;m=e+48|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;if(!(c[(c[j>>2]|0)+48>>2]|0)){if(c[13802]|0)n=+h[4260]-(+h[(c[j>>2]|0)+16+8>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]);else n=+h[(c[j>>2]|0)+16+8>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];o=+h[(c[j>>2]|0)+16+16>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];if(c[13802]|0)p=+h[4260]-(+h[(c[j>>2]|0)+16+16+8>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]);else p=+h[(c[j>>2]|0)+16+16+8>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];h[f>>3]=+h[(c[j>>2]|0)+16>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[f+8>>3]=n;h[f+16>>3]=o;h[f+24>>3]=p;k3(m,140407,f)|0;gA(c[k>>2]|0,m)|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+48>>2]|0))break;TK(c[g>>2]|0,c[(c[(c[j>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0,c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}i=e;return}function UK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0;j=i;i=i+1136|0;k=j+72|0;l=j+64|0;m=j+48|0;n=j+16|0;o=j+100|0;p=j+96|0;q=j+92|0;r=j+88|0;s=j+84|0;t=j+80|0;u=j+104|0;v=j;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;if(c[13802]|0)w=+h[4260]-+h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3];else w=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3];x=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+16>>3];if(c[13802]|0)y=+h[4260]-+h[(c[(c[o>>2]|0)+8>>2]|0)+16+16+8>>3];else y=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+16+8>>3];h[n>>3]=+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3];h[n+8>>3]=w;h[n+16>>3]=x;h[n+24>>3]=y;k3(u,140382,n)|0;BA(c[o>>2]|0,c[p>>2]|0,u)|0;if((c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(a[c[c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]>>2]>>0]|0)!=0:0){n=(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;c[v>>2]=c[n>>2];c[v+4>>2]=c[n+4>>2];c[v+8>>2]=c[n+8>>2];c[v+12>>2]=c[n+12>>2];if(c[13802]|0)z=+h[4260]-+h[v+8>>3];else z=+h[v+8>>3];h[m>>3]=+h[v>>3];h[m+8>>3]=z;k3(u,140318,m)|0;BA(c[o>>2]|0,c[q>>2]|0,u)|0;m=(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+24|0;c[v>>2]=c[m>>2];c[v+4>>2]=c[m+4>>2];c[v+8>>2]=c[m+8>>2];c[v+12>>2]=c[m+12>>2];h[l>>3]=+h[v>>3]/72.0;k3(u,140402,l)|0;BA(c[o>>2]|0,c[r>>2]|0,u)|0;h[k>>3]=+h[v+8>>3]/72.0;k3(u,140402,k)|0;BA(c[o>>2]|0,c[s>>2]|0,u)|0}c[t>>2]=1;while(1){if((c[t>>2]|0)>(c[(c[(c[o>>2]|0)+8>>2]|0)+180>>2]|0))break;UK(c[(c[(c[(c[o>>2]|0)+8>>2]|0)+184>>2]|0)+(c[t>>2]<<2)>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0);c[t>>2]=(c[t>>2]|0)+1}i=j;return}function VK(){return Nz(55864,c[12989]|0)|0}function WK(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jz(c[d>>2]|0)|0;i=b;return}function XK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d;c[f>>2]=a;a=c[c[f>>2]>>2]|0;g=c[f>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];b=fL(e)|0;Hb[a&63](g,b,1)|0;i=d;return}function YK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=c[h>>2];c[k+4>>2]=c[j>>2];j=c[c[g>>2]>>2]|0;h=c[g>>2]|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];k=fL(f)|0;Hb[j&63](h,k,1)|0;i=e;return}function ZK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;e=d+16|0;f=d;c[e>>2]=a;a=f+8|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];b=(Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,f,4)|0)!=0;i=d;return (b?1:0)|0}function _K(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j+8>>2]=c[g>>2];c[j+8+4>>2]=c[h>>2];h=(Hb[c[c[f>>2]>>2]&63](c[f>>2]|0,j,4)|0)!=0;i=e;return (h?1:0)|0}function $K(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Pz(c[d>>2]|0)|0;i=b;return a|0}function aL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[e>>2]=Pz(c[d>>2]|0)|0;c[f>>2]=bK(c[e>>2]<<3)|0;c[h>>2]=c[f>>2];c[g>>2]=Lz(c[d>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;d=c[h>>2]|0;c[h>>2]=d+8;e=(c[g>>2]|0)+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[g>>2]=c[c[g>>2]>>2]}i=b;return c[f>>2]|0}function bL(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a;c[b>>2]=cK(40)|0;d=c[b>>2]|0;e=55900;f=d+36|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));c[(c[b>>2]|0)+36>>2]=0;e=Nz(c[b>>2]|0,c[12989]|0)|0;i=a;return e|0}function cL(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Hb[c[c[d>>2]>>2]&63](c[d>>2]|0,0,64)|0;i=b;return}function dL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+4>>2];Jz(c[d>>2]|0)|0;c[f>>2]=c[(c[e>>2]|0)+36>>2];while(1){if(!(c[f>>2]|0))break;c[g>>2]=c[c[f>>2]>>2];O4(c[f>>2]|0);c[f>>2]=c[g>>2]}O4(c[e>>2]|0);i=b;return}function eL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+48|0;g=f+36|0;h=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m+8>>2]=c[h>>2];c[m+8+4>>2]=c[j>>2];c[m+16>>2]=c[k>>2];c[l>>2]=Hb[c[c[g>>2]>>2]&63](c[g>>2]|0,m,1)|0;i=f;return c[(c[l>>2]|0)+16>>2]|0}function fL(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=bK(16)|0;e=(c[d>>2]|0)+8|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];i=b;return c[d>>2]|0}function gL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[e+12>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[g>>2]|0)+36>>2]|0){c[h>>2]=c[(c[g>>2]|0)+36>>2];c[(c[g>>2]|0)+36>>2]=c[c[h>>2]>>2]}else c[h>>2]=cK(20)|0;g=(c[h>>2]|0)+8|0;d=(c[f>>2]|0)+8|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[(c[h>>2]|0)+16>>2]=c[(c[f>>2]|0)+16>>2];i=e;return c[h>>2]|0}function hL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=d;c[c[f>>2]>>2]=c[(c[g>>2]|0)+36>>2];c[(c[g>>2]|0)+36>>2]=c[f>>2];i=e;return}function iL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;do if((c[c[h>>2]>>2]|0)<=(c[c[j>>2]>>2]|0)){if((c[c[h>>2]>>2]|0)<(c[c[j>>2]>>2]|0)){c[g>>2]=-1;break}if((c[(c[h>>2]|0)+4>>2]|0)>(c[(c[j>>2]|0)+4>>2]|0)){c[g>>2]=1;break}if((c[(c[h>>2]|0)+4>>2]|0)<(c[(c[j>>2]|0)+4>>2]|0)){c[g>>2]=-1;break}else{c[g>>2]=0;break}}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function jL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function kL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;d=i;i=i+240|0;e=d+208|0;f=d+232|0;g=d+228|0;j=d+224|0;k=d+176|0;l=d+144|0;m=d+128|0;n=d+112|0;o=d+96|0;p=d+80|0;q=d+64|0;r=d+48|0;s=d+32|0;t=d+16|0;u=d;c[f>>2]=a;c[g>>2]=b;b=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];v=+h[k>>3];if((c[g>>2]|0)==1|(c[g>>2]|0)==2){oL(m,v,+h[k+16+8>>3]);c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];pL(n,e);c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2];n=l+16|0;oL(o,+h[k+16>>3],+h[k+8>>3]);c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];pL(p,e);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2]}else{oL(q,v,+h[k+8>>3]);c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];pL(r,e);c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];r=l+16|0;oL(s,+h[k+16>>3],+h[k+16+8>>3]);c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];pL(t,e);c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2]}t=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[t>>2]=c[l>>2];c[t+4>>2]=c[l+4>>2];c[t+8>>2]=c[l+8>>2];c[t+12>>2]=c[l+12>>2];c[t+16>>2]=c[l+16>>2];c[t+20>>2]=c[l+20>>2];c[t+24>>2]=c[l+24>>2];c[t+28>>2]=c[l+28>>2];if(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0){l=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;t=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];pL(u,e);c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[l+12>>2]=c[u+12>>2]}c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;kL(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0,c[g>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=d;return}function lL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0;e=i;i=i+1200|0;f=e+152|0;g=e+104|0;j=e+72|0;k=e+172|0;l=e+168|0;m=e+64|0;n=e+48|0;o=e+32|0;p=e+16|0;q=e;r=e+176|0;c[k>>2]=b;c[l>>2]=d;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[13984]=c[(c[(c[k>>2]|0)+8>>2]|0)+116>>2]&3;a[140430]=c[(c[(c[k>>2]|0)+8>>2]|0)+116>>2]&1;d=c[k>>2]|0;if(a[140430]|0)qL(d);else mL(d);rL(c[k>>2]|0);do if((c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(a[(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0)==0:0){d=(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)+24|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];h[n>>3]=+h[n>>3]+16.0;d=n+8|0;h[d>>3]=+h[d>>3]+8.0;d=(a[(c[(c[k>>2]|0)+8>>2]|0)+275>>0]&1|0)!=0;if(a[140430]|0){s=+h[n+8>>3];b=(c[(c[k>>2]|0)+8>>2]|0)+16|0;if(d){t=b+16|0;h[t>>3]=+h[t>>3]+s}else h[b>>3]=+h[b>>3]-s;if(!(+h[n>>3]>+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3]))break;h[m>>3]=+h[n>>3]-(+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3]);h[m>>3]=+h[m>>3]/2.0;b=(c[(c[k>>2]|0)+8>>2]|0)+16+8|0;h[b>>3]=+h[b>>3]-+h[m>>3];b=(c[(c[k>>2]|0)+8>>2]|0)+16+16+8|0;h[b>>3]=+h[b>>3]+ +h[m>>3];break}b=(c[13984]|0)==0;s=+h[n+8>>3];t=(c[(c[k>>2]|0)+8>>2]|0)+16|0;do if(d)if(b){u=t+16+8|0;h[u>>3]=+h[u>>3]+s;break}else{u=t+8|0;h[u>>3]=+h[u>>3]-s;break}else if(b){u=t+8|0;h[u>>3]=+h[u>>3]-s;break}else{u=t+16+8|0;h[u>>3]=+h[u>>3]+s;break}while(0);if(+h[n>>3]>+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3]){h[m>>3]=+h[n>>3]-(+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3]);h[m>>3]=+h[m>>3]/2.0;t=(c[(c[k>>2]|0)+8>>2]|0)+16|0;h[t>>3]=+h[t>>3]-+h[m>>3];t=(c[(c[k>>2]|0)+8>>2]|0)+16+16|0;h[t>>3]=+h[t>>3]+ +h[m>>3]}}while(0);if(c[l>>2]|0){switch(c[13984]|0){case 0:{l=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[8524]=c[l>>2];c[8525]=c[l+4>>2];c[8526]=c[l+8>>2];c[8527]=c[l+12>>2];break}case 1:{oL(o,-+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16+8>>3],+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3]);c[8524]=c[o>>2];c[8525]=c[o+4>>2];c[8526]=c[o+8>>2];c[8527]=c[o+12>>2];break}case 2:{oL(p,+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3],-+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16+8>>3]);c[8524]=c[p>>2];c[8525]=c[p+4>>2];c[8526]=c[p+8>>2];c[8527]=c[p+12>>2];break}case 3:{oL(q,+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3],+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3]);c[8524]=c[q>>2];c[8525]=c[q+4>>2];c[8526]=c[q+8>>2];c[8527]=c[q+12>>2];break}default:{}}sL(c[k>>2]|0)}if((c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(a[(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0)==0:0){q=c[k>>2]|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];tL(q,f)}if(!(c[13796]|0)){i=e;return}if(a[140430]|0){s=+h[4263];v=+h[4262];w=+h[4263];h[j>>3]=+h[4262];h[j+8>>3]=s;h[j+16>>3]=v;h[j+24>>3]=w;k3(r,140431,j)|0}else{w=+h[4262];v=+h[4263];s=+h[4262];x=-+h[4262];y=-+h[4263];h[g>>3]=+h[4263];h[g+8>>3]=w;h[g+16>>3]=v;h[g+24>>3]=s;h[g+32>>3]=x;h[g+40>>3]=y;k3(r,140646,g)|0}g=M3(r)|0;c[c[13796]>>2]=g;i=e;return}function mL(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+16|0;j=d;c[e>>2]=b;b=c[e>>2]|0;if(((b|0)!=(rC(c[e>>2]|0)|0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)?(a[(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0)==0:0){b=(c[(c[e>>2]|0)+8>>2]|0)+48|0;if(a[(c[(c[e>>2]|0)+8>>2]|0)+275>>0]&1){k=b+32|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];h[g+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[j+8>>3]/2.0}else{c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];h[g+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]+ +h[j+8>>3]/2.0}b=c[(c[e>>2]|0)+8>>2]|0;do if(!(a[(c[(c[e>>2]|0)+8>>2]|0)+275>>0]&4)){l=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3];if(a[b+275>>0]&2){h[g>>3]=l+ +h[j>>3]/2.0;break}else{h[g>>3]=(l+ +h[(c[(c[e>>2]|0)+8>>2]|0)+16+16>>3])/2.0;break}}else h[g>>3]=+h[b+16+16>>3]-+h[j>>3]/2.0;while(0);j=(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];a[(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]=1}c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;mL(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function nL(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;lL(c[d>>2]|0,1);i=b;return}function oL(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function pL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d;g=(c[13984]|0)*90|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];FJ(f,e,g);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];h[b>>3]=+h[b>>3]-+h[4262];f=b+8|0;h[f>>3]=+h[f>>3]-+h[4263];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=d;return}function qL(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+16|0;j=d;c[e>>2]=b;b=c[e>>2]|0;if(((b|0)!=(rC(c[e>>2]|0)|0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)?(a[(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0)==0:0){b=(c[(c[e>>2]|0)+8>>2]|0)+48|0;if(a[(c[(c[e>>2]|0)+8>>2]|0)+275>>0]&1){k=b+16|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+16>>3]-+h[j>>3]/2.0}else{k=b+48|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]+ +h[j>>3]/2.0}k=c[(c[e>>2]|0)+8>>2]|0;do if(!(a[(c[(c[e>>2]|0)+8>>2]|0)+275>>0]&4)){b=(c[(c[e>>2]|0)+8>>2]|0)+16|0;if(a[k+275>>0]&2){h[g+8>>3]=+h[b+16+8>>3]-+h[j+8>>3]/2.0;break}else{h[g+8>>3]=(+h[b+8>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+16+16+8>>3])/2.0;break}}else h[g+8>>3]=+h[k+16+8>>3]+ +h[j+8>>3]/2.0;while(0);j=(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];a[(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]=1}c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;qL(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function rL(b){b=b|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;f=i;i=i+640|0;g=f+520|0;h=f+512|0;j=f+504|0;k=f+496|0;l=f+488|0;m=f+480|0;n=f+472|0;o=f+628|0;p=f+624|0;q=f+620|0;r=f+616|0;s=f+612|0;t=f+608|0;u=f+604|0;v=f+600|0;w=f+596|0;x=f+592|0;y=f+588|0;z=f+440|0;A=f+424|0;B=f+584|0;C=f+384|0;D=f+580|0;E=f+576|0;F=f+572|0;G=f+568|0;H=f+564|0;I=f+560|0;J=f+368|0;K=f+352|0;L=f+320|0;M=f+288|0;N=f+256|0;O=f+240|0;P=f+208|0;Q=f+192|0;R=f+160|0;S=f+144|0;T=f+112|0;U=f+96|0;V=f+56|0;W=f+16|0;X=f;c[o>>2]=b;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[I>>2]=e[(c[(c[o>>2]|0)+8>>2]|0)+136>>1]&14;if(((((d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&16|0)==0?(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&32|0)==0:0)?(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&4|0)==0:0)?(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&2|0)==0:0)?((c[13801]|0)!=0?1:(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&1|0)==0):0){i=f;return}c[p>>2]=$B(c[o>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;do if(c[(c[(c[p>>2]|0)+8>>2]|0)+108>>2]|0)if(a[(c[(c[(c[p>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0){c[x>>2]=(c[x>>2]|0)+1;break}else{c[v>>2]=(c[v>>2]|0)+1;break}while(0);c[q>>2]=OA(c[o>>2]|0,c[p>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;do if(c[(c[(c[q>>2]|0)+8>>2]|0)+108>>2]|0){if(a[(c[(c[(c[q>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0){c[x>>2]=(c[x>>2]|0)+1;break}if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)c[w>>2]=(c[w>>2]|0)+1}while(0);do if(c[(c[(c[q>>2]|0)+8>>2]|0)+100>>2]|0){if(a[(c[(c[(c[q>>2]|0)+8>>2]|0)+100>>2]|0)+81>>0]|0){c[x>>2]=(c[x>>2]|0)+1;break}if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)c[w>>2]=(c[w>>2]|0)+1}while(0);do if(c[(c[(c[q>>2]|0)+8>>2]|0)+104>>2]|0){if(a[(c[(c[(c[q>>2]|0)+8>>2]|0)+104>>2]|0)+81>>0]|0){c[x>>2]=(c[x>>2]|0)+1;break}if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)c[w>>2]=(c[w>>2]|0)+1}while(0);do if(c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]|0){if(a[(c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]|0){c[x>>2]=(c[x>>2]|0)+1;break}if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)c[w>>2]=(c[w>>2]|0)+1}while(0);c[q>>2]=QA(c[o>>2]|0,c[q>>2]|0)|0}c[p>>2]=aC(c[o>>2]|0,c[p>>2]|0)|0}if(d[(c[(c[o>>2]|0)+8>>2]|0)+113>>0]&8)c[y>>2]=vL(c[o>>2]|0)|0;c[u>>2]=(c[v>>2]|0)+(c[w>>2]|0);if(!(c[u>>2]|0)){i=f;return}v=kB(c[o>>2]|0)|0;c[t>>2]=v+(c[x>>2]|0)+(c[y>>2]|0)+(c[w>>2]|0);w=bK((c[t>>2]|0)*40|0)|0;c[D>>2]=w;c[F>>2]=w;w=bK((c[u>>2]|0)*40|0)|0;c[E>>2]=w;c[G>>2]=w;oL(J,2147483647.0,2147483647.0);c[z>>2]=c[J>>2];c[z+4>>2]=c[J+4>>2];c[z+8>>2]=c[J+8>>2];c[z+12>>2]=c[J+12>>2];J=z+16|0;oL(K,-2147483647.0,-2147483647.0);c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];c[p>>2]=$B(c[o>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;K=c[p>>2]|0;J=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];wL(L,K,J,g);c[z>>2]=c[L>>2];c[z+4>>2]=c[L+4>>2];c[z+8>>2]=c[L+8>>2];c[z+12>>2]=c[L+12>>2];c[z+16>>2]=c[L+16>>2];c[z+20>>2]=c[L+20>>2];c[z+24>>2]=c[L+24>>2];c[z+28>>2]=c[L+28>>2];J=c[(c[(c[p>>2]|0)+8>>2]|0)+108>>2]|0;c[B>>2]=J;do if(J)if(a[(c[B>>2]|0)+81>>0]|0){c[F>>2]=(c[F>>2]|0)+40;K=c[B>>2]|0;w=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];xL(M,K,w,g);c[z>>2]=c[M>>2];c[z+4>>2]=c[M+4>>2];c[z+8>>2]=c[M+8>>2];c[z+12>>2]=c[M+12>>2];c[z+16>>2]=c[M+16>>2];c[z+20>>2]=c[M+20>>2];c[z+24>>2]=c[M+24>>2];c[z+28>>2]=c[M+28>>2];break}else{w=c[B>>2]|0;K=c[F>>2]|0;x=c[G>>2]|0;c[g>>2]=c[A>>2];c[g+4>>2]=c[A+4>>2];c[g+8>>2]=c[A+8>>2];c[g+12>>2]=c[A+12>>2];yL(w,K,x,0,g);c[G>>2]=(c[G>>2]|0)+40;break}while(0);c[F>>2]=(c[F>>2]|0)+40;c[q>>2]=OA(c[o>>2]|0,c[p>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;J=c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]|0;c[B>>2]=J;a:do if(J){do if(a[(c[B>>2]|0)+81>>0]|0){x=c[B>>2]|0;K=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];xL(N,x,K,g);c[z>>2]=c[N>>2];c[z+4>>2]=c[N+4>>2];c[z+8>>2]=c[N+8>>2];c[z+12>>2]=c[N+12>>2];c[z+16>>2]=c[N+16>>2];c[z+20>>2]=c[N+20>>2];c[z+24>>2]=c[N+24>>2];c[z+28>>2]=c[N+28>>2]}else{if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){K=c[B>>2]|0;x=c[F>>2]|0;w=c[G>>2]|0;rN(O,c[o>>2]|0,c[q>>2]|0);c[g>>2]=c[O>>2];c[g+4>>2]=c[O+4>>2];c[g+8>>2]=c[O+8>>2];c[g+12>>2]=c[O+12>>2];yL(K,x,w,1,g);c[G>>2]=(c[G>>2]|0)+40;break}c[n>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+96>>2]>>2];$z(0,141458,n)|0;break a}while(0);c[F>>2]=(c[F>>2]|0)+40;Y=59}else Y=59;while(0);b:do if((Y|0)==59){Y=0;J=c[(c[(c[q>>2]|0)+8>>2]|0)+104>>2]|0;c[B>>2]=J;if(J){do if(a[(c[B>>2]|0)+81>>0]|0){J=c[B>>2]|0;w=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];xL(P,J,w,g);c[z>>2]=c[P>>2];c[z+4>>2]=c[P+4>>2];c[z+8>>2]=c[P+8>>2];c[z+12>>2]=c[P+12>>2];c[z+16>>2]=c[P+16>>2];c[z+20>>2]=c[P+20>>2];c[z+24>>2]=c[P+24>>2];c[z+28>>2]=c[P+28>>2]}else{if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){w=c[B>>2]|0;J=c[F>>2]|0;x=c[G>>2]|0;zL(Q,c[q>>2]|0);c[g>>2]=c[Q>>2];c[g+4>>2]=c[Q+4>>2];c[g+8>>2]=c[Q+8>>2];c[g+12>>2]=c[Q+12>>2];yL(w,J,x,1,g);c[G>>2]=(c[G>>2]|0)+40;break}c[m>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+104>>2]>>2];$z(0,141493,m)|0;break b}while(0);c[F>>2]=(c[F>>2]|0)+40}x=c[(c[(c[q>>2]|0)+8>>2]|0)+100>>2]|0;c[B>>2]=x;if(x){do if(a[(c[B>>2]|0)+81>>0]|0){x=c[B>>2]|0;J=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];xL(R,x,J,g);c[z>>2]=c[R>>2];c[z+4>>2]=c[R+4>>2];c[z+8>>2]=c[R+8>>2];c[z+12>>2]=c[R+12>>2];c[z+16>>2]=c[R+16>>2];c[z+20>>2]=c[R+20>>2];c[z+24>>2]=c[R+24>>2];c[z+28>>2]=c[R+28>>2]}else{if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){J=c[B>>2]|0;x=c[F>>2]|0;w=c[G>>2]|0;AL(S,c[q>>2]|0);c[g>>2]=c[S>>2];c[g+4>>2]=c[S+4>>2];c[g+8>>2]=c[S+8>>2];c[g+12>>2]=c[S+12>>2];yL(J,x,w,1,g);c[G>>2]=(c[G>>2]|0)+40;break}c[l>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+100>>2]>>2];$z(0,141533,l)|0;break b}while(0);c[F>>2]=(c[F>>2]|0)+40}w=c[(c[(c[q>>2]|0)+8>>2]|0)+108>>2]|0;c[B>>2]=w;if(w){do if(a[(c[B>>2]|0)+81>>0]|0){w=c[B>>2]|0;x=c[F>>2]|0;c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];c[g+16>>2]=c[z+16>>2];c[g+20>>2]=c[z+20>>2];c[g+24>>2]=c[z+24>>2];c[g+28>>2]=c[z+28>>2];xL(T,w,x,g);c[z>>2]=c[T>>2];c[z+4>>2]=c[T+4>>2];c[z+8>>2]=c[T+8>>2];c[z+12>>2]=c[T+12>>2];c[z+16>>2]=c[T+16>>2];c[z+20>>2]=c[T+20>>2];c[z+24>>2]=c[T+24>>2];c[z+28>>2]=c[T+28>>2]}else{if((c[I>>2]|0)!=0?(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){x=c[B>>2]|0;w=c[F>>2]|0;J=c[G>>2]|0;rN(U,c[o>>2]|0,c[q>>2]|0);c[g>>2]=c[U>>2];c[g+4>>2]=c[U+4>>2];c[g+8>>2]=c[U+8>>2];c[g+12>>2]=c[U+12>>2];yL(x,w,J,1,g);c[G>>2]=(c[G>>2]|0)+40;break}c[k>>2]=c[c[(c[(c[q>>2]|0)+8>>2]|0)+108>>2]>>2];$z(0,141573,k)|0;break b}while(0);c[F>>2]=(c[F>>2]|0)+40}}while(0);c[q>>2]=QA(c[o>>2]|0,c[q>>2]|0)|0}c[p>>2]=aC(c[o>>2]|0,c[p>>2]|0)|0}if(c[y>>2]|0){c[V>>2]=c[z>>2];c[V+4>>2]=c[z+4>>2];c[V+8>>2]=c[z+8>>2];c[V+12>>2]=c[z+12>>2];c[V+16>>2]=c[z+16>>2];c[V+20>>2]=c[z+20>>2];c[V+24>>2]=c[z+24>>2];c[V+28>>2]=c[z+28>>2];c[V+32>>2]=c[F>>2];F=c[o>>2]|0;y=g;p=V;q=y+40|0;do{c[y>>2]=c[p>>2];y=y+4|0;p=p+4|0}while((y|0)<(q|0));BL(W,F,g);y=V;p=W;q=y+40|0;do{c[y>>2]=c[p>>2];y=y+4|0;p=p+4|0}while((y|0)<(q|0));c[z>>2]=c[V>>2];c[z+4>>2]=c[V+4>>2];c[z+8>>2]=c[V+8>>2];c[z+12>>2]=c[V+12>>2];c[z+16>>2]=c[V+16>>2];c[z+20>>2]=c[V+20>>2];c[z+24>>2]=c[V+24>>2];c[z+28>>2]=c[V+28>>2]}c[H>>2]=qA(c[o>>2]|0,0,141609,0)|0;a[C+32>>0]=jO(c[o>>2]|0,c[H>>2]|0,1)|0;c[C>>2]=c[z>>2];c[C+4>>2]=c[z+4>>2];c[C+8>>2]=c[z+8>>2];c[C+12>>2]=c[z+12>>2];c[C+16>>2]=c[z+16>>2];c[C+20>>2]=c[z+20>>2];c[C+24>>2]=c[z+24>>2];c[C+28>>2]=c[z+28>>2];JS(c[D>>2]|0,c[t>>2]|0,c[E>>2]|0,c[u>>2]|0,C)|0;if(a[138998]|0)CL(c[D>>2]|0,c[t>>2]|0,c[E>>2]|0,c[u>>2]|0,C)|0;c[G>>2]=c[E>>2];c[r>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[u>>2]|0))break;if(a[(c[G>>2]|0)+36>>0]|0){c[r>>2]=(c[r>>2]|0)+1;c[B>>2]=c[(c[G>>2]|0)+32>>2];a[(c[B>>2]|0)+81>>0]=1;C=(c[B>>2]|0)+56|0;DL(X,c[G>>2]|0);c[C>>2]=c[X>>2];c[C+4>>2]=c[X+4>>2];c[C+8>>2]=c[X+8>>2];c[C+12>>2]=c[X+12>>2];AO(c[o>>2]|0,c[B>>2]|0)}c[G>>2]=(c[G>>2]|0)+40;c[s>>2]=(c[s>>2]|0)+1}if(!(a[138998]|0)){if((c[r>>2]|0)!=(c[u>>2]|0)){s=c[u>>2]|0;c[h>>2]=c[r>>2];c[h+4>>2]=s;$z(0,141654,h)|0}}else{h=c[24742]|0;s=c[u>>2]|0;c[j>>2]=c[r>>2];c[j+4>>2]=s;Y2(h,141621,j)|0}O4(c[D>>2]|0);O4(c[E>>2]|0);i=f;return}function sL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+64|0;d=b+32|0;e=b+60|0;f=b+56|0;g=b+52|0;j=b+48|0;k=b+16|0;l=b;c[e>>2]=a;c[j>>2]=(+h[4262]!=0.0?1:+h[4263]!=0.0)&1;if(!((c[j>>2]|0)!=0|(c[13984]|0)!=0)){i=b;return}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if(c[13984]|0)VO(c[f>>2]|0,0);j=(c[(c[f>>2]|0)+8>>2]|0)+16|0;a=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];pL(k,d);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];if(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0){j=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;a=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];pL(l,d);c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2]}a:do if((c[13800]|0)==1){c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break a;uL(c[g>>2]|0);c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}}while(0);c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}kL(c[e>>2]|0,c[(c[(c[e>>2]|0)+8>>2]|0)+116>>2]&3);i=b;return}function tL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0.0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=b;b=c[(c[f>>2]|0)+8>>2]|0;do if(!(a[(c[(c[f>>2]|0)+8>>2]|0)+275>>0]&4)){j=+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3];if(a[b+275>>0]&2){h[g>>3]=j+ +h[d>>3]/2.0;break}else{h[g>>3]=(j+ +h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3])/2.0;break}}else h[g>>3]=+h[b+16+16>>3]-+h[d>>3]/2.0;while(0);b=(c[(c[f>>2]|0)+8>>2]|0)+16|0;if(a[(c[(c[f>>2]|0)+8>>2]|0)+275>>0]&1)h[g+8>>3]=+h[b+16+8>>3]-+h[d+8>>3]/2.0;else h[g+8>>3]=+h[b+8>>3]+ +h[d+8>>3]/2.0;d=(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];a[(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]=1;i=e;return}function uL(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+208|0;f=e+168|0;g=e+80|0;h=e+192|0;j=e+188|0;k=e+184|0;l=e+120|0;m=e+104|0;n=e+88|0;o=e+64|0;p=e+48|0;q=e+32|0;r=e+16|0;s=e;c[h>>2]=b;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0)){if(d[139e3]|0){i=e;return}if((a[(c[(c[h>>2]|0)+8>>2]|0)+112>>0]|0)==6){i=e;return}b=c[h>>2]|0;t=wB(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;b=c[h>>2]|0;u=wB(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0;c[g>>2]=t;c[g+4>>2]=u;$z(1,141441,g)|0;i=e;return}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;g=l;u=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[j>>2]|0)*48|0)|0;t=g+48|0;do{c[g>>2]=c[u>>2];g=g+4|0;u=u+4|0}while((g|0)<(t|0));c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l+4>>2]|0))break;u=(c[l>>2]|0)+(c[k>>2]<<4)|0;g=(c[l>>2]|0)+(c[k>>2]<<4)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];pL(m,f);c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];c[u+8>>2]=c[m+8>>2];c[u+12>>2]=c[m+12>>2];c[k>>2]=(c[k>>2]|0)+1}if(c[l+8>>2]|0){u=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[j>>2]|0)*48|0)+16|0;g=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[j>>2]|0)*48|0)+16|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];pL(n,f);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[u+8>>2]=c[n+8>>2];c[u+12>>2]=c[n+12>>2]}if(c[l+12>>2]|0){u=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[j>>2]|0)*48|0)+32|0;g=(c[c[(c[(c[h>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+((c[j>>2]|0)*48|0)+32|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];pL(o,f);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2]}c[j>>2]=(c[j>>2]|0)+1}if(c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2]|0){j=(c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;o=(c[(c[(c[h>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];pL(p,f);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2]}if(c[(c[(c[h>>2]|0)+8>>2]|0)+108>>2]|0){p=(c[(c[(c[h>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;j=(c[(c[(c[h>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];pL(q,f);c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2]}if(c[(c[(c[h>>2]|0)+8>>2]|0)+100>>2]|0){q=(c[(c[(c[h>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;p=(c[(c[(c[h>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];pL(r,f);c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2]}if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]|0)){i=e;return}r=(c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;q=(c[(c[(c[h>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;c[f>>2]=c[q>>2];c[f+4>>2]=c[q+4>>2];c[f+8>>2]=c[q+8>>2];c[f+12>>2]=c[q+12>>2];pL(s,f);c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];i=e;return}function vL(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[g>>2]=0;a=c[e>>2]|0;if(((a|0)!=(rC(c[e>>2]|0)|0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)?(d[(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0|0)!=0:0)c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;a=vL(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>>2]=(c[f>>2]|0)+1}i=b;return c[g>>2]|0}function wL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0;g=i;i=i+48|0;j=g;k=g+36|0;l=g+32|0;c[k>>2]=d;c[l>>2]=e;e=c[(c[k>>2]|0)+8>>2]|0;if(a[140430]|0){h[(c[l>>2]|0)+16>>3]=+h[e+40>>3]*72.0;h[(c[l>>2]|0)+16+8>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+32>>3]*72.0}else{h[(c[l>>2]|0)+16>>3]=+h[e+32>>3]*72.0;h[(c[l>>2]|0)+16+8>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+40>>3]*72.0}e=c[l>>2]|0;d=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];d=c[l>>2]|0;h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+16>>3]/2.0;d=(c[l>>2]|0)+8|0;h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+16+8>>3]/2.0;d=c[l>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[j+16>>2]=c[f+16>>2];c[j+20>>2]=c[f+20>>2];c[j+24>>2]=c[f+24>>2];c[j+28>>2]=c[f+28>>2];EL(b,d,j);i=g;return}function xL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0;g=i;i=i+48|0;j=g;k=g+36|0;l=g+32|0;c[k>>2]=d;c[l>>2]=e;e=(c[k>>2]|0)+24|0;if(a[140430]|0){h[(c[l>>2]|0)+16>>3]=+h[e+8>>3];h[(c[l>>2]|0)+16+8>>3]=+h[(c[k>>2]|0)+24>>3]}else{h[(c[l>>2]|0)+16>>3]=+h[e>>3];h[(c[l>>2]|0)+16+8>>3]=+h[(c[k>>2]|0)+24+8>>3]}e=c[l>>2]|0;d=(c[k>>2]|0)+56|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];d=c[l>>2]|0;h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+16>>3]/2.0;d=(c[l>>2]|0)+8|0;h[d>>3]=+h[d>>3]-+h[(c[l>>2]|0)+16+8>>3]/2.0;d=c[l>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[j+16>>2]=c[f+16>>2];c[j+20>>2]=c[f+20>>2];c[j+24>>2]=c[f+24>>2];c[j+28>>2]=c[f+28>>2];EL(b,d,j);i=g;return}function yL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if(c[n>>2]|0){h[(c[l>>2]|0)+16>>3]=0.0;h[(c[l>>2]|0)+16+8>>3]=0.0;n=c[l>>2]|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2]}if(a[140430]|0){h[c[m>>2]>>3]=+h[(c[k>>2]|0)+24+8>>3];h[(c[m>>2]|0)+8>>3]=+h[(c[k>>2]|0)+24>>3]}else{g=c[m>>2]|0;n=(c[k>>2]|0)+24|0;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2]}c[(c[m>>2]|0)+32>>2]=c[k>>2];a[(c[m>>2]|0)+36>>0]=0;c[(c[l>>2]|0)+32>>2]=c[m>>2];i=j;return}function zL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d;c[e>>2]=b;b=tN(c[e>>2]|0)|0;c[f>>2]=b;if(!b){h[j+8>>3]=0.0;h[j>>3]=0.0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=d;return}c[g>>2]=c[c[f>>2]>>2];f=c[g>>2]|0;if(c[(c[g>>2]|0)+8>>2]|0){g=f+16|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=d;return}else{g=c[f>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];i=d;return}}function AL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d;c[e>>2]=b;b=tN(c[e>>2]|0)|0;c[f>>2]=b;if(!b){h[j+8>>3]=0.0;h[j>>3]=0.0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=d;return}c[g>>2]=(c[c[f>>2]>>2]|0)+(((c[(c[f>>2]|0)+4>>2]|0)-1|0)*48|0);f=c[g>>2]|0;if(c[(c[g>>2]|0)+12>>2]|0){j=f+32|0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=d;return}else{j=(c[c[g>>2]>>2]|0)+((c[f+4>>2]|0)-1<<4)|0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=d;return}}function BL(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+128|0;g=f+72|0;h=f+120|0;j=f+116|0;k=f+32|0;l=f+112|0;m=f;c[h>>2]=b;c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]|0))break;b=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0;n=g;o=e;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));BL(k,b,g);n=e;o=k;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));c[j>>2]=(c[j>>2]|0)+1}j=c[h>>2]|0;if((j|0)==(rC(c[h>>2]|0)|0)){n=a;o=e;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));i=f;return}if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2]|0)){n=a;o=e;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));i=f;return}if(!(d[(c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0)){n=a;o=e;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));i=f;return}c[l>>2]=c[e+32>>2];j=c[(c[(c[h>>2]|0)+8>>2]|0)+12>>2]|0;h=c[l>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];xL(m,j,h,g);c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];c[e+20>>2]=c[m+20>>2];c[e+24>>2]=c[m+24>>2];c[e+28>>2]=c[m+28>>2];m=e+32|0;c[m>>2]=(c[m>>2]|0)+40;n=a;o=e;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));i=f;return} +function _Y(b,e,f,g,h,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;m=i;i=i+176|0;n=m+160|0;o=m+156|0;p=m+152|0;q=m+148|0;r=m+144|0;s=m+140|0;t=m+136|0;u=m+132|0;v=m+168|0;w=m+128|0;x=m+124|0;y=m+120|0;z=m+116|0;A=m+112|0;B=m+167|0;C=m+108|0;D=m+104|0;E=m+100|0;F=m+96|0;G=m+166|0;H=m+92|0;I=m+165|0;J=m+88|0;K=m+84|0;L=m+80|0;M=m+76|0;N=m+72|0;O=m+68|0;P=m+64|0;Q=m+60|0;R=m+56|0;S=m+52|0;T=m+48|0;U=m+44|0;V=m+40|0;W=m+36|0;X=m+32|0;Y=m+28|0;Z=m+164|0;_=m+24|0;$=m+20|0;aa=m+16|0;ba=m+12|0;ca=m+8|0;da=m+4|0;ea=m;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[t>>2]=j;c[u>>2]=k;a[v>>0]=l;c[w>>2]=c[(c[o>>2]|0)+356>>2];l=c[o>>2]|0;if((c[p>>2]|0)==(c[(c[o>>2]|0)+144>>2]|0)){c[x>>2]=l+288;c[y>>2]=(c[o>>2]|0)+292}else{c[x>>2]=c[l+300>>2];c[y>>2]=(c[(c[o>>2]|0)+300>>2]|0)+4}a:while(1){a[B>>0]=1;c[c[x>>2]>>2]=c[q>>2];c[c[y>>2]>>2]=c[t>>2];b:do if((c[s>>2]|0)<=0){if((d[v>>0]|0)!=0&(c[s>>2]|0)!=0){fa=6;break a}switch(c[s>>2]|0){case 0:{fa=8;break a;break}case -1:{fa=9;break a;break}case -2:{fa=10;break a;break}case -4:{fa=12;break a;break}case -15:{c[s>>2]=0-(c[s>>2]|0);break b;break}default:{c[s>>2]=0-(c[s>>2]|0);c[t>>2]=c[r>>2];break b}}}while(0);c[A>>2]=Gb[c[(c[o>>2]|0)+256>>2]&63]((c[o>>2]|0)+256|0,c[s>>2]|0,c[q>>2]|0,c[t>>2]|0,c[p>>2]|0)|0;c:do switch(c[A>>2]|0){case 2:{fa=74;break a;break}case -1:{fa=231;break a;break}case 1:{c[C>>2]=$Y(c[o>>2]|0,0,c[q>>2]|0,c[t>>2]|0)|0;if(c[C>>2]|0){fa=24;break a}c[p>>2]=c[(c[o>>2]|0)+144>>2];a[B>>0]=0;break}case 4:{if(c[(c[o>>2]|0)+84>>2]|0){l=aZ((c[o>>2]|0)+416|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[o>>2]|0)+320>>2]=l;if(!(c[(c[o>>2]|0)+320>>2]|0)){fa=28;break a}c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2];c[(c[o>>2]|0)+328>>2]=0;a[B>>0]=0}c[(c[o>>2]|0)+324>>2]=0;break}case 7:{if(c[(c[o>>2]|0)+84>>2]|0){Ab[c[(c[o>>2]|0)+84>>2]&31](c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+320>>2]|0,c[(c[o>>2]|0)+324>>2]|0,c[(c[o>>2]|0)+328>>2]|0,1);c[(c[o>>2]|0)+320>>2]=0;KY((c[o>>2]|0)+416|0);a[B>>0]=0}break}case 57:{c[D>>2]=$Y(c[o>>2]|0,1,c[q>>2]|0,c[t>>2]|0)|0;if(c[D>>2]|0){fa=34;break a}c[p>>2]=c[(c[o>>2]|0)+144>>2];a[B>>0]=0;break}case 6:{a[(c[o>>2]|0)+489>>0]=0;l=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,112589,36)|0;c[(c[o>>2]|0)+316>>2]=l;if(!(c[(c[o>>2]|0)+316>>2]|0)){fa=37;break a}a[(c[w>>2]|0)+129>>0]=1;if(c[(c[o>>2]|0)+84>>2]|0){if(!(Sb[c[(c[p>>2]|0)+56>>2]&127](c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[x>>2]|0)|0)){fa=40;break a}c[E>>2]=aZ((c[o>>2]|0)+416|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[E>>2]|0)){fa=42;break a}cZ(c[E>>2]|0);c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2];c[(c[o>>2]|0)+328>>2]=c[E>>2];a[B>>0]=0;fa=46}else fa=44;break}case 14:{fa=44;break}case 8:{if(c[(c[o>>2]|0)+320>>2]|0){Ab[c[(c[o>>2]|0)+84>>2]&31](c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+320>>2]|0,c[(c[o>>2]|0)+324>>2]|0,c[(c[o>>2]|0)+328>>2]|0,0);KY((c[o>>2]|0)+416|0);a[B>>0]=0}if(!((c[(c[o>>2]|0)+324>>2]|0)==0?(d[(c[o>>2]|0)+489>>0]|0)==0:0)){a[G>>0]=a[(c[w>>2]|0)+129>>0]|0;a[(c[w>>2]|0)+129>>0]=1;do if((c[(c[o>>2]|0)+492>>2]|0)!=0?(c[(c[o>>2]|0)+112>>2]|0)!=0:0){c[H>>2]=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,112589,36)|0;if(!(c[H>>2]|0)){fa=59;break a}if(a[(c[o>>2]|0)+489>>0]|0)c[(c[H>>2]|0)+20>>2]=c[(c[o>>2]|0)+360>>2];a[(c[w>>2]|0)+131>>0]=0;if(!(Gb[c[(c[o>>2]|0)+112>>2]&63](c[(c[o>>2]|0)+116>>2]|0,0,c[(c[H>>2]|0)+20>>2]|0,c[(c[H>>2]|0)+16>>2]|0,c[(c[H>>2]|0)+24>>2]|0)|0)){fa=63;break a}if(!(a[(c[w>>2]|0)+131>>0]|0)){if(c[(c[o>>2]|0)+324>>2]|0)break;a[(c[w>>2]|0)+129>>0]=a[G>>0]|0;break}if(((a[(c[w>>2]|0)+130>>0]|0)==0?(c[(c[o>>2]|0)+108>>2]|0)!=0:0)?(Fb[c[(c[o>>2]|0)+108>>2]&63](c[(c[o>>2]|0)+4>>2]|0)|0)==0:0){fa=68;break a}}while(0);a[(c[o>>2]|0)+489>>0]=0}if(c[(c[o>>2]|0)+88>>2]|0){Bb[c[(c[o>>2]|0)+88>>2]&127](c[(c[o>>2]|0)+4>>2]|0);a[B>>0]=0}break}case 34:{l=eZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[o>>2]|0)+344>>2]=l;if(c[(c[o>>2]|0)+344>>2]|0)fa=101;else{fa=89;break a}break}case 22:{l=fZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[o>>2]|0)+348>>2]=l;if(!(c[(c[o>>2]|0)+348>>2]|0)){fa=91;break a}a[(c[o>>2]|0)+352>>0]=0;c[(c[o>>2]|0)+332>>2]=0;a[(c[o>>2]|0)+353>>0]=0;fa=101;break}case 23:{a[(c[o>>2]|0)+352>>0]=1;c[(c[o>>2]|0)+332>>2]=181442;fa=101;break}case 24:{a[(c[o>>2]|0)+353>>0]=1;c[(c[o>>2]|0)+332>>2]=181448;fa=101;break}case 25:{c[(c[o>>2]|0)+332>>2]=181451;fa=101;break}case 26:{c[(c[o>>2]|0)+332>>2]=181457;fa=101;break}case 27:{c[(c[o>>2]|0)+332>>2]=181464;fa=101;break}case 28:{c[(c[o>>2]|0)+332>>2]=181471;fa=101;break}case 29:{c[(c[o>>2]|0)+332>>2]=181480;fa=101;break}case 30:{c[(c[o>>2]|0)+332>>2]=181488;fa=101;break}case 32:case 31:{if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+132>>2]|0)!=0:0){if(c[(c[o>>2]|0)+332>>2]|0)c[K>>2]=181497;else c[K>>2]=(c[A>>2]|0)==32?181499:181509;if(!(gZ((c[o>>2]|0)+416|0,c[K>>2]|0)|0)){fa=110;break a}if(!(hZ((c[o>>2]|0)+416|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0)){fa=112;break a}c[(c[o>>2]|0)+332>>2]=c[(c[o>>2]|0)+416+16>>2];a[B>>0]=0}break}case 36:case 35:{if(a[(c[w>>2]|0)+128>>0]|0){if(!(iZ(c[(c[o>>2]|0)+344>>2]|0,c[(c[o>>2]|0)+348>>2]|0,a[(c[o>>2]|0)+352>>0]|0,a[(c[o>>2]|0)+353>>0]|0,0,c[o>>2]|0)|0)){fa=116;break a}if((c[(c[o>>2]|0)+132>>2]|0)!=0?(c[(c[o>>2]|0)+332>>2]|0)!=0:0){if((a[c[(c[o>>2]|0)+332>>2]>>0]|0)!=40){if((a[c[(c[o>>2]|0)+332>>2]>>0]|0)==78?(a[(c[(c[o>>2]|0)+332>>2]|0)+1>>0]|0)==79:0)fa=122}else fa=122;if((fa|0)==122){fa=0;if((c[(c[o>>2]|0)+416+12>>2]|0)==(c[(c[o>>2]|0)+416+8>>2]|0)?(jZ((c[o>>2]|0)+416|0)|0)<<24>>24==0:0){fa=127;break a}l=(c[o>>2]|0)+416+12|0;k=c[l>>2]|0;c[l>>2]=k+1;a[k>>0]=41;if((c[(c[o>>2]|0)+416+12>>2]|0)==(c[(c[o>>2]|0)+416+8>>2]|0)?(jZ((c[o>>2]|0)+416|0)|0)<<24>>24==0:0){fa=127;break a}k=(c[o>>2]|0)+416+12|0;l=c[k>>2]|0;c[k>>2]=l+1;a[l>>0]=0;c[(c[o>>2]|0)+332>>2]=c[(c[o>>2]|0)+416+16>>2];c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2]}c[c[y>>2]>>2]=c[q>>2];Ib[c[(c[o>>2]|0)+132>>2]&15](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+344>>2]>>2]|0,c[c[(c[o>>2]|0)+348>>2]>>2]|0,c[(c[o>>2]|0)+332>>2]|0,0,(c[A>>2]|0)==36&1);KY((c[o>>2]|0)+416|0);a[B>>0]=0}}break}case 38:case 37:{if(a[(c[w>>2]|0)+128>>0]|0){c[M>>2]=kZ(c[o>>2]|0,c[p>>2]|0,a[(c[o>>2]|0)+352>>0]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0,(c[w>>2]|0)+80|0)|0;if(c[M>>2]|0){fa=131;break a}c[L>>2]=c[(c[w>>2]|0)+80+16>>2];c[(c[w>>2]|0)+80+16>>2]=c[(c[w>>2]|0)+80+12>>2];if(!(iZ(c[(c[o>>2]|0)+344>>2]|0,c[(c[o>>2]|0)+348>>2]|0,a[(c[o>>2]|0)+352>>0]|0,0,c[L>>2]|0,c[o>>2]|0)|0)){fa=133;break a}if((c[(c[o>>2]|0)+132>>2]|0)!=0?(c[(c[o>>2]|0)+332>>2]|0)!=0:0){if((a[c[(c[o>>2]|0)+332>>2]>>0]|0)!=40){if((a[c[(c[o>>2]|0)+332>>2]>>0]|0)==78?(a[(c[(c[o>>2]|0)+332>>2]|0)+1>>0]|0)==79:0)fa=139}else fa=139;if((fa|0)==139){fa=0;if((c[(c[o>>2]|0)+416+12>>2]|0)==(c[(c[o>>2]|0)+416+8>>2]|0)?(jZ((c[o>>2]|0)+416|0)|0)<<24>>24==0:0){fa=144;break a}l=(c[o>>2]|0)+416+12|0;k=c[l>>2]|0;c[l>>2]=k+1;a[k>>0]=41;if((c[(c[o>>2]|0)+416+12>>2]|0)==(c[(c[o>>2]|0)+416+8>>2]|0)?(jZ((c[o>>2]|0)+416|0)|0)<<24>>24==0:0){fa=144;break a}k=(c[o>>2]|0)+416+12|0;l=c[k>>2]|0;c[k>>2]=l+1;a[l>>0]=0;c[(c[o>>2]|0)+332>>2]=c[(c[o>>2]|0)+416+16>>2];c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2]}c[c[y>>2]>>2]=c[q>>2];Ib[c[(c[o>>2]|0)+132>>2]&15](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+344>>2]>>2]|0,c[c[(c[o>>2]|0)+348>>2]>>2]|0,c[(c[o>>2]|0)+332>>2]|0,c[L>>2]|0,(c[A>>2]|0)==38&1);KY((c[o>>2]|0)+416|0);a[B>>0]=0}}break}case 12:{if(a[(c[w>>2]|0)+128>>0]|0){c[N>>2]=lZ(c[o>>2]|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;l=c[(c[w>>2]|0)+104+16>>2]|0;if(c[(c[o>>2]|0)+316>>2]|0){c[(c[(c[o>>2]|0)+316>>2]|0)+4>>2]=l;c[(c[(c[o>>2]|0)+316>>2]|0)+8>>2]=(c[(c[w>>2]|0)+104+12>>2]|0)-(c[(c[w>>2]|0)+104+16>>2]|0);c[(c[w>>2]|0)+104+16>>2]=c[(c[w>>2]|0)+104+12>>2];if(c[(c[o>>2]|0)+136>>2]|0){c[c[y>>2]>>2]=c[q>>2];Nb[c[(c[o>>2]|0)+136>>2]&0](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+316>>2]>>2]|0,d[(c[(c[o>>2]|0)+316>>2]|0)+33>>0]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+4>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+8>>2]|0,c[(c[o>>2]|0)+360>>2]|0,0,0,0);a[B>>0]=0}}else c[(c[w>>2]|0)+104+12>>2]=l;if(c[N>>2]|0){fa=152;break a}}break}case 5:{a[(c[o>>2]|0)+489>>0]=0;a[(c[w>>2]|0)+129>>0]=1;l=c[o>>2]|0;if(c[(c[o>>2]|0)+84>>2]|0){k=aZ(l+416|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;c[(c[o>>2]|0)+324>>2]=k;if(!(c[(c[o>>2]|0)+324>>2]|0)){fa=155;break a}c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2];a[B>>0]=0}else c[l+324>>2]=112589;if((((a[(c[w>>2]|0)+130>>0]|0)==0?(c[(c[o>>2]|0)+492>>2]|0)==0:0)?(c[(c[o>>2]|0)+108>>2]|0)!=0:0)?(Fb[c[(c[o>>2]|0)+108>>2]&63](c[(c[o>>2]|0)+4>>2]|0)|0)==0:0){fa=162;break a}if(c[(c[o>>2]|0)+316>>2]|0)fa=167;else{l=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,112589,36)|0;c[(c[o>>2]|0)+316>>2]=l;if(!(c[(c[o>>2]|0)+316>>2]|0)){fa=165;break a}c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]=0;fa=167}break}case 13:{fa=167;break}case 15:{if(((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+316>>2]|0)!=0:0)?(c[(c[o>>2]|0)+136>>2]|0)!=0:0){c[c[y>>2]>>2]=c[q>>2];Nb[c[(c[o>>2]|0)+136>>2]&0](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+316>>2]>>2]|0,d[(c[(c[o>>2]|0)+316>>2]|0)+33>>0]|0,0,0,c[(c[(c[o>>2]|0)+316>>2]|0)+20>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+16>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]|0,0);a[B>>0]=0}break}case 16:{if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+316>>2]|0)!=0:0){l=aZ((c[w>>2]|0)+80|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[(c[o>>2]|0)+316>>2]|0)+28>>2]=l;if(!(c[(c[(c[o>>2]|0)+316>>2]|0)+28>>2]|0)){fa=180;break a}c[(c[w>>2]|0)+80+16>>2]=c[(c[w>>2]|0)+80+12>>2];if(c[(c[o>>2]|0)+92>>2]|0){c[c[y>>2]>>2]=c[q>>2];Ib[c[(c[o>>2]|0)+92>>2]&15](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+316>>2]>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+20>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+16>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+28>>2]|0);a[B>>0]=0;break c}if(c[(c[o>>2]|0)+136>>2]|0){c[c[y>>2]>>2]=c[q>>2];Nb[c[(c[o>>2]|0)+136>>2]&0](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+316>>2]>>2]|0,0,0,0,c[(c[(c[o>>2]|0)+316>>2]|0)+20>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+16>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]|0,c[(c[(c[o>>2]|0)+316>>2]|0)+28>>2]|0);a[B>>0]=0}}break}case 9:{if(Hb[c[(c[p>>2]|0)+48>>2]&63](c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0){c[(c[o>>2]|0)+316>>2]=0;break c}l=(c[w>>2]|0)+80|0;if(!(a[(c[w>>2]|0)+128>>0]|0)){c[(c[w>>2]|0)+80+12>>2]=c[l+16>>2];c[(c[o>>2]|0)+316>>2]=0;break c}c[O>>2]=aZ(l,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;if(!(c[O>>2]|0)){fa=189;break a}l=bZ(c[o>>2]|0,c[w>>2]|0,c[O>>2]|0,36)|0;c[(c[o>>2]|0)+316>>2]=l;if(!(c[(c[o>>2]|0)+316>>2]|0)){fa=191;break a}l=(c[w>>2]|0)+80|0;if((c[c[(c[o>>2]|0)+316>>2]>>2]|0)!=(c[O>>2]|0)){c[(c[w>>2]|0)+80+12>>2]=c[l+16>>2];c[(c[o>>2]|0)+316>>2]=0;break c}c[(c[w>>2]|0)+80+16>>2]=c[l+12>>2];c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]=0;a[(c[(c[o>>2]|0)+316>>2]|0)+33>>0]=0;if(c[(c[o>>2]|0)+476>>2]|0)ga=1;else ga=(c[(c[o>>2]|0)+300>>2]|0)!=0;a[(c[(c[o>>2]|0)+316>>2]|0)+34>>0]=(ga^1)&1;if(c[(c[o>>2]|0)+136>>2]|0)a[B>>0]=0;break}case 10:{l=(c[w>>2]|0)+80|0;if(!(a[(c[w>>2]|0)+128>>0]|0)){c[(c[w>>2]|0)+80+12>>2]=c[l+16>>2];c[(c[o>>2]|0)+316>>2]=0;break c}c[P>>2]=aZ(l,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;if(!(c[P>>2]|0)){fa=201;break a}l=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,c[P>>2]|0,36)|0;c[(c[o>>2]|0)+316>>2]=l;if(!(c[(c[o>>2]|0)+316>>2]|0)){fa=203;break a}l=(c[w>>2]|0)+80|0;if((c[c[(c[o>>2]|0)+316>>2]>>2]|0)!=(c[P>>2]|0)){c[(c[w>>2]|0)+80+12>>2]=c[l+16>>2];c[(c[o>>2]|0)+316>>2]=0;break c}c[(c[w>>2]|0)+80+16>>2]=c[l+12>>2];c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]=0;a[(c[(c[o>>2]|0)+316>>2]|0)+33>>0]=1;if(c[(c[o>>2]|0)+476>>2]|0)ha=1;else ha=(c[(c[o>>2]|0)+300>>2]|0)!=0;a[(c[(c[o>>2]|0)+316>>2]|0)+34>>0]=(ha^1)&1;if(c[(c[o>>2]|0)+136>>2]|0)a[B>>0]=0;break}case 18:{c[(c[o>>2]|0)+340>>2]=0;c[(c[o>>2]|0)+336>>2]=0;if(c[(c[o>>2]|0)+96>>2]|0){l=aZ((c[o>>2]|0)+416|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[o>>2]|0)+336>>2]=l;if(!(c[(c[o>>2]|0)+336>>2]|0)){fa=213;break a}c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2];a[B>>0]=0}break}case 21:{if(!(Sb[c[(c[p>>2]|0)+56>>2]&127](c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[x>>2]|0)|0)){fa=216;break a}if(c[(c[o>>2]|0)+336>>2]|0){c[Q>>2]=aZ((c[o>>2]|0)+416|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[Q>>2]|0)){fa=219;break a}cZ(c[Q>>2]|0);c[(c[o>>2]|0)+340>>2]=c[Q>>2];c[(c[o>>2]|0)+416+16>>2]=c[(c[o>>2]|0)+416+12>>2];a[B>>0]=0}break}case 19:{if((c[(c[o>>2]|0)+336>>2]|0)!=0?(c[(c[o>>2]|0)+96>>2]|0)!=0:0){c[R>>2]=aZ((c[o>>2]|0)+416|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[R>>2]|0)){fa=224;break a}c[c[y>>2]>>2]=c[q>>2];Ab[c[(c[o>>2]|0)+96>>2]&31](c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+336>>2]|0,c[(c[o>>2]|0)+360>>2]|0,c[R>>2]|0,c[(c[o>>2]|0)+340>>2]|0);a[B>>0]=0}KY((c[o>>2]|0)+416|0);break}case 20:{if((c[(c[o>>2]|0)+340>>2]|0)!=0?(c[(c[o>>2]|0)+96>>2]|0)!=0:0){c[c[y>>2]>>2]=c[q>>2];Ab[c[(c[o>>2]|0)+96>>2]&31](c[(c[o>>2]|0)+4>>2]|0,c[(c[o>>2]|0)+336>>2]|0,c[(c[o>>2]|0)+360>>2]|0,0,c[(c[o>>2]|0)+340>>2]|0);a[B>>0]=0}KY((c[o>>2]|0)+416|0);break}case 58:{if(c[(c[o>>2]|0)+80>>2]|0)TY(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0);a[B>>0]=0;c[S>>2]=mZ(c[o>>2]|0,c[p>>2]|0,t,c[r>>2]|0,c[u>>2]|0,a[v>>0]|0)|0;if(c[S>>2]|0){fa=238;break a}if(!(c[t>>2]|0)){fa=240;break a}break}case 44:{do if((c[(c[o>>2]|0)+256+4>>2]|0)>>>0>=(c[(c[o>>2]|0)+468>>2]|0)>>>0){l=(c[o>>2]|0)+12|0;if(!(c[(c[o>>2]|0)+468>>2]|0)){k=c[l>>2]|0;c[(c[o>>2]|0)+468>>2]=32;j=Fb[k&63](32)|0;c[(c[o>>2]|0)+464>>2]=j;if(c[(c[o>>2]|0)+464>>2]|0)break;else{fa=250;break a}}j=c[l+4>>2]|0;l=c[(c[o>>2]|0)+464>>2]|0;k=(c[o>>2]|0)+468|0;h=c[k>>2]<<1;c[k>>2]=h;c[T>>2]=Ob[j&127](l,h)|0;if(!(c[T>>2]|0)){fa=244;break a}c[(c[o>>2]|0)+464>>2]=c[T>>2];if(c[(c[w>>2]|0)+184>>2]|0){c[U>>2]=Ob[c[(c[o>>2]|0)+12+4>>2]&127](c[(c[w>>2]|0)+184>>2]|0,c[(c[o>>2]|0)+468>>2]<<2)|0;if(!(c[U>>2]|0)){fa=247;break a}c[(c[w>>2]|0)+184>>2]=c[U>>2]}}while(0);a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]=0;if(a[(c[w>>2]|0)+160>>0]|0){c[V>>2]=oZ(c[o>>2]|0)|0;if((c[V>>2]|0)<0){fa=253;break a}c[(c[(c[w>>2]|0)+184>>2]|0)+(c[(c[w>>2]|0)+180>>2]<<2)>>2]=c[V>>2];h=(c[w>>2]|0)+180|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[(c[w>>2]|0)+164>>2]|0)+((c[V>>2]|0)*28|0)>>2]=6;if(c[(c[o>>2]|0)+128>>2]|0)a[B>>0]=0}break}case 50:{if((a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]|0)==124){fa=257;break a}a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]=44;if((d[(c[w>>2]|0)+160>>0]|0)!=0?(c[(c[o>>2]|0)+128>>2]|0)!=0:0)a[B>>0]=0;break}case 49:{if((a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]|0)==44){fa=262;break a}if((((d[(c[w>>2]|0)+160>>0]|0)!=0?(a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]|0)==0:0)?(c[(c[(c[w>>2]|0)+164>>2]|0)+((c[(c[(c[w>>2]|0)+184>>2]|0)+((c[(c[w>>2]|0)+180>>2]|0)-1<<2)>>2]|0)*28|0)>>2]|0)!=3:0)?(c[(c[(c[w>>2]|0)+164>>2]|0)+((c[(c[(c[w>>2]|0)+184>>2]|0)+((c[(c[w>>2]|0)+180>>2]|0)-1<<2)>>2]|0)*28|0)>>2]=5,(c[(c[o>>2]|0)+128>>2]|0)!=0):0)a[B>>0]=0;a[(c[(c[o>>2]|0)+464>>2]|0)+(c[(c[o>>2]|0)+256+4>>2]|0)>>0]=124;break}case 59:case 60:{a[(c[w>>2]|0)+129>>0]=1;h=c[w>>2]|0;if(c[(c[o>>2]|0)+492>>2]|0){c[W>>2]=aZ(h+80|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[W>>2]|0)){fa=272;break a}c[X>>2]=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,c[W>>2]|0,0)|0;c[(c[w>>2]|0)+80+12>>2]=c[(c[w>>2]|0)+80+16>>2];do if(c[(c[o>>2]|0)+256+16>>2]|0){if(d[(c[w>>2]|0)+130>>0]|0){if(c[(c[o>>2]|0)+300>>2]|0){fa=281;break}}else if(a[(c[w>>2]|0)+129>>0]|0){fa=281;break}if(!(c[X>>2]|0)){fa=278;break a}if(!(a[(c[X>>2]|0)+34>>0]|0)){fa=280;break a}}else fa=281;while(0);if((fa|0)==281?(fa=0,(c[X>>2]|0)==0):0){a[(c[w>>2]|0)+128>>0]=a[(c[w>>2]|0)+130>>0]|0;if((c[A>>2]|0)!=60)break c;if(!(c[(c[o>>2]|0)+120>>2]|0))break c;Tb[c[(c[o>>2]|0)+120>>2]&127](c[(c[o>>2]|0)+4>>2]|0,c[W>>2]|0,1);a[B>>0]=0;break c}if(a[(c[X>>2]|0)+32>>0]|0){fa=286;break a}if(c[(c[X>>2]|0)+4>>2]|0){a[Z>>0]=(c[A>>2]|0)==60?1:0;c[Y>>2]=pZ(c[o>>2]|0,c[X>>2]|0,a[Z>>0]|0)|0;if(c[Y>>2]|0){fa=289;break a}a[B>>0]=0;break c}l=c[w>>2]|0;if(!(c[(c[o>>2]|0)+112>>2]|0)){a[(c[w>>2]|0)+128>>0]=a[l+130>>0]|0;break c}a[l+131>>0]=0;a[(c[X>>2]|0)+32>>0]=1;l=(Gb[c[(c[o>>2]|0)+112>>2]&63](c[(c[o>>2]|0)+116>>2]|0,0,c[(c[X>>2]|0)+20>>2]|0,c[(c[X>>2]|0)+16>>2]|0,c[(c[X>>2]|0)+24>>2]|0)|0)!=0;a[(c[X>>2]|0)+32>>0]=0;if(!l){fa=293;break a}a[B>>0]=0;if(!(a[(c[w>>2]|0)+131>>0]|0)){a[(c[w>>2]|0)+128>>0]=a[(c[w>>2]|0)+130>>0]|0;break c}}else a[(c[w>>2]|0)+128>>0]=a[h+130>>0]|0;if(((a[(c[w>>2]|0)+130>>0]|0)==0?(c[(c[o>>2]|0)+108>>2]|0)!=0:0)?(Fb[c[(c[o>>2]|0)+108>>2]&63](c[(c[o>>2]|0)+4>>2]|0)|0)==0:0){fa=300;break a}break}case 40:{if(c[(c[o>>2]|0)+128>>2]|0){l=eZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0;c[(c[o>>2]|0)+344>>2]=l;if(!(c[(c[o>>2]|0)+344>>2]|0)){fa=303;break a}c[(c[w>>2]|0)+180>>2]=0;c[(c[w>>2]|0)+176>>2]=0;a[(c[w>>2]|0)+160>>0]=1;a[B>>0]=0}break}case 42:case 41:{if(a[(c[w>>2]|0)+160>>0]|0){if(c[(c[o>>2]|0)+128>>2]|0){c[_>>2]=Fb[c[(c[o>>2]|0)+12>>2]&63](20)|0;if(!(c[_>>2]|0)){fa=308;break a}c[(c[_>>2]|0)+4>>2]=0;c[(c[_>>2]|0)+8>>2]=0;c[(c[_>>2]|0)+12>>2]=0;c[(c[_>>2]|0)+16>>2]=0;c[c[_>>2]>>2]=(c[A>>2]|0)==41?2:1;c[c[y>>2]>>2]=c[q>>2];Tb[c[(c[o>>2]|0)+128>>2]&127](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+344>>2]>>2]|0,c[_>>2]|0);a[B>>0]=0}a[(c[w>>2]|0)+160>>0]=0}break}case 43:{if((a[(c[w>>2]|0)+160>>0]|0)!=0?(c[(c[(c[w>>2]|0)+164>>2]|0)+((c[(c[(c[w>>2]|0)+184>>2]|0)+((c[(c[w>>2]|0)+180>>2]|0)-1<<2)>>2]|0)*28|0)>>2]=3,(c[(c[o>>2]|0)+128>>2]|0)!=0):0)a[B>>0]=0;break}case 51:{c[z>>2]=0;fa=318;break}case 53:{c[z>>2]=1;fa=318;break}case 52:{c[z>>2]=2;fa=318;break}case 54:{c[z>>2]=3;fa=318;break}case 45:{c[z>>2]=0;fa=333;break}case 47:{c[z>>2]=1;fa=333;break}case 46:{c[z>>2]=2;fa=333;break}case 48:{c[z>>2]=3;fa=333;break}case 55:{if(!(rZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0)){fa=343;break a}a[B>>0]=0;break}case 56:{if(!(sZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0)|0)){fa=346;break a}a[B>>0]=0;break}case 0:{if((c[s>>2]|0)==14)a[B>>0]=0;break}case 3:{if(c[(c[o>>2]|0)+84>>2]|0)a[B>>0]=0;break}case 11:{if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+136>>2]|0)!=0:0)a[B>>0]=0;break}case 17:{if(c[(c[o>>2]|0)+96>>2]|0)a[B>>0]=0;break}case 33:{if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+132>>2]|0)!=0:0)a[B>>0]=0;break}case 39:{if(c[(c[o>>2]|0)+128>>2]|0)a[B>>0]=0;break}default:{}}while(0);if((fa|0)==44){fa=0;if(Sb[c[(c[p>>2]|0)+56>>2]&127](c[p>>2]|0,c[q>>2]|0,c[t>>2]|0,c[x>>2]|0)|0)fa=46;else{fa=45;break}}else if((fa|0)==101){fa=0;if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+132>>2]|0)!=0:0)a[B>>0]=0}else if((fa|0)==167){fa=0;if((d[(c[w>>2]|0)+128>>0]|0)!=0?(c[(c[o>>2]|0)+316>>2]|0)!=0:0){l=aZ((c[w>>2]|0)+80|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;c[(c[(c[o>>2]|0)+316>>2]|0)+16>>2]=l;if(!(c[(c[(c[o>>2]|0)+316>>2]|0)+16>>2]|0)){fa=170;break}c[(c[(c[o>>2]|0)+316>>2]|0)+20>>2]=c[(c[o>>2]|0)+360>>2];c[(c[w>>2]|0)+80+16>>2]=c[(c[w>>2]|0)+80+12>>2];if(c[(c[o>>2]|0)+136>>2]|0)a[B>>0]=0}}else if((fa|0)==318){fa=0;if(a[(c[w>>2]|0)+160>>0]|0){l=c[t>>2]|0;if(!(c[z>>2]|0))ia=l;else ia=l+(0-(c[(c[p>>2]|0)+68>>2]|0))|0;c[ca>>2]=ia;c[da>>2]=oZ(c[o>>2]|0)|0;if((c[da>>2]|0)<0){fa=322;break}c[(c[(c[w>>2]|0)+164>>2]|0)+((c[da>>2]|0)*28|0)>>2]=4;c[(c[(c[w>>2]|0)+164>>2]|0)+((c[da>>2]|0)*28|0)+4>>2]=c[z>>2];c[$>>2]=eZ(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[ca>>2]|0)|0;if(!(c[$>>2]|0)){fa=324;break}c[aa>>2]=c[c[$>>2]>>2];c[(c[(c[w>>2]|0)+164>>2]|0)+((c[da>>2]|0)*28|0)+8>>2]=c[aa>>2];c[ba>>2]=0;do{l=c[ba>>2]|0;c[ba>>2]=l+1}while((a[(c[aa>>2]|0)+l>>0]|0)!=0);l=(c[w>>2]|0)+168|0;c[l>>2]=(c[l>>2]|0)+(c[ba>>2]|0);if(c[(c[o>>2]|0)+128>>2]|0)a[B>>0]=0}}else if((fa|0)==333?(fa=0,(a[(c[w>>2]|0)+160>>0]|0)!=0):0){if(c[(c[o>>2]|0)+128>>2]|0)a[B>>0]=0;l=(c[w>>2]|0)+180|0;c[l>>2]=(c[l>>2]|0)+-1;c[(c[(c[w>>2]|0)+164>>2]|0)+((c[(c[(c[w>>2]|0)+184>>2]|0)+(c[(c[w>>2]|0)+180>>2]<<2)>>2]|0)*28|0)+4>>2]=c[z>>2];if(!(c[(c[w>>2]|0)+180>>2]|0)){if(!(a[B>>0]|0)){c[ea>>2]=qZ(c[o>>2]|0)|0;if(!(c[ea>>2]|0)){fa=339;break}c[c[y>>2]>>2]=c[q>>2];Tb[c[(c[o>>2]|0)+128>>2]&127](c[(c[o>>2]|0)+4>>2]|0,c[c[(c[o>>2]|0)+344>>2]>>2]|0,c[ea>>2]|0)}a[(c[w>>2]|0)+160>>0]=0;c[(c[w>>2]|0)+168>>2]=0}}if(((fa|0)==46?(fa=0,(d[(c[w>>2]|0)+128>>0]|0)!=0):0)?(c[(c[o>>2]|0)+316>>2]|0)!=0:0){c[F>>2]=aZ((c[w>>2]|0)+80|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[F>>2]|0)){fa=49;break}cZ(c[F>>2]|0);c[(c[(c[o>>2]|0)+316>>2]|0)+24>>2]=c[F>>2];c[(c[w>>2]|0)+80+16>>2]=c[(c[w>>2]|0)+80+12>>2];if(c[(c[o>>2]|0)+136>>2]|0)a[B>>0]=0}if((d[B>>0]|0)!=0?(c[(c[o>>2]|0)+80>>2]|0)!=0:0)TY(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[t>>2]|0);switch(c[(c[o>>2]|0)+480>>2]|0){case 3:{fa=366;break a;break}case 2:{fa=367;break a;break}default:{}}c[q>>2]=c[t>>2];c[s>>2]=Sb[c[c[p>>2]>>2]&127](c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,t)|0}switch(fa|0){case 6:{c[c[u>>2]>>2]=c[q>>2];c[n>>2]=0;ja=c[n>>2]|0;i=m;return ja|0}case 8:{c[c[x>>2]>>2]=c[t>>2];c[n>>2]=4;ja=c[n>>2]|0;i=m;return ja|0}case 9:{c[n>>2]=5;ja=c[n>>2]|0;i=m;return ja|0}case 10:{c[n>>2]=6;ja=c[n>>2]|0;i=m;return ja|0}case 12:{if((c[p>>2]|0)!=(c[(c[o>>2]|0)+144>>2]|0)?(a[(c[(c[o>>2]|0)+300>>2]|0)+20>>0]|0)==0:0){c[c[u>>2]>>2]=c[q>>2];c[n>>2]=0;ja=c[n>>2]|0;i=m;return ja|0}if((d[(c[o>>2]|0)+488>>0]|0)==0?(c[p>>2]|0)==(c[(c[o>>2]|0)+144>>2]|0):0){c[n>>2]=3;ja=c[n>>2]|0;i=m;return ja|0}if((Gb[c[(c[o>>2]|0)+256>>2]&63]((c[o>>2]|0)+256|0,-4,c[r>>2]|0,c[r>>2]|0,c[p>>2]|0)|0)==-1){c[n>>2]=29;ja=c[n>>2]|0;i=m;return ja|0}else{c[c[u>>2]>>2]=c[q>>2];c[n>>2]=0;ja=c[n>>2]|0;i=m;return ja|0}break}case 24:{c[n>>2]=c[C>>2];ja=c[n>>2]|0;i=m;return ja|0}case 28:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 34:{c[n>>2]=c[D>>2];ja=c[n>>2]|0;i=m;return ja|0}case 37:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 40:{c[n>>2]=32;ja=c[n>>2]|0;i=m;return ja|0}case 42:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 45:{c[n>>2]=32;ja=c[n>>2]|0;i=m;return ja|0}case 49:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 59:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 63:{c[n>>2]=21;ja=c[n>>2]|0;i=m;return ja|0}case 68:{c[n>>2]=22;ja=c[n>>2]|0;i=m;return ja|0}case 74:{do if(((a[(c[o>>2]|0)+489>>0]|0)!=0?(a[I>>0]=a[(c[w>>2]|0)+129>>0]|0,a[(c[w>>2]|0)+129>>0]=1,(c[(c[o>>2]|0)+492>>2]|0)!=0):0)?(c[(c[o>>2]|0)+112>>2]|0)!=0:0){c[J>>2]=bZ(c[o>>2]|0,(c[w>>2]|0)+132|0,112589,36)|0;if(!(c[J>>2]|0)){c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}c[(c[J>>2]|0)+20>>2]=c[(c[o>>2]|0)+360>>2];a[(c[w>>2]|0)+131>>0]=0;if(!(Gb[c[(c[o>>2]|0)+112>>2]&63](c[(c[o>>2]|0)+116>>2]|0,0,c[(c[J>>2]|0)+20>>2]|0,c[(c[J>>2]|0)+16>>2]|0,c[(c[J>>2]|0)+24>>2]|0)|0)){c[n>>2]=21;ja=c[n>>2]|0;i=m;return ja|0}if(!(a[(c[w>>2]|0)+131>>0]|0)){a[(c[w>>2]|0)+129>>0]=a[I>>0]|0;break}if(((a[(c[w>>2]|0)+130>>0]|0)==0?(c[(c[o>>2]|0)+108>>2]|0)!=0:0)?(Fb[c[(c[o>>2]|0)+108>>2]&63](c[(c[o>>2]|0)+4>>2]|0)|0)==0:0){c[n>>2]=22;ja=c[n>>2]|0;i=m;return ja|0}}while(0);c[(c[o>>2]|0)+280>>2]=58;c[n>>2]=dZ(c[o>>2]|0,c[q>>2]|0,c[r>>2]|0,c[u>>2]|0)|0;ja=c[n>>2]|0;i=m;return ja|0}case 89:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 91:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 110:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 112:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 116:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 127:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 131:{c[n>>2]=c[M>>2];ja=c[n>>2]|0;i=m;return ja|0}case 133:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 144:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 152:{c[n>>2]=c[N>>2];ja=c[n>>2]|0;i=m;return ja|0}case 155:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 162:{c[n>>2]=22;ja=c[n>>2]|0;i=m;return ja|0}case 165:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 170:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 180:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 189:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 191:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 201:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 203:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 213:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 216:{c[n>>2]=32;ja=c[n>>2]|0;i=m;return ja|0}case 219:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 224:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 231:{switch(c[s>>2]|0){case 28:{c[n>>2]=10;ja=c[n>>2]|0;i=m;return ja|0}case 12:{c[n>>2]=17;ja=c[n>>2]|0;i=m;return ja|0}default:{c[n>>2]=2;ja=c[n>>2]|0;i=m;return ja|0}}break}case 238:{c[n>>2]=c[S>>2];ja=c[n>>2]|0;i=m;return ja|0}case 240:{c[(c[o>>2]|0)+280>>2]=59;c[n>>2]=c[S>>2];ja=c[n>>2]|0;i=m;return ja|0}case 244:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 247:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 250:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 253:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 257:{c[n>>2]=2;ja=c[n>>2]|0;i=m;return ja|0}case 262:{c[n>>2]=2;ja=c[n>>2]|0;i=m;return ja|0}case 272:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 278:{c[n>>2]=11;ja=c[n>>2]|0;i=m;return ja|0}case 280:{c[n>>2]=24;ja=c[n>>2]|0;i=m;return ja|0}case 286:{c[n>>2]=12;ja=c[n>>2]|0;i=m;return ja|0}case 289:{c[n>>2]=c[Y>>2];ja=c[n>>2]|0;i=m;return ja|0}case 293:{c[n>>2]=21;ja=c[n>>2]|0;i=m;return ja|0}case 300:{c[n>>2]=22;ja=c[n>>2]|0;i=m;return ja|0}case 303:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 308:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 322:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 324:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 339:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 343:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 346:{c[n>>2]=1;ja=c[n>>2]|0;i=m;return ja|0}case 366:{c[c[u>>2]>>2]=c[t>>2];c[n>>2]=0;ja=c[n>>2]|0;i=m;return ja|0}case 367:{c[n>>2]=35;ja=c[n>>2]|0;i=m;return ja|0}}return 0}function $Y(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+64|0;h=g+48|0;j=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+12|0;s=g+8|0;t=g+4|0;u=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[s>>2]=0;c[t>>2]=-1;f=(Eb[((a[(c[j>>2]|0)+236>>0]&255|0)!=0?1:2)&3](c[k>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[l>>2]|0,c[m>>2]|0,(c[j>>2]|0)+288|0,q,r,n,p,t)|0)!=0;e=(c[k>>2]|0)!=0;if(!f)if(e){c[h>>2]=31;v=c[h>>2]|0;i=g;return v|0}else{c[h>>2]=30;v=c[h>>2]|0;i=g;return v|0}if((e^1)&(c[t>>2]|0)==1?(a[(c[(c[j>>2]|0)+356>>2]|0)+130>>0]=1,(c[(c[j>>2]|0)+492>>2]|0)==1):0)c[(c[j>>2]|0)+492>>2]=0;if(!(c[(c[j>>2]|0)+140>>2]|0)){if(c[(c[j>>2]|0)+80>>2]|0)TY(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[l>>2]|0,c[m>>2]|0)}else{do if(c[n>>2]|0){m=(c[j>>2]|0)+440|0;l=c[(c[j>>2]|0)+144>>2]|0;e=c[n>>2]|0;f=c[n>>2]|0;c[o>>2]=aZ(m,l,e,f+(Ob[c[(c[(c[j>>2]|0)+144>>2]|0)+32>>2]&127](c[(c[j>>2]|0)+144>>2]|0,c[n>>2]|0)|0)|0)|0;if(c[o>>2]|0){c[(c[j>>2]|0)+440+16>>2]=c[(c[j>>2]|0)+440+12>>2];break}c[h>>2]=1;v=c[h>>2]|0;i=g;return v|0}while(0);if((c[q>>2]|0)!=0?(c[s>>2]=aZ((c[j>>2]|0)+440|0,c[(c[j>>2]|0)+144>>2]|0,c[q>>2]|0,(c[r>>2]|0)+(0-(c[(c[(c[j>>2]|0)+144>>2]|0)+68>>2]|0))|0)|0,(c[s>>2]|0)==0):0){c[h>>2]=1;v=c[h>>2]|0;i=g;return v|0}Vb[c[(c[j>>2]|0)+140>>2]&31](c[(c[j>>2]|0)+4>>2]|0,c[s>>2]|0,c[o>>2]|0,c[t>>2]|0)}do if(!(c[(c[j>>2]|0)+232>>2]|0)){if(c[p>>2]|0){if((c[(c[p>>2]|0)+68>>2]|0)==(c[(c[(c[j>>2]|0)+144>>2]|0)+68>>2]|0)){c[(c[j>>2]|0)+144>>2]=c[p>>2];break}c[(c[j>>2]|0)+288>>2]=c[n>>2];c[h>>2]=19;v=c[h>>2]|0;i=g;return v|0}if(c[n>>2]|0){if((c[o>>2]|0)==0?(t=(c[j>>2]|0)+440|0,r=c[(c[j>>2]|0)+144>>2]|0,q=c[n>>2]|0,f=c[n>>2]|0,c[o>>2]=aZ(t,r,q,f+(Ob[c[(c[(c[j>>2]|0)+144>>2]|0)+32>>2]&127](c[(c[j>>2]|0)+144>>2]|0,c[n>>2]|0)|0)|0)|0,(c[o>>2]|0)==0):0){c[h>>2]=1;v=c[h>>2]|0;i=g;return v|0}c[u>>2]=JZ(c[j>>2]|0,c[o>>2]|0)|0;KY((c[j>>2]|0)+440|0);if((c[u>>2]|0)==18)c[(c[j>>2]|0)+288>>2]=c[n>>2];c[h>>2]=c[u>>2];v=c[h>>2]|0;i=g;return v|0}}while(0);if((c[o>>2]|0)!=0|(c[s>>2]|0)!=0)KY((c[j>>2]|0)+440|0);c[h>>2]=0;v=c[h>>2]|0;i=g;return v|0}function aZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(hZ(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}if((c[(c[j>>2]|0)+12>>2]|0)==(c[(c[j>>2]|0)+8>>2]|0)?(jZ(c[j>>2]|0)|0)<<24>>24==0:0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}m=(c[j>>2]|0)+12|0;l=c[m>>2]|0;c[m>>2]=l+1;a[l>>0]=0;c[h>>2]=c[(c[j>>2]|0)+16>>2];n=c[h>>2]|0;i=g;return n|0}function bZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;h=i;i=i+64|0;j=h+56|0;k=h+52|0;l=h+48|0;m=h+44|0;n=h+40|0;o=h+36|0;p=h+32|0;q=h+28|0;r=h+24|0;s=h+61|0;t=h+60|0;u=h+20|0;v=h+16|0;w=h+12|0;x=h+8|0;y=h+4|0;z=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if(c[(c[l>>2]|0)+8>>2]|0){c[q>>2]=HZ(c[k>>2]|0,c[m>>2]|0)|0;c[r>>2]=(c[(c[l>>2]|0)+8>>2]|0)-1;a[s>>0]=0;c[o>>2]=c[q>>2]&c[r>>2];while(1){if(!(c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0))break;if((IZ(c[m>>2]|0,c[c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]>>2]|0)|0)<<24>>24){A=10;break}if(!(a[s>>0]|0))a[s>>0]=(c[q>>2]&~c[r>>2])>>>((d[(c[l>>2]|0)+4>>0]|0)-1|0)&(c[r>>2]|0)>>>2|1;if((c[o>>2]|0)>>>0<(d[s>>0]|0)>>>0){c[o>>2]=(c[o>>2]|0)+((c[(c[l>>2]|0)+8>>2]|0)-(d[s>>0]|0));continue}else{c[o>>2]=(c[o>>2]|0)-(d[s>>0]|0);continue}}if((A|0)==10){c[j>>2]=c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2];B=c[j>>2]|0;i=h;return B|0}if(!(c[n>>2]|0)){c[j>>2]=0;B=c[j>>2]|0;i=h;return B|0}if((c[(c[l>>2]|0)+12>>2]|0)>>>((d[(c[l>>2]|0)+4>>0]|0)-1|0)){a[t>>0]=(d[(c[l>>2]|0)+4>>0]|0)+1;c[u>>2]=1<>0];c[v>>2]=(c[u>>2]|0)-1;c[w>>2]=c[u>>2]<<2;c[x>>2]=Fb[c[c[(c[l>>2]|0)+16>>2]>>2]&63](c[w>>2]|0)|0;if(!(c[x>>2]|0)){c[j>>2]=0;B=c[j>>2]|0;i=h;return B|0}$4(c[x>>2]|0,0,c[w>>2]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[l>>2]|0)+8>>2]|0)>>>0)break;if(c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0){c[y>>2]=HZ(c[k>>2]|0,c[c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]>>2]|0)|0;c[z>>2]=c[y>>2]&c[v>>2];a[s>>0]=0;while(1){if(!(c[(c[x>>2]|0)+(c[z>>2]<<2)>>2]|0))break;if(!(a[s>>0]|0))a[s>>0]=(c[y>>2]&~c[v>>2])>>>((d[t>>0]|0)-1|0)&(c[v>>2]|0)>>>2|1;if((c[z>>2]|0)>>>0<(d[s>>0]|0)>>>0){c[z>>2]=(c[z>>2]|0)+((c[u>>2]|0)-(d[s>>0]|0));continue}else{c[z>>2]=(c[z>>2]|0)-(d[s>>0]|0);continue}}c[(c[x>>2]|0)+(c[z>>2]<<2)>>2]=c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]}c[o>>2]=(c[o>>2]|0)+1}Bb[c[(c[(c[l>>2]|0)+16>>2]|0)+8>>2]&127](c[c[l>>2]>>2]|0);c[c[l>>2]>>2]=c[x>>2];a[(c[l>>2]|0)+4>>0]=a[t>>0]|0;c[(c[l>>2]|0)+8>>2]=c[u>>2];c[o>>2]=c[q>>2]&c[v>>2];a[s>>0]=0;while(1){if(!(c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0))break a;if(!(a[s>>0]|0))a[s>>0]=(c[q>>2]&~c[v>>2])>>>((d[t>>0]|0)-1|0)&(c[v>>2]|0)>>>2|1;if((c[o>>2]|0)>>>0<(d[s>>0]|0)>>>0){c[o>>2]=(c[o>>2]|0)+((c[u>>2]|0)-(d[s>>0]|0));continue}else{c[o>>2]=(c[o>>2]|0)-(d[s>>0]|0);continue}}}}else{if(!(c[n>>2]|0)){c[j>>2]=0;B=c[j>>2]|0;i=h;return B|0}a[(c[l>>2]|0)+4>>0]=6;c[(c[l>>2]|0)+8>>2]=64;c[p>>2]=c[(c[l>>2]|0)+8>>2]<<2;g=Fb[c[c[(c[l>>2]|0)+16>>2]>>2]&63](c[p>>2]|0)|0;c[c[l>>2]>>2]=g;g=c[l>>2]|0;if(c[c[l>>2]>>2]|0){$4(c[g>>2]|0,0,c[p>>2]|0)|0;f=HZ(c[k>>2]|0,c[m>>2]|0)|0;c[o>>2]=f&(c[(c[l>>2]|0)+8>>2]|0)-1;break}c[g+8>>2]=0;c[j>>2]=0;B=c[j>>2]|0;i=h;return B|0}while(0);k=Fb[c[c[(c[l>>2]|0)+16>>2]>>2]&63](c[n>>2]|0)|0;c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]=k;if(c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0){$4(c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0,0,c[n>>2]|0)|0;c[c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2]>>2]=c[m>>2];m=(c[l>>2]|0)+12|0;c[m>>2]=(c[m>>2]|0)+1;c[j>>2]=c[(c[c[l>>2]>>2]|0)+(c[o>>2]<<2)>>2];B=c[j>>2]|0;i=h;return B|0}else{c[j>>2]=0;B=c[j>>2]|0;i=h;return B|0}return 0}function cZ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;c[f>>2]=c[e>>2];c[g>>2]=c[e>>2];while(1){if(!(a[c[g>>2]>>0]|0))break;switch(a[c[g>>2]>>0]|0){case 10:case 13:case 32:{if((c[f>>2]|0)!=(c[e>>2]|0)?(a[(c[f>>2]|0)+-1>>0]|0)!=32:0){b=c[f>>2]|0;c[f>>2]=b+1;a[b>>0]=32}break}default:{b=a[c[g>>2]>>0]|0;h=c[f>>2]|0;c[f>>2]=h+1;a[h>>0]=b}}c[g>>2]=(c[g>>2]|0)+1}if((c[f>>2]|0)==(c[e>>2]|0)){j=c[f>>2]|0;a[j>>0]=0;i=d;return}if((a[(c[f>>2]|0)+-1>>0]|0)!=32){j=c[f>>2]|0;a[j>>0]=0;i=d;return}c[f>>2]=(c[f>>2]|0)+-1;j=c[f>>2]|0;a[j>>0]=0;i=d;return}function dZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=vZ(c[j>>2]|0,0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;if((c[n>>2]|0)==0?(DZ(c[j>>2]|0)|0)<<24>>24==0:0){c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}function eZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=c[(c[h>>2]|0)+356>>2];c[n>>2]=aZ((c[m>>2]|0)+80|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}c[o>>2]=bZ(c[h>>2]|0,(c[m>>2]|0)+20|0,c[n>>2]|0,24)|0;if(!(c[o>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}l=(c[m>>2]|0)+80|0;if((c[c[o>>2]>>2]|0)==(c[n>>2]|0)){c[(c[m>>2]|0)+80+16>>2]=c[l+12>>2];if(!(EZ(c[h>>2]|0,c[o>>2]|0)|0)){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}}else c[(c[m>>2]|0)+80+12>>2]=c[l+16>>2];c[g>>2]=c[o>>2];p=c[g>>2]|0;i=f;return p|0}function fZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;h=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[(c[j>>2]|0)+356>>2];if((c[(c[n>>2]|0)+80+12>>2]|0)==(c[(c[n>>2]|0)+80+8>>2]|0)?(jZ((c[n>>2]|0)+80|0)|0)<<24>>24==0:0){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}f=(c[n>>2]|0)+80+12|0;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=0;c[p>>2]=aZ((c[n>>2]|0)+80|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[p>>2]|0)){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=bZ(c[j>>2]|0,(c[n>>2]|0)+40|0,c[p>>2]|0,12)|0;if(!(c[o>>2]|0)){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}m=(c[n>>2]|0)+80|0;a:do if((c[c[o>>2]>>2]|0)==(c[p>>2]|0)){c[(c[n>>2]|0)+80+16>>2]=c[m+12>>2];if(a[(c[j>>2]|0)+236>>0]|0){do if(((((a[c[p>>2]>>0]|0)==120?(a[(c[p>>2]|0)+1>>0]|0)==109:0)?(a[(c[p>>2]|0)+2>>0]|0)==108:0)?(a[(c[p>>2]|0)+3>>0]|0)==110:0)?(a[(c[p>>2]|0)+4>>0]|0)==115:0){if((a[(c[p>>2]|0)+5>>0]|0)!=0?(a[(c[p>>2]|0)+5>>0]|0)!=58:0)break;if(!(a[(c[p>>2]|0)+5>>0]|0))c[(c[o>>2]|0)+4>>2]=(c[n>>2]|0)+152;else{l=bZ(c[j>>2]|0,(c[n>>2]|0)+60|0,(c[p>>2]|0)+6|0,8)|0;c[(c[o>>2]|0)+4>>2]=l}a[(c[o>>2]|0)+9>>0]=1;break a}while(0);c[q>>2]=0;while(1){if(!(a[(c[p>>2]|0)+(c[q>>2]|0)>>0]|0))break a;if((a[(c[p>>2]|0)+(c[q>>2]|0)>>0]|0)==58)break;c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=0;while(1){t=(c[(c[n>>2]|0)+80+12>>2]|0)==(c[(c[n>>2]|0)+80+8>>2]|0);if((c[r>>2]|0)>=(c[q>>2]|0))break;if(t?(jZ((c[n>>2]|0)+80|0)|0)<<24>>24==0:0){u=30;break}l=a[(c[p>>2]|0)+(c[r>>2]|0)>>0]|0;k=(c[n>>2]|0)+80+12|0;e=c[k>>2]|0;c[k>>2]=e+1;a[e>>0]=l;c[r>>2]=(c[r>>2]|0)+1}if((u|0)==30){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}if(t?(jZ((c[n>>2]|0)+80|0)|0)<<24>>24==0:0){c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}l=(c[n>>2]|0)+80+12|0;e=c[l>>2]|0;c[l>>2]=e+1;a[e>>0]=0;e=bZ(c[j>>2]|0,(c[n>>2]|0)+60|0,c[(c[n>>2]|0)+80+16>>2]|0,8)|0;c[(c[o>>2]|0)+4>>2]=e;e=(c[n>>2]|0)+80|0;if((c[c[(c[o>>2]|0)+4>>2]>>2]|0)==(c[(c[n>>2]|0)+80+16>>2]|0)){c[(c[n>>2]|0)+80+16>>2]=c[e+12>>2];break}else{c[(c[n>>2]|0)+80+12>>2]=c[e+16>>2];break}}}else c[(c[n>>2]|0)+80+12>>2]=c[m+16>>2];while(0);c[h>>2]=c[o>>2];s=c[h>>2]|0;i=g;return s|0}function gZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;while(1){j=c[g>>2]|0;if(!(a[c[h>>2]>>0]|0)){k=7;break}if((c[j+12>>2]|0)==(c[(c[g>>2]|0)+8>>2]|0)?(jZ(c[g>>2]|0)|0)<<24>>24==0:0){k=6;break}d=a[c[h>>2]>>0]|0;b=(c[g>>2]|0)+12|0;l=c[b>>2]|0;c[b>>2]=l+1;a[l>>0]=d;c[h>>2]=(c[h>>2]|0)+1}if((k|0)==6){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}else if((k|0)==7){c[f>>2]=c[j+16>>2];m=c[f>>2]|0;i=e;return m|0}return 0}function hZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[(c[h>>2]|0)+12>>2]|0)==0?(jZ(c[h>>2]|0)|0)<<24>>24==0:0){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}while(1){Ab[c[(c[j>>2]|0)+60>>2]&31](c[j>>2]|0,k,c[l>>2]|0,(c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>>2]|0);n=c[h>>2]|0;if((c[k>>2]|0)==(c[l>>2]|0)){o=7;break}if(!((jZ(n)|0)<<24>>24)){o=6;break}}if((o|0)==6){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}else if((o|0)==7){c[g>>2]=c[n+16>>2];m=c[g>>2]|0;i=f;return m|0}return 0}function iZ(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;k=i;i=i+48|0;l=k+32|0;m=k+28|0;n=k+24|0;o=k+37|0;p=k+36|0;q=k+20|0;r=k+16|0;s=k+12|0;t=k+8|0;u=k+4|0;v=k;c[m>>2]=b;c[n>>2]=e;a[o>>0]=f;a[p>>0]=g;c[q>>2]=h;c[r>>2]=j;if(!((c[q>>2]|0)==0?(d[p>>0]|0)==0:0)){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+12>>2]|0))break;if((c[n>>2]|0)==(c[(c[(c[m>>2]|0)+20>>2]|0)+((c[t>>2]|0)*12|0)>>2]|0)){w=6;break}c[t>>2]=(c[t>>2]|0)+1}if((w|0)==6){c[l>>2]=1;x=c[l>>2]|0;i=k;return x|0}if(((d[p>>0]|0)!=0?(c[(c[m>>2]|0)+8>>2]|0)==0:0)?(a[(c[n>>2]|0)+9>>0]|0)==0:0)c[(c[m>>2]|0)+8>>2]=c[n>>2]}do if((c[(c[m>>2]|0)+12>>2]|0)==(c[(c[m>>2]|0)+16>>2]|0)){p=(c[m>>2]|0)+16|0;if(!(c[(c[m>>2]|0)+16>>2]|0)){c[p>>2]=8;w=Fb[c[(c[r>>2]|0)+12>>2]&63]((c[(c[m>>2]|0)+16>>2]|0)*12|0)|0;c[(c[m>>2]|0)+20>>2]=w;if(c[(c[m>>2]|0)+20>>2]|0)break;c[l>>2]=0;x=c[l>>2]|0;i=k;return x|0}c[v>>2]=c[p>>2]<<1;c[u>>2]=Ob[c[(c[r>>2]|0)+12+4>>2]&127](c[(c[m>>2]|0)+20>>2]|0,(c[v>>2]|0)*12|0)|0;if(c[u>>2]|0){c[(c[m>>2]|0)+16>>2]=c[v>>2];c[(c[m>>2]|0)+20>>2]=c[u>>2];break}c[l>>2]=0;x=c[l>>2]|0;i=k;return x|0}while(0);c[s>>2]=(c[(c[m>>2]|0)+20>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*12|0);c[c[s>>2]>>2]=c[n>>2];c[(c[s>>2]|0)+8>>2]=c[q>>2];a[(c[s>>2]|0)+4>>0]=a[o>>0]|0;if(!(a[o>>0]|0))a[(c[n>>2]|0)+8>>0]=1;n=(c[m>>2]|0)+12|0;c[n>>2]=(c[n>>2]|0)+1;c[l>>2]=1;x=c[l>>2]|0;i=k;return x|0}function jZ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=b;if(c[(c[f>>2]|0)+4>>2]|0){b=c[f>>2]|0;if(!(c[(c[f>>2]|0)+16>>2]|0)){c[c[f>>2]>>2]=c[b+4>>2];c[(c[f>>2]|0)+4>>2]=c[c[(c[f>>2]|0)+4>>2]>>2];c[c[c[f>>2]>>2]>>2]=0;c[(c[f>>2]|0)+16>>2]=(c[c[f>>2]>>2]|0)+8;c[(c[f>>2]|0)+8>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[(c[c[f>>2]>>2]|0)+4>>2]|0);c[(c[f>>2]|0)+12>>2]=c[(c[f>>2]|0)+16>>2];a[e>>0]=1;m=a[e>>0]|0;i=d;return m|0}if(((c[b+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)<(c[(c[(c[f>>2]|0)+4>>2]|0)+4>>2]|0)){c[g>>2]=c[c[(c[f>>2]|0)+4>>2]>>2];c[c[(c[f>>2]|0)+4>>2]>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=c[(c[f>>2]|0)+4>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];Z4((c[c[f>>2]>>2]|0)+8|0,c[(c[f>>2]|0)+16>>2]|0,(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)|0;c[(c[f>>2]|0)+12>>2]=(c[c[f>>2]>>2]|0)+8+((c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0));c[(c[f>>2]|0)+16>>2]=(c[c[f>>2]>>2]|0)+8;c[(c[f>>2]|0)+8>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[(c[c[f>>2]>>2]|0)+4>>2]|0);a[e>>0]=1;m=a[e>>0]|0;i=d;return m|0}}do if((c[c[f>>2]>>2]|0)!=0?(c[(c[f>>2]|0)+16>>2]|0)==((c[c[f>>2]>>2]|0)+8|0):0){c[h>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)<<1;c[j>>2]=Ob[c[(c[(c[f>>2]|0)+20>>2]|0)+4>>2]&127](c[c[f>>2]>>2]|0,8+(c[h>>2]|0)|0)|0;if(c[j>>2]|0){c[c[f>>2]>>2]=c[j>>2];c[(c[c[f>>2]>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+12>>2]=(c[c[f>>2]>>2]|0)+8+((c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0));c[(c[f>>2]|0)+16>>2]=(c[c[f>>2]>>2]|0)+8;c[(c[f>>2]|0)+8>>2]=(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>2]|0);break}a[e>>0]=0;m=a[e>>0]|0;i=d;return m|0}else n=11;while(0);if((n|0)==11){c[l>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0);if((c[l>>2]|0)<1024)c[l>>2]=1024;else c[l>>2]=c[l>>2]<<1;c[k>>2]=Fb[c[c[(c[f>>2]|0)+20>>2]>>2]&63](8+(c[l>>2]|0)|0)|0;if(!(c[k>>2]|0)){a[e>>0]=0;m=a[e>>0]|0;i=d;return m|0}c[(c[k>>2]|0)+4>>2]=c[l>>2];c[c[k>>2]>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=c[k>>2];if((c[(c[f>>2]|0)+12>>2]|0)!=(c[(c[f>>2]|0)+16>>2]|0))Z4((c[k>>2]|0)+8|0,c[(c[f>>2]|0)+16>>2]|0,(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0)|0)|0;c[(c[f>>2]|0)+12>>2]=(c[k>>2]|0)+8+((c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+16>>2]|0));c[(c[f>>2]|0)+16>>2]=(c[k>>2]|0)+8;c[(c[f>>2]|0)+8>>2]=(c[k>>2]|0)+8+(c[l>>2]|0)}a[e>>0]=1;m=a[e>>0]|0;i=d;return m|0}function kZ(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+28|0;o=j+12|0;p=j+8|0;q=j+4|0;r=j;c[l>>2]=b;c[m>>2]=d;a[n>>0]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=GZ(c[l>>2]|0,c[m>>2]|0,a[n>>0]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0){c[k>>2]=c[r>>2];s=c[k>>2]|0;i=j;return s|0}if(((a[n>>0]|0)==0?((c[(c[q>>2]|0)+12>>2]|0)-(c[(c[q>>2]|0)+16>>2]|0)|0)!=0:0)?(a[(c[(c[q>>2]|0)+12>>2]|0)+-1>>0]|0)==32:0){n=(c[q>>2]|0)+12|0;c[n>>2]=(c[n>>2]|0)+-1}if((c[(c[q>>2]|0)+12>>2]|0)==(c[(c[q>>2]|0)+8>>2]|0)?(jZ(c[q>>2]|0)|0)<<24>>24==0:0){c[k>>2]=1;s=c[k>>2]|0;i=j;return s|0}n=(c[q>>2]|0)+12|0;q=c[n>>2]|0;c[n>>2]=q+1;a[q>>0]=0;c[k>>2]=0;s=c[k>>2]|0;i=j;return s|0}function lZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;h=i;i=i+64|0;j=h+56|0;k=h+52|0;l=h+48|0;m=h+44|0;n=h+40|0;o=h+36|0;p=h+32|0;q=h+28|0;r=h+24|0;s=h+20|0;t=h+16|0;u=h+12|0;v=h+8|0;w=h+60|0;x=h+4|0;y=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[(c[k>>2]|0)+356>>2];c[p>>2]=(c[o>>2]|0)+104;c[q>>2]=0;c[r>>2]=c[(c[k>>2]|0)+256+20>>2];c[(c[k>>2]|0)+256+20>>2]=1;if((c[c[p>>2]>>2]|0)==0?(jZ(c[p>>2]|0)|0)<<24>>24==0:0){c[j>>2]=1;z=c[j>>2]|0;i=h;return z|0}a:while(1){c[t>>2]=Sb[c[(c[l>>2]|0)+16+4>>2]&127](c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,s)|0;b:do switch(c[t>>2]|0){case -4:{A=24;break a;break}case -1:{A=46;break a;break}case 0:{A=49;break a;break}case 28:{if((d[(c[k>>2]|0)+488>>0]|0)==0?(c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0):0){A=23;break a}c[u>>2]=aZ((c[k>>2]|0)+416|0,c[l>>2]|0,(c[m>>2]|0)+(c[(c[l>>2]|0)+68>>2]|0)|0,(c[s>>2]|0)+(0-(c[(c[l>>2]|0)+68>>2]|0))|0)|0;if(!(c[u>>2]|0)){A=8;break a}c[v>>2]=bZ(c[k>>2]|0,(c[o>>2]|0)+132|0,c[u>>2]|0,0)|0;c[(c[k>>2]|0)+416+12>>2]=c[(c[k>>2]|0)+416+16>>2];if(!(c[v>>2]|0)){A=10;break a}if(a[(c[v>>2]|0)+32>>0]|0){A=12;break a}if(!(c[(c[v>>2]|0)+16>>2]|0)){a[(c[v>>2]|0)+32>>0]=1;c[q>>2]=lZ(c[k>>2]|0,c[(c[k>>2]|0)+228>>2]|0,c[(c[v>>2]|0)+4>>2]|0,(c[(c[v>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+8>>2]|0)|0)|0;a[(c[v>>2]|0)+32>>0]=0;if(c[q>>2]|0)break a;else break b}g=c[o>>2]|0;if(!(c[(c[k>>2]|0)+112>>2]|0)){a[(c[o>>2]|0)+128>>0]=a[g+130>>0]|0;break b}a[g+131>>0]=0;a[(c[v>>2]|0)+32>>0]=1;g=(Gb[c[(c[k>>2]|0)+112>>2]&63](c[(c[k>>2]|0)+116>>2]|0,0,c[(c[v>>2]|0)+20>>2]|0,c[(c[v>>2]|0)+16>>2]|0,c[(c[v>>2]|0)+24>>2]|0)|0)!=0;a[(c[v>>2]|0)+32>>0]=0;if(!g){A=18;break a}if(!(a[(c[o>>2]|0)+131>>0]|0))a[(c[o>>2]|0)+128>>0]=a[(c[o>>2]|0)+130>>0]|0;break}case 6:case 9:{if(!(hZ(c[p>>2]|0,c[l>>2]|0,c[m>>2]|0,c[s>>2]|0)|0)){A=26;break a}break}case -3:{c[s>>2]=(c[m>>2]|0)+(c[(c[l>>2]|0)+68>>2]|0);A=28;break}case 7:{A=28;break}case 10:{c[y>>2]=Ob[c[(c[l>>2]|0)+44>>2]&127](c[l>>2]|0,c[m>>2]|0)|0;if((c[y>>2]|0)<0){A=33;break a}c[y>>2]=OZ(c[y>>2]|0,w)|0;if(!(c[y>>2]|0)){A=37;break a}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[y>>2]|0))break b;if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[p>>2]|0)+12>>2]|0)?(jZ(c[p>>2]|0)|0)<<24>>24==0:0){A=44;break a}g=a[w+(c[x>>2]|0)>>0]|0;f=(c[p>>2]|0)+12|0;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=g;c[x>>2]=(c[x>>2]|0)+1}break}default:{A=52;break a}}while(0);if((A|0)==28){A=0;if((c[(c[p>>2]|0)+8>>2]|0)==(c[(c[p>>2]|0)+12>>2]|0)?(jZ(c[p>>2]|0)|0)<<24>>24==0:0){A=30;break}g=(c[p>>2]|0)+12|0;e=c[g>>2]|0;c[g>>2]=e+1;a[e>>0]=10}c[m>>2]=c[s>>2]}switch(A|0){case 8:{c[q>>2]=1;break}case 10:{a[(c[o>>2]|0)+128>>0]=a[(c[o>>2]|0)+130>>0]|0;break}case 12:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=12;break}case 18:{c[q>>2]=21;break}case 23:{c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=10;break}case 24:{c[q>>2]=0;break}case 26:{c[q>>2]=1;break}case 30:{c[q>>2]=1;break}case 33:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=14;break}case 37:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=14;break}case 44:{c[q>>2]=1;break}case 46:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=4;break}case 49:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[s>>2];c[q>>2]=4;break}case 52:{if((c[l>>2]|0)==(c[(c[k>>2]|0)+144>>2]|0))c[(c[k>>2]|0)+288>>2]=c[m>>2];c[q>>2]=23;break}}c[(c[k>>2]|0)+256+20>>2]=c[r>>2];c[j>>2]=c[q>>2];z=c[j>>2]|0;i=h;return z|0}function mZ(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;j=i;i=i+48|0;k=j+40|0;l=j+36|0;m=j+32|0;n=j+28|0;o=j+24|0;p=j+20|0;q=j+44|0;r=j+16|0;s=j+12|0;t=j+8|0;u=j+4|0;v=j;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;a[q>>0]=h;c[t>>2]=c[c[n>>2]>>2];h=c[l>>2]|0;if((c[m>>2]|0)==(c[(c[l>>2]|0)+144>>2]|0)){c[u>>2]=h+288;c[c[u>>2]>>2]=c[t>>2];c[v>>2]=(c[l>>2]|0)+292}else{c[u>>2]=c[h+300>>2];c[v>>2]=(c[(c[l>>2]|0)+300>>2]|0)+4}c[c[u>>2]>>2]=c[t>>2];c[c[n>>2]>>2]=0;c[s>>2]=Sb[c[(c[m>>2]|0)+12>>2]&127](c[m>>2]|0,c[t>>2]|0,c[o>>2]|0,r)|0;c[c[v>>2]>>2]=c[r>>2];switch(c[s>>2]|0){case 42:{if(c[(c[l>>2]|0)+80>>2]|0)TY(c[l>>2]|0,c[m>>2]|0,c[t>>2]|0,c[r>>2]|0);c[c[n>>2]>>2]=c[r>>2];c[c[p>>2]>>2]=c[r>>2];if((c[(c[l>>2]|0)+480>>2]|0)==2){c[k>>2]=35;w=c[k>>2]|0;i=j;return w|0}else{c[k>>2]=0;w=c[k>>2]|0;i=j;return w|0}break}case 0:{c[c[u>>2]>>2]=c[r>>2];c[k>>2]=4;w=c[k>>2]|0;i=j;return w|0}case -2:{if(a[q>>0]|0){c[c[p>>2]>>2]=c[t>>2];c[k>>2]=0;w=c[k>>2]|0;i=j;return w|0}else{c[k>>2]=6;w=c[k>>2]|0;i=j;return w|0}break}case -4:case -1:{if(a[q>>0]|0){c[c[p>>2]>>2]=c[t>>2];c[k>>2]=0;w=c[k>>2]|0;i=j;return w|0}else{c[k>>2]=2;w=c[k>>2]|0;i=j;return w|0}break}default:{c[c[u>>2]>>2]=c[r>>2];c[k>>2]=23;w=c[k>>2]|0;i=j;return w|0}}return 0}function nZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=mZ(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,k,c[l>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}if(c[k>>2]|0){c[(c[j>>2]|0)+280>>2]=60;c[h>>2]=ZY(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}else{c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}return 0}function oZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;j=b+4|0;k=b;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+356>>2];do if(!(c[(c[f>>2]|0)+184>>2]|0)){a=Fb[c[(c[e>>2]|0)+12>>2]&63](c[(c[e>>2]|0)+468>>2]<<2)|0;c[(c[f>>2]|0)+184>>2]=a;if(c[(c[f>>2]|0)+184>>2]|0){c[c[(c[f>>2]|0)+184>>2]>>2]=0;break}c[d>>2]=-1;l=c[d>>2]|0;i=b;return l|0}while(0);if((c[(c[f>>2]|0)+176>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0){a=(c[e>>2]|0)+12|0;do if(c[(c[f>>2]|0)+164>>2]|0){c[j>>2]=Ob[c[a+4>>2]&127](c[(c[f>>2]|0)+164>>2]|0,(c[(c[f>>2]|0)+172>>2]<<1)*28|0)|0;if(c[j>>2]|0){e=(c[f>>2]|0)+172|0;c[e>>2]=c[e>>2]<<1;break}c[d>>2]=-1;l=c[d>>2]|0;i=b;return l|0}else{c[j>>2]=Fb[c[a>>2]&63](896)|0;if(c[j>>2]|0){c[(c[f>>2]|0)+172>>2]=32;break}c[d>>2]=-1;l=c[d>>2]|0;i=b;return l|0}while(0);c[(c[f>>2]|0)+164>>2]=c[j>>2]}j=(c[f>>2]|0)+176|0;a=c[j>>2]|0;c[j>>2]=a+1;c[h>>2]=a;c[g>>2]=(c[(c[f>>2]|0)+164>>2]|0)+((c[h>>2]|0)*28|0);if(c[(c[f>>2]|0)+180>>2]|0){c[k>>2]=(c[(c[f>>2]|0)+164>>2]|0)+((c[(c[(c[f>>2]|0)+184>>2]|0)+((c[(c[f>>2]|0)+180>>2]|0)-1<<2)>>2]|0)*28|0);if(c[(c[k>>2]|0)+16>>2]|0)c[(c[(c[f>>2]|0)+164>>2]|0)+((c[(c[k>>2]|0)+16>>2]|0)*28|0)+24>>2]=c[h>>2];if(!(c[(c[k>>2]|0)+20>>2]|0))c[(c[k>>2]|0)+12>>2]=c[h>>2];c[(c[k>>2]|0)+16>>2]=c[h>>2];f=(c[k>>2]|0)+20|0;c[f>>2]=(c[f>>2]|0)+1}c[(c[g>>2]|0)+24>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+16>>2]=0;c[(c[g>>2]|0)+12>>2]=0;c[d>>2]=c[h>>2];l=c[d>>2]|0;i=b;return l|0}function pZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+36|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[h>>2]=b;c[j>>2]=d;a[k>>0]=e;e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+304>>2]|0)){c[p>>2]=Fb[c[e+12>>2]&63](24)|0;if(!(c[p>>2]|0)){c[g>>2]=1;r=c[g>>2]|0;i=f;return r|0}}else{c[p>>2]=c[e+304>>2];c[(c[h>>2]|0)+304>>2]=c[(c[p>>2]|0)+8>>2]}a[(c[j>>2]|0)+32>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[(c[p>>2]|0)+8>>2]=c[(c[h>>2]|0)+300>>2];c[(c[h>>2]|0)+300>>2]=c[p>>2];c[(c[p>>2]|0)+12>>2]=c[j>>2];c[(c[p>>2]|0)+16>>2]=c[(c[h>>2]|0)+312>>2];a[(c[p>>2]|0)+20>>0]=a[k>>0]|0;c[c[p>>2]>>2]=0;c[(c[p>>2]|0)+4>>2]=0;c[l>>2]=c[(c[j>>2]|0)+4>>2];c[m>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[j>>2]|0)+8>>2]|0);k=c[h>>2]|0;if(a[(c[j>>2]|0)+33>>0]|0){c[q>>2]=Sb[c[c[k+228>>2]>>2]&127](c[(c[h>>2]|0)+228>>2]|0,c[l>>2]|0,c[m>>2]|0,n)|0;c[o>>2]=_Y(c[h>>2]|0,c[(c[h>>2]|0)+228>>2]|0,c[l>>2]|0,c[m>>2]|0,c[q>>2]|0,c[n>>2]|0,n,0)|0}else c[o>>2]=vZ(k,c[(c[h>>2]|0)+312>>2]|0,c[(c[h>>2]|0)+228>>2]|0,c[l>>2]|0,c[m>>2]|0,n,0)|0;do if(!(c[o>>2]|0)){if((c[m>>2]|0)!=(c[n>>2]|0)?(c[(c[h>>2]|0)+480>>2]|0)==3:0){c[(c[j>>2]|0)+12>>2]=(c[n>>2]|0)-(c[l>>2]|0);c[(c[h>>2]|0)+280>>2]=61;break}a[(c[j>>2]|0)+32>>0]=0;c[(c[h>>2]|0)+300>>2]=c[(c[p>>2]|0)+8>>2];c[(c[p>>2]|0)+8>>2]=c[(c[h>>2]|0)+304>>2];c[(c[h>>2]|0)+304>>2]=c[p>>2]}while(0);c[g>>2]=c[o>>2];r=c[g>>2]|0;i=f;return r|0}function qZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;j=b+4|0;k=b;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+356>>2];c[k>>2]=((c[(c[f>>2]|0)+176>>2]|0)*20|0)+(c[(c[f>>2]|0)+168>>2]|0);c[g>>2]=Fb[c[(c[e>>2]|0)+12>>2]&63](c[k>>2]|0)|0;if(c[g>>2]|0){c[j>>2]=(c[g>>2]|0)+((c[(c[f>>2]|0)+176>>2]|0)*20|0);c[h>>2]=(c[g>>2]|0)+20;uZ(c[e>>2]|0,0,c[g>>2]|0,h,j);c[d>>2]=c[g>>2];l=c[d>>2]|0;i=b;return l|0}else{c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}return 0}function rZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[(c[h>>2]|0)+64>>2]|0)){if(c[(c[h>>2]|0)+80>>2]|0)TY(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[g>>2]=1;p=c[g>>2]|0;i=f;return p|0}c[k>>2]=(c[k>>2]|0)+(c[(c[j>>2]|0)+68>>2]<<1);e=c[k>>2]|0;c[o>>2]=e+(Ob[c[(c[j>>2]|0)+32>>2]&127](c[j>>2]|0,c[k>>2]|0)|0);c[m>>2]=aZ((c[h>>2]|0)+416|0,c[j>>2]|0,c[k>>2]|0,c[o>>2]|0)|0;if(!(c[m>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}c[(c[h>>2]|0)+416+16>>2]=c[(c[h>>2]|0)+416+12>>2];k=(c[h>>2]|0)+416|0;e=c[j>>2]|0;d=Ob[c[(c[j>>2]|0)+36>>2]&127](c[j>>2]|0,c[o>>2]|0)|0;c[n>>2]=aZ(k,e,d,(c[l>>2]|0)+(0-(c[(c[j>>2]|0)+68>>2]<<1))|0)|0;if(c[n>>2]|0){tZ(c[n>>2]|0);Tb[c[(c[h>>2]|0)+64>>2]&127](c[(c[h>>2]|0)+4>>2]|0,c[m>>2]|0,c[n>>2]|0);KY((c[h>>2]|0)+416|0);c[g>>2]=1;p=c[g>>2]|0;i=f;return p|0}else{c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}return 0}function sZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+68>>2]|0)){if(c[e+80>>2]|0)TY(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}c[m>>2]=aZ(e+416|0,c[j>>2]|0,(c[k>>2]|0)+(c[(c[j>>2]|0)+68>>2]<<2)|0,(c[l>>2]|0)+(0-((c[(c[j>>2]|0)+68>>2]|0)*3|0))|0)|0;if(c[m>>2]|0){tZ(c[m>>2]|0);Db[c[(c[h>>2]|0)+68>>2]&31](c[(c[h>>2]|0)+4>>2]|0,c[m>>2]|0);KY((c[h>>2]|0)+416|0);c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}return 0}function tZ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;while(1){if(!(a[c[e>>2]>>0]|0)){g=12;break}h=c[e>>2]|0;if((a[c[e>>2]>>0]|0)==13)break;c[e>>2]=h+1}if((g|0)==12){i=d;return}c[f>>2]=h;do if((a[c[e>>2]>>0]|0)==13){h=c[f>>2]|0;c[f>>2]=h+1;a[h>>0]=10;h=(c[e>>2]|0)+1|0;c[e>>2]=h;if((a[h>>0]|0)==10)c[e>>2]=(c[e>>2]|0)+1}else{h=c[e>>2]|0;c[e>>2]=h+1;g=a[h>>0]|0;h=c[f>>2]|0;c[f>>2]=h+1;a[h>>0]=g}while((a[c[e>>2]>>0]|0)!=0);a[c[f>>2]>>0]=0;i=d;return}function uZ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+48|0;j=h+32|0;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[(c[j>>2]|0)+356>>2];c[c[l>>2]>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[k>>2]|0)*28|0)>>2];c[(c[l>>2]|0)+4>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[k>>2]|0)*28|0)+4>>2];if((c[c[l>>2]>>2]|0)==4){c[(c[l>>2]|0)+8>>2]=c[c[n>>2]>>2];c[p>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[k>>2]|0)*28|0)+8>>2];while(1){g=a[c[p>>2]>>0]|0;f=c[n>>2]|0;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=g;if(!(a[c[p>>2]>>0]|0))break;c[p>>2]=(c[p>>2]|0)+1}c[(c[l>>2]|0)+12>>2]=0;c[(c[l>>2]|0)+16>>2]=0;i=h;return}else{c[(c[l>>2]|0)+12>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[k>>2]|0)*28|0)+20>>2];c[(c[l>>2]|0)+16>>2]=c[c[m>>2]>>2];p=c[m>>2]|0;c[p>>2]=(c[p>>2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*20|0);c[q>>2]=0;c[r>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[k>>2]|0)*28|0)+12>>2];while(1){if((c[q>>2]|0)>>>0>=(c[(c[l>>2]|0)+12>>2]|0)>>>0)break;uZ(c[j>>2]|0,c[r>>2]|0,(c[(c[l>>2]|0)+16>>2]|0)+((c[q>>2]|0)*20|0)|0,c[m>>2]|0,c[n>>2]|0);c[q>>2]=(c[q>>2]|0)+1;c[r>>2]=c[(c[(c[o>>2]|0)+164>>2]|0)+((c[r>>2]|0)*28|0)+24>>2]}c[(c[l>>2]|0)+8>>2]=0;i=h;return}}function vZ(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;l=i;i=i+208|0;m=l+184|0;n=l+180|0;o=l+176|0;p=l+172|0;q=l+168|0;r=l+164|0;s=l+160|0;t=l+199|0;u=l+156|0;v=l+152|0;w=l+148|0;x=l+144|0;y=l+140|0;z=l+198|0;A=l+136|0;B=l+132|0;C=l+197|0;D=l+128|0;E=l+124|0;F=l+120|0;G=l+116|0;H=l+112|0;I=l+108|0;J=l+104|0;K=l+100|0;L=l+96|0;M=l+92|0;N=l+88|0;O=l+84|0;P=l+80|0;Q=l+196|0;R=l+56|0;S=l+48|0;T=l+44|0;U=l+40|0;V=l+36|0;W=l+32|0;X=l+28|0;Y=l+24|0;Z=l+20|0;_=l+16|0;$=l+192|0;aa=l+188|0;ba=l+12|0;ca=l+8|0;da=l+4|0;ea=l;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;a[t>>0]=k;c[u>>2]=c[(c[n>>2]|0)+356>>2];k=c[n>>2]|0;if((c[p>>2]|0)==(c[(c[n>>2]|0)+144>>2]|0)){c[v>>2]=k+288;c[w>>2]=(c[n>>2]|0)+292}else{c[v>>2]=c[k+300>>2];c[w>>2]=(c[(c[n>>2]|0)+300>>2]|0)+4}c[c[v>>2]>>2]=c[q>>2];a:while(1){c[x>>2]=c[q>>2];c[y>>2]=Sb[c[(c[p>>2]|0)+4>>2]&127](c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,x)|0;c[c[w>>2]>>2]=c[x>>2];b:do switch(c[y>>2]|0){case -3:{fa=6;break a;break}case -4:{fa=17;break a;break}case 0:{fa=24;break a;break}case -1:{fa=25;break a;break}case -2:{fa=28;break a;break}case 12:{fa=138;break a;break}case -5:{fa=151;break a;break}case 9:{a[C>>0]=Hb[c[(c[p>>2]|0)+48>>2]&63](c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[x>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(a[C>>0]|0){k=c[n>>2]|0;if(c[(c[n>>2]|0)+60>>2]|0){Tb[c[k+60>>2]&127](c[(c[n>>2]|0)+4>>2]|0,C,1);break b}if(!(c[k+80>>2]|0))break b;TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break b}c[A>>2]=aZ((c[u>>2]|0)+80|0,c[p>>2]|0,(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0)|0,(c[x>>2]|0)+(0-(c[(c[p>>2]|0)+68>>2]|0))|0)|0;if(!(c[A>>2]|0)){fa=37;break a}c[B>>2]=bZ(c[n>>2]|0,c[u>>2]|0,c[A>>2]|0,0)|0;c[(c[u>>2]|0)+80+12>>2]=c[(c[u>>2]|0)+80+16>>2];if((a[(c[u>>2]|0)+129>>0]|0)!=0?(d[(c[u>>2]|0)+130>>0]|0)==0:0){if(!(c[B>>2]|0)){k=c[n>>2]|0;if(c[(c[n>>2]|0)+120>>2]|0){Tb[c[k+120>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[A>>2]|0,0);break b}if(!(c[k+80>>2]|0))break b;TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break b}}else{if(!(c[B>>2]|0)){fa=41;break a}if(!(a[(c[B>>2]|0)+34>>0]|0)){fa=43;break a}}if(a[(c[B>>2]|0)+32>>0]|0){fa=50;break a}if(c[(c[B>>2]|0)+28>>2]|0){fa=52;break a}k=c[n>>2]|0;if(c[(c[B>>2]|0)+4>>2]|0){j=c[n>>2]|0;if(a[k+308>>0]|0){c[D>>2]=pZ(j,c[B>>2]|0,0)|0;if(c[D>>2]|0){fa=60;break a}else break b}h=c[n>>2]|0;if(c[j+120>>2]|0){Tb[c[h+120>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[c[B>>2]>>2]|0,0);break b}if(!(c[h+80>>2]|0))break b;TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break b}else{if(!(c[k+112>>2]|0)){if(!(c[(c[n>>2]|0)+80>>2]|0))break b;TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break b}a[(c[B>>2]|0)+32>>0]=1;c[E>>2]=xZ(c[n>>2]|0)|0;a[(c[B>>2]|0)+32>>0]=0;if(!(c[E>>2]|0)){fa=63;break a}if(!(Gb[c[(c[n>>2]|0)+112>>2]&63](c[(c[n>>2]|0)+116>>2]|0,c[E>>2]|0,c[(c[B>>2]|0)+20>>2]|0,c[(c[B>>2]|0)+16>>2]|0,c[(c[B>>2]|0)+24>>2]|0)|0)){fa=65;break a}c[(c[n>>2]|0)+416+12>>2]=c[(c[n>>2]|0)+416+16>>2];break b}break}case 1:case 2:{k=c[n>>2]|0;if(c[(c[n>>2]|0)+368>>2]|0){c[F>>2]=c[k+368>>2];c[(c[n>>2]|0)+368>>2]=c[c[(c[n>>2]|0)+368>>2]>>2]}else{c[F>>2]=Fb[c[k+12>>2]&63](48)|0;if(!(c[F>>2]|0)){fa=72;break a}k=Fb[c[(c[n>>2]|0)+12>>2]&63](32)|0;c[(c[F>>2]|0)+36>>2]=k;if(!(c[(c[F>>2]|0)+36>>2]|0)){fa=74;break a}c[(c[F>>2]|0)+40>>2]=(c[(c[F>>2]|0)+36>>2]|0)+32}c[(c[F>>2]|0)+44>>2]=0;c[c[F>>2]>>2]=c[(c[n>>2]|0)+364>>2];c[(c[n>>2]|0)+364>>2]=c[F>>2];c[(c[F>>2]|0)+12+4>>2]=0;c[(c[F>>2]|0)+12+8>>2]=0;c[(c[F>>2]|0)+4>>2]=(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0);k=Ob[c[(c[p>>2]|0)+32>>2]&127](c[p>>2]|0,c[(c[F>>2]|0)+4>>2]|0)|0;c[(c[F>>2]|0)+8>>2]=k;k=(c[n>>2]|0)+312|0;c[k>>2]=(c[k>>2]|0)+1;c[I>>2]=(c[(c[F>>2]|0)+4>>2]|0)+(c[(c[F>>2]|0)+8>>2]|0);c[J>>2]=c[(c[F>>2]|0)+4>>2];c[H>>2]=c[(c[F>>2]|0)+36>>2];while(1){Ab[c[(c[p>>2]|0)+60>>2]&31](c[p>>2]|0,J,c[I>>2]|0,H,(c[(c[F>>2]|0)+40>>2]|0)+-1|0);c[L>>2]=(c[H>>2]|0)-(c[(c[F>>2]|0)+36>>2]|0);if((c[J>>2]|0)==(c[I>>2]|0))break;c[K>>2]=(c[(c[F>>2]|0)+40>>2]|0)-(c[(c[F>>2]|0)+36>>2]|0)<<1;c[M>>2]=Ob[c[(c[n>>2]|0)+12+4>>2]&127](c[(c[F>>2]|0)+36>>2]|0,c[K>>2]|0)|0;if(!(c[M>>2]|0)){fa=80;break a}c[(c[F>>2]|0)+36>>2]=c[M>>2];c[(c[F>>2]|0)+40>>2]=(c[M>>2]|0)+(c[K>>2]|0);c[H>>2]=(c[M>>2]|0)+(c[L>>2]|0)}c[(c[F>>2]|0)+12+12>>2]=c[L>>2];c[(c[F>>2]|0)+12>>2]=c[(c[F>>2]|0)+36>>2];a[c[H>>2]>>0]=0;c[G>>2]=yZ(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,(c[F>>2]|0)+12|0,(c[F>>2]|0)+44|0)|0;if(c[G>>2]|0){fa=82;break a}k=c[n>>2]|0;if(!(c[(c[n>>2]|0)+52>>2]|0)){if(c[k+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)}else Tb[c[k+52>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[(c[F>>2]|0)+12>>2]|0,c[(c[n>>2]|0)+392>>2]|0);KY((c[n>>2]|0)+416|0);break}case 3:case 4:{c[N>>2]=(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]|0);c[P>>2]=0;a[Q>>0]=1;k=(c[n>>2]|0)+416|0;h=c[p>>2]|0;j=c[N>>2]|0;g=c[N>>2]|0;c[R>>2]=aZ(k,h,j,g+(Ob[c[(c[p>>2]|0)+32>>2]&127](c[p>>2]|0,c[N>>2]|0)|0)|0)|0;if(!(c[R>>2]|0)){fa=89;break a}c[(c[n>>2]|0)+416+16>>2]=c[(c[n>>2]|0)+416+12>>2];c[O>>2]=yZ(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,R,P)|0;if(c[O>>2]|0){fa=91;break a}c[(c[n>>2]|0)+416+16>>2]=c[(c[n>>2]|0)+416+12>>2];if(c[(c[n>>2]|0)+52>>2]|0){Tb[c[(c[n>>2]|0)+52>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[R>>2]|0,c[(c[n>>2]|0)+392>>2]|0);a[Q>>0]=0}if(c[(c[n>>2]|0)+56>>2]|0){if(c[(c[n>>2]|0)+52>>2]|0)c[c[v>>2]>>2]=c[c[w>>2]>>2];Db[c[(c[n>>2]|0)+56>>2]&31](c[(c[n>>2]|0)+4>>2]|0,c[R>>2]|0);a[Q>>0]=0}if((d[Q>>0]|0)!=0?(c[(c[n>>2]|0)+80>>2]|0)!=0:0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);KY((c[n>>2]|0)+416|0);while(1){if(!(c[P>>2]|0))break;c[S>>2]=c[P>>2];if(c[(c[n>>2]|0)+104>>2]|0)Db[c[(c[n>>2]|0)+104>>2]&31](c[(c[n>>2]|0)+4>>2]|0,c[c[c[S>>2]>>2]>>2]|0);c[P>>2]=c[(c[P>>2]|0)+4>>2];c[(c[S>>2]|0)+4>>2]=c[(c[n>>2]|0)+376>>2];c[(c[n>>2]|0)+376>>2]=c[S>>2];c[(c[c[S>>2]>>2]|0)+4>>2]=c[(c[S>>2]|0)+8>>2]}if(!(c[(c[n>>2]|0)+312>>2]|0)){fa=107;break a}break}case 5:{if((c[(c[n>>2]|0)+312>>2]|0)==(c[o>>2]|0)){fa=109;break a}c[V>>2]=c[(c[n>>2]|0)+364>>2];c[(c[n>>2]|0)+364>>2]=c[c[V>>2]>>2];c[c[V>>2]>>2]=c[(c[n>>2]|0)+368>>2];c[(c[n>>2]|0)+368>>2]=c[V>>2];c[U>>2]=(c[q>>2]|0)+(c[(c[p>>2]|0)+68>>2]<<1);c[T>>2]=Ob[c[(c[p>>2]|0)+32>>2]&127](c[p>>2]|0,c[U>>2]|0)|0;if((c[T>>2]|0)!=(c[(c[V>>2]|0)+8>>2]|0)){fa=112;break a}if(B3(c[(c[V>>2]|0)+4>>2]|0,c[U>>2]|0,c[T>>2]|0)|0){fa=112;break a}g=(c[n>>2]|0)+312|0;c[g>>2]=(c[g>>2]|0)+-1;if(!(c[(c[n>>2]|0)+56>>2]|0)){if(c[(c[n>>2]|0)+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)}else{c[W>>2]=c[(c[V>>2]|0)+12+4>>2];if((c[W>>2]|0)!=0?(d[(c[n>>2]|0)+236>>0]|0)!=0:0){c[Y>>2]=(c[(c[V>>2]|0)+12>>2]|0)+(c[(c[V>>2]|0)+12+16>>2]|0);while(1){if(!(a[c[W>>2]>>0]|0))break;g=c[W>>2]|0;c[W>>2]=g+1;j=a[g>>0]|0;g=c[Y>>2]|0;c[Y>>2]=g+1;a[g>>0]=j}c[X>>2]=c[(c[V>>2]|0)+12+8>>2];c:do if((c[X>>2]|0)!=0?(d[(c[n>>2]|0)+237>>0]|0)!=0:0){j=a[(c[n>>2]|0)+472>>0]|0;g=c[Y>>2]|0;c[Y>>2]=g+1;a[g>>0]=j;while(1){if(!(a[c[X>>2]>>0]|0))break c;j=c[X>>2]|0;c[X>>2]=j+1;g=a[j>>0]|0;j=c[Y>>2]|0;c[Y>>2]=j+1;a[j>>0]=g}}while(0);a[c[Y>>2]>>0]=0}Db[c[(c[n>>2]|0)+56>>2]&31](c[(c[n>>2]|0)+4>>2]|0,c[(c[V>>2]|0)+12>>2]|0)}while(1){if(!(c[(c[V>>2]|0)+44>>2]|0))break;c[Z>>2]=c[(c[V>>2]|0)+44>>2];if(c[(c[n>>2]|0)+104>>2]|0)Db[c[(c[n>>2]|0)+104>>2]&31](c[(c[n>>2]|0)+4>>2]|0,c[c[c[Z>>2]>>2]>>2]|0);c[(c[V>>2]|0)+44>>2]=c[(c[(c[V>>2]|0)+44>>2]|0)+4>>2];c[(c[Z>>2]|0)+4>>2]=c[(c[n>>2]|0)+376>>2];c[(c[n>>2]|0)+376>>2]=c[Z>>2];c[(c[c[Z>>2]>>2]|0)+4>>2]=c[(c[Z>>2]|0)+8>>2]}if(!(c[(c[n>>2]|0)+312>>2]|0)){fa=131;break a}break}case 10:{c[_>>2]=Ob[c[(c[p>>2]|0)+44>>2]&127](c[p>>2]|0,c[q>>2]|0)|0;if((c[_>>2]|0)<0){fa=133;break a}g=c[n>>2]|0;if(c[(c[n>>2]|0)+60>>2]|0){j=c[g+60>>2]|0;h=c[(c[n>>2]|0)+4>>2]|0;k=OZ(c[_>>2]|0,$)|0;Tb[j&127](h,$,k);break b}if(c[g+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break}case 7:{if(c[(c[n>>2]|0)+60>>2]|0){a[aa>>0]=10;Tb[c[(c[n>>2]|0)+60>>2]&127](c[(c[n>>2]|0)+4>>2]|0,aa,1);break b}if(c[(c[n>>2]|0)+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break}case 8:{g=c[n>>2]|0;if(!(c[(c[n>>2]|0)+72>>2]|0)){if(c[g+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)}else Bb[c[g+72>>2]&127](c[(c[n>>2]|0)+4>>2]|0);c[ba>>2]=AZ(c[n>>2]|0,c[p>>2]|0,x,c[r>>2]|0,c[s>>2]|0,a[t>>0]|0)|0;if(c[ba>>2]|0){fa=148;break a}if(!(c[x>>2]|0)){fa=150;break a}break}case 6:{c[da>>2]=c[(c[n>>2]|0)+60>>2];if(!(c[da>>2]|0)){if(!(c[(c[n>>2]|0)+80>>2]|0))break b;TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0);break b}if(a[(c[p>>2]|0)+72>>0]|0){Tb[c[da>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[q>>2]|0,(c[x>>2]|0)-(c[q>>2]|0)|0);break b}while(1){c[ea>>2]=c[(c[n>>2]|0)+44>>2];Ab[c[(c[p>>2]|0)+60>>2]&31](c[p>>2]|0,q,c[x>>2]|0,ea,c[(c[n>>2]|0)+48>>2]|0);c[c[w>>2]>>2]=c[q>>2];Tb[c[da>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+44>>2]|0,(c[ea>>2]|0)-(c[(c[n>>2]|0)+44>>2]|0)|0);if((c[q>>2]|0)==(c[x>>2]|0))break b;c[c[v>>2]>>2]=c[q>>2]}break}case 11:{if(!(rZ(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)|0)){fa=172;break a}break}case 13:{if(!(sZ(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)|0)){fa=174;break a}break}default:if(c[(c[n>>2]|0)+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[x>>2]|0)}while(0);g=c[x>>2]|0;c[q>>2]=g;c[c[v>>2]>>2]=g;switch(c[(c[n>>2]|0)+480>>2]|0){case 3:{fa=178;break a;break}case 2:{fa=179;break a;break}default:{}}}switch(fa|0){case 6:{if(a[t>>0]|0){c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}c[c[w>>2]>>2]=c[r>>2];if(!(c[(c[n>>2]|0)+60>>2]|0)){if(c[(c[n>>2]|0)+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)}else{a[z>>0]=10;Tb[c[(c[n>>2]|0)+60>>2]&127](c[(c[n>>2]|0)+4>>2]|0,z,1)}if(!(c[o>>2]|0)){c[m>>2]=3;ga=c[m>>2]|0;i=l;return ga|0}if((c[(c[n>>2]|0)+312>>2]|0)!=(c[o>>2]|0)){c[m>>2]=13;ga=c[m>>2]|0;i=l;return ga|0}else{c[c[s>>2]>>2]=c[r>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}break}case 17:{if(a[t>>0]|0){c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}if((c[o>>2]|0)<=0){c[m>>2]=3;ga=c[m>>2]|0;i=l;return ga|0}if((c[(c[n>>2]|0)+312>>2]|0)!=(c[o>>2]|0)){c[m>>2]=13;ga=c[m>>2]|0;i=l;return ga|0}else{c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}break}case 24:{c[c[v>>2]>>2]=c[x>>2];c[m>>2]=4;ga=c[m>>2]|0;i=l;return ga|0}case 25:{if(a[t>>0]|0){c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}else{c[m>>2]=5;ga=c[m>>2]|0;i=l;return ga|0}break}case 28:{if(a[t>>0]|0){c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}else{c[m>>2]=6;ga=c[m>>2]|0;i=l;return ga|0}break}case 37:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 41:{c[m>>2]=11;ga=c[m>>2]|0;i=l;return ga|0}case 43:{c[m>>2]=24;ga=c[m>>2]|0;i=l;return ga|0}case 50:{c[m>>2]=12;ga=c[m>>2]|0;i=l;return ga|0}case 52:{c[m>>2]=15;ga=c[m>>2]|0;i=l;return ga|0}case 60:{c[m>>2]=c[D>>2];ga=c[m>>2]|0;i=l;return ga|0}case 63:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 65:{c[m>>2]=21;ga=c[m>>2]|0;i=l;return ga|0}case 72:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 74:{Bb[c[(c[n>>2]|0)+12+8>>2]&127](c[F>>2]|0);c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 80:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 82:{c[m>>2]=c[G>>2];ga=c[m>>2]|0;i=l;return ga|0}case 89:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 91:{c[m>>2]=c[O>>2];ga=c[m>>2]|0;i=l;return ga|0}case 107:{c[m>>2]=zZ(c[n>>2]|0,c[x>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;ga=c[m>>2]|0;i=l;return ga|0}case 109:{c[m>>2]=13;ga=c[m>>2]|0;i=l;return ga|0}case 112:{c[c[v>>2]>>2]=c[U>>2];c[m>>2]=7;ga=c[m>>2]|0;i=l;return ga|0}case 131:{c[m>>2]=zZ(c[n>>2]|0,c[x>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;ga=c[m>>2]|0;i=l;return ga|0}case 133:{c[m>>2]=14;ga=c[m>>2]|0;i=l;return ga|0}case 138:{c[m>>2]=17;ga=c[m>>2]|0;i=l;return ga|0}case 148:{c[m>>2]=c[ba>>2];ga=c[m>>2]|0;i=l;return ga|0}case 150:{c[(c[n>>2]|0)+280>>2]=62;c[m>>2]=c[ba>>2];ga=c[m>>2]|0;i=l;return ga|0}case 151:{if(a[t>>0]|0){c[c[s>>2]>>2]=c[q>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}do if(c[(c[n>>2]|0)+60>>2]|0){t=c[n>>2]|0;if(a[(c[p>>2]|0)+72>>0]|0){Tb[c[t+60>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[q>>2]|0,(c[r>>2]|0)-(c[q>>2]|0)|0);break}else{c[ca>>2]=c[t+44>>2];Ab[c[(c[p>>2]|0)+60>>2]&31](c[p>>2]|0,q,c[r>>2]|0,ca,c[(c[n>>2]|0)+48>>2]|0);Tb[c[(c[n>>2]|0)+60>>2]&127](c[(c[n>>2]|0)+4>>2]|0,c[(c[n>>2]|0)+44>>2]|0,(c[ca>>2]|0)-(c[(c[n>>2]|0)+44>>2]|0)|0);break}}else if(c[(c[n>>2]|0)+80>>2]|0)TY(c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0);while(0);if(!(c[o>>2]|0)){c[c[v>>2]>>2]=c[r>>2];c[m>>2]=3;ga=c[m>>2]|0;i=l;return ga|0}q=c[r>>2]|0;if((c[(c[n>>2]|0)+312>>2]|0)!=(c[o>>2]|0)){c[c[v>>2]>>2]=q;c[m>>2]=13;ga=c[m>>2]|0;i=l;return ga|0}else{c[c[s>>2]>>2]=q;c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}break}case 172:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 174:{c[m>>2]=1;ga=c[m>>2]|0;i=l;return ga|0}case 178:{c[c[s>>2]>>2]=c[x>>2];c[m>>2]=0;ga=c[m>>2]|0;i=l;return ga|0}case 179:{c[m>>2]=35;ga=c[m>>2]|0;i=l;return ga|0}}return 0}function wZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+64|0;h=g+48|0;j=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+12|0;s=g+8|0;t=g+4|0;u=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[s>>2]=c[(c[j>>2]|0)+300>>2];if(!(c[s>>2]|0)){c[h>>2]=23;v=c[h>>2]|0;i=g;return v|0}c[n>>2]=c[(c[s>>2]|0)+12>>2];c[o>>2]=(c[(c[n>>2]|0)+4>>2]|0)+(c[(c[n>>2]|0)+12>>2]|0);c[p>>2]=(c[(c[n>>2]|0)+4>>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);f=c[j>>2]|0;if(a[(c[n>>2]|0)+33>>0]|0){c[t>>2]=Sb[c[c[f+228>>2]>>2]&127](c[(c[j>>2]|0)+228>>2]|0,c[o>>2]|0,c[p>>2]|0,q)|0;c[r>>2]=_Y(c[j>>2]|0,c[(c[j>>2]|0)+228>>2]|0,c[o>>2]|0,c[p>>2]|0,c[t>>2]|0,c[q>>2]|0,q,0)|0}else c[r>>2]=vZ(f,c[(c[s>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+228>>2]|0,c[o>>2]|0,c[p>>2]|0,q,0)|0;if(c[r>>2]|0){c[h>>2]=c[r>>2];v=c[h>>2]|0;i=g;return v|0}if((c[p>>2]|0)!=(c[q>>2]|0)?(c[(c[j>>2]|0)+480>>2]|0)==3:0){c[(c[n>>2]|0)+12>>2]=(c[q>>2]|0)-(c[(c[n>>2]|0)+4>>2]|0);c[h>>2]=c[r>>2];v=c[h>>2]|0;i=g;return v|0}a[(c[n>>2]|0)+32>>0]=0;c[(c[j>>2]|0)+300>>2]=c[(c[s>>2]|0)+8>>2];c[(c[s>>2]|0)+8>>2]=c[(c[j>>2]|0)+304>>2];c[(c[j>>2]|0)+304>>2]=c[s>>2];s=(c[j>>2]|0)+280|0;if(a[(c[n>>2]|0)+33>>0]|0){c[s>>2]=60;c[u>>2]=Sb[c[c[(c[j>>2]|0)+144>>2]>>2]&127](c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,q)|0;c[h>>2]=_Y(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,c[u>>2]|0,c[q>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;v=c[h>>2]|0;i=g;return v|0}else{c[s>>2]=58;c[h>>2]=vZ(c[j>>2]|0,(c[(c[j>>2]|0)+476>>2]|0)!=0?1:0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;v=c[h>>2]|0;i=g;return v|0}return 0}function xZ(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;h=e+40|0;j=e+32|0;k=e+52|0;l=e+28|0;m=e+24|0;n=e+20|0;o=e+16|0;p=e+12|0;q=e+8|0;r=e+4|0;s=e;c[g>>2]=b;c[h>>2]=c[(c[g>>2]|0)+356>>2];a[k>>0]=0;do if(c[(c[h>>2]|0)+152+4>>2]|0){if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}b=(c[g>>2]|0)+416+12|0;u=c[b>>2]|0;c[b>>2]=u+1;a[u>>0]=61;c[m>>2]=c[(c[(c[h>>2]|0)+152+4>>2]|0)+20>>2];if(a[(c[g>>2]|0)+472>>0]|0)c[m>>2]=(c[m>>2]|0)+-1;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0)){v=13;break}if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0)break;u=a[(c[(c[(c[h>>2]|0)+152+4>>2]|0)+16>>2]|0)+(c[l>>2]|0)>>0]|0;b=(c[g>>2]|0)+416+12|0;w=c[b>>2]|0;c[b>>2]=w+1;a[w>>0]=u;c[l>>2]=(c[l>>2]|0)+1}if((v|0)==13){a[k>>0]=1;break}c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}while(0);VY(j,(c[h>>2]|0)+60|0);a:while(1){c[q>>2]=WY(j)|0;if(!(c[q>>2]|0)){v=40;break}if(!(c[(c[q>>2]|0)+4>>2]|0))continue;if(d[k>>0]|0){if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=21;break}l=(c[g>>2]|0)+416+12|0;m=c[l>>2]|0;c[l>>2]=m+1;a[m>>0]=12}c[p>>2]=c[c[q>>2]>>2];while(1){x=(c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0);if(!(a[c[p>>2]>>0]|0))break;if(x?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=27;break a}m=a[c[p>>2]>>0]|0;l=(c[g>>2]|0)+416+12|0;u=c[l>>2]|0;c[l>>2]=u+1;a[u>>0]=m;c[p>>2]=(c[p>>2]|0)+1}if(x?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=31;break}m=(c[g>>2]|0)+416+12|0;u=c[m>>2]|0;c[m>>2]=u+1;a[u>>0]=61;c[o>>2]=c[(c[(c[q>>2]|0)+4>>2]|0)+20>>2];if(a[(c[g>>2]|0)+472>>0]|0)c[o>>2]=(c[o>>2]|0)+-1;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=38;break a}u=a[(c[(c[(c[q>>2]|0)+4>>2]|0)+16>>2]|0)+(c[n>>2]|0)>>0]|0;m=(c[g>>2]|0)+416+12|0;l=c[m>>2]|0;c[m>>2]=l+1;a[l>>0]=u;c[n>>2]=(c[n>>2]|0)+1}a[k>>0]=1}if((v|0)==21){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==27){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==31){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==38){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==40){VY(j,c[h>>2]|0);b:while(1){c[s>>2]=WY(j)|0;if(!(c[s>>2]|0)){v=55;break}if(!(a[(c[s>>2]|0)+32>>0]|0))continue;if(d[k>>0]|0){if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=47;break}h=(c[g>>2]|0)+416+12|0;n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=12}c[r>>2]=c[c[s>>2]>>2];while(1){if(!(a[c[r>>2]>>0]|0))break;if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){v=53;break b}n=a[c[r>>2]>>0]|0;h=(c[g>>2]|0)+416+12|0;q=c[h>>2]|0;c[h>>2]=q+1;a[q>>0]=n;c[r>>2]=(c[r>>2]|0)+1}a[k>>0]=1}if((v|0)==47){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==53){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}else if((v|0)==55){if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}v=(c[g>>2]|0)+416+12|0;k=c[v>>2]|0;c[v>>2]=k+1;a[k>>0]=0;c[f>>2]=c[(c[g>>2]|0)+416+16>>2];t=c[f>>2]|0;i=e;return t|0}}return 0}function yZ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;j=i;i=i+176|0;k=j+156|0;l=j+152|0;m=j+148|0;n=j+144|0;o=j+140|0;p=j+136|0;q=j+132|0;r=j+128|0;s=j+124|0;t=j+120|0;u=j+116|0;v=j+112|0;w=j+108|0;x=j+104|0;y=j+100|0;z=j+96|0;A=j+92|0;B=j+88|0;C=j+84|0;D=j+80|0;E=j+76|0;F=j+72|0;G=j+68|0;H=j+64|0;I=j+163|0;J=j+60|0;K=j+56|0;L=j+52|0;M=j+48|0;N=j+44|0;O=j+40|0;P=j+36|0;Q=j+32|0;R=j+28|0;S=j+24|0;T=j+20|0;U=j+16|0;V=j+162|0;W=j+161|0;X=j+160|0;Y=j+12|0;Z=j+8|0;_=j+4|0;$=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[(c[l>>2]|0)+356>>2];c[u>>2]=0;c[z>>2]=0;c[r>>2]=bZ(c[l>>2]|0,(c[q>>2]|0)+20|0,c[c[o>>2]>>2]|0,0)|0;if(!(c[r>>2]|0)){c[C>>2]=MY((c[q>>2]|0)+80|0,c[c[o>>2]>>2]|0)|0;if(!(c[C>>2]|0)){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}c[r>>2]=bZ(c[l>>2]|0,(c[q>>2]|0)+20|0,c[C>>2]|0,24)|0;if(!(c[r>>2]|0)){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}if((d[(c[l>>2]|0)+236>>0]|0)!=0?(EZ(c[l>>2]|0,c[r>>2]|0)|0)==0:0){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}}c[s>>2]=c[(c[r>>2]|0)+12>>2];c[x>>2]=Sb[c[(c[m>>2]|0)+40>>2]&127](c[m>>2]|0,c[n>>2]|0,c[(c[l>>2]|0)+380>>2]|0,c[(c[l>>2]|0)+392>>2]|0)|0;do if(((c[x>>2]|0)+(c[s>>2]|0)|0)>(c[(c[l>>2]|0)+380>>2]|0)){c[D>>2]=c[(c[l>>2]|0)+380>>2];c[(c[l>>2]|0)+380>>2]=(c[x>>2]|0)+(c[s>>2]|0)+16;c[E>>2]=Ob[c[(c[l>>2]|0)+12+4>>2]&127](c[(c[l>>2]|0)+392>>2]|0,c[(c[l>>2]|0)+380>>2]<<4)|0;if(!(c[E>>2]|0)){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else{c[(c[l>>2]|0)+392>>2]=c[E>>2];if((c[x>>2]|0)<=(c[D>>2]|0))break;Sb[c[(c[m>>2]|0)+40>>2]&127](c[m>>2]|0,c[n>>2]|0,c[x>>2]|0,c[(c[l>>2]|0)+392>>2]|0)|0;break}}while(0);c[t>>2]=c[(c[l>>2]|0)+392>>2];c[w>>2]=0;a:while(1){if((c[w>>2]|0)>=(c[x>>2]|0)){ba=43;break}c[F>>2]=(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4);n=c[l>>2]|0;D=c[m>>2]|0;E=c[c[F>>2]>>2]|0;C=c[c[F>>2]>>2]|0;c[G>>2]=fZ(n,D,E,C+(Ob[c[(c[m>>2]|0)+32>>2]&127](c[m>>2]|0,c[c[F>>2]>>2]|0)|0)|0)|0;if(!(c[G>>2]|0)){ba=17;break}if(a[(c[c[G>>2]>>2]|0)+-1>>0]|0){ba=19;break}a[(c[c[G>>2]>>2]|0)+-1>>0]=1;C=c[c[G>>2]>>2]|0;E=c[u>>2]|0;c[u>>2]=E+1;c[(c[t>>2]|0)+(E<<2)>>2]=C;if(a[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)+12>>0]|0){C=aZ((c[l>>2]|0)+416|0,c[m>>2]|0,c[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)+4>>2]|0,c[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)+8>>2]|0)|0;c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]=C;if(!(c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]|0)){ba=33;break}c[(c[l>>2]|0)+416+16>>2]=c[(c[l>>2]|0)+416+12>>2]}else{a[I>>0]=1;b:do if(a[(c[G>>2]|0)+8>>0]|0){c[J>>2]=0;while(1){if((c[J>>2]|0)>=(c[s>>2]|0))break b;ca=c[J>>2]|0;if((c[G>>2]|0)==(c[(c[(c[r>>2]|0)+20>>2]|0)+((c[J>>2]|0)*12|0)>>2]|0))break;c[J>>2]=ca+1}a[I>>0]=a[(c[(c[r>>2]|0)+20>>2]|0)+(ca*12|0)+4>>0]|0}while(0);c[H>>2]=kZ(c[l>>2]|0,c[m>>2]|0,a[I>>0]|0,c[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)+4>>2]|0,c[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)+8>>2]|0,(c[l>>2]|0)+416|0)|0;if(c[H>>2]|0){ba=30;break}c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]=c[(c[l>>2]|0)+416+16>>2];c[(c[l>>2]|0)+416+16>>2]=c[(c[l>>2]|0)+416+12>>2]}do if(c[(c[G>>2]|0)+4>>2]|0){if(!(a[(c[G>>2]|0)+9>>0]|0)){c[u>>2]=(c[u>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+1;a[(c[c[G>>2]>>2]|0)+-1>>0]=2;break}c[K>>2]=FZ(c[l>>2]|0,c[(c[G>>2]|0)+4>>2]|0,c[G>>2]|0,c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]|0,c[p>>2]|0)|0;if(c[K>>2]|0){ba=38;break a}c[u>>2]=(c[u>>2]|0)+-1}else c[u>>2]=(c[u>>2]|0)+1;while(0);c[w>>2]=(c[w>>2]|0)+1}if((ba|0)==17){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==19){if((c[m>>2]|0)==(c[(c[l>>2]|0)+144>>2]|0))c[(c[l>>2]|0)+288>>2]=c[(c[(c[l>>2]|0)+392>>2]|0)+(c[w>>2]<<4)>>2];c[k>>2]=8;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==30){c[k>>2]=c[H>>2];aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==33){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==38){c[k>>2]=c[K>>2];aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==43){c[(c[l>>2]|0)+384>>2]=c[u>>2];c:do if((c[(c[r>>2]|0)+8>>2]|0)!=0?(a[(c[c[(c[r>>2]|0)+8>>2]>>2]|0)+-1>>0]|0)!=0:0){c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break c;da=c[w>>2]|0;if((c[(c[t>>2]|0)+(c[w>>2]<<2)>>2]|0)==(c[c[(c[r>>2]|0)+8>>2]>>2]|0))break;c[w>>2]=da+2}c[(c[l>>2]|0)+388>>2]=da}else ba=50;while(0);if((ba|0)==50)c[(c[l>>2]|0)+388>>2]=-1;c[w>>2]=0;d:while(1){if((c[w>>2]|0)>=(c[s>>2]|0))break;c[L>>2]=(c[(c[r>>2]|0)+20>>2]|0)+((c[w>>2]|0)*12|0);do if((a[(c[c[c[L>>2]>>2]>>2]|0)+-1>>0]|0)==0?(c[(c[L>>2]|0)+8>>2]|0)!=0:0){da=c[c[L>>2]>>2]|0;if(!(c[(c[c[L>>2]>>2]|0)+4>>2]|0)){a[(c[da>>2]|0)+-1>>0]=1;K=c[c[c[L>>2]>>2]>>2]|0;H=c[u>>2]|0;c[u>>2]=H+1;c[(c[t>>2]|0)+(H<<2)>>2]=K;K=c[(c[L>>2]|0)+8>>2]|0;H=c[u>>2]|0;c[u>>2]=H+1;c[(c[t>>2]|0)+(H<<2)>>2]=K;break}if(a[da+9>>0]|0){c[M>>2]=FZ(c[l>>2]|0,c[(c[c[L>>2]>>2]|0)+4>>2]|0,c[c[L>>2]>>2]|0,c[(c[L>>2]|0)+8>>2]|0,c[p>>2]|0)|0;if(c[M>>2]|0){ba=58;break d}else break}else{a[(c[c[c[L>>2]>>2]>>2]|0)+-1>>0]=2;c[z>>2]=(c[z>>2]|0)+1;da=c[c[c[L>>2]>>2]>>2]|0;K=c[u>>2]|0;c[u>>2]=K+1;c[(c[t>>2]|0)+(K<<2)>>2]=da;da=c[(c[L>>2]|0)+8>>2]|0;K=c[u>>2]|0;c[u>>2]=K+1;c[(c[t>>2]|0)+(K<<2)>>2]=da;break}}while(0);c[w>>2]=(c[w>>2]|0)+1}if((ba|0)==58){c[k>>2]=c[M>>2];aa=c[k>>2]|0;i=j;return aa|0}c[(c[t>>2]|0)+(c[u>>2]<<2)>>2]=0;c[w>>2]=0;e:do if(c[z>>2]|0){c[O>>2]=c[(c[l>>2]|0)+400>>2];c[P>>2]=1<>2]|0)+404>>0];do if(c[z>>2]<<1>>d[(c[l>>2]|0)+404>>0]){do{M=c[z>>2]|0;L=(c[l>>2]|0)+404|0;s=a[L>>0]|0;a[L>>0]=s+1<<24>>24}while((M>>(s&255)|0)!=0);if((d[(c[l>>2]|0)+404>>0]|0)<3)a[(c[l>>2]|0)+404>>0]=3;c[P>>2]=1<>2]|0)+404>>0];c[Q>>2]=Ob[c[(c[l>>2]|0)+12+4>>2]&127](c[(c[l>>2]|0)+396>>2]|0,(c[P>>2]|0)*12|0)|0;if(c[Q>>2]|0){c[(c[l>>2]|0)+396>>2]=c[Q>>2];c[O>>2]=0;break}c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}while(0);f:do if(!(c[O>>2]|0)){c[O>>2]=-1;c[N>>2]=c[P>>2];while(1){if(!(c[N>>2]|0))break f;s=c[O>>2]|0;M=(c[N>>2]|0)+-1|0;c[N>>2]=M;c[(c[(c[l>>2]|0)+396>>2]|0)+(M*12|0)>>2]=s}}while(0);s=(c[O>>2]|0)+-1|0;c[O>>2]=s;c[(c[l>>2]|0)+400>>2]=s;g:while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break e;c[R>>2]=c[(c[t>>2]|0)+(c[w>>2]<<2)>>2];if((a[(c[R>>2]|0)+-1>>0]|0)==2){c[U>>2]=c[(c[l>>2]|0)+496>>2];a[(c[R>>2]|0)+-1>>0]=0;c[S>>2]=bZ(c[l>>2]|0,(c[q>>2]|0)+40|0,c[R>>2]|0,0)|0;c[T>>2]=c[(c[(c[S>>2]|0)+4>>2]|0)+4>>2];if(!(c[T>>2]|0)){ba=78;break}c[N>>2]=0;while(1){if((c[N>>2]|0)>=(c[(c[T>>2]|0)+20>>2]|0))break;a[V>>0]=a[(c[(c[T>>2]|0)+16>>2]|0)+(c[N>>2]|0)>>0]|0;if((c[(c[l>>2]|0)+416+12>>2]|0)==(c[(c[l>>2]|0)+416+8>>2]|0)?(jZ((c[l>>2]|0)+416|0)|0)<<24>>24==0:0){ba=84;break g}s=a[V>>0]|0;M=(c[l>>2]|0)+416+12|0;L=c[M>>2]|0;c[M>>2]=L+1;a[L>>0]=s;c[U>>2]=(c[U>>2]|0)*1000003^d[V>>0];c[N>>2]=(c[N>>2]|0)+1}do{s=c[R>>2]|0;c[R>>2]=s+1}while((a[s>>0]|0)!=58);do{a[W>>0]=a[c[R>>2]>>0]|0;if((c[(c[l>>2]|0)+416+12>>2]|0)==(c[(c[l>>2]|0)+416+8>>2]|0)?(jZ((c[l>>2]|0)+416|0)|0)<<24>>24==0:0){ba=89;break g}s=a[c[R>>2]>>0]|0;L=(c[l>>2]|0)+416+12|0;M=c[L>>2]|0;c[L>>2]=M+1;a[M>>0]=s;c[U>>2]=(c[U>>2]|0)*1000003^d[W>>0];s=c[R>>2]|0;c[R>>2]=s+1}while((a[s>>0]|0)!=0);a[X>>0]=0;c[Y>>2]=(c[P>>2]|0)-1;c[N>>2]=c[U>>2]&c[Y>>2];while(1){if((c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)>>2]|0)!=(c[O>>2]|0))break;if((c[U>>2]|0)==(c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)+4>>2]|0)){c[Z>>2]=c[(c[l>>2]|0)+416+16>>2];c[_>>2]=c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)+8>>2];while(1){if((a[c[Z>>2]>>0]|0)!=(a[c[_>>2]>>0]|0))break;if(!(a[c[Z>>2]>>0]|0))break;c[Z>>2]=(c[Z>>2]|0)+1;c[_>>2]=(c[_>>2]|0)+1}if(!(a[c[Z>>2]>>0]|0)){ba=98;break g}}if(!(a[X>>0]|0))a[X>>0]=(c[U>>2]&~c[Y>>2])>>>((d[(c[l>>2]|0)+404>>0]|0)-1|0)&(c[Y>>2]|0)>>>2|1;if((c[N>>2]|0)<(d[X>>0]|0)){c[N>>2]=(c[N>>2]|0)+((c[P>>2]|0)-(d[X>>0]|0));continue}else{c[N>>2]=(c[N>>2]|0)-(d[X>>0]|0);continue}}if(a[(c[l>>2]|0)+237>>0]|0){a[(c[(c[l>>2]|0)+416+12>>2]|0)+-1>>0]=a[(c[l>>2]|0)+472>>0]|0;c[R>>2]=c[c[c[T>>2]>>2]>>2];do{if((c[(c[l>>2]|0)+416+12>>2]|0)==(c[(c[l>>2]|0)+416+8>>2]|0)?(jZ((c[l>>2]|0)+416|0)|0)<<24>>24==0:0){ba=109;break g}s=a[c[R>>2]>>0]|0;M=(c[l>>2]|0)+416+12|0;L=c[M>>2]|0;c[M>>2]=L+1;a[L>>0]=s;s=c[R>>2]|0;c[R>>2]=s+1}while((a[s>>0]|0)!=0)}c[R>>2]=c[(c[l>>2]|0)+416+16>>2];c[(c[l>>2]|0)+416+16>>2]=c[(c[l>>2]|0)+416+12>>2];c[(c[t>>2]|0)+(c[w>>2]<<2)>>2]=c[R>>2];c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)>>2]=c[O>>2];c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)+4>>2]=c[U>>2];c[(c[(c[l>>2]|0)+396>>2]|0)+((c[N>>2]|0)*12|0)+8>>2]=c[R>>2];s=(c[z>>2]|0)+-1|0;c[z>>2]=s;if(!s){ba=111;break}}else a[(c[R>>2]|0)+-1>>0]=0;c[w>>2]=(c[w>>2]|0)+2}if((ba|0)==78){c[k>>2]=27;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==84){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==89){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==98){c[k>>2]=8;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==109){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}else if((ba|0)==111){c[w>>2]=(c[w>>2]|0)+2;break}}while(0);while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break;a[(c[(c[t>>2]|0)+(c[w>>2]<<2)>>2]|0)+-1>>0]=0;c[w>>2]=(c[w>>2]|0)+2}c[A>>2]=c[c[p>>2]>>2];while(1){if(!(c[A>>2]|0))break;a[(c[c[(c[A>>2]|0)+12>>2]>>2]|0)+-1>>0]=0;c[A>>2]=c[(c[A>>2]|0)+4>>2]}if(!(a[(c[l>>2]|0)+236>>0]|0)){c[k>>2]=0;aa=c[k>>2]|0;i=j;return aa|0}do if(c[(c[r>>2]|0)+4>>2]|0){c[A>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+4>>2];if(c[A>>2]|0){c[B>>2]=c[c[o>>2]>>2];do{p=c[B>>2]|0;c[B>>2]=p+1}while((a[p>>0]|0)!=58)}else{c[k>>2]=27;aa=c[k>>2]|0;i=j;return aa|0}}else{if(c[(c[q>>2]|0)+152+4>>2]|0){c[A>>2]=c[(c[q>>2]|0)+152+4>>2];c[B>>2]=c[c[o>>2]>>2];break}c[k>>2]=0;aa=c[k>>2]|0;i=j;return aa|0}while(0);c[v>>2]=0;if((d[(c[l>>2]|0)+237>>0]|0)!=0?(c[c[c[A>>2]>>2]>>2]|0)!=0:0)do{q=c[v>>2]|0;c[v>>2]=q+1}while((a[(c[c[c[A>>2]>>2]>>2]|0)+q>>0]|0)!=0);c[(c[o>>2]|0)+4>>2]=c[B>>2];c[(c[o>>2]|0)+16>>2]=c[(c[A>>2]|0)+20>>2];c[(c[o>>2]|0)+8>>2]=c[c[c[A>>2]>>2]>>2];c[(c[o>>2]|0)+20>>2]=c[v>>2];c[w>>2]=0;do{q=c[w>>2]|0;c[w>>2]=q+1}while((a[(c[B>>2]|0)+q>>0]|0)!=0);c[x>>2]=(c[w>>2]|0)+(c[(c[A>>2]|0)+20>>2]|0)+(c[v>>2]|0);if((c[x>>2]|0)>(c[(c[A>>2]|0)+24>>2]|0)){c[y>>2]=Fb[c[(c[l>>2]|0)+12>>2]&63]((c[x>>2]|0)+24|0)|0;if(!(c[y>>2]|0)){c[k>>2]=1;aa=c[k>>2]|0;i=j;return aa|0}c[(c[A>>2]|0)+24>>2]=(c[x>>2]|0)+24;Z4(c[y>>2]|0,c[(c[A>>2]|0)+16>>2]|0,c[(c[A>>2]|0)+20>>2]|0)|0;c[$>>2]=c[(c[l>>2]|0)+364>>2];while(1){if(!(c[$>>2]|0))break;if((c[(c[$>>2]|0)+12>>2]|0)==(c[(c[A>>2]|0)+16>>2]|0))c[(c[$>>2]|0)+12>>2]=c[y>>2];c[$>>2]=c[c[$>>2]>>2]}Bb[c[(c[l>>2]|0)+12+8>>2]&127](c[(c[A>>2]|0)+16>>2]|0);c[(c[A>>2]|0)+16>>2]=c[y>>2]}c[y>>2]=(c[(c[A>>2]|0)+16>>2]|0)+(c[(c[A>>2]|0)+20>>2]|0);Z4(c[y>>2]|0,c[B>>2]|0,c[w>>2]|0)|0;if(c[v>>2]|0){c[y>>2]=(c[y>>2]|0)+((c[w>>2]|0)-1);a[c[y>>2]>>0]=a[(c[l>>2]|0)+472>>0]|0;Z4((c[y>>2]|0)+1|0,c[c[c[A>>2]>>2]>>2]|0,c[v>>2]|0)|0}c[c[o>>2]>>2]=c[(c[A>>2]|0)+16>>2];c[k>>2]=0;aa=c[k>>2]|0;i=j;return aa|0}return 0}function zZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[(c[j>>2]|0)+280>>2]=63;c[(c[j>>2]|0)+288>>2]=c[k>>2];a:while(1){c[n>>2]=0;c[o>>2]=Sb[c[c[(c[j>>2]|0)+144>>2]>>2]&127](c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;c[(c[j>>2]|0)+292>>2]=c[n>>2];switch(c[o>>2]|0){case -15:{p=3;break a;break}case -4:{p=7;break a;break}case 0:{p=14;break a;break}case -1:{p=15;break a;break}case -2:{p=18;break a;break}case 15:{if(c[(c[j>>2]|0)+80>>2]|0)TY(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[n>>2]|0);break}case 11:{if(!(rZ(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[n>>2]|0)|0)){p=11;break a}break}case 13:{if(!(sZ(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[n>>2]|0)|0)){p=13;break a}break}default:{p=21;break a}}f=c[n>>2]|0;c[k>>2]=f;c[(c[j>>2]|0)+288>>2]=f;switch(c[(c[j>>2]|0)+480>>2]|0){case 3:{p=23;break a;break}case 2:{p=24;break a;break}default:{}}}switch(p|0){case 3:{if((c[(c[j>>2]|0)+80>>2]|0)!=0?(TY(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[n>>2]|0),(c[(c[j>>2]|0)+480>>2]|0)==2):0){c[h>>2]=35;break}c[c[m>>2]>>2]=c[n>>2];c[h>>2]=0;break}case 7:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break}case 11:{c[h>>2]=1;break}case 13:{c[h>>2]=1;break}case 14:{c[(c[j>>2]|0)+288>>2]=c[n>>2];c[h>>2]=4;break}case 15:{if(a[(c[j>>2]|0)+480+4>>0]|0){c[h>>2]=5;break}else{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break}break}case 18:{if(a[(c[j>>2]|0)+480+4>>0]|0){c[h>>2]=6;break}else{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break}break}case 21:{c[h>>2]=9;break}case 23:{c[c[m>>2]>>2]=c[n>>2];c[h>>2]=0;break}case 24:{c[h>>2]=35;break}}i=g;return c[h>>2]|0}function AZ(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;j=i;i=i+64|0;k=j+48|0;l=j+44|0;m=j+40|0;n=j+36|0;o=j+32|0;p=j+28|0;q=j+53|0;r=j+24|0;s=j+20|0;t=j+16|0;u=j+12|0;v=j+8|0;w=j+52|0;x=j+4|0;y=j;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;a[q>>0]=h;c[r>>2]=c[c[n>>2]>>2];h=c[l>>2]|0;if((c[m>>2]|0)==(c[(c[l>>2]|0)+144>>2]|0)){c[s>>2]=h+288;c[c[s>>2]>>2]=c[r>>2];c[t>>2]=(c[l>>2]|0)+292}else{c[s>>2]=c[h+300>>2];c[t>>2]=(c[(c[l>>2]|0)+300>>2]|0)+4}c[c[s>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=0;a:while(1){c[v>>2]=Sb[c[(c[m>>2]|0)+8>>2]&127](c[m>>2]|0,c[r>>2]|0,c[o>>2]|0,u)|0;c[c[t>>2]>>2]=c[u>>2];b:do switch(c[v>>2]|0){case 40:{z=6;break a;break}case 0:{z=24;break a;break}case -2:{z=25;break a;break}case -4:case -1:{z=28;break a;break}case 7:{if(c[(c[l>>2]|0)+60>>2]|0){a[w>>0]=10;Tb[c[(c[l>>2]|0)+60>>2]&127](c[(c[l>>2]|0)+4>>2]|0,w,1);break b}if(c[(c[l>>2]|0)+80>>2]|0)TY(c[l>>2]|0,c[m>>2]|0,c[r>>2]|0,c[u>>2]|0);break}case 6:{c[x>>2]=c[(c[l>>2]|0)+60>>2];if(!(c[x>>2]|0)){if(!(c[(c[l>>2]|0)+80>>2]|0))break b;TY(c[l>>2]|0,c[m>>2]|0,c[r>>2]|0,c[u>>2]|0);break b}if(a[(c[m>>2]|0)+72>>0]|0){Tb[c[x>>2]&127](c[(c[l>>2]|0)+4>>2]|0,c[r>>2]|0,(c[u>>2]|0)-(c[r>>2]|0)|0);break b}while(1){c[y>>2]=c[(c[l>>2]|0)+44>>2];Ab[c[(c[m>>2]|0)+60>>2]&31](c[m>>2]|0,r,c[u>>2]|0,y,c[(c[l>>2]|0)+48>>2]|0);c[c[t>>2]>>2]=c[u>>2];Tb[c[x>>2]&127](c[(c[l>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+44>>2]|0,(c[y>>2]|0)-(c[(c[l>>2]|0)+44>>2]|0)|0);if((c[r>>2]|0)==(c[u>>2]|0))break b;c[c[s>>2]>>2]=c[r>>2]}break}default:{z=31;break a}}while(0);h=c[u>>2]|0;c[r>>2]=h;c[c[s>>2]>>2]=h;switch(c[(c[l>>2]|0)+480>>2]|0){case 3:{z=33;break a;break}case 2:{z=34;break a;break}default:{}}}if((z|0)==6){y=c[l>>2]|0;if(!(c[(c[l>>2]|0)+76>>2]|0)){if(c[y+80>>2]|0)TY(c[l>>2]|0,c[m>>2]|0,c[r>>2]|0,c[u>>2]|0)}else Bb[c[y+76>>2]&127](c[(c[l>>2]|0)+4>>2]|0);c[c[n>>2]>>2]=c[u>>2];c[c[p>>2]>>2]=c[u>>2];if((c[(c[l>>2]|0)+480>>2]|0)==2){c[k>>2]=35;A=c[k>>2]|0;i=j;return A|0}else{c[k>>2]=0;A=c[k>>2]|0;i=j;return A|0}}else if((z|0)==24){c[c[s>>2]>>2]=c[u>>2];c[k>>2]=4;A=c[k>>2]|0;i=j;return A|0}else if((z|0)==25)if(a[q>>0]|0){c[c[p>>2]>>2]=c[r>>2];c[k>>2]=0;A=c[k>>2]|0;i=j;return A|0}else{c[k>>2]=6;A=c[k>>2]|0;i=j;return A|0}else if((z|0)==28)if(a[q>>0]|0){c[c[p>>2]>>2]=c[r>>2];c[k>>2]=0;A=c[k>>2]|0;i=j;return A|0}else{c[k>>2]=20;A=c[k>>2]|0;i=j;return A|0}else if((z|0)==31){c[c[s>>2]>>2]=c[u>>2];c[k>>2]=23;A=c[k>>2]|0;i=j;return A|0}else if((z|0)==33){c[c[p>>2]>>2]=c[u>>2];c[k>>2]=0;A=c[k>>2]|0;i=j;return A|0}else if((z|0)==34){c[k>>2]=35;A=c[k>>2]|0;i=j;return A|0}return 0}function BZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=AZ(c[j>>2]|0,c[(c[j>>2]|0)+144>>2]|0,k,c[l>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}if(!(c[k>>2]|0)){c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}n=(c[j>>2]|0)+280|0;if(c[(c[j>>2]|0)+476>>2]|0){c[n>>2]=64;c[h>>2]=CZ(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}else{c[n>>2]=58;c[h>>2]=dZ(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}return 0}function CZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=vZ(c[j>>2]|0,1,c[(c[j>>2]|0)+144>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((a[(c[j>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;if((c[n>>2]|0)==0?(DZ(c[j>>2]|0)|0)<<24>>24==0:0){c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}c[h>>2]=c[n>>2];o=c[h>>2]|0;i=g;return o|0}function DZ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+364>>2];while(1){if(!(c[g>>2]|0)){m=13;break}c[j>>2]=(c[(c[g>>2]|0)+12+12>>2]|0)+1;c[k>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[j>>2]|0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[k>>2]|0)){m=13;break}c[h>>2]=(c[j>>2]|0)+((c[(c[g>>2]|0)+8>>2]|0)+0);if((c[h>>2]|0)>((c[(c[g>>2]|0)+40>>2]|0)-(c[(c[g>>2]|0)+36>>2]|0)|0)){c[l>>2]=Ob[c[(c[f>>2]|0)+12+4>>2]&127](c[(c[g>>2]|0)+36>>2]|0,c[h>>2]|0)|0;if(!(c[l>>2]|0)){m=6;break}if((c[(c[g>>2]|0)+12>>2]|0)==(c[(c[g>>2]|0)+36>>2]|0))c[(c[g>>2]|0)+12>>2]=c[l>>2];if(c[(c[g>>2]|0)+12+4>>2]|0)c[(c[g>>2]|0)+12+4>>2]=(c[l>>2]|0)+((c[(c[g>>2]|0)+12+4>>2]|0)-(c[(c[g>>2]|0)+36>>2]|0));c[(c[g>>2]|0)+36>>2]=c[l>>2];c[(c[g>>2]|0)+40>>2]=(c[l>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[l>>2]|0)+(c[j>>2]|0)}Z4(c[k>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+8>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[c[g>>2]>>2]}if((m|0)==6){a[e>>0]=0;n=a[e>>0]|0;i=d;return n|0}else if((m|0)==13){a[e>>0]=1;n=a[e>>0]|0;i=d;return n|0}return 0}function EZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+356>>2];c[k>>2]=c[c[h>>2]>>2];a:while(1){if(!(a[c[k>>2]>>0]|0)){n=20;break}if((a[c[k>>2]>>0]|0)==58){c[m>>2]=c[c[h>>2]>>2];while(1){o=(c[(c[j>>2]|0)+80+12>>2]|0)==(c[(c[j>>2]|0)+80+8>>2]|0);if((c[m>>2]|0)==(c[k>>2]|0))break;if(o?(jZ((c[j>>2]|0)+80|0)|0)<<24>>24==0:0){n=9;break a}d=a[c[m>>2]>>0]|0;b=(c[j>>2]|0)+80+12|0;p=c[b>>2]|0;c[b>>2]=p+1;a[p>>0]=d;c[m>>2]=(c[m>>2]|0)+1}if(o?(jZ((c[j>>2]|0)+80|0)|0)<<24>>24==0:0){n=13;break}d=(c[j>>2]|0)+80+12|0;p=c[d>>2]|0;c[d>>2]=p+1;a[p>>0]=0;c[l>>2]=bZ(c[g>>2]|0,(c[j>>2]|0)+60|0,c[(c[j>>2]|0)+80+16>>2]|0,8)|0;if(!(c[l>>2]|0)){n=14;break}p=(c[j>>2]|0)+80|0;if((c[c[l>>2]>>2]|0)==(c[(c[j>>2]|0)+80+16>>2]|0))c[(c[j>>2]|0)+80+16>>2]=c[p+12>>2];else c[(c[j>>2]|0)+80+12>>2]=c[p+16>>2];c[(c[h>>2]|0)+4>>2]=c[l>>2]}c[k>>2]=(c[k>>2]|0)+1}if((n|0)==9){c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}else if((n|0)==13){c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}else if((n|0)==14){c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}else if((n|0)==20){c[f>>2]=1;q=c[f>>2]|0;i=e;return q|0}return 0}function FZ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;j=i;i=i+48|0;k=j+32|0;l=j+28|0;m=j+24|0;n=j+20|0;o=j+16|0;p=j+12|0;q=j+38|0;r=j+37|0;s=j+36|0;t=j+8|0;u=j+4|0;v=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;a[q>>0]=0;a[r>>0]=1;a[s>>0]=1;if((a[c[o>>2]>>0]|0)==0?(c[c[m>>2]>>2]|0)!=0:0){c[k>>2]=28;w=c[k>>2]|0;i=j;return w|0}if((((c[c[m>>2]>>2]|0)!=0?(a[c[c[m>>2]>>2]>>0]|0)==120:0)?(a[(c[c[m>>2]>>2]|0)+1>>0]|0)==109:0)?(a[(c[c[m>>2]>>2]|0)+2>>0]|0)==108:0){if(((a[(c[c[m>>2]>>2]|0)+3>>0]|0)==110?(a[(c[c[m>>2]>>2]|0)+4>>0]|0)==115:0)?(a[(c[c[m>>2]>>2]|0)+5>>0]|0)==0:0){c[k>>2]=39;w=c[k>>2]|0;i=j;return w|0}if(!(a[(c[c[m>>2]>>2]|0)+3>>0]|0))a[q>>0]=1}c[u>>2]=0;while(1){x=(d[r>>0]|0)!=0;if(!(a[(c[o>>2]|0)+(c[u>>2]|0)>>0]|0))break;do if(x){if((c[u>>2]|0)<=36?(a[(c[o>>2]|0)+(c[u>>2]|0)>>0]|0)==(a[181511+(c[u>>2]|0)>>0]|0):0)break;a[r>>0]=0}while(0);do if((a[q>>0]|0)==0?(d[s>>0]|0)!=0:0){if((c[u>>2]|0)<=29?(a[(c[o>>2]|0)+(c[u>>2]|0)>>0]|0)==(a[181548+(c[u>>2]|0)>>0]|0):0)break;a[s>>0]=0}while(0);c[u>>2]=(c[u>>2]|0)+1}a[r>>0]=(x?(c[u>>2]|0)==36:0)&1;a[s>>0]=((d[s>>0]|0)!=0?(c[u>>2]|0)==29:0)&1;if((d[q>>0]|0)!=(d[r>>0]|0)){c[k>>2]=(d[q>>0]|0)!=0?38:40;w=c[k>>2]|0;i=j;return w|0}if(a[s>>0]|0){c[k>>2]=40;w=c[k>>2]|0;i=j;return w|0}if(a[(c[l>>2]|0)+472>>0]|0)c[u>>2]=(c[u>>2]|0)+1;s=c[l>>2]|0;do if(c[(c[l>>2]|0)+376>>2]|0){c[t>>2]=c[s+376>>2];do if((c[u>>2]|0)>(c[(c[t>>2]|0)+24>>2]|0)){c[v>>2]=Ob[c[(c[l>>2]|0)+12+4>>2]&127](c[(c[t>>2]|0)+16>>2]|0,(c[u>>2]|0)+24|0)|0;if(c[v>>2]|0){c[(c[t>>2]|0)+16>>2]=c[v>>2];c[(c[t>>2]|0)+24>>2]=(c[u>>2]|0)+24;break}c[k>>2]=1;w=c[k>>2]|0;i=j;return w|0}while(0);c[(c[l>>2]|0)+376>>2]=c[(c[t>>2]|0)+4>>2]}else{c[t>>2]=Fb[c[s+12>>2]&63](28)|0;if(!(c[t>>2]|0)){c[k>>2]=1;w=c[k>>2]|0;i=j;return w|0}q=Fb[c[(c[l>>2]|0)+12>>2]&63]((c[u>>2]|0)+24|0)|0;c[(c[t>>2]|0)+16>>2]=q;if(c[(c[t>>2]|0)+16>>2]|0){c[(c[t>>2]|0)+24>>2]=(c[u>>2]|0)+24;break}Bb[c[(c[l>>2]|0)+12+8>>2]&127](c[t>>2]|0);c[k>>2]=1;w=c[k>>2]|0;i=j;return w|0}while(0);c[(c[t>>2]|0)+20>>2]=c[u>>2];Z4(c[(c[t>>2]|0)+16>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;if(a[(c[l>>2]|0)+472>>0]|0)a[(c[(c[t>>2]|0)+16>>2]|0)+((c[u>>2]|0)-1)>>0]=a[(c[l>>2]|0)+472>>0]|0;c[c[t>>2]>>2]=c[m>>2];c[(c[t>>2]|0)+12>>2]=c[n>>2];c[(c[t>>2]|0)+8>>2]=c[(c[m>>2]|0)+4>>2];if((a[c[o>>2]>>0]|0)==0?(c[m>>2]|0)==((c[(c[l>>2]|0)+356>>2]|0)+152|0):0)c[(c[m>>2]|0)+4>>2]=0;else c[(c[m>>2]|0)+4>>2]=c[t>>2];c[(c[t>>2]|0)+4>>2]=c[c[p>>2]>>2];c[c[p>>2]>>2]=c[t>>2];if((c[n>>2]|0)!=0?(c[(c[l>>2]|0)+100>>2]|0)!=0:0)Tb[c[(c[l>>2]|0)+100>>2]&127](c[(c[l>>2]|0)+4>>2]|0,c[c[m>>2]>>2]|0,(c[(c[m>>2]|0)+4>>2]|0)!=0?c[o>>2]|0:0);c[k>>2]=0;w=c[k>>2]|0;i=j;return w|0}function GZ(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;k=i;i=i+80|0;l=k+56|0;m=k+52|0;n=k+48|0;o=k+68|0;p=k+44|0;q=k+40|0;r=k+36|0;s=k+32|0;t=k+28|0;u=k+24|0;v=k+64|0;w=k+20|0;x=k+16|0;y=k+12|0;z=k+8|0;A=k+61|0;B=k+60|0;C=k+4|0;D=k;c[m>>2]=b;c[n>>2]=e;a[o>>0]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;c[s>>2]=c[(c[m>>2]|0)+356>>2];a:while(1){c[u>>2]=Sb[c[(c[n>>2]|0)+16>>2]&127](c[n>>2]|0,c[p>>2]|0,c[q>>2]|0,t)|0;b:do switch(c[u>>2]|0){case -4:{E=3;break a;break}case 0:{E=4;break a;break}case -1:{E=7;break a;break}case 10:{c[x>>2]=Ob[c[(c[n>>2]|0)+44>>2]&127](c[n>>2]|0,c[p>>2]|0)|0;if((c[x>>2]|0)<0){E=11;break a}if((a[o>>0]|0)==0&(c[x>>2]|0)==32){if(!((c[(c[r>>2]|0)+12>>2]|0)-(c[(c[r>>2]|0)+16>>2]|0)|0))break b;if((a[(c[(c[r>>2]|0)+12>>2]|0)+-1>>0]|0)==32)break b}c[x>>2]=OZ(c[x>>2]|0,v)|0;if(!(c[x>>2]|0)){E=18;break a}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[x>>2]|0))break b;if((c[(c[r>>2]|0)+12>>2]|0)==(c[(c[r>>2]|0)+8>>2]|0)?(jZ(c[r>>2]|0)|0)<<24>>24==0:0){E=26;break a}j=a[v+(c[w>>2]|0)>>0]|0;h=(c[r>>2]|0)+12|0;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=j;c[w>>2]=(c[w>>2]|0)+1}break}case 6:{if(!(hZ(c[r>>2]|0,c[n>>2]|0,c[p>>2]|0,c[t>>2]|0)|0)){E=28;break a}break}case -3:{c[t>>2]=(c[p>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0);E=30;break}case 7:case 39:{E=30;break}case 9:{a[B>>0]=Hb[c[(c[n>>2]|0)+48>>2]&63](c[n>>2]|0,(c[p>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[n>>2]|0)+68>>2]|0))|0)|0;if(a[B>>0]|0){if((c[(c[r>>2]|0)+12>>2]|0)==(c[(c[r>>2]|0)+8>>2]|0)?(jZ(c[r>>2]|0)|0)<<24>>24==0:0){E=41;break a}j=a[B>>0]|0;g=(c[r>>2]|0)+12|0;h=c[g>>2]|0;c[g>>2]=h+1;a[h>>0]=j;break b}c[y>>2]=aZ((c[m>>2]|0)+440|0,c[n>>2]|0,(c[p>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,(c[t>>2]|0)+(0-(c[(c[n>>2]|0)+68>>2]|0))|0)|0;if(!(c[y>>2]|0)){E=43;break a}c[z>>2]=bZ(c[m>>2]|0,c[s>>2]|0,c[y>>2]|0,0)|0;c[(c[m>>2]|0)+440+12>>2]=c[(c[m>>2]|0)+440+16>>2];if((c[r>>2]|0)==((c[s>>2]|0)+80|0)){if(c[(c[m>>2]|0)+256+16>>2]|0){if(d[(c[s>>2]|0)+130>>0]|0)F=(c[(c[m>>2]|0)+300>>2]|0)!=0;else F=(a[(c[s>>2]|0)+129>>0]|0)!=0;G=((F^1)&1|0)!=0}else G=0;a[A>>0]=G&1}else{if(a[(c[s>>2]|0)+129>>0]|0)H=(d[(c[s>>2]|0)+130>>0]|0)!=0;else H=1;a[A>>0]=H&1}j=(c[z>>2]|0)!=0;if(a[A>>0]|0){if(!j){E=56;break a}if(!(a[(c[z>>2]|0)+34>>0]|0)){E=58;break a}}else if(!j)break b;if(a[(c[z>>2]|0)+32>>0]|0){E=61;break a}if(c[(c[z>>2]|0)+28>>2]|0){E=65;break a}if(!(c[(c[z>>2]|0)+4>>2]|0)){E=69;break a}c[D>>2]=(c[(c[z>>2]|0)+4>>2]|0)+(c[(c[z>>2]|0)+8>>2]|0);a[(c[z>>2]|0)+32>>0]=1;c[C>>2]=GZ(c[m>>2]|0,c[(c[m>>2]|0)+228>>2]|0,a[o>>0]|0,c[(c[z>>2]|0)+4>>2]|0,c[D>>2]|0,c[r>>2]|0)|0;a[(c[z>>2]|0)+32>>0]=0;if(c[C>>2]|0){E=73;break a}break}default:{E=74;break a}}while(0);do if((E|0)==30){E=0;if(!(a[o>>0]|0)){if(!((c[(c[r>>2]|0)+12>>2]|0)-(c[(c[r>>2]|0)+16>>2]|0)|0))break;if((a[(c[(c[r>>2]|0)+12>>2]|0)+-1>>0]|0)==32)break}if((c[(c[r>>2]|0)+12>>2]|0)==(c[(c[r>>2]|0)+8>>2]|0)?(jZ(c[r>>2]|0)|0)<<24>>24==0:0){E=36;break a}j=(c[r>>2]|0)+12|0;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=32}while(0);c[p>>2]=c[t>>2]}switch(E|0){case 3:{c[l>>2]=0;I=c[l>>2]|0;i=k;return I|0}case 4:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[t>>2];c[l>>2]=4;I=c[l>>2]|0;i=k;return I|0}case 7:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=4;I=c[l>>2]|0;i=k;return I|0}case 11:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=14;I=c[l>>2]|0;i=k;return I|0}case 18:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=14;I=c[l>>2]|0;i=k;return I|0}case 26:{c[l>>2]=1;I=c[l>>2]|0;i=k;return I|0}case 28:{c[l>>2]=1;I=c[l>>2]|0;i=k;return I|0}case 36:{c[l>>2]=1;I=c[l>>2]|0;i=k;return I|0}case 41:{c[l>>2]=1;I=c[l>>2]|0;i=k;return I|0}case 43:{c[l>>2]=1;I=c[l>>2]|0;i=k;return I|0}case 56:{c[l>>2]=11;I=c[l>>2]|0;i=k;return I|0}case 58:{c[l>>2]=24;I=c[l>>2]|0;i=k;return I|0}case 61:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=12;I=c[l>>2]|0;i=k;return I|0}case 65:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=15;I=c[l>>2]|0;i=k;return I|0}case 69:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=16;I=c[l>>2]|0;i=k;return I|0}case 73:{c[l>>2]=c[C>>2];I=c[l>>2]|0;i=k;return I|0}case 74:{if((c[n>>2]|0)==(c[(c[m>>2]|0)+144>>2]|0))c[(c[m>>2]|0)+288>>2]=c[p>>2];c[l>>2]=23;I=c[l>>2]|0;i=k;return I|0}}return 0}function HZ(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[(c[g>>2]|0)+496>>2];while(1){k=c[j>>2]|0;if(!(a[c[h>>2]>>0]|0))break;g=c[h>>2]|0;c[h>>2]=g+1;c[j>>2]=k*1000003^d[g>>0]}i=f;return k|0}function IZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;while(1){if((a[c[g>>2]>>0]|0)!=(a[c[h>>2]>>0]|0)){j=6;break}if(!(a[c[g>>2]>>0]|0)){j=4;break}c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}if((j|0)==4){a[f>>0]=1;k=a[f>>0]|0;i=e;return k|0}else if((j|0)==6){a[f>>0]=0;k=a[f>>0]|0;i=e;return k|0}return 0}function JZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+1056|0;f=e+1052|0;g=e+1048|0;h=e+1044|0;j=e+8|0;k=e+4|0;l=e;c[g>>2]=b;c[h>>2]=d;if(c[(c[g>>2]|0)+124>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=256)break;c[j+(c[k>>2]<<2)>>2]=-1;c[k>>2]=(c[k>>2]|0)+1}c[j+1028>>2]=0;c[j+1024>>2]=0;c[j+1032>>2]=0;do if(Hb[c[(c[g>>2]|0)+124>>2]&63](c[(c[g>>2]|0)+248>>2]|0,c[h>>2]|0,j)|0){k=c[(c[g>>2]|0)+12>>2]|0;d=PZ()|0;b=Fb[k&63](d)|0;c[(c[g>>2]|0)+240>>2]=b;if(c[(c[g>>2]|0)+240>>2]|0){c[l>>2]=Sb[((a[(c[g>>2]|0)+236>>0]&255|0)!=0?65:66)&127](c[(c[g>>2]|0)+240>>2]|0,j,c[j+1028>>2]|0,c[j+1024>>2]|0)|0;if(!(c[l>>2]|0))break;c[(c[g>>2]|0)+244>>2]=c[j+1024>>2];c[(c[g>>2]|0)+252>>2]=c[j+1032>>2];c[(c[g>>2]|0)+144>>2]=c[l>>2];c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}if(c[j+1032>>2]|0)Bb[c[j+1032>>2]&127](c[j+1024>>2]|0);c[f>>2]=1;m=c[f>>2]|0;i=e;return m|0}while(0);if(c[j+1032>>2]|0)Bb[c[j+1032>>2]&127](c[j+1024>>2]|0)}c[f>>2]=18;m=c[f>>2]|0;i=e;return m|0}function KZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=YY(c[h>>2]|0)|0;if(c[m>>2]|0){c[g>>2]=c[m>>2];n=c[g>>2]|0;i=f;return n|0}else{c[(c[h>>2]|0)+280>>2]=60;c[g>>2]=ZY(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;n=c[g>>2]|0;i=f;return n|0}return 0}function LZ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=Fb[c[c[f>>2]>>2]&63](188)|0;b=c[g>>2]|0;if(!(c[g>>2]|0)){c[e>>2]=b;h=c[e>>2]|0;i=d;return h|0}else{MZ(b+80|0,c[f>>2]|0);MZ((c[g>>2]|0)+104|0,c[f>>2]|0);NZ(c[g>>2]|0,c[f>>2]|0);NZ((c[g>>2]|0)+20|0,c[f>>2]|0);NZ((c[g>>2]|0)+40|0,c[f>>2]|0);NZ((c[g>>2]|0)+60|0,c[f>>2]|0);a[(c[g>>2]|0)+131>>0]=0;NZ((c[g>>2]|0)+132|0,c[f>>2]|0);c[(c[g>>2]|0)+152>>2]=0;c[(c[g>>2]|0)+152+4>>2]=0;a[(c[g>>2]|0)+160>>0]=0;c[(c[g>>2]|0)+184>>2]=0;c[(c[g>>2]|0)+164>>2]=0;c[(c[g>>2]|0)+180>>2]=0;c[(c[g>>2]|0)+172>>2]=0;c[(c[g>>2]|0)+176>>2]=0;c[(c[g>>2]|0)+168>>2]=0;a[(c[g>>2]|0)+128>>0]=1;a[(c[g>>2]|0)+129>>0]=0;a[(c[g>>2]|0)+130>>0]=0;c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function MZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+20>>2]=c[f>>2];i=d;return}function NZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[(c[f>>2]|0)+4>>0]=0;c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+16>>2]=c[g>>2];i=e;return}function OZ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<0){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}d=c[g>>2]|0;if((c[g>>2]|0)<128){a[c[h>>2]>>0]=d;c[f>>2]=1;j=c[f>>2]|0;i=e;return j|0}b=c[g>>2]|0;if((d|0)<2048){a[c[h>>2]>>0]=b>>6|192;a[(c[h>>2]|0)+1>>0]=c[g>>2]&63|128;c[f>>2]=2;j=c[f>>2]|0;i=e;return j|0}d=c[g>>2]|0;if((b|0)<65536){a[c[h>>2]>>0]=d>>12|224;a[(c[h>>2]|0)+1>>0]=c[g>>2]>>6&63|128;a[(c[h>>2]|0)+2>>0]=c[g>>2]&63|128;c[f>>2]=3;j=c[f>>2]|0;i=e;return j|0}if((d|0)<1114112){a[c[h>>2]>>0]=c[g>>2]>>18|240;a[(c[h>>2]|0)+1>>0]=c[g>>2]>>12&63|128;a[(c[h>>2]|0)+2>>0]=c[g>>2]>>6&63|128;a[(c[h>>2]|0)+3>>0]=c[g>>2]&63|128;c[f>>2]=4;j=c[f>>2]|0;i=e;return j|0}else{c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}return 0}function PZ(){return 1912}function QZ(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;m=j+20|0;n=j+16|0;o=j+12|0;p=j+8|0;q=j+4|0;r=j;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[q>>2]=c[l>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=368)break;a[(c[l>>2]|0)+(c[p>>2]|0)>>0]=a[92912+(c[p>>2]|0)>>0]|0;c[p>>2]=(c[p>>2]|0)+1}c[p>>2]=0;while(1){if((c[p>>2]|0)>=128)break;if(((d[92988+(c[p>>2]|0)>>0]|0|0)!=28?(d[92988+(c[p>>2]|0)>>0]|0|0)!=0:0)?(c[(c[m>>2]|0)+(c[p>>2]<<2)>>2]|0)!=(c[p>>2]|0):0){s=9;break}c[p>>2]=(c[p>>2]|0)+1}if((s|0)==9){c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}c[p>>2]=0;a:while(1){if((c[p>>2]|0)>=256){s=36;break}c[r>>2]=c[(c[m>>2]|0)+(c[p>>2]<<2)>>2];do if((c[r>>2]|0)==-1){a[(c[q>>2]|0)+76+(c[p>>2]|0)>>0]=1;b[(c[q>>2]|0)+376+(c[p>>2]<<1)>>1]=-1;a[(c[q>>2]|0)+888+(c[p>>2]<<2)>>0]=1;a[(c[q>>2]|0)+888+(c[p>>2]<<2)+1>>0]=0}else{l=c[r>>2]|0;if((c[r>>2]|0)<0){if((l|0)<-4){s=17;break a}a[(c[q>>2]|0)+76+(c[p>>2]|0)>>0]=5-((c[r>>2]|0)+2);a[(c[q>>2]|0)+888+(c[p>>2]<<2)>>0]=0;b[(c[q>>2]|0)+376+(c[p>>2]<<1)>>1]=0;break}h=c[r>>2]|0;if((l|0)<128){if(((d[92988+h>>0]|0|0)!=28?(d[92988+(c[r>>2]|0)>>0]|0|0)!=0:0)?(c[r>>2]|0)!=(c[p>>2]|0):0){s=23;break a}a[(c[q>>2]|0)+76+(c[p>>2]|0)>>0]=a[92988+(c[r>>2]|0)>>0]|0;a[(c[q>>2]|0)+888+(c[p>>2]<<2)>>0]=1;a[(c[q>>2]|0)+888+(c[p>>2]<<2)+1>>0]=c[r>>2];b[(c[q>>2]|0)+376+(c[p>>2]<<1)>>1]=(c[r>>2]|0)==0?65535:c[r>>2]|0;break}if((YZ(h)|0)<0){a[(c[q>>2]|0)+76+(c[p>>2]|0)>>0]=0;b[(c[q>>2]|0)+376+(c[p>>2]<<1)>>1]=-1;a[(c[q>>2]|0)+888+(c[p>>2]<<2)>>0]=1;a[(c[q>>2]|0)+888+(c[p>>2]<<2)+1>>0]=0;break}if((c[r>>2]|0)>65535){s=28;break a}do if(!(c[93280+(((d[181578+(c[r>>2]>>8)>>0]|0)<<3)+((c[r>>2]&255)>>5)<<2)>>2]&1<<(c[r>>2]&31))){h=(c[q>>2]|0)+76+(c[p>>2]|0)|0;if(c[93280+(((d[181834+(c[r>>2]>>8)>>0]|0)<<3)+((c[r>>2]&255)>>5)<<2)>>2]&1<<(c[r>>2]&31)){a[h>>0]=26;break}else{a[h>>0]=28;break}}else a[(c[q>>2]|0)+76+(c[p>>2]|0)>>0]=22;while(0);h=(OZ(c[r>>2]|0,(c[q>>2]|0)+888+(c[p>>2]<<2)+1|0)|0)&255;a[(c[q>>2]|0)+888+(c[p>>2]<<2)>>0]=h;b[(c[q>>2]|0)+376+(c[p>>2]<<1)>>1]=c[r>>2]}while(0);c[p>>2]=(c[p>>2]|0)+1}if((s|0)==17){c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}else if((s|0)==23){c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}else if((s|0)==28){c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}else if((s|0)==36){c[(c[q>>2]|0)+372>>2]=c[o>>2];c[(c[q>>2]|0)+368>>2]=c[n>>2];if(c[n>>2]|0){c[(c[q>>2]|0)+332>>2]=108;c[(c[q>>2]|0)+336>>2]=108;c[(c[q>>2]|0)+340>>2]=108;c[(c[q>>2]|0)+344>>2]=109;c[(c[q>>2]|0)+348>>2]=109;c[(c[q>>2]|0)+352>>2]=109;c[(c[q>>2]|0)+356>>2]=110;c[(c[q>>2]|0)+360>>2]=110;c[(c[q>>2]|0)+364>>2]=110}c[(c[q>>2]|0)+60>>2]=18;c[(c[q>>2]|0)+64>>2]=19;c[k>>2]=c[q>>2];t=c[k>>2]|0;i=j;return t|0}return 0}function RZ(){return 94560}function SZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c_(c[k>>2]|0)|0;if((c[l>>2]|0)==-1){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}else{a[(c[h>>2]|0)+73>>0]=c[l>>2];c[c[h>>2]>>2]=67;c[(c[h>>2]|0)+4>>2]=68;c[(c[h>>2]|0)+52>>2]=29;c[(c[h>>2]|0)+76>>2]=c[j>>2];c[c[j>>2]>>2]=c[h>>2];c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}return 0}function TZ(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+48|0;n=m+36|0;o=m+32|0;p=m+28|0;q=m+24|0;r=m+20|0;s=m+16|0;t=m+12|0;u=m+8|0;v=m+4|0;w=m;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;l=h_(43,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0)|0;i=m;return l|0}function UZ(){return 94928}function VZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c_(c[k>>2]|0)|0;if((c[l>>2]|0)==-1){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}else{a[(c[h>>2]|0)+73>>0]=c[l>>2];c[c[h>>2]>>2]=69;c[(c[h>>2]|0)+4>>2]=70;c[(c[h>>2]|0)+52>>2]=29;c[(c[h>>2]|0)+76>>2]=c[j>>2];c[c[j>>2]>>2]=c[h>>2];c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}return 0}function WZ(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+48|0;n=m+36|0;o=m+32|0;p=m+28|0;q=m+24|0;r=m+20|0;s=m+16|0;t=m+12|0;u=m+8|0;v=m+4|0;w=m;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;l=h_(44,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0)|0;i=m;return l|0}function XZ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=QZ(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!(c[m>>2]|0)){n=c[m>>2]|0;i=g;return n|0}a[(c[m>>2]|0)+76+58>>0]=23;n=c[m>>2]|0;i=g;return n|0}function YZ(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+4|0;f=b;c[f>>2]=a;switch(c[f>>2]>>8|0){case 223:case 222:case 221:case 220:case 219:case 218:case 217:case 216:{c[e>>2]=-1;break}case 0:{if(!(d[92988+(c[f>>2]|0)>>0]|0))c[e>>2]=-1;else g=7;break}case 255:{if((c[f>>2]|0)==65534|(c[f>>2]|0)==65535)c[e>>2]=-1;else g=7;break}default:g=7}if((g|0)==7)c[e>>2]=c[f>>2];i=b;return c[e>>2]|0}function ZZ(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=c[g>>2];c[k>>2]=Ob[c[(c[j>>2]|0)+368>>2]&127](c[(c[j>>2]|0)+372>>2]|0,c[h>>2]|0)|0;if(c[k>>2]&-65536){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=c[93280+(((d[181834+(c[k>>2]>>8)>>0]|0)<<3)+((c[k>>2]&255)>>5)<<2)>>2]&1<<(c[k>>2]&31);l=c[f>>2]|0;i=e;return l|0}return 0}function _Z(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=c[g>>2];c[k>>2]=Ob[c[(c[j>>2]|0)+368>>2]&127](c[(c[j>>2]|0)+372>>2]|0,c[h>>2]|0)|0;if(c[k>>2]&-65536){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=c[93280+(((d[181578+(c[k>>2]>>8)>>0]|0)<<3)+((c[k>>2]&255)>>5)<<2)>>2]&1<<(c[k>>2]&31);l=c[f>>2]|0;i=e;return l|0}return 0}function $Z(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[h>>2]=Ob[c[(c[g>>2]|0)+368>>2]&127](c[(c[g>>2]|0)+372>>2]|0,c[f>>2]|0)|0;if(c[h>>2]&-65536){j=1;k=j&1;i=d;return k|0}j=(YZ(c[h>>2]|0)|0)<0;k=j&1;i=d;return k|0}function a_(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+48|0;k=j+32|0;l=j+28|0;m=j+24|0;n=j+20|0;o=j+16|0;p=j+12|0;q=j+36|0;r=j+8|0;s=j+4|0;t=j;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=c[k>>2];a:while(1){if((c[c[l>>2]>>2]|0)==(c[m>>2]|0)){u=9;break}c[r>>2]=(c[p>>2]|0)+888+(d[c[c[l>>2]>>2]>>0]<<2);h=c[r>>2]|0;c[r>>2]=h+1;c[s>>2]=a[h>>0];if(!(c[s>>2]|0)){c[t>>2]=Ob[c[(c[p>>2]|0)+368>>2]&127](c[(c[p>>2]|0)+372>>2]|0,c[c[l>>2]>>2]|0)|0;c[s>>2]=OZ(c[t>>2]|0,q)|0;if((c[s>>2]|0)>((c[o>>2]|0)-(c[c[n>>2]>>2]|0)|0)){u=9;break}c[r>>2]=q;h=c[l>>2]|0;c[h>>2]=(c[h>>2]|0)+((d[(c[k>>2]|0)+76+(d[c[c[l>>2]>>2]>>0]|0)>>0]|0)-3)}else{if((c[s>>2]|0)>((c[o>>2]|0)-(c[c[n>>2]>>2]|0)|0)){u=9;break}h=c[l>>2]|0;c[h>>2]=(c[h>>2]|0)+1}while(1){h=c[r>>2]|0;c[r>>2]=h+1;g=a[h>>0]|0;h=c[n>>2]|0;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=g;g=(c[s>>2]|0)+-1|0;c[s>>2]=g;if(!g)continue a}}if((u|0)==9){i=j;return}}function b_(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;l=k+20|0;m=k+16|0;n=k+12|0;o=k+8|0;p=k+4|0;q=k;r=k+24|0;c[l>>2]=a;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=c[l>>2];while(1){if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){s=8;break}if((c[c[o>>2]>>2]|0)==(c[p>>2]|0)){s=8;break}b[r>>1]=b[(c[q>>2]|0)+376+((d[c[c[m>>2]>>2]>>0]|0)<<1)>>1]|0;if(!(e[r>>1]|0)){b[r>>1]=Ob[c[(c[q>>2]|0)+368>>2]&127](c[(c[q>>2]|0)+372>>2]|0,c[c[m>>2]>>2]|0)|0;j=c[m>>2]|0;c[j>>2]=(c[j>>2]|0)+((d[(c[l>>2]|0)+76+(d[c[c[m>>2]>>2]>>0]|0)>>0]|0)-3)}else{j=c[m>>2]|0;c[j>>2]=(c[j>>2]|0)+1}j=b[r>>1]|0;h=c[o>>2]|0;g=c[h>>2]|0;c[h>>2]=g+2;b[g>>1]=j}if((s|0)==8){i=k;return}}function c_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;do if(c[e>>2]|0){c[f>>2]=0;while(1){if((c[f>>2]|0)>=6){g=8;break}a=(l_(c[e>>2]|0,c[98664+(c[f>>2]<<2)>>2]|0)|0)!=0;h=c[f>>2]|0;if(a){g=6;break}c[f>>2]=h+1}if((g|0)==6){c[d>>2]=h;break}else if((g|0)==8){c[d>>2]=-1;break}}else c[d>>2]=6;while(0);i=b;return c[d>>2]|0}function d_(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=j0(97164,c[g>>2]|0,0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;i=f;return e|0}function e_(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=j0(97164,c[g>>2]|0,1,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;i=f;return e|0}function f_(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[f+12>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;I$(97560,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0);i=f;return}function g_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+160|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+24|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=l;Ab[c[(c[h>>2]|0)+60>>2]&31](c[h>>2]|0,j,c[k>>2]|0,m,(c[m>>2]|0)+128+-1|0);if((c[j>>2]|0)!=(c[k>>2]|0)){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}a[c[m>>2]>>0]=0;if((l_(l,182090)|0)!=0?(c[(c[h>>2]|0)+68>>2]|0)==2:0){c[g>>2]=c[h>>2];o=c[g>>2]|0;i=f;return o|0}c[n>>2]=c_(l)|0;if((c[n>>2]|0)==-1){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}else{c[g>>2]=c[97164+(c[n>>2]<<2)>>2];o=c[g>>2]|0;i=f;return o|0}return 0}function h_(a,b,d,e,f,g,h,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;n=i;i=i+64|0;o=n+60|0;p=n+56|0;q=n+52|0;r=n+48|0;s=n+44|0;t=n+40|0;u=n+36|0;v=n+32|0;w=n+28|0;x=n+24|0;y=n+20|0;z=n+16|0;A=n+12|0;B=n+8|0;C=n+4|0;D=n;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=h;c[w>>2]=j;c[x>>2]=k;c[y>>2]=l;c[z>>2]=m;c[A>>2]=0;c[B>>2]=0;c[C>>2]=0;c[s>>2]=(c[s>>2]|0)+((c[(c[r>>2]|0)+68>>2]|0)*5|0);c[t>>2]=(c[t>>2]|0)+(0-(c[(c[r>>2]|0)+68>>2]<<1));m=(k0(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,B,C,A,s)|0)!=0;if(!(m&(c[B>>2]|0)!=0)){c[c[u>>2]>>2]=c[s>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}if(Sb[c[(c[r>>2]|0)+28>>2]&127](c[r>>2]|0,c[B>>2]|0,c[C>>2]|0,182115)|0){if(c[v>>2]|0)c[c[v>>2]>>2]=c[A>>2];if(c[w>>2]|0)c[c[w>>2]>>2]=c[s>>2];if(!(k0(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,B,C,A,s)|0)){c[c[u>>2]>>2]=c[s>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}if(!(c[B>>2]|0))if(c[q>>2]|0){c[c[u>>2]>>2]=c[s>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}else{c[o>>2]=1;E=c[o>>2]|0;i=n;return E|0}}else if(!(c[q>>2]|0)){c[c[u>>2]>>2]=c[B>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}if(Sb[c[(c[r>>2]|0)+28>>2]&127](c[r>>2]|0,c[B>>2]|0,c[C>>2]|0,182123)|0){c[D>>2]=l0(c[r>>2]|0,c[A>>2]|0,c[t>>2]|0)|0;if(!(97<=(c[D>>2]|0)&(c[D>>2]|0)<=122)?!(65<=(c[D>>2]|0)&(c[D>>2]|0)<=90):0){c[c[u>>2]>>2]=c[A>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}if(c[x>>2]|0)c[c[x>>2]>>2]=c[A>>2];if(c[y>>2]|0){x=Hb[c[p>>2]&63](c[r>>2]|0,c[A>>2]|0,(c[s>>2]|0)+(0-(c[(c[r>>2]|0)+68>>2]|0))|0)|0;c[c[y>>2]>>2]=x}if(!(k0(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,B,C,A,s)|0)){c[c[u>>2]>>2]=c[s>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}if(!(c[B>>2]|0)){c[o>>2]=1;E=c[o>>2]|0;i=n;return E|0}}x=(Sb[c[(c[r>>2]|0)+28>>2]&127](c[r>>2]|0,c[B>>2]|0,c[C>>2]|0,182132)|0)==0;if(x|(c[q>>2]|0)!=0){c[c[u>>2]>>2]=c[B>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}do if(Sb[c[(c[r>>2]|0)+28>>2]&127](c[r>>2]|0,c[A>>2]|0,(c[s>>2]|0)+(0-(c[(c[r>>2]|0)+68>>2]|0))|0,145589)|0){if(c[z>>2]|0)c[c[z>>2]>>2]=1}else if(Sb[c[(c[r>>2]|0)+28>>2]&127](c[r>>2]|0,c[A>>2]|0,(c[s>>2]|0)+(0-(c[(c[r>>2]|0)+68>>2]|0))|0,145581)|0){if(!(c[z>>2]|0))break;c[c[z>>2]>>2]=0;break}else{c[c[u>>2]>>2]=c[A>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}while(0);while(1){if(!(m0(l0(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0)|0)|0))break;c[s>>2]=(c[s>>2]|0)+(c[(c[r>>2]|0)+68>>2]|0)}if((c[s>>2]|0)!=(c[t>>2]|0)){c[c[u>>2]>>2]=c[s>>2];c[o>>2]=0;E=c[o>>2]|0;i=n;return E|0}else{c[o>>2]=1;E=c[o>>2]|0;i=n;return E|0}return 0}function i_(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=j0(95296,c[g>>2]|0,0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;i=f;return e|0}function j_(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=j0(95296,c[g>>2]|0,1,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;i=f;return e|0}function k_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+160|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+24|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=l;Ab[c[(c[h>>2]|0)+60>>2]&31](c[h>>2]|0,j,c[k>>2]|0,m,(c[m>>2]|0)+128+-1|0);if((c[j>>2]|0)!=(c[k>>2]|0)){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}a[c[m>>2]>>0]=0;if((l_(l,182090)|0)!=0?(c[(c[h>>2]|0)+68>>2]|0)==2:0){c[g>>2]=c[h>>2];o=c[g>>2]|0;i=f;return o|0}c[n>>2]=c_(l)|0;if((c[n>>2]|0)==-1){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}else{c[g>>2]=c[95296+(c[n>>2]<<2)>>2];o=c[g>>2]|0;i=f;return o|0}return 0}function l_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+13|0;k=e+12|0;c[g>>2]=b;c[h>>2]=d;while(1){d=c[g>>2]|0;c[g>>2]=d+1;a[j>>0]=a[d>>0]|0;d=c[h>>2]|0;c[h>>2]=d+1;a[k>>0]=a[d>>0]|0;if(97<=(a[j>>0]|0)?(a[j>>0]|0)<=122:0)a[j>>0]=(a[j>>0]|0)+-32;if(97<=(a[k>>0]|0)?(a[k>>0]|0)<=122:0)a[k>>0]=(a[k>>0]|0)+-32;if((a[j>>0]|0)!=(a[k>>0]|0)){l=9;break}if(!(a[j>>0]|0)){l=11;break}}if((l|0)==9){c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}else if((l|0)==11){c[f>>2]=1;m=c[f>>2]|0;i=e;return m|0}return 0}function m_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){c[p>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[p>>2]&1){c[p>>2]=c[p>>2]&-2;if(!(c[p>>2]|0)){c[j>>2]=-1;break a}else{c[m>>2]=(c[l>>2]|0)+(c[p>>2]|0);break}}while(0);g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;b:do switch(q|0){case 12:{c[j>>2]=P_(12,c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 13:{c[j>>2]=P_(13,c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 2:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else r=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(r|0){case 16:{c[j>>2]=Q_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 15:{c[j>>2]=L_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 7:case 6:case 5:case 29:case 24:case 22:{c[c[n>>2]>>2]=(c[l>>2]|0)+-2;c[j>>2]=29;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 9:{if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[c[n>>2]>>2]=c[m>>2];c[j>>2]=-15;break a}else s=25;break}case 10:case 21:{s=25;break}case 30:{c[j>>2]=F_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 35:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=38;break a;break}case 20:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=25;break a;break}case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-26;break a}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==93:0){if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}if((a[(c[l>>2]|0)+2+1>>0]|0)==0?(a[(c[l>>2]|0)+2>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+4;c[j>>2]=34;break a}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=26;break a;break}case 31:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=23;break a;break}case 32:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-24;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))t=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else t=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(t|0){case 33:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=36;break a;break}case 15:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=35;break a;break}case 34:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=37;break a;break}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=24;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 36:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=21;break a;break}case 11:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=17;break a;break}case 19:{c[j>>2]=R_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:{c[o>>2]=18;c[l>>2]=(c[l>>2]|0)+2;s=77;break}case 23:case 27:case 26:case 25:{c[o>>2]=19;c[l>>2]=(c[l>>2]|0)+2;s=77;break}case 29:{g=c[l>>2]|0;if(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31)){c[l>>2]=g+2;c[o>>2]=18;s=77;break b}if(c[93280+((d[181834+(d[g+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31)){c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=19;s=77}else s=76;break}default:s=76}while(0);if((s|0)==25){c:while(1){s=0;c[l>>2]=(c[l>>2]|0)+2;u=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){s=32;break}g=c[l>>2]|0;if(!(a[u+1>>0]|0))v=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else v=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(v|0){case 10:case 21:{s=25;continue c;break}case 9:break;default:{s=31;break c}}if(((c[l>>2]|0)+2|0)!=(c[m>>2]|0))s=25;else{s=31;break}}if((s|0)==31){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=15;break}else if((s|0)==32){c[c[n>>2]>>2]=u;c[j>>2]=15;break}}else if((s|0)==76){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((s|0)==77){d:while(1){s=0;if((c[l>>2]|0)==(c[m>>2]|0)){s=126;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))w=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else w=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(w|0){case 5:{s=85;break d;break}case 6:{s=88;break d;break}case 7:{s=91;break d;break}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{s=94;break d;break}case 34:{s=116;break d;break}case 33:{s=119;break d;break}case 15:{s=122;break d;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){s=83;break d}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{c[l>>2]=(c[l>>2]|0)+2;switch(c[o>>2]|0){case 18:break;case 41:{c[o>>2]=19;s=77;continue d;break}default:{s=77;continue d}}if((c[l>>2]|0)==(c[m>>2]|0)){s=97;break d}c[o>>2]=41;g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))x=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else x=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(x|0){case 5:{s=105;break d;break}case 6:{s=108;break d;break}case 7:{s=111;break d;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){s=103;break d}break}case 27:case 26:case 25:case 24:case 22:break;default:{c[o>>2]=19;s=77;continue d}}c[l>>2]=(c[l>>2]|0)+2;s=77;continue d;break}default:{s=125;break d}}c[l>>2]=(c[l>>2]|0)+2;s=77}switch(s|0){case 83:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 85:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 88:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 91:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 94:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[o>>2];break a;break}case 97:{c[j>>2]=-1;break a;break}case 103:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 105:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 108:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 111:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 116:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=32;break a}break}case 119:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=31;break a}break}case 122:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=30;break a}break}case 125:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 126:{c[j>>2]=0-(c[o>>2]|0);break a;break}}}}else c[j>>2]=-4;while(0);i=h;return c[j>>2]|0}function n_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;p=c[j>>2]|0;i=h;return p|0}c[o>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[o>>2]&1){c[o>>2]=c[o>>2]&-2;if(c[o>>2]|0){c[m>>2]=(c[l>>2]|0)+(c[o>>2]|0);break}c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}while(0);o=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[o>>0]|0)>>0]|0;else q=D_(a[o+1>>0]|0,a[c[l>>2]>>0]|0)|0;a:do switch(q|0){case 2:{c[j>>2]=I_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;p=c[j>>2]|0;i=h;return p|0}case 3:{c[j>>2]=E_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;p=c[j>>2]|0;i=h;return p|0}case 9:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;p=c[j>>2]|0;i=h;return p|0}o=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[o>>0]|0)>>0]|0;else r=D_(a[o+1>>0]|0,a[c[l>>2]>>0]|0)|0;if((r|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;p=c[j>>2]|0;i=h;return p|0}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==93:0){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;p=c[j>>2]|0;i=h;return p|0}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=(c[l>>2]|0)+-2}break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=2){c[l>>2]=(c[l>>2]|0)+2;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=3){c[l>>2]=(c[l>>2]|0)+3;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=4){c[l>>2]=(c[l>>2]|0)+4;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}default:c[l>>2]=(c[l>>2]|0)+2}while(0);b:while(1){s=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){t=68;break}r=c[l>>2]|0;if(!(a[s+1>>0]|0))u=d[(c[k>>2]|0)+76+(d[r>>0]|0)>>0]|0;else u=D_(a[r+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(u|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{t=66;break b;break}case 5:{v=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=49;break b}c[l>>2]=v+2;continue b;break}case 6:{w=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=52;break b}c[l>>2]=w+3;continue b;break}case 7:{x=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=55;break b}c[l>>2]=x+4;continue b;break}case 4:{if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){t=66;break b}if((a[(c[l>>2]|0)+2+1>>0]|0)==0?(a[(c[l>>2]|0)+2>>0]|0)==93:0){if(((c[l>>2]|0)+4|0)==(c[m>>2]|0)){t=66;break b}if((a[(c[l>>2]|0)+4+1>>0]|0)==0?(a[(c[l>>2]|0)+4>>0]|0)==62:0){t=65;break b}c[l>>2]=(c[l>>2]|0)+2;continue b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((t|0)==49){c[c[n>>2]>>2]=v;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==52){c[c[n>>2]>>2]=w;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==55){c[c[n>>2]>>2]=x;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==65){c[c[n>>2]>>2]=(c[l>>2]|0)+4;c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==66){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==68){c[c[n>>2]>>2]=s;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}return 0}function o_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;p=c[j>>2]|0;i=h;return p|0}c[o>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[o>>2]&1){c[o>>2]=c[o>>2]&-2;if(c[o>>2]|0){c[m>>2]=(c[l>>2]|0)+(c[o>>2]|0);break}c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}while(0);o=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[o>>0]|0)>>0]|0;else q=D_(a[o+1>>0]|0,a[c[l>>2]>>0]|0)|0;a:do switch(q|0){case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==93:0){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=40;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=(c[l>>2]|0)+-2}break}case 9:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}o=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[o>>0]|0)>>0]|0;else r=D_(a[o+1>>0]|0,a[c[l>>2]>>0]|0)|0;if((r|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=2){c[l>>2]=(c[l>>2]|0)+2;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=3){c[l>>2]=(c[l>>2]|0)+3;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=4){c[l>>2]=(c[l>>2]|0)+4;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}default:c[l>>2]=(c[l>>2]|0)+2}while(0);b:while(1){s=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){t=57;break}r=c[l>>2]|0;if(!(a[s+1>>0]|0))u=d[(c[k>>2]|0)+76+(d[r>>0]|0)>>0]|0;else u=D_(a[r+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(u|0){case 4:case 10:case 9:case 8:case 1:case 0:{t=55;break b;break}case 5:{v=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=47;break b}c[l>>2]=v+2;continue b;break}case 6:{w=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=50;break b}c[l>>2]=w+3;continue b;break}case 7:{x=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=53;break b}c[l>>2]=x+4;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((t|0)==47){c[c[n>>2]>>2]=v;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==50){c[c[n>>2]>>2]=w;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==53){c[c[n>>2]>>2]=x;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==55){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==57){c[c[n>>2]>>2]=s;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}return 0}function p_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[p>>2]=(c[m>>2]|0)-(c[l>>2]|0);if(c[p>>2]&1){c[p>>2]=c[p>>2]&-2;c[m>>2]=(c[l>>2]|0)+(c[p>>2]|0)}a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=39;break}p=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[p>>0]|0)>>0]|0;else r=D_(a[p+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(r|0){case 8:case 1:case 0:{q=17;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=9;break a}c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=12;break a}c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=15;break a}c[l>>2]=(c[l>>2]|0)+4;continue a;break}case 2:{p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=19;break a}if(a[(c[l>>2]|0)+1>>0]|0)continue a;if((a[c[l>>2]>>0]|0)!=33)continue a;p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=23;break a}if(a[(c[l>>2]|0)+1>>0]|0)continue a;if((a[c[l>>2]>>0]|0)!=91)continue a;c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 4:{p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=28;break a}if(a[(c[l>>2]|0)+1>>0]|0)continue a;if((a[c[l>>2]>>0]|0)!=93)continue a;p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=32;break a}if(a[(c[l>>2]|0)+1>>0]|0)continue a;if((a[c[l>>2]>>0]|0)!=62)continue a;c[l>>2]=(c[l>>2]|0)+2;if(!(c[o>>2]|0)){q=36;break a}c[o>>2]=(c[o>>2]|0)+-1;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}switch(q|0){case 9:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 12:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 15:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 17:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}case 19:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 23:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 28:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 32:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 36:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=42;s=c[j>>2]|0;i=h;return s|0}case 39:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}}return 0}function q_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;do if((c[l>>2]|0)!=(c[m>>2]|0)){c[o>>2]=c[l>>2];a:while(1){p=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){q=33;break}g=c[l>>2]|0;if(!(a[p+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else r=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(r|0){case 3:{q=12;break a;break}case 2:{q=15;break a;break}case 10:{q=16;break a;break}case 9:{q=19;break a;break}case 21:{q=29;break a;break}case 5:{c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{c[l>>2]=(c[l>>2]|0)+4;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}if((q|0)==12)if((c[l>>2]|0)==(c[o>>2]|0)){c[j>>2]=E_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;break}else if((q|0)==15){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((q|0)==16){g=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=g+2;c[j>>2]=7;break}else{c[c[n>>2]>>2]=g;c[j>>2]=6;break}}else if((q|0)==19){g=c[l>>2]|0;if((c[l>>2]|0)!=(c[o>>2]|0)){c[c[n>>2]>>2]=g;c[j>>2]=6;break}c[l>>2]=g+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))s=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else s=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;if((s|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;break}else if((q|0)==29){g=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=g+2;c[j>>2]=39;break}else{c[c[n>>2]>>2]=g;c[j>>2]=6;break}}else if((q|0)==33){c[c[n>>2]>>2]=p;c[j>>2]=6;break}}else c[j>>2]=-4;while(0);i=h;return c[j>>2]|0}function r_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;q=c[j>>2]|0;i=h;return q|0}c[o>>2]=c[l>>2];a:while(1){r=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){s=32;break}g=c[l>>2]|0;if(!(a[r+1>>0]|0))t=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else t=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(t|0){case 3:{s=12;break a;break}case 30:{s=15;break a;break}case 10:{s=18;break a;break}case 9:{s=21;break a;break}case 5:{c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{c[l>>2]=(c[l>>2]|0)+4;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}if((s|0)==12)if((c[l>>2]|0)==(c[o>>2]|0)){c[j>>2]=E_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==15)if((c[l>>2]|0)==(c[o>>2]|0)){c[p>>2]=F_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;c[j>>2]=(c[p>>2]|0)==22?0:c[p>>2]|0;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==18){p=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=p+2;c[j>>2]=7;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=p;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}}else if((s|0)==21){p=c[l>>2]|0;if((c[l>>2]|0)!=(c[o>>2]|0)){c[c[n>>2]>>2]=p;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}c[l>>2]=p+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;q=c[j>>2]|0;i=h;return q|0}m=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))u=d[(c[k>>2]|0)+76+(d[m>>0]|0)>>0]|0;else u=D_(a[m+1>>0]|0,a[c[l>>2]>>0]|0)|0;if((u|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==32){c[c[n>>2]>>2]=r;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}return 0}function s_(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;a:while(1){f=c[k>>2]|0;if(!(a[(c[k>>2]|0)+1>>0]|0))m=d[(c[j>>2]|0)+76+(d[f>>0]|0)>>0]|0;else m=D_(a[f+1>>0]|0,a[c[k>>2]>>0]|0)|0;switch(m|0){case 7:{f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=7;break a}else n=8;break}case 6:{n=8;break}case 5:break;case 27:case 26:case 25:case 24:case 23:case 22:case 29:{f=c[l>>2]|0;c[l>>2]=f+1;e=a[f>>0]|0;f=c[k>>2]|0;c[k>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=15;break a}f=c[l>>2]|0;c[l>>2]=f+1;e=a[f>>0]|0;f=c[k>>2]|0;c[k>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=17;break a}else continue a;break}default:{n=18;break a}}if((n|0)==8?(n=0,f=c[k>>2]|0,c[k>>2]=f+1,e=a[f>>0]|0,f=c[l>>2]|0,c[l>>2]=f+1,(e|0)!=(a[f>>0]|0)):0){n=9;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=11;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=13;break}}if((n|0)==7){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==9){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==11){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==13){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==15){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==17){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==18){n=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))p=d[(c[j>>2]|0)+76+(d[n>>0]|0)>>0]|0;else p=D_(a[n+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(p|0){case 27:case 26:case 25:case 24:case 23:case 22:case 29:case 7:case 6:case 5:{c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}default:{c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}}}return 0}function t_(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+16|0;j=g+8|0;k=g+4|0;l=g;c[g+12>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;while(1){m=(c[j>>2]|0)==(c[k>>2]|0);if(!(a[c[l>>2]>>0]|0)){n=9;break}if(m){n=4;break}if(a[(c[j>>2]|0)+1>>0]|0){n=7;break}if((a[c[j>>2]>>0]|0)!=(a[c[l>>2]>>0]|0)){n=7;break}c[j>>2]=(c[j>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==4){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==7){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==9){c[h>>2]=m&1;o=c[h>>2]|0;i=g;return o|0}return 0}function u_(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[h>>2];a:while(1){e=c[h>>2]|0;if(!(a[(c[h>>2]|0)+1>>0]|0))k=d[(c[g>>2]|0)+76+(d[e>>0]|0)>>0]|0;else k=D_(a[e+1>>0]|0,a[c[h>>2]>>0]|0)|0;switch(k|0){case 5:{c[h>>2]=(c[h>>2]|0)+2;continue a;break}case 6:{c[h>>2]=(c[h>>2]|0)+3;continue a;break}case 7:{c[h>>2]=(c[h>>2]|0)+4;continue a;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{c[h>>2]=(c[h>>2]|0)+2;continue a;break}default:break a}}i=f;return (c[h>>2]|0)-(c[j>>2]|0)|0}function v_(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;a:while(1){e=c[h>>2]|0;if(!(a[(c[h>>2]|0)+1>>0]|0))j=d[(c[g>>2]|0)+76+(d[e>>0]|0)>>0]|0;else j=D_(a[e+1>>0]|0,a[c[h>>2]>>0]|0)|0;switch(j|0){case 21:case 9:case 10:break;default:break a}c[h>>2]=(c[h>>2]|0)+2}i=f;return c[h>>2]|0}function w_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=1;c[o>>2]=0;c[p>>2]=0;c[k>>2]=(c[k>>2]|0)+2;a:while(1){g=c[k>>2]|0;if(!(a[(c[k>>2]|0)+1>>0]|0))q=d[(c[j>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[k>>2]>>0]|0)|0;b:do switch(q|0){case 5:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=c[k>>2];break}case 6:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+1;break}case 7:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+2;break}case 24:case 22:case 29:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}break}case 12:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+2;c[n>>2]=2;c[p>>2]=12;break b}if((c[p>>2]|0)==12){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 13:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+2;c[n>>2]=2;c[p>>2]=13;break b}if((c[p>>2]|0)==13){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 3:{if((c[o>>2]|0)<(c[l>>2]|0))a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 21:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if(((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)?(a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]|0)!=0:0){if((c[k>>2]|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]|0)){if(!(a[(c[k>>2]|0)+1>>0]|0))r=a[c[k>>2]>>0]|0;else r=-1;if((r|0)==32){if(!(a[(c[k>>2]|0)+2+1>>0]|0))s=a[(c[k>>2]|0)+2>>0]|0;else s=-1;if((s|0)!=32){g=(c[k>>2]|0)+2|0;if(!(a[(c[k>>2]|0)+2+1>>0]|0))t=d[(c[j>>2]|0)+76+(d[g>>0]|0)>>0]|0;else t=D_(a[g+1>>0]|0,a[(c[k>>2]|0)+2>>0]|0)|0;if((t|0)!=(c[p>>2]|0))break b}}}a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0}break}case 10:case 9:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 17:case 11:{if((c[n>>2]|0)!=2)break a;break}default:{}}while(0);c[k>>2]=(c[k>>2]|0)+2}i=h;return c[o>>2]|0}function x_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+20|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[e+16>>2]=b;c[g>>2]=d;c[h>>2]=0;c[g>>2]=(c[g>>2]|0)+4;a:do if((a[(c[g>>2]|0)+1>>0]|0)==0?(a[c[g>>2]>>0]|0)==120:0){c[g>>2]=(c[g>>2]|0)+2;while(1){if(!(a[(c[g>>2]|0)+1>>0]|0))l=(a[c[g>>2]>>0]|0)==59;else l=0;if(!(l^1))break a;if(!(a[(c[g>>2]|0)+1>>0]|0))m=a[c[g>>2]>>0]|0;else m=-1;c[j>>2]=m;switch(c[j>>2]|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{c[h>>2]=c[h>>2]<<4;c[h>>2]=c[h>>2]|(c[j>>2]|0)-48;break}case 70:case 69:case 68:case 67:case 66:case 65:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-65));break}case 102:case 101:case 100:case 99:case 98:case 97:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-97));break}default:{}}if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+2}c[f>>2]=-1;n=c[f>>2]|0;i=e;return n|0}else o=16;while(0);b:do if((o|0)==16){while(1){o=0;if(!(a[(c[g>>2]|0)+1>>0]|0))p=(a[c[g>>2]>>0]|0)==59;else p=0;if(!(p^1))break b;if(!(a[(c[g>>2]|0)+1>>0]|0))q=a[c[g>>2]>>0]|0;else q=-1;c[k>>2]=q;c[h>>2]=(c[h>>2]|0)*10;c[h>>2]=(c[h>>2]|0)+((c[k>>2]|0)-48);if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+2;o=16}c[f>>2]=-1;n=c[f>>2]|0;i=e;return n|0}while(0);c[f>>2]=YZ(c[h>>2]|0)|0;n=c[f>>2]|0;i=e;return n|0}function y_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f+12|0;h=f+4|0;j=f;c[f+8>>2]=b;c[h>>2]=d;c[j>>2]=e;a:do switch(((c[j>>2]|0)-(c[h>>2]|0)|0)/2|0|0){case 2:{if((a[(c[h>>2]|0)+2+1>>0]|0)==0?(a[(c[h>>2]|0)+2>>0]|0)==116:0){if(!(a[(c[h>>2]|0)+1>>0]|0))k=a[c[h>>2]>>0]|0;else k=-1;switch(k|0){case 108:{c[g>>2]=60;l=c[g>>2]|0;i=f;return l|0}case 103:{c[g>>2]=62;l=c[g>>2]|0;i=f;return l|0}default:break a}}break}case 3:{if((((((a[(c[h>>2]|0)+1>>0]|0)==0?(a[c[h>>2]>>0]|0)==97:0)?(c[h>>2]=(c[h>>2]|0)+2,(a[(c[h>>2]|0)+1>>0]|0)==0):0)?(a[c[h>>2]>>0]|0)==109:0)?(c[h>>2]=(c[h>>2]|0)+2,(a[(c[h>>2]|0)+1>>0]|0)==0):0)?(a[c[h>>2]>>0]|0)==112:0){c[g>>2]=38;l=c[g>>2]|0;i=f;return l|0}break}case 4:{if(!(a[(c[h>>2]|0)+1>>0]|0))m=a[c[h>>2]>>0]|0;else m=-1;switch(m|0){case 113:{c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=117)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=116)break a;c[g>>2]=34;l=c[g>>2]|0;i=f;return l|0}case 97:{c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=112)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[(c[h>>2]|0)+1>>0]|0)break a;if((a[c[h>>2]>>0]|0)!=115)break a;c[g>>2]=39;l=c[g>>2]|0;i=f;return l|0}default:break a}break}default:{}}while(0);c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}function z_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;l=h+4|0;m=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;g=c[k>>2]|0;if(!(a[(c[k>>2]|0)+1>>0]|0))n=d[(c[j>>2]|0)+76+(d[g>>0]|0)>>0]|0;else n=D_(a[g+1>>0]|0,a[c[k>>2]>>0]|0)|0;switch(n|0){case 5:{c[k>>2]=(c[k>>2]|0)+2;break}case 6:{c[k>>2]=(c[k>>2]|0)+3;break}case 7:{c[k>>2]=(c[k>>2]|0)+4;break}case 10:{c[(c[m>>2]|0)+4>>2]=-1;g=c[m>>2]|0;c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+2;break}case 9:{g=c[m>>2]|0;c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+2;if((c[k>>2]|0)!=(c[l>>2]|0)){g=c[k>>2]|0;if(!(a[(c[k>>2]|0)+1>>0]|0))o=d[(c[j>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[k>>2]>>0]|0)|0;if((o|0)==10)c[k>>2]=(c[k>>2]|0)+2}c[(c[m>>2]|0)+4>>2]=-1;break}default:c[k>>2]=(c[k>>2]|0)+2}g=(c[m>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}i=h;return}function A_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[l>>2]=(c[l>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+-2;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){o=18;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))p=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else p=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(p|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:break;case 21:{if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==9:0){o=9;break a}break}case 22:case 26:{if(!(a[(c[l>>2]|0)+1>>0]|0))q=a[c[l>>2]>>0]|0;else q=-1;if(q&-128)o=13;break}default:o=13}if((o|0)==13){o=0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=a[c[l>>2]>>0]|0;else r=-1;switch(r|0){case 64:case 36:break;default:{o=16;break a}}}c[l>>2]=(c[l>>2]|0)+2}if((o|0)==9){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}else if((o|0)==16){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}else if((o|0)==18){c[j>>2]=1;s=c[j>>2]|0;i=h;return s|0}return 0}function B_(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+32|0;k=j+20|0;l=j+16|0;m=j+12|0;n=j+8|0;o=j+4|0;p=j;q=j+30|0;r=j+29|0;s=j+28|0;c[j+24>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=c[c[k>>2]>>2];a:while(1){t=c[o>>2]|0;if((c[o>>2]|0)==(c[l>>2]|0)){u=18;break}a[r>>0]=a[t>>0]|0;a[s>>0]=a[(c[o>>2]|0)+1>>0]|0;switch(d[s>>0]|0|0){case 0:{if((d[r>>0]|0|0)<128){if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){u=6;break a}h=a[r>>0]|0;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h}else u=8;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{u=8;break}case 219:case 218:case 217:case 216:{if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<4){u=15;break a}c[p>>2]=(((d[s>>0]|0)&3)<<2|(d[r>>0]|0)>>6&3)+1;h=(c[p>>2]>>2|240)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=((d[r>>0]|0)>>2&15|(c[p>>2]&3)<<4|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;c[o>>2]=(c[o>>2]|0)+2;a[q>>0]=a[c[o>>2]>>0]|0;h=(((d[r>>0]|0)&3)<<4|((d[(c[o>>2]|0)+1>>0]|0)&3)<<2|(d[q>>0]|0)>>6|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=((d[q>>0]|0)&63|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;break}default:{if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<3){u=12;break a}h=((d[s>>0]|0)>>4|224)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=(((d[s>>0]|0)&15)<<2|(d[r>>0]|0)>>6|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;h=((d[r>>0]|0)&63|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h}}if((u|0)==8){u=0;if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<2){u=9;break}h=((d[r>>0]|0)>>6|(d[s>>0]|0)<<2|192)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;h=((d[r>>0]|0)&63|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h}c[o>>2]=(c[o>>2]|0)+2}if((u|0)==6){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==9){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==12){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==15){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==18){c[c[k>>2]>>2]=t;i=j;return}}function C_(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;c[j+16>>2]=a;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;if(((c[l>>2]|0)-(c[c[k>>2]>>2]|0)|0)>((((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)/2|0)<<1|0)?((d[(c[l>>2]|0)+-2+1>>0]|0)&248|0)==216:0)c[l>>2]=(c[l>>2]|0)+-2;while(1){if((c[c[k>>2]>>2]|0)==(c[l>>2]|0)){o=7;break}if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){o=7;break}h=((d[(c[c[k>>2]>>2]|0)+1>>0]|0)<<8|(d[c[c[k>>2]>>2]>>0]|0))&65535;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+2;b[f>>1]=h;h=c[k>>2]|0;c[h>>2]=(c[h>>2]|0)+2}if((o|0)==7){i=j;return}}function D_(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f;h=f+5|0;j=f+4|0;a[h>>0]=b;a[j>>0]=e;switch(d[h>>0]|0|0){case 219:case 218:case 217:case 216:{c[g>>2]=7;break}case 223:case 222:case 221:case 220:{c[g>>2]=8;break}case 255:{if(((d[j>>0]|0)+-254|0)>>>0<2)c[g>>2]=0;else k=6;break}default:k=6}if((k|0)==6)c[g>>2]=29;i=f;return c[g>>2]|0}function E_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 19:{c[j>>2]=G_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=40;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 5:{p=29;break b;break}case 6:{p=32;break b;break}case 7:{p=35;break b;break}case 18:{p=38;break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){p=27;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=39;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==27){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==29)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==32)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==35)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==38){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=9;break}else if((p|0)==39){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==40){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function F_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 30:case 9:case 10:case 21:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=22;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=40;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 5:{p=29;break b;break}case 6:{p=32;break b;break}case 7:{p=35;break b;break}case 18:{p=38;break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){p=27;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=39;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==27){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==29)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==32)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==35)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==38){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=28;break}else if((p|0)==39){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==40){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function G_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==120:0){c[j>>2]=H_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))p=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else p=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;g=c[l>>2]|0;if((p|0)!=25){c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}c[l>>2]=g+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 18:{r=16;break b;break}case 25:break;default:{r=17;break b}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==16){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=10;o=c[j>>2]|0;i=h;return o|0}else if((r|0)==17){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}}while(0);c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}function H_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;g=c[l>>2]|0;if((o+-24|0)>>>0>=2){c[c[n>>2]>>2]=g;c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=g+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 18:{r=13;break b;break}case 24:case 25:break;default:{r=14;break b}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==13){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=10;p=c[j>>2]|0;i=h;return p|0}else if((r|0)==14){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}}while(0);c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}function I_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-1;else{g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))p=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else p=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(p|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 16:{g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 27:{c[j>>2]=J_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 20:{c[j>>2]=K_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 15:{c[j>>2]=L_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 17:{c[j>>2]=M_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=0;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=98;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))s=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else s=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(s|0){case 5:{r=39;break b;break}case 6:{r=42;break b;break}case 7:{r=45;break b;break}case 10:case 9:case 21:{r=69;break b;break}case 11:{r=90;break b;break}case 17:{break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){r=37;break b}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{if(c[o>>2]|0){r=49;break b}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){r=51;break b}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))t=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else t=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(t|0){case 5:{r=59;break b;break}case 6:{r=62;break b;break}case 7:{r=65;break b;break}case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){r=57;break b}break}case 24:case 22:break;default:{r=68;break b}}c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{r=97;break b}}c[l>>2]=(c[l>>2]|0)+2}c:switch(r|0){case 37:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 39:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 42:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 45:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 49:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 51:{c[j>>2]=-1;break a;break}case 57:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 59:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 62:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 65:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 68:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 69:{c[l>>2]=(c[l>>2]|0)+2;d:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=89;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))u=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else u=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(u|0){case 11:{r=90;break c;break}case 17:{break c;break}case 29:{r=75;break d;break}case 24:case 22:{break d;break}case 5:{r=78;break d;break}case 6:{r=81;break d;break}case 7:{r=84;break d;break}case 10:case 9:case 21:break;default:{r=88;break d}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==75){if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}else if((r|0)==78)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==81)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==84)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==88){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==89){c[j>>2]=-1;break a}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=N_(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 97:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 98:{c[j>>2]=-1;break a;break}}if((r|0)==90){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=2;break}c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=4;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0}while(0);i=h;return c[j>>2]|0}function J_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==45:0){c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(o|0){case 8:case 1:case 0:{p=20;break b;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=12;break b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=15;break b}c[l>>2]=(c[l>>2]|0)+3;continue b;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=18;break b}c[l>>2]=(c[l>>2]|0)+4;continue b;break}case 27:{g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=22;break b}if(a[(c[l>>2]|0)+1>>0]|0)continue b;if((a[c[l>>2]>>0]|0)==45){p=25;break b}else continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((p|0)==12){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==15){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==18){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==20){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==22){c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==25){g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=13;q=c[j>>2]|0;i=h;return q|0}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}while(0);c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}function K_(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(((c[k>>2]|0)-(c[j>>2]|0)|0)<12){c[h>>2]=-1;n=c[h>>2]|0;i=g;return n|0}c[m>>2]=0;while(1){o=c[j>>2]|0;if((c[m>>2]|0)>=6){p=9;break}if(a[o+1>>0]|0){p=7;break}if((a[c[j>>2]>>0]|0)!=(a[182097+(c[m>>2]|0)>>0]|0)){p=7;break}c[m>>2]=(c[m>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+2}if((p|0)==7){c[c[l>>2]>>2]=c[j>>2];c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((p|0)==9){c[c[l>>2]>>2]=o;c[h>>2]=8;n=c[h>>2]|0;i=g;return n|0}return 0}function L_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[p>>2]=c[l>>2];a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-1;else{g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=70;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))s=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else s=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(s|0){case 5:{r=28;break b;break}case 6:{r=31;break b;break}case 7:{r=34;break b;break}case 10:case 9:case 21:{r=37;break b;break}case 15:{r=62;break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){r=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:break b}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==37){g=(O_(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;f=c[l>>2]|0;if(!g){c[c[n>>2]>>2]=f;c[j>>2]=0;break}c[l>>2]=f+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=61;break}f=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))t=d[(c[k>>2]|0)+76+(d[f>>0]|0)>>0]|0;else t=D_(a[f+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(t|0){case 8:case 1:case 0:{r=54;break c;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){r=46;break c}c[l>>2]=(c[l>>2]|0)+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){r=49;break c}c[l>>2]=(c[l>>2]|0)+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){r=52;break c}c[l>>2]=(c[l>>2]|0)+4;continue c;break}case 15:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){r=56;break c}if(a[(c[l>>2]|0)+1>>0]|0)continue c;if((a[c[l>>2]>>0]|0)==62){r=59;break c}else continue c;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue c}}}if((r|0)==46){c[j>>2]=-2;break}else if((r|0)==49){c[j>>2]=-2;break}else if((r|0)==52){c[j>>2]=-2;break}else if((r|0)==54){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==56){c[j>>2]=-1;break}else if((r|0)==59){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=c[o>>2];break}else if((r|0)==61){c[j>>2]=-1;break}}else if((r|0)==62){f=(O_(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;g=c[l>>2]|0;if(!f){c[c[n>>2]>>2]=g;c[j>>2]=0;break}c[l>>2]=g+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=c[o>>2];break}}else if((r|0)==70){c[j>>2]=-1;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0}while(0);i=h;return c[j>>2]|0}function M_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=50;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 5:{p=28;break b;break}case 6:{p=31;break b;break}case 7:{p=34;break b;break}case 10:case 9:case 21:{p=37;break b;break}case 11:{p=48;break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){p=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{p=49;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==37){c[l>>2]=(c[l>>2]|0)+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=46;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else r=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(r|0){case 11:{p=43;break c;break}case 10:case 9:case 21:break;default:{p=44;break c}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==43){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=5;break}else if((p|0)==44){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==46){c[j>>2]=-1;break}}else if((p|0)==48){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=5;break}else if((p|0)==49){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==50){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function N_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;h=i;i=i+48|0;j=h+36|0;k=h+32|0;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=115;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))u=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else u=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;b:do switch(u|0){case 5:{t=10;break a;break}case 6:{t=13;break a;break}case 7:{t=16;break a;break}case 29:{if(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))t=9;else{t=8;break a}break}case 27:case 26:case 25:case 24:case 22:{t=9;break}case 23:{if(c[o>>2]|0){t=20;break a}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=22;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))v=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else v=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(v|0){case 5:{t=30;break a;break}case 6:{t=33;break a;break}case 7:{t=36;break a;break}case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){t=28;break a}break}case 24:case 22:break;default:{t=39;break a}}c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 10:case 9:case 21:{while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=41;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))w=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else w=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;c[p>>2]=w;if((c[p>>2]|0)==14)break b;switch(c[p>>2]|0){case 9:case 10:case 21:break;default:{t=47;break a}}}break}case 14:break;default:{t=114;break a}}while(0);if((t|0)==9){t=0;c[l>>2]=(c[l>>2]|0)+2;continue}c[o>>2]=0;while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=50;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))x=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else x=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;c[q>>2]=x;if((c[q>>2]|0)==12|(c[q>>2]|0)==13)break;switch(c[q>>2]|0){case 9:case 10:case 21:break;default:{t=56;break a}}}c[l>>2]=(c[l>>2]|0)+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=59;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))y=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else y=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;c[r>>2]=y;if((c[r>>2]|0)==(c[q>>2]|0))break;switch(c[r>>2]|0){case 8:case 1:case 0:{t=74;break a;break}case 2:{t=79;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=66;break a}c[l>>2]=(c[l>>2]|0)+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=69;break a}c[l>>2]=(c[l>>2]|0)+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=72;break a}c[l>>2]=(c[l>>2]|0)+4;continue c;break}case 3:{c[s>>2]=E_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,l)|0;if((c[s>>2]|0)<=0){t=76;break a}else continue c;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue c}}}c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=82;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))z=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else z=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(z|0){case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;default:{t=87;break a}}d:while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=89;break a}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))A=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else A=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(A|0){case 5:{t=97;break a;break}case 6:{t=100;break a;break}case 7:{t=103;break a;break}case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;case 29:{t=94;break d;break}case 24:case 22:{break d;break}default:{t=113;break a}}}if((t|0)==94?(t=0,(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31)|0)==0):0){t=95;break}c[l>>2]=(c[l>>2]|0)+2}switch(t|0){case 8:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 10:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 13:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 16:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 20:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 22:{c[j>>2]=-1;break}case 28:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 30:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 33:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 36:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 39:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 41:{c[j>>2]=-1;break}case 47:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 50:{c[j>>2]=-1;break}case 56:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 59:{c[j>>2]=-1;break}case 66:{c[j>>2]=-2;break}case 69:{c[j>>2]=-2;break}case 72:{c[j>>2]=-2;break}case 74:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 76:{if(!(c[s>>2]|0))c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[s>>2];break}case 79:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 82:{c[j>>2]=-1;break}case 87:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 89:{c[j>>2]=-1;break}case 95:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 97:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 100:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 103:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 106:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=1;break}case 107:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[(c[l>>2]|0)+1>>0]|0)==0?(a[c[l>>2]>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=3;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 113:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 114:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 115:{c[j>>2]=-1;break}}i=h;return c[j>>2]|0}function O_(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;c[c[l>>2]>>2]=11;if(((c[k>>2]|0)-(c[j>>2]|0)|0)!=6){c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}if(!(a[(c[j>>2]|0)+1>>0]|0))o=a[c[j>>2]>>0]|0;else o=-1;switch(o|0){case 120:break;case 88:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}c[j>>2]=(c[j>>2]|0)+2;if(!(a[(c[j>>2]|0)+1>>0]|0))p=a[c[j>>2]>>0]|0;else p=-1;switch(p|0){case 109:break;case 77:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}c[j>>2]=(c[j>>2]|0)+2;if(!(a[(c[j>>2]|0)+1>>0]|0))q=a[c[j>>2]>>0]|0;else q=-1;switch(q|0){case 108:break;case 76:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}if(c[m>>2]|0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else{c[c[l>>2]>>2]=12;c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}return 0}function P_(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+12|0;o=j+8|0;p=j+4|0;q=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;a:while(1){if((c[n>>2]|0)==(c[o>>2]|0)){r=27;break}h=c[n>>2]|0;if(!(a[(c[n>>2]|0)+1>>0]|0))s=d[(c[m>>2]|0)+76+(d[h>>0]|0)>>0]|0;else s=D_(a[h+1>>0]|0,a[c[n>>2]>>0]|0)|0;c[q>>2]=s;switch(c[q>>2]|0){case 8:case 1:case 0:{r=16;break a;break}case 5:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<2){r=8;break a}c[n>>2]=(c[n>>2]|0)+2;continue a;break}case 6:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<3){r=11;break a}c[n>>2]=(c[n>>2]|0)+3;continue a;break}case 7:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<4){r=14;break a}c[n>>2]=(c[n>>2]|0)+4;continue a;break}case 13:case 12:{c[n>>2]=(c[n>>2]|0)+2;if((c[q>>2]|0)!=(c[l>>2]|0))continue a;else{r=18;break a}break}default:{c[n>>2]=(c[n>>2]|0)+2;continue a}}}if((r|0)==8){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==11){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==14){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==16){c[c[p>>2]>>2]=c[n>>2];c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==18){if((c[n>>2]|0)==(c[o>>2]|0)){c[k>>2]=-27;t=c[k>>2]|0;i=j;return t|0}c[c[p>>2]>>2]=c[n>>2];p=c[n>>2]|0;if(!(a[(c[n>>2]|0)+1>>0]|0))u=d[(c[m>>2]|0)+76+(d[p>>0]|0)>>0]|0;else u=D_(a[p+1>>0]|0,a[c[n>>2]>>0]|0)|0;switch(u|0){case 20:case 30:case 11:case 10:case 9:case 21:{c[k>>2]=27;t=c[k>>2]|0;i=j;return t|0}default:{c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}}}else if((r|0)==27){c[k>>2]=-1;t=c[k>>2]|0;i=j;return t|0}return 0}function Q_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))p=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else p=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(p|0){case 27:{c[j>>2]=J_(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}case 20:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=33;o=c[j>>2]|0;i=h;return o|0}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+2;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=26;break}p=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))r=d[(c[k>>2]|0)+76+(d[p>>0]|0)>>0]|0;else r=D_(a[p+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(r|0){case 30:{q=16;break a;break}case 10:case 9:case 21:{break a;break}case 24:case 22:break;default:{q=25;break a}}c[l>>2]=(c[l>>2]|0)+2}b:do if((q|0)==16){if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}r=(c[l>>2]|0)+2|0;if(!(a[(c[l>>2]|0)+2+1>>0]|0))s=d[(c[k>>2]|0)+76+(d[r>>0]|0)>>0]|0;else s=D_(a[r+1>>0]|0,a[(c[l>>2]|0)+2>>0]|0)|0;switch(s|0){case 30:case 10:case 9:case 21:break;default:break b}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==25){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==26){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}while(0);c[c[n>>2]>>2]=c[l>>2];c[j>>2]=16;o=c[j>>2]|0;i=h;return o|0}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}}return 0}function R_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))o=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else o=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=39;break}g=c[l>>2]|0;if(!(a[(c[l>>2]|0)+1>>0]|0))q=d[(c[k>>2]|0)+76+(d[g>>0]|0)>>0]|0;else q=D_(a[g+1>>0]|0,a[c[l>>2]>>0]|0)|0;switch(q|0){case 5:{p=28;break b;break}case 6:{p=31;break b;break}case 7:{p=34;break b;break}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{p=37;break b;break}case 29:{if(!(c[93280+((d[181834+(d[(c[l>>2]|0)+1>>0]|0)>>0]<<3)+(d[c[l>>2]>>0]>>5)<<2)>>2]&1<<(d[c[l>>2]>>0]&31))){p=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=38;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==37){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=20;break}else if((p|0)==38){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==39){c[j>>2]=-20;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function S_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){c[p>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[p>>2]&1){c[p>>2]=c[p>>2]&-2;if(!(c[p>>2]|0)){c[j>>2]=-1;break a}else{c[m>>2]=(c[l>>2]|0)+(c[p>>2]|0);break}}while(0);g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;b:do switch(q|0){case 12:{c[j>>2]=s$(12,c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 13:{c[j>>2]=s$(13,c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 2:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else r=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(r|0){case 16:{c[j>>2]=t$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 15:{c[j>>2]=o$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 7:case 6:case 5:case 29:case 24:case 22:{c[c[n>>2]>>2]=(c[l>>2]|0)+-2;c[j>>2]=29;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 9:{if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[c[n>>2]>>2]=c[m>>2];c[j>>2]=-15;break a}else s=25;break}case 10:case 21:{s=25;break}case 30:{c[j>>2]=i$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 35:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=38;break a;break}case 20:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=25;break a;break}case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-26;break a}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==93:0){if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}if((a[(c[l>>2]|0)+2>>0]|0)==0?(a[(c[l>>2]|0)+2+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+4;c[j>>2]=34;break a}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=26;break a;break}case 31:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=23;break a;break}case 32:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-24;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))t=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else t=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(t|0){case 33:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=36;break a;break}case 15:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=35;break a;break}case 34:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=37;break a;break}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=24;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 36:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=21;break a;break}case 11:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=17;break a;break}case 19:{c[j>>2]=u$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:{c[o>>2]=18;c[l>>2]=(c[l>>2]|0)+2;s=77;break}case 23:case 27:case 26:case 25:{c[o>>2]=19;c[l>>2]=(c[l>>2]|0)+2;s=77;break}case 29:{g=c[l>>2]|0;if(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31)){c[l>>2]=g+2;c[o>>2]=18;s=77;break b}if(c[93280+((d[181834+(d[g>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31)){c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=19;s=77}else s=76;break}default:s=76}while(0);if((s|0)==25){c:while(1){s=0;c[l>>2]=(c[l>>2]|0)+2;u=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){s=32;break}g=c[l>>2]|0;if(!(a[u>>0]|0))v=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else v=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(v|0){case 10:case 21:{s=25;continue c;break}case 9:break;default:{s=31;break c}}if(((c[l>>2]|0)+2|0)!=(c[m>>2]|0))s=25;else{s=31;break}}if((s|0)==31){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=15;break}else if((s|0)==32){c[c[n>>2]>>2]=u;c[j>>2]=15;break}}else if((s|0)==76){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((s|0)==77){d:while(1){s=0;if((c[l>>2]|0)==(c[m>>2]|0)){s=126;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))w=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else w=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(w|0){case 5:{s=85;break d;break}case 6:{s=88;break d;break}case 7:{s=91;break d;break}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{s=94;break d;break}case 34:{s=116;break d;break}case 33:{s=119;break d;break}case 15:{s=122;break d;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){s=83;break d}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{c[l>>2]=(c[l>>2]|0)+2;switch(c[o>>2]|0){case 18:break;case 41:{c[o>>2]=19;s=77;continue d;break}default:{s=77;continue d}}if((c[l>>2]|0)==(c[m>>2]|0)){s=97;break d}c[o>>2]=41;g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))x=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else x=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(x|0){case 5:{s=105;break d;break}case 6:{s=108;break d;break}case 7:{s=111;break d;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){s=103;break d}break}case 27:case 26:case 25:case 24:case 22:break;default:{c[o>>2]=19;s=77;continue d}}c[l>>2]=(c[l>>2]|0)+2;s=77;continue d;break}default:{s=125;break d}}c[l>>2]=(c[l>>2]|0)+2;s=77}switch(s|0){case 83:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 85:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 88:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 91:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 94:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[o>>2];break a;break}case 97:{c[j>>2]=-1;break a;break}case 103:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 105:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 108:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 111:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 116:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=32;break a}break}case 119:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=31;break a}break}case 122:{g=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=g+2;c[j>>2]=30;break a}break}case 125:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 126:{c[j>>2]=0-(c[o>>2]|0);break a;break}}}}else c[j>>2]=-4;while(0);i=h;return c[j>>2]|0}function T_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;p=c[j>>2]|0;i=h;return p|0}c[o>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[o>>2]&1){c[o>>2]=c[o>>2]&-2;if(c[o>>2]|0){c[m>>2]=(c[l>>2]|0)+(c[o>>2]|0);break}c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}while(0);o=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[o+1>>0]|0)>>0]|0;else q=D_(a[o>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;a:do switch(q|0){case 2:{c[j>>2]=l$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;p=c[j>>2]|0;i=h;return p|0}case 3:{c[j>>2]=h$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;p=c[j>>2]|0;i=h;return p|0}case 9:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;p=c[j>>2]|0;i=h;return p|0}o=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[o+1>>0]|0)>>0]|0;else r=D_(a[o>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;if((r|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;p=c[j>>2]|0;i=h;return p|0}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==93:0){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;p=c[j>>2]|0;i=h;return p|0}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=(c[l>>2]|0)+-2}break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=2){c[l>>2]=(c[l>>2]|0)+2;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=3){c[l>>2]=(c[l>>2]|0)+3;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=4){c[l>>2]=(c[l>>2]|0)+4;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}default:c[l>>2]=(c[l>>2]|0)+2}while(0);b:while(1){s=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){t=68;break}r=c[l>>2]|0;if(!(a[s>>0]|0))u=d[(c[k>>2]|0)+76+(d[r+1>>0]|0)>>0]|0;else u=D_(a[r>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(u|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{t=66;break b;break}case 5:{v=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=49;break b}c[l>>2]=v+2;continue b;break}case 6:{w=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=52;break b}c[l>>2]=w+3;continue b;break}case 7:{x=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=55;break b}c[l>>2]=x+4;continue b;break}case 4:{if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){t=66;break b}if((a[(c[l>>2]|0)+2>>0]|0)==0?(a[(c[l>>2]|0)+2+1>>0]|0)==93:0){if(((c[l>>2]|0)+4|0)==(c[m>>2]|0)){t=66;break b}if((a[(c[l>>2]|0)+4>>0]|0)==0?(a[(c[l>>2]|0)+4+1>>0]|0)==62:0){t=65;break b}c[l>>2]=(c[l>>2]|0)+2;continue b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((t|0)==49){c[c[n>>2]>>2]=v;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==52){c[c[n>>2]>>2]=w;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==55){c[c[n>>2]>>2]=x;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==65){c[c[n>>2]>>2]=(c[l>>2]|0)+4;c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==66){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==68){c[c[n>>2]>>2]=s;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}return 0}function U_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;p=c[j>>2]|0;i=h;return p|0}c[o>>2]=(c[m>>2]|0)-(c[l>>2]|0);do if(c[o>>2]&1){c[o>>2]=c[o>>2]&-2;if(c[o>>2]|0){c[m>>2]=(c[l>>2]|0)+(c[o>>2]|0);break}c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}while(0);o=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[o+1>>0]|0)>>0]|0;else q=D_(a[o>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;a:do switch(q|0){case 4:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==93:0){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=40;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=(c[l>>2]|0)+-2}break}case 9:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}o=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[o+1>>0]|0)>>0]|0;else r=D_(a[o>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;if((r|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=7;p=c[j>>2]|0;i=h;return p|0}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=2){c[l>>2]=(c[l>>2]|0)+2;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=3){c[l>>2]=(c[l>>2]|0)+3;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)>=4){c[l>>2]=(c[l>>2]|0)+4;break a}c[j>>2]=-2;p=c[j>>2]|0;i=h;return p|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}default:c[l>>2]=(c[l>>2]|0)+2}while(0);b:while(1){s=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){t=57;break}r=c[l>>2]|0;if(!(a[s>>0]|0))u=d[(c[k>>2]|0)+76+(d[r+1>>0]|0)>>0]|0;else u=D_(a[r>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(u|0){case 4:case 10:case 9:case 8:case 1:case 0:{t=55;break b;break}case 5:{v=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=47;break b}c[l>>2]=v+2;continue b;break}case 6:{w=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=50;break b}c[l>>2]=w+3;continue b;break}case 7:{x=c[l>>2]|0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=53;break b}c[l>>2]=x+4;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((t|0)==47){c[c[n>>2]>>2]=v;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==50){c[c[n>>2]>>2]=w;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==53){c[c[n>>2]>>2]=x;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==55){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}else if((t|0)==57){c[c[n>>2]>>2]=s;c[j>>2]=6;p=c[j>>2]|0;i=h;return p|0}return 0}function V_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[p>>2]=(c[m>>2]|0)-(c[l>>2]|0);if(c[p>>2]&1){c[p>>2]=c[p>>2]&-2;c[m>>2]=(c[l>>2]|0)+(c[p>>2]|0)}a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=39;break}p=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[p+1>>0]|0)>>0]|0;else r=D_(a[p>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(r|0){case 8:case 1:case 0:{q=17;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=9;break a}c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=12;break a}c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=15;break a}c[l>>2]=(c[l>>2]|0)+4;continue a;break}case 2:{p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=19;break a}if(a[c[l>>2]>>0]|0)continue a;if((a[(c[l>>2]|0)+1>>0]|0)!=33)continue a;p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=23;break a}if(a[c[l>>2]>>0]|0)continue a;if((a[(c[l>>2]|0)+1>>0]|0)!=91)continue a;c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 4:{p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=28;break a}if(a[c[l>>2]>>0]|0)continue a;if((a[(c[l>>2]|0)+1>>0]|0)!=93)continue a;p=(c[l>>2]|0)+2|0;c[l>>2]=p;if((p|0)==(c[m>>2]|0)){q=32;break a}if(a[c[l>>2]>>0]|0)continue a;if((a[(c[l>>2]|0)+1>>0]|0)!=62)continue a;c[l>>2]=(c[l>>2]|0)+2;if(!(c[o>>2]|0)){q=36;break a}c[o>>2]=(c[o>>2]|0)+-1;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}switch(q|0){case 9:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 12:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 15:{c[j>>2]=-2;s=c[j>>2]|0;i=h;return s|0}case 17:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}case 19:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 23:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 28:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 32:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}case 36:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=42;s=c[j>>2]|0;i=h;return s|0}case 39:{c[j>>2]=-1;s=c[j>>2]|0;i=h;return s|0}}return 0}function W_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;do if((c[l>>2]|0)!=(c[m>>2]|0)){c[o>>2]=c[l>>2];a:while(1){p=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){q=33;break}g=c[l>>2]|0;if(!(a[p>>0]|0))r=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else r=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(r|0){case 3:{q=12;break a;break}case 2:{q=15;break a;break}case 10:{q=16;break a;break}case 9:{q=19;break a;break}case 21:{q=29;break a;break}case 5:{c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{c[l>>2]=(c[l>>2]|0)+4;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}if((q|0)==12)if((c[l>>2]|0)==(c[o>>2]|0)){c[j>>2]=h$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;break}else if((q|0)==15){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((q|0)==16){g=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=g+2;c[j>>2]=7;break}else{c[c[n>>2]>>2]=g;c[j>>2]=6;break}}else if((q|0)==19){g=c[l>>2]|0;if((c[l>>2]|0)!=(c[o>>2]|0)){c[c[n>>2]>>2]=g;c[j>>2]=6;break}c[l>>2]=g+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))s=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else s=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;if((s|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;break}else if((q|0)==29){g=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=g+2;c[j>>2]=39;break}else{c[c[n>>2]>>2]=g;c[j>>2]=6;break}}else if((q|0)==33){c[c[n>>2]>>2]=p;c[j>>2]=6;break}}else c[j>>2]=-4;while(0);i=h;return c[j>>2]|0}function X_(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;q=c[j>>2]|0;i=h;return q|0}c[o>>2]=c[l>>2];a:while(1){r=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){s=32;break}g=c[l>>2]|0;if(!(a[r>>0]|0))t=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else t=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(t|0){case 3:{s=12;break a;break}case 30:{s=15;break a;break}case 10:{s=18;break a;break}case 9:{s=21;break a;break}case 5:{c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 6:{c[l>>2]=(c[l>>2]|0)+3;continue a;break}case 7:{c[l>>2]=(c[l>>2]|0)+4;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue a}}}if((s|0)==12)if((c[l>>2]|0)==(c[o>>2]|0)){c[j>>2]=h$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==15)if((c[l>>2]|0)==(c[o>>2]|0)){c[p>>2]=i$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;c[j>>2]=(c[p>>2]|0)==22?0:c[p>>2]|0;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==18){p=c[l>>2]|0;if((c[l>>2]|0)==(c[o>>2]|0)){c[c[n>>2]>>2]=p+2;c[j>>2]=7;q=c[j>>2]|0;i=h;return q|0}else{c[c[n>>2]>>2]=p;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}}else if((s|0)==21){p=c[l>>2]|0;if((c[l>>2]|0)!=(c[o>>2]|0)){c[c[n>>2]>>2]=p;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}c[l>>2]=p+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;q=c[j>>2]|0;i=h;return q|0}m=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))u=d[(c[k>>2]|0)+76+(d[m+1>>0]|0)>>0]|0;else u=D_(a[m>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;if((u|0)==10)c[l>>2]=(c[l>>2]|0)+2;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;q=c[j>>2]|0;i=h;return q|0}else if((s|0)==32){c[c[n>>2]>>2]=r;c[j>>2]=6;q=c[j>>2]|0;i=h;return q|0}return 0}function Y_(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;a:while(1){f=c[k>>2]|0;if(!(a[c[k>>2]>>0]|0))m=d[(c[j>>2]|0)+76+(d[f+1>>0]|0)>>0]|0;else m=D_(a[f>>0]|0,a[(c[k>>2]|0)+1>>0]|0)|0;switch(m|0){case 7:{f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=7;break a}else n=8;break}case 6:{n=8;break}case 5:break;case 27:case 26:case 25:case 24:case 23:case 22:case 29:{f=c[l>>2]|0;c[l>>2]=f+1;e=a[f>>0]|0;f=c[k>>2]|0;c[k>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=15;break a}f=c[l>>2]|0;c[l>>2]=f+1;e=a[f>>0]|0;f=c[k>>2]|0;c[k>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=17;break a}else continue a;break}default:{n=18;break a}}if((n|0)==8?(n=0,f=c[k>>2]|0,c[k>>2]=f+1,e=a[f>>0]|0,f=c[l>>2]|0,c[l>>2]=f+1,(e|0)!=(a[f>>0]|0)):0){n=9;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=11;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){n=13;break}}if((n|0)==7){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==9){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==11){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==13){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==15){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==17){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==18){n=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))p=d[(c[j>>2]|0)+76+(d[n+1>>0]|0)>>0]|0;else p=D_(a[n>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(p|0){case 27:case 26:case 25:case 24:case 23:case 22:case 29:case 7:case 6:case 5:{c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}default:{c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}}}return 0}function Z_(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+16|0;j=g+8|0;k=g+4|0;l=g;c[g+12>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;while(1){m=(c[j>>2]|0)==(c[k>>2]|0);if(!(a[c[l>>2]>>0]|0)){n=9;break}if(m){n=4;break}if(a[c[j>>2]>>0]|0){n=7;break}if((a[(c[j>>2]|0)+1>>0]|0)!=(a[c[l>>2]>>0]|0)){n=7;break}c[j>>2]=(c[j>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==4){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==7){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==9){c[h>>2]=m&1;o=c[h>>2]|0;i=g;return o|0}return 0}function __(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[h>>2];a:while(1){e=c[h>>2]|0;if(!(a[c[h>>2]>>0]|0))k=d[(c[g>>2]|0)+76+(d[e+1>>0]|0)>>0]|0;else k=D_(a[e>>0]|0,a[(c[h>>2]|0)+1>>0]|0)|0;switch(k|0){case 5:{c[h>>2]=(c[h>>2]|0)+2;continue a;break}case 6:{c[h>>2]=(c[h>>2]|0)+3;continue a;break}case 7:{c[h>>2]=(c[h>>2]|0)+4;continue a;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{c[h>>2]=(c[h>>2]|0)+2;continue a;break}default:break a}}i=f;return (c[h>>2]|0)-(c[j>>2]|0)|0}function $_(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;a:while(1){e=c[h>>2]|0;if(!(a[c[h>>2]>>0]|0))j=d[(c[g>>2]|0)+76+(d[e+1>>0]|0)>>0]|0;else j=D_(a[e>>0]|0,a[(c[h>>2]|0)+1>>0]|0)|0;switch(j|0){case 21:case 9:case 10:break;default:break a}c[h>>2]=(c[h>>2]|0)+2}i=f;return c[h>>2]|0}function a$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=1;c[o>>2]=0;c[p>>2]=0;c[k>>2]=(c[k>>2]|0)+2;a:while(1){g=c[k>>2]|0;if(!(a[c[k>>2]>>0]|0))q=d[(c[j>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[k>>2]|0)+1>>0]|0)|0;b:do switch(q|0){case 5:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=c[k>>2];break}case 6:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+1;break}case 7:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+2;break}case 24:case 22:case 29:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}break}case 12:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+2;c[n>>2]=2;c[p>>2]=12;break b}if((c[p>>2]|0)==12){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 13:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+2;c[n>>2]=2;c[p>>2]=13;break b}if((c[p>>2]|0)==13){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 3:{if((c[o>>2]|0)<(c[l>>2]|0))a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 21:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if(((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)?(a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]|0)!=0:0){if((c[k>>2]|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]|0)){if(!(a[c[k>>2]>>0]|0))r=a[(c[k>>2]|0)+1>>0]|0;else r=-1;if((r|0)==32){if(!(a[(c[k>>2]|0)+2>>0]|0))s=a[(c[k>>2]|0)+2+1>>0]|0;else s=-1;if((s|0)!=32){g=(c[k>>2]|0)+2|0;if(!(a[(c[k>>2]|0)+2>>0]|0))t=d[(c[j>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else t=D_(a[g>>0]|0,a[(c[k>>2]|0)+2+1>>0]|0)|0;if((t|0)!=(c[p>>2]|0))break b}}}a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0}break}case 10:case 9:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 17:case 11:{if((c[n>>2]|0)!=2)break a;break}default:{}}while(0);c[k>>2]=(c[k>>2]|0)+2}i=h;return c[o>>2]|0}function b$(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+20|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[e+16>>2]=b;c[g>>2]=d;c[h>>2]=0;c[g>>2]=(c[g>>2]|0)+4;a:do if((a[c[g>>2]>>0]|0)==0?(a[(c[g>>2]|0)+1>>0]|0)==120:0){c[g>>2]=(c[g>>2]|0)+2;while(1){if(!(a[c[g>>2]>>0]|0))l=(a[(c[g>>2]|0)+1>>0]|0)==59;else l=0;if(!(l^1))break a;if(!(a[c[g>>2]>>0]|0))m=a[(c[g>>2]|0)+1>>0]|0;else m=-1;c[j>>2]=m;switch(c[j>>2]|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{c[h>>2]=c[h>>2]<<4;c[h>>2]=c[h>>2]|(c[j>>2]|0)-48;break}case 70:case 69:case 68:case 67:case 66:case 65:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-65));break}case 102:case 101:case 100:case 99:case 98:case 97:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-97));break}default:{}}if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+2}c[f>>2]=-1;n=c[f>>2]|0;i=e;return n|0}else o=16;while(0);b:do if((o|0)==16){while(1){o=0;if(!(a[c[g>>2]>>0]|0))p=(a[(c[g>>2]|0)+1>>0]|0)==59;else p=0;if(!(p^1))break b;if(!(a[c[g>>2]>>0]|0))q=a[(c[g>>2]|0)+1>>0]|0;else q=-1;c[k>>2]=q;c[h>>2]=(c[h>>2]|0)*10;c[h>>2]=(c[h>>2]|0)+((c[k>>2]|0)-48);if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+2;o=16}c[f>>2]=-1;n=c[f>>2]|0;i=e;return n|0}while(0);c[f>>2]=YZ(c[h>>2]|0)|0;n=c[f>>2]|0;i=e;return n|0}function c$(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f+12|0;h=f+4|0;j=f;c[f+8>>2]=b;c[h>>2]=d;c[j>>2]=e;a:do switch(((c[j>>2]|0)-(c[h>>2]|0)|0)/2|0|0){case 2:{if((a[(c[h>>2]|0)+2>>0]|0)==0?(a[(c[h>>2]|0)+2+1>>0]|0)==116:0){if(!(a[c[h>>2]>>0]|0))k=a[(c[h>>2]|0)+1>>0]|0;else k=-1;switch(k|0){case 108:{c[g>>2]=60;l=c[g>>2]|0;i=f;return l|0}case 103:{c[g>>2]=62;l=c[g>>2]|0;i=f;return l|0}default:break a}}break}case 3:{if((((((a[c[h>>2]>>0]|0)==0?(a[(c[h>>2]|0)+1>>0]|0)==97:0)?(c[h>>2]=(c[h>>2]|0)+2,(a[c[h>>2]>>0]|0)==0):0)?(a[(c[h>>2]|0)+1>>0]|0)==109:0)?(c[h>>2]=(c[h>>2]|0)+2,(a[c[h>>2]>>0]|0)==0):0)?(a[(c[h>>2]|0)+1>>0]|0)==112:0){c[g>>2]=38;l=c[g>>2]|0;i=f;return l|0}break}case 4:{if(!(a[c[h>>2]>>0]|0))m=a[(c[h>>2]|0)+1>>0]|0;else m=-1;switch(m|0){case 113:{c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=117)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=116)break a;c[g>>2]=34;l=c[g>>2]|0;i=f;return l|0}case 97:{c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=112)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+2;if(a[c[h>>2]>>0]|0)break a;if((a[(c[h>>2]|0)+1>>0]|0)!=115)break a;c[g>>2]=39;l=c[g>>2]|0;i=f;return l|0}default:break a}break}default:{}}while(0);c[g>>2]=0;l=c[g>>2]|0;i=f;return l|0}function d$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;l=h+4|0;m=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;g=c[k>>2]|0;if(!(a[c[k>>2]>>0]|0))n=d[(c[j>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else n=D_(a[g>>0]|0,a[(c[k>>2]|0)+1>>0]|0)|0;switch(n|0){case 5:{c[k>>2]=(c[k>>2]|0)+2;break}case 6:{c[k>>2]=(c[k>>2]|0)+3;break}case 7:{c[k>>2]=(c[k>>2]|0)+4;break}case 10:{c[(c[m>>2]|0)+4>>2]=-1;g=c[m>>2]|0;c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+2;break}case 9:{g=c[m>>2]|0;c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+2;if((c[k>>2]|0)!=(c[l>>2]|0)){g=c[k>>2]|0;if(!(a[c[k>>2]>>0]|0))o=d[(c[j>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[k>>2]|0)+1>>0]|0)|0;if((o|0)==10)c[k>>2]=(c[k>>2]|0)+2}c[(c[m>>2]|0)+4>>2]=-1;break}default:c[k>>2]=(c[k>>2]|0)+2}g=(c[m>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}i=h;return}function e$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[l>>2]=(c[l>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+-2;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){o=18;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))p=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else p=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(p|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:break;case 21:{if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==9:0){o=9;break a}break}case 22:case 26:{if(!(a[c[l>>2]>>0]|0))q=a[(c[l>>2]|0)+1>>0]|0;else q=-1;if(q&-128)o=13;break}default:o=13}if((o|0)==13){o=0;if(!(a[c[l>>2]>>0]|0))r=a[(c[l>>2]|0)+1>>0]|0;else r=-1;switch(r|0){case 64:case 36:break;default:{o=16;break a}}}c[l>>2]=(c[l>>2]|0)+2}if((o|0)==9){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}else if((o|0)==16){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;s=c[j>>2]|0;i=h;return s|0}else if((o|0)==18){c[j>>2]=1;s=c[j>>2]|0;i=h;return s|0}return 0}function f$(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+32|0;k=j+20|0;l=j+16|0;m=j+12|0;n=j+8|0;o=j+4|0;p=j;q=j+30|0;r=j+29|0;s=j+28|0;c[j+24>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=c[c[k>>2]>>2];a:while(1){t=c[o>>2]|0;if((c[o>>2]|0)==(c[l>>2]|0)){u=18;break}a[r>>0]=a[t+1>>0]|0;a[s>>0]=a[c[o>>2]>>0]|0;switch(d[s>>0]|0|0){case 0:{if((d[r>>0]|0|0)<128){if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){u=6;break a}h=a[r>>0]|0;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h}else u=8;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{u=8;break}case 219:case 218:case 217:case 216:{if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<4){u=15;break a}c[p>>2]=(((d[s>>0]|0)&3)<<2|(d[r>>0]|0)>>6&3)+1;h=(c[p>>2]>>2|240)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=((d[r>>0]|0)>>2&15|(c[p>>2]&3)<<4|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;c[o>>2]=(c[o>>2]|0)+2;a[q>>0]=a[(c[o>>2]|0)+1>>0]|0;h=(((d[r>>0]|0)&3)<<4|((d[c[o>>2]>>0]|0)&3)<<2|(d[q>>0]|0)>>6|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=((d[q>>0]|0)&63|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;break}default:{if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<3){u=12;break a}h=((d[s>>0]|0)>>4|224)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=(((d[s>>0]|0)&15)<<2|(d[r>>0]|0)>>6|128)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;h=((d[r>>0]|0)&63|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h}}if((u|0)==8){u=0;if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<2){u=9;break}h=((d[r>>0]|0)>>6|(d[s>>0]|0)<<2|192)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;h=((d[r>>0]|0)&63|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h}c[o>>2]=(c[o>>2]|0)+2}if((u|0)==6){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==9){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==12){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==15){c[c[k>>2]>>2]=c[o>>2];i=j;return}else if((u|0)==18){c[c[k>>2]>>2]=t;i=j;return}}function g$(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;c[j+16>>2]=a;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;if(((c[l>>2]|0)-(c[c[k>>2]>>2]|0)|0)>((((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)/2|0)<<1|0)?((d[(c[l>>2]|0)+-2>>0]|0)&248|0)==216:0)c[l>>2]=(c[l>>2]|0)+-2;while(1){if((c[c[k>>2]>>2]|0)==(c[l>>2]|0)){o=7;break}if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){o=7;break}h=((d[c[c[k>>2]>>2]>>0]|0)<<8|(d[(c[c[k>>2]>>2]|0)+1>>0]|0))&65535;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+2;b[f>>1]=h;h=c[k>>2]|0;c[h>>2]=(c[h>>2]|0)+2}if((o|0)==7){i=j;return}}function h$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 19:{c[j>>2]=j$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=40;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 5:{p=29;break b;break}case 6:{p=32;break b;break}case 7:{p=35;break b;break}case 18:{p=38;break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){p=27;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=39;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==27){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==29)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==32)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==35)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==38){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=9;break}else if((p|0)==39){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==40){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function i$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 30:case 9:case 10:case 21:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=22;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=40;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 5:{p=29;break b;break}case 6:{p=32;break b;break}case 7:{p=35;break b;break}case 18:{p=38;break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){p=27;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=39;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==27){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==29)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==32)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==35)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==38){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=28;break}else if((p|0)==39){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==40){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function j$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==120:0){c[j>>2]=k$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))p=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else p=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;g=c[l>>2]|0;if((p|0)!=25){c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}c[l>>2]=g+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 18:{r=16;break b;break}case 25:break;default:{r=17;break b}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==16){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=10;o=c[j>>2]|0;i=h;return o|0}else if((r|0)==17){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}}while(0);c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}function k$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;g=c[l>>2]|0;if((o+-24|0)>>>0>=2){c[c[n>>2]>>2]=g;c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}c[l>>2]=g+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 18:{r=13;break b;break}case 24:case 25:break;default:{r=14;break b}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==13){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=10;p=c[j>>2]|0;i=h;return p|0}else if((r|0)==14){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}}while(0);c[j>>2]=-1;p=c[j>>2]|0;i=h;return p|0}function l$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-1;else{g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))p=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else p=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(p|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 16:{g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 27:{c[j>>2]=m$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 20:{c[j>>2]=n$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 15:{c[j>>2]=o$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 17:{c[j>>2]=p$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=0;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=98;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))s=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else s=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(s|0){case 5:{r=39;break b;break}case 6:{r=42;break b;break}case 7:{r=45;break b;break}case 10:case 9:case 21:{r=69;break b;break}case 11:{r=90;break b;break}case 17:{break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){r=37;break b}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{if(c[o>>2]|0){r=49;break b}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){r=51;break b}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))t=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else t=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(t|0){case 5:{r=59;break b;break}case 6:{r=62;break b;break}case 7:{r=65;break b;break}case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){r=57;break b}break}case 24:case 22:break;default:{r=68;break b}}c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{r=97;break b}}c[l>>2]=(c[l>>2]|0)+2}c:switch(r|0){case 37:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 39:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 42:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 45:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 49:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 51:{c[j>>2]=-1;break a;break}case 57:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 59:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 62:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 65:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 68:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 69:{c[l>>2]=(c[l>>2]|0)+2;d:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=89;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))u=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else u=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(u|0){case 11:{r=90;break c;break}case 17:{break c;break}case 29:{r=75;break d;break}case 24:case 22:{break d;break}case 5:{r=78;break d;break}case 6:{r=81;break d;break}case 7:{r=84;break d;break}case 10:case 9:case 21:break;default:{r=88;break d}}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==75){if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}else if((r|0)==78)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==81)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==84)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==88){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((r|0)==89){c[j>>2]=-1;break a}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=q$(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 97:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 98:{c[j>>2]=-1;break a;break}}if((r|0)==90){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=2;break}c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=4;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0}while(0);i=h;return c[j>>2]|0}function m$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==45:0){c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(o|0){case 8:case 1:case 0:{p=20;break b;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=12;break b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=15;break b}c[l>>2]=(c[l>>2]|0)+3;continue b;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=18;break b}c[l>>2]=(c[l>>2]|0)+4;continue b;break}case 27:{g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=22;break b}if(a[c[l>>2]>>0]|0)continue b;if((a[(c[l>>2]|0)+1>>0]|0)==45){p=25;break b}else continue b;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue b}}}if((p|0)==12){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==15){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==18){c[j>>2]=-2;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==20){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==22){c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}else if((p|0)==25){g=(c[l>>2]|0)+2|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=13;q=c[j>>2]|0;i=h;return q|0}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;q=c[j>>2]|0;i=h;return q|0}while(0);c[j>>2]=-1;q=c[j>>2]|0;i=h;return q|0}function n$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(((c[k>>2]|0)-(c[j>>2]|0)|0)<12){c[h>>2]=-1;n=c[h>>2]|0;i=g;return n|0}c[m>>2]=0;while(1){o=c[j>>2]|0;if((c[m>>2]|0)>=6){p=9;break}if(a[o>>0]|0){p=7;break}if((a[(c[j>>2]|0)+1>>0]|0)!=(a[182103+(c[m>>2]|0)>>0]|0)){p=7;break}c[m>>2]=(c[m>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+2}if((p|0)==7){c[c[l>>2]>>2]=c[j>>2];c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((p|0)==9){c[c[l>>2]>>2]=o;c[h>>2]=8;n=c[h>>2]|0;i=g;return n|0}return 0}function o$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[p>>2]=c[l>>2];a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-1;else{g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=70;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))s=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else s=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(s|0){case 5:{r=28;break b;break}case 6:{r=31;break b;break}case 7:{r=34;break b;break}case 10:case 9:case 21:{r=37;break b;break}case 15:{r=62;break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){r=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:break b}c[l>>2]=(c[l>>2]|0)+2}if((r|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==37){g=(r$(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;f=c[l>>2]|0;if(!g){c[c[n>>2]>>2]=f;c[j>>2]=0;break}c[l>>2]=f+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){r=61;break}f=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))t=d[(c[k>>2]|0)+76+(d[f+1>>0]|0)>>0]|0;else t=D_(a[f>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(t|0){case 8:case 1:case 0:{r=54;break c;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){r=46;break c}c[l>>2]=(c[l>>2]|0)+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){r=49;break c}c[l>>2]=(c[l>>2]|0)+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){r=52;break c}c[l>>2]=(c[l>>2]|0)+4;continue c;break}case 15:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){r=56;break c}if(a[c[l>>2]>>0]|0)continue c;if((a[(c[l>>2]|0)+1>>0]|0)==62){r=59;break c}else continue c;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue c}}}if((r|0)==46){c[j>>2]=-2;break}else if((r|0)==49){c[j>>2]=-2;break}else if((r|0)==52){c[j>>2]=-2;break}else if((r|0)==54){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((r|0)==56){c[j>>2]=-1;break}else if((r|0)==59){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=c[o>>2];break}else if((r|0)==61){c[j>>2]=-1;break}}else if((r|0)==62){f=(r$(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;g=c[l>>2]|0;if(!f){c[c[n>>2]>>2]=g;c[j>>2]=0;break}c[l>>2]=g+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=c[o>>2];break}}else if((r|0)==70){c[j>>2]=-1;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0}while(0);i=h;return c[j>>2]|0}function p$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=50;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 5:{p=28;break b;break}case 6:{p=31;break b;break}case 7:{p=34;break b;break}case 10:case 9:case 21:{p=37;break b;break}case 11:{p=48;break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){p=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{c[l>>2]=(c[l>>2]|0)+2;continue b;break}default:{p=49;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==37){c[l>>2]=(c[l>>2]|0)+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=46;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else r=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(r|0){case 11:{p=43;break c;break}case 10:case 9:case 21:break;default:{p=44;break c}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==43){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=5;break}else if((p|0)==44){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==46){c[j>>2]=-1;break}}else if((p|0)==48){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=5;break}else if((p|0)==49){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==50){c[j>>2]=-1;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function q$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;h=i;i=i+48|0;j=h+36|0;k=h+32|0;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=115;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))u=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else u=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;b:do switch(u|0){case 5:{t=10;break a;break}case 6:{t=13;break a;break}case 7:{t=16;break a;break}case 29:{if(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))t=9;else{t=8;break a}break}case 27:case 26:case 25:case 24:case 22:{t=9;break}case 23:{if(c[o>>2]|0){t=20;break a}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=22;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))v=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else v=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(v|0){case 5:{t=30;break a;break}case 6:{t=33;break a;break}case 7:{t=36;break a;break}case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){t=28;break a}break}case 24:case 22:break;default:{t=39;break a}}c[l>>2]=(c[l>>2]|0)+2;continue a;break}case 10:case 9:case 21:{while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=41;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))w=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else w=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;c[p>>2]=w;if((c[p>>2]|0)==14)break b;switch(c[p>>2]|0){case 9:case 10:case 21:break;default:{t=47;break a}}}break}case 14:break;default:{t=114;break a}}while(0);if((t|0)==9){t=0;c[l>>2]=(c[l>>2]|0)+2;continue}c[o>>2]=0;while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=50;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))x=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else x=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;c[q>>2]=x;if((c[q>>2]|0)==12|(c[q>>2]|0)==13)break;switch(c[q>>2]|0){case 9:case 10:case 21:break;default:{t=56;break a}}}c[l>>2]=(c[l>>2]|0)+2;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=59;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))y=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else y=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;c[r>>2]=y;if((c[r>>2]|0)==(c[q>>2]|0))break;switch(c[r>>2]|0){case 8:case 1:case 0:{t=74;break a;break}case 2:{t=79;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=66;break a}c[l>>2]=(c[l>>2]|0)+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=69;break a}c[l>>2]=(c[l>>2]|0)+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=72;break a}c[l>>2]=(c[l>>2]|0)+4;continue c;break}case 3:{c[s>>2]=h$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,l)|0;if((c[s>>2]|0)<=0){t=76;break a}else continue c;break}default:{c[l>>2]=(c[l>>2]|0)+2;continue c}}}c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=82;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))z=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else z=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(z|0){case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;default:{t=87;break a}}d:while(1){c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){t=89;break a}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))A=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else A=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(A|0){case 5:{t=97;break a;break}case 6:{t=100;break a;break}case 7:{t=103;break a;break}case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;case 29:{t=94;break d;break}case 24:case 22:{break d;break}default:{t=113;break a}}}if((t|0)==94?(t=0,(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31)|0)==0):0){t=95;break}c[l>>2]=(c[l>>2]|0)+2}switch(t|0){case 8:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 10:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 13:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 16:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 20:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 22:{c[j>>2]=-1;break}case 28:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 30:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 33:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 36:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 39:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 41:{c[j>>2]=-1;break}case 47:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 50:{c[j>>2]=-1;break}case 56:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 59:{c[j>>2]=-1;break}case 66:{c[j>>2]=-2;break}case 69:{c[j>>2]=-2;break}case 72:{c[j>>2]=-2;break}case 74:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 76:{if(!(c[s>>2]|0))c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[s>>2];break}case 79:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 82:{c[j>>2]=-1;break}case 87:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 89:{c[j>>2]=-1;break}case 95:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 97:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 100:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 103:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}break}case 106:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=1;break}case 107:{c[l>>2]=(c[l>>2]|0)+2;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}if((a[c[l>>2]>>0]|0)==0?(a[(c[l>>2]|0)+1>>0]|0)==62:0){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=3;break}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 113:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 114:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 115:{c[j>>2]=-1;break}}i=h;return c[j>>2]|0}function r$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;c[c[l>>2]>>2]=11;if(((c[k>>2]|0)-(c[j>>2]|0)|0)!=6){c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}if(!(a[c[j>>2]>>0]|0))o=a[(c[j>>2]|0)+1>>0]|0;else o=-1;switch(o|0){case 120:break;case 88:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}c[j>>2]=(c[j>>2]|0)+2;if(!(a[c[j>>2]>>0]|0))p=a[(c[j>>2]|0)+1>>0]|0;else p=-1;switch(p|0){case 109:break;case 77:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}c[j>>2]=(c[j>>2]|0)+2;if(!(a[c[j>>2]>>0]|0))q=a[(c[j>>2]|0)+1>>0]|0;else q=-1;switch(q|0){case 108:break;case 76:{c[m>>2]=1;break}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}if(c[m>>2]|0){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else{c[c[l>>2]>>2]=12;c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}return 0}function s$(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+12|0;o=j+8|0;p=j+4|0;q=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;a:while(1){if((c[n>>2]|0)==(c[o>>2]|0)){r=27;break}h=c[n>>2]|0;if(!(a[c[n>>2]>>0]|0))s=d[(c[m>>2]|0)+76+(d[h+1>>0]|0)>>0]|0;else s=D_(a[h>>0]|0,a[(c[n>>2]|0)+1>>0]|0)|0;c[q>>2]=s;switch(c[q>>2]|0){case 8:case 1:case 0:{r=16;break a;break}case 5:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<2){r=8;break a}c[n>>2]=(c[n>>2]|0)+2;continue a;break}case 6:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<3){r=11;break a}c[n>>2]=(c[n>>2]|0)+3;continue a;break}case 7:{if(((c[o>>2]|0)-(c[n>>2]|0)|0)<4){r=14;break a}c[n>>2]=(c[n>>2]|0)+4;continue a;break}case 13:case 12:{c[n>>2]=(c[n>>2]|0)+2;if((c[q>>2]|0)!=(c[l>>2]|0))continue a;else{r=18;break a}break}default:{c[n>>2]=(c[n>>2]|0)+2;continue a}}}if((r|0)==8){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==11){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==14){c[k>>2]=-2;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==16){c[c[p>>2]>>2]=c[n>>2];c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}else if((r|0)==18){if((c[n>>2]|0)==(c[o>>2]|0)){c[k>>2]=-27;t=c[k>>2]|0;i=j;return t|0}c[c[p>>2]>>2]=c[n>>2];p=c[n>>2]|0;if(!(a[c[n>>2]>>0]|0))u=d[(c[m>>2]|0)+76+(d[p+1>>0]|0)>>0]|0;else u=D_(a[p>>0]|0,a[(c[n>>2]|0)+1>>0]|0)|0;switch(u|0){case 20:case 30:case 11:case 10:case 9:case 21:{c[k>>2]=27;t=c[k>>2]|0;i=j;return t|0}default:{c[k>>2]=0;t=c[k>>2]|0;i=j;return t|0}}}else if((r|0)==27){c[k>>2]=-1;t=c[k>>2]|0;i=j;return t|0}return 0}function t$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))p=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else p=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(p|0){case 27:{c[j>>2]=m$(c[k>>2]|0,(c[l>>2]|0)+2|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}case 20:{c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=33;o=c[j>>2]|0;i=h;return o|0}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+2;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=26;break}p=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))r=d[(c[k>>2]|0)+76+(d[p+1>>0]|0)>>0]|0;else r=D_(a[p>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(r|0){case 30:{q=16;break a;break}case 10:case 9:case 21:{break a;break}case 24:case 22:break;default:{q=25;break a}}c[l>>2]=(c[l>>2]|0)+2}b:do if((q|0)==16){if(((c[l>>2]|0)+2|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}r=(c[l>>2]|0)+2|0;if(!(a[(c[l>>2]|0)+2>>0]|0))s=d[(c[k>>2]|0)+76+(d[r+1>>0]|0)>>0]|0;else s=D_(a[r>>0]|0,a[(c[l>>2]|0)+2+1>>0]|0)|0;switch(s|0){case 30:case 10:case 9:case 21:break;default:break b}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==25){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==26){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}while(0);c[c[n>>2]>>2]=c[l>>2];c[j>>2]=16;o=c[j>>2]|0;i=h;return o|0}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}}return 0}function u$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))o=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else o=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(o|0){case 29:{if(!(c[93280+((d[181578+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 24:case 22:break;case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}c[l>>2]=(c[l>>2]|0)+2;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=39;break}g=c[l>>2]|0;if(!(a[c[l>>2]>>0]|0))q=d[(c[k>>2]|0)+76+(d[g+1>>0]|0)>>0]|0;else q=D_(a[g>>0]|0,a[(c[l>>2]|0)+1>>0]|0)|0;switch(q|0){case 5:{p=28;break b;break}case 6:{p=31;break b;break}case 7:{p=34;break b;break}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{p=37;break b;break}case 29:{if(!(c[93280+((d[181834+(d[c[l>>2]>>0]|0)>>0]<<3)+(d[(c[l>>2]|0)+1>>0]>>5)<<2)>>2]&1<<(d[(c[l>>2]|0)+1>>0]&31))){p=26;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=38;break b}}c[l>>2]=(c[l>>2]|0)+2}if((p|0)==26){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==28)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==31)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==34)if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break}else{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==37){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=20;break}else if((p|0)==38){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((p|0)==39){c[j>>2]=-20;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function v$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-4;else{b:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 12:{c[j>>2]=d0(12,c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 13:{c[j>>2]=d0(13,c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 2:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 16:{c[j>>2]=e0(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 15:{c[j>>2]=$$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 7:case 6:case 5:case 29:case 24:case 22:{c[c[n>>2]>>2]=(c[l>>2]|0)+-1;c[j>>2]=29;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 9:{if(((c[l>>2]|0)+1|0)==(c[m>>2]|0)){c[c[n>>2]>>2]=c[m>>2];c[j>>2]=-15;break a}else p=15;break}case 10:case 21:{p=15;break}case 30:{c[j>>2]=V$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 35:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=38;break a;break}case 20:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=25;break a;break}case 4:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-26;break a}if((a[c[l>>2]>>0]|0)==93){if(((c[l>>2]|0)+1|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}if((a[(c[l>>2]|0)+1>>0]|0)==62){c[c[n>>2]>>2]=(c[l>>2]|0)+2;c[j>>2]=34;break a}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=26;break a;break}case 31:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=23;break a;break}case 32:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-24;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 33:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=36;break a;break}case 15:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=35;break a;break}case 34:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=37;break a;break}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=24;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 36:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=21;break a;break}case 11:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=17;break a;break}case 19:{c[j>>2]=f0(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}if(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=18;break b}g=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+2;c[o>>2]=19;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}if(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){c[l>>2]=(c[l>>2]|0)+3;c[o>>2]=18;break b}f=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(f){c[l>>2]=g+3;c[o>>2]=19;break b}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}if(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=18;break b}g=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+4;c[o>>2]=19;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}case 24:case 22:{c[o>>2]=18;c[l>>2]=(c[l>>2]|0)+1;break}case 23:case 27:case 26:case 25:{c[o>>2]=19;c[l>>2]=(c[l>>2]|0)+1;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}while(0);if((p|0)==15){c:while(1){p=0;c[l>>2]=(c[l>>2]|0)+1;q=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){p=19;break}switch(d[(c[k>>2]|0)+76+(d[q>>0]|0)>>0]|0){case 10:case 21:{p=15;continue c;break}case 9:break;default:{p=18;break c}}if(((c[l>>2]|0)+1|0)!=(c[m>>2]|0))p=15;else{p=18;break}}if((p|0)==18){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=15;break}else if((p|0)==19){c[c[n>>2]>>2]=q;c[j>>2]=15;break}}d:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=120;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{p=69;break d;break}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{p=86;break d;break}case 34:{p=110;break d;break}case 33:{p=113;break d;break}case 15:{p=116;break d;break}case 27:case 26:case 25:case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue d;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=72;break d}f=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;r=c[l>>2]|0;if(!f){p=74;break d}c[l>>2]=r+2;continue d;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=77;break d}f=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;s=c[l>>2]|0;if(!f){p=79;break d}c[l>>2]=s+3;continue d;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=82;break d}f=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;t=c[l>>2]|0;if(!f){p=84;break d}c[l>>2]=t+4;continue d;break}case 23:{c[l>>2]=(c[l>>2]|0)+1;switch(c[o>>2]|0){case 18:break;case 41:{c[o>>2]=19;continue d;break}default:continue d}if((c[l>>2]|0)==(c[m>>2]|0)){p=89;break d}c[o>>2]=41;switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{p=91;break d;break}case 27:case 26:case 25:case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue d;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=94;break d}f=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;u=c[l>>2]|0;if(!f){p=96;break d}c[l>>2]=u+2;continue d;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=99;break d}f=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;v=c[l>>2]|0;if(!f){p=101;break d}c[l>>2]=v+3;continue d;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=104;break d}f=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;w=c[l>>2]|0;if(!f){p=106;break d}c[l>>2]=w+4;continue d;break}default:{c[o>>2]=19;continue d}}break}default:{p=119;break d}}}switch(p|0){case 69:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 72:{c[j>>2]=-2;break a;break}case 74:{c[c[n>>2]>>2]=r;c[j>>2]=0;break a;break}case 77:{c[j>>2]=-2;break a;break}case 79:{c[c[n>>2]>>2]=s;c[j>>2]=0;break a;break}case 82:{c[j>>2]=-2;break a;break}case 84:{c[c[n>>2]>>2]=t;c[j>>2]=0;break a;break}case 86:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[o>>2];break a;break}case 89:{c[j>>2]=-1;break a;break}case 91:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 94:{c[j>>2]=-2;break a;break}case 96:{c[c[n>>2]>>2]=u;c[j>>2]=0;break a;break}case 99:{c[j>>2]=-2;break a;break}case 101:{c[c[n>>2]>>2]=v;c[j>>2]=0;break a;break}case 104:{c[j>>2]=-2;break a;break}case 106:{c[c[n>>2]>>2]=w;c[j>>2]=0;break a;break}case 110:{f=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=f;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=f+1;c[j>>2]=32;break a}break}case 113:{f=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=f;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=f+1;c[j>>2]=31;break a}break}case 116:{f=c[l>>2]|0;if((c[o>>2]|0)==19){c[c[n>>2]>>2]=f;c[j>>2]=0;break a}else{c[c[n>>2]>>2]=f+1;c[j>>2]=30;break a}break}case 119:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 120:{c[j>>2]=0-(c[o>>2]|0);break a;break}}}while(0);i=h;return c[j>>2]|0}function w$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;o=c[j>>2]|0;i=h;return o|0}a:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 2:{c[j>>2]=Y$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}case 3:{c[j>>2]=U$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}case 9:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-3;o=c[j>>2]|0;i=h;return o|0}if((d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0)==10)c[l>>2]=(c[l>>2]|0)+1;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;o=c[j>>2]|0;i=h;return o|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=7;o=c[j>>2]|0;i=h;return o|0}case 4:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;o=c[j>>2]|0;i=h;return o|0}if((a[c[l>>2]>>0]|0)==93){c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-5;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if((a[c[l>>2]>>0]|0)!=62){c[l>>2]=g+-1;break a}c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(!g){c[l>>2]=f+2;break a}c[c[n>>2]>>2]=f;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}f=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(!f){c[l>>2]=g+3;break a}c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(!g){c[l>>2]=f+4;break a}c[c[n>>2]>>2]=f;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}default:c[l>>2]=(c[l>>2]|0)+1}while(0);b:while(1){p=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){q=60;break}switch(d[(c[k>>2]|0)+76+(d[p>>0]|0)>>0]|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{q=58;break b;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=41;break b}if(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=41;break b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=45;break b}if(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=45;break b}c[l>>2]=(c[l>>2]|0)+3;continue b;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=49;break b}if(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=49;break b}c[l>>2]=(c[l>>2]|0)+4;continue b;break}case 4:{if(((c[l>>2]|0)+1|0)==(c[m>>2]|0)){q=58;break b}f=c[l>>2]|0;if((a[(c[l>>2]|0)+1>>0]|0)!=93){c[l>>2]=f+1;continue b}if((f+2|0)==(c[m>>2]|0)){q=58;break b}r=c[l>>2]|0;if((a[(c[l>>2]|0)+2>>0]|0)==62){q=57;break b}c[l>>2]=r+1;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue b}}}if((q|0)==41){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==45){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==49){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==57){c[c[n>>2]>>2]=r+2;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==58){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==60){c[c[n>>2]>>2]=p;c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}return 0}function x$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-4;o=c[j>>2]|0;i=h;return o|0}a:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 4:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}if((a[c[l>>2]>>0]|0)==93){c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if((a[c[l>>2]>>0]|0)!=62){c[l>>2]=g+-1;break a}c[c[n>>2]>>2]=g+1;c[j>>2]=40;o=c[j>>2]|0;i=h;return o|0}break}case 9:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}if((d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0)==10)c[l>>2]=(c[l>>2]|0)+1;c[c[n>>2]>>2]=c[l>>2];c[j>>2]=7;o=c[j>>2]|0;i=h;return o|0}case 10:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=7;o=c[j>>2]|0;i=h;return o|0}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(!g){c[l>>2]=f+2;break a}c[c[n>>2]>>2]=f;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}f=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(!f){c[l>>2]=g+3;break a}c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;o=c[j>>2]|0;i=h;return o|0}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(!g){c[l>>2]=f+4;break a}c[c[n>>2]>>2]=f;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}case 8:case 1:case 0:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}default:c[l>>2]=(c[l>>2]|0)+1}while(0);b:while(1){p=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){q=51;break}switch(d[(c[k>>2]|0)+76+(d[p>>0]|0)>>0]|0){case 4:case 10:case 9:case 8:case 1:case 0:{q=49;break b;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=39;break b}if(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=39;break b}c[l>>2]=(c[l>>2]|0)+2;continue b;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=43;break b}if(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=43;break b}c[l>>2]=(c[l>>2]|0)+3;continue b;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=47;break b}if(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0){q=47;break b}c[l>>2]=(c[l>>2]|0)+4;continue b;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue b}}}if((q|0)==39){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==43){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==47){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==49){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}else if((q|0)==51){c[c[n>>2]>>2]=p;c[j>>2]=6;o=c[j>>2]|0;i=h;return o|0}return 0}function y$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=37;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 8:case 1:case 0:{p=19;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=5;break a}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;q=c[l>>2]|0;if(g){p=7;break a}c[l>>2]=q+2;continue a;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=10;break a}g=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;r=c[l>>2]|0;if(g){p=12;break a}c[l>>2]=r+3;continue a;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=15;break a}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;s=c[l>>2]|0;if(g){p=17;break a}c[l>>2]=s+4;continue a;break}case 2:{g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=21;break a}if((a[c[l>>2]>>0]|0)!=33)continue a;g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=24;break a}if((a[c[l>>2]>>0]|0)!=91)continue a;c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1;continue a;break}case 4:{g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=28;break a}if((a[c[l>>2]>>0]|0)!=93)continue a;g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){p=31;break a}if((a[c[l>>2]>>0]|0)!=62)continue a;c[l>>2]=(c[l>>2]|0)+1;if(!(c[o>>2]|0)){p=34;break a}c[o>>2]=(c[o>>2]|0)+-1;continue a;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue a}}}switch(p|0){case 5:{c[j>>2]=-2;t=c[j>>2]|0;i=h;return t|0}case 7:{c[c[n>>2]>>2]=q;c[j>>2]=0;t=c[j>>2]|0;i=h;return t|0}case 10:{c[j>>2]=-2;t=c[j>>2]|0;i=h;return t|0}case 12:{c[c[n>>2]>>2]=r;c[j>>2]=0;t=c[j>>2]|0;i=h;return t|0}case 15:{c[j>>2]=-2;t=c[j>>2]|0;i=h;return t|0}case 17:{c[c[n>>2]>>2]=s;c[j>>2]=0;t=c[j>>2]|0;i=h;return t|0}case 19:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;t=c[j>>2]|0;i=h;return t|0}case 21:{c[j>>2]=-1;t=c[j>>2]|0;i=h;return t|0}case 24:{c[j>>2]=-1;t=c[j>>2]|0;i=h;return t|0}case 28:{c[j>>2]=-1;t=c[j>>2]|0;i=h;return t|0}case 31:{c[j>>2]=-1;t=c[j>>2]|0;i=h;return t|0}case 34:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=42;t=c[j>>2]|0;i=h;return t|0}case 37:{c[j>>2]=-1;t=c[j>>2]|0;i=h;return t|0}}return 0}function z$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;do if((c[k>>2]|0)!=(c[l>>2]|0)){c[n>>2]=c[k>>2];a:while(1){o=c[k>>2]|0;if((c[k>>2]|0)==(c[l>>2]|0)){p=27;break}switch(d[(c[j>>2]|0)+76+(d[o>>0]|0)>>0]|0|0){case 3:{p=9;break a;break}case 2:{p=12;break a;break}case 10:{p=13;break a;break}case 9:{p=16;break a;break}case 21:{p=23;break a;break}case 5:{c[k>>2]=(c[k>>2]|0)+2;continue a;break}case 6:{c[k>>2]=(c[k>>2]|0)+3;continue a;break}case 7:{c[k>>2]=(c[k>>2]|0)+4;continue a;break}default:{c[k>>2]=(c[k>>2]|0)+1;continue a}}}if((p|0)==9)if((c[k>>2]|0)==(c[n>>2]|0)){c[h>>2]=U$(c[j>>2]|0,(c[k>>2]|0)+1|0,c[l>>2]|0,c[m>>2]|0)|0;break}else{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=6;break}else if((p|0)==12){c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break}else if((p|0)==13){f=c[k>>2]|0;if((c[k>>2]|0)==(c[n>>2]|0)){c[c[m>>2]>>2]=f+1;c[h>>2]=7;break}else{c[c[m>>2]>>2]=f;c[h>>2]=6;break}}else if((p|0)==16){f=c[k>>2]|0;if((c[k>>2]|0)!=(c[n>>2]|0)){c[c[m>>2]>>2]=f;c[h>>2]=6;break}c[k>>2]=f+1;if((c[k>>2]|0)==(c[l>>2]|0)){c[h>>2]=-3;break}if((d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0)==10)c[k>>2]=(c[k>>2]|0)+1;c[c[m>>2]>>2]=c[k>>2];c[h>>2]=7;break}else if((p|0)==23){f=c[k>>2]|0;if((c[k>>2]|0)==(c[n>>2]|0)){c[c[m>>2]>>2]=f+1;c[h>>2]=39;break}else{c[c[m>>2]>>2]=f;c[h>>2]=6;break}}else if((p|0)==27){c[c[m>>2]>>2]=o;c[h>>2]=6;break}}else c[h>>2]=-4;while(0);i=g;return c[h>>2]|0} +function Ul(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;e=i;i=i+176|0;f=e+104|0;g=e+88|0;j=e+80|0;k=e+64|0;l=e+48|0;m=e+172|0;n=e+168|0;o=e+164|0;p=e+160|0;q=e+156|0;r=e+152|0;s=e+148|0;t=e+144|0;u=e+140|0;v=e+136|0;w=e+40|0;x=e+32|0;y=e+132|0;z=e+128|0;A=e+16|0;B=e;C=e+124|0;D=e+120|0;E=e+116|0;F=e+112|0;c[n>>2]=b;c[o>>2]=d;c[u>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[D>>2]=1;c[p>>2]=zA(c[o>>2]|0,c[n>>2]|0)|0;if(!(a[c[p>>2]>>0]|0)){c[m>>2]=0;G=c[m>>2]|0;i=e;return G|0}bH(c[o>>2]|0,E,F);a:while(1){n=c[p>>2]|0;c[l>>2]=w;c[l+4>>2]=x;c[l+8>>2]=t;c[q>>2]=l3(n,126501,l)|0;if((c[q>>2]|0)==2){c[y>>2]=1;c[p>>2]=(c[p>>2]|0)+(c[t>>2]|0);h[A>>3]=+h[w>>3];h[A+8>>3]=+h[x>>3]}n=c[p>>2]|0;c[k>>2]=w;c[k+4>>2]=x;c[k+8>>2]=t;c[q>>2]=l3(n,126513,k)|0;if((c[q>>2]|0)==2){c[z>>2]=1;c[p>>2]=(c[p>>2]|0)+(c[t>>2]|0);h[B>>3]=+h[w>>3];h[B+8>>3]=+h[x>>3]}c[s>>2]=Vl(c[p>>2]|0)|0;c[r>>2]=c[s>>2];if((c[r>>2]|0)<4){H=10;break}if(((c[r>>2]|0)%3|0|0)!=1){H=10;break}c[u>>2]=cK(c[r>>2]<<4)|0;c[v>>2]=c[u>>2];while(1){if(!(c[r>>2]|0))break;n=c[p>>2]|0;c[g>>2]=w;c[g+4>>2]=x;c[g+8>>2]=t;c[q>>2]=l3(n,126584,g)|0;if((c[q>>2]|0)<2){H=16;break a}c[p>>2]=(c[p>>2]|0)+(c[t>>2]|0);h[c[v>>2]>>3]=+h[w>>3];h[(c[v>>2]|0)+8>>3]=+h[x>>3];c[v>>2]=(c[v>>2]|0)+16;c[r>>2]=(c[r>>2]|0)+-1}while(1){n=(r1(a[c[p>>2]>>0]|0)|0)!=0;I=c[p>>2]|0;if(!n)break;c[p>>2]=I+1}if(!(a[I>>0]|0))c[D>>2]=0;else c[p>>2]=(c[p>>2]|0)+1;c[C>>2]=iN(c[o>>2]|0,c[s>>2]|0)|0;if(c[y>>2]|0){c[(c[C>>2]|0)+8>>2]=c[E>>2];n=(c[C>>2]|0)+16|0;c[n>>2]=c[A>>2];c[n+4>>2]=c[A+4>>2];c[n+8>>2]=c[A+8>>2];c[n+12>>2]=c[A+12>>2]}if(c[z>>2]|0){c[(c[C>>2]|0)+12>>2]=c[F>>2];n=(c[C>>2]|0)+32|0;c[n>>2]=c[B>>2];c[n+4>>2]=c[B+4>>2];c[n+8>>2]=c[B+8>>2];c[n+12>>2]=c[B+12>>2]}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[s>>2]|0))break;n=(c[c[C>>2]>>2]|0)+(c[q>>2]<<4)|0;d=(c[u>>2]|0)+(c[q>>2]<<4)|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[q>>2]=(c[q>>2]|0)+1}O4(c[u>>2]|0);if(!(c[D>>2]|0)){H=33;break}}if((H|0)==10){SO(c[o>>2]|0);if(!(a[126526]|0)){a[126526]=1;D=c[o>>2]|0;q=wB(c[((c[c[o>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0)|0;D=c[o>>2]|0;C=wB(c[((c[c[o>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0)|0;c[j>>2]=q;c[j+4>>2]=C;$z(0,126527,j)|0}c[m>>2]=0;G=c[m>>2]|0;i=e;return G|0}else if((H|0)==16){if(!(a[126526]|0)){a[126526]=1;j=c[o>>2]|0;C=wB(c[((c[c[o>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)|0;j=c[o>>2]|0;q=wB(c[((c[c[o>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)|0;c[f>>2]=C;c[f+4>>2]=q;$z(0,126594,f)|0}O4(c[u>>2]|0);SO(c[o>>2]|0);c[m>>2]=0;G=c[m>>2]|0;i=e;return G|0}else if((H|0)==33){if(c[(c[(c[o>>2]|0)+8>>2]|0)+96>>2]|0)yl(c[o>>2]|0,c[(c[(c[o>>2]|0)+8>>2]|0)+96>>2]|0,140260);if(c[(c[(c[o>>2]|0)+8>>2]|0)+108>>2]|0)yl(c[o>>2]|0,c[(c[(c[o>>2]|0)+8>>2]|0)+108>>2]|0,140256);if(c[(c[(c[o>>2]|0)+8>>2]|0)+100>>2]|0)yl(c[o>>2]|0,c[(c[(c[o>>2]|0)+8>>2]|0)+100>>2]|0,140263);if(c[(c[(c[o>>2]|0)+8>>2]|0)+104>>2]|0)yl(c[o>>2]|0,c[(c[(c[o>>2]|0)+8>>2]|0)+104>>2]|0,140271);c[m>>2]=1;G=c[m>>2]|0;i=e;return G|0}return 0}function Vl(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+4|0;g=e;h=e+8|0;c[f>>2]=b;c[g>>2]=0;while(1){b=(r1(d[c[f>>2]>>0]|0)|0)!=0;j=c[f>>2]|0;if(b){c[f>>2]=j+1;continue}b=a[j>>0]|0;a[h>>0]=b;a:do if(b<<24>>24){c[g>>2]=(c[g>>2]|0)+1;while(1){j=a[c[f>>2]>>0]|0;a[h>>0]=j;if(!(j&255))break a;if(r1(d[h>>0]|0)|0)break a;if((d[h>>0]|0|0)==59)break a;c[f>>2]=(c[f>>2]|0)+1}}while(0);if(!(r1(d[h>>0]|0)|0))break}i=e;return c[g>>2]|0}function Wl(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function Xl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+64|0;g=f+48|0;h=f+44|0;j=f+40|0;k=f+36|0;l=f;m=f+32|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((P3(wB(c[g>>2]|0)|0,145613,7)|0)==0?(Yl(c[g>>2]|0,c[k>>2]|0,l)|0)!=0:0){MC(c[g>>2]|0,175049,280,1)|0;e=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];c[e+16>>2]=c[l+16>>2];c[e+20>>2]=c[l+20>>2];c[e+24>>2]=c[l+24>>2];c[e+28>>2]=c[l+28>>2];Zl(c[h>>2]|0,c[g>>2]|0);zl(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0);i=f;return}c[m>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;Xl(c[m>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0);c[m>>2]=HD(c[m>>2]|0)|0}i=f;return}function Yl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+80|0;f=e+40|0;g=e+72|0;j=e+68|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+8|0;o=e;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=zA(c[j>>2]|0,c[k>>2]|0)|0;k=c[m>>2]|0;c[f>>2]=n;c[f+4>>2]=n+8;c[f+8>>2]=n+16;c[f+12>>2]=n+16+8;if((l3(k,126642,f)|0)!=4){c[g>>2]=0;p=c[g>>2]|0;i=e;return p|0}if(+h[n+8>>3]>+h[n+16+8>>3]){h[o>>3]=+h[n+8>>3];h[n+8>>3]=+h[n+16+8>>3];h[n+16+8>>3]=+h[o>>3]}o=c[l>>2]|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[o+16>>2]=c[n+16>>2];c[o+20>>2]=c[n+20>>2];c[o+24>>2]=c[n+24>>2];c[o+28>>2]=c[n+28>>2];c[g>>2]=1;p=c[g>>2]|0;i=e;return p|0}function Zl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[e>>2]|0)+8>>2]|0)+180|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[g>>2]=a;if(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)h=dK(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0,(c[g>>2]|0)+1|0,4,c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)|0;else h=bK((c[g>>2]|0)+1<<2)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]=h;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2]=c[f>>2];LJ(c[f>>2]|0);i=d;return}function _l(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[j>>2]=e;c[k>>2]=f;c[l>>2]=b[(c[(c[j>>2]|0)+8>>2]|0)+168>>1];if((c[l>>2]|0)!=1?(d[139e3]|0)==0:0){c[o>>2]=cK(c[l>>2]<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0))break;c[(c[o>>2]|0)+(c[n>>2]<<2)>>2]=c[j>>2];c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2];c[n>>2]=(c[n>>2]|0)+1}oN(c[h>>2]|0,c[o>>2]|0,0,c[l>>2]|0,+(c[k>>2]|0),+(c[k>>2]|0),50912);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0))break;c[j>>2]=c[(c[o>>2]|0)+(c[n>>2]<<2)>>2];if(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0){f=c[j>>2]|0;e=qC(c[((c[c[j>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)|0;AO(e,c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)}pN(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+1}O4(c[o>>2]|0);i=g;return}c[m>>2]=c[j>>2];oN(c[h>>2]|0,m,0,1,+(c[k>>2]|0),+(c[k>>2]|0),50912);if(c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0){k=c[j>>2]|0;m=qC(c[((c[c[j>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)|0;AO(m,c[(c[(c[j>>2]|0)+8>>2]|0)+96>>2]|0)}pN(c[j>>2]|0);i=g;return}function $l(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0.0,ba=0.0,ca=0.0;f=i;i=i+560|0;j=f+496|0;k=f+548|0;l=f+544|0;m=f+552|0;n=f+540|0;o=f+536|0;p=f+488|0;q=f+532|0;r=f+528|0;s=f+472|0;t=f+440|0;u=f+424|0;v=f+524|0;w=f+520|0;x=f+516|0;y=f+512|0;z=f+360|0;A=f+344|0;B=f+328|0;C=f+296|0;D=f+288|0;E=f+280|0;F=f+272|0;G=f+264|0;H=f+256|0;I=f+240|0;J=f+224|0;K=f+208|0;L=f+192|0;M=f+176|0;N=f+160|0;P=f+144|0;S=f+128|0;T=f+112|0;U=f+96|0;V=f+80|0;W=f+64|0;X=f+48|0;Y=f+32|0;Z=f+16|0;_=f;c[k>>2]=b;c[l>>2]=d;a[m>>0]=e;h[p>>3]=0.0;switch(dM(c[k>>2]|0)|0){case 3:case 1:{c[n>>2]=bK(8)|0;c[o>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];do if(a[m>>0]|0){c[x>>2]=1;c[r>>2]=4;c[y>>2]=z;h[B+8>>3]=0.0;h[B>>3]=0.0;if(c[(c[o>>2]|0)+40>>2]&2048){zO(C,c[o>>2]|0);c[t>>2]=c[C>>2];c[t+4>>2]=c[C+4>>2];c[t+8>>2]=c[C+8>>2];c[t+12>>2]=c[C+12>>2];c[t+16>>2]=c[C+16>>2];c[t+20>>2]=c[C+20>>2];c[t+24>>2]=c[C+24>>2];c[t+28>>2]=c[C+28>>2];c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[z+8>>2]=c[t+8>>2];c[z+12>>2]=c[t+12>>2];h[z+16>>3]=+h[t+16>>3];h[z+16+8>>3]=+h[t+8>>3];e=z+32|0;d=t+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];h[z+48>>3]=+h[t>>3];h[z+48+8>>3]=+h[t+16+8>>3];break}else{h[A>>3]=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];h[A+8>>3]=-+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]/2.0;c[z>>2]=c[A>>2];c[z+4>>2]=c[A+4>>2];c[z+8>>2]=c[A+8>>2];c[z+12>>2]=c[A+12>>2];h[A>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];d=z+16|0;c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];h[A+8>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]/2.0;d=z+32|0;c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];h[A>>3]=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];d=z+48|0;c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];break}}else if((c[(c[o>>2]|0)+8>>2]|0)>=3){c[x>>2]=1;c[r>>2]=c[(c[o>>2]|0)+8>>2];c[y>>2]=c[(c[o>>2]|0)+44>>2];h[B>>3]=+g[c[l>>2]>>2];h[B+8>>3]=+g[(c[l>>2]|0)+4>>2];break}else{c[x>>2]=0;c[r>>2]=8;h[p>>3]=+r2()*.01;break}while(0);c[(c[n>>2]|0)+4>>2]=c[r>>2];o=bK(c[r>>2]<<4)|0;c[c[n>>2]>>2]=o;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break;h[D>>3]=0.0;h[E>>3]=0.0;do if(!(c[x>>2]|0)){h[G>>3]=+Q(+(+(c[q>>2]|0)*6.283185307179586/+(c[r>>2]|0)+ +h[p>>3]));h[H>>3]=+R(+(+(c[q>>2]|0)*6.283185307179586/+(c[r>>2]|0)+ +h[p>>3]));if(a[(c[l>>2]|0)+8>>0]|0){h[s>>3]=+h[G>>3]*(+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]+ +g[c[l>>2]>>2])/2.0;h[s+8>>3]=+h[H>>3]*(+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]+ +g[(c[l>>2]|0)+4>>2])/2.0;break}else{h[s>>3]=+g[c[l>>2]>>2]*+h[G>>3]*(+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3])/2.0;h[s+8>>3]=+g[(c[l>>2]|0)+4>>2]*+h[H>>3]*+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]/2.0;break}}else{if(!(a[(c[l>>2]|0)+8>>0]|0)){h[s>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)>>3]*+h[B>>3];h[s+8>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)+8>>3]*+h[B+8>>3];break}o=c[q>>2]|0;if((c[r>>2]|0)!=4){h[F>>3]=+O(+(+h[(c[y>>2]|0)+(o<<4)>>3]*+h[(c[y>>2]|0)+(c[q>>2]<<4)>>3]+ +h[(c[y>>2]|0)+(c[q>>2]<<4)+8>>3]*+h[(c[y>>2]|0)+(c[q>>2]<<4)+8>>3]));h[s>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)>>3]*(+h[B>>3]/+h[F>>3]+1.0);h[s+8>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)+8>>3]*(+h[B+8>>3]/+h[F>>3]+1.0);break}switch(o|0){case 0:{h[D>>3]=+h[B>>3];h[E>>3]=+h[B+8>>3];break}case 1:{h[D>>3]=-+h[B>>3];h[E>>3]=+h[B+8>>3];break}case 2:{h[D>>3]=-+h[B>>3];h[E>>3]=-+h[B+8>>3];break}case 3:{h[D>>3]=+h[B>>3];h[E>>3]=-+h[B+8>>3];break}default:{}}h[s>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)>>3]+ +h[D>>3];h[s+8>>3]=+h[(c[y>>2]|0)+(c[q>>2]<<4)+8>>3]+ +h[E>>3]}while(0);h[(c[c[n>>2]>>2]|0)+((c[r>>2]|0)-(c[q>>2]|0)-1<<4)>>3]=+h[s>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3];h[(c[c[n>>2]>>2]|0)+((c[r>>2]|0)-(c[q>>2]|0)-1<<4)+8>>3]=+h[s+8>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3];c[q>>2]=(c[q>>2]|0)+1}$=c[n>>2]|0;i=f;return $|0}case 2:{c[v>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];q=(c[v>>2]|0)+16|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[t+16>>2]=c[q+16>>2];c[t+20>>2]=c[q+20>>2];c[t+24>>2]=c[q+24>>2];c[t+28>>2]=c[q+28>>2];c[n>>2]=bK(8)|0;c[(c[n>>2]|0)+4>>2]=4;q=bK(64)|0;c[c[n>>2]>>2]=q;q=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];q=c[c[n>>2]>>2]|0;aa=+h[t>>3];if(a[(c[l>>2]|0)+8>>0]|0){ba=aa-+g[c[l>>2]>>2];ca=+h[t+8>>3]-+g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(I,ba,ca,j);c[q>>2]=c[I>>2];c[q+4>>2]=c[I+4>>2];c[q+8>>2]=c[I+8>>2];c[q+12>>2]=c[I+12>>2];I=(c[c[n>>2]>>2]|0)+16|0;ca=+h[t>>3]-+g[c[l>>2]>>2];ba=+h[t+16+8>>3]+ +g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(J,ca,ba,j);c[I>>2]=c[J>>2];c[I+4>>2]=c[J+4>>2];c[I+8>>2]=c[J+8>>2];c[I+12>>2]=c[J+12>>2];J=(c[c[n>>2]>>2]|0)+32|0;ba=+h[t+16>>3]+ +g[c[l>>2]>>2];ca=+h[t+16+8>>3]+ +g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(K,ba,ca,j);c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];K=(c[c[n>>2]>>2]|0)+48|0;ca=+h[t+16>>3]+ +g[c[l>>2]>>2];ba=+h[t+8>>3]-+g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(L,ca,ba,j);c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];$=c[n>>2]|0;i=f;return $|0}else{ba=+h[t+8>>3];L=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(M,aa,ba,j,L);c[q>>2]=c[M>>2];c[q+4>>2]=c[M+4>>2];c[q+8>>2]=c[M+8>>2];c[q+12>>2]=c[M+12>>2];M=(c[c[n>>2]>>2]|0)+16|0;ba=+h[t>>3];aa=+h[t+16+8>>3];q=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(N,ba,aa,j,q);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];N=(c[c[n>>2]>>2]|0)+32|0;aa=+h[t+16>>3];ba=+h[t+16+8>>3];M=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(P,aa,ba,j,M);c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];c[N+12>>2]=c[P+12>>2];P=(c[c[n>>2]>>2]|0)+48|0;ba=+h[t+16>>3];aa=+h[t+8>>3];t=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(S,ba,aa,j,t);c[P>>2]=c[S>>2];c[P+4>>2]=c[S+4>>2];c[P+8>>2]=c[S+8>>2];c[P+12>>2]=c[S+12>>2];$=c[n>>2]|0;i=f;return $|0}break}case 4:{c[w>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];c[n>>2]=bK(8)|0;c[(c[n>>2]|0)+4>>2]=4;w=bK(64)|0;c[c[n>>2]>>2]=w;w=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];w=c[c[n>>2]>>2]|0;aa=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];if(a[(c[l>>2]|0)+8>>0]|0){ba=aa-+g[c[l>>2]>>2];ca=-+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]-+g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(T,ba,ca,j);c[w>>2]=c[T>>2];c[w+4>>2]=c[T+4>>2];c[w+8>>2]=c[T+8>>2];c[w+12>>2]=c[T+12>>2];T=(c[c[n>>2]>>2]|0)+16|0;ca=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3]-+g[c[l>>2]>>2];ba=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]+ +g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(U,ca,ba,j);c[T>>2]=c[U>>2];c[T+4>>2]=c[U+4>>2];c[T+8>>2]=c[U+8>>2];c[T+12>>2]=c[U+12>>2];U=(c[c[n>>2]>>2]|0)+32|0;ba=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]+ +g[c[l>>2]>>2];ca=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]+ +g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(V,ba,ca,j);c[U>>2]=c[V>>2];c[U+4>>2]=c[V+4>>2];c[U+8>>2]=c[V+8>>2];c[U+12>>2]=c[V+12>>2];V=(c[c[n>>2]>>2]|0)+48|0;ca=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]+ +g[c[l>>2]>>2];ba=-+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]-+g[(c[l>>2]|0)+4>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];hm(W,ca,ba,j);c[V>>2]=c[W>>2];c[V+4>>2]=c[W+4>>2];c[V+8>>2]=c[W+8>>2];c[V+12>>2]=c[W+12>>2];$=c[n>>2]|0;i=f;return $|0}else{ba=-+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3];W=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(X,aa,ba,j,W);c[w>>2]=c[X>>2];c[w+4>>2]=c[X+4>>2];c[w+8>>2]=c[X+8>>2];c[w+12>>2]=c[X+12>>2];X=(c[c[n>>2]>>2]|0)+16|0;ba=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];aa=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3];w=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(Y,ba,aa,j,w);c[X>>2]=c[Y>>2];c[X+4>>2]=c[Y+4>>2];c[X+8>>2]=c[Y+8>>2];c[X+12>>2]=c[Y+12>>2];Y=(c[c[n>>2]>>2]|0)+32|0;aa=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];ba=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3];X=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(Z,aa,ba,j,X);c[Y>>2]=c[Z>>2];c[Y+4>>2]=c[Z+4>>2];c[Y+8>>2]=c[Z+8>>2];c[Y+12>>2]=c[Z+12>>2];Z=(c[c[n>>2]>>2]|0)+48|0;ba=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];aa=-+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3];k=c[l>>2]|0;c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];im(_,ba,aa,j,k);c[Z>>2]=c[_>>2];c[Z+4>>2]=c[_+4>>2];c[Z+8>>2]=c[_+8>>2];c[Z+12>>2]=c[_+12>>2];$=c[n>>2]|0;i=f;return $|0}break}default:{c[n>>2]=0;$=c[n>>2]|0;i=f;return $|0}}return 0}function am(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;i=i+144|0;j=h+80|0;k=h+64|0;l=h+128|0;m=h+124|0;n=h+120|0;o=h+104|0;p=h+100|0;q=h+96|0;r=h+48|0;s=h+32|0;t=h+16|0;u=h;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[h+116>>2]=f;c[h+112>>2]=g;g=c[l>>2]|0;f=(c[(c[((c[c[l>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+16|0;g=(c[(c[l>>2]|0)+8>>2]|0)+16|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];jm(t,k,j);c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];t=c[l>>2]|0;g=(c[(c[((c[c[l>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]|0)+8>>2]|0)+16|0;t=(c[(c[l>>2]|0)+8>>2]|0)+56|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];jm(u,k,j);c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];c[q>>2]=-1111;c[p>>2]=-1111;if(!(c[n>>2]|0)){v=c[m>>2]|0;w=c[p>>2]|0;x=c[q>>2]|0;c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];oX(v,k,w,j,x,o)|0;c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];i=h;return}n=c[l>>2]|0;c[p>>2]=c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+288>>2];n=c[l>>2]|0;c[q>>2]=c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+288>>2];v=c[m>>2]|0;w=c[p>>2]|0;x=c[q>>2]|0;c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];oX(v,k,w,j,x,o)|0;c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];i=h;return}function bm(b,e,f,g,j){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+176|0;l=k+96|0;m=k+80|0;n=k+72|0;o=k+64|0;p=k+164|0;q=k+160|0;r=k+156|0;s=k+152|0;t=k+168|0;u=k+144|0;v=k+136|0;w=k+32|0;x=k+128|0;y=k+124|0;z=k+120|0;A=k+116|0;B=k+16|0;C=k;D=k+112|0;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;a[t>>0]=j;j=(c[(c[q>>2]|0)+8>>2]|0)+144|0;c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];j=c[u>>2]|0;c[B>>2]=c[j>>2];c[B+4>>2]=c[j+4>>2];c[B+8>>2]=c[j+8>>2];c[B+12>>2]=c[j+12>>2];j=(c[u>>2]|0)+((c[u+4>>2]|0)-1<<4)|0;c[C>>2]=c[j>>2];c[C+4>>2]=c[j+4>>2];c[C+8>>2]=c[j+8>>2];c[C+12>>2]=c[j+12>>2];c[A>>2]=-1111;c[z>>2]=-1111;a:do if(a[t>>0]|0){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[s>>2]|0))break a;if((c[z>>2]|0)==-1111?(j=c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]|0,c[m>>2]=c[j>>2],c[m+4>>2]=c[j+4>>2],c[l>>2]=c[B>>2],c[l+4>>2]=c[B+4>>2],c[l+8>>2]=c[B+8>>2],c[l+12>>2]=c[B+12>>2],(qX(m,l)|0)!=0):0)c[z>>2]=c[x>>2];if((c[A>>2]|0)==-1111?(j=c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]|0,c[m>>2]=c[j>>2],c[m+4>>2]=c[j+4>>2],c[l>>2]=c[C>>2],c[l+4>>2]=c[C+4>>2],c[l+8>>2]=c[C+8>>2],c[l+12>>2]=c[C+12>>2],(qX(m,l)|0)!=0):0)c[A>>2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+1}}while(0);km(c[r>>2]|0,c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,D,y);h[w+8>>3]=0.0;h[w>>3]=0.0;h[w+16+8>>3]=0.0;h[w+16>>3]=0.0;A=c[D>>2]|0;z=c[y>>2]|0;c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];if((rX(A,z,l,w,v)|0)<0){w=c[q>>2]|0;z=wB(c[((c[c[q>>2]>>2]&3|0)==3?w:w+32|0)+28>>2]|0)|0;w=c[q>>2]|0;A=wB(c[((c[c[q>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]|0)|0;c[o>>2]=z;c[o+4>>2]=A;$z(1,126658,o)|0;i=k;return}if((d[138998]|0)>1){o=c[24742]|0;A=c[q>>2]|0;z=wB(c[((c[c[q>>2]>>2]&3|0)==3?A:A+32|0)+28>>2]|0)|0;A=c[q>>2]|0;w=wB(c[((c[c[q>>2]>>2]&3|0)==2?A:A+-32|0)+28>>2]|0)|0;c[n>>2]=z;c[n+4>>2]=w;Y2(o,126706,n)|0}n=c[q>>2]|0;jN(c[q>>2]|0,c[((c[c[q>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0,c[v>>2]|0,c[v+4>>2]|0,50912);O4(c[D>>2]|0);D=c[p>>2]|0;p=c[q>>2]|0;c[m>>2]=c[B>>2];c[m+4>>2]=c[B+4>>2];c[m+8>>2]=c[B+8>>2];c[m+12>>2]=c[B+12>>2];c[l>>2]=c[C>>2];c[l+4>>2]=c[C+4>>2];c[l+8>>2]=c[C+8>>2];c[l+12>>2]=c[C+12>>2];sN(D,p,m,l);i=k;return}function cm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+64|0;g=f+52|0;h=f+48|0;j=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+20|0;o=f+16|0;p=f+4|0;q=f;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;hq(p,c[h>>2]|0);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[l>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[m>>2]=OA(c[h>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;iM(c[m>>2]|0);c[m>>2]=QA(c[h>>2]|0,c[m>>2]|0)|0}c[l>>2]=aC(c[h>>2]|0,c[l>>2]|0)|0}c[o>>2]=Nz(50876,c[12989]|0)|0;c[l>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[m>>2]=OA(c[h>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;if((c[13795]|0)>1?(c[(c[(c[m>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){p=(c[(c[m>>2]|0)+8>>2]|0)+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16}else r=14;if((r|0)==14?(r=0,c[q>>2]=lm(c[o>>2]|0,c[m>>2]|0)|0,(c[q>>2]|0)!=(c[m>>2]|0)):0){p=(c[(c[q>>2]|0)+8>>2]|0)+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2];c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]=c[m>>2]}c[m>>2]=QA(c[h>>2]|0,c[m>>2]|0)|0}c[l>>2]=aC(c[h>>2]|0,c[l>>2]|0)|0}Jz(c[o>>2]|0)|0;if(Hb[c[j>>2]&63](c[h>>2]|0,n,c[k>>2]|0)|0){c[g>>2]=1;s=c[g>>2]|0;i=f;return s|0}else{c[13800]=1;c[g>>2]=0;s=c[g>>2]|0;i=f;return s|0}return 0}function dm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=cm(c[e>>2]|0,26,c[f>>2]|0)|0;i=d;return b|0}function em(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+4|0;h=f+8|0;j=f;c[g>>2]=b;a[h>>0]=d;c[j>>2]=e[(c[(c[g>>2]|0)+8>>2]|0)+136>>1]&14;if(a[h>>0]|0)fm(c[g>>2]|0)|0;if(!(c[j>>2]|0)){i=f;return}dm(c[g>>2]|0,c[j>>2]|0)|0;i=f;return}function fm(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;g=d+8|0;c[e>>2]=b;a[g>>0]=0;a[g>>0]=nm(c[e>>2]|0)|0;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]*72.0;h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*72.0;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=d;return a[g>>0]|0}function gm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+48|0;d=b+16|0;e=b+36|0;f=b+32|0;g=b;c[e>>2]=a;BO(c[e>>2]|0);h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]/72.0;h[g+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]/72.0;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;a=c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0;h[a>>3]=+h[a>>3]-+h[g>>3];a=(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[a>>3]=+h[a>>3]-+h[g+8>>3];c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}f=c[e>>2]|0;g=(c[(c[e>>2]|0)+8>>2]|0)+16|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];om(f,d);em(c[e>>2]|0,1);i=b;return}function hm(a,b,d,e){a=a|0;b=+b;d=+d;e=e|0;var f=0,g=0,j=0,k=0;f=i;i=i+32|0;g=f+24|0;j=f+16|0;k=f;h[g>>3]=b;h[j>>3]=d;h[k>>3]=+h[g>>3]+ +h[e>>3];h[k+8>>3]=+h[j>>3]+ +h[e+8>>3];c[a>>2]=c[k>>2];c[a+4>>2]=c[k+4>>2];c[a+8>>2]=c[k+8>>2];c[a+12>>2]=c[k+12>>2];i=f;return}function im(a,b,d,e,f){a=a|0;b=+b;d=+d;e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+48|0;k=j+24|0;l=j+16|0;m=j+32|0;n=j;h[k>>3]=b;h[l>>3]=d;c[m>>2]=f;h[n>>3]=+h[k>>3]*+g[c[m>>2]>>2]+ +h[e>>3];h[n+8>>3]=+h[l>>3]*+g[(c[m>>2]|0)+4>>2]+ +h[e+8>>3];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];i=j;return}function jm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function km(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+48|0;j=h+44|0;k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;u=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[s>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[k>>2]|0))break;if((c[p>>2]|0)!=(c[l>>2]|0)?(c[p>>2]|0)!=(c[m>>2]|0):0)c[s>>2]=(c[s>>2]|0)+(c[(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)+4>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[u>>2]=cK(c[s>>2]<<5)|0;c[t>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[k>>2]|0))break;a:do if((c[p>>2]|0)!=(c[l>>2]|0)?(c[p>>2]|0)!=(c[m>>2]|0):0){c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)+4>>2]|0))break a;c[r>>2]=(c[q>>2]|0)+1;if((c[r>>2]|0)>=(c[(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)+4>>2]|0))c[r>>2]=0;g=(c[u>>2]|0)+(c[t>>2]<<5)|0;f=(c[c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]>>2]|0)+(c[q>>2]<<4)|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];f=(c[u>>2]|0)+(c[t>>2]<<5)+16|0;g=(c[c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]>>2]|0)+(c[r>>2]<<4)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[t>>2]=(c[t>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}}while(0);c[p>>2]=(c[p>>2]|0)+1}if((c[t>>2]|0)==(c[s>>2]|0)){c[c[n>>2]>>2]=c[u>>2];c[c[o>>2]>>2]=c[s>>2];i=h;return}else La(126962,126969,79,126984)}function lm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=i;i=i+160|0;e=d+152|0;f=d+148|0;g=d+96|0;j=d+32|0;k=d+144|0;l=d+16|0;m=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;a=c[f>>2]|0;n=c[f>>2]|0;o=c[((c[c[f>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0;if((c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)>>>0<(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)>>>0){c[g>>2]=o;a=g+8|0;b=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];b=c[f>>2]|0;c[g+24>>2]=c[((c[c[f>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];b=g+32|0;a=(c[(c[f>>2]|0)+8>>2]|0)+56|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];p=j+8|0;q=p;r=g;s=q+48|0;do{c[q>>2]=c[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));t=c[f>>2]|0;u=j+56|0;c[u>>2]=t;v=c[e>>2]|0;w=c[v>>2]|0;x=c[e>>2]|0;y=Hb[w&63](x,j,1)|0;c[k>>2]=y;z=c[k>>2]|0;A=z+56|0;B=c[A>>2]|0;i=d;return B|0}a=c[f>>2]|0;b=c[f>>2]|0;if(o>>>0>(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)>>>0){a=c[f>>2]|0;c[g+24>>2]=c[((c[b>>2]&3|0)==3?a:a+32|0)+28>>2];a=g+32|0;o=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];o=c[f>>2]|0;c[g>>2]=c[((c[c[f>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2];o=g+8|0;a=(c[(c[f>>2]|0)+8>>2]|0)+56|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];p=j+8|0;q=p;r=g;s=q+48|0;do{c[q>>2]=c[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));t=c[f>>2]|0;u=j+56|0;c[u>>2]=t;v=c[e>>2]|0;w=c[v>>2]|0;x=c[e>>2]|0;y=Hb[w&63](x,j,1)|0;c[k>>2]=y;z=c[k>>2]|0;A=z+56|0;B=c[A>>2]|0;i=d;return B|0}a=(c[b+8>>2]|0)+56|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];a=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];do if(!(+h[m>>3]<+h[l>>3])){if(+h[m>>3]>+h[l>>3]){a=g+8|0;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];a=g+32|0;c[a>>2]=c[m>>2];c[a+4>>2]=c[m+4>>2];c[a+8>>2]=c[m+8>>2];c[a+12>>2]=c[m+12>>2];break}if(+h[m+8>>3]<+h[l+8>>3]){a=g+8|0;c[a>>2]=c[m>>2];c[a+4>>2]=c[m+4>>2];c[a+8>>2]=c[m+8>>2];c[a+12>>2]=c[m+12>>2];a=g+32|0;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];break}a=g+8|0;if(+h[m+8>>3]>+h[l+8>>3]){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];b=g+32|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];break}else{b=g+32|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}}else{b=g+8|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];b=g+32|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2]}while(0);l=c[f>>2]|0;m=c[((c[c[f>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0;c[g>>2]=m;c[g+24>>2]=m;p=j+8|0;q=p;r=g;s=q+48|0;do{c[q>>2]=c[r>>2];q=q+4|0;r=r+4|0}while((q|0)<(s|0));t=c[f>>2]|0;u=j+56|0;c[u>>2]=t;v=c[e>>2]|0;w=c[v>>2]|0;x=c[e>>2]|0;y=Hb[w&63](x,j,1)|0;c[k>>2]=y;z=c[k>>2]|0;A=z+56|0;B=c[A>>2]|0;i=d;return B|0}function mm(d,e,f){d=d|0;e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0;j=i;i=i+176|0;k=j+80|0;l=j+64|0;m=j+56|0;n=j+40|0;o=j+32|0;p=j+172|0;q=j+168|0;r=j+164|0;s=j+160|0;t=j+156|0;u=j+152|0;v=j+148|0;w=j+144|0;x=j+140|0;y=j+136|0;z=j+132|0;A=j+128|0;B=j+124|0;C=j+120|0;D=j+112|0;E=j+104|0;F=j+96|0;G=j+16|0;H=j;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[v>>2]=0;c[y>>2]=0;c[A>>2]=0;c[B>>2]=0;c[C>>2]=(c[13795]|0)>1&1;c[j+116>>2]=0;c[D>>2]=0;a:do if((c[r>>2]|0)>=6){c[v>>2]=bK((kB(c[p>>2]|0)|0)<<2)|0;c[s>>2]=$B(c[p>>2]|0)|0;while(1){if(!(c[s>>2]|0))break a;c[w>>2]=$l(c[s>>2]|0,c[q>>2]|0,(c[r>>2]|0)==8&255)|0;if(c[w>>2]|0){c[(c[(c[s>>2]|0)+8>>2]|0)+288>>2]=c[y>>2];f=c[w>>2]|0;e=c[y>>2]|0;c[y>>2]=e+1;c[(c[v>>2]|0)+(e<<2)>>2]=f}else c[(c[(c[s>>2]|0)+8>>2]|0)+288>>2]=-1111;c[s>>2]=aC(c[p>>2]|0,c[s>>2]|0)|0}}else c[v>>2]=0;while(0);c[z>>2]=c[y>>2];do if(c[v>>2]|0){w=Gs(c[v>>2]|0,c[z>>2]|0)|0;c[D>>2]=w;f=c[r>>2]|0;if(w){if((f|0)==8)break;c[A>>2]=mX(c[v>>2]|0,c[z>>2]|0)|0;break}if((f|0)==8){$z(0,126720,o)|0;break}else{I=+g[(c[q>>2]|0)+4>>2];h[n>>3]=+g[c[q>>2]>>2];h[n+8>>3]=I;$z(0,126798,n)|0;break}}while(0);if(a[138998]|0){n=c[24742]|0;if(!((c[D>>2]|0)!=0&(c[r>>2]|0)==8))if(c[A>>2]|0)J=(c[r>>2]|0)==10?145963:126880;else J=126890;else J=126904;c[m>>2]=J;Y2(n,126921,m)|0}b:do if(!(c[A>>2]|0)){if((c[D>>2]|0)!=0&(c[r>>2]|0)==8){yP(c[p>>2]|0,0);c[C>>2]=1}}else{c[s>>2]=$B(c[p>>2]|0)|0;while(1){if(!(c[s>>2]|0))break b;c[t>>2]=OA(c[p>>2]|0,c[s>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;m=(c[(c[t>>2]|0)+8>>2]|0)+144|0;am(E,c[t>>2]|0,c[A>>2]|0,1,c[v>>2]|0,c[z>>2]|0);c[m>>2]=c[E>>2];c[m+4>>2]=c[E+4>>2];c[t>>2]=QA(c[p>>2]|0,c[t>>2]|0)|0}c[s>>2]=aC(c[p>>2]|0,c[s>>2]|0)|0}}while(0);c[s>>2]=$B(c[p>>2]|0)|0;while(1){if(!(c[s>>2]|0))break;c[t>>2]=OA(c[p>>2]|0,c[s>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;E=c[t>>2]|0;c[F>>2]=c[((c[c[t>>2]>>2]&3|0)==2?E:E+-32|0)+28>>2];if((c[C>>2]|0)!=0?(c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0){E=c[p>>2]|0;D=c[t>>2]|0;m=(c[(c[s>>2]|0)+8>>2]|0)+16|0;n=(c[(c[t>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];jm(G,l,k);n=(c[(c[F>>2]|0)+8>>2]|0)+16|0;m=(c[(c[t>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[n>>2];c[l+4>>2]=c[n+4>>2];c[l+8>>2]=c[n+8>>2];c[l+12>>2]=c[n+12>>2];c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];jm(H,l,k);c[l>>2]=c[G>>2];c[l+4>>2]=c[G+4>>2];c[l+8>>2]=c[G+8>>2];c[l+12>>2]=c[G+12>>2];c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];sN(E,D,l,k)}else K=37;c:do if((K|0)==37?(K=0,(b[(c[(c[t>>2]|0)+8>>2]|0)+168>>1]|0)!=0):0){if((c[s>>2]|0)==(c[F>>2]|0)){if(!(c[B>>2]|0)){c[B>>2]=bK(96)|0;D=bK((kB(c[p>>2]|0)|0)+360<<5)|0;c[(c[B>>2]|0)+84>>2]=D}_l(c[B>>2]|0,c[t>>2]|0,c[(c[(c[(c[p>>2]|0)+48>>2]|0)+8>>2]|0)+248>>2]|0);break}if(!(c[A>>2]|0)){TL(c[p>>2]|0,c[t>>2]|0,c[r>>2]|0,50912);break}D=b[(c[(c[t>>2]|0)+8>>2]|0)+168>>1]|0;c[x>>2]=D;c[x>>2]=(a[139e3]|0)!=0?1:D;c[u>>2]=c[t>>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x>>2]|0))break c;D=c[p>>2]|0;E=c[u>>2]|0;if((c[r>>2]|0)==10)bm(D,E,c[v>>2]|0,c[z>>2]|0,1);else xm(D,E);c[u>>2]=c[(c[(c[u>>2]|0)+8>>2]|0)+172>>2];c[y>>2]=(c[y>>2]|0)+1}}while(0);c[t>>2]=QA(c[p>>2]|0,c[t>>2]|0)|0}c[s>>2]=aC(c[p>>2]|0,c[s>>2]|0)|0}if(c[A>>2]|0)nX(c[A>>2]|0);if(c[B>>2]|0){O4(c[(c[B>>2]|0)+84>>2]|0);O4(c[B>>2]|0)}if(!(c[v>>2]|0)){i=j;return 0}c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[z>>2]|0))break;O4(c[(c[v>>2]|0)+(c[y>>2]<<2)>>2]|0);c[y>>2]=(c[y>>2]|0)+1}O4(c[v>>2]|0);i=j;return 0}function nm(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0;d=i;i=i+80|0;e=d+68|0;f=d+64|0;g=d+48|0;j=d+40|0;k=d+32|0;l=d+24|0;m=d+60|0;n=d+16|0;o=d+8|0;p=d;q=d+56|0;c[f>>2]=b;if((c[(c[f>>2]|0)+48>>2]|0)!=(c[f>>2]|0)){a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}if(!(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)){a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}b=(N(~~+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]|0)|0)>=0;s=+(N(~~+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]|0)|0);if(b)if(~~(s+.5))t=10;else t=7;else if(~~(s-.5))t=10;else t=7;do if((t|0)==7){b=(N(~~+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]|0)|0)>=0;s=+(N(~~+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]|0)|0);if(b)if(~~(s+.5)){t=10;break}else break;else if(~~(s-.5)){t=10;break}else break}while(0);if((t|0)==10)sm(c[f>>2]|0);if(c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]&1){h[n>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16+8>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+16+16+8>>3]=+h[n>>3]}n=c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0;do if((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)==2){if(+h[n+64>>3]<=0.0){a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}h[g>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]/+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3];h[j>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]/+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16+8>>3];if(+h[g>>3]<1.0|+h[j>>3]<1.0)if(+h[g>>3]<+h[j>>3]){h[j>>3]=+h[j>>3]/+h[g>>3];h[g>>3]=1.0;break}else{h[g>>3]=+h[g>>3]/+h[j>>3];h[j>>3]=1.0;break}}else{t=c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0;if((c[n+84>>2]|0)!=5){if((c[t+84>>2]|0)!=1){a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}h[l>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+16>>3];h[k>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16+8>>3]/+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3];if(+h[k>>3]<+h[l>>3]){h[j>>3]=+h[l>>3]/+h[k>>3];h[g>>3]=1.0;break}else{h[g>>3]=+h[k>>3]/+h[l>>3];h[j>>3]=1.0;break}}if(+h[t+64>>3]<=0.0){a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}h[g>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]/+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16>>3];h[j>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]/+h[(c[(c[f>>2]|0)+8>>2]|0)+16+16+8>>3];if(+h[g>>3]>1.0&+h[j>>3]>1.0){h[o>>3]=+h[g>>3]<+h[j>>3]?+h[g>>3]:+h[j>>3];s=+h[o>>3];h[j>>3]=s;h[g>>3]=s;break}a[e>>0]=0;r=a[e>>0]|0;i=d;return r|0}while(0);if(c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]&1){h[p>>3]=+h[g>>3];h[g>>3]=+h[j>>3];h[j>>3]=+h[p>>3]}a:do if((c[13795]|0)>1){c[m>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[m>>2]|0))break a;c[q>>2]=OA(c[f>>2]|0,c[m>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;if(c[(c[(c[q>>2]|0)+8>>2]|0)+8>>2]|0)tm(c[q>>2]|0,+h[g>>3],+h[j>>3]);c[q>>2]=QA(c[f>>2]|0,c[q>>2]|0)|0}c[m>>2]=aC(c[f>>2]|0,c[m>>2]|0)|0}}while(0);c[m>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;h[c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]>>3]*+h[g>>3];h[(c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*+h[j>>3];c[m>>2]=aC(c[f>>2]|0,c[m>>2]|0)|0}um(c[f>>2]|0,+h[g>>3],+h[j>>3]);a[e>>0]=1;r=a[e>>0]|0;i=d;return r|0}function om(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d;f=d+20|0;g=d+16|0;c[f>>2]=a;c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;a=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];om(a,e);c[g>>2]=(c[g>>2]|0)+1}g=(c[(c[f>>2]|0)+8>>2]|0)+16+16|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[f>>2]|0)+8>>2]|0)+16+16+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3];g=(c[(c[f>>2]|0)+8>>2]|0)+16|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[f>>2]|0)+8>>2]|0)+16+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3];i=d;return}function pm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[f+12>>2]=a;c[g>>2]=d;c[f+4>>2]=e;c[h>>2]=bK(64)|0;e=(c[h>>2]|0)+8|0;d=(c[g>>2]|0)+8|0;a=e+48|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));c[(c[h>>2]|0)+56>>2]=c[(c[g>>2]|0)+56>>2];b[(c[(c[(c[h>>2]|0)+56>>2]|0)+8>>2]|0)+168>>1]=1;i=f;return c[h>>2]|0}function qm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function rm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+12|0;k=f+8|0;l=f;c[f+16>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f+4>>2]=e;if((c[c[j>>2]>>2]|0)>>>0>(c[c[k>>2]>>2]|0)>>>0){c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}if((c[c[j>>2]>>2]|0)>>>0<(c[c[k>>2]>>2]|0)>>>0){c[g>>2]=-1;m=c[g>>2]|0;i=f;return m|0}if((c[(c[j>>2]|0)+24>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>>>0){c[g>>2]=1;m=c[g>>2]|0;i=f;return m|0}if((c[(c[j>>2]|0)+24>>2]|0)>>>0<(c[(c[k>>2]|0)+24>>2]|0)>>>0){c[g>>2]=-1;m=c[g>>2]|0;i=f;return m|0}e=~~(+h[(c[j>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8>>3]);c[l>>2]=e;if(e){c[g>>2]=c[l>>2];m=c[g>>2]|0;i=f;return m|0}e=~~(+h[(c[j>>2]|0)+8+8>>3]-+h[(c[k>>2]|0)+8+8>>3]);c[l>>2]=e;if(e){c[g>>2]=c[l>>2];m=c[g>>2]|0;i=f;return m|0}e=~~(+h[(c[j>>2]|0)+32>>3]-+h[(c[k>>2]|0)+32>>3]);c[l>>2]=e;if(e){c[g>>2]=c[l>>2];m=c[g>>2]|0;i=f;return m|0}else{c[g>>2]=~~(+h[(c[j>>2]|0)+32+8>>3]-+h[(c[k>>2]|0)+32+8>>3]);m=c[g>>2]|0;i=f;return m|0}return 0}function sm(a){a=a|0;var b=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;b=i;i=i+64|0;e=b+32|0;f=b+56|0;g=b+52|0;j=b+48|0;k=b+16|0;l=b;c[f>>2]=a;a=(c[(c[f>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];h[k>>3]=+h[l>>3]/72.0;h[k+8>>3]=+h[l+8>>3]/72.0;c[g>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;a=c[(c[(c[g>>2]|0)+8>>2]|0)+132>>2]|0;h[a>>3]=+h[a>>3]-+h[k>>3];a=(c[(c[(c[g>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[a>>3]=+h[a>>3]-+h[k+8>>3];if((c[(c[(c[g>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0|0)!=0:0){a=(c[(c[(c[g>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;h[a>>3]=+h[a>>3]-+h[l>>3];a=(c[(c[(c[g>>2]|0)+8>>2]|0)+108>>2]|0)+56+8|0;h[a>>3]=+h[a>>3]-+h[l+8>>3]}c[g>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0}c[g>>2]=$B(c[f>>2]|0)|0;while(1){m=c[f>>2]|0;if(!(c[g>>2]|0))break;c[j>>2]=OA(m,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;if(c[(c[(c[j>>2]|0)+8>>2]|0)+8>>2]|0){k=c[j>>2]|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];vm(k,e)}c[j>>2]=QA(c[f>>2]|0,c[j>>2]|0)|0}c[g>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0}c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];wm(m,e);i=b;return}function tm(a,b,e){a=a|0;b=+b;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+80|0;g=f+64|0;j=f+40|0;k=f+32|0;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;p=f+16|0;q=f;c[g>>2]=a;h[j>>3]=b;h[k>>3]=e;a=c[g>>2]|0;h[p>>3]=+h[c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]>>3]*(+h[j>>3]-1.0)*72.0;a=c[g>>2]|0;h[p+8>>3]=+h[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*(+h[k>>3]-1.0)*72.0;a=c[g>>2]|0;h[q>>3]=+h[c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+132>>2]>>3]*(+h[j>>3]-1.0)*72.0;a=c[g>>2]|0;h[q+8>>3]=+h[(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*(+h[k>>3]-1.0)*72.0;c[o>>2]=c[c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;c[n>>2]=c[c[o>>2]>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[o>>2]|0)+4>>2]|0))break;do if((c[l>>2]|0)==0&(c[m>>2]|0)==0){a=c[n>>2]|0;h[a>>3]=+h[a>>3]+ +h[q>>3];a=(c[n>>2]|0)+8|0;h[a>>3]=+h[a>>3]+ +h[q+8>>3]}else{if((c[l>>2]|0)==((c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)-1|0)?(c[m>>2]|0)==((c[(c[o>>2]|0)+4>>2]|0)-1|0):0){a=c[n>>2]|0;h[a>>3]=+h[a>>3]+ +h[p>>3];a=(c[n>>2]|0)+8|0;h[a>>3]=+h[a>>3]+ +h[p+8>>3];break}a=c[n>>2]|0;h[a>>3]=+h[a>>3]*+h[j>>3];a=(c[n>>2]|0)+8|0;h[a>>3]=+h[a>>3]*+h[k>>3]}while(0);c[n>>2]=(c[n>>2]|0)+16;c[m>>2]=(c[m>>2]|0)+1}if(c[(c[o>>2]|0)+8>>2]|0){a=(c[o>>2]|0)+16|0;h[a>>3]=+h[a>>3]+ +h[q>>3];a=(c[o>>2]|0)+16+8|0;h[a>>3]=+h[a>>3]+ +h[q+8>>3]}if(c[(c[o>>2]|0)+12>>2]|0){a=(c[o>>2]|0)+32|0;h[a>>3]=+h[a>>3]+ +h[p>>3];a=(c[o>>2]|0)+32+8|0;h[a>>3]=+h[a>>3]+ +h[p+8>>3]}c[o>>2]=(c[o>>2]|0)+48;c[l>>2]=(c[l>>2]|0)+1}if((c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]|0|0)!=0:0){l=(c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;h[l>>3]=+h[l>>3]*+h[j>>3];j=(c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0)+56+8|0;h[j>>3]=+h[j>>3]*+h[k>>3]}if((c[(c[(c[g>>2]|0)+8>>2]|0)+100>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+100>>2]|0)+81>>0]|0|0)!=0:0){k=(c[(c[(c[g>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;h[k>>3]=+h[k>>3]+ +h[p>>3];k=(c[(c[(c[g>>2]|0)+8>>2]|0)+100>>2]|0)+56+8|0;h[k>>3]=+h[k>>3]+ +h[p+8>>3]}if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+104>>2]|0)){i=f;return}if(!(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+104>>2]|0)+81>>0]|0)){i=f;return}p=(c[(c[(c[g>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;h[p>>3]=+h[p>>3]+ +h[q>>3];p=(c[(c[(c[g>>2]|0)+8>>2]|0)+104>>2]|0)+56+8|0;h[p>>3]=+h[p>>3]+ +h[q+8>>3];i=f;return}function um(a,b,e){a=a|0;b=+b;e=+e;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;j=f+8|0;k=f;l=f+16|0;c[g>>2]=a;h[j>>3]=b;h[k>>3]=e;a=(c[(c[g>>2]|0)+8>>2]|0)+16+16|0;h[a>>3]=+h[a>>3]*+h[j>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16+16+8|0;h[a>>3]=+h[a>>3]*+h[k>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16|0;h[a>>3]=+h[a>>3]*+h[j>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16+8|0;h[a>>3]=+h[a>>3]*+h[k>>3];if((c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0|0)!=0:0){a=(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;h[a>>3]=+h[a>>3]*+h[j>>3];a=(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+56+8|0;h[a>>3]=+h[a>>3]*+h[k>>3]}c[l>>2]=1;while(1){if((c[l>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;um(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[l>>2]<<2)>>2]|0,+h[j>>3],+h[k>>3]);c[l>>2]=(c[l>>2]|0)+1}i=f;return}function vm(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[l>>2]=c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0))break;c[k>>2]=c[c[l>>2]>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[l>>2]|0)+4>>2]|0))break;a=c[k>>2]|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[k>>2]|0)+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3];c[k>>2]=(c[k>>2]|0)+16;c[j>>2]=(c[j>>2]|0)+1}if(c[(c[l>>2]|0)+8>>2]|0){a=(c[l>>2]|0)+16|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[l>>2]|0)+16+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3]}if(c[(c[l>>2]|0)+12>>2]|0){a=(c[l>>2]|0)+32|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[l>>2]|0)+32+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3]}c[l>>2]=(c[l>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}if((c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)!=0?(d[(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]|0|0)!=0:0){g=(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)+56|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)+56+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3]}if((c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)!=0?(d[(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+81>>0]|0|0)!=0:0){g=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0)+56+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3]}if((c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)!=0?(d[(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)+81>>0]|0|0)!=0:0){g=(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)+56|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0)+56+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3]}if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)){i=e;return}if(!(d[(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)+81>>0]|0)){i=e;return}g=(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;h[g>>3]=+h[g>>3]-+h[b>>3];g=(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0)+56+8|0;h[g>>3]=+h[g>>3]-+h[b+8>>3];i=e;return}function wm(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e;g=e+20|0;j=e+16|0;c[g>>2]=a;a=(c[(c[g>>2]|0)+8>>2]|0)+16+16|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16+16+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[(c[g>>2]|0)+8>>2]|0)+16+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3];if((c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(d[(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]|0|0)!=0:0){a=(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;h[a>>3]=+h[a>>3]-+h[b>>3];a=(c[(c[(c[g>>2]|0)+8>>2]|0)+12>>2]|0)+56+8|0;h[a>>3]=+h[a>>3]-+h[b+8>>3]}c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;a=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];wm(a,f);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function xm(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+96|0;f=e+56|0;g=e+40|0;h=e+32|0;j=e+92|0;k=e+88|0;l=e+80|0;m=e+72|0;n=e+16|0;o=e;c[j>>2]=a;c[k>>2]=b;b=(c[(c[k>>2]|0)+8>>2]|0)+144|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];b=c[m>>2]|0;c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];b=(c[m>>2]|0)+((c[m+4>>2]|0)-1<<4)|0;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];iY(f,l);if((d[138998]|0|0)>1){m=c[24742]|0;b=c[k>>2]|0;a=wB(c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;b=c[k>>2]|0;p=wB(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0;c[h>>2]=a;c[h+4>>2]=p;Y2(m,126946,h)|0}h=c[k>>2]|0;jN(c[k>>2]|0,c[((c[c[k>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0,c[l>>2]|0,c[l+4>>2]|0,50912);l=c[j>>2]|0;j=c[k>>2]|0;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];sN(l,j,g,f);i=e;return}function ym(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function zm(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Am(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;j=i;i=i+48|0;k=j+40|0;l=j+36|0;m=j+32|0;n=j+28|0;o=j+24|0;p=j+20|0;q=j+16|0;r=j+12|0;s=j+8|0;t=j+4|0;u=j;c[j+44>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[u>>2]=0;c[p>>2]=c[c[m>>2]>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[k>>2]|0))break;c[o>>2]=c[(c[n>>2]|0)+(c[s>>2]<<2)>>2];a:do if((d[(c[(c[o>>2]|0)+8>>2]|0)+119>>0]|0|0)>0){c[r>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2];g=c[r>>2]|0;c[r>>2]=g+8;v=+h[g>>3];g=c[p>>2]|0;c[p>>2]=g+8;h[g>>3]=v;g=c[r>>2]|0;c[r>>2]=g+8;v=+h[g>>3];g=c[q>>2]|0;c[q>>2]=g+8;h[g>>3]=v;b:do if((c[l>>2]|0)>2){c[t>>2]=2;while(1){if((c[t>>2]|0)>=(c[l>>2]|0))break b;g=c[r>>2]|0;c[r>>2]=g+8;h[(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[s>>2]<<3)>>3]=+h[g>>3];c[t>>2]=(c[t>>2]|0)+1}}while(0);if((d[(c[(c[o>>2]|0)+8>>2]|0)+119>>0]|0|0)>1)c[u>>2]=1}else{v=+r2();g=c[p>>2]|0;c[p>>2]=g+8;h[g>>3]=v;v=+r2();g=c[q>>2]|0;c[q>>2]=g+8;h[g>>3]=v;if((c[l>>2]|0)>2){c[t>>2]=2;while(1){if((c[t>>2]|0)>=(c[l>>2]|0))break a;v=+r2();h[(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[s>>2]<<3)>>3]=v;c[t>>2]=(c[t>>2]|0)+1}}}while(0);c[s>>2]=(c[s>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[l>>2]|0))break;at(c[k>>2]|0,c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0);c[t>>2]=(c[t>>2]|0)+1}i=j;return c[u>>2]|0}function Bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;j=d+32|0;k=d+28|0;l=d+24|0;m=d+20|0;n=d+16|0;o=d+12|0;p=d+8|0;q=d+4|0;r=d;c[e>>2]=a;c[f>>2]=b;c[o>>2]=bK(((_(c[f>>2]|0,(c[f>>2]|0)+1|0)|0)/2|0)<<2)|0;c[p>>2]=Mm(c[f>>2]|0,c[f>>2]|0,0.0)|0;c[q>>2]=Mm(c[f>>2]|0,c[f>>2]|0,0.0)|0;b=(c[(c[e>>2]|0)+8>>2]|0)!=0;c[j>>2]=0;a:do if(b)while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break a;c[l>>2]=1;while(1){if((c[l>>2]|0)>=(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0))break;c[k>>2]=c[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+4>>2]|0)+(c[l>>2]<<2)>>2];s=-1.0/+g[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]|0)+(c[l>>2]<<2)>>2];h[(c[(c[p>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]=s;h[(c[(c[p>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]=s;c[l>>2]=(c[l>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}else while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break a;c[l>>2]=1;while(1){if((c[l>>2]|0)>=(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0))break;c[k>>2]=c[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+4>>2]|0)+(c[l>>2]<<2)>>2];h[(c[(c[p>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]=-1.0;h[(c[(c[p>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]=-1.0;c[l>>2]=(c[l>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}while(0);c[m>>2]=Pq(c[f>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(!(c[m>>2]|0)){O4(c[o>>2]|0);c[o>>2]=0;t=c[p>>2]|0;Nm(t);u=c[q>>2]|0;Nm(u);v=c[o>>2]|0;i=d;return v|0}c[n>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[j>>2];while(1){w=c[j>>2]|0;if((c[k>>2]|0)>=(c[f>>2]|0))break;if((w|0)==(c[k>>2]|0))g[r>>2]=0.0;else g[r>>2]=+h[(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]+ +h[(c[(c[q>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[(c[q>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]*2.0;s=+g[r>>2];m=c[n>>2]|0;c[n>>2]=m+1;g[(c[o>>2]|0)+(m<<2)>>2]=s;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=w+1}t=c[p>>2]|0;Nm(t);u=c[q>>2]|0;Nm(u);v=c[o>>2]|0;i=d;return v|0}function Cm(b,d){b=b|0;d=d|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;e=i;i=i+48|0;f=e+8|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e;c[k>>2]=b;c[l>>2]=d;c[q>>2]=0;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[j>>2]=0;s=c[j>>2]|0;i=e;return s|0}c[p>>2]=Gm(c[k>>2]|0,c[l>>2]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0);c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)>>2]|0))break;c[n>>2]=c[(c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+4>>2]|0)+(c[o>>2]<<2)>>2];if((c[n>>2]|0)>=(c[m>>2]|0)){d=_(c[m>>2]|0,c[l>>2]|0)|0;t=+(N(~~(+g[(c[p>>2]|0)+(d+(c[n>>2]|0)-(c[q>>2]|0)<<2)>>2]-+g[(c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+8>>2]|0)+(c[o>>2]<<2)>>2])|0)|0);h[r>>3]=+h[r>>3]+t;d=_(c[m>>2]|0,c[l>>2]|0)|0;g[(c[p>>2]|0)+(d+(c[n>>2]|0)-(c[q>>2]|0)<<2)>>2]=+g[(c[(c[k>>2]|0)+((c[m>>2]|0)*20|0)+8>>2]|0)+(c[o>>2]<<2)>>2]}c[o>>2]=(c[o>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}if(a[138998]|0){m=c[24742]|0;h[f>>3]=+h[r>>3];Y2(m,126998,f)|0}c[j>>2]=c[p>>2];s=c[j>>2]|0;i=e;return s|0}function Dm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;h=d+32|0;j=d+28|0;k=d+24|0;l=d+20|0;m=d+16|0;n=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=bK(((_(c[f>>2]|0,(c[f>>2]|0)+1|0)|0)/2|0)<<2)|0;c[m>>2]=bK(c[f>>2]<<2)|0;Nq(n,c[f>>2]|0);c[k>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;Iq(c[h>>2]|0,c[e>>2]|0,c[f>>2]|0,c[m>>2]|0,n);c[j>>2]=c[h>>2];while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;o=+(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0);b=c[k>>2]|0;c[k>>2]=b+1;g[(c[l>>2]|0)+(b<<2)>>2]=o;c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1}O4(c[m>>2]|0);Oq(n);i=d;return c[l>>2]|0}function Em(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0;d=i;i=i+48|0;e=d+44|0;f=d+40|0;h=d+36|0;j=d+32|0;k=d+28|0;l=d+24|0;m=d+20|0;n=d+16|0;o=d+12|0;p=d+8|0;q=d+4|0;r=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[(c[e>>2]|0)+8>>2];c[m>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[m>>2]=(c[m>>2]|0)+(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[n>>2]=bK(c[m>>2]<<2)|0;c[o>>2]=bK(c[f>>2]<<2)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}m=(c[(c[e>>2]|0)+8>>2]|0)!=0;c[j>>2]=0;if(m){while(1){s=c[e>>2]|0;if((c[j>>2]|0)>=(c[f>>2]|0))break;ss(s,c[j>>2]|0,c[o>>2]|0);c[p>>2]=(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0)-1;c[k>>2]=1;while(1){if((c[k>>2]|0)>(c[p>>2]|0))break;c[r>>2]=c[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+4>>2]|0)+(c[k>>2]<<2)>>2];c[q>>2]=(c[(c[e>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)-1;m=(c[p>>2]|0)+(c[q>>2]|0)|0;t=+(m-((rs(c[e>>2]|0,c[j>>2]|0,c[r>>2]|0,c[o>>2]|0)|0)<<1)|0);if(t>+g[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]|0)+(c[k>>2]<<2)>>2]){m=(c[p>>2]|0)+(c[q>>2]|0)|0;u=+(m-((rs(c[e>>2]|0,c[j>>2]|0,c[r>>2]|0,c[o>>2]|0)|0)<<1)|0)}else u=+g[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]|0)+(c[k>>2]<<2)>>2];g[(c[n>>2]|0)+(c[k>>2]<<2)>>2]=u;c[k>>2]=(c[k>>2]|0)+1}ts(c[e>>2]|0,c[j>>2]|0,c[o>>2]|0);c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]<<2);c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=Gm(s,c[f>>2]|0)|0}else{while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]=c[n>>2];ss(c[e>>2]|0,c[j>>2]|0,c[o>>2]|0);c[p>>2]=(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]|0)-1;c[k>>2]=1;while(1){if((c[k>>2]|0)>(c[p>>2]|0))break;c[r>>2]=c[(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+4>>2]|0)+(c[k>>2]<<2)>>2];c[q>>2]=(c[(c[e>>2]|0)+((c[r>>2]|0)*20|0)>>2]|0)-1;u=+(c[p>>2]|0)+ +(c[q>>2]|0);t=u-+((rs(c[e>>2]|0,c[j>>2]|0,c[r>>2]|0,c[o>>2]|0)|0)<<1|0);g[(c[n>>2]|0)+(c[k>>2]<<2)>>2]=t;c[k>>2]=(c[k>>2]|0)+1}ts(c[e>>2]|0,c[j>>2]|0,c[o>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]<<2);c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=Dm(c[e>>2]|0,c[f>>2]|0)|0}O4(c[o>>2]|0);O4(c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(!(c[l>>2]|0)){v=c[h>>2]|0;i=d;return v|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]=c[l>>2];c[l>>2]=(c[l>>2]|0)+(c[(c[e>>2]|0)+((c[j>>2]|0)*20|0)>>2]<<2);c[j>>2]=(c[j>>2]|0)+1}v=c[h>>2]|0;i=d;return v|0}function Fm(b,e,f,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0.0,xa=0,ya=0,za=0,Aa=0.0;p=i;i=i+336|0;q=p+168|0;r=p+160|0;s=p+152|0;t=p+144|0;u=p+136|0;v=p+128|0;w=p+120|0;x=p+112|0;y=p+104|0;z=p+96|0;A=p+88|0;B=p+80|0;C=p+72|0;D=p+64|0;E=p+56|0;F=p+320|0;G=p+316|0;H=p+312|0;I=p+308|0;J=p+304|0;K=p+300|0;L=p+296|0;M=p+292|0;O=p+288|0;P=p+284|0;Q=p+280|0;R=p+48|0;S=p+276|0;T=p+272|0;U=p+268|0;V=p+264|0;W=p+260|0;X=p+256|0;Y=p+252|0;Z=p+248|0;$=p+40|0;aa=p+244|0;ba=p+240|0;ca=p+236|0;da=p+232|0;ea=p+228|0;fa=p+32|0;ga=p+24|0;ha=p+324|0;ia=p+224|0;ja=p+220|0;ka=p+216|0;la=p+212|0;ma=p+208|0;na=p+204|0;oa=p+200|0;pa=p+196|0;qa=p+16|0;ra=p+8|0;sa=p;ta=p+192|0;c[G>>2]=b;c[H>>2]=e;c[I>>2]=f;c[J>>2]=j;c[K>>2]=k;c[L>>2]=l;c[M>>2]=m;c[O>>2]=n;c[P>>2]=o;h[R>>3]=.001;c[S>>2]=0;c[W>>2]=0;c[X>>2]=0;c[ba>>2]=0;c[ca>>2]=0;c[ia>>2]=0;c[ja>>2]=0;c[ka>>2]=0;c[la>>2]=0;c[ma>>2]=c[M>>2]&4;c[na>>2]=c[M>>2]&3;if((c[P>>2]|0)<0){c[F>>2]=0;ua=c[F>>2]|0;i=p;return ua|0}if(a[138998]|0)_N();do if((c[O>>2]|0)!=2){if((c[O>>2]|0)==1){c[S>>2]=Bm(c[G>>2]|0,c[H>>2]|0)|0;if(c[S>>2]|0)break;$z(0,130723,D)|0;$z(3,130772,C)|0;break}if((c[O>>2]|0)==3){if(a[138998]|0)Y2(c[24742]|0,130825,B)|0;c[S>>2]=Cm(c[G>>2]|0,c[H>>2]|0)|0}}else{if(a[138998]|0)Y2(c[24742]|0,130698,E)|0;c[S>>2]=Em(c[G>>2]|0,c[H>>2]|0)|0}while(0);do if(!(c[S>>2]|0)){if(a[138998]|0)Y2(c[24742]|0,130847,A)|0;E=c[G>>2]|0;B=c[H>>2]|0;if(c[(c[G>>2]|0)+8>>2]|0){c[S>>2]=Gm(E,B)|0;break}else{c[S>>2]=Dm(E,B)|0;break}}while(0);if(a[138998]|0){A=c[24742]|0;h[z>>3]=+$N();Y2(A,130874,z)|0;Y2(c[24742]|0,130886,y)|0;_N()}a:do if((c[ma>>2]|0)!=0&(c[H>>2]|0)>1){c[pa>>2]=0;if((Hm(c[G>>2]|0,c[H>>2]|0,c[I>>2]|0,c[J>>2]|0,c[L>>2]|0,c[ma>>2]|0,c[na>>2]|0,(c[O>>2]|0)==2&1,50,0,40)|0)<0){c[Q>>2]=-1;break}c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[L>>2]|0)){va=42;break a}h[qa>>3]=1.0;c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[H>>2]|0))break;wa=+N(+(+h[(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)>>3]));if(wa>+h[qa>>3])h[qa>>3]=+N(+(+h[(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)>>3]));c[U>>2]=(c[U>>2]|0)+1}c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[H>>2]|0))break;y=(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)|0;h[y>>3]=+h[y>>3]/+h[qa>>3];c[U>>2]=(c[U>>2]|0)+1}c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[H>>2]|0))break;wa=(+r2()-.5)*1.0e-06;y=(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)|0;h[y>>3]=+h[y>>3]+wa;c[U>>2]=(c[U>>2]|0)+1}at(c[H>>2]|0,c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0);c[T>>2]=(c[T>>2]|0)+1}}else{c[pa>>2]=Am(c[G>>2]|0,c[H>>2]|0,c[L>>2]|0,c[J>>2]|0,c[K>>2]|0)|0;va=42}while(0);b:do if((va|0)==42){if(a[138998]|0){G=c[24742]|0;h[x>>3]=+$N();Y2(G,130912,x)|0}if((c[H>>2]|0)==1|(c[P>>2]|0)==0){c[F>>2]=0;ua=c[F>>2]|0;i=p;return ua|0}if(a[138998]|0){G=c[24742]|0;h[w>>3]=+$N();Y2(G,130874,w)|0;Y2(c[24742]|0,127020,v)|0;_N()}c[W>>2]=bK(c[L>>2]<<2)|0;c[X>>2]=bK((_(c[L>>2]|0,c[H>>2]|0)|0)<<2)|0;c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[L>>2]|0))break;G=(c[X>>2]|0)+((_(c[T>>2]|0,c[H>>2]|0)|0)<<2)|0;c[(c[W>>2]|0)+(c[T>>2]<<2)>>2]=G;c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[H>>2]|0))break;g[(c[(c[W>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<2)>>2]=+h[(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)>>3];c[U>>2]=(c[U>>2]|0)+1}c[T>>2]=(c[T>>2]|0)+1}c:do if(c[na>>2]|0)g[Y>>2]=+(c[H>>2]|0)*+((c[H>>2]|0)-1|0)/2.0;else{g[Y>>2]=0.0;c[Z>>2]=0;c[T>>2]=0;while(1){if((c[T>>2]|0)>=((c[H>>2]|0)-1|0))break c;c[Z>>2]=(c[Z>>2]|0)+1;c[U>>2]=1;while(1){if((c[U>>2]|0)>=((c[H>>2]|0)-(c[T>>2]|0)|0))break;g[Y>>2]=+g[Y>>2]+ +g[(c[S>>2]|0)+(c[Z>>2]<<2)>>2];c[U>>2]=(c[U>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+1}c[T>>2]=(c[T>>2]|0)+1}}while(0);c[aa>>2]=(_(c[H>>2]|0,(c[H>>2]|0)+1|0)|0)/2|0;c[ba>>2]=c[S>>2];if((c[na>>2]|0)==2)wt(c[aa>>2]|0,c[ba>>2]|0);xt(c[aa>>2]|0,c[ba>>2]|0);c[Z>>2]=0;c[ca>>2]=bK(c[H>>2]<<3)|0;$4(c[ca>>2]|0,0,c[H>>2]<<3|0)|0;c[T>>2]=0;while(1){if((c[T>>2]|0)>=((c[H>>2]|0)-1|0))break;h[$>>3]=0.0;c[Z>>2]=(c[Z>>2]|0)+1;c[U>>2]=1;while(1){if((c[U>>2]|0)>=((c[H>>2]|0)-(c[T>>2]|0)|0))break;g[ea>>2]=+g[(c[ba>>2]|0)+(c[Z>>2]<<2)>>2];h[$>>3]=+h[$>>3]+ +g[ea>>2];G=(c[ca>>2]|0)+((c[T>>2]|0)+(c[U>>2]|0)<<3)|0;h[G>>3]=+h[G>>3]-+g[ea>>2];c[U>>2]=(c[U>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+1}G=(c[ca>>2]|0)+(c[T>>2]<<3)|0;h[G>>3]=+h[G>>3]-+h[$>>3];c[T>>2]=(c[T>>2]|0)+1}c[da>>2]=c[H>>2];c[Z>>2]=0;c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[H>>2]|0))break;g[(c[ba>>2]|0)+(c[Z>>2]<<2)>>2]=+h[(c[ca>>2]|0)+(c[T>>2]<<3)>>3];c[T>>2]=(c[T>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+(c[da>>2]|0);c[da>>2]=(c[da>>2]|0)+-1}c[ia>>2]=bK(c[L>>2]<<2)|0;G=bK((_(c[L>>2]|0,c[H>>2]|0)|0)<<2)|0;c[c[ia>>2]>>2]=G;c[V>>2]=1;while(1){if((c[V>>2]|0)>=(c[L>>2]|0))break;G=(c[c[ia>>2]>>2]|0)+((_(c[V>>2]|0,c[H>>2]|0)|0)<<2)|0;c[(c[ia>>2]|0)+(c[V>>2]<<2)>>2]=G;c[V>>2]=(c[V>>2]|0)+1}c[ja>>2]=bK(c[H>>2]<<2)|0;c[ka>>2]=bK(c[H>>2]<<2)|0;c[la>>2]=0;c[la>>2]=bK(c[aa>>2]<<2)|0;h[fa>>3]=1797693134862315708145274.0e284;if(a[138998]|0){G=c[24742]|0;h[u>>3]=+$N();Y2(G,130874,u)|0;Y2(c[24742]|0,127047,t)|0;_N()}a[ha>>0]=0;c[Q>>2]=0;d:while(1){if((c[Q>>2]|0)>=(c[P>>2]|0)){va=132;break}if(!((a[ha>>0]|0)!=0^1)){va=132;break}$4(c[ca>>2]|0,0,c[H>>2]<<3|0)|0;if((c[na>>2]|0)==2)yt(c[aa>>2]|0,c[ba>>2]|0,c[la>>2]|0);c[Z>>2]=0;c[T>>2]=0;while(1){xa=c[H>>2]|0;if((c[T>>2]|0)>=((c[H>>2]|0)-1|0))break;c[oa>>2]=xa-(c[T>>2]|0)-1;ut(c[oa>>2]|0,0.0,c[ka>>2]|0);c[V>>2]=0;while(1){ya=c[oa>>2]|0;if((c[V>>2]|0)>=(c[L>>2]|0))break;ut(ya,+g[(c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0)+(c[T>>2]<<2)>>2],c[ja>>2]|0);pt(c[oa>>2]|0,c[ja>>2]|0,-1.0,(c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0)+(c[T>>2]<<2)+4|0);wt(c[oa>>2]|0,c[ja>>2]|0);ot(c[oa>>2]|0,c[ja>>2]|0,c[ka>>2]|0,c[ka>>2]|0);c[V>>2]=(c[V>>2]|0)+1}zt(ya,c[ka>>2]|0);c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[oa>>2]|0))break;if(!(!(+g[(c[ka>>2]|0)+(c[U>>2]<<2)>>2]>=3402823466385288598117041.0e14)?!(+g[(c[ka>>2]|0)+(c[U>>2]<<2)>>2]<0.0):0))g[(c[ka>>2]|0)+(c[U>>2]<<2)>>2]=0.0;c[U>>2]=(c[U>>2]|0)+1}c[Z>>2]=(c[Z>>2]|0)+1;h[$>>3]=0.0;G=(c[na>>2]|0)==2;c[U>>2]=0;e:do if(G)while(1){if((c[U>>2]|0)>=(c[oa>>2]|0))break e;qa=(c[la>>2]|0)+(c[Z>>2]<<2)|0;wa=+g[qa>>2]*+g[(c[ka>>2]|0)+(c[U>>2]<<2)>>2];g[qa>>2]=wa;g[ea>>2]=wa;h[$>>3]=+h[$>>3]+ +g[ea>>2];qa=(c[ca>>2]|0)+((c[T>>2]|0)+(c[U>>2]|0)+1<<3)|0;h[qa>>3]=+h[qa>>3]-+g[ea>>2];c[U>>2]=(c[U>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+1}else while(1){if((c[U>>2]|0)>=(c[oa>>2]|0))break e;wa=+g[(c[ka>>2]|0)+(c[U>>2]<<2)>>2];g[(c[la>>2]|0)+(c[Z>>2]<<2)>>2]=wa;g[ea>>2]=wa;h[$>>3]=+h[$>>3]+ +g[ea>>2];qa=(c[ca>>2]|0)+((c[T>>2]|0)+(c[U>>2]|0)+1<<3)|0;h[qa>>3]=+h[qa>>3]-+g[ea>>2];c[U>>2]=(c[U>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+1}while(0);G=(c[ca>>2]|0)+(c[T>>2]<<3)|0;h[G>>3]=+h[G>>3]-+h[$>>3];c[T>>2]=(c[T>>2]|0)+1}c[da>>2]=xa;c[Z>>2]=0;c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[H>>2]|0))break;g[(c[la>>2]|0)+(c[Z>>2]<<2)>>2]=+h[(c[ca>>2]|0)+(c[T>>2]<<3)>>3];c[T>>2]=(c[T>>2]|0)+1;c[Z>>2]=(c[Z>>2]|0)+(c[da>>2]|0);c[da>>2]=(c[da>>2]|0)+-1}c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[L>>2]|0))break;mt(c[la>>2]|0,c[H>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[(c[ia>>2]|0)+(c[V>>2]<<2)>>2]|0);c[V>>2]=(c[V>>2]|0)+1}h[ga>>3]=0.0;c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[L>>2]|0))break;wa=+st(c[H>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[(c[ia>>2]|0)+(c[V>>2]<<2)>>2]|0);h[ga>>3]=+h[ga>>3]+wa;c[V>>2]=(c[V>>2]|0)+1}h[ga>>3]=+h[ga>>3]*2.0;h[ga>>3]=+h[ga>>3]+ +g[Y>>2];c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[L>>2]|0))break;mt(c[ba>>2]|0,c[H>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[ja>>2]|0);wa=+st(c[H>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[ja>>2]|0);h[ga>>3]=+h[ga>>3]-wa;c[V>>2]=(c[V>>2]|0)+1}h[ra>>3]=+h[fa>>3]-+h[ga>>3];wa=+h[ra>>3];h[sa>>3]=+h[ra>>3]>=0.0?wa:-wa;if(+h[sa>>3]/+h[fa>>3]<+h[4247])za=1;else za=+h[ga>>3]<+h[4247];a[ha>>0]=za&1;h[fa>>3]=+h[ga>>3];c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[L>>2]|0))break;f:do if(!(c[pa>>2]|0)){if((Tq(c[ba>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[(c[ia>>2]|0)+(c[V>>2]<<2)>>2]|0,c[H>>2]|0,+h[R>>3],c[H>>2]|0)|0)<0){va=125;break d}}else{rt(c[H>>2]|0,c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0,c[ja>>2]|0);if((Tq(c[ba>>2]|0,c[ja>>2]|0,c[(c[ia>>2]|0)+(c[V>>2]<<2)>>2]|0,c[H>>2]|0,+h[R>>3],c[H>>2]|0)|0)<0){va=118;break d}c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[H>>2]|0))break f;c[ta>>2]=c[(c[K>>2]|0)+(c[T>>2]<<2)>>2];if((d[(c[(c[ta>>2]|0)+8>>2]|0)+119>>0]|0)<=1)g[(c[(c[W>>2]|0)+(c[V>>2]<<2)>>2]|0)+(c[T>>2]<<2)>>2]=+g[(c[ja>>2]|0)+(c[T>>2]<<2)>>2];c[T>>2]=(c[T>>2]|0)+1}}while(0);c[V>>2]=(c[V>>2]|0)+1}do if(d[138998]|0){if((c[Q>>2]|0)%5|0)break;G=c[24742]|0;h[s>>3]=+h[ga>>3];Y2(G,127347,s)|0;if(((c[Q>>2]|0)+5|0)%50|0)break;Y2(c[24742]|0,193392,r)|0}while(0);c[Q>>2]=(c[Q>>2]|0)+1}if((va|0)==118){c[Q>>2]=-1;break}else if((va|0)==125){c[Q>>2]=-1;break}else if((va|0)==132){if(a[138998]|0){G=c[24742]|0;wa=+Im(c[W>>2]|0,c[ba>>2]|0,c[L>>2]|0,c[H>>2]|0,c[na>>2]|0);qa=c[Q>>2]|0;Aa=+$N();h[q>>3]=wa;c[q+8>>2]=qa;h[q+16>>3]=Aa;Y2(G,127063,q)|0}c[T>>2]=0;while(1){if((c[T>>2]|0)>=(c[L>>2]|0))break b;c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[H>>2]|0))break;h[(c[(c[J>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<3)>>3]=+g[(c[(c[W>>2]|0)+(c[T>>2]<<2)>>2]|0)+(c[U>>2]<<2)>>2];c[U>>2]=(c[U>>2]|0)+1}c[T>>2]=(c[T>>2]|0)+1}}}while(0);O4(c[X>>2]|0);O4(c[W>>2]|0);O4(c[ba>>2]|0);if(c[ia>>2]|0){O4(c[c[ia>>2]>>2]|0);O4(c[ia>>2]|0)}O4(c[ja>>2]|0);O4(c[ka>>2]|0);O4(c[ca>>2]|0);O4(c[la>>2]|0);c[F>>2]=c[Q>>2];ua=c[F>>2]|0;i=p;return ua|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;h=d+32|0;j=d+28|0;k=d+24|0;l=d+20|0;m=d+16|0;n=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=bK(((_(c[f>>2]|0,(c[f>>2]|0)+1|0)|0)/2|0)<<2)|0;c[m>>2]=bK(c[f>>2]<<2)|0;Nq(n,c[f>>2]|0);c[k>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;xr(c[h>>2]|0,c[e>>2]|0,c[f>>2]|0,c[m>>2]|0);c[j>>2]=c[h>>2];while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;o=+g[(c[m>>2]|0)+(c[j>>2]<<2)>>2];b=c[k>>2]|0;c[k>>2]=b+1;g[(c[l>>2]|0)+(b<<2)>>2]=o;c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1}O4(c[m>>2]|0);Oq(n);i=d;return c[l>>2]|0}function Hm(b,d,e,f,j,k,l,m,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0.0,wa=0,xa=0,ya=0,za=0;q=i;i=i+256|0;r=q+248|0;s=q+244|0;t=q+236|0;u=q+232|0;v=q+228|0;w=q+224|0;x=q+220|0;y=q+216|0;z=q+212|0;A=q+208|0;B=q+204|0;C=q+40|0;D=q+200|0;E=q+196|0;F=q+192|0;G=q+188|0;H=q+184|0;I=q+180|0;J=q+176|0;K=q+172|0;L=q+168|0;M=q+164|0;O=q+160|0;P=q+144|0;Q=q+136|0;R=q+132|0;S=q+128|0;T=q+124|0;U=q+120|0;V=q+116|0;W=q+112|0;X=q+108|0;Y=q+104|0;Z=q+100|0;$=q+96|0;aa=q+92|0;ba=q+88|0;ca=q+84|0;da=q+80|0;ea=q+76|0;fa=q+72|0;ga=q+68|0;ha=q+32|0;ia=q+64|0;ja=q+60|0;ka=q+56|0;la=q+24|0;ma=q+52|0;na=q+48|0;oa=q+16|0;pa=q+8|0;qa=q;ra=q+252|0;c[r>>2]=b;c[s>>2]=d;c[q+240>>2]=e;c[t>>2]=f;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[y>>2]=n;c[z>>2]=o;c[A>>2]=p;h[C>>3]=.001;c[H>>2]=50<(c[s>>2]|0)?50:c[s>>2]|0;c[I>>2]=cK(c[H>>2]<<2)|0;c[J>>2]=cK((_(c[H>>2]|0,c[s>>2]|0)|0)<<3)|0;c[Y>>2]=0;c[Z>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[H>>2]|0))break;p=(c[J>>2]|0)+((_(c[D>>2]|0,c[s>>2]|0)|0)<<3)|0;c[(c[I>>2]|0)+(c[D>>2]<<2)>>2]=p;c[D>>2]=(c[D>>2]|0)+1}if((c[s>>2]|0)<(((c[H>>2]<<1|0)>50?c[H>>2]<<1:50)|0))sa=c[s>>2]|0;else sa=(c[H>>2]<<1|0)>50?c[H>>2]<<1:50;c[K>>2]=sa;c[L>>2]=0;Mr(c[r>>2]|0,c[s>>2]|0,c[K>>2]|0,L,c[x>>2]|0);Nr(c[L>>2]|0,c[s>>2]|0,c[K>>2]|0);Ht(c[L>>2]|0,c[K>>2]|0,c[s>>2]|0,c[I>>2]|0,c[H>>2]|0);O4(c[c[L>>2]>>2]|0);O4(c[L>>2]|0);c[M>>2]=cK(c[s>>2]<<2)|0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;c[(c[M>>2]|0)+(c[D>>2]<<2)>>2]=-1;c[D>>2]=(c[D>>2]|0)+1}c[O>>2]=0;Nq(P,c[s>>2]|0);c[Q>>2]=c[(c[r>>2]|0)+8>>2];if(c[x>>2]|0)ws(c[r>>2]|0,c[s>>2]|0);c[R>>2]=0;c[S>>2]=cK(c[s>>2]<<2)|0;a:do if(c[A>>2]|0){c[O>>2]=cK(c[A>>2]<<2)|0;c[U>>2]=cK((_(c[s>>2]|0,c[A>>2]|0)|0)<<2)|0;c[R>>2]=cK(c[A>>2]<<2)|0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[A>>2]|0))break;L=(c[U>>2]|0)+((_(c[D>>2]|0,c[s>>2]|0)|0)<<2)|0;c[(c[R>>2]|0)+(c[D>>2]<<2)>>2]=L;c[D>>2]=(c[D>>2]|0)+1}L=t2()|0;c[G>>2]=(L|0)%(c[s>>2]|0)|0;c[(c[M>>2]|0)+(c[G>>2]<<2)>>2]=0;c[c[O>>2]>>2]=c[G>>2];L=c[G>>2]|0;K=c[r>>2]|0;sa=c[s>>2]|0;J=c[c[R>>2]>>2]|0;if(c[x>>2]|0)vr(L,K,sa,J);else Iq(L,K,sa,J,P);c[T>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;c[(c[S>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[c[R>>2]>>2]|0)+(c[D>>2]<<2)>>2];if((c[(c[S>>2]|0)+(c[D>>2]<<2)>>2]|0)>(c[T>>2]|0)){c[G>>2]=c[D>>2];c[T>>2]=c[(c[S>>2]|0)+(c[D>>2]<<2)>>2]}c[D>>2]=(c[D>>2]|0)+1}c[D>>2]=1;while(1){if((c[D>>2]|0)>=(c[A>>2]|0))break a;c[(c[M>>2]|0)+(c[G>>2]<<2)>>2]=c[D>>2];c[(c[O>>2]|0)+(c[D>>2]<<2)>>2]=c[G>>2];J=c[G>>2]|0;sa=c[r>>2]|0;K=c[s>>2]|0;L=c[(c[R>>2]|0)+(c[D>>2]<<2)>>2]|0;if(c[x>>2]|0)vr(J,sa,K,L);else Iq(J,sa,K,L,P);c[T>>2]=0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[s>>2]|0))break;L=c[E>>2]|0;if((c[(c[S>>2]|0)+(c[E>>2]<<2)>>2]|0)<(c[(c[(c[R>>2]|0)+(c[D>>2]<<2)>>2]|0)+(c[E>>2]<<2)>>2]|0))ta=c[(c[S>>2]|0)+(L<<2)>>2]|0;else ta=c[(c[(c[R>>2]|0)+(c[D>>2]<<2)>>2]|0)+(L<<2)>>2]|0;c[(c[S>>2]|0)+(c[E>>2]<<2)>>2]=ta;if((c[(c[S>>2]|0)+(c[E>>2]<<2)>>2]|0)<=(c[T>>2]|0)){if((c[(c[S>>2]|0)+(c[E>>2]<<2)>>2]|0)==(c[T>>2]|0)?(L=t2()|0,((L|0)%((c[E>>2]|0)+1|0)|0|0)==0):0)ua=37}else ua=37;if((ua|0)==37){ua=0;c[G>>2]=c[E>>2];c[T>>2]=c[(c[S>>2]|0)+(c[E>>2]<<2)>>2]}c[E>>2]=(c[E>>2]|0)+1}c[D>>2]=(c[D>>2]|0)+1}}while(0);c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;c[(c[S>>2]|0)+(c[D>>2]<<2)>>2]=-1;c[D>>2]=(c[D>>2]|0)+1}c[V>>2]=cK(c[s>>2]<<2)|0;c[W>>2]=cK(c[s>>2]<<4)|0;c[X>>2]=0;c[ca>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;b:do if((c[(c[M>>2]|0)+(c[D>>2]<<2)>>2]|0)>=0){T=cK((c[s>>2]|0)-1<<2)|0;c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]=T;T=cK((c[s>>2]|0)-1<<2)|0;c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]=T;c[(c[W>>2]|0)+(c[D>>2]<<4)>>2]=(c[s>>2]|0)-1;c[ca>>2]=(c[ca>>2]|0)+((c[s>>2]|0)-1);a[(c[W>>2]|0)+(c[D>>2]<<4)+12>>0]=1;c[ba>>2]=c[(c[M>>2]|0)+(c[D>>2]<<2)>>2];c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[D>>2]|0))break;c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]|0)+(c[E>>2]<<2)>>2]=c[E>>2];c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[(c[R>>2]|0)+(c[ba>>2]<<2)>>2]|0)+(c[E>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=(c[D>>2]|0)+1;while(1){if((c[E>>2]|0)>=(c[s>>2]|0))break b;c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]|0)+((c[E>>2]|0)-1<<2)>>2]=c[E>>2];c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]|0)+((c[E>>2]|0)-1<<2)>>2]=c[(c[(c[R>>2]|0)+(c[ba>>2]<<2)>>2]|0)+(c[E>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}}else{c:do if((c[z>>2]|0)>0){T=c[D>>2]|0;ta=c[r>>2]|0;U=c[s>>2]|0;L=c[S>>2]|0;K=c[z>>2]|0;sa=c[V>>2]|0;if(c[x>>2]|0)c[$>>2]=wr(T,ta,U,L,K,sa)|0;else c[$>>2]=Mq(T,ta,U,L,P,K,sa)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[$>>2]|0))break c;if((c[(c[M>>2]|0)+(c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]|0)<0?(c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]|0)!=(c[D>>2]|0):0){c[E>>2]=(c[E>>2]|0)+1;continue}c[(c[S>>2]|0)+(c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]=-1;sa=(c[$>>2]|0)+-1|0;c[$>>2]=sa;c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[V>>2]|0)+(sa<<2)>>2]}}else c[$>>2]=0;while(0);c[aa>>2]=(c[$>>2]|0)+(c[A>>2]|0);if((c[aa>>2]|0)>(c[X>>2]|0)){c[X>>2]=_((c[z>>2]|0)+1|0,c[s>>2]|0)|0;c[Y>>2]=cK(c[X>>2]<<2)|0;c[Z>>2]=cK(c[X>>2]<<2)|0;a[(c[W>>2]|0)+(c[D>>2]<<4)+12>>0]=1}else a[(c[W>>2]|0)+(c[D>>2]<<4)+12>>0]=0;c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]=c[Y>>2];c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]=c[Z>>2];c[(c[W>>2]|0)+(c[D>>2]<<4)>>2]=c[aa>>2];c[ca>>2]=(c[ca>>2]|0)+(c[aa>>2]|0);c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[$>>2]|0))break;c[(c[Y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[V>>2]|0)+(c[E>>2]<<2)>>2];c[(c[Z>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[S>>2]|0)+(c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2];c[(c[S>>2]|0)+(c[(c[V>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]=-1;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[$>>2];while(1){if((c[E>>2]|0)>=(c[aa>>2]|0))break;c[ba>>2]=(c[E>>2]|0)-(c[$>>2]|0);c[(c[Y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[O>>2]|0)+(c[ba>>2]<<2)>>2];c[(c[Z>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[(c[R>>2]|0)+(c[ba>>2]<<2)>>2]|0)+(c[D>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}c[Y>>2]=(c[Y>>2]|0)+(c[aa>>2]<<2);c[Z>>2]=(c[Z>>2]|0)+(c[aa>>2]<<2);c[X>>2]=(c[X>>2]|0)-(c[aa>>2]|0)}while(0);c[D>>2]=(c[D>>2]|0)+1}O4(c[S>>2]|0);O4(c[V>>2]|0);if(c[R>>2]|0){O4(c[c[R>>2]>>2]|0);O4(c[R>>2]|0)}c[ea>>2]=cK((c[s>>2]|0)*20|0)|0;c[fa>>2]=cK((c[ca>>2]|0)+(c[s>>2]|0)<<2)|0;c[ga>>2]=cK((c[ca>>2]|0)+(c[s>>2]|0)<<2)|0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)+4>>2]=c[fa>>2];c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)+8>>2]=c[ga>>2];c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]=(c[(c[W>>2]|0)+(c[D>>2]<<4)>>2]|0)+1;c[da>>2]=(c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]|0)+-4;h[ha>>3]=0.0;ca=(c[w>>2]|0)==2;c[E>>2]=1;d:do if(ca)while(1){if((c[E>>2]|0)>=(c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]|0))break d;c[(c[fa>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]|0)+((c[E>>2]|0)-1<<2)>>2];g[(c[ga>>2]|0)+(c[E>>2]<<2)>>2]=-1.0/(+(c[(c[da>>2]|0)+(c[E>>2]<<2)>>2]|0)*+(c[(c[da>>2]|0)+(c[E>>2]<<2)>>2]|0));h[ha>>3]=+h[ha>>3]-+g[(c[ga>>2]|0)+(c[E>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}else while(1){if((c[E>>2]|0)>=(c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]|0))break d;c[(c[fa>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]|0)+((c[E>>2]|0)-1<<2)>>2];g[(c[ga>>2]|0)+(c[E>>2]<<2)>>2]=-1.0/+(c[(c[da>>2]|0)+(c[E>>2]<<2)>>2]|0);h[ha>>3]=+h[ha>>3]-+g[(c[ga>>2]|0)+(c[E>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}while(0);c[c[fa>>2]>>2]=c[D>>2];g[c[ga>>2]>>2]=+h[ha>>3];c[fa>>2]=(c[fa>>2]|0)+(c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]<<2);c[ga>>2]=(c[ga>>2]|0)+(c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]<<2);c[D>>2]=(c[D>>2]|0)+1}c[ia>>2]=cK(c[u>>2]<<2)|0;ca=cK((_(c[u>>2]|0,c[H>>2]|0)|0)<<3)|0;c[c[ia>>2]>>2]=ca;c[D>>2]=1;while(1){if((c[D>>2]|0)>=(c[u>>2]|0))break;ca=(c[c[ia>>2]>>2]|0)+((_(c[D>>2]|0,c[H>>2]|0)|0)<<3)|0;c[(c[ia>>2]|0)+(c[D>>2]<<2)>>2]=ca;c[D>>2]=(c[D>>2]|0)+1}ca=(c[v>>2]|0)!=0;c[F>>2]=0;e:do if(ca){while(1){if((c[F>>2]|0)>=(c[u>>2]|0))break;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[H>>2]|0))break;h[(c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0)+(c[D>>2]<<3)>>3]=0.0;c[D>>2]=(c[D>>2]|0)+1}c[F>>2]=(c[F>>2]|0)+1}if((c[u>>2]|0)!=2){c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[u>>2]|0))break e;h[(c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0)+(c[F>>2]<<3)>>3]=1.0;c[F>>2]=(c[F>>2]|0)+1}}h[c[c[ia>>2]>>2]>>3]=1.0;if(!((It(c[I>>2]|0,c[H>>2]|0,c[s>>2]|0,c[(c[ia>>2]|0)+4>>2]|0)|0)<<24>>24)){c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;h[(c[(c[ia>>2]|0)+4>>2]|0)+(c[F>>2]<<3)>>3]=0.0;c[F>>2]=(c[F>>2]|0)+1}h[(c[(c[ia>>2]|0)+4>>2]|0)+8>>3]=1.0}}else while(1){if((c[F>>2]|0)>=(c[u>>2]|0))break e;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[H>>2]|0))break;va=+(t2()|0)/2147483647.0;h[(c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0)+(c[D>>2]<<3)>>3]=va;c[D>>2]=(c[D>>2]|0)+1}c[F>>2]=(c[F>>2]|0)+1}while(0);c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[u>>2]|0))break;kt(c[I>>2]|0,c[s>>2]|0,c[H>>2]|0,c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0,c[(c[t>>2]|0)+(c[F>>2]<<2)>>2]|0);c[F>>2]=(c[F>>2]|0)+1}c[ja>>2]=0;c[ka>>2]=0;$s(c[ea>>2]|0,c[I>>2]|0,c[s>>2]|0,c[H>>2]|0,ja);Zs(c[I>>2]|0,c[ja>>2]|0,c[H>>2]|0,c[s>>2]|0,c[H>>2]|0,ka);O4(c[c[ja>>2]>>2]|0);O4(c[ja>>2]|0);c[ma>>2]=cK(c[s>>2]<<3)|0;c[na>>2]=cK(c[H>>2]<<3)|0;h[pa>>3]=+Jm(c[t>>2]|0,c[W>>2]|0,c[u>>2]|0,c[s>>2]|0,c[w>>2]|0);a[ra>>0]=0;c[B>>2]=0;f:while(1){if((c[B>>2]|0)>=(c[y>>2]|0))break;if(!((a[ra>>0]|0)!=0^1))break;c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[u>>2]|0))break;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;h[ha>>3]=0.0;h[(c[ma>>2]|0)+(c[D>>2]<<3)>>3]=0.0;c[da>>2]=(c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]|0)+-4;c[fa>>2]=c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)+4>>2];c[ga>>2]=c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)+8>>2];c[E>>2]=1;while(1){if((c[E>>2]|0)>=(c[(c[ea>>2]|0)+((c[D>>2]|0)*20|0)>>2]|0))break;c[G>>2]=c[(c[fa>>2]|0)+(c[E>>2]<<2)>>2];h[la>>3]=+ys(c[t>>2]|0,c[u>>2]|0,c[D>>2]|0,c[G>>2]|0);if(+h[la>>3]>1.0e-30){h[oa>>3]=-+g[(c[ga>>2]|0)+(c[E>>2]<<2)>>2]*+(c[(c[da>>2]|0)+(c[E>>2]<<2)>>2]|0)/+h[la>>3];h[ha>>3]=+h[ha>>3]-+h[oa>>3];ja=(c[ma>>2]|0)+(c[D>>2]<<3)|0;h[ja>>3]=+h[ja>>3]+ +h[oa>>3]*+h[(c[(c[t>>2]|0)+(c[F>>2]<<2)>>2]|0)+(c[G>>2]<<3)>>3]}c[E>>2]=(c[E>>2]|0)+1}ja=(c[ma>>2]|0)+(c[D>>2]<<3)|0;h[ja>>3]=+h[ja>>3]+ +h[ha>>3]*+h[(c[(c[t>>2]|0)+(c[F>>2]<<2)>>2]|0)+(c[D>>2]<<3)>>3];c[D>>2]=(c[D>>2]|0)+1}Ys(c[I>>2]|0,c[H>>2]|0,c[s>>2]|0,c[ma>>2]|0,c[na>>2]|0);if(Sq(c[ka>>2]|0,c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0,c[na>>2]|0,c[H>>2]|0,+h[C>>3],c[H>>2]|0,0)|0){ua=124;break f}kt(c[I>>2]|0,c[s>>2]|0,c[H>>2]|0,c[(c[ia>>2]|0)+(c[F>>2]<<2)>>2]|0,c[(c[t>>2]|0)+(c[F>>2]<<2)>>2]|0);c[F>>2]=(c[F>>2]|0)+1}ja=((c[B>>2]|0)%2|0|0)==0&255;a[ra>>0]=ja;if(ja<<24>>24){h[qa>>3]=+Jm(c[t>>2]|0,c[W>>2]|0,c[u>>2]|0,c[s>>2]|0,c[w>>2]|0);va=+N(+(+h[qa>>3]-+h[pa>>3]));a[ra>>0]=va/(+h[qa>>3]+1.0e-10)<+h[4247];h[pa>>3]=+h[qa>>3]}c[B>>2]=(c[B>>2]|0)+1}if((ua|0)==124)c[B>>2]=-1;O4(c[na>>2]|0);O4(c[ma>>2]|0);if(c[x>>2]|0)xs(c[r>>2]|0,c[s>>2]|0,c[Q>>2]|0);c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[s>>2]|0))break;if(a[(c[W>>2]|0)+(c[D>>2]<<4)+12>>0]|0){O4(c[(c[W>>2]|0)+(c[D>>2]<<4)+4>>2]|0);O4(c[(c[W>>2]|0)+(c[D>>2]<<4)+8>>2]|0)}c[D>>2]=(c[D>>2]|0)+1}O4(c[W>>2]|0);O4(c[(c[ea>>2]|0)+4>>2]|0);O4(c[(c[ea>>2]|0)+8>>2]|0);O4(c[ea>>2]|0);O4(c[M>>2]|0);O4(c[O>>2]|0);O4(c[c[ia>>2]>>2]|0);O4(c[ia>>2]|0);if(!(c[ka>>2]|0)){wa=c[I>>2]|0;xa=c[wa>>2]|0;O4(xa);ya=c[I>>2]|0;O4(ya);Oq(P);za=c[B>>2]|0;i=q;return za|0}O4(c[c[ka>>2]>>2]|0);O4(c[ka>>2]|0);wa=c[I>>2]|0;xa=c[wa>>2]|0;O4(xa);ya=c[I>>2]|0;O4(ya);Oq(P);za=c[B>>2]|0;i=q;return za|0}function Im(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;j=i;i=i+64|0;k=j+60|0;l=j+56|0;m=j+52|0;n=j+48|0;o=j+44|0;p=j+40|0;q=j+36|0;r=j+32|0;s=j+28|0;t=j+24|0;u=j+16|0;v=j+8|0;w=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;h[u>>3]=0.0;c[t>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=((c[n>>2]|0)-1|0))break;c[t>>2]=(c[t>>2]|0)+1;c[q>>2]=1;while(1){if((c[q>>2]|0)>=((c[n>>2]|0)-(c[p>>2]|0)|0))break;h[v>>3]=0.0;c[s>>2]=(c[p>>2]|0)+(c[q>>2]|0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;h[v>>3]=+h[v>>3]+(+g[(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[p>>2]<<2)>>2]-+g[(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2])*(+g[(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[p>>2]<<2)>>2]-+g[(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[s>>2]<<2)>>2]);c[r>>2]=(c[r>>2]|0)+1}h[v>>3]=+O(+(+h[v>>3]));x=+g[(c[l>>2]|0)+(c[t>>2]<<2)>>2];if((c[o>>2]|0)==2){h[w>>3]=1.0/+O(+x);h[u>>3]=+h[u>>3]+(+h[w>>3]-+h[v>>3])*(+h[w>>3]-+h[v>>3])*+g[(c[l>>2]|0)+(c[t>>2]<<2)>>2]}else{h[w>>3]=1.0/x;h[u>>3]=+h[u>>3]+(+h[w>>3]-+h[v>>3])*(+h[w>>3]-+h[v>>3])*+g[(c[l>>2]|0)+(c[t>>2]<<2)>>2]}c[q>>2]=(c[q>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}i=j;return +(+h[u>>3])}function Jm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;g=i;i=i+64|0;j=g+56|0;k=g+52|0;l=g+48|0;m=g+44|0;n=g+40|0;o=g+36|0;p=g+32|0;q=g+28|0;r=g+24|0;s=g+16|0;t=g+8|0;u=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;h[s>>3]=0.0;f=(c[n>>2]|0)==2;c[o>>2]=0;if(f){while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[k>>2]|0)+(c[o>>2]<<4)>>2]|0))break;c[r>>2]=c[(c[(c[k>>2]|0)+(c[o>>2]<<4)+4>>2]|0)+(c[p>>2]<<2)>>2];if((c[r>>2]|0)>(c[o>>2]|0)){h[t>>3]=0.0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[l>>2]|0))break;h[t>>3]=+h[t>>3]+(+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[o>>2]<<3)>>3]-+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3])*(+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[o>>2]<<3)>>3]-+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3]);c[q>>2]=(c[q>>2]|0)+1}h[t>>3]=+O(+(+h[t>>3]));h[u>>3]=+(c[(c[(c[k>>2]|0)+(c[o>>2]<<4)+8>>2]|0)+(c[p>>2]<<2)>>2]|0);h[s>>3]=+h[s>>3]+(+h[u>>3]-+h[t>>3])*(+h[u>>3]-+h[t>>3])/(+h[u>>3]*+h[u>>3])}c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}v=+h[s>>3];i=g;return +v}else{while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[k>>2]|0)+(c[o>>2]<<4)>>2]|0))break;c[r>>2]=c[(c[(c[k>>2]|0)+(c[o>>2]<<4)+4>>2]|0)+(c[p>>2]<<2)>>2];if((c[r>>2]|0)>(c[o>>2]|0)){h[t>>3]=0.0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[l>>2]|0))break;h[t>>3]=+h[t>>3]+(+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[o>>2]<<3)>>3]-+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3])*(+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[o>>2]<<3)>>3]-+h[(c[(c[j>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3]);c[q>>2]=(c[q>>2]|0)+1}h[t>>3]=+O(+(+h[t>>3]));h[u>>3]=+(c[(c[(c[k>>2]|0)+(c[o>>2]<<4)+8>>2]|0)+(c[p>>2]<<2)>>2]|0);h[s>>3]=+h[s>>3]+(+h[u>>3]-+h[t>>3])*(+h[u>>3]-+h[t>>3])/+h[u>>3]}c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}v=+h[s>>3];i=g;return +v}return +(0.0)}function Km(a){a=+a;var b=0,c=0;b=i;i=i+16|0;c=b;h[c>>3]=a;h[c>>3]=+O(+(+h[c>>3]));i=b;return +(+h[c>>3]*+h[c>>3]*+h[c>>3])}function Lm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[l>>3]=0.0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[13799]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3];h[l>>3]=+h[l>>3]+ +h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]*+h[(c[j>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}h[l>>3]=+O(+(+h[l>>3]));i=e;return +(+h[l>>3])}function Mm(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;j=e;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;c[k>>2]=bK(c[f>>2]<<2)|0;c[l>>2]=bK((_(c[f>>2]|0,c[g>>2]|0)|0)<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[f>>2]|0))break;c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]=c[l>>2];c[l>>2]=(c[l>>2]|0)+(c[g>>2]<<3);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;h[(c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<3)>>3]=+h[j>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}i=e;return c[k>>2]|0}function Nm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return}function Om(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0;e=i;i=i+80|0;f=e+16|0;g=e+64|0;j=e+60|0;k=e+56|0;l=e+52|0;m=e+48|0;n=e+44|0;o=e+40|0;p=e+36|0;q=e+32|0;r=e+28|0;s=e+8|0;t=e;u=e+24|0;c[g>>2]=b;c[j>>2]=d;h[s>>3]=0.0;h[t>>3]=1.0;if(a[138998]|0){d=c[24742]|0;b=wB(c[g>>2]|0)|0;v=kB(c[g>>2]|0)|0;c[f>>2]=b;c[f+4>>2]=v;Y2(d,127101,f)|0}a:do if(a[138999]|0){c[p>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[p>>2]|0))break a;c[q>>2]=aC(c[g>>2]|0,c[p>>2]|0)|0;c[n>>2]=gn(c[g>>2]|0,c[p>>2]|0,r)|0;if(c[n>>2]|0){if((c[n>>2]|0)==1){pC(c[(c[g>>2]|0)+48>>2]|0,c[p>>2]|0)|0;c[q>>2]=hn(c[g>>2]|0,c[r>>2]|0,c[q>>2]|0)|0}}else pC(c[(c[g>>2]|0)+48>>2]|0,c[p>>2]|0)|0;c[p>>2]=c[q>>2]}}while(0);c[l>>2]=kB(c[g>>2]|0)|0;c[m>>2]=lB(c[g>>2]|0)|0;c[u>>2]=qA(c[g>>2]|0,2,129937,0)|0;b:do if(!(c[j>>2]|0)){h[4247]=+(c[l>>2]|0)*.0001;JJ(c[g>>2]|0,146583,33976);q=yA(c[(c[g>>2]|0)+48>>2]|0,127130)|0;c[o>>2]=q;if(q)h[4249]=+t3(c[o>>2]|0);else h[4249]=.99;q=bK((c[l>>2]|0)+1<<2)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]=q;c[k>>2]=0;c[p>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[p>>2]|0))break b;c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2]=c[p>>2];q=c[k>>2]|0;c[k>>2]=q+1;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=q;c[(c[(c[p>>2]|0)+8>>2]|0)+124>>2]=-1;w=+jn(c[g>>2]|0,c[p>>2]|0,c[u>>2]|0,+h[t>>3]);h[s>>3]=+h[s>>3]+w;c[p>>2]=aC(c[g>>2]|0,c[p>>2]|0)|0}}else{h[4247]=.0001;JJ(c[g>>2]|0,146583,33976);c[k>>2]=0;c[p>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[p>>2]|0))break b;q=c[k>>2]|0;c[k>>2]=q+1;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=q;w=+jn(c[g>>2]|0,c[p>>2]|0,c[u>>2]|0,+h[t>>3]);h[s>>3]=+h[s>>3]+w;c[p>>2]=aC(c[g>>2]|0,c[p>>2]|0)|0}}while(0);c[o>>2]=yA(c[g>>2]|0,127138)|0;if((c[o>>2]|0)!=0?(a[c[o>>2]>>0]|0)!=0:0){w=+h[4247];if(w>+t3(c[o>>2]|0))x=+h[4247];else x=+t3(c[o>>2]|0);h[4248]=x}else h[4248]=+h[s>>3]/+(((c[m>>2]|0)>0?c[m>>2]|0:1)|0)*+O(+(+(c[l>>2]|0)))+1.0;if(!((c[13795]|0)==0&(c[j>>2]|0)==0)){y=c[l>>2]|0;i=e;return y|0}j=Mm(c[l>>2]|0,c[l>>2]|0,+h[4248])|0;c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2]=j;j=Mm(c[l>>2]|0,c[l>>2]|0,1.0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]=j;j=Mm(c[l>>2]|0,c[13799]|0,1.0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]=j;j=kn(c[l>>2]|0,c[l>>2]|0,c[13799]|0,0.0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=j;y=c[l>>2]|0;i=e;return y|0}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Om(c[d>>2]|0,0)|0;i=b;return a|0}function Qm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0);if(c[13795]|0){i=b;return}Nm(c[(c[(c[d>>2]|0)+8>>2]|0)+160>>2]|0);Nm(c[(c[(c[d>>2]|0)+8>>2]|0)+164>>2]|0);Nm(c[(c[(c[d>>2]|0)+8>>2]|0)+168>>2]|0);ln(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0);c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]=0;i=b;return}function Rm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0,m=0.0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[j>>2];while(1){if((c[k>>2]|0)>=(c[13799]|0))break;l=+(c[g>>2]|0);m=l*+r2();h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+(c[k>>2]<<3)>>3]=m;c[k>>2]=(c[k>>2]|0)+1}i=e;return}function Sm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Rm(c[e>>2]|0,c[f>>2]|0,2);i=d;return}function Tm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,j=0.0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;g=+(c[f>>2]|0);j=g*+r2();h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3]=j;j=+(c[f>>2]|0);g=j*+r2();h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=g;if((c[13799]|0)<=2){i=d;return}Sm(c[e>>2]|0,c[f>>2]|0);i=d;return}function Um(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;c[g>>2]=b;c[h>>2]=e;if(a[138998]|0)Y2(c[24742]|0,127150,f)|0;c[j>>2]=vl(c[g>>2]|0,c[h>>2]|0,2)|0;if((c[j>>2]|0)==1){i=f;return}if((c[j>>2]|0)==0&(c[12731]|0)==0){$z(0,127177,f+8|0)|0;c[12731]=1}c[k>>2]=0;while(1){j=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2]|0;c[l>>2]=j;if(!j)break;if((d[(c[(c[l>>2]|0)+8>>2]|0)+119>>0]|0)<=0)Tm(c[l>>2]|0,1);c[k>>2]=(c[k>>2]|0)+1}i=f;return}function Vm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0;e=i;i=i+160|0;f=e+104|0;g=e+148|0;j=e+144|0;k=e+140|0;l=e+136|0;m=e+132|0;n=e+88|0;o=e+128|0;p=e+124|0;q=e+8|0;r=e;s=e+120|0;t=e+116|0;u=e+112|0;c[g>>2]=b;c[j>>2]=d;if(a[138998]|0){Y2(c[24742]|0,127226,e+96|0)|0;_N()}c[p>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2];c[o>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;h[r>>3]=1.0/(+h[(c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]*+h[(c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]);d=VA(c[g>>2]|0,c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2]|0,c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[l>>2]<<2)>>2]|0,0,0)|0;c[u>>2]=d;if(d)h[r>>3]=+h[r>>3]*+h[(c[(c[u>>2]|0)+8>>2]|0)+128>>3];v=+h[r>>3];h[(c[(c[p>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]=v;h[(c[(c[p>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=v;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[13799]|0))break;h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){p=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2]|0;c[s>>2]=p;if(!p)break;c[l>>2]=0;while(1){w=c[k>>2]|0;if((c[l>>2]|0)>=(c[j>>2]|0))break;a:do if((w|0)!=(c[l>>2]|0)){c[t>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[l>>2]<<2)>>2];h[n>>3]=+Lm(c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]|0,c[(c[(c[t>>2]|0)+8>>2]|0)+132>>2]|0,q);c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[13799]|0))break a;h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]*(+h[q+(c[m>>2]<<3)>>3]-+h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]*+h[q+(c[m>>2]<<3)>>3]/+h[n>>3]);p=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[m>>2]<<3)|0;h[p>>3]=+h[p>>3]+ +h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=w+1}if(!(a[138998]|0)){i=e;return}w=c[24742]|0;h[f>>3]=+$N();Y2(w,127252,f)|0;i=e;return}function Wm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;e=i;i=i+48|0;f=e+24|0;g=e+8|0;j=e;k=e+40|0;l=e+36|0;m=e+32|0;c[k>>2]=b;c[l>>2]=d;h[4139]=+h[4247]*+h[4247];while(1){d=Xm(c[k>>2]|0,c[l>>2]|0)|0;c[m>>2]=d;if(!d)break;Ym(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)}if(a[138998]|0){m=c[24742]|0;h[j>>3]=+mn(c[k>>2]|0,c[l>>2]|0);Y2(m,127262,j)|0;j=c[24742]|0;m=c[(c[(c[k>>2]|0)+8>>2]|0)+156>>2]|0;l=(c[(c[(c[k>>2]|0)+8>>2]|0)+156>>2]|0)==(c[13798]|0)?127276:178518;n=+$N();c[g>>2]=m;c[g+4>>2]=l;h[g+8>>3]=n;Y2(j,127278,g)|0}if((c[(c[(c[k>>2]|0)+8>>2]|0)+156>>2]|0)!=(c[13798]|0)){i=e;return}g=c[13798]|0;j=wB(c[k>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=j;$z(0,127305,f)|0;i=e;return}function Xm(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+64|0;f=e+24|0;g=e+16|0;j=e+52|0;k=e+48|0;l=e+44|0;m=e+40|0;n=e+36|0;o=e+8|0;p=e;q=e+32|0;r=e+28|0;c[k>>2]=a;c[l>>2]=b;c[12732]=(c[12732]|0)+1;if((c[(c[(c[k>>2]|0)+8>>2]|0)+156>>2]|0)>=(c[13798]|0)){c[j>>2]=0;s=c[j>>2]|0;i=e;return s|0}h[p>>3]=0.0;c[q>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;c[r>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+152>>2]|0)+(c[m>>2]<<2)>>2];if((d[(c[(c[r>>2]|0)+8>>2]|0)+119>>0]|0|0)<=1){h[o>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[13799]|0))break;h[o>>3]=+h[o>>3]+ +h[(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+168>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<3)>>3]*+h[(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+168>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}if(+h[o>>3]>+h[p>>3]){c[q>>2]=c[r>>2];h[p>>3]=+h[o>>3]}}c[m>>2]=(c[m>>2]|0)+1}if(!(+h[p>>3]<+h[4139])){if(((d[138998]|0|0)!=0?((c[12732]|0)%100|0|0)==0:0)?(m=c[24742]|0,h[g>>3]=+O(+(+h[p>>3])),Y2(m,127347,g)|0,((c[12732]|0)%1e3|0|0)==0):0)Y2(c[24742]|0,193392,f)|0}else c[q>>2]=0;c[j>>2]=c[q>>2];s=c[j>>2]|0;i=e;return s|0}function Ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0;e=i;i=i+48|0;f=e+8|0;g=e+40|0;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;n=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[m>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2];if(c[12733]|0)o=eK(c[12733]|0,(_(c[13799]|0,c[13799]|0)|0)<<3)|0;else o=cK((_(c[13799]|0,c[13799]|0)|0)<<3)|0;c[12733]=o;_m(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0,c[12733]|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break;h[33120+(c[l>>2]<<3)>>3]=-+h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}qu(c[12733]|0,33200,33120,c[13799]|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break;p=+h[4249];q=(1.0-+h[4249])*2.0;r=p+q*+r2();h[33200+(c[l>>2]<<3)>>3]=r*+h[33200+(c[l>>2]<<3)>>3];o=(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+(c[l>>2]<<3)|0;h[o>>3]=+h[o>>3]+ +h[33200+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}o=(c[(c[g>>2]|0)+8>>2]|0)+156|0;c[o>>2]=(c[o>>2]|0)+1;Zm(c[g>>2]|0,c[j>>2]|0,c[m>>2]|0);if(!(wO()|0)){i=e;return}h[n>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break;r=+N(+(+h[33200+(c[l>>2]<<3)>>3]));h[n>>3]=+h[n>>3]+r;c[l>>2]=(c[l>>2]|0)+1}h[n>>3]=+O(+(+h[n>>3]));l=c[24742]|0;m=wB(c[k>>2]|0)|0;r=+h[n>>3];c[f>>2]=m;h[f+8>>3]=r;Y2(l,127353,f)|0;i=e;return}function Zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+128|0;f=e+120|0;g=e+116|0;j=e+112|0;k=e+108|0;l=e+104|0;m=e+16|0;n=e+8|0;o=e;p=e+100|0;q=e+96|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[p>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+152>>2]|0)+(c[j>>2]<<2)>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break;h[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=0.0;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[g>>2]|0))break;a:do if((c[j>>2]|0)!=(c[k>>2]|0)){c[q>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2];h[n>>3]=+Lm(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0,c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]|0,m);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break a;h[o>>3]=+h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=+h[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]*(+h[m+(c[l>>2]<<3)>>3]-+h[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+160>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]*+h[m+(c[l>>2]<<3)>>3]/+h[n>>3]);d=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[l>>2]<<3)|0;h[d>>3]=+h[d>>3]+ +h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];h[o>>3]=+h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=-+h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];d=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+168>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[l>>2]<<3)|0;h[d>>3]=+h[d>>3]+(+h[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]-+h[o>>3]);c[l>>2]=(c[l>>2]|0)+1}}while(0);c[k>>2]=(c[k>>2]|0)+1}i=e;return}function _m(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0;f=i;i=i+144|0;g=f+136|0;j=f+132|0;k=f+128|0;l=f+124|0;m=f+120|0;n=f+116|0;o=f+112|0;p=f+108|0;q=f+104|0;r=f+88|0;s=f+80|0;t=f;u=f+100|0;v=f+96|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[u>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2];c[v>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2];c[q>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[k>>2]<<2)>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[13799]|0))break;c[o>>2]=0;while(1){w=c[n>>2]|0;if((c[o>>2]|0)>=(c[13799]|0))break;e=_(w,c[13799]|0)|0;h[(c[l>>2]|0)+(e+(c[o>>2]|0)<<3)>>3]=0.0;c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=w+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;a:do if((c[k>>2]|0)!=(c[m>>2]|0)){c[p>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[m>>2]<<2)>>2];h[s>>3]=0.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[13799]|0))break;h[t+(c[o>>2]<<3)>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]|0)+(c[o>>2]<<3)>>3]-+h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+(c[o>>2]<<3)>>3];h[s>>3]=+h[s>>3]+ +h[t+(c[o>>2]<<3)>>3]*+h[t+(c[o>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}h[r>>3]=1.0/+Km(+h[s>>3]);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[13799]|0))break a;c[n>>2]=0;while(1){x=+h[(c[(c[u>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3];y=+h[(c[(c[v>>2]|0)+(c[k>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3];if((c[n>>2]|0)>=(c[o>>2]|0))break;w=_(c[n>>2]|0,c[13799]|0)|0;e=(c[l>>2]|0)+(w+(c[o>>2]|0)<<3)|0;h[e>>3]=+h[e>>3]+x*y*+h[t+(c[o>>2]<<3)>>3]*+h[t+(c[n>>2]<<3)>>3]*+h[r>>3];c[n>>2]=(c[n>>2]|0)+1}e=_(c[o>>2]|0,c[13799]|0)|0;w=(c[l>>2]|0)+(e+(c[o>>2]|0)<<3)|0;h[w>>3]=+h[w>>3]+x*(1.0-y*(+h[s>>3]-+h[t+(c[o>>2]<<3)>>3]*+h[t+(c[o>>2]<<3)>>3])*+h[r>>3]);c[o>>2]=(c[o>>2]|0)+1}}while(0);c[m>>2]=(c[m>>2]|0)+1}c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[13799]|0))break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[o>>2]|0))break;m=_(c[n>>2]|0,c[13799]|0)|0;r=_(c[o>>2]|0,c[13799]|0)|0;h[(c[l>>2]|0)+(r+(c[n>>2]|0)<<3)>>3]=+h[(c[l>>2]|0)+(m+(c[o>>2]|0)<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}i=f;return}function $m(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2];while(1){if((c[e>>2]|0)<=0){j=5;break}c[f>>2]=((c[e>>2]|0)-1|0)/2|0;c[g>>2]=c[(c[12734]|0)+(c[f>>2]<<2)>>2];if(+h[(c[(c[g>>2]|0)+8>>2]|0)+136>>3]<=+h[(c[(c[d>>2]|0)+8>>2]|0)+136>>3]){j=5;break}c[(c[12734]|0)+(c[f>>2]<<2)>>2]=c[d>>2];c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2]=c[f>>2];c[(c[12734]|0)+(c[e>>2]<<2)>>2]=c[g>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+124>>2]=c[e>>2];c[e>>2]=c[f>>2]}if((j|0)==5){i=b;return}}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;j=b+4|0;k=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2];while(1){a=(c[e>>2]<<1)+1|0;c[f>>2]=a;if((a|0)>=(c[12735]|0)){l=9;break}c[g>>2]=(c[f>>2]|0)+1;if((c[g>>2]|0)<(c[12735]|0)?+h[(c[(c[(c[12734]|0)+(c[g>>2]<<2)>>2]|0)+8>>2]|0)+136>>3]<+h[(c[(c[(c[12734]|0)+(c[f>>2]<<2)>>2]|0)+8>>2]|0)+136>>3]:0)c[j>>2]=c[g>>2];else c[j>>2]=c[f>>2];c[k>>2]=c[(c[12734]|0)+(c[j>>2]<<2)>>2];if(+h[(c[(c[d>>2]|0)+8>>2]|0)+136>>3]<=+h[(c[(c[k>>2]|0)+8>>2]|0)+136>>3]){l=9;break}c[(c[12734]|0)+(c[j>>2]<<2)>>2]=c[d>>2];c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2]=c[j>>2];c[(c[12734]|0)+(c[e>>2]<<2)>>2]=c[k>>2];c[(c[(c[k>>2]|0)+8>>2]|0)+124>>2]=c[e>>2];c[e>>2]=c[j>>2]}if((l|0)==9){i=b;return}}function bn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2]|0)>=0)La(127362,127382,645,127390);a=c[12735]|0;c[12735]=a+1;c[e>>2]=a;c[(c[(c[d>>2]|0)+8>>2]|0)+124>>2]=c[e>>2];c[(c[12734]|0)+(c[e>>2]<<2)>>2]=c[d>>2];if((c[e>>2]|0)<=0){i=b;return}$m(c[d>>2]|0);i=b;return}function cn(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;a=i;i=i+16|0;b=a+12|0;d=a+8|0;e=a+4|0;f=a;if(!(c[12735]|0)){c[b>>2]=0;g=c[b>>2]|0;i=a;return g|0}c[e>>2]=c[c[12734]>>2];h=(c[12735]|0)+-1|0;c[12735]=h;c[d>>2]=h;c[f>>2]=c[(c[12734]|0)+(c[d>>2]<<2)>>2];c[c[12734]>>2]=c[f>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+124>>2]=0;if((c[d>>2]|0)>1)an(c[f>>2]|0);c[(c[(c[e>>2]|0)+8>>2]|0)+124>>2]=-1;c[b>>2]=c[e>>2];g=c[b>>2]|0;i=a;return g|0}function dn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+8|0;g=e+24|0;j=e+20|0;k=e+16|0;c[g>>2]=b;c[j>>2]=d;c[12734]=bK((c[j>>2]|0)+1<<2)|0;if(a[138998]|0){Y2(c[24742]|0,127404,e)|0;_N()}c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;en(c[g>>2]|0,c[k>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}if(!(a[138998]|0)){l=c[12734]|0;O4(l);i=e;return}k=c[24742]|0;h[f>>3]=+$N();Y2(k,127252,f)|0;l=c[12734]|0;O4(l);i=e;return}function en(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+152>>2]|0)+(c[l>>2]<<2)>>2]|0;c[g>>2]=b;if(!b)break;h[(c[(c[g>>2]|0)+8>>2]|0)+136>>3]=+h[4248];c[l>>2]=(c[l>>2]|0)+1}c[12736]=c[f>>2];h[(c[(c[12736]|0)+8>>2]|0)+136>>3]=0.0;c[(c[(c[12736]|0)+8>>2]|0)+128>>2]=0;bn(c[12736]|0);a:while(1){f=cn()|0;c[g>>2]=f;if(!f)break;if((c[g>>2]|0)!=(c[12736]|0))fn(c[e>>2]|0,c[12736]|0,c[g>>2]|0,+h[(c[(c[g>>2]|0)+8>>2]|0)+136>>3]);c[k>>2]=TA(c[e>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))continue a;f=c[k>>2]|0;l=c[((c[c[k>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0;c[j>>2]=l;if((l|0)==(c[g>>2]|0)){l=c[k>>2]|0;c[j>>2]=c[((c[c[k>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]}h[m>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+136>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+136>>3];do if(+h[(c[(c[j>>2]|0)+8>>2]|0)+136>>3]>+h[m>>3]){h[(c[(c[j>>2]|0)+8>>2]|0)+136>>3]=+h[m>>3];if((c[(c[(c[j>>2]|0)+8>>2]|0)+124>>2]|0)>=0){$m(c[j>>2]|0);break}else{c[(c[(c[j>>2]|0)+8>>2]|0)+128>>2]=(c[(c[(c[g>>2]|0)+8>>2]|0)+128>>2]|0)+1;bn(c[j>>2]|0);break}}while(0);c[k>>2]=UA(c[e>>2]|0,c[k>>2]|0,c[g>>2]|0)|0}}i=d;return}function fn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f;m=f+12|0;n=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;c[m>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+120>>2];c[n>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2];e=+h[l>>3];h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[m>>2]<<3)>>3]=e;h[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+160>>2]|0)+(c[m>>2]<<2)>>2]|0)+(c[n>>2]<<3)>>3]=e;i=f;return}function gn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l>>2]=0;c[m>>2]=0;c[k>>2]=TA(c[g>>2]|0,c[h>>2]|0)|0;a:while(1){if(!(c[k>>2]|0)){n=15;break}d=c[k>>2]|0;b=c[k>>2]|0;do if((c[((c[c[k>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)!=(c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)){a=c[k>>2]|0;o=(c[((c[c[k>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)==(c[h>>2]|0);if((c[l>>2]|0)==1){if(o?(a=c[k>>2]|0,(c[((c[c[k>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)==(c[m>>2]|0)):0)break;a=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)!=(c[m>>2]|0)){n=9;break a}a=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)==(c[h>>2]|0))break;else{n=9;break a}}else{a=c[c[k>>2]>>2]&3;if(o){o=c[k>>2]|0;c[m>>2]=c[((a|0)==2?o:o+-32|0)+28>>2]}else{o=c[k>>2]|0;c[m>>2]=c[((a|0)==3?o:o+32|0)+28>>2]}c[c[j>>2]>>2]=c[m>>2];c[l>>2]=(c[l>>2]|0)+1;break}}while(0);c[k>>2]=UA(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0)|0}if((n|0)==9){c[f>>2]=2;p=c[f>>2]|0;i=e;return p|0}else if((n|0)==15){c[f>>2]=c[l>>2];p=c[f>>2]|0;i=e;return p|0}return 0}function hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;while(1){if(!(c[g>>2]|0))break;c[k>>2]=gn(c[f>>2]|0,c[g>>2]|0,j)|0;if(!(c[k>>2]|0)){if((c[h>>2]|0)==(c[g>>2]|0))c[h>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0;pC(c[(c[f>>2]|0)+48>>2]|0,c[g>>2]|0)|0;c[g>>2]=0;continue}if((c[k>>2]|0)!=1){c[g>>2]=0;continue}if((c[h>>2]|0)==(c[g>>2]|0))c[h>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0;pC(c[(c[f>>2]|0)+48>>2]|0,c[g>>2]|0)|0;c[g>>2]=c[j>>2]}i=e;return c[h>>2]|0}function jn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f+24|0;j=f+56|0;k=f+52|0;l=f+48|0;m=f+16|0;n=f+44|0;o=f+8|0;p=f;q=f+40|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;h[o>>3]=0.0;c[n>>2]=OA(c[j>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;k=nn(c[n>>2]|0,c[l>>2]|0,p)|0;c[q>>2]=k;if(k){if((c[q>>2]|0)==2){k=wB(c[j>>2]|0)|0;e=+h[m>>3];c[g>>2]=k;h[g+8>>3]=e;$z(3,127433,g)|0}h[p>>3]=+h[m>>3]}h[(c[(c[n>>2]|0)+8>>2]|0)+136>>3]=+h[p>>3];h[o>>3]=+h[o>>3]+ +h[p>>3];c[n>>2]=QA(c[j>>2]|0,c[n>>2]|0)|0}i=f;return +(+h[o>>3])}function kn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f+32|0;j=f+28|0;k=f+24|0;l=f;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;c[m>>2]=bK((c[g>>2]|0)+1<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;d=bK((c[j>>2]|0)+1<<2)|0;c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]=d;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[j>>2]|0))break;d=bK(c[k>>2]<<3)|0;c[(c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[o>>2]<<2)>>2]=d;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[k>>2]|0))break;h[(c[(c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[o>>2]<<2)>>2]|0)+(c[p>>2]<<3)>>3]=+h[l>>3];c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}c[(c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]|0)+(c[o>>2]<<2)>>2]=0;c[n>>2]=(c[n>>2]|0)+1}c[(c[m>>2]|0)+(c[n>>2]<<2)>>2]=0;i=f;return c[m>>2]|0}function ln(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=0;while(1){if(!(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=0;while(1){if(!(c[(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0)+(c[f>>2]<<2)>>2]|0))break;O4(c[(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}O4(c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[d>>2]|0);i=b;return}function mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+64|0;e=d+48|0;f=d+44|0;g=d+40|0;j=d+36|0;k=d+32|0;l=d+16|0;m=d+8|0;n=d;o=d+28|0;p=d+24|0;c[e>>2]=a;c[f>>2]=b;h[l>>3]=0.0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=((c[f>>2]|0)-1|0))break;c[o>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+152>>2]|0)+(c[g>>2]<<2)>>2];c[j>>2]=(c[g>>2]|0)+1;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[p>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+152>>2]|0)+(c[j>>2]<<2)>>2];h[m>>3]=0.0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[13799]|0))break;h[n>>3]=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+(c[k>>2]<<3)>>3];h[m>>3]=+h[m>>3]+ +h[n>>3]*+h[n>>3];c[k>>2]=(c[k>>2]|0)+1}h[l>>3]=+h[l>>3]+ +h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]*(+h[m>>3]+ +h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]*+h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]-+h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]*2.0*+O(+(+h[m>>3])));c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}i=d;return +(+h[l>>3])}function nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+8|0;j=f;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;if(!(c[m>>2]|0)){c[k>>2]=1;p=c[k>>2]|0;i=f;return p|0}c[o>>2]=zA(c[l>>2]|0,c[m>>2]|0)|0;if(!(a[c[o>>2]>>0]|0)){c[k>>2]=1;p=c[k>>2]|0;i=f;return p|0}m=c[o>>2]|0;c[j>>2]=c[n>>2];if(((l3(m,139001,j)|0)>=1?!(+h[c[n>>2]>>3]<0.0):0)?((c[13795]|0)!=0?1:+h[c[n>>2]>>3]!=0.0):0){c[k>>2]=0;p=c[k>>2]|0;i=f;return p|0}c[g>>2]=c[o>>2];$z(0,127460,g)|0;c[k>>2]=2;p=c[k>>2]|0;i=f;return p|0}function on(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;QO(c[e>>2]|0,2);b[(c[(c[e>>2]|0)+8>>2]|0)+176>>1]=2;c[13799]=2;rn(c[e>>2]|0);i=d;return}function pn(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=i;i=i+128|0;e=d+32|0;f=d+24|0;g=d+16|0;j=d+116|0;k=d+112|0;l=d+108|0;m=d+104|0;n=d;o=d+100|0;p=d+96|0;q=d+92|0;r=d+88|0;s=d+84|0;t=d+80|0;u=d+76|0;v=d+72|0;w=d+40|0;c[j>>2]=b;c[k>>2]=0;c[m>>2]=0;c[o>>2]=0;if(!(kB(c[j>>2]|0)|0)){i=d;return}on(c[j>>2]|0);c[l>>2]=yA(c[j>>2]|0,133229)|0;b=yA(c[j>>2]|0,133229)|0;c[l>>2]=b;do if(b){if(!(a[c[l>>2]>>0]|0)){c[m>>2]=1;break}c[k>>2]=fC(c[j>>2]|0,c[l>>2]|0,0)|0;if(!(c[k>>2]|0)){c[g>>2]=c[l>>2];$z(0,127478,g)|0;$z(3,127518,f)|0;c[m>>2]=1}}while(0);f=yA(c[j>>2]|0,178751)|0;c[l>>2]=f;if(((f|0)!=0?(a[c[l>>2]>>0]|0)!=0:0)?(f=c[l>>2]|0,c[e>>2]=n,c[e+4>>2]=n+8,l=l3(f,143965,e)|0,c[p>>2]=l,(l|0)!=0):0){if((c[p>>2]|0)==1)h[n+8>>3]=+h[n>>3];c[o>>2]=1}if(kB(c[j>>2]|0)|0){c[s>>2]=0;c[q>>2]=fG(c[j>>2]|0,u,0)|0;o=c[j>>2]|0;if((c[u>>2]|0)==1){c[s>>2]=su(o,c[k>>2]|0)|0;if(!((c[m>>2]|0)==0|(c[k>>2]|0)!=0))c[k>>2]=c[s>>2];c[t>>2]=$B(c[j>>2]|0)|0;O4(c[(c[(c[t>>2]|0)+8>>2]|0)+112>>2]|0);c[(c[(c[t>>2]|0)+8>>2]|0)+112>>2]=0;fq(c[j>>2]|0)|0;gm(c[j>>2]|0)}else{GG(o,2,8,w)|0;c[w+12>>2]=0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;c[r>>2]=c[(c[q>>2]|0)+(c[v>>2]<<2)>>2];if((c[k>>2]|0)!=0?(AC(c[r>>2]|0,c[k>>2]|0)|0)!=0:0)c[s>>2]=c[k>>2];else c[s>>2]=0;iG(c[r>>2]|0)|0;c[s>>2]=su(c[r>>2]|0,c[s>>2]|0)|0;if(!((c[m>>2]|0)==0|(c[k>>2]|0)!=0))c[k>>2]=c[s>>2];fq(c[r>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=$B(c[j>>2]|0)|0;O4(c[(c[(c[t>>2]|0)+8>>2]|0)+112>>2]|0);c[(c[(c[t>>2]|0)+8>>2]|0)+112>>2]=0;FG(c[u>>2]|0,c[q>>2]|0,c[j>>2]|0,w)|0;gm(c[j>>2]|0)}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;pC(c[j>>2]|0,c[(c[q>>2]|0)+(c[v>>2]<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+1}O4(c[q>>2]|0)}if(c[m>>2]|0){m=c[j>>2]|0;AA(m,133229,wB(c[k>>2]|0)|0)|0}nL(c[j>>2]|0);i=d;return}function qn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;if(!(c[e>>2]|0)){i=b;return}while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}sn(g);i=b;return}function rn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[g>>2]=0;c[h>>2]=kB(c[d>>2]|0)|0;c[j>>2]=bK((c[h>>2]|0)*40|0)|0;a=bK((c[h>>2]|0)+1<<2)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;ql(c[e>>2]|0);c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]=(c[j>>2]|0)+((c[g>>2]|0)*40|0);a=c[e>>2]|0;h=c[g>>2]|0;c[g>>2]=h+1;c[(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0)+(h<<2)>>2]=a;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;tn(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function sn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0);a=c[d>>2]|0;if((a|0)==(rC(c[d>>2]|0)|0)){i=b;return}PC(c[d>>2]|0,0,175049);i=b;return}function tn(a){a=a|0;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175319,176,1)|0;yO(c[d>>2]|0)|0;e=+fO(c[d>>2]|0,c[13851]|0,1.0,0.0);h[(c[(c[d>>2]|0)+8>>2]|0)+128>>3]=e;i=b;return}function un(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;wn(c[d>>2]|0);if((kB(c[d>>2]|0)|0)==0?(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)==0:0){i=b;return}Iu(c[d>>2]|0);nL(c[d>>2]|0);i=b;return}function vn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;if(!(c[e>>2]|0)){i=b;return}O4(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0);while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}xn(g);i=b;return}function wn(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;c[13816]=qA(c[e>>2]|0,1,147662,147668)|0;QO(c[e>>2]|0,2);b[(c[(c[e>>2]|0)+8>>2]|0)+176>>1]=2;c[13799]=2;yn(c[e>>2]|0,0,c[e>>2]|0);zn(c[e>>2]|0);i=d;return}function xn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0);a=c[d>>2]|0;if((a|0)==(rC(c[d>>2]|0)|0)){i=b;return}PC(c[d>>2]|0,0,175049);i=b;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[l>>2]=k;Cn(c[l>>2]|0)}else c[l>>2]=c[g>>2];c[j>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;d=(P3(wB(c[j>>2]|0)|0,145613,7)|0)!=0;b=c[j>>2]|0;if(d)yn(b,c[l>>2]|0,c[h>>2]|0);else{MC(b,175049,280,1)|0;Dn(c[l>>2]|0,c[j>>2]|0);yn(c[j>>2]|0,0,c[j>>2]|0)}c[j>>2]=HD(c[j>>2]|0)|0}if(c[g>>2]|0){i=e;return}c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]=c[k+8>>2];if(!(c[k+8>>2]|0)){i=e;return}g=eK(c[k>>2]|0,(c[k+8>>2]|0)+1<<2)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]=g;i=e;return}function zn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[g>>2]=0;c[h>>2]=bK((kB(c[d>>2]|0)|0)<<2)|0;a=bK((kB(c[d>>2]|0)|0)+1<<2)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;MC(c[e>>2]|0,175026,304,1)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]=(c[h>>2]|0)+(c[g>>2]<<2);a=c[e>>2]|0;j=c[g>>2]|0;c[g>>2]=j+1;c[(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0)+(j<<2)>>2]=a;An(c[e>>2]|0);c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;Bn(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function An(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;AA(c[d>>2]|0,147662,147668)|0;i=b;return}function Bn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175319,304,1)|0;i=b;return}function Cn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function Dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[e>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[e>>2]|0)+8>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){b=(c[e>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+10;b=eK(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+4>>2]<<2)|0;c[c[e>>2]>>2]=b}c[(c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+8>>2]<<2)>>2]=c[f>>2];i=d;return}function En(a){a=a|0;var b=0,d=0,f=0,g=0,j=0;b=i;i=i+16|0;d=b+8|0;f=b+4|0;g=b;c[d>>2]=a;Gn(c[d>>2]|0);Hn(c[d>>2]|0,0,c[d>>2]|0);In(c[d>>2]|0,0);Jn(c[d>>2]|0,0);a=c[d>>2]|0;if(!(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)){c[g>>2]=(e[(c[a+8>>2]|0)+136>>1]|0)&14;if(!(c[g>>2]|0)){j=c[d>>2]|0;nL(j);i=b;return}dm(c[d>>2]|0,c[g>>2]|0)|0;j=c[d>>2]|0;nL(j);i=b;return}c[f>>2]=$B(a)|0;while(1){if(!(c[f>>2]|0))break;h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]/72.0;h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]/72.0;c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}em(c[d>>2]|0,1);j=c[d>>2]|0;nL(j);i=b;return}function Fn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}Kn(c[d>>2]|0);i=b;return}function Gn(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;QO(c[e>>2]|0,2);b[(c[(c[e>>2]|0)+8>>2]|0)+176>>1]=2;c[13799]=2;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;ql(c[f>>2]|0);c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;MC(c[g>>2]|0,175319,176,1)|0;yO(c[g>>2]|0)|0;c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=d;return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[l>>2]=k;Pn(c[l>>2]|0)}else c[l>>2]=c[g>>2];c[j>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;d=(P3(wB(c[j>>2]|0)|0,145613,7)|0)!=0;b=c[j>>2]|0;if(d)Hn(b,c[l>>2]|0,c[h>>2]|0);else{MC(b,175049,280,1)|0;LJ(c[j>>2]|0);Qn(c[l>>2]|0,c[j>>2]|0);Hn(c[j>>2]|0,0,c[j>>2]|0)}c[j>>2]=HD(c[j>>2]|0)|0}if(c[g>>2]|0){i=e;return}c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]=c[k+8>>2];if(!(c[k+8>>2]|0)){i=e;return}g=eK(c[k>>2]|0,(c[k+8>>2]|0)+1<<2)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]=g;i=e;return}function In(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0;e=i;i=i+608|0;f=e+480|0;g=e+464|0;j=e+424|0;k=e+400|0;l=e+360|0;m=e+320|0;n=e+296|0;o=e+256|0;p=e+248|0;q=e+240|0;r=e+592|0;s=e+588|0;t=e+584|0;u=e+580|0;v=e+576|0;w=e+572|0;x=e+568|0;y=e+564|0;z=e+560|0;A=e+556|0;B=e+552|0;C=e+208|0;D=e+176|0;E=e+160|0;F=e+520|0;G=e+512|0;H=e+152|0;I=e+508|0;J=e+504|0;K=e+500|0;L=e+496|0;M=e+136|0;N=e+120|0;O=e+104|0;P=e+88|0;Q=e+80|0;R=e+64|0;S=e+48|0;T=e+32|0;U=e+16|0;V=e;c[r>>2]=a;c[s>>2]=b;c[x>>2]=0;c[J>>2]=0;c[K>>2]=0;c[L>>2]=c[(c[r>>2]|0)+48>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);b=c[24742]|0;c[q>>2]=wB(c[r>>2]|0)|0;Y2(b,127816,q)|0}c[t>>2]=1;while(1){if((c[t>>2]|0)>(c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]|0))break;c[z>>2]=c[(c[(c[(c[r>>2]|0)+8>>2]|0)+184>>2]|0)+(c[t>>2]<<2)>>2];In(c[z>>2]|0,(c[s>>2]|0)+1|0);q=kB(c[z>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+q;c[t>>2]=(c[t>>2]|0)+1}c[w>>2]=kB(c[r>>2]|0)|0;c[v>>2]=(c[w>>2]|0)-(c[x>>2]|0)+(c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]|0);if((c[v>>2]|0)==0?(c[(c[(c[r>>2]|0)+8>>2]|0)+12>>2]|0)==0:0){h[(c[(c[r>>2]|0)+8>>2]|0)+16+8>>3]=0.0;h[(c[(c[r>>2]|0)+8>>2]|0)+16>>3]=0.0;h[(c[(c[r>>2]|0)+8>>2]|0)+16+16+8>>3]=18.0;h[(c[(c[r>>2]|0)+8>>2]|0)+16+16>>3]=18.0;i=e;return}c[G>>2]=GG(c[r>>2]|0,4,4,F)|0;if((c[G>>2]|0)>>>0<3)c[F+16>>2]=3;do if((c[F+16>>2]|0)==4?(c[F+28>>2]&2|0)!=0:0){c[J>>2]=qA(c[L>>2]|0,0,136869,0)|0;c[K>>2]=qA(c[L>>2]|0,1,136869,0)|0;if((c[J>>2]|0)!=0|(c[K>>2]|0)!=0){c[F+24>>2]=bK(c[v>>2]|0)|0;break}else{c[p>>2]=wB(c[r>>2]|0)|0;$z(0,127607,p)|0;break}}while(0);c[A>>2]=bK(c[v>>2]<<5)|0;c[I>>2]=bK(c[v>>2]<<2)|0;c[u>>2]=0;c[t>>2]=1;while(1){if((c[t>>2]|0)>(c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]|0))break;c[z>>2]=c[(c[(c[(c[r>>2]|0)+8>>2]|0)+184>>2]|0)+(c[t>>2]<<2)>>2];p=(c[A>>2]|0)+(c[u>>2]<<5)|0;L=(c[(c[z>>2]|0)+8>>2]|0)+16|0;c[p>>2]=c[L>>2];c[p+4>>2]=c[L+4>>2];c[p+8>>2]=c[L+8>>2];c[p+12>>2]=c[L+12>>2];c[p+16>>2]=c[L+16>>2];c[p+20>>2]=c[L+20>>2];c[p+24>>2]=c[L+24>>2];c[p+28>>2]=c[L+28>>2];if((c[F+24>>2]|0)!=0&(c[J>>2]|0)!=0){L=eO(c[z>>2]|0,c[J>>2]|0,0,0)|0;c[(c[F+24>>2]|0)+(c[u>>2]<<2)>>2]=L}L=c[z>>2]|0;p=c[u>>2]|0;c[u>>2]=p+1;c[(c[I>>2]|0)+(p<<2)>>2]=L;c[t>>2]=(c[t>>2]|0)+1}a:do if(((c[w>>2]|0)-(c[x>>2]|0)|0)>0){c[y>>2]=$B(c[r>>2]|0)|0;while(1){if(!(c[y>>2]|0))break a;if(!(c[(c[(c[y>>2]|0)+8>>2]|0)+112>>2]|0)){c[(c[(c[y>>2]|0)+8>>2]|0)+112>>2]=c[r>>2];h[C>>3]=0.0;h[C+8>>3]=0.0;h[C+16>>3]=+h[(c[(c[y>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[y>>2]|0)+8>>2]|0)+96>>3];h[C+16+8>>3]=+h[(c[(c[y>>2]|0)+8>>2]|0)+80>>3];t=(c[A>>2]|0)+(c[u>>2]<<5)|0;c[t>>2]=c[C>>2];c[t+4>>2]=c[C+4>>2];c[t+8>>2]=c[C+8>>2];c[t+12>>2]=c[C+12>>2];c[t+16>>2]=c[C+16>>2];c[t+20>>2]=c[C+20>>2];c[t+24>>2]=c[C+24>>2];c[t+28>>2]=c[C+28>>2];if((c[F+24>>2]|0)!=0&(c[K>>2]|0)!=0){t=eO(c[y>>2]|0,c[K>>2]|0,0,0)|0;c[(c[F+24>>2]|0)+(c[u>>2]<<2)>>2]=t}t=c[y>>2]|0;J=c[u>>2]|0;c[u>>2]=J+1;c[(c[I>>2]|0)+(J<<2)>>2]=t}c[y>>2]=aC(c[r>>2]|0,c[y>>2]|0)|0}}while(0);c[B>>2]=CG(c[v>>2]|0,c[A>>2]|0,F)|0;if(c[F+24>>2]|0)O4(c[F+24>>2]|0);Mn(M,2147483647.0,2147483647.0);c[D>>2]=c[M>>2];c[D+4>>2]=c[M+4>>2];c[D+8>>2]=c[M+8>>2];c[D+12>>2]=c[M+12>>2];M=D+16|0;Mn(N,-2147483647.0,-2147483647.0);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[v>>2]|0))break;h[E>>3]=+(c[(c[B>>2]|0)+(c[u>>2]<<3)>>2]|0);h[E+8>>3]=+(c[(c[B>>2]|0)+(c[u>>2]<<3)+4>>2]|0);N=(c[A>>2]|0)+(c[u>>2]<<5)|0;c[C>>2]=c[N>>2];c[C+4>>2]=c[N+4>>2];c[C+8>>2]=c[N+8>>2];c[C+12>>2]=c[N+12>>2];c[C+16>>2]=c[N+16>>2];c[C+20>>2]=c[N+20>>2];c[C+24>>2]=c[N+24>>2];c[C+28>>2]=c[N+28>>2];h[C>>3]=+h[C>>3]+ +h[E>>3];N=C+16|0;h[N>>3]=+h[N>>3]+ +h[E>>3];N=C+8|0;h[N>>3]=+h[N>>3]+ +h[E+8>>3];N=C+16+8|0;h[N>>3]=+h[N>>3]+ +h[E+8>>3];h[D>>3]=+h[D>>3]<+h[C>>3]?+h[D>>3]:+h[C>>3];h[D+8>>3]=+h[D+8>>3]<+h[C+8>>3]?+h[D+8>>3]:+h[C+8>>3];h[D+16>>3]=+h[D+16>>3]>+h[C+16>>3]?+h[D+16>>3]:+h[C+16>>3];if(+h[D+16+8>>3]>+h[C+16+8>>3])W=+h[D+16+8>>3];else W=+h[C+16+8>>3];h[D+16+8>>3]=W;N=c[(c[I>>2]|0)+(c[u>>2]<<2)>>2]|0;if((c[u>>2]|0)<(c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]|0)){c[z>>2]=N;M=(c[(c[z>>2]|0)+8>>2]|0)+16|0;c[M>>2]=c[C>>2];c[M+4>>2]=c[C+4>>2];c[M+8>>2]=c[C+8>>2];c[M+12>>2]=c[C+12>>2];c[M+16>>2]=c[C+16>>2];c[M+20>>2]=c[C+20>>2];c[M+24>>2]=c[C+24>>2];c[M+28>>2]=c[C+28>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);M=c[24742]|0;K=wB(c[z>>2]|0)|0;X=+h[C>>3];Y=+h[C+8>>3];Z=+h[C+16>>3];_=+h[C+16+8>>3];c[o>>2]=K;h[o+8>>3]=X;h[o+16>>3]=Y;h[o+24>>3]=Z;h[o+32>>3]=_;Y2(M,127586,o)|0}}else{c[y>>2]=N;N=(c[(c[y>>2]|0)+8>>2]|0)+16|0;M=C+16|0;c[g>>2]=c[C>>2];c[g+4>>2]=c[C+4>>2];c[g+8>>2]=c[C+8>>2];c[g+12>>2]=c[C+12>>2];c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];Nn(O,g,f);c[N>>2]=c[O>>2];c[N+4>>2]=c[O+4>>2];c[N+8>>2]=c[O+8>>2];c[N+12>>2]=c[O+12>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);N=c[24742]|0;M=wB(c[y>>2]|0)|0;_=+h[(c[(c[y>>2]|0)+8>>2]|0)+16>>3];Z=+h[(c[(c[y>>2]|0)+8>>2]|0)+16+8>>3];c[n>>2]=M;h[n+8>>3]=_;h[n+16>>3]=Z;Y2(N,127574,n)|0}}c[u>>2]=(c[u>>2]|0)+1}if(c[(c[(c[r>>2]|0)+8>>2]|0)+12>>2]|0){n=(c[(c[(c[r>>2]|0)+8>>2]|0)+12>>2]|0)+24|0;c[P>>2]=c[n>>2];c[P+4>>2]=c[n+4>>2];c[P+8>>2]=c[n+8>>2];c[P+12>>2]=c[n+12>>2];if(!(c[v>>2]|0)){h[D>>3]=0.0;h[D+8>>3]=0.0;h[D+16>>3]=+h[P>>3];h[D+16+8>>3]=+h[P+8>>3]}h[Q>>3]=+h[P>>3]-(+h[D+16>>3]-+h[D>>3]);if(+h[Q>>3]>0.0){h[Q>>3]=+h[Q>>3]/2.0;h[D>>3]=+h[D>>3]-+h[Q>>3];P=D+16|0;h[P>>3]=+h[P>>3]+ +h[Q>>3]}}if((c[s>>2]|0)>0)h[H>>3]=+((c[F+8>>2]|0)>>>0)/2.0;else h[H>>3]=0.0;h[D>>3]=+h[D>>3]-+h[H>>3];F=D+16|0;h[F>>3]=+h[F>>3]+ +h[H>>3];F=D+8|0;h[F>>3]=+h[F>>3]-(+h[H>>3]+ +h[(c[(c[r>>2]|0)+8>>2]|0)+48+8>>3]);F=D+16+8|0;h[F>>3]=+h[F>>3]+(+h[H>>3]+ +h[(c[(c[r>>2]|0)+8>>2]|0)+48+32+8>>3]);if((d[138998]|0|0)>1){Ln(c[s>>2]|0);H=c[24742]|0;F=wB(c[r>>2]|0)|0;W=+h[D>>3];Z=+h[D+8>>3];_=+h[D+16>>3];Y=+h[D+16+8>>3];c[m>>2]=F;h[m+8>>3]=W;h[m+16>>3]=Z;h[m+24>>3]=_;h[m+32>>3]=Y;Y2(H,127586,m)|0}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[v>>2]|0))break;m=c[(c[I>>2]|0)+(c[u>>2]<<2)>>2]|0;if((c[u>>2]|0)<(c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]|0)){c[z>>2]=m;H=(c[(c[z>>2]|0)+8>>2]|0)+16|0;c[C>>2]=c[H>>2];c[C+4>>2]=c[H+4>>2];c[C+8>>2]=c[H+8>>2];c[C+12>>2]=c[H+12>>2];c[C+16>>2]=c[H+16>>2];c[C+20>>2]=c[H+20>>2];c[C+24>>2]=c[H+24>>2];c[C+28>>2]=c[H+28>>2];c[g>>2]=c[C>>2];c[g+4>>2]=c[C+4>>2];c[g+8>>2]=c[C+8>>2];c[g+12>>2]=c[C+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];On(R,g,f);c[C>>2]=c[R>>2];c[C+4>>2]=c[R+4>>2];c[C+8>>2]=c[R+8>>2];c[C+12>>2]=c[R+12>>2];H=C+16|0;F=C+16|0;c[g>>2]=c[F>>2];c[g+4>>2]=c[F+4>>2];c[g+8>>2]=c[F+8>>2];c[g+12>>2]=c[F+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];On(S,g,f);c[H>>2]=c[S>>2];c[H+4>>2]=c[S+4>>2];c[H+8>>2]=c[S+8>>2];c[H+12>>2]=c[S+12>>2];H=(c[(c[z>>2]|0)+8>>2]|0)+16|0;c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];c[H+16>>2]=c[C+16>>2];c[H+20>>2]=c[C+20>>2];c[H+24>>2]=c[C+24>>2];c[H+28>>2]=c[C+28>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);H=c[24742]|0;F=wB(c[z>>2]|0)|0;Y=+h[C>>3];_=+h[C+8>>3];Z=+h[C+16>>3];W=+h[C+16+8>>3];c[l>>2]=F;h[l+8>>3]=Y;h[l+16>>3]=_;h[l+24>>3]=Z;h[l+32>>3]=W;Y2(H,127586,l)|0}}else{c[y>>2]=m;m=(c[(c[y>>2]|0)+8>>2]|0)+16|0;H=(c[(c[y>>2]|0)+8>>2]|0)+16|0;c[g>>2]=c[H>>2];c[g+4>>2]=c[H+4>>2];c[g+8>>2]=c[H+8>>2];c[g+12>>2]=c[H+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];On(T,g,f);c[m>>2]=c[T>>2];c[m+4>>2]=c[T+4>>2];c[m+8>>2]=c[T+8>>2];c[m+12>>2]=c[T+12>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);m=c[24742]|0;H=wB(c[y>>2]|0)|0;W=+h[(c[(c[y>>2]|0)+8>>2]|0)+16>>3];Z=+h[(c[(c[y>>2]|0)+8>>2]|0)+16+8>>3];c[k>>2]=H;h[k+8>>3]=W;h[k+16>>3]=Z;Y2(m,127574,k)|0}}c[u>>2]=(c[u>>2]|0)+1}u=D+16|0;k=D+16|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];On(U,g,f);c[u>>2]=c[U>>2];c[u+4>>2]=c[U+4>>2];c[u+8>>2]=c[U+8>>2];c[u+12>>2]=c[U+12>>2];c[g>>2]=c[D>>2];c[g+4>>2]=c[D+4>>2];c[g+8>>2]=c[D+8>>2];c[g+12>>2]=c[D+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];On(V,g,f);c[D>>2]=c[V>>2];c[D+4>>2]=c[V+4>>2];c[D+8>>2]=c[V+8>>2];c[D+12>>2]=c[V+12>>2];V=(c[(c[r>>2]|0)+8>>2]|0)+16|0;c[V>>2]=c[D>>2];c[V+4>>2]=c[D+4>>2];c[V+8>>2]=c[D+8>>2];c[V+12>>2]=c[D+12>>2];c[V+16>>2]=c[D+16>>2];c[V+20>>2]=c[D+20>>2];c[V+24>>2]=c[D+24>>2];c[V+28>>2]=c[D+28>>2];if((d[138998]|0|0)>1){Ln(c[s>>2]|0);s=c[24742]|0;V=wB(c[r>>2]|0)|0;Z=+h[D>>3];W=+h[D+8>>3];_=+h[D+16>>3];Y=+h[D+16+8>>3];c[j>>2]=V;h[j+8>>3]=Z;h[j+16>>3]=W;h[j+24>>3]=_;h[j+32>>3]=Y;Y2(s,127586,j)|0}O4(c[A>>2]|0);O4(c[I>>2]|0);O4(c[B>>2]|0);i=e;return}function Jn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;e=i;i=i+160|0;f=e+96|0;g=e+72|0;j=e+64|0;k=e+152|0;l=e+148|0;m=e+32|0;n=e;o=e+144|0;p=e+140|0;q=e+136|0;c[k>>2]=a;c[l>>2]=b;b=(c[(c[k>>2]|0)+8>>2]|0)+16|0;c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];c[n+16>>2]=c[b+16>>2];c[n+20>>2]=c[b+20>>2];c[n+24>>2]=c[b+24>>2];c[n+28>>2]=c[b+28>>2];if((d[138998]|0|0)>1){Ln(c[l>>2]|0);b=c[24742]|0;c[j>>2]=wB(c[k>>2]|0)|0;Y2(b,127559,j)|0}a:do if(c[l>>2]|0){c[o>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[o>>2]|0))break a;if((c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)==(c[k>>2]|0)?(j=(c[(c[o>>2]|0)+8>>2]|0)+16|0,h[j>>3]=+h[j>>3]+ +h[n>>3],j=(c[(c[o>>2]|0)+8>>2]|0)+16+8|0,h[j>>3]=+h[j>>3]+ +h[n+8>>3],(d[138998]|0|0)>1):0){Ln(c[l>>2]|0);j=c[24742]|0;b=wB(c[o>>2]|0)|0;r=+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3];s=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3];c[g>>2]=b;h[g+8>>3]=r;h[g+16>>3]=s;Y2(j,127574,g)|0}c[o>>2]=aC(c[k>>2]|0,c[o>>2]|0)|0}}while(0);c[q>>2]=1;while(1){if((c[q>>2]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0))break;c[p>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+184>>2]|0)+(c[q>>2]<<2)>>2];if(c[l>>2]|0){o=(c[(c[p>>2]|0)+8>>2]|0)+16|0;c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[m+16>>2]=c[o+16>>2];c[m+20>>2]=c[o+20>>2];c[m+24>>2]=c[o+24>>2];c[m+28>>2]=c[o+28>>2];h[m>>3]=+h[m>>3]+ +h[n>>3];o=m+8|0;h[o>>3]=+h[o>>3]+ +h[n+8>>3];o=m+16|0;h[o>>3]=+h[o>>3]+ +h[n>>3];o=m+16+8|0;h[o>>3]=+h[o>>3]+ +h[n+8>>3];if((d[138998]|0|0)>1){Ln(c[l>>2]|0);o=c[24742]|0;g=wB(c[p>>2]|0)|0;s=+h[m>>3];r=+h[m+8>>3];t=+h[m+16>>3];u=+h[m+16+8>>3];c[f>>2]=g;h[f+8>>3]=s;h[f+16>>3]=r;h[f+24>>3]=t;h[f+32>>3]=u;Y2(o,127586,f)|0}o=(c[(c[p>>2]|0)+8>>2]|0)+16|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2]}Jn(c[p>>2]|0,(c[l>>2]|0)+1|0);c[q>>2]=(c[q>>2]|0)+1}i=e;return}function Kn(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;c[e>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2];UJ(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0);Kn(c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+1}O4(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0);i=b;return}function Ln(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){if((c[d>>2]|0)<=0)break;_2(127604,c[24742]|0)|0;c[d>>2]=(c[d>>2]|0)+-1}i=b;return}function Mn(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function Nn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=(+h[b>>3]+ +h[d>>3])/2.0;h[f+8>>3]=(+h[b+8>>3]+ +h[d+8>>3])/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]-+h[d>>3];h[f+8>>3]=+h[b+8>>3]-+h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function Pn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function Qn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[e>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[e>>2]|0)+8>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){b=(c[e>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+10;b=eK(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+4>>2]<<2)|0;c[c[e>>2]>>2]=b}c[(c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+8>>2]<<2)>>2]=c[f>>2];i=d;return}function Rn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;OC(c[d>>2]|0,1,175026,304,1);EO(c[d>>2]|0)|0;c[h>>2]=kB(c[d>>2]|0)|0;a=bK((c[h>>2]|0)+1<<2)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[j>>2]=0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;Tn(c[f>>2]|0);c[(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0)+(c[j>>2]<<2)>>2]=c[f>>2];a=c[j>>2]|0;c[j>>2]=a+1;c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]=a;c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=qA(c[d>>2]|0,2,129937,0)|0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){k=c[d>>2]|0;if(!(c[f>>2]|0))break;c[g>>2]=OA(k,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;Un(c[g>>2]|0,c[e>>2]|0);c[g>>2]=QA(c[d>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}Vn(k);i=b;return}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}Wn(g);i=b;return}function Tn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;xO(c[d>>2]|0);a=bK((e[(c[(qC(c[d>>2]|0)|0)+8>>2]|0)+176>>1]|0)<<3)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+132>>2]=a;a=c[d>>2]|0;VO(a,c[(c[(qC(c[d>>2]|0)|0)+8>>2]|0)+116>>2]&1);i=b;return}function Un(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;MC(c[e>>2]|0,175319,176,1)|0;g=+fO(c[e>>2]|0,c[13851]|0,1.0,0.0);h[(c[(c[e>>2]|0)+8>>2]|0)+128>>3]=g;g=+fO(c[e>>2]|0,c[f>>2]|0,+h[(c[13790]|0)+32>>3],0.0);h[(c[(c[e>>2]|0)+8>>2]|0)+136>>3]=g;yO(c[e>>2]|0)|0;i=d;return}function Vn(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i;i=i+64|0;e=d+16|0;f=d;g=d+52|0;j=d+48|0;k=d+44|0;l=d+40|0;m=d+36|0;n=d+32|0;o=d+28|0;p=d+56|0;q=d+24|0;c[g>>2]=b;c[l>>2]=qA(c[g>>2]|0,1,140246,0)|0;if(!(c[l>>2]|0)){i=d;return}c[m>>2]=qA(c[g>>2]|0,1,127690,0)|0;c[j>>2]=0;while(1){b=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+152>>2]|0)+(c[j>>2]<<2)>>2]|0;c[k>>2]=b;if(!b)break;c[o>>2]=zA(c[k>>2]|0,c[l>>2]|0)|0;do if(a[c[o>>2]>>0]|0){c[n>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2];a[p>>0]=0;b=c[o>>2]|0;r=(c[n>>2]|0)+8|0;c[f>>2]=c[n>>2];c[f+4>>2]=r;c[f+8>>2]=p;if((l3(b,139594,f)|0)<2){b=c[24742]|0;r=wB(c[k>>2]|0)|0;s=c[o>>2]|0;c[e>>2]=r;c[e+4>>2]=s;Y2(b,127694,e)|0;break}a:do if(+h[4246]>0.0){c[q>>2]=0;while(1){if((c[q>>2]|0)>=2)break a;h[(c[n>>2]|0)+(c[q>>2]<<3)>>3]=+h[(c[n>>2]|0)+(c[q>>2]<<3)>>3]/+h[4246];c[q>>2]=(c[q>>2]|0)+1}}while(0);a[(c[(c[k>>2]|0)+8>>2]|0)+119>>0]=1;if((a[p>>0]|0)!=33){if(!(c[m>>2]|0))break;if(!((kO(zA(c[k>>2]|0,c[m>>2]|0)|0)|0)&255))break}a[(c[(c[k>>2]|0)+8>>2]|0)+119>>0]=3}while(0);c[j>>2]=(c[j>>2]|0)+1}i=d;return}function Wn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Xn(c[d>>2]|0);O4(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0);O4(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0);i=b;return}function Xn(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;c[e>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2];UJ(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0);if(c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]|0){O4(c[c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]>>2]|0);O4(c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]|0)}Xn(c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+1}O4(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0);f=c[d>>2]|0;if((f|0)==(rC(c[d>>2]|0)|0)){i=b;return}NC(c[d>>2]|0,175049)|0;i=b;return}function Yn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=qA(c[e>>2]|0,0,127746,0)|0;c[(c[f>>2]|0)+4>>2]=b;b=qA(c[e>>2]|0,0,179125,0)|0;c[(c[f>>2]|0)+8>>2]=b;b=qA(c[e>>2]|0,0,179057,0)|0;c[(c[f>>2]|0)+12>>2]=b;c[c[f>>2]>>2]=c[e>>2];c[(c[f>>2]|0)+16>>2]=0;b=GG(c[e>>2]|0,2,4,(c[f>>2]|0)+20|0)|0;c[(c[f>>2]|0)+20+16>>2]=b;i=d;return}function Zn(a){a=a|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d;c[f>>2]=a;QO(c[f>>2]|0,2);a=bK(56)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+140>>2]=a;a=c[f>>2]|0;g=(eO(a,qA(c[f>>2]|0,0,129477,0)|0,2,2)|0)&65535;b[(c[(c[f>>2]|0)+8>>2]|0)+176>>1]=g;if((e[(c[(c[f>>2]|0)+8>>2]|0)+176>>1]|0|0)<10)h=e[(c[(c[f>>2]|0)+8>>2]|0)+176>>1]|0;else h=10;g=h&65535;b[(c[(c[f>>2]|0)+8>>2]|0)+176>>1]=g;c[13799]=g&65535;ao(c[f>>2]|0,0,c[f>>2]|0);xo(c[f>>2]|0);Rn(c[f>>2]|0);i=d;return}function _n(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+64|0;d=b+52|0;e=b;c[d>>2]=a;Yn(c[d>>2]|0,e);bo(c[d>>2]|0,e);co(c[d>>2]|0);eo(c[d>>2]|0,c[d>>2]|0);fo(c[d>>2]|0);i=b;return}function $n(a){a=a|0;var b=0,d=0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;b=4;d=N4(40)|0;c[d>>2]=0;f=+h[4246];n=0;g=+ma(1,a|0);i=n;n=0;if((i|0)!=0&(o|0)!=0){j=Y4(c[i>>2]|0,d|0,b|0)|0;if(!j)Pa(i|0,o|0);C=o}else j=-1;if((j|0)!=1){h[4246]=g;n=0;ea(93,a|0);j=n;n=0;if((j|0)!=0&(o|0)!=0){k=Y4(c[j>>2]|0,d|0,b|0)|0;if(!k)Pa(j|0,o|0);C=o}else k=-1;if((k|0)!=1){d=W4(50948,1,d|0,b|0)|0;b=C;n=0;k=n;n=0;if((k|0)!=0&(o|0)!=0){l=Y4(c[k>>2]|0,d|0,b|0)|0;if(!l)Pa(k|0,o|0);C=o}else l=-1;if((l|0)!=1)m=0;else m=C}else m=C}else m=C;while(1){if(m){p=13;break}n=0;ea(94,a|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){q=Y4(c[l>>2]|0,d|0,b|0)|0;if(!q)Pa(l|0,o|0);C=o}else q=-1;if((q|0)==1){m=C;continue}n=0;ia(22,a|0)|0;l=n;n=0;if((l|0)!=0&(o|0)!=0){r=Y4(c[l>>2]|0,d|0,b|0)|0;if(!r)Pa(l|0,o|0);C=o}else r=-1;if((r|0)==1){m=C;continue}if((e[(c[a+8>>2]|0)+136>>1]|0)&14){n=0;ea(95,a|0);l=n;n=0;if((l|0)!=0&(o|0)!=0){s=Y4(c[l>>2]|0,d|0,b|0)|0;if(!s)Pa(l|0,o|0);C=o}else s=-1;if((s|0)==1){m=C;continue}}n=0;ga(18,a|0,0);l=n;n=0;if((l|0)!=0&(o|0)!=0){t=Y4(c[l>>2]|0,d|0,b|0)|0;if(!t)Pa(l|0,o|0);C=o}else t=-1;if((t|0)==1)m=C;else break}if((p|0)==13){O4(d|0);return}h[4246]=f;O4(d|0);return}function ao(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+4|0;m=f;c[g>>2]=a;c[h>>2]=d;c[j>>2]=e;if(!(c[h>>2]|0)){c[m>>2]=l;vo(c[m>>2]|0)}else c[m>>2]=c[h>>2];c[k>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;e=(P3(wB(c[k>>2]|0)|0,145613,7)|0)!=0;d=c[k>>2]|0;if(e)ao(d,c[m>>2]|0,c[j>>2]|0);else{MC(d,175049,280,1)|0;d=bK(56)|0;c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]=d;b[(c[(c[k>>2]|0)+8>>2]|0)+176>>1]=b[(c[(c[j>>2]|0)+8>>2]|0)+176>>1]|0;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+44>>2]=(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+140>>2]|0)+44>>2]|0)+1;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]=c[j>>2];wo(c[m>>2]|0,c[k>>2]|0);ao(c[k>>2]|0,0,c[k>>2]|0)}c[k>>2]=HD(c[k>>2]|0)|0}if(c[h>>2]|0){i=f;return}c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]=c[l+8>>2];if(!(c[l+8>>2]|0)){i=f;return}h=eK(c[l>>2]|0,(c[l+8>>2]|0)+1<<2)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]=h;i=f;return}function bo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;e=i;i=i+128|0;f=e+64|0;g=e+56|0;j=e+116|0;k=e+112|0;l=e+108|0;m=e+104|0;n=e+100|0;o=e+96|0;p=e+92|0;q=e+88|0;r=e+84|0;s=e+80|0;t=e+76|0;u=e+72|0;v=e+16|0;w=e;x=e+68|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=0;if(a[138998]|0){d=c[24742]|0;c[g>>2]=wB(c[j>>2]|0)|0;Y2(d,127816,g)|0}c[o>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;c[(c[(c[o>>2]|0)+8>>2]|0)+164>>2]=0;c[o>>2]=aC(c[j>>2]|0,c[o>>2]|0)|0}c[m>>2]=ho(c[j>>2]|0,c[k>>2]|0)|0;g=bv(c[m>>2]|0,t,u)|0;c[s>>2]=g;c[r>>2]=g;while(1){g=c[s>>2]|0;c[s>>2]=g+4;d=c[g>>2]|0;c[p>>2]=d;if(!d)break;yo(c[p>>2]|0,v);c[o>>2]=$B(c[p>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;d=c[o>>2]|0;if(!(c[(c[(c[o>>2]|0)+8>>2]|0)+212>>2]|0)){if((c[(c[(c[d+8>>2]|0)+112>>2]|0)+8>>2]|0)==0?(c[(c[(c[o>>2]|0)+8>>2]|0)+212>>2]|0)==0:0)pC(c[p>>2]|0,c[o>>2]|0)|0}else{c[q>>2]=io(d,c[p>>2]|0)|0;bo(c[q>>2]|0,c[k>>2]|0);h[(c[(c[o>>2]|0)+8>>2]|0)+32>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16>>3];h[(c[(c[o>>2]|0)+8>>2]|0)+40>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16+8>>3];h[w>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16>>3]*72.0;h[w+8>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16+8>>3]*72.0;y=+h[w>>3]/2.0;h[(c[(c[o>>2]|0)+8>>2]|0)+88>>3]=y;h[(c[(c[o>>2]|0)+8>>2]|0)+96>>3]=y;h[(c[(c[o>>2]|0)+8>>2]|0)+80>>3]=+h[w+8>>3]}c[o>>2]=aC(c[p>>2]|0,c[o>>2]|0)|0}if((kB(c[p>>2]|0)|0)<2)continue;if((c[j>>2]|0)==(c[c[k>>2]>>2]|0))bq(c[p>>2]|0)|0;Lo(c[p>>2]|0,v)}if((c[t>>2]|0)>1){if(c[u>>2]|0){c[x>>2]=bK(c[t>>2]|0)|0;a[c[x>>2]>>0]=1}else c[x>>2]=0;c[(c[k>>2]|0)+20+20>>2]=c[x>>2];c[l>>2]=BG(c[t>>2]|0,c[r>>2]|0,0,(c[k>>2]|0)+20|0)|0;if(c[x>>2]|0)O4(c[x>>2]|0)}else{c[l>>2]=0;if((c[t>>2]|0)==1)BO(c[c[r>>2]>>2]|0)}jo(c[m>>2]|0,c[t>>2]|0,c[r>>2]|0,c[l>>2]|0,c[j>>2]|0,c[k>>2]|0);O4(c[l>>2]|0);c[n>>2]=$B(c[m>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;l=c[(c[(c[n>>2]|0)+8>>2]|0)+212>>2]|0;c[q>>2]=l;k=c[(c[n>>2]|0)+8>>2]|0;if(!l){l=c[(c[k+112>>2]|0)+8>>2]|0;c[o>>2]=l;if(l){h[c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3];h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]}}else{h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8>>3]=+h[c[k+132>>2]>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+32>>3]/2.0;h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+8>>3]=+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+40>>3]/2.0;h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8>>3]+ +h[(c[(c[n>>2]|0)+8>>2]|0)+32>>3];h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+16+8>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+140>>2]|0)+8+8>>3]+ +h[(c[(c[n>>2]|0)+8>>2]|0)+40>>3]}c[n>>2]=aC(c[m>>2]|0,c[n>>2]|0)|0}n=(c[(c[(c[j>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;q=(c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];c[n+16>>2]=c[q+16>>2];c[n+20>>2]=c[q+20>>2];c[n+24>>2]=c[q+24>>2];c[n+28>>2]=c[q+28>>2];ko(c[m>>2]|0,c[r>>2]|0);O4(c[r>>2]|0);if(!(a[138998]|0)){i=e;return}r=c[24742]|0;c[f>>2]=wB(c[j>>2]|0)|0;Y2(r,127827,f)|0;i=e;return}function co(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;d=i;i=i+112|0;e=d+100|0;f=d+56|0;g=d+96|0;j=d+40|0;k=d+92|0;l=d+32|0;m=d+24|0;n=d+16|0;o=d+8|0;p=d;q=d+88|0;c[e>>2]=b;c[k>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if(a[(c[(c[k>>2]|0)+8>>2]|0)+118>>0]|0){c[g>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2];b=(c[(c[(c[g>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];h[l>>3]=+h[f+16>>3]-+h[f>>3];h[m>>3]=+h[f+16+8>>3]-+h[f+8>>3];h[j>>3]=+h[l>>3]/2.0;h[j+8>>3]=+h[m>>3]/2.0;h[p>>3]=+h[l>>3]/2.0*72.0;h[o>>3]=+h[m>>3]/2.0*72.0;h[n>>3]=+h[m>>3]*72.0;h[c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[j>>3];h[(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[j+8>>3];h[(c[(c[k>>2]|0)+8>>2]|0)+32>>3]=+h[l>>3];h[(c[(c[k>>2]|0)+8>>2]|0)+40>>3]=+h[m>>3];r=+h[p>>3];h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]=r;h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3]=r;h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]=+h[n>>3];c[q>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)+44>>2];h[c[q>>2]>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];h[(c[q>>2]|0)+8>>3]=+h[o>>3];h[(c[q>>2]|0)+16>>3]=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];h[(c[q>>2]|0)+16+8>>3]=+h[o>>3];h[(c[q>>2]|0)+32>>3]=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];h[(c[q>>2]|0)+32+8>>3]=-+h[o>>3];h[(c[q>>2]|0)+48>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];h[(c[q>>2]|0)+48+8>>3]=-+h[o>>3]}c[k>>2]=aC(c[e>>2]|0,c[k>>2]|0)|0}i=d;return}function eo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+96|0;e=d+80|0;f=d+76|0;g=d+72|0;j=d+68|0;k=d+64|0;l=d+32|0;m=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];c[l+12>>2]=c[b+12>>2];c[l+16>>2]=c[b+16>>2];c[l+20>>2]=c[b+20>>2];c[l+24>>2]=c[b+24>>2];c[l+28>>2]=c[b+28>>2];a:do if((c[e>>2]|0)!=(c[f>>2]|0)){c[k>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[k>>2]|0))break a;if((c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0)==(c[e>>2]|0)){b=c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0;h[b>>3]=+h[b>>3]+ +h[l>>3];b=(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[b>>3]=+h[b>>3]+ +h[l+8>>3]}c[k>>2]=aC(c[e>>2]|0,c[k>>2]|0)|0}}while(0);c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;c[j>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2];if((c[e>>2]|0)!=(c[f>>2]|0)){k=(c[(c[(c[j>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];c[m+16>>2]=c[k+16>>2];c[m+20>>2]=c[k+20>>2];c[m+24>>2]=c[k+24>>2];c[m+28>>2]=c[k+28>>2];h[m>>3]=+h[m>>3]+ +h[l>>3];k=m+8|0;h[k>>3]=+h[k>>3]+ +h[l+8>>3];k=m+16|0;h[k>>3]=+h[k>>3]+ +h[l>>3];k=m+16+8|0;h[k>>3]=+h[k>>3]+ +h[l+8>>3];k=(c[(c[(c[j>>2]|0)+8>>2]|0)+140>>2]|0)+8|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2]}eo(c[j>>2]|0,c[f>>2]|0);c[g>>2]=(c[g>>2]|0)+1}i=d;return}function fo(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+48|0;d=b+36|0;e=b+32|0;f=b;c[d>>2]=a;h[f>>3]=+h[(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0)+8>>3]*72.0;h[f+8>>3]=+h[(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0)+8+8>>3]*72.0;h[f+16>>3]=+h[(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0)+8+16>>3]*72.0;h[f+16+8>>3]=+h[(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0)+8+16+8>>3]*72.0;a=(c[(c[d>>2]|0)+8>>2]|0)+16|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[a+28>>2]=c[f+28>>2];c[e>>2]=1;while(1){if((c[e>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;fo(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=b;return}function go(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b;f=b+12|0;g=b+8|0;h=b+4|0;c[f>>2]=a;c[g>>2]=0;c[h>>2]=(e[(c[(c[f>>2]|0)+8>>2]|0)+136>>1]|0)&14;if((c[h>>2]|0)!=2){if((c[h>>2]|0)==12?(c[g>>2]=cm(c[f>>2]|0,27,10)|0,(c[g>>2]|0)!=0):0)c[13795]=2;do if((c[g>>2]|0)!=0|(c[h>>2]|0)!=12)if((e[(c[(c[f>>2]|0)+8>>2]|0)+136>>1]|0)&1){$z(0,127753,d)|0;break}else{dm(c[f>>2]|0,c[h>>2]|0)|0;break}while(0);c[13795]=0}if((c[13800]|0)>=1){i=b;return}dm(c[f>>2]|0,2)|0;i=b;return}function ho(e,f){e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;g=i;i=i+224|0;j=g+56|0;k=g+40|0;l=g+32|0;m=g+120|0;n=g+116|0;o=g+112|0;p=g+108|0;q=g+104|0;r=g+124|0;s=g+100|0;t=g+96|0;u=g+92|0;v=g+88|0;w=g+84|0;x=g;y=g+80|0;z=g+76|0;A=g+72|0;B=g+68|0;C=g+64|0;D=g+60|0;c[m>>2]=e;c[n>>2]=f;c[w>>2]=0;f=(c[n>>2]|0)+16|0;e=c[f>>2]|0;c[f>>2]=e+1;c[j>>2]=e;k3(r,127889,j)|0;if((d[138998]|0)>=2){e=c[24742]|0;f=wB(c[m>>2]|0)|0;c[l>>2]=r;c[l+4>>2]=f;Y2(e,127896,l)|0};c[j>>2]=c[13066];c[o>>2]=gB(129187,j,0)|0;MC(c[o>>2]|0,175049,280,1)|0;j=bK(56)|0;c[(c[(c[o>>2]|0)+8>>2]|0)+140>>2]=j;b[(c[(c[o>>2]|0)+8>>2]|0)+176>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+176>>1]|0;qo(c[m>>2]|0,c[o>>2]|0,129941);qo(c[m>>2]|0,c[o>>2]|0,13e4);qo(c[m>>2]|0,c[o>>2]|0,129305);c[v>>2]=1;while(1){if((c[v>>2]|0)>(c[(c[(c[m>>2]|0)+8>>2]|0)+180>>2]|0))break;c[x>>2]=c[8320];c[x+4>>2]=c[8321];c[x+8>>2]=c[8322];c[x+12>>2]=c[8323];c[x+16>>2]=c[8324];c[x+20>>2]=c[8325];c[x+24>>2]=c[8326];c[x+28>>2]=c[8327];c[q>>2]=c[(c[(c[(c[m>>2]|0)+8>>2]|0)+184>>2]|0)+(c[v>>2]<<2)>>2];LJ(c[q>>2]|0);j=c[o>>2]|0;c[p>>2]=ro(j,wB(c[q>>2]|0)|0)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+212>>2]=c[q>>2];j=c[w>>2]|0;c[w>>2]=j+1;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=j;if(c[(c[n>>2]|0)+4>>2]|0)so(c[q>>2]|0,c[p>>2]|0,c[n>>2]|0,x);c[t>>2]=$B(c[q>>2]|0)|0;while(1){E=c[p>>2]|0;if(!(c[t>>2]|0))break;c[(c[(c[t>>2]|0)+8>>2]|0)+164>>2]=E;c[t>>2]=aC(c[q>>2]|0,c[t>>2]|0)|0}if(a[(c[E+8>>2]|0)+119>>0]|0){h[c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]>>3]=(+h[x>>3]+ +h[x+16>>3])/2.0;h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=(+h[x+8>>3]+ +h[x+16+8>>3])/2.0}c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=$B(c[m>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;if(!(c[(c[(c[t>>2]|0)+8>>2]|0)+164>>2]|0)){if((c[(c[(c[t>>2]|0)+8>>2]|0)+212>>2]|0)!=0?(c[(c[(c[t>>2]|0)+8>>2]|0)+212>>2]|0)!=(c[(c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2]|0)+48>>2]|0):0){F=18;break}c[(c[(c[t>>2]|0)+8>>2]|0)+212>>2]=c[m>>2];if(!(a[(c[(c[t>>2]|0)+8>>2]|0)+118>>0]|0)){v=c[o>>2]|0;c[p>>2]=ro(v,wB(c[t>>2]|0)|0)|0;c[(c[(c[t>>2]|0)+8>>2]|0)+164>>2]=c[p>>2];v=c[w>>2]|0;c[w>>2]=v+1;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=v;h[(c[(c[p>>2]|0)+8>>2]|0)+32>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+32>>3];h[(c[(c[p>>2]|0)+8>>2]|0)+40>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+40>>3];h[(c[(c[p>>2]|0)+8>>2]|0)+88>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+88>>3];h[(c[(c[p>>2]|0)+8>>2]|0)+96>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+96>>3];h[(c[(c[p>>2]|0)+8>>2]|0)+80>>3]=+h[(c[(c[t>>2]|0)+8>>2]|0)+80>>3];c[(c[(c[p>>2]|0)+8>>2]|0)+8>>2]=c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2];c[(c[(c[p>>2]|0)+8>>2]|0)+12>>2]=c[(c[(c[t>>2]|0)+8>>2]|0)+12>>2];if(a[(c[(c[t>>2]|0)+8>>2]|0)+119>>0]|0){h[c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[c[(c[(c[t>>2]|0)+8>>2]|0)+132>>2]>>3];h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[(c[(c[t>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];a[(c[(c[p>>2]|0)+8>>2]|0)+119>>0]=a[(c[(c[t>>2]|0)+8>>2]|0)+119>>0]|0}c[(c[(c[(c[p>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]=c[t>>2]}}c[t>>2]=aC(c[m>>2]|0,c[t>>2]|0)|0}if((F|0)==18){F=wB(c[t>>2]|0)|0;v=wB(c[m>>2]|0)|0;x=wB(c[(c[(c[t>>2]|0)+8>>2]|0)+212>>2]|0)|0;c[k>>2]=F;c[k+4>>2]=v;c[k+8>>2]=x;$z(1,127919,k)|0;Pa(50948,1)}c[t>>2]=$B(c[m>>2]|0)|0;while(1){if(!(c[t>>2]|0))break;c[A>>2]=c[(c[(c[t>>2]|0)+8>>2]|0)+164>>2];c[y>>2]=OA(c[m>>2]|0,c[t>>2]|0)|0;while(1){if(!(c[y>>2]|0))break;k=c[y>>2]|0;c[z>>2]=c[(c[(c[((c[c[y>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+164>>2];if((c[z>>2]|0)!=(c[A>>2]|0)){k=c[o>>2]|0;if((c[z>>2]|0)>>>0>(c[A>>2]|0)>>>0)c[u>>2]=VA(k,c[A>>2]|0,c[z>>2]|0,0,1)|0;else c[u>>2]=VA(k,c[z>>2]|0,c[A>>2]|0,0,1)|0;MC(c[u>>2]|0,175319,176,1)|0;h[(c[(c[u>>2]|0)+8>>2]|0)+136>>3]=+h[(c[(c[y>>2]|0)+8>>2]|0)+136>>3];h[(c[(c[u>>2]|0)+8>>2]|0)+128>>3]=+h[(c[(c[y>>2]|0)+8>>2]|0)+128>>3];k=(c[(c[(c[z>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1;k=(c[(c[(c[A>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1;if(!(c[(c[(c[u>>2]|0)+8>>2]|0)+172>>2]|0)){k=c[(c[(c[z>>2]|0)+8>>2]|0)+112>>2]|0;c[k>>2]=(c[k>>2]|0)+1;k=c[(c[(c[A>>2]|0)+8>>2]|0)+112>>2]|0;c[k>>2]=(c[k>>2]|0)+1}to(c[u>>2]|0,c[y>>2]|0)}c[y>>2]=QA(c[m>>2]|0,c[y>>2]|0)|0}c[t>>2]=aC(c[m>>2]|0,c[t>>2]|0)|0}t=c[c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2]>>2]|0;c[s>>2]=t;if(!t){G=c[o>>2]|0;i=g;return G|0}c[D>>2]=c[(c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2];t=bK((c[D>>2]|0)+1<<4)|0;c[B>>2]=t;c[c[(c[(c[o>>2]|0)+8>>2]|0)+140>>2]>>2]=t;c[D>>2]=0;while(1){if(!(c[c[s>>2]>>2]|0))break;c[C>>2]=c[(c[(c[(c[s>>2]|0)+4>>2]|0)+8>>2]|0)+164>>2];if(c[C>>2]|0){t=c[o>>2]|0;c[p>>2]=ro(t,uo(c[m>>2]|0,c[s>>2]|0)|0)|0;c[D>>2]=(c[D>>2]|0)+1;t=c[w>>2]|0;c[w>>2]=t+1;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=t;t=c[o>>2]|0;if((c[p>>2]|0)>>>0>(c[C>>2]|0)>>>0)c[u>>2]=VA(t,c[C>>2]|0,c[p>>2]|0,0,1)|0;else c[u>>2]=VA(t,c[p>>2]|0,c[C>>2]|0,0,1)|0;MC(c[u>>2]|0,175319,176,1)|0;h[(c[(c[u>>2]|0)+8>>2]|0)+136>>3]=+h[(c[(c[c[s>>2]>>2]|0)+8>>2]|0)+136>>3];h[(c[(c[u>>2]|0)+8>>2]|0)+128>>3]=+h[(c[(c[c[s>>2]>>2]|0)+8>>2]|0)+128>>3];to(c[u>>2]|0,c[c[s>>2]>>2]|0);t=(c[(c[(c[p>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1;t=(c[(c[(c[C>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1;t=c[(c[(c[p>>2]|0)+8>>2]|0)+112>>2]|0;c[t>>2]=(c[t>>2]|0)+1;t=c[(c[(c[C>>2]|0)+8>>2]|0)+112>>2]|0;c[t>>2]=(c[t>>2]|0)+1;c[(c[B>>2]|0)+4>>2]=c[p>>2];h[(c[B>>2]|0)+8>>3]=+h[(c[s>>2]|0)+8>>3];c[c[B>>2]>>2]=c[u>>2];c[B>>2]=(c[B>>2]|0)+16}c[s>>2]=(c[s>>2]|0)+16}c[(c[(c[(c[o>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2]=c[D>>2];G=c[o>>2]|0;i=g;return G|0}function io(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;g=d+32|0;j=d+28|0;k=d+24|0;l=d+20|0;m=d+16|0;n=d+12|0;o=d+8|0;p=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+212>>2];c[n>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2];c[o>>2]=0;if(!(c[n>>2]|0)){q=c[l>>2]|0;i=d;return q|0}c[m>>2]=bK((c[n>>2]|0)+1<<4)|0;b=no(c[e>>2]|0,c[f>>2]|0)|0;c[j>>2]=b;c[g>>2]=b;while(1){if(!(c[c[j>>2]>>2]|0))break;c[k>>2]=(c[j>>2]|0)+24;if(c[c[k>>2]>>2]|0)h[p>>3]=+h[(c[k>>2]|0)+8>>3];else h[p>>3]=+h[(c[g>>2]|0)+8>>3]+6.283185307179586;c[o>>2]=oo(c[e>>2]|0,c[j>>2]|0,c[m>>2]|0,c[o>>2]|0,+h[p>>3])|0;c[j>>2]=c[k>>2]}if((c[o>>2]|0)!=(c[n>>2]|0))La(127835,127845,767,127854);c[c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]>>2]=c[m>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2]=c[n>>2];O4(c[g>>2]|0);q=c[l>>2]|0;i=d;return q|0}function jo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0,J=0,K=0.0,L=0.0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0.0,_=0.0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;j=i;i=i+192|0;k=j+176|0;l=j+172|0;m=j+168|0;n=j+164|0;o=j+160|0;p=j+156|0;q=j+152|0;r=j+148|0;s=j+144|0;t=j+128|0;u=j+112|0;v=j+16|0;w=j+104|0;x=j+96|0;y=j+92|0;z=j+88|0;A=j+84|0;B=j+80|0;C=j+72|0;D=j+64|0;E=j+56|0;F=j+48|0;G=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[(c[p>>2]|0)+8>>2];c[r>>2]=c[(c[p>>2]|0)+12>>2];c[y>>2]=c[m>>2];c[z>>2]=c[n>>2];c[A>>2]=(c[o>>2]|0)==(c[c[p>>2]>>2]|0)&1;c[B>>2]=0;a:do if(c[l>>2]|0){p=c[y>>2]|0;c[y>>2]=p+4;c[s>>2]=c[p>>2];H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16>>3];c[u>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+8>>3];c[u+4>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16>>3];c[u+8>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16+8>>3];c[u+8+4>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?H+.5:H-.5);if((c[l>>2]|0)>1){p=c[z>>2]|0;c[z>>2]=p+8;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0);p=u+4|0;c[p>>2]=(c[p>>2]|0)+(c[w+4>>2]|0);p=u+8|0;c[p>>2]=(c[p>>2]|0)+(c[w>>2]|0);p=u+8+4|0;c[p>>2]=(c[p>>2]|0)+(c[w+4>>2]|0);while(1){p=c[y>>2]|0;c[y>>2]=p+4;g=c[p>>2]|0;c[s>>2]=g;if(!g)break a;H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16>>3];c[t>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+8>>3];c[t+4>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+8>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16>>3];c[t+8>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16>>3]>=0.0?H+.5:H-.5);H=+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16+8>>3];c[t+8+4>>2]=~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+16+16+8>>3]>=0.0?H+.5:H-.5);g=c[z>>2]|0;c[z>>2]=g+8;c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[t>>2]=(c[t>>2]|0)+(c[w>>2]|0);g=t+4|0;c[g>>2]=(c[g>>2]|0)+(c[w+4>>2]|0);g=t+8|0;c[g>>2]=(c[g>>2]|0)+(c[w>>2]|0);g=t+8+4|0;c[g>>2]=(c[g>>2]|0)+(c[w+4>>2]|0);c[u>>2]=(c[u>>2]|0)<(c[t>>2]|0)?c[u>>2]|0:c[t>>2]|0;c[u+4>>2]=(c[u+4>>2]|0)<(c[t+4>>2]|0)?c[u+4>>2]|0:c[t+4>>2]|0;c[u+8>>2]=(c[u+8>>2]|0)>(c[t+8>>2]|0)?c[u+8>>2]|0:c[t+8>>2]|0;if((c[u+8+4>>2]|0)>(c[t+8+4>>2]|0))I=c[u+8+4>>2]|0;else I=c[t+8+4>>2]|0;c[u+8+4>>2]=I}}}else{c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=eO(c[o>>2]|0,c[q>>2]|0,54,3)|0;c[u+8+4>>2]=eO(c[o>>2]|0,c[r>>2]|0,36,3)|0;c[B>>2]=1}while(0);if((c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(c[B>>2]=0,H=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+24>>3],c[C>>2]=~~(+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+24>>3]>=0.0?H+.5:H-.5),H=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+24+8>>3],c[C+4>>2]=~~(+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2]|0)+24+8>>3]>=0.0?H+.5:H-.5),c[D>>2]=(c[C>>2]|0)-((c[u+8>>2]|0)-(c[u>>2]|0)),(c[D>>2]|0)>0):0){c[D>>2]=(c[D>>2]|0)/2|0;c[u>>2]=(c[u>>2]|0)-(c[D>>2]|0);C=u+8|0;c[C>>2]=(c[C>>2]|0)+(c[D>>2]|0)}if((c[A>>2]|0)!=0|(c[B>>2]|0)!=0)c[x>>2]=0;else c[x>>2]=eO(c[k>>2]|0,c[13813]|0,8,0)|0;c[w>>2]=0-(c[u>>2]|0)+(c[x>>2]|0);c[w+4>>2]=~~(+(0-(c[u+4>>2]|0)+(c[x>>2]|0)|0)+ +h[(c[(c[o>>2]|0)+8>>2]|0)+48+8>>3]);c[u>>2]=0;c[u+4>>2]=0;B=u+8|0;c[B>>2]=(c[B>>2]|0)+((c[w>>2]|0)+(c[x>>2]|0));B=u+8+4|0;c[B>>2]=~~(+(c[B>>2]|0)+(+((c[w+4>>2]|0)+(c[x>>2]|0)|0)+ +h[(c[(c[o>>2]|0)+8>>2]|0)+48+32+8>>3]));if(!(c[l>>2]|0)){J=c[u>>2]|0;K=+(J|0);L=K/72.0;h[v>>3]=L;M=u+4|0;N=c[M>>2]|0;O=+(N|0);P=O/72.0;Q=v+8|0;h[Q>>3]=P;R=u+8|0;S=c[R>>2]|0;T=+(S|0);U=T/72.0;V=v+16|0;h[V>>3]=U;W=u+8|0;X=W+4|0;Y=c[X>>2]|0;Z=+(Y|0);_=Z/72.0;$=v+16|0;aa=$+8|0;h[aa>>3]=_;ba=c[k>>2]|0;ca=ba+8|0;da=c[ca>>2]|0;ea=da+140|0;fa=c[ea>>2]|0;ga=fa+8|0;c[ga>>2]=c[v>>2];c[ga+4>>2]=c[v+4>>2];c[ga+8>>2]=c[v+8>>2];c[ga+12>>2]=c[v+12>>2];c[ga+16>>2]=c[v+16>>2];c[ga+20>>2]=c[v+20>>2];c[ga+24>>2]=c[v+24>>2];c[ga+28>>2]=c[v+28>>2];i=j;return}c[y>>2]=c[m>>2];c[z>>2]=c[n>>2];b:while(1){n=c[y>>2]|0;c[y>>2]=n+4;m=c[n>>2]|0;c[s>>2]=m;if(!m)break;if(c[z>>2]|0){m=c[z>>2]|0;c[z>>2]=m+8;c[E>>2]=c[m>>2];c[E+4>>2]=c[m+4>>2];c[E>>2]=(c[E>>2]|0)+(c[w>>2]|0);m=E+4|0;c[m>>2]=(c[m>>2]|0)+(c[w+4>>2]|0)}else{c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2]}h[G>>3]=+(c[E>>2]|0)/72.0;h[G+8>>3]=+(c[E+4>>2]|0)/72.0;c[F>>2]=$B(c[s>>2]|0)|0;while(1){if(!(c[F>>2]|0))continue b;m=c[(c[(c[F>>2]|0)+8>>2]|0)+132>>2]|0;h[m>>3]=+h[m>>3]+ +h[G>>3];m=(c[(c[(c[F>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[m>>3]=+h[m>>3]+ +h[G+8>>3];c[F>>2]=aC(c[s>>2]|0,c[F>>2]|0)|0}}J=c[u>>2]|0;K=+(J|0);L=K/72.0;h[v>>3]=L;M=u+4|0;N=c[M>>2]|0;O=+(N|0);P=O/72.0;Q=v+8|0;h[Q>>3]=P;R=u+8|0;S=c[R>>2]|0;T=+(S|0);U=T/72.0;V=v+16|0;h[V>>3]=U;W=u+8|0;X=W+4|0;Y=c[X>>2]|0;Z=+(Y|0);_=Z/72.0;$=v+16|0;aa=$+8|0;h[aa>>3]=_;ba=c[k>>2]|0;ca=ba+8|0;da=c[ca>>2]|0;ea=da+140|0;fa=c[ea>>2]|0;ga=fa+8|0;c[ga>>2]=c[v>>2];c[ga+4>>2]=c[v+4>>2];c[ga+8>>2]=c[v+8>>2];c[ga+12>>2]=c[v+12>>2];c[ga+16>>2]=c[v+16>>2];c[ga+20>>2]=c[v+20>>2];c[ga+24>>2]=c[v+24>>2];c[ga+28>>2]=c[v+28>>2];i=j;return}function ko(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;while(1){b=c[f>>2]|0;c[f>>2]=b+4;a=c[b>>2]|0;c[g>>2]=a;if(!a)break;lo(c[g>>2]|0);NC(c[g>>2]|0,175049)|0}if(c[c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]>>2]|0)O4(c[c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]>>2]|0);lo(c[e>>2]|0);NC(c[e>>2]|0,175049)|0;c[h>>2]=$B(c[e>>2]|0)|0;while(1){l=c[e>>2]|0;if(!(c[h>>2]|0))break;c[j>>2]=aC(l,c[h>>2]|0)|0;c[k>>2]=OA(c[e>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;O4(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0);NC(c[k>>2]|0,175319)|0;c[k>>2]=QA(c[e>>2]|0,c[k>>2]|0)|0}mo(c[h>>2]|0);c[h>>2]=c[j>>2]}jB(l)|0;i=d;return}function lo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0);i=b;return}function mo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+112>>2]|0);O4(c[(c[(c[d>>2]|0)+8>>2]|0)+132>>2]|0);NC(c[d>>2]|0,175026)|0;i=b;return}function no(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0,x=0;d=i;i=i+80|0;e=d+76|0;f=d+72|0;g=d+68|0;j=d+64|0;k=d+60|0;l=d+40|0;m=d+32|0;n=d+56|0;o=d+52|0;p=d+48|0;q=d+24|0;r=d+16|0;s=d+8|0;t=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]>>2];c[g>>2]=bK(((c[j>>2]|0)+1|0)*24|0)|0;c[k>>2]=0;c[n>>2]=TA(c[f>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;b=c[n>>2]|0;a=c[c[n>>2]>>2]&3;if((c[((c[c[n>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)==(c[e>>2]|0)){b=c[n>>2]|0;c[o>>2]=c[((a|0)==3?b:b+32|0)+28>>2]}else{b=c[n>>2]|0;c[o>>2]=c[((a|0)==2?b:b+-32|0)+28>>2]}h[l>>3]=+h[c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3];h[m>>3]=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];c[(c[g>>2]|0)+((c[k>>2]|0)*24|0)>>2]=c[n>>2];u=+W(+(+h[m>>3]),+(+h[l>>3]));h[(c[g>>2]|0)+((c[k>>2]|0)*24|0)+8>>3]=u;h[(c[g>>2]|0)+((c[k>>2]|0)*24|0)+16>>3]=+h[l>>3]*+h[l>>3]+ +h[m>>3]*+h[m>>3];c[k>>2]=(c[k>>2]|0)+1;c[n>>2]=UA(c[f>>2]|0,c[n>>2]|0,c[e>>2]|0)|0}if((c[k>>2]|0)!=(c[j>>2]|0))La(127868,127845,643,127877);w3(c[g>>2]|0,c[j>>2]|0,24,67);if((c[j>>2]|0)<2){v=c[g>>2]|0;i=d;return v|0}c[k>>2]=0;a:while(1){if((c[k>>2]|0)>=((c[j>>2]|0)-1|0))break;h[q>>3]=+h[(c[g>>2]|0)+((c[k>>2]|0)*24|0)+8>>3];c[p>>2]=(c[k>>2]|0)+1;while(1){if((c[p>>2]|0)<(c[j>>2]|0))w=+h[(c[g>>2]|0)+((c[p>>2]|0)*24|0)+8>>3]==+h[q>>3];else w=0;x=c[p>>2]|0;if(!w)break;c[p>>2]=x+1}e=c[p>>2]|0;if((x|0)==((c[k>>2]|0)+1|0)){c[k>>2]=e;continue}if((e|0)==(c[j>>2]|0))h[t>>3]=3.141592653589793;else h[t>>3]=+h[(c[g>>2]|0)+((c[p>>2]|0)*24|0)+8>>3];h[s>>3]=(+h[t>>3]-+h[q>>3])/+((c[p>>2]|0)-(c[k>>2]|0)|0);if(+h[s>>3]>.03490658503988659)h[s>>3]=.03490658503988659;h[r>>3]=0.0;while(1){if((c[k>>2]|0)>=(c[p>>2]|0))continue a;e=(c[g>>2]|0)+((c[k>>2]|0)*24|0)+8|0;h[e>>3]=+h[e>>3]+ +h[r>>3];h[r>>3]=+h[r>>3]+ +h[s>>3];c[k>>2]=(c[k>>2]|0)+1}}v=c[g>>2]|0;i=d;return v|0}function oo(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;j=i;i=i+80|0;k=j+68|0;l=j+64|0;m=j+60|0;n=j+56|0;o=j+16|0;p=j+52|0;q=j+48|0;r=j+44|0;s=j+40|0;t=j+36|0;u=j+8|0;v=j;w=j+32|0;x=j+28|0;y=j+24|0;c[k>>2]=a;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;h[o>>3]=g;c[r>>2]=c[c[l>>2]>>2];c[q>>2]=b[(c[(c[r>>2]|0)+8>>2]|0)+168>>1];f=c[r>>2]|0;e=c[c[r>>2]>>2]&3;if((c[((c[c[r>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)==(c[k>>2]|0)){f=c[r>>2]|0;c[p>>2]=c[((e|0)==3?f:f+32|0)+28>>2]}else{f=c[r>>2]|0;c[p>>2]=c[((e|0)==2?f:f+-32|0)+28>>2]}h[v>>3]=(+h[o>>3]-+h[(c[l>>2]|0)+8>>3])/+(c[q>>2]|0);h[u>>3]=+h[(c[l>>2]|0)+8>>3];if(+h[v>>3]>.03490658503988659)h[v>>3]=.03490658503988659;l=c[n>>2]|0;if((c[k>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[w>>2]=l;c[y>>2]=1}else{c[w>>2]=l+(c[q>>2]|0)-1;c[y>>2]=-1;h[u>>3]=+h[u>>3]+ +h[v>>3]*+((c[q>>2]|0)-1|0);h[v>>3]=-+h[v>>3]}l=c[(c[(c[r>>2]|0)+8>>2]|0)+172>>2]|0;c[s>>2]=l;c[t>>2]=l;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(b[(c[(c[r>>2]|0)+8>>2]|0)+168>>1]|0))break;c[s>>2]=c[c[t>>2]>>2];c[(c[m>>2]|0)+(c[w>>2]<<4)>>2]=c[s>>2];l=c[s>>2]|0;p=c[c[s>>2]>>2]&3;if((c[(c[(c[((c[c[s>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+164>>2]|0)==(c[k>>2]|0)){l=c[s>>2]|0;z=c[((p|0)==3?l:l+32|0)+28>>2]|0}else{l=c[s>>2]|0;z=c[((p|0)==2?l:l+-32|0)+28>>2]|0}c[(c[m>>2]|0)+(c[w>>2]<<4)+4>>2]=z;h[(c[m>>2]|0)+(c[w>>2]<<4)+8>>3]=+h[u>>3];c[w>>2]=(c[w>>2]|0)+(c[y>>2]|0);h[u>>3]=+h[u>>3]+ +h[v>>3];c[x>>2]=(c[x>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+4}i=j;return (c[n>>2]|0)+(c[q>>2]|0)|0}function po(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[f>>2];c[k>>2]=c[g>>2];do if(!(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3])){if(+h[(c[j>>2]|0)+8>>3]<+h[(c[k>>2]|0)+8>>3]){c[e>>2]=-1;break}if(+h[(c[j>>2]|0)+16>>3]>+h[(c[k>>2]|0)+16>>3]){c[e>>2]=1;break}if(+h[(c[j>>2]|0)+16>>3]<+h[(c[k>>2]|0)+16>>3]){c[e>>2]=-1;break}else{c[e>>2]=0;break}}else c[e>>2]=1;while(0);i=d;return c[e>>2]|0}function qo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=qA(c[f>>2]|0,0,c[h>>2]|0,0)|0;c[k>>2]=d;if(!d){i=e;return}c[j>>2]=zA(c[f>>2]|0,c[k>>2]|0)|0;c[k>>2]=qA(c[g>>2]|0,0,c[h>>2]|0,0)|0;f=c[g>>2]|0;if(c[k>>2]|0){BA(f,c[k>>2]|0,c[j>>2]|0)|0;i=e;return}else{qA(f,0,c[h>>2]|0,c[j>>2]|0)|0;i=e;return}}function ro(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=fC(c[f>>2]|0,c[g>>2]|0,1)|0;MC(c[h>>2]|0,175026,304,1)|0;g=bK(32)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]=g;g=cK((e[(c[(c[f>>2]|0)+8>>2]|0)+176>>1]|0)<<3)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+132>>2]=g;i=d;return c[h>>2]|0}function so(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+112|0;j=g+56|0;k=g+32|0;l=g+92|0;m=g+88|0;n=g+84|0;o=g+80|0;p=g+76|0;q=g+72|0;r=g;s=g+96|0;t=g+68|0;u=g+64|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[u>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=zA(c[l>>2]|0,c[u>>2]|0)|0;if(!(a[c[p>>2]>>0]|0)){i=g;return}if((c[l>>2]|0)!=(c[c[n>>2]>>2]|0)){c[t>>2]=ID(c[l>>2]|0)|0;c[q>>2]=zA(c[t>>2]|0,c[u>>2]|0)|0;if((c[q>>2]|0)==(c[p>>2]|0)){i=g;return}if(!(J3(c[p>>2]|0,c[q>>2]|0)|0)){i=g;return}}a[s>>0]=0;q=c[p>>2]|0;c[k>>2]=r;c[k+4>>2]=r+8;c[k+8>>2]=r+16;c[k+12>>2]=r+16+8;c[k+16>>2]=s;if((l3(q,129031,k)|0)<4){k=wB(c[l>>2]|0)|0;l=c[p>>2]|0;c[j>>2]=k;c[j+4>>2]=l;$z(0,129049,j)|0;i=g;return}if(+h[4246]>0.0){h[r>>3]=+h[r>>3]/+h[4246];j=r+8|0;h[j>>3]=+h[j>>3]/+h[4246];j=r+16|0;h[j>>3]=+h[j>>3]/+h[4246];j=r+16+8|0;h[j>>3]=+h[j>>3]/+h[4246]}do if((a[s>>0]|0)!=33){j=(c[(c[m>>2]|0)+8>>2]|0)+119|0;if((a[s>>0]|0)==63){a[j>>0]=2;break}else{a[j>>0]=1;break}}else a[(c[(c[m>>2]|0)+8>>2]|0)+119>>0]=3;while(0);m=c[o>>2]|0;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];c[m+16>>2]=c[r+16>>2];c[m+20>>2]=c[r+20>>2];c[m+24>>2]=c[r+24>>2];c[m+28>>2]=c[r+28>>2];i=g;return}function to(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e+12|0;j=e;c[f>>2]=a;c[g>>2]=d;b[h>>1]=b[(c[(c[f>>2]|0)+8>>2]|0)+168>>1]|0;c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2];if(c[j>>2]|0)k=eK(c[j>>2]|0,(b[h>>1]|0)+1<<2)|0;else k=cK((b[h>>1]|0)+1<<2)|0;c[j>>2]=k;c[(c[j>>2]|0)+(b[h>>1]<<2)>>2]=c[g>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2]=c[j>>2];j=(c[(c[f>>2]|0)+8>>2]|0)+168|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16;i=e;return}function uo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+64|0;e=d+16|0;f=d;g=d+52|0;h=d+48|0;j=d+44|0;k=d+40|0;l=d+36|0;m=d+32|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=c[c[h>>2]>>2];h=c[j>>2]|0;c[k>>2]=c[((c[c[j>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2];h=c[j>>2]|0;c[l>>2]=c[((c[c[j>>2]>>2]&3|0)==3?h:h+32|0)+28>>2];c[m>>2]=8;h=N3(wB(c[g>>2]|0)|0)|0;b=h+(N3(wB(c[k>>2]|0)|0)|0)|0;h=b+(N3(wB(c[l>>2]|0)|0)|0)|0;c[m>>2]=(c[m>>2]|0)+h;h=(c[m>>2]|0)>=1e3;m=wB(c[g>>2]|0)|0;g=c[l>>2]|0;if(h){h=wB(g)|0;l=wB(c[k>>2]|0)|0;b=(c[c[j>>2]>>2]|0)>>>4;c[f>>2]=m;c[f+4>>2]=h;c[f+8>>2]=l;c[f+12>>2]=b;k3(127988,128989,f)|0;i=d;return 127988}else{f=c[(c[g+8>>2]|0)+120>>2]|0;g=c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]|0;k=(c[c[j>>2]>>2]|0)>>>4;c[e>>2]=m;c[e+4>>2]=f;c[e+8>>2]=g;c[e+12>>2]=k;k3(127988,129008,e)|0;i=d;return 127988}return 0}function vo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function wo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[e>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+1;if((c[(c[e>>2]|0)+8>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){b=(c[e>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+10;b=eK(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+4>>2]<<2)|0;c[c[e>>2]>>2]=b}c[(c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+8>>2]<<2)>>2]=c[f>>2];i=d;return}function xo(a){a=a|0;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b+4|0;c[d>>2]=a;c[8328]=c[c[13790]>>2];c[8329]=c[(c[13790]|0)+4>>2];c[8331]=c[(c[13790]|0)+8>>2];c[8333]=c[(c[13790]|0)+12>>2];h[4172]=0.0;h[4167]=+h[(c[13790]|0)+16>>3];h[4168]=+h[(c[13790]|0)+24>>3];a=c[d>>2]|0;c[8332]=eO(a,qA(c[d>>2]|0,0,129092,0)|0,600,0)|0;a=c[d>>2]|0;e=+fO(a,qA(c[d>>2]|0,0,129305,0)|0,.3,0.0);h[4169]=e;h[(c[13790]|0)+32>>3]=e;if(+h[(c[13790]|0)+40>>3]==-1.0){a=c[d>>2]|0;h[4170]=+fO(a,qA(c[d>>2]|0,0,129100,0)|0,-1.0,0.0)}else h[4170]=+h[(c[13790]|0)+40>>3];c[8330]=1;c[8342]=ul(c[d>>2]|0,2,33320)|0;if(!(c[8342]|0)){$z(0,129103,b)|0;c[8330]=2}c[8358]=(_(c[8333]|0,c[8332]|0)|0)/100|0;h[4174]=+h[4169]*+h[4169];if(!(c[8328]|0)){i=b;return}if(+h[4172]<=0.0)h[4172]=+h[4169]*3.0;h[4173]=+h[4172]*+h[4172];i=b;return}function yo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+80|0;e=d+64|0;f=d+60|0;g=d+56|0;j=d+52|0;k=d+48|0;l=d+32|0;m=d+44|0;n=d+16|0;o=d+40|0;p=d;c[e>>2]=a;c[f>>2]=b;c[k>>2]=c[c[(c[(c[e>>2]|0)+8>>2]|0)+140>>2]>>2];c[j>>2]=zo(c[e>>2]|0,c[f>>2]|0)|0;h[l>>3]=+h[4170];Ao(p,c[e>>2]|0,c[k>>2]|0);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];a:do if(c[8328]|0){c[m>>2]=dv(kB(c[e>>2]|0)|0)|0;p=c[m>>2]|0;ev(p,kB(c[e>>2]|0)|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[8359]|0))break;h[l>>3]=+Bo(+h[l>>3],c[g>>2]|0);Co(c[e>>2]|0,+h[l>>3],c[k>>2]|0,c[m>>2]|0);c[g>>2]=(c[g>>2]|0)+1}gv(c[m>>2]|0)}else{c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[8359]|0))break a;h[l>>3]=+Bo(+h[l>>3],c[g>>2]|0);Do(c[e>>2]|0,+h[l>>3],c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+1}}while(0);if(!(!(+h[n>>3]!=0.0)?!(+h[n+8>>3]!=0.0):0))q=11;b:do if((q|0)==11){c[o>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[o>>2]|0))break b;g=c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0;h[g>>3]=+h[g>>3]+ +h[n>>3];g=(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[g>>3]=+h[g>>3]+ +h[n+8>>3];c[o>>2]=aC(c[e>>2]|0,c[o>>2]|0)|0}}while(0);if(!(c[j>>2]|0)){i=d;return}Eo();i=d;return}function zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0,l=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(+h[4170]==-1.0){c[j>>2]=kB(c[e>>2]|0)|0;h[4170]=+h[4168]*+h[4169]*+O(+(+(c[j>>2]|0)))/5.0;c[g>>2]=1}k=+Bo(+h[4170],c[8358]|0);h[(c[f>>2]|0)+8>>3]=k;h[(c[f>>2]|0)+16>>3]=+h[4169];h[(c[f>>2]|0)+24>>3]=+h[4167];c[c[f>>2]>>2]=(c[8332]|0)-(c[8358]|0);if((c[8331]|0)<0){c[8359]=c[8358];c[(c[f>>2]|0)+32>>2]=c[c[f>>2]>>2];l=c[g>>2]|0;i=d;return l|0}j=c[8331]|0;if((c[8331]|0)<=(c[8358]|0)){c[8359]=j;c[(c[f>>2]|0)+32>>2]=0;l=c[g>>2]|0;i=d;return l|0}if((j|0)>(c[8332]|0)){l=c[g>>2]|0;i=d;return l|0}c[8359]=c[8358];c[(c[f>>2]|0)+32>>2]=(c[8331]|0)-(c[8358]|0);l=c[g>>2]|0;i=d;return l|0}function Ao(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0;g=i;i=i+160|0;j=g+152|0;k=g+148|0;l=g+144|0;m=g+96|0;n=g+140|0;o=g+136|0;p=g+120|0;q=g+80|0;r=g+116|0;s=g+72|0;t=g+64|0;u=g+56|0;v=g+48|0;w=g+40|0;x=g+32|0;y=g+16|0;z=g+112|0;A=g+108|0;B=g+104|0;C=g+8|0;D=g;c[j>>2]=e;c[k>>2]=f;f=kB(c[j>>2]|0)|0;c[l>>2]=f-(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+140>>2]|0)+4>>2]|0);c[o>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;h[s>>3]=6.283185307179586;c[n>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;if(a[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]|0){E=+h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3];if(c[o>>2]|0){if(E<+(c[p>>2]|0))F=+h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3];else F=+(c[p>>2]|0);c[p>>2]=~~F;if(+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]<+(c[p+4>>2]|0))G=+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];else G=+(c[p+4>>2]|0);c[p+4>>2]=~~G;if(+h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]>+(c[p+8>>2]|0))H=+h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3];else H=+(c[p+8>>2]|0);c[p+8>>2]=~~H;if(+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]>+(c[p+8+4>>2]|0))I=+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];else I=+(c[p+8+4>>2]|0);c[p+8+4>>2]=~~I}else{f=~~E;c[p>>2]=f;c[p+8>>2]=f;f=~~+h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];c[p+4>>2]=f;c[p+8+4>>2]=f}c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=aC(c[j>>2]|0,c[n>>2]|0)|0}h[m>>3]=+h[4169]*(+O(+(+(c[l>>2]|0)))+1.0);I=+h[m>>3]/2.0*1.2;h[4176]=I;h[4175]=I;do if((c[o>>2]|0)==1){h[q>>3]=+(c[p>>2]|0);h[q+8>>3]=+(c[p+4>>2]|0)}else{if((c[o>>2]|0)<=1){h[q+8>>3]=0.0;h[q>>3]=0.0;break}h[q>>3]=+((c[p>>2]|0)+(c[p+8>>2]|0)|0)/2.0;h[q+8>>3]=+((c[p+4>>2]|0)+(c[p+8+4>>2]|0)|0)/2.0;h[v>>3]=+((c[p+8>>2]|0)-(c[p>>2]|0)|0)*1.2;h[w>>3]=+((c[p+8+4>>2]|0)-(c[p+4>>2]|0)|0)*1.2;h[u>>3]=+h[4175]*4.0*+h[4176];h[x>>3]=+h[v>>3]*+h[w>>3]/+h[u>>3];do if(!(+h[x>>3]>=1.0)){if(+h[x>>3]>0.0){h[x>>3]=+O(+(+h[x>>3]))*2.0;h[4175]=+h[v>>3]/+h[x>>3];h[4176]=+h[w>>3]/+h[x>>3];break}if(+h[v>>3]>0.0){h[w>>3]=+h[u>>3]/+h[v>>3];h[4175]=+h[v>>3]/2.0;h[4176]=+h[w>>3]/2.0;break}if(+h[w>>3]>0.0){h[v>>3]=+h[u>>3]/+h[w>>3];h[4175]=+h[v>>3]/2.0;h[4176]=+h[w>>3]/2.0}}else{h[4175]=+h[v>>3]/2.0;h[4176]=+h[w>>3]/2.0}while(0);h[t>>3]=+W(+(+h[4176]),+(+h[4175]));h[4175]=+h[4175]/+Q(+(+h[t>>3]));h[4176]=+h[4176]/+R(+(+h[t>>3]))}while(0);h[4177]=+h[4175]*+h[4175];h[4178]=+h[4176]*+h[4176];if((c[8342]|0)==2)c[r>>2]=c[8330];else{t=_3()|0;c[r>>2]=t^(sb(0)|0)}v2(c[r>>2]|0);if(!(c[k>>2]|0)){r=(c[o>>2]|0)!=0;c[n>>2]=$B(c[j>>2]|0)|0;if(!r){while(1){if(!(c[n>>2]|0))break;I=+h[4175];H=I*(+r2()*2.0-1.0);h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=H;H=+h[4176];I=H*(+r2()*2.0-1.0);h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=I;c[n>>2]=aC(c[j>>2]|0,c[n>>2]|0)|0}c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];i=g;return}while(1){if(!(c[n>>2]|0))break;if(a[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]|0){r=c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0;h[r>>3]=+h[r>>3]-+h[q>>3];r=(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[r>>3]=+h[r>>3]-+h[q+8>>3]}else{I=+h[4175];H=I*(+r2()*2.0-1.0);h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=H;H=+h[4176];I=H*(+r2()*2.0-1.0);h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=I}c[n>>2]=aC(c[j>>2]|0,c[n>>2]|0)|0}c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];i=g;return}while(1){if(!(c[c[k>>2]>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];I=+h[4175]*+Q(+(+h[(c[k>>2]|0)+8>>3]));h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=I+ +h[q>>3];I=+h[4176]*+R(+(+h[(c[k>>2]|0)+8>>3]));h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=I+ +h[q+8>>3];a[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]=1;c[k>>2]=(c[k>>2]|0)+16}c[n>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;if(!((c[(c[(c[(c[n>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)==0?(c[(c[(c[n>>2]|0)+8>>2]|0)+212>>2]|0)==0:0))J=44;do if((J|0)==44){J=0;if(a[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]|0){k=c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0;h[k>>3]=+h[k>>3]-+h[q>>3];k=(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[k>>3]=+h[k>>3]-+h[q+8>>3];break};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[z>>2]=0;c[B>>2]=TA(c[j>>2]|0,c[n>>2]|0)|0;while(1){if(!(c[B>>2]|0))break;k=c[B>>2]|0;r=c[B>>2]|0;if((c[((c[c[B>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)!=(c[((c[c[B>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)){r=c[B>>2]|0;k=c[c[B>>2]>>2]&3;if((c[((c[c[B>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)==(c[n>>2]|0)){r=c[B>>2]|0;K=c[((k|0)==3?r:r+32|0)+28>>2]|0}else{r=c[B>>2]|0;K=c[((k|0)==2?r:r+-32|0)+28>>2]|0}c[A>>2]=K;if((d[(c[(c[A>>2]|0)+8>>2]|0)+119>>0]|0)>0){if(c[z>>2]|0){h[y>>3]=(+h[y>>3]*+(c[z>>2]|0)+ +h[c[(c[(c[A>>2]|0)+8>>2]|0)+132>>2]>>3])/+((c[z>>2]|0)+1|0);h[y+8>>3]=(+h[y+8>>3]*+(c[z>>2]|0)+ +h[(c[(c[(c[A>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3])/+((c[z>>2]|0)+1|0)}else{h[y>>3]=+h[c[(c[(c[A>>2]|0)+8>>2]|0)+132>>2]>>3];h[y+8>>3]=+h[(c[(c[(c[A>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]}c[z>>2]=(c[z>>2]|0)+1}}c[B>>2]=UA(c[j>>2]|0,c[B>>2]|0,c[n>>2]|0)|0}do if((c[z>>2]|0)<=1)if((c[z>>2]|0)==1){h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[y>>3]*.98+ +h[q>>3]*.1;h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[y+8>>3]*.9+ +h[q+8>>3]*.1;break}else{I=+h[s>>3];h[C>>3]=I*+r2();h[D>>3]=+r2()*.9;I=+h[D>>3]*+h[4175]*+Q(+(+h[C>>3]));h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=I;I=+h[D>>3]*+h[4176]*+R(+(+h[C>>3]));h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=I;break}else{h[c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[y>>3];h[(c[(c[(c[n>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[y+8>>3]}while(0);a[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]=1}while(0);c[n>>2]=aC(c[j>>2]|0,c[n>>2]|0)|0}c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];i=g;return}function Bo(a,b){a=+a;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+8|0;h[d>>3]=a;c[e>>2]=b;i=d;return +(+h[4170]*+((c[8332]|0)-(c[e>>2]|0)|0)/+(c[8332]|0))}function Co(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;c[g>>2]=a;h[j>>3]=b;c[k>>2]=d;c[l>>2]=e;if(+h[j>>3]<=0.0){i=f;return}fv(c[l>>2]|0);c[m>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;h[(c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]=0.0;h[(c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]|0)+16>>3]=0.0;e=~~+M(+(+h[c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]>>3]/+h[4172]));d=~~+M(+(+h[(c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]/+h[4172]));hv(c[l>>2]|0,e,d,c[m>>2]|0);c[m>>2]=aC(c[g>>2]|0,c[m>>2]|0)|0}c[m>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;c[n>>2]=OA(c[g>>2]|0,c[m>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;d=c[n>>2]|0;if((c[m>>2]|0)!=(c[((c[c[n>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)){d=c[n>>2]|0;Go(c[m>>2]|0,c[((c[c[n>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[n>>2]|0)}c[n>>2]=QA(c[g>>2]|0,c[n>>2]|0)|0}c[m>>2]=aC(c[g>>2]|0,c[m>>2]|0)|0}iv(c[l>>2]|0,28);Ho(c[g>>2]|0,+h[j>>3],c[k>>2]|0);i=f;return}function Do(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;c[f>>2]=a;h[g>>3]=b;c[j>>2]=d;if(+h[g>>3]<=0.0){i=e;return}c[k>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]=0.0;h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16>>3]=0.0;c[k>>2]=aC(c[f>>2]|0,c[k>>2]|0)|0}c[k>>2]=$B(c[f>>2]|0)|0;while(1){n=c[f>>2]|0;if(!(c[k>>2]|0))break;c[l>>2]=aC(n,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;Fo(c[k>>2]|0,c[l>>2]|0);c[l>>2]=aC(c[f>>2]|0,c[l>>2]|0)|0}c[m>>2]=OA(c[f>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;d=c[m>>2]|0;if((c[k>>2]|0)!=(c[((c[c[m>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)){d=c[m>>2]|0;Go(c[k>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[m>>2]|0)}c[m>>2]=QA(c[f>>2]|0,c[m>>2]|0)|0}c[k>>2]=aC(c[f>>2]|0,c[k>>2]|0)|0}Ho(n,+h[g>>3],c[j>>2]|0);i=e;return}function Eo(){h[4170]=-1.0;return}function Fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+8|0;j=d;c[e>>2]=a;c[f>>2]=b;h[g>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3];h[j>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];Io(c[e>>2]|0,c[f>>2]|0,+h[g>>3],+h[j>>3],+h[g>>3]*+h[g>>3]+ +h[j>>3]*+h[j>>3]);i=d;return}function Go(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0;e=i;i=i+64|0;f=e+48|0;g=e+44|0;j=e+40|0;k=e+32|0;l=e+24|0;m=e+16|0;n=e+8|0;o=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[k>>3]=+h[c[(c[(c[g>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3];h[l>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[o>>3]=+h[k>>3]*+h[k>>3]+ +h[l>>3]*+h[l>>3];while(1){if(!(+h[o>>3]==0.0))break;h[k>>3]=+(5-((t2()|0)%10|0)|0);h[l>>3]=+(5-((t2()|0)%10|0)|0);h[o>>3]=+h[k>>3]*+h[k>>3]+ +h[l>>3]*+h[l>>3]}h[n>>3]=+O(+(+h[o>>3]));p=+h[(c[(c[j>>2]|0)+8>>2]|0)+128>>3];q=+h[n>>3];if(c[8329]|0)h[m>>3]=p*(q-+h[(c[(c[j>>2]|0)+8>>2]|0)+136>>3])/+h[n>>3];else h[m>>3]=p*q/+h[(c[(c[j>>2]|0)+8>>2]|0)+136>>3];j=(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[j>>3]=+h[j>>3]-+h[k>>3]*+h[m>>3];j=(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[j>>3]=+h[j>>3]-+h[l>>3]*+h[m>>3];j=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[j>>3]=+h[j>>3]+ +h[k>>3]*+h[m>>3];k=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[k>>3]=+h[k>>3]+ +h[l>>3]*+h[m>>3];i=e;return}function Ho(a,b,e){a=a|0;b=+b;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+96|0;g=f+80|0;j=f+64|0;k=f+76|0;l=f+72|0;m=f+56|0;n=f+48|0;o=f+40|0;p=f+32|0;q=f+24|0;r=f+16|0;s=f+8|0;t=f;c[g>>2]=a;h[j>>3]=b;c[k>>2]=e;h[m>>3]=+h[j>>3]*+h[j>>3];c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;do if(!((d[(c[(c[l>>2]|0)+8>>2]|0)+119>>0]|0)&2)){h[r>>3]=+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16>>3];h[s>>3]=+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3];h[n>>3]=+h[r>>3]*+h[r>>3]+ +h[s>>3]*+h[s>>3];if(+h[n>>3]<+h[m>>3]){h[o>>3]=+h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]+ +h[r>>3];h[p>>3]=+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]+ +h[s>>3]}else{h[t>>3]=+h[j>>3]/+O(+(+h[n>>3]));h[o>>3]=+h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]+ +h[r>>3]*+h[t>>3];h[p>>3]=+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]+ +h[s>>3]*+h[t>>3]}b=+h[o>>3];if(!(c[k>>2]|0)){h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]=b;h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[p>>3];break}h[q>>3]=+O(+(b*+h[o>>3]/+h[4177]+ +h[p>>3]*+h[p>>3]/+h[4178]));if((c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)==0?(c[(c[(c[l>>2]|0)+8>>2]|0)+212>>2]|0)==0:0){h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[o>>3]/+h[q>>3];h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[p>>3]/+h[q>>3];break}b=+h[o>>3];if(+h[q>>3]>=1.0){h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]=.95*b/+h[q>>3];h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[p>>3]*.95/+h[q>>3];break}else{h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]=b;h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[p>>3];break}}while(0);c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}i=f;return}function Io(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;j=g+44|0;k=g+40|0;l=g+32|0;m=g+24|0;n=g+16|0;o=g+8|0;p=g;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;h[m>>3]=e;h[n>>3]=f;while(1){if(!(+h[n>>3]==0.0))break;h[l>>3]=+(5-((t2()|0)%10|0)|0);h[m>>3]=+(5-((t2()|0)%10|0)|0);h[n>>3]=+h[l>>3]*+h[l>>3]+ +h[m>>3]*+h[m>>3]}if(c[8329]|0){h[p>>3]=+O(+(+h[n>>3]));h[o>>3]=+h[4174]/(+h[p>>3]*+h[n>>3])}else h[o>>3]=+h[4174]/+h[n>>3];if((((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)==0?(c[(c[(c[j>>2]|0)+8>>2]|0)+212>>2]|0)==0:0)?(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)==0:0)?(c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0)==0:0)h[o>>3]=+h[o>>3]*10.0;n=(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[n>>3]=+h[n>>3]+ +h[l>>3]*+h[o>>3];n=(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[n>>3]=+h[n>>3]+ +h[m>>3]*+h[o>>3];n=(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[n>>3]=+h[n>>3]-+h[l>>3]*+h[o>>3];l=(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[l>>3]=+h[l>>3]-+h[m>>3]*+h[o>>3];i=g;return}function Jo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[e+28>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=c[c[f>>2]>>2];c[k>>2]=c[(c[f>>2]|0)+4>>2];c[l>>2]=c[h>>2];while(1){if(!(c[l>>2]|0))break;c[m>>2]=c[h>>2];while(1){n=c[l>>2]|0;if(!(c[m>>2]|0))break;if((n|0)!=(c[m>>2]|0))Fo(c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0);c[m>>2]=c[(c[m>>2]|0)+4>>2]}c[l>>2]=c[n+4>>2]}Ko(c[g>>2]|0,(c[j>>2]|0)-1|0,(c[k>>2]|0)-1|0,c[h>>2]|0);Ko(c[g>>2]|0,(c[j>>2]|0)-1|0,c[k>>2]|0,c[h>>2]|0);Ko(c[g>>2]|0,(c[j>>2]|0)-1|0,(c[k>>2]|0)+1|0,c[h>>2]|0);Ko(c[g>>2]|0,c[j>>2]|0,(c[k>>2]|0)-1|0,c[h>>2]|0);Ko(c[g>>2]|0,c[j>>2]|0,(c[k>>2]|0)+1|0,c[h>>2]|0);Ko(c[g>>2]|0,(c[j>>2]|0)+1|0,(c[k>>2]|0)-1|0,c[h>>2]|0);Ko(c[g>>2]|0,(c[j>>2]|0)+1|0,c[k>>2]|0,c[h>>2]|0);Ko(c[g>>2]|0,(c[j>>2]|0)+1|0,(c[k>>2]|0)+1|0,c[h>>2]|0);i=e;return 0}function Ko(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+64|0;g=f+52|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+28|0;p=f+24|0;q=f+16|0;r=f+8|0;s=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=jv(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if(!((c[m>>2]|0)!=0&(c[l>>2]|0)!=0)){i=f;return}do{c[o>>2]=c[c[l>>2]>>2];c[n>>2]=c[(c[m>>2]|0)+8>>2];while(1){if(!(c[n>>2]|0))break;c[p>>2]=c[c[n>>2]>>2];h[q>>3]=+h[c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]>>3];h[r>>3]=+h[(c[(c[(c[p>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[s>>3]=+h[q>>3]*+h[q>>3]+ +h[r>>3]*+h[r>>3];if(+h[s>>3]<+h[4173])Io(c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3]);c[n>>2]=c[(c[n>>2]|0)+4>>2]}c[l>>2]=c[(c[l>>2]|0)+4>>2]}while((c[l>>2]|0)!=0);i=f;return}function Lo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;f=e+8|0;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=yA(c[g>>2]|0,129941)|0;if(a[138998]|0)Y2(c[24742]|0,129147,e)|0;if(!((c[k>>2]|0)!=0?(a[c[k>>2]>>0]|0)!=0:0))c[k>>2]=129156;d=H3(c[k>>2]|0,58)|0;c[l>>2]=d;do if(d){if((c[l>>2]|0)!=(c[k>>2]|0)?(p1(a[c[k>>2]>>0]|0)|0)==0:0){n=10;break}c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=c[l>>2];b=u3(c[k>>2]|0)|0;c[j>>2]=b;c[j>>2]=(c[j>>2]|0)<0?0:b}else n=10;while(0);if((n|0)==10){c[j>>2]=0;c[m>>2]=c[k>>2]}if(a[138998]|0){k=c[24742]|0;n=c[m>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=n;Y2(k,129164,f)|0}if((c[j>>2]|0)!=0?(Mo(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0)==0:0){i=e;return}eq(c[g>>2]|0,c[m>>2]|0)|0;i=e;return}function Mo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=i;i=i+112|0;j=f+100|0;k=f+96|0;l=f+92|0;m=f+88|0;n=f+84|0;o=f+80|0;p=f+76|0;q=f+48|0;r=f+72|0;s=f+68|0;t=f+40|0;u=f;v=f+56|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[r>>2]=kB(c[k>>2]|0)|0;c[s>>2]=lB(c[k>>2]|0)|0;gq(v,c[k>>2]|0);c[12776]=c[v>>2];c[12777]=c[v+4>>2];c[12778]=c[v+8>>2];if(a[51112]|0){g[12776]=+g[12776]/72.0;g[12777]=+g[12777]/72.0}c[p>>2]=No(c[k>>2]|0)|0;if(!(c[p>>2]|0)){c[j>>2]=0;w=c[j>>2]|0;i=f;return w|0}c[o>>2]=0;v=u;e=c[l>>2]|0;l=v+40|0;do{c[v>>2]=c[e>>2];v=v+4|0;e=e+4|0}while((v|0)<(l|0));h[t>>3]=+h[u+16>>3];while(1){if(!(c[p>>2]|0))break;if((c[o>>2]|0)>=(c[m>>2]|0))break;Oo(c[k>>2]|0,c[r>>2]|0,u);h[4186]=+h[4183]*+h[4185];h[4187]=+(c[s>>2]|0)*+h[4186]*2.0/+(_(c[r>>2]|0,(c[r>>2]|0)-1|0)|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[8368]|0))break;h[q>>3]=+Po(c[n>>2]|0);if(+h[q>>3]<=0.0)break;c[p>>2]=Qo(c[k>>2]|0,+h[q>>3])|0;if(!(c[p>>2]|0))break;c[n>>2]=(c[n>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1;e=u+16|0;h[e>>3]=+h[e>>3]+ +h[t>>3]}c[j>>2]=c[p>>2];w=c[j>>2]|0;i=f;return w|0}function No(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;a=To(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return c[g>>2]|0}function Oo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=d;h[4182]=+h[(c[g>>2]|0)+16>>3];c[8360]=c[c[g>>2]>>2];h[4181]=+h[(c[g>>2]|0)+8>>3];c[8368]=c[(c[g>>2]|0)+32>>2];if(+h[(c[g>>2]|0)+24>>3]>0.0)h[4183]=+h[(c[g>>2]|0)+24>>3];h[4185]=+h[4182]*+h[4182];if(!(+h[4181]==0.0)){i=e;return}h[4181]=+h[4182]*+O(+(+(c[f>>2]|0)))/5.0;i=e;return}function Po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return +(+h[4181]*+((c[8360]|0)-(c[d>>2]|0)|0)/+(c[8360]|0))}function Qo(a,b){a=a|0;b=+b;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+80|0;f=e+72|0;g=e+68|0;j=e+40|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+32|0;o=e+24|0;p=e+16|0;q=e;r=e+52|0;s=e+48|0;c[g>>2]=a;h[j>>3]=b;c[r>>2]=0;c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]=0.0;h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16>>3]=0.0;c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[l>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[s>>2]=Ro(c[k>>2]|0,c[l>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}c[m>>2]=OA(c[g>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;a=c[m>>2]|0;So(c[k>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0);c[m>>2]=QA(c[g>>2]|0,c[m>>2]|0)|0}c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}if(!(c[r>>2]|0)){c[f>>2]=0;t=c[f>>2]|0;i=e;return t|0}h[n>>3]=+h[j>>3]*+h[j>>3];c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;do if((d[(c[(c[k>>2]|0)+8>>2]|0)+119>>0]|0|0)!=3){h[q>>3]=+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16>>3];h[q+8>>3]=+h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3];h[p>>3]=+h[q>>3]*+h[q>>3]+ +h[q+8>>3]*+h[q+8>>3];if(+h[p>>3]<+h[n>>3]){m=c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0;h[m>>3]=+h[m>>3]+ +h[q>>3];m=(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[m>>3]=+h[m>>3]+ +h[q+8>>3];break}else{h[o>>3]=+O(+(+h[p>>3]));m=c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0;h[m>>3]=+h[m>>3]+ +h[q>>3]*+h[j>>3]/+h[o>>3];m=(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8|0;h[m>>3]=+h[m>>3]+ +h[q+8>>3]*+h[j>>3]/+h[o>>3];break}}while(0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}c[f>>2]=c[r>>2];t=c[f>>2]|0;i=e;return t|0}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+8|0;j=d;c[e>>2]=a;c[f>>2]=b;h[g>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3];h[j>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];b=Vo(c[e>>2]|0,c[f>>2]|0,+h[g>>3],+h[j>>3],+h[g>>3]*+h[g>>3]+ +h[j>>3]*+h[j>>3])|0;i=d;return b|0}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;d=i;i=i+64|0;e=d+52|0;f=d+48|0;g=d+40|0;j=d+32|0;k=d+24|0;l=d+16|0;m=d+8|0;n=d;c[e>>2]=a;c[f>>2]=b;if(To(c[e>>2]|0,c[f>>2]|0)|0){i=d;return}h[g>>3]=+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3];h[j>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[l>>3]=+O(+(+h[g>>3]*+h[g>>3]+ +h[j>>3]*+h[j>>3]));o=+Uo(c[e>>2]|0);h[n>>3]=o+ +Uo(c[f>>2]|0);h[m>>3]=+h[l>>3]-+h[n>>3];h[k>>3]=+h[m>>3]*+h[m>>3]/((+h[4182]+ +h[n>>3])*+h[l>>3]);l=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[l>>3]=+h[l>>3]-+h[g>>3]*+h[k>>3];l=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[l>>3]=+h[l>>3]-+h[j>>3]*+h[k>>3];l=(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[l>>3]=+h[l>>3]+ +h[g>>3]*+h[k>>3];g=(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[g>>3]=+h[g>>3]+ +h[j>>3]*+h[k>>3];i=d;return}function To(a,b){a=a|0;b=b|0;var e=0,f=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0.0,u=0.0;e=i;i=i+32|0;f=e+24|0;j=e+20|0;k=e+8|0;l=e;m=e+16|0;c[f>>2]=a;c[j>>2]=b;h[k>>3]=+h[c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]>>3]-+h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3];if(+h[k>>3]<0.0)h[k>>3]=-+h[k>>3];h[l>>3]=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]-+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];if(+h[l>>3]<0.0)h[l>>3]=-+h[l>>3];n=+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3];if(d[51112]|0)o=n/2.0+ +g[12776];else o=n*+g[12776]/2.0;n=+h[(c[(c[j>>2]|0)+8>>2]|0)+32>>3];if(d[51112]|0)p=n/2.0+ +g[12776];else p=n*+g[12776]/2.0;if(!(+h[k>>3]<=o+p)){q=0;r=q&1;c[m>>2]=r;s=c[m>>2]|0;i=e;return s|0}p=+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3];if(d[51112]|0)t=p/2.0+ +g[12777];else t=p*+g[12777]/2.0;p=+h[(c[(c[j>>2]|0)+8>>2]|0)+40>>3];if(d[51112]|0)u=p/2.0+ +g[12777];else u=p*+g[12777]/2.0;q=+h[l>>3]<=t+u;r=q&1;c[m>>2]=r;s=c[m>>2]|0;i=e;return s|0}function Uo(a){a=a|0;var b=0,e=0,f=0,j=0,k=0.0,l=0.0,m=0.0;b=i;i=i+32|0;e=b+16|0;f=b+8|0;j=b;c[e>>2]=a;k=+h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3];if(d[51112]|0)l=k/2.0+ +g[12776];else l=k*+g[12776]/2.0;h[f>>3]=l;l=+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3];if(d[51112]|0)m=l/2.0+ +g[12777];else m=l*+g[12777]/2.0;h[j>>3]=m;m=+O(+(+h[f>>3]*+h[f>>3]+ +h[j>>3]*+h[j>>3]));i=b;return +m}function Vo(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;j=g+40|0;k=g+36|0;l=g+24|0;m=g+16|0;n=g+8|0;o=g+32|0;p=g;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;h[m>>3]=e;h[n>>3]=f;while(1){if(!(+h[n>>3]==0.0))break;h[l>>3]=+(5-((t2()|0)%10|0)|0);h[m>>3]=+(5-((t2()|0)%10|0)|0);h[n>>3]=+h[l>>3]*+h[l>>3]+ +h[m>>3]*+h[m>>3]}b=To(c[j>>2]|0,c[k>>2]|0)|0;c[o>>2]=b;if(b)h[p>>3]=+h[4186]/+h[n>>3];else h[p>>3]=+h[4187]/+h[n>>3];n=(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[n>>3]=+h[n>>3]+ +h[l>>3]*+h[p>>3];n=(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[n>>3]=+h[n>>3]+ +h[m>>3]*+h[p>>3];n=(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16|0;h[n>>3]=+h[n>>3]-+h[l>>3]*+h[p>>3];l=(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8|0;h[l>>3]=+h[l>>3]-+h[m>>3]*+h[p>>3];i=g;return c[o>>2]|0}function Wo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;QO(c[e>>2]|0,2);b[(c[(c[e>>2]|0)+8>>2]|0)+176>>1]=2;c[13799]=2;$o(c[e>>2]|0);i=d;return}function Xo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=i;i=i+64|0;e=d+56|0;f=d+52|0;g=d+48|0;h=d+44|0;j=d+40|0;k=d+36|0;l=d+32|0;m=d+28|0;n=d+24|0;o=d+20|0;p=d+16|0;q=d+12|0;r=d+8|0;s=d+4|0;t=d;c[f>>2]=a;c[g>>2]=b;c[e>>2]=c[13068];c[k>>2]=gB(129187,e,0)|0;MC(c[k>>2]|0,129195,280,1)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+140>>2]=c[k>>2];c[m>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;if(!(c[c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]>>2]|0)){e=c[k>>2]|0;b=wB(c[m>>2]|0)|0;c[l>>2]=ap(e,b,1,c[m>>2]|0)|0;c[c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]>>2]=c[l>>2]}c[m>>2]=aC(c[f>>2]|0,c[m>>2]|0)|0}c[m>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;c[p>>2]=OA(c[f>>2]|0,c[m>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;b=c[p>>2]|0;c[n>>2]=c[c[(c[(c[((c[c[p>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+112>>2]>>2];b=c[p>>2]|0;c[o>>2]=c[c[(c[(c[((c[c[p>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]>>2];if((c[n>>2]|0)!=(c[o>>2]|0))MC(VA(c[k>>2]|0,c[n>>2]|0,c[o>>2]|0,0,1)|0,175319,176,1)|0;c[p>>2]=QA(c[f>>2]|0,c[p>>2]|0)|0}c[m>>2]=aC(c[f>>2]|0,c[m>>2]|0)|0}c[j>>2]=fG(c[k>>2]|0,h,0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[h>>2]|0))break;c[q>>2]=c[(c[j>>2]|0)+(c[r>>2]<<2)>>2];c[l>>2]=$B(c[q>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[t>>2]=c[c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]>>2];c[p>>2]=OA(c[f>>2]|0,c[t>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;m=c[p>>2]|0;c[o>>2]=c[c[(c[(c[((c[c[p>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]>>2];if((c[l>>2]|0)!=(c[o>>2]|0)){c[s>>2]=VA(c[k>>2]|0,c[l>>2]|0,c[o>>2]|0,0,1)|0;MC(c[s>>2]|0,175319,176,1)|0;YA(c[q>>2]|0,c[s>>2]|0,1)|0}c[p>>2]=QA(c[f>>2]|0,c[p>>2]|0)|0}c[l>>2]=aC(c[q>>2]|0,c[l>>2]|0)|0}c[r>>2]=(c[r>>2]|0)+1}c[l>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;c[p>>2]=OA(c[k>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;r=bK(8)|0;c[(c[(c[p>>2]|0)+8>>2]|0)+120>>2]=r;c[p>>2]=QA(c[k>>2]|0,c[p>>2]|0)|0}c[l>>2]=aC(c[k>>2]|0,c[l>>2]|0)|0}c[c[g>>2]>>2]=c[h>>2];i=d;return c[j>>2]|0}function Yo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+64|0;d=b+52|0;e=b+48|0;f=b+44|0;g=b+40|0;h=b+36|0;j=b+32|0;k=b;c[d>>2]=a;if(!(kB(c[d>>2]|0)|0)){i=b;return}c[e>>2]=Xo(c[d>>2]|0,g)|0;a=c[c[e>>2]>>2]|0;a:do if((c[g>>2]|0)==1){Cw(a,c[d>>2]|0);bp(c[c[e>>2]>>2]|0);fq(c[d>>2]|0)|0}else{c[j>>2]=c[a+48>>2];GG(c[d>>2]|0,2,8,k)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+(c[h>>2]<<2)>>2];Cw(c[f>>2]|0,c[d>>2]|0);fq(c[f>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+1}FG(c[g>>2]|0,c[e>>2]|0,c[j>>2]|0,k)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break a;bp(c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]|0);c[h>>2]=(c[h>>2]|0)+1}}while(0);O4(c[e>>2]|0);i=b;return}function Zo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(kB(c[d>>2]|0)|0)){i=b;return}Wo(c[d>>2]|0);Yo(c[d>>2]|0);O4(c[(c[($B(c[d>>2]|0)|0)+8>>2]|0)+112>>2]|0);gm(c[d>>2]|0);nL(c[d>>2]|0);i=b;return}function _o(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;if(!(c[e>>2]|0)){i=b;return}cp(c[(c[(c[d>>2]|0)+8>>2]|0)+140>>2]|0);while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}O4(c[(c[g+8>>2]|0)+152>>2]|0);g=c[d>>2]|0;if((g|0)==(rC(c[d>>2]|0)|0)){i=b;return}PC(c[d>>2]|0,0,175049);i=b;return}function $o(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[g>>2]=0;c[h>>2]=bK((kB(c[d>>2]|0)|0)<<2)|0;a=bK((kB(c[d>>2]|0)|0)+1<<2)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;ql(c[e>>2]|0);c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]=(c[h>>2]|0)+(c[g>>2]<<2);a=c[e>>2]|0;j=c[g>>2]|0;c[g>>2]=j+1;c[(c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0)+(j<<2)>>2]=a;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;dp(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function ap(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=fC(c[g>>2]|0,c[j>>2]|0,1)|0;MC(c[m>>2]|0,175026,304,1)|0;j=bK(40)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]=j;if(c[k>>2]|0){k=bK(c[13799]<<3)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+132>>2]=k;h[(c[(c[m>>2]|0)+8>>2]|0)+88>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+88>>3];h[(c[(c[m>>2]|0)+8>>2]|0)+96>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+96>>3];h[(c[(c[m>>2]|0)+8>>2]|0)+80>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+80>>3];c[c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]>>2]=c[l>>2];n=c[m>>2]|0;i=f;return n|0}else{c[c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]>>2]=c[l>>2];n=c[m>>2]|0;i=f;return n|0}return 0}function bp(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]>>2];h[c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]>>3];h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function cp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;O4(c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}O4(c[(c[(c[e>>2]|0)+8>>2]|0)+112>>2]|0);O4(c[(c[(c[e>>2]|0)+8>>2]|0)+132>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}jB(g)|0;i=b;return}function dp(a){a=a|0;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175319,176,1)|0;yO(c[d>>2]|0)|0;e=+fO(c[d>>2]|0,c[13851]|0,1.0,0.0);h[(c[(c[d>>2]|0)+8>>2]|0)+128>>3]=e;i=b;return}function ep(b){b=b|0;var d=0,e=0,f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=i;i=i+144|0;e=d+40|0;f=d+140|0;j=d+136|0;k=d+16|0;l=d+132|0;m=d+128|0;n=d+124|0;o=d+120|0;p=d+116|0;q=d+104|0;r=d;s=d+100|0;t=d+88|0;u=d+56|0;c[f>>2]=b;c[l>>2]=-1;gp(c[f>>2]|0);c[j>>2]=(c[13799]|0)==2&1;if(!(kB(c[f>>2]|0)|0)){v=c[f>>2]|0;nL(v);i=d;return}c[s>>2]=pp()|0;hp(c[f>>2]|0,c[s>>2]|0);cq(c[f>>2]|0,k,0)|0;do if((c[k>>2]|0)==18&(c[j>>2]|0)!=0){c[j>>2]=0;c[(c[s>>2]|0)+124>>2]=c[k+8>>2];h[(c[s>>2]|0)+144>>3]=+h[k+16>>3];gq(t,c[f>>2]|0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];if(a[q+8>>0]|0){h[r>>3]=+g[q>>2]/72.0;h[r+8>>3]=+g[q+4>>2]/72.0;break}else{h[r>>3]=.05555555555555555;h[r+8>>3]=.05555555555555555;break}}else c[(c[s>>2]|0)+124>>2]=-1;while(0);c[m>>2]=fG(c[f>>2]|0,o,0)|0;q=c[f>>2]|0;if((c[o>>2]|0)==1){t=c[s>>2]|0;b=c[l>>2]|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];ip(q,t,b,e);if(c[j>>2]|0)dq(c[f>>2]|0,k)|0;gm(c[f>>2]|0)}else{GG(q,2,8,u)|0;c[u+12>>2]=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;c[n>>2]=c[(c[m>>2]|0)+(c[p>>2]<<2)>>2];iG(c[n>>2]|0)|0;q=c[n>>2]|0;b=c[s>>2]|0;t=c[l>>2]|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];ip(q,b,t,e);if(c[j>>2]|0)dq(c[n>>2]|0,k)|0;QO(c[n>>2]|0,2);gm(c[n>>2]|0);c[p>>2]=(c[p>>2]|0)+1}FG(c[o>>2]|0,c[m>>2]|0,c[f>>2]|0,u)|0}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;pC(c[f>>2]|0,c[(c[m>>2]|0)+(c[p>>2]<<2)>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+1}O4(c[m>>2]|0);qp(c[s>>2]|0);v=c[f>>2]|0;nL(v);i=d;return}function fp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}jp(g);i=b;return}function gp(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;f=d+4|0;g=d;c[f>>2]=a;QO(c[f>>2]|0,2);a=c[f>>2]|0;c[g>>2]=eO(a,qA(c[f>>2]|0,0,129471,0)|0,2,2)|0;a=c[f>>2]|0;h=qA(c[f>>2]|0,0,129477,0)|0;j=(eO(a,h,c[g>>2]|0,2)|0)&65535;b[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+176>>1]=j;if((e[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+176>>1]|0|0)<10)k=e[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+176>>1]|0;else k=10;j=k&65535;b[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+176>>1]=j;c[13799]=j&65535;j=((c[g>>2]|0)<(c[13799]|0)?c[g>>2]|0:c[13799]|0)&65535;b[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+178>>1]=j;np(c[f>>2]|0);i=d;return}function hp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+8|0;f=d+24|0;g=d+20|0;j=d+16|0;k=d+12|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[g>>2]|0)+108>>2];c[k>>2]=ul(c[f>>2]|0,2,j)|0;if((c[k>>2]|0)!=2)$z(0,129272,d)|0;c[(c[g>>2]|0)+108>>2]=c[j>>2];j=c[f>>2]|0;l=+fO(j,qA(c[f>>2]|0,0,129305,0)|0,-1.0,0.0);h[(c[g>>2]|0)+24>>3]=l;j=c[f>>2]|0;l=+fO(j,qA(c[f>>2]|0,0,129307,0)|0,1.0001234,0.0)*-1.0;h[c[g>>2]>>3]=l;j=c[f>>2]|0;k=eO(j,qA(c[f>>2]|0,0,129322,0)|0,2147483647,0)|0;c[(c[g>>2]|0)+40>>2]=k;k=c[f>>2]|0;j=lp(k,qA(c[f>>2]|0,0,129329,0)|0,0)|0;c[(c[g>>2]|0)+120>>2]=j;j=c[f>>2]|0;k=mp(j,qA(c[f>>2]|0,0,129339,0)|0,1)|0;c[(c[g>>2]|0)+132>>2]=k;c[(c[g>>2]|0)+136>>2]=0;k=(uO(yA(c[f>>2]|0,129348)|0,0)|0)&255;c[(c[g>>2]|0)+112>>2]=k;k=(uO(yA(c[f>>2]|0,129357)|0,1)|0)&255;c[(c[g>>2]|0)+128>>2]=k;k=c[f>>2]|0;l=+fO(k,qA(c[f>>2]|0,0,129372,0)|0,0.0,-1797693134862315708145274.0e284);h[(c[g>>2]|0)+152>>3]=l;k=c[f>>2]|0;j=eO(k,qA(c[f>>2]|0,0,129381,0)|0,0,0)|0;c[(c[g>>2]|0)+160>>2]=j;if((c[(c[g>>2]|0)+160>>2]|0)<=4){i=d;return}c[e>>2]=c[(c[g>>2]|0)+160>>2];$z(0,129394,e)|0;c[(c[g>>2]|0)+160>>2]=0;i=d;return}function ip(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=i;i=i+112|0;j=g+24|0;k=g+8|0;l=g+100|0;m=g+96|0;n=g+92|0;o=g+88|0;p=g+84|0;q=g+80|0;r=g+76|0;s=g+72|0;t=g+68|0;u=g+64|0;v=g+60|0;w=g+56|0;x=g+52|0;y=g;z=g+48|0;A=g+44|0;B=g+40|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;e=c[l>>2]|0;d=c[13799]|0;if((c[(c[m>>2]|0)+136>>2]|0)==1)c[w>>2]=aq(e,d,v)|0;else c[w>>2]=aq(e,d,0)|0;do if((c[(c[m>>2]|0)+124>>2]|0)>=0){d=c[l>>2]|0;if((c[(c[m>>2]|0)+160>>2]|0)>0){c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[o>>2]=$p(d,j,t,u)|0;break}else{c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[o>>2]=$p(d,j,0,0)|0;break}}else c[o>>2]=0;while(0);c[p>>2]=kp(c[l>>2]|0,c[m>>2]|0)|0;switch(c[(c[m>>2]|0)+136>>2]|0){case 1:case 0:{Ip(c[13799]|0,c[w>>2]|0,c[v>>2]|0,c[m>>2]|0,0,c[o>>2]|0,c[p>>2]|0,c[t>>2]|0,c[u>>2]|0,r);break}case 5:{_p(c[13799]|0,c[w>>2]|0,c[p>>2]|0,r);break}case 4:{c[x>>2]=200;h[y>>3]=.001;c[z>>2]=1;if(c[v>>2]|0){c[v>>2]=Rv(c[v>>2]|0,0)|0;c[z>>2]=1}else{c[v>>2]=bw(c[w>>2]|0)|0;c[z>>2]=0}if((c[n>>2]|0)>0){c[A>>2]=fw(c[n>>2]|0,c[v>>2]|0,c[z>>2]|0)|0;if(a[138998]|0){z=c[24742]|0;t=(c[(c[A>>2]|0)+8>>2]|0)/2|0;m=(c[(c[v>>2]|0)+8>>2]|0)/2|0;c[k>>2]=c[n>>2];c[k+4>>2]=t;c[k+8>>2]=m;Y2(z,129200,k)|0}Lv(c[v>>2]|0);c[v>>2]=c[A>>2]}Vp(c[13799]|0,c[w>>2]|0,c[v>>2]|0,p,1,c[x>>2]|0,+h[y>>3],r);break}default:{}}c[q>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;c[B>>2]=(c[p>>2]|0)+((_(c[13799]|0,c[(c[(c[q>>2]|0)+8>>2]|0)+120>>2]|0)|0)<<3);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[13799]|0))break;h[(c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[B>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[q>>2]=aC(c[l>>2]|0,c[q>>2]|0)|0}O4(c[o>>2]|0);O4(c[p>>2]|0);Lv(c[w>>2]|0);if(c[v>>2]|0)Lv(c[v>>2]|0);if(!(c[u>>2]|0)){i=g;return}O4(c[u>>2]|0);i=g;return}function jp(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function kp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[e+16>>2]=b;b=c[13799]|0;c[k>>2]=bK((_(b,kB(c[g>>2]|0)|0)|0)<<3)|0;if(!(qA(c[g>>2]|0,1,140246,0)|0)){c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}c[j>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;c[m>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+120>>2];a:do if((d[(c[(c[j>>2]|0)+8>>2]|0)+119>>0]|0|0)>0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[13799]|0))break a;b=_(c[m>>2]|0,c[13799]|0)|0;h[(c[k>>2]|0)+(b+(c[l>>2]|0)<<3)>>3]=+h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}}while(0);c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}function lp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[j>>2]|0)){c[g>>2]=c[k>>2];o=c[g>>2]|0;i=f;return o|0}c[l>>2]=zA(c[h>>2]|0,c[j>>2]|0)|0;j=(p1(a[c[l>>2]>>0]|0)|0)!=0;h=c[l>>2]|0;do if(j){e=u3(h)|0;c[m>>2]=e;if((e|0)<=4){c[n>>2]=c[m>>2];break}else{c[n>>2]=c[k>>2];break}}else{if(!(m1(a[h>>0]|0)|0)){c[n>>2]=c[k>>2];break}if(!(F3(c[l>>2]|0,129433)|0)){c[n>>2]=2;break}if(!(F3(c[l>>2]|0,129442)|0)){c[n>>2]=1;break}if(!(F3(c[l>>2]|0,173312)|0)){c[n>>2]=0;break}if(!(F3(c[l>>2]|0,129453)|0)){c[n>>2]=3;break}if(F3(c[l>>2]|0,129464)|0){c[n>>2]=c[k>>2];break}else{c[n>>2]=4;break}}while(0);c[g>>2]=c[n>>2];o=c[g>>2]|0;i=f;return o|0}function mp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[j>>2]|0)){c[g>>2]=c[k>>2];o=c[g>>2]|0;i=f;return o|0}c[l>>2]=zA(c[h>>2]|0,c[j>>2]|0)|0;j=(p1(a[c[l>>2]>>0]|0)|0)!=0;h=c[l>>2]|0;do if(j){e=u3(h)|0;c[m>>2]=e;if((e|0)<=2&(c[m>>2]|0)>=0){c[n>>2]=c[m>>2];break}else{c[n>>2]=c[k>>2];break}}else{if(!(m1(a[h>>0]|0)|0)){c[n>>2]=c[k>>2];break}if((F3(c[l>>2]|0,173312)|0)!=0?(F3(c[l>>2]|0,174911)|0)!=0:0){if(((F3(c[l>>2]|0,137409)|0)!=0?(F3(c[l>>2]|0,145584)|0)!=0:0)?(F3(c[l>>2]|0,145589)|0)!=0:0)if(F3(c[l>>2]|0,129428)|0){c[n>>2]=c[k>>2];break}else{c[n>>2]=2;break}c[n>>2]=1;break}c[n>>2]=0}while(0);c[g>>2]=c[n>>2];o=c[g>>2]|0;i=f;return o|0}function np(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;ql(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;op(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function op(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175319,176,1)|0;yO(c[d>>2]|0)|0;i=b;return}function pp(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=cK(168)|0;h[c[b>>2]>>3]=-1.0001234;h[(c[b>>2]|0)+8>>3]=1.0;c[(c[b>>2]|0)+16>>2]=1;h[(c[b>>2]|0)+24>>3]=-1.0;h[(c[b>>2]|0)+32>>3]=.2;c[(c[b>>2]|0)+40>>2]=0;c[(c[b>>2]|0)+44>>2]=4;c[(c[b>>2]|0)+48>>2]=1;c[(c[b>>2]|0)+52>>2]=45;c[(c[b>>2]|0)+56>>2]=10;h[(c[b>>2]|0)+64>>3]=.6;h[(c[b>>2]|0)+72>>3]=.001;c[(c[b>>2]|0)+80>>2]=500;h[(c[b>>2]|0)+88>>3]=.9;h[(c[b>>2]|0)+96>>3]=.1;c[(c[b>>2]|0)+104>>2]=1;c[(c[b>>2]|0)+108>>2]=123;c[(c[b>>2]|0)+112>>2]=0;c[(c[b>>2]|0)+116>>2]=0;c[(c[b>>2]|0)+120>>2]=0;c[(c[b>>2]|0)+124>>2]=0;c[(c[b>>2]|0)+128>>2]=1;c[(c[b>>2]|0)+132>>2]=3;c[(c[b>>2]|0)+136>>2]=0;h[(c[b>>2]|0)+144>>3]=-4.0;h[(c[b>>2]|0)+152>>3]=0.0;c[(c[b>>2]|0)+160>>2]=0;i=a;return c[b>>2]|0}function qp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[d>>2]|0);i=b;return}function rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[d>>2]|0);i=b;return}function sp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(184)|0;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+176>>2]=0;i=b;return c[e>>2]|0}function tp(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d+12|0;f=d;g=d+8|0;c[e>>2]=a;h[f>>3]=b;c[g>>2]=c[c[e>>2]>>2];h[(c[e>>2]|0)+8+(c[g>>2]<<3)>>3]=+h[f>>3];f=c[e>>2]|0;if(!(c[(c[e>>2]|0)+176>>2]|0)){a=(c[e>>2]|0)+176|0;if((c[f>>2]|0)==20){c[a>>2]=-1;c[c[e>>2]>>2]=(c[c[e>>2]>>2]|0)-1;i=d;return}c[a>>2]=1;if(20<((c[c[e>>2]>>2]|0)+1|0))j=20;else j=(c[c[e>>2]>>2]|0)+1|0;c[c[e>>2]>>2]=j;i=d;return}b=+h[(c[e>>2]|0)+8+(c[g>>2]<<3)>>3];j=c[g>>2]|0;if((c[f+176>>2]|0)==1){if(b<+h[(c[e>>2]|0)+8+(j-1<<3)>>3]?(c[c[e>>2]>>2]|0)<20:0){if(20<((c[c[e>>2]>>2]|0)+1|0))k=20;else k=(c[c[e>>2]>>2]|0)+1|0;c[c[e>>2]>>2]=k;i=d;return}k=c[e>>2]|0;c[k>>2]=(c[k>>2]|0)+-1;c[(c[e>>2]|0)+176>>2]=-1;i=d;return}else{if(b<+h[(c[e>>2]|0)+8+(j+1<<3)>>3]?(c[c[e>>2]>>2]|0)>0:0){if(0>((c[c[e>>2]>>2]|0)-1|0))l=0;else l=(c[c[e>>2]>>2]|0)-1|0;c[c[e>>2]>>2]=l;i=d;return}l=c[e>>2]|0;c[l>>2]=(c[l>>2]|0)+1;c[(c[e>>2]|0)+176>>2]=1;i=d;return}}function up(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[c[d>>2]>>2]|0}function vp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0.0;e=i;i=i+64|0;f=e+16|0;g=e+52|0;j=e+48|0;k=e+44|0;l=e+8|0;m=e;n=e+40|0;o=e+36|0;p=e+32|0;q=e+28|0;r=e+24|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=0.0;c[n>>2]=c[(c[g>>2]|0)+20>>2];c[o>>2]=c[(c[g>>2]|0)+24>>2];if(!(c[(c[n>>2]|0)+(c[c[g>>2]>>2]<<2)>>2]|0)){h[f>>3]=1.0;s=+h[f>>3];i=e;return +s}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[c[g>>2]>>2]|0))break;c[q>>2]=c[(c[n>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[n>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;h[m>>3]=0.0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[j>>2]|0))break;d=_(c[j>>2]|0,c[p>>2]|0)|0;b=_(c[j>>2]|0,c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;a=_(c[j>>2]|0,c[p>>2]|0)|0;t=_(c[j>>2]|0,c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]|0)|0;h[m>>3]=+h[m>>3]+(+h[(c[k>>2]|0)+(d+(c[r>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(b<<3)>>3])*(+h[(c[k>>2]|0)+(a+(c[r>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(t<<3)>>3]);c[r>>2]=(c[r>>2]|0)+1}u=+O(+(+h[m>>3]));h[l>>3]=+h[l>>3]+u;c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}h[f>>3]=+h[l>>3]/+(c[(c[n>>2]|0)+(c[c[g>>2]>>2]<<2)>>2]|0);s=+h[f>>3];i=e;return +s}function wp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<(c[c[h>>2]>>2]|0)){i=e;return}c[c[h>>2]>>2]=(c[g>>2]|0)+(0>10?0:10);g=eK(c[c[f>>2]>>2]|0,c[c[h>>2]>>2]<<3)|0;c[c[f>>2]>>2]=g;i=e;return}function xp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<(c[c[h>>2]>>2]|0)){i=e;return}c[c[h>>2]>>2]=(c[g>>2]|0)+(0>10?0:10);g=eK(c[c[f>>2]>>2]|0,c[c[h>>2]>>2]<<2)|0;c[c[f>>2]>>2]=g;i=e;return}function yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;f=i;i=i+64|0;g=f+32|0;j=f+56|0;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;o=f+16|0;p=f+8|0;q=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;h[q>>3]=1.0e-05;c[n>>2]=0;while(1){if((c[n>>2]|0)>=2)break;e=_(c[m>>2]|0,c[k>>2]|0)|0;d=_(c[l>>2]|0,c[k>>2]|0)|0;h[o+(c[n>>2]<<3)>>3]=+h[(c[j>>2]|0)+(e+(c[n>>2]|0)<<3)>>3]-+h[(c[j>>2]|0)+(d+(c[n>>2]|0)<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}r=+h[o>>3];s=+h[o+8>>3];t=+h[o+8>>3];if((+h[o>>3]>=0.0?r:-r)<=(+h[o+8>>3]>=0.0?s:-s)*+h[q>>3])if(t>0.0){h[g>>3]=1.5707963267948966;u=+h[g>>3];i=f;return +u}else{h[g>>3]=4.71238898038469;u=+h[g>>3];i=f;return +u}h[p>>3]=+V(+(t/+h[o>>3]));if(+h[o>>3]>0.0){if(+h[o+8>>3]<0.0)h[p>>3]=+h[p>>3]+6.283185307179586}else if(+h[o>>3]<0.0)h[p>>3]=+h[p>>3]+3.141592653589793;h[g>>3]=+h[p>>3];u=+h[g>>3];i=f;return +u}function zp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[f>>2];c[k>>2]=c[g>>2];do if(!(+h[c[j>>2]>>3]>+h[c[k>>2]>>3]))if(+h[c[j>>2]>>3]<+h[c[k>>2]>>3]){c[e>>2]=-1;break}else{c[e>>2]=0;break}else c[e>>2]=1;while(0);i=d;return c[e>>2]|0}function Ap(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0.0,Z=0.0,$=0.0;k=i;i=i+272|0;l=k+136|0;m=k+260|0;n=k+256|0;o=k+252|0;p=k+248|0;q=k+244|0;r=k+240|0;s=k+236|0;t=k+232|0;u=k+228|0;v=k+224|0;w=k+220|0;x=k+216|0;y=k+128|0;z=k+120|0;A=k+112|0;B=k+104|0;C=k+96|0;D=k+88|0;E=k+80|0;F=k+72|0;G=k+64|0;H=k+212|0;I=k+208|0;J=k+204|0;K=k+200|0;L=k+56|0;M=k+48|0;N=k+40|0;Q=k+32|0;R=k+196|0;S=k+192|0;T=k+188|0;U=k;V=k+184|0;W=k+180|0;X=k+176|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;c[s>>2]=c[n>>2];h[y>>3]=+h[c[o>>2]>>3];h[z>>3]=+h[(c[o>>2]|0)+24>>3];h[A>>3]=+h[(c[o>>2]|0)+32>>3];h[C>>3]=+h[(c[o>>2]|0)+72>>3];h[D>>3]=+(c[(c[o>>2]|0)+80>>2]|0);h[E>>3]=+h[(c[o>>2]|0)+88>>3];h[F>>3]=+h[(c[o>>2]|0)+96>>3];c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;h[N>>3]=0.0;c[R>>2]=0;c[S>>2]=c[(c[o>>2]|0)+104>>2];c[T>>2]=0;c[V>>2]=0;c[W>>2]=c[(c[o>>2]|0)+56>>2];c[X>>2]=0;if((c[s>>2]|0)==0|+h[D>>3]<=0.0){i=k;return}c[t>>2]=c[c[s>>2]>>2];c[u>>2]=c[(c[s>>2]|0)+4>>2];if((c[u>>2]|0)<=0|(c[m>>2]|0)<=0){i=k;return}c[X>>2]=sp(c[W>>2]|0)|0;c[c[r>>2]>>2]=0;if((c[t>>2]|0)==(c[u>>2]|0)){c[s>>2]=Mv(c[s>>2]|0,1)|0;c[H>>2]=c[(c[s>>2]|0)+20>>2];c[I>>2]=c[(c[s>>2]|0)+24>>2];a:do if(c[(c[o>>2]|0)+16>>2]|0){s2(c[(c[o>>2]|0)+108>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(_(c[m>>2]|0,c[u>>2]|0)|0))break a;Y=+rw();h[(c[q>>2]|0)+(c[v>>2]<<3)>>3]=Y;c[v>>2]=(c[v>>2]|0)+1}}while(0);if(+h[z>>3]<0.0){Y=+vp(c[s>>2]|0,c[m>>2]|0,c[q>>2]|0);h[z>>3]=Y;h[(c[o>>2]|0)+24>>3]=Y}if(+h[A>>3]<0.0){h[A>>3]=.2;h[(c[o>>2]|0)+32>>3]=.2}if(+h[y>>3]>=0.0){h[y>>3]=-1.0;h[c[o>>2]>>3]=-1.0}h[G>>3]=+P(+(+h[z>>3]),+(1.0-+h[y>>3]));Y=+P(+(+h[A>>3]),+((2.0-+h[y>>3])/3.0));h[B>>3]=Y/+h[z>>3];c[J>>2]=cK(_(c[m>>2]<<3,c[u>>2]|0)|0)|0;c[V>>2]=cK(_(c[m>>2]<<3,c[u>>2]|0)|0)|0;do{c[R>>2]=(c[R>>2]|0)+1;A=c[J>>2]|0;Z4(A|0,c[q>>2]|0,_(c[m>>2]<<3,c[u>>2]|0)|0)|0;c[J>>2]=A;h[Q>>3]=+h[N>>3];h[N>>3]=0.0;c[W>>2]=up(c[X>>2]|0)|0;A=c[m>>2]|0;t=c[u>>2]|0;j=c[W>>2]|0;g=c[q>>2]|0;if(c[(c[o>>2]|0)+116>>2]|0)c[T>>2]=yv(A,t,j,g,c[p>>2]|0)|0;else c[T>>2]=yv(A,t,j,g,0)|0;xv(c[T>>2]|0,c[V>>2]|0,c[q>>2]|0,+h[(c[o>>2]|0)+64>>3],+h[y>>3],+h[G>>3],U,c[r>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;g=_(c[v>>2]|0,c[m>>2]|0)|0;c[K>>2]=(c[V>>2]|0)+(g<<3);c[w>>2]=c[(c[H>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[w>>2]|0)>=(c[(c[H>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;b:do if((c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0)!=(c[v>>2]|0)){h[L>>3]=+zw(c[q>>2]|0,c[m>>2]|0,c[v>>2]|0,c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break b;g=_(c[v>>2]|0,c[m>>2]|0)|0;j=_(c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0,c[m>>2]|0)|0;t=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[t>>3]=+h[t>>3]-+h[B>>3]*(+h[(c[q>>2]|0)+(g+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(j+(c[x>>2]|0)<<3)>>3])*+h[L>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;j=_(c[v>>2]|0,c[m>>2]|0)|0;c[K>>2]=(c[V>>2]|0)+(j<<3);h[M>>3]=0.0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;h[M>>3]=+h[M>>3]+ +h[(c[K>>2]|0)+(c[x>>2]<<3)>>3]*+h[(c[K>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}h[M>>3]=+O(+(+h[M>>3]));h[N>>3]=+h[N>>3]+ +h[M>>3];c:do if(+h[M>>3]>0.0){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break c;j=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[j>>3]=+h[j>>3]/+h[M>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;j=_(c[v>>2]|0,c[m>>2]|0)|0;g=(c[q>>2]|0)+(j+(c[x>>2]|0)<<3)|0;h[g>>3]=+h[g>>3]+ +h[F>>3]*+h[(c[K>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}if(!(c[T>>2]|0)){if(a[138998]|0){g=c[24742]|0;Y=+h[F>>3];Z=+h[N>>3];j=c[(c[s>>2]|0)+8>>2]|0;$=+h[z>>3];c[l>>2]=c[R>>2];h[l+8>>3]=Y;h[l+16>>3]=Z;c[l+24>>2]=j;h[l+32>>3]=$;Y2(g,129481,l)|0}}else{Bv(c[T>>2]|0);tp(c[X>>2]|0,+h[U>>3]+ +h[U+8>>3]*.85+ +h[U+16>>3]*3.3)}h[F>>3]=+Jp(c[S>>2]|0,+h[F>>3],+h[N>>3],+h[Q>>3],+h[E>>3]);if(!(+h[F>>3]>+h[C>>3]))break}while(+(c[R>>2]|0)<+h[D>>3]);if(c[(c[o>>2]|0)+112>>2]|0)Kp(c[m>>2]|0,c[s>>2]|0,c[q>>2]|0)}else c[c[r>>2]>>2]=-100;rp(c[X>>2]|0);c[(c[o>>2]|0)+56>>2]=c[W>>2];if(c[J>>2]|0)O4(c[J>>2]|0);if((c[s>>2]|0)!=(c[n>>2]|0))Lv(c[s>>2]|0);if(!(c[V>>2]|0)){i=k;return}O4(c[V>>2]|0);i=k;return}function Bp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0.0,ea=0.0,fa=0.0,ga=0.0;j=i;i=i+256|0;k=j+240|0;l=j+236|0;m=j+232|0;n=j+228|0;o=j+224|0;p=j+220|0;q=j+216|0;r=j+212|0;s=j+208|0;t=j+204|0;u=j+200|0;v=j+196|0;w=j+120|0;x=j+112|0;y=j+104|0;z=j+96|0;A=j+88|0;B=j+80|0;C=j+72|0;D=j+64|0;E=j+56|0;F=j+192|0;G=j+188|0;H=j+184|0;I=j+180|0;J=j+48|0;K=j+40|0;L=j+32|0;M=j+24|0;N=j+176|0;Q=j+172|0;R=j+168|0;S=j+164|0;T=j+160|0;U=j+156|0;V=j+152|0;W=j+148|0;X=j+144|0;Y=j+16|0;Z=j+8|0;$=j;aa=j+140|0;ba=j+136|0;ca=j+132|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[l>>2];h[w>>3]=+h[c[m>>2]>>3];h[x>>3]=+h[(c[m>>2]|0)+24>>3];h[y>>3]=+h[(c[m>>2]|0)+32>>3];h[A>>3]=+h[(c[m>>2]|0)+72>>3];h[B>>3]=+(c[(c[m>>2]|0)+80>>2]|0);h[C>>3]=+h[(c[m>>2]|0)+88>>3];h[D>>3]=+h[(c[m>>2]|0)+96>>3];c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;h[L>>3]=0.0;c[N>>2]=0;c[Q>>2]=c[(c[m>>2]|0)+104>>2];c[R>>2]=0;c[S>>2]=0;c[T>>2]=0;c[U>>2]=10;c[V>>2]=0;c[W>>2]=0;c[X>>2]=0;h[Z>>3]=0.0;h[$>>3]=0.0;c[ba>>2]=c[(c[m>>2]|0)+56>>2];c[ca>>2]=0;Y2(c[24742]|0,129580,j+128|0)|0;if((c[q>>2]|0)==0|+h[B>>3]<=0.0){i=j;return}c[r>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[q>>2]|0)+4>>2];if((c[s>>2]|0)<=0|(c[k>>2]|0)<=0){i=j;return}c[aa>>2]=cK(_(c[s>>2]<<3,c[k>>2]|0)|0)|0;if((c[s>>2]|0)>=(c[(c[m>>2]|0)+52>>2]|0)){c[S>>2]=1;c[ca>>2]=sp(c[ba>>2]|0)|0;c[V>>2]=cK(_(c[U>>2]<<3,c[k>>2]|0)|0)|0;c[W>>2]=cK(c[U>>2]<<3)|0;c[X>>2]=cK(c[U>>2]<<3)|0}c[S>>2]=0;c[c[p>>2]>>2]=0;a:do if((c[r>>2]|0)==(c[s>>2]|0)){c[q>>2]=Mv(c[q>>2]|0,1)|0;c[F>>2]=c[(c[q>>2]|0)+20>>2];c[G>>2]=c[(c[q>>2]|0)+24>>2];b:do if(c[(c[m>>2]|0)+16>>2]|0){s2(c[(c[m>>2]|0)+108>>2]|0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(_(c[k>>2]|0,c[s>>2]|0)|0))break b;da=+rw();h[(c[o>>2]|0)+(c[t>>2]<<3)>>3]=da;c[t>>2]=(c[t>>2]|0)+1}}while(0);if(+h[x>>3]<0.0){da=+vp(c[q>>2]|0,c[k>>2]|0,c[o>>2]|0);h[x>>3]=da;h[(c[m>>2]|0)+24>>3]=da}if(+h[y>>3]<0.0){h[y>>3]=.2;h[(c[m>>2]|0)+32>>3]=.2}if(+h[w>>3]>=0.0){h[w>>3]=-1.0;h[c[m>>2]>>3]=-1.0}h[E>>3]=+P(+(+h[x>>3]),+(1.0-+h[w>>3]));da=+P(+(+h[y>>3]),+((2.0-+h[w>>3])/3.0));h[z>>3]=da/+h[x>>3];c[I>>2]=cK(c[k>>2]<<3)|0;c[H>>2]=cK(_(c[k>>2]<<3,c[s>>2]|0)|0)|0;do{c[t>>2]=0;while(1){if((c[t>>2]|0)>=(_(c[k>>2]|0,c[s>>2]|0)|0))break;h[(c[aa>>2]|0)+(c[t>>2]<<3)>>3]=0.0;c[t>>2]=(c[t>>2]|0)+1}c[N>>2]=(c[N>>2]|0)+1;g=c[H>>2]|0;Z4(g|0,c[o>>2]|0,_(c[k>>2]<<3,c[s>>2]|0)|0)|0;c[H>>2]=g;h[M>>3]=+h[L>>3];h[L>>3]=0.0;h[Y>>3]=0.0;do if(c[S>>2]|0){c[ba>>2]=up(c[ca>>2]|0)|0;g=c[k>>2]|0;f=c[s>>2]|0;e=c[ba>>2]|0;d=c[o>>2]|0;if(c[(c[m>>2]|0)+116>>2]|0){c[R>>2]=yv(g,f,e,d,c[n>>2]|0)|0;break}else{c[R>>2]=yv(g,f,e,d,0)|0;break}}while(0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;h[(c[I>>2]|0)+(c[v>>2]<<3)>>3]=0.0;c[v>>2]=(c[v>>2]|0)+1}c:do if(!(c[S>>2]|0)){d=(c[n>>2]|0)!=0?(c[(c[m>>2]|0)+116>>2]|0)!=0:0;c[u>>2]=0;if(d)while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break c;d:do if((c[u>>2]|0)!=(c[t>>2]|0)){h[J>>3]=+yw(c[o>>2]|0,c[k>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break d;d=_(c[t>>2]|0,c[k>>2]|0)|0;e=_(c[u>>2]|0,c[k>>2]|0)|0;da=+h[(c[n>>2]|0)+(c[u>>2]<<3)>>3]*+h[E>>3]*(+h[(c[o>>2]|0)+(d+(c[v>>2]|0)<<3)>>3]-+h[(c[o>>2]|0)+(e+(c[v>>2]|0)<<3)>>3]);ea=+h[J>>3];if(+h[w>>3]==-1.0){e=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[e>>3]=+h[e>>3]+da/(ea*+h[J>>3])}else{fa=da/+P(+ea,+(1.0-+h[w>>3]));e=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[e>>3]=+h[e>>3]+fa}c[v>>2]=(c[v>>2]|0)+1}}while(0);c[u>>2]=(c[u>>2]|0)+1}else while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break c;e:do if((c[u>>2]|0)!=(c[t>>2]|0)){h[J>>3]=+yw(c[o>>2]|0,c[k>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break e;e=_(c[t>>2]|0,c[k>>2]|0)|0;d=_(c[u>>2]|0,c[k>>2]|0)|0;fa=+h[E>>3]*(+h[(c[o>>2]|0)+(e+(c[v>>2]|0)<<3)>>3]-+h[(c[o>>2]|0)+(d+(c[v>>2]|0)<<3)>>3]);ea=+h[J>>3];if(+h[w>>3]==-1.0){d=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[d>>3]=+h[d>>3]+fa/(ea*+h[J>>3])}else{da=fa/+P(+ea,+(1.0-+h[w>>3]));d=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[d>>3]=+h[d>>3]+da}c[v>>2]=(c[v>>2]|0)+1}}while(0);c[u>>2]=(c[u>>2]|0)+1}}else{d=_(c[k>>2]|0,c[t>>2]|0)|0;wv(c[R>>2]|0,+h[(c[m>>2]|0)+64>>3],(c[o>>2]|0)+(d<<3)|0,c[t>>2]|0,T,U,V,W,X,Z,c[p>>2]|0);h[$>>3]=+h[$>>3]+ +h[Z>>3];h[Y>>3]=+h[Y>>3]+ +(c[T>>2]|0);if(c[c[p>>2]>>2]|0)break a;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[T>>2]|0))break c;if(+h[(c[X>>2]|0)+(c[u>>2]<<3)>>3]>1.0e-15)ga=+h[(c[X>>2]|0)+(c[u>>2]<<3)>>3];else ga=1.0e-15;h[J>>3]=ga;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;d=_(c[t>>2]|0,c[k>>2]|0)|0;e=_(c[u>>2]|0,c[k>>2]|0)|0;da=+h[(c[W>>2]|0)+(c[u>>2]<<3)>>3]*+h[E>>3]*(+h[(c[o>>2]|0)+(d+(c[v>>2]|0)<<3)>>3]-+h[(c[V>>2]|0)+(e+(c[v>>2]|0)<<3)>>3]);ea=+h[J>>3];if(+h[w>>3]==-1.0){e=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[e>>3]=+h[e>>3]+da/(ea*+h[J>>3])}else{fa=da/+P(+ea,+(1.0-+h[w>>3]));e=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[e>>3]=+h[e>>3]+fa}c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;e=_(c[t>>2]|0,c[k>>2]|0)|0;d=(c[aa>>2]|0)+(e+(c[v>>2]|0)<<3)|0;h[d>>3]=+h[d>>3]+ +h[(c[I>>2]|0)+(c[v>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;h[(c[I>>2]|0)+(c[v>>2]<<3)>>3]=0.0;c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=c[(c[F>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[F>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;f:do if((c[(c[G>>2]|0)+(c[u>>2]<<2)>>2]|0)!=(c[t>>2]|0)){h[J>>3]=+zw(c[o>>2]|0,c[k>>2]|0,c[t>>2]|0,c[(c[G>>2]|0)+(c[u>>2]<<2)>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break f;d=_(c[t>>2]|0,c[k>>2]|0)|0;e=_(c[(c[G>>2]|0)+(c[u>>2]<<2)>>2]|0,c[k>>2]|0)|0;f=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[f>>3]=+h[f>>3]-+h[z>>3]*(+h[(c[o>>2]|0)+(d+(c[v>>2]|0)<<3)>>3]-+h[(c[o>>2]|0)+(e+(c[v>>2]|0)<<3)>>3])*+h[J>>3];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[u>>2]=(c[u>>2]|0)+1}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;e=_(c[t>>2]|0,c[k>>2]|0)|0;d=(c[aa>>2]|0)+(e+(c[v>>2]|0)<<3)|0;h[d>>3]=+h[d>>3]+ +h[(c[I>>2]|0)+(c[v>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[s>>2]|0))break;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;d=_(c[t>>2]|0,c[k>>2]|0)|0;h[(c[I>>2]|0)+(c[v>>2]<<3)>>3]=+h[(c[aa>>2]|0)+(d+(c[v>>2]|0)<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}h[K>>3]=0.0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;h[K>>3]=+h[K>>3]+ +h[(c[I>>2]|0)+(c[v>>2]<<3)>>3]*+h[(c[I>>2]|0)+(c[v>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}h[K>>3]=+O(+(+h[K>>3]));h[L>>3]=+h[L>>3]+ +h[K>>3];g:do if(+h[K>>3]>0.0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break g;d=(c[I>>2]|0)+(c[v>>2]<<3)|0;h[d>>3]=+h[d>>3]/+h[K>>3];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[k>>2]|0))break;d=_(c[t>>2]|0,c[k>>2]|0)|0;e=(c[o>>2]|0)+(d+(c[v>>2]|0)<<3)|0;h[e>>3]=+h[e>>3]+ +h[D>>3]*+h[(c[I>>2]|0)+(c[v>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}if(c[R>>2]|0){Bv(c[R>>2]|0);h[Y>>3]=+h[Y>>3]/+(c[s>>2]|0);h[$>>3]=+h[$>>3]/+(c[s>>2]|0);tp(c[ca>>2]|0,+h[Y>>3]*5.0+ +h[$>>3])}h[D>>3]=+Jp(c[Q>>2]|0,+h[D>>3],+h[L>>3],+h[M>>3],+h[C>>3]);if(!(+h[D>>3]>+h[A>>3]))break}while(+(c[N>>2]|0)<+h[B>>3]);if(c[(c[m>>2]|0)+112>>2]|0)Kp(c[k>>2]|0,c[q>>2]|0,c[o>>2]|0)}else c[c[p>>2]>>2]=-100;while(0);if(c[S>>2]|0){rp(c[ca>>2]|0);c[(c[m>>2]|0)+56>>2]=c[ba>>2]}if(c[H>>2]|0)O4(c[H>>2]|0);if((c[q>>2]|0)!=(c[l>>2]|0))Lv(c[q>>2]|0);if(c[I>>2]|0)O4(c[I>>2]|0);if(c[V>>2]|0)O4(c[V>>2]|0);if(c[W>>2]|0)O4(c[W>>2]|0);if(c[X>>2]|0)O4(c[X>>2]|0);O4(c[aa>>2]|0);i=j;return}function Cp(a,b,e,f,g,j){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0.0,ha=0.0;k=i;i=i+272|0;l=k+128|0;m=k+256|0;n=k+252|0;o=k+248|0;p=k+244|0;q=k+240|0;r=k+236|0;s=k+232|0;t=k+228|0;u=k+224|0;v=k+220|0;w=k+216|0;x=k+212|0;y=k+120|0;z=k+112|0;A=k+104|0;B=k+96|0;C=k+88|0;D=k+80|0;E=k+72|0;F=k+64|0;G=k+56|0;H=k+208|0;I=k+204|0;J=k+200|0;K=k+196|0;L=k+48|0;M=k+40|0;N=k+32|0;Q=k+24|0;R=k+192|0;S=k+188|0;T=k+184|0;U=k+180|0;V=k+176|0;W=k+172|0;X=k+168|0;Y=k+164|0;Z=k+160|0;$=k+16|0;aa=k+8|0;ba=k;ca=k+156|0;da=k+152|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;c[s>>2]=c[n>>2];h[y>>3]=+h[c[o>>2]>>3];h[z>>3]=+h[(c[o>>2]|0)+24>>3];h[A>>3]=+h[(c[o>>2]|0)+32>>3];h[C>>3]=+h[(c[o>>2]|0)+72>>3];h[D>>3]=+(c[(c[o>>2]|0)+80>>2]|0);h[E>>3]=+h[(c[o>>2]|0)+88>>3];h[F>>3]=+h[(c[o>>2]|0)+96>>3];c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;h[N>>3]=0.0;c[R>>2]=0;c[S>>2]=c[(c[o>>2]|0)+104>>2];c[T>>2]=0;c[U>>2]=0;c[V>>2]=0;c[W>>2]=10;c[X>>2]=0;c[Y>>2]=0;c[Z>>2]=0;h[aa>>3]=0.0;h[ba>>3]=0.0;c[ca>>2]=c[(c[o>>2]|0)+56>>2];c[da>>2]=0;if((c[s>>2]|0)==0|+h[D>>3]<=0.0){i=k;return}c[t>>2]=c[c[s>>2]>>2];c[u>>2]=c[(c[s>>2]|0)+4>>2];if((c[u>>2]|0)<=0|(c[m>>2]|0)<=0){i=k;return}if((c[u>>2]|0)>=(c[(c[o>>2]|0)+52>>2]|0)){c[U>>2]=1;c[da>>2]=sp(c[ca>>2]|0)|0;c[X>>2]=cK(_(c[W>>2]<<3,c[m>>2]|0)|0)|0;c[Y>>2]=cK(c[W>>2]<<3)|0;c[Z>>2]=cK(c[W>>2]<<3)|0}c[c[r>>2]>>2]=0;a:do if((c[t>>2]|0)==(c[u>>2]|0)){c[s>>2]=Mv(c[s>>2]|0,1)|0;c[H>>2]=c[(c[s>>2]|0)+20>>2];c[I>>2]=c[(c[s>>2]|0)+24>>2];b:do if(c[(c[o>>2]|0)+16>>2]|0){s2(c[(c[o>>2]|0)+108>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(_(c[m>>2]|0,c[u>>2]|0)|0))break b;ea=+rw();h[(c[q>>2]|0)+(c[v>>2]<<3)>>3]=ea;c[v>>2]=(c[v>>2]|0)+1}}while(0);if(+h[z>>3]<0.0){ea=+vp(c[s>>2]|0,c[m>>2]|0,c[q>>2]|0);h[z>>3]=ea;h[(c[o>>2]|0)+24>>3]=ea}if(+h[A>>3]<0.0){h[A>>3]=.2;h[(c[o>>2]|0)+32>>3]=.2}if(+h[y>>3]>=0.0){h[y>>3]=-1.0;h[c[o>>2]>>3]=-1.0}h[G>>3]=+P(+(+h[z>>3]),+(1.0-+h[y>>3]));ea=+P(+(+h[A>>3]),+((2.0-+h[y>>3])/3.0));h[B>>3]=ea/+h[z>>3];c[K>>2]=cK(c[m>>2]<<3)|0;c[J>>2]=cK(_(c[m>>2]<<3,c[u>>2]|0)|0)|0;do{c[R>>2]=(c[R>>2]|0)+1;j=c[J>>2]|0;Z4(j|0,c[q>>2]|0,_(c[m>>2]<<3,c[u>>2]|0)|0)|0;c[J>>2]=j;h[Q>>3]=+h[N>>3];h[N>>3]=0.0;h[$>>3]=0.0;h[ba>>3]=0.0;do if(c[U>>2]|0){c[ca>>2]=up(c[da>>2]|0)|0;j=c[m>>2]|0;g=c[u>>2]|0;f=c[ca>>2]|0;e=c[q>>2]|0;if(c[(c[o>>2]|0)+116>>2]|0){c[T>>2]=yv(j,g,f,e,c[p>>2]|0)|0;break}else{c[T>>2]=yv(j,g,f,e,0)|0;break}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;h[(c[K>>2]|0)+(c[x>>2]<<3)>>3]=0.0;c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=c[(c[H>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[w>>2]|0)>=(c[(c[H>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;c:do if((c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0)!=(c[v>>2]|0)){h[L>>3]=+zw(c[q>>2]|0,c[m>>2]|0,c[v>>2]|0,c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break c;e=_(c[v>>2]|0,c[m>>2]|0)|0;f=_(c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0,c[m>>2]|0)|0;g=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[g>>3]=+h[g>>3]-+h[B>>3]*(+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3])*+h[L>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}d:do if(!(c[U>>2]|0)){f=(c[p>>2]|0)!=0?(c[(c[o>>2]|0)+116>>2]|0)!=0:0;c[w>>2]=0;if(f)while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break d;e:do if((c[w>>2]|0)!=(c[v>>2]|0)){h[L>>3]=+yw(c[q>>2]|0,c[m>>2]|0,c[v>>2]|0,c[w>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break e;f=_(c[v>>2]|0,c[m>>2]|0)|0;e=_(c[w>>2]|0,c[m>>2]|0)|0;ea=+h[(c[p>>2]|0)+(c[w>>2]<<3)>>3]*+h[G>>3]*(+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]);fa=+h[L>>3];if(+h[y>>3]==-1.0){e=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+ea/(fa*+h[L>>3])}else{ga=ea/+P(+fa,+(1.0-+h[y>>3]));e=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+ga}c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}else while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break d;f:do if((c[w>>2]|0)!=(c[v>>2]|0)){h[L>>3]=+yw(c[q>>2]|0,c[m>>2]|0,c[v>>2]|0,c[w>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break f;e=_(c[v>>2]|0,c[m>>2]|0)|0;f=_(c[w>>2]|0,c[m>>2]|0)|0;ga=+h[G>>3]*(+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]);fa=+h[L>>3];if(+h[y>>3]==-1.0){f=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+ga/(fa*+h[L>>3])}else{ea=ga/+P(+fa,+(1.0-+h[y>>3]));f=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+ea}c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}}else{f=_(c[m>>2]|0,c[v>>2]|0)|0;wv(c[T>>2]|0,+h[(c[o>>2]|0)+64>>3],(c[q>>2]|0)+(f<<3)|0,c[v>>2]|0,V,W,X,Y,Z,aa,c[r>>2]|0);h[ba>>3]=+h[ba>>3]+ +h[aa>>3];h[$>>3]=+h[$>>3]+ +(c[V>>2]|0);if(c[c[r>>2]>>2]|0)break a;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[V>>2]|0))break d;if(+h[(c[Z>>2]|0)+(c[w>>2]<<3)>>3]>1.0e-15)ha=+h[(c[Z>>2]|0)+(c[w>>2]<<3)>>3];else ha=1.0e-15;h[L>>3]=ha;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;f=_(c[v>>2]|0,c[m>>2]|0)|0;e=_(c[w>>2]|0,c[m>>2]|0)|0;ea=+h[(c[Y>>2]|0)+(c[w>>2]<<3)>>3]*+h[G>>3]*(+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]-+h[(c[X>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]);fa=+h[L>>3];if(+h[y>>3]==-1.0){e=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+ea/(fa*+h[L>>3])}else{ga=ea/+P(+fa,+(1.0-+h[y>>3]));e=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+ga}c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}}while(0);h[M>>3]=0.0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;h[M>>3]=+h[M>>3]+ +h[(c[K>>2]|0)+(c[x>>2]<<3)>>3]*+h[(c[K>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}h[M>>3]=+O(+(+h[M>>3]));h[N>>3]=+h[N>>3]+ +h[M>>3];g:do if(+h[M>>3]>0.0){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break g;e=(c[K>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]/+h[M>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[m>>2]|0))break;e=_(c[v>>2]|0,c[m>>2]|0)|0;f=(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)|0;h[f>>3]=+h[f>>3]+ +h[F>>3]*+h[(c[K>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}if(c[T>>2]|0){Bv(c[T>>2]|0);h[$>>3]=+h[$>>3]/+(c[u>>2]|0);h[ba>>3]=+h[ba>>3]/+(c[u>>2]|0);if((d[138998]|0)&0){f=c[24742]|0;ga=+h[ba>>3];fa=+h[$>>3]*2.0+ +h[ba>>3];h[l>>3]=+h[$>>3];h[l+8>>3]=ga;h[l+16>>3]=fa;Y2(f,129613,l)|0}tp(c[da>>2]|0,+h[$>>3]*5.0+ +h[ba>>3])}h[F>>3]=+Jp(c[S>>2]|0,+h[F>>3],+h[N>>3],+h[Q>>3],+h[E>>3]);if(!(+h[F>>3]>+h[C>>3]))break}while(+(c[R>>2]|0)<+h[D>>3]);if(c[(c[o>>2]|0)+112>>2]|0)Kp(c[m>>2]|0,c[s>>2]|0,c[q>>2]|0)}else c[c[r>>2]>>2]=-100;while(0);if(c[U>>2]|0){rp(c[da>>2]|0);c[(c[o>>2]|0)+56>>2]=c[ca>>2]}if(c[J>>2]|0)O4(c[J>>2]|0);if((c[s>>2]|0)!=(c[n>>2]|0))Lv(c[s>>2]|0);if(c[K>>2]|0)O4(c[K>>2]|0);if(c[X>>2]|0)O4(c[X>>2]|0);if(c[Y>>2]|0)O4(c[Y>>2]|0);if(!(c[Z>>2]|0)){i=k;return}O4(c[Z>>2]|0);i=k;return}function Dp(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0.0,ka=0.0,la=0.0;l=i;i=i+272|0;m=l+144|0;n=l+128|0;o=l+264|0;p=l+260|0;q=l+256|0;r=l+252|0;s=l+248|0;t=l+244|0;u=l+120|0;v=l+240|0;w=l+236|0;x=l+232|0;y=l+228|0;z=l+224|0;A=l+220|0;B=l+216|0;C=l+112|0;D=l+104|0;E=l+96|0;F=l+88|0;G=l+80|0;H=l+72|0;I=l+64|0;J=l+56|0;K=l+212|0;L=l+208|0;M=l+204|0;N=l+200|0;Q=l+196|0;R=l+48|0;S=l+192|0;T=l+188|0;U=l+40|0;V=l+32|0;W=l+24|0;X=l+16|0;Y=l+184|0;Z=l+180|0;$=l+176|0;aa=l+172|0;ba=l+168|0;ca=l+164|0;da=l+160|0;ea=l+156|0;fa=l+152|0;ga=l+8|0;ha=l;ia=l+148|0;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;h[u>>3]=j;c[v>>2]=k;c[w>>2]=c[p>>2];h[C>>3]=+h[c[r>>2]>>3];h[D>>3]=+h[(c[r>>2]|0)+32>>3];h[E>>3]=+h[(c[r>>2]|0)+72>>3];h[F>>3]=+(c[(c[r>>2]|0)+80>>2]|0);h[G>>3]=+h[(c[r>>2]|0)+88>>3];h[H>>3]=+h[(c[r>>2]|0)+96>>3];h[J>>3]=1.0;c[K>>2]=0;c[L>>2]=0;c[M>>2]=0;c[N>>2]=0;c[S>>2]=0;c[T>>2]=0;h[W>>3]=0.0;c[Y>>2]=0;c[Z>>2]=c[(c[r>>2]|0)+104>>2];c[$>>2]=0;c[aa>>2]=0;c[ba>>2]=0;c[ca>>2]=10;c[da>>2]=0;c[ea>>2]=0;c[fa>>2]=0;h[ha>>3]=0.0;c[ia>>2]=10;if((c[w>>2]|0)==0|+h[F>>3]<=0.0){i=l;return}c[x>>2]=c[c[w>>2]>>2];c[y>>2]=c[(c[w>>2]|0)+4>>2];if((c[y>>2]|0)<=0|(c[o>>2]|0)<=0){i=l;return}if((c[(c[r>>2]|0)+132>>2]|0)!=0?(c[y>>2]|0)>=(c[(c[r>>2]|0)+52>>2]|0):0){c[aa>>2]=1;c[da>>2]=cK(_(c[ca>>2]<<3,c[o>>2]|0)|0)|0;c[ea>>2]=cK(c[ca>>2]<<3)|0;c[fa>>2]=cK(c[ca>>2]<<3)|0}c[c[v>>2]>>2]=0;a:do if((c[x>>2]|0)==(c[y>>2]|0)){c[w>>2]=Mv(c[w>>2]|0,1)|0;c[K>>2]=c[(c[w>>2]|0)+20>>2];c[L>>2]=c[(c[w>>2]|0)+24>>2];if(c[q>>2]|0){c[M>>2]=c[(c[q>>2]|0)+20>>2];c[N>>2]=c[(c[q>>2]|0)+24>>2];c[Q>>2]=c[(c[q>>2]|0)+28>>2]}else{c[M>>2]=c[K>>2];c[N>>2]=c[L>>2];c[Q>>2]=0}if(+h[u>>3]<0.0){h[R>>3]=+Lp(c[y>>2]|0,c[M>>2]|0,c[N>>2]|0,c[Q>>2]|0);h[u>>3]=+h[u>>3]*(+(c[(c[M>>2]|0)+(c[y>>2]<<2)>>2]|0)/(+(c[y>>2]|0)*+(c[y>>2]|0)-+(c[(c[M>>2]|0)+(c[y>>2]<<2)>>2]|0)))/+P(+(+h[R>>3]),+(+h[C>>3]+1.0));k=c[24742]|0;j=+h[u>>3];h[n>>3]=+h[R>>3];h[n+8>>3]=j;Y2(k,129664,n)|0}b:do if(c[(c[r>>2]|0)+16>>2]|0){Y2(c[24742]|0,129686,m)|0;s2(c[(c[r>>2]|0)+108>>2]|0);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(_(c[o>>2]|0,c[y>>2]|0)|0))break b;j=+rw();h[(c[t>>2]|0)+(c[z>>2]<<3)>>3]=j;c[z>>2]=(c[z>>2]|0)+1}}while(0);Mp(c[y>>2]|0,c[o>>2]|0,c[t>>2]|0,c[M>>2]|0,c[N>>2]|0,c[Q>>2]|0,+h[J>>3]);if(+h[D>>3]<0.0){h[D>>3]=.2;h[(c[r>>2]|0)+32>>3]=.2}if(+h[C>>3]>=0.0){h[C>>3]=-1.0;h[c[r>>2]>>3]=-1.0}c[T>>2]=cK(c[o>>2]<<3)|0;c[S>>2]=cK(_(c[o>>2]<<3,c[y>>2]|0)|0)|0;do{c[Y>>2]=(c[Y>>2]|0)+1;k=c[S>>2]|0;Z4(k|0,c[t>>2]|0,_(c[o>>2]<<3,c[y>>2]|0)|0)|0;c[S>>2]=k;h[X>>3]=+h[W>>3];h[W>>3]=0.0;h[ga>>3]=0.0;do if(c[aa>>2]|0){k=c[o>>2]|0;g=c[y>>2]|0;f=c[ia>>2]|0;e=c[t>>2]|0;if(c[(c[r>>2]|0)+116>>2]|0){c[$>>2]=yv(k,g,f,e,c[s>>2]|0)|0;break}else{c[$>>2]=yv(k,g,f,e,0)|0;break}}while(0);c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[y>>2]|0))break;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break;h[(c[T>>2]|0)+(c[B>>2]<<3)>>3]=0.0;c[B>>2]=(c[B>>2]|0)+1}c[A>>2]=c[(c[M>>2]|0)+(c[z>>2]<<2)>>2];while(1){if((c[A>>2]|0)>=(c[(c[M>>2]|0)+((c[z>>2]|0)+1<<2)>>2]|0))break;c:do if((c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0)!=(c[z>>2]|0)){h[U>>3]=+yw(c[t>>2]|0,c[o>>2]|0,c[z>>2]|0,c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0);if(c[Q>>2]|0)h[J>>3]=+h[(c[Q>>2]|0)+(c[A>>2]<<3)>>3];d:do if(!(+h[(c[r>>2]|0)+8>>3]==2.0)){j=+h[J>>3];if(+h[(c[r>>2]|0)+8>>3]==1.0){h[I>>3]=1.0/(j*+h[J>>3]);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break d;e=_(c[z>>2]|0,c[o>>2]|0)|0;f=_(c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0,c[o>>2]|0)|0;g=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[g>>3]=+h[g>>3]+-+h[I>>3]*(+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3])*(+h[U>>3]-+h[J>>3])/+h[U>>3];c[B>>2]=(c[B>>2]|0)+1}}else{h[I>>3]=1.0/+P(+j,+(+h[(c[r>>2]|0)+8>>3]+1.0));c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break d;f=_(c[z>>2]|0,c[o>>2]|0)|0;e=_(c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0,c[o>>2]|0)|0;ja=-+h[I>>3]*(+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3])*+P(+(+h[U>>3]-+h[J>>3]),+(+h[(c[r>>2]|0)+8>>3]));e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]+ja/+h[U>>3];c[B>>2]=(c[B>>2]|0)+1}}}else{h[I>>3]=1.0/(+h[J>>3]*+h[J>>3]*+h[J>>3]);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break d;e=_(c[z>>2]|0,c[o>>2]|0)|0;f=_(c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0,c[o>>2]|0)|0;g=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[g>>3]=+h[g>>3]+-+h[I>>3]*(+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3])*(+h[U>>3]-+h[J>>3])*(+h[U>>3]-+h[J>>3])/+h[U>>3];c[B>>2]=(c[B>>2]|0)+1}}while(0);f=(c[s>>2]|0)!=0?(c[(c[r>>2]|0)+116>>2]|0)!=0:0;c[B>>2]=0;if(f)while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break c;f=_(c[z>>2]|0,c[o>>2]|0)|0;e=_(c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0,c[o>>2]|0)|0;j=+h[u>>3]*+h[(c[s>>2]|0)+(c[A>>2]<<3)>>3]*(+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]);ja=+h[U>>3];if(+h[C>>3]==-1.0){e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]-j/(ja*+h[U>>3])}else{ka=j/+P(+ja,+(1.0-+h[C>>3]));e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]-ka}c[B>>2]=(c[B>>2]|0)+1}else while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break c;e=_(c[z>>2]|0,c[o>>2]|0)|0;f=_(c[(c[N>>2]|0)+(c[A>>2]<<2)>>2]|0,c[o>>2]|0)|0;ka=+h[u>>3]*(+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]);ja=+h[U>>3];if(+h[C>>3]==-1.0){f=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[f>>3]=+h[f>>3]-ka/(ja*+h[U>>3])}else{j=ka/+P(+ja,+(1.0-+h[C>>3]));f=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[f>>3]=+h[f>>3]-j}c[B>>2]=(c[B>>2]|0)+1}}while(0);c[A>>2]=(c[A>>2]|0)+1}e:do if(!(c[aa>>2]|0)){f=(c[s>>2]|0)!=0?(c[(c[r>>2]|0)+116>>2]|0)!=0:0;c[A>>2]=0;if(f)while(1){if((c[A>>2]|0)>=(c[y>>2]|0))break e;f:do if((c[A>>2]|0)!=(c[z>>2]|0)){h[U>>3]=+yw(c[t>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break f;f=_(c[z>>2]|0,c[o>>2]|0)|0;e=_(c[A>>2]|0,c[o>>2]|0)|0;j=+h[u>>3]*+h[(c[s>>2]|0)+(c[A>>2]<<3)>>3]*(+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]);ja=+h[U>>3];if(+h[C>>3]==-1.0){e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]+j/(ja*+h[U>>3])}else{ka=j/+P(+ja,+(1.0-+h[C>>3]));e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]+ka}c[B>>2]=(c[B>>2]|0)+1}}while(0);c[A>>2]=(c[A>>2]|0)+1}else while(1){if((c[A>>2]|0)>=(c[y>>2]|0))break e;g:do if((c[A>>2]|0)!=(c[z>>2]|0)){h[U>>3]=+yw(c[t>>2]|0,c[o>>2]|0,c[z>>2]|0,c[A>>2]|0);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break g;e=_(c[z>>2]|0,c[o>>2]|0)|0;f=_(c[A>>2]|0,c[o>>2]|0)|0;ka=+h[u>>3]*(+h[(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]-+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]);ja=+h[U>>3];if(+h[C>>3]==-1.0){f=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[f>>3]=+h[f>>3]+ka/(ja*+h[U>>3])}else{j=ka/+P(+ja,+(1.0-+h[C>>3]));f=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[f>>3]=+h[f>>3]+j}c[B>>2]=(c[B>>2]|0)+1}}while(0);c[A>>2]=(c[A>>2]|0)+1}}else{f=_(c[o>>2]|0,c[z>>2]|0)|0;wv(c[$>>2]|0,+h[(c[r>>2]|0)+64>>3],(c[t>>2]|0)+(f<<3)|0,c[z>>2]|0,ba,ca,da,ea,fa,ha,c[v>>2]|0);h[ga>>3]=+h[ga>>3]+ +(c[ba>>2]|0);if(c[c[v>>2]>>2]|0)break a;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[ba>>2]|0))break e;if(+h[(c[fa>>2]|0)+(c[A>>2]<<3)>>3]>1.0e-15)la=+h[(c[fa>>2]|0)+(c[A>>2]<<3)>>3];else la=1.0e-15;h[U>>3]=la;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break;f=_(c[z>>2]|0,c[o>>2]|0)|0;e=_(c[A>>2]|0,c[o>>2]|0)|0;j=+h[u>>3]*+h[(c[ea>>2]|0)+(c[A>>2]<<3)>>3]*(+h[(c[t>>2]|0)+(f+(c[B>>2]|0)<<3)>>3]-+h[(c[da>>2]|0)+(e+(c[B>>2]|0)<<3)>>3]);ja=+h[U>>3];if(+h[C>>3]==-1.0){e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]+j/(ja*+h[U>>3])}else{ka=j/+P(+ja,+(1.0-+h[C>>3]));e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]+ka}c[B>>2]=(c[B>>2]|0)+1}c[A>>2]=(c[A>>2]|0)+1}}while(0);h[V>>3]=0.0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break;h[V>>3]=+h[V>>3]+ +h[(c[T>>2]|0)+(c[B>>2]<<3)>>3]*+h[(c[T>>2]|0)+(c[B>>2]<<3)>>3];c[B>>2]=(c[B>>2]|0)+1}h[V>>3]=+O(+(+h[V>>3]));h[W>>3]=+h[W>>3]+ +h[V>>3];h:do if(+h[V>>3]>0.0){c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break h;e=(c[T>>2]|0)+(c[B>>2]<<3)|0;h[e>>3]=+h[e>>3]/+h[V>>3];c[B>>2]=(c[B>>2]|0)+1}}while(0);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[o>>2]|0))break;e=_(c[z>>2]|0,c[o>>2]|0)|0;f=(c[t>>2]|0)+(e+(c[B>>2]|0)<<3)|0;h[f>>3]=+h[f>>3]+ +h[H>>3]*+h[(c[T>>2]|0)+(c[B>>2]<<3)>>3];c[B>>2]=(c[B>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}if(c[$>>2]|0)Bv(c[$>>2]|0);h[ga>>3]=+h[ga>>3]/+(c[y>>2]|0);h[H>>3]=+Jp(c[Z>>2]|0,+h[H>>3],+h[W>>3],+h[X>>3],+h[G>>3]);if(!(+h[H>>3]>+h[E>>3]))break}while(+(c[Y>>2]|0)<+h[F>>3]);if(c[(c[r>>2]|0)+112>>2]|0)Kp(c[o>>2]|0,c[w>>2]|0,c[t>>2]|0)}else c[c[v>>2]>>2]=-100;while(0);if(c[S>>2]|0)O4(c[S>>2]|0);if((c[w>>2]|0)!=(c[p>>2]|0))Lv(c[w>>2]|0);if(c[T>>2]|0)O4(c[T>>2]|0);if(c[da>>2]|0)O4(c[da>>2]|0);if(c[ea>>2]|0)O4(c[ea>>2]|0);if(!(c[fa>>2]|0)){i=l;return}O4(c[fa>>2]|0);i=l;return}function Ep(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0.0,ga=0.0,ha=0.0,ia=0.0;k=i;i=i+240|0;l=k+236|0;m=k+232|0;n=k+228|0;o=k+224|0;p=k+220|0;q=k+216|0;r=k+212|0;s=k+208|0;t=k+204|0;u=k+200|0;v=k+196|0;w=k+192|0;x=k+188|0;y=k+112|0;z=k+104|0;A=k+96|0;B=k+88|0;C=k+80|0;D=k+72|0;E=k+64|0;F=k+56|0;G=k+48|0;H=k+184|0;I=k+180|0;J=k+176|0;K=k+172|0;L=k+168|0;M=k+164|0;N=k+160|0;Q=k+40|0;R=k+32|0;S=k+24|0;T=k+16|0;U=k+156|0;V=k+152|0;W=k+148|0;X=k+144|0;Y=k+140|0;Z=k+136|0;$=k+132|0;aa=k+128|0;ba=k+124|0;ca=k+8|0;da=k;ea=k+120|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;c[s>>2]=c[m>>2];h[y>>3]=+h[c[o>>2]>>3];h[z>>3]=+h[(c[o>>2]|0)+24>>3];h[A>>3]=+h[(c[o>>2]|0)+32>>3];h[C>>3]=+h[(c[o>>2]|0)+72>>3];h[D>>3]=+(c[(c[o>>2]|0)+80>>2]|0);h[E>>3]=+h[(c[o>>2]|0)+88>>3];h[F>>3]=+h[(c[o>>2]|0)+96>>3];c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;c[M>>2]=0;c[N>>2]=0;h[S>>3]=0.0;c[U>>2]=0;c[V>>2]=c[(c[o>>2]|0)+104>>2];c[W>>2]=0;c[X>>2]=0;c[Y>>2]=0;c[Z>>2]=10;c[$>>2]=0;c[aa>>2]=0;c[ba>>2]=0;h[da>>3]=0.0;c[ea>>2]=10;if((c[s>>2]|0)==0|+h[D>>3]<=0.0){i=k;return}c[t>>2]=c[c[s>>2]>>2];c[u>>2]=c[(c[s>>2]|0)+4>>2];if((c[u>>2]|0)<=0|(c[l>>2]|0)<=0){i=k;return}if((c[u>>2]|0)>=(c[(c[o>>2]|0)+52>>2]|0)){c[X>>2]=1;c[$>>2]=cK(_(c[Z>>2]<<3,c[l>>2]|0)|0)|0;c[aa>>2]=cK(c[Z>>2]<<3)|0;c[ba>>2]=cK(c[Z>>2]<<3)|0}c[c[r>>2]>>2]=0;a:do if((c[t>>2]|0)==(c[u>>2]|0)){c[s>>2]=Mv(c[s>>2]|0,1)|0;c[H>>2]=c[(c[s>>2]|0)+20>>2];c[I>>2]=c[(c[s>>2]|0)+24>>2];c[J>>2]=c[(c[n>>2]|0)+20>>2];c[K>>2]=c[(c[n>>2]|0)+24>>2];c[L>>2]=c[(c[n>>2]|0)+28>>2];b:do if(c[(c[o>>2]|0)+16>>2]|0){s2(c[(c[o>>2]|0)+108>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(_(c[l>>2]|0,c[u>>2]|0)|0))break b;fa=+rw();h[(c[q>>2]|0)+(c[v>>2]<<3)>>3]=fa;c[v>>2]=(c[v>>2]|0)+1}}while(0);if(+h[z>>3]<0.0){fa=+vp(c[s>>2]|0,c[l>>2]|0,c[q>>2]|0);h[z>>3]=fa;h[(c[o>>2]|0)+24>>3]=fa}if(+h[A>>3]<0.0){h[A>>3]=.2;h[(c[o>>2]|0)+32>>3]=.2}if(+h[y>>3]>=0.0){h[y>>3]=-1.0;h[c[o>>2]>>3]=-1.0}h[G>>3]=+P(+(+h[z>>3]),+(1.0-+h[y>>3]));fa=+P(+(+h[A>>3]),+((2.0-+h[y>>3])/3.0));h[B>>3]=fa/+h[z>>3];c[N>>2]=cK(c[l>>2]<<3)|0;c[M>>2]=cK(_(c[l>>2]<<3,c[u>>2]|0)|0)|0;do{c[U>>2]=(c[U>>2]|0)+1;j=c[M>>2]|0;Z4(j|0,c[q>>2]|0,_(c[l>>2]<<3,c[u>>2]|0)|0)|0;c[M>>2]=j;h[T>>3]=+h[S>>3];h[S>>3]=0.0;h[ca>>3]=0.0;do if(c[X>>2]|0){j=c[l>>2]|0;g=c[u>>2]|0;f=c[ea>>2]|0;e=c[q>>2]|0;if(c[(c[o>>2]|0)+116>>2]|0){c[W>>2]=yv(j,g,f,e,c[p>>2]|0)|0;break}else{c[W>>2]=yv(j,g,f,e,0)|0;break}}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[u>>2]|0))break;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break;h[(c[N>>2]|0)+(c[x>>2]<<3)>>3]=0.0;c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=c[(c[H>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[w>>2]|0)>=(c[(c[H>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;c:do if((c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0)!=(c[v>>2]|0)){h[Q>>3]=+zw(c[q>>2]|0,c[l>>2]|0,c[v>>2]|0,c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break c;e=_(c[v>>2]|0,c[l>>2]|0)|0;f=_(c[(c[I>>2]|0)+(c[w>>2]<<2)>>2]|0,c[l>>2]|0)|0;g=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[g>>3]=+h[g>>3]-+h[B>>3]*(+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3])*+h[Q>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=c[(c[J>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[w>>2]|0)>=(c[(c[J>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;d:do if((c[(c[K>>2]|0)+(c[w>>2]<<2)>>2]|0)!=(c[v>>2]|0)){h[Q>>3]=+yw(c[q>>2]|0,c[l>>2]|0,c[v>>2]|0,c[(c[K>>2]|0)+(c[w>>2]<<2)>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break d;f=_(c[v>>2]|0,c[l>>2]|0)|0;e=_(c[(c[K>>2]|0)+(c[w>>2]<<2)>>2]|0,c[l>>2]|0)|0;fa=+h[B>>3]*.2*(+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3])*(+h[Q>>3]-+h[(c[L>>2]|0)+(c[w>>2]<<3)>>3])*(+h[Q>>3]-+h[(c[L>>2]|0)+(c[w>>2]<<3)>>3])/+h[Q>>3];e=(c[N>>2]|0)+(c[x>>2]<<3)|0;ga=+h[e>>3];if(+h[Q>>3]<+h[(c[L>>2]|0)+(c[w>>2]<<3)>>3])h[e>>3]=ga+fa;else h[e>>3]=ga-fa;c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}e:do if(!(c[X>>2]|0)){e=(c[p>>2]|0)!=0?(c[(c[o>>2]|0)+116>>2]|0)!=0:0;c[w>>2]=0;if(e)while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break e;f:do if((c[w>>2]|0)!=(c[v>>2]|0)){h[Q>>3]=+yw(c[q>>2]|0,c[l>>2]|0,c[v>>2]|0,c[w>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break f;e=_(c[v>>2]|0,c[l>>2]|0)|0;f=_(c[w>>2]|0,c[l>>2]|0)|0;fa=+h[(c[p>>2]|0)+(c[w>>2]<<3)>>3]*+h[G>>3]*(+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]);ga=+h[Q>>3];if(+h[y>>3]==-1.0){f=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+fa/(ga*+h[Q>>3])}else{ha=fa/+P(+ga,+(1.0-+h[y>>3]));f=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+ha}c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}else while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break e;g:do if((c[w>>2]|0)!=(c[v>>2]|0)){h[Q>>3]=+yw(c[q>>2]|0,c[l>>2]|0,c[v>>2]|0,c[w>>2]|0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break g;f=_(c[v>>2]|0,c[l>>2]|0)|0;e=_(c[w>>2]|0,c[l>>2]|0)|0;ha=+h[G>>3]*(+h[(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]-+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]);ga=+h[Q>>3];if(+h[y>>3]==-1.0){e=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+ha/(ga*+h[Q>>3])}else{fa=ha/+P(+ga,+(1.0-+h[y>>3]));e=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[e>>3]=+h[e>>3]+fa}c[x>>2]=(c[x>>2]|0)+1}}while(0);c[w>>2]=(c[w>>2]|0)+1}}else{e=_(c[l>>2]|0,c[v>>2]|0)|0;wv(c[W>>2]|0,+h[(c[o>>2]|0)+64>>3],(c[q>>2]|0)+(e<<3)|0,c[v>>2]|0,Y,Z,$,aa,ba,da,c[r>>2]|0);h[ca>>3]=+h[ca>>3]+ +(c[Y>>2]|0);if(c[c[r>>2]>>2]|0)break a;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[Y>>2]|0))break e;if(+h[(c[ba>>2]|0)+(c[w>>2]<<3)>>3]>1.0e-15)ia=+h[(c[ba>>2]|0)+(c[w>>2]<<3)>>3];else ia=1.0e-15;h[Q>>3]=ia;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break;e=_(c[v>>2]|0,c[l>>2]|0)|0;f=_(c[w>>2]|0,c[l>>2]|0)|0;fa=+h[(c[aa>>2]|0)+(c[w>>2]<<3)>>3]*+h[G>>3]*(+h[(c[q>>2]|0)+(e+(c[x>>2]|0)<<3)>>3]-+h[(c[$>>2]|0)+(f+(c[x>>2]|0)<<3)>>3]);ga=+h[Q>>3];if(+h[y>>3]==-1.0){f=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+fa/(ga*+h[Q>>3])}else{ha=fa/+P(+ga,+(1.0-+h[y>>3]));f=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]+ha}c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}}while(0);h[R>>3]=0.0;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break;h[R>>3]=+h[R>>3]+ +h[(c[N>>2]|0)+(c[x>>2]<<3)>>3]*+h[(c[N>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}h[R>>3]=+O(+(+h[R>>3]));h[S>>3]=+h[S>>3]+ +h[R>>3];h:do if(+h[R>>3]>0.0){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break h;f=(c[N>>2]|0)+(c[x>>2]<<3)|0;h[f>>3]=+h[f>>3]/+h[R>>3];c[x>>2]=(c[x>>2]|0)+1}}while(0);c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[l>>2]|0))break;f=_(c[v>>2]|0,c[l>>2]|0)|0;e=(c[q>>2]|0)+(f+(c[x>>2]|0)<<3)|0;h[e>>3]=+h[e>>3]+ +h[F>>3]*+h[(c[N>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}if(c[W>>2]|0)Bv(c[W>>2]|0);h[ca>>3]=+h[ca>>3]/+(c[u>>2]|0);h[F>>3]=+Jp(c[V>>2]|0,+h[F>>3],+h[S>>3],+h[T>>3],+h[E>>3]);if(!(+h[F>>3]>+h[C>>3]))break}while(+(c[U>>2]|0)<+h[D>>3]);if(c[(c[o>>2]|0)+112>>2]|0)Kp(c[l>>2]|0,c[s>>2]|0,c[q>>2]|0)}else c[c[r>>2]>>2]=-100;while(0);if(c[M>>2]|0)O4(c[M>>2]|0);if((c[s>>2]|0)!=(c[m>>2]|0))Lv(c[s>>2]|0);if(c[N>>2]|0)O4(c[N>>2]|0);if(c[$>>2]|0)O4(c[$>>2]|0);if(c[aa>>2]|0)O4(c[aa>>2]|0);if(!(c[ba>>2]|0)){i=k;return}O4(c[ba>>2]|0);i=k;return}function Fp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+8|0;r=e;s=e+16|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[n>>2]=c[(c[g>>2]|0)+20>>2];c[o>>2]=c[(c[g>>2]|0)+24>>2];h[q>>3]=.5;c[s>>2]=cK(c[f>>2]<<3)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[c[g>>2]>>2]|0))break;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[f>>2]|0))break;h[(c[s>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[p>>2]=0;c[l>>2]=c[(c[n>>2]|0)+(c[k>>2]<<2)>>2];while(1){if((c[l>>2]|0)>=(c[(c[n>>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0))break;a:do if((c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]|0)!=(c[k>>2]|0)){c[p>>2]=(c[p>>2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[f>>2]|0))break a;d=_(c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]|0,c[f>>2]|0)|0;b=(c[s>>2]|0)+(c[m>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[j>>2]|0)+(d+(c[m>>2]|0)<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}}while(0);c[l>>2]=(c[l>>2]|0)+1}b:do if((c[p>>2]|0)>0){h[r>>3]=(1.0-+h[q>>3])/+(c[p>>2]|0);c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[f>>2]|0))break b;d=_(c[k>>2]|0,c[f>>2]|0)|0;b=_(c[k>>2]|0,c[f>>2]|0)|0;h[(c[j>>2]|0)+(b+(c[m>>2]|0)<<3)>>3]=+h[q>>3]*+h[(c[j>>2]|0)+(d+(c[m>>2]|0)<<3)>>3]+ +h[r>>3]*+h[(c[s>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}}while(0);c[k>>2]=(c[k>>2]|0)+1}O4(c[s>>2]|0);i=e;return}function Gp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b=i;i=i+48|0;d=b+36|0;e=b+32|0;f=b+28|0;g=b+24|0;h=b+20|0;j=b+16|0;k=b+12|0;l=b+8|0;m=b+4|0;n=b;c[d>>2]=a;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+20>>2];c[k>>2]=c[(c[d>>2]|0)+24>>2];c[n>>2]=0;c[f>>2]=c[c[d>>2]>>2];c[e>>2]=cK((c[f>>2]|0)+1<<2)|0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[f>>2]|0)+1|0))break;c[(c[e>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;c[m>>2]=0;c[l>>2]=c[(c[j>>2]|0)+(c[h>>2]<<2)>>2];while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+((c[h>>2]|0)+1<<2)>>2]|0))break;if((c[h>>2]|0)!=(c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]|0))c[m>>2]=(c[m>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}d=(c[e>>2]|0)+(c[m>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;if((c[g>>2]|0)>(c[(c[e>>2]|0)+(c[m>>2]<<2)>>2]|0))o=c[g>>2]|0;else o=c[(c[e>>2]|0)+(c[m>>2]<<2)>>2]|0;c[g>>2]=o;c[h>>2]=(c[h>>2]|0)+1}if(!(+(c[(c[e>>2]|0)+4>>2]|0)>+(c[g>>2]|0)*.8)){p=c[e>>2]|0;O4(p);q=c[n>>2]|0;i=b;return q|0}if(!(+(c[(c[e>>2]|0)+4>>2]|0)>+(c[f>>2]|0)*.3)){p=c[e>>2]|0;O4(p);q=c[n>>2]|0;i=b;return q|0}c[n>>2]=1;p=c[e>>2]|0;O4(p);q=c[n>>2]|0;i=b;return q|0}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;e=i;i=i+112|0;f=e+108|0;g=e+104|0;j=e+100|0;k=e+96|0;l=e+92|0;m=e+88|0;n=e+56|0;o=e+40|0;p=e+24|0;q=e+16|0;r=e+8|0;s=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(_(c[g>>2]|0,c[g>>2]|0)|0))break;h[n+(c[k>>2]<<3)>>3]=0.0;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[g>>2]|0))break;h[p+(c[k>>2]<<3)>>3]=0.0;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;c[l>>2]=0;while(1){t=c[k>>2]|0;if((c[l>>2]|0)>=(c[g>>2]|0))break;d=_(t,c[g>>2]|0)|0;b=p+(c[l>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[j>>2]|0)+(d+(c[l>>2]|0)<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=t+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[g>>2]|0))break;t=p+(c[k>>2]<<3)|0;h[t>>3]=+h[t>>3]/+(c[f>>2]|0);c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[g>>2]|0))break;t=_(c[g>>2]|0,c[k>>2]|0)|0;d=_(c[g>>2]|0,c[k>>2]|0)|0;h[(c[j>>2]|0)+(d+(c[l>>2]|0)<<3)>>3]=+h[(c[j>>2]|0)+(t+(c[l>>2]|0)<<3)>>3]-+h[p+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[g>>2]|0))break;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;p=_(c[k>>2]|0,c[g>>2]|0)|0;t=_(c[k>>2]|0,c[g>>2]|0)|0;d=_(c[g>>2]|0,c[l>>2]|0)|0;b=n+(d+(c[m>>2]|0)<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[j>>2]|0)+(p+(c[l>>2]|0)<<3)>>3]*+h[(c[j>>2]|0)+(t+(c[m>>2]|0)<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}if(+h[n+8>>3]==0.0){h[o>>3]=0.0;h[o+8>>3]=1.0}else{u=-(-+h[n>>3]+ +h[n+24>>3]-+O(+(+h[n>>3]*+h[n>>3]+ +h[n+8>>3]*4.0*+h[n+8>>3]-+h[n>>3]*2.0*+h[n+24>>3]+ +h[n+24>>3]*+h[n+24>>3])));h[o>>3]=u/(+h[n+8>>3]*2.0);h[o+8>>3]=1.0}h[q>>3]=+O(+(+h[o>>3]*+h[o>>3]+1.0));h[o>>3]=+h[o>>3]/+h[q>>3];h[o+8>>3]=+h[o+8>>3]/+h[q>>3];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;q=_(c[g>>2]|0,c[k>>2]|0)|0;n=(_(c[g>>2]|0,c[k>>2]|0)|0)+1|0;h[r>>3]=+h[(c[j>>2]|0)+(q<<3)>>3]*+h[o>>3]+ +h[(c[j>>2]|0)+(n<<3)>>3]*+h[o+8>>3];n=_(c[g>>2]|0,c[k>>2]|0)|0;q=(_(c[g>>2]|0,c[k>>2]|0)|0)+1|0;h[s>>3]=-+h[(c[j>>2]|0)+(n<<3)>>3]*+h[o+8>>3]+ +h[(c[j>>2]|0)+(q<<3)>>3]*+h[o>>3];q=_(c[g>>2]|0,c[k>>2]|0)|0;h[(c[j>>2]|0)+(q<<3)>>3]=+h[r>>3];q=(_(c[g>>2]|0,c[k>>2]|0)|0)+1|0;h[(c[j>>2]|0)+(q<<3)>>3]=+h[s>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function Ip(a,b,d,e,f,g,h,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+48|0;n=m+36|0;o=m+32|0;p=m+28|0;q=m+24|0;r=m+20|0;s=m+16|0;t=m+12|0;u=m+8|0;v=m+4|0;w=m;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;Np(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0);i=m;return}function Jp(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;g=i;i=i+48|0;j=g+32|0;k=g+40|0;l=g+24|0;m=g+16|0;n=g+8|0;o=g;c[k>>2]=a;h[l>>3]=b;h[m>>3]=d;h[n>>3]=e;h[o>>3]=f;if(!(c[k>>2]|0)){h[j>>3]=+h[o>>3]*+h[l>>3];p=+h[j>>3];i=g;return +p}if(!(+h[m>>3]>=+h[n>>3])){if(!(+h[m>>3]>+h[n>>3]*.95))h[l>>3]=+h[l>>3]*.99/+h[o>>3]}else h[l>>3]=+h[o>>3]*+h[l>>3];h[j>>3]=+h[l>>3];p=+h[j>>3];i=g;return +p}function Kp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0;e=i;i=i+128|0;f=e+112|0;g=e+108|0;j=e+104|0;k=e+100|0;l=e+96|0;m=e+92|0;n=e+88|0;o=e+84|0;p=e+80|0;q=e+76|0;r=e+72|0;s=e+40|0;t=e+68|0;u=e+64|0;v=e+60|0;w=e+32|0;x=e+24|0;y=e+16|0;z=e+8|0;A=e;B=e+56|0;C=e+52|0;D=e+48|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[c[g>>2]>>2];c[n>>2]=c[(c[g>>2]|0)+20>>2];c[o>>2]=c[(c[g>>2]|0)+24>>2];c[u>>2]=10;h[x>>3]=0.0;h[y>>3]=0.0;c[C>>2]=10;c[q>>2]=cK(c[k>>2]<<2)|0;c[v>>2]=cK(c[C>>2]<<3)|0;c[B>>2]=cK(c[u>>2]<<2)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]=0;c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;a:do if((((c[(c[n>>2]|0)+((c[l>>2]|0)+1<<2)>>2]|0)-(c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]|0)|0)==1?(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)==0:0)?(c[r>>2]=c[(c[o>>2]|0)+(c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]<<2)>>2],(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0)==0):0){c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=1;h[s>>3]=0.0;c[t>>2]=0;c[D>>2]=0;c[m>>2]=c[(c[n>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[m>>2]|0)>=(c[(c[n>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;if(((c[(c[n>>2]|0)+((c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[n>>2]|0)+(c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]|0)|0)==1){c[(c[q>>2]|0)+(c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]=1;xp(B,c[t>>2]|0,u);E=+zw(c[j>>2]|0,c[f>>2]|0,c[r>>2]|0,c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]|0);h[s>>3]=+h[s>>3]+E;c[(c[B>>2]|0)+(c[t>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}else{wp(v,c[D>>2]|0,C);E=+yp(c[j>>2]|0,c[f>>2]|0,c[r>>2]|0,c[(c[o>>2]|0)+(c[m>>2]<<2)>>2]|0);g=c[D>>2]|0;c[D>>2]=g+1;h[(c[v>>2]|0)+(g<<3)>>3]=E}c[m>>2]=(c[m>>2]|0)+1}h[s>>3]=+h[s>>3]/+(c[t>>2]|0);if((c[D>>2]|0)>0){Sp(c[D>>2]|0,c[v>>2]|0);h[w>>3]=0.0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=((c[D>>2]|0)-1|0))break;if(+h[(c[v>>2]|0)+((c[p>>2]|0)+1<<3)>>3]-+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3]>+h[w>>3]){h[w>>3]=+h[(c[v>>2]|0)+((c[p>>2]|0)+1<<3)>>3]-+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3];h[x>>3]=+h[(c[v>>2]|0)+(c[p>>2]<<3)>>3];h[y>>3]=+h[(c[v>>2]|0)+((c[p>>2]|0)+1<<3)>>3]}c[p>>2]=(c[p>>2]|0)+1}if(+h[c[v>>2]>>3]+6.283185307179586-+h[(c[v>>2]|0)+((c[D>>2]|0)-1<<3)>>3]>+h[w>>3]){h[w>>3]=+h[c[v>>2]>>3]+6.283185307179586-+h[(c[v>>2]|0)+((c[D>>2]|0)-1<<3)>>3];h[x>>3]=+h[(c[v>>2]|0)+((c[D>>2]|0)-1<<3)>>3];h[y>>3]=+h[c[v>>2]>>3]+6.283185307179586}}else{h[x>>3]=0.0;h[y>>3]=6.283185307179586;h[w>>3]=6.283185307179586}if(+h[w>>3]-+((c[t>>2]|0)-1|0)*.52359982279585>0.0)F=+h[w>>3]-+((c[t>>2]|0)-1|0)*.52359982279585;else F=0.0;h[z>>3]=F*.5;h[x>>3]=+h[x>>3]+ +h[z>>3]*.95;h[y>>3]=+h[y>>3]-+h[z>>3]*.95;h[x>>3]=0.0;h[y>>3]=6.283185307179586;h[w>>3]=6.283185307179586;h[A>>3]=0.0;if((c[t>>2]|0)>1)h[A>>3]=(+h[y>>3]-+h[x>>3])/+((c[t>>2]|0)-1|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[t>>2]|0))break a;Tp(c[j>>2]|0,c[f>>2]|0,+h[s>>3],+h[x>>3],c[r>>2]|0,c[(c[B>>2]|0)+(c[l>>2]<<2)>>2]|0);h[x>>3]=+h[x>>3]+ +h[A>>3];c[l>>2]=(c[l>>2]|0)+1}}while(0);c[l>>2]=(c[l>>2]|0)+1}O4(c[q>>2]|0);O4(c[v>>2]|0);O4(c[B>>2]|0);i=e;return}function Lp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;f=i;i=i+48|0;g=f+8|0;j=f+36|0;k=f+32|0;l=f+24|0;m=f;n=f+20|0;o=f+16|0;c[j>>2]=a;c[k>>2]=b;c[f+28>>2]=d;c[l>>2]=e;h[m>>3]=0.0;if(!(c[l>>2]|0)){h[g>>3]=1.0;p=+h[g>>3];i=f;return +p}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[j>>2]|0))break;c[o>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[k>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break;h[m>>3]=+h[m>>3]+ +h[(c[l>>2]|0)+(c[o>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}h[g>>3]=+h[m>>3]/+(c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]|0);p=+h[g>>3];i=f;return +p}function Mp(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;k=i;i=i+112|0;l=k+56|0;m=k+96|0;n=k+92|0;o=k+88|0;p=k+84|0;q=k+80|0;r=k+76|0;s=k+48|0;t=k+72|0;u=k+68|0;v=k+64|0;w=k+40|0;x=k+32|0;y=k+24|0;z=k+16|0;A=k+8|0;B=k;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;h[s>>3]=j;h[y>>3]=0.0;h[z>>3]=0.0;h[A>>3]=0.0;h[B>>3]=0.0;if(+h[s>>3]==0.0){i=k;return}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[m>>2]|0))break;c[u>>2]=c[(c[p>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[p>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;if((c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]|0)!=(c[t>>2]|0)){h[x>>3]=+yw(c[o>>2]|0,c[n>>2]|0,c[t>>2]|0,c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]|0);if(c[r>>2]|0)h[s>>3]=+h[(c[r>>2]|0)+(c[u>>2]<<3)>>3];h[w>>3]=1.0/(+h[s>>3]*+h[s>>3]);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;h[z>>3]=+h[z>>3]+ +h[w>>3]*+h[s>>3]*+h[x>>3];h[A>>3]=+h[A>>3]+ +h[w>>3]*+h[x>>3]*+h[x>>3];c[v>>2]=(c[v>>2]|0)+1}h[y>>3]=+h[y>>3]+ +h[x>>3];h[B>>3]=+h[B>>3]+1.0}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}h[y>>3]=+h[z>>3]/+h[A>>3];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(_(c[m>>2]|0,c[n>>2]|0)|0))break;A=(c[o>>2]|0)+(c[t>>2]<<3)|0;h[A>>3]=+h[A>>3]*+h[y>>3];c[t>>2]=(c[t>>2]|0)+1}t=c[24742]|0;h[l>>3]=+h[y>>3];Y2(t,129810,l)|0;i=k;return}function Np(b,e,f,g,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;p=i;i=i+288|0;q=p+184|0;r=p+176|0;s=p+276|0;t=p+272|0;u=p+268|0;v=p+264|0;w=p+260|0;x=p+256|0;y=p+252|0;z=p+248|0;A=p+244|0;B=p+240|0;C=p+236|0;D=p+232|0;E=p+228|0;F=p+224|0;G=p+220|0;H=p+216|0;I=p+212|0;J=p+208|0;K=p+204|0;L=p+200|0;M=p+196|0;N=p+8|0;O=p+192|0;P=p+188|0;Q=p;c[s>>2]=b;c[t>>2]=e;c[u>>2]=f;c[v>>2]=g;c[w>>2]=j;c[x>>2]=k;c[y>>2]=l;c[z>>2]=m;c[A>>2]=n;c[B>>2]=o;c[C>>2]=0;c[G>>2]=c[t>>2];c[H>>2]=c[u>>2];c[I>>2]=0;c[L>>2]=0;c[M>>2]=0;Z4(N|0,c[v>>2]|0,168)|0;c[c[B>>2]>>2]=0;if(!(c[G>>2]|0)){i=p;return}c[D>>2]=c[(c[G>>2]|0)+4>>2];if((c[D>>2]|0)<=0|(c[s>>2]|0)<=0){i=p;return}if((Ov(c[G>>2]|0,0)|0)!=0?(c[(c[G>>2]|0)+16>>2]|0)==1:0){if((c[(c[v>>2]|0)+136>>2]|0)==1)c[H>>2]=Sv(c[H>>2]|0)|0;c[G>>2]=Sv(c[G>>2]|0)|0}else R=5;do if((R|0)==5){o=c[G>>2]|0;if((c[(c[v>>2]|0)+136>>2]|0)==1){c[G>>2]=Rv(o,0)|0;c[H>>2]=Rv(c[H>>2]|0,0)|0;break}else{c[G>>2]=bw(o)|0;break}}while(0);if((c[(c[v>>2]|0)+160>>2]|0)==3){if((c[z>>2]|0)>0)R=14}else if((c[z>>2]|0)>0?(c[(c[v>>2]|0)+160>>2]|0)==4:0)R=14;if((R|0)==14){c[P>>2]=cK(_(c[c[G>>2]>>2]<<3,c[s>>2]|0)|0)|0;c[O>>2]=Op(c[G>>2]|0,c[z>>2]|0,c[A>>2]|0)|0;Ip(c[s>>2]|0,c[O>>2]|0,0,c[v>>2]|0,0,0,c[P>>2]|0,0,0,c[B>>2]|0);Pp(c[s>>2]|0,c[G>>2]|0,c[z>>2]|0,c[A>>2]|0,c[y>>2]|0,c[P>>2]|0);Gt(c[s>>2]|0,c[G>>2]|0,c[y>>2]|0,c[x>>2]|0,c[(c[v>>2]|0)+124>>2]|0,+h[(c[v>>2]|0)+144>>3],c[(c[v>>2]|0)+160>>2]|0,c[z>>2]|0,c[A>>2]|0);Lv(c[O>>2]|0);O4(c[P>>2]|0);if((c[G>>2]|0)==(c[t>>2]|0)){i=p;return}Lv(c[G>>2]|0);i=p;return}c[C>>2]=Gw(c[(c[v>>2]|0)+44>>2]|0,c[(c[v>>2]|0)+48>>2]|0)|0;c[(c[C>>2]|0)+16>>2]=c[(c[v>>2]|0)+40>>2];c[K>>2]=Nw(c[G>>2]|0,c[H>>2]|0,c[w>>2]|0,c[C>>2]|0)|0;c[J>>2]=Ow(c[K>>2]|0)|0;if(c[(c[J>>2]|0)+32>>2]|0)c[L>>2]=cK(_(c[(c[J>>2]|0)+4>>2]<<3,c[s>>2]|0)|0)|0;else c[L>>2]=c[y>>2];c[E>>2]=Gp(c[G>>2]|0)|0;if(+h[c[v>>2]>>3]==-1.0001234?(h[c[v>>2]>>3]=-1.0,(c[E>>2]|0)!=0):0)h[c[v>>2]>>3]=-1.8;while(1){E=c[v>>2]|0;a:do if(c[(c[v>>2]|0)+136>>2]|0){if((c[E+136>>2]|0)==1){h[Q>>3]=.05;h[(c[v>>2]|0)+96>>3]=1.0;c[(c[v>>2]|0)+104>>2]=1;P=(c[v>>2]|0)+80|0;if(c[(c[J>>2]|0)+28>>2]|0)c[P>>2]=100;else{c[P>>2]=500;h[Q>>3]=.5}P=(c[(c[J>>2]|0)+32>>2]|0)!=0;Dp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[(c[J>>2]|0)+12>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,+h[Q>>3],c[B>>2]|0);if(!P){c[(c[v>>2]|0)+16>>2]=0;h[(c[v>>2]|0)+96>>3]=.05;c[(c[v>>2]|0)+104>>2]=0;Dp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[(c[J>>2]|0)+12>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,+h[Q>>3]/2.0,c[B>>2]|0);Dp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[(c[J>>2]|0)+12>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,+h[Q>>3]/8.0,c[B>>2]|0);Dp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[(c[J>>2]|0)+12>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,+h[Q>>3]/32.0,c[B>>2]|0)}}}else{if(!(c[E+132>>2]|0)){Bp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,c[B>>2]|0);break}do if((c[(c[v>>2]|0)+132>>2]|0)!=2){if((c[(c[v>>2]|0)+132>>2]|0)==3?(c[c[(c[J>>2]|0)+8>>2]>>2]|0)>1e4:0)break;Cp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,c[B>>2]|0);break a}while(0);if(((c[(c[v>>2]|0)+132>>2]|0)==3?(c[c[(c[J>>2]|0)+8>>2]>>2]|0)>10:0)?(d[138998]|0)!=0:0){P=c[24742]|0;c[r>>2]=1e4;Y2(P,129711,r)|0}Ap(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[v>>2]|0,c[(c[J>>2]|0)+24>>2]|0,c[L>>2]|0,c[B>>2]|0)}while(0);if(!(c[(c[J>>2]|0)+32>>2]|0)){R=51;break}if(c[c[B>>2]>>2]|0){R=42;break}c[I>>2]=c[(c[J>>2]|0)+16>>2];c[F>>2]=c[(c[J>>2]|0)+40>>2];c[J>>2]=c[(c[J>>2]|0)+32>>2];if(c[(c[J>>2]|0)+32>>2]|0)c[M>>2]=cK(_(c[(c[J>>2]|0)+4>>2]<<3,c[s>>2]|0)|0)|0;else c[M>>2]=c[y>>2];Qp(c[s>>2]|0,c[(c[J>>2]|0)+8>>2]|0,c[I>>2]|0,c[(c[J>>2]|0)+20>>2]|0,c[L>>2]|0,c[M>>2]|0,c[F>>2]|0,+h[(c[v>>2]|0)+24>>3]*.001);O4(c[L>>2]|0);c[L>>2]=c[M>>2];c[(c[v>>2]|0)+16>>2]=0;h[(c[v>>2]|0)+24>>3]=+h[(c[v>>2]|0)+24>>3]*.75;c[(c[v>>2]|0)+104>>2]=0;if((c[(c[(c[J>>2]|0)+28>>2]|0)+40>>2]|0)>8?(c[(c[(c[J>>2]|0)+28>>2]|0)+40>>2]|0)<11:0)h[(c[v>>2]|0)+96>>3]=1.0;else h[(c[v>>2]|0)+96>>3]=.1;if(!(c[J>>2]|0)){R=51;break}}if((R|0)==42)O4(c[L>>2]|0);else if((R|0)==51){sx(c[s>>2]|0,c[G>>2]|0,c[v>>2]|0,c[w>>2]|0,c[y>>2]|0,c[B>>2]|0);if(a[138998]|0){B=c[24742]|0;c[q>>2]=c[(c[v>>2]|0)+124>>2];Y2(B,129774,q)|0}if((c[s>>2]|0)==2)Hp(c[D>>2]|0,c[s>>2]|0,c[y>>2]|0);if(+h[(c[v>>2]|0)+152>>3]!=0.0)Rp(c[D>>2]|0,c[s>>2]|0,c[y>>2]|0,+h[(c[v>>2]|0)+152>>3]);Gt(c[s>>2]|0,c[G>>2]|0,c[y>>2]|0,c[x>>2]|0,c[(c[v>>2]|0)+124>>2]|0,+h[(c[v>>2]|0)+144>>3],c[(c[v>>2]|0)+160>>2]|0,c[z>>2]|0,c[A>>2]|0)}Z4(c[v>>2]|0,N|0,168)|0;if((c[G>>2]|0)!=(c[t>>2]|0))Lv(c[G>>2]|0);if((c[H>>2]|0)!=0?(c[H>>2]|0)!=(c[u>>2]|0):0)Lv(c[H>>2]|0);Hw(c[C>>2]|0);Iw(c[K>>2]|0);i=p;return}function Op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=i;i=i+80|0;f=e+8|0;g=e;h=e+72|0;j=e+68|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+52|0;o=e+48|0;p=e+44|0;q=e+40|0;r=e+36|0;s=e+32|0;t=e+28|0;u=e+24|0;v=e+20|0;w=e+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[n>>2]=0;c[s>>2]=c[(c[h>>2]|0)+20>>2];c[t>>2]=c[(c[h>>2]|0)+24>>2];c[u>>2]=0;c[v>>2]=0;c[l>>2]=cK(c[c[h>>2]>>2]<<2)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0))break;c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=1;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;c[(c[l>>2]|0)+(c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]<<2)>>2]=-1;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0))break;if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)>0){k=c[n>>2]|0;c[n>>2]=k+1;c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=k}c[m>>2]=(c[m>>2]|0)+1}c[o>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0))break;a:do if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)>=0){c[p>>2]=c[(c[s>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[s>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break a;b:do if((c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]|0)>=0)c[o>>2]=(c[o>>2]|0)+1;else{c[r>>2]=c[(c[t>>2]|0)+(c[p>>2]<<2)>>2];c[q>>2]=c[(c[s>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[s>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break b;if((c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]|0)!=(c[m>>2]|0)?(c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)>=0:0)c[o>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}}while(0);c[p>>2]=(c[p>>2]|0)+1}}while(0);c[m>>2]=(c[m>>2]|0)+1}if((c[o>>2]|0)>0){c[u>>2]=cK(c[o>>2]<<2)|0;c[v>>2]=cK(c[o>>2]<<2)|0}c[o>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[c[h>>2]>>2]|0))break;c:do if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)>=0){c[p>>2]=c[(c[s>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[s>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break c;d:do if((c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]|0)>=0){c[(c[u>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2];k=c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]|0;j=c[o>>2]|0;c[o>>2]=j+1;c[(c[v>>2]|0)+(j<<2)>>2]=k;if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=68?(c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]|0)!=68:0)break;k=c[24742]|0;j=c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]|0;c[g>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2];c[g+4>>2]=j;Y2(k,129792,g)|0;c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]}else{c[r>>2]=c[(c[t>>2]|0)+(c[p>>2]<<2)>>2];c[q>>2]=c[(c[s>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[s>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break d;do if((c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]|0)!=(c[m>>2]|0)?(c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)>=0:0){c[(c[u>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2];k=c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0;j=c[o>>2]|0;c[o>>2]=j+1;c[(c[v>>2]|0)+(j<<2)>>2]=k;if((c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)!=68?(c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)!=68:0)break;k=c[24742]|0;j=c[(c[l>>2]|0)+(c[(c[t>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0;c[f>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2];c[f+4>>2]=j;Y2(k,129803,f)|0;c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]}while(0);c[q>>2]=(c[q>>2]|0)+1}}while(0);c[p>>2]=(c[p>>2]|0)+1}}while(0);c[m>>2]=(c[m>>2]|0)+1}c[w>>2]=Vv(c[o>>2]|0,c[n>>2]|0,c[n>>2]|0,c[u>>2]|0,c[v>>2]|0,0,8,8)|0;O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[l>>2]|0);i=e;return c[w>>2]|0} +function Cv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;g=i;i=i+32|0;j=g+28|0;k=g+24|0;l=g;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=zv(c[j>>2]|0,c[k>>2]|0,+h[l>>3],c[m>>2]|0)|0;c[k>>2]=c[(c[o>>2]|0)+20>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[j>>2]|0))break;d=+h[l>>3];m=(c[k>>2]|0)+(c[p>>2]<<3)|0;q=+h[m>>3];if(!((c[n>>2]|0)%2|0))h[m>>3]=q-d;else h[m>>3]=q+d;c[n>>2]=((c[n>>2]|0)-((c[n>>2]|0)%2|0)|0)/2|0;c[p>>2]=(c[p>>2]|0)+1}i=g;return c[o>>2]|0}function Dv(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i;i=i+160|0;m=l+144|0;n=l+140|0;o=l+136|0;p=l+132|0;q=l+64|0;r=l+56|0;s=l+48|0;t=l+128|0;u=l+124|0;v=l+120|0;w=l+116|0;x=l+112|0;y=l+40|0;z=l+32|0;A=l+24|0;B=l+16|0;C=l+108|0;D=l+104|0;E=l+8|0;F=l;G=l+100|0;H=l+96|0;I=l+92|0;J=l+88|0;K=l+84|0;L=l+80|0;M=l+76|0;N=l+72|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;h[q>>3]=f;h[r>>3]=g;h[s>>3]=j;c[t>>2]=k;if(!((c[m>>2]|0)!=0&(c[n>>2]|0)!=0)){i=l;return}if((c[c[m>>2]>>2]|0)<=0)La(132101,131933,175,132126);if((c[c[n>>2]>>2]|0)<=0)La(132101,131933,175,132126);c[G>>2]=c[(c[m>>2]|0)+16>>2];c[u>>2]=c[(c[m>>2]|0)+40>>2];c[v>>2]=c[(c[n>>2]|0)+40>>2];h[y>>3]=+Aw(c[(c[m>>2]|0)+32>>2]|0,c[(c[n>>2]|0)+32>>2]|0,c[G>>2]|0);if(+h[(c[m>>2]|0)+24>>3]+ +h[(c[n>>2]|0)+24>>3]<+h[q>>3]*+h[y>>3]){k=c[t>>2]|0;h[k>>3]=+h[k>>3]+1.0;c[w>>2]=c[(c[m>>2]|0)+32>>2];h[E>>3]=+h[(c[m>>2]|0)+8>>3];c[C>>2]=Iv(c[m>>2]|0,c[G>>2]|0)|0;c[x>>2]=c[(c[n>>2]|0)+32>>2];h[F>>3]=+h[(c[n>>2]|0)+8>>3];c[D>>2]=Iv(c[n>>2]|0,c[G>>2]|0)|0;if(!(+h[y>>3]>0.0))La(132160,131933,191,132126);c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[G>>2]|0))break;j=+h[E>>3]*+h[F>>3]*+h[s>>3]*(+h[(c[w>>2]|0)+(c[L>>2]<<3)>>3]-+h[(c[x>>2]|0)+(c[L>>2]<<3)>>3]);g=+h[y>>3];if(+h[r>>3]==-1.0)h[B>>3]=j/(g*+h[y>>3]);else h[B>>3]=j/+P(+g,+(1.0-+h[r>>3]));k=(c[C>>2]|0)+(c[L>>2]<<3)|0;h[k>>3]=+h[k>>3]+ +h[B>>3];k=(c[D>>2]|0)+(c[L>>2]<<3)|0;h[k>>3]=+h[k>>3]-+h[B>>3];c[L>>2]=(c[L>>2]|0)+1}i=l;return}if((c[u>>2]|0)!=0&(c[v>>2]|0)!=0){while(1){if(!(c[u>>2]|0))break;c[w>>2]=sv(ry(c[u>>2]|0)|0)|0;h[z>>3]=+rv(ry(c[u>>2]|0)|0);c[J>>2]=tv(ry(c[u>>2]|0)|0)|0;c[C>>2]=Jv(c[p>>2]|0,c[J>>2]|0,c[u>>2]|0,c[G>>2]|0)|0;c[v>>2]=c[(c[n>>2]|0)+40>>2];while(1){if(!(c[v>>2]|0))break;c[x>>2]=sv(ry(c[v>>2]|0)|0)|0;h[A>>3]=+rv(ry(c[v>>2]|0)|0);c[K>>2]=tv(ry(c[v>>2]|0)|0)|0;c[D>>2]=Jv(c[p>>2]|0,c[K>>2]|0,c[v>>2]|0,c[G>>2]|0)|0;if(!((c[m>>2]|0)==(c[n>>2]|0)?(c[K>>2]|0)<(c[J>>2]|0):0))O=20;if((O|0)==20?(O=0,(c[J>>2]|0)!=(c[K>>2]|0)):0){F=(c[t>>2]|0)+8|0;h[F>>3]=+h[F>>3]+1.0;h[y>>3]=+yw(c[o>>2]|0,c[G>>2]|0,c[J>>2]|0,c[K>>2]|0);c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[G>>2]|0))break;g=+h[z>>3]*+h[A>>3]*+h[s>>3]*(+h[(c[w>>2]|0)+(c[L>>2]<<3)>>3]-+h[(c[x>>2]|0)+(c[L>>2]<<3)>>3]);j=+h[y>>3];if(+h[r>>3]==-1.0)h[B>>3]=g/(j*+h[y>>3]);else h[B>>3]=g/+P(+j,+(1.0-+h[r>>3]));F=(c[C>>2]|0)+(c[L>>2]<<3)|0;h[F>>3]=+h[F>>3]+ +h[B>>3];F=(c[D>>2]|0)+(c[L>>2]<<3)|0;h[F>>3]=+h[F>>3]-+h[B>>3];c[L>>2]=(c[L>>2]|0)+1}c[v>>2]=sy(c[v>>2]|0)|0;continue}c[v>>2]=sy(c[v>>2]|0)|0}c[u>>2]=sy(c[u>>2]|0)|0}i=l;return}if((c[m>>2]|0)==(c[n>>2]|0)){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(1<>2]|0))break;c[M>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(c[H>>2]<<2)>>2];c[I>>2]=c[H>>2];while(1){if((c[I>>2]|0)>=(1<>2]|0))break;c[N>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(c[I>>2]<<2)>>2];Dv(c[M>>2]|0,c[N>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3],c[t>>2]|0);c[I>>2]=(c[I>>2]|0)+1}c[H>>2]=(c[H>>2]|0)+1}i=l;return}if(!((c[u>>2]|0)!=0?1:!(+h[(c[m>>2]|0)+24>>3]>+h[(c[n>>2]|0)+24>>3]))){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(1<>2]|0))break;c[M>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(c[H>>2]<<2)>>2];Dv(c[M>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3],c[t>>2]|0);c[H>>2]=(c[H>>2]|0)+1}i=l;return}if(!((c[v>>2]|0)!=0?1:!(+h[(c[n>>2]|0)+24>>3]>+h[(c[m>>2]|0)+24>>3]))){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(1<>2]|0))break;c[M>>2]=c[(c[(c[n>>2]|0)+36>>2]|0)+(c[H>>2]<<2)>>2];Dv(c[M>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3],c[t>>2]|0);c[H>>2]=(c[H>>2]|0)+1}i=l;return}if(!(c[u>>2]|0)){c[H>>2]=0;while(1){if((c[H>>2]|0)>=(1<>2]|0))break;c[M>>2]=c[(c[(c[m>>2]|0)+36>>2]|0)+(c[H>>2]<<2)>>2];Dv(c[M>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3],c[t>>2]|0);c[H>>2]=(c[H>>2]|0)+1}i=l;return}if(c[v>>2]|0)La(176099,131933,273,132126);c[H>>2]=0;while(1){if((c[H>>2]|0)>=(1<>2]|0))break;c[M>>2]=c[(c[(c[n>>2]|0)+36>>2]|0)+(c[H>>2]<<2)>>2];Dv(c[M>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],+h[s>>3],c[t>>2]|0);c[H>>2]=(c[H>>2]|0)+1}i=l;return}function Ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;j=e+44|0;k=e+8|0;l=e;m=e+40|0;n=e+36|0;o=e+32|0;p=e+28|0;q=e+24|0;r=e+20|0;s=e+16|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[o>>2]=c[(c[f>>2]|0)+40>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2];h[k>>3]=+h[(c[f>>2]|0)+8>>3];c[m>>2]=Iv(c[f>>2]|0,c[r>>2]|0)|0;if(!(+h[k>>3]>0.0))La(132046,131933,289,132054);d=(c[j>>2]|0)+16|0;h[d>>3]=+h[d>>3]+1.0;if(c[o>>2]|0){while(1){if(!(c[o>>2]|0))break;c[p>>2]=tv(ry(c[o>>2]|0)|0)|0;c[n>>2]=Jv(c[g>>2]|0,c[p>>2]|0,c[o>>2]|0,c[r>>2]|0)|0;h[l>>3]=+rv(ry(c[o>>2]|0)|0);h[l>>3]=+h[l>>3]/+h[k>>3];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break;d=(c[n>>2]|0)+(c[q>>2]<<3)|0;h[d>>3]=+h[d>>3]+ +h[l>>3]*+h[(c[m>>2]|0)+(c[q>>2]<<3)>>3];c[q>>2]=(c[q>>2]|0)+1}c[o>>2]=sy(c[o>>2]|0)|0}i=e;return}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(1<>2]|0)){t=19;break}c[s>>2]=c[(c[(c[f>>2]|0)+36>>2]|0)+(c[p>>2]<<2)>>2];if(c[s>>2]|0){if((c[c[s>>2]>>2]|0)<=0){t=13;break}c[n>>2]=Iv(c[s>>2]|0,c[r>>2]|0)|0;h[l>>3]=+h[(c[s>>2]|0)+8>>3];h[l>>3]=+h[l>>3]/+h[k>>3];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break;o=(c[n>>2]|0)+(c[q>>2]<<3)|0;h[o>>3]=+h[o>>3]+ +h[l>>3]*+h[(c[m>>2]|0)+(c[q>>2]<<3)>>3];c[q>>2]=(c[q>>2]|0)+1}Ev(c[s>>2]|0,c[g>>2]|0,c[j>>2]|0)}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==13)La(132090,131933,307,132054);else if((t|0)==19){i=e;return}}function Fv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;j=g+44|0;k=g+40|0;l=g;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+8|0;c[j>>2]=a;c[k>>2]=b;h[l>>3]=d;c[m>>2]=e;c[n>>2]=f;c[p>>2]=c[(c[j>>2]|0)+16>>2];c[r>>2]=0;c[s>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+16>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[c[j>>2]>>2]|0)){c[c[j>>2]>>2]=1;h[(c[j>>2]|0)+8>>3]=+h[l>>3];f=cK(c[p>>2]<<3)|0;c[(c[j>>2]|0)+32>>2]=f;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+16>>2]|0))break;h[(c[(c[j>>2]|0)+32>>2]|0)+(c[o>>2]<<3)>>3]=+h[(c[k>>2]|0)+(c[o>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}c[r>>2]=Gv(c[(c[j>>2]|0)+16>>2]|0,+h[l>>3],c[k>>2]|0,c[m>>2]|0)|0;if(c[(c[j>>2]|0)+40>>2]|0)La(131957,131933,497,131965);f=oy(c[r>>2]|0)|0;c[(c[j>>2]|0)+40>>2]=f;u=c[j>>2]|0;i=g;return u|0}if((c[n>>2]|0)>=(c[s>>2]|0)){if(c[(c[j>>2]|0)+36>>2]|0)La(132031,131933,536,131965);f=c[j>>2]|0;c[f>>2]=(c[f>>2]|0)+1;f=(c[j>>2]|0)+8|0;h[f>>3]=+h[f>>3]+ +h[l>>3];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+16>>2]|0))break;h[(c[(c[j>>2]|0)+32>>2]|0)+(c[o>>2]<<3)>>3]=(+h[(c[(c[j>>2]|0)+32>>2]|0)+(c[o>>2]<<3)>>3]*+(c[c[j>>2]>>2]|0)+ +h[(c[k>>2]|0)+(c[o>>2]<<3)>>3])/+((c[c[j>>2]>>2]|0)+1|0);c[o>>2]=(c[o>>2]|0)+1}c[r>>2]=Gv(c[(c[j>>2]|0)+16>>2]|0,+h[l>>3],c[k>>2]|0,c[m>>2]|0)|0;if(!(c[(c[j>>2]|0)+40>>2]|0))La(132041,131933,542,131965);f=qy(c[(c[j>>2]|0)+40>>2]|0,c[r>>2]|0)|0;c[(c[j>>2]|0)+40>>2]=f;u=c[j>>2]|0;i=g;return u|0}f=(c[j>>2]|0)+8|0;h[f>>3]=+h[f>>3]+ +h[l>>3];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[j>>2]|0)+16>>2]|0))break;h[(c[(c[j>>2]|0)+32>>2]|0)+(c[o>>2]<<3)>>3]=(+h[(c[(c[j>>2]|0)+32>>2]|0)+(c[o>>2]<<3)>>3]*+(c[c[j>>2]>>2]|0)+ +h[(c[k>>2]|0)+(c[o>>2]<<3)>>3])/+((c[c[j>>2]>>2]|0)+1|0);c[o>>2]=(c[o>>2]|0)+1}a:do if(!(c[(c[j>>2]|0)+36>>2]|0)){f=cK(1<>2]<<2)|0;c[(c[j>>2]|0)+36>>2]=f;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(1<>2]|0))break a;c[(c[(c[j>>2]|0)+36>>2]|0)+(c[o>>2]<<2)>>2]=0;c[o>>2]=(c[o>>2]|0)+1}}while(0);c[q>>2]=Hv(c[p>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[k>>2]|0)|0;if(!((c[q>>2]|0)>=0?(c[q>>2]|0)<(1<>2]|0):0))La(131987,131933,510,131965);if(!(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0)){o=Cv(c[(c[j>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+20>>2]|0,+h[(c[j>>2]|0)+24>>3]/2.0,c[s>>2]|0,c[q>>2]|0)|0;c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]=o}o=Fv(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0,c[k>>2]|0,+h[l>>3],c[m>>2]|0,(c[n>>2]|0)+1|0)|0;c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]=o;if(!(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0))La(132010,131933,514,131965);do if(c[(c[j>>2]|0)+40>>2]|0){c[t>>2]=tv(ry(c[(c[j>>2]|0)+40>>2]|0)|0)|0;if((c[c[j>>2]>>2]|0)!=1)La(132021,131933,518,131965);c[k>>2]=sv(ry(c[(c[j>>2]|0)+40>>2]|0)|0)|0;h[l>>3]=+rv(ry(c[(c[j>>2]|0)+40>>2]|0)|0);c[q>>2]=Hv(c[p>>2]|0,c[(c[j>>2]|0)+20>>2]|0,c[k>>2]|0)|0;if(!((c[q>>2]|0)>=0?(c[q>>2]|0)<(1<>2]|0):0))La(131987,131933,522,131965);if(!(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0)){o=Cv(c[(c[j>>2]|0)+16>>2]|0,c[(c[j>>2]|0)+20>>2]|0,+h[(c[j>>2]|0)+24>>3]/2.0,c[s>>2]|0,c[q>>2]|0)|0;c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]=o}o=Fv(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0,c[k>>2]|0,+h[l>>3],c[t>>2]|0,(c[n>>2]|0)+1|0)|0;c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]=o;if(c[(c[(c[j>>2]|0)+36>>2]|0)+(c[q>>2]<<2)>>2]|0){py(c[(c[j>>2]|0)+40>>2]|0,97);c[(c[j>>2]|0)+40>>2]=0;break}else La(132010,131933,527,131965)}while(0);q=c[j>>2]|0;c[q>>2]=(c[q>>2]|0)+1;u=c[j>>2]|0;i=g;return u|0}function Gv(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;c[g>>2]=a;h[j>>3]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=cK(32)|0;h[c[m>>2]>>3]=+h[j>>3];j=cK(c[g>>2]<<3)|0;c[(c[m>>2]|0)+8>>2]=j;h[(c[m>>2]|0)+16>>3]=+(c[l>>2]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[g>>2]|0))break;h[(c[(c[m>>2]|0)+8>>2]|0)+(c[n>>2]<<3)>>3]=+h[(c[k>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[(c[m>>2]|0)+24>>2]=0;i=f;return c[m>>2]|0}function Hv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;c[l>>2]=(c[f>>2]|0)-1;while(1){if((c[l>>2]|0)<0)break;f=c[k>>2]<<1;if(+h[(c[j>>2]|0)+(c[l>>2]<<3)>>3]-+h[(c[g>>2]|0)+(c[l>>2]<<3)>>3]<0.0)c[k>>2]=f;else c[k>>2]=f+1;c[l>>2]=(c[l>>2]|0)+-1}i=e;return c[k>>2]|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[(c[e>>2]|0)+48>>2];if(c[j>>2]|0){k=c[j>>2]|0;i=d;return k|0}b=cK(c[f>>2]<<3)|0;c[(c[e>>2]|0)+48>>2]=b;c[j>>2]=c[(c[e>>2]|0)+48>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;h[(c[j>>2]|0)+(c[g>>2]<<3)>>3]=0.0;c[g>>2]=(c[g>>2]|0)+1}k=c[j>>2]|0;i=d;return k|0}function Jv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[(ry(c[j>>2]|0)|0)+24>>2];if(c[l>>2]|0){m=c[l>>2]|0;i=f;return m|0}e=_(c[h>>2]|0,c[k>>2]|0)|0;k=(c[g>>2]|0)+(e<<3)|0;c[(ry(c[j>>2]|0)|0)+24>>2]=k;c[l>>2]=c[(ry(c[j>>2]|0)|0)+24>>2];m=c[l>>2]|0;i=f;return m|0}function Kv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0,E=0;b=i;i=i+80|0;d=b+76|0;e=b+72|0;f=b+68|0;g=b+64|0;j=b+60|0;k=b+56|0;l=b+52|0;m=b+48|0;n=b+44|0;o=b+40|0;p=b+36|0;q=b+32|0;r=b+28|0;s=b+24|0;t=b+20|0;u=b+16|0;v=b+12|0;w=b+8|0;x=b+4|0;y=b;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+20>>2];c[g>>2]=c[(c[e>>2]|0)+24>>2];c[l>>2]=c[(c[e>>2]|0)+8>>2];c[m>>2]=c[c[e>>2]>>2];c[n>>2]=c[(c[e>>2]|0)+4>>2];c[o>>2]=c[(c[e>>2]|0)+16>>2];c[p>>2]=c[(c[e>>2]|0)+32>>2];if(!(c[e>>2]|0)){c[d>>2]=0;z=c[d>>2]|0;i=b;return z|0}if((c[(c[e>>2]|0)+32>>2]|0)!=1)La(132169,132193,75,132208);c[q>>2]=Nv(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[(c[q>>2]|0)+8>>2]=c[l>>2];c[j>>2]=c[(c[q>>2]|0)+20>>2];c[k>>2]=c[(c[q>>2]|0)+24>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>(c[n>>2]|0))break;c[(c[j>>2]|0)+(c[r>>2]<<2)>>2]=0;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;c[s>>2]=c[(c[f>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[s>>2]|0)>=(c[(c[f>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;l=(c[j>>2]|0)+((c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]|0)+1<<2)|0;c[l>>2]=(c[l>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;l=(c[j>>2]|0)+((c[r>>2]|0)+1<<2)|0;c[l>>2]=(c[l>>2]|0)+(c[(c[j>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}a:do switch(c[(c[e>>2]|0)+16>>2]|0){case 1:{c[t>>2]=c[(c[e>>2]|0)+28>>2];c[u>>2]=c[(c[q>>2]|0)+28>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break a;c[s>>2]=c[(c[f>>2]|0)+(c[r>>2]<<2)>>2];while(1){A=c[r>>2]|0;if((c[s>>2]|0)>=(c[(c[f>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;c[(c[k>>2]|0)+(c[(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]<<2)>>2]=A;B=+h[(c[t>>2]|0)+(c[s>>2]<<3)>>3];l=(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)|0;p=c[l>>2]|0;c[l>>2]=p+1;h[(c[u>>2]|0)+(p<<3)>>3]=B;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=A+1}break}case 2:{c[v>>2]=c[(c[e>>2]|0)+28>>2];c[w>>2]=c[(c[q>>2]|0)+28>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break a;c[s>>2]=c[(c[f>>2]|0)+(c[r>>2]<<2)>>2];while(1){C=c[r>>2]|0;if((c[s>>2]|0)>=(c[(c[f>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;c[(c[k>>2]|0)+(c[(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]<<2)>>2]=C;h[(c[w>>2]|0)+(c[(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]<<1<<3)>>3]=+h[(c[v>>2]|0)+(c[s>>2]<<1<<3)>>3];h[(c[w>>2]|0)+((c[(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)>>3]=+h[(c[v>>2]|0)+((c[s>>2]<<1)+1<<3)>>3];p=(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)|0;c[p>>2]=(c[p>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=C+1}break}case 4:{c[x>>2]=c[(c[e>>2]|0)+28>>2];c[y>>2]=c[(c[q>>2]|0)+28>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break a;c[s>>2]=c[(c[f>>2]|0)+(c[r>>2]<<2)>>2];while(1){D=c[r>>2]|0;if((c[s>>2]|0)>=(c[(c[f>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;c[(c[k>>2]|0)+(c[(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]<<2)>>2]=D;p=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2]|0;l=(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)|0;o=c[l>>2]|0;c[l>>2]=o+1;c[(c[y>>2]|0)+(o<<2)>>2]=p;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=D+1}break}case 8:{c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break a;c[s>>2]=c[(c[f>>2]|0)+(c[r>>2]<<2)>>2];while(1){E=c[r>>2]|0;if((c[s>>2]|0)>=(c[(c[f>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;p=(c[j>>2]|0)+(c[(c[g>>2]|0)+(c[s>>2]<<2)>>2]<<2)|0;o=c[p>>2]|0;c[p>>2]=o+1;c[(c[k>>2]|0)+(o<<2)>>2]=E;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=E+1}break}case 16:{Lv(c[q>>2]|0);c[d>>2]=0;z=c[d>>2]|0;i=b;return z|0}default:{Lv(c[q>>2]|0);c[d>>2]=0;z=c[d>>2]|0;i=b;return z|0}}while(0);c[r>>2]=(c[n>>2]|0)-1;while(1){if((c[r>>2]|0)<0)break;c[(c[j>>2]|0)+((c[r>>2]|0)+1<<2)>>2]=c[(c[j>>2]|0)+(c[r>>2]<<2)>>2];c[r>>2]=(c[r>>2]|0)+-1}c[c[j>>2]>>2]=0;c[d>>2]=c[q>>2];z=c[d>>2]|0;i=b;return z|0}function Lv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+20>>2]|0)O4(c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+24>>2]|0)O4(c[(c[d>>2]|0)+24>>2]|0);if(c[(c[d>>2]|0)+28>>2]|0)O4(c[(c[d>>2]|0)+28>>2]|0);O4(c[d>>2]|0);i=b;return}function Mv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=(Ov(c[f>>2]|0,c[g>>2]|0)|0)!=0;g=c[f>>2]|0;if(b){c[e>>2]=Pv(g)|0;j=c[e>>2]|0;i=d;return j|0}c[h>>2]=Kv(g)|0;if(c[h>>2]|0){c[f>>2]=Qv(c[f>>2]|0,c[h>>2]|0)|0;Lv(c[h>>2]|0);c[(c[f>>2]|0)+36>>2]=c[(c[f>>2]|0)+36>>2]|2;c[(c[f>>2]|0)+36>>2]=c[(c[f>>2]|0)+36>>2]|1;c[e>>2]=c[f>>2];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function Nv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[o>>2]=gw(c[l>>2]|0)|0;c[n>>2]=hw(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0,c[o>>2]|0,c[m>>2]|0)|0;if((c[k>>2]|0)<=0){p=c[n>>2]|0;i=g;return p|0}c[n>>2]=iw(c[n>>2]|0,c[k>>2]|0)|0;p=c[n>>2]|0;i=g;return p|0}function Ov(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;d=i;i=i+80|0;e=d+76|0;f=d+72|0;g=d+68|0;j=d+64|0;k=d+60|0;l=d+56|0;m=d+52|0;n=d+48|0;o=d+44|0;p=d+40|0;q=d+36|0;r=d+32|0;s=d+28|0;t=d+24|0;u=d+20|0;v=d+16|0;w=d+12|0;x=d+8|0;y=d+4|0;z=d;c[f>>2]=a;c[g>>2]=b;c[r>>2]=0;if((c[(c[f>>2]|0)+32>>2]|0)!=1)La(132169,132193,184,132231);if(!(c[f>>2]|0)){c[e>>2]=0;A=c[e>>2]|0;i=d;return A|0}if(c[(c[f>>2]|0)+36>>2]&2){c[e>>2]=1;A=c[e>>2]|0;i=d;return A|0}if((c[g>>2]|0)!=0?(c[(c[f>>2]|0)+36>>2]&1|0)!=0:0){c[e>>2]=1;A=c[e>>2]|0;i=d;return A|0}if((c[c[f>>2]>>2]|0)!=(c[(c[f>>2]|0)+4>>2]|0)){c[e>>2]=0;A=c[e>>2]|0;i=d;return A|0}c[j>>2]=Kv(c[f>>2]|0)|0;if(!(c[j>>2]|0)){c[e>>2]=0;A=c[e>>2]|0;i=d;return A|0}c[k>>2]=c[(c[f>>2]|0)+20>>2];c[l>>2]=c[(c[f>>2]|0)+24>>2];c[m>>2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=c[(c[j>>2]|0)+24>>2];c[p>>2]=c[c[f>>2]>>2];c[q>>2]=cK(c[p>>2]<<2)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=-1;c[s>>2]=(c[s>>2]|0)+1}b=c[(c[f>>2]|0)+16>>2]|0;c[o>>2]=b;c[o>>2]=(c[g>>2]|0)!=0?8:b;a:do switch(c[o>>2]|0){case 1:{c[u>>2]=c[(c[f>>2]|0)+28>>2];c[v>>2]=c[(c[j>>2]|0)+28>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>(c[p>>2]|0))break;if((c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0)!=(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;c[t>>2]=c[(c[k>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[k>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[(c[q>>2]|0)+(c[(c[l>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;B=+h[(c[v>>2]|0)+(c[t>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<3)>>3];if((+h[(c[v>>2]|0)+(c[t>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<3)>>3]>=0.0?B:-B)>1.0e-07)break a;c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=1;C=83;break}case 2:{c[w>>2]=c[(c[f>>2]|0)+28>>2];c[x>>2]=c[(c[j>>2]|0)+28>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>(c[p>>2]|0))break;if((c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0)!=(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;c[t>>2]=c[(c[k>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[k>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[(c[q>>2]|0)+(c[(c[l>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;B=+h[(c[x>>2]|0)+(c[t>>2]<<1<<3)>>3]-+h[(c[w>>2]|0)+(c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<1<<3)>>3];if((+h[(c[x>>2]|0)+(c[t>>2]<<1<<3)>>3]-+h[(c[w>>2]|0)+(c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<1<<3)>>3]>=0.0?B:-B)>1.0e-07)break a;B=+h[(c[x>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]-+h[(c[w>>2]|0)+((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)>>3];if((+h[(c[x>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]-+h[(c[w>>2]|0)+((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)>>3]>=0.0?B:-B)>1.0e-07)break a;c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=1;C=83;break}case 4:{c[y>>2]=c[(c[f>>2]|0)+28>>2];c[z>>2]=c[(c[j>>2]|0)+28>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;c[t>>2]=c[(c[k>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[k>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[(c[q>>2]|0)+(c[(c[l>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[(c[z>>2]|0)+(c[t>>2]<<2)>>2]|0)!=(c[(c[y>>2]|0)+(c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=1;C=83;break}case 8:{c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;c[t>>2]=c[(c[k>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[k>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[(c[q>>2]|0)+(c[(c[l>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[(c[q>>2]|0)+(c[(c[n>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=1;C=83;break}default:{}}while(0);do if((C|0)==83){s=c[(c[f>>2]|0)+36>>2]|0;if(c[g>>2]|0){c[(c[f>>2]|0)+36>>2]=s|1;break}else{c[(c[f>>2]|0)+36>>2]=s|2;c[(c[f>>2]|0)+36>>2]=c[(c[f>>2]|0)+36>>2]|1;break}}while(0);O4(c[q>>2]|0);Lv(c[j>>2]|0);c[e>>2]=c[r>>2];A=c[e>>2]|0;i=d;return A|0}function Pv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;a=c[e>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=a;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=Nv(c[a>>2]|0,c[(c[e>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+8>>2]|0,c[(c[e>>2]|0)+16>>2]|0,c[(c[e>>2]|0)+32>>2]|0)|0;Z4(c[(c[f>>2]|0)+20>>2]|0,c[(c[e>>2]|0)+20>>2]|0,(c[c[e>>2]>>2]|0)+1<<2|0)|0;Z4(c[(c[f>>2]|0)+24>>2]|0,c[(c[e>>2]|0)+24>>2]|0,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[c[e>>2]>>2]<<2)>>2]<<2|0)|0;if(c[(c[e>>2]|0)+28>>2]|0)Z4(c[(c[f>>2]|0)+28>>2]|0,c[(c[e>>2]|0)+28>>2]|0,_(c[(c[e>>2]|0)+40>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0)|0;c[(c[f>>2]|0)+36>>2]=c[(c[e>>2]|0)+36>>2];c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+8>>2];c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}function Qv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0;d=i;i=i+112|0;e=d+100|0;f=d+96|0;g=d+92|0;j=d+88|0;k=d+84|0;l=d+80|0;m=d+76|0;n=d+72|0;o=d+68|0;p=d+64|0;q=d+60|0;r=d+56|0;s=d+52|0;t=d+48|0;u=d+44|0;v=d+40|0;w=d+36|0;x=d+32|0;y=d+28|0;z=d+24|0;A=d+20|0;B=d+16|0;C=d+12|0;D=d+8|0;E=d+4|0;F=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=0;c[m>>2]=0;c[n>>2]=c[(c[f>>2]|0)+20>>2];c[o>>2]=c[(c[f>>2]|0)+24>>2];c[p>>2]=c[(c[g>>2]|0)+20>>2];c[q>>2]=c[(c[g>>2]|0)+24>>2];if(!((c[f>>2]|0)!=0&(c[g>>2]|0)!=0))La(132257,132193,972,132264);if((c[(c[f>>2]|0)+32>>2]|0)!=(c[(c[g>>2]|0)+32>>2]|0))La(132281,132193,973,132264);if((c[(c[f>>2]|0)+32>>2]|0)!=1)La(132281,132193,973,132264);if((c[(c[f>>2]|0)+16>>2]|0)!=(c[(c[g>>2]|0)+16>>2]|0))La(132331,132193,974,132264);c[j>>2]=c[c[f>>2]>>2];c[k>>2]=c[(c[f>>2]|0)+4>>2];if((c[j>>2]|0)==(c[c[g>>2]>>2]|0)?(c[k>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0){c[w>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+8>>2]|0);c[l>>2]=Nv(c[j>>2]|0,c[k>>2]|0,c[w>>2]|0,c[(c[f>>2]|0)+16>>2]|0,1)|0;if(c[l>>2]|0){c[r>>2]=c[(c[l>>2]|0)+20>>2];c[s>>2]=c[(c[l>>2]|0)+24>>2];c[m>>2]=cK(c[k>>2]<<2)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[k>>2]|0))break;c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]=-1;c[t>>2]=(c[t>>2]|0)+1}c[v>>2]=0;c[c[r>>2]>>2]=0;a:do switch(c[(c[f>>2]|0)+16>>2]|0){case 1:{c[x>>2]=c[(c[f>>2]|0)+28>>2];c[y>>2]=c[(c[g>>2]|0)+28>>2];c[z>>2]=c[(c[l>>2]|0)+28>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[j>>2]|0))break a;c[u>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[n>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;c[(c[m>>2]|0)+(c[(c[o>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[v>>2];c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[u>>2]<<2)>>2];h[(c[z>>2]|0)+(c[v>>2]<<3)>>3]=+h[(c[x>>2]|0)+(c[u>>2]<<3)>>3];c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=c[(c[p>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[p>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;k=c[u>>2]|0;if((c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]|0)){c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[q>>2]|0)+(k<<2)>>2];G=+h[(c[y>>2]|0)+(c[u>>2]<<3)>>3];w=c[v>>2]|0;c[v>>2]=w+1;h[(c[z>>2]|0)+(w<<3)>>3]=G}else{w=(c[z>>2]|0)+(c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<3)|0;h[w>>3]=+h[w>>3]+ +h[(c[y>>2]|0)+(k<<3)>>3]}c[u>>2]=(c[u>>2]|0)+1}c[(c[r>>2]|0)+((c[t>>2]|0)+1<<2)>>2]=c[v>>2];c[t>>2]=(c[t>>2]|0)+1}break}case 2:{c[A>>2]=c[(c[f>>2]|0)+28>>2];c[B>>2]=c[(c[g>>2]|0)+28>>2];c[C>>2]=c[(c[l>>2]|0)+28>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[j>>2]|0))break a;c[u>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[n>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;c[(c[m>>2]|0)+(c[(c[o>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[v>>2];c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[u>>2]<<2)>>2];h[(c[C>>2]|0)+(c[v>>2]<<1<<3)>>3]=+h[(c[A>>2]|0)+(c[u>>2]<<1<<3)>>3];h[(c[C>>2]|0)+((c[v>>2]<<1)+1<<3)>>3]=+h[(c[A>>2]|0)+((c[u>>2]<<1)+1<<3)>>3];c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=c[(c[p>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[p>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;k=c[u>>2]|0;if((c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]|0)){c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[q>>2]|0)+(k<<2)>>2];h[(c[C>>2]|0)+(c[v>>2]<<1<<3)>>3]=+h[(c[B>>2]|0)+(c[u>>2]<<1<<3)>>3];h[(c[C>>2]|0)+((c[v>>2]<<1)+1<<3)>>3]=+h[(c[B>>2]|0)+((c[u>>2]<<1)+1<<3)>>3];c[v>>2]=(c[v>>2]|0)+1}else{w=(c[C>>2]|0)+(c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<1<<3)|0;h[w>>3]=+h[w>>3]+ +h[(c[B>>2]|0)+(k<<1<<3)>>3];k=(c[C>>2]|0)+((c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)|0;h[k>>3]=+h[k>>3]+ +h[(c[B>>2]|0)+((c[u>>2]<<1)+1<<3)>>3]}c[u>>2]=(c[u>>2]|0)+1}c[(c[r>>2]|0)+((c[t>>2]|0)+1<<2)>>2]=c[v>>2];c[t>>2]=(c[t>>2]|0)+1}break}case 4:{c[D>>2]=c[(c[f>>2]|0)+28>>2];c[E>>2]=c[(c[g>>2]|0)+28>>2];c[F>>2]=c[(c[l>>2]|0)+28>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[j>>2]|0))break a;c[u>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[n>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;c[(c[m>>2]|0)+(c[(c[o>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[v>>2];c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[u>>2]<<2)>>2];c[(c[F>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[D>>2]|0)+(c[u>>2]<<2)>>2];c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=c[(c[p>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[p>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;k=c[u>>2]|0;if((c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]|0)){c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[q>>2]|0)+(k<<2)>>2];c[(c[F>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[E>>2]|0)+(c[u>>2]<<2)>>2];c[v>>2]=(c[v>>2]|0)+1}else{w=(c[F>>2]|0)+(c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)|0;c[w>>2]=(c[w>>2]|0)+(c[(c[E>>2]|0)+(k<<2)>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[(c[r>>2]|0)+((c[t>>2]|0)+1<<2)>>2]=c[v>>2];c[t>>2]=(c[t>>2]|0)+1}break}case 8:{c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[j>>2]|0))break a;c[u>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[n>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;c[(c[m>>2]|0)+(c[(c[o>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[v>>2];c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[u>>2]<<2)>>2];c[v>>2]=(c[v>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=c[(c[p>>2]|0)+(c[t>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[p>>2]|0)+((c[t>>2]|0)+1<<2)>>2]|0))break;if((c[(c[m>>2]|0)+(c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[r>>2]|0)+(c[t>>2]<<2)>>2]|0)){c[(c[s>>2]|0)+(c[v>>2]<<2)>>2]=c[(c[q>>2]|0)+(c[u>>2]<<2)>>2];c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[(c[r>>2]|0)+((c[t>>2]|0)+1<<2)>>2]=c[v>>2];c[t>>2]=(c[t>>2]|0)+1}break}default:{}}while(0);c[(c[l>>2]|0)+8>>2]=c[v>>2]}if(c[m>>2]|0)O4(c[m>>2]|0);c[e>>2]=c[l>>2];H=c[e>>2]|0;i=d;return H|0}c[e>>2]=0;H=c[e>>2]|0;i=d;return H|0}function Rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=(Ov(c[f>>2]|0,c[g>>2]|0)|0)!=0;g=c[f>>2]|0;if(b){c[h>>2]=Pv(g)|0;c[e>>2]=Sv(c[h>>2]|0)|0;j=c[e>>2]|0;i=d;return j|0}c[h>>2]=Kv(g)|0;if(c[h>>2]|0){c[f>>2]=Qv(c[f>>2]|0,c[h>>2]|0)|0;Lv(c[h>>2]|0);c[(c[f>>2]|0)+36>>2]=c[(c[f>>2]|0)+36>>2]|2;c[(c[f>>2]|0)+36>>2]=c[(c[f>>2]|0)+36>>2]|1;c[e>>2]=Sv(c[f>>2]|0)|0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function Sv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;b=i;i=i+48|0;d=b+40|0;e=b+36|0;f=b+32|0;g=b+28|0;j=b+24|0;k=b+20|0;l=b+16|0;m=b+12|0;n=b+8|0;o=b+4|0;p=b;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=c[e>>2];q=c[d>>2]|0;i=b;return q|0}c[l>>2]=0;c[j>>2]=c[(c[e>>2]|0)+20>>2];c[k>>2]=c[(c[e>>2]|0)+24>>2];c[m>>2]=c[c[j>>2]>>2];switch(c[(c[e>>2]|0)+16>>2]|0){case 1:{c[n>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;c[g>>2]=c[m>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;if((c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)!=(c[f>>2]|0)){c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[g>>2]<<2)>>2];r=+h[(c[n>>2]|0)+(c[g>>2]<<3)>>3];a=c[l>>2]|0;c[l>>2]=a+1;h[(c[n>>2]|0)+(a<<3)>>3]=r}c[g>>2]=(c[g>>2]|0)+1}c[m>>2]=c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]=c[l>>2];c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+8>>2]=c[l>>2];break}case 2:{c[o>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;c[g>>2]=c[m>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;if((c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)!=(c[f>>2]|0)){c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[g>>2]<<2)>>2];h[(c[o>>2]|0)+(c[l>>2]<<1<<3)>>3]=+h[(c[o>>2]|0)+(c[g>>2]<<1<<3)>>3];h[(c[o>>2]|0)+((c[l>>2]<<1)+1<<3)>>3]=+h[(c[o>>2]|0)+((c[g>>2]<<1)+1<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}c[m>>2]=c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]=c[l>>2];c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+8>>2]=c[l>>2];break}case 4:{c[p>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;c[g>>2]=c[m>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;if((c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)!=(c[f>>2]|0)){c[(c[k>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[g>>2]<<2)>>2];o=c[(c[p>>2]|0)+(c[g>>2]<<2)>>2]|0;n=c[l>>2]|0;c[l>>2]=n+1;c[(c[p>>2]|0)+(n<<2)>>2]=o}c[g>>2]=(c[g>>2]|0)+1}c[m>>2]=c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]=c[l>>2];c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+8>>2]=c[l>>2];break}case 8:{c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break;c[g>>2]=c[m>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;if((c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)!=(c[f>>2]|0)){p=c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0;o=c[l>>2]|0;c[l>>2]=o+1;c[(c[k>>2]|0)+(o<<2)>>2]=p}c[g>>2]=(c[g>>2]|0)+1}c[m>>2]=c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]=c[l>>2];c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+8>>2]=c[l>>2];break}case 16:{c[d>>2]=0;q=c[d>>2]|0;i=b;return q|0}default:{c[d>>2]=0;q=c[d>>2]|0;i=b;return q|0}}c[d>>2]=c[e>>2];q=c[d>>2]|0;i=b;return q|0}function Tv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=hw(c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[l>>2]|0)<=0){q=c[p>>2]|0;i=h;return q|0}c[p>>2]=iw(c[p>>2]|0,c[l>>2]|0)|0;q=c[p>>2]|0;i=h;return q|0}function Uv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[h>>2]=c[(c[e>>2]|0)+28>>2];if((c[(c[e>>2]|0)+32>>2]|0)!=2)La(132350,132193,802,132376);if((c[(c[e>>2]|0)+32>>2]|0)!=2){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}else{c[f>>2]=c[(c[e>>2]|0)+20>>2];c[g>>2]=c[(c[e>>2]|0)+24>>2];c[d>>2]=Vv(c[(c[e>>2]|0)+8>>2]|0,c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+4>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+16>>2]|0,c[(c[e>>2]|0)+40>>2]|0)|0;j=c[d>>2]|0;i=b;return j|0}return 0}function Vv(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;j=jw(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,1)|0;i=k;return j|0}function Wv(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+12|0;o=j+8|0;p=j+4|0;q=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;h=c[k>>2]|0;k=c[m>>2]|0;m=c[o>>2]|0;o=c[q>>2]|0;q=c[l>>2]|0;l=c[p>>2]|0;if(c[n>>2]|0){lw(h,k,m,o,q,l);i=j;return}else{kw(h,k,m,o,q,l);i=j;return}}function Xv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=i;i=i+64|0;g=f+48|0;j=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+20|0;q=f+16|0;r=f+12|0;s=f+8|0;t=f+4|0;u=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[t>>2]=0;if((c[(c[g>>2]|0)+32>>2]|0)!=1)La(132169,132193,1221,132412);if((c[(c[g>>2]|0)+16>>2]|0)!=1?(c[(c[g>>2]|0)+16>>2]|0)!=4:0)La(132441,132193,1222,132412);c[o>>2]=c[(c[g>>2]|0)+20>>2];c[p>>2]=c[(c[g>>2]|0)+24>>2];c[r>>2]=c[c[g>>2]>>2];c[q>>2]=c[(c[g>>2]|0)+4>>2];c[t>>2]=c[c[k>>2]>>2];switch(c[(c[g>>2]|0)+16>>2]|0){case 1:{c[s>>2]=c[(c[g>>2]|0)+28>>2];e=(c[l>>2]|0)!=0;d=(c[t>>2]|0)!=0;if(c[j>>2]|0){if(!e){if(!d)c[t>>2]=cK(c[r>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;b=(c[t>>2]|0)+(c[m>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[s>>2]|0)+(c[n>>2]<<3)>>3]*+h[(c[j>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}if(!d)c[t>>2]=cK(c[q>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;b=(c[t>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[s>>2]|0)+(c[n>>2]<<3)>>3]*+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}else{if(!e){if(!d)c[t>>2]=cK(c[r>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;e=(c[t>>2]|0)+(c[m>>2]<<3)|0;h[e>>3]=+h[e>>3]+ +h[(c[s>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}if(!d)c[t>>2]=cK(c[q>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;d=(c[t>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)|0;h[d>>3]=+h[d>>3]+ +h[(c[s>>2]|0)+(c[n>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}break}case 4:{c[u>>2]=c[(c[g>>2]|0)+28>>2];g=(c[l>>2]|0)!=0;l=(c[t>>2]|0)!=0;if(c[j>>2]|0){if(!g){if(!l)c[t>>2]=cK(c[r>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;s=(c[t>>2]|0)+(c[m>>2]<<3)|0;h[s>>3]=+h[s>>3]+ +(c[(c[u>>2]|0)+(c[n>>2]<<2)>>2]|0)*+h[(c[j>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}if(!l)c[t>>2]=cK(c[q>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;s=(c[t>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)|0;h[s>>3]=+h[s>>3]+ +(c[(c[u>>2]|0)+(c[n>>2]<<2)>>2]|0)*+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}else{if(!g){if(!l)c[t>>2]=cK(c[r>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;g=(c[t>>2]|0)+(c[m>>2]<<3)|0;h[g>>3]=+h[g>>3]+ +(c[(c[u>>2]|0)+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}if(!l)c[t>>2]=cK(c[q>>2]<<3)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break;h[(c[t>>2]|0)+(c[m>>2]<<3)>>3]=0.0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[n>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;q=(c[t>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<3)|0;h[q>>3]=+h[q>>3]+ +(c[(c[u>>2]|0)+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}v=c[t>>2]|0;w=c[k>>2]|0;c[w>>2]=v;i=f;return}break}default:La(176099,132193,1314,132412)}}function Yv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;d=i;i=i+112|0;e=d+104|0;f=d+100|0;g=d+96|0;j=d+92|0;k=d+88|0;l=d+84|0;m=d+80|0;n=d+76|0;o=d+72|0;p=d+68|0;q=d+64|0;r=d+60|0;s=d+56|0;t=d+52|0;u=d+48|0;v=d+44|0;w=d+40|0;x=d+36|0;y=d+32|0;z=d+28|0;A=d+24|0;B=d+20|0;C=d+16|0;D=d+12|0;E=d+8|0;F=d+4|0;G=d;c[f>>2]=a;c[g>>2]=b;c[k>>2]=0;c[l>>2]=0;c[m>>2]=c[(c[f>>2]|0)+20>>2];c[n>>2]=c[(c[f>>2]|0)+24>>2];c[o>>2]=c[(c[g>>2]|0)+20>>2];c[p>>2]=c[(c[g>>2]|0)+24>>2];if((c[(c[f>>2]|0)+32>>2]|0)!=(c[(c[g>>2]|0)+32>>2]|0))La(132281,132193,1407,132531);if((c[(c[f>>2]|0)+32>>2]|0)!=1)La(132281,132193,1407,132531);c[j>>2]=c[c[f>>2]>>2];if((c[(c[f>>2]|0)+4>>2]|0)!=(c[c[g>>2]>>2]|0)){c[e>>2]=0;H=c[e>>2]|0;i=d;return H|0}if((c[(c[f>>2]|0)+16>>2]|0)!=(c[(c[g>>2]|0)+16>>2]|0)){c[e>>2]=0;H=c[e>>2]|0;i=d;return H|0}c[w>>2]=c[(c[f>>2]|0)+16>>2];c[l>>2]=cK(c[(c[g>>2]|0)+4>>2]<<2)|0;if(!(c[l>>2]|0)){c[e>>2]=0;H=c[e>>2]|0;i=d;return H|0}c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0))break;c[(c[l>>2]|0)+(c[s>>2]<<2)>>2]=-1;c[s>>2]=(c[s>>2]|0)+1}c[x>>2]=0;c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(c[j>>2]|0))break;c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[v>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[o>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)!=(0-(c[s>>2]|0)-2|0)){if(((c[x>>2]|0)+1|0)<=(c[x>>2]|0)){I=21;break a}c[x>>2]=(c[x>>2]|0)+1;c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=0-(c[s>>2]|0)-2}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}if((I|0)==21){c[e>>2]=0;H=c[e>>2]|0;i=d;return H|0}c[k>>2]=Nv(c[j>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[x>>2]|0,c[w>>2]|0,1)|0;b:do if(c[k>>2]|0){c[q>>2]=c[(c[k>>2]|0)+20>>2];c[r>>2]=c[(c[k>>2]|0)+24>>2];c[x>>2]=0;c:do switch(c[w>>2]|0){case 1:{c[y>>2]=c[(c[f>>2]|0)+28>>2];c[z>>2]=c[(c[g>>2]|0)+28>>2];c[A>>2]=c[(c[k>>2]|0)+28>>2];c[c[q>>2]>>2]=0;c[s>>2]=0;d:while(1){if((c[s>>2]|0)>=(c[j>>2]|0))break c;c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[v>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[o>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)){c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[x>>2];c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[u>>2]<<2)>>2];h[(c[A>>2]|0)+(c[x>>2]<<3)>>3]=+h[(c[y>>2]|0)+(c[t>>2]<<3)>>3]*+h[(c[z>>2]|0)+(c[u>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}else{if((c[(c[r>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]|0))break d;I=(c[A>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<3)|0;h[I>>3]=+h[I>>3]+ +h[(c[y>>2]|0)+(c[t>>2]<<3)>>3]*+h[(c[z>>2]|0)+(c[u>>2]<<3)>>3]}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[q>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[x>>2];c[s>>2]=(c[s>>2]|0)+1}La(132553,132193,1467,132531);break}case 2:{c[B>>2]=c[(c[f>>2]|0)+28>>2];c[C>>2]=c[(c[g>>2]|0)+28>>2];c[D>>2]=c[(c[k>>2]|0)+28>>2];c[B>>2]=c[(c[f>>2]|0)+28>>2];c[C>>2]=c[(c[g>>2]|0)+28>>2];c[D>>2]=c[(c[k>>2]|0)+28>>2];c[c[q>>2]>>2]=0;c[s>>2]=0;e:while(1){if((c[s>>2]|0)>=(c[j>>2]|0))break c;c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[v>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[o>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)){c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[x>>2];c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[u>>2]<<2)>>2];h[(c[D>>2]|0)+(c[x>>2]<<1<<3)>>3]=+h[(c[B>>2]|0)+(c[t>>2]<<1<<3)>>3]*+h[(c[C>>2]|0)+(c[u>>2]<<1<<3)>>3]-+h[(c[B>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]*+h[(c[C>>2]|0)+((c[u>>2]<<1)+1<<3)>>3];h[(c[D>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]=+h[(c[B>>2]|0)+(c[t>>2]<<1<<3)>>3]*+h[(c[C>>2]|0)+((c[u>>2]<<1)+1<<3)>>3]+ +h[(c[B>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]*+h[(c[C>>2]|0)+(c[u>>2]<<1<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}else{if((c[(c[r>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]|0))break e;I=(c[D>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<1<<3)|0;h[I>>3]=+h[I>>3]+(+h[(c[B>>2]|0)+(c[t>>2]<<1<<3)>>3]*+h[(c[C>>2]|0)+(c[u>>2]<<1<<3)>>3]-+h[(c[B>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]*+h[(c[C>>2]|0)+((c[u>>2]<<1)+1<<3)>>3]);I=(c[D>>2]|0)+((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)|0;h[I>>3]=+h[I>>3]+(+h[(c[B>>2]|0)+(c[t>>2]<<1<<3)>>3]*+h[(c[C>>2]|0)+((c[u>>2]<<1)+1<<3)>>3]+ +h[(c[B>>2]|0)+((c[t>>2]<<1)+1<<3)>>3]*+h[(c[C>>2]|0)+(c[u>>2]<<1<<3)>>3])}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[q>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[x>>2];c[s>>2]=(c[s>>2]|0)+1}La(132553,132193,1496,132531);break}case 4:{c[E>>2]=c[(c[f>>2]|0)+28>>2];c[F>>2]=c[(c[g>>2]|0)+28>>2];c[G>>2]=c[(c[k>>2]|0)+28>>2];c[c[q>>2]>>2]=0;c[s>>2]=0;f:while(1){if((c[s>>2]|0)>=(c[j>>2]|0))break c;c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[v>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[o>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)){c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[x>>2];c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[u>>2]<<2)>>2];I=_(c[(c[E>>2]|0)+(c[t>>2]<<2)>>2]|0,c[(c[F>>2]|0)+(c[u>>2]<<2)>>2]|0)|0;c[(c[G>>2]|0)+(c[x>>2]<<2)>>2]=I;c[x>>2]=(c[x>>2]|0)+1}else{if((c[(c[r>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]|0))break f;I=_(c[(c[E>>2]|0)+(c[t>>2]<<2)>>2]|0,c[(c[F>>2]|0)+(c[u>>2]<<2)>>2]|0)|0;b=(c[G>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)|0;c[b>>2]=(c[b>>2]|0)+I}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[q>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[x>>2];c[s>>2]=(c[s>>2]|0)+1}La(132553,132193,1522,132531);break}case 8:{c[c[q>>2]>>2]=0;c[s>>2]=0;g:while(1){if((c[s>>2]|0)>=(c[j>>2]|0))break c;c[t>>2]=c[(c[m>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[m>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[v>>2]=c[(c[n>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[o>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[o>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)>=(c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]|0)){if((c[(c[r>>2]|0)+(c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]|0))break g}else{c[(c[l>>2]|0)+(c[(c[p>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=c[x>>2];c[(c[r>>2]|0)+(c[x>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[u>>2]<<2)>>2];c[x>>2]=(c[x>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[q>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[x>>2];c[s>>2]=(c[s>>2]|0)+1}La(132553,132193,1542,132531);break}default:{Lv(c[k>>2]|0);c[k>>2]=0;break b}}while(0);c[(c[k>>2]|0)+8>>2]=c[x>>2]}while(0);O4(c[l>>2]|0);c[e>>2]=c[k>>2];H=c[e>>2]|0;i=d;return H|0}function Zv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;e=i;i=i+144|0;f=e+136|0;g=e+132|0;j=e+128|0;k=e+124|0;l=e+120|0;m=e+116|0;n=e+112|0;o=e+108|0;p=e+104|0;q=e+100|0;r=e+96|0;s=e+92|0;t=e+88|0;u=e+84|0;v=e+80|0;w=e+76|0;x=e+72|0;y=e+68|0;z=e+64|0;A=e+60|0;B=e+56|0;C=e+52|0;D=e+48|0;E=e+44|0;F=e+40|0;G=e+36|0;H=e+32|0;I=e+28|0;J=e+24|0;K=e+20|0;L=e+16|0;M=e+12|0;N=e+8|0;O=e+4|0;P=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[m>>2]=0;c[n>>2]=0;c[o>>2]=c[(c[g>>2]|0)+20>>2];c[p>>2]=c[(c[g>>2]|0)+24>>2];c[q>>2]=c[(c[j>>2]|0)+20>>2];c[r>>2]=c[(c[j>>2]|0)+24>>2];c[s>>2]=c[(c[k>>2]|0)+20>>2];c[t>>2]=c[(c[k>>2]|0)+24>>2];if((c[(c[g>>2]|0)+32>>2]|0)!=(c[(c[j>>2]|0)+32>>2]|0))La(132281,132193,1573,132578);if((c[(c[g>>2]|0)+32>>2]|0)!=1)La(132281,132193,1573,132578);c[l>>2]=c[c[g>>2]>>2];if((c[(c[g>>2]|0)+4>>2]|0)!=(c[c[j>>2]>>2]|0)){c[f>>2]=0;Q=c[f>>2]|0;i=e;return Q|0}if((c[(c[j>>2]|0)+4>>2]|0)!=(c[c[k>>2]>>2]|0)){c[f>>2]=0;Q=c[f>>2]|0;i=e;return Q|0}if((c[(c[g>>2]|0)+16>>2]|0)==(c[(c[j>>2]|0)+16>>2]|0)?(c[(c[j>>2]|0)+16>>2]|0)==(c[(c[k>>2]|0)+16>>2]|0):0){c[C>>2]=c[(c[g>>2]|0)+16>>2];c[n>>2]=cK(c[(c[k>>2]|0)+4>>2]<<2)|0;if(!(c[n>>2]|0)){c[f>>2]=0;Q=c[f>>2]|0;i=e;return Q|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[(c[k>>2]|0)+4>>2]|0))break;c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]=-1;c[w>>2]=(c[w>>2]|0)+1}c[D>>2]=0;c[w>>2]=0;a:while(1){if((c[w>>2]|0)>=(c[l>>2]|0))break;c[x>>2]=c[(c[o>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[B>>2]=c[(c[p>>2]|0)+(c[x>>2]<<2)>>2];c[z>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[q>>2]|0)+((c[B>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[y>>2]=c[(c[s>>2]|0)+(c[A>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[s>>2]|0)+((c[A>>2]|0)+1<<2)>>2]|0))break;if((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]|0)!=(0-(c[w>>2]|0)-2|0)){if(((c[D>>2]|0)+1|0)<=(c[D>>2]|0)){R=26;break a}c[D>>2]=(c[D>>2]|0)+1;c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=0-(c[w>>2]|0)-2}c[y>>2]=(c[y>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}if((R|0)==26){c[f>>2]=0;Q=c[f>>2]|0;i=e;return Q|0}c[m>>2]=Nv(c[l>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[D>>2]|0,c[C>>2]|0,1)|0;b:do if(c[m>>2]|0){c[u>>2]=c[(c[m>>2]|0)+20>>2];c[v>>2]=c[(c[m>>2]|0)+24>>2];c[D>>2]=0;c:do switch(c[C>>2]|0){case 1:{c[E>>2]=c[(c[g>>2]|0)+28>>2];c[F>>2]=c[(c[j>>2]|0)+28>>2];c[G>>2]=c[(c[k>>2]|0)+28>>2];c[H>>2]=c[(c[m>>2]|0)+28>>2];c[c[u>>2]>>2]=0;c[w>>2]=0;d:while(1){if((c[w>>2]|0)>=(c[l>>2]|0))break c;c[x>>2]=c[(c[o>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[B>>2]=c[(c[p>>2]|0)+(c[x>>2]<<2)>>2];c[z>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[q>>2]|0)+((c[B>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[y>>2]=c[(c[s>>2]|0)+(c[A>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[s>>2]|0)+((c[A>>2]|0)+1<<2)>>2]|0))break;if((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)){c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=c[D>>2];c[(c[v>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[t>>2]|0)+(c[y>>2]<<2)>>2];h[(c[H>>2]|0)+(c[D>>2]<<3)>>3]=+h[(c[E>>2]|0)+(c[x>>2]<<3)>>3]*+h[(c[F>>2]|0)+(c[z>>2]<<3)>>3]*+h[(c[G>>2]|0)+(c[y>>2]<<3)>>3];c[D>>2]=(c[D>>2]|0)+1}else{if((c[(c[v>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]|0))break d;R=(c[H>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<3)|0;h[R>>3]=+h[R>>3]+ +h[(c[E>>2]|0)+(c[x>>2]<<3)>>3]*+h[(c[F>>2]|0)+(c[z>>2]<<3)>>3]*+h[(c[G>>2]|0)+(c[y>>2]<<3)>>3]}c[y>>2]=(c[y>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]=c[D>>2];c[w>>2]=(c[w>>2]|0)+1}La(132601,132193,1641,132578);break}case 2:{c[I>>2]=c[(c[g>>2]|0)+28>>2];c[J>>2]=c[(c[j>>2]|0)+28>>2];c[K>>2]=c[(c[k>>2]|0)+28>>2];c[L>>2]=c[(c[m>>2]|0)+28>>2];c[c[u>>2]>>2]=0;c[w>>2]=0;e:while(1){if((c[w>>2]|0)>=(c[l>>2]|0))break c;c[x>>2]=c[(c[o>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[B>>2]=c[(c[p>>2]|0)+(c[x>>2]<<2)>>2];c[z>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[q>>2]|0)+((c[B>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[y>>2]=c[(c[s>>2]|0)+(c[A>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[s>>2]|0)+((c[A>>2]|0)+1<<2)>>2]|0))break;if((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)){c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=c[D>>2];c[(c[v>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[t>>2]|0)+(c[y>>2]<<2)>>2];h[(c[L>>2]|0)+(c[D>>2]<<1<<3)>>3]=(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3]-+h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3])*+h[(c[K>>2]|0)+(c[y>>2]<<1<<3)>>3]-(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3]+ +h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3])*+h[(c[K>>2]|0)+((c[y>>2]<<1)+1<<3)>>3];h[(c[L>>2]|0)+((c[D>>2]<<1)+1<<3)>>3]=(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3]+ +h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3])*+h[(c[K>>2]|0)+(c[y>>2]<<1<<3)>>3]+(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3]-+h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3])*+h[(c[K>>2]|0)+((c[y>>2]<<1)+1<<3)>>3];c[D>>2]=(c[D>>2]|0)+1}else{if((c[(c[v>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]|0))break e;R=(c[L>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<1<<3)|0;h[R>>3]=+h[R>>3]+((+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3]-+h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3])*+h[(c[K>>2]|0)+(c[y>>2]<<1<<3)>>3]-(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3]+ +h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3])*+h[(c[K>>2]|0)+((c[y>>2]<<1)+1<<3)>>3]);R=(c[L>>2]|0)+((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)|0;h[R>>3]=+h[R>>3]+((+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3]+ +h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3])*+h[(c[K>>2]|0)+(c[y>>2]<<1<<3)>>3]+(+h[(c[I>>2]|0)+(c[x>>2]<<1<<3)>>3]*+h[(c[J>>2]|0)+(c[z>>2]<<1<<3)>>3]-+h[(c[I>>2]|0)+((c[x>>2]<<1)+1<<3)>>3]*+h[(c[J>>2]|0)+((c[z>>2]<<1)+1<<3)>>3])*+h[(c[K>>2]|0)+((c[y>>2]<<1)+1<<3)>>3])}c[y>>2]=(c[y>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]=c[D>>2];c[w>>2]=(c[w>>2]|0)+1}La(132601,132193,1673,132578);break}case 4:{c[M>>2]=c[(c[g>>2]|0)+28>>2];c[N>>2]=c[(c[j>>2]|0)+28>>2];c[O>>2]=c[(c[k>>2]|0)+28>>2];c[P>>2]=c[(c[m>>2]|0)+28>>2];c[c[u>>2]>>2]=0;c[w>>2]=0;f:while(1){if((c[w>>2]|0)>=(c[l>>2]|0))break c;c[x>>2]=c[(c[o>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[B>>2]=c[(c[p>>2]|0)+(c[x>>2]<<2)>>2];c[z>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[q>>2]|0)+((c[B>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[y>>2]=c[(c[s>>2]|0)+(c[A>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[s>>2]|0)+((c[A>>2]|0)+1<<2)>>2]|0))break;if((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)){c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=c[D>>2];c[(c[v>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[t>>2]|0)+(c[y>>2]<<2)>>2];R=_(c[(c[M>>2]|0)+(c[x>>2]<<2)>>2]|0,c[(c[N>>2]|0)+(c[z>>2]<<2)>>2]|0)|0;d=_(R,c[(c[O>>2]|0)+(c[y>>2]<<2)>>2]|0)|0;R=(c[P>>2]|0)+(c[D>>2]<<2)|0;c[R>>2]=(c[R>>2]|0)+d;c[D>>2]=(c[D>>2]|0)+1}else{if((c[(c[v>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]|0))break f;d=_(c[(c[M>>2]|0)+(c[x>>2]<<2)>>2]|0,c[(c[N>>2]|0)+(c[z>>2]<<2)>>2]|0)|0;R=_(d,c[(c[O>>2]|0)+(c[y>>2]<<2)>>2]|0)|0;d=(c[P>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+R}c[y>>2]=(c[y>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]=c[D>>2];c[w>>2]=(c[w>>2]|0)+1}La(132601,132193,1705,132578);break}case 8:{c[c[u>>2]>>2]=0;c[w>>2]=0;g:while(1){if((c[w>>2]|0)>=(c[l>>2]|0))break c;c[x>>2]=c[(c[o>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[o>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[B>>2]=c[(c[p>>2]|0)+(c[x>>2]<<2)>>2];c[z>>2]=c[(c[q>>2]|0)+(c[B>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[q>>2]|0)+((c[B>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[r>>2]|0)+(c[z>>2]<<2)>>2];c[y>>2]=c[(c[s>>2]|0)+(c[A>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[s>>2]|0)+((c[A>>2]|0)+1<<2)>>2]|0))break;if((c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]|0)>=(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)){if((c[(c[v>>2]|0)+(c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]|0))break g}else{c[(c[n>>2]|0)+(c[(c[t>>2]|0)+(c[y>>2]<<2)>>2]<<2)>>2]=c[D>>2];c[(c[v>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[t>>2]|0)+(c[y>>2]<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[y>>2]=(c[y>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}c[x>>2]=(c[x>>2]|0)+1}c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]=c[D>>2];c[w>>2]=(c[w>>2]|0)+1}La(132601,132193,1728,132578);break}default:{Lv(c[m>>2]|0);c[m>>2]=0;break b}}while(0);c[(c[m>>2]|0)+8>>2]=c[D>>2]}while(0);O4(c[n>>2]|0);c[f>>2]=c[m>>2];Q=c[f>>2]|0;i=e;return Q|0}c[f>>2]=0;Q=c[f>>2]|0;i=e;return Q|0}function _v(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;d=i;i=i+96|0;e=d+80|0;f=d+76|0;g=d+72|0;j=d+68|0;k=d+64|0;l=d+60|0;m=d+56|0;n=d+52|0;o=d+48|0;p=d+44|0;q=d+40|0;r=d+36|0;s=d+32|0;t=d+28|0;u=d+24|0;v=d+20|0;w=d+16|0;x=d+12|0;y=d+8|0;z=d+4|0;A=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[f>>2]|0)+20>>2];c[k>>2]=c[(c[f>>2]|0)+24>>2];c[l>>2]=c[(c[f>>2]|0)+16>>2];c[m>>2]=c[(c[f>>2]|0)+4>>2];c[n>>2]=0;c[o>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=c[f>>2];B=c[e>>2]|0;i=d;return B|0}c[n>>2]=cK(c[m>>2]<<2)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[m>>2]|0))break;c[(c[n>>2]|0)+(c[p>>2]<<2)>>2]=-1;c[p>>2]=(c[p>>2]|0)+1}a:do switch(c[l>>2]|0){case 1:{c[s>>2]=c[(c[f>>2]|0)+28>>2];c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;b:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;b=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=b;h[(c[s>>2]|0)+(c[o>>2]<<3)>>3]=+h[(c[s>>2]|0)+(c[q>>2]<<3)>>3];a=c[o>>2]|0;c[o>>2]=a+1;c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=a}else{if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(b<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break b;b=(c[s>>2]|0)+(c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[s>>2]|0)+(c[q>>2]<<3)>>3]}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132626,132193,1791,132651);break}case 2:{c[t>>2]=c[(c[f>>2]|0)+28>>2];if((c[g>>2]|0)==1){c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;c:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;b=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=b;h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]=+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3];a=c[o>>2]|0;c[o>>2]=a+1;c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=a}else{if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(b<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break c;b=(c[t>>2]|0)+(c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<1<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];b=(c[t>>2]|0)+((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3]}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132626,132193,1814,132651)}if((c[g>>2]|0)==4){c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;d:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;b=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=b;h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]=+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3];a=c[o>>2]|0;c[o>>2]=a+1;c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=a}else{if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(b<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break d;b=(c[t>>2]|0)+(c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<1<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3]}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132626,132193,1834,132651)}if((c[g>>2]|0)!=2){if((c[g>>2]|0)!=3)break a;b=~~+h[(c[t>>2]|0)+8>>3];c[x>>2]=b;c[y>>2]=b;c[o>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break;c[q>>2]=c[(c[j>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;if((c[y>>2]|0)>(~~+h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]|0))C=c[y>>2]|0;else C=~~+h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3];c[y>>2]=C;if((c[x>>2]|0)>(~~+h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]|0))D=c[x>>2]|0;else D=~~+h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3];c[x>>2]=D;c[o>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}O4(c[n>>2]|0);c[n>>2]=cK(_(c[m>>2]<<2,(c[y>>2]|0)-(c[x>>2]|0)+1|0)|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(_(c[m>>2]|0,(c[y>>2]|0)-(c[x>>2]|0)+1|0)|0))break;c[(c[n>>2]|0)+(c[p>>2]<<2)>>2]=-1;c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;e:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;c[z>>2]=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0)+(_(~~+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3]-(c[x>>2]|0)|0,c[m>>2]|0)|0);if((c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2];h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]=+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3];b=c[o>>2]|0;c[o>>2]=b+1;c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]=b}else{if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break e;h[(c[t>>2]|0)+(c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]<<1<<3)>>3]=+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];b=(c[t>>2]|0)+((c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]<<1)+1<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3]}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132704,132193,1904,132651)}b=~~+h[(c[t>>2]|0)+8>>3];c[u>>2]=b;c[v>>2]=b;c[o>>2]=0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break;c[q>>2]=c[(c[j>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;if((c[v>>2]|0)>(~~+h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]|0))E=c[v>>2]|0;else E=~~+h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3];c[v>>2]=E;if((c[u>>2]|0)<(~~+h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]|0))F=c[u>>2]|0;else F=~~+h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3];c[u>>2]=F;c[o>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}O4(c[n>>2]|0);c[n>>2]=cK(_(c[m>>2]<<2,(c[v>>2]|0)-(c[u>>2]|0)+1|0)|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(_(c[m>>2]|0,(c[v>>2]|0)-(c[u>>2]|0)+1|0)|0))break;c[(c[n>>2]|0)+(c[p>>2]<<2)>>2]=-1;c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;f:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;c[w>>2]=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0)+(_(~~+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3]-(c[u>>2]|0)|0,c[m>>2]|0)|0);if((c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2];h[(c[t>>2]|0)+(c[o>>2]<<1<<3)>>3]=+h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[o>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3];b=c[o>>2]|0;c[o>>2]=b+1;c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]=b}else{if((c[w>>2]|0)>=(_(c[m>>2]|0,(c[v>>2]|0)-(c[u>>2]|0)+1|0)|0)){G=65;break f}if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0)){G=67;break f}b=(c[t>>2]|0)+(c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]<<1<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[t>>2]|0)+(c[q>>2]<<1<<3)>>3];h[(c[t>>2]|0)+((c[(c[n>>2]|0)+(c[w>>2]<<2)>>2]<<1)+1<<3)>>3]=+h[(c[t>>2]|0)+((c[q>>2]<<1)+1<<3)>>3]}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}if((G|0)==65)La(132683,132193,1868,132651);else if((G|0)==67)La(132704,132193,1869,132651);break}case 4:{c[A>>2]=c[(c[f>>2]|0)+28>>2];c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;g:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;b=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)<(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=b;c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[A>>2]|0)+(c[q>>2]<<2)>>2];a=c[o>>2]|0;c[o>>2]=a+1;c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=a}else{if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(b<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break g;b=(c[A>>2]|0)+(c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]<<2)|0;c[b>>2]=(c[b>>2]|0)+(c[(c[A>>2]|0)+(c[q>>2]<<2)>>2]|0)}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132626,132193,1928,132651);break}case 8:{c[o>>2]=0;c[r>>2]=c[c[j>>2]>>2];c[p>>2]=0;h:while(1){if((c[p>>2]|0)>=(c[c[f>>2]>>2]|0))break a;c[q>>2]=c[r>>2];while(1){if((c[q>>2]|0)>=(c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;b=c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)>=(c[(c[j>>2]|0)+(c[p>>2]<<2)>>2]|0)){if((c[(c[k>>2]|0)+(c[(c[n>>2]|0)+(b<<2)>>2]<<2)>>2]|0)!=(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]|0))break h}else{c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=b;b=c[o>>2]|0;c[o>>2]=b+1;c[(c[n>>2]|0)+(c[(c[k>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=b}c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2];c[(c[j>>2]|0)+((c[p>>2]|0)+1<<2)>>2]=c[o>>2];c[p>>2]=(c[p>>2]|0)+1}La(132626,132193,1947,132651);break}case 16:{c[e>>2]=0;B=c[e>>2]|0;i=d;return B|0}default:{c[e>>2]=0;B=c[e>>2]|0;i=d;return B|0}}while(0);c[(c[f>>2]|0)+8>>2]=c[o>>2];O4(c[n>>2]|0);c[e>>2]=c[f>>2];B=c[e>>2]|0;i=d;return B|0}function $v(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;h=g+32|0;j=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if((c[(c[j>>2]|0)+32>>2]|0)!=2)La(132350,132193,1970,132726);f=c[j>>2]|0;if((c[k>>2]|0)<=0){c[h>>2]=f;r=c[h>>2]|0;i=g;return r|0}c[o>>2]=c[f+8>>2];c[p>>2]=c[(c[j>>2]|0)+12>>2];if(((c[o>>2]|0)+(c[k>>2]|0)|0)>=(c[(c[j>>2]|0)+12>>2]|0)){c[p>>2]=(c[o>>2]|0)+(c[k>>2]|0);c[p>>2]=(10>0?10:0)+(c[p>>2]|0);c[j>>2]=mw(c[j>>2]|0,c[p>>2]|0)|0}Z4((c[(c[j>>2]|0)+20>>2]|0)+((c[o>>2]<<2>>>0)/1|0)|0,c[l>>2]|0,c[k>>2]<<2|0)|0;Z4((c[(c[j>>2]|0)+24>>2]|0)+((c[o>>2]<<2>>>0)/1|0)|0,c[m>>2]|0,c[k>>2]<<2|0)|0;if(c[(c[j>>2]|0)+40>>2]|0){p=(c[(c[j>>2]|0)+28>>2]|0)+(((_(c[o>>2]|0,c[(c[j>>2]|0)+40>>2]|0)|0)>>>0)/1|0)|0;Z4(p|0,c[n>>2]|0,_(c[(c[j>>2]|0)+40>>2]|0,c[k>>2]|0)|0)|0}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;if((c[(c[l>>2]|0)+(c[q>>2]<<2)>>2]|0)>=(c[c[j>>2]>>2]|0))c[c[j>>2]>>2]=(c[(c[l>>2]|0)+(c[q>>2]<<2)>>2]|0)+1;if((c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))c[(c[j>>2]|0)+4>>2]=(c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}q=(c[j>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+(c[k>>2]|0);c[h>>2]=c[j>>2];r=c[h>>2]|0;i=g;return r|0}function aw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+48|0;d=b+36|0;e=b+32|0;f=b+28|0;g=b+24|0;j=b+20|0;k=b+16|0;l=b;m=b+12|0;n=b+8|0;c[e>>2]=a;a=c[e>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=a;o=c[d>>2]|0;i=b;return o|0}c[j>>2]=c[a+20>>2];c[k>>2]=c[(c[e>>2]|0)+24>>2];a:do switch(c[(c[e>>2]|0)+16>>2]|0){case 1:{c[m>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break a;h[l>>3]=+((c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0)-(c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0)|0);c[g>>2]=c[(c[j>>2]|0)+(c[f>>2]<<2)>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;h[(c[m>>2]|0)+(c[g>>2]<<3)>>3]=+h[(c[m>>2]|0)+(c[g>>2]<<3)>>3]/+h[l>>3];c[g>>2]=(c[g>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+1}break}case 2:{c[n>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[c[e>>2]>>2]|0))break a;h[l>>3]=+((c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0)-(c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0)|0);c[g>>2]=c[(c[j>>2]|0)+(c[f>>2]<<2)>>2];while(1){if((c[g>>2]|0)>=(c[(c[j>>2]|0)+((c[f>>2]|0)+1<<2)>>2]|0))break;if((c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)!=(c[f>>2]|0)){h[(c[n>>2]|0)+(c[g>>2]<<1<<3)>>3]=+h[(c[n>>2]|0)+(c[g>>2]<<1<<3)>>3]/+h[l>>3];h[(c[n>>2]|0)+((c[g>>2]<<1)+1<<3)>>3]=+h[(c[n>>2]|0)+((c[g>>2]<<1)+1<<3)>>3]/+h[l>>3]}c[g>>2]=(c[g>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+1}break}case 4:{La(176099,132193,2191,132767);break}case 8:break;case 16:{c[d>>2]=0;o=c[d>>2]|0;i=b;return o|0}default:{c[d>>2]=0;o=c[d>>2]|0;i=b;return o|0}}while(0);c[d>>2]=c[e>>2];o=c[d>>2]|0;i=b;return o|0}function bw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+48|0;d=b+36|0;e=b+32|0;f=b+28|0;g=b+24|0;j=b+20|0;k=b+16|0;l=b+12|0;m=b+8|0;n=b+4|0;o=b;c[e>>2]=a;a=c[e>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=a;p=c[d>>2]|0;i=b;return p|0}c[k>>2]=c[a+8>>2];c[g>>2]=c[(c[e>>2]|0)+20>>2];c[j>>2]=c[(c[e>>2]|0)+24>>2];c[m>>2]=c[(c[e>>2]|0)+4>>2];c[l>>2]=c[c[e>>2]>>2];if((c[m>>2]|0)!=(c[l>>2]|0)){c[d>>2]=0;p=c[d>>2]|0;i=b;return p|0}c[o>>2]=Nv(c[l>>2]|0,c[m>>2]|0,c[k>>2]|0,8,1)|0;Z4(c[(c[o>>2]|0)+20>>2]|0,c[g>>2]|0,(c[l>>2]|0)+1<<2|0)|0;Z4(c[(c[o>>2]|0)+24>>2]|0,c[j>>2]|0,c[k>>2]<<2|0)|0;c[(c[o>>2]|0)+8>>2]=c[(c[e>>2]|0)+8>>2];c[e>>2]=Mv(c[o>>2]|0,1)|0;Lv(c[o>>2]|0);c[e>>2]=Sv(c[e>>2]|0)|0;o=cK(c[(c[e>>2]|0)+8>>2]<<3)|0;c[(c[e>>2]|0)+28>>2]=o;c[n>>2]=c[(c[e>>2]|0)+28>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[e>>2]|0)+8>>2]|0))break;h[(c[n>>2]|0)+(c[f>>2]<<3)>>3]=1.0;c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+16>>2]=1;c[(c[e>>2]|0)+40>>2]=8;c[d>>2]=c[e>>2];p=c[d>>2]|0;i=b;return p|0}function cw(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;k=i;i=i+80|0;l=k+64|0;m=k+60|0;n=k+56|0;o=k+52|0;p=k+48|0;q=k+44|0;r=k+40|0;s=k+36|0;t=k+32|0;u=k+28|0;v=k+24|0;w=k+20|0;x=k+16|0;y=k+12|0;z=k+8|0;A=k+4|0;B=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;c[v>>2]=0;c[w>>2]=1;c[z>>2]=c[c[m>>2]>>2];c[A>>2]=c[(c[m>>2]|0)+20>>2];c[B>>2]=c[(c[m>>2]|0)+24>>2];if(!(c[c[p>>2]>>2]|0)){m=cK((c[z>>2]|0)+2<<2)|0;c[c[p>>2]>>2]=m}if(!(c[c[q>>2]>>2]|0)){m=cK(c[z>>2]<<2)|0;c[c[q>>2]>>2]=m}a:do if(!(c[c[r>>2]>>2]|0)){m=N4(c[z>>2]<<2)|0;c[c[r>>2]>>2]=m;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[z>>2]|0))break a;c[(c[c[r>>2]>>2]|0)+(c[t>>2]<<2)>>2]=-10;c[t>>2]=(c[t>>2]|0)+1}}while(0);c[c[o>>2]>>2]=0;if((c[n>>2]|0)<0)La(132801,132193,2515,132823);if((c[n>>2]|0)>=(c[z>>2]|0))La(132801,132193,2515,132823);c[c[c[p>>2]>>2]>>2]=0;c[(c[c[p>>2]>>2]|0)+4>>2]=1;c[c[c[q>>2]>>2]>>2]=c[n>>2];c[(c[c[r>>2]>>2]|0)+(c[n>>2]<<2)>>2]=1;c[c[o>>2]>>2]=1;c[x>>2]=1;c[v>>2]=0;c[w>>2]=1;while(1){if((c[w>>2]|0)<=(c[v>>2]|0))break;if((c[l>>2]|0)>=0?(c[c[o>>2]>>2]|0)>(c[l>>2]|0):0)break;c[t>>2]=c[v>>2];while(1){if((c[t>>2]|0)>=(c[w>>2]|0))break;c[y>>2]=c[(c[c[q>>2]>>2]|0)+(c[t>>2]<<2)>>2];c[u>>2]=c[(c[A>>2]|0)+(c[y>>2]<<2)>>2];while(1){if((c[u>>2]|0)>=(c[(c[A>>2]|0)+((c[y>>2]|0)+1<<2)>>2]|0))break;if((c[y>>2]|0)!=(c[(c[B>>2]|0)+(c[u>>2]<<2)>>2]|0)?(c[(c[c[r>>2]>>2]|0)+(c[(c[B>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]|0)<0:0){n=c[(c[B>>2]|0)+(c[u>>2]<<2)>>2]|0;z=c[x>>2]|0;c[x>>2]=z+1;c[(c[c[q>>2]>>2]|0)+(z<<2)>>2]=n;c[(c[c[r>>2]>>2]|0)+(c[(c[B>>2]|0)+(c[u>>2]<<2)>>2]<<2)>>2]=(c[c[o>>2]>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}n=c[x>>2]|0;z=c[o>>2]|0;m=(c[z>>2]|0)+1|0;c[z>>2]=m;c[(c[c[p>>2]>>2]|0)+(m<<2)>>2]=n;c[v>>2]=c[w>>2];c[w>>2]=c[x>>2]}if(!((c[l>>2]|0)>=0?(c[c[o>>2]>>2]|0)>(c[l>>2]|0):0)){l=c[o>>2]|0;c[l>>2]=(c[l>>2]|0)+-1}if(!(c[s>>2]|0)){i=k;return}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[c[p>>2]>>2]|0)+(c[c[o>>2]>>2]<<2)>>2]|0))break;c[(c[c[r>>2]>>2]|0)+(c[(c[c[q>>2]>>2]|0)+(c[t>>2]<<2)>>2]<<2)>>2]=-10;c[t>>2]=(c[t>>2]|0)+1}i=k;return}function dw(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;cw(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0);i=k;return}function ew(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=i;i=i+64|0;g=f+60|0;h=f+56|0;j=f+52|0;k=f+48|0;l=f+44|0;m=f+40|0;n=f+36|0;o=f+32|0;p=f+28|0;q=f+24|0;r=f+20|0;s=f+16|0;t=f+12|0;u=f+8|0;v=f+4|0;w=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[(c[g>>2]|0)+20>>2];c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+4>>2];c[o>>2]=c[c[g>>2]>>2];c[p>>2]=0;c[q>>2]=0;c[t>>2]=0;c[p>>2]=cK(c[n>>2]<<2)|0;c[q>>2]=cK((c[n>>2]|0)+1<<2)|0;c[t>>2]=cK(c[n>>2]<<2)|0;c[v>>2]=cK(c[n>>2]<<2)|0;c[q>>2]=(c[q>>2]|0)+4;c[u>>2]=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]=c[u>>2];c[r>>2]=(c[r>>2]|0)+1}c[c[q>>2]>>2]=c[n>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]=-1;c[r>>2]=(c[r>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[o>>2]|0))break;c[s>>2]=c[(c[l>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[s>>2]|0)>=(c[(c[l>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;c[w>>2]=c[(c[p>>2]|0)+(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2];g=(c[q>>2]|0)+(c[w>>2]<<2)|0;c[g>>2]=(c[g>>2]|0)+-1;c[s>>2]=(c[s>>2]|0)+1}c[s>>2]=c[(c[l>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[s>>2]|0)>=(c[(c[l>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;c[w>>2]=c[(c[p>>2]|0)+(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2];do if((c[(c[t>>2]|0)+(c[w>>2]<<2)>>2]|0)<(c[r>>2]|0)){c[(c[t>>2]|0)+(c[w>>2]<<2)>>2]=c[r>>2];if(!(c[(c[q>>2]|0)+(c[w>>2]<<2)>>2]|0)){c[(c[q>>2]|0)+(c[w>>2]<<2)>>2]=1;c[(c[v>>2]|0)+(c[w>>2]<<2)>>2]=c[w>>2];break}else{c[(c[v>>2]|0)+(c[w>>2]<<2)>>2]=c[u>>2];c[(c[q>>2]|0)+(c[u>>2]<<2)>>2]=1;g=c[u>>2]|0;c[u>>2]=g+1;c[(c[p>>2]|0)+(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]=g;break}}else{c[(c[p>>2]|0)+(c[(c[m>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]=c[(c[v>>2]|0)+(c[w>>2]<<2)>>2];g=(c[q>>2]|0)+(c[(c[v>>2]|0)+(c[w>>2]<<2)>>2]<<2)|0;c[g>>2]=(c[g>>2]|0)+1}while(0);c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+-4;c[c[q>>2]>>2]=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[u>>2]|0))break;s=(c[q>>2]|0)+((c[r>>2]|0)+1<<2)|0;c[s>>2]=(c[s>>2]|0)+(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]|0);c[r>>2]=(c[r>>2]|0)+1}c[c[j>>2]>>2]=c[v>>2];c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;c[w>>2]=c[(c[p>>2]|0)+(c[r>>2]<<2)>>2];v=c[r>>2]|0;s=(c[q>>2]|0)+(c[w>>2]<<2)|0;m=c[s>>2]|0;c[s>>2]=m+1;c[(c[c[j>>2]>>2]|0)+(m<<2)>>2]=v;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)<=0)break;c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[(c[q>>2]|0)+((c[r>>2]|0)-1<<2)>>2];c[r>>2]=(c[r>>2]|0)+-1}c[c[q>>2]>>2]=0;c[c[k>>2]>>2]=c[q>>2];c[c[h>>2]>>2]=c[u>>2];O4(c[t>>2]|0);O4(c[p>>2]|0);i=f;return}function fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;e=i;i=i+96|0;f=e+92|0;g=e+88|0;j=e+84|0;k=e+80|0;l=e+76|0;m=e+72|0;n=e+68|0;o=e+64|0;p=e+60|0;q=e+56|0;r=e+52|0;s=e+48|0;t=e+44|0;u=e+40|0;v=e+36|0;w=e+32|0;x=e+28|0;y=e+24|0;z=e+20|0;A=e+16|0;B=e+8|0;C=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[g>>2];c[n>>2]=c[c[k>>2]>>2];c[o>>2]=c[(c[k>>2]|0)+4>>2];c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[u>>2]=0;c[v>>2]=0;if(!(Ov(c[k>>2]|0,0)|0))c[k>>2]=Mv(c[k>>2]|0,0)|0;if((c[n>>2]|0)!=(c[o>>2]|0))La(132901,132193,3768,132908);c[l>>2]=Nv(c[o>>2]|0,c[o>>2]|0,1,1,2)|0;a:do if(c[j>>2]|0){c[u>>2]=cK(c[o>>2]<<2)|0;c[s>>2]=cK(c[o>>2]<<3)|0;c[y>>2]=0;b:while(1){if((c[y>>2]|0)>=(c[o>>2]|0))break a;dw(c[f>>2]|0,c[k>>2]|0,c[y>>2]|0,A,p,q,r,0);if(((c[A>>2]|0)-1|0)>(c[f>>2]|0)){D=20;break}c[v>>2]=nw(c[k>>2]|0,c[y>>2]|0,c[s>>2]|0,t,c[u>>2]|0,B,c[r>>2]|0)|0;if(c[v>>2]|0){D=22;break}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[A>>2]|0))break;c[x>>2]=c[(c[p>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[p>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;if((c[(c[r>>2]|0)+(c[(c[q>>2]|0)+(c[x>>2]<<2)>>2]<<2)>>2]|0)!=((c[w>>2]|0)+1|0)){D=28;break b}c[(c[r>>2]|0)+(c[(c[q>>2]|0)+(c[x>>2]<<2)>>2]<<2)>>2]=-1;c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[t>>2]|0))break;c[z>>2]=c[(c[u>>2]|0)+(c[x>>2]<<2)>>2];h[C>>3]=+h[(c[s>>2]|0)+(c[z>>2]<<3)>>3];if((c[y>>2]|0)!=(c[z>>2]|0))c[l>>2]=$v(c[l>>2]|0,1,y,z,C)|0;c[x>>2]=(c[x>>2]|0)+1}c[y>>2]=(c[y>>2]|0)+1}if((D|0)==20)La(132943,132193,3802,132908);else if((D|0)==22)La(133636,132193,3804,132908);else if((D|0)==28)La(132961,132193,3807,132908)}else{c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[o>>2]|0))break a;dw(c[f>>2]|0,c[k>>2]|0,c[y>>2]|0,A,p,q,r,1);c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[A>>2]|0))break;c[x>>2]=c[(c[p>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[x>>2]|0)>=(c[(c[p>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[z>>2]=c[(c[q>>2]|0)+(c[x>>2]<<2)>>2];h[C>>3]=+(c[w>>2]|0);if((c[y>>2]|0)!=(c[z>>2]|0))c[l>>2]=$v(c[l>>2]|0,1,y,z,C)|0;c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}c[y>>2]=(c[y>>2]|0)+1}}while(0);c[m>>2]=Uv(c[l>>2]|0)|0;Lv(c[l>>2]|0);if(c[p>>2]|0)O4(c[p>>2]|0);if(c[q>>2]|0)O4(c[q>>2]|0);if(c[r>>2]|0)O4(c[r>>2]|0);if(c[s>>2]|0)O4(c[s>>2]|0);if((c[k>>2]|0)!=(c[g>>2]|0))Lv(c[k>>2]|0);if(!(c[u>>2]|0)){E=c[m>>2]|0;F=Mv(E,0)|0;c[k>>2]=F;G=c[m>>2]|0;Lv(G);H=c[k>>2]|0;i=e;return H|0}O4(c[u>>2]|0);E=c[m>>2]|0;F=Mv(E,0)|0;c[k>>2]=F;G=c[m>>2]|0;Lv(G);H=c[k>>2]|0;i=e;return H|0}function gw(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;switch(c[d>>2]|0){case 1:{c[e>>2]=8;break}case 2:{c[e>>2]=16;break}case 4:{c[e>>2]=4;break}case 8:{c[e>>2]=0;break}case 16:{c[e>>2]=0;break}default:c[e>>2]=0}i=b;return c[e>>2]|0}function hw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=cK(44)|0;c[c[n>>2]>>2]=c[h>>2];c[(c[n>>2]|0)+4>>2]=c[j>>2];c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;c[(c[n>>2]|0)+16>>2]=c[k>>2];c[(c[n>>2]|0)+40>>2]=c[l>>2];if((c[m>>2]|0)==2)c[(c[n>>2]|0)+20>>2]=0;else{l=cK((c[h>>2]|0)+1<<2)|0;c[(c[n>>2]|0)+20>>2]=l}c[(c[n>>2]|0)+24>>2]=0;c[(c[n>>2]|0)+28>>2]=0;c[(c[n>>2]|0)+32>>2]=c[m>>2];c[(c[n>>2]|0)+36>>2]=0;m=(c[n>>2]|0)+36|0;c[m>>2]=c[m>>2]&-2;m=(c[n>>2]|0)+36|0;c[m>>2]=c[m>>2]&-3;m=(c[n>>2]|0)+36|0;c[m>>2]=c[m>>2]&-5;m=(c[n>>2]|0)+36|0;c[m>>2]=c[m>>2]&-9;i=g;return c[n>>2]|0}function iw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+32>>2];c[h>>2]=c[f>>2];c[(c[e>>2]|0)+28>>2]=0;b=(c[g>>2]|0)==2;g=cK(c[h>>2]<<2)|0;a=c[e>>2]|0;if(!b){c[a+24>>2]=g;if((c[h>>2]|0)>>>0>0?(c[(c[e>>2]|0)+40>>2]|0)>0:0){b=cK(_(c[(c[e>>2]|0)+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=b}}else{c[a+20>>2]=g;g=cK(c[h>>2]<<2)|0;c[(c[e>>2]|0)+24>>2]=g;g=cK(_(c[(c[e>>2]|0)+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=g}c[(c[e>>2]|0)+12>>2]=c[f>>2];i=d;return c[e>>2]|0}function jw(a,b,d,e,f,g,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;m=i;i=i+80|0;n=m+68|0;o=m+64|0;p=m+60|0;q=m+56|0;r=m+52|0;s=m+48|0;t=m+44|0;u=m+40|0;v=m+36|0;w=m+32|0;x=m+28|0;y=m+24|0;z=m+20|0;A=m+16|0;B=m+12|0;C=m+8|0;D=m+4|0;E=m;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=0;if(!((c[p>>2]|0)>0&(c[q>>2]|0)>0&(c[o>>2]|0)>=0))La(133100,132193,842,133126);if((c[p>>2]|0)<=0|(c[q>>2]|0)<=0|(c[o>>2]|0)<0){c[n>>2]=0;F=c[n>>2]|0;i=m;return F|0}c[x>>2]=Tv(c[p>>2]|0,c[q>>2]|0,c[o>>2]|0,c[u>>2]|0,c[v>>2]|0,1)|0;if(!(c[x>>2]|0))La(133171,132193,846,133126);if(!(c[x>>2]|0)){c[n>>2]=0;F=c[n>>2]|0;i=m;return F|0}c[y>>2]=c[(c[x>>2]|0)+20>>2];c[z>>2]=c[(c[x>>2]|0)+24>>2];c[E>>2]=0;while(1){if((c[E>>2]|0)>(c[p>>2]|0))break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=0;c[E>>2]=(c[E>>2]|0)+1}a:do switch(c[u>>2]|0){case 1:{c[B>>2]=c[t>>2];c[A>>2]=c[(c[x>>2]|0)+28>>2];c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0)){G=21;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=19;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[p>>2]|0)){G=19;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=19;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[q>>2]|0)){G=19;break}v=(c[y>>2]|0)+((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}if((G|0)==19)La(176099,132193,861,133126);else if((G|0)==21){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[p>>2]|0))break;v=(c[y>>2]|0)+((c[E>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+(c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]|0);c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0))break;h[(c[A>>2]|0)+(c[(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]<<3)>>3]=+h[(c[B>>2]|0)+(c[E>>2]<<3)>>3];v=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0;l=(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)|0;k=c[l>>2]|0;c[l>>2]=k+1;c[(c[z>>2]|0)+(k<<2)>>2]=v;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[p>>2];while(1){if((c[E>>2]|0)<=0)break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+((c[E>>2]|0)-1<<2)>>2];c[E>>2]=(c[E>>2]|0)+-1}c[c[y>>2]>>2]=0;break a}break}case 2:{c[B>>2]=c[t>>2];c[A>>2]=c[(c[x>>2]|0)+28>>2];c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0)){G=39;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=37;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[p>>2]|0)){G=37;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=37;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[q>>2]|0)){G=37;break}v=(c[y>>2]|0)+((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}if((G|0)==37)La(176099,132193,879,133126);else if((G|0)==39){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[p>>2]|0))break;v=(c[y>>2]|0)+((c[E>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+(c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]|0);c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0))break;v=c[B>>2]|0;c[B>>2]=v+8;h[(c[A>>2]|0)+(c[(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]<<1<<3)>>3]=+h[v>>3];v=c[B>>2]|0;c[B>>2]=v+8;h[(c[A>>2]|0)+((c[(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]<<1)+1<<3)>>3]=+h[v>>3];v=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0;k=(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)|0;l=c[k>>2]|0;c[k>>2]=l+1;c[(c[z>>2]|0)+(l<<2)>>2]=v;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[p>>2];while(1){if((c[E>>2]|0)<=0)break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+((c[E>>2]|0)-1<<2)>>2];c[E>>2]=(c[E>>2]|0)+-1}c[c[y>>2]>>2]=0;break a}break}case 4:{c[D>>2]=c[t>>2];c[C>>2]=c[(c[x>>2]|0)+28>>2];c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0)){G=57;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=55;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[p>>2]|0)){G=55;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=55;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[q>>2]|0)){G=55;break}v=(c[y>>2]|0)+((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}if((G|0)==55)La(176099,132193,898,133126);else if((G|0)==57){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[p>>2]|0))break;v=(c[y>>2]|0)+((c[E>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+(c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]|0);c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0))break;c[(c[C>>2]|0)+(c[(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)>>2]<<2)>>2]=c[(c[D>>2]|0)+(c[E>>2]<<2)>>2];v=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0;l=(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)|0;k=c[l>>2]|0;c[l>>2]=k+1;c[(c[z>>2]|0)+(k<<2)>>2]=v;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[p>>2];while(1){if((c[E>>2]|0)<=0)break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+((c[E>>2]|0)-1<<2)>>2];c[E>>2]=(c[E>>2]|0)+-1}c[c[y>>2]>>2]=0;break a}break}case 8:{c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0)){G=75;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=73;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[p>>2]|0)){G=73;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=73;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[q>>2]|0)){G=73;break}v=(c[y>>2]|0)+((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}if((G|0)==73)La(176099,132193,914,133126);else if((G|0)==75){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[p>>2]|0))break;v=(c[y>>2]|0)+((c[E>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+(c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]|0);c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0))break;v=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0;k=(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)|0;l=c[k>>2]|0;c[k>>2]=l+1;c[(c[z>>2]|0)+(l<<2)>>2]=v;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[p>>2];while(1){if((c[E>>2]|0)<=0)break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+((c[E>>2]|0)-1<<2)>>2];c[E>>2]=(c[E>>2]|0)+-1}c[c[y>>2]>>2]=0;break a}break}case 16:{c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0)){G=93;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=91;break}if((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[p>>2]|0)){G=91;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)<0){G=91;break}if((c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0)>=(c[q>>2]|0)){G=91;break}v=(c[y>>2]|0)+((c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+1}if((G|0)==91)La(176099,132193,929,133126);else if((G|0)==93){c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[p>>2]|0))break;v=(c[y>>2]|0)+((c[E>>2]|0)+1<<2)|0;c[v>>2]=(c[v>>2]|0)+(c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]|0);c[E>>2]=(c[E>>2]|0)+1}Z4(c[(c[x>>2]|0)+28>>2]|0,c[t>>2]|0,_(c[(c[x>>2]|0)+40>>2]|0,c[o>>2]|0)|0)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[o>>2]|0))break;v=c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]|0;l=(c[y>>2]|0)+(c[(c[r>>2]|0)+(c[E>>2]<<2)>>2]<<2)|0;k=c[l>>2]|0;c[l>>2]=k+1;c[(c[z>>2]|0)+(k<<2)>>2]=v;c[E>>2]=(c[E>>2]|0)+1}c[E>>2]=c[p>>2];while(1){if((c[E>>2]|0)<=0)break;c[(c[y>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+((c[E>>2]|0)-1<<2)>>2];c[E>>2]=(c[E>>2]|0)+-1}c[c[y>>2]>>2]=0;break a}break}default:La(176099,132193,943,133126)}while(0);c[(c[x>>2]|0)+8>>2]=c[o>>2];if(c[w>>2]|0)c[x>>2]=_v(c[x>>2]|0,c[w>>2]|0)|0;c[n>>2]=c[x>>2];F=c[n>>2]|0;i=m;return F|0}function kw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;j=i;i=i+64|0;k=j+56|0;l=j+52|0;m=j+48|0;n=j+44|0;o=j+40|0;p=j+36|0;q=j+32|0;r=j+28|0;s=j+24|0;t=j+20|0;u=j+16|0;v=j+12|0;w=j+8|0;x=j+4|0;y=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;if((c[(c[k>>2]|0)+32>>2]|0)!=1)La(132169,132193,1120,133071);if((c[(c[k>>2]|0)+16>>2]|0)!=1)La(132503,132193,1121,133071);c[x>>2]=c[(c[k>>2]|0)+28>>2];c[t>>2]=c[(c[k>>2]|0)+20>>2];c[u>>2]=c[(c[k>>2]|0)+24>>2];c[w>>2]=c[c[k>>2]>>2];c[v>>2]=c[(c[k>>2]|0)+4>>2];c[y>>2]=c[c[m>>2]>>2];k=(c[y>>2]|0)!=0;if(c[o>>2]|0){if(!k)c[y>>2]=cK(_(c[v>>2]<<3,c[n>>2]|0)|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(_(c[v>>2]|0,c[n>>2]|0)|0))break;h[(c[y>>2]|0)+(c[q>>2]<<3)>>3]=0.0;c[q>>2]=(c[q>>2]|0)+1}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[w>>2]|0))break;c[r>>2]=c[(c[t>>2]|0)+(c[q>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[t>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;c[s>>2]=0;while(1){z=c[r>>2]|0;if((c[s>>2]|0)>=(c[n>>2]|0))break;o=_(c[q>>2]|0,c[n>>2]|0)|0;g=_(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0,c[n>>2]|0)|0;f=(c[y>>2]|0)+(g+(c[s>>2]|0)<<3)|0;h[f>>3]=+h[f>>3]+ +h[(c[x>>2]|0)+(z<<3)>>3]*+h[(c[l>>2]|0)+(o+(c[s>>2]|0)<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=z+1}c[q>>2]=(c[q>>2]|0)+1}if(!(c[p>>2]|0)){A=c[y>>2]|0;B=c[m>>2]|0;c[B>>2]=A;i=j;return}qw(c[y>>2]|0,c[v>>2]|0,c[n>>2]|0);A=c[y>>2]|0;B=c[m>>2]|0;c[B>>2]=A;i=j;return}else{if(!k)c[y>>2]=cK(_(c[w>>2]<<3,c[n>>2]|0)|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[w>>2]|0))break;c[s>>2]=0;while(1){C=c[q>>2]|0;if((c[s>>2]|0)>=(c[n>>2]|0))break;k=_(C,c[n>>2]|0)|0;h[(c[y>>2]|0)+(k+(c[s>>2]|0)<<3)>>3]=0.0;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=c[(c[t>>2]|0)+(C<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[t>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;c[s>>2]=0;while(1){D=c[r>>2]|0;if((c[s>>2]|0)>=(c[n>>2]|0))break;k=_(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0,c[n>>2]|0)|0;v=_(c[q>>2]|0,c[n>>2]|0)|0;z=(c[y>>2]|0)+(v+(c[s>>2]|0)<<3)|0;h[z>>3]=+h[z>>3]+ +h[(c[x>>2]|0)+(D<<3)>>3]*+h[(c[l>>2]|0)+(k+(c[s>>2]|0)<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=D+1}c[q>>2]=(c[q>>2]|0)+1}if(!(c[p>>2]|0)){A=c[y>>2]|0;B=c[m>>2]|0;c[B>>2]=A;i=j;return}qw(c[y>>2]|0,c[w>>2]|0,c[n>>2]|0);A=c[y>>2]|0;B=c[m>>2]|0;c[B>>2]=A;i=j;return}}function lw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+48|0;j=h+40|0;k=h+36|0;l=h+32|0;m=h+28|0;n=h+24|0;o=h+20|0;p=h+16|0;q=h+12|0;r=h+8|0;s=h+4|0;t=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;if((c[(c[j>>2]|0)+32>>2]|0)!=1)La(132169,132193,1162,133042);if((c[(c[j>>2]|0)+16>>2]|0)!=1)La(132503,132193,1163,133042);c[p>>2]=c[c[l>>2]>>2];c[s>>2]=c[c[j>>2]>>2];c[t>>2]=c[(c[j>>2]|0)+4>>2];g=(c[p>>2]|0)!=0;if(c[n>>2]|0){if(!g)c[p>>2]=cK(_(c[t>>2]<<3,c[m>>2]|0)|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;f=_(c[t>>2]|0,c[r>>2]|0)|0;c[q>>2]=(c[p>>2]|0)+(f<<3);f=_(c[s>>2]|0,c[r>>2]|0)|0;Xv(c[j>>2]|0,(c[k>>2]|0)+(f<<3)|0,q,c[n>>2]|0);c[r>>2]=(c[r>>2]|0)+1}if(c[o>>2]|0){u=c[p>>2]|0;v=c[l>>2]|0;c[v>>2]=u;i=h;return}qw(c[p>>2]|0,c[m>>2]|0,c[t>>2]|0);u=c[p>>2]|0;v=c[l>>2]|0;c[v>>2]=u;i=h;return}else{if(!g)c[p>>2]=cK(_(c[s>>2]<<3,c[m>>2]|0)|0)|0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[m>>2]|0))break;g=_(c[s>>2]|0,c[r>>2]|0)|0;c[q>>2]=(c[p>>2]|0)+(g<<3);g=_(c[t>>2]|0,c[r>>2]|0)|0;Xv(c[j>>2]|0,(c[k>>2]|0)+(g<<3)|0,q,c[n>>2]|0);c[r>>2]=(c[r>>2]|0)+1}if(c[o>>2]|0){u=c[p>>2]|0;v=c[l>>2]|0;c[v>>2]=u;i=h;return}qw(c[p>>2]|0,c[m>>2]|0,c[s>>2]|0);u=c[p>>2]|0;v=c[l>>2]|0;c[v>>2]=u;i=h;return}}function mw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+32>>2];c[h>>2]=c[f>>2];b=c[e>>2]|0;do if((c[g>>2]|0)==2){a=eK(c[b+20>>2]|0,c[h>>2]<<2)|0;c[(c[e>>2]|0)+20>>2]=a;a=eK(c[(c[e>>2]|0)+24>>2]|0,c[h>>2]<<2)|0;c[(c[e>>2]|0)+24>>2]=a;if((c[(c[e>>2]|0)+40>>2]|0)>0){a=c[e>>2]|0;if(c[(c[e>>2]|0)+28>>2]|0){j=eK(c[a+28>>2]|0,_(c[(c[e>>2]|0)+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=j;break}else{j=cK(_(c[a+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=j;break}}}else{j=eK(c[b+24>>2]|0,c[h>>2]<<2)|0;c[(c[e>>2]|0)+24>>2]=j;if((c[(c[e>>2]|0)+40>>2]|0)>0){j=c[e>>2]|0;if(c[(c[e>>2]|0)+28>>2]|0){a=eK(c[j+28>>2]|0,_(c[(c[e>>2]|0)+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=a;break}else{a=cK(_(c[j+40>>2]|0,c[h>>2]|0)|0)|0;c[(c[e>>2]|0)+28>>2]=a;break}}}while(0);c[(c[e>>2]|0)+12>>2]=c[f>>2];i=d;return c[e>>2]|0}function nw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+24|0;l=j+20|0;m=j+16|0;n=j+12|0;o=j+8|0;p=j+4|0;q=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;h=ow(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;i=j;return h|0}function ow(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0.0,K=0,L=0;k=i;i=i+96|0;l=k+88|0;m=k+84|0;n=k+80|0;o=k+76|0;p=k+72|0;q=k+68|0;r=k+64|0;s=k+60|0;t=k+56|0;u=k+52|0;v=k+48|0;w=k+44|0;x=k+40|0;y=k+36|0;z=k+32|0;A=k+28|0;B=k+24|0;C=k+20|0;D=k+16|0;E=k+12|0;F=k+8|0;G=k+4|0;H=k;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=c[c[m>>2]>>2];c[x>>2]=c[(c[m>>2]|0)+20>>2];c[y>>2]=c[(c[m>>2]|0)+24>>2];c[B>>2]=0;c[H>>2]=0;if(!(Ov(c[m>>2]|0,1)|0))La(132866,132193,2633,132986);if((c[t>>2]|0)!=(c[(c[m>>2]|0)+4>>2]|0))La(132856,132193,2635,132986);a:do switch(c[(c[m>>2]|0)+16>>2]|0){case 2:{c[C>>2]=c[(c[m>>2]|0)+28>>2];c[B>>2]=cK(c[(c[m>>2]|0)+8>>2]<<3)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0))break a;h[(c[B>>2]|0)+(c[u>>2]<<3)>>3]=+h[(c[C>>2]|0)+(c[u>>2]<<1<<3)>>3];c[u>>2]=(c[u>>2]|0)+1}break}case 1:{c[B>>2]=c[(c[m>>2]|0)+28>>2];break}case 4:{c[D>>2]=c[(c[m>>2]|0)+28>>2];c[B>>2]=cK(c[(c[m>>2]|0)+8>>2]<<3)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0))break a;h[(c[B>>2]|0)+(c[u>>2]<<3)>>3]=+(c[(c[D>>2]|0)+(c[u>>2]<<2)>>2]|0);c[u>>2]=(c[u>>2]|0)+1}break}case 8:{c[B>>2]=cK(c[(c[m>>2]|0)+8>>2]<<3)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[(c[m>>2]|0)+8>>2]|0))break a;h[(c[B>>2]|0)+(c[u>>2]<<3)>>3]=1.0;c[u>>2]=(c[u>>2]|0)+1}break}default:La(176099,132193,2656,132986)}while(0);c[G>>2]=cK(c[t>>2]<<2)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[t>>2]|0))break;h[(c[o>>2]|0)+(c[u>>2]<<3)>>3]=-1.0;c[(c[G>>2]|0)+(c[u>>2]<<2)>>2]=-2;c[u>>2]=(c[u>>2]|0)+1}c[A>>2]=_x(80)|0;if(!(c[A>>2]|0))La(133004,132193,2666,132986);c[E>>2]=cK(16)|0;h[c[E>>2]>>3]=0.0;c[(c[E>>2]|0)+8>>2]=c[n>>2];D=ay(c[A>>2]|0,c[E>>2]|0)|0;c[(c[G>>2]|0)+(c[n>>2]<<2)>>2]=D;if((c[(c[G>>2]|0)+(c[n>>2]<<2)>>2]|0)<0)La(133006,132193,2674,132986);b:while(1){n=by(c[A>>2]|0)|0;c[F>>2]=n;if(!n)break;c[u>>2]=c[(c[F>>2]|0)+8>>2];h[(c[o>>2]|0)+(c[u>>2]<<3)>>3]=+h[c[F>>2]>>3];n=c[u>>2]|0;D=c[H>>2]|0;c[H>>2]=D+1;c[(c[q>>2]|0)+(D<<2)>>2]=n;c[(c[G>>2]|0)+(c[u>>2]<<2)>>2]=-1;c[v>>2]=c[(c[x>>2]|0)+(c[u>>2]<<2)>>2];while(1){if((c[v>>2]|0)>=(c[(c[x>>2]|0)+((c[u>>2]|0)+1<<2)>>2]|0))break;c[w>>2]=c[(c[y>>2]|0)+(c[v>>2]<<2)>>2];c[z>>2]=c[(c[G>>2]|0)+(c[w>>2]<<2)>>2];do if(!((c[z>>2]|0)==-1?1:(c[w>>2]|0)==(c[u>>2]|0))){if((c[s>>2]|0)!=0?(c[(c[s>>2]|0)+(c[w>>2]<<2)>>2]|0)<0:0)break;if((c[z>>2]|0)==-2){c[E>>2]=cK(16)|0;I=+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3];h[c[E>>2]>>3]=(+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3]>=0.0?I:-I)+ +h[c[F>>2]>>3];c[(c[E>>2]|0)+8>>2]=c[w>>2];n=ay(c[A>>2]|0,c[E>>2]|0)|0;c[(c[G>>2]|0)+(c[w>>2]<<2)>>2]=n;break}c[E>>2]=ey(c[A>>2]|0,c[z>>2]|0)|0;I=+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3];if(+h[c[E>>2]>>3]<(+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3]>=0.0?I:-I)+ +h[c[F>>2]>>3])J=+h[c[E>>2]>>3];else{I=+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3];J=(+h[(c[B>>2]|0)+(c[v>>2]<<3)>>3]>=0.0?I:-I)+ +h[c[F>>2]>>3]}h[c[E>>2]>>3]=J;if((c[(c[E>>2]|0)+8>>2]|0)!=(c[w>>2]|0)){K=37;break b}dy(c[A>>2]|0,c[z>>2]|0,c[E>>2]|0)|0}while(0);c[v>>2]=(c[v>>2]|0)+1}O4(c[F>>2]|0)}if((K|0)==37)La(133026,132193,2698,132986);c[c[p>>2]>>2]=c[H>>2];h[c[r>>2]>>3]=+h[(c[o>>2]|0)+(c[u>>2]<<3)>>3];$x(c[A>>2]|0,96);O4(c[G>>2]|0);if((c[B>>2]|0)!=0?(c[B>>2]|0)!=(c[(c[m>>2]|0)+28>>2]|0):0)O4(c[B>>2]|0);if((c[s>>2]|0)!=0?1:(c[H>>2]|0)==(c[t>>2]|0)){c[l>>2]=0;L=c[l>>2]|0;i=k;return L|0}else{c[l>>2]=-1;L=c[l>>2]|0;i=k;return L|0}return 0}function pw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[f>>2];c[k>>2]=c[g>>2];do if(!(+h[c[j>>2]>>3]>+h[c[k>>2]>>3]))if(+h[c[j>>2]>>3]==+h[c[k>>2]>>3]){c[e>>2]=0;break}else{c[e>>2]=-1;break}else c[e>>2]=1;while(0);i=d;return c[e>>2]|0}function qw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[m>>2]=cK(_(c[g>>2]<<3,c[j>>2]|0)|0)|0;Z4(c[m>>2]|0,c[f>>2]|0,_(c[g>>2]<<3,c[j>>2]|0)|0)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[g>>2]|0))break;c[l>>2]=0;while(1){n=c[k>>2]|0;if((c[l>>2]|0)>=(c[j>>2]|0))break;d=_(n,c[j>>2]|0)|0;b=_(c[l>>2]|0,c[g>>2]|0)|0;h[(c[f>>2]|0)+(b+(c[k>>2]|0)<<3)>>3]=+h[(c[m>>2]|0)+(d+(c[l>>2]|0)<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=n+1}O4(c[m>>2]|0);i=e;return}function rw(){return +(+(t2()|0)/2147483647.0)}function sw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[d>>2]|0)>1){a=t2()|0;i=b;return (a|0)%(c[d>>2]|0)|0|0}else La(133173,133179,58,133189);return 0}function tw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;j=b+4|0;k=b;c[e>>2]=a;if((c[e>>2]|0)<=0){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[f>>2]=cK(c[e>>2]<<2)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[e>>2]|0))break;c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+1}c[k>>2]=c[e>>2];while(1){if((c[k>>2]|0)<=1)break;c[h>>2]=sw(c[k>>2]|0)|0;c[j>>2]=c[(c[f>>2]|0)+((c[k>>2]|0)-1<<2)>>2];c[(c[f>>2]|0)+((c[k>>2]|0)-1<<2)>>2]=c[(c[f>>2]|0)+(c[h>>2]<<2)>>2];c[(c[f>>2]|0)+(c[h>>2]<<2)>>2]=c[j>>2];c[k>>2]=(c[k>>2]|0)+-1}c[d>>2]=c[f>>2];l=c[d>>2]|0;i=b;return l|0}function uw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[j>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return c[j>>2]|0}function vw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e;l=e+8|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[k>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[f>>2]|0))break;h[k>>3]=+h[k>>3]+ +h[(c[g>>2]|0)+(c[l>>2]<<3)>>3]*+h[(c[j>>2]|0)+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}i=e;return +(+h[k>>3])}function ww(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f;m=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[(c[k>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]+ +h[l>>3]*+h[(c[k>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return c[k>>2]|0}function xw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f;m=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[g>>2]|0))break;h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]=+h[(c[j>>2]|0)+(c[m>>2]<<3)>>3]+ +h[l>>3]*+h[(c[k>>2]|0)+(c[m>>2]<<3)>>3];c[m>>2]=(c[m>>2]|0)+1}i=f;return c[j>>2]|0}function yw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[n>>3]=0.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;e=_(c[k>>2]|0,c[j>>2]|0)|0;d=_(c[l>>2]|0,c[j>>2]|0)|0;b=_(c[k>>2]|0,c[j>>2]|0)|0;a=_(c[l>>2]|0,c[j>>2]|0)|0;h[n>>3]=+h[n>>3]+(+h[(c[g>>2]|0)+(e+(c[m>>2]|0)<<3)>>3]-+h[(c[g>>2]|0)+(d+(c[m>>2]|0)<<3)>>3])*(+h[(c[g>>2]|0)+(b+(c[m>>2]|0)<<3)>>3]-+h[(c[g>>2]|0)+(a+(c[m>>2]|0)<<3)>>3]);c[m>>2]=(c[m>>2]|0)+1}h[n>>3]=+O(+(+h[n>>3]));i=f;return +(+h[n>>3]>1.0e-15?+h[n>>3]:1.0e-15)}function zw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[n>>3]=0.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;e=_(c[k>>2]|0,c[j>>2]|0)|0;d=_(c[l>>2]|0,c[j>>2]|0)|0;b=_(c[k>>2]|0,c[j>>2]|0)|0;a=_(c[l>>2]|0,c[j>>2]|0)|0;h[n>>3]=+h[n>>3]+(+h[(c[g>>2]|0)+(e+(c[m>>2]|0)<<3)>>3]-+h[(c[g>>2]|0)+(d+(c[m>>2]|0)<<3)>>3])*(+h[(c[g>>2]|0)+(b+(c[m>>2]|0)<<3)>>3]-+h[(c[g>>2]|0)+(a+(c[m>>2]|0)<<3)>>3]);c[m>>2]=(c[m>>2]|0)+1}h[n>>3]=+O(+(+h[n>>3]));i=f;return +(+h[n>>3])}function Aw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[l>>3]=0.0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;h[l>>3]=+h[l>>3]+(+h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3])*(+h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]-+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3]);c[k>>2]=(c[k>>2]|0)+1}m=+O(+(+h[l>>3]));i=e;return +m}function Bw(a,b,d,e,f,g,j){a=+a;b=+b;d=+d;e=+e;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0;k=i;i=i+144|0;l=k+104|0;m=k+96|0;n=k+88|0;o=k+80|0;p=k+128|0;q=k+124|0;r=k+120|0;s=k+56|0;t=k+32|0;u=k+8|0;v=k;w=k+116|0;x=k+112|0;h[l>>3]=a;h[m>>3]=b;h[n>>3]=d;h[o>>3]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;h[v>>3]=1.0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[q>>2]|0))break;h[s+(c[w>>2]<<3)>>3]=+h[(c[r>>2]|0)+(c[w>>2]<<3)>>3];h[t+(c[w>>2]<<3)>>3]=+h[(c[r>>2]|0)+(c[w>>2]<<3)>>3];c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[p>>2]|0))break;c[x>>2]=0;while(1){y=c[w>>2]|0;if((c[x>>2]|0)>=(c[q>>2]|0))break;j=_(y,c[q>>2]|0)|0;if(+h[(c[r>>2]|0)+(j+(c[x>>2]|0)<<3)>>3]<+h[s+(c[x>>2]<<3)>>3]){j=_(c[w>>2]|0,c[q>>2]|0)|0;z=+h[(c[r>>2]|0)+(j+(c[x>>2]|0)<<3)>>3]}else z=+h[s+(c[x>>2]<<3)>>3];h[s+(c[x>>2]<<3)>>3]=z;j=_(c[w>>2]|0,c[q>>2]|0)|0;if(+h[(c[r>>2]|0)+(j+(c[x>>2]|0)<<3)>>3]>+h[t+(c[x>>2]<<3)>>3]){j=_(c[w>>2]|0,c[q>>2]|0)|0;A=+h[(c[r>>2]|0)+(j+(c[x>>2]|0)<<3)>>3]}else A=+h[t+(c[x>>2]<<3)>>3];h[t+(c[x>>2]<<3)>>3]=A;c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=y+1}if(+h[t>>3]-+h[s>>3]!=0.0)h[v>>3]=(+h[n>>3]-+h[l>>3])/(+h[t>>3]-+h[s>>3]);if(+h[t+8>>3]-+h[s+8>>3]!=0.0){if(+h[v>>3]<(+h[o>>3]-+h[m>>3])/(+h[t+8>>3]-+h[s+8>>3]))B=+h[v>>3];else B=(+h[o>>3]-+h[m>>3])/(+h[t+8>>3]-+h[s+8>>3]);h[v>>3]=B}h[u>>3]=+h[l>>3];h[u+8>>3]=+h[m>>3];h[u+16>>3]=0.0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[p>>2]|0))break;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[q>>2]|0))break;m=_(c[w>>2]|0,c[q>>2]|0)|0;l=_(c[w>>2]|0,c[q>>2]|0)|0;h[(c[r>>2]|0)+(l+(c[x>>2]|0)<<3)>>3]=+h[u+(c[x>>2]<<3)>>3]+(+h[(c[r>>2]|0)+(m+(c[x>>2]|0)<<3)>>3]-+h[s+(c[x>>2]<<3)>>3])*+h[v>>3];c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}i=k;return}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;b=(kB(c[e>>2]|0)|0)==1;a=c[e>>2]|0;if(b){c[j>>2]=$B(a)|0;h[c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]>>3]=0.0;h[(c[(c[(c[j>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=0.0;i=d;return}Dw(a,33688);a=(kO(yA(c[f>>2]|0,133195)|0)|0)<<24>>24!=0;f=c[e>>2]|0;if(a)c[g>>2]=Ew(f,33688)|0;else c[g>>2]=Ey(f,33688)|0;Ny(c[e>>2]|0,c[g>>2]|0,33688);Fw(c[g>>2]|0,33688);i=d;return}function Dw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=$B(c[e>>2]|0)|0;c[g>>2]=qC(c[c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]>>2]|0)|0;if((c[g>>2]|0)!=(c[12956]|0)){c[(c[f>>2]|0)+12>>2]=0;c[12956]=c[g>>2];c[12957]=qA(c[12956]|0,0,133204,0)|0;c[12958]=qA(c[12956]|0,1,133212,0)|0;c[12959]=qA(c[12956]|0,1,133229,0)|0}c[12960]=yA(c[12956]|0,133229)|0;yy(c[f>>2]|0);c[(c[f>>2]|0)+8>>2]=1;k=+fO(c[12956]|0,c[12957]|0,1.0,0.0);h[(c[f>>2]|0)+32>>3]=k;c[(c[f>>2]|0)+16>>2]=c[12958];c[(c[f>>2]|0)+20>>2]=c[12959];c[(c[f>>2]|0)+24>>2]=c[12960];i=d;return}function Ew(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+160|0;e=d;f=d+20|0;g=d+16|0;h=d+12|0;j=d+24|0;k=d+8|0;l=d+4|0;c[f>>2]=a;c[g>>2]=b;b=(c[g>>2]|0)+12|0;g=c[b>>2]|0;c[b>>2]=g+1;c[e>>2]=g;k3(j,133882,e)|0;c[h>>2]=FD(c[f>>2]|0,j,1)|0;c[k>>2]=zy(c[h>>2]|0)|0;c[l>>2]=$B(c[f>>2]|0)|0;while(1){m=c[k>>2]|0;if(!(c[l>>2]|0))break;eC(c[m+8>>2]|0,c[l>>2]|0,1)|0;c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]=c[k>>2];c[l>>2]=aC(c[f>>2]|0,c[l>>2]|0)|0}i=d;return m|0}function Fw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;Fy(c[e>>2]|0);i=d;return}function Gw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=cK(32)|0;c[c[g>>2]>>2]=4;h[(c[g>>2]|0)+8>>3]=.75;c[(c[g>>2]|0)+16>>2]=1073741824;c[(c[g>>2]|0)+20>>2]=1;c[(c[g>>2]|0)+24>>2]=c[e>>2];c[(c[g>>2]|0)+28>>2]=c[f>>2];i=d;return c[g>>2]|0}function Hw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[d>>2]|0);i=b;return}function Iw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}do if(c[(c[d>>2]|0)+8>>2]|0){a=c[d>>2]|0;if(c[c[d>>2]>>2]|0){Lv(c[a+8>>2]|0);if(!(c[(c[d>>2]|0)+12>>2]|0))break;Lv(c[(c[d>>2]|0)+12>>2]|0);break}if((c[a+36>>2]|0)!=0?(Lv(c[(c[d>>2]|0)+8>>2]|0),(c[(c[d>>2]|0)+12>>2]|0)!=0):0)Lv(c[(c[d>>2]|0)+12>>2]|0)}while(0);Lv(c[(c[d>>2]|0)+16>>2]|0);Lv(c[(c[d>>2]|0)+20>>2]|0);if((c[(c[d>>2]|0)+24>>2]|0)!=0?(c[c[d>>2]>>2]|0)>0:0)O4(c[(c[d>>2]|0)+24>>2]|0);Iw(c[(c[d>>2]|0)+28>>2]|0);O4(c[d>>2]|0);i=b;return}function Jw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=i;i=i+32|0;c[h+20>>2]=a;c[h+16>>2]=b;c[h+12>>2]=d;c[h+8>>2]=e;c[h+4>>2]=f;c[h>>2]=g;i=h;return 0}function Kw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+8|0;c[d+4>>2]=a;c[d>>2]=b;c[e>>2]=0;i=d;return c[e>>2]|0}function Lw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+32|0;g=f+16|0;c[f+12>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;c[g>>2]=0;i=f;return c[g>>2]|0}function Mw(a,b,d,e,f,g,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;n=i;i=i+80|0;o=n+68|0;p=n+64|0;q=n+60|0;r=n+56|0;s=n+52|0;t=n+48|0;u=n+44|0;v=n+40|0;w=n+36|0;x=n+32|0;y=n+28|0;z=n+24|0;A=n+20|0;B=n+16|0;C=n+12|0;D=n+8|0;E=n+4|0;F=n;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[y>>2]=c[o>>2];c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[D>>2]=0;c[E>>2]=0;c[c[u>>2]>>2]=0;c[c[v>>2]>>2]=0;c[c[p>>2]>>2]=0;c[c[t>>2]>>2]=0;c[c[r>>2]>>2]=0;c[F>>2]=c[(c[o>>2]|0)+4>>2];while(1){c[s>>2]=c[D>>2];Pw(c[o>>2]|0,y,c[q>>2]|0,z,c[s>>2]|0,D,A,B,c[w>>2]|0,c[x>>2]|0);if(!(c[y>>2]|0)){G=14;break}c[E>>2]=c[(c[y>>2]|0)+4>>2];if(c[c[u>>2]>>2]|0){c[C>>2]=Yv(c[c[u>>2]>>2]|0,c[A>>2]|0)|0;Lv(c[c[u>>2]>>2]|0);Lv(c[A>>2]|0);c[c[u>>2]>>2]=c[C>>2];c[C>>2]=Yv(c[B>>2]|0,c[c[v>>2]>>2]|0)|0;Lv(c[c[v>>2]>>2]|0);Lv(c[B>>2]|0);c[c[v>>2]>>2]=c[C>>2]}else{c[c[u>>2]>>2]=c[A>>2];c[c[v>>2]>>2]=c[B>>2]}if(c[c[p>>2]>>2]|0)Lv(c[c[p>>2]>>2]|0);c[c[p>>2]>>2]=c[y>>2];if(c[c[r>>2]>>2]|0)Lv(c[c[r>>2]>>2]|0);c[c[r>>2]>>2]=c[z>>2];if(c[c[t>>2]>>2]|0)O4(c[c[t>>2]>>2]|0);c[c[t>>2]>>2]=c[D>>2];c[o>>2]=c[y>>2];c[q>>2]=c[z>>2];c[s>>2]=c[D>>2];c[D>>2]=0;if(!(+(c[E>>2]|0)>+h[(c[w>>2]|0)+8>>3]*+(c[F>>2]|0))){G=14;break}if((c[(c[w>>2]|0)+28>>2]|0)!=1){G=14;break}}if((G|0)==14){i=n;return}}function Nw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=c[g>>2];c[n>>2]=c[h>>2];if(!((Ov(c[m>>2]|0,0)|0)!=0?(c[(c[m>>2]|0)+16>>2]|0)==1:0))c[m>>2]=bw(c[m>>2]|0)|0;do if(c[n>>2]|0){if((Ov(c[n>>2]|0,0)|0)!=0?(c[(c[n>>2]|0)+16>>2]|0)==1:0)break;c[n>>2]=Rv(c[n>>2]|0,0)|0}while(0);c[l>>2]=Qw(c[m>>2]|0,c[n>>2]|0,c[j>>2]|0)|0;c[l>>2]=Rw(c[l>>2]|0,c[k>>2]|0)|0;if((c[m>>2]|0)==(c[g>>2]|0)){o=c[l>>2]|0;i=f;return o|0}c[(c[l>>2]|0)+36>>2]=1;o=c[l>>2]|0;i=f;return o|0}function Ow(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){e=c[d>>2]|0;if(!(c[(c[d>>2]|0)+28>>2]|0))break;c[d>>2]=c[e+28>>2]}i=b;return e|0}function Pw(a,b,d,e,f,g,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0.0;n=i;i=i+128|0;o=n+112|0;p=n+108|0;q=n+104|0;r=n+100|0;s=n+96|0;t=n+92|0;u=n+88|0;v=n+84|0;w=n+80|0;x=n+76|0;y=n+72|0;z=n+68|0;A=n+64|0;B=n+60|0;C=n+56|0;D=n+52|0;E=n+48|0;F=n+44|0;G=n+40|0;H=n+36|0;I=n+32|0;J=n+28|0;K=n+24|0;L=n+20|0;M=n+16|0;N=n+12|0;O=n+8|0;P=n+4|0;Q=n;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=j;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[y>>2]=0;c[z>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;c[O>>2]=0;c[P>>2]=0;c[c[p>>2]>>2]=0;c[c[r>>2]>>2]=0;c[c[u>>2]>>2]=0;c[c[v>>2]>>2]=0;c[C>>2]=c[c[o>>2]>>2];c[c[x>>2]>>2]=c[(c[w>>2]|0)+24>>2];a:do switch(c[(c[w>>2]|0)+24>>2]|0){case 12:{c[(c[w>>2]|0)+24>>2]=3;c[c[x>>2]>>2]=3;Pw(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0);if(!(c[c[p>>2]>>2]|0)){c[(c[w>>2]|0)+24>>2]=4;c[c[x>>2]>>2]=4;Pw(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0)}if(!(c[c[p>>2]>>2]|0)){c[(c[w>>2]|0)+24>>2]=6;c[c[x>>2]>>2]=6;Pw(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0)}if(!(c[c[p>>2]>>2]|0)){c[(c[w>>2]|0)+24>>2]=9;c[c[x>>2]>>2]=9;Pw(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0)}if(!(c[c[p>>2]>>2]|0)){c[(c[w>>2]|0)+24>>2]=2;c[c[x>>2]>>2]=2;Pw(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[x>>2]|0)}c[(c[w>>2]|0)+24>>2]=12;break}case 3:case 6:case 4:{do if((c[(c[w>>2]|0)+24>>2]|0)!=3){m=c[o>>2]|0;l=c[(c[w>>2]|0)+20>>2]|0;if((c[(c[w>>2]|0)+24>>2]|0)==4){Tw(m,l,O,P,Q);break}else{Uw(m,4,l,O,P,Q);break}}else Sw(c[o>>2]|0,c[(c[w>>2]|0)+20>>2]|0,O,P,Q);while(0);c[A>>2]=c[Q>>2];if((c[(c[w>>2]|0)+28>>2]|0)==0?+(c[A>>2]|0)>+h[(c[w>>2]|0)+8>>3]*+(c[C>>2]|0):0)break a;if((c[A>>2]|0)!=(c[C>>2]|0)?(c[A>>2]|0)>=(c[c[w>>2]>>2]|0):0){c[E>>2]=cK(c[C>>2]<<2)|0;c[F>>2]=cK(c[C>>2]<<2)|0;c[I>>2]=cK(c[C>>2]<<3)|0;c[B>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[Q>>2]|0))break;c[N>>2]=c[(c[P>>2]|0)+(c[D>>2]<<2)>>2];while(1){if((c[N>>2]|0)>=(c[(c[P>>2]|0)+((c[D>>2]|0)+1<<2)>>2]|0))break;c[(c[E>>2]|0)+(c[B>>2]<<2)>>2]=c[(c[O>>2]|0)+(c[N>>2]<<2)>>2];c[(c[F>>2]|0)+(c[B>>2]<<2)>>2]=c[D>>2];l=c[B>>2]|0;c[B>>2]=l+1;h[(c[I>>2]|0)+(l<<3)>>3]=1.0;c[N>>2]=(c[N>>2]|0)+1}c[D>>2]=(c[D>>2]|0)+1}l=Vv(c[B>>2]|0,c[C>>2]|0,c[A>>2]|0,c[E>>2]|0,c[F>>2]|0,c[I>>2]|0,1,8)|0;c[c[u>>2]>>2]=l;l=Kv(c[c[u>>2]>>2]|0)|0;c[c[v>>2]>>2]=l;l=Jw(c[Q>>2]|0,c[P>>2]|0,c[O>>2]|0,c[c[u>>2]>>2]|0,c[c[v>>2]>>2]|0,c[q>>2]|0)|0;c[c[r>>2]>>2]=l;l=Zv(c[c[v>>2]>>2]|0,c[o>>2]|0,c[c[u>>2]>>2]|0)|0;c[c[p>>2]>>2]=l;if(c[c[p>>2]>>2]|0){Xv(c[c[v>>2]>>2]|0,c[s>>2]|0,c[t>>2]|0,0);l=aw(c[c[v>>2]>>2]|0)|0;c[c[v>>2]>>2]=l;c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|2;c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|1;l=Sv(c[c[p>>2]>>2]|0)|0;c[c[p>>2]>>2]=l}}break}case 1:{Vw(c[o>>2]|0,c[(c[w>>2]|0)+20>>2]|0,y,z);R=29;break}case 2:{R=29;break}case 5:{R=31;break}case 10:case 9:{l=c[o>>2]|0;m=c[(c[w>>2]|0)+20>>2]|0;if((c[(c[w>>2]|0)+24>>2]|0)==9)Yw(l,m,K,L,B);else Zw(l,m,K,L,B);c[G>>2]=c[(c[o>>2]|0)+20>>2];c[H>>2]=c[(c[o>>2]|0)+24>>2];c[A>>2]=c[L>>2];if((c[(c[w>>2]|0)+28>>2]|0)==0?+(c[A>>2]|0)>+h[(c[w>>2]|0)+8>>3]*+(c[C>>2]|0):0)break a;if((c[A>>2]|0)!=(c[C>>2]|0)?(c[A>>2]|0)>=(c[c[w>>2]>>2]|0):0){c[E>>2]=cK(c[B>>2]<<2)|0;c[F>>2]=cK(c[B>>2]<<2)|0;c[I>>2]=cK(c[B>>2]<<3)|0;c[B>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[C>>2]|0))break;b:do if((c[(c[K>>2]|0)+(c[D>>2]<<2)>>2]|0)==-1){c[M>>2]=0;c[N>>2]=c[(c[G>>2]|0)+(c[D>>2]<<2)>>2];while(1){if((c[N>>2]|0)>=(c[(c[G>>2]|0)+((c[D>>2]|0)+1<<2)>>2]|0))break;if((c[(c[K>>2]|0)+(c[(c[H>>2]|0)+(c[N>>2]<<2)>>2]<<2)>>2]|0)>=0)c[M>>2]=(c[M>>2]|0)+1;c[N>>2]=(c[N>>2]|0)+1}c[N>>2]=c[(c[G>>2]|0)+(c[D>>2]<<2)>>2];while(1){if((c[N>>2]|0)>=(c[(c[G>>2]|0)+((c[D>>2]|0)+1<<2)>>2]|0))break b;if((c[(c[K>>2]|0)+(c[(c[H>>2]|0)+(c[N>>2]<<2)>>2]<<2)>>2]|0)>=0){c[(c[E>>2]|0)+(c[B>>2]<<2)>>2]=c[D>>2];c[(c[F>>2]|0)+(c[B>>2]<<2)>>2]=c[(c[K>>2]|0)+(c[(c[H>>2]|0)+(c[N>>2]<<2)>>2]<<2)>>2];S=1.0/+(c[M>>2]|0);m=c[B>>2]|0;c[B>>2]=m+1;h[(c[I>>2]|0)+(m<<3)>>3]=S}c[N>>2]=(c[N>>2]|0)+1}}else{c[(c[E>>2]|0)+(c[B>>2]<<2)>>2]=c[D>>2];c[(c[F>>2]|0)+(c[B>>2]<<2)>>2]=c[(c[K>>2]|0)+(c[D>>2]<<2)>>2];m=c[B>>2]|0;c[B>>2]=m+1;h[(c[I>>2]|0)+(m<<3)>>3]=1.0}while(0);c[D>>2]=(c[D>>2]|0)+1}m=Vv(c[B>>2]|0,c[C>>2]|0,c[A>>2]|0,c[E>>2]|0,c[F>>2]|0,c[I>>2]|0,1,8)|0;c[c[u>>2]>>2]=m;m=Kv(c[c[u>>2]>>2]|0)|0;c[c[v>>2]>>2]=m;m=Zv(c[c[v>>2]>>2]|0,c[o>>2]|0,c[c[u>>2]>>2]|0)|0;c[c[p>>2]>>2]=m;if(c[c[p>>2]>>2]|0){Xv(c[c[v>>2]>>2]|0,c[s>>2]|0,c[t>>2]|0,0);c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|2;c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|1;m=Sv(c[c[p>>2]>>2]|0)|0;c[c[p>>2]>>2]=m;m=Lw(c[K>>2]|0,0,-1,c[q>>2]|0)|0;c[c[r>>2]>>2]=m}}break}default:{}}while(0);if((R|0)==29)if((c[(c[w>>2]|0)+24>>2]|0)==2){Ww(c[o>>2]|0,c[(c[w>>2]|0)+20>>2]|0,y,z);R=31}else R=31;do if((R|0)==31){if((c[(c[w>>2]|0)+24>>2]|0)==5)Xw(c[o>>2]|0,c[(c[w>>2]|0)+20>>2]|0,y,z);c[A>>2]=c[z>>2];if((c[(c[w>>2]|0)+28>>2]|0)==0?+(c[A>>2]|0)>+h[(c[w>>2]|0)+8>>3]*+(c[C>>2]|0):0)break;if((c[A>>2]|0)!=(c[C>>2]|0)?(c[A>>2]|0)>=(c[c[w>>2]>>2]|0):0){c[E>>2]=cK(c[C>>2]<<2)|0;c[F>>2]=cK(c[C>>2]<<2)|0;c[I>>2]=cK(c[C>>2]<<3)|0;c[B>>2]=0;c[A>>2]=0;c[D>>2]=0;while(1){if((c[D>>2]|0)>=(c[C>>2]|0))break;if((c[(c[y>>2]|0)+(c[D>>2]<<2)>>2]|0)>=0){N=(c[(c[y>>2]|0)+(c[D>>2]<<2)>>2]|0)==(c[D>>2]|0);c[(c[E>>2]|0)+(c[B>>2]<<2)>>2]=c[D>>2];c[(c[F>>2]|0)+(c[B>>2]<<2)>>2]=c[A>>2];M=c[B>>2]|0;c[B>>2]=M+1;h[(c[I>>2]|0)+(M<<3)>>3]=1.0;if(!N){c[(c[E>>2]|0)+(c[B>>2]<<2)>>2]=c[(c[y>>2]|0)+(c[D>>2]<<2)>>2];c[(c[F>>2]|0)+(c[B>>2]<<2)>>2]=c[A>>2];N=c[B>>2]|0;c[B>>2]=N+1;h[(c[I>>2]|0)+(N<<3)>>3]=1.0;c[(c[y>>2]|0)+(c[(c[y>>2]|0)+(c[D>>2]<<2)>>2]<<2)>>2]=-1}c[A>>2]=(c[A>>2]|0)+1;c[(c[y>>2]|0)+(c[D>>2]<<2)>>2]=-1}c[D>>2]=(c[D>>2]|0)+1}N=Vv(c[B>>2]|0,c[C>>2]|0,c[A>>2]|0,c[E>>2]|0,c[F>>2]|0,c[I>>2]|0,1,8)|0;c[c[u>>2]>>2]=N;N=Kv(c[c[u>>2]>>2]|0)|0;c[c[v>>2]>>2]=N;N=Zv(c[c[v>>2]>>2]|0,c[o>>2]|0,c[c[u>>2]>>2]|0)|0;c[c[p>>2]>>2]=N;if(c[c[p>>2]>>2]|0){Xv(c[c[v>>2]>>2]|0,c[s>>2]|0,c[t>>2]|0,0);N=aw(c[c[v>>2]>>2]|0)|0;c[c[v>>2]>>2]=N;c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|2;c[(c[c[p>>2]>>2]|0)+36>>2]=c[(c[c[p>>2]>>2]|0)+36>>2]|1;N=Sv(c[c[p>>2]>>2]|0)|0;c[c[p>>2]>>2]=N;N=Kw(c[y>>2]|0,c[q>>2]|0)|0;c[c[r>>2]>>2]=N;c[c[r>>2]>>2]=0}}}while(0);if(c[y>>2]|0)O4(c[y>>2]|0);if(c[K>>2]|0)O4(c[K>>2]|0);if(c[E>>2]|0)O4(c[E>>2]|0);if(c[F>>2]|0)O4(c[F>>2]|0);if(c[I>>2]|0)O4(c[I>>2]|0);if(c[J>>2]|0)Lv(c[J>>2]|0);if(c[O>>2]|0)O4(c[O>>2]|0);if(!(c[P>>2]|0)){i=n;return}O4(c[P>>2]|0);i=n;return}function Qw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(c[g>>2]|0){c[k>>2]=cK(44)|0;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=c[(c[g>>2]|0)+4>>2];c[(c[k>>2]|0)+8>>2]=c[g>>2];c[(c[k>>2]|0)+12>>2]=c[h>>2];c[(c[k>>2]|0)+16>>2]=0;c[(c[k>>2]|0)+20>>2]=0;c[(c[k>>2]|0)+24>>2]=c[j>>2];c[(c[k>>2]|0)+28>>2]=0;c[(c[k>>2]|0)+32>>2]=0;c[(c[k>>2]|0)+36>>2]=0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}return 0}function Rw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+48|0;e=d+44|0;f=d+40|0;g=d+36|0;h=d+32|0;j=d+28|0;k=d+24|0;l=d+20|0;m=d+16|0;n=d+12|0;o=d+8|0;p=d+4|0;q=d;c[f>>2]=a;c[g>>2]=b;c[k>>2]=0;c[n>>2]=c[(c[f>>2]|0)+8>>2];c[p>>2]=c[(c[f>>2]|0)+12>>2];if((c[c[f>>2]>>2]|0)>=((c[(c[g>>2]|0)+16>>2]|0)-1|0)){c[e>>2]=c[f>>2];r=c[e>>2]|0;i=d;return r|0}Mw(c[n>>2]|0,o,c[p>>2]|0,q,c[(c[f>>2]|0)+24>>2]|0,k,l,m,c[g>>2]|0,j);if(c[o>>2]|0){c[h>>2]=Qw(c[o>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;c[(c[f>>2]|0)+28>>2]=c[h>>2];c[(c[h>>2]|0)+40>>2]=c[j>>2];c[c[h>>2]>>2]=(c[c[f>>2]>>2]|0)+1;c[(c[h>>2]|0)+4>>2]=c[c[o>>2]>>2];c[(c[h>>2]|0)+8>>2]=c[o>>2];c[(c[h>>2]|0)+12>>2]=c[q>>2];c[(c[h>>2]|0)+16>>2]=c[l>>2];c[(c[f>>2]|0)+20>>2]=c[m>>2];c[(c[h>>2]|0)+32>>2]=c[f>>2];c[h>>2]=Rw(c[h>>2]|0,c[g>>2]|0)|0;c[e>>2]=c[f>>2];r=c[e>>2]|0;i=d;return r|0}else{c[e>>2]=c[f>>2];r=c[e>>2]|0;i=d;return r|0}return 0}function Sw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0,J=0;g=i;i=i+112|0;j=g+96|0;k=g+92|0;l=g+88|0;m=g+84|0;n=g+80|0;o=g+76|0;p=g+72|0;q=g+68|0;r=g+64|0;s=g+60|0;t=g+56|0;u=g+48|0;v=g+44|0;w=g+40|0;x=g;y=g+36|0;z=g+32|0;A=g+28|0;B=g+24|0;C=g+20|0;D=g+16|0;E=g+12|0;F=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[u>>2]=0;h[x>>3]=0.0;c[y>>2]=1;c[z>>2]=0;c[C>>2]=0;c[r>>2]=c[(c[j>>2]|0)+20>>2];c[s>>2]=c[(c[j>>2]|0)+24>>2];c[t>>2]=c[c[j>>2]>>2];c[g+52>>2]=c[(c[j>>2]|0)+4>>2];f=cK(c[t>>2]<<2)|0;c[c[l>>2]>>2]=f;f=cK((c[t>>2]|0)+1<<2)|0;c[c[m>>2]>>2]=f;c[A>>2]=cK(c[t>>2]<<2)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1}c[c[n>>2]>>2]=0;c[c[c[m>>2]>>2]>>2]=0;c[B>>2]=0;c[w>>2]=c[(c[j>>2]|0)+28>>2];if(!(c[k>>2]|0)){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;a:do if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1?((c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0)-(c[(c[r>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)==1:0){c[v>>2]=c[(c[s>>2]|0)+(c[(c[r>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2];c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]=-1;k=c[v>>2]|0;j=c[B>>2]|0;c[B>>2]=j+1;c[(c[c[l>>2]>>2]|0)+(j<<2)>>2]=k;c[q>>2]=c[(c[r>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[v>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?((c[(c[r>>2]|0)+((c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[r>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)|0)==1:0){c[(c[A>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=-1;k=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0;j=c[B>>2]|0;c[B>>2]=j+1;c[(c[c[l>>2]>>2]|0)+(j<<2)>>2]=k}c[q>>2]=(c[q>>2]|0)+1}if((c[C>>2]|0)>((c[B>>2]|0)-(c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2]|0)|0))G=c[C>>2]|0;else G=(c[B>>2]|0)-(c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2]|0)|0;c[C>>2]=G;c[D>>2]=c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2];if(((c[B>>2]|0)-(c[D>>2]|0)|0)<=4){k=c[B>>2]|0;j=c[n>>2]|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=k;break}k=(c[D>>2]|0)+1|0;c[D>>2]=k;f=c[n>>2]|0;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[(c[c[m>>2]>>2]|0)+(j<<2)>>2]=k;c[E>>2]=c[D>>2];c[F>>2]=c[D>>2];while(1){if((c[F>>2]|0)>=(c[B>>2]|0))break a;if((c[E>>2]|0)>=(c[B>>2]|0))break a;c[E>>2]=(c[E>>2]|0)+3;c[E>>2]=(c[B>>2]|0)<(c[E>>2]|0)?c[B>>2]|0:c[E>>2]|0;k=c[E>>2]|0;j=c[n>>2]|0;f=(c[j>>2]|0)+1|0;c[j>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=k;c[F>>2]=(c[F>>2]|0)+1}}while(0);c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;c[y>>2]=1;if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1){c[q>>2]=c[(c[r>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;do if(((c[o>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?(c[(c[A>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)!=-1:0)?(c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1:0){H=+h[(c[w>>2]|0)+(c[q>>2]<<3)>>3];if(c[y>>2]|0){h[x>>3]=H;c[z>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2];c[y>>2]=0;break}if(H>+h[x>>3]){h[x>>3]=+h[(c[w>>2]|0)+(c[q>>2]<<3)>>3];c[z>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+1}if(!(c[y>>2]|0)){c[(c[A>>2]|0)+(c[z>>2]<<2)>>2]=-1;c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]=-1;G=c[o>>2]|0;k=c[B>>2]|0;c[B>>2]=k+1;c[(c[c[l>>2]>>2]|0)+(k<<2)>>2]=G;G=c[z>>2]|0;k=c[B>>2]|0;c[B>>2]=k+1;c[(c[c[l>>2]>>2]|0)+(k<<2)>>2]=G;G=c[B>>2]|0;k=c[n>>2]|0;f=(c[k>>2]|0)+1|0;c[k>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=G}}c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)==(c[o>>2]|0)){G=c[o>>2]|0;f=c[B>>2]|0;c[B>>2]=f+1;c[(c[c[l>>2]>>2]|0)+(f<<2)>>2]=G;G=c[B>>2]|0;f=c[n>>2]|0;k=(c[f>>2]|0)+1|0;c[f>>2]=k;c[(c[c[m>>2]>>2]|0)+(k<<2)>>2]=G}c[o>>2]=(c[o>>2]|0)+1}I=c[A>>2]|0;O4(I);i=g;return}c[u>>2]=tw(c[t>>2]|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break;c[o>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];b:do if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1?((c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0)-(c[(c[r>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)==1:0){c[v>>2]=c[(c[s>>2]|0)+(c[(c[r>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2];c[(c[A>>2]|0)+(c[v>>2]<<2)>>2]=-1;G=c[v>>2]|0;k=c[B>>2]|0;c[B>>2]=k+1;c[(c[c[l>>2]>>2]|0)+(k<<2)>>2]=G;c[q>>2]=c[(c[r>>2]|0)+(c[v>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[v>>2]|0)+1<<2)>>2]|0))break;if((c[v>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?((c[(c[r>>2]|0)+((c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[r>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)|0)==1:0){c[(c[A>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=-1;G=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0;k=c[B>>2]|0;c[B>>2]=k+1;c[(c[c[l>>2]>>2]|0)+(k<<2)>>2]=G}c[q>>2]=(c[q>>2]|0)+1}if((c[C>>2]|0)>((c[B>>2]|0)-(c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2]|0)|0))J=c[C>>2]|0;else J=(c[B>>2]|0)-(c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2]|0)|0;c[C>>2]=J;c[D>>2]=c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2];if(((c[B>>2]|0)-(c[D>>2]|0)|0)<=4){G=c[B>>2]|0;k=c[n>>2]|0;f=(c[k>>2]|0)+1|0;c[k>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=G;break}G=(c[D>>2]|0)+1|0;c[D>>2]=G;f=c[n>>2]|0;k=(c[f>>2]|0)+1|0;c[f>>2]=k;c[(c[c[m>>2]>>2]|0)+(k<<2)>>2]=G;c[E>>2]=c[D>>2];c[F>>2]=c[D>>2];while(1){if((c[F>>2]|0)>=(c[B>>2]|0))break b;if((c[E>>2]|0)>=(c[B>>2]|0))break b;c[E>>2]=(c[E>>2]|0)+3;c[E>>2]=(c[B>>2]|0)<(c[E>>2]|0)?c[B>>2]|0:c[E>>2]|0;G=c[E>>2]|0;k=c[n>>2]|0;f=(c[k>>2]|0)+1|0;c[k>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=G;c[F>>2]=(c[F>>2]|0)+1}}while(0);c[p>>2]=(c[p>>2]|0)+1}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break;c[o>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];c[y>>2]=1;if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1){c[q>>2]=c[(c[r>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;do if(((c[o>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?(c[(c[A>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)!=-1:0)?(c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1:0){H=+h[(c[w>>2]|0)+(c[q>>2]<<3)>>3];if(c[y>>2]|0){h[x>>3]=H;c[z>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2];c[y>>2]=0;break}if(H>+h[x>>3]){h[x>>3]=+h[(c[w>>2]|0)+(c[q>>2]<<3)>>3];c[z>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+1}if(!(c[y>>2]|0)){c[(c[A>>2]|0)+(c[z>>2]<<2)>>2]=-1;c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]=-1;F=c[o>>2]|0;E=c[B>>2]|0;c[B>>2]=E+1;c[(c[c[l>>2]>>2]|0)+(E<<2)>>2]=F;F=c[z>>2]|0;E=c[B>>2]|0;c[B>>2]=E+1;c[(c[c[l>>2]>>2]|0)+(E<<2)>>2]=F;F=c[B>>2]|0;E=c[n>>2]|0;D=(c[E>>2]|0)+1|0;c[E>>2]=D;c[(c[c[m>>2]>>2]|0)+(D<<2)>>2]=F}}c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;if((c[(c[A>>2]|0)+(c[o>>2]<<2)>>2]|0)==(c[o>>2]|0)){p=c[o>>2]|0;z=c[B>>2]|0;c[B>>2]=z+1;c[(c[c[l>>2]>>2]|0)+(z<<2)>>2]=p;p=c[B>>2]|0;z=c[n>>2]|0;y=(c[z>>2]|0)+1|0;c[z>>2]=y;c[(c[c[m>>2]>>2]|0)+(y<<2)>>2]=p}c[o>>2]=(c[o>>2]|0)+1}O4(c[u>>2]|0);I=c[A>>2]|0;O4(I);i=g;return}function Tw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0;g=i;i=i+96|0;j=g+92|0;k=g+88|0;l=g+84|0;m=g+80|0;n=g+76|0;o=g+72|0;p=g+68|0;q=g+64|0;r=g+60|0;s=g+56|0;t=g+52|0;u=g+44|0;v=g+40|0;w=g;x=g+36|0;y=g+32|0;z=g+28|0;A=g+24|0;B=g+20|0;C=g+16|0;D=g+12|0;E=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[u>>2]=0;h[w>>3]=0.0;c[x>>2]=1;c[y>>2]=0;c[D>>2]=0;c[E>>2]=0;c[r>>2]=c[(c[j>>2]|0)+20>>2];c[s>>2]=c[(c[j>>2]|0)+24>>2];c[t>>2]=c[c[j>>2]>>2];c[g+48>>2]=c[(c[j>>2]|0)+4>>2];f=cK(c[t>>2]<<2)|0;c[c[l>>2]>>2]=f;f=cK((c[t>>2]|0)+1<<2)|0;c[c[m>>2]>>2]=f;c[z>>2]=cK(c[t>>2]<<2)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1}ew(c[j>>2]|0,C,D,E);c[c[n>>2]>>2]=0;c[c[c[m>>2]>>2]>>2]=0;c[A>>2]=0;c[v>>2]=c[(c[j>>2]|0)+28>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[C>>2]|0))break;if(((c[(c[E>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0)-(c[(c[E>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)>1){c[B>>2]=c[(c[c[m>>2]>>2]|0)+(c[c[n>>2]>>2]<<2)>>2];c[q>>2]=c[(c[E>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[E>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;c[(c[z>>2]|0)+(c[(c[D>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]=-1;j=c[(c[D>>2]|0)+(c[q>>2]<<2)>>2]|0;f=c[A>>2]|0;c[A>>2]=f+1;c[(c[c[l>>2]>>2]|0)+(f<<2)>>2]=j;if(((c[A>>2]|0)-(c[B>>2]|0)|0)>=4){j=c[A>>2]|0;f=c[n>>2]|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;c[(c[c[m>>2]>>2]|0)+(e<<2)>>2]=j;c[B>>2]=c[A>>2]}c[q>>2]=(c[q>>2]|0)+1}if((c[A>>2]|0)>(c[B>>2]|0)){j=c[A>>2]|0;e=c[n>>2]|0;f=(c[e>>2]|0)+1|0;c[e>>2]=f;c[(c[c[m>>2]>>2]|0)+(f<<2)>>2]=j}}c[o>>2]=(c[o>>2]|0)+1}if(!(c[k>>2]|0)){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;c[x>>2]=1;if((c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1){c[q>>2]=c[(c[r>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;do if(((c[o>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?(c[(c[z>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)!=-1:0)?(c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1:0){F=+h[(c[v>>2]|0)+(c[q>>2]<<3)>>3];if(c[x>>2]|0){h[w>>3]=F;c[y>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2];c[x>>2]=0;break}if(F>+h[w>>3]){h[w>>3]=+h[(c[v>>2]|0)+(c[q>>2]<<3)>>3];c[y>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+1}if(!(c[x>>2]|0)){c[(c[z>>2]|0)+(c[y>>2]<<2)>>2]=-1;c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]=-1;k=c[o>>2]|0;B=c[A>>2]|0;c[A>>2]=B+1;c[(c[c[l>>2]>>2]|0)+(B<<2)>>2]=k;k=c[y>>2]|0;B=c[A>>2]|0;c[A>>2]=B+1;c[(c[c[l>>2]>>2]|0)+(B<<2)>>2]=k;k=c[A>>2]|0;B=c[n>>2]|0;C=(c[B>>2]|0)+1|0;c[B>>2]=C;c[(c[c[m>>2]>>2]|0)+(C<<2)>>2]=k}}c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;if((c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)==(c[o>>2]|0)){k=c[o>>2]|0;C=c[A>>2]|0;c[A>>2]=C+1;c[(c[c[l>>2]>>2]|0)+(C<<2)>>2]=k;k=c[A>>2]|0;C=c[n>>2]|0;B=(c[C>>2]|0)+1|0;c[C>>2]=B;c[(c[c[m>>2]>>2]|0)+(B<<2)>>2]=k}c[o>>2]=(c[o>>2]|0)+1}G=c[D>>2]|0;O4(G);H=c[E>>2]|0;O4(H);I=c[z>>2]|0;O4(I);i=g;return}c[u>>2]=tw(c[t>>2]|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[t>>2]|0))break;c[o>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];c[x>>2]=1;if((c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1){c[q>>2]=c[(c[r>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[r>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;do if(((c[o>>2]|0)!=(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]|0)?(c[(c[z>>2]|0)+(c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)!=-1:0)?(c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)!=-1:0){F=+h[(c[v>>2]|0)+(c[q>>2]<<3)>>3];if(c[x>>2]|0){h[w>>3]=F;c[y>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2];c[x>>2]=0;break}if(F>+h[w>>3]){h[w>>3]=+h[(c[v>>2]|0)+(c[q>>2]<<3)>>3];c[y>>2]=c[(c[s>>2]|0)+(c[q>>2]<<2)>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+1}if(!(c[x>>2]|0)){c[(c[z>>2]|0)+(c[y>>2]<<2)>>2]=-1;c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]=-1;k=c[o>>2]|0;B=c[A>>2]|0;c[A>>2]=B+1;c[(c[c[l>>2]>>2]|0)+(B<<2)>>2]=k;k=c[y>>2]|0;B=c[A>>2]|0;c[A>>2]=B+1;c[(c[c[l>>2]>>2]|0)+(B<<2)>>2]=k;k=c[A>>2]|0;B=c[n>>2]|0;C=(c[B>>2]|0)+1|0;c[B>>2]=C;c[(c[c[m>>2]>>2]|0)+(C<<2)>>2]=k}}c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[t>>2]|0))break;if((c[(c[z>>2]|0)+(c[o>>2]<<2)>>2]|0)==(c[o>>2]|0)){p=c[o>>2]|0;y=c[A>>2]|0;c[A>>2]=y+1;c[(c[c[l>>2]>>2]|0)+(y<<2)>>2]=p;p=c[A>>2]|0;y=c[n>>2]|0;x=(c[y>>2]|0)+1|0;c[y>>2]=x;c[(c[c[m>>2]>>2]|0)+(x<<2)>>2]=p}c[o>>2]=(c[o>>2]|0)+1}O4(c[u>>2]|0);G=c[D>>2]|0;O4(G);H=c[E>>2]|0;O4(H);I=c[z>>2]|0;O4(I);i=g;return}function Uw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;j=i;i=i+96|0;k=j+92|0;l=j+88|0;m=j+80|0;n=j+76|0;o=j+72|0;p=j+68|0;q=j+64|0;r=j+60|0;s=j+56|0;t=j+52|0;u=j+48|0;v=j+40|0;w=j+36|0;x=j+32|0;y=j+28|0;z=j+24|0;A=j+20|0;B=j+16|0;C=j+12|0;D=j+8|0;E=j+4|0;F=j;c[k>>2]=a;c[l>>2]=b;c[j+84>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[v>>2]=0;c[s>>2]=c[(c[k>>2]|0)+20>>2];c[t>>2]=c[(c[k>>2]|0)+24>>2];c[u>>2]=c[c[k>>2]>>2];c[j+44>>2]=c[(c[k>>2]|0)+4>>2];g=cK(c[u>>2]<<2)|0;c[c[m>>2]>>2]=g;g=cK((c[u>>2]|0)+1<<2)|0;c[c[n>>2]>>2]=g;c[z>>2]=cK(c[u>>2]<<2)|0;c[F>>2]=cK(c[u>>2]<<1<<3)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[u>>2]|0))break;c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]=c[p>>2];c[p>>2]=(c[p>>2]|0)+1}c[c[o>>2]>>2]=0;c[c[c[n>>2]>>2]>>2]=0;c[A>>2]=0;c[y>>2]=c[(c[k>>2]|0)+28>>2];c[v>>2]=tw(c[u>>2]|0)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0))break;c[p>>2]=c[(c[v>>2]|0)+(c[q>>2]<<2)>>2];a:do if((c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]|0)!=-1?((c[(c[s>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0)-(c[(c[s>>2]|0)+(c[p>>2]<<2)>>2]|0)|0)==1:0){c[w>>2]=c[(c[t>>2]|0)+(c[(c[s>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2];c[(c[z>>2]|0)+(c[w>>2]<<2)>>2]=-1;k=c[w>>2]|0;g=c[A>>2]|0;c[A>>2]=g+1;c[(c[c[m>>2]>>2]|0)+(g<<2)>>2]=k;c[r>>2]=c[(c[s>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[s>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;if((c[w>>2]|0)!=(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0)?((c[(c[s>>2]|0)+((c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[s>>2]|0)+(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]|0)|0)==1:0){c[(c[z>>2]|0)+(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]=-1;k=c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0;g=c[A>>2]|0;c[A>>2]=g+1;c[(c[c[m>>2]>>2]|0)+(g<<2)>>2]=k}c[r>>2]=(c[r>>2]|0)+1}c[B>>2]=c[(c[c[n>>2]>>2]|0)+(c[c[o>>2]>>2]<<2)>>2];if(((c[A>>2]|0)-(c[B>>2]|0)|0)<=4){k=c[A>>2]|0;g=c[o>>2]|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[c[n>>2]>>2]|0)+(f<<2)>>2]=k;break}k=(c[B>>2]|0)+1|0;c[B>>2]=k;f=c[o>>2]|0;g=(c[f>>2]|0)+1|0;c[f>>2]=g;c[(c[c[n>>2]>>2]|0)+(g<<2)>>2]=k;c[C>>2]=c[B>>2];c[D>>2]=c[B>>2];while(1){if((c[D>>2]|0)>=(c[A>>2]|0))break a;if((c[C>>2]|0)>=(c[A>>2]|0))break a;c[C>>2]=(c[C>>2]|0)+3;c[C>>2]=(c[A>>2]|0)<(c[C>>2]|0)?c[A>>2]|0:c[C>>2]|0;k=c[C>>2]|0;g=c[o>>2]|0;f=(c[g>>2]|0)+1|0;c[g>>2]=f;c[(c[c[n>>2]>>2]|0)+(f<<2)>>2]=k;c[D>>2]=(c[D>>2]|0)+1}}while(0);c[q>>2]=(c[q>>2]|0)+1}c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0))break;c[p>>2]=c[(c[v>>2]|0)+(c[q>>2]<<2)>>2];if((c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]|0)!=-1){c[E>>2]=0;c[r>>2]=c[(c[s>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[s>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;if(((c[p>>2]|0)!=(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0)?(c[(c[z>>2]|0)+(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]|0)!=-1:0)?(c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]|0)!=-1:0){h[(c[F>>2]|0)+(c[E>>2]<<1<<3)>>3]=+(c[(c[t>>2]|0)+(c[r>>2]<<2)>>2]|0);h[(c[F>>2]|0)+((c[E>>2]<<1)+1<<3)>>3]=+h[(c[y>>2]|0)+(c[r>>2]<<3)>>3];c[E>>2]=(c[E>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}if((c[E>>2]|0)>0){w3(c[F>>2]|0,c[E>>2]|0,16,81);c[r>>2]=0;while(1){if((c[r>>2]|0)>=((((c[l>>2]|0)-1|0)<(c[E>>2]|0)?(c[l>>2]|0)-1|0:c[E>>2]|0)|0))break;c[x>>2]=~~+h[(c[F>>2]|0)+(c[r>>2]<<1<<3)>>3];c[(c[z>>2]|0)+(c[x>>2]<<2)>>2]=-1;D=c[x>>2]|0;C=c[A>>2]|0;c[A>>2]=C+1;c[(c[c[m>>2]>>2]|0)+(C<<2)>>2]=D;c[r>>2]=(c[r>>2]|0)+1}c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]=-1;D=c[p>>2]|0;C=c[A>>2]|0;c[A>>2]=C+1;c[(c[c[m>>2]>>2]|0)+(C<<2)>>2]=D;D=c[A>>2]|0;C=c[o>>2]|0;B=(c[C>>2]|0)+1|0;c[C>>2]=B;c[(c[c[n>>2]>>2]|0)+(B<<2)>>2]=D}}c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[u>>2]|0))break;if((c[(c[z>>2]|0)+(c[p>>2]<<2)>>2]|0)==(c[p>>2]|0)){q=c[p>>2]|0;r=c[A>>2]|0;c[A>>2]=r+1;c[(c[c[m>>2]>>2]|0)+(r<<2)>>2]=q;q=c[A>>2]|0;r=c[o>>2]|0;x=(c[r>>2]|0)+1|0;c[r>>2]=x;c[(c[c[n>>2]>>2]|0)+(x<<2)>>2]=q}c[p>>2]=(c[p>>2]|0)+1}O4(c[v>>2]|0);O4(c[z>>2]|0);i=j;return}function Vw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+48|0;g=f+44|0;h=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f+12|0;q=f+8|0;r=f+4|0;s=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[s>>2]=0;c[o>>2]=c[(c[g>>2]|0)+20>>2];c[p>>2]=c[(c[g>>2]|0)+24>>2];c[q>>2]=c[c[g>>2]>>2];c[r>>2]=c[(c[g>>2]|0)+4>>2];g=cK(c[q>>2]<<2)|0;c[c[j>>2]>>2]=g;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[q>>2]|0))break;c[(c[c[j>>2]>>2]|0)+(c[l>>2]<<2)>>2]=c[l>>2];c[l>>2]=(c[l>>2]|0)+1}c[c[k>>2]>>2]=c[r>>2];if(!(c[h>>2]|0)){c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[q>>2]|0))break;c[n>>2]=c[(c[o>>2]|0)+(c[l>>2]<<2)>>2];while(1){t=c[l>>2]|0;if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[l>>2]|0)+1<<2)>>2]|0))break;if(((t|0)!=(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]|0)?(c[(c[c[j>>2]>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]|0):0)?(c[(c[c[j>>2]>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[l>>2]|0):0){c[(c[c[j>>2]>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[l>>2];c[(c[c[j>>2]>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[n>>2]<<2)>>2];h=c[k>>2]|0;c[h>>2]=(c[h>>2]|0)+-1}c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=t+1}i=f;return}c[s>>2]=tw(c[q>>2]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break;c[l>>2]=c[(c[s>>2]|0)+(c[m>>2]<<2)>>2];c[n>>2]=c[(c[o>>2]|0)+(c[l>>2]<<2)>>2];while(1){if((c[n>>2]|0)>=(c[(c[o>>2]|0)+((c[l>>2]|0)+1<<2)>>2]|0))break;if(((c[l>>2]|0)!=(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]|0)?(c[(c[c[j>>2]>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]|0):0)?(c[(c[c[j>>2]>>2]|0)+(c[l>>2]<<2)>>2]|0)==(c[l>>2]|0):0){c[(c[c[j>>2]>>2]|0)+(c[(c[p>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[l>>2];c[(c[c[j>>2]>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[n>>2]<<2)>>2];t=c[k>>2]|0;c[t>>2]=(c[t>>2]|0)+-1}c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}O4(c[s>>2]|0);i=f;return}function Ww(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;f=i;i=i+80|0;g=f+64|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+36|0;q=f+32|0;r=f+28|0;s=f+24|0;t=f+20|0;u=f+16|0;v=f;w=f+12|0;x=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[t>>2]=0;h[v>>3]=0.0;c[w>>2]=1;c[x>>2]=0;c[p>>2]=c[(c[g>>2]|0)+20>>2];c[q>>2]=c[(c[g>>2]|0)+24>>2];c[r>>2]=c[c[g>>2]>>2];c[s>>2]=c[(c[g>>2]|0)+4>>2];e=cK(c[r>>2]<<2)|0;c[c[k>>2]>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1}c[c[l>>2]>>2]=c[s>>2];c[u>>2]=c[(c[g>>2]|0)+28>>2];if(!(c[j>>2]|0)){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[w>>2]=1;c[o>>2]=c[(c[p>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;do if(((c[m>>2]|0)!=(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)?(c[(c[c[k>>2]>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0):0)?(c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0):0){y=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3];if(c[w>>2]|0){h[v>>3]=y;c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2];c[w>>2]=0;break}if(y>+h[v>>3]){h[v>>3]=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3];c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+1}if(!(c[w>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[x>>2]<<2)>>2]=c[m>>2];c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[x>>2];j=c[l>>2]|0;c[j>>2]=(c[j>>2]|0)+-1}c[m>>2]=(c[m>>2]|0)+1}i=f;return}c[t>>2]=tw(c[r>>2]|0)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[r>>2]|0))break;c[m>>2]=c[(c[t>>2]|0)+(c[n>>2]<<2)>>2];if((c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0)){c[w>>2]=1;c[o>>2]=c[(c[p>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;do if(((c[m>>2]|0)!=(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)?(c[(c[c[k>>2]>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0):0)?(c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0):0){y=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3];if(c[w>>2]|0){h[v>>3]=y;c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2];c[w>>2]=0;break}if(y>+h[v>>3]){h[v>>3]=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3];c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+1}if(!(c[w>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[x>>2]<<2)>>2]=c[m>>2];c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[x>>2];j=c[l>>2]|0;c[j>>2]=(c[j>>2]|0)+-1}}c[n>>2]=(c[n>>2]|0)+1}O4(c[t>>2]|0);i=f;return}function Xw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;f=i;i=i+80|0;g=f+64|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+36|0;q=f+32|0;r=f+28|0;s=f+24|0;t=f+20|0;u=f+16|0;v=f;w=f+12|0;x=f+8|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[t>>2]=0;h[v>>3]=0.0;c[w>>2]=1;c[x>>2]=0;c[p>>2]=c[(c[g>>2]|0)+20>>2];c[q>>2]=c[(c[g>>2]|0)+24>>2];c[r>>2]=c[c[g>>2]>>2];c[s>>2]=c[(c[g>>2]|0)+4>>2];e=cK(c[r>>2]<<2)|0;c[c[k>>2]>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1}c[c[l>>2]>>2]=c[s>>2];c[u>>2]=c[(c[g>>2]|0)+28>>2];if(!(c[j>>2]|0)){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[r>>2]|0))break;c[w>>2]=1;c[o>>2]=c[(c[p>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;do if(((c[m>>2]|0)!=(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)?(c[(c[c[k>>2]>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0):0)?(c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0):0){y=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3]/+((c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[m>>2]<<2)>>2]|0)|0)/+((c[(c[p>>2]|0)+((c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)|0);if(c[w>>2]|0){h[v>>3]=y;c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2];c[w>>2]=0;break}if(y>+h[v>>3]){h[v>>3]=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3]/+((c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[m>>2]<<2)>>2]|0)|0)/+((c[(c[p>>2]|0)+((c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)|0);c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+1}if(!(c[w>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[x>>2]<<2)>>2]=c[m>>2];c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[x>>2];j=c[l>>2]|0;c[j>>2]=(c[j>>2]|0)+-1}c[m>>2]=(c[m>>2]|0)+1}i=f;return}c[t>>2]=tw(c[r>>2]|0)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[r>>2]|0))break;c[m>>2]=c[(c[t>>2]|0)+(c[n>>2]<<2)>>2];if((c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0)){c[w>>2]=1;c[o>>2]=c[(c[p>>2]|0)+(c[m>>2]<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0))break;do if(((c[m>>2]|0)!=(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)?(c[(c[c[k>>2]>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)==(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0):0)?(c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]|0)==(c[m>>2]|0):0){y=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3]/+((c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[m>>2]<<2)>>2]|0)|0)/+((c[(c[p>>2]|0)+((c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)|0);if(c[w>>2]|0){h[v>>3]=y;c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2];c[w>>2]=0;break}if(y>+h[v>>3]){h[v>>3]=+h[(c[u>>2]|0)+(c[o>>2]<<3)>>3]/+((c[(c[p>>2]|0)+((c[m>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[m>>2]<<2)>>2]|0)|0)/+((c[(c[p>>2]|0)+((c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]|0)+1<<2)>>2]|0)-(c[(c[p>>2]|0)+(c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]|0)|0);c[x>>2]=c[(c[q>>2]|0)+(c[o>>2]<<2)>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+1}if(!(c[w>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[x>>2]<<2)>>2]=c[m>>2];c[(c[c[k>>2]>>2]|0)+(c[m>>2]<<2)>>2]=c[x>>2];j=c[l>>2]|0;c[j>>2]=(c[j>>2]|0)+-1}}c[n>>2]=(c[n>>2]|0)+1}O4(c[t>>2]|0);i=f;return}function Yw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+64|0;h=g+48|0;j=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+12|0;s=g+8|0;t=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[t>>2]=0;c[q>>2]=c[(c[h>>2]|0)+20>>2];c[r>>2]=c[(c[h>>2]|0)+24>>2];c[s>>2]=c[c[h>>2]>>2];c[g+4>>2]=c[(c[h>>2]|0)+4>>2];h=cK(c[s>>2]<<2)|0;c[c[k>>2]>>2]=h;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[s>>2]|0))break;c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]=-100;c[n>>2]=(c[n>>2]|0)+1}c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;if(!(c[j>>2]|0)){c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[s>>2]|0))break;a:do if((c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]|0)==-100){j=c[l>>2]|0;h=c[j>>2]|0;c[j>>2]=h+1;c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]=h;c[p>>2]=c[(c[q>>2]|0)+(c[n>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[q>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break a;if((c[n>>2]|0)!=(c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]=-1;h=c[m>>2]|0;c[h>>2]=(c[h>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}}while(0);c[n>>2]=(c[n>>2]|0)+1}u=c[l>>2]|0;v=c[u>>2]|0;w=c[m>>2]|0;x=c[w>>2]|0;y=x+v|0;c[w>>2]=y;i=g;return}c[t>>2]=tw(c[s>>2]|0)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[s>>2]|0))break;c[n>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];b:do if((c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]|0)==-100){h=c[l>>2]|0;j=c[h>>2]|0;c[h>>2]=j+1;c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[p>>2]=c[(c[q>>2]|0)+(c[n>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[q>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break b;if((c[n>>2]|0)!=(c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]|0)){c[(c[c[k>>2]>>2]|0)+(c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]<<2)>>2]=-1;j=c[m>>2]|0;c[j>>2]=(c[j>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}}while(0);c[o>>2]=(c[o>>2]|0)+1}O4(c[t>>2]|0);u=c[l>>2]|0;v=c[u>>2]|0;w=c[m>>2]|0;x=c[w>>2]|0;y=x+v|0;c[w>>2]=y;i=g;return}function Zw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=i;i=i+80|0;h=g+72|0;j=g+68|0;k=g+64|0;l=g+60|0;m=g+56|0;n=g+52|0;o=g+48|0;p=g+44|0;q=g+40|0;r=g+36|0;s=g+32|0;t=g+28|0;u=g+24|0;v=g+20|0;w=g+12|0;x=g+8|0;y=g+4|0;z=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[q>>2]=0;c[y>>2]=0;c[t>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+24>>2];c[v>>2]=c[c[h>>2]>>2];c[g+16>>2]=c[(c[h>>2]|0)+4>>2];h=cK(c[v>>2]<<2)|0;c[c[k>>2]>>2]=h;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[v>>2]|0))break;c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]=-100;c[n>>2]=(c[n>>2]|0)+1}c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[z>>2]=$w(c[v>>2]|0,(c[v>>2]|0)-1<<1)|0;a:do if(c[j>>2]|0){c[q>>2]=tw(c[v>>2]|0)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[v>>2]|0))break;c[n>>2]=c[(c[q>>2]|0)+(c[p>>2]<<2)>>2];bx(c[z>>2]|0,c[n>>2]|0,(c[(c[t>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0)-(c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]|0)|0)|0;c[p>>2]=(c[p>>2]|0)+1}O4(c[q>>2]|0)}else{c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[v>>2]|0))break a;bx(c[z>>2]|0,c[n>>2]|0,(c[(c[t>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0)-(c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]|0)|0)|0;c[n>>2]=(c[n>>2]|0)+1}}while(0);b:while(1){v=(cx(c[z>>2]|0,n,w)|0)!=0;q=c[l>>2]|0;A=c[q>>2]|0;if(!v)break;c[q>>2]=A+1;c[(c[c[k>>2]>>2]|0)+(c[n>>2]<<2)>>2]=A;c[r>>2]=c[(c[t>>2]|0)+(c[n>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[t>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))continue b;c[o>>2]=c[(c[u>>2]|0)+(c[r>>2]<<2)>>2];if((c[n>>2]|0)!=(c[o>>2]|0)){c:do if((c[(c[c[k>>2]>>2]|0)+(c[o>>2]<<2)>>2]|0)==-100){c[x>>2]=ex(c[z>>2]|0,c[o>>2]|0)|0;c[(c[c[k>>2]>>2]|0)+(c[o>>2]<<2)>>2]=-1;c[y>>2]=(c[y>>2]|0)+1;c[s>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[s>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break c;if((c[o>>2]|0)!=(c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]|0)?(c[(c[c[k>>2]>>2]|0)+(c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]<<2)>>2]|0)==-100:0){c[w>>2]=dx(c[z>>2]|0,c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]|0)|0;bx(c[z>>2]|0,c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]|0,(c[w>>2]|0)+1|0)|0}c[s>>2]=(c[s>>2]|0)+1}}while(0);q=c[m>>2]|0;c[q>>2]=(c[q>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}}r=c[m>>2]|0;c[r>>2]=(c[r>>2]|0)+A;ax(c[z>>2]|0);i=g;return}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[f>>2];c[k>>2]=c[g>>2];if(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3]){c[e>>2]=-1;l=c[e>>2]|0;i=d;return l|0}if(+h[(c[j>>2]|0)+8>>3]<+h[(c[k>>2]|0)+8>>3]){c[e>>2]=1;l=c[e>>2]|0;i=d;return l|0}else{c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}return 0}function $w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=cK(28)|0;c[c[g>>2]>>2]=0;c[(c[g>>2]|0)+4>>2]=c[e>>2];c[(c[g>>2]|0)+8>>2]=c[f>>2];c[(c[g>>2]|0)+12>>2]=-1;b=cK((c[f>>2]|0)+1<<2)|0;c[(c[g>>2]|0)+16>>2]=b;c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[f>>2]|0)+1|0))break;c[(c[(c[g>>2]|0)+16>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}f=cK((c[e>>2]|0)+1<<2)|0;c[(c[g>>2]|0)+20>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[e>>2]|0)+1|0))break;c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]=0;c[h>>2]=(c[h>>2]|0)+1}f=cK((c[e>>2]|0)+1<<2)|0;c[(c[g>>2]|0)+24>>2]=f;c[h>>2]=0;while(1){if((c[h>>2]|0)>=((c[e>>2]|0)+1|0))break;c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>2]<<2)>>2]=-999;c[h>>2]=(c[h>>2]|0)+1}i=d;return c[g>>2]|0}function ax(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+16>>2]|0){c[e>>2]=0;while(1){if((c[e>>2]|0)>=((c[(c[d>>2]|0)+8>>2]|0)+1|0))break;uy(c[(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<2)>>2]|0,96);c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+16>>2]|0)}if(c[(c[d>>2]|0)+20>>2]|0)O4(c[(c[d>>2]|0)+20>>2]|0);O4(c[(c[d>>2]|0)+24>>2]|0);O4(c[d>>2]|0);i=b;return}function bx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if(!(c[g>>2]|0))La(176691,133234,69,133250);if((c[j>>2]|0)>(c[(c[g>>2]|0)+8>>2]|0))La(133269,133234,70,133250);if(c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]|0){c[k>>2]=c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2];c[m>>2]=c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>2]<<2)>>2];c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]=0;d=c[g>>2]|0;c[d>>2]=(c[d>>2]|0)+-1;xy(c[k>>2]|0,96,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]<<2)|0);c[f>>2]=bx(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;n=c[f>>2]|0;i=e;return n|0}m=c[g>>2]|0;c[m>>2]=(c[m>>2]|0)+1;if((c[j>>2]|0)>(c[(c[g>>2]|0)+12>>2]|0))c[(c[g>>2]|0)+12>>2]=c[j>>2];c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>2]<<2)>>2]=c[j>>2];c[l>>2]=cK(4)|0;c[c[l>>2]>>2]=c[h>>2];m=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[j>>2]<<2)>>2]|0;c[k>>2]=m;if(m){m=vy(c[k>>2]|0,c[l>>2]|0)|0;c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]=m;c[(c[(c[g>>2]|0)+16>>2]|0)+(c[j>>2]<<2)>>2]=m}else{m=ty(c[l>>2]|0)|0;c[(c[(c[g>>2]|0)+20>>2]|0)+(c[h>>2]<<2)>>2]=m;c[(c[(c[g>>2]|0)+16>>2]|0)+(c[j>>2]<<2)>>2]=m}c[f>>2]=c[g>>2];n=c[f>>2]|0;i=e;return n|0}function cx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[g>>2]|0)!=0?(c[c[g>>2]>>2]|0)>0:0){d=c[(c[g>>2]|0)+12>>2]|0;c[k>>2]=d;c[c[j>>2]>>2]=d;d=c[g>>2]|0;c[d>>2]=(c[d>>2]|0)+-1;c[l>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2];c[m>>2]=wy(c[l>>2]|0)|0;c[c[h>>2]>>2]=c[c[m>>2]>>2];xy(c[l>>2]|0,96,(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)|0);if(!(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]|0)){while(1){if((c[k>>2]|0)>=0)n=(c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]|0)!=0^1;else n=0;o=c[k>>2]|0;if(!n)break;c[k>>2]=o+-1}c[(c[g>>2]|0)+12>>2]=o}c[(c[(c[g>>2]|0)+20>>2]|0)+(c[c[h>>2]>>2]<<2)>>2]=0;c[(c[(c[g>>2]|0)+24>>2]|0)+(c[c[h>>2]>>2]<<2)>>2]=-999;c[f>>2]=1;p=c[f>>2]|0;i=e;return p|0}c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}function dx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return c[(c[(c[e>>2]|0)+24>>2]|0)+(c[f>>2]<<2)>>2]|0}function ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)!=0?(c[c[f>>2]>>2]|0)>0:0){c[h>>2]=c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2];b=c[f>>2]|0;c[b>>2]=(c[b>>2]|0)+-1;c[k>>2]=c[(c[(c[f>>2]|0)+20>>2]|0)+(c[g>>2]<<2)>>2];xy(c[k>>2]|0,96,(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>2]<<2)|0);k=c[h>>2]|0;h=c[(c[f>>2]|0)+12>>2]|0;c[j>>2]=h;if((k|0)==(h|0)?(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[j>>2]<<2)>>2]|0)==0:0){while(1){if((c[j>>2]|0)>=0)l=(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[j>>2]<<2)>>2]|0)!=0^1;else l=0;m=c[j>>2]|0;if(!l)break;c[j>>2]=m+-1}c[(c[f>>2]|0)+12>>2]=m}c[(c[(c[f>>2]|0)+20>>2]|0)+(c[g>>2]<<2)>>2]=0;c[(c[(c[f>>2]|0)+24>>2]|0)+(c[g>>2]<<2)>>2]=-999;c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}function fx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;e=i;i=i+96|0;f=e+80|0;g=e+76|0;j=e+72|0;k=e+68|0;l=e+64|0;m=e+60|0;n=e+56|0;o=e+52|0;p=e+48|0;q=e+44|0;r=e+40|0;s=e+36|0;t=e+32|0;u=e+24|0;v=e+16|0;w=e+8|0;x=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[t>>2]=0;if(!(Ov(c[f>>2]|0,0)|0))La(133286,133322,262,133337);c[k>>2]=Pv(c[f>>2]|0)|0;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[m>>2]=c[(c[k>>2]|0)+24>>2];if((c[(c[k>>2]|0)+16>>2]|0)!=1){O4(c[(c[k>>2]|0)+28>>2]|0);c[(c[k>>2]|0)+16>>2]=1;f=cK(c[(c[k>>2]|0)+8>>2]<<3)|0;c[(c[k>>2]|0)+28>>2]=f}c[s>>2]=c[(c[k>>2]|0)+28>>2];c[t>>2]=cK(c[c[k>>2]>>2]<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[k>>2]>>2]|0))break;c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]=-1;c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;a:while(1){if((c[n>>2]|0)>=(c[c[k>>2]>>2]|0))break;h[v>>3]=+((c[(c[l>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[n>>2]<<2)>>2]|0)|0);c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]=c[n>>2];c[o>>2]=c[(c[l>>2]|0)+(c[n>>2]<<2)>>2];while(1){y=c[n>>2]|0;if((c[o>>2]|0)>=(c[(c[l>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break;if((y|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0))c[(c[t>>2]|0)+(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]<<2)>>2]=c[n>>2];c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=c[(c[l>>2]|0)+(y<<2)>>2];while(1){if((c[o>>2]|0)>=(c[(c[l>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break;c[p>>2]=c[(c[m>>2]|0)+(c[o>>2]<<2)>>2];if((c[n>>2]|0)!=(c[p>>2]|0)){h[u>>3]=+h[v>>3]+ +((c[(c[l>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[p>>2]<<2)>>2]|0)|0);c[q>>2]=c[(c[l>>2]|0)+(c[p>>2]<<2)>>2];while(1){if((c[q>>2]|0)>=(c[(c[l>>2]|0)+((c[p>>2]|0)+1<<2)>>2]|0))break;if((c[(c[t>>2]|0)+(c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]<<2)>>2]|0)==(c[n>>2]|0))h[u>>3]=+h[u>>3]+-1.0;c[q>>2]=(c[q>>2]|0)+1}h[(c[s>>2]|0)+(c[o>>2]<<3)>>3]=+h[u>>3];if(!(+h[u>>3]>0.0)){z=24;break a}}c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}if((z|0)==24)La(133359,133322,292,133337);h[w>>3]=0.0;h[x>>3]=0.0;c[r>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[k>>2]>>2]|0))break;c[o>>2]=c[(c[l>>2]|0)+(c[n>>2]<<2)>>2];while(1){A=c[n>>2]|0;if((c[o>>2]|0)>=(c[(c[l>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break;if((A|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)){c[r>>2]=(c[r>>2]|0)+1;B=+zw(c[j>>2]|0,c[g>>2]|0,c[n>>2]|0,c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0);h[w>>3]=+h[w>>3]+B;h[x>>3]=+h[x>>3]+ +h[(c[s>>2]|0)+(c[o>>2]<<3)>>3]}c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=A+1}h[w>>3]=+h[w>>3]/+(c[r>>2]|0);h[x>>3]=+h[x>>3]/+(c[r>>2]|0);h[w>>3]=+h[w>>3]/+h[x>>3];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[c[k>>2]>>2]|0))break;c[o>>2]=c[(c[l>>2]|0)+(c[n>>2]<<2)>>2];while(1){C=c[n>>2]|0;if((c[o>>2]|0)>=(c[(c[l>>2]|0)+((c[n>>2]|0)+1<<2)>>2]|0))break;if((C|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0))h[(c[s>>2]|0)+(c[o>>2]<<3)>>3]=+h[w>>3]*+h[(c[s>>2]|0)+(c[o>>2]<<3)>>3];c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=C+1}i=e;return c[k>>2]|0}function gx(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0;g=i;i=i+176|0;j=g+64|0;k=g+56|0;l=g+160|0;m=g+156|0;n=g+152|0;o=g+48|0;p=g+148|0;q=g+144|0;r=g+140|0;s=g+136|0;t=g+132|0;u=g+128|0;v=g+124|0;w=g+120|0;x=g+116|0;y=g+112|0;z=g+108|0;A=g+104|0;B=g+100|0;C=g+96|0;D=g+92|0;E=g+88|0;F=g+84|0;G=g+80|0;H=g+76|0;I=g+72|0;J=g+40|0;K=g+32|0;L=g+24|0;M=g+16|0;N=g+8|0;Q=g;R=g+68|0;c[m>>2]=a;c[n>>2]=b;h[o>>3]=d;c[p>>2]=e;c[q>>2]=f;c[w>>2]=c[c[m>>2]>>2];c[x>>2]=c[(c[m>>2]|0)+20>>2];c[y>>2]=c[(c[m>>2]|0)+24>>2];h[M>>3]=0.0;h[N>>3]=0.0;h[Q>>3]=0.0;if(!(Ov(c[m>>2]|0,0)|0))La(133286,133322,335,133367);c[R>>2]=fx(c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;c[r>>2]=cK(56)|0;h[(c[r>>2]|0)+32>>3]=1.0;c[(c[r>>2]|0)+20>>2]=0;c[(c[r>>2]|0)+24>>2]=0;h[(c[r>>2]|0)+40>>3]=.01;f=~~+O(+(+(c[c[m>>2]>>2]|0)));c[(c[r>>2]|0)+48>>2]=f;f=cK(c[w>>2]<<3)|0;c[(c[r>>2]|0)+12>>2]=f;c[H>>2]=f;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;h[(c[(c[r>>2]|0)+12>>2]|0)+(c[s>>2]<<3)>>3]=+h[o>>3];c[s>>2]=(c[s>>2]|0)+1}c[D>>2]=cK(c[w>>2]<<2)|0;c[I>>2]=cK(c[w>>2]<<3)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;h[(c[I>>2]|0)+(c[s>>2]<<3)>>3]=0.0;c[E>>2]=0;c[t>>2]=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[x>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;if((c[s>>2]|0)!=(c[(c[y>>2]|0)+(c[t>>2]<<2)>>2]|0)){d=+zw(c[p>>2]|0,c[n>>2]|0,c[s>>2]|0,c[(c[y>>2]|0)+(c[t>>2]<<2)>>2]|0);o=(c[I>>2]|0)+(c[s>>2]<<3)|0;h[o>>3]=+h[o>>3]+d;c[E>>2]=(c[E>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}if((c[E>>2]|0)<=0){S=14;break}o=(c[I>>2]|0)+(c[s>>2]<<3)|0;h[o>>3]=+h[o>>3]/+(c[E>>2]|0);c[s>>2]=(c[s>>2]|0)+1}if((S|0)==14)La(133399,133322,360,133367);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;c[(c[D>>2]|0)+(c[s>>2]<<2)>>2]=-1;c[s>>2]=(c[s>>2]|0)+1}c[E>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[w>>2]|0))break;c[(c[D>>2]|0)+(c[s>>2]<<2)>>2]=c[s>>2];c[t>>2]=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[x>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[u>>2]=c[(c[y>>2]|0)+(c[t>>2]<<2)>>2];if((c[(c[D>>2]|0)+(c[u>>2]<<2)>>2]|0)!=(c[s>>2]|0)){c[(c[D>>2]|0)+(c[u>>2]<<2)>>2]=c[s>>2];c[E>>2]=(c[E>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[x>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[u>>2]=c[(c[y>>2]|0)+(c[t>>2]<<2)>>2];c[v>>2]=c[(c[x>>2]|0)+(c[u>>2]<<2)>>2];while(1){if((c[v>>2]|0)>=(c[(c[x>>2]|0)+((c[u>>2]|0)+1<<2)>>2]|0))break;if((c[(c[D>>2]|0)+(c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]<<2)>>2]|0)!=(c[s>>2]|0)){c[(c[D>>2]|0)+(c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]<<2)>>2]=c[s>>2];c[E>>2]=(c[E>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[s>>2]=(c[s>>2]|0)+1}o=Nv(c[w>>2]|0,c[w>>2]|0,(c[E>>2]|0)+(c[w>>2]|0)|0,1,1)|0;c[(c[r>>2]|0)+4>>2]=o;o=Nv(c[w>>2]|0,c[w>>2]|0,(c[E>>2]|0)+(c[w>>2]|0)|0,1,1)|0;c[(c[r>>2]|0)+8>>2]=o;if((c[(c[r>>2]|0)+4>>2]|0)!=0?(c[(c[r>>2]|0)+8>>2]|0)!=0:0){c[z>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+20>>2];c[A>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+24>>2];c[G>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+28>>2];c[F>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+28>>2];c[B>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+20>>2];c[C>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2];c[c[B>>2]>>2]=0;c[c[z>>2]>>2]=0;c[E>>2]=0;c[s>>2]=0;a:while(1){if((c[s>>2]|0)>=(c[w>>2]|0)){S=68;break}c[(c[D>>2]|0)+(c[s>>2]<<2)>>2]=(c[s>>2]|0)+(c[w>>2]|0);h[K>>3]=0.0;h[J>>3]=0.0;c[t>>2]=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[x>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[u>>2]=c[(c[y>>2]|0)+(c[t>>2]<<2)>>2];if((c[(c[D>>2]|0)+(c[u>>2]<<2)>>2]|0)!=((c[s>>2]|0)+(c[w>>2]|0)|0)){c[(c[D>>2]|0)+(c[u>>2]<<2)>>2]=(c[s>>2]|0)+(c[w>>2]|0);c[(c[A>>2]|0)+(c[E>>2]<<2)>>2]=c[u>>2];do if(!(c[q>>2]|0))h[L>>3]=1.0;else{if((c[q>>2]|0)==1){h[L>>3]=(+h[(c[I>>2]|0)+(c[s>>2]<<3)>>3]+ +h[(c[I>>2]|0)+(c[u>>2]<<3)>>3])*.5;break}if((c[q>>2]|0)!=2){S=49;break a}h[L>>3]=+P(+(+yw(c[p>>2]|0,c[n>>2]|0,c[s>>2]|0,c[u>>2]|0)),.4)}while(0);h[(c[G>>2]|0)+(c[E>>2]<<3)>>3]=-1.0/(+h[L>>3]*+h[L>>3]);h[K>>3]=+h[K>>3]+ +h[(c[G>>2]|0)+(c[E>>2]<<3)>>3];c[(c[C>>2]|0)+(c[E>>2]<<2)>>2]=c[u>>2];h[(c[F>>2]|0)+(c[E>>2]<<3)>>3]=+h[(c[G>>2]|0)+(c[E>>2]<<3)>>3]*+h[L>>3];d=+h[(c[F>>2]|0)+(c[E>>2]<<3)>>3];T=d*+zw(c[p>>2]|0,c[n>>2]|0,c[s>>2]|0,c[u>>2]|0);h[N>>3]=+h[N>>3]+T;h[Q>>3]=+h[Q>>3]+ +h[(c[F>>2]|0)+(c[E>>2]<<3)>>3]*+h[L>>3];h[J>>3]=+h[J>>3]+ +h[(c[F>>2]|0)+(c[E>>2]<<3)>>3];c[E>>2]=(c[E>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=c[(c[x>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[x>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[u>>2]=c[(c[y>>2]|0)+(c[t>>2]<<2)>>2];c[v>>2]=c[(c[x>>2]|0)+(c[u>>2]<<2)>>2];while(1){if((c[v>>2]|0)>=(c[(c[x>>2]|0)+((c[u>>2]|0)+1<<2)>>2]|0))break;if((c[(c[D>>2]|0)+(c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]<<2)>>2]|0)!=((c[s>>2]|0)+(c[w>>2]|0)|0)){c[(c[D>>2]|0)+(c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]<<2)>>2]=(c[s>>2]|0)+(c[w>>2]|0);do if(!(c[q>>2]|0))h[L>>3]=2.0;else{if((c[q>>2]|0)==1){h[L>>3]=(+h[(c[I>>2]|0)+(c[s>>2]<<3)>>3]+ +h[(c[I>>2]|0)+(c[u>>2]<<3)>>3]*2.0+ +h[(c[I>>2]|0)+(c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]<<3)>>3])*.5;break}if((c[q>>2]|0)!=2){S=63;break a}h[L>>3]=+P(+(+yw(c[p>>2]|0,c[n>>2]|0,c[s>>2]|0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0)),.4)}while(0);c[(c[A>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+(c[v>>2]<<2)>>2];h[(c[G>>2]|0)+(c[E>>2]<<3)>>3]=-1.0/(+h[L>>3]*+h[L>>3]);h[K>>3]=+h[K>>3]+ +h[(c[G>>2]|0)+(c[E>>2]<<3)>>3];c[(c[C>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[y>>2]|0)+(c[v>>2]<<2)>>2];h[(c[F>>2]|0)+(c[E>>2]<<3)>>3]=+h[(c[G>>2]|0)+(c[E>>2]<<3)>>3]*+h[L>>3];T=+h[(c[F>>2]|0)+(c[E>>2]<<3)>>3];d=T*+zw(c[p>>2]|0,c[n>>2]|0,c[(c[y>>2]|0)+(c[v>>2]<<2)>>2]|0,c[u>>2]|0);h[N>>3]=+h[N>>3]+d;h[Q>>3]=+h[Q>>3]+ +h[(c[F>>2]|0)+(c[E>>2]<<3)>>3]*+h[L>>3];h[J>>3]=+h[J>>3]+ +h[(c[F>>2]|0)+(c[E>>2]<<3)>>3];c[E>>2]=(c[E>>2]|0)+1}c[v>>2]=(c[v>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[A>>2]|0)+(c[E>>2]<<2)>>2]=c[s>>2];o=(c[H>>2]|0)+(c[s>>2]<<3)|0;h[o>>3]=+h[o>>3]*-+h[K>>3];h[(c[G>>2]|0)+(c[E>>2]<<3)>>3]=-+h[K>>3]+ +h[(c[H>>2]|0)+(c[s>>2]<<3)>>3];c[(c[C>>2]|0)+(c[E>>2]<<2)>>2]=c[s>>2];h[(c[F>>2]|0)+(c[E>>2]<<3)>>3]=-+h[J>>3];c[E>>2]=(c[E>>2]|0)+1;c[(c[z>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[E>>2];c[(c[B>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[E>>2];c[s>>2]=(c[s>>2]|0)+1}if((S|0)==49){Y2(c[24742]|0,133406,k)|0;La(176099,133322,420,133367)}else if((S|0)==63){Y2(c[24742]|0,133406,j)|0;La(176099,133322,462,133367)}else if((S|0)==68){h[M>>3]=+h[N>>3]/+h[Q>>3];c[s>>2]=0;while(1){U=+h[M>>3];if((c[s>>2]|0)>=(c[E>>2]|0))break;Q=(c[F>>2]|0)+(c[s>>2]<<3)|0;h[Q>>3]=+h[Q>>3]*U;c[s>>2]=(c[s>>2]|0)+1}h[(c[r>>2]|0)+32>>3]=U;c[(c[(c[r>>2]|0)+4>>2]|0)+8>>2]=c[E>>2];c[(c[(c[r>>2]|0)+8>>2]|0)+8>>2]=c[E>>2];O4(c[D>>2]|0);O4(c[I>>2]|0);Lv(c[R>>2]|0);c[l>>2]=c[r>>2];V=c[l>>2]|0;i=g;return V|0}}hx(c[r>>2]|0);c[l>>2]=0;V=c[l>>2]|0;i=g;return V|0}function hx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+4>>2]|0)Lv(c[(c[d>>2]|0)+4>>2]|0);if(c[(c[d>>2]|0)+8>>2]|0)Lv(c[(c[d>>2]|0)+8>>2]|0);if(c[(c[d>>2]|0)+12>>2]|0)O4(c[(c[d>>2]|0)+12>>2]|0);if(c[(c[d>>2]|0)+20>>2]|0)Bb[c[(c[d>>2]|0)+16>>2]&127](c[(c[d>>2]|0)+20>>2]|0);O4(c[d>>2]|0);i=b;return}function ix(a,b,d,e,f,g){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0.0,R=0,S=0.0;j=i;i=i+160|0;k=j+148|0;l=j+144|0;m=j+140|0;n=j+56|0;o=j+136|0;p=j+132|0;q=j+128|0;r=j+124|0;s=j+120|0;t=j+116|0;u=j+112|0;v=j+108|0;w=j+104|0;x=j+100|0;y=j+96|0;z=j+92|0;A=j+88|0;B=j+84|0;C=j+80|0;D=j+76|0;E=j+72|0;F=j+68|0;G=j+48|0;H=j+40|0;I=j+64|0;J=j+32|0;K=j+24|0;L=j+16|0;M=j+8|0;N=j;c[l>>2]=a;c[m>>2]=b;h[n>>3]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[v>>2]=c[c[l>>2]>>2];h[K>>3]=0.0;h[L>>3]=0.0;h[M>>3]=0.0;h[N>>3]=0.0;if(!(Ov(c[l>>2]|0,0)|0))La(133436,133322,527,133503);if((c[(c[l>>2]|0)+16>>2]|0)!=1)La(133436,133322,527,133503);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(_(c[v>>2]|0,c[m>>2]|0)|0))break;h[N>>3]=+h[N>>3]+ +h[(c[o>>2]|0)+(c[s>>2]<<3)>>3]*+h[(c[o>>2]|0)+(c[s>>2]<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}a:do if(+h[N>>3]==0.0){c[s>>2]=0;while(1){if((c[s>>2]|0)>=(_(c[v>>2]|0,c[m>>2]|0)|0))break a;d=+rw()*72.0;h[(c[o>>2]|0)+(c[s>>2]<<3)>>3]=d;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[w>>2]=c[(c[l>>2]|0)+20>>2];c[x>>2]=c[(c[l>>2]|0)+24>>2];c[I>>2]=c[(c[l>>2]|0)+28>>2];c[r>>2]=cK(56)|0;h[(c[r>>2]|0)+32>>3]=1.0;c[(c[r>>2]|0)+20>>2]=0;c[(c[r>>2]|0)+24>>2]=0;c[c[r>>2]>>2]=c[l>>2];h[(c[r>>2]|0)+40>>3]=.01;N=~~+O(+(+(c[c[l>>2]>>2]|0)));c[(c[r>>2]|0)+48>>2]=N;N=cK(c[v>>2]<<3)|0;c[(c[r>>2]|0)+12>>2]=N;c[F>>2]=N;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[v>>2]|0))break;h[(c[(c[r>>2]|0)+12>>2]|0)+(c[s>>2]<<3)>>3]=+h[n>>3];c[s>>2]=(c[s>>2]|0)+1}c[C>>2]=c[(c[l>>2]|0)+8>>2];l=Nv(c[v>>2]|0,c[v>>2]|0,(c[C>>2]|0)+(c[v>>2]|0)|0,1,1)|0;c[(c[r>>2]|0)+4>>2]=l;l=Nv(c[v>>2]|0,c[v>>2]|0,(c[C>>2]|0)+(c[v>>2]|0)|0,1,1)|0;c[(c[r>>2]|0)+8>>2]=l;if((c[(c[r>>2]|0)+4>>2]|0)!=0?(c[(c[r>>2]|0)+8>>2]|0)!=0:0){c[y>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+20>>2];c[z>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+24>>2];c[A>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+20>>2];c[B>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+24>>2];c[E>>2]=c[(c[(c[r>>2]|0)+4>>2]|0)+28>>2];c[D>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+28>>2];c[c[A>>2]>>2]=0;c[c[y>>2]>>2]=0;c[C>>2]=0;c[s>>2]=0;b:while(1){if((c[s>>2]|0)>=(c[v>>2]|0))break;h[H>>3]=0.0;h[G>>3]=0.0;c[t>>2]=c[(c[w>>2]|0)+(c[s>>2]<<2)>>2];while(1){if((c[t>>2]|0)>=(c[(c[w>>2]|0)+((c[s>>2]|0)+1<<2)>>2]|0))break;c[u>>2]=c[(c[x>>2]|0)+(c[t>>2]<<2)>>2];if((c[u>>2]|0)!=(c[s>>2]|0)){c[(c[z>>2]|0)+(c[C>>2]<<2)>>2]=c[u>>2];h[J>>3]=+h[(c[I>>2]|0)+(c[t>>2]<<3)>>3];c:do switch(c[p>>2]|0){case 2:{if(+h[J>>3]*+h[J>>3]==0.0){h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-1.0e5;break c}else{h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-1.0/(+h[J>>3]*+h[J>>3]);break c}break}case 1:{if(+h[J>>3]*+h[J>>3]==0.0){h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-1.0e5;break c}else{h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-1.0/+h[J>>3];break c}break}case 0:{h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-1.0;break}default:{P=30;break b}}while(0);h[H>>3]=+h[H>>3]+ +h[(c[E>>2]|0)+(c[C>>2]<<3)>>3];c[(c[B>>2]|0)+(c[C>>2]<<2)>>2]=c[u>>2];h[(c[D>>2]|0)+(c[C>>2]<<3)>>3]=+h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]*+h[J>>3];d=+h[(c[D>>2]|0)+(c[C>>2]<<3)>>3];Q=d*+zw(c[o>>2]|0,c[m>>2]|0,c[s>>2]|0,c[u>>2]|0);h[L>>3]=+h[L>>3]+Q;h[M>>3]=+h[M>>3]+ +h[(c[D>>2]|0)+(c[C>>2]<<3)>>3]*+h[J>>3];h[G>>3]=+h[G>>3]+ +h[(c[D>>2]|0)+(c[C>>2]<<3)>>3];c[C>>2]=(c[C>>2]|0)+1}c[t>>2]=(c[t>>2]|0)+1}c[(c[z>>2]|0)+(c[C>>2]<<2)>>2]=c[s>>2];l=(c[F>>2]|0)+(c[s>>2]<<3)|0;h[l>>3]=+h[l>>3]*-+h[H>>3];h[(c[E>>2]|0)+(c[C>>2]<<3)>>3]=-+h[H>>3]+ +h[(c[F>>2]|0)+(c[s>>2]<<3)>>3];c[(c[B>>2]|0)+(c[C>>2]<<2)>>2]=c[s>>2];h[(c[D>>2]|0)+(c[C>>2]<<3)>>3]=-+h[G>>3];c[C>>2]=(c[C>>2]|0)+1;c[(c[y>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[C>>2];c[(c[A>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[C>>2];c[s>>2]=(c[s>>2]|0)+1}if((P|0)==30)La(176099,133322,593,133503);if(c[q>>2]|0)h[K>>3]=+h[L>>3]/+h[M>>3];else h[K>>3]=1.0;if(+h[K>>3]==0.0){c[k>>2]=0;R=c[k>>2]|0;i=j;return R|0}c[s>>2]=0;while(1){S=+h[K>>3];if((c[s>>2]|0)>=(c[C>>2]|0))break;M=(c[D>>2]|0)+(c[s>>2]<<3)|0;h[M>>3]=+h[M>>3]*S;c[s>>2]=(c[s>>2]|0)+1}h[(c[r>>2]|0)+32>>3]=S;c[(c[(c[r>>2]|0)+4>>2]|0)+8>>2]=c[C>>2];c[(c[(c[r>>2]|0)+8>>2]|0)+8>>2]=c[C>>2];c[k>>2]=c[r>>2];R=c[k>>2]|0;i=j;return R|0}hx(c[r>>2]|0);c[k>>2]=0;R=c[k>>2]|0;i=j;return R|0}function jx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;hx(c[d>>2]|0);i=b;return}function kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;h[n>>3]=f;f=+lx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,+h[n>>3]);i=g;return +f}function lx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0.0;g=i;i=i+176|0;j=g+164|0;k=g+160|0;l=g+156|0;m=g+152|0;n=g+56|0;o=g+148|0;p=g+144|0;q=g+140|0;r=g+136|0;s=g+132|0;t=g+128|0;u=g+124|0;v=g+120|0;w=g+116|0;x=g+112|0;y=g+108|0;z=g+104|0;A=g+100|0;B=g+96|0;C=g+92|0;D=g+88|0;E=g+84|0;F=g+80|0;G=g+76|0;H=g+72|0;I=g+48|0;J=g+40|0;K=g+68|0;L=g+32|0;M=g+24|0;N=g+16|0;P=g+64|0;Q=g+8|0;R=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;h[n>>3]=f;c[o>>2]=c[(c[j>>2]|0)+4>>2];c[p>>2]=c[(c[j>>2]|0)+8>>2];c[q>>2]=0;c[A>>2]=0;c[B>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;h[J>>3]=1.0;c[K>>2]=c[(c[j>>2]|0)+12>>2];h[M>>3]=0.0;h[N>>3]=0.0;c[P>>2]=0;c[q>>2]=Pv(c[p>>2]|0)|0;c[u>>2]=c[c[o>>2]>>2];c[G>>2]=cK((_(c[k>>2]|0,c[u>>2]|0)|0)<<3)|0;a:do if((c[G>>2]|0)!=0?(e=c[G>>2]|0,Z4(e|0,c[l>>2]|0,_(c[k>>2]<<3,c[u>>2]|0)|0)|0,c[G>>2]=e,c[F>>2]=cK((_(c[k>>2]|0,c[u>>2]|0)|0)<<3)|0,(c[F>>2]|0)!=0):0){c[v>>2]=c[(c[p>>2]|0)+20>>2];c[w>>2]=c[(c[p>>2]|0)+24>>2];c[E>>2]=c[(c[p>>2]|0)+28>>2];c[D>>2]=c[(c[q>>2]|0)+28>>2];c[C>>2]=c[(c[o>>2]|0)+28>>2];c[x>>2]=c[(c[o>>2]|0)+20>>2];c[y>>2]=c[(c[o>>2]|0)+24>>2];e=c[j>>2]|0;if((c[(c[j>>2]|0)+24>>2]|0)==1){tx(c[e+20>>2]|0,c[u>>2]|0,c[k>>2]|0,c[l>>2]|0,P,H);if(c[P>>2]|0)c[o>>2]=Qv(c[o>>2]|0,c[P>>2]|0)|0}else if((c[e+24>>2]|0)==2){h[M>>3]=+h[c[(c[j>>2]|0)+20>>2]>>3];h[N>>3]=+h[(c[(c[j>>2]|0)+20>>2]|0)+8>>3]}b:while(1){e=c[B>>2]|0;c[B>>2]=e+1;if((e|0)>=(c[m>>2]|0))break a;if(!(+h[J>>3]>+h[n>>3]))break a;e=(c[(c[j>>2]|0)+24>>2]|0)!=4;c[r>>2]=0;c:do if(e){while(1){if((c[r>>2]|0)>=(c[u>>2]|0))break;c[z>>2]=-1;h[I>>3]=0.0;c[s>>2]=c[(c[v>>2]|0)+(c[r>>2]<<2)>>2];while(1){if((c[s>>2]|0)>=(c[(c[v>>2]|0)+((c[r>>2]|0)+1<<2)>>2]|0))break;if((c[r>>2]|0)==(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0))c[z>>2]=c[s>>2];else{h[R>>3]=+zw(c[l>>2]|0,c[k>>2]|0,c[r>>2]|0,c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0);if(+h[(c[E>>2]|0)+(c[s>>2]<<3)>>3]==0.0)h[(c[D>>2]|0)+(c[s>>2]<<3)>>3]=0.0;else{if(+h[R>>3]==0.0){h[Q>>3]=+h[(c[E>>2]|0)+(c[s>>2]<<3)>>3]/+h[(c[C>>2]|0)+(c[s>>2]<<3)>>3];c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[k>>2]|0))break;f=(+rw()+.0001)*.0001;d=_(c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0,c[k>>2]|0)|0;b=(c[l>>2]|0)+(d+(c[t>>2]|0)<<3)|0;h[b>>3]=+h[b>>3]+f*+h[Q>>3];c[t>>2]=(c[t>>2]|0)+1}h[R>>3]=+zw(c[l>>2]|0,c[k>>2]|0,c[r>>2]|0,c[(c[w>>2]|0)+(c[s>>2]<<2)>>2]|0)}h[(c[D>>2]|0)+(c[s>>2]<<3)>>3]=+h[(c[E>>2]|0)+(c[s>>2]<<3)>>3]/+h[R>>3]}h[I>>3]=+h[I>>3]+ +h[(c[D>>2]|0)+(c[s>>2]<<3)>>3]}c[s>>2]=(c[s>>2]|0)+1}if((c[z>>2]|0)<0)break b;h[(c[D>>2]|0)+(c[z>>2]<<3)>>3]=-+h[I>>3];c[r>>2]=(c[r>>2]|0)+1}Wv(c[q>>2]|0,0,c[l>>2]|0,0,F,0,c[k>>2]|0)}else while(1){if((c[r>>2]|0)>=(c[u>>2]|0))break c;c[s>>2]=0;while(1){S=c[r>>2]|0;if((c[s>>2]|0)>=(c[k>>2]|0))break;b=_(S,c[k>>2]|0)|0;h[(c[F>>2]|0)+(b+(c[s>>2]|0)<<3)>>3]=0.0;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=S+1}while(0);d:do if(c[K>>2]|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[u>>2]|0))break d;c[s>>2]=0;while(1){T=c[r>>2]|0;if((c[s>>2]|0)>=(c[k>>2]|0))break;e=_(c[r>>2]|0,c[k>>2]|0)|0;b=_(c[r>>2]|0,c[k>>2]|0)|0;d=(c[F>>2]|0)+(b+(c[s>>2]|0)<<3)|0;h[d>>3]=+h[d>>3]+ +h[(c[K>>2]|0)+(T<<3)>>3]*+h[(c[G>>2]|0)+(e+(c[s>>2]|0)<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=T+1}}while(0);e:do switch(c[(c[j>>2]|0)+24>>2]|0){case 1:{c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[u>>2]|0))break e;c[s>>2]=0;while(1){U=c[r>>2]|0;if((c[s>>2]|0)>=(c[k>>2]|0))break;e=_(U,c[k>>2]|0)|0;d=_(c[r>>2]|0,c[k>>2]|0)|0;b=(c[F>>2]|0)+(d+(c[s>>2]|0)<<3)|0;h[b>>3]=+h[b>>3]+ +h[(c[H>>2]|0)+(e+(c[s>>2]|0)<<3)>>3];c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=U+1}break}case 2:{ux(c[u>>2]|0,c[k>>2]|0,c[l>>2]|0,c[F>>2]|0,+h[M>>3],+h[N>>3]);break}default:{}}while(0);e=c[o>>2]|0;if((c[(c[j>>2]|0)+24>>2]|0)==2)h[L>>3]=+vx(e,+h[M>>3],c[k>>2]|0,c[l>>2]|0,c[F>>2]|0,+h[(c[j>>2]|0)+40>>3],c[(c[j>>2]|0)+48>>2]|0,A);else h[L>>3]=+Ix(e,c[k>>2]|0,c[l>>2]|0,c[F>>2]|0,+h[(c[j>>2]|0)+40>>3],c[(c[j>>2]|0)+48>>2]|0,0,A);if(c[A>>2]|0)break a;f=+wx(c[u>>2]|0,c[k>>2]|0,c[l>>2]|0,c[F>>2]|0);e=_(c[u>>2]|0,c[k>>2]|0)|0;h[J>>3]=f/+O(+(+vw(e,c[l>>2]|0,c[l>>2]|0)));Z4(c[l>>2]|0,c[F>>2]|0,_(c[u>>2]<<3,c[k>>2]|0)|0)|0}La(133540,133322,897,133551)}while(0);Lv(c[q>>2]|0);if(c[P>>2]|0){Lv(c[P>>2]|0);Lv(c[o>>2]|0)}if(c[G>>2]|0)O4(c[G>>2]|0);if(c[F>>2]|0)O4(c[F>>2]|0);if(!(c[H>>2]|0)){V=+h[J>>3];i=g;return +V}O4(c[H>>2]|0);V=+h[J>>3];i=g;return +V}function mx(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,Q=0;g=i;i=i+144|0;j=g+136|0;k=g+132|0;l=g+128|0;m=g+48|0;n=g+124|0;o=g+120|0;p=g+116|0;q=g+112|0;r=g+108|0;s=g+104|0;t=g+100|0;u=g+96|0;v=g+92|0;w=g+88|0;x=g+84|0;y=g+80|0;z=g+76|0;A=g+72|0;B=g+68|0;C=g+64|0;D=g+60|0;E=g+56|0;F=g+40|0;G=g+32|0;H=g+24|0;I=g+16|0;J=g+8|0;K=g;c[k>>2]=a;c[l>>2]=b;h[m>>3]=d;c[n>>2]=e;c[o>>2]=f;c[t>>2]=c[c[k>>2]>>2];c[u>>2]=c[(c[k>>2]|0)+20>>2];c[v>>2]=c[(c[k>>2]|0)+24>>2];h[I>>3]=0.0;h[J>>3]=0.0;h[K>>3]=0.0;if(!(Ov(c[k>>2]|0,0)|0))La(133286,133322,1036,133585);c[B>>2]=cK(c[t>>2]<<3)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[t>>2]|0))break;h[(c[B>>2]|0)+(c[q>>2]<<3)>>3]=0.0;c[z>>2]=0;c[r>>2]=c[(c[u>>2]|0)+(c[q>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[u>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;if((c[q>>2]|0)!=(c[(c[v>>2]|0)+(c[r>>2]<<2)>>2]|0)){d=+zw(c[n>>2]|0,c[l>>2]|0,c[q>>2]|0,c[(c[v>>2]|0)+(c[r>>2]<<2)>>2]|0);f=(c[B>>2]|0)+(c[q>>2]<<3)|0;h[f>>3]=+h[f>>3]+d;c[z>>2]=(c[z>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}if((c[z>>2]|0)<=0){L=11;break}f=(c[B>>2]|0)+(c[q>>2]<<3)|0;h[f>>3]=+h[f>>3]/+(c[z>>2]|0);c[q>>2]=(c[q>>2]|0)+1}if((L|0)==11)La(133399,133322,1048,133585);c[p>>2]=cK(56)|0;h[(c[p>>2]|0)+32>>3]=1.0;c[(c[p>>2]|0)+20>>2]=0;c[(c[p>>2]|0)+24>>2]=0;h[(c[p>>2]|0)+40>>3]=.01;z=~~+O(+(+(c[c[k>>2]>>2]|0)));c[(c[p>>2]|0)+48>>2]=z;z=cK(c[t>>2]<<3)|0;c[(c[p>>2]|0)+12>>2]=z;c[C>>2]=z;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[t>>2]|0))break;h[(c[(c[p>>2]|0)+12>>2]|0)+(c[q>>2]<<3)>>3]=+h[m>>3];c[q>>2]=(c[q>>2]|0)+1}do if((c[t>>2]|0)>2){m=c[t>>2]|0;z=c[l>>2]|0;v=c[n>>2]|0;if(c[o>>2]|0){c[A>>2]=Kx(m,z,v)|0;break}else{c[A>>2]=Lx(m,z,v)|0;break}}else c[A>>2]=Pv(c[k>>2]|0)|0;while(0);o=Qv(c[k>>2]|0,c[A>>2]|0)|0;c[(c[p>>2]|0)+4>>2]=o;Lv(c[A>>2]|0);A=Pv(c[(c[p>>2]|0)+4>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=A;if((c[(c[p>>2]|0)+4>>2]|0)!=0?(c[(c[p>>2]|0)+8>>2]|0)!=0:0){c[w>>2]=c[(c[(c[p>>2]|0)+4>>2]|0)+20>>2];c[x>>2]=c[(c[(c[p>>2]|0)+4>>2]|0)+24>>2];c[E>>2]=c[(c[(c[p>>2]|0)+4>>2]|0)+28>>2];c[D>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+28>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[t>>2]|0))break;h[G>>3]=0.0;h[F>>3]=0.0;c[y>>2]=-1;c[r>>2]=c[(c[w>>2]|0)+(c[q>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[w>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;c[s>>2]=c[(c[x>>2]|0)+(c[r>>2]<<2)>>2];if((c[s>>2]|0)==(c[q>>2]|0))c[y>>2]=c[r>>2];else{h[H>>3]=+P(+(+yw(c[n>>2]|0,c[l>>2]|0,c[q>>2]|0,c[s>>2]|0)),.6);h[(c[E>>2]|0)+(c[r>>2]<<3)>>3]=1.0/(+h[H>>3]*+h[H>>3]);h[G>>3]=+h[G>>3]+ +h[(c[E>>2]|0)+(c[r>>2]<<3)>>3];h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]=+h[(c[E>>2]|0)+(c[r>>2]<<3)>>3]*+h[H>>3];d=+h[(c[D>>2]|0)+(c[r>>2]<<3)>>3];M=d*+zw(c[n>>2]|0,c[l>>2]|0,c[q>>2]|0,c[s>>2]|0);h[J>>3]=+h[J>>3]+M;h[K>>3]=+h[K>>3]+ +h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]*+h[H>>3];h[F>>3]=+h[F>>3]+ +h[(c[D>>2]|0)+(c[r>>2]<<3)>>3]}c[r>>2]=(c[r>>2]|0)+1}A=(c[C>>2]|0)+(c[q>>2]<<3)|0;h[A>>3]=+h[A>>3]*-+h[G>>3];if((c[y>>2]|0)<0){L=33;break}h[(c[E>>2]|0)+(c[y>>2]<<3)>>3]=-+h[G>>3]+ +h[(c[C>>2]|0)+(c[q>>2]<<3)>>3];h[(c[D>>2]|0)+(c[y>>2]<<3)>>3]=-+h[F>>3];c[q>>2]=(c[q>>2]|0)+1}if((L|0)==33)La(133606,133322,1114,133585);h[I>>3]=+h[J>>3]/+h[K>>3];c[q>>2]=0;while(1){N=+h[I>>3];if((c[q>>2]|0)>=(c[(c[w>>2]|0)+(c[t>>2]<<2)>>2]|0))break;K=(c[D>>2]|0)+(c[q>>2]<<3)|0;h[K>>3]=+h[K>>3]*N;c[q>>2]=(c[q>>2]|0)+1}h[(c[p>>2]|0)+32>>3]=N;O4(c[B>>2]|0);c[j>>2]=c[p>>2];Q=c[j>>2]|0;i=g;return Q|0}nx(c[p>>2]|0);c[j>>2]=0;Q=c[j>>2]|0;i=g;return Q|0}function nx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;hx(c[d>>2]|0);i=b;return}function ox(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;+lx(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,50,.001);i=e;return}function px(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0,F=0;f=i;i=i+96|0;g=f+80|0;j=f+76|0;k=f+72|0;l=f+68|0;m=f+64|0;n=f+60|0;o=f+56|0;p=f+52|0;q=f+48|0;r=f+44|0;s=f+40|0;t=f+36|0;u=f+32|0;v=f+28|0;w=f+24|0;x=f+20|0;y=f+16|0;z=f+12|0;A=f+8|0;B=f+4|0;C=f;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[s>>2]=c[c[j>>2]>>2];c[t>>2]=c[(c[j>>2]|0)+20>>2];c[u>>2]=c[(c[j>>2]|0)+24>>2];c[C>>2]=0;if(!(Ov(c[j>>2]|0,0)|0))La(133286,133322,1151,133617);c[C>>2]=fx(c[j>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[A>>2]=c[(c[C>>2]|0)+28>>2];c[n>>2]=cK(8)|0;c[x>>2]=cK(c[s>>2]<<2)|0;c[B>>2]=cK(c[s>>2]<<3)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[s>>2]|0))break;h[(c[B>>2]|0)+(c[o>>2]<<3)>>3]=0.0;c[y>>2]=0;c[p>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;if((c[o>>2]|0)!=(c[(c[u>>2]|0)+(c[p>>2]<<2)>>2]|0)){D=+zw(c[m>>2]|0,c[k>>2]|0,c[o>>2]|0,c[(c[u>>2]|0)+(c[p>>2]<<2)>>2]|0);j=(c[B>>2]|0)+(c[o>>2]<<3)|0;h[j>>3]=+h[j>>3]+D;c[y>>2]=(c[y>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}if((c[y>>2]|0)<=0){E=11;break}j=(c[B>>2]|0)+(c[o>>2]<<3)|0;h[j>>3]=+h[j>>3]/+(c[y>>2]|0);c[o>>2]=(c[o>>2]|0)+1}if((E|0)==11)La(133399,133322,1169,133617);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[s>>2]|0))break;c[(c[x>>2]|0)+(c[o>>2]<<2)>>2]=-1;c[o>>2]=(c[o>>2]|0)+1}c[y>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[s>>2]|0))break;c[(c[x>>2]|0)+(c[o>>2]<<2)>>2]=c[o>>2];c[p>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;c[q>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];if((c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]|0)!=(c[o>>2]|0)){c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]=c[o>>2];c[y>>2]=(c[y>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[p>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;c[q>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];c[r>>2]=c[(c[t>>2]|0)+(c[q>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[t>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;if((c[(c[x>>2]|0)+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]|0)!=(c[o>>2]|0)){c[(c[x>>2]|0)+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]=c[o>>2];c[y>>2]=(c[y>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}E=Nv(c[s>>2]|0,c[s>>2]|0,c[y>>2]|0,1,1)|0;c[c[n>>2]>>2]=E;E=c[n>>2]|0;if(!(c[c[n>>2]>>2]|0)){qx(E);c[g>>2]=0;F=c[g>>2]|0;i=f;return F|0}c[v>>2]=c[(c[E>>2]|0)+20>>2];c[w>>2]=c[(c[c[n>>2]>>2]|0)+24>>2];c[z>>2]=c[(c[c[n>>2]>>2]|0)+28>>2];c[c[v>>2]>>2]=0;c[y>>2]=0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[s>>2]|0))break;c[(c[x>>2]|0)+(c[o>>2]<<2)>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[p>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;c[q>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];if((c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]|0)!=((c[o>>2]|0)+(c[s>>2]|0)|0)){c[(c[x>>2]|0)+(c[q>>2]<<2)>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=c[q>>2];h[(c[z>>2]|0)+(c[y>>2]<<3)>>3]=(+h[(c[B>>2]|0)+(c[o>>2]<<3)>>3]+ +h[(c[B>>2]|0)+(c[q>>2]<<3)>>3])*.5;h[(c[z>>2]|0)+(c[y>>2]<<3)>>3]=+h[(c[A>>2]|0)+(c[p>>2]<<3)>>3];c[y>>2]=(c[y>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[p>>2]=c[(c[t>>2]|0)+(c[o>>2]<<2)>>2];while(1){if((c[p>>2]|0)>=(c[(c[t>>2]|0)+((c[o>>2]|0)+1<<2)>>2]|0))break;c[q>>2]=c[(c[u>>2]|0)+(c[p>>2]<<2)>>2];c[r>>2]=c[(c[t>>2]|0)+(c[q>>2]<<2)>>2];while(1){if((c[r>>2]|0)>=(c[(c[t>>2]|0)+((c[q>>2]|0)+1<<2)>>2]|0))break;if((c[(c[x>>2]|0)+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]|0)!=((c[o>>2]|0)+(c[s>>2]|0)|0)){c[(c[x>>2]|0)+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]<<2)>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=c[(c[u>>2]|0)+(c[r>>2]<<2)>>2];h[(c[z>>2]|0)+(c[y>>2]<<3)>>3]=(+h[(c[B>>2]|0)+(c[o>>2]<<3)>>3]+ +h[(c[B>>2]|0)+(c[q>>2]<<3)>>3]*2.0+ +h[(c[B>>2]|0)+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]<<3)>>3])*.5;h[(c[z>>2]|0)+(c[y>>2]<<3)>>3]=+h[(c[A>>2]|0)+(c[p>>2]<<3)>>3]+ +h[(c[A>>2]|0)+(c[r>>2]<<3)>>3];c[y>>2]=(c[y>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[(c[v>>2]|0)+((c[o>>2]|0)+1<<2)>>2]=c[y>>2];c[o>>2]=(c[o>>2]|0)+1}c[(c[c[n>>2]>>2]|0)+8>>2]=c[y>>2];y=pp()|0;c[(c[n>>2]|0)+4>>2]=y;Z4(c[(c[n>>2]|0)+4>>2]|0,c[l>>2]|0,168)|0;c[(c[(c[n>>2]|0)+4>>2]|0)+16>>2]=0;c[(c[(c[n>>2]|0)+4>>2]|0)+40>>2]=1;l=(c[(c[n>>2]|0)+4>>2]|0)+96|0;h[l>>3]=+h[l>>3]/2.0;c[(c[(c[n>>2]|0)+4>>2]|0)+80>>2]=20;O4(c[x>>2]|0);O4(c[B>>2]|0);Lv(c[C>>2]|0);c[g>>2]=c[n>>2];F=c[g>>2]|0;i=f;return F|0}function qx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[c[d>>2]>>2]|0)Lv(c[c[d>>2]>>2]|0);if(!(c[(c[d>>2]|0)+4>>2]|0)){i=b;return}qp(c[(c[d>>2]|0)+4>>2]|0);i=b;return}function rx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=0;Ep(c[l>>2]|0,c[j>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[k>>2]|0,c[m>>2]|0,n);if(c[n>>2]|0)La(133636,133322,1264,133642);else{i=g;return}}function sx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+48|0;j=h+44|0;k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;u=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[c[o>>2]>>2]=0;switch(c[(c[l>>2]|0)+120>>2]|0){case 5:case 6:{o=c[k>>2]|0;g=c[j>>2]|0;f=c[n>>2]|0;if((c[(c[l>>2]|0)+120>>2]|0)==6)c[p>>2]=mx(o,g,0.0,f,0)|0;else c[p>>2]=mx(o,g,0.0,f,1)|0;ox(c[p>>2]|0,c[j>>2]|0,c[n>>2]|0);nx(c[p>>2]|0);i=h;return}case 2:case 3:case 1:{c[s>>2]=1;do if((c[(c[l>>2]|0)+120>>2]|0)!=1){if((c[(c[l>>2]|0)+120>>2]|0)==2){c[s>>2]=1;break}if((c[(c[l>>2]|0)+120>>2]|0)==3)c[s>>2]=2}else c[s>>2]=0;while(0);c[r>>2]=0;while(1){if((c[r>>2]|0)>=1)break;c[q>>2]=gx(c[k>>2]|0,c[j>>2]|0,.05,c[n>>2]|0,c[s>>2]|0)|0;+lx(c[q>>2]|0,c[j>>2]|0,c[n>>2]|0,50,.001);hx(c[q>>2]|0);c[r>>2]=(c[r>>2]|0)+1}i=h;return}case 4:{c[u>>2]=0;while(1){if((c[u>>2]|0)>=1)break;c[t>>2]=px(c[k>>2]|0,c[j>>2]|0,c[l>>2]|0,c[n>>2]|0)|0;rx(c[t>>2]|0,c[k>>2]|0,c[m>>2]|0,c[j>>2]|0,c[n>>2]|0);qx(c[t>>2]|0);c[u>>2]=(c[u>>2]|0)+1}i=h;return}default:{i=h;return}}}function tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0,P=0,Q=0,R=0;j=i;i=i+128|0;k=j+124|0;l=j+120|0;m=j+116|0;n=j+112|0;o=j+108|0;p=j+104|0;q=j+100|0;r=j+96|0;s=j+92|0;t=j+88|0;u=j+84|0;v=j+80|0;w=j+76|0;x=j+72|0;y=j+68|0;z=j+64|0;A=j+60|0;B=j+56|0;C=j+52|0;D=j+48|0;E=j+44|0;F=j+40|0;G=j+24|0;H=j+16|0;I=j+8|0;J=j+36|0;K=j+32|0;L=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[(c[k>>2]|0)+8>>2];c[r>>2]=c[(c[k>>2]|0)+12>>2];c[s>>2]=c[(c[k>>2]|0)+16>>2];c[t>>2]=c[(c[k>>2]|0)+32>>2];c[u>>2]=c[(c[t>>2]|0)+20>>2];c[v>>2]=c[(c[t>>2]|0)+24>>2];c[D>>2]=c[(c[k>>2]|0)+20>>2];c[E>>2]=c[(c[k>>2]|0)+24>>2];c[F>>2]=c[(c[k>>2]|0)+28>>2];c[J>>2]=0;c[K>>2]=0;h[L>>3]=+h[c[k>>2]>>3];if((c[q>>2]|0)==1|(c[q>>2]|0)==3){if(!(c[D>>2]|0)){if((c[E>>2]|0)!=0|(c[F>>2]|0)!=0)La(133664,133322,694,133681);c[y>>2]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[r>>2]|0))break;c[w>>2]=c[(c[s>>2]|0)+(c[B>>2]<<2)>>2];h[I>>3]=+((c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)|0);c[y>>2]=(c[y>>2]|0)+~~((+h[I>>3]+1.0)*(+h[I>>3]+1.0));c[B>>2]=(c[B>>2]|0)+1}t=cK(c[y>>2]<<2)|0;c[(c[k>>2]|0)+20>>2]=t;c[D>>2]=t;t=cK(c[y>>2]<<2)|0;c[(c[k>>2]|0)+24>>2]=t;c[E>>2]=t;t=cK(c[y>>2]<<3)|0;c[(c[k>>2]|0)+28>>2]=t;c[F>>2]=t}c[y>>2]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[r>>2]|0))break;c[w>>2]=c[(c[s>>2]|0)+(c[B>>2]<<2)>>2];c[x>>2]=c[(c[v>>2]|0)+(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]<<2)>>2];c[A>>2]=c[(c[v>>2]|0)+((c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)+1<<2)>>2];a:do if((c[x>>2]|0)!=(c[A>>2]|0)){h[G>>3]=+yw(c[n>>2]|0,c[m>>2]|0,c[x>>2]|0,c[A>>2]|0);h[G>>3]=+h[G>>3]*+h[G>>3];h[I>>3]=+((c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)|0);h[H>>3]=+h[I>>3]*+h[I>>3];c[(c[D>>2]|0)+(c[y>>2]<<2)>>2]=c[w>>2];c[(c[E>>2]|0)+(c[y>>2]<<2)>>2]=c[w>>2];M=+h[L>>3]/+h[G>>3];t=c[y>>2]|0;c[y>>2]=t+1;h[(c[F>>2]|0)+(t<<3)>>3]=M;h[I>>3]=+h[L>>3]/(+h[I>>3]*+h[G>>3]);h[H>>3]=+h[L>>3]/(+h[H>>3]*+h[G>>3]);c[C>>2]=c[(c[u>>2]|0)+(c[w>>2]<<2)>>2];while(1){N=c[w>>2]|0;if((c[C>>2]|0)>=(c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[(c[D>>2]|0)+(c[y>>2]<<2)>>2]=N;c[(c[E>>2]|0)+(c[y>>2]<<2)>>2]=c[(c[v>>2]|0)+(c[C>>2]<<2)>>2];M=-+h[I>>3];t=c[y>>2]|0;c[y>>2]=t+1;h[(c[F>>2]|0)+(t<<3)>>3]=M;c[C>>2]=(c[C>>2]|0)+1}c[C>>2]=c[(c[u>>2]|0)+(N<<2)>>2];while(1){if((c[C>>2]|0)>=(c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break a;c[x>>2]=c[(c[v>>2]|0)+(c[C>>2]<<2)>>2];c[(c[D>>2]|0)+(c[y>>2]<<2)>>2]=c[x>>2];c[(c[E>>2]|0)+(c[y>>2]<<2)>>2]=c[w>>2];M=-+h[I>>3];t=c[y>>2]|0;c[y>>2]=t+1;h[(c[F>>2]|0)+(t<<3)>>3]=M;c[z>>2]=c[(c[u>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[z>>2]|0)>=(c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[A>>2]=c[(c[v>>2]|0)+(c[z>>2]<<2)>>2];c[(c[D>>2]|0)+(c[y>>2]<<2)>>2]=c[x>>2];c[(c[E>>2]|0)+(c[y>>2]<<2)>>2]=c[A>>2];M=+h[H>>3];t=c[y>>2]|0;c[y>>2]=t+1;h[(c[F>>2]|0)+(t<<3)>>3]=M;c[z>>2]=(c[z>>2]|0)+1}c[C>>2]=(c[C>>2]|0)+1}}while(0);c[B>>2]=(c[B>>2]|0)+1}c[K>>2]=Vv(c[y>>2]|0,c[l>>2]|0,c[l>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,1,8)|0;O=c[K>>2]|0;P=c[o>>2]|0;c[P>>2]=O;Q=c[J>>2]|0;R=c[p>>2]|0;c[R>>2]=Q;i=j;return}if(!((c[q>>2]|0)==2|(c[q>>2]|0)==4)){O=c[K>>2]|0;P=c[o>>2]|0;c[P>>2]=O;Q=c[J>>2]|0;R=c[p>>2]|0;c[R>>2]=Q;i=j;return}do if(!(c[D>>2]|0))if((c[E>>2]|0)!=0|(c[F>>2]|0)!=0)La(133664,133322,736,133681);else{c[y>>2]=c[r>>2];q=cK(c[y>>2]<<2)|0;c[(c[k>>2]|0)+20>>2]=q;c[D>>2]=q;q=cK(c[y>>2]<<2)|0;c[(c[k>>2]|0)+24>>2]=q;c[E>>2]=q;q=cK(c[y>>2]<<3)|0;c[(c[k>>2]|0)+28>>2]=q;c[F>>2]=q;break}while(0);c[J>>2]=cK(_(c[l>>2]<<3,c[m>>2]|0)|0)|0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(_(c[l>>2]|0,c[m>>2]|0)|0))break;h[(c[J>>2]|0)+(c[B>>2]<<3)>>3]=0.0;c[B>>2]=(c[B>>2]|0)+1}c[y>>2]=0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[r>>2]|0))break;c[w>>2]=c[(c[s>>2]|0)+(c[B>>2]<<2)>>2];c[x>>2]=c[(c[v>>2]|0)+(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]<<2)>>2];c[A>>2]=c[(c[v>>2]|0)+((c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)+1<<2)>>2];h[G>>3]=+yw(c[n>>2]|0,c[m>>2]|0,c[x>>2]|0,c[A>>2]|0);c[(c[D>>2]|0)+(c[y>>2]<<2)>>2]=c[w>>2];c[(c[E>>2]|0)+(c[y>>2]<<2)>>2]=c[w>>2];M=+h[L>>3]/+h[G>>3];k=c[y>>2]|0;c[y>>2]=k+1;h[(c[F>>2]|0)+(k<<3)>>3]=M;c[C>>2]=c[(c[u>>2]|0)+(c[w>>2]<<2)>>2];while(1){if((c[C>>2]|0)>=(c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0))break;c[x>>2]=c[(c[v>>2]|0)+(c[C>>2]<<2)>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[m>>2]|0))break;k=_(c[x>>2]|0,c[m>>2]|0)|0;q=_(c[w>>2]|0,c[m>>2]|0)|0;H=(c[J>>2]|0)+(q+(c[z>>2]|0)<<3)|0;h[H>>3]=+h[H>>3]+ +h[(c[n>>2]|0)+(k+(c[z>>2]|0)<<3)>>3];c[z>>2]=(c[z>>2]|0)+1}c[C>>2]=(c[C>>2]|0)+1}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[m>>2]|0))break;k=_(c[w>>2]|0,c[m>>2]|0)|0;H=(c[J>>2]|0)+(k+(c[z>>2]|0)<<3)|0;h[H>>3]=+h[H>>3]*(+h[L>>3]/+h[G>>3]/+((c[(c[u>>2]|0)+((c[w>>2]|0)+1<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[w>>2]<<2)>>2]|0)|0));c[z>>2]=(c[z>>2]|0)+1}c[B>>2]=(c[B>>2]|0)+1}c[K>>2]=Vv(c[y>>2]|0,c[l>>2]|0,c[l>>2]|0,c[D>>2]|0,c[E>>2]|0,c[F>>2]|0,1,8)|0;O=c[K>>2]|0;P=c[o>>2]|0;c[P>>2]=O;Q=c[J>>2]|0;R=c[p>>2]|0;c[R>>2]=Q;i=j;return}function ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+64|0;k=j+56|0;l=j+52|0;m=j+48|0;n=j+44|0;o=j+24|0;p=j+16|0;q=j+40|0;r=j+36|0;s=j+32|0;t=j+8|0;u=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;h[o>>3]=f;h[p>>3]=g;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[r>>2]=(c[q>>2]|0)+1;while(1){if((c[r>>2]|0)>=(c[k>>2]|0))break;h[t>>3]=+yw(c[m>>2]|0,c[l>>2]|0,c[q>>2]|0,c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;e=_(c[q>>2]|0,c[l>>2]|0)|0;d=_(c[r>>2]|0,c[l>>2]|0)|0;h[u>>3]=(+h[(c[m>>2]|0)+(e+(c[s>>2]|0)<<3)>>3]-+h[(c[m>>2]|0)+(d+(c[s>>2]|0)<<3)>>3])/+h[t>>3];d=_(c[q>>2]|0,c[l>>2]|0)|0;e=(c[n>>2]|0)+(d+(c[s>>2]|0)<<3)|0;h[e>>3]=+h[e>>3]+ +h[o>>3]*+h[p>>3]*+h[u>>3];e=_(c[r>>2]|0,c[l>>2]|0)|0;d=(c[n>>2]|0)+(e+(c[s>>2]|0)<<3)|0;h[d>>3]=+h[d>>3]+ +h[o>>3]*+h[p>>3]*-+h[u>>3];c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}i=j;return}function vx(a,b,d,e,f,g,j,k){a=a|0;b=+b;d=d|0;e=e|0;f=f|0;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=i;i=i+48|0;m=l+44|0;n=l+8|0;o=l+40|0;p=l+36|0;q=l+32|0;r=l;s=l+28|0;t=l+24|0;u=l+20|0;v=l+16|0;c[m>>2]=a;h[n>>3]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;h[r>>3]=g;c[s>>2]=j;c[t>>2]=k;c[u>>2]=yx(c[m>>2]|0,+h[n>>3])|0;c[v>>2]=Dx(c[m>>2]|0,+h[n>>3])|0;g=+Gx(c[u>>2]|0,c[v>>2]|0,c[c[m>>2]>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,+h[r>>3],c[s>>2]|0,c[t>>2]|0);i=l;return +g}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;f=i;i=i+48|0;g=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+8|0;n=f;o=f+20|0;p=f+16|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;h[m>>3]=0.0;h[n>>3]=0.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[g>>2]|0))break;h[n>>3]=0.0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[j>>2]|0))break;e=_(c[o>>2]|0,c[j>>2]|0)|0;d=_(c[o>>2]|0,c[j>>2]|0)|0;b=_(c[o>>2]|0,c[j>>2]|0)|0;a=_(c[o>>2]|0,c[j>>2]|0)|0;h[n>>3]=+h[n>>3]+(+h[(c[l>>2]|0)+(e+(c[p>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(d+(c[p>>2]|0)<<3)>>3])*(+h[(c[l>>2]|0)+(b+(c[p>>2]|0)<<3)>>3]-+h[(c[k>>2]|0)+(a+(c[p>>2]|0)<<3)>>3]);c[p>>2]=(c[p>>2]|0)+1}q=+O(+(+h[n>>3]));h[m>>3]=+h[m>>3]+q;c[o>>2]=(c[o>>2]|0)+1}i=f;return +(+h[m>>3])}function xx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;j=e+32|0;k=e+28|0;l=e+24|0;m=e+8|0;n=e;o=e+20|0;p=e+16|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=c[c[f>>2]>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];h[m>>3]=+h[c[k>>2]>>3];h[n>>3]=0.0;c[o>>2]=c[c[l>>2]>>2];Xv(c[l>>2]|0,c[g>>2]|0,j,0);c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;h[n>>3]=+h[n>>3]+ +h[(c[g>>2]|0)+(c[p>>2]<<3)>>3];c[p>>2]=(c[p>>2]|0)+1}c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[o>>2]|0))break;l=(c[j>>2]|0)+(c[p>>2]<<3)|0;h[l>>3]=+h[l>>3]+ +h[m>>3]*(+(c[o>>2]|0)*+h[(c[g>>2]|0)+(c[p>>2]<<3)>>3]-+h[n>>3]);c[p>>2]=(c[p>>2]|0)+1}i=e;return c[j>>2]|0}function yx(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d;g=d+12|0;j=d+8|0;c[e>>2]=a;h[f>>3]=b;c[g>>2]=cK(8)|0;a=cK(16)|0;c[j>>2]=a;c[c[g>>2]>>2]=a;h[c[j>>2]>>3]=+h[f>>3];c[(c[j>>2]|0)+8>>2]=c[e>>2];c[(c[g>>2]|0)+4>>2]=30;i=d;return c[g>>2]|0}function zx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[c[f>>2]>>2];Xv(c[j>>2]|0,c[g>>2]|0,h,0);i=e;return c[h>>2]|0}function Ax(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(8)|0;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+4>>2]=31;i=b;return c[e>>2]|0}function Bx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[d>>2]|0);i=b;return}function Cx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[m>>2]=c[c[f>>2]>>2];c[l>>2]=~~+h[c[m>>2]>>3];c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[l>>2]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<3)>>3]*+h[(c[m>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}i=e;return c[j>>2]|0}function Dx(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;e=d+40|0;f=d;g=d+36|0;j=d+32|0;k=d+28|0;l=d+24|0;m=d+20|0;n=d+16|0;o=d+12|0;p=d+8|0;c[e>>2]=a;h[f>>3]=b;c[m>>2]=c[c[e>>2]>>2];c[n>>2]=c[(c[e>>2]|0)+20>>2];c[o>>2]=c[(c[e>>2]|0)+24>>2];c[p>>2]=c[(c[e>>2]|0)+28>>2];c[g>>2]=cK(8)|0;e=cK((c[m>>2]|0)+1<<3)|0;c[c[g>>2]>>2]=e;c[j>>2]=c[c[g>>2]>>2];h[c[j>>2]>>3]=+(c[m>>2]|0);c[j>>2]=(c[j>>2]|0)+8;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[m>>2]|0))break;h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=1.0/+((c[m>>2]|0)-1|0);c[l>>2]=c[(c[n>>2]|0)+(c[k>>2]<<2)>>2];while(1){q=c[k>>2]|0;if((c[l>>2]|0)>=(c[(c[n>>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0))break;if((q|0)==(c[(c[o>>2]|0)+(c[l>>2]<<2)>>2]|0)?(b=+h[(c[p>>2]|0)+(c[l>>2]<<3)>>3],(+h[(c[p>>2]|0)+(c[l>>2]<<3)>>3]>=0.0?b:-b)>0.0):0)h[(c[j>>2]|0)+(c[k>>2]<<3)>>3]=1.0/(+((c[m>>2]|0)-1|0)*+h[f>>3]+ +h[(c[p>>2]|0)+(c[l>>2]<<3)>>3]);c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=q+1}c[(c[g>>2]|0)+4>>2]=32;i=d;return c[g>>2]|0}function Ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;b=i;i=i+48|0;d=b+32|0;e=b+28|0;f=b+24|0;g=b+20|0;j=b+16|0;k=b+12|0;l=b+8|0;m=b+4|0;n=b;c[d>>2]=a;c[k>>2]=c[c[d>>2]>>2];c[l>>2]=c[(c[d>>2]|0)+20>>2];c[m>>2]=c[(c[d>>2]|0)+24>>2];c[n>>2]=c[(c[d>>2]|0)+28>>2];c[e>>2]=cK(8)|0;a=cK((c[c[d>>2]>>2]|0)+1<<3)|0;c[c[e>>2]>>2]=a;c[f>>2]=c[c[e>>2]>>2];h[c[f>>2]>>3]=+(c[k>>2]|0);c[f>>2]=(c[f>>2]|0)+8;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[k>>2]|0))break;h[(c[f>>2]|0)+(c[g>>2]<<3)>>3]=1.0;c[j>>2]=c[(c[l>>2]|0)+(c[g>>2]<<2)>>2];while(1){o=c[g>>2]|0;if((c[j>>2]|0)>=(c[(c[l>>2]|0)+((c[g>>2]|0)+1<<2)>>2]|0))break;if((o|0)==(c[(c[m>>2]|0)+(c[j>>2]<<2)>>2]|0)?(p=+h[(c[n>>2]|0)+(c[j>>2]<<3)>>3],(+h[(c[n>>2]|0)+(c[j>>2]<<3)>>3]>=0.0?p:-p)>0.0):0)h[(c[f>>2]|0)+(c[g>>2]<<3)>>3]=1.0/+h[(c[n>>2]|0)+(c[j>>2]<<3)>>3];c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=o+1}c[(c[e>>2]|0)+4>>2]=32;i=b;return c[e>>2]|0}function Fx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[c[d>>2]>>2]|0)O4(c[c[d>>2]>>2]|0);if(!(c[d>>2]|0)){i=b;return}O4(c[d>>2]|0);i=b;return}function Gx(a,b,d,e,f,g,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+64|0;n=m+60|0;o=m+56|0;p=m+52|0;q=m+48|0;r=m+44|0;s=m+40|0;t=m+8|0;u=m+36|0;v=m+32|0;w=m+28|0;x=m+24|0;y=m;z=m+20|0;A=m+16|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;h[t>>3]=j;c[u>>2]=k;c[v>>2]=l;h[y>>3]=0.0;c[w>>2]=cK(c[p>>2]<<3)|0;c[x>>2]=cK(c[p>>2]<<3)|0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[q>>2]|0))break;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[p>>2]|0))break;l=_(c[A>>2]|0,c[q>>2]|0)|0;h[(c[w>>2]|0)+(c[A>>2]<<3)>>3]=+h[(c[r>>2]|0)+(l+(c[z>>2]|0)<<3)>>3];l=_(c[A>>2]|0,c[q>>2]|0)|0;h[(c[x>>2]|0)+(c[A>>2]<<3)>>3]=+h[(c[s>>2]|0)+(l+(c[z>>2]|0)<<3)>>3];c[A>>2]=(c[A>>2]|0)+1}j=+Jx(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[w>>2]|0,c[x>>2]|0,+h[t>>3],c[u>>2]|0,c[v>>2]|0);h[y>>3]=+h[y>>3]+j;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[p>>2]|0))break;l=_(c[A>>2]|0,c[q>>2]|0)|0;h[(c[s>>2]|0)+(l+(c[z>>2]|0)<<3)>>3]=+h[(c[w>>2]|0)+(c[A>>2]<<3)>>3];c[A>>2]=(c[A>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1}O4(c[w>>2]|0);O4(c[x>>2]|0);i=m;return +(+h[y>>3])}function Hx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;j=i;i=i+96|0;k=j+16|0;l=j+84|0;m=j+80|0;n=j+76|0;o=j+72|0;p=j+68|0;q=j+60|0;r=j+56|0;s=j+52|0;t=j+8|0;u=j;v=j+48|0;w=j+44|0;x=j+40|0;y=j+36|0;z=j+32|0;A=j+28|0;B=j+24|0;C=j+20|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j+64>>2]=g;c[z>>2]=c[(c[l>>2]|0)+4>>2];c[q>>2]=cK(c[z>>2]<<3)|0;c[r>>2]=cK(c[z>>2]<<3)|0;c[s>>2]=cK(c[z>>2]<<3)|0;c[A>>2]=c[(c[l>>2]|0)+20>>2];c[B>>2]=c[(c[l>>2]|0)+24>>2];c[v>>2]=c[(c[l>>2]|0)+28>>2];c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[m>>2]|0))break;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[z>>2]|0))break;l=_(c[x>>2]|0,c[m>>2]|0)|0;h[(c[q>>2]|0)+(c[x>>2]<<3)>>3]=+h[(c[n>>2]|0)+(l+(c[w>>2]|0)<<3)>>3];l=_(c[x>>2]|0,c[m>>2]|0)|0;h[(c[s>>2]|0)+(c[x>>2]<<3)>>3]=+h[(c[o>>2]|0)+(l+(c[w>>2]|0)<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}c[C>>2]=0;while(1){l=(c[C>>2]|0)<(c[p>>2]|0);c[x>>2]=0;if(!l)break;while(1){if((c[x>>2]|0)>=(c[z>>2]|0))break;h[t>>3]=0.0;h[u>>3]=0.0;c[y>>2]=c[(c[A>>2]|0)+(c[x>>2]<<2)>>2];while(1){if((c[y>>2]|0)>=(c[(c[A>>2]|0)+((c[x>>2]|0)+1<<2)>>2]|0))break;D=+h[(c[v>>2]|0)+(c[y>>2]<<3)>>3];if((c[(c[B>>2]|0)+(c[y>>2]<<2)>>2]|0)!=(c[x>>2]|0))h[t>>3]=+h[t>>3]+D*+h[(c[q>>2]|0)+(c[(c[B>>2]|0)+(c[y>>2]<<2)>>2]<<3)>>3];else h[u>>3]=D;c[y>>2]=(c[y>>2]|0)+1}if(+h[t>>3]==0.0){l=c[24742]|0;c[k>>2]=(c[(c[A>>2]|0)+((c[x>>2]|0)+1<<2)>>2]|0)-(c[(c[A>>2]|0)+(c[x>>2]<<2)>>2]|0);Y2(l,133703,k)|0}h[(c[r>>2]|0)+(c[x>>2]<<3)>>3]=(+h[(c[s>>2]|0)+(c[x>>2]<<3)>>3]-+h[t>>3])/+h[u>>3];c[x>>2]=(c[x>>2]|0)+1}Z4(c[q>>2]|0,c[r>>2]|0,c[z>>2]<<3|0)|0;c[C>>2]=(c[C>>2]|0)+1}while(1){if((c[x>>2]|0)>=(c[z>>2]|0))break;l=_(c[x>>2]|0,c[m>>2]|0)|0;h[(c[o>>2]|0)+(l+(c[w>>2]|0)<<3)>>3]=+h[(c[q>>2]|0)+(c[x>>2]<<3)>>3];c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=(c[w>>2]|0)+1}O4(c[q>>2]|0);O4(c[r>>2]|0);O4(c[s>>2]|0);i=j;return c[o>>2]|0}function Ix(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;l=i;i=i+64|0;m=l+52|0;n=l+48|0;o=l+44|0;p=l+40|0;q=l+8|0;r=l+36|0;s=l+32|0;t=l+28|0;u=l+24|0;v=l+20|0;w=l+16|0;x=l;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;h[q>>3]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=k;c[w>>2]=c[c[m>>2]>>2];h[x>>3]=0.0;c[c[t>>2]>>2]=0;switch(c[s>>2]|0){case 0:{c[u>>2]=Ax(c[m>>2]|0)|0;c[v>>2]=Ex(c[m>>2]|0)|0;h[x>>3]=+Gx(c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],c[r>>2]|0,c[t>>2]|0);Bx(c[u>>2]|0);Fx(c[v>>2]|0);y=+h[x>>3];i=l;return +y}case 1:{Hx(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[r>>2]|0,c[t>>2]|0)|0;y=+h[x>>3];i=l;return +y}default:{y=+h[x>>3];i=l;return +y}}return +(0.0)}function Jx(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0;l=i;i=i+112|0;m=l+108|0;n=l+104|0;o=l+100|0;p=l+96|0;q=l+92|0;r=l+48|0;s=l+88|0;t=l+80|0;u=l+76|0;v=l+72|0;w=l+68|0;x=l+40|0;y=l+32|0;z=l+24|0;A=l+16|0;B=l+8|0;C=l;D=l+64|0;E=l+60|0;F=l+56|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;h[r>>3]=g;c[s>>2]=j;c[l+84>>2]=k;h[x>>3]=+h[r>>3]*10.0;h[z>>3]=1.0e20;h[A>>3]=1.0;c[D>>2]=c[(c[m>>2]|0)+4>>2];c[E>>2]=c[(c[n>>2]|0)+4>>2];c[F>>2]=0;c[t>>2]=cK(c[o>>2]<<3)|0;c[u>>2]=cK(c[o>>2]<<3)|0;c[v>>2]=cK(c[o>>2]<<3)|0;c[w>>2]=cK(c[o>>2]<<3)|0;c[u>>2]=Hb[c[D>>2]&63](c[m>>2]|0,c[p>>2]|0,c[u>>2]|0)|0;c[u>>2]=uw(c[o>>2]|0,c[q>>2]|0,c[u>>2]|0)|0;g=+O(+(+vw(c[o>>2]|0,c[u>>2]|0,c[u>>2]|0)));G=g/+(c[o>>2]|0);h[x>>3]=G;h[B>>3]=G;while(1){q=c[F>>2]|0;c[F>>2]=q+1;if((q|0)>=(c[s>>2]|0)){H=8;break}if(!(+h[x>>3]>+h[r>>3]*+h[B>>3])){H=8;break}c[t>>2]=Hb[c[E>>2]&63](c[n>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;h[z>>3]=+vw(c[o>>2]|0,c[u>>2]|0,c[t>>2]|0);if((c[F>>2]|0)>1){h[C>>3]=+h[z>>3]/+h[A>>3];c[v>>2]=ww(c[o>>2]|0,c[t>>2]|0,c[v>>2]|0,+h[C>>3])|0}else Z4(c[v>>2]|0,c[t>>2]|0,c[o>>2]<<3|0)|0;c[w>>2]=Hb[c[D>>2]&63](c[m>>2]|0,c[v>>2]|0,c[w>>2]|0)|0;G=+h[z>>3];h[y>>3]=G/+vw(c[o>>2]|0,c[v>>2]|0,c[w>>2]|0);c[p>>2]=xw(c[o>>2]|0,c[p>>2]|0,c[v>>2]|0,+h[y>>3])|0;c[u>>2]=xw(c[o>>2]|0,c[u>>2]|0,c[w>>2]|0,-+h[y>>3])|0;G=+O(+(+vw(c[o>>2]|0,c[u>>2]|0,c[u>>2]|0)));h[x>>3]=G/+(c[o>>2]|0);h[A>>3]=+h[z>>3]}if((H|0)==8){O4(c[t>>2]|0);O4(c[u>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);i=l;return +(+h[x>>3])}return +(0.0)}function Kx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;f=e+52|0;g=e+44|0;j=e;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;c[f>>2]=a;c[e+48>>2]=b;c[g>>2]=d;h[j>>3]=1.0;c[p>>2]=0;c[q>>2]=cK(c[f>>2]<<3)|0;c[r>>2]=cK(c[f>>2]<<3)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;h[(c[q>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+(c[k>>2]<<1<<3)>>3];h[(c[r>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+((c[k>>2]<<1)+1<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}if((c[f>>2]|0)>2)c[p>>2]=qr(c[q>>2]|0,c[r>>2]|0,c[f>>2]|0,s)|0;else c[s>>2]=0;c[n>>2]=Nv(c[f>>2]|0,c[f>>2]|0,1,1,2)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[s>>2]|0))break;c[l>>2]=c[(c[p>>2]|0)+(c[k>>2]<<1<<2)>>2];c[m>>2]=c[(c[p>>2]|0)+((c[k>>2]<<1)+1<<2)>>2];$v(c[n>>2]|0,1,l,m,j)|0;c[k>>2]=(c[k>>2]|0)+1}if((c[f>>2]|0)==2){c[l>>2]=0;c[m>>2]=1;$v(c[n>>2]|0,1,l,m,j)|0}c[k>>2]=0;while(1){t=c[n>>2]|0;if((c[k>>2]|0)>=(c[f>>2]|0))break;$v(t,1,k,k,j)|0;c[k>>2]=(c[k>>2]|0)+1}c[o>>2]=Uv(t)|0;Lv(c[n>>2]|0);c[n>>2]=Mv(c[o>>2]|0,0)|0;Lv(c[o>>2]|0);c[o>>2]=c[n>>2];O4(c[p>>2]|0);O4(c[q>>2]|0);O4(c[r>>2]|0);i=e;return c[o>>2]|0}function Lx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+48|0;f=e+44|0;g=e+40|0;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;n=e+20|0;o=e+16|0;p=e+12|0;q=e+8|0;r=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[r>>3]=1.0;c[k>>2]=cK(c[f>>2]<<3)|0;c[l>>2]=cK(c[f>>2]<<3)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[f>>2]|0))break;d=_(c[g>>2]|0,c[n>>2]|0)|0;h[(c[k>>2]|0)+(c[n>>2]<<3)>>3]=+h[(c[j>>2]|0)+(d<<3)>>3];d=(_(c[g>>2]|0,c[n>>2]|0)|0)+1|0;h[(c[l>>2]|0)+(c[n>>2]<<3)>>3]=+h[(c[j>>2]|0)+(d<<3)>>3];c[n>>2]=(c[n>>2]|0)+1}c[m>>2]=rr(c[k>>2]|0,c[l>>2]|0,c[f>>2]|0,0)|0;c[p>>2]=Nv(c[f>>2]|0,c[f>>2]|0,1,1,2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[f>>2]|0))break;c[o>>2]=1;while(1){if((c[o>>2]|0)>=(c[(c[m>>2]|0)+((c[n>>2]|0)*12|0)>>2]|0))break;$v(c[p>>2]|0,1,n,(c[(c[m>>2]|0)+((c[n>>2]|0)*12|0)+4>>2]|0)+(c[o>>2]<<2)|0,r)|0;c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){s=c[p>>2]|0;if((c[n>>2]|0)>=(c[f>>2]|0))break;$v(s,1,n,n,r)|0;c[n>>2]=(c[n>>2]|0)+1}c[q>>2]=Uv(s)|0;c[q>>2]=Mv(c[q>>2]|0,0)|0;Lv(c[p>>2]|0);O4(c[k>>2]|0);O4(c[l>>2]|0);sr(c[m>>2]|0);i=e;return c[q>>2]|0}function Mx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;Nx(l,c[j>>2]|0);Ox(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,l);Px(c[h>>2]|0,l,c[k>>2]|0);Qx(l);i=f;return}function Nx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=cK(c[f>>2]<<4)|0;c[c[e>>2]>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];c[(c[e>>2]|0)+8>>2]=0;i=d;return}function Ox(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+112|0;g=f+32|0;j=f+104|0;k=f+100|0;l=f+96|0;m=f+92|0;n=f+88|0;o=f+76|0;p=f+72|0;q=f+68|0;r=f+16|0;s=f;t=f+64|0;u=f+60|0;v=f+56|0;w=f+52|0;x=f+48|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[p>>2]=cK(c[k>>2]<<2)|0;c[q>>2]=cK(c[k>>2]<<2)|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[t>>2]=cK(c[k>>2]<<2)|0;c[u>>2]=cK(c[k>>2]<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+1}As(c[j>>2]|0,c[t>>2]|0,0,(c[k>>2]|0)-1|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[(c[u>>2]|0)+(c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+1}Sx(o,c[j>>2]|0,c[t>>2]|0,c[k>>2]|0);c[n>>2]=1;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;c[(c[p>>2]|0)+(c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[(c[t>>2]|0)+((c[n>>2]|0)-1<<2)>>2];c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=((c[k>>2]|0)-1|0))break;c[(c[q>>2]|0)+(c[(c[t>>2]|0)+(c[n>>2]<<2)>>2]<<2)>>2]=c[(c[t>>2]|0)+((c[n>>2]|0)+1<<2)>>2];c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0)){y=25;break}if(!((Tx(o,r)|0)<<24>>24)){y=25;break}if((c[(c[m>>2]|0)+8>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0)){e=(c[m>>2]|0)+4|0;c[e>>2]=c[e>>2]<<1;e=Q4(c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]<<4)|0;c[c[m>>2]>>2]=e}e=(c[m>>2]|0)+8|0;d=c[e>>2]|0;c[e>>2]=d+1;e=(c[c[m>>2]>>2]|0)+(d<<4)|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[v>>2]=c[(c[u>>2]|0)+(c[r>>2]<<2)>>2];c[w>>2]=c[(c[u>>2]|0)+(c[r+4>>2]<<2)>>2];if((c[v>>2]|0)>0?(c[x>>2]=c[(c[t>>2]|0)+((c[v>>2]|0)-1<<2)>>2],(c[(c[u>>2]|0)+(c[(c[q>>2]|0)+(c[x>>2]<<2)>>2]<<2)>>2]|0)<(c[w>>2]|0)):0){c[s>>2]=c[x>>2];c[s+4>>2]=c[r+4>>2];h[s+8>>3]=+h[(c[j>>2]|0)+(c[r+4>>2]<<3)>>3]-+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];Ux(o,g);c[(c[q>>2]|0)+(c[x>>2]<<2)>>2]=c[r+4>>2];c[(c[p>>2]|0)+(c[r+4>>2]<<2)>>2]=c[x>>2]}if((c[w>>2]|0)<((c[k>>2]|0)-1|0)?(c[x>>2]=c[(c[t>>2]|0)+((c[w>>2]|0)+1<<2)>>2],(c[(c[u>>2]|0)+(c[(c[p>>2]|0)+(c[x>>2]<<2)>>2]<<2)>>2]|0)>(c[v>>2]|0)):0){c[s>>2]=c[r>>2];c[s+4>>2]=c[x>>2];h[s+8>>3]=+h[(c[j>>2]|0)+(c[x>>2]<<3)>>3]-+h[(c[j>>2]|0)+(c[r>>2]<<3)>>3];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];Ux(o,g);c[(c[p>>2]|0)+(c[x>>2]<<2)>>2]=c[r>>2];c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[x>>2]}c[n>>2]=(c[n>>2]|0)+1}if((y|0)==25){O4(c[p>>2]|0);O4(c[q>>2]|0);O4(c[t>>2]|0);O4(c[u>>2]|0);Vx(o);i=f;return}}function Px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+64|0;f=e+52|0;h=e+48|0;j=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e;q=e+20|0;r=e+16|0;c[f>>2]=a;c[h>>2]=b;c[j>>2]=d;c[m>>2]=cK(c[f>>2]<<2)|0;c[n>>2]=c[(c[h>>2]|0)+8>>2];c[o>>2]=(c[n>>2]<<1)+(c[f>>2]|0);c[q>>2]=cK(c[o>>2]<<2)|0;c[r>>2]=cK(c[o>>2]<<2)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]=1;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[n>>2]|0))break;d=(c[c[h>>2]>>2]|0)+(c[k>>2]<<4)|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];d=(c[m>>2]|0)+(c[p>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[m>>2]|0)+(c[p+4>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))break;g[(c[r>>2]|0)+(c[k>>2]<<2)>>2]=1.0;c[k>>2]=(c[k>>2]|0)+1}o=cK((c[f>>2]|0)*20|0)|0;c[l>>2]=o;c[c[j>>2]>>2]=o;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[f>>2]|0))break;c[(c[l>>2]|0)+((c[k>>2]|0)*20|0)>>2]=1;c[(c[l>>2]|0)+((c[k>>2]|0)*20|0)+8>>2]=c[r>>2];c[(c[l>>2]|0)+((c[k>>2]|0)*20|0)+4>>2]=c[q>>2];c[c[q>>2]>>2]=c[k>>2];g[c[r>>2]>>2]=0.0;c[r>>2]=(c[r>>2]|0)+(c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]<<2);c[q>>2]=(c[q>>2]|0)+(c[(c[m>>2]|0)+(c[k>>2]<<2)>>2]<<2);c[k>>2]=(c[k>>2]|0)+1}O4(c[m>>2]|0);while(1){if(!(c[(c[h>>2]|0)+8>>2]|0))s=0;else{m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+-1;m=(c[c[h>>2]>>2]|0)+(c[(c[h>>2]|0)+8>>2]<<4)|0;c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];s=1}if(!s)break;Rx(c[l>>2]|0,c[p>>2]|0,c[p+4>>2]|0)}i=e;return}function Qx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);i=b;return}function Rx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[f>>2]|0)+((c[h>>2]|0)*20|0)>>2]|0))break;if((c[(c[(c[f>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(c[k>>2]<<2)>>2]|0)==(c[j>>2]|0)){l=7;break}c[k>>2]=(c[k>>2]|0)+1}if((l|0)==7){i=e;return}l=c[j>>2]|0;k=(c[f>>2]|0)+((c[h>>2]|0)*20|0)|0;d=c[k>>2]|0;c[k>>2]=d+1;c[(c[(c[f>>2]|0)+((c[h>>2]|0)*20|0)+4>>2]|0)+(d<<2)>>2]=l;l=c[h>>2]|0;d=(c[f>>2]|0)+((c[j>>2]|0)*20|0)|0;k=c[d>>2]|0;c[d>>2]=k+1;c[(c[(c[f>>2]|0)+((c[j>>2]|0)*20|0)+4>>2]|0)+(k<<2)>>2]=l;if(!(c[(c[f>>2]|0)+8>>2]|0)){i=e;return}l=c[(c[f>>2]|0)+((c[h>>2]|0)*20|0)+8>>2]|0;g[l>>2]=+g[l>>2]+-1.0;l=c[(c[f>>2]|0)+((c[j>>2]|0)*20|0)+8>>2]|0;g[l>>2]=+g[l>>2]+-1.0;i=e;return}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;g=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f;o=f+16|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[(c[g>>2]|0)+4>>2]=(c[l>>2]|0)-1;c[(c[g>>2]|0)+8>>2]=c[(c[g>>2]|0)+4>>2];e=cK(c[(c[g>>2]|0)+8>>2]<<4)|0;c[c[g>>2]>>2]=e;c[m>>2]=0;while(1){if((c[m>>2]|0)>=((c[l>>2]|0)-1|0))break;c[n>>2]=c[(c[k>>2]|0)+(c[m>>2]<<2)>>2];c[n+4>>2]=c[(c[k>>2]|0)+((c[m>>2]|0)+1<<2)>>2];h[n+8>>3]=+h[(c[j>>2]|0)+(c[(c[k>>2]|0)+((c[m>>2]|0)+1<<2)>>2]<<3)>>3]-+h[(c[j>>2]|0)+(c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]<<3)>>3];e=(c[c[g>>2]>>2]|0)+(c[m>>2]<<4)|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];c[m>>2]=(c[m>>2]|0)+1}c[o>>2]=((c[l>>2]|0)-1|0)/2|0;while(1){if((c[o>>2]|0)<0)break;Wx(c[g>>2]|0,c[o>>2]|0);c[o>>2]=(c[o>>2]|0)+-1}i=f;return}function Tx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;if(!(c[(c[g>>2]|0)+4>>2]|0)){a[f>>0]=0;j=a[f>>0]|0;i=e;return j|0}else{d=c[h>>2]|0;h=c[c[g>>2]>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];h=c[c[g>>2]>>2]|0;d=(c[c[g>>2]>>2]|0)+((c[(c[g>>2]|0)+4>>2]|0)-1<<4)|0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];d=(c[g>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+-1;Wx(c[g>>2]|0,0);a[f>>0]=1;j=a[f>>0]|0;i=e;return j|0}return 0}function Ux(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+4>>2];if((c[(c[e>>2]|0)+4>>2]|0)==(c[(c[e>>2]|0)+8>>2]|0)){a=(c[e>>2]|0)+8|0;c[a>>2]=c[a>>2]<<1;a=Q4(c[c[e>>2]>>2]|0,c[(c[e>>2]|0)+8>>2]<<4)|0;c[c[e>>2]>>2]=a}a=(c[e>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;a=(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];while(1){if((c[f>>2]|0)<=0){j=9;break}if(!(+h[(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)+8>>3]<+h[(c[c[e>>2]>>2]|0)+(((c[f>>2]|0)/2|0)<<4)+8>>3])){if(!(+h[(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)+8>>3]==+h[(c[c[e>>2]>>2]|0)+(((c[f>>2]|0)/2|0)<<4)+8>>3])){j=9;break}if(!((t2()|0)%2|0)){j=9;break}}b=(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];b=(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)|0;a=(c[c[e>>2]>>2]|0)+(((c[f>>2]|0)/2|0)<<4)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];a=(c[c[e>>2]>>2]|0)+(((c[f>>2]|0)/2|0)<<4)|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[f>>2]=(c[f>>2]|0)/2|0}if((j|0)==9){i=d;return}}function Vx(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);i=b;return}function Wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;j=d+20|0;k=d+16|0;l=d;c[e>>2]=a;c[f>>2]=b;while(1){c[g>>2]=c[f>>2]<<1;c[j>>2]=(c[f>>2]<<1)+1;do if((c[g>>2]|0)<(c[(c[e>>2]|0)+4>>2]|0)){if(!(+h[(c[c[e>>2]>>2]|0)+(c[g>>2]<<4)+8>>3]<+h[(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)+8>>3])){if(!(+h[(c[c[e>>2]>>2]|0)+(c[g>>2]<<4)+8>>3]==+h[(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)+8>>3])){m=7;break}if(!((t2()|0)%2|0)){m=7;break}}c[k>>2]=c[g>>2]}else m=7;while(0);if((m|0)==7){m=0;c[k>>2]=c[f>>2]}do if((c[j>>2]|0)<(c[(c[e>>2]|0)+4>>2]|0)){if(!(+h[(c[c[e>>2]>>2]|0)+(c[j>>2]<<4)+8>>3]<+h[(c[c[e>>2]>>2]|0)+(c[k>>2]<<4)+8>>3])){if(!(+h[(c[c[e>>2]>>2]|0)+(c[j>>2]<<4)+8>>3]==+h[(c[c[e>>2]>>2]|0)+(c[k>>2]<<4)+8>>3]))break;if(!((t2()|0)%2|0))break}c[k>>2]=c[j>>2]}while(0);if((c[k>>2]|0)==(c[f>>2]|0))break;b=(c[c[e>>2]>>2]|0)+(c[k>>2]<<4)|0;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];c[l+12>>2]=c[b+12>>2];b=(c[c[e>>2]>>2]|0)+(c[k>>2]<<4)|0;a=(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];a=(c[c[e>>2]>>2]|0)+(c[f>>2]<<4)|0;c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];c[f>>2]=c[k>>2]}i=d;return}function Xx(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0;l=i;i=i+96|0;m=l+92|0;n=l+88|0;o=l+32|0;p=l+24|0;q=l+84|0;r=l+80|0;s=l+76|0;t=l+72|0;u=l+68|0;v=l+64|0;w=l+60|0;x=l+16|0;y=l+56|0;z=l+52|0;A=l+48|0;B=l+8|0;C=l;D=l+44|0;E=l+40|0;c[m>>2]=a;c[n>>2]=b;h[o>>3]=d;h[p>>3]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=j;c[t>>2]=k;c[w>>2]=0;c[y>>2]=0;if(!(c[q>>2]|0)){c[u>>2]=cK(c[n>>2]<<3)|0;if(Et(c[m>>2]|0,c[n>>2]|0,c[u>>2]|0,c[n>>2]|0)|0)c[w>>2]=1;else F=5}else{c[u>>2]=c[q>>2];F=5}a:do if((F|0)==5){m=bK(c[n>>2]<<2)|0;c[z>>2]=m;c[c[r>>2]>>2]=m;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+1}As(c[u>>2]|0,c[z>>2]|0,0,(c[n>>2]|0)-1|0);h[x>>3]=+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+((c[n>>2]|0)-1<<2)>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[c[z>>2]>>2]<<3)>>3];b:do if(c[12961]|0){c[y>>2]=1;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break b;if(c[y>>2]|0)G=(c[(c[12961]|0)+(c[v>>2]<<2)>>2]|0)>=0;else G=0;c[y>>2]=G&1;c[v>>2]=(c[v>>2]|0)+1}}while(0);if(c[y>>2]|0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;h[(c[u>>2]|0)+(c[v>>2]<<3)>>3]=+(c[(c[12961]|0)+(c[v>>2]<<2)>>2]|0);c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+1}As(c[u>>2]|0,c[z>>2]|0,0,(c[n>>2]|0)-1|0)}h[C>>3]=+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+((c[n>>2]|0)-1<<2)>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[c[z>>2]>>2]<<3)>>3];if(+h[o>>3]>+h[p>>3]*+h[C>>3]/+((c[n>>2]|0)-1|0))H=+h[o>>3];else H=+h[p>>3]*+h[C>>3]/+((c[n>>2]|0)-1|0);h[B>>3]=H;c[D>>2]=0;c[v>>2]=1;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break;if(+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+((c[v>>2]|0)-1<<2)>>2]<<3)>>3]>+h[B>>3])c[D>>2]=(c[D>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1}c[c[t>>2]>>2]=c[D>>2];if(!(c[D>>2]|0)){m=cK(4)|0;c[A>>2]=m;c[c[s>>2]>>2]=m;c[c[A>>2]>>2]=c[n>>2];break}c[E>>2]=0;m=cK(c[D>>2]<<2)|0;c[A>>2]=m;c[c[s>>2]>>2]=m;c[v>>2]=1;while(1){if((c[v>>2]|0)>=(c[n>>2]|0))break a;if(+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+(c[v>>2]<<2)>>2]<<3)>>3]-+h[(c[u>>2]|0)+(c[(c[z>>2]|0)+((c[v>>2]|0)-1<<2)>>2]<<3)>>3]>+h[B>>3]){m=c[v>>2]|0;k=c[E>>2]|0;c[E>>2]=k+1;c[(c[A>>2]|0)+(k<<2)>>2]=m}c[v>>2]=(c[v>>2]|0)+1}}while(0);if(c[q>>2]|0){I=c[w>>2]|0;i=l;return I|0}O4(c[u>>2]|0);I=c[w>>2]|0;i=l;return I|0}function Yx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0;d=i;i=i+64|0;e=d+56|0;f=d+52|0;g=d+48|0;j=d+44|0;k=d+40|0;l=d+36|0;m=d+32|0;n=d+24|0;o=d+16|0;p=d+8|0;q=d;c[f>>2]=a;c[g>>2]=b;c[m>>2]=0;if(c[12962]|0)Nm(c[12962]|0);c[12962]=Mm(c[g>>2]|0,c[g>>2]|0,0.0)|0;if(c[12963]|0)O4(c[12963]|0);c[12963]=bK(c[g>>2]<<2)|0;if(c[12964]|0)O4(c[12964]|0);c[12964]=bK(c[g>>2]<<3)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[g>>2]|0))break;h[o>>3]=0.0;c[k>>2]=0;while(1){r=+h[o>>3];if((c[k>>2]|0)>=(c[g>>2]|0))break;s=+h[(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3];h[(c[(c[12962]|0)+(c[j>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3]=s;t=+N(+s);h[q>>3]=t;if(r>3]=+h[q>>3];c[k>>2]=(c[k>>2]|0)+1}if(!(r!=0.0)){u=16;break}h[(c[12964]|0)+(c[j>>2]<<3)>>3]=1.0/+h[o>>3];c[(c[12963]|0)+(c[j>>2]<<2)>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+1}if((u|0)==16){h[(c[12964]|0)+(c[j>>2]<<3)>>3]=0.0;c[e>>2]=0;v=c[e>>2]|0;i=d;return v|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>=((c[g>>2]|0)-1|0))break;h[o>>3]=0.0;c[j>>2]=c[l>>2];while(1){w=+h[o>>3];if((c[j>>2]|0)>=(c[g>>2]|0))break;r=+N(+(+h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[j>>2]<<2)>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]));t=r*+h[(c[12964]|0)+(c[(c[12963]|0)+(c[j>>2]<<2)>>2]<<3)>>3];h[q>>3]=t;if(w>3]=+h[q>>3];c[m>>2]=c[j>>2]}c[j>>2]=(c[j>>2]|0)+1}if(w==0.0){u=25;break}if((c[m>>2]|0)!=(c[l>>2]|0)){c[k>>2]=c[(c[12963]|0)+(c[l>>2]<<2)>>2];c[(c[12963]|0)+(c[l>>2]<<2)>>2]=c[(c[12963]|0)+(c[m>>2]<<2)>>2];c[(c[12963]|0)+(c[m>>2]<<2)>>2]=c[k>>2]}h[n>>3]=+h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[l>>2]<<2)>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3];c[j>>2]=(c[l>>2]|0)+1;while(1){x=c[l>>2]|0;if((c[j>>2]|0)>=(c[g>>2]|0))break;t=+h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[j>>2]<<2)>>2]<<2)>>2]|0)+(x<<3)>>3]/+h[n>>3];h[p>>3]=t;h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[j>>2]<<2)>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]=t;a:do if(+h[p>>3]!=0.0){c[k>>2]=(c[l>>2]|0)+1;while(1){if((c[k>>2]|0)>=(c[g>>2]|0))break a;f=(c[(c[12962]|0)+(c[(c[12963]|0)+(c[j>>2]<<2)>>2]<<2)>>2]|0)+(c[k>>2]<<3)|0;h[f>>3]=+h[f>>3]-+h[p>>3]*+h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[l>>2]<<2)>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+1}}while(0);c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=x+1}if((u|0)==25){c[e>>2]=0;v=c[e>>2]|0;i=d;return v|0}if(+h[(c[(c[12962]|0)+(c[(c[12963]|0)+((c[g>>2]|0)-1<<2)>>2]<<2)>>2]|0)+((c[g>>2]|0)-1<<3)>>3]==0.0){c[e>>2]=0;v=c[e>>2]|0;i=d;return v|0}else{c[e>>2]=1;v=c[e>>2]|0;i=d;return v|0}return 0}function Zx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[j>>2]|0))break;h[m>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[k>>2]|0))break;h[m>>3]=+h[m>>3]+ +h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[k>>2]<<2)>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]*+h[(c[f>>2]|0)+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]=+h[(c[g>>2]|0)+(c[(c[12963]|0)+(c[k>>2]<<2)>>2]<<3)>>3]-+h[m>>3];c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=(c[j>>2]|0)-1;while(1){if((c[k>>2]|0)<0)break;h[m>>3]=0.0;c[l>>2]=(c[k>>2]|0)+1;while(1){if((c[l>>2]|0)>=(c[j>>2]|0))break;h[m>>3]=+h[m>>3]+ +h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[k>>2]<<2)>>2]<<2)>>2]|0)+(c[l>>2]<<3)>>3]*+h[(c[f>>2]|0)+(c[l>>2]<<3)>>3];c[l>>2]=(c[l>>2]|0)+1}h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]=(+h[(c[f>>2]|0)+(c[k>>2]<<3)>>3]-+h[m>>3])/+h[(c[(c[12962]|0)+(c[(c[12963]|0)+(c[k>>2]<<2)>>2]<<2)>>2]|0)+(c[k>>2]<<3)>>3];c[k>>2]=(c[k>>2]|0)+-1}i=e;return}function _x(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[f>>2]=256;c[e>>2]=cK(28)|0;c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=0;a=cK(c[f>>2]<<2)|0;c[(c[e>>2]|0)+8>>2]=a;a=cK(c[f>>2]<<2)|0;c[(c[e>>2]|0)+12>>2]=a;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;c[(c[(c[e>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]=-1;c[g>>2]=(c[g>>2]|0)+1}g=cK(c[f>>2]<<2)|0;c[(c[e>>2]|0)+16>>2]=g;g=jy()|0;c[(c[e>>2]|0)+20>>2]=g;c[(c[e>>2]|0)+24>>2]=c[d>>2];i=b;return c[e>>2]|0}function $x(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){i=d;return}O4(c[(c[e>>2]|0)+12>>2]|0);O4(c[(c[e>>2]|0)+16>>2]|0);ky(c[(c[e>>2]|0)+20>>2]|0);a:do if(c[f>>2]|0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0))break a;Bb[c[f>>2]&127](c[(c[(c[e>>2]|0)+8>>2]|0)+(c[g>>2]<<2)>>2]|0);c[g>>2]=(c[g>>2]|0)+1}}while(0);O4(c[(c[e>>2]|0)+8>>2]|0);O4(c[e>>2]|0);i=d;return}function ay(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[(c[f>>2]|0)+4>>2];c[j>>2]=c[h>>2];if((c[h>>2]|0)>((c[c[f>>2]>>2]|0)-1|0)?(fy(c[f>>2]|0)|0)==0:0){c[e>>2]=-10;m=c[e>>2]|0;i=d;return m|0}c[j>>2]=my(c[(c[f>>2]|0)+20>>2]|0,k)|0;if(c[k>>2]|0)c[j>>2]=c[h>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+(c[h>>2]<<2)>>2]=c[g>>2];c[(c[(c[f>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]=c[h>>2];c[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>2]<<2)>>2]=c[j>>2];g=(c[f>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1;c[l>>2]=gy(c[f>>2]|0,c[h>>2]|0)|0;if((c[(c[(c[f>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]|0)!=(c[l>>2]|0))La(133714,133738,156,133751);if((c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]|0)!=(c[j>>2]|0))La(133769,133738,157,133751);c[e>>2]=c[j>>2];m=c[e>>2]|0;i=d;return m|0}function by(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if(!(c[(c[e>>2]|0)+4>>2]|0)){c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=cy(c[e>>2]|0,c[c[(c[e>>2]|0)+16>>2]>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function cy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[f>>2]|0)+12>>2];if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=c[(c[j>>2]|0)+(c[g>>2]<<2)>>2];if((c[k>>2]|0)<0){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}if((c[k>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))La(133793,133738,187,133806);c[h>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+(c[k>>2]<<2)>>2];ly(c[(c[f>>2]|0)+20>>2]|0,c[g>>2]|0)|0;j=c[f>>2]|0;if((c[k>>2]|0)<((c[(c[f>>2]|0)+4>>2]|0)-1|0)){hy(j,c[k>>2]|0,(c[(c[f>>2]|0)+4>>2]|0)-1|0);b=(c[f>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+-1;c[k>>2]=gy(c[f>>2]|0,c[k>>2]|0)|0;c[k>>2]=iy(c[f>>2]|0,c[k>>2]|0)|0}else{k=j+4|0;c[k>>2]=(c[k>>2]|0)+-1}c[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2]=-1;c[e>>2]=c[h>>2];l=c[e>>2]|0;i=d;return l|0}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;if((c[h>>2]|0)>=(c[c[g>>2]>>2]|0)){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}c[k>>2]=c[(c[(c[g>>2]|0)+12>>2]|0)+(c[h>>2]<<2)>>2];if((c[k>>2]|0)<0){c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}else{c[(c[(c[g>>2]|0)+8>>2]|0)+(c[k>>2]<<2)>>2]=c[j>>2];c[k>>2]=gy(c[g>>2]|0,c[k>>2]|0)|0;c[k>>2]=iy(c[g>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=e;return l|0}return 0}function ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}c[h>>2]=c[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<2)>>2];if((c[h>>2]|0)<0){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+(c[h>>2]<<2)>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function fy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0.0,k=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[f>>2]=c[c[e>>2]>>2];c[g>>2]=c[c[e>>2]>>2];if(+(c[g>>2]|0)*.2>10.0)j=+(c[g>>2]|0)*.2;else j=10.0;c[g>>2]=~~(+(c[g>>2]|0)+j);c[c[e>>2]>>2]=c[g>>2];a=eK(c[(c[e>>2]|0)+8>>2]|0,c[g>>2]<<2)|0;c[(c[e>>2]|0)+8>>2]=a;if(!(c[(c[e>>2]|0)+8>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}a=eK(c[(c[e>>2]|0)+12>>2]|0,c[g>>2]<<2)|0;c[(c[e>>2]|0)+12>>2]=a;if(!(c[(c[e>>2]|0)+12>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}a=eK(c[(c[e>>2]|0)+16>>2]|0,c[g>>2]<<2)|0;c[(c[e>>2]|0)+16>>2]=a;if(!(c[(c[e>>2]|0)+16>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}c[h>>2]=c[f>>2];while(1){if((c[h>>2]|0)>=(c[g>>2]|0))break;c[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]<<2)>>2]=-1;c[h>>2]=(c[h>>2]|0)+1}c[d>>2]=c[e>>2];k=c[d>>2]|0;i=b;return k|0}function gy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+8>>2];if(!(c[f>>2]|0)){j=c[f>>2]|0;i=d;return j|0}c[g>>2]=((c[f>>2]|0)-1|0)/2|0;if((Ob[c[(c[e>>2]|0)+24>>2]&127](c[(c[h>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[h>>2]|0)+(c[f>>2]<<2)>>2]|0)|0)!=1){j=c[f>>2]|0;i=d;return j|0}hy(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0);c[f>>2]=gy(c[e>>2]|0,c[g>>2]|0)|0;j=c[f>>2]|0;i=d;return j|0}function hy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=c[(c[f>>2]|0)+8>>2];c[n>>2]=c[(c[f>>2]|0)+12>>2];c[o>>2]=c[(c[f>>2]|0)+16>>2];if((c[g>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))La(133830,133738,74,133849);if((c[h>>2]|0)<(c[(c[f>>2]|0)+4>>2]|0)){c[j>>2]=c[(c[o>>2]|0)+(c[g>>2]<<2)>>2];c[k>>2]=c[(c[o>>2]|0)+(c[h>>2]<<2)>>2];c[l>>2]=c[(c[m>>2]|0)+(c[g>>2]<<2)>>2];c[(c[m>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[m>>2]|0)+(c[h>>2]<<2)>>2];c[(c[m>>2]|0)+(c[h>>2]<<2)>>2]=c[l>>2];c[(c[o>>2]|0)+(c[g>>2]<<2)>>2]=c[k>>2];c[(c[n>>2]|0)+(c[k>>2]<<2)>>2]=c[g>>2];c[(c[o>>2]|0)+(c[h>>2]<<2)>>2]=c[j>>2];c[(c[n>>2]|0)+(c[j>>2]<<2)>>2]=c[h>>2];i=e;return}else La(133854,133738,75,133849)}function iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=(c[g>>2]<<1)+1;c[k>>2]=(c[g>>2]<<1)+2;if((c[j>>2]|0)>((c[(c[f>>2]|0)+4>>2]|0)-1|0)){c[e>>2]=c[g>>2];m=c[e>>2]|0;i=d;return m|0}do if((c[j>>2]|0)!=((c[(c[f>>2]|0)+4>>2]|0)-1|0))if((Ob[c[(c[f>>2]|0)+24>>2]&127](c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[l>>2]|0)+(c[k>>2]<<2)>>2]|0)|0)==1){c[h>>2]=c[k>>2];break}else{c[h>>2]=c[j>>2];break}else c[h>>2]=c[j>>2];while(0);if((Ob[c[(c[f>>2]|0)+24>>2]&127](c[(c[l>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[l>>2]|0)+(c[h>>2]<<2)>>2]|0)|0)==1){hy(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[g>>2]=iy(c[f>>2]|0,c[h>>2]|0)|0}c[e>>2]=c[g>>2];m=c[e>>2]|0;i=d;return m|0}function jy(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+4|0;d=a;c[d>>2]=32;c[b>>2]=cK(12)|0;c[(c[b>>2]|0)+4>>2]=c[d>>2];c[c[b>>2]>>2]=-1;e=cK(c[d>>2]<<2)|0;c[(c[b>>2]|0)+8>>2]=e;i=a;return c[b>>2]|0}function ky(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function ly(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((c[c[f>>2]>>2]|0)>=((c[(c[f>>2]|0)+4>>2]|0)-1|0)?(ny(c[f>>2]|0)|0)==0:0){c[e>>2]=-1;h=c[e>>2]|0;i=d;return h|0}b=c[g>>2]|0;g=c[f>>2]|0;a=(c[g>>2]|0)+1|0;c[g>>2]=a;c[(c[(c[f>>2]|0)+8>>2]|0)+(a<<2)>>2]=b;c[e>>2]=c[c[f>>2]>>2];h=c[e>>2]|0;i=d;return h|0}function my(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;c[c[g>>2]>>2]=0;if((c[c[f>>2]>>2]|0)<0){c[c[g>>2]>>2]=-1;c[e>>2]=-1;h=c[e>>2]|0;i=d;return h|0}else{g=c[f>>2]|0;b=c[g>>2]|0;c[g>>2]=b+-1;c[e>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+(b<<2)>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function ny(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,h=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[(c[e>>2]|0)+4>>2];if(10.0>+(c[f>>2]|0)*.2)g=10.0;else g=+(c[f>>2]|0)*.2;c[f>>2]=~~(+(c[f>>2]|0)+g);c[(c[e>>2]|0)+4>>2]=c[f>>2];a=eK(c[(c[e>>2]|0)+8>>2]|0,c[f>>2]<<2)|0;c[(c[e>>2]|0)+8>>2]=a;if(c[(c[e>>2]|0)+8>>2]|0){c[d>>2]=c[e>>2];h=c[d>>2]|0;i=b;return h|0}else{c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}return 0}function oy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(8)|0;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+4>>2]=0;i=b;return c[e>>2]|0}function py(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){i=d;return}do{c[g>>2]=c[(c[e>>2]|0)+4>>2];if(c[c[e>>2]>>2]|0)Bb[c[f>>2]&127](c[c[e>>2]>>2]|0);if(c[e>>2]|0)O4(c[e>>2]|0);c[e>>2]=c[g>>2]}while((c[e>>2]|0)!=0);i=d;return}function qy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=oy(c[f>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=c[e>>2];i=d;return c[g>>2]|0}function ry(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[c[d>>2]>>2]|0}function sy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+4>>2]|0}function ty(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=cK(12)|0;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;i=b;return c[e>>2]|0}function uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){i=d;return}do{c[g>>2]=c[(c[e>>2]|0)+4>>2];if(c[c[e>>2]>>2]|0)Bb[c[f>>2]&127](c[c[e>>2]>>2]|0);if(c[e>>2]|0)O4(c[e>>2]|0);c[e>>2]=c[g>>2]}while((c[e>>2]|0)!=0);i=d;return}function vy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=ty(c[f>>2]|0)|0;if(!(c[e>>2]|0)){h=c[g>>2]|0;i=d;return h|0}c[(c[g>>2]|0)+4>>2]=c[e>>2];c[(c[e>>2]|0)+8>>2]=c[g>>2];h=c[g>>2]|0;i=d;return h|0}function wy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[c[d>>2]>>2]|0}function xy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0)){i=e;return}c[j>>2]=c[(c[f>>2]|0)+4>>2];c[k>>2]=c[(c[f>>2]|0)+8>>2];if(c[c[f>>2]>>2]|0)Bb[c[g>>2]&127](c[c[f>>2]>>2]|0);O4(c[f>>2]|0);c[f>>2]=0;if(c[j>>2]|0)c[(c[j>>2]|0)+8>>2]=c[k>>2];if(c[k>>2]|0)c[(c[k>>2]|0)+4>>2]=c[j>>2];if(c[k>>2]|0){i=e;return}c[c[h>>2]>>2]=c[j>>2];i=e;return}function yy(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=b;return}function zy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(64)|0;yy((c[e>>2]|0)+36|0);c[(c[e>>2]|0)+8>>2]=c[d>>2];i=b;return c[e>>2]|0}function Ay(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}Wy(c[(c[d>>2]|0)+32>>2]|0);O4(c[d>>2]|0);i=b;return}function By(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=kB(c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function Cy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+4>>2]=0;b=c[f>>2]|0;a=c[e>>2]|0;if(c[(c[e>>2]|0)+4>>2]|0){c[(c[a+4>>2]|0)+4>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return}else{c[a>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return}}function Dy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[c[e>>2]>>2]|0){c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}else{c[c[e>>2]>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return}}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+28|0;h=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[e>>2]=a;c[f>>2]=b;Gy(c[e>>2]|0,c[f>>2]|0);c[g>>2]=c[c[f>>2]>>2];c[j>>2]=c[g>>2];c[g>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[g>>2]|0))break;c[o>>2]=c[(c[g>>2]|0)+8>>2];e=$B(c[o>>2]|0)|0;c[l>>2]=e;c[n>>2]=e;c[k>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2];c[m>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2];c[l>>2]=aC(c[o>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;if((c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0)<(c[k>>2]|0)){c[n>>2]=c[l>>2];c[k>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2];c[m>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]}c[l>>2]=aC(c[o>>2]|0,c[l>>2]|0)|0}e=(c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[e>>2]=c[e>>2]|8;c[c[g>>2]>>2]=c[n>>2];c[h>>2]=c[(c[g>>2]|0)+4>>2];Cy((c[(c[(c[(c[m>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)+36|0,c[g>>2]|0);c[g>>2]=c[h>>2]}yy(c[f>>2]|0);i=d;return c[j>>2]|0}function Fy(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+36>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+4>>2];Fy(c[e>>2]|0);c[e>>2]=c[f>>2]}Ay(c[d>>2]|0);i=b;return}function Gy(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+8|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;if(c[(c[h>>2]|0)+24>>2]|0)c[k>>2]=fC(c[g>>2]|0,c[(c[h>>2]|0)+24>>2]|0,0)|0;a:do if((c[k>>2]|0)==0?(c[(c[h>>2]|0)+20>>2]|0)!=0:0){c[j>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break a;if((jO(c[c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]>>2]|0,c[(c[h>>2]|0)+20>>2]|0,0)|0)<<24>>24)break;c[j>>2]=aC(c[g>>2]|0,c[j>>2]|0)|0}c[k>>2]=c[j>>2]}while(0);if(!(c[k>>2]|0))c[k>>2]=$B(c[g>>2]|0)|0;if(!(a[138998]|0)){m=l+4|0;c[m>>2]=0;c[l>>2]=0;n=c[g>>2]|0;o=c[k>>2]|0;p=c[h>>2]|0;Hy(n,o,p,1,l);i=e;return}j=c[24742]|0;c[f>>2]=wB(c[k>>2]|0)|0;Y2(j,133871,f)|0;m=l+4|0;c[m>>2]=0;c[l>>2]=0;n=c[g>>2]|0;o=c[k>>2]|0;p=c[h>>2]|0;Hy(n,o,p,1,l);i=e;return}function Hy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;h=g+40|0;j=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;f=(c[k>>2]|0)+8|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]=e;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]=e;c[n>>2]=TA(c[h>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;e=c[n>>2]|0;c[o>>2]=c[((c[c[n>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2];e=c[n>>2]|0;if((c[o>>2]|0)==(c[j>>2]|0)){f=c[n>>2]|0;c[o>>2]=c[((c[e>>2]&3|0)==3?f:f+32|0)+28>>2];if(!(c[c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2]>>2]|0))c[c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2]>>2]=-1}else if(!(c[c[(c[e+8>>2]|0)+120>>2]>>2]|0))c[c[(c[(c[n>>2]|0)+8>>2]|0)+120>>2]>>2]=1;e=c[j>>2]|0;do if(!(c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0)){c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]=e;Iy(c[m>>2]|0,c[n>>2]|0);Hy(c[h>>2]|0,c[o>>2]|0,c[k>>2]|0,0,c[m>>2]|0);if((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0)<(c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0))t=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0;else t=c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]=t;if((c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0)>=(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0)){c[p>>2]=0;do{c[r>>2]=Jy(c[m>>2]|0)|0;f=c[c[r>>2]>>2]&3;if((c[c[(c[(c[r>>2]|0)+8>>2]|0)+120>>2]>>2]|0)==1){d=c[r>>2]|0;c[q>>2]=c[((f|0)==2?d:d+-32|0)+28>>2]}else{d=c[r>>2]|0;c[q>>2]=c[((f|0)==3?d:d+32|0)+28>>2]}if(!(c[(c[(c[(c[q>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)){if(!(c[p>>2]|0))c[p>>2]=Ky(c[h>>2]|0,c[k>>2]|0)|0;Ly(c[p>>2]|0,c[q>>2]|0)}}while((c[r>>2]|0)!=(c[n>>2]|0));if(c[p>>2]|0){if((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)==0?(By(c[p>>2]|0)|0)>1:0)Ly(c[p>>2]|0,c[j>>2]|0);if((c[l>>2]|0)!=0?(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)==(c[p>>2]|0):0){Dy(c[k>>2]|0,c[p>>2]|0);break}Cy(c[k>>2]|0,c[p>>2]|0)}}}else if((c[(c[(c[e+8>>2]|0)+112>>2]|0)+8>>2]|0)!=(c[o>>2]|0)){if((c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0)<(c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0))u=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0;else u=c[(c[(c[(c[o>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0;c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]=u}while(0);c[n>>2]=UA(c[h>>2]|0,c[n>>2]|0,c[j>>2]|0)|0}if(!(c[l>>2]|0)){i=g;return}if(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0){i=g;return}c[s>>2]=Ky(c[h>>2]|0,c[k>>2]|0)|0;Ly(c[s>>2]|0,c[j>>2]|0);Dy(c[k>>2]|0,c[s>>2]|0);i=g;return}function Iy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[f>>2];f=(c[e>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1;i=d;return}function Jy(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[c[d>>2]>>2];if(!(c[e>>2]|0))La(176099,133902,65,133914);if((c[(c[d>>2]|0)+4>>2]|0)>0){c[c[d>>2]>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+120>>2]|0)+4>>2];a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)-1;i=b;return c[e>>2]|0}else La(133892,133902,61,133914);return 0}function Ky(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=My(c[e>>2]|0,c[f>>2]|0)|0;c[h>>2]=zy(c[g>>2]|0)|0;i=d;return c[h>>2]|0}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;eC(c[(c[e>>2]|0)+8>>2]|0,c[f>>2]|0,1)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]=c[e>>2];i=d;return}function My(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+144|0;e=d;f=d+12|0;g=d+8|0;h=d+16|0;j=d+4|0;c[f>>2]=a;c[g>>2]=b;b=(c[g>>2]|0)+12|0;g=c[b>>2]|0;c[b>>2]=g+1;c[e>>2]=g;k3(h,133882,e)|0;c[j>>2]=FD(c[f>>2]|0,h,1)|0;MC(c[j>>2]|0,175049,280,1)|0;i=d;return c[j>>2]|0}function Ny(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;Oy(c[f>>2]|0,c[g>>2]|0,+h[(c[j>>2]|0)+32>>3]);i=e;return}function Oy(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;f=e+36|0;g=e+32|0;j=e+8|0;k=e+28|0;l=e+24|0;m=e+20|0;n=e+16|0;o=e;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;h[o>>3]=3.141592653589793;c[m>>2]=0;c[k>>2]=c[(c[g>>2]|0)+36>>2];while(1){p=c[f>>2]|0;if(!(c[k>>2]|0))break;Oy(p,c[k>>2]|0,+h[j>>3]);c[m>>2]=(c[m>>2]|0)+1;c[k>>2]=c[(c[k>>2]|0)+4>>2]}c[l>>2]=ez(p,c[g>>2]|0,+h[j>>3])|0;c[(c[g>>2]|0)+32>>2]=c[l>>2];c[n>>2]=az(c[l>>2]|0)|0;if((c[m>>2]|0)>0)h[o>>3]=+Py(c[f>>2]|0,c[m>>2]|0,c[n>>2]|0,c[l>>2]|0,c[g>>2]|0,+h[j>>3]);if((c[n>>2]|0)!=1){i=e;return}if(!(c[c[g>>2]>>2]|0)){i=e;return}if(!(c[(c[(c[(c[c[g>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0)){i=e;return}h[(c[g>>2]|0)+48>>3]=+h[o>>3];if(!(+h[(c[g>>2]|0)+48>>3]<0.0)){i=e;return}o=(c[g>>2]|0)+48|0;h[o>>3]=+h[o>>3]+6.283185307179586;i=e;return}function Py(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0;j=i;i=i+144|0;k=j+136|0;l=j+132|0;m=j+128|0;n=j+124|0;o=j+120|0;p=j+80|0;q=j+116|0;r=j+112|0;s=j+32|0;t=j+108|0;u=j+104|0;v=j+24|0;w=j+16|0;x=j+8|0;y=j+100|0;z=j+96|0;A=j+92|0;B=j+88|0;C=j;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;h[p>>3]=g;c[u>>2]=0;h[v>>3]=0.0;h[x>>3]=0.0;c[y>>2]=bK((c[l>>2]|0)*56|0)|0;c[z>>2]=0;c[s+40>>2]=c[(c[o>>2]|0)+36>>2];h[s+8>>3]=+h[(c[o>>2]|0)+16>>3];h[s>>3]=+h[(c[o>>2]|0)+16>>3];c[s+44>>2]=c[c[o>>2]>>2];h[s+16>>3]=6.283185307179586/+(c[m>>2]|0);h[s+24>>3]=-1.0;h[s+32>>3]=-1.0;c[q>>2]=c[c[n>>2]>>2];while(1){if(!(c[q>>2]|0))break;c[r>>2]=c[c[q>>2]>>2];h[x>>3]=+(c[u>>2]|0)*+h[s+16>>3];c[u>>2]=(c[u>>2]|0)+1;if(c[(c[(c[(c[r>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&8){c[(c[y>>2]|0)+((c[z>>2]|0)*56|0)>>2]=c[r>>2];h[(c[y>>2]|0)+((c[z>>2]|0)*56|0)+8>>3]=+h[x>>3];h[v>>3]=+Qy((c[y>>2]|0)+((c[z>>2]|0)*56|0)|0,s,+h[p>>3]);c[z>>2]=(c[z>>2]|0)+1}c[q>>2]=c[(c[q>>2]|0)+4>>2]}a:do if((c[z>>2]|0)==1)h[(c[y>>2]|0)+40>>3]=1.0;else{q=(c[z>>2]|0)==2;c[B>>2]=c[y>>2];if(q){c[A>>2]=(c[y>>2]|0)+56;h[C>>3]=+h[(c[A>>2]|0)+8>>3]-+h[(c[B>>2]|0)+8>>3];if(+h[C>>3]>3.141592653589793)h[C>>3]=6.283185307179586-+h[C>>3];Ry(c[B>>2]|0,c[A>>2]|0,+h[C>>3]);break}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[z>>2]|0))break a;if(((c[t>>2]|0)+1|0)==(c[z>>2]|0)){c[A>>2]=c[y>>2];h[C>>3]=+h[(c[A>>2]|0)+8>>3]-+h[(c[B>>2]|0)+8>>3]+6.283185307179586}else{c[A>>2]=(c[B>>2]|0)+56;h[C>>3]=+h[(c[A>>2]|0)+8>>3]-+h[(c[B>>2]|0)+8>>3]}Ry(c[B>>2]|0,c[A>>2]|0,+h[C>>3]);c[B>>2]=(c[B>>2]|0)+56;c[t>>2]=(c[t>>2]|0)+1}}while(0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[z>>2]|0))break;Sy(c[k>>2]|0,(c[y>>2]|0)+((c[t>>2]|0)*56|0)|0,s,c[m>>2]|0,+h[p>>3]);c[t>>2]=(c[t>>2]|0)+1}O4(c[y>>2]|0);if((c[l>>2]|0)==1){Ty(c[o>>2]|0,-(+h[v>>3]+ +h[p>>3]/2.0),0.0,0.0);l=(c[o>>2]|0)+16|0;h[l>>3]=+h[l>>3]+(+h[p>>3]/2.0+ +h[v>>3]);v=(c[o>>2]|0)+56|0;c[v>>2]=c[v>>2]|1;D=s+24|0;E=+h[D>>3];F=s+32|0;G=+h[F>>3];H=E+G;I=H/2.0;J=I-3.141592653589793;h[w>>3]=J;K=+h[w>>3];i=j;return +K}else{h[(c[o>>2]|0)+16>>3]=+h[s+8>>3];D=s+24|0;E=+h[D>>3];F=s+32|0;G=+h[F>>3];H=E+G;I=H/2.0;J=I-3.141592653589793;h[w>>3]=J;K=+h[w>>3];i=j;return +K}return +(0.0)}function Qy(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e+36|0;g=e+32|0;j=e+16|0;k=e+28|0;l=e+8|0;m=e;n=e+24|0;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;h[l>>3]=0.0;h[m>>3]=0.0;c[n>>2]=0;c[k>>2]=c[(c[g>>2]|0)+40>>2];while(1){if(!(c[k>>2]|0))break;if(c[c[k>>2]>>2]|0)o=c[(c[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0;else o=0;if((o|0)==(c[c[f>>2]>>2]|0)){c[n>>2]=(c[n>>2]|0)+1;if(+h[l>>3]<+h[(c[k>>2]|0)+16>>3])h[l>>3]=+h[(c[k>>2]|0)+16>>3];h[m>>3]=+h[m>>3]+(+h[(c[k>>2]|0)+16>>3]*2.0+ +h[j>>3])}c[k>>2]=c[(c[k>>2]|0)+4>>2]}h[(c[f>>2]|0)+32>>3]=+h[m>>3];c[(c[f>>2]|0)+48>>2]=c[n>>2];h[(c[f>>2]|0)+16>>3]=+h[c[g>>2]>>3]+ +h[j>>3]+ +h[l>>3];h[(c[f>>2]|0)+24>>3]=+h[l>>3];i=e;return +(+h[l>>3])}function Ry(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+8|0;k=e;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;h[k>>3]=+h[(c[f>>2]|0)+32>>3]*+h[(c[g>>2]|0)+16>>3]+ +h[(c[g>>2]|0)+32>>3]*+h[(c[f>>2]|0)+16>>3];h[k>>3]=+h[k>>3]/(+h[j>>3]*2.0*+h[(c[f>>2]|0)+16>>3]*+h[(c[g>>2]|0)+16>>3]);if(+h[k>>3]<1.0)h[k>>3]=1.0;if(+h[k>>3]>+h[(c[f>>2]|0)+40>>3])h[(c[f>>2]|0)+40>>3]=+h[k>>3];if(!(+h[k>>3]>+h[(c[g>>2]|0)+40>>3])){i=e;return}h[(c[g>>2]|0)+40>>3]=+h[k>>3];i=e;return}function Sy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0,H=0,I=0.0,J=0,K=0,L=0.0,M=0,N=0;g=i;i=i+144|0;j=g+128|0;k=g+124|0;l=g+120|0;m=g+116|0;n=g+96|0;o=g+112|0;p=g+88|0;q=g+80|0;r=g+72|0;s=g+64|0;t=g+56|0;u=g+48|0;v=g+108|0;w=g+104|0;x=g+40|0;y=g+32|0;z=g+24|0;A=g+16|0;B=g+8|0;C=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;h[n>>3]=f;c[w>>2]=0;h[x>>3]=+h[(c[l>>2]|0)+8>>3];h[y>>3]=+h[(c[l>>2]|0)+24>>3];h[z>>3]=+h[(c[l>>2]|0)+32>>3];h[q>>3]=+h[(c[k>>2]|0)+40>>3]*+h[(c[k>>2]|0)+16>>3];if((c[m>>2]|0)==1){h[p>>3]=0.0;h[A>>3]=+h[(c[k>>2]|0)+32>>3]/6.283185307179586;h[q>>3]=+h[q>>3]>+h[A>>3]?+h[q>>3]:+h[A>>3];h[A>>3]=+h[q>>3]*6.283185307179586-+h[(c[k>>2]|0)+32>>3];if(+h[A>>3]>0.0)h[n>>3]=+h[n>>3]+ +h[A>>3]/+(c[(c[k>>2]|0)+48>>2]|0)}else h[p>>3]=+h[(c[k>>2]|0)+8>>3]-+h[(c[k>>2]|0)+32>>3]/(+h[q>>3]*2.0);if(+h[q>>3]+ +h[(c[k>>2]|0)+24>>3]>+h[x>>3])h[x>>3]=+h[q>>3]+ +h[(c[k>>2]|0)+24>>3];h[s>>3]=+h[n>>3]/+h[q>>3];c[v>>2]=((c[(c[k>>2]|0)+48>>2]|0)+1|0)/2|0;c[o>>2]=c[(c[l>>2]|0)+40>>2];while(1){if(!(c[o>>2]|0))break;if(c[c[o>>2]>>2]|0)D=c[(c[(c[(c[c[o>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+8>>2]|0;else D=0;if((D|0)==(c[c[k>>2]>>2]|0)?(az(c[(c[o>>2]|0)+32>>2]|0)|0)>0:0){h[r>>3]=+h[(c[o>>2]|0)+16>>3]/+h[q>>3];do if((c[m>>2]|0)!=1)if((c[(c[k>>2]|0)+48>>2]|0)==1){h[p>>3]=+h[(c[k>>2]|0)+8>>3];break}else{h[p>>3]=+h[p>>3]+(+h[r>>3]+ +h[s>>3]/2.0);break}else{do if(+h[p>>3]!=0.0)if((c[(c[k>>2]|0)+48>>2]|0)==2){h[p>>3]=3.141592653589793;break}else{h[p>>3]=+h[p>>3]+ +h[r>>3];break}while(0);if(+h[y>>3]<0.0)h[y>>3]=+h[p>>3];h[z>>3]=+h[p>>3]}while(0);h[B>>3]=+h[q>>3]*+Q(+(+h[p>>3]));h[C>>3]=+h[q>>3]*+R(+(+h[p>>3]));h[t>>3]=+Uy(c[o>>2]|0,c[j>>2]|0,+h[B>>3],+h[C>>3],+h[p>>3]);Ty(c[o>>2]|0,+h[B>>3],+h[C>>3],+h[t>>3]);f=+h[r>>3];E=+h[s>>3];if((c[m>>2]|0)==1)h[p>>3]=+h[p>>3]+(f+E);else h[p>>3]=+h[p>>3]+(f+E/2.0);c[w>>2]=(c[w>>2]|0)+1;if((c[w>>2]|0)==(c[v>>2]|0))h[u>>3]=+h[p>>3]}c[o>>2]=c[(c[o>>2]|0)+4>>2]}if((c[m>>2]|0)<=1){F=+h[x>>3];G=c[l>>2]|0;H=G+8|0;h[H>>3]=F;I=+h[y>>3];J=c[l>>2]|0;K=J+24|0;h[K>>3]=I;L=+h[z>>3];M=c[l>>2]|0;N=M+32|0;h[N>>3]=L;i=g;return}if((c[c[k>>2]>>2]|0)!=(c[(c[l>>2]|0)+44>>2]|0)){F=+h[x>>3];G=c[l>>2]|0;H=G+8|0;h[H>>3]=F;I=+h[y>>3];J=c[l>>2]|0;K=J+24|0;h[K>>3]=I;L=+h[z>>3];M=c[l>>2]|0;N=M+32|0;h[N>>3]=L;i=g;return}h[(c[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]=+h[u>>3];F=+h[x>>3];G=c[l>>2]|0;H=G+8|0;h[H>>3]=F;I=+h[y>>3];J=c[l>>2]|0;K=J+24|0;h[K>>3]=I;L=+h[z>>3];M=c[l>>2]|0;N=M+32|0;h[N>>3]=L;i=g;return}function Ty(a,b,d,e){a=a|0;b=+b;d=+d;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+96|0;g=f+84|0;j=f+64|0;k=f+56|0;l=f+48|0;m=f+80|0;n=f+76|0;o=f+72|0;p=f+40|0;q=f+32|0;r=f+24|0;s=f+16|0;t=f+8|0;u=f;c[g>>2]=a;h[j>>3]=b;h[k>>3]=d;h[l>>3]=e;c[n>>2]=c[(c[g>>2]|0)+8>>2];c[o>>2]=$B(c[n>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;e=+h[c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]>>3];if(+h[l>>3]!=0.0){h[r>>3]=e;h[s>>3]=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[t>>3]=+Q(+(+h[l>>3]));h[u>>3]=+R(+(+h[l>>3]));h[p>>3]=+h[r>>3]*+h[t>>3]-+h[s>>3]*+h[u>>3];h[q>>3]=+h[r>>3]*+h[u>>3]+ +h[s>>3]*+h[t>>3]}else{h[p>>3]=e;h[q>>3]=+h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]}h[c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]>>3]=+h[p>>3]+ +h[j>>3];h[(c[(c[(c[o>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=+h[q>>3]+ +h[k>>3];c[o>>2]=aC(c[n>>2]|0,c[o>>2]|0)|0}c[m>>2]=c[(c[g>>2]|0)+36>>2];while(1){if(!(c[m>>2]|0))break;Ty(c[m>>2]|0,+h[j>>3],+h[k>>3],+h[l>>3]);c[m>>2]=c[(c[m>>2]|0)+4>>2]}i=f;return}function Uy(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;g=i;i=i+160|0;j=g+120|0;k=g+156|0;l=g+112|0;m=g+104|0;n=g+96|0;o=g+88|0;p=g+148|0;q=g+144|0;r=g+140|0;s=g+136|0;t=g+132|0;u=g+80|0;v=g+72|0;w=g+64|0;x=g+128|0;y=g+56|0;z=g+48|0;A=g+40|0;B=g+32|0;C=g+24|0;D=g+16|0;E=g+8|0;F=g;c[k>>2]=a;c[g+152>>2]=b;h[l>>3]=d;h[m>>3]=e;h[n>>3]=f;c[p>>2]=c[(c[k>>2]|0)+8>>2];c[t>>2]=c[(c[k>>2]|0)+32>>2];if(+h[(c[k>>2]|0)+48>>3]>=0.0){h[n>>3]=+h[n>>3]+(3.141592653589793-+h[(c[k>>2]|0)+48>>3]);if(+h[n>>3]<0.0)h[n>>3]=+h[n>>3]+6.283185307179586;h[j>>3]=+h[n>>3];G=+h[j>>3];i=g;return +G}c[x>>2]=az(c[t>>2]|0)|0;if((c[x>>2]|0)==2){h[j>>3]=+h[n>>3]-1.5707963267948966;G=+h[j>>3];i=g;return +G}c[s>>2]=c[c[k>>2]>>2];h[v>>3]=+h[c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]>>3]+ +h[l>>3];h[w>>3]=+h[(c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]+ +h[m>>3];h[o>>3]=+h[v>>3]*+h[v>>3]+ +h[w>>3]*+h[w>>3];c[r>>2]=c[s>>2];c[q>>2]=$B(c[p>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;if((c[q>>2]|0)!=(c[s>>2]|0)?(h[v>>3]=+h[c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]>>3]+ +h[l>>3],h[w>>3]=+h[(c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]+ +h[m>>3],h[u>>3]=+h[v>>3]*+h[v>>3]+ +h[w>>3]*+h[w>>3],+h[u>>3]<+h[o>>3]):0){h[o>>3]=+h[u>>3];c[r>>2]=c[q>>2]}c[q>>2]=aC(c[p>>2]|0,c[q>>2]|0)|0}do if((c[s>>2]|0)!=(c[r>>2]|0)){h[y>>3]=+h[(c[k>>2]|0)+24>>3];h[z>>3]=+h[(c[k>>2]|0)+16>>3]-+h[y>>3];h[A>>3]=+h[c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]>>3];if((c[(c[k>>2]|0)+56>>2]&1|0)!=0?-+h[z>>3]<+h[A>>3]:0){h[B>>3]=+O(+(+h[l>>3]*+h[l>>3]+ +h[m>>3]*+h[m>>3]));h[C>>3]=+h[(c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3];h[D>>3]=+W(+(+h[C>>3]),+(+h[A>>3]+ +h[z>>3]));h[E>>3]=+h[z>>3]-+h[y>>3]/+Q(+(+h[D>>3]));f=1.5707963267948966-+h[D>>3]-+U(+(+h[E>>3]/+h[B>>3]*+Q(+(+h[D>>3]))));h[n>>3]=+h[n>>3]+f;break}h[F>>3]=+W(+(+h[(c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]),+(+h[c[(c[(c[s>>2]|0)+8>>2]|0)+132>>2]>>3]));h[n>>3]=+h[n>>3]+(3.141592653589793-+h[F>>3]-+h[(c[(c[(c[s>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]);if(+h[n>>3]>6.283185307179586)h[n>>3]=+h[n>>3]-6.283185307179586}else h[n>>3]=0.0;while(0);h[j>>3]=+h[n>>3];G=+h[j>>3];i=g;return +G}function Vy(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=bK(12)|0;i=a;return c[b>>2]|0}function Wy(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[(c[e>>2]|0)+4>>2];O4(c[e>>2]|0);c[e>>2]=c[f>>2]}O4(c[d>>2]|0);i=b;return}function Xy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=cz(c[h>>2]|0)|0;h=(c[f>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+1;if(!(c[g>>2]|0))c[g>>2]=c[(c[f>>2]|0)+4>>2];h=c[g>>2]|0;if((c[g>>2]|0)!=(c[(c[f>>2]|0)+4>>2]|0)){c[k>>2]=c[h+4>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[j>>2]|0)+8>>2]=c[g>>2];c[(c[k>>2]|0)+8>>2]=c[j>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];i=e;return}k=c[j>>2]|0;if(h)c[(c[g>>2]|0)+4>>2]=k;else c[c[f>>2]>>2]=k;c[(c[j>>2]|0)+8>>2]=c[g>>2];c[(c[j>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+4>>2]=c[j>>2];i=e;return}function Yy(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=c[c[d>>2]>>2];while(1){if(!(c[f>>2]|0))break;c[e>>2]=c[(c[f>>2]|0)+4>>2];c[(c[f>>2]|0)+4>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+8>>2]=c[e>>2];c[f>>2]=c[(c[f>>2]|0)+8>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[d>>2]|0)+4>>2]=c[c[d>>2]>>2];c[c[d>>2]>>2]=c[e>>2];i=b;return c[d>>2]|0}function Zy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==(c[c[e>>2]>>2]|0)){i=d;return}c[g>>2]=c[c[e>>2]>>2];c[h>>2]=c[(c[f>>2]|0)+8>>2];c[c[e>>2]>>2]=c[f>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[(c[e>>2]|0)+4>>2]|0)+4>>2]=c[g>>2];c[(c[g>>2]|0)+8>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[h>>2];c[(c[h>>2]|0)+4>>2]=0;i=d;return}function _y(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=Vy()|0;c[g>>2]=0;c[f>>2]=c[c[d>>2]>>2];while(1){h=c[e>>2]|0;if(!(c[f>>2]|0))break;Xy(h,c[g>>2]|0,c[c[f>>2]>>2]|0);c[g>>2]=c[(c[e>>2]|0)+4>>2];c[f>>2]=c[(c[f>>2]|0)+4>>2]}i=b;return h|0}function $y(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[o>>2]=0;c[l>>2]=c[c[g>>2]>>2];while(1){if(!(c[l>>2]|0))break;p=c[l>>2]|0;if((c[c[l>>2]>>2]|0)==(c[h>>2]|0)){q=4;break}c[l>>2]=c[p+4>>2]}do if((q|0)==4){c[o>>2]=p;c[m>>2]=c[(c[o>>2]|0)+8>>2];c[n>>2]=c[(c[o>>2]|0)+4>>2];h=c[n>>2]|0;if(c[m>>2]|0)c[(c[m>>2]|0)+4>>2]=h;else c[c[g>>2]>>2]=h;h=c[m>>2]|0;if(c[n>>2]|0){c[(c[n>>2]|0)+8>>2]=h;break}else{c[(c[g>>2]|0)+4>>2]=h;break}}while(0);if(!(c[o>>2]|0))La(133918,133925,217,133936);c[m>>2]=0;c[l>>2]=c[c[g>>2]>>2];while(1){if(!(c[l>>2]|0)){q=24;break}if((c[c[l>>2]>>2]|0)==(c[j>>2]|0))break;c[m>>2]=c[l>>2];c[l>>2]=c[(c[l>>2]|0)+4>>2]}if((q|0)==24){i=f;return}q=c[l>>2]|0;j=c[g>>2]|0;if(!(c[k>>2]|0)){k=c[o>>2]|0;if((q|0)==(c[j>>2]|0)){c[c[g>>2]>>2]=k;c[(c[o>>2]|0)+4>>2]=c[l>>2];c[(c[o>>2]|0)+8>>2]=0;c[(c[l>>2]|0)+8>>2]=c[o>>2];i=f;return}else{c[(c[m>>2]|0)+4>>2]=k;c[(c[o>>2]|0)+8>>2]=c[m>>2];c[(c[o>>2]|0)+4>>2]=c[l>>2];c[(c[l>>2]|0)+8>>2]=c[o>>2];i=f;return}}else if((q|0)==(c[j+4>>2]|0)){c[(c[g>>2]|0)+4>>2]=c[o>>2];c[(c[o>>2]|0)+4>>2]=0;c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[l>>2]|0)+4>>2]=c[o>>2];i=f;return}else{c[(c[o>>2]|0)+8>>2]=c[l>>2];c[(c[o>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];c[(c[(c[l>>2]|0)+4>>2]|0)+8>>2]=c[o>>2];c[(c[l>>2]|0)+4>>2]=c[o>>2];i=f;return}}function az(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+8>>2]|0}function bz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[f>>2]=Yy(c[f>>2]|0)|0;dz(c[e>>2]|0,c[f>>2]|0);O4(c[f>>2]|0);i=d;return}function cz(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(12)|0;c[c[e>>2]>>2]=c[d>>2];i=b;return c[e>>2]|0}function dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[c[f>>2]>>2]|0)){i=d;return}if(c[c[f>>2]>>2]|0){c[(c[(c[e>>2]|0)+4>>2]|0)+4>>2]=c[c[f>>2]>>2];c[(c[c[f>>2]>>2]|0)+8>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];b=(c[e>>2]|0)+8|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0);i=d;return}else{b=c[e>>2]|0;e=c[f>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];i=d;return}}function ez(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0;e=i;i=i+80|0;f=e+68|0;g=e+64|0;j=e+24|0;k=e+60|0;l=e+56|0;m=e+52|0;n=e+48|0;o=e+44|0;p=e+40|0;q=e+36|0;r=e+32|0;s=e+16|0;t=e+8|0;u=e;c[f>>2]=a;c[g>>2]=b;h[j>>3]=d;h[u>>3]=0.0;c[n>>2]=c[(c[g>>2]|0)+8>>2];fz(c[f>>2]|0,c[g>>2]|0);c[l>>2]=gz(c[n>>2]|0)|0;c[m>>2]=hz(c[l>>2]|0)|0;c[o>>2]=iz(c[m>>2]|0)|0;jz(c[n>>2]|0,c[o>>2]|0);c[o>>2]=kz(c[o>>2]|0,c[n>>2]|0)|0;c[q>>2]=az(c[o>>2]|0)|0;h[u>>3]=+lz(c[o>>2]|0);if((c[q>>2]|0)==1)h[t>>3]=0.0;else h[t>>3]=+(c[q>>2]|0)*(+h[j>>3]+ +h[u>>3])/6.283185307179586;c[p>>2]=c[c[o>>2]>>2];while(1){if(!(c[p>>2]|0))break;c[k>>2]=c[c[p>>2]>>2];if(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&8){v=7;break}c[p>>2]=c[(c[p>>2]|0)+4>>2]}if((v|0)==7)Zy(c[o>>2]|0,c[p>>2]|0);c[r>>2]=0;c[p>>2]=c[c[o>>2]>>2];while(1){if(!(c[p>>2]|0))break;c[k>>2]=c[c[p>>2]>>2];c[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=c[r>>2];h[(c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>3]=0.0;h[s>>3]=+(c[r>>2]|0)*(6.283185307179586/+(c[q>>2]|0));d=+h[t>>3]*+Q(+(+h[s>>3]));h[c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]>>3]=d;d=+h[t>>3]*+R(+(+h[s>>3]));h[(c[(c[(c[k>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=d;c[r>>2]=(c[r>>2]|0)+1;c[p>>2]=c[(c[p>>2]|0)+4>>2]}if((c[q>>2]|0)==1){h[(c[g>>2]|0)+16>>3]=+h[u>>3]/2.0;w=c[g>>2]|0;x=w+16|0;y=+h[x>>3];z=c[g>>2]|0;A=z+24|0;h[A>>3]=y;B=c[g>>2]|0;C=B+48|0;h[C>>3]=-1.0;D=c[l>>2]|0;jB(D)|0;E=c[o>>2]|0;i=e;return E|0}else{h[(c[g>>2]|0)+16>>3]=+h[t>>3];w=c[g>>2]|0;x=w+16|0;y=+h[x>>3];z=c[g>>2]|0;A=z+24|0;h[A>>3]=y;B=c[g>>2]|0;C=B+48|0;h[C>>3]=-1.0;D=c[l>>2]|0;jB(D)|0;E=c[o>>2]|0;i=e;return E|0}return 0}function fz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=$B(c[j>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=OA(c[e>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;b=c[h>>2]|0;if((c[(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+12>>2]|0)==(c[f>>2]|0))YA(c[j>>2]|0,c[h>>2]|0,1)|0;c[h>>2]=QA(c[e>>2]|0,c[h>>2]|0)|0}c[g>>2]=aC(c[j>>2]|0,c[g>>2]|0)|0}i=d;return}function gz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;b=i;i=i+48|0;d=b+32|0;e=b+28|0;f=b+24|0;g=b+20|0;h=b+16|0;j=b+12|0;k=b+8|0;l=b+4|0;m=b;c[d>>2]=a;c[e>>2]=0;c[g>>2]=rz(c[d>>2]|0,h)|0;c[f>>2]=kB(c[h>>2]|0)|0;c[j>>2]=sz(c[h>>2]|0)|0;while(1){if((c[e>>2]|0)>=((c[f>>2]|0)-3|0))break;c[k>>2]=yz(c[j>>2]|0)|0;c[m>>2]=TA(c[h>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;d=c[m>>2]|0;c[l>>2]=c[((c[c[m>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if((c[k>>2]|0)==(c[l>>2]|0)){d=c[m>>2]|0;c[l>>2]=c[((c[c[m>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}xz(c[j>>2]|0,c[l>>2]|0);c[m>>2]=UA(c[h>>2]|0,c[m>>2]|0,c[k>>2]|0)|0}tz(c[h>>2]|0,c[k>>2]|0,c[g>>2]|0);c[m>>2]=TA(c[h>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;d=c[m>>2]|0;c[l>>2]=c[((c[c[m>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if((c[k>>2]|0)==(c[l>>2]|0)){d=c[m>>2]|0;c[l>>2]=c[((c[c[m>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}d=(c[(c[l>>2]|0)+8>>2]|0)+236|0;c[d>>2]=(c[d>>2]|0)+-1;wz(c[j>>2]|0,c[l>>2]|0);c[m>>2]=UA(c[h>>2]|0,c[m>>2]|0,c[k>>2]|0)|0}pC(c[h>>2]|0,c[k>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}jB(c[h>>2]|0)|0;vz(c[j>>2]|0);i=b;return c[g>>2]|0}function hz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+144|0;d=b;e=b+12|0;f=b+8|0;g=b+4|0;h=b+16|0;c[e>>2]=a;a=c[12965]|0;c[12965]=a+1;c[d>>2]=a;k3(h,133951,d)|0;c[g>>2]=FD(c[e>>2]|0,h,1)|0;MC(c[g>>2]|0,175049,280,1)|0;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;eC(c[g>>2]|0,c[f>>2]|0,1)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]=0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]=0;h=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if(!(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&1)){c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]=0;qz(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=b;return c[g>>2]|0}function iz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b=i;i=i+48|0;d=b+36|0;e=b+32|0;f=b+28|0;g=b+24|0;h=b+20|0;j=b+16|0;k=b+12|0;l=b+8|0;m=b+4|0;n=b;c[e>>2]=a;c[h>>2]=0;c[l>>2]=0;if((kB(c[e>>2]|0)|0)==1){c[j>>2]=Vy()|0;c[f>>2]=$B(c[e>>2]|0)|0;Xy(c[j>>2]|0,0,c[f>>2]|0);a=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[a>>2]=c[a>>2]|16;c[d>>2]=c[j>>2];o=c[d>>2]|0;i=b;return o|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[n>>2]=0;c[g>>2]=TA(c[e>>2]|0,c[f>>2]|0)|0;while(1){p=c[n>>2]|0;if(!(c[g>>2]|0))break;c[n>>2]=p+1;c[g>>2]=UA(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0)|0}if((p|0)==1)pz(c[f>>2]|0,c[f>>2]|0,0,0);c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[m>>2]=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]|0)+(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]|0);if((c[m>>2]|0)>(c[l>>2]|0)){c[h>>2]=c[f>>2];c[l>>2]=c[m>>2]}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[j>>2]=Vy()|0;c[f>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2];while(1){q=c[j>>2]|0;if((c[f>>2]|0)==(c[h>>2]|0))break;Xy(q,0,c[f>>2]|0);e=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[e>>2]=c[e>>2]|16;c[f>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]}Xy(q,0,c[h>>2]|0);q=(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[q>>2]=c[q>>2]|16;if(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]|0){c[k>>2]=Vy()|0;c[f>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2];while(1){if((c[f>>2]|0)==(c[h>>2]|0))break;Xy(c[k>>2]|0,0,c[f>>2]|0);q=(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[q>>2]=c[q>>2]|16;c[f>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2]}bz(c[j>>2]|0,c[k>>2]|0)}c[d>>2]=c[j>>2];o=c[d>>2]|0;i=b;return o|0}function jz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;if(!(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&16))oz(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0);c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=mz(c[f>>2]|0,c[g>>2]|0)|0;if(!(c[j>>2]|0)){c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=10){m=8;break}c[k>>2]=c[j>>2];c[f>>2]=nz(c[f>>2]|0,c[g>>2]|0,j)|0;if((c[j>>2]|0)==0?1:(c[k>>2]|0)==(c[j>>2]|0)){m=6;break}c[h>>2]=(c[h>>2]|0)+1}if((m|0)==6){c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}else if((m|0)==8){c[e>>2]=c[f>>2];l=c[e>>2]|0;i=d;return l|0}return 0}function lz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b;c[d>>2]=a;h[g>>3]=0.0;c[f>>2]=c[c[d>>2]>>2];while(1){if(!(c[f>>2]|0))break;c[e>>2]=c[c[(c[(c[c[f>>2]>>2]|0)+8>>2]|0)+112>>2]>>2];if(+h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3]>+h[g>>3])h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3];if(+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3]>+h[g>>3])h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3];c[f>>2]=c[(c[f>>2]|0)+4>>2]}i=b;return +(+h[g>>3])}function mz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+28|0;h=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=Cz()|0;c[l>>2]=0;c[m>>2]=1;c[j>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;c[k>>2]=OA(c[f>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]>>2]=0;c[k>>2]=QA(c[f>>2]|0,c[k>>2]|0)|0}c[j>>2]=aC(c[f>>2]|0,c[j>>2]|0)|0}c[g>>2]=c[c[e>>2]>>2];while(1){if(!(c[g>>2]|0))break;c[j>>2]=c[c[g>>2]>>2];c[k>>2]=TA(c[f>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if((c[c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]>>2]|0)>0){c[n>>2]=Hb[c[c[h>>2]>>2]&63](c[h>>2]|0,0,128)|0;while(1){if(!(c[n>>2]|0))break;c[o>>2]=c[(c[n>>2]|0)+8>>2];if(((c[c[(c[(c[o>>2]|0)+8>>2]|0)+120>>2]>>2]|0)>(c[c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]>>2]|0)?(e=c[o>>2]|0,(c[((c[c[o>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)!=(c[j>>2]|0)):0)?(e=c[o>>2]|0,(c[((c[c[o>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)!=(c[j>>2]|0)):0)c[l>>2]=(c[l>>2]|0)+1;c[n>>2]=Hb[c[c[h>>2]>>2]&63](c[h>>2]|0,c[n>>2]|0,8)|0}Fz(c[h>>2]|0,c[k>>2]|0)}c[k>>2]=UA(c[f>>2]|0,c[k>>2]|0,c[j>>2]|0)|0}c[k>>2]=TA(c[f>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if(!(c[c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]>>2]|0)){c[c[(c[(c[k>>2]|0)+8>>2]|0)+120>>2]>>2]=c[m>>2];Ez(c[h>>2]|0,c[k>>2]|0)}c[k>>2]=UA(c[f>>2]|0,c[k>>2]|0,c[j>>2]|0)|0}c[m>>2]=(c[m>>2]|0)+1;c[g>>2]=c[(c[g>>2]|0)+4>>2]}Dz(c[h>>2]|0);i=d;return c[l>>2]|0}function nz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+48|0;f=e+40|0;g=e+36|0;h=e+32|0;j=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[o>>2]=c[c[j>>2]>>2];c[k>>2]=$B(c[h>>2]|0)|0;a:while(1){if(!(c[k>>2]|0)){r=16;break}c[l>>2]=TA(c[h>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;d=c[l>>2]|0;c[m>>2]=c[((c[c[l>>2]>>2]&3|0)==3?d:d+32|0)+28>>2];if((c[m>>2]|0)==(c[k>>2]|0)){d=c[l>>2]|0;c[m>>2]=c[((c[c[l>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]}c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)break;c[n>>2]=_y(c[g>>2]|0)|0;$y(c[g>>2]|0,c[k>>2]|0,c[m>>2]|0,c[p>>2]|0);c[q>>2]=mz(c[g>>2]|0,c[h>>2]|0)|0;if((c[q>>2]|0)<(c[o>>2]|0)){c[o>>2]=c[q>>2];Wy(c[n>>2]|0);if(!(c[o>>2]|0)){r=11;break a}}else{Wy(c[g>>2]|0);c[g>>2]=c[n>>2]}c[p>>2]=(c[p>>2]|0)+1}c[l>>2]=UA(c[h>>2]|0,c[l>>2]|0,c[k>>2]|0)|0}c[k>>2]=aC(c[h>>2]|0,c[k>>2]|0)|0}if((r|0)==11){c[c[j>>2]>>2]=0;c[f>>2]=c[g>>2];s=c[f>>2]|0;i=e;return s|0}else if((r|0)==16){c[c[j>>2]>>2]=c[o>>2];c[f>>2]=c[g>>2];s=c[f>>2]|0;i=e;return s|0}return 0}function oz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[l>>2]=Vy()|0;c[j>>2]=OA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;d=c[j>>2]|0;Xy(c[l>>2]|0,0,c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0);d=c[j>>2]|0;b=(c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[b>>2]=c[b>>2]|32;c[j>>2]=QA(c[f>>2]|0,c[j>>2]|0)|0}c[j>>2]=RA(c[f>>2]|0,c[g>>2]|0)|0;while(1){o=c[l>>2]|0;if(!(c[j>>2]|0))break;b=c[j>>2]|0;Xy(o,0,c[((c[c[j>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0);b=c[j>>2]|0;d=(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]|32;c[j>>2]=SA(c[f>>2]|0,c[j>>2]|0)|0}a:do if((az(o)|0)>=2){c[m>>2]=c[c[h>>2]>>2];while(1){if(!(c[m>>2]|0))break a;if((c[m>>2]|0)==(c[(c[h>>2]|0)+4>>2]|0))c[n>>2]=c[c[h>>2]>>2];else c[n>>2]=c[(c[m>>2]|0)+4>>2];if((c[(c[(c[(c[c[m>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&32|0)!=0?(c[(c[(c[(c[c[n>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&32|0)!=0:0)break;c[m>>2]=c[(c[m>>2]|0)+4>>2]}Xy(c[h>>2]|0,c[m>>2]|0,c[g>>2]|0);c[k>>2]=1}while(0);b:do if((c[k>>2]|0)==0?(az(c[l>>2]|0)|0)>0:0){c[m>>2]=c[c[h>>2]>>2];while(1){if(!(c[m>>2]|0))break b;if(c[(c[(c[(c[c[m>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+4>>2]&32)break;c[m>>2]=c[(c[m>>2]|0)+4>>2]}Xy(c[h>>2]|0,c[m>>2]|0,c[g>>2]|0);c[k>>2]=1}while(0);if(!(c[k>>2]|0))Xy(c[h>>2]|0,0,c[g>>2]|0);c[m>>2]=c[c[l>>2]>>2];while(1){if(!(c[m>>2]|0))break;g=(c[(c[(c[c[m>>2]>>2]|0)+8>>2]|0)+112>>2]|0)+4|0;c[g>>2]=c[g>>2]&-33;c[m>>2]=c[(c[m>>2]|0)+4>>2]}Wy(c[l>>2]|0);i=e;return}function pz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+112>>2]|0)+16>>2];if(!(c[l>>2]|0)){i=f;return}c[j>>2]=(c[j>>2]|0)+1;if(!(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]|0)){c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]=c[g>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]=c[j>>2]}else{if((c[j>>2]|0)<=(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]|0)){if((c[j>>2]|0)<=(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]|0)){i=f;return}c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]=c[g>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]=c[j>>2];i=f;return}if((c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]|0)!=(c[k>>2]|0)){if(!((c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]|0)!=0?(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]|0)==(c[k>>2]|0):0))c[k>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+8>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+16>>2]=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]}c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+4>>2]=c[g>>2];c[(c[(c[(c[l>>2]|0)+8>>2]|0)+112>>2]|0)+16+12>>2]=c[j>>2]}pz(c[g>>2]|0,c[l>>2]|0,c[j>>2]|0,c[k>>2]|0);i=f;return} +function cU(b,f,g,j){b=b|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0;k=i;i=i+80|0;l=k+40|0;m=k+32|0;n=k+64|0;o=k+60|0;p=k+56|0;q=k+52|0;r=k+48|0;s=k+16|0;t=k;u=k+44|0;c[n>>2]=b;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;c[(c[o>>2]|0)+96>>2]=c[p>>2];do if(!(e[(c[o>>2]|0)+36>>1]&64))if(e[(c[p>>2]|0)+36>>1]&64){a[(c[o>>2]|0)+34>>0]=a[(c[p>>2]|0)+34>>0]|0;break}else{a[(c[o>>2]|0)+34>>0]=2;break}while(0);do if(!(e[(c[o>>2]|0)+36>>1]&32)){j=c[p>>2]|0;if((a[(c[p>>2]|0)+88>>0]|0)>=0){a[(c[o>>2]|0)+33>>0]=a[j+88>>0]|0;break}if(e[j+36>>1]&32){a[(c[o>>2]|0)+33>>0]=a[(c[p>>2]|0)+33>>0]|0;break}else{a[(c[o>>2]|0)+33>>0]=1;break}}while(0);do if((a[(c[o>>2]|0)+88+4>>0]|0)!=1)if((a[(c[o>>2]|0)+88+4>>0]|0)==3){c[r>>2]=eU(c[(c[o>>2]|0)+88>>2]|0,c[q>>2]|0)|0;p=(c[(c[o>>2]|0)+88>>2]|0)+16|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];break}else{c[r>>2]=XT(c[(c[(c[n>>2]|0)+8>>2]|0)+144>>2]|0,c[(c[o>>2]|0)+88>>2]|0,c[q>>2]|0)|0;p=(c[(c[o>>2]|0)+88>>2]|0)+8+16|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];break}else{c[r>>2]=UT(c[n>>2]|0,c[(c[o>>2]|0)+88>>2]|0,c[o>>2]|0,c[q>>2]|0)|0;p=(c[(c[o>>2]|0)+88>>2]|0)+48+16|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2]}while(0);c[u>>2]=(d[(c[o>>2]|0)+34>>0]|0)+(d[(c[o>>2]|0)+33>>0]|0)<<1;h[s>>3]=+h[t>>3]+ +(c[u>>2]|0);h[s+8>>3]=+h[t+8>>3]+ +(c[u>>2]|0);do if(e[(c[o>>2]|0)+36>>1]&1){if((e[(c[o>>2]|0)+38>>1]|0)!=0?(e[(c[o>>2]|0)+40>>1]|0)!=0:0){if(!(!(+(e[(c[o>>2]|0)+38>>1]|0)<+h[s>>3])?!(+(e[(c[o>>2]|0)+40>>1]|0)<+h[s+8>>3]):0))v=21;if((v|0)==21?(a[(c[o>>2]|0)+88+4>>0]|0)!=3:0){$z(0,175192,m)|0;c[r>>2]=1}h[s+8>>3]=0.0;h[s>>3]=0.0;break}$z(0,175225,l)|0;c[r>>2]=1}while(0);if(+h[s>>3]>+(e[(c[o>>2]|0)+38>>1]|0))w=+h[s>>3];else w=+(e[(c[o>>2]|0)+38>>1]|0);h[(c[o>>2]|0)+48+16>>3]=w;if(+h[s+8>>3]>+(e[(c[o>>2]|0)+40>>1]|0)){x=+h[s+8>>3];y=c[o>>2]|0;z=y+48|0;A=z+16|0;B=A+8|0;h[B>>3]=x;C=c[r>>2]|0;i=k;return C|0}else{x=+(e[(c[o>>2]|0)+40>>1]|0);y=c[o>>2]|0;z=y+48|0;A=z+16|0;B=A+8|0;h[B>>3]=x;C=c[r>>2]|0;i=k;return C|0}return 0}function dU(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;h=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=1;c[r>>2]=(e[(c[l>>2]|0)+80>>1]|0)-1;while(1){s=c[k>>2]|0;if(!(c[m>>2]|0))break;c[n>>2]=s+(c[r>>2]|0);c[q>>2]=c[n>>2];while(1){if((c[q>>2]|0)<(c[k>>2]|0))break;if(_K(c[h>>2]|0,c[q>>2]|0,c[j>>2]|0)|0)break;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>=(c[k>>2]|0)){c[k>>2]=(c[q>>2]|0)+1;continue}else{c[m>>2]=0;continue}}c[p>>2]=s;while(1){if((c[p>>2]|0)>=((c[k>>2]|0)+(e[(c[l>>2]|0)+80>>1]|0)|0))break;c[o>>2]=c[j>>2];while(1){if((c[o>>2]|0)>=((c[j>>2]|0)+(e[(c[l>>2]|0)+82>>1]|0)|0))break;YK(c[h>>2]|0,c[p>>2]|0,c[o>>2]|0);c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}i=g;return c[k>>2]|0}function eU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+48|0;f=e;g=e+44|0;j=e+40|0;k=e+24|0;l=e+16|0;m=e+8|0;c[g>>2]=b;c[j>>2]=d;c[k+4>>2]=0;c[k>>2]=0;d=k+8|0;FF(m,c[(c[j>>2]|0)+52>>2]|0,c[(c[g>>2]|0)+32>>2]|0);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];if((c[k+8>>2]|0)==-1?(c[k+8+4>>2]|0)==-1:0){c[l>>2]=1;c[k+8+4>>2]=0;c[k+8>>2]=0;c[f>>2]=c[(c[g>>2]|0)+32>>2];$z(1,175275,f)|0}else{c[l>>2]=0;a[(c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]|0)+114>>0]=1}h[c[g>>2]>>3]=+(c[k>>2]|0);h[(c[g>>2]|0)+8>>3]=+(c[k+4>>2]|0);h[(c[g>>2]|0)+16>>3]=+(c[k+8>>2]|0);h[(c[g>>2]|0)+16+8>>3]=+(c[k+8+4>>2]|0);i=e;return c[l>>2]|0}function fU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;if((c[(c[f>>2]|0)+4>>2]|0)!=0?(F3(c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0)==0:0){c[h>>2]=c[f>>2];j=c[h>>2]|0;i=e;return j|0}if((a[(c[f>>2]|0)+88+4>>0]|0)==1){c[h>>2]=OT(c[(c[f>>2]|0)+88>>2]|0,c[g>>2]|0)|0;j=c[h>>2]|0;i=e;return j|0}else{c[h>>2]=0;j=c[h>>2]|0;i=e;return j|0}return 0}function gU(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;zT((c[d>>2]|0)+88|0,0);wT(c[d>>2]|0);O4(c[d>>2]|0);i=b;return}function hU(d,e,f,g,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;j=+j;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;n=i;i=i+192|0;o=n+136|0;p=n+176|0;q=n+172|0;r=n+168|0;s=n+128|0;t=n+164|0;u=n+160|0;v=n+156|0;w=n+120|0;x=n+112|0;y=n+104|0;z=n+48|0;A=n+16|0;B=n;C=n+152|0;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;h[s>>3]=j;c[t>>2]=m;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;h[w>>3]=+h[g>>3];h[x>>3]=+h[w>>3]-+h[s>>3];h[y>>3]=+h[w>>3]+ +h[s>>3];h[B+8>>3]=+h[g+8>>3]+(+h[l+16+8>>3]-+h[l+8>>3])/2.0;lR(c[p>>2]|0,1);c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[q>>2]|0))break;switch(a[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+6>>0]|0){case 108:{h[g>>3]=+h[x>>3];break}case 114:{h[g>>3]=+h[y>>3]-+h[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+8>>3];break}default:h[g>>3]=+h[w>>3]-+h[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+8>>3]/2.0}l=B+8|0;h[l>>3]=+h[l>>3]-+h[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+16>>3];c[C>>2]=c[(c[r>>2]|0)+((c[u>>2]|0)*24|0)>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(b[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+4>>1]|0))break;if((c[(c[C>>2]|0)+4>>2]|0)!=0?+h[(c[(c[C>>2]|0)+4>>2]|0)+16>>3]>0.0:0)h[A+16>>3]=+h[(c[(c[C>>2]|0)+4>>2]|0)+16>>3];else h[A+16>>3]=+h[k+16>>3];if((c[(c[C>>2]|0)+4>>2]|0)!=0?(c[c[(c[C>>2]|0)+4>>2]>>2]|0)!=0:0)c[A>>2]=c[c[(c[C>>2]|0)+4>>2]>>2];else c[A>>2]=c[k>>2];if((c[(c[C>>2]|0)+4>>2]|0)!=0?(c[(c[(c[C>>2]|0)+4>>2]|0)+4>>2]|0)!=0:0)c[A+4>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+4>>2];else c[A+4>>2]=c[k+4>>2];if((c[(c[C>>2]|0)+4>>2]|0)!=0?(c[(c[(c[C>>2]|0)+4>>2]|0)+24>>2]&127|0)!=0:0){l=A+24|0;c[l>>2]=c[l>>2]&-128|c[(c[(c[C>>2]|0)+4>>2]|0)+24>>2]&127}else{l=A+24|0;c[l>>2]=c[l>>2]&-128}oR(c[p>>2]|0,c[A+4>>2]|0);c[z>>2]=c[c[C>>2]>>2];c[z+4>>2]=A;h[z+16>>3]=+h[(c[C>>2]|0)+16>>3];if(c[t>>2]|0)h[z+24>>3]=+h[(c[C>>2]|0)+24>>3];else h[z+24>>3]=1.0;c[(c[z+4>>2]|0)+8>>2]=c[(c[(c[C>>2]|0)+4>>2]|0)+8>>2];c[z+8>>2]=c[(c[C>>2]|0)+8>>2];h[z+32>>3]=+h[(c[C>>2]|0)+32>>3];h[z+32+8>>3]=+h[(c[r>>2]|0)+((c[u>>2]|0)*24|0)+16>>3];a[z+48>>0]=108;h[B>>3]=+h[g>>3];l=c[p>>2]|0;c[o>>2]=c[B>>2];c[o+4>>2]=c[B+4>>2];c[o+8>>2]=c[B+8>>2];c[o+12>>2]=c[B+12>>2];nR(l,o,z);h[g>>3]=+h[g>>3]+ +h[(c[C>>2]|0)+32>>3];c[C>>2]=(c[C>>2]|0)+56;c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}mR(c[p>>2]|0);i=n;return}function iU(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;l=i;i=i+256|0;m=l+8|0;n=l;o=l+88|0;p=l+84|0;q=l+80|0;r=l+76|0;s=l+72|0;t=l+68|0;u=l+64|0;v=l+60|0;w=l+56|0;x=l+40|0;y=l+224|0;z=l+96|0;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;c[s>>2]=k;c[t>>2]=c[(c[o>>2]|0)+16>>2];c[w>>2]=0;c[c[r>>2]>>2]=c[(c[t>>2]|0)+208>>2];c[(c[r>>2]|0)+4>>2]=c[(c[t>>2]|0)+228>>2];c[(c[r>>2]|0)+8>>2]=c[(c[t>>2]|0)+244>>2];c[(c[r>>2]|0)+12>>2]=c[(c[t>>2]|0)+212>>2];a[(c[r>>2]|0)+16>>0]=(b[(c[t>>2]|0)+260>>1]<<15&65535)<<16>>16>>15;c[v>>2]=c[(c[q>>2]|0)+16>>2];if(!((c[v>>2]|0)!=0?(a[c[v>>2]>>0]|0)!=0:0)){dA(x,128,z);if(!(c[(c[p>>2]|0)+60>>2]|0)){z=M3(zH(c[o>>2]|0,c[(c[t>>2]|0)+8>>2]|0,x)|0)|0;c[(c[p>>2]|0)+60>>2]=z;a[(c[p>>2]|0)+64>>0]=1}gA(x,c[(c[p>>2]|0)+60>>2]|0)|0;p=c[22875]|0;c[22875]=p+1;c[n>>2]=p;k3(y,175442,n)|0;gA(x,y)|0;if((c[x+4>>2]|0)>>>0>=(c[x+8>>2]|0)>>>0)eA(x,1)|0;y=x+4|0;n=c[y>>2]|0;c[y>>2]=n+1;a[n>>0]=0;n=c[x>>2]|0;c[x+4>>2]=n;c[v>>2]=n;c[w>>2]=1}c[u>>2]=yH(c[o>>2]|0,0,c[c[q>>2]>>2]|0,c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+8>>2]|0,c[v>>2]|0,c[(c[t>>2]|0)+8>>2]|0)|0;if(c[w>>2]|0)hA(x);if(!(c[u>>2]|0)){A=c[u>>2]|0;i=l;return A|0}do if(c[s>>2]|0){if((c[c[r>>2]>>2]|0)==0?(d[(c[r>>2]|0)+16>>0]|0)==0:0)break;kR(c[o>>2]|0)}while(0);if((c[(c[t>>2]|0)+208>>2]|0)==0?((b[(c[t>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0){A=c[u>>2]|0;i=l;return A|0}r=c[o>>2]|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[m+20>>2]=c[h+20>>2];c[m+24>>2]=c[h+24>>2];c[m+28>>2]=c[h+28>>2];CH(r,m);jR(c[o>>2]|0,c[(c[t>>2]|0)+208>>2]|0,c[(c[t>>2]|0)+228>>2]|0,c[(c[t>>2]|0)+244>>2]|0,c[(c[t>>2]|0)+212>>2]|0);A=c[u>>2]|0;i=l;return A|0}function jU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=(IH(c[k>>2]|0,c[n>>2]|0,p)|0)<<24>>24!=0;e=c[j>>2]|0;do if(f){pR(e,c[c[n>>2]>>2]|0);d=c[j>>2]|0;if(c[(c[n>>2]|0)+4>>2]|0)qR(d,c[(c[n>>2]|0)+4>>2]|0,c[l>>2]|0,+g[p>>2]);else qR(d,174917,c[l>>2]|0,+g[p>>2]);if(c[m>>2]&2){c[o>>2]=3;break}else{c[o>>2]=2;break}}else{pR(e,c[k>>2]|0);c[o>>2]=1}while(0);oR(c[j>>2]|0,175430);i=h;return c[o>>2]|0}function kU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;j=e;c[f>>2]=a;c[g>>2]=d;d=c[f>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=(c[f>>2]|0)+32|0;a=b+16|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];if((c[g>>2]|0)>1){h[j>>3]=+(c[g>>2]|0)/2.0;g=c[f>>2]|0;h[g>>3]=+h[g>>3]+ +h[j>>3];g=(c[f>>2]|0)+8|0;h[g>>3]=+h[g>>3]+ +h[j>>3];g=(c[f>>2]|0)+32|0;h[g>>3]=+h[g>>3]-+h[j>>3];g=(c[f>>2]|0)+32+8|0;h[g>>3]=+h[g>>3]-+h[j>>3]}h[(c[f>>2]|0)+16>>3]=+h[(c[f>>2]|0)+32>>3];h[(c[f>>2]|0)+16+8>>3]=+h[(c[f>>2]|0)+8>>3];h[(c[f>>2]|0)+48>>3]=+h[c[f>>2]>>3];h[(c[f>>2]|0)+48+8>>3]=+h[(c[f>>2]|0)+32+8>>3];i=e;return c[f>>2]|0}function lU(b,f,g){b=b|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;j=i;i=i+224|0;k=j+112|0;l=j+212|0;m=j+208|0;n=j+204|0;o=j+168|0;p=j+80|0;q=j+64|0;r=j+164|0;s=j+160|0;t=j;u=j+152|0;v=j+144|0;c[l>>2]=b;c[m>>2]=f;c[n>>2]=g;g=(c[m>>2]|0)+48|0;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];c[p+16>>2]=c[g+16>>2];c[p+20>>2]=c[g+20>>2];c[p+24>>2]=c[g+24>>2];c[p+28>>2]=c[g+28>>2];g=c[n>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];if(c[c[m>>2]>>2]|0)w=1;else w=(c[(c[m>>2]|0)+8>>2]|0)!=0;c[s>>2]=w&1;h[p>>3]=+h[p>>3]+ +h[q>>3];w=p+16|0;h[w>>3]=+h[w>>3]+ +h[q>>3];w=p+8|0;h[w>>3]=+h[w>>3]+ +h[q+8>>3];w=p+16+8|0;h[w>>3]=+h[w>>3]+ +h[q+8>>3];if((c[s>>2]|0)!=0?(c[(c[l>>2]|0)+152>>2]&4|0)==0:0){q=c[l>>2]|0;w=c[n>>2]|0;g=c[m>>2]|0;c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];c[r>>2]=iU(q,w,g,k,o,1)|0}else c[r>>2]=0;do if(!(e[(c[m>>2]|0)+42>>1]&32)){if(c[(c[m>>2]|0)+20>>2]|0){c[v>>2]=jU(c[l>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+28>>2]|0,e[(c[m>>2]|0)+42>>1]|0,u)|0;g=c[l>>2]|0;if(e[(c[m>>2]|0)+42>>1]&4){w=d[(c[m>>2]|0)+33>>0]|0;c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];q=kU(t,k,w)|0;cM(g,q,4,4,c[v>>2]|0)}else{q=c[v>>2]|0;c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];uR(g,k,q)}O4(c[u>>2]|0)}if(a[(c[m>>2]|0)+33>>0]|0){q=c[l>>2]|0;g=c[m>>2]|0;c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];nU(q,g,k)}if((a[(c[m>>2]|0)+88+4>>0]|0)==1){KT(c[l>>2]|0,c[(c[m>>2]|0)+88>>2]|0,c[n>>2]|0);break}g=c[l>>2]|0;q=(c[m>>2]|0)+88|0;if((a[(c[m>>2]|0)+88+4>>0]|0)==3){qU(g,c[q>>2]|0,c[n>>2]|0);break}else{LT(g,c[q>>2]|0,c[n>>2]|0);break}}while(0);if(c[r>>2]|0)oU(c[l>>2]|0,o,1);if(!(c[s>>2]|0)){i=j;return}if(!(c[(c[l>>2]|0)+152>>2]&4)){i=j;return}s=c[l>>2]|0;r=c[n>>2]|0;n=c[m>>2]|0;c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[k+16>>2]=c[p+16>>2];c[k+20>>2]=c[p+20>>2];c[k+24>>2]=c[p+24>>2];c[k+28>>2]=c[p+28>>2];if(!(iU(s,r,n,k,o,0)|0)){i=j;return}oU(c[l>>2]|0,o,0);i=j;return}function mU(b,f,g,j,k){b=b|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;l=i;i=i+112|0;m=l+72|0;n=l+104|0;o=l+100|0;p=l+96|0;q=l+92|0;r=l+88|0;s=l+56|0;t=l+48|0;u=l+108|0;v=l+16|0;w=l;c[n>>2]=b;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;c[r>>2]=k;k=(c[o>>2]|0)+48|0;c[v>>2]=c[k>>2];c[v+4>>2]=c[k+4>>2];c[v+8>>2]=c[k+8>>2];c[v+12>>2]=c[k+12>>2];c[v+16>>2]=c[k+16>>2];c[v+20>>2]=c[k+20>>2];c[v+24>>2]=c[k+24>>2];c[v+28>>2]=c[k+28>>2];k=c[p>>2]|0;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];c[w+8>>2]=c[k+8>>2];c[w+12>>2]=c[k+12>>2];if(!(c[q>>2]|0))c[q>>2]=174917;pR(c[n>>2]|0,c[q>>2]|0);oR(c[n>>2]|0,c[q>>2]|0);q=(c[o>>2]|0)+48|0;c[v>>2]=c[q>>2];c[v+4>>2]=c[q+4>>2];c[v+8>>2]=c[q+8>>2];c[v+12>>2]=c[q+12>>2];c[v+16>>2]=c[q+16>>2];c[v+20>>2]=c[q+20>>2];c[v+24>>2]=c[q+24>>2];c[v+28>>2]=c[q+28>>2];h[v>>3]=+h[v>>3]+ +h[w>>3];q=v+16|0;h[q>>3]=+h[q>>3]+ +h[w>>3];q=v+8|0;h[q>>3]=+h[q>>3]+ +h[w+8>>3];q=v+16+8|0;h[q>>3]=+h[q>>3]+ +h[w+8>>3];if((d[(c[o>>2]|0)+100>>0]&1|0)!=0?((e[(c[o>>2]|0)+84>>1]|0)+(e[(c[o>>2]|0)+80>>1]|0)|0)<(c[(c[(c[o>>2]|0)+96>>2]|0)+104>>2]|0):0){q=c[o>>2]|0;do if(e[(c[o>>2]|0)+86>>1]|0)if(((e[q+86>>1]|0)+(e[(c[o>>2]|0)+82>>1]|0)|0)==(c[(c[(c[o>>2]|0)+96>>2]|0)+100>>2]|0)){a[u>>0]=(d[(c[(c[o>>2]|0)+96>>2]|0)+33>>0]|0)+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0);h[s+8>>3]=+h[v+8>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0)-+(d[u>>0]|0);break}else{a[u>>0]=0;h[s+8>>3]=+h[v+8>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);break}else{a[u>>0]=(d[(c[q+96>>2]|0)+33>>0]|0)+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0);h[s+8>>3]=+h[v+8>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0)}while(0);h[s>>3]=+h[v+16>>3]+ +((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);h[t>>3]=+(d[u>>0]|0)+ +h[v+16+8>>3]-+h[v+8>>3]+ +(a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0);q=c[n>>2]|0;x=+h[t>>3];c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];pU(q,m,0.0,x)}if(!(d[(c[o>>2]|0)+100>>0]&2)){i=l;return}if(((e[(c[o>>2]|0)+86>>1]|0)+(e[(c[o>>2]|0)+82>>1]|0)|0)>=(c[(c[(c[o>>2]|0)+96>>2]|0)+100>>2]|0)){i=l;return}q=c[o>>2]|0;do if(!(e[(c[o>>2]|0)+84>>1]|0)){a[u>>0]=(d[(c[q+96>>2]|0)+33>>0]|0)+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0);h[s>>3]=+h[v>>3]-+(d[u>>0]|0)-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);if(((e[(c[o>>2]|0)+84>>1]|0)+(e[(c[o>>2]|0)+80>>1]|0)|0)==(c[(c[(c[o>>2]|0)+96>>2]|0)+104>>2]|0)){a[u>>0]=d[u>>0]<<1;break}if((c[r>>2]|0)!=0?(e[(c[r>>2]|0)+86>>1]|0)!=(e[(c[o>>2]|0)+86>>1]|0):0)a[u>>0]=~~(+(d[u>>0]|0)+(+h[(c[(c[o>>2]|0)+96>>2]|0)+48+16>>3]+ +h[w>>3]-(+h[v+16>>3]+ +((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0))))}else{if(((e[q+84>>1]|0)+(e[(c[o>>2]|0)+80>>1]|0)|0)==(c[(c[(c[o>>2]|0)+96>>2]|0)+104>>2]|0)){a[u>>0]=(d[(c[(c[o>>2]|0)+96>>2]|0)+33>>0]|0)+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0);h[s>>3]=+h[v>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);break}a[u>>0]=0;h[s>>3]=+h[v>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);if((c[r>>2]|0)!=0?(e[(c[r>>2]|0)+86>>1]|0)!=(e[(c[o>>2]|0)+86>>1]|0):0)a[u>>0]=~~(+(d[u>>0]|0)+(+h[(c[(c[o>>2]|0)+96>>2]|0)+48+16>>3]+ +h[w>>3]-(+h[v+16>>3]+ +((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0))))}while(0);h[s+8>>3]=+h[v+8>>3]-+((a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0)/2|0|0);h[t>>3]=+(d[u>>0]|0)+ +h[v+16>>3]-+h[v>>3]+ +(a[(c[(c[o>>2]|0)+96>>2]|0)+32>>0]|0);o=c[n>>2]|0;x=+h[t>>3];c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];pU(o,m,x,0.0);i=l;return}function nU(a,f,g){a=a|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+176|0;k=j+104|0;l=j+156|0;m=j+152|0;n=j+8|0;o=j+144|0;p=j+136|0;q=j+160|0;r=j;c[l>>2]=a;c[m>>2]=f;if(c[(c[m>>2]|0)+24>>2]|0)s=c[(c[m>>2]|0)+24>>2]|0;else s=174917;c[p>>2]=s;oR(c[l>>2]|0,c[p>>2]|0);if((e[(c[m>>2]|0)+42>>1]|0)&384){c[o+4>>2]=0;c[o>>2]=0;if(!((e[(c[m>>2]|0)+42>>1]|0)&256)){if((e[(c[m>>2]|0)+42>>1]|0)&128)c[o>>2]=175390}else c[o>>2]=175383;rR(c[l>>2]|0,o)}else rR(c[l>>2]|0,c[(c[c[l>>2]>>2]|0)+336>>2]|0);zR(c[l>>2]|0,+(d[(c[m>>2]|0)+33>>0]|0));if((e[(c[m>>2]|0)+42>>1]|0)&4){o=c[l>>2]|0;p=d[(c[m>>2]|0)+33>>0]|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[k+16>>2]=c[g+16>>2];c[k+20>>2]=c[g+20>>2];c[k+24>>2]=c[g+24>>2];c[k+28>>2]=c[g+28>>2];cM(o,kU(n,k,p)|0,4,4,0);i=j;return}p=(e[(c[m>>2]|0)+36>>1]|0)&15360;b[q>>1]=p;if(!(p<<16>>16)){if((d[(c[m>>2]|0)+33>>0]|0|0)>1){h[r>>3]=+(d[(c[m>>2]|0)+33>>0]|0)/2.0;h[g>>3]=+h[g>>3]+ +h[r>>3];p=g+8|0;h[p>>3]=+h[p>>3]+ +h[r>>3];p=g+16|0;h[p>>3]=+h[p>>3]-+h[r>>3];p=g+16+8|0;h[p>>3]=+h[p>>3]-+h[r>>3]}r=c[l>>2]|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[k+16>>2]=c[g+16>>2];c[k+20>>2]=c[g+20>>2];c[k+24>>2]=c[g+24>>2];c[k+28>>2]=c[g+28>>2];uR(r,k,0);i=j;return}r=d[(c[m>>2]|0)+33>>0]|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[k+16>>2]=c[g+16>>2];c[k+20>>2]=c[g+20>>2];c[k+24>>2]=c[g+24>>2];c[k+28>>2]=c[g+28>>2];kU(n+16|0,k,r)|0;r=e[q>>1]|0;if((r|0)<8192)switch(r|0){case 4096:{wR(c[l>>2]|0,n+32|0,2);i=j;return}case 2048:{wR(c[l>>2]|0,n+48|0,2);i=j;return}case 1024:{q=n+64|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];wR(c[l>>2]|0,n,2);i=j;return}case 6144:{wR(c[l>>2]|0,n+32|0,3);i=j;return}case 3072:{q=n+80|0;k=n+16|0;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];wR(c[l>>2]|0,n+48|0,3);i=j;return}case 7168:{k=n+80|0;q=n+16|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];wR(c[l>>2]|0,n+32|0,4);i=j;return}case 5120:{q=n+64|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];i=j;return}default:{i=j;return}}else switch(r|0){case 8192:{wR(c[l>>2]|0,n+16|0,2);i=j;return}case 12288:{wR(c[l>>2]|0,n+16|0,3);i=j;return}case 9216:{r=n+64|0;c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];wR(c[l>>2]|0,n,3);i=j;return}case 14336:{wR(c[l>>2]|0,n+16|0,4);i=j;return}case 11264:{r=n+80|0;q=n+16|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];q=n+96|0;r=n+32|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];wR(c[l>>2]|0,n+48|0,4);i=j;return}case 13312:{r=n+64|0;c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];wR(c[l>>2]|0,n,4);i=j;return}case 10240:{wR(c[l>>2]|0,n+16|0,2);wR(c[l>>2]|0,n+48|0,2);i=j;return}default:{i=j;return}}}function oU(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[h>>2]=a;c[j>>2]=e;c[k>>2]=f;c[l>>2]=c[(c[h>>2]|0)+16>>2];if(!((c[(c[l>>2]|0)+208>>2]|0)==0?((b[(c[l>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0))kR(c[h>>2]|0);if((c[(c[l>>2]|0)+208>>2]|0)!=(c[c[j>>2]>>2]|0)){O4(c[(c[l>>2]|0)+208>>2]|0);c[(c[l>>2]|0)+208>>2]=c[c[j>>2]>>2]}if((c[(c[l>>2]|0)+228>>2]|0)!=(c[(c[j>>2]|0)+4>>2]|0)){O4(c[(c[l>>2]|0)+228>>2]|0);c[(c[l>>2]|0)+228>>2]=c[(c[j>>2]|0)+4>>2]}if((c[(c[l>>2]|0)+244>>2]|0)!=(c[(c[j>>2]|0)+8>>2]|0)){O4(c[(c[l>>2]|0)+244>>2]|0);c[(c[l>>2]|0)+244>>2]=c[(c[j>>2]|0)+8>>2]}if((c[(c[l>>2]|0)+212>>2]|0)!=(c[(c[j>>2]|0)+12>>2]|0)){O4(c[(c[l>>2]|0)+212>>2]|0);c[(c[l>>2]|0)+212>>2]=c[(c[j>>2]|0)+12>>2]}f=(c[l>>2]|0)+260|0;b[f>>1]=b[f>>1]&-2|(d[(c[j>>2]|0)+16>>0]|0)&1;if(!(c[k>>2]|0)){i=g;return}if((c[(c[l>>2]|0)+208>>2]|0)==0?((b[(c[l>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)==0:0){i=g;return}jR(c[h>>2]|0,c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+228>>2]|0,c[(c[l>>2]|0)+244>>2]|0,c[(c[l>>2]|0)+212>>2]|0);i=g;return}function pU(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+96|0;g=f+48|0;j=f+80|0;k=f+40|0;l=f+32|0;m=f;c[j>>2]=a;h[k>>3]=d;h[l>>3]=e;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];h[m+16>>3]=+h[b>>3]+ +h[k>>3];h[m+16+8>>3]=+h[b+8>>3]+ +h[l>>3];l=c[j>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[g+16>>2]=c[m+16>>2];c[g+20>>2]=c[m+20>>2];c[g+24>>2]=c[m+24>>2];c[g+28>>2]=c[m+28>>2];uR(l,g,1);i=f;return}function qU(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+112|0;g=f+108|0;j=f+104|0;k=f+100|0;l=f+32|0;m=f;n=f+96|0;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[j>>2]|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[m+20>>2]=c[e+20>>2];c[m+24>>2]=c[e+24>>2];c[m+28>>2]=c[e+28>>2];h[m>>3]=+h[m>>3]+ +h[c[k>>2]>>3];e=m+8|0;h[e>>3]=+h[e>>3]+ +h[(c[k>>2]|0)+8>>3];e=m+16|0;h[e>>3]=+h[e>>3]+ +h[c[k>>2]>>3];e=m+16+8|0;h[e>>3]=+h[e>>3]+ +h[(c[k>>2]|0)+8>>3];e=m+16|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];e=l+32|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];h[l+16>>3]=+h[l+32>>3];h[l+16+8>>3]=+h[l+8>>3];h[l+48>>3]=+h[l>>3];h[l+48+8>>3]=+h[l+32+8>>3];if(c[(c[j>>2]|0)+36>>2]|0)c[n>>2]=c[(c[j>>2]|0)+36>>2];else c[n>>2]=c[(c[k>>2]|0)+56>>2];if(!(c[(c[j>>2]|0)+32>>2]|0))La(175397,175072,627,175405);if(a[c[(c[j>>2]|0)+32>>2]>>0]|0){yR(c[g>>2]|0,c[(c[j>>2]|0)+32>>2]|0,l,4,1,c[n>>2]|0);i=f;return}else La(175419,175072,628,175405)}function rU(){return Nz(91504,c[12989]|0)|0}function sU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[f>>2];Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,g,1)|0;i=d;return}function tU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,f,512)|0)!=0&1;i=d;return b|0}function uU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e;c[e+12>>2]=a;c[f>>2]=b;c[e+4>>2]=d;c[g>>2]=bK(12)|0;c[c[g>>2]>>2]=c[c[f>>2]>>2];i=e;return c[g>>2]|0}function vU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function wU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+32|0;g=f+16|0;h=f+8|0;j=f+4|0;c[f+12>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;do if((c[c[h>>2]>>2]|0)<=(c[c[j>>2]>>2]|0))if((c[c[h>>2]>>2]|0)<(c[c[j>>2]>>2]|0)){c[g>>2]=-1;break}else{c[g>>2]=0;break}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function xU(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(c[22885]|0){c[22897]=0;i=b;return}c[22885]=bK((c[d>>2]|0)+1<<2)|0;c[c[22885]>>2]=91544;c[22896]=c[d>>2];c[22897]=0;i=b;return}function yU(){O4(c[22885]|0);c[22885]=0;c[22897]=0;return}function zU(){c[22897]=0;return}function AU(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a;c[b>>2]=1;while(1){if((c[b>>2]|0)>(c[22897]|0)){d=6;break}if((c[(c[(c[22885]|0)+(c[b>>2]<<2)>>2]|0)+4>>2]|0)!=(c[b>>2]|0)){d=4;break}c[b>>2]=(c[b>>2]|0)+1}if((d|0)==4)La(176099,175446,61,175452);else if((d|0)==6){i=a;return}}function BU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[e>>2]=c[(c[22885]|0)+(c[d>>2]<<2)>>2];c[f>>2]=c[c[e>>2]>>2];c[g>>2]=(c[d>>2]|0)/2|0;while(1){a=c[(c[22885]|0)+(c[g>>2]<<2)>>2]|0;c[h>>2]=a;if((c[a>>2]|0)>=(c[f>>2]|0))break;c[(c[22885]|0)+(c[d>>2]<<2)>>2]=c[h>>2];c[(c[h>>2]|0)+4>>2]=c[d>>2];c[d>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)/2|0}c[(c[22885]|0)+(c[d>>2]<<2)>>2]=c[e>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];i=b;return}function CU(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;c[e>>2]=a;if((c[22897]|0)==(c[22896]|0)){$z(1,175460,b)|0;c[d>>2]=1;f=c[d>>2]|0;i=b;return f|0}else{c[22897]=(c[22897]|0)+1;c[(c[22885]|0)+(c[22897]<<2)>>2]=c[e>>2];BU(c[22897]|0);AU();c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}return 0}function DU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[e>>2]=c[(c[22885]|0)+(c[d>>2]<<2)>>2];c[f>>2]=c[c[e>>2]>>2];c[g>>2]=(c[22897]|0)/2|0;while(1){if((c[d>>2]|0)>(c[g>>2]|0)){k=8;break}c[j>>2]=(c[d>>2]|0)+(c[d>>2]|0);c[h>>2]=c[(c[22885]|0)+(c[j>>2]<<2)>>2];if((c[j>>2]|0)<(c[22897]|0)?(c[c[h>>2]>>2]|0)<(c[c[(c[22885]|0)+((c[j>>2]|0)+1<<2)>>2]>>2]|0):0){c[j>>2]=(c[j>>2]|0)+1;c[h>>2]=c[(c[22885]|0)+(c[j>>2]<<2)>>2]}if((c[f>>2]|0)>=(c[c[h>>2]>>2]|0)){k=8;break}c[(c[22885]|0)+(c[d>>2]<<2)>>2]=c[h>>2];c[(c[h>>2]|0)+4>>2]=c[d>>2];c[d>>2]=c[j>>2]}if((k|0)==8){c[(c[22885]|0)+(c[d>>2]<<2)>>2]=c[e>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];i=b;return}}function EU(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+4|0;d=a;if(!(c[22897]|0)){c[b>>2]=0;e=c[b>>2]|0;i=a;return e|0}c[d>>2]=c[(c[22885]|0)+4>>2];c[(c[22885]|0)+4>>2]=c[(c[22885]|0)+(c[22897]<<2)>>2];c[22897]=(c[22897]|0)+-1;if(c[22897]|0)DU(1);AU();c[b>>2]=c[d>>2];e=c[b>>2]|0;i=a;return e|0}function FU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];BU(c[(c[e>>2]|0)+4>>2]|0);AU();i=d;return}function GU(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;g=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=e;c[n>>2]=(d[(c[(c[g>>2]|0)+16>>2]|0)+((c[(c[k>>2]|0)+12>>2]|0)*40|0)+36>>0]|0|0)!=(d[(c[(c[g>>2]|0)+16>>2]|0)+((c[(c[k>>2]|0)+16>>2]|0)*40|0)+36>>0]|0|0)&1;c[o>>2]=~~((+h[(c[j>>2]|0)+40+16+8>>3]-+h[(c[j>>2]|0)+40+8>>3]-3.0)/2.0);c[p>>2]=~~((+h[(c[j>>2]|0)+40+16>>3]-+h[(c[j>>2]|0)+40>>3]-3.0)/2.0);c[q>>2]=(c[o>>2]|0)<(c[p>>2]|0)?c[o>>2]|0:c[p>>2]|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[m>>2]=c[(c[j>>2]|0)+8+(c[l>>2]<<2)>>2];if((d[(c[(c[g>>2]|0)+16>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*40|0)+36>>0]|0|0)==(d[(c[(c[g>>2]|0)+16>>2]|0)+((c[(c[m>>2]|0)+16>>2]|0)*40|0)+36>>0]|0|0))break;JU(c[j>>2]|0,c[m>>2]|0,c[q>>2]|0);c[l>>2]=(c[l>>2]|0)+1}while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[m>>2]=c[(c[j>>2]|0)+8+(c[l>>2]<<2)>>2];if(!((c[n>>2]|0)==0?(c[m>>2]|0)!=(c[k>>2]|0):0))JU(c[j>>2]|0,c[m>>2]|0,(d[(c[(c[g>>2]|0)+16>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*40|0)+36>>0]|0|0)!=0?c[o>>2]|0:c[p>>2]|0);c[l>>2]=(c[l>>2]|0)+1}i=f;return}function HU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;d=i;i=i+144|0;e=d+80|0;f=d+140|0;g=d+132|0;j=d+128|0;k=d+124|0;l=d+120|0;m=d+116|0;n=d+112|0;o=d+72|0;p=d+64|0;q=d+32|0;r=d;c[f>>2]=a;c[d+136>>2]=b;c[j>>2]=bK(28)|0;b=kB(c[f>>2]|0)|0;c[(c[j>>2]|0)+4>>2]=b;b=bK((c[(c[j>>2]|0)+4>>2]|0)*72|0)|0;c[(c[j>>2]|0)+12>>2]=b;c[n>>2]=b;h[r+8>>3]=1797693134862315708145274.0e284;h[r>>3]=1797693134862315708145274.0e284;h[r+16+8>>3]=-1797693134862315708145274.0e284;h[r+16>>3]=-1797693134862315708145274.0e284;c[g>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;h[o>>3]=(+h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3])/2.0;if(+h[o>>3]<1.0)h[o>>3]=1.0;h[p>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+80>>3]/2.0;if(+h[p>>3]<1.0)h[p>>3]=1.0;h[q>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]-+h[o>>3];h[q+16>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]+ +h[o>>3];h[q+8>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]-+h[p>>3];h[q+16+8>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]+ +h[p>>3];h[r>>3]=+h[r>>3]<+h[q>>3]?+h[r>>3]:+h[q>>3];h[r+8>>3]=+h[r+8>>3]<+h[q+8>>3]?+h[r+8>>3]:+h[q+8>>3];h[r+16>>3]=+h[r+16>>3]>+h[q+16>>3]?+h[r+16>>3]:+h[q+16>>3];if(+h[r+16+8>>3]>+h[q+16+8>>3])s=+h[r+16+8>>3];else s=+h[q+16+8>>3];h[r+16+8>>3]=s;b=(c[n>>2]|0)+40|0;c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];c[b+16>>2]=c[q+16>>2];c[b+20>>2]=c[q+20>>2];c[b+24>>2]=c[q+24>>2];c[b+28>>2]=c[q+28>>2];b=c[n>>2]|0;c[b>>2]=c[b>>2]|1;c[(c[(c[g>>2]|0)+8>>2]|0)+112>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+72;c[g>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0}h[r>>3]=+h[r>>3]-36.0;g=r+8|0;h[g>>3]=+h[g>>3]-36.0;g=r+16|0;h[g>>3]=+h[g>>3]+36.0;g=r+16+8|0;h[g>>3]=+h[g>>3]+36.0;g=c[(c[j>>2]|0)+12>>2]|0;f=c[(c[j>>2]|0)+4>>2]|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[e+16>>2]=c[r+16>>2];c[e+20>>2]=c[r+20>>2];c[e+24>>2]=c[r+24>>2];c[e+28>>2]=c[r+28>>2];c[k>>2]=SU(g,f,m,e)|0;if(c[15244]&1){f=c[(c[j>>2]|0)+12>>2]|0;g=c[(c[j>>2]|0)+4>>2]|0;n=c[k>>2]|0;q=c[m>>2]|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[e+16>>2]=c[r+16>>2];c[e+20>>2]=c[r+20>>2];c[e+24>>2]=c[r+24>>2];c[e+28>>2]=c[r+28>>2];KU(f,g,e,n,q)}q=bK((c[m>>2]|0)*72|0)|0;c[(c[j>>2]|0)+8>>2]=q;c[c[j>>2]>>2]=c[m>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[m>>2]|0))break;q=(c[(c[j>>2]|0)+8>>2]|0)+((c[l>>2]|0)*72|0)+40|0;n=(c[k>>2]|0)+(c[l>>2]<<5)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[q+16>>2]=c[n+16>>2];c[q+20>>2]=c[n+20>>2];c[q+24>>2]=c[n+24>>2];c[q+28>>2]=c[n+28>>2];c[l>>2]=(c[l>>2]|0)+1}O4(c[k>>2]|0);k=c[j>>2]|0;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[e+16>>2]=c[r+16>>2];c[e+20>>2]=c[r+20>>2];c[e+24>>2]=c[r+24>>2];c[e+28>>2]=c[r+28>>2];r=LU(k,e)|0;c[(c[j>>2]|0)+16>>2]=r;i=d;return c[j>>2]|0}function IU(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[(c[d>>2]|0)+8>>2]|0)+36>>2]|0);O4(c[(c[(c[d>>2]|0)+12>>2]|0)+36>>2]|0);O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[(c[d>>2]|0)+12>>2]|0);MQ(c[(c[d>>2]|0)+16>>2]|0);Jz(c[(c[d>>2]|0)+20>>2]|0)|0;Jz(c[(c[d>>2]|0)+24>>2]|0)|0;O4(c[d>>2]|0);i=b;return}function JU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[e+8>>2]=a;c[f>>2]=b;c[g>>2]=d;d=(c[f>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+1;if((c[(c[f>>2]|0)+8>>2]|0)<=(c[g>>2]|0)){i=e;return}c[(c[f>>2]|0)+8>>2]=0;g=c[f>>2]|0;h[g>>3]=+h[g>>3]+16384.0;i=e;return}function KU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;g=i;i=i+208|0;j=g+128|0;k=g+96|0;l=g+64|0;m=g+48|0;n=g+32|0;o=g+192|0;p=g+188|0;q=g+184|0;r=g+180|0;s=g+176|0;t=g;u=g+160|0;c[o>>2]=a;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;c[u>>2]=10;c[u+4>>2]=10;c[u+8>>2]=~~(+(c[u>>2]|0)+ +h[d+16>>3]-+h[d>>3]);c[u+8+4>>2]=~~(+(c[u+4>>2]|0)+ +h[d+16+8>>3]-+h[d+8>>3]);_2(c[22898]|0,c[24742]|0)|0;f=c[24742]|0;e=c[u+4>>2]|0;b=c[u+8>>2]|0;a=c[u+8+4>>2]|0;c[n>>2]=c[u>>2];c[n+4>>2]=e;c[n+8>>2]=b;c[n+12>>2]=a;Y2(f,175905,n)|0;n=c[24742]|0;v=10.0-+h[d+8>>3];h[m>>3]=10.0-+h[d>>3];h[m+8>>3]=v;Y2(n,175953,m)|0;_2(175970,c[24742]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[p>>2]|0))break;m=(c[o>>2]|0)+((c[s>>2]|0)*72|0)+40|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];c[t+16>>2]=c[m+16>>2];c[t+20>>2]=c[m+20>>2];c[t+24>>2]=c[m+24>>2];c[t+28>>2]=c[m+28>>2];m=c[24742]|0;v=+h[t+8>>3];w=+h[t+16>>3];x=+h[t+16+8>>3];h[l>>3]=+h[t>>3];h[l+8>>3]=v;h[l+16>>3]=w;h[l+24>>3]=x;Y2(m,175989,l)|0;c[s>>2]=(c[s>>2]|0)+1}_2(176007,c[24742]|0)|0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;l=(c[q>>2]|0)+(c[s>>2]<<5)|0;c[t>>2]=c[l>>2];c[t+4>>2]=c[l+4>>2];c[t+8>>2]=c[l+8>>2];c[t+12>>2]=c[l+12>>2];c[t+16>>2]=c[l+16>>2];c[t+20>>2]=c[l+20>>2];c[t+24>>2]=c[l+24>>2];c[t+28>>2]=c[l+28>>2];l=c[24742]|0;x=+h[t+8>>3];w=+h[t+16>>3];v=+h[t+16+8>>3];h[k>>3]=+h[t>>3];h[k+8>>3]=x;h[k+16>>3]=w;h[k+24>>3]=v;Y2(l,176026,k)|0;c[s>>2]=(c[s>>2]|0)+1}_2(176044,c[24742]|0)|0;s=c[24742]|0;v=+h[d+8>>3];w=+h[d+16>>3];x=+h[d+16+8>>3];h[j>>3]=+h[d>>3];h[j+8>>3]=v;h[j+16>>3]=w;h[j+24>>3]=x;Y2(s,176026,j)|0;_2(c[22899]|0,c[24742]|0)|0;i=g;return}function LU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=i;i=i+128|0;e=d+32|0;f=d+112|0;g=d+108|0;j=d+104|0;k=d+96|0;l=d+92|0;m=d+88|0;n=d+84|0;o=d+80|0;p=d+76|0;q=d+72|0;r=d+68|0;s=d+64|0;t=d+16|0;u=d+60|0;v=d;w=d+56|0;x=d+52|0;y=d+48|0;c[f>>2]=a;c[l>>2]=c[c[f>>2]>>2]<<2;c[m>>2]=JQ((c[l>>2]|0)+2|0)|0;c[n>>2]=Nz(91600,c[12989]|0)|0;c[o>>2]=Nz(91636,c[12989]|0)|0;c[p>>2]=bK(c[l>>2]<<5)|0;c[q>>2]=bK(c[c[f>>2]>>2]<<2<<2)|0;c[d+100>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[f>>2]>>2]|0))break;c[r>>2]=(c[(c[f>>2]|0)+8>>2]|0)+((c[j>>2]|0)*72|0);c[(c[r>>2]|0)+32>>2]=4;c[(c[r>>2]|0)+36>>2]=(c[q>>2]|0)+(c[j>>2]<<2<<2);if(+h[(c[r>>2]|0)+40+16>>3]<+h[b+16>>3]){h[t>>3]=+h[(c[r>>2]|0)+40+16>>3];h[t+8>>3]=+h[(c[r>>2]|0)+40+8>>3];l=c[m>>2]|0;a=c[n>>2]|0;z=c[p>>2]|0;c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];c[s>>2]=MU(l,a,e,z,1)|0;c[(c[s>>2]|0)+20>>2]=c[r>>2];c[c[(c[r>>2]|0)+36>>2]>>2]=c[s>>2]}if(+h[(c[r>>2]|0)+40+16+8>>3]<+h[b+16+8>>3]){h[t>>3]=+h[(c[r>>2]|0)+40>>3];h[t+8>>3]=+h[(c[r>>2]|0)+40+16+8>>3];z=c[m>>2]|0;a=c[o>>2]|0;l=c[p>>2]|0;c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];c[s>>2]=MU(z,a,e,l,0)|0;c[(c[s>>2]|0)+20>>2]=c[r>>2];c[(c[(c[r>>2]|0)+36>>2]|0)+4>>2]=c[s>>2]}if(+h[(c[r>>2]|0)+40>>3]>+h[b>>3]){l=c[m>>2]|0;a=c[n>>2]|0;z=(c[r>>2]|0)+40|0;A=c[p>>2]|0;c[e>>2]=c[z>>2];c[e+4>>2]=c[z+4>>2];c[e+8>>2]=c[z+8>>2];c[e+12>>2]=c[z+12>>2];c[s>>2]=MU(l,a,e,A,1)|0;c[(c[s>>2]|0)+20+4>>2]=c[r>>2];c[(c[(c[r>>2]|0)+36>>2]|0)+8>>2]=c[s>>2]}if(+h[(c[r>>2]|0)+40+8>>3]>+h[b+8>>3]){A=c[m>>2]|0;a=c[o>>2]|0;l=(c[r>>2]|0)+40|0;z=c[p>>2]|0;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];c[s>>2]=MU(A,a,e,z,0)|0;c[(c[s>>2]|0)+20+4>>2]=c[r>>2];c[(c[(c[r>>2]|0)+36>>2]|0)+12>>2]=c[s>>2]}c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=0;c[q>>2]=bK(c[c[m>>2]>>2]<<2)|0;c[g>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;c[u>>2]=(c[(c[f>>2]|0)+12>>2]|0)+((c[j>>2]|0)*72|0);c[(c[u>>2]|0)+36>>2]=(c[q>>2]|0)+(c[g>>2]<<2);s=(c[u>>2]|0)+40|0;c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];c[v+8>>2]=c[s+8>>2];c[v+12>>2]=c[s+12>>2];c[w>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,v,512)|0;while(1){if(!(c[w>>2]|0))break;if(!(+h[(c[w>>2]|0)+8>>3]<+h[(c[u>>2]|0)+40+16>>3]))break;s=c[c[w>>2]>>2]|0;r=(c[u>>2]|0)+32|0;e=c[r>>2]|0;c[r>>2]=e+1;c[(c[(c[u>>2]|0)+36>>2]|0)+(e<<2)>>2]=s;c[(c[c[w>>2]>>2]|0)+20+4>>2]=c[u>>2];c[w>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,c[w>>2]|0,8)|0}c[w>>2]=Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,v,512)|0;while(1){if(!(c[w>>2]|0))break;if(!(+h[(c[w>>2]|0)+8+8>>3]<+h[(c[u>>2]|0)+40+16+8>>3]))break;s=c[c[w>>2]>>2]|0;e=(c[u>>2]|0)+32|0;r=c[e>>2]|0;c[e>>2]=r+1;c[(c[(c[u>>2]|0)+36>>2]|0)+(r<<2)>>2]=s;c[(c[c[w>>2]>>2]|0)+20+4>>2]=c[u>>2];c[w>>2]=Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,c[w>>2]|0,8)|0}h[v+8>>3]=+h[(c[u>>2]|0)+40+16+8>>3];c[w>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,v,512)|0;while(1){if(!(c[w>>2]|0))break;if(!(+h[(c[w>>2]|0)+8>>3]<+h[(c[u>>2]|0)+40+16>>3]))break;s=c[c[w>>2]>>2]|0;r=(c[u>>2]|0)+32|0;e=c[r>>2]|0;c[r>>2]=e+1;c[(c[(c[u>>2]|0)+36>>2]|0)+(e<<2)>>2]=s;c[(c[c[w>>2]>>2]|0)+20>>2]=c[u>>2];c[w>>2]=Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,c[w>>2]|0,8)|0}h[v>>3]=+h[(c[u>>2]|0)+40+16>>3];h[v+8>>3]=+h[(c[u>>2]|0)+40+8>>3];c[w>>2]=Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,v,512)|0;while(1){if(!(c[w>>2]|0))break;if(!(+h[(c[w>>2]|0)+8+8>>3]<+h[(c[u>>2]|0)+40+16+8>>3]))break;s=c[c[w>>2]>>2]|0;e=(c[u>>2]|0)+32|0;r=c[e>>2]|0;c[e>>2]=r+1;c[(c[(c[u>>2]|0)+36>>2]|0)+(r<<2)>>2]=s;c[(c[c[w>>2]>>2]|0)+20>>2]=c[u>>2];c[w>>2]=Hb[c[c[n>>2]>>2]&63](c[n>>2]|0,c[w>>2]|0,8)|0}c[g>>2]=(c[g>>2]|0)+(c[(c[u>>2]|0)+32>>2]|0);if((c[(c[u>>2]|0)+32>>2]|0)>(c[k>>2]|0))c[k>>2]=c[(c[u>>2]|0)+32>>2];c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;c[x>>2]=(c[(c[f>>2]|0)+12>>2]|0)+((c[j>>2]|0)*72|0);NU(c[x>>2]|0,c[m>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[(c[(c[m>>2]|0)+16>>2]|0)+((c[c[m>>2]>>2]|0)*40|0)+32>>2]=c[c[m>>2]>>2];c[(c[(c[m>>2]|0)+16>>2]|0)+(((c[c[m>>2]>>2]|0)+1|0)*40|0)+32>>2]=(c[c[m>>2]>>2]|0)+1;IQ(c[m>>2]|0,c[k>>2]|0);c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[f>>2]>>2]|0))break;c[y>>2]=(c[(c[f>>2]|0)+8>>2]|0)+((c[j>>2]|0)*72|0);OU(c[y>>2]|0,c[m>>2]|0);c[j>>2]=(c[j>>2]|0)+1}Jz(c[n>>2]|0)|0;Jz(c[o>>2]|0)|0;O4(c[p>>2]|0);PU(c[m>>2]|0);GQ(c[m>>2]|0);i=d;return c[m>>2]|0}function MU(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+20|0;n=h+4|0;o=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;a[m>>0]=g;c[n>>2]=Hb[c[c[k>>2]>>2]&63](c[k>>2]|0,e,512)|0;if(c[n>>2]|0){p=c[n>>2]|0;q=c[p>>2]|0;i=h;return q|0}c[o>>2]=KQ(c[j>>2]|0)|0;if(!(c[l>>2]|0))La(175888,175836,293,175895);c[n>>2]=(c[l>>2]|0)+(c[(c[o>>2]|0)+32>>2]<<5);l=(c[n>>2]|0)+8|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];c[c[n>>2]>>2]=c[o>>2];a[(c[o>>2]|0)+36>>0]=a[m>>0]|0;Hb[c[c[k>>2]>>2]&63](c[k>>2]|0,c[n>>2]|0,1)|0;p=c[n>>2]|0;q=c[p>>2]|0;i=h;return q|0}function NU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[e+12>>2]=d;a:do if((+h[(c[f>>2]|0)+40+16+8>>3]-+h[(c[f>>2]|0)+40+8>>3]-3.0)/2.0<2.0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[j>>2]=c[(c[(c[f>>2]|0)+36>>2]|0)+(c[g>>2]<<2)>>2];b:do if(a[(c[j>>2]|0)+36>>0]|0){d=(c[j>>2]|0)+20|0;if((c[(c[j>>2]|0)+20>>2]|0)==(c[f>>2]|0)){c[k>>2]=c[d+4>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|8;while(1){b=c[c[(c[k>>2]|0)+36>>2]>>2]|0;c[j>>2]=b;if(!b)break b;if(!((c[c[(c[j>>2]|0)+20+4>>2]>>2]&1|0)!=0^1))break b;c[k>>2]=c[(c[j>>2]|0)+20+4>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|8}}else{c[k>>2]=c[d>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|8;while(1){b=c[(c[(c[k>>2]|0)+36>>2]|0)+8>>2]|0;c[j>>2]=b;if(!b)break b;if(!((c[c[(c[j>>2]|0)+20>>2]>>2]&1|0)!=0^1))break b;c[k>>2]=c[(c[j>>2]|0)+20>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|8}}}while(0);c[g>>2]=(c[g>>2]|0)+1}}while(0);if(!((+h[(c[f>>2]|0)+40+16>>3]-+h[(c[f>>2]|0)+40>>3]-3.0)/2.0<2.0)){i=e;return}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[f>>2]|0)+32>>2]|0))break;c[j>>2]=c[(c[(c[f>>2]|0)+36>>2]|0)+(c[g>>2]<<2)>>2];c:do if(!(a[(c[j>>2]|0)+36>>0]|0)){d=(c[j>>2]|0)+20|0;if((c[(c[j>>2]|0)+20>>2]|0)==(c[f>>2]|0)){c[k>>2]=c[d+4>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|16;while(1){b=c[(c[(c[k>>2]|0)+36>>2]|0)+4>>2]|0;c[j>>2]=b;if(!b)break c;if(!((c[c[(c[j>>2]|0)+20+4>>2]>>2]&1|0)!=0^1))break c;c[k>>2]=c[(c[j>>2]|0)+20+4>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|16}}else{c[k>>2]=c[d>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|16;while(1){b=c[(c[(c[k>>2]|0)+36>>2]|0)+12>>2]|0;c[j>>2]=b;if(!b)break c;if(!((c[c[(c[j>>2]|0)+20>>2]>>2]&1|0)!=0^1))break c;c[k>>2]=c[(c[j>>2]|0)+20>>2];b=c[k>>2]|0;c[b>>2]=c[b>>2]|16}}}while(0);c[g>>2]=(c[g>>2]|0)+1}i=e;return}function OU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+64|0;e=d+60|0;f=d+56|0;g=d+24|0;j=d+16|0;k=d+8|0;l=d;c[e>>2]=a;c[f>>2]=b;b=(c[e>>2]|0)+40|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[g+16>>2]=c[b+16>>2];c[g+20>>2]=c[b+20>>2];c[g+24>>2]=c[b+24>>2];c[g+28>>2]=c[b+28>>2];h[j>>3]=(+h[g+16>>3]-+h[g>>3])*1.0;h[k>>3]=(+h[g+16+8>>3]-+h[g+8>>3])*1.0;h[l>>3]=(+h[j>>3]+ +h[k>>3])/2.0+500.0;if((+h[g+16+8>>3]-+h[g+8>>3]-3.0)/2.0<2.0?(c[c[e>>2]>>2]&8|0)==0:0){h[j>>3]=16384.0;h[l>>3]=16384.0}if((+h[g+16>>3]-+h[g>>3]-3.0)/2.0<2.0?(c[c[e>>2]>>2]&16|0)==0:0){h[k>>3]=16384.0;h[l>>3]=16384.0}if((c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0)!=0?(c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0)!=0:0){g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0,+h[l>>3])|0;b=(c[e>>2]|0)+4|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[e>>2]|0)+8+(a<<2)>>2]=g}if((c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0)!=0?(c[c[(c[e>>2]|0)+36>>2]>>2]|0)!=0:0){g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0,c[c[(c[e>>2]|0)+36>>2]>>2]|0,+h[l>>3])|0;a=(c[e>>2]|0)+4|0;b=c[a>>2]|0;c[a>>2]=b+1;c[(c[e>>2]|0)+8+(b<<2)>>2]=g}if((c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0)!=0?(c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0)!=0:0){g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0,+h[l>>3])|0;b=(c[e>>2]|0)+4|0;a=c[b>>2]|0;c[b>>2]=a+1;c[(c[e>>2]|0)+8+(a<<2)>>2]=g}if((c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0)!=0?(c[c[(c[e>>2]|0)+36>>2]>>2]|0)!=0:0){g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0,c[c[(c[e>>2]|0)+36>>2]>>2]|0,+h[l>>3])|0;l=(c[e>>2]|0)+4|0;a=c[l>>2]|0;c[l>>2]=a+1;c[(c[e>>2]|0)+8+(a<<2)>>2]=g}if((c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0)!=0?(c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0)!=0:0){g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+4>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+12>>2]|0,+h[k>>3])|0;k=(c[e>>2]|0)+4|0;a=c[k>>2]|0;c[k>>2]=a+1;c[(c[e>>2]|0)+8+(a<<2)>>2]=g}if(!(c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0)){i=d;return}if(!(c[c[(c[e>>2]|0)+36>>2]>>2]|0)){i=d;return}g=LQ(c[f>>2]|0,c[(c[(c[e>>2]|0)+36>>2]|0)+8>>2]|0,c[c[(c[e>>2]|0)+36>>2]>>2]|0,+h[j>>3])|0;j=(c[e>>2]|0)+4|0;f=c[j>>2]|0;c[j>>2]=f+1;c[(c[e>>2]|0)+8+(f<<2)>>2]=g;i=d;return}function PU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+8|0;e=b;f=b+20|0;g=b+16|0;h=b+12|0;c[f>>2]=a;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[f>>2]>>2]|0)){j=12;break}c[h>>2]=(c[(c[f>>2]|0)+16>>2]|0)+((c[g>>2]|0)*40|0);if(!(c[(c[h>>2]|0)+20>>2]|0)){a=c[24742]|0;c[e>>2]=c[g>>2];Y2(a,175801,e)|0}if(!(c[(c[h>>2]|0)+20>>2]|0)){j=6;break}if(!(c[(c[h>>2]|0)+20+4>>2]|0)){a=c[24742]|0;c[d>>2]=c[g>>2];Y2(a,175853,d)|0}if(!(c[(c[h>>2]|0)+20+4>>2]|0)){j=10;break}c[g>>2]=(c[g>>2]|0)+1}if((j|0)==6)La(175823,175836,313,175843);else if((j|0)==10)La(175875,175836,315,175843);else if((j|0)==12){i=b;return}}function QU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f+8|0;k=f+4|0;c[f+12>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;do if(!(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3])){if(+h[(c[j>>2]|0)+8>>3]<+h[(c[k>>2]|0)+8>>3]){c[g>>2]=-1;break}if(+h[c[j>>2]>>3]>+h[c[k>>2]>>3]){c[g>>2]=1;break}if(+h[c[j>>2]>>3]<+h[c[k>>2]>>3]){c[g>>2]=-1;break}else{c[g>>2]=0;break}}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function RU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0;f=i;i=i+32|0;g=f+16|0;j=f+8|0;k=f+4|0;c[f+12>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f>>2]=e;do if(!(+h[c[j>>2]>>3]>+h[c[k>>2]>>3])){if(+h[c[j>>2]>>3]<+h[c[k>>2]>>3]){c[g>>2]=-1;break}if(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3]){c[g>>2]=1;break}if(+h[(c[j>>2]|0)+8>>3]<+h[(c[k>>2]|0)+8>>3]){c[g>>2]=-1;break}else{c[g>>2]=0;break}}else c[g>>2]=1;while(0);i=f;return c[g>>2]|0}function SU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+112|0;g=f;h=f+96|0;j=f+92|0;k=f+88|0;l=f+84|0;m=f+80|0;n=f+76|0;o=f+72|0;p=f+68|0;q=f+64|0;r=f+60|0;s=f+56|0;t=f+52|0;u=f+48|0;v=f+44|0;w=f+40|0;x=f+36|0;y=f+32|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=(c[j>>2]|0)+1<<2;c[m>>2]=cK(((c[l>>2]|0)+1|0)*56|0)|0;c[n>>2]=bK((c[l>>2]|0)+1<<2)|0;c[s>>2]=0;c[u>>2]=((c[l>>2]|0)*5|0)+1;c[v>>2]=cK((c[u>>2]|0)*72|0)|0;c[w>>2]=bK(c[u>>2]<<5)|0;c[x>>2]=bK(c[u>>2]<<5)|0;d=c[h>>2]|0;b=c[j>>2]|0;a=c[m>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];TU(d,b,g,a,0);v2(173);UU(c[l>>2]|0,c[n>>2]|0);c[y>>2]=cV(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[u>>2]|0,c[v>>2]|0)|0;c[o>>2]=VU(c[l>>2]|0,c[m>>2]|0,c[v>>2]|0,0,c[w>>2]|0)|0;a=c[h>>2]|0;h=c[j>>2]|0;j=c[m>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];TU(a,h,g,j,1);UU(c[l>>2]|0,c[n>>2]|0);c[y>>2]=cV(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[u>>2]|0,c[v>>2]|0)|0;c[p>>2]=VU(c[l>>2]|0,c[m>>2]|0,c[v>>2]|0,1,c[x>>2]|0)|0;c[t>>2]=bK((_(c[o>>2]|0,c[p>>2]|0)|0)<<5)|0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[p>>2]|0))break;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[o>>2]|0))break;if(WU((c[t>>2]|0)+(c[s>>2]<<5)|0,(c[x>>2]|0)+(c[q>>2]<<5)|0,(c[w>>2]|0)+(c[r>>2]<<5)|0)|0)c[s>>2]=(c[s>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+1}c[t>>2]=eK(c[t>>2]|0,c[s>>2]<<5)|0;O4(c[m>>2]|0);O4(c[n>>2]|0);O4(c[v>>2]|0);O4(c[w>>2]|0);O4(c[x>>2]|0);c[c[k>>2]>>2]=c[s>>2];i=f;return c[t>>2]|0}function TU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+128|0;h=g+64|0;j=g+116|0;k=g+112|0;l=g+108|0;m=g+104|0;n=g+100|0;o=g+96|0;p=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=0;c[o>>2]=1;f=c[m>>2]|0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[h+16>>2]=c[d+16>>2];c[h+20>>2]=c[d+20>>2];c[h+24>>2]=c[d+24>>2];c[h+28>>2]=c[d+28>>2];aV(h,f,1,p);c[o>>2]=bV(c[l>>2]|0,c[o>>2]|0,p)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[k>>2]|0))break;f=(c[j>>2]|0)+((c[n>>2]|0)*72|0)+40|0;d=c[m>>2]|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[h+16>>2]=c[f+16>>2];c[h+20>>2]=c[f+20>>2];c[h+24>>2]=c[f+24>>2];c[h+28>>2]=c[f+28>>2];aV(h,d,0,p);c[o>>2]=bV(c[l>>2]|0,c[o>>2]|0,p)|0;c[n>>2]=(c[n>>2]|0)+1}i=g;return}function UU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0.0,l=0.0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;while(1){if((c[g>>2]|0)>(c[e>>2]|0))break;c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[e>>2]|0))break;k=+(c[g>>2]|0);l=+r2();c[h>>2]=~~(k+l*+((c[e>>2]|0)+1-(c[g>>2]|0)|0));if((c[h>>2]|0)!=(c[g>>2]|0)){c[j>>2]=c[(c[f>>2]|0)+(c[g>>2]<<2)>>2];c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=c[(c[f>>2]|0)+(c[h>>2]<<2)>>2];c[(c[f>>2]|0)+(c[h>>2]<<2)>>2]=c[j>>2]}c[g>>2]=(c[g>>2]|0)+1}i=d;return}function VU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=i;i=i+48|0;h=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[q>>2]=((c[h>>2]|0)*5|0)+1;c[r>>2]=bK(c[q>>2]<<2)|0;c[22918]=bK(c[q>>2]<<4)|0;c[22919]=bK(((c[h>>2]|0)+1|0)*56|0)|0;c[22920]=bK(c[h>>2]<<2)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(((c[h>>2]|0)*5|0)+1|0))break;if(XU((c[k>>2]|0)+((c[n>>2]|0)*72|0)|0,c[j>>2]|0)|0)break;c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=c[n>>2];c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[h>>2]|0))break;c[(c[22918]|0)+(c[n>>2]<<4)+8>>2]=c[(c[j>>2]|0)+((c[n>>2]|0)*56|0)+48>>2];c[(c[22918]|0)+(c[n>>2]<<4)+4>>2]=c[(c[j>>2]|0)+((c[n>>2]|0)*56|0)+44>>2];c[(c[22918]|0)+(c[n>>2]<<4)>>2]=c[n>>2];q=(c[22919]|0)+((c[n>>2]|0)*56|0)|0;f=(c[j>>2]|0)+((c[n>>2]|0)*56|0)|0;c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];c[(c[22919]|0)+((c[n>>2]|0)*56|0)+16>>2]=c[(c[j>>2]|0)+((c[n>>2]|0)*56|0)+44>>2];c[(c[22919]|0)+((c[n>>2]|0)*56|0)+32>>2]=c[n>>2];c[(c[22919]|0)+((c[n>>2]|0)*56|0)+48>>2]=1;c[n>>2]=(c[n>>2]|0)+1}c[22921]=c[h>>2];c[22922]=0;c[c[22920]>>2]=1;if((c[(c[k>>2]|0)+((c[p>>2]|0)*72|0)+40>>2]|0)>0){c[o>>2]=YU(c[r>>2]|0,c[m>>2]|0,0,c[j>>2]|0,c[k>>2]|0,0,c[p>>2]|0,c[(c[k>>2]|0)+((c[p>>2]|0)*72|0)+40>>2]|0,c[l>>2]|0,1)|0;s=c[r>>2]|0;O4(s);t=c[22918]|0;O4(t);u=c[22919]|0;O4(u);v=c[22920]|0;O4(v);w=c[o>>2]|0;i=g;return w|0}if((c[(c[k>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0)<=0){s=c[r>>2]|0;O4(s);t=c[22918]|0;O4(t);u=c[22919]|0;O4(u);v=c[22920]|0;O4(v);w=c[o>>2]|0;i=g;return w|0}c[o>>2]=YU(c[r>>2]|0,c[m>>2]|0,0,c[j>>2]|0,c[k>>2]|0,0,c[p>>2]|0,c[(c[k>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0,c[l>>2]|0,2)|0;s=c[r>>2]|0;O4(s);t=c[22918]|0;O4(t);u=c[22919]|0;O4(u);v=c[22920]|0;O4(v);w=c[o>>2]|0;i=g;return w|0}function WU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;j=e+12|0;k=e+8|0;l=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;if(+h[c[j>>2]>>3]>+h[c[k>>2]>>3])m=+h[c[j>>2]>>3];else m=+h[c[k>>2]>>3];h[l>>3]=m;if(+h[(c[j>>2]|0)+16>>3]<+h[(c[k>>2]|0)+16>>3])n=+h[(c[j>>2]|0)+16>>3];else n=+h[(c[k>>2]|0)+16>>3];h[(c[g>>2]|0)+16>>3]=n;h[c[g>>2]>>3]=+h[l>>3];if(+h[(c[j>>2]|0)+8>>3]>+h[(c[k>>2]|0)+8>>3])o=+h[(c[j>>2]|0)+8>>3];else o=+h[(c[k>>2]|0)+8>>3];h[l>>3]=o;if(+h[(c[j>>2]|0)+16+8>>3]<+h[(c[k>>2]|0)+16+8>>3])p=+h[(c[j>>2]|0)+16+8>>3];else p=+h[(c[k>>2]|0)+16+8>>3];h[(c[g>>2]|0)+16+8>>3]=p;h[(c[g>>2]|0)+8>>3]=+h[l>>3];if(!(+h[c[g>>2]>>3]>=+h[(c[g>>2]|0)+16>>3])?!(+h[(c[g>>2]|0)+8>>3]>=+h[(c[g>>2]|0)+16+8>>3]):0){c[f>>2]=1;q=c[f>>2]|0;i=e;return q|0}c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}function XU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;c[j>>2]=c[(c[f>>2]|0)+4>>2];if((c[(c[f>>2]|0)+68>>2]|0)==2){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if((c[c[f>>2]>>2]|0)>0?(c[(c[f>>2]|0)+4>>2]|0)>0:0){if(!((c[(c[f>>2]|0)+40>>2]|0)<=0?(c[(c[f>>2]|0)+44>>2]|0)<=0:0))l=8;do if((l|0)==8){if((c[(c[f>>2]|0)+48>>2]|0)<=0?(c[(c[f>>2]|0)+52>>2]|0)<=0:0)break;c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}while(0);if(!(+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)+16+8>>3]>+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)+8>>3]+1.0e-07))if(+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)+16+8>>3]<+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)+8>>3]-1.0e-07)m=0;else m=+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)+16>>3]>+h[(c[g>>2]|0)+((c[j>>2]|0)*56|0)>>3]&1;else m=1;c[e>>2]=m;k=c[e>>2]|0;i=d;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}function YU(a,b,d,e,f,g,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;n=i;i=i+80|0;o=n+64|0;p=n+60|0;q=n+56|0;r=n+52|0;s=n+48|0;t=n+44|0;u=n+40|0;v=n+36|0;w=n+32|0;x=n+28|0;y=n+24|0;z=n+20|0;A=n+16|0;B=n+12|0;C=n+8|0;D=n+4|0;E=n;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=j;c[w>>2]=k;c[x>>2]=l;c[y>>2]=m;c[z>>2]=(c[t>>2]|0)+((c[v>>2]|0)*72|0);c[E>>2]=0;if((c[v>>2]|0)>0?(c[(c[p>>2]|0)+(c[v>>2]<<2)>>2]|0)==0:0){c[(c[p>>2]|0)+(c[v>>2]<<2)>>2]=1;if((+h[(c[z>>2]|0)+8+8>>3]>+h[(c[z>>2]|0)+24+8>>3]?+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)>>3]==+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+16>>3]:0)?+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)>>3]==+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+16>>3]:0){m=c[z>>2]|0;if(c[x>>2]|0){h[(c[q>>2]|0)+(c[r>>2]<<5)>>3]=+h[m+24+8>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+8>>3]=-+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+16>>3]=+h[(c[z>>2]|0)+8+8>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+16+8>>3]=-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)>>3]}else{h[(c[q>>2]|0)+(c[r>>2]<<5)>>3]=+h[(c[s>>2]|0)+((c[m>>2]|0)*56|0)>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+8>>3]=+h[(c[z>>2]|0)+24+8>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+16>>3]=+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)>>3];h[(c[q>>2]|0)+(c[r>>2]<<5)+16+8>>3]=+h[(c[z>>2]|0)+8+8>>3]}c[r>>2]=(c[r>>2]|0)+1}do if((c[(c[z>>2]|0)+40>>2]|0)<=0?(c[(c[z>>2]|0)+44>>2]|0)<=0:0){if((c[(c[z>>2]|0)+48>>2]|0)>0?(c[(c[z>>2]|0)+52>>2]|0)>0:0){c[B>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+52>>2]|0)*72|0)>>2];c[C>>2]=c[c[z>>2]>>2];if((c[w>>2]|0)==(c[(c[z>>2]|0)+52>>2]|0)){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}else{c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}}c[D>>2]=-1;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0}else F=19;while(0);a:do if((F|0)==19){if((c[(c[z>>2]|0)+48>>2]|0)<=0?(c[(c[z>>2]|0)+52>>2]|0)<=0:0){if((c[(c[z>>2]|0)+40>>2]|0)>0?(c[(c[z>>2]|0)+44>>2]|0)>0:0){c[B>>2]=c[(c[z>>2]|0)+4>>2];c[C>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+40>>2]|0)*72|0)+4>>2];if((c[w>>2]|0)==(c[(c[z>>2]|0)+44>>2]|0)){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}else{c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}}c[D>>2]=-1;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}if((c[(c[z>>2]|0)+40>>2]|0)>0?(c[(c[z>>2]|0)+44>>2]|0)>0:0){if((c[(c[z>>2]|0)+48>>2]|0)>0?(c[(c[z>>2]|0)+52>>2]|0)>0:0){c[B>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+52>>2]|0)*72|0)>>2];c[C>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+40>>2]|0)*72|0)+4>>2];c[D>>2]=3;if(!((c[y>>2]|0)==2?(c[(c[z>>2]|0)+52>>2]|0)==(c[w>>2]|0):0))F=33;do if((F|0)==33){if((c[y>>2]|0)==1?(c[(c[z>>2]|0)+44>>2]|0)==(c[w>>2]|0):0)break;c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break a}while(0);c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}if(+N(+(+h[(c[z>>2]|0)+24+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+16+8>>3]))<=1.0e-07?+N(+(+h[(c[z>>2]|0)+24>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+16>>3]))<=1.0e-07:0){c[B>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+40>>2]|0)*72|0)+4>>2];c[C>>2]=c[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+44>>2];c[D>>2]=4;if((c[y>>2]|0)==1?(c[(c[z>>2]|0)+40>>2]|0)==(c[w>>2]|0):0){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}c[B>>2]=c[(c[z>>2]|0)+4>>2];c[C>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+40>>2]|0)*72|0)+4>>2];c[D>>2]=5;if((c[y>>2]|0)==1?(c[(c[z>>2]|0)+44>>2]|0)==(c[w>>2]|0):0){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}if((c[(c[z>>2]|0)+40>>2]|0)<=0?(c[(c[z>>2]|0)+44>>2]|0)<=0:0)break;if((c[(c[z>>2]|0)+48>>2]|0)>0?(c[(c[z>>2]|0)+52>>2]|0)>0:0){if(+N(+(+h[(c[z>>2]|0)+8+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+8>>3]))<=1.0e-07?+N(+(+h[(c[z>>2]|0)+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)>>3]))<=1.0e-07:0){c[B>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+52>>2]|0)*72|0)>>2];c[C>>2]=c[c[z>>2]>>2];c[D>>2]=6;if((c[y>>2]|0)==2?(c[(c[z>>2]|0)+48>>2]|0)==(c[w>>2]|0):0){c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}c[B>>2]=c[(c[t>>2]|0)+((c[(c[z>>2]|0)+52>>2]|0)*72|0)>>2];c[C>>2]=c[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+44>>2];c[D>>2]=7;if((c[y>>2]|0)==2?(c[(c[z>>2]|0)+52>>2]|0)==(c[w>>2]|0):0){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}if(((+N(+(+h[(c[z>>2]|0)+8+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+8>>3]))<=1.0e-07?+N(+(+h[(c[z>>2]|0)+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)>>3]))<=1.0e-07:0)?+N(+(+h[(c[z>>2]|0)+24+8>>3]-+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+8>>3]))<=1.0e-07:0)?+N(+(+h[(c[z>>2]|0)+24>>3]-+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)>>3]))<=1.0e-07:0){c[B>>2]=c[(c[z>>2]|0)+4>>2];c[C>>2]=c[c[z>>2]>>2];c[D>>2]=2;if((c[y>>2]|0)==1){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}else{c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}}if(((+N(+(+h[(c[z>>2]|0)+8+8>>3]-+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+16+8>>3]))<=1.0e-07?+N(+(+h[(c[z>>2]|0)+8>>3]-+h[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+16>>3]))<=1.0e-07:0)?+N(+(+h[(c[z>>2]|0)+24+8>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+16+8>>3]))<=1.0e-07:0)?+N(+(+h[(c[z>>2]|0)+24>>3]-+h[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+16>>3]))<=1.0e-07:0){c[B>>2]=c[(c[s>>2]|0)+((c[(c[z>>2]|0)+4>>2]|0)*56|0)+44>>2];c[C>>2]=c[(c[s>>2]|0)+((c[c[z>>2]>>2]|0)*56|0)+44>>2];c[D>>2]=1;if((c[y>>2]|0)==1){c[E>>2]=1;c[A>>2]=ZU(c[u>>2]|0,c[C>>2]|0,c[B>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;break}else{c[A>>2]=ZU(c[u>>2]|0,c[B>>2]|0,c[C>>2]|0)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[A>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;break}}c[D>>2]=-1;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+40>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+48>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+44>>2]|0,c[v>>2]|0,c[x>>2]|0,2)|0;c[r>>2]=YU(c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,c[(c[z>>2]|0)+52>>2]|0,c[v>>2]|0,c[x>>2]|0,1)|0}while(0);c[o>>2]=c[r>>2];G=c[o>>2]|0;i=n;return G|0}c[o>>2]=c[r>>2];G=c[o>>2]|0;i=n;return G|0}function ZU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;h=e+44|0;j=e+40|0;k=e+36|0;l=e+32|0;m=e+28|0;n=e+24|0;o=e+20|0;p=e+16|0;q=e+12|0;r=e+8|0;s=e+4|0;t=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=(c[22922]|0)+1|0;c[22922]=d;c[n>>2]=d;c[s>>2]=(c[22919]|0)+((c[g>>2]|0)*56|0);c[t>>2]=(c[22919]|0)+((c[h>>2]|0)*56|0);_U(c[g>>2]|0,c[h>>2]|0,l,m)|0;c[j>>2]=c[(c[s>>2]|0)+32+(c[l>>2]<<2)>>2];c[k>>2]=c[(c[t>>2]|0)+32+(c[m>>2]<<2)>>2];m=(c[22921]|0)+1|0;c[22921]=m;c[o>>2]=m;m=(c[22921]|0)+1|0;c[22921]=m;c[p>>2]=m;c[(c[22918]|0)+(c[o>>2]<<4)>>2]=c[g>>2];c[(c[22918]|0)+(c[p>>2]<<4)>>2]=c[h>>2];c[(c[22918]|0)+(c[o>>2]<<4)+4>>2]=c[(c[22918]|0)+(c[j>>2]<<4)+4>>2];c[(c[22918]|0)+(c[(c[22918]|0)+(c[j>>2]<<4)+4>>2]<<4)+8>>2]=c[o>>2];c[(c[22918]|0)+(c[o>>2]<<4)+8>>2]=c[p>>2];c[(c[22918]|0)+(c[p>>2]<<4)+4>>2]=c[o>>2];c[(c[22918]|0)+(c[p>>2]<<4)+8>>2]=c[(c[22918]|0)+(c[k>>2]<<4)+8>>2];c[(c[22918]|0)+(c[(c[22918]|0)+(c[k>>2]<<4)+8>>2]<<4)+4>>2]=c[p>>2];c[(c[22918]|0)+(c[j>>2]<<4)+4>>2]=c[k>>2];c[(c[22918]|0)+(c[k>>2]<<4)+8>>2]=c[j>>2];c[q>>2]=c[(c[s>>2]|0)+48>>2];c[r>>2]=c[(c[t>>2]|0)+48>>2];c[(c[s>>2]|0)+16+(c[l>>2]<<2)>>2]=c[h>>2];c[(c[s>>2]|0)+32+(c[q>>2]<<2)>>2]=c[o>>2];c[(c[s>>2]|0)+16+(c[q>>2]<<2)>>2]=c[(c[22918]|0)+(c[(c[22918]|0)+(c[o>>2]<<4)+4>>2]<<4)>>2];c[(c[t>>2]|0)+32+(c[r>>2]<<2)>>2]=c[p>>2];c[(c[t>>2]|0)+16+(c[r>>2]<<2)>>2]=c[g>>2];g=(c[s>>2]|0)+48|0;c[g>>2]=(c[g>>2]|0)+1;g=(c[t>>2]|0)+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[22920]|0)+(c[f>>2]<<2)>>2]=c[j>>2];c[(c[22920]|0)+(c[n>>2]<<2)>>2]=c[o>>2];i=e;return c[n>>2]|0}function _U(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;f=i;i=i+64|0;g=f+48|0;j=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+8|0;q=f;r=f+20|0;s=f+16|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=(c[22919]|0)+((c[g>>2]|0)*56|0);c[n>>2]=(c[22919]|0)+((c[j>>2]|0)*56|0);h[p>>3]=-4.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=4)break;if((c[(c[m>>2]|0)+16+(c[o>>2]<<2)>>2]|0)>0?(t=+$U(c[m>>2]|0,(c[22919]|0)+((c[(c[m>>2]|0)+16+(c[o>>2]<<2)>>2]|0)*56|0)|0,c[n>>2]|0),h[q>>3]=t,t>+h[p>>3]):0){h[p>>3]=+h[q>>3];c[r>>2]=c[o>>2]}c[o>>2]=(c[o>>2]|0)+1}c[c[k>>2]>>2]=c[r>>2];h[p>>3]=-4.0;c[o>>2]=0;while(1){if((c[o>>2]|0)>=4)break;if((c[(c[n>>2]|0)+16+(c[o>>2]<<2)>>2]|0)>0?(t=+$U(c[n>>2]|0,(c[22919]|0)+((c[(c[n>>2]|0)+16+(c[o>>2]<<2)>>2]|0)*56|0)|0,c[m>>2]|0),h[q>>3]=t,t>+h[p>>3]):0){h[p>>3]=+h[q>>3];c[s>>2]=c[o>>2]}c[o>>2]=(c[o>>2]|0)+1}c[c[l>>2]>>2]=c[s>>2];i=f;return 0}function $U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0;e=i;i=i+64|0;f=e+32|0;g=e+48|0;j=e+44|0;k=e+40|0;l=e+16|0;m=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=+h[c[j>>2]>>3]-+h[c[g>>2]>>3];h[l+8>>3]=+h[(c[j>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3];h[m>>3]=+h[c[k>>2]>>3]-+h[c[g>>2]>>3];h[m+8>>3]=+h[(c[k>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3];n=+h[l>>3]*+h[m>>3]+ +h[l+8>>3]*+h[m+8>>3];if(+h[l>>3]*+h[m+8>>3]-+h[m>>3]*+h[l+8>>3]>=0.0){o=n/+O(+(+h[l>>3]*+h[l>>3]+ +h[l+8>>3]*+h[l+8>>3]));h[f>>3]=o/+O(+(+h[m>>3]*+h[m>>3]+ +h[m+8>>3]*+h[m+8>>3]));p=+h[f>>3];i=e;return +p}else{o=-1.0*n/+O(+(+h[l>>3]*+h[l>>3]+ +h[l+8>>3]*+h[l+8>>3]));h[f>>3]=o/+O(+(+h[m>>3]*+h[m>>3]+ +h[m+8>>3]*+h[m+8>>3]))-2.0;p=+h[f>>3];i=e;return +p}return +(0.0)}function aV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[k>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];e=(c[k>>2]|0)+32|0;d=a+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[j>>2]|0){h[(c[k>>2]|0)+16>>3]=+h[a+16>>3];h[(c[k>>2]|0)+16+8>>3]=+h[a+8>>3];h[(c[k>>2]|0)+48>>3]=+h[a>>3];h[(c[k>>2]|0)+48+8>>3]=+h[a+16+8>>3]}else{h[(c[k>>2]|0)+16>>3]=+h[a>>3];h[(c[k>>2]|0)+16+8>>3]=+h[a+16+8>>3];h[(c[k>>2]|0)+48>>3]=+h[a+16>>3];h[(c[k>>2]|0)+48+8>>3]=+h[a+8>>3]}if(!(c[g>>2]|0)){i=f;return}c[l>>2]=0;while(1){if((c[l>>2]|0)>=4)break;h[m>>3]=+h[(c[k>>2]|0)+(c[l>>2]<<4)+8>>3];h[(c[k>>2]|0)+(c[l>>2]<<4)+8>>3]=+h[(c[k>>2]|0)+(c[l>>2]<<4)>>3];h[(c[k>>2]|0)+(c[l>>2]<<4)>>3]=-+h[m>>3];c[l>>2]=(c[l>>2]|0)+1}i=f;return}function bV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=(c[g>>2]|0)+4-1;c[l>>2]=0;c[j>>2]=c[g>>2];while(1){if((c[j>>2]|0)>(c[k>>2]|0))break;do if((c[j>>2]|0)!=(c[g>>2]|0))if((c[j>>2]|0)==(c[k>>2]|0)){c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+44>>2]=c[g>>2];c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+48>>2]=(c[k>>2]|0)-1;break}else{c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+44>>2]=(c[j>>2]|0)+1;c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+48>>2]=(c[j>>2]|0)-1;break}else{c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+44>>2]=(c[g>>2]|0)+1;c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+48>>2]=c[k>>2]}while(0);c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+32>>2]=0;d=(c[f>>2]|0)+((c[(c[f>>2]|0)+((c[j>>2]|0)*56|0)+48>>2]|0)*56|0)+16|0;b=(c[f>>2]|0)+((c[j>>2]|0)*56|0)|0;a=(c[h>>2]|0)+(c[l>>2]<<4)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}i=e;return (c[k>>2]|0)+1|0}function cV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;h=g+36|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[q>>2]=1;c[22923]=c[l>>2]<<1;c[22924]=c[l>>2];c[r>>2]=bK((c[l>>2]<<1)*40|0)|0;c[22925]=1;c[22926]=1;$4(c[m>>2]|0,0,(c[l>>2]|0)*72|0)|0;l=c[q>>2]|0;c[q>>2]=l+1;c[o>>2]=dV(c[(c[k>>2]|0)+(l<<2)>>2]|0,c[j>>2]|0,c[m>>2]|0,c[r>>2]|0)|0;c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[h>>2]|0))break;l=c[o>>2]|0;c[(c[j>>2]|0)+((c[n>>2]|0)*56|0)+40>>2]=l;c[(c[j>>2]|0)+((c[n>>2]|0)*56|0)+36>>2]=l;c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=1;while(1){o=c[p>>2]|0;l=(o|0)<=(eV(c[h>>2]|0)|0);s=c[h>>2]|0;if(!l)break;c[n>>2]=(fV(s,(c[p>>2]|0)-1|0)|0)+1;while(1){l=c[n>>2]|0;if((l|0)>(fV(c[h>>2]|0,c[p>>2]|0)|0))break;l=c[q>>2]|0;c[q>>2]=l+1;gV(c[(c[k>>2]|0)+(l<<2)>>2]|0,c[j>>2]|0,c[m>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=1;while(1){if((c[n>>2]|0)>(c[h>>2]|0))break;hV(c[n>>2]|0,c[j>>2]|0,c[m>>2]|0,c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[n>>2]=(fV(s,eV(c[h>>2]|0)|0)|0)+1;while(1){if((c[n>>2]|0)>(c[h>>2]|0))break;s=c[q>>2]|0;c[q>>2]=s+1;gV(c[(c[k>>2]|0)+(s<<2)>>2]|0,c[j>>2]|0,c[m>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+1}O4(c[r>>2]|0);i=g;return c[22925]|0}function dV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+80|0;g=f+64|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+36|0;q=f+32|0;r=f+28|0;s=f+24|0;t=f+20|0;u=f+16|0;v=f+12|0;w=f+8|0;x=f+4|0;y=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[y>>2]=(c[j>>2]|0)+((c[g>>2]|0)*56|0);c[m>>2]=mV()|0;c[(c[l>>2]|0)+((c[m>>2]|0)*40|0)>>2]=2;qV((c[l>>2]|0)+((c[m>>2]|0)*40|0)+8|0,c[y>>2]|0,(c[y>>2]|0)+16|0)|0;c[t>>2]=c[m>>2];j=mV()|0;c[n>>2]=j;c[(c[l>>2]|0)+((c[m>>2]|0)*40|0)+36>>2]=j;c[(c[l>>2]|0)+((c[n>>2]|0)*40|0)>>2]=3;c[(c[l>>2]|0)+((c[n>>2]|0)*40|0)+28>>2]=c[m>>2];j=mV()|0;c[o>>2]=j;c[(c[l>>2]|0)+((c[m>>2]|0)*40|0)+32>>2]=j;c[(c[l>>2]|0)+((c[o>>2]|0)*40|0)>>2]=2;rV((c[l>>2]|0)+((c[o>>2]|0)*40|0)+8|0,c[y>>2]|0,(c[y>>2]|0)+16|0)|0;c[(c[l>>2]|0)+((c[o>>2]|0)*40|0)+28>>2]=c[m>>2];j=mV()|0;c[p>>2]=j;c[(c[l>>2]|0)+((c[o>>2]|0)*40|0)+32>>2]=j;c[(c[l>>2]|0)+((c[p>>2]|0)*40|0)>>2]=3;c[(c[l>>2]|0)+((c[p>>2]|0)*40|0)+28>>2]=c[o>>2];j=mV()|0;c[q>>2]=j;c[(c[l>>2]|0)+((c[o>>2]|0)*40|0)+36>>2]=j;c[(c[l>>2]|0)+((c[q>>2]|0)*40|0)>>2]=1;c[(c[l>>2]|0)+((c[q>>2]|0)*40|0)+4>>2]=c[g>>2];c[(c[l>>2]|0)+((c[q>>2]|0)*40|0)+28>>2]=c[o>>2];j=mV()|0;c[r>>2]=j;c[(c[l>>2]|0)+((c[q>>2]|0)*40|0)+32>>2]=j;c[(c[l>>2]|0)+((c[r>>2]|0)*40|0)>>2]=3;c[(c[l>>2]|0)+((c[r>>2]|0)*40|0)+28>>2]=c[q>>2];j=mV()|0;c[s>>2]=j;c[(c[l>>2]|0)+((c[q>>2]|0)*40|0)+36>>2]=j;c[(c[l>>2]|0)+((c[s>>2]|0)*40|0)>>2]=3;c[(c[l>>2]|0)+((c[s>>2]|0)*40|0)+28>>2]=c[q>>2];c[u>>2]=lV(c[k>>2]|0)|0;c[v>>2]=lV(c[k>>2]|0)|0;c[w>>2]=lV(c[k>>2]|0)|0;c[x>>2]=lV(c[k>>2]|0)|0;q=(c[k>>2]|0)+((c[u>>2]|0)*72|0)+8|0;j=(c[k>>2]|0)+((c[v>>2]|0)*72|0)+8|0;e=(c[k>>2]|0)+((c[x>>2]|0)*72|0)+24|0;d=(c[l>>2]|0)+((c[m>>2]|0)*40|0)+8|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];j=(c[k>>2]|0)+((c[u>>2]|0)*72|0)+24|0;q=(c[k>>2]|0)+((c[v>>2]|0)*72|0)+24|0;e=(c[k>>2]|0)+((c[w>>2]|0)*72|0)+8|0;d=(c[l>>2]|0)+((c[o>>2]|0)*40|0)+8|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[q+12>>2]=c[e+12>>2];c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];h[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+8+8>>3]=1073741824.0;h[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+8>>3]=1073741824.0;h[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+24+8>>3]=-1073741824.0;h[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+24>>3]=-1073741824.0;q=c[g>>2]|0;c[(c[k>>2]|0)+((c[v>>2]|0)*72|0)>>2]=q;c[(c[k>>2]|0)+((c[u>>2]|0)*72|0)+4>>2]=q;q=c[x>>2]|0;c[(c[k>>2]|0)+((c[v>>2]|0)*72|0)+40>>2]=q;c[(c[k>>2]|0)+((c[u>>2]|0)*72|0)+40>>2]=q;q=c[w>>2]|0;c[(c[k>>2]|0)+((c[v>>2]|0)*72|0)+48>>2]=q;c[(c[k>>2]|0)+((c[u>>2]|0)*72|0)+48>>2]=q;q=c[u>>2]|0;c[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+40>>2]=q;c[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+48>>2]=q;q=c[v>>2]|0;c[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+44>>2]=q;c[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+52>>2]=q;c[(c[k>>2]|0)+((c[u>>2]|0)*72|0)+56>>2]=c[r>>2];c[(c[k>>2]|0)+((c[v>>2]|0)*72|0)+56>>2]=c[s>>2];c[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+56>>2]=c[p>>2];c[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+56>>2]=c[n>>2];c[(c[k>>2]|0)+((c[v>>2]|0)*72|0)+68>>2]=1;c[(c[k>>2]|0)+((c[u>>2]|0)*72|0)+68>>2]=1;c[(c[k>>2]|0)+((c[x>>2]|0)*72|0)+68>>2]=1;c[(c[k>>2]|0)+((c[w>>2]|0)*72|0)+68>>2]=1;c[(c[l>>2]|0)+((c[n>>2]|0)*40|0)+24>>2]=c[x>>2];c[(c[l>>2]|0)+((c[p>>2]|0)*40|0)+24>>2]=c[w>>2];c[(c[l>>2]|0)+((c[r>>2]|0)*40|0)+24>>2]=c[u>>2];c[(c[l>>2]|0)+((c[s>>2]|0)*40|0)+24>>2]=c[v>>2];c[(c[y>>2]|0)+32>>2]=1;i=f;return c[t>>2]|0}function eV(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b;c[d>>2]=a;c[e>>2]=0;h[f>>3]=+(c[d>>2]|0);while(1){if(!(+h[f>>3]>=1.0))break;h[f>>3]=+f2(+h[f>>3]);c[e>>2]=(c[e>>2]|0)+1}i=b;return (c[e>>2]|0)-1|0}function fV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;h[j>>3]=+(c[e>>2]|0);while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;h[j>>3]=+f2(+h[j>>3]);c[g>>2]=(c[g>>2]|0)+1}g=~~+Z(+(+(c[e>>2]|0)*1.0/+h[j>>3]));i=d;return g|0}function gV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0.0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;f=i;i=i+272|0;g=f+104|0;j=f+256|0;k=f+252|0;l=f+248|0;m=f+244|0;n=f+48|0;o=f+240|0;p=f+236|0;q=f+232|0;r=f+228|0;s=f+224|0;t=f+220|0;u=f+216|0;v=f+212|0;w=f+208|0;x=f+204|0;y=f+200|0;z=f+196|0;A=f+192|0;B=f+32|0;C=f+188|0;D=f+184|0;E=f+180|0;F=f+176|0;G=f+172|0;H=f+168|0;I=f+164|0;J=f+160|0;K=f+156|0;L=f+152|0;M=f+148|0;O=f+144|0;P=f+140|0;Q=f+136|0;R=f+132|0;S=f+24|0;T=f+16|0;U=f;V=f+128|0;W=f+124|0;X=f+120|0;Y=f+116|0;Z=f+112|0;_=f+108|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[C>>2]=0;c[D>>2]=0;e=n;d=(c[k>>2]|0)+((c[j>>2]|0)*56|0)|0;b=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));do if(+h[n+16+8>>3]>+h[n+8>>3]+1.0e-07)$=4;else{if(!(+h[n+16+8>>3]<+h[n+8>>3]-1.0e-07)?+h[n+16>>3]>+h[n>>3]:0){$=4;break}c[E>>2]=0}while(0);if(($|0)==4){c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[B+12>>2]=c[n+12>>2];a=n+16|0;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];a=n+16|0;c[a>>2]=c[B>>2];c[a+4>>2]=c[B+4>>2];c[a+8>>2]=c[B+8>>2];c[a+12>>2]=c[B+12>>2];c[G>>2]=c[n+36>>2];c[n+36>>2]=c[n+40>>2];c[n+40>>2]=c[G>>2];c[E>>2]=1}G=c[j>>2]|0;B=c[k>>2]|0;if(c[E>>2]|0)if(kV(G,B,2)|0)$=22;else $=9;else if(kV(G,B,1)|0)$=22;else $=9;if(($|0)==9){c[o>>2]=iV(n,n+16|0,c[n+36>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[p>>2]=lV(c[l>>2]|0)|0;c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+68>>2]=1;e=(c[l>>2]|0)+((c[p>>2]|0)*72|0)|0;d=(c[l>>2]|0)+((c[o>>2]|0)*72|0)|0;b=e+72|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));aa=+h[n+8>>3];h[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+8+8>>3]=aa;h[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+24+8>>3]=aa;aa=+h[n>>3];h[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+8>>3]=aa;h[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+24>>3]=aa;c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+48>>2]=c[p>>2];c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+52>>2]=0;c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+40>>2]=c[o>>2];c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+44>>2]=0;B=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0;c[H>>2]=B;if((B|0)>0?(c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+40>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+40>>2]=c[p>>2];B=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0;c[H>>2]=B;if((B|0)>0?(c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+44>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+44>>2]=c[p>>2];B=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[H>>2]=B;if((B|0)>0?(c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+40>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+40>>2]=c[p>>2];B=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[H>>2]=B;if((B|0)>0?(c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+44>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[H>>2]|0)*72|0)+44>>2]=c[p>>2];c[x>>2]=mV()|0;c[y>>2]=mV()|0;c[q>>2]=c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+56>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)>>2]=2;H=(c[m>>2]|0)+((c[q>>2]|0)*40|0)+8|0;c[H>>2]=c[n>>2];c[H+4>>2]=c[n+4>>2];c[H+8>>2]=c[n+8>>2];c[H+12>>2]=c[n+12>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+4>>2]=c[j>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+32>>2]=c[y>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+36>>2]=c[x>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)>>2]=3;c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+24>>2]=c[o>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+28>>2]=c[q>>2];c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)>>2]=3;c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+24>>2]=c[p>>2];c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+28>>2]=c[q>>2];c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+56>>2]=c[x>>2];c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+56>>2]=c[y>>2];c[r>>2]=c[p>>2]}else if(($|0)==22){c[r>>2]=iV(n,n+16|0,c[n+36>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[C>>2]=1}C=c[j>>2]|0;H=c[k>>2]|0;if(c[E>>2]|0)if(kV(C,H,1)|0)$=39;else $=26;else if(kV(C,H,2)|0)$=39;else $=26;if(($|0)==26){c[o>>2]=iV(n+16|0,n,c[n+40>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[p>>2]=lV(c[l>>2]|0)|0;c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+68>>2]=1;e=(c[l>>2]|0)+((c[p>>2]|0)*72|0)|0;d=(c[l>>2]|0)+((c[o>>2]|0)*72|0)|0;b=e+72|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));aa=+h[n+16+8>>3];h[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+8+8>>3]=aa;h[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+24+8>>3]=aa;aa=+h[n+16>>3];h[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+8>>3]=aa;h[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+24>>3]=aa;c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+48>>2]=c[p>>2];c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+52>>2]=0;c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+40>>2]=c[o>>2];c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+44>>2]=0;H=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0;c[I>>2]=H;if((H|0)>0?(c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+40>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+40>>2]=c[p>>2];H=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0;c[I>>2]=H;if((H|0)>0?(c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+44>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+44>>2]=c[p>>2];H=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[I>>2]=H;if((H|0)>0?(c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+40>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+40>>2]=c[p>>2];H=c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[I>>2]=H;if((H|0)>0?(c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+44>>2]|0)==(c[o>>2]|0):0)c[(c[l>>2]|0)+((c[I>>2]|0)*72|0)+44>>2]=c[p>>2];c[x>>2]=mV()|0;c[y>>2]=mV()|0;c[q>>2]=c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+56>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)>>2]=2;I=(c[m>>2]|0)+((c[q>>2]|0)*40|0)+8|0;H=n+16|0;c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+4>>2]=c[j>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+32>>2]=c[y>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+36>>2]=c[x>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)>>2]=3;c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+24>>2]=c[o>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+28>>2]=c[q>>2];c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)>>2]=3;c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+24>>2]=c[p>>2];c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+28>>2]=c[q>>2];c[(c[l>>2]|0)+((c[o>>2]|0)*72|0)+56>>2]=c[x>>2];c[(c[l>>2]|0)+((c[p>>2]|0)*72|0)+56>>2]=c[y>>2];c[s>>2]=c[o>>2]}else if(($|0)==39){c[s>>2]=iV(n+16|0,n,c[n+40>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[D>>2]=1}c[z>>2]=c[r>>2];while(1){if((c[z>>2]|0)<=0){$=147;break}if(!(nV((c[l>>2]|0)+((c[z>>2]|0)*72|0)+24|0,(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24|0)|0)){$=147;break}c[q>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+56>>2];c[x>>2]=mV()|0;c[y>>2]=mV()|0;c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)>>2]=1;c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+4>>2]=c[j>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+32>>2]=c[x>>2];c[(c[m>>2]|0)+((c[q>>2]|0)*40|0)+36>>2]=c[y>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)>>2]=3;c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+24>>2]=c[z>>2];c[(c[m>>2]|0)+((c[x>>2]|0)*40|0)+28>>2]=c[q>>2];c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)>>2]=3;o=lV(c[l>>2]|0)|0;c[A>>2]=o;c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+24>>2]=o;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+68>>2]=1;c[(c[m>>2]|0)+((c[y>>2]|0)*40|0)+28>>2]=c[q>>2];if((c[z>>2]|0)==(c[r>>2]|0))c[t>>2]=c[A>>2];if(+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24+8>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24+8>>3]))<=1.0e-07?+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24>>3]))<=1.0e-07:0)c[u>>2]=c[A>>2];e=(c[l>>2]|0)+((c[A>>2]|0)*72|0)|0;d=(c[l>>2]|0)+((c[z>>2]|0)*72|0)|0;b=e+72|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(b|0));c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+56>>2]=c[x>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+56>>2]=c[y>>2];c[J>>2]=c[z>>2];c[K>>2]=c[A>>2];if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)<=0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)<=0:0){$=50;break}if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)>0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)<=0:0){do if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)>0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)>0:0){o=(c[l>>2]|0)+((c[z>>2]|0)*72|0)|0;if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]|0)<=0){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[o+44>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];break}if((c[o+64>>2]|0)==1){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[A>>2]}else{c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2]}c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+60>>2]=0;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]=0}else $=61;while(0);do if(($|0)==61){$=0;c[L>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];o=c[(c[l>>2]|0)+((c[L>>2]|0)*72|0)+48>>2]|0;c[M>>2]=o;if((o|0)>0?(o=c[(c[l>>2]|0)+((c[L>>2]|0)*72|0)+52>>2]|0,c[O>>2]=o,(o|0)>0):0){if((c[(c[l>>2]|0)+((c[M>>2]|0)*72|0)+4>>2]|0)>0?(jV(c[(c[l>>2]|0)+((c[M>>2]|0)*72|0)+4>>2]|0,c[k>>2]|0,n+16|0)|0)==0:0){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2];break}c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];break}c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2]}while(0);do if(+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24+8>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24+8>>3]))<=1.0e-07?(o=+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24>>3]))<=1.0e-07,o&(c[D>>2]|0)!=0):0){o=(c[k>>2]|0)+((c[j>>2]|0)*56|0)|0;if(c[E>>2]|0)c[F>>2]=c[o+48>>2];else c[F>>2]=c[o+44>>2];if((c[F>>2]|0)>0?(jV(c[F>>2]|0,c[k>>2]|0,n)|0)!=0:0){c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+52>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+48>>2]=-1;break}c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=c[A>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]=-1}else $=77;while(0);if(($|0)==77){$=0;do if((c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]|0)>0?(c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]|0)>0:0){o=(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)|0;if((c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]|0)==(c[z>>2]|0)){c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+60>>2]=c[o+44>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+64>>2]=1;break}else{c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+60>>2]=c[o+40>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+64>>2]=2;break}}while(0);c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=c[A>>2]}c[z>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]}else $=84;do if(($|0)==84){$=0;if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)<=0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)>0:0){do if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)>0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)>0:0){o=(c[l>>2]|0)+((c[z>>2]|0)*72|0)|0;if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]|0)<=0){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[o+44>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];break}if((c[o+64>>2]|0)==1){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[A>>2]}else{c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2]}c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+60>>2]=0;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]=0}else $=94;while(0);a:do if(($|0)==94){$=0;c[P>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];o=c[(c[l>>2]|0)+((c[P>>2]|0)*72|0)+48>>2]|0;c[Q>>2]=o;if((o|0)>0?(o=c[(c[l>>2]|0)+((c[P>>2]|0)*72|0)+52>>2]|0,c[R>>2]=o,(o|0)>0):0){do if((c[(c[l>>2]|0)+((c[Q>>2]|0)*72|0)+4>>2]|0)>0){if(jV(c[(c[l>>2]|0)+((c[Q>>2]|0)*72|0)+4>>2]|0,c[k>>2]|0,n+16|0)|0)break;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2];break a}while(0);c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];break}c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2]}while(0);b:do if(+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24+8>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24+8>>3]))<=1.0e-07?(o=+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24>>3]))<=1.0e-07,o&(c[D>>2]|0)!=0):0){o=(c[k>>2]|0)+((c[j>>2]|0)*56|0)|0;if(c[E>>2]|0)c[F>>2]=c[o+48>>2];else c[F>>2]=c[o+44>>2];do if((c[F>>2]|0)>0){if(!(jV(c[F>>2]|0,c[k>>2]|0,n)|0))break;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+52>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+48>>2]=-1;break b}while(0);c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=c[A>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]=-1}else $=110;while(0);if(($|0)==110){$=0;do if((c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]|0)>0?(c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]|0)>0:0){o=(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)|0;if((c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]|0)==(c[z>>2]|0)){c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+60>>2]=c[o+44>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+64>>2]=1;break}else{c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+60>>2]=c[o+40>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+64>>2]=2;break}}while(0);c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=c[A>>2]}c[z>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2];break}c[X>>2]=0;c[W>>2]=0;o=+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24+8>>3]-+h[n+8>>3]))<=1.0e-07;p=(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24|0;do if(o)if(+h[p>>3]>+h[n>>3]){c[W>>2]=1;break}else{c[X>>2]=1;break}else{aa=+h[p+8>>3];h[S>>3]=aa;h[U+8>>3]=aa;h[T>>3]=(+h[S>>3]-+h[n+8>>3])/(+h[n+16+8>>3]-+h[n+8>>3]);h[U>>3]=+h[n>>3]+ +h[T>>3]*(+h[n+16>>3]-+h[n>>3]);if(oV(U,(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24|0)|0){c[W>>2]=1;break}else{c[X>>2]=1;break}}while(0);do if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)>0?(c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)>0:0){p=(c[l>>2]|0)+((c[z>>2]|0)*72|0)|0;if((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]|0)<=0){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[p+44>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];break}if((c[p+64>>2]|0)==1){c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[A>>2]}else{c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[A>>2]}c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+60>>2]=0;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+60>>2]=0}else $=132;while(0);c:do if(($|0)==132){$=0;c[Y>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2];p=c[(c[l>>2]|0)+((c[Y>>2]|0)*72|0)+48>>2]|0;c[Z>>2]=p;if((p|0)>0?(p=c[(c[l>>2]|0)+((c[Y>>2]|0)*72|0)+52>>2]|0,c[_>>2]=p,(p|0)>0):0){do if((c[(c[l>>2]|0)+((c[Z>>2]|0)*72|0)+4>>2]|0)>0){if(jV(c[(c[l>>2]|0)+((c[Z>>2]|0)*72|0)+4>>2]|0,c[k>>2]|0,n+16|0)|0)break;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2];break c}while(0);c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+40>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];break}c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+48>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+40>>2]|0)*72|0)+52>>2]=c[A>>2]}while(0);if(+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24+8>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24+8>>3]))<=1.0e-07?(p=+N(+(+h[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+24>>3]-+h[(c[l>>2]|0)+((c[s>>2]|0)*72|0)+24>>3]))<=1.0e-07,p&(c[D>>2]|0)!=0):0){c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+48>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+52>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]=-1;c[V>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]}else $=142;do if(($|0)==142){$=0;p=(c[W>>2]|0)!=0;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]=c[z>>2];if(p){c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=c[A>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]=-1;c[V>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2];break}else{c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=-1;c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=c[z>>2];c[(c[l>>2]|0)+((c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=c[A>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+48>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2];c[(c[l>>2]|0)+((c[A>>2]|0)*72|0)+52>>2]=-1;c[V>>2]=c[(c[l>>2]|0)+((c[z>>2]|0)*72|0)+52>>2];break}}while(0);c[z>>2]=c[V>>2]}while(0);p=c[j>>2]|0;c[(c[l>>2]|0)+((c[K>>2]|0)*72|0)>>2]=p;c[(c[l>>2]|0)+((c[J>>2]|0)*72|0)+4>>2]=p}if(($|0)==50){Y2(c[24742]|0,176129,g)|0;ba=c[r>>2]|0;c[v>>2]=ba;ca=c[s>>2]|0;c[w>>2]=ca;da=c[j>>2]|0;ea=c[v>>2]|0;fa=c[w>>2]|0;ga=c[l>>2]|0;ha=c[m>>2]|0;pV(da,ea,fa,1,ga,ha);ia=c[j>>2]|0;ja=c[t>>2]|0;ka=c[u>>2]|0;la=c[l>>2]|0;ma=c[m>>2]|0;pV(ia,ja,ka,2,la,ma);na=c[j>>2]|0;oa=c[k>>2]|0;pa=oa+(na*56|0)|0;qa=pa+32|0;c[qa>>2]=1;i=f;return 0}else if(($|0)==147){ba=c[r>>2]|0;c[v>>2]=ba;ca=c[s>>2]|0;c[w>>2]=ca;da=c[j>>2]|0;ea=c[v>>2]|0;fa=c[w>>2]|0;ga=c[l>>2]|0;ha=c[m>>2]|0;pV(da,ea,fa,1,ga,ha);ia=c[j>>2]|0;ja=c[t>>2]|0;ka=c[u>>2]|0;la=c[l>>2]|0;ma=c[m>>2]|0;pV(ia,ja,ka,2,la,ma);na=c[j>>2]|0;oa=c[k>>2]|0;pa=oa+(na*56|0)|0;qa=pa+32|0;c[qa>>2]=1;i=f;return 0}return 0}function hV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=(c[h>>2]|0)+((c[g>>2]|0)*56|0);if(c[(c[l>>2]|0)+32>>2]|0){i=f;return}g=iV(c[l>>2]|0,(c[l>>2]|0)+16|0,c[(c[l>>2]|0)+36>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;c[(c[l>>2]|0)+36>>2]=g;c[(c[l>>2]|0)+36>>2]=c[(c[j>>2]|0)+((c[(c[l>>2]|0)+36>>2]|0)*72|0)+56>>2];g=iV((c[l>>2]|0)+16|0,c[l>>2]|0,c[(c[l>>2]|0)+40>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;c[(c[l>>2]|0)+40>>2]=g;c[(c[l>>2]|0)+40>>2]=c[(c[j>>2]|0)+((c[(c[l>>2]|0)+40>>2]|0)*72|0)+56>>2];i=f;return}function iV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+32|0;j=g;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=(c[p>>2]|0)+((c[n>>2]|0)*40|0);switch(c[c[q>>2]>>2]|0){case 3:{c[k>>2]=c[(c[q>>2]|0)+24>>2];r=c[k>>2]|0;i=g;return r|0}case 2:{do if(!(+h[(c[l>>2]|0)+8>>3]>+h[(c[q>>2]|0)+8+8>>3]+1.0e-07)){if(!(+h[(c[l>>2]|0)+8>>3]<+h[(c[q>>2]|0)+8+8>>3]-1.0e-07)?+h[c[l>>2]>>3]>+h[(c[q>>2]|0)+8>>3]:0)break;if(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[q>>2]|0)+8+8>>3]))<=1.0e-07?+N(+(+h[c[l>>2]>>3]-+h[(c[q>>2]|0)+8>>3]))<=1.0e-07:0){do if(!(+h[(c[m>>2]|0)+8>>3]>+h[(c[q>>2]|0)+8+8>>3]+1.0e-07)){if(!(+h[(c[m>>2]|0)+8>>3]<+h[(c[q>>2]|0)+8+8>>3]-1.0e-07)?+h[c[m>>2]>>3]>+h[(c[q>>2]|0)+8>>3]:0)break;c[k>>2]=iV(c[l>>2]|0,c[m>>2]|0,c[(c[q>>2]|0)+32>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}while(0);c[k>>2]=iV(c[l>>2]|0,c[m>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}c[k>>2]=iV(c[l>>2]|0,c[m>>2]|0,c[(c[q>>2]|0)+32>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}while(0);c[k>>2]=iV(c[l>>2]|0,c[m>>2]|0,c[(c[q>>2]|0)+36>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}case 1:{if(!(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[o>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)*56|0)+8>>3]))<=1.0e-07?+N(+(+h[c[l>>2]>>3]-+h[(c[o>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)*56|0)>>3]))<=1.0e-07:0))s=17;do if((s|0)==17){if(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[o>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)*56|0)+16+8>>3]))<=1.0e-07?+N(+(+h[c[l>>2]>>3]-+h[(c[o>>2]|0)+((c[(c[q>>2]|0)+4>>2]|0)*56|0)+16>>3]))<=1.0e-07:0)break;n=(jV(c[(c[q>>2]|0)+4>>2]|0,c[o>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;e=c[m>>2]|0;d=c[q>>2]|0;if(n){c[k>>2]=iV(f,e,c[d+32>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}else{c[k>>2]=iV(f,e,c[d+36>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}}while(0);if(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[m>>2]|0)+8>>3]))<=1.0e-07){s=c[l>>2]|0;d=c[m>>2]|0;e=c[q>>2]|0;if(+h[c[m>>2]>>3]<+h[c[l>>2]>>3]){c[k>>2]=iV(s,d,c[e+32>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}else{c[k>>2]=iV(s,d,c[e+36>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}}else{e=(jV(c[(c[q>>2]|0)+4>>2]|0,c[o>>2]|0,c[m>>2]|0)|0)!=0;d=c[l>>2]|0;l=c[m>>2]|0;m=c[q>>2]|0;if(e){c[k>>2]=iV(d,l,c[m+32>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}else{c[k>>2]=iV(d,l,c[m+36>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;r=c[k>>2]|0;i=g;return r|0}}break}default:{Y2(c[24742]|0,176063,j)|0;La(176099,176101,349,176113)}}return 0}function jV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=(c[j>>2]|0)+((c[g>>2]|0)*56|0);do if(!(+h[(c[l>>2]|0)+16+8>>3]>+h[(c[l>>2]|0)+8>>3]+1.0e-07)){if(!(+h[(c[l>>2]|0)+16+8>>3]<+h[(c[l>>2]|0)+8>>3]-1.0e-07)?+h[(c[l>>2]|0)+16>>3]>+h[c[l>>2]>>3]:0){n=4;break}if(+N(+(+h[(c[l>>2]|0)+16+8>>3]-+h[(c[k>>2]|0)+8>>3]))<=1.0e-07)if(+h[c[k>>2]>>3]<+h[(c[l>>2]|0)+16>>3]){h[m>>3]=1.0;break}else{h[m>>3]=-1.0;break}if(!(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8>>3]))<=1.0e-07)){h[m>>3]=(+h[c[l>>2]>>3]-+h[(c[l>>2]|0)+16>>3])*(+h[(c[k>>2]|0)+8>>3]-+h[(c[l>>2]|0)+16+8>>3])-(+h[(c[l>>2]|0)+8>>3]-+h[(c[l>>2]|0)+16+8>>3])*(+h[c[k>>2]>>3]-+h[(c[l>>2]|0)+16>>3]);break}if(+h[c[k>>2]>>3]<+h[c[l>>2]>>3]){h[m>>3]=1.0;break}else{h[m>>3]=-1.0;break}}else n=4;while(0);do if((n|0)==4){if(+N(+(+h[(c[l>>2]|0)+16+8>>3]-+h[(c[k>>2]|0)+8>>3]))<=1.0e-07)if(+h[c[k>>2]>>3]<+h[(c[l>>2]|0)+16>>3]){h[m>>3]=1.0;break}else{h[m>>3]=-1.0;break}if(!(+N(+(+h[(c[l>>2]|0)+8>>3]-+h[(c[k>>2]|0)+8>>3]))<=1.0e-07)){h[m>>3]=(+h[(c[l>>2]|0)+16>>3]-+h[c[l>>2]>>3])*(+h[(c[k>>2]|0)+8>>3]-+h[(c[l>>2]|0)+8>>3])-(+h[(c[l>>2]|0)+16+8>>3]-+h[(c[l>>2]|0)+8>>3])*(+h[c[k>>2]>>3]-+h[c[l>>2]>>3]);break}if(+h[c[k>>2]>>3]<+h[c[l>>2]>>3]){h[m>>3]=1.0;break}else{h[m>>3]=-1.0;break}}while(0);if(+h[m>>3]>0.0){c[f>>2]=1;o=c[f>>2]|0;i=e;return o|0}else{c[f>>2]=0;o=c[f>>2]|0;i=e;return o|0}return 0}function kV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;d=(c[h>>2]|0)+((c[g>>2]|0)*56|0)|0;if((c[j>>2]|0)==1){c[f>>2]=c[(c[h>>2]|0)+((c[d+48>>2]|0)*56|0)+32>>2];k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=c[(c[h>>2]|0)+((c[d+44>>2]|0)*56|0)+32>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function lV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;e=b+4|0;c[e>>2]=a;if((c[22925]|0)<(c[22924]|0)){c[(c[e>>2]|0)+((c[22925]|0)*72|0)>>2]=-1;c[(c[e>>2]|0)+((c[22925]|0)*72|0)+4>>2]=-1;c[(c[e>>2]|0)+((c[22925]|0)*72|0)+68>>2]=1;e=c[22925]|0;c[22925]=e+1;i=b;return e|0}else{e=c[24742]|0;c[d>>2]=c[22925];Y2(e,176188,d)|0;La(176099,176101,88,176226)}return 0}function mV(){var a=0,b=0;a=i;i=i+16|0;if((c[22926]|0)<(c[22923]|0)){b=c[22926]|0;c[22926]=b+1;i=a;return b|0}else{Y2(c[24742]|0,176149,a)|0;La(176099,176101,72,176180)}return 0}function nV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if(+h[(c[f>>2]|0)+8>>3]>+h[(c[g>>2]|0)+8>>3]+1.0e-07){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}if(+h[(c[f>>2]|0)+8>>3]<+h[(c[g>>2]|0)+8>>3]-1.0e-07){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=+h[c[f>>2]>>3]>=+h[c[g>>2]>>3]&1;j=c[e>>2]|0;i=d;return j|0}return 0}function oV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if(+h[(c[f>>2]|0)+8>>3]<+h[(c[g>>2]|0)+8>>3]-1.0e-07){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}if(+h[(c[f>>2]|0)+8>>3]>+h[(c[g>>2]|0)+8>>3]+1.0e-07){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=+h[c[f>>2]>>3]<+h[c[g>>2]>>3]&1;j=c[e>>2]|0;i=d;return j|0}return 0}function pV(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+48|0;j=h+36|0;k=h+32|0;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=c[k>>2];while(1){if((c[p>>2]|0)<=0){t=34;break}if(!(nV((c[n>>2]|0)+((c[p>>2]|0)*72|0)+24|0,(c[n>>2]|0)+((c[l>>2]|0)*72|0)+24|0)|0)){t=34;break}k=(c[m>>2]|0)==1;g=c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0;c[q>>2]=g;f=(g|0)>0;if(k){if(f?(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+4>>2]|0)==(c[j>>2]|0):0)u=1;else{k=c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[q>>2]=k;if((k|0)>0)u=(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+4>>2]|0)==(c[j>>2]|0);else u=0}c[r>>2]=u&1}else{if(f?(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)>>2]|0)==(c[j>>2]|0):0)v=1;else{f=c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0;c[q>>2]=f;if((f|0)>0)v=(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)>>2]|0)==(c[j>>2]|0);else v=0}c[r>>2]=v&1}if(!(c[r>>2]|0)){c[p>>2]=c[q>>2];continue}if((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)>>2]|0)==(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)>>2]|0)?(c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+4>>2]|0)==(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+4>>2]|0):0){c[s>>2]=c[(c[o>>2]|0)+((c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+56>>2]|0)*40|0)+28>>2];f=c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+56>>2]|0;k=(c[o>>2]|0)+((c[s>>2]|0)*40|0)|0;if((c[(c[o>>2]|0)+((c[s>>2]|0)*40|0)+32>>2]|0)==(c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+56>>2]|0))c[k+32>>2]=f;else c[k+36>>2]=f;f=c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+48>>2]|0;c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]=f;do if((f|0)>0){k=c[p>>2]|0;if((c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]|0)==(c[q>>2]|0)){c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0)*72|0)+40>>2]=k;break}if((c[(c[n>>2]|0)+((c[(c[n>>2]|0)+(k*72|0)+48>>2]|0)*72|0)+44>>2]|0)==(c[q>>2]|0))c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+48>>2]|0)*72|0)+44>>2]=c[p>>2]}while(0);f=c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+52>>2]|0;c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]=f;do if((f|0)>0){k=c[p>>2]|0;if((c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]|0)==(c[q>>2]|0)){c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0)*72|0)+40>>2]=k;break}if((c[(c[n>>2]|0)+((c[(c[n>>2]|0)+(k*72|0)+52>>2]|0)*72|0)+44>>2]|0)==(c[q>>2]|0))c[(c[n>>2]|0)+((c[(c[n>>2]|0)+((c[p>>2]|0)*72|0)+52>>2]|0)*72|0)+44>>2]=c[p>>2]}while(0);f=(c[n>>2]|0)+((c[p>>2]|0)*72|0)+24|0;k=(c[n>>2]|0)+((c[q>>2]|0)*72|0)+24|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2];c[(c[n>>2]|0)+((c[q>>2]|0)*72|0)+68>>2]=2;continue}c[p>>2]=c[q>>2]}if((t|0)==34){i=h;return}}function qV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if(+h[(c[g>>2]|0)+8>>3]>+h[(c[j>>2]|0)+8>>3]+1.0e-07){d=c[f>>2]|0;b=c[g>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];i=e;return 0}if(!(+N(+(+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3]))<=1.0e-07)){b=c[f>>2]|0;d=c[j>>2]|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];i=e;return 0}d=c[f>>2]|0;if(+h[c[g>>2]>>3]>+h[c[j>>2]>>3]+1.0e-07){f=c[g>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];i=e;return 0}else{f=c[j>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];i=e;return 0}return 0}function rV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;if(+h[(c[g>>2]|0)+8>>3]<+h[(c[j>>2]|0)+8>>3]-1.0e-07){d=c[f>>2]|0;b=c[g>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];i=e;return 0}if(!(+N(+(+h[(c[g>>2]|0)+8>>3]-+h[(c[j>>2]|0)+8>>3]))<=1.0e-07)){b=c[f>>2]|0;d=c[j>>2]|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];i=e;return 0}d=c[f>>2]|0;if(+h[c[g>>2]>>3]<+h[c[j>>2]>>3]){f=c[g>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];i=e;return 0}else{f=c[j>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];i=e;return 0}return 0}function sV(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=bK(8)|0;c[e>>2]=a;if(!a){f=c[e>>2]|0;i=b;return f|0}c[(c[e>>2]|0)+4>>2]=c[d>>2];c[c[e>>2]>>2]=0;f=c[e>>2]|0;i=b;return f|0}function tV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;if(c[g>>2]|0){c[h>>2]=sV(c[g>>2]|0)|0;c[c[h>>2]>>2]=c[f>>2];c[e>>2]=c[h>>2];j=c[e>>2]|0;i=d;return j|0}else{c[e>>2]=c[f>>2];j=c[e>>2]|0;i=d;return j|0}return 0}function uV(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;while(1){f=c[d>>2]|0;if(!(c[c[d>>2]>>2]|0))break;c[e>>2]=c[f>>2];O4(c[d>>2]|0);c[d>>2]=c[e>>2]}O4(f);i=b;return}function vV(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a;d=bK(1992)|0;c[b>>2]=d;if(d){d=wV(c[b>>2]|0)|0;c[c[b>>2]>>2]=d}i=a;return c[b>>2]|0}function wV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=CV(c[d>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=0;a=(c[d>>2]|0)+1972|0;c[a>>2]=(c[a>>2]|0)+1;i=b;return c[e>>2]|0}function xV(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;AV(c[d>>2]|0,c[c[d>>2]>>2]|0)|0;O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return 0}function yV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;if(!(c[g>>2]|0))La(176617,176234,194,176242);if((c[(c[g>>2]|0)+4>>2]|0)<0)La(176254,176234,195,176242);if(!(c[h>>2]|0))La(176526,176234,196,176242);d=(c[f>>2]|0)+1952|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[(c[g>>2]|0)+4>>2]|0)>0;c[j>>2]=0;if(!d){while(1){if((c[j>>2]|0)>=64)break;if((c[(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)+16>>2]|0)!=0?(NV(c[h>>2]|0,(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)|0)|0)!=0:0)c[k>>2]=tV(c[k>>2]|0,(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)|0)|0;c[j>>2]=(c[j>>2]|0)+1}n=c[k>>2]|0;i=e;return n|0}while(1){if((c[j>>2]|0)>=64)break;do if((c[(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)+16>>2]|0)!=0?(NV(c[h>>2]|0,(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)|0)|0)!=0:0){c[l>>2]=yV(c[f>>2]|0,c[(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)+16>>2]|0,c[h>>2]|0)|0;if(!(c[k>>2]|0)){c[k>>2]=c[l>>2];break}c[m>>2]=c[k>>2];while(1){if(!(c[c[m>>2]>>2]|0))break;c[m>>2]=c[c[m>>2]>>2]}c[c[m>>2]>>2]=c[l>>2]}while(0);c[j>>2]=(c[j>>2]|0)+1}n=c[k>>2]|0;i=e;return n|0}function zV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+96|0;h=g+84|0;j=g+80|0;k=g+76|0;l=g+72|0;m=g+68|0;n=g+64|0;o=g+60|0;p=g+56|0;q=g+36|0;r=g+32|0;s=g+16|0;t=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[p>>2]=0;c[r>>2]=0;if(!((c[j>>2]|0)!=0&(c[l>>2]|0)!=0))La(176440,176234,247,176268);if((c[m>>2]|0)<0)La(176280,176234,248,176268);if((c[m>>2]|0)>(c[(c[c[l>>2]>>2]|0)+4>>2]|0))La(176280,176234,248,176268);c[n>>2]=0;while(1){if((c[n>>2]|0)>=2)break;if((c[(c[j>>2]|0)+(c[n>>2]<<2)>>2]|0)>(c[(c[j>>2]|0)+(2+(c[n>>2]|0)<<2)>>2]|0)){u=9;break}c[n>>2]=(c[n>>2]|0)+1}if((u|0)==9)La(176315,176234,250,176268);do if(c[(c[h>>2]|0)+1912>>2]|0){u=c[h>>2]|0;if(c[(c[h>>2]|0)+1908>>2]|0){n=u+1924|0;c[n>>2]=(c[n>>2]|0)+1;break}else{n=u+1916|0;c[n>>2]=(c[n>>2]|0)+1;break}}while(0);if(!(c[(c[h>>2]|0)+1908>>2]|0)){n=(c[h>>2]|0)+1964|0;c[n>>2]=(c[n>>2]|0)+1}if(!(BV(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[c[l>>2]>>2]|0,p,c[m>>2]|0)|0)){v=c[r>>2]|0;i=g;return v|0}do if(c[(c[h>>2]|0)+1912>>2]|0){m=c[h>>2]|0;if(c[(c[h>>2]|0)+1908>>2]|0){k=m+1948|0;c[k>>2]=(c[k>>2]|0)+1;break}else{k=m+1944|0;c[k>>2]=(c[k>>2]|0)+1;break}}while(0);c[o>>2]=CV(c[h>>2]|0)|0;k=(c[h>>2]|0)+1976|0;c[k>>2]=(c[k>>2]|0)+1;c[(c[o>>2]|0)+4>>2]=(c[(c[c[l>>2]>>2]|0)+4>>2]|0)+1;FV(s,c[c[l>>2]>>2]|0);c[q>>2]=c[s>>2];c[q+4>>2]=c[s+4>>2];c[q+8>>2]=c[s+8>>2];c[q+12>>2]=c[s+12>>2];c[q+16>>2]=c[c[l>>2]>>2];HV(c[h>>2]|0,q,c[o>>2]|0,0)|0;FV(t,c[p>>2]|0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];c[q+16>>2]=c[p>>2];HV(c[h>>2]|0,q,c[o>>2]|0,0)|0;c[c[l>>2]>>2]=c[o>>2];o=(c[h>>2]|0)+1980|0;c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=1;v=c[r>>2]|0;i=g;return v|0}function AV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[f>>2]|0)+4>>2]|0)>0;c[g>>2]=0;if(!b){while(1){if((c[g>>2]|0)>=64)break;if((c[(c[f>>2]|0)+8+((c[g>>2]|0)*20|0)+16>>2]|0)!=0?(IV(c[f>>2]|0,c[g>>2]|0),b=(c[e>>2]|0)+1980|0,c[b>>2]=(c[b>>2]|0)+-1,(c[(c[e>>2]|0)+1912>>2]|0)!=0):0){b=(c[e>>2]|0)+1936|0;c[b>>2]=(c[b>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}i=d;return 0}while(1){if((c[g>>2]|0)>=64)break;if(((c[(c[f>>2]|0)+8+((c[g>>2]|0)*20|0)+16>>2]|0)!=0?(AV(c[e>>2]|0,c[(c[f>>2]|0)+8+((c[g>>2]|0)*20|0)+16>>2]|0)|0)==0:0)?(O4(c[(c[f>>2]|0)+8+((c[g>>2]|0)*20|0)+16>>2]|0),IV(c[f>>2]|0,c[g>>2]|0),b=(c[e>>2]|0)+1980|0,c[b>>2]=(c[b>>2]|0)+-1,(c[(c[e>>2]|0)+1912>>2]|0)!=0):0){b=(c[e>>2]|0)+1936|0;c[b>>2]=(c[b>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}i=d;return 0}function BV(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=i;i=i+112|0;j=h+100|0;k=h+96|0;l=h+92|0;m=h+88|0;n=h+84|0;o=h+80|0;p=h+76|0;q=h+72|0;r=h+52|0;s=h+48|0;t=h+32|0;u=h+16|0;v=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=0;c[s>>2]=0;if(!((c[l>>2]|0)!=0&(c[n>>2]|0)!=0&(c[o>>2]|0)!=0))La(176358,176234,311,176372);if((c[p>>2]|0)<0)La(176385,176234,312,176372);if((c[p>>2]|0)>(c[(c[n>>2]|0)+4>>2]|0))La(176385,176234,312,176372);do if(c[(c[k>>2]|0)+1912>>2]|0){g=c[k>>2]|0;if(c[(c[k>>2]|0)+1908>>2]|0){f=g+1948|0;c[f>>2]=(c[f>>2]|0)+1;break}else{f=g+1944|0;c[f>>2]=(c[f>>2]|0)+1;break}}while(0);if((c[(c[n>>2]|0)+4>>2]|0)<=(c[p>>2]|0)){if((c[(c[n>>2]|0)+4>>2]|0)!=(c[p>>2]|0))La(176417,176234,341,176372);f=c[l>>2]|0;c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[r+16>>2]=c[m>>2];f=(c[k>>2]|0)+1980|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=HV(c[k>>2]|0,r,c[n>>2]|0,c[o>>2]|0)|0;w=c[j>>2]|0;i=h;return w|0}c[q>>2]=GV(c[l>>2]|0,c[n>>2]|0)|0;f=(BV(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[(c[n>>2]|0)+8+((c[q>>2]|0)*20|0)+16>>2]|0,s,c[p>>2]|0)|0)!=0;p=(c[n>>2]|0)+8+((c[q>>2]|0)*20|0)|0;if(f){FV(u,c[(c[n>>2]|0)+8+((c[q>>2]|0)*20|0)+16>>2]|0);c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[r+16>>2]=c[s>>2];FV(v,c[s>>2]|0);c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];v=(c[k>>2]|0)+1980|0;c[v>>2]=(c[v>>2]|0)+1;c[j>>2]=HV(c[k>>2]|0,r,c[n>>2]|0,c[o>>2]|0)|0;w=c[j>>2]|0;i=h;return w|0}else{MV(t,c[l>>2]|0,(c[n>>2]|0)+8+((c[q>>2]|0)*20|0)|0);c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];c[j>>2]=0;w=c[j>>2]|0;i=h;return w|0}return 0}function CV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=(c[d>>2]|0)+1968|0;c[a>>2]=(c[a>>2]|0)+1;c[e>>2]=N4(1288)|0;DV(c[e>>2]|0);i=b;return c[e>>2]|0}function DV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=-1;c[e>>2]=0;while(1){if((c[e>>2]|0)>=64)break;EV((c[d>>2]|0)+8+((c[e>>2]|0)*20|0)|0);c[e>>2]=(c[e>>2]|0)+1}i=b;return}function EV(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;JV(c[d>>2]|0);c[(c[d>>2]|0)+16>>2]=0;i=b;return}function FV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+48|0;e=d+40|0;f=d+36|0;g=d+32|0;h=d+16|0;j=d;c[e>>2]=b;if(!(c[e>>2]|0))La(176617,176423,99,176430);JV(h);c[g>>2]=1;c[f>>2]=0;while(1){if((c[f>>2]|0)>=64)break;do if(c[(c[e>>2]|0)+8+((c[f>>2]|0)*20|0)+16>>2]|0){b=(c[e>>2]|0)+8+((c[f>>2]|0)*20|0)|0;if(c[g>>2]|0){c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[g>>2]=0;break}else{MV(j,h,b);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];break}}while(0);c[f>>2]=(c[f>>2]|0)+1}c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];i=d;return}function GV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+80|0;e=d+68|0;f=d+64|0;g=d+60|0;h=d+56|0;j=d+52|0;k=d+48|0;l=d+44|0;m=d+40|0;n=d+36|0;o=d+32|0;p=d+16|0;q=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[j>>2]=1;c[k>>2]=0;c[l>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0))La(176440,176423,125,176447);c[h>>2]=0;while(1){if((c[h>>2]|0)>=64)break;do if(c[(c[f>>2]|0)+8+((c[h>>2]|0)*20|0)+16>>2]|0){c[g>>2]=(c[f>>2]|0)+8+((c[h>>2]|0)*20|0);c[m>>2]=LV(c[g>>2]|0)|0;MV(q,c[e>>2]|0,c[g>>2]|0);c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];b=LV(p)|0;c[k>>2]=b-(c[m>>2]|0);if((c[j>>2]|0)!=0?1:(c[k>>2]|0)<(c[l>>2]|0)){c[o>>2]=c[h>>2];c[n>>2]=c[m>>2];c[l>>2]=c[k>>2];c[j>>2]=0;break}if((c[k>>2]|0)==(c[l>>2]|0)?(c[m>>2]|0)<(c[n>>2]|0):0){c[o>>2]=c[h>>2];c[n>>2]=c[m>>2];c[l>>2]=c[k>>2]}}while(0);c[h>>2]=(c[h>>2]|0)+1}i=d;return c[o>>2]|0}function HV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[j>>2]|0))La(176639,176423,167,176458);if(!(c[k>>2]|0))La(176617,176423,168,176458);if((c[c[k>>2]>>2]|0)<64){c[m>>2]=0;while(1){if((c[m>>2]|0)>=64)break;n=c[m>>2]|0;if(!(c[(c[k>>2]|0)+8+((c[m>>2]|0)*20|0)+16>>2]|0)){o=9;break}c[m>>2]=n+1}if((o|0)==9){o=(c[k>>2]|0)+8+(n*20|0)|0;n=c[j>>2]|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[o+16>>2]=c[n+16>>2];n=c[k>>2]|0;c[n>>2]=(c[n>>2]|0)+1}if((c[m>>2]|0)>=64)La(176468,176423,178,176458);c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}do if(c[(c[h>>2]|0)+1912>>2]|0){m=c[h>>2]|0;if(c[(c[h>>2]|0)+1908>>2]|0){n=m+1948|0;c[n>>2]=(c[n>>2]|0)+1;break}else{n=m+1944|0;c[n>>2]=(c[n>>2]|0)+1;break}}while(0);if(!(c[l>>2]|0))La(176481,176423,187,176458);OV(c[h>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0);l=c[h>>2]|0;if(!(c[(c[k>>2]|0)+4>>2]|0)){k=l+1972|0;c[k>>2]=(c[k>>2]|0)+1}else{k=l+1976|0;c[k>>2]=(c[k>>2]|0)+1}c[g>>2]=1;p=c[g>>2]|0;i=f;return p|0}function IV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)>=0&(c[f>>2]|0)<64))La(176485,176423,201,176513);if(c[(c[e>>2]|0)+8+((c[f>>2]|0)*20|0)+16>>2]|0){EV((c[e>>2]|0)+8+((c[f>>2]|0)*20|0)|0);f=c[e>>2]|0;c[f>>2]=(c[f>>2]|0)+-1;i=d;return}else La(177040,176423,202,176513)}function JV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=4)break;c[(c[d>>2]|0)+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function KV(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+32|0;d=b+8|0;e=b;c[d>>2]=1;c[d+8>>2]=-1;c[e>>2]=1;while(1){if((c[e>>2]|0)>=2)break;c[d+((c[e>>2]|0)+2<<2)>>2]=0;c[d+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+1}c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=b;return}function LV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;i=i+32|0;d=b+8|0;e=b+24|0;f=b+20|0;g=b+16|0;h=b+12|0;j=b;c[f>>2]=a;if(!(c[f>>2]|0))La(176526,176528,130,176540);if((c[c[f>>2]>>2]|0)>(c[(c[f>>2]|0)+8>>2]|0)){c[e>>2]=0;k=c[e>>2]|0;i=b;return k|0}c[h>>2]=1;c[g>>2]=0;while(1){l=c[h>>2]|0;if((c[g>>2]|0)>=2){m=10;break}a=_(l,c[(c[f>>2]|0)+((c[g>>2]|0)+2<<2)>>2]|0)|0;n=j;c[n>>2]=a-(c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]|0);c[n+4>>2]=0;n=j;a=c[n+4>>2]|0;if((a|0)>0|(a|0)==0&(c[n>>2]|0)>>>0>4294967295){m=8;break}c[h>>2]=c[j>>2];c[g>>2]=(c[g>>2]|0)+1}if((m|0)==8){$z(1,176549,d)|0;c[e>>2]=-1;k=c[e>>2]|0;i=b;return k|0}else if((m|0)==10){c[e>>2]=l;k=c[e>>2]|0;i=b;return k|0}return 0}function MV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e;c[f>>2]=b;c[g>>2]=d;if(!((c[f>>2]|0)!=0&(c[g>>2]|0)!=0))La(176582,176528,197,176590);d=c[g>>2]|0;if((c[c[f>>2]>>2]|0)>(c[(c[f>>2]|0)+8>>2]|0)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=e;return}if((c[d>>2]|0)>(c[(c[g>>2]|0)+8>>2]|0)){d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=e;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;d=c[h>>2]|0;if((c[(c[f>>2]|0)+(c[h>>2]<<2)>>2]|0)<(c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0))l=c[(c[f>>2]|0)+(d<<2)>>2]|0;else l=c[(c[g>>2]|0)+(d<<2)>>2]|0;c[k+(c[h>>2]<<2)>>2]=l;c[j>>2]=(c[h>>2]|0)+2;d=c[j>>2]|0;if((c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)>(c[(c[g>>2]|0)+(c[j>>2]<<2)>>2]|0))m=c[(c[f>>2]|0)+(d<<2)>>2]|0;else m=c[(c[g>>2]|0)+(d<<2)>>2]|0;c[k+(c[j>>2]<<2)>>2]=m;c[h>>2]=(c[h>>2]|0)+1}c[a>>2]=c[k>>2];c[a+4>>2]=c[k+4>>2];c[a+8>>2]=c[k+8>>2];c[a+12>>2]=c[k+12>>2];i=e;return}function NV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;if(!((c[f>>2]|0)!=0&(c[g>>2]|0)!=0))La(176602,176528,218,176609);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2){k=9;break}c[j>>2]=(c[h>>2]|0)+2;if((c[(c[f>>2]|0)+(c[h>>2]<<2)>>2]|0)>(c[(c[g>>2]|0)+(c[j>>2]<<2)>>2]|0)){k=7;break}if((c[(c[g>>2]|0)+(c[h>>2]<<2)>>2]|0)>(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)){k=7;break}c[h>>2]=(c[h>>2]|0)+1}if((k|0)==7){c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}else if((k|0)==9){c[e>>2]=1;l=c[e>>2]|0;i=d;return l|0}return 0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[j>>2]|0))La(176617,176619,40,176629);if(!(c[k>>2]|0))La(176639,176619,41,176629);do if(c[(c[h>>2]|0)+1912>>2]|0){e=c[h>>2]|0;if(c[(c[h>>2]|0)+1908>>2]|0){d=e+1932|0;c[d>>2]=(c[d>>2]|0)+1;break}else{d=e+1928|0;c[d>>2]=(c[d>>2]|0)+1;break}}while(0);c[n>>2]=c[(c[j>>2]|0)+4>>2];PV(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0);c[m>>2]=(c[h>>2]|0)+4+1320;QV(c[h>>2]|0);k=LV((c[m>>2]|0)+528|0)|0;c[o>>2]=k+(LV((c[m>>2]|0)+528+16|0)|0);if((c[(c[h>>2]|0)+1912>>2]|0)!=0?((c[o>>2]|0)!=0?(c[(c[h>>2]|0)+1908>>2]|0)==0:0):0){k=(c[h>>2]|0)+1960|0;g[k>>2]=+g[k>>2]+ +((c[(c[h>>2]|0)+4+1316>>2]|0)>>>0)/+(c[o>>2]|0)}o=CV(c[h>>2]|0)|0;c[c[l>>2]>>2]=o;o=c[n>>2]|0;c[(c[j>>2]|0)+4>>2]=o;c[(c[c[l>>2]>>2]|0)+4>>2]=o;RV(c[h>>2]|0,c[j>>2]|0,c[c[l>>2]>>2]|0,c[m>>2]|0);if(((c[c[j>>2]>>2]|0)+(c[c[c[l>>2]>>2]>>2]|0)|0)==65){i=f;return}else La(176641,176619,86,176629)}function PV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0))La(176617,176619,106,177028);if(!(c[h>>2]|0))La(176639,176619,107,177028);c[j>>2]=0;while(1){if((c[j>>2]|0)>=64)break;if(!(c[(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)+16>>2]|0)){l=8;break}d=(c[f>>2]|0)+4+((c[j>>2]|0)*20|0)|0;b=(c[g>>2]|0)+8+((c[j>>2]|0)*20|0)|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[j>>2]=(c[j>>2]|0)+1}if((l|0)==8)La(177040,176619,111,177028);l=(c[f>>2]|0)+4+1280|0;b=c[h>>2]|0;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[l+8>>2]=c[b+8>>2];c[l+12>>2]=c[b+12>>2];c[l+16>>2]=c[b+16>>2];b=(c[f>>2]|0)+4+1300|0;l=(c[f>>2]|0)+4|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];c[b+8>>2]=c[l+8>>2];c[b+12>>2]=c[l+12>>2];c[j>>2]=1;while(1){m=(c[f>>2]|0)+4+1300|0;if((c[j>>2]|0)>=65)break;MV(k,(c[f>>2]|0)+4+1300|0,(c[f>>2]|0)+4+((c[j>>2]|0)*20|0)|0);c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];c[j>>2]=(c[j>>2]|0)+1}j=LV(m)|0;c[(c[f>>2]|0)+4+1316>>2]=j;DV(c[g>>2]|0);i=e;return}function QV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b=i;i=i+96|0;d=b+84|0;e=b+80|0;f=b+76|0;g=b+72|0;h=b+68|0;j=b+64|0;k=b+60|0;l=b+56|0;m=b+52|0;n=b+48|0;o=b+32|0;p=b+16|0;q=b;c[d>>2]=a;SV(c[d>>2]|0);TV(c[d>>2]|0);while(1){if(((c[(c[d>>2]|0)+4+1320+520>>2]|0)+(c[(c[d>>2]|0)+4+1320+520+4>>2]|0)|0)>=65)break;if((c[(c[d>>2]|0)+4+1320+520>>2]|0)>=(65-(c[(c[d>>2]|0)+1892>>2]|0)|0))break;if((c[(c[d>>2]|0)+4+1320+520+4>>2]|0)>=(65-(c[(c[d>>2]|0)+1892>>2]|0)|0))break;c[k>>2]=-1;c[f>>2]=0;while(1){if((c[f>>2]|0)>=65)break;do if(!(c[(c[d>>2]|0)+4+1320+260+(c[f>>2]<<2)>>2]|0)){c[e>>2]=(c[d>>2]|0)+4+((c[f>>2]|0)*20|0);MV(p,c[e>>2]|0,(c[d>>2]|0)+4+1320+528|0);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];a=LV(o)|0;c[g>>2]=a-(c[(c[d>>2]|0)+4+1320+560>>2]|0);MV(q,c[e>>2]|0,(c[d>>2]|0)+4+1320+528+16|0);c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];a=LV(o)|0;c[h>>2]=a-(c[(c[d>>2]|0)+4+1320+560+4>>2]|0);c[j>>2]=(c[h>>2]|0)-(c[g>>2]|0);if((c[j>>2]|0)>=0)c[l>>2]=0;else{c[l>>2]=1;c[j>>2]=0-(c[j>>2]|0)}a=c[j>>2]|0;if((c[j>>2]|0)>(c[k>>2]|0)){c[k>>2]=a;c[m>>2]=c[f>>2];c[n>>2]=c[l>>2];break}if((a|0)==(c[k>>2]|0)?(c[(c[d>>2]|0)+4+1320+520+(c[l>>2]<<2)>>2]|0)<(c[(c[d>>2]|0)+4+1320+520+(c[n>>2]<<2)>>2]|0):0){c[m>>2]=c[f>>2];c[n>>2]=c[l>>2]}}while(0);c[f>>2]=(c[f>>2]|0)+1}UV(c[d>>2]|0,c[m>>2]|0,c[n>>2]|0)}a:do if(((c[(c[d>>2]|0)+4+1320+520>>2]|0)+(c[(c[d>>2]|0)+4+1320+520+4>>2]|0)|0)<65){c[l>>2]=0;if((c[(c[d>>2]|0)+4+1320+520>>2]|0)>=(65-(c[(c[d>>2]|0)+1892>>2]|0)|0))c[l>>2]=1;c[f>>2]=0;while(1){if((c[f>>2]|0)>=65)break a;if(!(c[(c[d>>2]|0)+4+1320+260+(c[f>>2]<<2)>>2]|0))UV(c[d>>2]|0,c[f>>2]|0,c[l>>2]|0);c[f>>2]=(c[f>>2]|0)+1}}while(0);if(((c[(c[d>>2]|0)+4+1320+520>>2]|0)+(c[(c[d>>2]|0)+4+1320+520+4>>2]|0)|0)!=65)La(176784,176619,210,176870);if((c[(c[d>>2]|0)+4+1320+520>>2]|0)<(c[(c[d>>2]|0)+1892>>2]|0))La(176881,176619,212,176870);if((c[(c[d>>2]|0)+4+1320+520+4>>2]|0)>=(c[(c[d>>2]|0)+1892>>2]|0)){i=b;return}else La(176881,176619,212,176870)}function RV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[h>>2]|0))La(176617,176619,297,176681);if(!(c[j>>2]|0))La(176691,176619,298,176681);if(!(c[k>>2]|0))La(176693,176619,299,176681);c[l>>2]=0;while(1){if((c[l>>2]|0)>=65){m=17;break}if((c[(c[g>>2]|0)+4+1320+(c[l>>2]<<2)>>2]|0)!=0?(c[(c[g>>2]|0)+4+1320+(c[l>>2]<<2)>>2]|0)!=1:0){m=11;break}if(c[(c[g>>2]|0)+4+1320+(c[l>>2]<<2)>>2]|0){if((c[(c[g>>2]|0)+4+1320+(c[l>>2]<<2)>>2]|0)==1)HV(c[g>>2]|0,(c[g>>2]|0)+4+((c[l>>2]|0)*20|0)|0,c[j>>2]|0,0)|0}else HV(c[g>>2]|0,(c[g>>2]|0)+4+((c[l>>2]|0)*20|0)|0,c[h>>2]|0,0)|0;c[l>>2]=(c[l>>2]|0)+1}if((m|0)==11)La(176695,176619,303,176681);else if((m|0)==17){i=f;return}}function SV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b;c[d>>2]=a;c[(c[d>>2]|0)+4+1320+520+4>>2]=0;c[(c[d>>2]|0)+4+1320+520>>2]=0;a=(c[d>>2]|0)+4+1320+528|0;g=(c[d>>2]|0)+4+1320+528+16|0;KV(f);c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[(c[d>>2]|0)+4+1320+560+4>>2]=0;c[(c[d>>2]|0)+4+1320+560>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=65)break;c[(c[d>>2]|0)+4+1320+260+(c[e>>2]<<2)>>2]=0;c[(c[d>>2]|0)+4+1320+(c[e>>2]<<2)>>2]=-1;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function TV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+320|0;d=b+316|0;e=b+312|0;f=b+308|0;g=b+304|0;h=b+300|0;j=b+296|0;k=b+292|0;l=b+32|0;m=b+16|0;n=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=65)break;a=LV((c[d>>2]|0)+4+((c[e>>2]|0)*20|0)|0)|0;c[l+(c[e>>2]<<2)>>2]=a;c[e>>2]=(c[e>>2]|0)+1}c[h>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=64)break;c[f>>2]=(c[e>>2]|0)+1;while(1){o=c[e>>2]|0;if((c[f>>2]|0)>=65)break;MV(n,(c[d>>2]|0)+4+(o*20|0)|0,(c[d>>2]|0)+4+((c[f>>2]|0)*20|0)|0);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];a=LV(m)|0;c[g>>2]=a-(c[l+(c[e>>2]<<2)>>2]|0)-(c[l+(c[f>>2]<<2)>>2]|0);if((c[g>>2]|0)>>>0>(c[h>>2]|0)>>>0){c[h>>2]=c[g>>2];c[j>>2]=c[e>>2];c[k>>2]=c[f>>2]}c[f>>2]=(c[f>>2]|0)+1}c[e>>2]=o+1}UV(c[d>>2]|0,c[j>>2]|0,0);UV(c[d>>2]|0,c[k>>2]|0,1);i=b;return}function UV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[(c[f>>2]|0)+4+1320+260+(c[g>>2]<<2)>>2]|0)La(176984,176619,257,177019);c[(c[f>>2]|0)+4+1320+(c[g>>2]<<2)>>2]=c[h>>2];c[(c[f>>2]|0)+4+1320+260+(c[g>>2]<<2)>>2]=1;d=(c[f>>2]|0)+4+1320+528+(c[h>>2]<<4)|0;b=(c[f>>2]|0)+4+((c[g>>2]|0)*20|0)|0;if(!(c[(c[f>>2]|0)+4+1320+520+(c[h>>2]<<2)>>2]|0)){c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2]}else{MV(j,b,(c[f>>2]|0)+4+1320+528+(c[h>>2]<<4)|0);c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2]}j=LV((c[f>>2]|0)+4+1320+528+(c[h>>2]<<4)|0)|0;c[(c[f>>2]|0)+4+1320+560+(c[h>>2]<<2)>>2]=j;j=(c[f>>2]|0)+4+1320+520+(c[h>>2]<<2)|0;c[j>>2]=(c[j>>2]|0)+1;i=e;return}function VV(){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;e=i;i=i+1280|0;f=e+868|0;g=e+864|0;h=e+872|0;j=e+860|0;k=e+856|0;l=e+48|0;m=e+44|0;n=e+40|0;o=e+36|0;p=e+32|0;q=e+28|0;r=e+24|0;s=e+20|0;t=e+16|0;u=e+12|0;v=e+8|0;w=e+4|0;x=e;c[s>>2]=0;c[q>>2]=0;c[j>>2]=h;c[l>>2]=e+56;c[n>>2]=200;c[f>>2]=0;c[g>>2]=0;c[22927]=0;c[22928]=-2;c[k>>2]=c[j>>2];c[m>>2]=c[l>>2];a:while(1){b[c[k>>2]>>1]=c[f>>2];if(((c[j>>2]|0)+(c[n>>2]<<1)+-2|0)>>>0<=(c[k>>2]|0)>>>0){c[t>>2]=(((c[k>>2]|0)-(c[j>>2]|0)|0)/2|0)+1;if(1e4<=(c[n>>2]|0)>>>0){y=108;break}z=c[n>>2]<<1;c[n>>2]=z;c[n>>2]=1e4<(c[n>>2]|0)>>>0?1e4:z;c[u>>2]=c[j>>2];c[v>>2]=N4(((c[n>>2]|0)*6|0)+3|0)|0;if(!(c[v>>2]|0)){y=108;break}Z4(c[v>>2]|0,c[j>>2]|0,c[t>>2]<<1|0)|0;c[j>>2]=c[v>>2];c[w>>2]=(c[n>>2]<<1)+3;c[v>>2]=(c[v>>2]|0)+((((c[w>>2]|0)>>>0)/4|0)<<2);Z4(c[v>>2]|0,c[l>>2]|0,c[t>>2]<<2|0)|0;c[l>>2]=c[v>>2];c[x>>2]=(c[n>>2]<<2)+3;c[v>>2]=(c[v>>2]|0)+((((c[x>>2]|0)>>>0)/4|0)<<2);if((c[u>>2]|0)!=(h|0))O4(c[u>>2]|0);c[k>>2]=(c[j>>2]|0)+(c[t>>2]<<1)+-2;c[m>>2]=(c[l>>2]|0)+(c[t>>2]<<2)+-4;if(((c[j>>2]|0)+(c[n>>2]<<1)+-2|0)>>>0<=(c[k>>2]|0)>>>0){y=107;break}}if((c[f>>2]|0)==31){y=106;break}c[o>>2]=b[103706+(c[f>>2]<<1)>>1];do if((c[o>>2]|0)!=-82){if((c[22928]|0)==-2)c[22928]=tW()|0;if((c[22928]|0)<=0){c[q>>2]=0;c[22928]=0}else{if((c[22928]|0)>>>0<=295)A=d[177059+(c[22928]|0)>>0]|0;else A=2;c[q>>2]=A}c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0);if(!((c[o>>2]|0)<0|271<(c[o>>2]|0))?(a[177355+(c[o>>2]|0)>>0]|0)==(c[q>>2]|0):0){c[o>>2]=a[177627+(c[o>>2]|0)>>0];if((c[o>>2]|0)<=0){c[o>>2]=0-(c[o>>2]|0);y=26;break}if(c[g>>2]|0)c[g>>2]=(c[g>>2]|0)+-1;c[22928]=-2;c[f>>2]=c[o>>2];z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[22929]}else y=25}else y=25;while(0);if((y|0)==25){y=0;c[o>>2]=d[177899+(c[f>>2]|0)>>0];if(!(c[o>>2]|0)){if((c[22928]|0)!=-2)if((c[22928]|0)>>>0<=295)B=d[177059+(c[22928]|0)>>0]|0;else B=2;else B=-2;c[q>>2]=B;if(!(c[g>>2]|0)){c[22927]=(c[22927]|0)+1;pW(180146)}do if((c[g>>2]|0)==3)if((c[22928]|0)<=0)if(!(c[22928]|0)){y=107;break a}else break;else{gW(178296,c[q>>2]|0,91716);c[22928]=-2;break}while(0);c[g>>2]=3;while(1){c[o>>2]=b[103706+(c[f>>2]<<1)>>1];if((((c[o>>2]|0)!=-82?(c[o>>2]=(c[o>>2]|0)+1,0<=(c[o>>2]|0)&(c[o>>2]|0)<=271):0)?(a[177355+(c[o>>2]|0)>>0]|0)==1:0)?(c[o>>2]=a[177627+(c[o>>2]|0)>>0],0<(c[o>>2]|0)):0)break;if((c[k>>2]|0)==(c[j>>2]|0)){y=107;break a}gW(178430,d[178314+(c[f>>2]|0)>>0]|0,c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+-4;c[k>>2]=(c[k>>2]|0)+-2;c[f>>2]=b[c[k>>2]>>1]}z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[22929];c[f>>2]=c[o>>2]}else y=26}do if((y|0)==26){y=0;c[s>>2]=d[178015+(c[o>>2]|0)>>0];c[r>>2]=c[(c[m>>2]|0)+(1-(c[s>>2]|0)<<2)>>2];do switch(c[o>>2]|0){case 4:{y=29;break a;break}case 2:{c[22930]=XV(c[(c[m>>2]|0)+-4>>2]|0,2)|0;break}case 3:{c[22930]=XV(c[(c[m>>2]|0)+-4>>2]|0,1)|0;break}case 5:{c[r>>2]=ZV()|0;break}case 8:{_V(c[22934]|0);break}case 9:{$V(c[c[m>>2]>>2]|0);break}case 18:{aW(c[c[m>>2]>>2]|0);break}case 19:{bW();break}case 20:{aW(c[c[m>>2]>>2]|0);break}case 21:{bW();break}case 22:{aW(c[c[m>>2]>>2]|0);break}case 23:{bW();break}case 24:{aW(c[c[m>>2]>>2]|0);break}case 25:{bW();break}case 26:{aW(c[c[m>>2]>>2]|0);break}case 27:{bW();break}case 28:{aW(c[c[m>>2]>>2]|0);break}case 29:{bW();break}case 30:{aW(c[c[m>>2]>>2]|0);break}case 31:{bW();break}case 32:{aW(c[c[m>>2]>>2]|0);break}case 33:{bW();break}case 34:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 35:{c[r>>2]=c[c[m>>2]>>2];break}case 38:{if((c[(c[22934]|0)+4>>2]|0)>>>0>=(c[(c[22934]|0)+8>>2]|0)>>>0)eA(c[22934]|0,1)|0;z=(c[22934]|0)+4|0;C=c[z>>2]|0;c[z>>2]=C+1;a[C>>0]=0;C=c[c[22934]>>2]|0;c[(c[22934]|0)+4>>2]=C;if(cW(C)|0){y=54;break a}c[(c[c[m>>2]>>2]|0)+80>>2]=c[22931];C=Nz(91748,c[12987]|0)|0;c[(c[c[m>>2]>>2]|0)+80+4>>2]=C;c[22931]=c[c[m>>2]>>2];c[(c[c[m>>2]>>2]|0)+108>>2]=c[c[22935]>>2];c[r>>2]=c[c[m>>2]>>2];break}case 39:{if((c[(c[22934]|0)+4>>2]|0)>>>0>=(c[(c[22934]|0)+8>>2]|0)>>>0)eA(c[22934]|0,1)|0;C=(c[22934]|0)+4|0;z=c[C>>2]|0;c[C>>2]=z+1;a[z>>0]=0;z=c[c[22934]>>2]|0;c[(c[22934]|0)+4>>2]=z;if(cW(z)|0){y=59;break a}c[r>>2]=c[22931];c[22931]=c[(c[22931]|0)+80>>2];break}case 40:{c[r>>2]=c[c[m>>2]>>2];break}case 41:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 42:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 43:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 44:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 45:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 48:{c[r>>2]=c[c[m>>2]>>2];break}case 49:{c[r>>2]=c[c[m>>2]>>2];break}case 50:{a[(c[(c[m>>2]|0)+-8>>2]|0)+12>>0]=1;c[r>>2]=c[c[m>>2]>>2];break}case 51:{dW()|0;break}case 52:{c[r>>2]=eW()|0;break}case 53:{c[r>>2]=c[c[m>>2]>>2];break}case 54:{c[r>>2]=c[c[m>>2]>>2];break}case 55:{z=(c[(c[m>>2]|0)+-8>>2]|0)+100|0;a[z>>0]=d[z>>0]|1;c[r>>2]=c[c[m>>2]>>2];break}case 56:{fW(c[(c[m>>2]|0)+-4>>2]|0,c[c[m>>2]>>2]|0,1);break}case 57:{c[r>>2]=c[(c[m>>2]|0)+-12>>2];break}case 58:{fW(c[(c[m>>2]|0)+-4>>2]|0,c[c[m>>2]>>2]|0,2);break}case 59:{c[r>>2]=c[(c[m>>2]|0)+-12>>2];break}case 60:{fW(c[(c[m>>2]|0)+-4>>2]|0,c[c[m>>2]>>2]|0,3);break}case 61:{c[r>>2]=c[(c[m>>2]|0)+-12>>2];break}case 62:{fW(c[c[m>>2]>>2]|0,ZV()|0,2);break}case 63:{c[r>>2]=c[(c[m>>2]|0)+-8>>2];break}case 64:{c[r>>2]=c[(c[m>>2]|0)+-4>>2];break}case 65:{c[r>>2]=c[c[m>>2]>>2];break}default:{}}while(0);c[m>>2]=(c[m>>2]|0)+(0-(c[s>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[s>>2]|0)<<1);c[s>>2]=0;z=(c[m>>2]|0)+4|0;c[m>>2]=z;c[z>>2]=c[r>>2];c[o>>2]=d[178187+(c[o>>2]|0)>>0];c[f>>2]=(b[103938+((c[o>>2]|0)-41<<1)>>1]|0)+(b[c[k>>2]>>1]|0);if(0<=(c[f>>2]|0)&(c[f>>2]|0)<=271?(a[177355+(c[f>>2]|0)>>0]|0)==(b[c[k>>2]>>1]|0):0){c[f>>2]=a[177627+(c[f>>2]|0)>>0];break}c[f>>2]=a[178257+((c[o>>2]|0)-41)>>0]}while(0);c[k>>2]=(c[k>>2]|0)+2}if((y|0)==29){YV();y=107}else if((y|0)==54){pW(178085);YV();y=107}else if((y|0)==59){pW(178136);YV();y=107}else if((y|0)==106)c[p>>2]=0;else if((y|0)==108){pW(178445);c[p>>2]=2}if((y|0)==107)c[p>>2]=1;if((c[22928]|0)!=-2){if((c[22928]|0)>>>0<=295)D=d[177059+(c[22928]|0)>>0]|0;else D=2;c[q>>2]=D;gW(178462,c[q>>2]|0,91716)}c[m>>2]=(c[m>>2]|0)+(0-(c[s>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[s>>2]|0)<<1);while(1){if((c[k>>2]|0)==(c[j>>2]|0))break;gW(178492,d[178314+(b[c[k>>2]>>1]|0)>>0]|0,c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+-4;c[k>>2]=(c[k>>2]|0)+-2}if((c[j>>2]|0)==(h|0)){E=c[p>>2]|0;i=e;return E|0}O4(c[j>>2]|0);E=c[p>>2]|0;i=e;return E|0}function WV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+176|0;f=e+40|0;g=e+36|0;h=e+32|0;j=e+16|0;k=e+8|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[l+4>>2]=0;c[22935]=l;c[22931]=0;c[22930]=0;c[22936]=c[(c[(c[(c[h>>2]|0)+52>>2]|0)+8>>2]|0)+144>>2];c[22932]=Nz(91784,c[12987]|0)|0;c[22933]=Nz(91820,c[12987]|0)|0;dA(j,128,e+48|0);c[22934]=j;if(rW(c[f>>2]|0,j,c[h>>2]|0)|0){c[c[g>>2]>>2]=2;c[k>>2]=0;m=c[22932]|0;Jz(m)|0;n=c[22933]|0;Jz(n)|0;c[22932]=0;c[22933]=0;c[22935]=0;hA(j);o=c[k>>2]|0;i=e;return o|0}else{VV()|0;h=sW()|0;c[c[g>>2]>>2]=h;c[k>>2]=c[22930];m=c[22932]|0;Jz(m)|0;n=c[22933]|0;Jz(n)|0;c[22932]=0;c[22933]=0;c[22935]=0;hA(j);o=c[k>>2]|0;i=e;return o|0}return 0}function XV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=bK(8)|0;a[(c[h>>2]|0)+4>>0]=c[g>>2];d=c[f>>2]|0;if((c[g>>2]|0)==2){c[c[h>>2]>>2]=d;j=c[h>>2]|0;i=e;return j|0}else{c[c[h>>2]>>2]=d;j=c[h>>2]|0;i=e;return j|0}return 0}function YV(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[b>>2]=c[22931];if(c[22930]|0){zT(c[22930]|0,1);c[22930]=0}c[22968]=65;while(1){if(!(c[b>>2]|0))break;c[d>>2]=c[(c[b>>2]|0)+80>>2];kW(c[b>>2]|0);c[b>>2]=c[d>>2]}c[22968]=53;c[22950]=66;Hb[c[c[91728>>2]>>2]&63](c[22932]|0,0,64)|0;c[22950]=53;c[22959]=67;Hb[c[c[91732>>2]>>2]&63](c[22933]|0,0,64)|0;c[22959]=53;nW();i=a;return}function ZV(){var a=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;a=i;i=i+32|0;d=a+16|0;e=a+12|0;f=a+8|0;g=a+4|0;h=a;c[e>>2]=c[22933];c[g>>2]=bK(40)|0;if(Pz(c[22932]|0)|0)$V(0);c[d>>2]=Pz(c[e>>2]|0)|0;b[(c[g>>2]|0)+4>>1]=c[d>>2];if(!(c[d>>2]|0)){j=c[e>>2]|0;k=c[j>>2]|0;l=c[e>>2]|0;Hb[k&63](l,0,64)|0;m=c[g>>2]|0;i=a;return m|0}c[h>>2]=0;n=bK((c[d>>2]|0)*24|0)|0;c[c[g>>2]>>2]=n;c[f>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,0,128)|0;while(1){if(!(c[f>>2]|0))break;n=(c[c[g>>2]>>2]|0)+((c[h>>2]|0)*24|0)|0;d=(c[f>>2]|0)+8|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[n+16>>2]=c[d+16>>2];c[n+20>>2]=c[d+20>>2];c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=Hb[c[c[e>>2]>>2]&63](c[e>>2]|0,c[f>>2]|0,8)|0}j=c[e>>2]|0;k=c[j>>2]|0;l=c[e>>2]|0;Hb[k&63](l,0,64)|0;m=c[g>>2]|0;i=a;return m|0}function _V(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=bK(64)|0;if((c[(c[e>>2]|0)+4>>2]|0)>>>0>=(c[(c[e>>2]|0)+8>>2]|0)>>>0)eA(c[e>>2]|0,1)|0;b=(c[e>>2]|0)+4|0;g=c[b>>2]|0;c[b>>2]=g+1;a[g>>0]=0;g=c[c[e>>2]>>2]|0;c[(c[e>>2]|0)+4>>2]=g;e=M3(g)|0;c[(c[f>>2]|0)+8>>2]=e;c[(c[f>>2]|0)+8+4>>2]=c[c[22935]>>2];Hb[c[c[91728>>2]>>2]&63](c[22932]|0,c[f>>2]|0,1)|0;i=d;return}function $V(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=d;c[h>>2]=bK(32)|0;c[k>>2]=c[22932];c[g>>2]=Pz(c[k>>2]|0)|0;a[(c[h>>2]|0)+8+6>>0]=c[f>>2];if(!(c[g>>2]|0)){f=bK(56)|0;c[(c[h>>2]|0)+8>>2]=f;b[(c[h>>2]|0)+8+4>>1]=1;f=M3(178518)|0;c[c[(c[h>>2]|0)+8>>2]>>2]=f;c[(c[(c[h>>2]|0)+8>>2]|0)+4>>2]=c[c[22935]>>2];m=c[k>>2]|0;n=c[m>>2]|0;o=c[k>>2]|0;Hb[n&63](o,0,64)|0;p=c[22933]|0;q=c[p>>2]|0;r=c[22933]|0;s=c[h>>2]|0;Hb[q&63](r,s,1)|0;i=e;return}c[l>>2]=0;b[(c[h>>2]|0)+8+4>>1]=c[g>>2];f=bK((c[g>>2]|0)*56|0)|0;c[(c[h>>2]|0)+8>>2]=f;c[j>>2]=Lz(c[k>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;f=(c[(c[h>>2]|0)+8>>2]|0)+((c[l>>2]|0)*56|0)|0;g=(c[j>>2]|0)+8|0;d=f+56|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=c[c[j>>2]>>2]}m=c[k>>2]|0;n=c[m>>2]|0;o=c[k>>2]|0;Hb[n&63](o,0,64)|0;p=c[22933]|0;q=c[p>>2]|0;r=c[22933]|0;s=c[h>>2]|0;Hb[q&63](r,s,1)|0;i=e;return}function aW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+48|0;d=b+40|0;e=b+36|0;f=b+32|0;g=b;c[d>>2]=a;c[e>>2]=bK(8)|0;c[f>>2]=c[c[22935]>>2];a=c[d>>2]|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];if(c[f>>2]|0){if((c[g+4>>2]|0)==0?(c[(c[f>>2]|0)+4>>2]|0)!=0:0)c[g+4>>2]=c[(c[f>>2]|0)+4>>2];if(+h[g+16>>3]<0.0?+h[(c[f>>2]|0)+16>>3]>=0.0:0)h[g+16>>3]=+h[(c[f>>2]|0)+16>>3];if((c[g>>2]|0)==0?(c[c[f>>2]>>2]|0)!=0:0)c[g>>2]=c[c[f>>2]>>2];if(c[(c[f>>2]|0)+24>>2]&127){a=g+24|0;c[a>>2]=c[a>>2]&-128|(c[a>>2]&127|c[(c[f>>2]|0)+24>>2]&127)&127}}f=Hb[c[c[(c[91744>>2]|0)+144>>2]>>2]&63](c[(c[22936]|0)+144>>2]|0,g,1)|0;c[c[e>>2]>>2]=f;c[(c[e>>2]|0)+4>>2]=c[22935];c[22935]=c[e>>2];i=b;return}function bW(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[b>>2]=c[22935];c[d>>2]=c[(c[b>>2]|0)+4>>2];O4(c[b>>2]|0);c[22935]=c[d>>2];i=a;return}function cW(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+4|0;f=d;g=d+8|0;c[f>>2]=b;while(1){b=c[f>>2]|0;c[f>>2]=b+1;h=a[b>>0]|0;a[g>>0]=h;if(!(h<<24>>24)){j=5;break}if((a[g>>0]|0)!=32){j=4;break}}if((j|0)==4){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}else if((j|0)==5){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function dW(){var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=Nz(91856,c[12987]|0)|0;c[f>>2]=c[22931];c[g>>2]=bK(16)|0;c[(c[g>>2]|0)+8>>2]=c[e>>2];if((d[(c[f>>2]|0)+112>>0]|0)&2)a[(c[g>>2]|0)+12>>0]=1;Hb[c[c[(c[f>>2]|0)+80+4>>2]>>2]&63](c[(c[f>>2]|0)+80+4>>2]|0,c[g>>2]|0,1)|0;i=b;return c[g>>2]|0}function eW(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a+4|0;d=a;c[b>>2]=c[22931];c[d>>2]=Hb[c[c[(c[b>>2]|0)+80+4>>2]>>2]&63](c[(c[b>>2]|0)+80+4>>2]|0,0,256)|0;i=a;return c[d>>2]|0}function fW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=bK(16)|0;c[m>>2]=c[22931];c[n>>2]=Hb[c[c[(c[m>>2]|0)+80+4>>2]>>2]&63](c[(c[m>>2]|0)+80+4>>2]|0,0,256)|0;c[o>>2]=c[(c[n>>2]|0)+8>>2];c[(c[l>>2]|0)+8>>2]=c[h>>2];Hb[c[c[o>>2]>>2]&63](c[o>>2]|0,c[l>>2]|0,1)|0;a[(c[h>>2]|0)+88+4>>0]=c[k>>2];if((d[(c[m>>2]|0)+112>>0]|0)&1)a[(c[h>>2]|0)+100>>0]=1;if((c[k>>2]|0)==2){c[(c[h>>2]|0)+88>>2]=c[j>>2];i=g;return}m=c[j>>2]|0;if((c[k>>2]|0)==3){c[(c[h>>2]|0)+88>>2]=m;i=g;return}else{c[(c[h>>2]|0)+88>>2]=m;i=g;return}}function gW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+8|0;c[f>>2]=a;c[e+4>>2]=b;c[e>>2]=d;if(c[f>>2]|0){i=e;return}c[f>>2]=178509;i=e;return}function hW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[f>>2]|0);i=e;return}function iW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;Jz(c[(c[f>>2]|0)+8>>2]|0)|0;O4(c[f>>2]|0);i=e;return}function jW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;oW(c[(c[f>>2]|0)+8>>2]|0);O4(c[f>>2]|0);i=e;return}function kW(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Jz(c[(c[d>>2]|0)+80+4>>2]|0)|0;wT(c[d>>2]|0);O4(c[d>>2]|0);i=b;return}function lW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;if(!(c[(c[f>>2]|0)+8>>2]|0)){g=c[f>>2]|0;O4(g);i=e;return}O4(c[(c[f>>2]|0)+8>>2]|0);g=c[f>>2]|0;O4(g);i=e;return}function mW(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+32|0;g=f+12|0;h=f+4|0;j=f;c[f+16>>2]=a;c[g>>2]=d;c[f+8>>2]=e;if(!(b[(c[g>>2]|0)+8+4>>1]|0)){k=c[g>>2]|0;O4(k);i=f;return}c[h>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(b[(c[g>>2]|0)+8+4>>1]|0))break;if(c[c[h>>2]>>2]|0)O4(c[c[h>>2]>>2]|0);c[h>>2]=(c[h>>2]|0)+56;c[j>>2]=(c[j>>2]|0)+1}O4(c[(c[g>>2]|0)+8>>2]|0);k=c[g>>2]|0;O4(k);i=f;return}function nW(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;b=a+4|0;d=a;c[b>>2]=c[22935];while(1){e=c[(c[b>>2]|0)+4>>2]|0;c[d>>2]=e;if(!e)break;O4(c[b>>2]|0);c[b>>2]=c[d>>2]}i=a;return}function oW(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=(c[e>>2]|0)+88|0;if((a[(c[e>>2]|0)+88+4>>0]|0)!=1){if((a[b+4>>0]|0)==2)xT(c[(c[e>>2]|0)+88>>2]|0)}else kW(c[b>>2]|0);wT(c[e>>2]|0);O4(c[e>>2]|0);i=d;return}function pW(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;f=d+8|0;c[f>>2]=b;if(a[91925]|0){i=d;return}a[91925]=1;b=c[f>>2]|0;f=qW()|0;c[e>>2]=b;c[e+4>>2]=f;$z(1,178519,e)|0;uW();i=d;return}function qW(){return HY(c[22973]|0)|0}function rW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g+8|0;j=g+4|0;k=g;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[22976]=c[j>>2];dA(91908,128,0);c[22974]=c[h>>2];a[91927]=0;a[91924]=0;a[91925]=0;c[22984]=0;c[22985]=0;a[91926]=1;c[22973]=xY(NJ(d[(c[(c[(c[k>>2]|0)+52>>2]|0)+8>>2]|0)+115>>0]|0)|0)|0;AY(c[22973]|0,c[(c[(c[(c[k>>2]|0)+52>>2]|0)+8>>2]|0)+144>>2]|0);BY(c[22973]|0,68,23);CY(c[22973]|0,69);i=g;return 0}function sW(){var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a[91924]|a[91925];zY(c[22973]|0);hA(91908);i=b;return c[d>>2]|0}function tW(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+32|0;d=b;e=b+28|0;f=b+24|0;g=b+20|0;h=b+16|0;j=b+12|0;k=b+8|0;c[g>>2]=0;c[22975]=0;while(1){if((a[91927]|0)==2){l=3;break}do if(a[91927]|0){c[f>>2]=c[22974];if(!(a[c[f>>2]>>0]|0)){a[91927]=2;c[f>>2]=c[22987];c[h>>2]=N3(c[f>>2]|0)|0;break}else{c[g>>2]=yW(c[f>>2]|0,91908)|0;c[h>>2]=(c[g>>2]|0)-(c[f>>2]|0);break}}else{a[91927]=1;c[f>>2]=c[22986];c[h>>2]=N3(c[f>>2]|0)|0;c[g>>2]=0}while(0);c[22983]=c[22982];c[22985]=c[22984];c[22982]=c[f>>2];c[22984]=c[h>>2];m=(c[22978]|0)-(c[22977]|0)|0;c[j>>2]=m;n=c[22973]|0;if(m){if((c[22978]|0)>>>0>=(c[22979]|0)>>>0)eA(91908,1)|0;m=c[22978]|0;c[22978]=m+1;a[m>>0]=0;m=c[22977]|0;c[22978]=m;c[k>>2]=DY(n,m,c[j>>2]|0,0)|0}else c[k>>2]=DY(n,c[f>>2]|0,c[h>>2]|0,(c[h>>2]|0)!=0?0:1)|0;if(!((c[k>>2]|0)!=0|(a[91925]|0)!=0)){n=IY(GY(c[22973]|0)|0)|0;m=qW()|0;c[d>>2]=n;c[d+4>>2]=m;$z(1,178519,d)|0;uW();a[91925]=1;c[22975]=268}if(c[g>>2]|0)c[22974]=c[g>>2];if(c[22975]|0){l=19;break}}if((l|0)==3){c[e>>2]=-1;o=c[e>>2]|0;i=b;return o|0}else if((l|0)==19){c[e>>2]=c[22975];o=c[e>>2]|0;i=b;return o|0}return 0}function uW(){var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[(c[22976]|0)+4>>2]=c[c[22976]>>2];if((c[22985]|0)>0)fA(c[22976]|0,c[22983]|0,c[22985]|0)|0;fA(c[22976]|0,c[22982]|0,c[22984]|0)|0;if((c[(c[22976]|0)+4>>2]|0)>>>0>=(c[(c[22976]|0)+8>>2]|0)>>>0)eA(c[22976]|0,1)|0;e=(c[22976]|0)+4|0;f=c[e>>2]|0;c[e>>2]=f+1;a[f>>0]=0;f=c[c[22976]>>2]|0;c[(c[22976]|0)+4>>2]=f;c[d>>2]=f;$z(3,179741,d)|0;i=b;return}function vW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[g>>2];if(!(F3(c[h>>2]|0,178612)|0)){c[22929]=BW(c[j>>2]|0)|0;a[91926]=0;c[22975]=286;i=f;return}if((F3(c[h>>2]|0,178618)|0)!=0?(F3(c[h>>2]|0,178621)|0)!=0:0){if(!(F3(c[h>>2]|0,178624)|0)){a[91926]=1;c[22929]=CW(c[j>>2]|0)|0;c[22975]=287;i=f;return}if(!(F3(c[h>>2]|0,178632)|0)){c[22929]=DW(c[k>>2]|0,c[j>>2]|0,0,0)|0;c[22975]=288;i=f;return}if(!(F3(c[h>>2]|0,178637)|0)){c[22929]=DW(c[k>>2]|0,0,1,0)|0;c[22975]=290;i=f;return}if(!(F3(c[h>>2]|0,178653)|0)){c[22929]=DW(c[k>>2]|0,0,32,0)|0;c[22975]=295;i=f;return}if(!(F3(c[h>>2]|0,178639)|0)){c[22929]=DW(c[k>>2]|0,0,4,1)|0;c[22975]=291;i=f;return}if(!(F3(c[h>>2]|0,178641)|0)){c[22929]=DW(c[k>>2]|0,0,64,1)|0;c[22975]=292;i=f;return}if(!(F3(c[h>>2]|0,178643)|0)){c[22929]=DW(c[k>>2]|0,0,2,0)|0;c[22975]=289;i=f;return}if(!(F3(c[h>>2]|0,178645)|0)){c[22929]=DW(c[k>>2]|0,0,8,0)|0;c[22975]=293;i=f;return}if(!(F3(c[h>>2]|0,178649)|0)){c[22929]=DW(c[k>>2]|0,0,16,0)|0;c[22975]=294;i=f;return}if(!(F3(c[h>>2]|0,178655)|0)){EW(c[j>>2]|0);c[22975]=283;i=f;return}if(!(F3(c[h>>2]|0,178658)|0)){c[22975]=277;i=f;return}if(!(F3(c[h>>2]|0,178661)|0)){c[22975]=280;i=f;return}if(!(F3(c[h>>2]|0,178664)|0)){c[22929]=FW(c[j>>2]|0)|0;c[22975]=285;i=f;return}if(!(F3(c[h>>2]|0,178627)|0)){c[22975]=262;i=f;return}else{AW(c[h>>2]|0);i=f;return}}a[91926]=0;c[22975]=260;i=f;return}function wW(b,d){b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+4>>2]=b;c[f>>2]=d;if(!(F3(c[f>>2]|0,178612)|0)){c[22975]=264;a[91926]=1;i=e;return}if((F3(c[f>>2]|0,178618)|0)!=0?(F3(c[f>>2]|0,178621)|0)!=0:0){if(!(F3(c[f>>2]|0,178624)|0)){c[22975]=265;a[91926]=0;i=e;return}if(!(F3(c[f>>2]|0,178627)|0)){c[22975]=263;i=e;return}if(!(F3(c[f>>2]|0,178632)|0)){c[22975]=266;i=e;return}if(!(F3(c[f>>2]|0,178637)|0)){c[22975]=270;i=e;return}if(!(F3(c[f>>2]|0,178639)|0)){c[22975]=271;i=e;return}if(!(F3(c[f>>2]|0,178641)|0)){c[22975]=272;i=e;return}if(!(F3(c[f>>2]|0,178643)|0)){c[22975]=269;i=e;return}if(!(F3(c[f>>2]|0,178645)|0)){c[22975]=273;i=e;return}if(!(F3(c[f>>2]|0,178649)|0)){c[22975]=274;i=e;return}if(!(F3(c[f>>2]|0,178653)|0)){c[22975]=275;i=e;return}if(!(F3(c[f>>2]|0,178655)|0))if((c[22975]|0)==283){c[22975]=282;i=e;return}else{c[22975]=258;i=e;return}if(!(F3(c[f>>2]|0,178658)|0))if((c[22975]|0)==277){c[22975]=276;i=e;return}else{c[22975]=278;i=e;return}if(!(F3(c[f>>2]|0,178661)|0))if((c[22975]|0)==280){c[22975]=279;i=e;return}else{c[22975]=281;i=e;return}if(F3(c[f>>2]|0,178664)|0){AW(c[f>>2]|0);i=e;return}if((c[22975]|0)==285){c[22975]=284;i=e;return}else{c[22975]=259;i=e;return}}c[22975]=261;i=e;return}function xW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;n=g+24|0;c[g+20>>2]=b;c[h>>2]=e;c[j>>2]=f;c[m>>2]=0;if(!(a[91926]|0)){i=g;return}c[k>>2]=c[j>>2];while(1){if(!(c[k>>2]|0))break;j=c[h>>2]|0;c[h>>2]=j+1;a[n>>0]=a[j>>0]|0;if((d[n>>0]|0)>=32){c[m>>2]=(c[m>>2]|0)+1;if((c[(c[22976]|0)+4>>2]|0)>>>0>=(c[(c[22976]|0)+8>>2]|0)>>>0)eA(c[22976]|0,1)|0;j=a[n>>0]|0;f=(c[22976]|0)+4|0;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=j;c[l>>2]=j&255}c[k>>2]=(c[k>>2]|0)+-1}if(!(c[m>>2]|0)){i=g;return}c[22975]=267;i=g;return}function yW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e;g=e+16|0;h=e+12|0;j=e+8|0;k=e+20|0;l=e+4|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=(c[g>>2]|0)+1;if((a[c[g>>2]>>0]|0)==60){if((a[c[j>>2]>>0]|0)==33?(P3((c[j>>2]|0)+1|0,178535,2)|0)==0:0)c[j>>2]=zW((c[j>>2]|0)+3|0)|0;else m=5;a:do if((m|0)==5)while(1){m=0;if(!(a[c[j>>2]>>0]|0))break a;if((a[c[j>>2]>>0]|0)==62)break a;c[j>>2]=(c[j>>2]|0)+1;m=5}while(0);if((a[c[j>>2]>>0]|0)!=62){$z(0,178538,f)|0;a[91924]=1;n=c[j>>2]|0;i=e;return n|0}else{c[j>>2]=(c[j>>2]|0)+1;n=c[j>>2]|0;i=e;return n|0}}else{c[j>>2]=c[g>>2];while(1){g=a[c[j>>2]>>0]|0;a[k>>0]=g;if(!(g<<24>>24)){m=20;break}if((a[k>>0]|0)==60){m=20;break}if((a[k>>0]|0)==38?(a[(c[j>>2]|0)+1>>0]|0)!=35:0){c[j>>2]=IO((c[j>>2]|0)+1|0,c[h>>2]|0)|0;continue}if((c[(c[h>>2]|0)+4>>2]|0)>>>0>=(c[(c[h>>2]|0)+8>>2]|0)>>>0)eA(c[h>>2]|0,1)|0;g=a[k>>0]|0;f=(c[h>>2]|0)+4|0;d=c[f>>2]|0;c[f>>2]=d+1;a[d>>0]=g;c[l>>2]=g&255;c[j>>2]=(c[j>>2]|0)+1}if((m|0)==20){n=c[j>>2]|0;i=e;return n|0}}return 0}function zW(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;j=d+20|0;k=d+4|0;c[f>>2]=b;c[g>>2]=1;c[h>>2]=c[f>>2];while(1){if(!(c[g>>2]|0))break;b=c[h>>2]|0;c[h>>2]=b+1;l=a[b>>0]|0;a[j>>0]=l;if(!(l<<24>>24))break;if((a[j>>0]|0)==60){c[g>>2]=(c[g>>2]|0)+1;continue}if((a[j>>0]|0)!=62)continue;c[g>>2]=(c[g>>2]|0)+-1}c[h>>2]=(c[h>>2]|0)+-1;if(!(a[c[h>>2]>>0]|0)){m=c[h>>2]|0;i=d;return m|0}c[k>>2]=(c[h>>2]|0)+-2;if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>>>0?(P3(c[k>>2]|0,178535,2)|0)==0:0){m=c[h>>2]|0;i=d;return m|0}$z(0,178579,e)|0;a[91924]=1;m=c[h>>2]|0;i=d;return m|0}function AW(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;f=d+8|0;c[f>>2]=b;c[22975]=268;a[91925]=1;b=c[f>>2]|0;f=qW()|0;c[e>>2]=b;c[e+4>>2]=f;$z(1,178668,e)|0;i=d;return}function BW(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=bK(120)|0;c[(c[f>>2]|0)+100>>2]=-1;a[(c[f>>2]|0)+88>>0]=-1;GW(c[f>>2]|0,92176,22,c[e>>2]|0,179620);i=d;return c[f>>2]|0}function CW(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=bK(104)|0;b[(c[f>>2]|0)+80>>1]=1;b[(c[f>>2]|0)+82>>1]=1;GW(c[f>>2]|0,92e3,22,c[e>>2]|0,178974);i=d;return c[f>>2]|0}function DW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0;f=i;i=i+48|0;g=f+44|0;j=f+40|0;k=f+36|0;l=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[f+32>>2]=e;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;c[l+24>>2]=0;c[l+28>>2]=0;h[l+16>>3]=-1.0;e=l+24|0;c[e>>2]=c[e>>2]&-128|c[k>>2]&127;if(c[j>>2]|0)GW(l,91976,3,c[j>>2]|0,178825);j=Hb[c[c[(c[g>>2]|0)+144>>2]>>2]&63](c[(c[g>>2]|0)+144>>2]|0,l,1)|0;i=f;return j|0}function EW(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[22929]=0;GW(91716,91968,1,c[d>>2]|0,178761);i=b;return}function FW(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=bK(40)|0;GW(c[e>>2]|0,91952,2,c[d>>2]|0,178707);i=b;return c[e>>2]|0}function GW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+48|0;j=h;k=h+44|0;l=h+40|0;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;q=h+20|0;r=h+16|0;s=h+8|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;while(1){g=c[n>>2]|0;c[n>>2]=g+4;f=c[g>>2]|0;c[p>>2]=f;if(!f)break;f=c[n>>2]|0;c[n>>2]=f+4;c[q>>2]=c[f>>2];c[s>>2]=c[p>>2];c[r>>2]=v3(s,c[l>>2]|0,c[m>>2]|0,8,104)|0;if(c[r>>2]|0){f=Ob[c[(c[r>>2]|0)+4>>2]&127](c[k>>2]|0,c[q>>2]|0)|0;a[91924]=a[91924]|f;continue}else{f=c[o>>2]|0;c[j>>2]=c[p>>2];c[j+4>>2]=f;$z(0,178713,j)|0;a[91924]=1;continue}}i=h;return}function HW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=F3(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;i=d;return b|0}function IW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+36>>2]=b;i=d;return 0}function JW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+32>>2]=b;i=d;return 0}function KW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e;g=e+12|0;h=e+8|0;j=e+4|0;k=e+16|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;a[k>>0]=I1(a[c[h>>2]>>0]|0)|0;if((a[k>>0]|0)==82?(F3((c[h>>2]|0)+1|0,178772)|0)==0:0){c[c[g>>2]>>2]=114;l=c[j>>2]|0;i=e;return l|0}if((a[k>>0]|0)!=76?(F3((c[h>>2]|0)+1|0,178777)|0)!=0:0){if((a[k>>0]|0)!=67?(F3((c[h>>2]|0)+1|0,178781)|0)==0:0){c[f>>2]=c[h>>2];$z(0,178787,f)|0;c[j>>2]=1;l=c[j>>2]|0;i=e;return l|0}c[c[g>>2]>>2]=110;l=c[j>>2]|0;i=e;return l|0}c[c[g>>2]>>2]=108;l=c[j>>2]|0;i=e;return l|0}function LW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function MW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];i=d;return 0}function NW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;if(OW(c[g>>2]|0,178854,0,255,j)|0){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}else{h[(c[f>>2]|0)+16>>3]=+(c[j>>2]|0);c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function OW(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+80|0;h=g+24|0;j=g+8|0;k=g;l=g+64|0;m=g+60|0;n=g+56|0;o=g+52|0;p=g+48|0;q=g+44|0;r=g+40|0;s=g+36|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=0;c[s>>2]=z3(c[l>>2]|0,r,10)|0;if((c[r>>2]|0)==(c[l>>2]|0)){r=c[l>>2]|0;c[k>>2]=c[m>>2];c[k+4>>2]=r;$z(0,178865,k)|0;c[q>>2]=1;t=c[q>>2]|0;i=g;return t|0}if((c[s>>2]|0)>(c[o>>2]|0)){k=c[l>>2]|0;r=c[o>>2]|0;c[j>>2]=c[m>>2];c[j+4>>2]=k;c[j+8>>2]=r;$z(0,178896,j)|0;c[q>>2]=1;t=c[q>>2]|0;i=g;return t|0}if((c[s>>2]|0)<(c[n>>2]|0)){j=c[l>>2]|0;l=c[n>>2]|0;c[h>>2]=c[m>>2];c[h+4>>2]=j;c[h+8>>2]=l;$z(0,178935,h)|0;c[q>>2]=1;t=c[q>>2]|0;i=g;return t|0}else{c[c[p>>2]>>2]=c[s>>2];t=c[q>>2]|0;i=g;return t|0}return 0}function PW(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g;j=g+12|0;k=g+8|0;l=g+4|0;m=g+16|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=0;a[m>>0]=I1(a[c[k>>2]>>0]|0)|0;if((a[m>>0]|0)==76?(F3((c[k>>2]|0)+1|0,178777)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|4}else n=4;do if((n|0)==4){if((a[m>>0]|0)==82?(F3((c[k>>2]|0)+1|0,178772)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|2;break}if((a[m>>0]|0)==84?(F3((c[k>>2]|0)+1|0,179572)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|6;break}if((a[m>>0]|0)==67?(F3((c[k>>2]|0)+1|0,178781)|0)==0:0)break;c[l>>2]=1}while(0);if(!(c[l>>2]|0)){o=c[l>>2]|0;i=g;return o|0}c[h>>2]=c[k>>2];$z(0,179576,h)|0;o=c[l>>2]|0;i=g;return o|0}function QW(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g;j=g+12|0;k=g+8|0;l=g+4|0;m=g+16|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=0;a[m>>0]=I1(a[c[k>>2]>>0]|0)|0;if((a[m>>0]|0)==76?(F3((c[k>>2]|0)+1|0,178777)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|512}else n=4;do if((n|0)==4){if((a[m>>0]|0)==82?(F3((c[k>>2]|0)+1|0,178772)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|256;break}if((a[m>>0]|0)==67?(F3((c[k>>2]|0)+1|0,178781)|0)==0:0)break;c[l>>2]=1}while(0);if(!(c[l>>2]|0)){o=c[l>>2]|0;i=g;return o|0}c[h>>2]=c[k>>2];$z(0,179527,h)|0;o=c[l>>2]|0;i=g;return o|0}function RW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+20>>2]=b;i=d;return 0}function SW(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=d;c[k>>2]=f;if(OW(c[k>>2]|0,179520,0,255,l)|0){c[h>>2]=1;m=c[h>>2]|0;i=g;return m|0}else{a[(c[j>>2]|0)+33>>0]=c[l>>2];l=(c[j>>2]|0)+36|0;b[l>>1]=e[l>>1]|0|32;c[h>>2]=0;m=c[h>>2]|0;i=g;return m|0}return 0}function TW(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=d;c[k>>2]=f;if(OW(c[k>>2]|0,179508,0,255,l)|0){c[h>>2]=1;m=c[h>>2]|0;i=g;return m|0}else{a[(c[j>>2]|0)+34>>0]=c[l>>2];l=(c[j>>2]|0)+36|0;b[l>>1]=e[l>>1]|0|64;c[h>>2]=0;m=c[h>>2]|0;i=g;return m|0}return 0}function UW(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=d;c[k>>2]=f;if(OW(c[k>>2]|0,179496,-128,127,l)|0){c[h>>2]=1;m=c[h>>2]|0;i=g;return m|0}else{a[(c[j>>2]|0)+32>>0]=c[l>>2];l=(c[j>>2]|0)+36|0;b[l>>1]=e[l>>1]|0|128;c[h>>2]=0;m=c[h>>2]|0;i=g;return m|0}return 0}function VW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+24>>2]=b;i=d;return 0}function WW(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[h>>2]=a;c[j>>2]=d;do if(!(OW(c[j>>2]|0,179451,0,65535,k)|0))if(!(c[k>>2]|0)){$z(0,179459,f)|0;c[g>>2]=1;break}else{b[(c[h>>2]|0)+80>>1]=c[k>>2];c[g>>2]=0;break}else c[g>>2]=1;while(0);i=e;return c[g>>2]|0}function XW(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h;k=h+12|0;l=h+8|0;m=h+4|0;n=h+16|0;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;a[n>>0]=I1(d[c[l>>2]>>0]|0)|0;if((a[n>>0]|0)==84?(F3((c[l>>2]|0)+1|0,179400)|0)==0:0){g=(c[k>>2]|0)+36|0;b[g>>1]=e[g>>1]|1;o=c[m>>2]|0;i=h;return o|0}if((a[n>>0]|0)==70?(F3((c[l>>2]|0)+1|0,179404)|0)==0:0){o=c[m>>2]|0;i=h;return o|0}c[j>>2]=c[l>>2];$z(0,179409,j)|0;c[m>>2]=1;o=c[m>>2]|0;i=h;return o|0}function YW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;if(OW(c[g>>2]|0,179386,0,360,h)|0){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}else{c[(c[f>>2]|0)+28>>2]=c[h>>2]&65535;c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function ZW(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=d;if(OW(c[h>>2]|0,179379,0,65535,j)|0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}else{b[(c[g>>2]|0)+40>>1]=c[j>>2];c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}return 0}function _W(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[c[e>>2]>>2]=b;i=d;return 0}function $W(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+16>>2]=b;i=d;return 0}function aX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=b;i=d;return 0}function bX(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[h>>2]=a;c[j>>2]=d;do if(!(OW(c[j>>2]|0,179334,0,65535,k)|0))if(!(c[k>>2]|0)){$z(0,179342,f)|0;c[g>>2]=1;break}else{b[(c[h>>2]|0)+82>>1]=c[k>>2];c[g>>2]=0;break}else c[g>>2]=1;while(0);i=e;return c[g>>2]|0}function cX(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g;j=g+12|0;k=g+8|0;l=g+16|0;m=g+18|0;c[j>>2]=d;c[k>>2]=f;b[l>>1]=0;a:while(1){f=c[k>>2]|0;c[k>>2]=f+1;d=a[f>>0]|0;a[m>>0]=d;if(!(d<<24>>24))break;switch(H1(a[m>>0]|0)|0){case 108:{b[l>>1]=e[l>>1]|1024;continue a;break}case 116:{b[l>>1]=e[l>>1]|2048;continue a;break}case 114:{b[l>>1]=e[l>>1]|4096;continue a;break}case 98:{b[l>>1]=e[l>>1]|8192;continue a;break}default:{d=a[m>>0]|0;c[h>>2]=a[m>>0];c[h+4>>2]=d;$z(0,179281,h)|0;continue a}}}if((e[l>>1]|0)==15360){i=g;return 0}h=(c[j>>2]|0)+36|0;b[h>>1]=e[h>>1]|e[l>>1];i=g;return 0}function dX(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+48|0;h=g+8|0;j=g;k=g+28|0;l=g+24|0;m=g+20|0;n=g+32|0;o=g+16|0;p=g+12|0;c[k>>2]=d;c[l>>2]=f;c[m>>2]=0;c[p>>2]=M3(c[l>>2]|0)|0;c[o>>2]=V3(c[p>>2]|0,179191)|0;while(1){if(!(c[o>>2]|0))break;a[n>>0]=I1(a[c[o>>2]>>0]|0)|0;l=c[o>>2]|0;do if((a[n>>0]|0)==82){if(!(F3(l+1|0,179194)|0)){f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]|4;break}if(F3((c[o>>2]|0)+1|0,179201)|0){c[j>>2]=c[o>>2];$z(0,179207,j)|0;c[m>>2]=1;break}else{f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]|2;break}}else{if(!(F3(l,179245)|0)){f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]&-385;break}if((F3(c[o>>2]|0,179251)|0)!=0?(F3(c[o>>2]|0,179261)|0)!=0:0){if(!(F3(c[o>>2]|0,179267)|0)){f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]|128;break}if(F3(c[o>>2]|0,179274)|0){c[h>>2]=c[o>>2];$z(0,179207,h)|0;c[m>>2]=1;break}else{f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]|256;break}}f=(c[k>>2]|0)+42|0;b[f>>1]=e[f>>1]|32}while(0);c[o>>2]=V3(0,179191)|0}O4(c[p>>2]|0);i=g;return c[m>>2]|0}function eX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=b;i=d;return 0}function fX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=M3(c[f>>2]|0)|0;c[(c[e>>2]|0)+12>>2]=b;i=d;return 0}function gX(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g;j=g+12|0;k=g+8|0;l=g+4|0;m=g+16|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=0;a[m>>0]=I1(a[c[k>>2]>>0]|0)|0;if((a[m>>0]|0)==66?(F3((c[k>>2]|0)+1|0,179137)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|16;n=c[l>>2]|0;i=g;return n|0}if((a[m>>0]|0)==84?(F3((c[k>>2]|0)+1|0,179143)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|8;n=c[l>>2]|0;i=g;return n|0}if((a[m>>0]|0)==77?(F3((c[k>>2]|0)+1|0,179146)|0)==0:0){n=c[l>>2]|0;i=g;return n|0}c[h>>2]=c[k>>2];$z(0,179152,h)|0;c[l>>2]=1;n=c[l>>2]|0;i=g;return n|0}function hX(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=a;c[h>>2]=d;if(OW(c[h>>2]|0,179131,0,65535,j)|0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}else{b[(c[g>>2]|0)+38>>1]=c[j>>2];c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}return 0}function iX(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g;j=g+12|0;k=g+8|0;l=g+4|0;m=g+16|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=0;a[m>>0]=I1(a[c[k>>2]>>0]|0)|0;if((a[m>>0]|0)==76?(F3((c[k>>2]|0)+1|0,178777)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|4;n=c[l>>2]|0;i=g;return n|0}if((a[m>>0]|0)==82?(F3((c[k>>2]|0)+1|0,178772)|0)==0:0){f=(c[j>>2]|0)+36|0;b[f>>1]=e[f>>1]|2;n=c[l>>2]|0;i=g;return n|0}if((a[m>>0]|0)==67?(F3((c[k>>2]|0)+1|0,178781)|0)==0:0){n=c[l>>2]|0;i=g;return n|0}c[h>>2]=c[k>>2];$z(0,178787,h)|0;c[l>>2]=1;n=c[l>>2]|0;i=g;return n|0}function jX(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;if(OW(c[h>>2]|0,179729,0,127,j)|0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}else{a[(c[g>>2]|0)+88>>0]=c[j>>2];c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}return 0}function kX(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f;h=f+12|0;j=f+8|0;k=f+4|0;c[j>>2]=b;c[k>>2]=e;if((a[c[k>>2]>>0]|0)!=42){c[g>>2]=c[k>>2];$z(0,179689,g)|0;c[h>>2]=1;l=c[h>>2]|0;i=f;return l|0}else{g=(c[j>>2]|0)+112|0;a[g>>0]=d[g>>0]|1;c[h>>2]=0;l=c[h>>2]|0;i=f;return l|0}return 0}function lX(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;g=f;h=f+12|0;j=f+8|0;k=f+4|0;c[j>>2]=b;c[k>>2]=e;if((a[c[k>>2]>>0]|0)!=42){c[g>>2]=c[k>>2];$z(0,179652,g)|0;c[h>>2]=1;l=c[h>>2]|0;i=f;return l|0}else{g=(c[j>>2]|0)+112|0;a[g>>0]=d[g>>0]|2;c[h>>2]=0;l=c[h>>2]|0;i=f;return l|0}return 0}function mX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+28|0;h=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=N4(28)|0;if(!(c[h>>2]|0)){c[e>>2]=0;p=c[e>>2]|0;i=d;return p|0}c[m>>2]=0;c[j>>2]=0;while(1){q=c[m>>2]|0;if((c[j>>2]|0)>=(c[g>>2]|0))break;c[m>>2]=q+(c[(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)+4>>2]|0);c[j>>2]=(c[j>>2]|0)+1}b=pX(q<<4)|0;c[(c[h>>2]|0)+8>>2]=b;b=pX((c[g>>2]|0)+1<<2)|0;c[(c[h>>2]|0)+12>>2]=b;b=pX(c[m>>2]<<2)|0;c[(c[h>>2]|0)+16>>2]=b;b=pX(c[m>>2]<<2)|0;c[(c[h>>2]|0)+20>>2]=b;c[(c[h>>2]|0)+4>>2]=c[m>>2];c[c[h>>2]>>2]=c[g>>2];c[l>>2]=0;c[j>>2]=0;while(1){r=c[l>>2]|0;if((c[j>>2]|0)>=(c[g>>2]|0))break;c[n>>2]=r;c[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]=c[n>>2];c[o>>2]=(c[n>>2]|0)+(c[(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)+4>>2]|0)-1;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0)+4>>2]|0))break;m=(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<4)|0;b=(c[c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]>>2]|0)+(c[k>>2]<<4)|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];c[(c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]=(c[l>>2]|0)+1;c[(c[(c[h>>2]|0)+20>>2]|0)+(c[l>>2]<<2)>>2]=(c[l>>2]|0)-1;c[l>>2]=(c[l>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}c[(c[(c[h>>2]|0)+16>>2]|0)+(c[o>>2]<<2)>>2]=c[n>>2];c[(c[(c[h>>2]|0)+20>>2]|0)+(c[n>>2]<<2)>>2]=c[o>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]=r;nY(c[h>>2]|0);c[e>>2]=c[h>>2];p=c[e>>2]|0;i=d;return p|0}function nX(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[(c[d>>2]|0)+12>>2]|0);O4(c[(c[d>>2]|0)+16>>2]|0);O4(c[(c[d>>2]|0)+20>>2]|0);if(!(c[(c[d>>2]|0)+24>>2]|0)){e=c[d>>2]|0;O4(e);i=b;return}O4(c[c[(c[d>>2]|0)+24>>2]>>2]|0);O4(c[(c[d>>2]|0)+24>>2]|0);e=c[d>>2]|0;O4(e);i=b;return}function oX(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=i;i=i+80|0;j=h+16|0;k=h;l=h+72|0;m=h+68|0;n=h+64|0;o=h+60|0;p=h+56|0;q=h+52|0;r=h+48|0;s=h+44|0;t=h+40|0;u=h+36|0;v=h+32|0;c[l>>2]=a;c[m>>2]=d;c[n>>2]=f;c[o>>2]=g;g=c[l>>2]|0;f=c[m>>2]|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[u>>2]=oY(g,f,j)|0;f=c[l>>2]|0;g=c[n>>2]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[v>>2]=oY(f,g,j)|0;g=c[m>>2]|0;m=c[u>>2]|0;f=c[n>>2]|0;n=c[v>>2]|0;d=c[l>>2]|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[r>>2]=dY(k,g,m,j,f,n,d)|0;c[s>>2]=1;c[p>>2]=c[(c[r>>2]|0)+(c[(c[l>>2]|0)+4>>2]<<2)>>2];while(1){d=(c[p>>2]|0)!=((c[(c[l>>2]|0)+4>>2]|0)+1|0);c[s>>2]=(c[s>>2]|0)+1;if(!d)break;c[p>>2]=c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]}c[t>>2]=N4(c[s>>2]<<4)|0;c[q>>2]=(c[s>>2]|0)-1;d=c[q>>2]|0;c[q>>2]=d+-1;n=(c[t>>2]|0)+(d<<4)|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];c[p>>2]=c[(c[r>>2]|0)+(c[(c[l>>2]|0)+4>>2]<<2)>>2];while(1){w=c[q>>2]|0;if((c[p>>2]|0)==((c[(c[l>>2]|0)+4>>2]|0)+1|0))break;c[q>>2]=w+-1;e=(c[t>>2]|0)+(w<<4)|0;n=(c[(c[l>>2]|0)+8>>2]|0)+(c[p>>2]<<4)|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];c[p>>2]=c[(c[r>>2]|0)+(c[p>>2]<<2)>>2]}p=(c[t>>2]|0)+(w<<4)|0;c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];if(c[q>>2]|0)La(179753,179760,148,179766);if(c[u>>2]|0)O4(c[u>>2]|0);if(!(c[v>>2]|0)){x=c[s>>2]|0;y=c[o>>2]|0;z=y+4|0;c[z>>2]=x;A=c[t>>2]|0;B=c[o>>2]|0;c[B>>2]=A;C=c[r>>2]|0;O4(C);i=h;return 1}O4(c[v>>2]|0);x=c[s>>2]|0;y=c[o>>2]|0;z=y+4|0;c[z>>2]=x;A=c[t>>2]|0;B=c[o>>2]|0;c[B>>2]=A;C=c[r>>2]|0;O4(C);i=h;return 1}function pX(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;if((c[d>>2]|0)>>>0>0)c[e>>2]=N4(c[d>>2]|0)|0;else c[e>>2]=0;i=b;return c[e>>2]|0}function qX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+80|0;e=d+32|0;f=d+16|0;g=d;h=d+64|0;j=d+60|0;k=d+56|0;l=d+52|0;m=d+48|0;c[m>>2]=c[a>>2];c[l>>2]=c[a+4>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[l>>2]|0)){n=6;break}c[k>>2]=((c[j>>2]|0)+(c[l>>2]|0)-1|0)%(c[l>>2]|0)|0;a=(c[m>>2]|0)+(c[k>>2]<<4)|0;o=(c[m>>2]|0)+(c[j>>2]<<4)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if((jY(g,f,e)|0)==1){n=4;break}c[j>>2]=(c[j>>2]|0)+1}if((n|0)==4){c[h>>2]=0;p=c[h>>2]|0;i=d;return p|0}else if((n|0)==6){c[h>>2]=1;p=c[h>>2]|0;i=d;return p|0}return 0}function rX(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=i;i=i+64|0;h=g+48|0;j=g+32|0;k=4;l=N4(40)|0;c[l>>2]=0;m=g+16|0;p=g;q=c[d>>2]|0;r=c[d+4>>2]|0;l=W4(92352,1,l|0,k|0)|0;k=C;n=0;d=n;n=0;if((d|0)!=0&(o|0)!=0){s=Y4(c[d>>2]|0,l|0,k|0)|0;if(!s)Pa(d|0,o|0);C=o}else s=-1;if((s|0)==1)t=C;else t=0;while(1){if(t){u=4;break}n=0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];ga(24,m|0,h|0);s=n;n=0;if((s|0)!=0&(o|0)!=0){v=Y4(c[s>>2]|0,l|0,k|0)|0;if(!v)Pa(s|0,o|0);C=o}else v=-1;if((v|0)==1){t=C;continue};c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];s=e+16|0;d=e+16|0;n=0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];ga(24,p|0,h|0);d=n;n=0;if((d|0)!=0&(o|0)!=0){w=Y4(c[d>>2]|0,l|0,k|0)|0;if(!w)Pa(d|0,o|0);C=o}else w=-1;if((w|0)==1){t=C;continue};c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];c[23127]=0;n=0;ea(106,4);s=n;n=0;if((s|0)!=0&(o|0)!=0){x=Y4(c[s>>2]|0,l|0,k|0)|0;if(!x)Pa(s|0,o|0);C=o}else x=-1;if((x|0)==1){t=C;continue}s=c[23127]|0;c[23127]=s+1;d=(c[23128]|0)+(s<<4)|0;c[d>>2]=c[q>>2];c[d+4>>2]=c[q+4>>2];c[d+8>>2]=c[q+8>>2];c[d+12>>2]=c[q+12>>2];d=e+16|0;n=0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];y=na(1,a|0,b|0,q|0,r|0,j|0,h|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){z=Y4(c[d>>2]|0,l|0,k|0)|0;if(!z)Pa(d|0,o|0);C=o}else z=-1;if((z|0)==1)t=C;else break}if((u|0)==4){A=-1;O4(l|0);i=g;return A|0}if((y|0)==-1){A=-1;O4(l|0);i=g;return A|0}else{c[f+4>>2]=c[23127];c[f>>2]=c[23128];A=0;O4(l|0);i=g;return A|0}return 0}function sX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;h[e>>3]=+h[b>>3]*+h[b>>3]+ +h[b+8>>3]*+h[b+8>>3];if(+h[e>>3]>1.0e-06){h[e>>3]=+O(+(+h[e>>3]));h[b>>3]=+h[b>>3]/+h[e>>3];f=b+8|0;h[f>>3]=+h[f>>3]/+h[e>>3]};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=d;return}function tX(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+28|0;c[f>>2]=a;if((c[f>>2]|0)<=(c[23131]|0)){i=b;return}if(c[23128]|0){a=Q4(c[23128]|0,c[f>>2]<<4)|0;c[23128]=a;if(!a){a=c[24742]|0;c[d>>2]=179775;c[d+4>>2]=537;c[d+8>>2]=179928;Y2(a,179783,d)|0;Pa(92352,1)}}else{d=N4(c[f>>2]<<4)|0;c[23128]=d;if(!d){d=c[24742]|0;c[e>>2]=179775;c[e+4>>2]=531;c[e+8>>2]=179910;Y2(d,179783,e)|0;Pa(92352,1)}}c[23131]=c[f>>2];i=b;return}function uX(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0.0,Y=0.0;j=i;i=i+480|0;k=j+424|0;l=j+408|0;m=j+208|0;n=j+192|0;o=j+468|0;p=j+464|0;q=j+460|0;r=j+456|0;s=j+452|0;t=j+392|0;u=j+376|0;v=j+360|0;w=j+344|0;x=j+328|0;y=j+312|0;z=j+296|0;A=j+280|0;B=j+264|0;C=j+248|0;D=j+240|0;E=j+232|0;F=j+224|0;G=j+448|0;H=j+444|0;I=j+440|0;J=j+176|0;K=j+160|0;L=j+144|0;M=j+128|0;N=j+112|0;O=j+96|0;P=j+80|0;Q=j+64|0;R=j+48|0;S=j+32|0;T=j+16|0;U=j;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;if((c[23129]|0)<(c[s>>2]|0)){if(c[23130]|0){e=Q4(c[23130]|0,(c[s>>2]|0)*40|0)|0;c[23130]=e;if(!e){c[o>>2]=-1;V=c[o>>2]|0;i=j;return V|0}}else{e=N4((c[s>>2]|0)*40|0)|0;c[23130]=e;if(!e){c[o>>2]=-1;V=c[o>>2]|0;i=j;return V|0}}c[23129]=c[s>>2]}h[c[23130]>>3]=0.0;c[H>>2]=1;while(1){if((c[H>>2]|0)>=(c[s>>2]|0))break;W=+h[(c[23130]|0)+(((c[H>>2]|0)-1|0)*40|0)>>3];e=(c[r>>2]|0)+(c[H>>2]<<4)|0;d=(c[r>>2]|0)+((c[H>>2]|0)-1<<4)|0;c[l>>2]=c[e>>2];c[l+4>>2]=c[e+4>>2];c[l+8>>2]=c[e+8>>2];c[l+12>>2]=c[e+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];X=W+ +vX(l,k);h[(c[23130]|0)+((c[H>>2]|0)*40|0)>>3]=X;c[H>>2]=(c[H>>2]|0)+1}c[H>>2]=1;while(1){if((c[H>>2]|0)>=(c[s>>2]|0))break;d=(c[23130]|0)+((c[H>>2]|0)*40|0)|0;h[d>>3]=+h[d>>3]/+h[(c[23130]|0)+(((c[s>>2]|0)-1|0)*40|0)>>3];c[H>>2]=(c[H>>2]|0)+1}c[H>>2]=0;while(1){if((c[H>>2]|0)>=(c[s>>2]|0))break;d=(c[23130]|0)+((c[H>>2]|0)*40|0)+8|0;X=+wX(+h[(c[23130]|0)+((c[H>>2]|0)*40|0)>>3]);c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];xX(J,k,X);c[d>>2]=c[J>>2];c[d+4>>2]=c[J+4>>2];c[d+8>>2]=c[J+8>>2];c[d+12>>2]=c[J+12>>2];d=(c[23130]|0)+((c[H>>2]|0)*40|0)+8+16|0;X=+yX(+h[(c[23130]|0)+((c[H>>2]|0)*40|0)>>3]);c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];xX(K,k,X);c[d>>2]=c[K>>2];c[d+4>>2]=c[K+4>>2];c[d+8>>2]=c[K+8>>2];c[d+12>>2]=c[K+12>>2];c[H>>2]=(c[H>>2]|0)+1}K=c[r>>2]|0;J=c[s>>2]|0;d=c[23130]|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];if((zX(K,J,d,l,k,t,y,u,z)|0)==-1){c[o>>2]=-1;V=c[o>>2]|0;i=j;return V|0}d=c[p>>2]|0;J=c[q>>2]|0;K=c[r>>2]|0;e=c[s>>2]|0;c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];c[m>>2]=c[y>>2];c[m+4>>2]=c[y+4>>2];c[m+8>>2]=c[y+8>>2];c[m+12>>2]=c[y+12>>2];c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[l+12>>2]=c[u+12>>2];c[k>>2]=c[z>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[k+12>>2]=c[z+12>>2];if(AX(d,J,n,m,l,k,K,e)|0){c[o>>2]=0;V=c[o>>2]|0;i=j;return V|0};c[k>>2]=c[y>>2];c[k+4>>2]=c[y+4>>2];c[k+8>>2]=c[y+8>>2];c[k+12>>2]=c[y+12>>2];xX(L,k,.3333333333333333);c[l>>2]=c[t>>2];c[l+4>>2]=c[t+4>>2];c[l+8>>2]=c[t+8>>2];c[l+12>>2]=c[t+12>>2];c[k>>2]=c[L>>2];c[k+4>>2]=c[L+4>>2];c[k+8>>2]=c[L+8>>2];c[k+12>>2]=c[L+12>>2];BX(M,l,k);c[v>>2]=c[M>>2];c[v+4>>2]=c[M+4>>2];c[v+8>>2]=c[M+8>>2];c[v+12>>2]=c[M+12>>2];c[k>>2]=c[z>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[k+12>>2]=c[z+12>>2];xX(N,k,.3333333333333333);c[l>>2]=c[u>>2];c[l+4>>2]=c[u+4>>2];c[l+8>>2]=c[u+8>>2];c[l+12>>2]=c[u+12>>2];c[k>>2]=c[N>>2];c[k+4>>2]=c[N+4>>2];c[k+8>>2]=c[N+8>>2];c[k+12>>2]=c[N+12>>2];CX(O,l,k);c[w>>2]=c[O>>2];c[w+4>>2]=c[O+4>>2];c[w+8>>2]=c[O+8>>2];c[w+12>>2]=c[O+12>>2];h[D>>3]=-1.0;c[G>>2]=-1;c[H>>2]=1;while(1){if((c[H>>2]|0)>=((c[s>>2]|0)-1|0))break;h[F>>3]=+h[(c[23130]|0)+((c[H>>2]|0)*40|0)>>3];X=+DX(+h[F>>3]);W=X*+h[t>>3];X=+wX(+h[F>>3]);Y=W+X*+h[v>>3];X=+yX(+h[F>>3]);W=Y+X*+h[w>>3];X=+EX(+h[F>>3]);h[x>>3]=W+X*+h[u>>3];X=+DX(+h[F>>3]);W=X*+h[t+8>>3];X=+wX(+h[F>>3]);Y=W+X*+h[v+8>>3];X=+yX(+h[F>>3]);W=Y+X*+h[w+8>>3];X=+EX(+h[F>>3]);h[x+8>>3]=W+X*+h[u+8>>3];O=(c[r>>2]|0)+(c[H>>2]<<4)|0;c[l>>2]=c[x>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[l+12>>2]=c[x+12>>2];c[k>>2]=c[O>>2];c[k+4>>2]=c[O+4>>2];c[k+8>>2]=c[O+8>>2];c[k+12>>2]=c[O+12>>2];X=+vX(l,k);h[E>>3]=X;if(X>+h[D>>3]){h[D>>3]=+h[E>>3];c[G>>2]=c[H>>2]}c[H>>2]=(c[H>>2]|0)+1}c[I>>2]=c[G>>2];G=(c[r>>2]|0)+(c[I>>2]<<4)|0;H=(c[r>>2]|0)+((c[I>>2]|0)-1<<4)|0;c[l>>2]=c[G>>2];c[l+4>>2]=c[G+4>>2];c[l+8>>2]=c[G+8>>2];c[l+12>>2]=c[G+12>>2];c[k>>2]=c[H>>2];c[k+4>>2]=c[H+4>>2];c[k+8>>2]=c[H+8>>2];c[k+12>>2]=c[H+12>>2];CX(P,l,k);c[k>>2]=c[P>>2];c[k+4>>2]=c[P+4>>2];c[k+8>>2]=c[P+8>>2];c[k+12>>2]=c[P+12>>2];sX(Q,k);c[B>>2]=c[Q>>2];c[B+4>>2]=c[Q+4>>2];c[B+8>>2]=c[Q+8>>2];c[B+12>>2]=c[Q+12>>2];Q=(c[r>>2]|0)+((c[I>>2]|0)+1<<4)|0;P=(c[r>>2]|0)+(c[I>>2]<<4)|0;c[l>>2]=c[Q>>2];c[l+4>>2]=c[Q+4>>2];c[l+8>>2]=c[Q+8>>2];c[l+12>>2]=c[Q+12>>2];c[k>>2]=c[P>>2];c[k+4>>2]=c[P+4>>2];c[k+8>>2]=c[P+8>>2];c[k+12>>2]=c[P+12>>2];CX(R,l,k);c[k>>2]=c[R>>2];c[k+4>>2]=c[R+4>>2];c[k+8>>2]=c[R+8>>2];c[k+12>>2]=c[R+12>>2];sX(S,k);c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[l>>2]=c[B>>2];c[l+4>>2]=c[B+4>>2];c[l+8>>2]=c[B+8>>2];c[l+12>>2]=c[B+12>>2];c[k>>2]=c[C>>2];c[k+4>>2]=c[C+4>>2];c[k+8>>2]=c[C+8>>2];c[k+12>>2]=c[C+12>>2];BX(T,l,k);c[k>>2]=c[T>>2];c[k+4>>2]=c[T+4>>2];c[k+8>>2]=c[T+8>>2];c[k+12>>2]=c[T+12>>2];sX(U,k);c[A>>2]=c[U>>2];c[A+4>>2]=c[U+4>>2];c[A+8>>2]=c[U+8>>2];c[A+12>>2]=c[U+12>>2];U=c[p>>2]|0;T=c[q>>2]|0;C=c[r>>2]|0;B=(c[I>>2]|0)+1|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[k>>2]=c[A>>2];c[k+4>>2]=c[A+4>>2];c[k+8>>2]=c[A+8>>2];c[k+12>>2]=c[A+12>>2];uX(U,T,C,B,l,k)|0;B=c[p>>2]|0;p=c[q>>2]|0;q=(c[r>>2]|0)+(c[I>>2]<<4)|0;r=(c[s>>2]|0)-(c[I>>2]|0)|0;c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];c[l+8>>2]=c[A+8>>2];c[l+12>>2]=c[A+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];uX(B,p,q,r,l,k)|0;c[o>>2]=0;V=c[o>>2]|0;i=j;return V|0}function vX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0;c=i;i=i+16|0;d=c+8|0;e=c;h[d>>3]=+h[b>>3]-+h[a>>3];h[e>>3]=+h[b+8>>3]-+h[a+8>>3];f=+O(+(+h[d>>3]*+h[d>>3]+ +h[e>>3]*+h[e>>3]));i=c;return +f}function wX(a){a=+a;var b=0,c=0,d=0;b=i;i=i+16|0;c=b+8|0;d=b;h[c>>3]=a;h[d>>3]=1.0-+h[c>>3];i=b;return +(+h[c>>3]*3.0*+h[d>>3]*+h[d>>3])}function xX(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;h[f>>3]=d;h[b>>3]=+h[b>>3]*+h[f>>3];g=b+8|0;h[g>>3]=+h[g>>3]*+h[f>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=e;return}function yX(a){a=+a;var b=0,c=0,d=0;b=i;i=i+16|0;c=b+8|0;d=b;h[c>>3]=a;h[d>>3]=1.0-+h[c>>3];i=b;return +(+h[c>>3]*3.0*+h[c>>3]*+h[d>>3])}function zX(a,b,d,e,f,g,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0,P=0,Q=0.0,R=0,S=0,T=0,U=0,V=0,W=0,X=0.0;m=i;i=i+272|0;n=m+224|0;o=m+208|0;p=m+268|0;q=m+264|0;r=m+260|0;s=m+256|0;t=m+252|0;u=m+248|0;v=m+244|0;w=m+192|0;x=m+160|0;y=m+144|0;z=m+136|0;A=m+128|0;B=m+120|0;C=m+112|0;D=m+104|0;E=m+96|0;F=m+240|0;G=m+80|0;H=m+64|0;I=m+48|0;J=m+32|0;K=m+16|0;L=m;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=g;c[t>>2]=j;c[u>>2]=k;c[v>>2]=l;h[E>>3]=0.0;h[D>>3]=0.0;h[x+16+8>>3]=0.0;h[x+16>>3]=0.0;h[x+8>>3]=0.0;h[x>>3]=0.0;h[y+8>>3]=0.0;h[y>>3]=0.0;c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[q>>2]|0))break;l=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8|0;k=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8|0;c[o>>2]=c[l>>2];c[o+4>>2]=c[l+4>>2];c[o+8>>2]=c[l+8>>2];c[o+12>>2]=c[l+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];M=+KX(o,n);h[x>>3]=+h[x>>3]+M;k=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8|0;l=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8+16|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];M=+KX(o,n);l=x+8|0;h[l>>3]=+h[l>>3]+M;h[x+16>>3]=+h[x+8>>3];l=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8+16|0;k=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8+16|0;c[o>>2]=c[l>>2];c[o+4>>2]=c[l+4>>2];c[o+8>>2]=c[l+8>>2];c[o+12>>2]=c[l+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];M=+KX(o,n);k=x+16+8|0;h[k>>3]=+h[k>>3]+M;k=(c[p>>2]|0)+(c[F>>2]<<4)|0;l=c[p>>2]|0;M=+LX(+h[(c[r>>2]|0)+((c[F>>2]|0)*40|0)>>3]);c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];xX(H,n,M);l=(c[p>>2]|0)+((c[q>>2]|0)-1<<4)|0;M=+MX(+h[(c[r>>2]|0)+((c[F>>2]|0)*40|0)>>3]);c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];xX(I,n,M);c[o>>2]=c[H>>2];c[o+4>>2]=c[H+4>>2];c[o+8>>2]=c[H+8>>2];c[o+12>>2]=c[H+12>>2];c[n>>2]=c[I>>2];c[n+4>>2]=c[I+4>>2];c[n+8>>2]=c[I+8>>2];c[n+12>>2]=c[I+12>>2];BX(G,o,n);c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[G>>2];c[n+4>>2]=c[G+4>>2];c[n+8>>2]=c[G+8>>2];c[n+12>>2]=c[G+12>>2];CX(J,o,n);c[w>>2]=c[J>>2];c[w+4>>2]=c[J+4>>2];c[w+8>>2]=c[J+8>>2];c[w+12>>2]=c[J+12>>2];k=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[w>>2];c[n+4>>2]=c[w+4>>2];c[n+8>>2]=c[w+8>>2];c[n+12>>2]=c[w+12>>2];M=+KX(o,n);h[y>>3]=+h[y>>3]+M;k=(c[r>>2]|0)+((c[F>>2]|0)*40|0)+8+16|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[n>>2]=c[w>>2];c[n+4>>2]=c[w+4>>2];c[n+8>>2]=c[w+8>>2];c[n+12>>2]=c[w+12>>2];M=+KX(o,n);k=y+8|0;h[k>>3]=+h[k>>3]+M;c[F>>2]=(c[F>>2]|0)+1}h[z>>3]=+h[x>>3]*+h[x+16+8>>3]-+h[x+16>>3]*+h[x+8>>3];h[A>>3]=+h[x>>3]*+h[y+8>>3]-+h[x+8>>3]*+h[y>>3];h[B>>3]=+h[y>>3]*+h[x+16+8>>3]-+h[y+8>>3]*+h[x+8>>3];M=+h[z>>3];if((+h[z>>3]>=0.0?M:-M)>=1.0e-06){h[D>>3]=+h[B>>3]/+h[z>>3];h[E>>3]=+h[A>>3]/+h[z>>3]}M=+h[z>>3];if(!((+h[D>>3]<=0.0?1:(+h[z>>3]>=0.0?M:-M)<1.0e-06)|+h[E>>3]<=0.0)){N=c[s>>2]|0;O=c[p>>2]|0;c[N>>2]=c[O>>2];c[N+4>>2]=c[O+4>>2];c[N+8>>2]=c[O+8>>2];c[N+12>>2]=c[O+12>>2];P=c[t>>2]|0;Q=+h[D>>3];c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];xX(K,n,Q);c[P>>2]=c[K>>2];c[P+4>>2]=c[K+4>>2];c[P+8>>2]=c[K+8>>2];c[P+12>>2]=c[K+12>>2];R=c[u>>2]|0;S=c[q>>2]|0;T=S-1|0;U=c[p>>2]|0;V=U+(T<<4)|0;c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];c[R+8>>2]=c[V+8>>2];c[R+12>>2]=c[V+12>>2];W=c[v>>2]|0;X=+h[E>>3];c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];xX(L,n,X);c[W>>2]=c[L>>2];c[W+4>>2]=c[L+4>>2];c[W+8>>2]=c[L+8>>2];c[W+12>>2]=c[L+12>>2];i=m;return 0}z=c[p>>2]|0;A=(c[p>>2]|0)+((c[q>>2]|0)-1<<4)|0;c[o>>2]=c[z>>2];c[o+4>>2]=c[z+4>>2];c[o+8>>2]=c[z+8>>2];c[o+12>>2]=c[z+12>>2];c[n>>2]=c[A>>2];c[n+4>>2]=c[A+4>>2];c[n+8>>2]=c[A+8>>2];c[n+12>>2]=c[A+12>>2];h[C>>3]=+vX(o,n)/3.0;h[D>>3]=+h[C>>3];h[E>>3]=+h[C>>3];N=c[s>>2]|0;O=c[p>>2]|0;c[N>>2]=c[O>>2];c[N+4>>2]=c[O+4>>2];c[N+8>>2]=c[O+8>>2];c[N+12>>2]=c[O+12>>2];P=c[t>>2]|0;Q=+h[D>>3];c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];xX(K,n,Q);c[P>>2]=c[K>>2];c[P+4>>2]=c[K+4>>2];c[P+8>>2]=c[K+8>>2];c[P+12>>2]=c[K+12>>2];R=c[u>>2]|0;S=c[q>>2]|0;T=S-1|0;U=c[p>>2]|0;V=U+(T<<4)|0;c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];c[R+8>>2]=c[V+8>>2];c[R+12>>2]=c[V+12>>2];W=c[v>>2]|0;X=+h[E>>3];c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];xX(L,n,X);c[W>>2]=c[L>>2];c[W+4>>2]=c[L+4>>2];c[W+8>>2]=c[L+8>>2];c[W+12>>2]=c[L+12>>2];i=m;return 0}function AX(a,b,d,e,f,g,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0;l=i;i=i+112|0;m=l+108|0;n=l+104|0;o=l+100|0;p=l+96|0;q=l+92|0;r=l+16|0;s=l+8|0;t=l;u=l+88|0;v=l+84|0;w=l+80|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=j;c[q>>2]=k;c[w>>2]=1;c[v>>2]=(c[q>>2]|0)==2?1:0;h[t>>3]=4.0;h[s>>3]=4.0;while(1){h[r>>3]=+h[d>>3];h[r+8>>3]=+h[d+8>>3];h[r+16>>3]=+h[d>>3]+ +h[s>>3]*+h[e>>3]/3.0;h[r+16+8>>3]=+h[d+8>>3]+ +h[s>>3]*+h[e+8>>3]/3.0;h[r+32>>3]=+h[f>>3]-+h[t>>3]*+h[g>>3]/3.0;h[r+32+8>>3]=+h[f+8>>3]-+h[t>>3]*+h[g+8>>3]/3.0;h[r+48>>3]=+h[f>>3];h[r+48+8>>3]=+h[f+8>>3];if((c[w>>2]|0)!=0?(x=+FX(r,4),x<+FX(c[p>>2]|0,c[q>>2]|0)-.001):0){y=4;break}c[w>>2]=0;if(GX(c[n>>2]|0,c[o>>2]|0,r)|0){y=6;break}if(+h[s>>3]==0.0&+h[t>>3]==0.0){y=11;break}if(+h[s>>3]>.01){h[s>>3]=+h[s>>3]/2.0;h[t>>3]=+h[t>>3]/2.0;continue}else{h[t>>3]=0.0;h[s>>3]=0.0;continue}}if((y|0)==4){c[m>>2]=0;z=c[m>>2]|0;i=l;return z|0}else if((y|0)==6){tX((c[23127]|0)+4|0);c[u>>2]=1;while(1){if((c[u>>2]|0)>=4)break;h[(c[23128]|0)+(c[23127]<<4)>>3]=+h[r+(c[u>>2]<<4)>>3];x=+h[r+(c[u>>2]<<4)+8>>3];s=c[23127]|0;c[23127]=s+1;h[(c[23128]|0)+(s<<4)+8>>3]=x;c[u>>2]=(c[u>>2]|0)+1}c[m>>2]=1;z=c[m>>2]|0;i=l;return z|0}else if((y|0)==11){if(!(c[v>>2]|0)){c[m>>2]=0;z=c[m>>2]|0;i=l;return z|0}tX((c[23127]|0)+4|0);c[u>>2]=1;while(1){if((c[u>>2]|0)>=4)break;h[(c[23128]|0)+(c[23127]<<4)>>3]=+h[r+(c[u>>2]<<4)>>3];x=+h[r+(c[u>>2]<<4)+8>>3];v=c[23127]|0;c[23127]=v+1;h[(c[23128]|0)+(v<<4)+8>>3]=x;c[u>>2]=(c[u>>2]|0)+1}c[m>>2]=1;z=c[m>>2]|0;i=l;return z|0}return 0}function BX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function CX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]-+h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]-+h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function DX(a){a=+a;var b=0,c=0,d=0;b=i;i=i+16|0;c=b+8|0;d=b;h[c>>3]=a;h[d>>3]=1.0-+h[c>>3];i=b;return +(+h[d>>3]*+h[d>>3]*+h[d>>3])}function EX(a){a=+a;var b=0,c=0;b=i;i=i+16|0;c=b;h[c>>3]=a;i=b;return +(+h[c>>3]*+h[c>>3]*+h[c>>3])}function FX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d;c[e>>2]=a;c[f>>2]=b;h[j>>3]=0.0;c[g>>2]=1;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;k=+O(+((+h[(c[e>>2]|0)+(c[g>>2]<<4)>>3]-+h[(c[e>>2]|0)+((c[g>>2]|0)-1<<4)>>3])*(+h[(c[e>>2]|0)+(c[g>>2]<<4)>>3]-+h[(c[e>>2]|0)+((c[g>>2]|0)-1<<4)>>3])+(+h[(c[e>>2]|0)+(c[g>>2]<<4)+8>>3]-+h[(c[e>>2]|0)+((c[g>>2]|0)-1<<4)+8>>3])*(+h[(c[e>>2]|0)+(c[g>>2]<<4)+8>>3]-+h[(c[e>>2]|0)+((c[g>>2]|0)-1<<4)+8>>3])));h[j>>3]=+h[j>>3]+k;c[g>>2]=(c[g>>2]|0)+1}i=d;return +(+h[j>>3])}function GX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+160|0;f=e+144|0;g=e+140|0;j=e+136|0;k=e+132|0;l=e+88|0;m=e+128|0;n=e+124|0;o=e+120|0;p=e+56|0;q=e+40|0;r=e+32|0;s=e+24|0;t=e+16|0;u=e+8|0;v=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>=(c[j>>2]|0)){w=13;break}d=(c[g>>2]|0)+(c[o>>2]<<5)|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];d=p+16|0;b=(c[g>>2]|0)+(c[o>>2]<<5)+16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=HX(c[k>>2]|0,p,l)|0;c[n>>2]=b;b:do if((b|0)!=4){c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[n>>2]|0))break b;if(((!(+h[l+(c[m>>2]<<3)>>3]<1.0e-06)?!(+h[l+(c[m>>2]<<3)>>3]>.999999):0)?(h[r>>3]=+h[l+(c[m>>2]<<3)>>3],h[v>>3]=+h[r>>3]*+h[r>>3]*+h[r>>3],h[u>>3]=+h[r>>3]*3.0*+h[r>>3]*(1.0-+h[r>>3]),h[t>>3]=+h[r>>3]*3.0*(1.0-+h[r>>3])*(1.0-+h[r>>3]),h[s>>3]=(1.0-+h[r>>3])*(1.0-+h[r>>3])*(1.0-+h[r>>3]),h[q>>3]=+h[s>>3]*+h[c[k>>2]>>3]+ +h[t>>3]*+h[(c[k>>2]|0)+16>>3]+ +h[u>>3]*+h[(c[k>>2]|0)+32>>3]+ +h[v>>3]*+h[(c[k>>2]|0)+48>>3],h[q+8>>3]=+h[s>>3]*+h[(c[k>>2]|0)+8>>3]+ +h[t>>3]*+h[(c[k>>2]|0)+16+8>>3]+ +h[u>>3]*+h[(c[k>>2]|0)+32+8>>3]+ +h[v>>3]*+h[(c[k>>2]|0)+48+8>>3],!((+h[q>>3]-+h[p>>3])*(+h[q>>3]-+h[p>>3])+(+h[q+8>>3]-+h[p+8>>3])*(+h[q+8>>3]-+h[p+8>>3])<.001)):0)?!((+h[q>>3]-+h[p+16>>3])*(+h[q>>3]-+h[p+16>>3])+(+h[q+8>>3]-+h[p+16+8>>3])*(+h[q+8>>3]-+h[p+16+8>>3])<.001):0){w=10;break a}c[m>>2]=(c[m>>2]|0)+1}}while(0);c[o>>2]=(c[o>>2]|0)+1}if((w|0)==10){c[f>>2]=0;x=c[f>>2]|0;i=e;return x|0}else if((w|0)==13){c[f>>2]=1;x=c[f>>2]|0;i=e;return x|0}return 0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0;e=i;i=i+176|0;f=e+168|0;g=e+164|0;j=e+160|0;k=e+156|0;l=e+104|0;m=e+88|0;n=e+72|0;o=e+48|0;p=e+24|0;q=e+16|0;r=e+8|0;s=e;t=e+152|0;u=e+148|0;v=e+144|0;w=e+140|0;x=e+136|0;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[m>>3]=+h[c[j>>2]>>3];h[m+8>>3]=+h[(c[j>>2]|0)+16>>3]-+h[c[j>>2]>>3];h[n>>3]=+h[(c[j>>2]|0)+8>>3];h[n+8>>3]=+h[(c[j>>2]|0)+16+8>>3]-+h[(c[j>>2]|0)+8>>3];c[t>>2]=0;y=+h[n+8>>3];if(!(+h[m+8>>3]==0.0)){h[s>>3]=y/+h[m+8>>3];IX(+h[(c[g>>2]|0)+8>>3]-+h[s>>3]*+h[c[g>>2]>>3],+h[(c[g>>2]|0)+16+8>>3]-+h[s>>3]*+h[(c[g>>2]|0)+16>>3],+h[(c[g>>2]|0)+32+8>>3]-+h[s>>3]*+h[(c[g>>2]|0)+32>>3],+h[(c[g>>2]|0)+48+8>>3]-+h[s>>3]*+h[(c[g>>2]|0)+48>>3],l);h[l>>3]=+h[l>>3]+(+h[s>>3]*+h[m>>3]-+h[n>>3]);c[u>>2]=eY(l,o)|0;if((c[u>>2]|0)==4){c[f>>2]=4;z=c[f>>2]|0;i=e;return z|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break;h[q>>3]=+h[o+(c[w>>2]<<3)>>3];if(+h[q>>3]>=0.0&+h[q>>3]<=1.0?(IX(+h[c[g>>2]>>3],+h[(c[g>>2]|0)+16>>3],+h[(c[g>>2]|0)+32>>3],+h[(c[g>>2]|0)+48>>3],l),h[r>>3]=+h[l>>3]+ +h[q>>3]*(+h[l+8>>3]+ +h[q>>3]*(+h[l+16>>3]+ +h[q>>3]*+h[l+24>>3])),h[r>>3]=(+h[r>>3]-+h[m>>3])/+h[m+8>>3],0.0<=+h[r>>3]&+h[r>>3]<=1.0):0)JX(+h[q>>3],c[k>>2]|0,t);c[w>>2]=(c[w>>2]|0)+1}c[f>>2]=c[t>>2];z=c[f>>2]|0;i=e;return z|0}IX(+h[c[g>>2]>>3],+h[(c[g>>2]|0)+16>>3],+h[(c[g>>2]|0)+32>>3],+h[(c[g>>2]|0)+48>>3],l);h[l>>3]=+h[l>>3]-+h[m>>3];c[u>>2]=eY(l,o)|0;if(!(y==0.0)){if((c[u>>2]|0)==4){c[f>>2]=4;z=c[f>>2]|0;i=e;return z|0}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break;h[q>>3]=+h[o+(c[w>>2]<<3)>>3];if(+h[q>>3]>=0.0&+h[q>>3]<=1.0?(IX(+h[(c[g>>2]|0)+8>>3],+h[(c[g>>2]|0)+16+8>>3],+h[(c[g>>2]|0)+32+8>>3],+h[(c[g>>2]|0)+48+8>>3],l),h[r>>3]=+h[l>>3]+ +h[q>>3]*(+h[l+8>>3]+ +h[q>>3]*(+h[l+16>>3]+ +h[q>>3]*+h[l+24>>3])),h[r>>3]=(+h[r>>3]-+h[n>>3])/+h[n+8>>3],0.0<=+h[r>>3]&+h[r>>3]<=1.0):0)JX(+h[q>>3],c[k>>2]|0,t);c[w>>2]=(c[w>>2]|0)+1}c[f>>2]=c[t>>2];z=c[f>>2]|0;i=e;return z|0}IX(+h[(c[g>>2]|0)+8>>3],+h[(c[g>>2]|0)+16+8>>3],+h[(c[g>>2]|0)+32+8>>3],+h[(c[g>>2]|0)+48+8>>3],l);h[l>>3]=+h[l>>3]-+h[n>>3];c[v>>2]=eY(l,p)|0;l=(c[v>>2]|0)==4;a:do if((c[u>>2]|0)==4){if(l){c[f>>2]=4;z=c[f>>2]|0;i=e;return z|0}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[v>>2]|0))break a;JX(+h[p+(c[x>>2]<<3)>>3],c[k>>2]|0,t);c[x>>2]=(c[x>>2]|0)+1}}else{c[w>>2]=0;if(l)while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break a;JX(+h[o+(c[w>>2]<<3)>>3],c[k>>2]|0,t);c[w>>2]=(c[w>>2]|0)+1}while(1){if((c[w>>2]|0)>=(c[u>>2]|0))break a;c[x>>2]=0;while(1){A=c[w>>2]|0;if((c[x>>2]|0)>=(c[v>>2]|0))break;if(+h[o+(A<<3)>>3]==+h[p+(c[x>>2]<<3)>>3])JX(+h[o+(c[w>>2]<<3)>>3],c[k>>2]|0,t);c[x>>2]=(c[x>>2]|0)+1}c[w>>2]=A+1}}while(0);c[f>>2]=c[t>>2];z=c[f>>2]|0;i=e;return z|0}function IX(a,b,d,e,f){a=+a;b=+b;d=+d;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+48|0;j=g+24|0;k=g+16|0;l=g+8|0;m=g;n=g+32|0;h[j>>3]=a;h[k>>3]=b;h[l>>3]=d;h[m>>3]=e;c[n>>2]=f;h[(c[n>>2]|0)+24>>3]=+h[m>>3]+ +h[k>>3]*3.0-(+h[j>>3]+ +h[l>>3]*3.0);h[(c[n>>2]|0)+16>>3]=+h[j>>3]*3.0+ +h[l>>3]*3.0-+h[k>>3]*6.0;h[(c[n>>2]|0)+8>>3]=(+h[k>>3]-+h[j>>3])*3.0;h[c[n>>2]>>3]=+h[j>>3];i=g;return}function JX(a,b,d){a=+a;b=b|0;d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e;g=e+12|0;j=e+8|0;h[f>>3]=a;c[g>>2]=b;c[j>>2]=d;if(!(+h[f>>3]>=0.0&+h[f>>3]<=1.0)){i=e;return}h[(c[g>>2]|0)+(c[c[j>>2]>>2]<<3)>>3]=+h[f>>3];f=c[j>>2]|0;c[f>>2]=(c[f>>2]|0)+1;i=e;return}function KX(a,b){a=a|0;b=b|0;return +(+h[a>>3]*+h[b>>3]+ +h[a+8>>3]*+h[b+8>>3])}function LX(a){a=+a;var b=0,c=0,d=0;b=i;i=i+16|0;c=b+8|0;d=b;h[c>>3]=a;h[d>>3]=1.0-+h[c>>3];i=b;return +(+h[d>>3]*+h[d>>3]*(+h[d>>3]+ +h[c>>3]*3.0))}function MX(a){a=+a;var b=0,c=0,d=0;b=i;i=i+16|0;c=b+8|0;d=b;h[c>>3]=a;h[d>>3]=1.0-+h[c>>3];i=b;return +(+h[c>>3]*+h[c>>3]*(+h[d>>3]*3.0+ +h[c>>3]))}function NX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0,B=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,fa=0,ha=0,ja=0,la=0;e=i;i=i+112|0;f=e+80|0;g=e+64|0;j=e+48|0;k=4;l=N4(40)|0;c[l>>2]=0;m=e+32|0;p=e+16|0;q=e;r=e+96|0;l=W4(92528,1,l|0,k|0)|0;k=C;n=0;t=n;n=0;if((t|0)!=0&(o|0)!=0){u=Y4(c[t>>2]|0,l|0,k|0)|0;if(!u)Pa(t|0,o|0);C=o}else u=-1;if((u|0)==1)v=C;else v=0;a:while(1){if(v){w=4;break}n=0;ea(107,c[a+4>>2]|0);u=n;n=0;if((u|0)!=0&(o|0)!=0){x=Y4(c[u>>2]|0,l|0,k|0)|0;if(!x)Pa(u|0,o|0);C=o}else x=-1;if((x|0)==1){v=C;continue}c[23171]=0;c[23172]=0;n=0;ea(108,c[a+4>>2]<<1|0);u=n;n=0;if((u|0)!=0&(o|0)!=0){y=Y4(c[u>>2]|0,l|0,k|0)|0;if(!y)Pa(u|0,o|0);C=o}else y=-1;if((y|0)==1){v=C;continue}c[23175]=(c[23174]|0)/2|0;c[23176]=(c[23175]|0)-1;u=-1;z=s;t=0;while(1){if((t|0)>=(c[a+4>>2]|0))break;if(z>+h[(c[a>>2]|0)+(t<<4)>>3]){A=t;B=+h[(c[a>>2]|0)+(t<<4)>>3]}else{A=u;B=z}u=A;z=B;t=t+1|0}t=(c[a>>2]|0)+(u<<4)|0;c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];if(!u)D=c[a+4>>2]|0;else D=u;t=(c[a>>2]|0)+(D-1<<4)|0;c[m>>2]=c[t>>2];c[m+4>>2]=c[t+4>>2];c[m+8>>2]=c[t+8>>2];c[m+12>>2]=c[t+12>>2];t=(c[a>>2]|0)+(((u|0)==((c[a+4>>2]|0)-1|0)?0:u+1|0)<<4)|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];if((+h[m>>3]==+h[p>>3]?+h[p>>3]==+h[q>>3]:0)?+h[q+8>>3]>+h[p+8>>3]:0)w=20;else w=18;b:do if((w|0)==18){w=0;n=0;t=ka(40,m|0,p|0,q|0)|0;E=n;n=0;if((E|0)!=0&(o|0)!=0){F=Y4(c[E>>2]|0,l|0,k|0)|0;if(!F)Pa(E|0,o|0);C=o}else F=-1;if((F|0)==1){v=C;continue a}if((t|0)!=1)w=20;else{t=0;while(1){if((t|0)>=(c[a+4>>2]|0))break b;if(!(((t|0)>0?+h[(c[a>>2]|0)+(t<<4)>>3]==+h[(c[a>>2]|0)+(t-1<<4)>>3]:0)?+h[(c[a>>2]|0)+(t<<4)+8>>3]==+h[(c[a>>2]|0)+(t-1<<4)+8>>3]:0)){c[(c[23178]|0)+(c[23171]<<3)>>2]=(c[a>>2]|0)+(t<<4);c[(c[23178]|0)+(c[23171]<<3)+4>>2]=(c[23178]|0)+(((c[23171]|0)%(c[a+4>>2]|0)|0)<<3);c[(c[23179]|0)+(c[23171]<<2)>>2]=(c[23178]|0)+(c[23171]<<3);c[23171]=(c[23171]|0)+1}t=t+1|0}}}while(0);c:do if((w|0)==20){w=0;u=(c[a+4>>2]|0)-1|0;while(1){if((u|0)<0)break c;if(!(((u|0)<((c[a+4>>2]|0)-1|0)?+h[(c[a>>2]|0)+(u<<4)>>3]==+h[(c[a>>2]|0)+(u+1<<4)>>3]:0)?+h[(c[a>>2]|0)+(u<<4)+8>>3]==+h[(c[a>>2]|0)+(u+1<<4)+8>>3]:0)){c[(c[23178]|0)+(c[23171]<<3)>>2]=(c[a>>2]|0)+(u<<4);c[(c[23178]|0)+(c[23171]<<3)+4>>2]=(c[23178]|0)+(((c[23171]|0)%(c[a+4>>2]|0)|0)<<3);c[(c[23179]|0)+(c[23171]<<2)>>2]=(c[23178]|0)+(c[23171]<<3);c[23171]=(c[23171]|0)+1}u=u+-1|0}}while(0);n=0;ga(25,c[23179]|0,c[23171]|0);u=n;n=0;if((u|0)!=0&(o|0)!=0){G=Y4(c[u>>2]|0,l|0,k|0)|0;if(!G)Pa(u|0,o|0);C=o}else G=-1;if((G|0)==1){v=C;continue}u=0;while(1){if((u|0)>=(c[23172]|0))break;t=u+1|0;while(1){if((t|0)>=(c[23172]|0))break;n=0;ga(26,u|0,t|0);E=n;n=0;if((E|0)!=0&(o|0)!=0){H=Y4(c[E>>2]|0,l|0,k|0)|0;if(!H)Pa(E|0,o|0);C=o}else H=-1;if((H|0)==1){v=C;continue a}t=t+1|0}u=u+1|0}u=0;while(1){if((u|0)>=(c[23172]|0))break;n=0;t=ra(105,u|0,b|0)|0;E=n;n=0;if((E|0)!=0&(o|0)!=0){I=Y4(c[E>>2]|0,l|0,k|0)|0;if(!I)Pa(E|0,o|0);C=o}else I=-1;if((I|0)==1){v=C;continue a}if(t)break;u=u+1|0}if((u|0)==(c[23172]|0)){t=c[24742]|0;n=0;c[j>>2]=179802;c[j+4>>2]=192;c[j+8>>2]=179813;ka(36,t|0,179783,j|0)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){J=Y4(c[t>>2]|0,l|0,k|0)|0;if(!J)Pa(t|0,o|0);C=o}else J=-1;if((J|0)==1){v=C;continue}else{w=49;break}}t=0;while(1){if((t|0)>=(c[23172]|0))break;n=0;E=ra(105,t|0,b+16|0)|0;K=n;n=0;if((K|0)!=0&(o|0)!=0){L=Y4(c[K>>2]|0,l|0,k|0)|0;if(!L)Pa(K|0,o|0);C=o}else L=-1;if((L|0)==1){v=C;continue a}if(E)break;t=t+1|0}if((t|0)==(c[23172]|0)){E=c[24742]|0;n=0;c[g>>2]=179802;c[g+4>>2]=200;c[g+8>>2]=179846;ka(36,E|0,179783,g|0)|0;E=n;n=0;if((E|0)!=0&(o|0)!=0){M=Y4(c[E>>2]|0,l|0,k|0)|0;if(!M)Pa(E|0,o|0);C=o}else M=-1;if((M|0)==1){v=C;continue}else{w=57;break}}n=0;E=ra(106,u|0,t|0)|0;K=n;n=0;if((K|0)!=0&(o|0)!=0){N=Y4(c[K>>2]|0,l|0,k|0)|0;if(!N)Pa(K|0,o|0);C=o}else N=-1;if((N|0)==1){v=C;continue}if(!E){E=c[24742]|0;n=0;c[f>>2]=179802;c[f+4>>2]=207;c[f+8>>2]=179884;ka(36,E|0,179783,f|0)|0;E=n;n=0;if((E|0)!=0&(o|0)!=0){O=Y4(c[E>>2]|0,l|0,k|0)|0;if(!O)Pa(E|0,o|0);C=o}else O=-1;if((O|0)==1){v=C;continue}n=0;ea(109,2);E=n;n=0;if((E|0)!=0&(o|0)!=0){P=Y4(c[E>>2]|0,l|0,k|0)|0;if(!P)Pa(E|0,o|0);C=o}else P=-1;if((P|0)==1){v=C;continue}else{w=62;break}}if((u|0)==(t|0)){n=0;ea(109,2);E=n;n=0;if((E|0)!=0&(o|0)!=0){Q=Y4(c[E>>2]|0,l|0,k|0)|0;if(!Q)Pa(E|0,o|0);C=o}else Q=-1;if((Q|0)==1){v=C;continue}else{w=65;break}}c[r>>2]=b;c[r+4>>2]=0;c[r+8>>2]=b+16;c[r+8+4>>2]=0;n=0;ga(27,1,r|0);E=n;n=0;if((E|0)!=0&(o|0)!=0){R=Y4(c[E>>2]|0,l|0,k|0)|0;if(!R)Pa(E|0,o|0);C=o}else R=-1;if((R|0)==1){v=C;continue}c[23177]=c[23175];E=u;d:while(1){if((E|0)==-1)break;K=(c[23181]|0)+(E*52|0)|0;c[K>>2]=2;S=0;while(1){if((S|0)>=3)break;if((c[K+4+(S<<4)+12>>2]|0)!=0?(c[c[K+4+(S<<4)+12>>2]>>2]|0)==1:0)break;S=S+1|0}do if((S|0)==3){n=0;T=ka(40,b+16|0,c[c[(c[23173]|0)+(c[23175]<<2)>>2]>>2]|0,c[c[(c[23173]|0)+(c[23176]<<2)>>2]>>2]|0)|0;U=n;n=0;if((U|0)!=0&(o|0)!=0){V=Y4(c[U>>2]|0,l|0,k|0)|0;if(!V)Pa(U|0,o|0);C=o}else V=-1;if((V|0)==1){v=C;continue a}if((T|0)==1){W=c[(c[23173]|0)+(c[23176]<<2)>>2]|0;X=r+8|0;break}else{W=r+8|0;X=c[(c[23173]|0)+(c[23176]<<2)>>2]|0;break}}else{n=0;T=ka(40,c[c[K+4+(S<<4)>>2]>>2]|0,c[c[K+4+(((S+1|0)%3|0)<<4)+4>>2]>>2]|0,c[c[K+4+(S<<4)+4>>2]>>2]|0)|0;U=n;n=0;if((U|0)!=0&(o|0)!=0){Y=Y4(c[U>>2]|0,l|0,k|0)|0;if(!Y)Pa(U|0,o|0);C=o}else Y=-1;if((Y|0)==1){v=C;continue a}U=K+4+(S<<4)|0;if((T|0)==1){W=c[U+4>>2]|0;X=c[K+4+(S<<4)>>2]|0;break}else{W=c[U>>2]|0;X=c[K+4+(S<<4)+4>>2]|0;break}}while(0);e:do if((E|0)==(u|0)){n=0;ga(27,2,W|0);S=n;n=0;if((S|0)!=0&(o|0)!=0){Z=Y4(c[S>>2]|0,l|0,k|0)|0;if(!Z)Pa(S|0,o|0);C=o}else Z=-1;if((Z|0)==1){v=C;continue a}n=0;ga(27,1,X|0);S=n;n=0;if((S|0)!=0&(o|0)!=0){_=Y4(c[S>>2]|0,l|0,k|0)|0;if(!_)Pa(S|0,o|0);C=o}else _=-1;if((_|0)==1){v=C;continue a}}else{do if((c[(c[23173]|0)+(c[23175]<<2)>>2]|0)!=(X|0)){if((c[(c[23173]|0)+(c[23176]<<2)>>2]|0)==(X|0))break;n=0;S=ia(34,X|0)|0;U=n;n=0;if((U|0)!=0&(o|0)!=0){$=Y4(c[U>>2]|0,l|0,k|0)|0;if(!$)Pa(U|0,o|0);C=o}else $=-1;if(($|0)==1){v=C;continue a}n=0;ga(28,2,S|0);U=n;n=0;if((U|0)!=0&(o|0)!=0){aa=Y4(c[U>>2]|0,l|0,k|0)|0;if(!aa)Pa(U|0,o|0);C=o}else aa=-1;if((aa|0)==1){v=C;continue a}n=0;ga(27,1,X|0);U=n;n=0;if((U|0)!=0&(o|0)!=0){ba=Y4(c[U>>2]|0,l|0,k|0)|0;if(!ba)Pa(U|0,o|0);C=o}else ba=-1;if((ba|0)==1){v=C;continue a}if((S|0)<=(c[23177]|0))break e;c[23177]=S;break e}while(0);n=0;S=ia(34,W|0)|0;U=n;n=0;if((U|0)!=0&(o|0)!=0){ca=Y4(c[U>>2]|0,l|0,k|0)|0;if(!ca)Pa(U|0,o|0);C=o}else ca=-1;if((ca|0)==1){v=C;continue a}n=0;ga(28,1,S|0);U=n;n=0;if((U|0)!=0&(o|0)!=0){da=Y4(c[U>>2]|0,l|0,k|0)|0;if(!da)Pa(U|0,o|0);C=o}else da=-1;if((da|0)==1){v=C;continue a}n=0;ga(27,2,W|0);U=n;n=0;if((U|0)!=0&(o|0)!=0){fa=Y4(c[U>>2]|0,l|0,k|0)|0;if(!fa)Pa(U|0,o|0);C=o}else fa=-1;if((fa|0)==1){v=C;continue a}if((S|0)>=(c[23177]|0))break;c[23177]=S}while(0);S=0;while(1){if((S|0)>=3){E=-1;continue d}if((c[K+4+(S<<4)+12>>2]|0)!=0?(c[c[K+4+(S<<4)+12>>2]>>2]|0)==1:0)break;S=S+1|0}E=((c[K+4+(S<<4)+12>>2]|0)-(c[23181]|0)|0)/52|0}ha=0;E=r+8|0;while(1){if(!E)break;ha=ha+1|0;E=c[E+4>>2]|0}n=0;ea(109,ha|0);E=n;n=0;if((E|0)!=0&(o|0)!=0){ja=Y4(c[E>>2]|0,l|0,k|0)|0;if(!ja)Pa(E|0,o|0);C=o}else ja=-1;if((ja|0)==1)v=C;else{w=109;break}}if((w|0)==4){la=-2;O4(l|0);i=e;return la|0}else if((w|0)==49){la=-1;O4(l|0);i=e;return la|0}else if((w|0)==57){la=-1;O4(l|0);i=e;return la|0}else if((w|0)==62){c[d+4>>2]=2;v=c[23180]|0;c[v>>2]=c[b>>2];c[v+4>>2]=c[b+4>>2];c[v+8>>2]=c[b+8>>2];c[v+12>>2]=c[b+12>>2];v=(c[23180]|0)+16|0;ja=b+16|0;c[v>>2]=c[ja>>2];c[v+4>>2]=c[ja+4>>2];c[v+8>>2]=c[ja+8>>2];c[v+12>>2]=c[ja+12>>2];c[d>>2]=c[23180];la=0;O4(l|0);i=e;return la|0}else if((w|0)==65){c[d+4>>2]=2;ja=c[23180]|0;c[ja>>2]=c[b>>2];c[ja+4>>2]=c[b+4>>2];c[ja+8>>2]=c[b+8>>2];c[ja+12>>2]=c[b+12>>2];ja=(c[23180]|0)+16|0;v=b+16|0;c[ja>>2]=c[v>>2];c[ja+4>>2]=c[v+4>>2];c[ja+8>>2]=c[v+8>>2];c[ja+12>>2]=c[v+12>>2];c[d>>2]=c[23180];la=0;O4(l|0);i=e;return la|0}else if((w|0)==109){c[d+4>>2]=ha;w=ha-1|0;ha=r+8|0;while(1){if(!ha)break;r=(c[23180]|0)+(w<<4)|0;v=c[ha>>2]|0;c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];w=w+-1|0;ha=c[ha+4>>2]|0}c[d>>2]=c[23180];la=0;O4(l|0);i=e;return la|0}return 0}function OX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+64|0;d=b+48|0;e=b+32|0;f=b+16|0;g=b;h=b+60|0;c[h>>2]=a;if((c[h>>2]|0)<=(c[23184]|0)){i=b;return}if(c[23178]|0){a=Q4(c[23178]|0,c[h>>2]<<3)|0;c[23178]=a;if(!a){a=c[24742]|0;c[e>>2]=179802;c[e+4>>2]=533;c[e+8>>2]=180091;Y2(a,179783,e)|0;Pa(92528,1)}e=Q4(c[23179]|0,c[h>>2]<<2)|0;c[23179]=e;if(!e){e=c[24742]|0;c[d>>2]=179802;c[d+4>>2]=539;c[d+8>>2]=180111;Y2(e,179783,d)|0;Pa(92528,1)}}else{d=N4(c[h>>2]<<3)|0;c[23178]=d;if(!d){d=c[24742]|0;c[g>>2]=179802;c[g+4>>2]=523;c[g+8>>2]=180052;Y2(d,179783,g)|0;Pa(92528,1)}g=N4(c[h>>2]<<2)|0;c[23179]=g;if(!g){g=c[24742]|0;c[f>>2]=179802;c[f+4>>2]=527;c[f+8>>2]=180071;Y2(g,179783,f)|0;Pa(92528,1)}}c[23184]=c[h>>2];i=b;return}function PX(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+28|0;c[f>>2]=a;if((c[f>>2]|0)<=(c[23174]|0)){i=b;return}if(c[23173]|0){a=Q4(c[23173]|0,c[f>>2]<<2)|0;c[23173]=a;if(!a){a=c[24742]|0;c[d>>2]=179802;c[d+4>>2]=580;c[d+8>>2]=180029;Y2(a,179783,d)|0;Pa(92528,1)}}else{d=N4(c[f>>2]<<2)|0;c[23173]=d;if(!d){d=c[24742]|0;c[e>>2]=179802;c[e+4>>2]=573;c[e+8>>2]=180007;Y2(d,179783,e)|0;Pa(92528,1)}}c[23174]=c[f>>2];i=b;return}function QX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e+8|0;k=e;c[f>>2]=a;c[g>>2]=b;c[j>>2]=d;h[k>>3]=(+h[(c[f>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3])*(+h[c[j>>2]>>3]-+h[c[g>>2]>>3])-(+h[(c[j>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3])*(+h[c[f>>2]>>3]-+h[c[g>>2]>>3]);if(+h[k>>3]>0.0){l=1;i=e;return l|0}l=+h[k>>3]<0.0?2:3;i=e;return l|0}function RX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)<=3){_X(c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0);i=d;return}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[g>>2]|0)){l=10;break}c[j>>2]=((c[h>>2]|0)+1|0)%(c[g>>2]|0)|0;c[k>>2]=((c[h>>2]|0)+2|0)%(c[g>>2]|0)|0;b=(ZX(c[h>>2]|0,c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0)!=0;m=c[h>>2]|0;if(b)break;c[h>>2]=m+1}if((l|0)==10){l=c[24742]|0;c[e>>2]=179802;c[e+4>>2]=324;c[e+8>>2]=179947;Y2(l,179783,e)|0;i=d;return}_X(c[(c[f>>2]|0)+(m<<2)>>2]|0,c[(c[f>>2]|0)+(c[j>>2]<<2)>>2]|0,c[(c[f>>2]|0)+(c[k>>2]<<2)>>2]|0);c[h>>2]=c[j>>2];while(1){if((c[h>>2]|0)>=((c[g>>2]|0)-1|0))break;c[(c[f>>2]|0)+(c[h>>2]<<2)>>2]=c[(c[f>>2]|0)+((c[h>>2]|0)+1<<2)>>2];c[h>>2]=(c[h>>2]|0)+1}RX(c[f>>2]|0,(c[g>>2]|0)-1|0);i=d;return}function SX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;while(1){if((c[j>>2]|0)>=3)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=3)break;c[g>>2]=(c[23181]|0)+((c[e>>2]|0)*52|0);c[h>>2]=(c[23181]|0)+((c[f>>2]|0)*52|0);if((c[c[(c[g>>2]|0)+4+(c[j>>2]<<4)>>2]>>2]|0)==(c[c[(c[h>>2]|0)+4+(c[k>>2]<<4)>>2]>>2]|0)?(c[c[(c[g>>2]|0)+4+(c[j>>2]<<4)+4>>2]>>2]|0)==(c[c[(c[h>>2]|0)+4+(c[k>>2]<<4)+4>>2]>>2]|0):0)l=9;else l=7;if(((l|0)==7?(l=0,(c[c[(c[g>>2]|0)+4+(c[j>>2]<<4)>>2]>>2]|0)==(c[c[(c[h>>2]|0)+4+(c[k>>2]<<4)+4>>2]>>2]|0)):0)?(c[c[(c[g>>2]|0)+4+(c[j>>2]<<4)+4>>2]>>2]|0)==(c[c[(c[h>>2]|0)+4+(c[k>>2]<<4)>>2]>>2]|0):0)l=9;if((l|0)==9){l=0;c[(c[g>>2]|0)+4+(c[j>>2]<<4)+12>>2]=c[h>>2];c[(c[h>>2]|0)+4+(c[k>>2]<<4)+12>>2]=c[g>>2]}c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}i=d;return}function TX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;while(1){if((c[g>>2]|0)>=3)break;if((QX(c[c[(c[23181]|0)+((c[e>>2]|0)*52|0)+4+(c[g>>2]<<4)>>2]>>2]|0,c[c[(c[23181]|0)+((c[e>>2]|0)*52|0)+4+(c[g>>2]<<4)+4>>2]>>2]|0,c[f>>2]|0)|0)!=2)c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}i=d;return ((c[h>>2]|0)==3?1:(c[h>>2]|0)==0)&1|0}function UX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;if(c[(c[23181]|0)+((c[f>>2]|0)*52|0)>>2]|0){c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}c[(c[23181]|0)+((c[f>>2]|0)*52|0)>>2]=1;if((c[f>>2]|0)==(c[g>>2]|0)){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=3){k=11;break}if((c[(c[23181]|0)+((c[f>>2]|0)*52|0)+4+(c[h>>2]<<4)+12>>2]|0)!=0?(UX(((c[(c[23181]|0)+((c[f>>2]|0)*52|0)+4+(c[h>>2]<<4)+12>>2]|0)-(c[23181]|0)|0)/52|0,c[g>>2]|0)|0)!=0:0){k=9;break}c[h>>2]=(c[h>>2]|0)+1}if((k|0)==9){c[e>>2]=1;j=c[e>>2]|0;i=d;return j|0}else if((k|0)==11){c[(c[23181]|0)+((c[f>>2]|0)*52|0)>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=d;return j|0}return 0}function VX(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+28|0;c[f>>2]=a;if((c[f>>2]|0)<=(c[23182]|0)){i=b;return}if(c[23180]|0){a=Q4(c[23180]|0,c[f>>2]<<4)|0;c[23180]=a;if(!a){a=c[24742]|0;c[d>>2]=179802;c[d+4>>2]=599;c[d+8>>2]=179928;Y2(a,179783,d)|0;Pa(92528,1)}}else{d=N4(c[f>>2]<<4)|0;c[23180]=d;if(!d){d=c[24742]|0;c[e>>2]=179802;c[e+4>>2]=593;c[e+8>>2]=179910;Y2(d,179783,e)|0;Pa(92528,1)}}c[23182]=c[f>>2];i=b;return}function WX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=((c[23176]|0)-(c[23175]|0)|0)>=0;if((c[e>>2]|0)==1){if(b)c[(c[f>>2]|0)+4>>2]=c[(c[23173]|0)+(c[23175]<<2)>>2];c[23175]=(c[23175]|0)+-1;c[(c[23173]|0)+(c[23175]<<2)>>2]=c[f>>2];i=d;return}else{if(b)c[(c[f>>2]|0)+4>>2]=c[(c[23173]|0)+(c[23176]<<2)>>2];c[23176]=(c[23176]|0)+1;c[(c[23173]|0)+(c[23176]<<2)>>2]=c[f>>2];i=d;return}}function XX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[23175];while(1){if((c[f>>2]|0)>=(c[23177]|0))break;a=(QX(c[c[(c[23173]|0)+((c[f>>2]|0)+1<<2)>>2]>>2]|0,c[c[(c[23173]|0)+(c[f>>2]<<2)>>2]>>2]|0,c[c[e>>2]>>2]|0)|0)==1;g=c[f>>2]|0;if(a){h=4;break}c[f>>2]=g+1}if((h|0)==4){c[d>>2]=g;j=c[d>>2]|0;i=b;return j|0}c[f>>2]=c[23176];while(1){if((c[f>>2]|0)<=(c[23177]|0)){h=11;break}g=(QX(c[c[(c[23173]|0)+((c[f>>2]|0)-1<<2)>>2]>>2]|0,c[c[(c[23173]|0)+(c[f>>2]<<2)>>2]>>2]|0,c[c[e>>2]>>2]|0)|0)==2;k=c[f>>2]|0;if(g){h=9;break}c[f>>2]=k+-1}if((h|0)==9){c[d>>2]=k;j=c[d>>2]|0;i=b;return j|0}else if((h|0)==11){c[d>>2]=c[23177];j=c[d>>2]|0;i=b;return j|0}return 0}function YX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;if((c[e>>2]|0)==1){c[23176]=b;i=d;return}else{c[23175]=b;i=d;return}}function ZX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+48|0;g=f+36|0;h=f+32|0;j=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=((c[h>>2]|0)+1|0)%(c[l>>2]|0)|0;c[n>>2]=((c[h>>2]|0)+(c[l>>2]|0)-1|0)%(c[l>>2]|0)|0;e=(QX(c[c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]>>2]|0)|0)==1;d=c[c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]>>2]|0;b=c[c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]>>2]|0;if(e){if((QX(d,b,c[c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]>>2]|0)|0)==1)r=(QX(c[c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]>>2]|0)|0)==1;else r=0;c[q>>2]=r&1}else c[q>>2]=(QX(d,b,c[c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]>>2]|0)|0)==2&1;if(!(c[q>>2]|0)){c[g>>2]=0;s=c[g>>2]|0;i=f;return s|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[l>>2]|0)){t=17;break}c[p>>2]=((c[o>>2]|0)+1|0)%(c[l>>2]|0)|0;if(((((c[o>>2]|0)!=(c[h>>2]|0)?(c[p>>2]|0)!=(c[h>>2]|0):0)?(c[o>>2]|0)!=(c[j>>2]|0):0)?(c[p>>2]|0)!=(c[j>>2]|0):0)?(aY(c[c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]>>2]|0,c[c[(c[k>>2]|0)+(c[p>>2]<<2)>>2]>>2]|0)|0)!=0:0){t=15;break}c[o>>2]=(c[o>>2]|0)+1}if((t|0)==15){c[g>>2]=0;s=c[g>>2]|0;i=f;return s|0}else if((t|0)==17){c[g>>2]=1;s=c[g>>2]|0;i=f;return s|0}return 0}function _X(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[23172]|0)>=(c[23183]|0))$X((c[23183]|0)+20|0);d=c[23172]|0;c[23172]=d+1;c[j>>2]=(c[23181]|0)+(d*52|0);c[c[j>>2]>>2]=0;c[(c[j>>2]|0)+4>>2]=c[f>>2];c[(c[j>>2]|0)+4+4>>2]=c[g>>2];c[(c[j>>2]|0)+4+12>>2]=0;c[(c[j>>2]|0)+4+16>>2]=c[g>>2];c[(c[j>>2]|0)+4+16+4>>2]=c[h>>2];c[(c[j>>2]|0)+4+16+12>>2]=0;c[(c[j>>2]|0)+4+32>>2]=c[h>>2];c[(c[j>>2]|0)+4+32+4>>2]=c[f>>2];c[(c[j>>2]|0)+4+32+12>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=3)break;c[(c[j>>2]|0)+4+(c[k>>2]<<4)+8>>2]=c[j>>2];c[k>>2]=(c[k>>2]|0)+1}i=e;return}function $X(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+16|0;e=b;f=b+28|0;c[f>>2]=a;if((c[f>>2]|0)<=(c[23183]|0)){i=b;return}if(c[23181]|0){a=Q4(c[23181]|0,(c[f>>2]|0)*52|0)|0;c[23181]=a;if(!a){a=c[24742]|0;c[d>>2]=179802;c[d+4>>2]=558;c[d+8>>2]=179987;Y2(a,179783,d)|0;Pa(92528,1)}}else{d=N4((c[f>>2]|0)*52|0)|0;c[23181]=d;if(!d){d=c[24742]|0;c[e>>2]=179802;c[e+4>>2]=552;c[e+8>>2]=179968;Y2(d,179783,e)|0;Pa(92528,1)}}c[23183]=c[f>>2];i=b;return}function aY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((((QX(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)!=3?(QX(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0)|0)!=3:0)?(QX(c[k>>2]|0,c[l>>2]|0,c[h>>2]|0)|0)!=3:0)?(QX(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)!=3:0){e=(QX(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)==1;c[m>>2]=e?1:0;e=(QX(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0)|0)==1;c[n>>2]=e?1:0;e=(QX(c[k>>2]|0,c[l>>2]|0,c[h>>2]|0)|0)==1;c[o>>2]=e?1:0;e=(QX(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)==1;c[p>>2]=e?1:0;if(c[m>>2]^c[n>>2])q=(c[o>>2]^c[p>>2]|0)!=0;else q=0;c[g>>2]=q&1;r=c[g>>2]|0;i=f;return r|0}if((((bY(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)==0?(bY(c[h>>2]|0,c[j>>2]|0,c[l>>2]|0)|0)==0:0)?(bY(c[k>>2]|0,c[l>>2]|0,c[h>>2]|0)|0)==0:0)?(bY(c[k>>2]|0,c[l>>2]|0,c[j>>2]|0)|0)==0:0){c[g>>2]=0;r=c[g>>2]|0;i=f;return r|0}c[g>>2]=1;r=c[g>>2]|0;i=f;return r|0}function bY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e+44|0;g=e+40|0;j=e+36|0;k=e+32|0;l=e+16|0;m=e;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;h[l>>3]=+h[c[j>>2]>>3]-+h[c[g>>2]>>3];h[l+8>>3]=+h[(c[j>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3];h[m>>3]=+h[c[k>>2]>>3]-+h[c[g>>2]>>3];h[m+8>>3]=+h[(c[k>>2]|0)+8>>3]-+h[(c[g>>2]|0)+8>>3];if((QX(c[g>>2]|0,c[j>>2]|0,c[k>>2]|0)|0)!=3){c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}if(+h[m>>3]*+h[l>>3]+ +h[m+8>>3]*+h[l+8>>3]>=0.0)o=+h[m>>3]*+h[m>>3]+ +h[m+8>>3]*+h[m+8>>3]<=+h[l>>3]*+h[l>>3]+ +h[l+8>>3]*+h[l+8>>3];else o=0;c[f>>2]=o&1;n=c[f>>2]|0;i=e;return n|0}function cY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+64|0;g=f+52|0;j=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+28|0;p=f+24|0;q=f+20|0;r=f+16|0;s=f+8|0;t=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=N4(c[k>>2]<<2)|0;c[n>>2]=N4((c[k>>2]|0)+1<<3)|0;c[o>>2]=(c[n>>2]|0)+8;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[(c[m>>2]|0)+(c[q>>2]<<2)>>2]=-1;h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]=-+h[5507];c[q>>2]=(c[q>>2]|0)+1}h[(c[o>>2]|0)+-8>>3]=-(+h[5507]+1.0);c[p>>2]=c[g>>2];a:while(1){if((c[p>>2]|0)==(c[j>>2]|0))break;c[q>>2]=c[p>>2];g=(c[o>>2]|0)+(c[q>>2]<<3)|0;h[g>>3]=+h[g>>3]*-1.0;c[p>>2]=-1;if(+h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]==+h[5507])h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]=0.0;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[k>>2]|0))continue a;if(+h[(c[o>>2]|0)+(c[r>>2]<<3)>>3]<0.0){if((c[q>>2]|0)>=(c[r>>2]|0))h[t>>3]=+h[(c[(c[l>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3];else h[t>>3]=+h[(c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[q>>2]<<3)>>3];h[s>>3]=-(+h[(c[o>>2]|0)+(c[q>>2]<<3)>>3]+ +h[t>>3]);if(+h[t>>3]!=0.0?+h[(c[o>>2]|0)+(c[r>>2]<<3)>>3]<+h[s>>3]:0){h[(c[o>>2]|0)+(c[r>>2]<<3)>>3]=+h[s>>3];c[(c[m>>2]|0)+(c[r>>2]<<2)>>2]=c[q>>2]}if(+h[(c[o>>2]|0)+(c[r>>2]<<3)>>3]>+h[(c[o>>2]|0)+(c[p>>2]<<3)>>3])c[p>>2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}}O4(c[n>>2]|0);i=f;return c[m>>2]|0}function dY(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;j=i;i=i+80|0;k=j+16|0;l=j;m=j+64|0;n=j+60|0;o=j+56|0;p=j+52|0;q=j+48|0;r=j+44|0;s=j+40|0;t=j+36|0;u=j+32|0;c[n>>2]=b;c[o>>2]=d;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=c[(c[r>>2]|0)+4>>2];h=c[n>>2]|0;n=c[p>>2]|0;p=c[r>>2]|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];if(pY(l,h,k,n,p)|0){c[t>>2]=N4((c[s>>2]|0)+2<<2)|0;c[(c[t>>2]|0)+(c[s>>2]<<2)>>2]=(c[s>>2]|0)+1;c[(c[t>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=-1;c[m>>2]=c[t>>2];v=c[m>>2]|0;i=j;return v|0}else{c[u>>2]=c[(c[r>>2]|0)+24>>2];c[(c[u>>2]|0)+(c[s>>2]<<2)>>2]=c[q>>2];c[(c[u>>2]|0)+((c[s>>2]|0)+1<<2)>>2]=c[o>>2];c[m>>2]=cY((c[s>>2]|0)+1|0,c[s>>2]|0,(c[s>>2]|0)+2|0,c[u>>2]|0)|0;v=c[m>>2]|0;i=j;return v|0}return 0}function eY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;d=i;i=i+144|0;e=d+136|0;f=d+132|0;g=d+128|0;j=d+112|0;k=d+104|0;l=d+96|0;m=d+88|0;n=d+124|0;o=d+120|0;p=d+80|0;q=d+72|0;r=d+64|0;s=d+56|0;t=d+48|0;u=d+40|0;v=d+32|0;w=d+24|0;x=d+16|0;y=d+8|0;z=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=+h[(c[f>>2]|0)+24>>3];h[k>>3]=+h[(c[f>>2]|0)+16>>3];h[l>>3]=+h[(c[f>>2]|0)+8>>3];h[m>>3]=+h[c[f>>2]>>3];if(+h[j>>3]<1.0e-07&+h[j>>3]>-1.0e-07){c[e>>2]=fY(c[f>>2]|0,c[g>>2]|0)|0;A=c[e>>2]|0;i=d;return A|0}h[s>>3]=+h[k>>3]/(+h[j>>3]*3.0);h[t>>3]=+h[l>>3]/+h[j>>3];h[u>>3]=+h[m>>3]/+h[j>>3];h[p>>3]=+h[s>>3]*+h[s>>3];h[q>>3]=+h[s>>3]*2.0*+h[p>>3]-+h[s>>3]*+h[t>>3]+ +h[u>>3];h[p>>3]=+h[t>>3]/3.0-+h[p>>3];h[r>>3]=+h[q>>3]*+h[q>>3]+ +h[p>>3]*4.0*+h[p>>3]*+h[p>>3];B=+h[r>>3];do if(!(+h[r>>3]<0.0)){C=+O(+B);h[y>>3]=(C-+h[q>>3])*.5;h[z>>3]=-+h[q>>3]-+h[y>>3];C=+Y1(+h[y>>3]);D=C+ +Y1(+h[z>>3]);h[c[g>>2]>>3]=D;if(+h[r>>3]>0.0){c[n>>2]=1;break}else{D=+h[c[g>>2]>>3]*-.5;h[(c[g>>2]|0)+16>>3]=D;h[(c[g>>2]|0)+8>>3]=D;c[n>>2]=3;break}}else{h[v>>3]=+O(+(-B+ +h[q>>3]*+h[q>>3]))*.5;D=+O(+-+h[r>>3]);h[w>>3]=+W(+D,+-+h[q>>3]);h[x>>3]=+Y1(+h[v>>3])*2.0;D=+h[x>>3]*+Q(+(+h[w>>3]/3.0));h[c[g>>2]>>3]=D;D=+h[x>>3]*+Q(+((+h[w>>3]+3.141592653589793+3.141592653589793)/3.0));h[(c[g>>2]|0)+8>>3]=D;D=+h[x>>3]*+Q(+((+h[w>>3]-3.141592653589793-3.141592653589793)/3.0));h[(c[g>>2]|0)+16>>3]=D;c[n>>2]=3}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[n>>2]|0))break;w=(c[g>>2]|0)+(c[o>>2]<<3)|0;h[w>>3]=+h[w>>3]-+h[s>>3];c[o>>2]=(c[o>>2]|0)+1}c[e>>2]=c[n>>2];A=c[e>>2]|0;i=d;return A|0}function fY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0;d=i;i=i+64|0;e=d+56|0;f=d+52|0;g=d+48|0;j=d+40|0;k=d+32|0;l=d+24|0;m=d+16|0;n=d+8|0;o=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=+h[(c[f>>2]|0)+16>>3];h[k>>3]=+h[(c[f>>2]|0)+8>>3];h[l>>3]=+h[c[f>>2]>>3];if(+h[j>>3]<1.0e-07&+h[j>>3]>-1.0e-07){c[e>>2]=gY(c[f>>2]|0,c[g>>2]|0)|0;p=c[e>>2]|0;i=d;return p|0}h[n>>3]=+h[k>>3]/(+h[j>>3]*2.0);h[o>>3]=+h[l>>3]/+h[j>>3];h[m>>3]=+h[n>>3]*+h[n>>3]-+h[o>>3];if(+h[m>>3]<0.0){c[e>>2]=0;p=c[e>>2]|0;i=d;return p|0}q=-+h[n>>3];if(+h[m>>3]==0.0){h[c[g>>2]>>3]=q;c[e>>2]=1;p=c[e>>2]|0;i=d;return p|0}else{r=q+ +O(+(+h[m>>3]));h[c[g>>2]>>3]=r;h[(c[g>>2]|0)+8>>3]=+h[n>>3]*-2.0-+h[c[g>>2]>>3];c[e>>2]=2;p=c[e>>2]|0;i=d;return p|0}return 0}function gY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0,m=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d+8|0;k=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=+h[(c[f>>2]|0)+8>>3];h[k>>3]=+h[c[f>>2]>>3];l=+h[k>>3];if(!(+h[j>>3]<1.0e-07&+h[j>>3]>-1.0e-07)){h[c[g>>2]>>3]=-l/+h[j>>3];c[e>>2]=1;m=c[e>>2]|0;i=d;return m|0}if(l<1.0e-07&+h[k>>3]>-1.0e-07){c[e>>2]=4;m=c[e>>2]|0;i=d;return m|0}else{c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}return 0}function hY(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;c[h>>2]=4+(((c[a+4>>2]|0)-2|0)*3|0);if((c[h>>2]|0)>(c[23185]|0)){if(c[23186]|0)j=Q4(c[23186]|0,c[h>>2]<<4)|0;else j=N4(c[h>>2]<<4)|0;c[23186]=j;c[23185]=c[h>>2]}c[f>>2]=0;c[g>>2]=0;j=(c[23186]|0)+((c[g>>2]|0)+1<<4)|0;b=(c[23186]|0)+(c[g>>2]<<4)|0;k=(c[a>>2]|0)+(c[f>>2]<<4)|0;c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[g>>2]=(c[g>>2]|0)+2;c[f>>2]=(c[f>>2]|0)+1;while(1){l=c[g>>2]|0;if((c[f>>2]|0)>=((c[a+4>>2]|0)-1|0))break;b=(c[23186]|0)+(l+2<<4)|0;j=(c[23186]|0)+((c[g>>2]|0)+1<<4)|0;k=(c[23186]|0)+(c[g>>2]<<4)|0;m=(c[a>>2]|0)+(c[f>>2]<<4)|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];c[g>>2]=(c[g>>2]|0)+3;c[f>>2]=(c[f>>2]|0)+1}j=(c[23186]|0)+(l+1<<4)|0;l=(c[23186]|0)+(c[g>>2]<<4)|0;g=(c[a>>2]|0)+(c[f>>2]<<4)|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];c[j>>2]=c[l>>2];c[j+4>>2]=c[l+4>>2];c[j+8>>2]=c[l+8>>2];c[j+12>>2]=c[l+12>>2];c[(c[e>>2]|0)+4>>2]=c[h>>2];c[c[e>>2]>>2]=c[23186];i=d;return}function jY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;h[e>>3]=(+h[a+8>>3]-+h[b+8>>3])*(+h[c>>3]-+h[b>>3])-(+h[c+8>>3]-+h[b+8>>3])*(+h[a>>3]-+h[b>>3]);if(+h[e>>3]>.0001){f=1;i=d;return f|0}f=+h[e>>3]<-.0001?-1:0;i=d;return f|0}function kY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+16|0;f=e;if(+h[a>>3]!=+h[b>>3]){if(+h[a>>3]<+h[d>>3]?+h[d>>3]<+h[b>>3]:0)g=1;else if(+h[b>>3]<+h[d>>3])g=+h[d>>3]<+h[a>>3];else g=0;c[f>>2]=g&1;j=c[f>>2]|0;i=e;return j|0}else{if(+h[a+8>>3]<+h[d+8>>3]?+h[d+8>>3]<+h[b+8>>3]:0)k=1;else if(+h[b+8>>3]<+h[d+8>>3])k=+h[d+8>>3]<+h[a+8>>3];else k=0;c[f>>2]=k&1;j=c[f>>2]|0;i=e;return j|0}return 0}function lY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+80|0;g=f+32|0;h=f+16|0;j=f;k=f+64|0;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[l>>2]=jY(j,h,g)|0;if((c[l>>2]|0)==0?(c[j>>2]=c[a>>2],c[j+4>>2]=c[a+4>>2],c[j+8>>2]=c[a+8>>2],c[j+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[g>>2]=c[d>>2],c[g+4>>2]=c[d+4>>2],c[g+8>>2]=c[d+8>>2],c[g+12>>2]=c[d+12>>2],(kY(j,h,g)|0)!=0):0){c[k>>2]=1;p=c[k>>2]|0;i=f;return p|0};c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[m>>2]=jY(j,h,g)|0;if((c[m>>2]|0)==0?(c[j>>2]=c[a>>2],c[j+4>>2]=c[a+4>>2],c[j+8>>2]=c[a+8>>2],c[j+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],(kY(j,h,g)|0)!=0):0){c[k>>2]=1;p=c[k>>2]|0;i=f;return p|0};c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[n>>2]=jY(j,h,g)|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[o>>2]=jY(j,h,g)|0;if((_(c[l>>2]|0,c[m>>2]|0)|0)<0)q=(_(c[n>>2]|0,c[o>>2]|0)|0)<0;else q=0;c[k>>2]=q&1;p=c[k>>2]|0;i=f;return p|0}function mY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=i;i=i+16|0;d=c+8|0;e=c;h[d>>3]=+h[a>>3]-+h[b>>3];h[e>>3]=+h[a+8>>3]-+h[b+8>>3];i=c;return +(+h[d>>3]*+h[d>>3]+ +h[e>>3]*+h[e>>3])}function nY(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=qY(c[(c[d>>2]|0)+4>>2]|0,2)|0;c[(c[d>>2]|0)+24>>2]=a;rY(c[d>>2]|0,0);i=b;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=i;i=i+128|0;f=e+72|0;g=e+56|0;j=e+40|0;k=e+24|0;l=e+124|0;m=e+120|0;n=e+116|0;o=e+112|0;p=e+108|0;q=e+104|0;r=e+100|0;s=e+96|0;t=e+92|0;u=e+88|0;v=e+8|0;w=e;c[l>>2]=a;c[m>>2]=b;c[n>>2]=c[(c[l>>2]|0)+4>>2];c[o>>2]=c[(c[l>>2]|0)+8>>2];c[p>>2]=c[(c[l>>2]|0)+16>>2];c[q>>2]=c[(c[l>>2]|0)+20>>2];c[u>>2]=N4((c[n>>2]|0)+2<<3)|0;if((c[m>>2]|0)==-2222){b=c[l>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[m>>2]=sY(b,f)|0}if((c[m>>2]|0)>=0){c[s>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+(c[m>>2]<<2)>>2];c[t>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+((c[m>>2]|0)+1<<2)>>2]}else{c[s>>2]=c[n>>2];c[t>>2]=c[n>>2]}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[s>>2]|0))break;m=(c[o>>2]|0)+(c[r>>2]<<4)|0;c[v>>2]=c[m>>2];c[v+4>>2]=c[m+4>>2];c[v+8>>2]=c[m+8>>2];c[v+12>>2]=c[m+12>>2];m=(c[o>>2]|0)+(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]<<4)|0;l=(c[o>>2]|0)+(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]<<4)|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[j>>2]=c[v>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[j+12>>2]=c[v+12>>2];c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if((tY(k,j,g,f)|0)!=0?(l=c[s>>2]|0,m=c[t>>2]|0,b=c[n>>2]|0,a=c[o>>2]|0,x=c[p>>2]|0,y=c[q>>2]|0,c[g>>2]=c[d>>2],c[g+4>>2]=c[d+4>>2],c[g+8>>2]=c[d+8>>2],c[g+12>>2]=c[d+12>>2],c[f>>2]=c[v>>2],c[f+4>>2]=c[v+4>>2],c[f+8>>2]=c[v+8>>2],c[f+12>>2]=c[v+12>>2],(uY(g,f,l,m,b,a,x,y)|0)!=0):0){c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[f>>2]=c[v>>2];c[f+4>>2]=c[v+4>>2];c[f+8>>2]=c[v+8>>2];c[f+12>>2]=c[v+12>>2];h[w>>3]=+vY(g,f);h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=+h[w>>3]}else h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=0.0;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=c[s>>2];while(1){if((c[r>>2]|0)>=(c[t>>2]|0))break;h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=0.0;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>=(c[n>>2]|0))break;y=(c[o>>2]|0)+(c[r>>2]<<4)|0;c[v>>2]=c[y>>2];c[v+4>>2]=c[y+4>>2];c[v+8>>2]=c[y+8>>2];c[v+12>>2]=c[y+12>>2];y=(c[o>>2]|0)+(c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]<<4)|0;x=(c[o>>2]|0)+(c[(c[p>>2]|0)+(c[r>>2]<<2)>>2]<<4)|0;c[k>>2]=c[y>>2];c[k+4>>2]=c[y+4>>2];c[k+8>>2]=c[y+8>>2];c[k+12>>2]=c[y+12>>2];c[j>>2]=c[v>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[j+12>>2]=c[v+12>>2];c[g>>2]=c[x>>2];c[g+4>>2]=c[x+4>>2];c[g+8>>2]=c[x+8>>2];c[g+12>>2]=c[x+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if((tY(k,j,g,f)|0)!=0?(x=c[s>>2]|0,y=c[t>>2]|0,a=c[n>>2]|0,b=c[o>>2]|0,m=c[p>>2]|0,l=c[q>>2]|0,c[g>>2]=c[d>>2],c[g+4>>2]=c[d+4>>2],c[g+8>>2]=c[d+8>>2],c[g+12>>2]=c[d+12>>2],c[f>>2]=c[v>>2],c[f+4>>2]=c[v+4>>2],c[f+8>>2]=c[v+8>>2],c[f+12>>2]=c[v+12>>2],(uY(g,f,x,y,a,b,m,l)|0)!=0):0){c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[f>>2]=c[v>>2];c[f+4>>2]=c[v+4>>2];c[f+8>>2]=c[v+8>>2];c[f+12>>2]=c[v+12>>2];h[w>>3]=+vY(g,f);h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=+h[w>>3]}else h[(c[u>>2]|0)+(c[r>>2]<<3)>>3]=0.0;c[r>>2]=(c[r>>2]|0)+1}h[(c[u>>2]|0)+(c[n>>2]<<3)>>3]=0.0;h[(c[u>>2]|0)+((c[n>>2]|0)+1<<3)>>3]=0.0;i=e;return c[u>>2]|0}function pY(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=i;i=i+112|0;h=g+48|0;j=g+32|0;k=g+16|0;l=g;m=g+108|0;n=g+104|0;o=g+100|0;p=g+96|0;q=g+92|0;r=g+88|0;s=g+84|0;t=g+80|0;u=g+76|0;v=g+72|0;w=g+68|0;x=g+64|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=c[(c[p>>2]|0)+4>>2];c[r>>2]=c[(c[p>>2]|0)+8>>2];c[s>>2]=c[(c[p>>2]|0)+16>>2];do if((c[n>>2]|0)<0){c[u>>2]=0;c[v>>2]=0;if((c[o>>2]|0)<0){c[w>>2]=0;c[x>>2]=0;break}else{c[w>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[o>>2]<<2)>>2];c[x>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[o>>2]|0)+1<<2)>>2];break}}else{if((c[o>>2]|0)<0){c[u>>2]=0;c[v>>2]=0;c[w>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[n>>2]<<2)>>2];c[x>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[n>>2]|0)+1<<2)>>2];break}if((c[n>>2]|0)<=(c[o>>2]|0)){c[u>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[n>>2]<<2)>>2];c[v>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[n>>2]|0)+1<<2)>>2];c[w>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[o>>2]<<2)>>2];c[x>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[o>>2]|0)+1<<2)>>2];break}else{c[u>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[o>>2]<<2)>>2];c[v>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[o>>2]|0)+1<<2)>>2];c[w>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+(c[n>>2]<<2)>>2];c[x>>2]=c[(c[(c[p>>2]|0)+12>>2]|0)+((c[n>>2]|0)+1<<2)>>2];break}}while(0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[u>>2]|0))break;n=(c[r>>2]|0)+(c[t>>2]<<4)|0;p=(c[r>>2]|0)+(c[(c[s>>2]|0)+(c[t>>2]<<2)>>2]<<4)|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];if(lY(l,k,j,h)|0){y=13;break}c[t>>2]=(c[t>>2]|0)+1}if((y|0)==13){c[m>>2]=0;z=c[m>>2]|0;i=g;return z|0}c[t>>2]=c[v>>2];while(1){if((c[t>>2]|0)>=(c[w>>2]|0))break;v=(c[r>>2]|0)+(c[t>>2]<<4)|0;u=(c[r>>2]|0)+(c[(c[s>>2]|0)+(c[t>>2]<<2)>>2]<<4)|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[j>>2]=c[v>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[j+12>>2]=c[v+12>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];c[h+8>>2]=c[u+8>>2];c[h+12>>2]=c[u+12>>2];if(lY(l,k,j,h)|0){y=18;break}c[t>>2]=(c[t>>2]|0)+1}if((y|0)==18){c[m>>2]=0;z=c[m>>2]|0;i=g;return z|0}c[t>>2]=c[x>>2];while(1){if((c[t>>2]|0)>=(c[q>>2]|0)){y=25;break}x=(c[r>>2]|0)+(c[t>>2]<<4)|0;w=(c[r>>2]|0)+(c[(c[s>>2]|0)+(c[t>>2]<<2)>>2]<<4)|0;c[l>>2]=c[a>>2];c[l+4>>2]=c[a+4>>2];c[l+8>>2]=c[a+8>>2];c[l+12>>2]=c[a+12>>2];c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[j+12>>2]=c[x+12>>2];c[h>>2]=c[w>>2];c[h+4>>2]=c[w+4>>2];c[h+8>>2]=c[w+8>>2];c[h+12>>2]=c[w+12>>2];if(lY(l,k,j,h)|0){y=23;break}c[t>>2]=(c[t>>2]|0)+1}if((y|0)==23){c[m>>2]=0;z=c[m>>2]|0;i=g;return z|0}else if((y|0)==25){c[m>>2]=1;z=c[m>>2]|0;i=g;return z|0}return 0}function qY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=N4((c[e>>2]|0)+(c[f>>2]|0)<<2)|0;c[j>>2]=P4(_(c[e>>2]|0,c[e>>2]|0)|0,8)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[e>>2]|0))break;c[(c[h>>2]|0)+(c[g>>2]<<2)>>2]=c[j>>2];c[j>>2]=(c[j>>2]|0)+(c[e>>2]<<3);c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=c[e>>2];while(1){if((c[g>>2]|0)>=((c[e>>2]|0)+(c[f>>2]|0)|0))break;c[(c[h>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}i=d;return c[h>>2]|0}function rY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=i;i=i+80|0;e=d+24|0;f=d+8|0;g=d+76|0;j=d+72|0;k=d+68|0;l=d+64|0;m=d+60|0;n=d+56|0;o=d+52|0;p=d+48|0;q=d+44|0;r=d+40|0;s=d;c[g>>2]=a;c[j>>2]=b;c[k>>2]=c[(c[g>>2]|0)+4>>2];c[l>>2]=c[(c[g>>2]|0)+8>>2];c[m>>2]=c[(c[g>>2]|0)+16>>2];c[n>>2]=c[(c[g>>2]|0)+20>>2];c[o>>2]=c[(c[g>>2]|0)+24>>2];c[q>>2]=c[j>>2];while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[r>>2]=c[(c[n>>2]|0)+(c[q>>2]<<2)>>2];j=(c[l>>2]|0)+(c[q>>2]<<4)|0;g=(c[l>>2]|0)+(c[r>>2]<<4)|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];h[s>>3]=+vY(f,e);h[(c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[r>>2]<<3)>>3]=+h[s>>3];h[(c[(c[o>>2]|0)+(c[r>>2]<<2)>>2]|0)+(c[q>>2]<<3)>>3]=+h[s>>3];g=c[q>>2]|0;if((c[r>>2]|0)==((c[q>>2]|0)-1|0))c[p>>2]=g-2;else c[p>>2]=g-1;while(1){t=c[q>>2]|0;if((c[p>>2]|0)<0)break;if(((wY(t,c[p>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)!=0?(wY(c[p>>2]|0,c[q>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)!=0:0)?(g=(c[l>>2]|0)+(c[q>>2]<<4)|0,j=(c[l>>2]|0)+(c[p>>2]<<4)|0,b=c[k>>2]|0,a=c[k>>2]|0,u=c[k>>2]|0,v=c[l>>2]|0,w=c[m>>2]|0,x=c[n>>2]|0,c[f>>2]=c[g>>2],c[f+4>>2]=c[g+4>>2],c[f+8>>2]=c[g+8>>2],c[f+12>>2]=c[g+12>>2],c[e>>2]=c[j>>2],c[e+4>>2]=c[j+4>>2],c[e+8>>2]=c[j+8>>2],c[e+12>>2]=c[j+12>>2],(uY(f,e,b,a,u,v,w,x)|0)!=0):0){x=(c[l>>2]|0)+(c[q>>2]<<4)|0;w=(c[l>>2]|0)+(c[p>>2]<<4)|0;c[f>>2]=c[x>>2];c[f+4>>2]=c[x+4>>2];c[f+8>>2]=c[x+8>>2];c[f+12>>2]=c[x+12>>2];c[e>>2]=c[w>>2];c[e+4>>2]=c[w+4>>2];c[e+8>>2]=c[w+8>>2];c[e+12>>2]=c[w+12>>2];h[s>>3]=+vY(f,e);h[(c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]|0)+(c[p>>2]<<3)>>3]=+h[s>>3];h[(c[(c[o>>2]|0)+(c[p>>2]<<2)>>2]|0)+(c[q>>2]<<3)>>3]=+h[s>>3]}c[p>>2]=(c[p>>2]|0)+-1}c[q>>2]=t+1}i=d;return}function sY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;e=d;f=d+40|0;g=d+32|0;h=d+28|0;j=d+24|0;k=d+16|0;c[h>>2]=a;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[c[h>>2]>>2]|0)){l=6;break}c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]<<4);c[k+4>>2]=(c[(c[(c[h>>2]|0)+12>>2]|0)+((c[j>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<2)>>2]|0);c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];a=(qX(f,e)|0)!=0;m=c[j>>2]|0;if(a){l=4;break}c[j>>2]=m+1}if((l|0)==4){c[g>>2]=m;n=c[g>>2]|0;i=d;return n|0}else if((l|0)==6){c[g>>2]=-1111;n=c[g>>2]|0;i=d;return n|0}return 0}function tY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+64|0;g=f+32|0;h=f+16|0;j=f;k=f+56|0;l=f+52|0;m=f+48|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[l>>2]=jY(j,h,g)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[m>>2]=jY(j,h,g)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];d=(jY(j,h,g)|0)>0;g=(c[l>>2]|0)>=0;l=(c[m>>2]|0)>=0;if(d){c[k>>2]=(g?l:0)&1;n=c[k>>2]|0;i=f;return n|0}else{c[k>>2]=(g?1:l)&1;n=c[k>>2]|0;i=f;return n|0}return 0}function uY(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;k=i;i=i+96|0;l=k+48|0;m=k+32|0;n=k+16|0;o=k;p=k+92|0;q=k+88|0;r=k+84|0;s=k+80|0;t=k+76|0;u=k+72|0;v=k+64|0;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[k+68>>2]=j;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[q>>2]|0))break;j=(c[t>>2]|0)+(c[v>>2]<<4)|0;h=(c[t>>2]|0)+(c[(c[u>>2]|0)+(c[v>>2]<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[m+12>>2]=c[j+12>>2];c[l>>2]=c[h>>2];c[l+4>>2]=c[h+4>>2];c[l+8>>2]=c[h+8>>2];c[l+12>>2]=c[h+12>>2];if(lY(o,n,m,l)|0){w=4;break}c[v>>2]=(c[v>>2]|0)+1}if((w|0)==4){c[p>>2]=0;x=c[p>>2]|0;i=k;return x|0}c[v>>2]=c[r>>2];while(1){if((c[v>>2]|0)>=(c[s>>2]|0)){w=11;break}r=(c[t>>2]|0)+(c[v>>2]<<4)|0;q=(c[t>>2]|0)+(c[(c[u>>2]|0)+(c[v>>2]<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];c[l>>2]=c[q>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[l+12>>2]=c[q+12>>2];if(lY(o,n,m,l)|0){w=9;break}c[v>>2]=(c[v>>2]|0)+1}if((w|0)==9){c[p>>2]=0;x=c[p>>2]|0;i=k;return x|0}else if((w|0)==11){c[p>>2]=1;x=c[p>>2]|0;i=k;return x|0}return 0}function vY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+32|0;e=d+16|0;f=d;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];g=+O(+(+mY(f,e)));i=d;return +g}function wY(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+96|0;h=g+48|0;j=g+32|0;k=g+16|0;l=g;m=g+80|0;n=g+76|0;o=g+72|0;p=g+68|0;q=g+64|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;f=(c[o>>2]|0)+(c[(c[q>>2]|0)+(c[m>>2]<<2)>>2]<<4)|0;q=(c[o>>2]|0)+(c[m>>2]<<4)|0;e=(c[o>>2]|0)+(c[(c[p>>2]|0)+(c[m>>2]<<2)>>2]<<4)|0;m=(c[o>>2]|0)+(c[n>>2]<<4)|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[h>>2]=c[m>>2];c[h+4>>2]=c[m+4>>2];c[h+8>>2]=c[m+8>>2];c[h+12>>2]=c[m+12>>2];m=tY(l,k,j,h)|0;i=g;return m|0}function xY(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=yY(c[d>>2]|0,0,0)|0;i=b;return a|0}function yY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=JY(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,0)|0;i=e;return d|0}function zY(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=b;if(!(c[e>>2]|0)){i=d;return}c[f>>2]=c[(c[e>>2]|0)+364>>2];while(1){if(!(c[f>>2]|0)){k=c[e>>2]|0;if(!(c[(c[e>>2]|0)+368>>2]|0))break;c[f>>2]=c[k+368>>2];c[(c[e>>2]|0)+368>>2]=0}c[h>>2]=c[f>>2];c[f>>2]=c[c[f>>2]>>2];Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[h>>2]|0)+36>>2]|0);OY(c[(c[h>>2]|0)+44>>2]|0,c[e>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[h>>2]|0)}c[g>>2]=c[k+300>>2];while(1){if(!(c[g>>2]|0)){l=c[e>>2]|0;if(!(c[(c[e>>2]|0)+304>>2]|0))break;c[g>>2]=c[l+304>>2];c[(c[e>>2]|0)+304>>2]=0}c[j>>2]=c[g>>2];c[g>>2]=c[(c[g>>2]|0)+8>>2];Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[j>>2]|0)}OY(c[l+376>>2]|0,c[e>>2]|0);OY(c[(c[e>>2]|0)+372>>2]|0,c[e>>2]|0);PY((c[e>>2]|0)+416|0);PY((c[e>>2]|0)+440|0);if((a[(c[e>>2]|0)+488>>0]|0)==0?(c[(c[e>>2]|0)+356>>2]|0)!=0:0)QY(c[(c[e>>2]|0)+356>>2]|0,((c[(c[e>>2]|0)+476>>2]|0)!=0^1)&1,(c[e>>2]|0)+12|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+392>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+464>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+8>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+44>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+396>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[(c[e>>2]|0)+240>>2]|0);if(c[(c[e>>2]|0)+252>>2]|0)Bb[c[(c[e>>2]|0)+252>>2]&127](c[(c[e>>2]|0)+244>>2]|0);Bb[c[(c[e>>2]|0)+12+8>>2]&127](c[e>>2]|0);i=d;return}function AY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[e>>2]|0)+4>>2]|0)==(c[c[e>>2]>>2]|0);a=c[f>>2]|0;c[c[e>>2]>>2]=a;if(!b){i=d;return}c[(c[e>>2]|0)+4>>2]=a;i=d;return}function BY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[(c[f>>2]|0)+52>>2]=c[g>>2];c[(c[f>>2]|0)+56>>2]=c[h>>2];i=e;return}function CY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+60>>2]=c[f>>2];i=d;return}function DY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;switch(c[(c[j>>2]|0)+480>>2]|0){case 3:{c[(c[j>>2]|0)+284>>2]=33;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}case 2:{c[(c[j>>2]|0)+284>>2]=36;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}case 0:{if((c[(c[j>>2]|0)+476>>2]|0)==0?(RY(c[j>>2]|0)|0)<<24>>24==0:0){c[(c[j>>2]|0)+284>>2]=1;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}break}default:{}}c[(c[j>>2]|0)+480>>2]=1;if(c[l>>2]|0){c[n>>2]=EY(c[j>>2]|0,c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else{Z4(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[h>>2]=FY(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}}a[(c[j>>2]|0)+480+4>>0]=c[m>>2];if(!(c[m>>2]|0)){c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}c[(c[j>>2]|0)+296>>2]=c[(c[j>>2]|0)+24>>2];c[(c[j>>2]|0)+40>>2]=c[(c[j>>2]|0)+28>>2];m=Sb[c[(c[j>>2]|0)+280>>2]&127](c[j>>2]|0,c[(c[j>>2]|0)+24>>2]|0,c[(c[j>>2]|0)+40>>2]|0,(c[j>>2]|0)+24|0)|0;c[(c[j>>2]|0)+284>>2]=m;m=c[j>>2]|0;if(c[(c[j>>2]|0)+284>>2]|0){c[(c[j>>2]|0)+292>>2]=c[m+288>>2];c[(c[j>>2]|0)+280>>2]=56;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}switch(c[m+480>>2]|0){case 3:{Vb[c[(c[(c[j>>2]|0)+144>>2]|0)+52>>2]&31](c[(c[j>>2]|0)+144>>2]|0,c[(c[j>>2]|0)+296>>2]|0,c[(c[j>>2]|0)+24>>2]|0,(c[j>>2]|0)+408|0);c[(c[j>>2]|0)+296>>2]=c[(c[j>>2]|0)+24>>2];c[h>>2]=2;o=c[h>>2]|0;i=g;return o|0}case 1:case 0:{c[(c[j>>2]|0)+480>>2]=2;break}default:{}}c[h>>2]=1;o=c[h>>2]|0;i=g;return o|0}function EY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[f>>2]=a;c[g>>2]=b;switch(c[(c[f>>2]|0)+480>>2]|0){case 3:{c[(c[f>>2]|0)+284>>2]=33;c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}case 2:{c[(c[f>>2]|0)+284>>2]=36;c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}default:{if((c[g>>2]|0)>((c[(c[f>>2]|0)+32>>2]|0)-(c[(c[f>>2]|0)+28>>2]|0)|0)){c[h>>2]=(c[g>>2]|0)+((c[(c[f>>2]|0)+28>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0));g=(c[(c[f>>2]|0)+24>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)|0;c[j>>2]=g;c[j>>2]=(c[j>>2]|0)>1024?1024:g;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);do if((c[h>>2]|0)<=((c[(c[f>>2]|0)+32>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)|0)){if((c[j>>2]|0)<((c[(c[f>>2]|0)+24>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)|0)){c[k>>2]=(c[(c[f>>2]|0)+24>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)-(c[j>>2]|0);_4(c[(c[f>>2]|0)+8>>2]|0,(c[(c[f>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0,(c[(c[f>>2]|0)+28>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0)+(c[j>>2]|0)|0)|0;g=(c[f>>2]|0)+28|0;c[g>>2]=(c[g>>2]|0)+(0-(c[k>>2]|0));g=(c[f>>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)+(0-(c[k>>2]|0))}}else{g=(c[(c[f>>2]|0)+32>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0)|0;c[m>>2]=g;c[m>>2]=(c[m>>2]|0)==0?1024:g;do c[m>>2]=c[m>>2]<<1;while((c[m>>2]|0)<(c[h>>2]|0));c[l>>2]=Fb[c[(c[f>>2]|0)+12>>2]&63](c[m>>2]|0)|0;if(!(c[l>>2]|0)){c[(c[f>>2]|0)+284>>2]=1;c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}c[(c[f>>2]|0)+32>>2]=(c[l>>2]|0)+(c[m>>2]|0);if(c[(c[f>>2]|0)+24>>2]|0){g=(c[(c[f>>2]|0)+24>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)|0;c[n>>2]=g;c[n>>2]=(c[n>>2]|0)>1024?1024:g;Z4(c[l>>2]|0,(c[(c[f>>2]|0)+24>>2]|0)+(0-(c[n>>2]|0))|0,(c[(c[f>>2]|0)+28>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]|0)|0)|0;Bb[c[(c[f>>2]|0)+12+8>>2]&127](c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+8>>2]=c[l>>2];c[(c[f>>2]|0)+28>>2]=(c[(c[f>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+28>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0))+(c[n>>2]|0);c[(c[f>>2]|0)+24>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[n>>2]|0);break}else{c[(c[f>>2]|0)+28>>2]=(c[l>>2]|0)+((c[(c[f>>2]|0)+28>>2]|0)-(c[(c[f>>2]|0)+24>>2]|0));g=c[l>>2]|0;c[(c[f>>2]|0)+8>>2]=g;c[(c[f>>2]|0)+24>>2]=g;break}}while(0);c[(c[f>>2]|0)+292>>2]=0;c[(c[f>>2]|0)+288>>2]=0;c[(c[f>>2]|0)+296>>2]=0}c[e>>2]=c[(c[f>>2]|0)+28>>2];o=c[e>>2]|0;i=d;return o|0}}return 0}function FY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=1;switch(c[(c[h>>2]|0)+480>>2]|0){case 3:{c[(c[h>>2]|0)+284>>2]=33;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}case 2:{c[(c[h>>2]|0)+284>>2]=36;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}case 0:{if((c[(c[h>>2]|0)+476>>2]|0)==0?(RY(c[h>>2]|0)|0)<<24>>24==0:0){c[(c[h>>2]|0)+284>>2]=1;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}break}default:{}}c[(c[h>>2]|0)+480>>2]=1;c[l>>2]=c[(c[h>>2]|0)+24>>2];c[(c[h>>2]|0)+296>>2]=c[l>>2];e=(c[h>>2]|0)+28|0;c[e>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|0)+40>>2]=c[(c[h>>2]|0)+28>>2];e=(c[h>>2]|0)+36|0;c[e>>2]=(c[e>>2]|0)+(c[j>>2]|0);a[(c[h>>2]|0)+480+4>>0]=c[k>>2];j=Sb[c[(c[h>>2]|0)+280>>2]&127](c[h>>2]|0,c[l>>2]|0,c[(c[h>>2]|0)+40>>2]|0,(c[h>>2]|0)+24|0)|0;c[(c[h>>2]|0)+284>>2]=j;j=c[h>>2]|0;if(c[(c[h>>2]|0)+284>>2]|0){c[(c[h>>2]|0)+292>>2]=c[j+288>>2];c[(c[h>>2]|0)+280>>2]=56;c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}switch(c[j+480>>2]|0){case 3:{c[m>>2]=2;break}case 1:case 0:{if(c[k>>2]|0){c[(c[h>>2]|0)+480>>2]=2;c[g>>2]=c[m>>2];n=c[g>>2]|0;i=f;return n|0}break}default:{}}Vb[c[(c[(c[h>>2]|0)+144>>2]|0)+52>>2]&31](c[(c[h>>2]|0)+144>>2]|0,c[(c[h>>2]|0)+296>>2]|0,c[(c[h>>2]|0)+24>>2]|0,(c[h>>2]|0)+408|0);c[(c[h>>2]|0)+296>>2]=c[(c[h>>2]|0)+24>>2];c[g>>2]=c[m>>2];n=c[g>>2]|0;i=f;return n|0}function GY(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;i=b;return c[(c[d>>2]|0)+284>>2]|0}function HY(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[d>>2]|0)+288>>2]|0)!=0?(c[(c[d>>2]|0)+288>>2]|0)>>>0>=(c[(c[d>>2]|0)+296>>2]|0)>>>0:0){Vb[c[(c[(c[d>>2]|0)+144>>2]|0)+52>>2]&31](c[(c[d>>2]|0)+144>>2]|0,c[(c[d>>2]|0)+296>>2]|0,c[(c[d>>2]|0)+288>>2]|0,(c[d>>2]|0)+408|0);c[(c[d>>2]|0)+296>>2]=c[(c[d>>2]|0)+288>>2]}i=b;return (c[(c[d>>2]|0)+408>>2]|0)+1|0}function IY(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;if((c[e>>2]|0)>>>0>0&(c[e>>2]|0)>>>0<41){c[d>>2]=c[92748+(c[e>>2]<<2)>>2];f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}return 0}function JY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+28|0;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(c[k>>2]|0){c[n>>2]=Fb[c[c[k>>2]>>2]&63](500)|0;if(c[n>>2]|0){c[o>>2]=(c[n>>2]|0)+12;c[c[o>>2]>>2]=c[c[k>>2]>>2];c[(c[o>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[o>>2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2]}}else{c[n>>2]=N4(500)|0;if(c[n>>2]|0){c[p>>2]=(c[n>>2]|0)+12;c[c[p>>2]>>2]=35;c[(c[p>>2]|0)+4>>2]=107;c[(c[p>>2]|0)+8>>2]=96}}p=c[n>>2]|0;if(!(c[n>>2]|0)){c[h>>2]=p;q=c[h>>2]|0;i=g;return q|0}c[p+8>>2]=0;c[(c[n>>2]|0)+32>>2]=0;c[(c[n>>2]|0)+380>>2]=16;p=Fb[c[(c[n>>2]|0)+12>>2]&63](c[(c[n>>2]|0)+380>>2]<<4)|0;c[(c[n>>2]|0)+392>>2]=p;p=(c[n>>2]|0)+12|0;if(!(c[(c[n>>2]|0)+392>>2]|0)){Bb[c[p+8>>2]&127](c[n>>2]|0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}k=Fb[c[p>>2]&63](1024)|0;c[(c[n>>2]|0)+44>>2]=k;k=c[n>>2]|0;if(!(c[(c[n>>2]|0)+44>>2]|0)){Bb[c[k+12+8>>2]&127](c[(c[n>>2]|0)+392>>2]|0);Bb[c[(c[n>>2]|0)+12+8>>2]&127](c[n>>2]|0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}c[(c[n>>2]|0)+48>>2]=(c[k+44>>2]|0)+1024;if(!(c[m>>2]|0)){k=LZ((c[n>>2]|0)+12|0)|0;c[(c[n>>2]|0)+356>>2]=k;if(!(c[(c[n>>2]|0)+356>>2]|0)){Bb[c[(c[n>>2]|0)+12+8>>2]&127](c[(c[n>>2]|0)+44>>2]|0);Bb[c[(c[n>>2]|0)+12+8>>2]&127](c[(c[n>>2]|0)+392>>2]|0);Bb[c[(c[n>>2]|0)+12+8>>2]&127](c[n>>2]|0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}}else c[(c[n>>2]|0)+356>>2]=c[m>>2];c[(c[n>>2]|0)+376>>2]=0;c[(c[n>>2]|0)+368>>2]=0;c[(c[n>>2]|0)+304>>2]=0;c[(c[n>>2]|0)+468>>2]=0;c[(c[n>>2]|0)+464>>2]=0;c[(c[n>>2]|0)+124>>2]=0;c[(c[n>>2]|0)+248>>2]=0;a[(c[n>>2]|0)+472>>0]=33;a[(c[n>>2]|0)+236>>0]=0;a[(c[n>>2]|0)+237>>0]=0;c[(c[n>>2]|0)+396>>2]=0;c[(c[n>>2]|0)+400>>2]=0;a[(c[n>>2]|0)+404>>0]=0;MZ((c[n>>2]|0)+416|0,(c[n>>2]|0)+12|0);MZ((c[n>>2]|0)+440|0,(c[n>>2]|0)+12|0);LY(c[n>>2]|0,c[j>>2]|0);if((c[j>>2]|0)!=0?(c[(c[n>>2]|0)+232>>2]|0)==0:0){zY(c[n>>2]|0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}if(c[l>>2]|0){a[(c[n>>2]|0)+236>>0]=1;j=UZ()|0;c[(c[n>>2]|0)+228>>2]=j;a[(c[n>>2]|0)+472>>0]=a[c[l>>2]>>0]|0}else{l=RZ()|0;c[(c[n>>2]|0)+228>>2]=l}c[h>>2]=c[n>>2];q=c[h>>2]|0;i=g;return q|0}function KY(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;a=c[c[d>>2]>>2]|0;a:do if(c[(c[d>>2]|0)+4>>2]|0){c[e>>2]=a;while(1){if(!(c[e>>2]|0))break a;c[f>>2]=c[c[e>>2]>>2];c[c[e>>2]>>2]=c[(c[d>>2]|0)+4>>2];c[(c[d>>2]|0)+4>>2]=c[e>>2];c[e>>2]=c[f>>2]}}else c[(c[d>>2]|0)+4>>2]=a;while(0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function LY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+280>>2]=57;n0((c[f>>2]|0)+256|0);if(c[g>>2]|0)h=MY((c[f>>2]|0)+416|0,c[g>>2]|0)|0;else h=0;c[(c[f>>2]|0)+232>>2]=h;c[(c[f>>2]|0)+360>>2]=0;SZ((c[f>>2]|0)+148|0,(c[f>>2]|0)+144|0,0)|0;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+52>>2]=0;c[(c[f>>2]|0)+56>>2]=0;c[(c[f>>2]|0)+60>>2]=0;c[(c[f>>2]|0)+64>>2]=0;c[(c[f>>2]|0)+68>>2]=0;c[(c[f>>2]|0)+72>>2]=0;c[(c[f>>2]|0)+76>>2]=0;c[(c[f>>2]|0)+80>>2]=0;c[(c[f>>2]|0)+84>>2]=0;c[(c[f>>2]|0)+88>>2]=0;c[(c[f>>2]|0)+92>>2]=0;c[(c[f>>2]|0)+96>>2]=0;c[(c[f>>2]|0)+100>>2]=0;c[(c[f>>2]|0)+104>>2]=0;c[(c[f>>2]|0)+108>>2]=0;c[(c[f>>2]|0)+112>>2]=0;c[(c[f>>2]|0)+116>>2]=c[f>>2];c[(c[f>>2]|0)+120>>2]=0;c[(c[f>>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+136>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c[f>>2]|0)+24>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+28>>2]=c[(c[f>>2]|0)+8>>2];c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>>2]=0;c[(c[f>>2]|0)+344>>2]=0;c[(c[f>>2]|0)+348>>2]=0;c[(c[f>>2]|0)+316>>2]=0;c[(c[f>>2]|0)+320>>2]=0;c[(c[f>>2]|0)+324>>2]=0;c[(c[f>>2]|0)+328>>2]=0;c[(c[f>>2]|0)+332>>2]=0;c[(c[f>>2]|0)+336>>2]=0;c[(c[f>>2]|0)+340>>2]=0;a[(c[f>>2]|0)+352>>0]=0;a[(c[f>>2]|0)+353>>0]=0;h=(c[f>>2]|0)+408|0;c[h>>2]=0;c[h+4>>2]=0;c[(c[f>>2]|0)+284>>2]=0;c[(c[f>>2]|0)+288>>2]=0;c[(c[f>>2]|0)+292>>2]=0;c[(c[f>>2]|0)+296>>2]=0;c[(c[f>>2]|0)+300>>2]=0;a[(c[f>>2]|0)+308>>0]=1;c[(c[f>>2]|0)+312>>2]=0;c[(c[f>>2]|0)+364>>2]=0;c[(c[f>>2]|0)+372>>2]=0;c[(c[f>>2]|0)+384>>2]=0;c[(c[f>>2]|0)+240>>2]=0;c[(c[f>>2]|0)+252>>2]=0;c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+476>>2]=0;c[(c[f>>2]|0)+480>>2]=0;a[(c[f>>2]|0)+488>>0]=0;a[(c[f>>2]|0)+489>>0]=0;c[(c[f>>2]|0)+492>>2]=0;c[(c[f>>2]|0)+496>>2]=0;i=e;return}function MY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[g>>2]=b;c[h>>2]=d;while(1){if((c[(c[g>>2]|0)+12>>2]|0)==(c[(c[g>>2]|0)+8>>2]|0)?(jZ(c[g>>2]|0)|0)<<24>>24==0:0){j=5;break}d=a[c[h>>2]>>0]|0;b=(c[g>>2]|0)+12|0;k=c[b>>2]|0;c[b>>2]=k+1;a[k>>0]=d;d=c[h>>2]|0;c[h>>2]=d+1;if(!(a[d>>0]|0)){j=6;break}}if((j|0)==5){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}else if((j|0)==6){c[h>>2]=c[(c[g>>2]|0)+16>>2];c[(c[g>>2]|0)+16>>2]=c[(c[g>>2]|0)+12>>2];c[f>>2]=c[h>>2];l=c[f>>2]|0;i=e;return l|0}return 0}function NY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;h=e+16|0;j=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[(c[g>>2]|0)+356>>2];c[k>>2]=c[h>>2];a:while(1){if(!(a[c[h>>2]>>0]|0)){n=45;break}if((a[c[k>>2]>>0]|0)!=12?(a[c[k>>2]>>0]|0)!=0:0){d=c[(c[g>>2]|0)+416+12>>2]|0;b=(c[g>>2]|0)+416|0;if((a[c[k>>2]>>0]|0)!=61){if((d|0)==(c[b+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){n=44;break}o=a[c[k>>2]>>0]|0;p=(c[g>>2]|0)+416+12|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=o;c[k>>2]=(c[k>>2]|0)+1;continue}if(!(d-(c[b+16>>2]|0)|0))c[m>>2]=(c[j>>2]|0)+152;else{if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){n=19;break}b=(c[g>>2]|0)+416+12|0;d=c[b>>2]|0;c[b>>2]=d+1;a[d>>0]=0;c[m>>2]=bZ(c[g>>2]|0,(c[j>>2]|0)+60|0,c[(c[g>>2]|0)+416+16>>2]|0,8)|0;if(!(c[m>>2]|0)){n=20;break}if((c[c[m>>2]>>2]|0)==(c[(c[g>>2]|0)+416+16>>2]|0)?(d=MY((c[j>>2]|0)+80|0,c[c[m>>2]>>2]|0)|0,c[c[m>>2]>>2]=d,(c[c[m>>2]>>2]|0)==0):0){n=23;break}c[(c[g>>2]|0)+416+12>>2]=c[(c[g>>2]|0)+416+16>>2]}c[h>>2]=(c[k>>2]|0)+1;while(1){if((a[c[h>>2]>>0]|0)!=12)r=(a[c[h>>2]>>0]|0)!=0;else r=0;s=(c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0);if(!r)break;if(s?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){n=32;break a}d=a[c[h>>2]>>0]|0;b=(c[g>>2]|0)+416+12|0;o=c[b>>2]|0;c[b>>2]=o+1;a[o>>0]=d;c[h>>2]=(c[h>>2]|0)+1}if(s?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){n=36;break}d=(c[g>>2]|0)+416+12|0;o=c[d>>2]|0;c[d>>2]=o+1;a[o>>0]=0;if(FZ(c[g>>2]|0,c[m>>2]|0,0,c[(c[g>>2]|0)+416+16>>2]|0,(c[g>>2]|0)+372|0)|0){n=37;break}c[(c[g>>2]|0)+416+12>>2]=c[(c[g>>2]|0)+416+16>>2];if(a[c[h>>2]>>0]|0)c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=c[h>>2];continue}if((c[(c[g>>2]|0)+416+12>>2]|0)==(c[(c[g>>2]|0)+416+8>>2]|0)?(jZ((c[g>>2]|0)+416|0)|0)<<24>>24==0:0){n=8;break}o=(c[g>>2]|0)+416+12|0;d=c[o>>2]|0;c[o>>2]=d+1;a[d>>0]=0;c[l>>2]=bZ(c[g>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+416+16>>2]|0,0)|0;if(c[l>>2]|0)a[(c[l>>2]|0)+32>>0]=1;if(a[c[k>>2]>>0]|0)c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=c[k>>2];c[(c[g>>2]|0)+416+12>>2]=c[(c[g>>2]|0)+416+16>>2]}if((n|0)==8){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==19){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==20){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==23){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==32){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==36){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==37){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==44){a[f>>0]=0;t=a[f>>0]|0;i=e;return t|0}else if((n|0)==45){a[f>>0]=1;t=a[f>>0]|0;i=e;return t|0}return 0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;while(1){c[g>>2]=c[e>>2];if(!(c[g>>2]|0))break;c[e>>2]=c[(c[g>>2]|0)+4>>2];Bb[c[(c[f>>2]|0)+12+8>>2]&127](c[(c[g>>2]|0)+16>>2]|0);Bb[c[(c[f>>2]|0)+12+8>>2]&127](c[g>>2]|0)}i=d;return}function PY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>2]|0))break;c[f>>2]=c[c[e>>2]>>2];Bb[c[(c[(c[d>>2]|0)+20>>2]|0)+8>>2]&127](c[e>>2]|0);c[e>>2]=c[f>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2];while(1){if(!(c[e>>2]|0))break;c[g>>2]=c[c[e>>2]>>2];Bb[c[(c[(c[d>>2]|0)+20>>2]|0)+8>>2]&127](c[e>>2]|0);c[e>>2]=c[g>>2]}i=b;return}function QY(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;g=f+20|0;h=f+24|0;j=f+16|0;k=f+8|0;l=f;c[g>>2]=b;a[h>>0]=d;c[j>>2]=e;VY(k,(c[g>>2]|0)+20|0);while(1){c[l>>2]=WY(k)|0;if(!(c[l>>2]|0))break;if(!(c[(c[l>>2]|0)+16>>2]|0))continue;Bb[c[(c[j>>2]|0)+8>>2]&127](c[(c[l>>2]|0)+20>>2]|0)}XY(c[g>>2]|0);XY((c[g>>2]|0)+132|0);XY((c[g>>2]|0)+20|0);XY((c[g>>2]|0)+40|0);XY((c[g>>2]|0)+60|0);PY((c[g>>2]|0)+80|0);PY((c[g>>2]|0)+104|0);if(!(a[h>>0]|0)){m=c[j>>2]|0;n=m+8|0;o=c[n>>2]|0;p=c[g>>2]|0;Bb[o&127](p);i=f;return}Bb[c[(c[j>>2]|0)+8>>2]&127](c[(c[g>>2]|0)+184>>2]|0);Bb[c[(c[j>>2]|0)+8>>2]&127](c[(c[g>>2]|0)+164>>2]|0);m=c[j>>2]|0;n=m+8|0;o=c[n>>2]|0;p=c[g>>2]|0;Bb[o&127](p);i=f;return}function RY(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;if(!(c[(c[f>>2]|0)+496>>2]|0)){b=UY()|0;c[(c[f>>2]|0)+496>>2]=b}if(a[(c[f>>2]|0)+236>>0]|0){a[e>>0]=NY(c[f>>2]|0,181401)|0;g=a[e>>0]|0;i=d;return g|0}else{a[e>>0]=1;g=a[e>>0]|0;i=d;return g|0}return 0}function SY(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f+12|0;c[g>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;i=f;return c[(c[g>>2]|0)+284>>2]|0}function TY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(a[(c[j>>2]|0)+72>>0]|0){Tb[c[(c[h>>2]|0)+80>>2]&127](c[(c[h>>2]|0)+4>>2]|0,c[k>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0);i=g;return}f=c[h>>2]|0;if((c[j>>2]|0)==(c[(c[h>>2]|0)+144>>2]|0)){c[m>>2]=f+288;c[n>>2]=(c[h>>2]|0)+292}else{c[m>>2]=c[f+300>>2];c[n>>2]=(c[(c[h>>2]|0)+300>>2]|0)+4}do{c[o>>2]=c[(c[h>>2]|0)+44>>2];Ab[c[(c[j>>2]|0)+60>>2]&31](c[j>>2]|0,k,c[l>>2]|0,o,c[(c[h>>2]|0)+48>>2]|0);c[c[n>>2]>>2]=c[k>>2];Tb[c[(c[h>>2]|0)+80>>2]&127](c[(c[h>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+44>>2]|0,(c[o>>2]|0)-(c[(c[h>>2]|0)+44>>2]|0)|0);c[c[m>>2]>>2]=c[k>>2]}while((c[k>>2]|0)!=(c[l>>2]|0));i=g;return}function UY(){var a=0,b=0;a=i;i=i+16|0;b=a;c[b>>2]=((sb(0)|0)>>>0)%4294967295|0;s2(c[b>>2]|0);b=t2()|0;i=a;return b|0}function VY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[c[f>>2]>>2];c[(c[e>>2]|0)+4>>2]=(c[c[e>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]<<2);i=d;return}function WY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;while(1){if((c[c[e>>2]>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0)){g=5;break}a=c[e>>2]|0;h=c[a>>2]|0;c[a>>2]=h+4;c[f>>2]=c[h>>2];if(c[f>>2]|0){g=4;break}}if((g|0)==4){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=b;return j|0}else if((g|0)==5){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}return 0}function XY(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;while(1){f=c[(c[(c[d>>2]|0)+16>>2]|0)+8>>2]|0;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+8>>2]|0)>>>0)break;Bb[f&127](c[(c[c[d>>2]>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}Bb[f&127](c[c[d>>2]>>2]|0);i=b;return}function YY(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+232>>2];if(Hb[((a[(c[f>>2]|0)+236>>0]&255|0)!=0?41:42)&63]((c[f>>2]|0)+148|0,(c[f>>2]|0)+144|0,c[g>>2]|0)|0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=JZ(c[f>>2]|0,c[(c[f>>2]|0)+232>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function ZY(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=c[j>>2];c[n>>2]=Sb[c[c[(c[h>>2]|0)+144>>2]>>2]&127](c[(c[h>>2]|0)+144>>2]|0,c[j>>2]|0,c[k>>2]|0,m)|0;f=_Y(c[h>>2]|0,c[(c[h>>2]|0)+144>>2]|0,c[j>>2]|0,c[k>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,((a[(c[h>>2]|0)+480+4>>0]|0)!=0^1)&1)|0;i=g;return f|0} +function qh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[e+16>>2]=a;c[f>>2]=b;c[g>>2]=d;vk(c[f>>2]|0);Gh(c[f>>2]|0);Hh(c[f>>2]|0);Ih(c[f>>2]|0);c[j>>2]=oh(c[f>>2]|0,2,2,c[g>>2]|0)|0;c[h>>2]=1;while(1){k=c[f>>2]|0;if((c[h>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;d=qh(k,c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[h>>2]<<2)>>2]|0,c[g>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+d;c[h>>2]=(c[h>>2]|0)+1}ch(k);i=e;return c[j>>2]|0}function rh(d,e){d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;f=i;i=i+48|0;g=f;j=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+20|0;q=f+16|0;c[j>>2]=d;c[k>>2]=e;if(c[12559]|0){O4(c[12559]|0);c[12559]=0}if(c[12560]|0){O4(c[12560]|0);c[12560]=0}c[o>>2]=1;while(1){if((c[o>>2]|0)>(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0))break;eh(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2]|0);c[o>>2]=(c[o>>2]|0)+1}c[n>>2]=b[(c[(c[j>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[n>>2]|0)>(b[(c[(c[j>>2]|0)+8>>2]|0)+238>>1]|0))break;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)>>2]|0))break;c[p>>2]=c[(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[p>>2]|0)+8>>2]|0)+236>>2]=c[l>>2];a:do if(c[(c[(c[p>>2]|0)+8>>2]|0)+188>>2]|0){c[m>>2]=0;while(1){o=c[(c[(c[(c[p>>2]|0)+8>>2]|0)+188>>2]|0)+(c[m>>2]<<2)>>2]|0;c[q>>2]=o;if(!o)break a;if((a[(c[(c[q>>2]|0)+8>>2]|0)+112>>0]|0)==4){Ug(c[q>>2]|0);O4(c[(c[q>>2]|0)+8>>2]|0);O4(c[q>>2]|0);c[m>>2]=(c[m>>2]|0)+-1}c[m>>2]=(c[m>>2]|0)+1}}while(0);c[l>>2]=(c[l>>2]|0)+1}Fh(c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+56>>2]|0);c[n>>2]=(c[n>>2]|0)+1}if(!(a[138998]|0)){i=f;return}n=c[24742]|0;l=wB(c[j>>2]|0)|0;j=c[k>>2]|0;r=+$N();c[g>>2]=l;c[g+4>>2]=j;h[g+8>>3]=r;Y2(n,123311,g)|0;i=f;return}function sh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=c[g>>2]|0;c[j>>2]=d;c[k>>2]=d;while(1){d=Ch(c[j>>2]|0,c[h>>2]|0)|0;c[j>>2]=d;if(!d)break;if(Dh(c[f>>2]|0,c[j>>2]|0)|0){c[k>>2]=c[j>>2];continue}if(!(Eh(c[f>>2]|0,c[j>>2]|0)|0))continue;c[k>>2]=c[j>>2]}i=e;return c[k>>2]|0}function th(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+232>>2];c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2];c[h>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2]=c[h>>2];c[(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2]=c[e>>2];c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]=c[g>>2];c[(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2]=c[f>>2];i=d;return}function uh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+8|0;j=f+4|0;k=f;c[g>>2]=d;c[h>>2]=e;c[j>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;a[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+48>>0]=1;c[j>>2]=(c[j>>2]|0)+1}do{c[k>>2]=0;c[j>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;if(a[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+48>>0]|0){e=yh(c[g>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+e}c[j>>2]=(c[j>>2]|0)+1}}while((c[k>>2]|0)>=1);i=f;return}function vh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+64|0;g=f+48|0;h=f+44|0;j=f+40|0;k=f+36|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;s=f+4|0;t=f;c[h>>2]=d;c[j>>2]=e;c[m>>2]=0;c[n>>2]=0;c[q>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2];if((c[12557]|0)<=(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)>>2]|0)){c[12557]=(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)>>2]|0)+1;if(c[12558]|0)u=eK(c[12558]|0,c[12557]<<2)|0;else u=cK(c[12557]<<2)|0;c[12558]=u}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)>>2]|0))break;c[(c[12558]|0)+(c[o>>2]<<2)>>2]=0;c[o>>2]=(c[o>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;a:do if((c[n>>2]|0)>0){c[o>>2]=0;while(1){u=c[(c[(c[(c[(c[q>>2]|0)+(c[k>>2]<<2)>>2]|0)+8>>2]|0)+180>>2]|0)+(c[o>>2]<<2)>>2]|0;c[s>>2]=u;if(!u)break a;u=c[s>>2]|0;c[p>>2]=(c[(c[(c[((c[c[s>>2]>>2]&3|0)==2?u:u+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)+1;while(1){if((c[p>>2]|0)>(c[n>>2]|0))break;u=_(c[(c[12558]|0)+(c[p>>2]<<2)>>2]|0,b[(c[(c[s>>2]|0)+8>>2]|0)+154>>1]|0)|0;c[m>>2]=(c[m>>2]|0)+u;c[p>>2]=(c[p>>2]|0)+1}c[o>>2]=(c[o>>2]|0)+1}}while(0);c[o>>2]=0;while(1){u=c[(c[(c[(c[(c[q>>2]|0)+(c[k>>2]<<2)>>2]|0)+8>>2]|0)+180>>2]|0)+(c[o>>2]<<2)>>2]|0;c[s>>2]=u;if(!u)break;u=c[s>>2]|0;c[t>>2]=c[(c[(c[((c[c[s>>2]>>2]&3|0)==2?u:u+-32|0)+28>>2]|0)+8>>2]|0)+236>>2];if((c[t>>2]|0)>(c[n>>2]|0))c[n>>2]=c[t>>2];u=(c[12558]|0)+(c[t>>2]<<2)|0;c[u>>2]=(c[u>>2]|0)+(b[(c[(c[s>>2]|0)+8>>2]|0)+154>>1]|0);c[o>>2]=(c[o>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[r>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[k>>2]<<2)>>2];if(a[(c[(c[r>>2]|0)+8>>2]|0)+145>>0]|0){o=(c[(c[r>>2]|0)+8>>2]|0)+180|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];o=xh(g,1)|0;c[m>>2]=(c[m>>2]|0)+o}c[k>>2]=(c[k>>2]|0)+1}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)>>2]|0))break;c[r>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)+4>>2]|0)+(c[l>>2]<<2)>>2];if(a[(c[(c[r>>2]|0)+8>>2]|0)+145>>0]|0){k=(c[(c[r>>2]|0)+8>>2]|0)+172|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];k=xh(g,-1)|0;c[m>>2]=(c[m>>2]|0)+k}c[l>>2]=(c[l>>2]|0)+1}i=f;return c[m>>2]|0}function wh(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[f>>2]=b;do if((a[(c[(c[f>>2]|0)+8>>2]|0)+156>>0]|0)!=1)if((a[(c[(c[f>>2]|0)+8>>2]|0)+160>>0]|0)<=1){c[e>>2]=1;break}else{c[e>>2]=0;break}else c[e>>2]=2;while(0);i=d;return c[e>>2]|0}function xh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=d;c[l>>2]=0;if((c[f>>2]|0)>0)c[k>>2]=1;else c[k>>2]=0;c[g>>2]=0;while(1){f=c[(c[a>>2]|0)+(c[g>>2]<<2)>>2]|0;c[m>>2]=f;if(!f)break;f=(c[k>>2]|0)!=0;c[j>>2]=(c[g>>2]|0)+1;a:do if(f)while(1){d=c[(c[a>>2]|0)+(c[j>>2]<<2)>>2]|0;c[n>>2]=d;if(!d)break a;d=c[n>>2]|0;o=c[m>>2]|0;if(+((c[(c[(c[((c[c[n>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)*(+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[m>>2]|0)+8>>2]|0)+16>>3])<0.0){o=_(b[(c[(c[m>>2]|0)+8>>2]|0)+154>>1]|0,b[(c[(c[n>>2]|0)+8>>2]|0)+154>>1]|0)|0;c[l>>2]=(c[l>>2]|0)+o}c[j>>2]=(c[j>>2]|0)+1}else while(1){o=c[(c[a>>2]|0)+(c[j>>2]<<2)>>2]|0;c[n>>2]=o;if(!o)break a;o=c[n>>2]|0;d=c[m>>2]|0;if(+((c[(c[(c[((c[c[n>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)|0)*(+h[(c[(c[n>>2]|0)+8>>2]|0)+56>>3]-+h[(c[(c[m>>2]|0)+8>>2]|0)+56>>3])<0.0){d=_(b[(c[(c[m>>2]|0)+8>>2]|0)+154>>1]|0,b[(c[(c[n>>2]|0)+8>>2]|0)+154>>1]|0)|0;c[l>>2]=(c[l>>2]|0)+d}c[j>>2]=(c[j>>2]|0)+1}while(0);c[g>>2]=(c[g>>2]|0)+1}i=e;return c[l>>2]|0}function yh(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+48|0;h=g+32|0;j=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[o>>2]=0;a[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+48>>0]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=((c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0)-1|0)){r=18;break}c[p>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[l>>2]<<2)>>2];c[q>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+((c[l>>2]|0)+1<<2)>>2];if((c[(c[(c[p>>2]|0)+8>>2]|0)+236>>2]|0)>=(c[(c[(c[q>>2]|0)+8>>2]|0)+236>>2]|0)){r=4;break}do if(!(zh(c[h>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)){c[n>>2]=0;c[m>>2]=0;if((c[j>>2]|0)>0){f=Ah(c[p>>2]|0,c[q>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+f;f=Ah(c[q>>2]|0,c[p>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+f}if((c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)>>2]|0)>0){f=Bh(c[p>>2]|0,c[q>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+f;f=Bh(c[q>>2]|0,c[p>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+f}if((c[n>>2]|0)>=(c[m>>2]|0)){if(!((c[m>>2]|0)>0&(c[k>>2]|0)!=0))break;if((c[n>>2]|0)!=(c[m>>2]|0))break}th(c[p>>2]|0,c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+((c[m>>2]|0)-(c[n>>2]|0));a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+49>>0]=0;a[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+48>>0]=1;if((c[j>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1]|0)){a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)-1<<6)+49>>0]=0;a[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)-1<<6)+48>>0]=1}if((c[j>>2]|0)<(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0)){a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)+49>>0]=0;a[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+((c[j>>2]|0)+1<<6)+48>>0]=1}}while(0);c[l>>2]=(c[l>>2]|0)+1}if((r|0)==4)La(123211,122928,514,123237);else if((r|0)==18){i=g;return c[o>>2]|0}return 0}function zh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;f=(c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0)!=(c[(c[(c[l>>2]|0)+8>>2]|0)+212>>2]|0);if(!(d[122836]|0)){if((f?(c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0)!=0:0)?(c[(c[(c[l>>2]|0)+8>>2]|0)+212>>2]|0)!=0:0){if((a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]|0)==7?(a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0)==1:0){c[h>>2]=0;p=c[h>>2]|0;i=g;return p|0}if((a[(c[(c[l>>2]|0)+8>>2]|0)+159>>0]|0)==7?(a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0)==1:0){c[h>>2]=0;p=c[h>>2]|0;i=g;return p|0}c[h>>2]=1;p=c[h>>2]|0;i=g;return p|0}}else if(f){c[h>>2]=1;p=c[h>>2]|0;i=g;return p|0}c[m>>2]=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<6)+56>>2];if(!(c[m>>2]|0))c[n>>2]=0;else{if(c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]&1){c[o>>2]=c[k>>2];c[k>>2]=c[l>>2];c[l>>2]=c[o>>2]}o=_(c[(c[(c[k>>2]|0)+8>>2]|0)+284>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;c[n>>2]=a[(c[(c[m>>2]|0)+8>>2]|0)+(o+(c[(c[(c[l>>2]|0)+8>>2]|0)+284>>2]|0))>>0]}c[h>>2]=c[n>>2];p=c[h>>2]|0;i=g;return p|0}function Ah(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=a;c[g>>2]=d;c[m>>2]=0;c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2];while(1){if(!(c[c[k>>2]>>2]|0))break;c[o>>2]=b[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+154>>1];g=c[c[k>>2]>>2]|0;c[l>>2]=c[(c[(c[((c[c[c[k>>2]>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+236>>2];c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+172>>2];while(1){if(!(c[c[j>>2]>>2]|0))break;g=c[c[j>>2]>>2]|0;c[n>>2]=(c[(c[(c[((c[c[c[j>>2]>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[l>>2]|0);if((c[n>>2]|0)<=0){if((c[n>>2]|0)==0?+h[(c[(c[c[j>>2]>>2]|0)+8>>2]|0)+16>>3]>+h[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+16>>3]:0)p=8}else p=8;if((p|0)==8){p=0;g=_(b[(c[(c[c[j>>2]>>2]|0)+8>>2]|0)+154>>1]|0,c[o>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+g}c[j>>2]=(c[j>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+4}i=e;return c[m>>2]|0}function Bh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=a;c[g>>2]=d;c[m>>2]=0;c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2];while(1){if(!(c[c[k>>2]>>2]|0))break;c[o>>2]=b[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+154>>1];g=c[c[k>>2]>>2]|0;c[l>>2]=c[(c[(c[((c[c[c[k>>2]>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+236>>2];c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2];while(1){if(!(c[c[j>>2]>>2]|0))break;g=c[c[j>>2]>>2]|0;c[n>>2]=(c[(c[(c[((c[c[c[j>>2]>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)-(c[l>>2]|0);if((c[n>>2]|0)<=0){if((c[n>>2]|0)==0?+h[(c[(c[c[j>>2]>>2]|0)+8>>2]|0)+56>>3]>+h[(c[(c[c[k>>2]>>2]|0)+8>>2]|0)+56>>3]:0)p=8}else p=8;if((p|0)==8){p=0;g=_(b[(c[(c[c[j>>2]>>2]|0)+8>>2]|0)+154>>1]|0,c[o>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+g}c[j>>2]=(c[j>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+4}i=e;return c[m>>2]|0}function Ch(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0))La(123252,122928,754,123254);b=c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2]|0;if((c[f>>2]|0)<0){if((b|0)>0)c[g>>2]=c[(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+232>>2]<<6)+4>>2]|0)+((c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2]|0)-1<<2)>>2]}else c[g>>2]=c[(c[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+232>>2]<<6)+4>>2]|0)+(b+1<<2)>>2];if(!(c[g>>2]|0)){h=c[g>>2]|0;i=d;return h|0}if((_((c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2]|0)|0,c[f>>2]|0)|0)>0){h=c[g>>2]|0;i=d;return h|0}else La(123263,122928,760,123254);return 0}function Dh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;if(a[(c[(c[g>>2]|0)+8>>2]|0)+156>>0]|0){h=0;j=h&1;i=e;return j|0}h=(AC(c[f>>2]|0,c[g>>2]|0)|0)!=0;j=h&1;i=e;return j|0}function Eh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;if(((a[(c[(c[h>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[h>>2]|0)+8>>2]|0)+172+4>>2]|0)==1:0)?(c[(c[(c[h>>2]|0)+8>>2]|0)+180+4>>2]|0)==1:0){c[j>>2]=c[c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]>>2];while(1){if(!(a[(c[(c[j>>2]|0)+8>>2]|0)+112>>0]|0))break;c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]}if(AC(c[g>>2]|0,c[j>>2]|0)|0){c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}}c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}function Fh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}O4(c[(c[d>>2]|0)+8>>2]|0);O4(c[d>>2]|0);i=b;return}function Gh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d;f=d+12|0;g=d+8|0;h=d+4|0;c[f>>2]=b;if(!((c[13809]|0)!=0|(c[13838]|0)!=0)){i=d;return}b=hO(c[f>>2]|0,c[13809]|0,0)|0;c[g>>2]=b;if(!b){c[h>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;if(!(Vi(c[h>>2]|0)|0))Gh(c[h>>2]|0);c[h>>2]=HD(c[h>>2]|0)|0}if(!(c[13838]|0)){i=d;return}Ph(c[f>>2]|0);i=d;return}if((a[c[g>>2]>>0]|0)==(a[123504]|0)?(J3(c[g>>2]|0,123504)|0)==0:0){Oh(c[f>>2]|0,1);i=d;return}if((a[c[g>>2]>>0]|0)==(a[136320]|0)?(J3(c[g>>2]|0,136320)|0)==0:0){Oh(c[f>>2]|0,0);i=d;return}if(!(a[c[g>>2]>>0]|0)){i=d;return}c[e>>2]=c[g>>2];$z(1,123508,e)|0;i=d;return}function Hh(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=d;c[h>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[h>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;c[j>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0))break;c[k>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];a[(c[(c[k>>2]|0)+8>>2]|0)+158>>0]=0;a[(c[(c[k>>2]|0)+8>>2]|0)+157>>0]=0;c[(c[(c[k>>2]|0)+8>>2]|0)+284>>2]=c[g>>2];if((c[j>>2]|0)==0?(c[(c[(c[k>>2]|0)+8>>2]|0)+188+4>>2]|0)>0:0){d=Mh(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0,c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+56>>2]=d;c[j>>2]=1}c[g>>2]=(c[g>>2]|0)+1}a:do if(c[j>>2]|0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0))break a;c[k>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];if(!(a[(c[(c[k>>2]|0)+8>>2]|0)+157>>0]|0))Nh(c[f>>2]|0,c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}i=e;return}function Ih(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=i;i=i+64|0;g=f+60|0;h=f+56|0;j=f+52|0;k=f+48|0;l=f+44|0;m=f+40|0;n=f+36|0;o=f+32|0;p=f+28|0;q=f+24|0;r=f+20|0;s=f+16|0;t=f+12|0;u=f+8|0;v=f+4|0;w=f;c[g>>2]=e;c[u>>2]=0;if(!(d[(c[(c[g>>2]|0)+8>>2]|0)+240>>0]|0)){i=f;return}c[k>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];a:while(1){if((c[k>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;if(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0){c[p>>2]=c[(c[(c[c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+236>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0))break;a[(c[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2]|0)+8>>2]|0)+157>>0]=0;c[h>>2]=(c[h>>2]|0)+1}if(c[u>>2]|0)x=eK(c[u>>2]|0,(c[h>>2]|0)+1<<2)|0;else x=cK((c[h>>2]|0)+1<<2)|0;c[u>>2]=x;c[l>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0))break;if(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1)c[q>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2];else c[q>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+((c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0)-(c[h>>2]|0)-1<<2)>>2];c[o>>2]=0;c[n>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[(c[q>>2]|0)+8>>2]|0)+196+4>>2]|0))break;c[v>>2]=c[(c[(c[(c[q>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<2)>>2];if(Jh(c[g>>2]|0,c[q>>2]|0,c[v>>2]|0)|0)c[n>>2]=(c[n>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[(c[q>>2]|0)+8>>2]|0)+188+4>>2]|0))break;c[v>>2]=c[(c[(c[(c[q>>2]|0)+8>>2]|0)+188>>2]|0)+(c[j>>2]<<2)>>2];if(Jh(c[g>>2]|0,c[q>>2]|0,c[v>>2]|0)|0)c[o>>2]=(c[o>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}e=c[q>>2]|0;if(!((c[n>>2]|0)==0&(c[o>>2]|0)==0)){if((c[n>>2]|0)==0?(a[(c[e+8>>2]|0)+157>>0]|0)==0:0){c[r>>2]=(c[u>>2]|0)+(c[l>>2]<<2);c[m>>2]=Kh(c[g>>2]|0,c[q>>2]|0,c[r>>2]|0,c[k>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+(c[m>>2]|0)}}else{y=c[l>>2]|0;c[l>>2]=y+1;c[(c[u>>2]|0)+(y<<2)>>2]=e}c[h>>2]=(c[h>>2]|0)+1}b:do if(c[l>>2]|0){c:do if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1)){c[r>>2]=c[u>>2];c[s>>2]=(c[u>>2]|0)+(c[l>>2]<<2)+-4;while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break c;c[t>>2]=c[c[r>>2]>>2];c[c[r>>2]>>2]=c[c[s>>2]>>2];c[c[s>>2]>>2]=c[t>>2];c[r>>2]=(c[r>>2]|0)+4;c[s>>2]=(c[s>>2]|0)+-4}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0))break;e=c[(c[u>>2]|0)+(c[h>>2]<<2)>>2]|0;c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2]=e;c[q>>2]=e;c[(c[(c[q>>2]|0)+8>>2]|0)+236>>2]=(c[h>>2]|0)+(c[p>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0))break b;c[q>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2];d:do if(c[(c[(c[q>>2]|0)+8>>2]|0)+188>>2]|0){c[j>>2]=0;while(1){e=c[(c[(c[(c[q>>2]|0)+8>>2]|0)+188>>2]|0)+(c[j>>2]<<2)>>2]|0;c[w>>2]=e;if(!e)break d;if((c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1|0)==0?(e=c[w>>2]|0,y=c[w>>2]|0,(c[(c[(c[((c[c[w>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[((c[c[w>>2]>>2]&3|0)==3?y:y+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)):0)z=48;else z=46;if(((z|0)==46?(z=0,(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1|0)!=0):0)?(y=c[w>>2]|0,e=c[w>>2]|0,(c[(c[(c[((c[c[w>>2]>>2]&3|0)==2?y:y+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[((c[c[w>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)):0)z=48;if((z|0)==48){z=0;if(Jh(c[g>>2]|0,c[q>>2]|0,c[w>>2]|0)|0){z=49;break a}Ug(c[w>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;fh(c[g>>2]|0,c[w>>2]|0)}c[j>>2]=(c[j>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}}while(0);a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+49>>0]=0}c[k>>2]=(c[k>>2]|0)+1}if((z|0)==49)La(123350,122928,1292,123389);if(!(c[u>>2]|0)){i=f;return}O4(c[u>>2]|0);i=f;return}function Jh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e;c[g>>2]=a;c[e+4>>2]=b;c[h>>2]=d;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+156>>2]|0)){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}d=c[h>>2]|0;if(!(Lh(c[g>>2]|0,c[((c[c[h>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)|0)){c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}d=c[h>>2]|0;if(Lh(c[g>>2]|0,c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0){c[f>>2]=1;j=c[f>>2]|0;i=e;return j|0}else{c[f>>2]=0;j=c[f>>2]|0;i=e;return j|0}return 0}function Kh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+157>>0]=1;a:do if((c[(c[(c[j>>2]|0)+8>>2]|0)+188+4>>2]|0)>0){c[n>>2]=0;while(1){f=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+188>>2]|0)+(c[n>>2]<<2)>>2]|0;c[m>>2]=f;if(!f)break a;if((Jh(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0)|0)!=0?(f=c[m>>2]|0,(a[(c[(c[((c[c[m>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)==0):0){f=c[m>>2]|0;e=Kh(c[h>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0,(c[k>>2]|0)+(c[o>>2]<<2)|0,c[l>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+e}c[n>>2]=(c[n>>2]|0)+1}}while(0);if((c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)==(c[l>>2]|0)){l=c[j>>2]|0;j=c[o>>2]|0;c[o>>2]=j+1;c[(c[k>>2]|0)+(j<<2)>>2]=l;i=g;return c[o>>2]|0}else La(123402,122928,1221,123418);return 0}function Lh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Dh(c[e>>2]|0,c[f>>2]|0)|0;a=b|(Eh(c[e>>2]|0,c[f>>2]|0)|0);i=d;return a|0}function Mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=bK(12)|0;c[c[g>>2]>>2]=c[e>>2];c[(c[g>>2]|0)+4>>2]=c[f>>2];b=bK(_(c[e>>2]|0,c[f>>2]|0)|0)|0;c[(c[g>>2]|0)+8>>2]=b;i=d;return c[g>>2]|0}function Nh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+20|0;l=f+4|0;m=f;c[g>>2]=b;c[h>>2]=e;c[m>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]<<6)+56>>2];a[(c[(c[h>>2]|0)+8>>2]|0)+157>>0]=1;a[(c[(c[h>>2]|0)+8>>2]|0)+158>>0]=1;a[k>>0]=(c[(c[(uf(c[g>>2]|0)|0)+8>>2]|0)+180>>2]|0)>0;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+188>>2]|0)){n=c[h>>2]|0;o=n+8|0;p=c[o>>2]|0;q=p+158|0;a[q>>0]=0;i=f;return}c[j>>2]=0;a:while(1){e=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+188>>2]|0)+(c[j>>2]<<2)>>2]|0;c[l>>2]=e;if(!e){r=22;break}if(d[k>>0]|0){e=c[l>>2]|0;if((AC(c[g>>2]|0,c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)|0)!=0?(e=c[l>>2]|0,(AC(c[g>>2]|0,c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)|0)!=0):0)r=7}else r=7;do if((r|0)==7?(r=0,(c[(c[(c[l>>2]|0)+8>>2]|0)+156>>2]|0)!=0):0){e=c[l>>2]|0;b=c[l>>2]|0;s=(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0)<(c[c[m>>2]>>2]|0);if((a[(c[(c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+158>>0]|0)==1){if(!s){r=10;break a}e=c[l>>2]|0;if((c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0)){r=12;break a}e=c[l>>2]|0;b=_(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;e=c[l>>2]|0;a[(c[(c[m>>2]|0)+8>>2]|0)+(b+(c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0))>>0]=1;Ug(c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;if((a[(c[(c[l>>2]|0)+8>>2]|0)+112>>0]|0)==4)break;fh(c[g>>2]|0,c[l>>2]|0);break}else{if(!s){r=16;break a}s=c[l>>2]|0;if((c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?s:s+32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0)>=(c[(c[m>>2]|0)+4>>2]|0)){r=18;break a}s=c[l>>2]|0;e=_(c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?s:s+32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0,c[(c[m>>2]|0)+4>>2]|0)|0;s=c[l>>2]|0;a[(c[(c[m>>2]|0)+8>>2]|0)+(e+(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0)+8>>2]|0)+284>>2]|0))>>0]=1;s=c[l>>2]|0;if(a[(c[(c[((c[c[l>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0)+8>>2]|0)+157>>0]|0)break;s=c[l>>2]|0;Nh(c[g>>2]|0,c[((c[c[l>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0);break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((r|0)==10)La(123428,122928,982,123460);else if((r|0)==12)La(123472,122928,983,123460);else if((r|0)==16)La(123428,122928,991,123460);else if((r|0)==18)La(123472,122928,992,123460);else if((r|0)==22){n=c[h>>2]|0;o=n+8|0;p=c[o>>2]|0;q=p+158|0;a[q>>0]=0;i=f;return}}function Oh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;Qh(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0);c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function Ph(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;c[f>>2]=b;c[g>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;b=hO(c[g>>2]|0,c[13838]|0,0)|0;c[h>>2]=b;do if(b){if((a[c[h>>2]>>0]|0)==(a[123504]|0)?(J3(c[h>>2]|0,123504)|0)==0:0){Qh(c[f>>2]|0,c[g>>2]|0,1);break}if((a[c[h>>2]>>0]|0)==(a[136320]|0)?(J3(c[h>>2]|0,136320)|0)==0:0){Qh(c[f>>2]|0,c[g>>2]|0,0);break}if(a[c[h>>2]>>0]|0){j=c[h>>2]|0;k=wB(c[g>>2]|0)|0;c[e>>2]=j;c[e+4>>2]=k;$z(1,123539,e)|0}}while(0);c[g>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0}i=d;return}function Qh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;g=f+40|0;h=f+36|0;j=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[r>>2]=c[12560];if(c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]|0){i=f;return}e=(c[j>>2]|0)!=0;c[l>>2]=0;c[k>>2]=0;a:do if(e)while(1){d=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]|0)+(c[k>>2]<<2)>>2]|0;c[o>>2]=d;if(!d)break a;if(!(Rh(c[o>>2]|0)|0)){d=c[o>>2]|0;b=c[l>>2]|0;c[l>>2]=b+1;c[(c[r>>2]|0)+(b<<2)>>2]=d}c[k>>2]=(c[k>>2]|0)+1}else while(1){d=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0;c[o>>2]=d;if(!d)break a;if(!(Rh(c[o>>2]|0)|0)){d=c[o>>2]|0;b=c[l>>2]|0;c[l>>2]=b+1;c[(c[r>>2]|0)+(b<<2)>>2]=d}c[k>>2]=(c[k>>2]|0)+1}while(0);if((c[l>>2]|0)<=1){i=f;return}c[(c[r>>2]|0)+(c[l>>2]<<2)>>2]=0;w3(c[r>>2]|0,c[l>>2]|0,4,60);c[l>>2]=1;while(1){k=c[(c[r>>2]|0)+(c[l>>2]<<2)>>2]|0;c[p>>2]=k;if(!k){s=19;break}c[o>>2]=c[(c[r>>2]|0)+((c[l>>2]|0)-1<<2)>>2];k=c[c[o>>2]>>2]&3;if(c[j>>2]|0){h=c[o>>2]|0;c[m>>2]=c[((k|0)==2?h:h+-32|0)+28>>2];h=c[p>>2]|0;c[n>>2]=c[((c[c[p>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]}else{h=c[o>>2]|0;c[m>>2]=c[((k|0)==3?h:h+32|0)+28>>2];h=c[p>>2]|0;c[n>>2]=c[((c[c[p>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]}if(Hg(c[m>>2]|0,c[n>>2]|0)|0){s=19;break}c[q>>2]=Ng(c[m>>2]|0,c[n>>2]|0,0)|0;a[(c[(c[q>>2]|0)+8>>2]|0)+112>>0]=4;Tg(c[g>>2]|0,c[q>>2]|0);c[l>>2]=(c[l>>2]|0)+1}if((s|0)==19){i=f;return}}function Rh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b;c[d>>2]=a;while(1){e=c[d>>2]|0;if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+116>>2]|0))break;c[d>>2]=c[(c[e+8>>2]|0)+116>>2]}a=c[d>>2]|0;f=c[d>>2]|0;i=b;return (c[(c[(c[((c[e>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)!=(c[(c[(c[((c[c[d>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)|0}function Sh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return ((c[c[c[e>>2]>>2]>>2]|0)>>>4)-((c[c[c[f>>2]>>2]>>2]|0)>>>4)|0}function Th(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;if((c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]|0)<=1){i=d;return}c[g>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]|0))break;c[h>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)+(c[f>>2]<<2)>>2];if(c[g>>2]|0)c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]=c[h>>2];c[(c[(c[h>>2]|0)+8>>2]|0)+168>>2]=c[g>>2];while(1){j=c[h>>2]|0;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+164>>2]|0))break;c[h>>2]=c[(c[j+8>>2]|0)+164>>2]}c[g>>2]=j;c[f>>2]=(c[f>>2]|0)+1}c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]=1;c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=c[c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]>>2];b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]=c[12561];b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]=c[12562];i=d;return}function Uh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[e>>2]|0))break;h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]=+(c[(c[(c[e>>2]|0)+8>>2]|0)+236>>2]|0);c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+164>>2]}i=b;return}function Vh(d){d=d|0;var e=0,f=0,g=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=d;c[g>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]=~~+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}c[j>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+49>>0]=0;w3(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0,c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0,4,61);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function Wh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=a;c[g>>2]=d;if(((c[g>>2]|0)%4|0|0)<2)c[o>>2]=1;else c[o>>2]=0;if((c[g>>2]|0)%2|0){c[h>>2]=(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)-1;c[m>>2]=-1}else{c[h>>2]=1;c[m>>2]=1}d=c[(c[f>>2]|0)+8>>2]|0;if(!((c[g>>2]|0)%2|0)){c[k>>2]=(b[d+236>>1]|0)+1;if((b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)>(b[(c[(c[12547]|0)+8>>2]|0)+236>>1]|0))c[k>>2]=(c[k>>2]|0)+-1;c[l>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1];c[m>>2]=1}else{c[k>>2]=(b[d+238>>1]|0)-1;c[l>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];if((b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)<(b[(c[(c[12547]|0)+8>>2]|0)+238>>1]|0))c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=-1}c[h>>2]=c[k>>2];while(1){if((c[h>>2]|0)==((c[l>>2]|0)+(c[m>>2]|0)|0))break;c[j>>2]=(c[h>>2]|0)-(c[m>>2]|0);c[n>>2]=(Zh(c[f>>2]|0,c[h>>2]|0,c[j>>2]|0)|0)&255;_h(c[f>>2]|0,c[h>>2]|0,c[o>>2]|0,c[n>>2]|0);c[h>>2]=(c[h>>2]|0)+(c[m>>2]|0)}uh(c[f>>2]|0,((c[o>>2]|0)!=0^1)&1);i=e;return}function Xh(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=d;c[k>>2]=0;c[n>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1];a:while(1){if((c[n>>2]|0)<(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)){o=16;break}a[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+48>>0]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)>>2]|0)-1|0))break;c[l>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];c[m>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[n>>2]<<6)+4>>2]|0)+((c[g>>2]|0)+1<<2)>>2];if((c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]|0)>=(c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]|0)){o=6;break a}if(!(zh(c[f>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)){c[j>>2]=0;c[h>>2]=0;if((c[n>>2]|0)>0){d=Ah(c[l>>2]|0,c[m>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+d;d=Ah(c[m>>2]|0,c[l>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+d}if((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+((c[n>>2]|0)+1<<6)>>2]|0)>0){d=Bh(c[l>>2]|0,c[m>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+d;d=Bh(c[m>>2]|0,c[l>>2]|0)|0;c[j>>2]=(c[j>>2]|0)+d}if((c[j>>2]|0)<=(c[h>>2]|0))Yh(c[f>>2]|0,c[n>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+-1}if((o|0)==6)La(123211,122928,465,123698);else if((o|0)==16){i=e;return c[k>>2]|0}return 0}function Yh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+64|0;h=g+52|0;j=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+8|0;u=g+4|0;v=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;if((a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0)==(a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0)){i=g;return}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;if(!(a[(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)+8>>2]|0)+156>>0]|0))c[q>>2]=(c[q>>2]|0)+1;else c[p>>2]=(c[p>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1}f=(a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0)==0;do if((c[q>>2]|0)<(c[p>>2]|0))if(f){c[m>>2]=c[k>>2];break}else{c[m>>2]=c[l>>2];break}else if(f){c[m>>2]=c[l>>2];break}else{c[m>>2]=c[k>>2];break}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;if((c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)==(c[m>>2]|0))c[n>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+1}c[o>>2]=(a[(c[(c[m>>2]|0)+8>>2]|0)+156>>0]|0)==0?1:0;c[v>>2]=(c[n>>2]|0)-1;while(1){if((c[v>>2]|0)<0)break;if((a[(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)+8>>2]|0)+156>>0]|0)!=(c[o>>2]|0))break;c[r>>2]=(c[r>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}c[v>>2]=(c[n>>2]|0)+1;while(1){if((c[v>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;if((a[(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)+8>>2]|0)+156>>0]|0)!=(c[o>>2]|0))break;c[s>>2]=(c[s>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1}th(c[k>>2]|0,c[l>>2]|0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;if((c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)==(c[m>>2]|0))c[n>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+1}c[v>>2]=(c[n>>2]|0)-1;while(1){if((c[v>>2]|0)<0)break;if((a[(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)+8>>2]|0)+156>>0]|0)!=(c[o>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}c[v>>2]=(c[n>>2]|0)+1;while(1){if((c[v>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;if((a[(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[v>>2]<<2)>>2]|0)+8>>2]|0)+156>>0]|0)!=(c[o>>2]|0))break;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1}v=N((c[t>>2]|0)-(c[u>>2]|0)|0)|0;if((v|0)<=(N((c[r>>2]|0)-(c[s>>2]|0)|0)|0)){i=g;return}th(c[k>>2]|0,c[l>>2]|0);i=g;return}function Zh(e,f,g){e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;j=i;i=i+64|0;k=j+56|0;l=j+52|0;m=j+48|0;n=j+44|0;o=j+40|0;p=j+36|0;q=j+32|0;r=j+28|0;s=j+24|0;t=j+20|0;u=j+16|0;v=j+12|0;w=j+8|0;x=j+4|0;y=j+60|0;z=j;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;a[y>>0]=0;c[u>>2]=c[12559];c[w>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)+4>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]|0))break;c[v>>2]=c[(c[w>>2]|0)+(c[n>>2]<<2)>>2];c[o>>2]=0;g=(c[m>>2]|0)>(c[l>>2]|0);c[p>>2]=0;a:do if(g)while(1){f=c[(c[(c[(c[v>>2]|0)+8>>2]|0)+180>>2]|0)+(c[p>>2]<<2)>>2]|0;c[x>>2]=f;if(!f)break a;if((b[(c[(c[x>>2]|0)+8>>2]|0)+154>>1]|0)>0){f=c[x>>2]|0;e=(c[(c[(c[((c[c[x>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]<<8)+(d[(c[(c[x>>2]|0)+8>>2]|0)+56+32>>0]|0)|0;f=c[o>>2]|0;c[o>>2]=f+1;c[(c[u>>2]|0)+(f<<2)>>2]=e}c[p>>2]=(c[p>>2]|0)+1}else while(1){e=c[(c[(c[(c[v>>2]|0)+8>>2]|0)+172>>2]|0)+(c[p>>2]<<2)>>2]|0;c[x>>2]=e;if(!e)break a;if((b[(c[(c[x>>2]|0)+8>>2]|0)+154>>1]|0)>0){e=c[x>>2]|0;f=(c[(c[(c[((c[c[x>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+236>>2]<<8)+(d[(c[(c[x>>2]|0)+8>>2]|0)+16+32>>0]|0)|0;e=c[o>>2]|0;c[o>>2]=e+1;c[(c[u>>2]|0)+(e<<2)>>2]=f}c[p>>2]=(c[p>>2]|0)+1}while(0);b:do switch(c[o>>2]|0){case 0:{h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=-1.0;break}case 1:{h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=+(c[c[u>>2]>>2]|0);break}case 2:{h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=+(((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0)/2|0|0);break}default:{w3(c[u>>2]|0,c[o>>2]|0,4,62);g=(c[o>>2]|0)/2|0;if((c[o>>2]|0)%2|0){h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=+(c[(c[u>>2]|0)+(g<<2)>>2]|0);break b}c[r>>2]=g;c[q>>2]=(c[r>>2]|0)-1;c[t>>2]=(c[(c[u>>2]|0)+((c[o>>2]|0)-1<<2)>>2]|0)-(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0);c[s>>2]=(c[(c[u>>2]|0)+(c[q>>2]<<2)>>2]|0)-(c[c[u>>2]>>2]|0);g=c[(c[u>>2]|0)+(c[q>>2]<<2)>>2]|0;if((c[s>>2]|0)==(c[t>>2]|0)){h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=+((g+(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0)|0)/2|0|0);break b}else{f=_(g,c[t>>2]|0)|0;c[z>>2]=f+(_(c[(c[u>>2]|0)+(c[r>>2]<<2)>>2]|0,c[s>>2]|0)|0);h[(c[(c[v>>2]|0)+8>>2]|0)+240>>3]=+((c[z>>2]|0)/((c[s>>2]|0)+(c[t>>2]|0)|0)|0|0);break b}}}while(0);c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]|0))break;c[v>>2]=c[(c[w>>2]|0)+(c[n>>2]<<2)>>2];if((c[(c[(c[v>>2]|0)+8>>2]|0)+180+4>>2]|0)==0?(c[(c[(c[v>>2]|0)+8>>2]|0)+172+4>>2]|0)==0:0){t=ai(c[v>>2]|0)|0;a[y>>0]=d[y>>0]|t}c[n>>2]=(c[n>>2]|0)+1}i=j;return a[y>>0]|0}function _h(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;j=i;i=i+64|0;k=j+44|0;l=j+40|0;m=j+36|0;n=j+32|0;o=j+28|0;p=j+24|0;q=j+49|0;r=j+48|0;s=j+20|0;t=j+16|0;u=j+12|0;v=j+8|0;w=j+4|0;x=j;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[s>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)+4>>2];c[v>>2]=(c[s>>2]|0)+(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]<<2);c[p>>2]=(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]|0)-1;while(1){if((c[p>>2]|0)<0)break;c[t>>2]=c[s>>2];while(1){if((c[t>>2]|0)>>>0>=(c[v>>2]|0)>>>0)break;while(1){if((c[t>>2]|0)>>>0<(c[v>>2]|0)>>>0)y=+h[(c[(c[c[t>>2]>>2]|0)+8>>2]|0)+240>>3]<0.0;else y=0;z=c[t>>2]|0;if(!y)break;c[t>>2]=z+4}if(z>>>0>=(c[v>>2]|0)>>>0)break;a[q>>0]=0;a[r>>0]=0;c[u>>2]=(c[t>>2]|0)+4;while(1){if((c[u>>2]|0)>>>0>=(c[v>>2]|0)>>>0)break;if(!((d[r>>0]|0|0)!=0?(c[(c[(c[c[u>>2]>>2]|0)+8>>2]|0)+212>>2]|0)!=0:0)){if(zh(c[k>>2]|0,c[c[t>>2]>>2]|0,c[c[u>>2]>>2]|0)|0){A=15;break}if(+h[(c[(c[c[u>>2]>>2]|0)+8>>2]|0)+240>>3]>=0.0)break;if(c[(c[(c[c[u>>2]>>2]|0)+8>>2]|0)+212>>2]|0)a[r>>0]=1}c[u>>2]=(c[u>>2]|0)+4}if((A|0)==15){A=0;a[q>>0]=1}if((c[u>>2]|0)>>>0>=(c[v>>2]|0)>>>0)break;do if(!(d[q>>0]|0)){c[w>>2]=~~+h[(c[(c[c[t>>2]>>2]|0)+8>>2]|0)+240>>3];c[x>>2]=~~+h[(c[(c[c[u>>2]>>2]|0)+8>>2]|0)+240>>3];if((c[w>>2]|0)<=(c[x>>2]|0)?!((c[m>>2]|0)!=0?(c[w>>2]|0)==(c[x>>2]|0):0):0)break;th(c[c[t>>2]>>2]|0,c[c[u>>2]>>2]|0);c[o>>2]=(c[o>>2]|0)+1}while(0);c[t>>2]=c[u>>2]}if((c[n>>2]|0)==0&(c[m>>2]|0)==0)c[v>>2]=(c[v>>2]|0)+-4;c[p>>2]=(c[p>>2]|0)+-1}if(!(c[o>>2]|0)){i=j;return}a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)+49>>0]=0;if((c[l>>2]|0)<=0){i=j;return}a[(c[(c[(c[12547]|0)+8>>2]|0)+196>>2]|0)+((c[l>>2]|0)-1<<6)+49>>0]=0;i=j;return}function $h(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return (c[c[e>>2]>>2]|0)-(c[c[f>>2]>>2]|0)|0}function ai(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;j=b+4|0;k=b;c[e>>2]=a;a=c[(c[e>>2]|0)+8>>2]|0;if((c[(c[(c[e>>2]|0)+8>>2]|0)+196+4>>2]|0)>0){c[j>>2]=c[a+196>>2];l=c[c[j>>2]>>2]|0;c[k>>2]=c[((c[c[c[j>>2]>>2]>>2]&3|0)==3?l:l+32|0)+28>>2];c[f>>2]=1;while(1){l=c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0;c[g>>2]=l;if(!l)break;l=c[g>>2]|0;if((c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]|0)){l=c[g>>2]|0;c[k>>2]=c[((c[c[g>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]}c[f>>2]=(c[f>>2]|0)+1}if(+h[(c[(c[k>>2]|0)+8>>2]|0)+240>>3]>=0.0){h[(c[(c[e>>2]|0)+8>>2]|0)+240>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+240>>3]+1.0;c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}}else if((c[a+188+4>>2]|0)>0){c[j>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+188>>2];a=c[c[j>>2]>>2]|0;c[k>>2]=c[((c[c[c[j>>2]>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2];c[f>>2]=1;while(1){a=c[(c[j>>2]|0)+(c[f>>2]<<2)>>2]|0;c[g>>2]=a;if(!a)break;a=c[g>>2]|0;if((c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]|0)){a=c[g>>2]|0;c[k>>2]=c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]}c[f>>2]=(c[f>>2]|0)+1}if(+h[(c[(c[k>>2]|0)+8>>2]|0)+240>>3]>0.0){h[(c[(c[e>>2]|0)+8>>2]|0)+240>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+240>>3]-1.0;c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}}c[d>>2]=1;m=c[d>>2]|0;i=b;return m|0}function bi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return (c[(c[(c[c[e>>2]>>2]|0)+8>>2]|0)+236>>2]|0)-(c[(c[(c[c[f>>2]>>2]|0)+8>>2]|0)+236>>2]|0)|0}function ci(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,j=0.0,k=0.0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b;c[d>>2]=a;c[12563]=8;c[13798]=24;h[4138]=.995;c[e>>2]=yA(c[d>>2]|0,123716)|0;if(!(c[e>>2]|0)){i=b;return}g=+t3(c[e>>2]|0);h[f>>3]=g;if(!(g>0.0)){i=b;return}if(1.0>+(c[12563]|0)*+h[f>>3])j=1.0;else j=+(c[12563]|0)*+h[f>>3];c[12563]=~~j;if(1.0>+(c[13798]|0)*+h[f>>3])k=1.0;else k=+(c[13798]|0)*+h[f>>3];c[13798]=~~k;i=b;return}function di(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+12|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)+2;c[g>>2]=bK(c[f>>2]<<2)|0;c[d+8>>2]=ei(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0,0)|0;O4(c[g>>2]|0);i=d;return}function ei(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;j=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[k>>2]=a;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[p>>2]=1;while(1){if((c[p>>2]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0))break;c[n>>2]=ei(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+184>>2]|0)+(c[p>>2]<<2)>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+1}p=uf(c[k>>2]|0)|0;if((p|0)==(c[k>>2]|0)){c[j>>2]=c[n>>2];s=c[j>>2]|0;i=g;return s|0}$4(c[l>>2]|0,0,c[m>>2]<<2|0)|0;c[r>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[r>>2]|0))break;c[(c[l>>2]|0)+(c[(c[(c[r>>2]|0)+8>>2]|0)+232>>2]<<2)>>2]=1;c[q>>2]=OA(c[k>>2]|0,c[r>>2]|0)|0;while(1){if(!(c[q>>2]|0))break;c[o>>2]=(c[(c[(c[r>>2]|0)+8>>2]|0)+232>>2]|0)+1;while(1){m=c[q>>2]|0;if((c[o>>2]|0)>(c[(c[(c[((c[c[q>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=1;c[o>>2]=(c[o>>2]|0)+1}c[q>>2]=QA(c[k>>2]|0,c[q>>2]|0)|0}c[r>>2]=aC(c[k>>2]|0,c[r>>2]|0)|0}c[o>>2]=b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[o>>2]|0)>(b[(c[(c[k>>2]|0)+8>>2]|0)+238>>1]|0))break;if(!(c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)){if(!(c[n>>2]|0))c[n>>2]=FD(uf(c[k>>2]|0)|0,123706,1)|0;c[r>>2]=fC(c[n>>2]|0,0,1)|0;MC(c[r>>2]|0,175026,304,1)|0;c[(c[(c[r>>2]|0)+8>>2]|0)+232>>2]=c[o>>2];h[(c[(c[r>>2]|0)+8>>2]|0)+96>>3]=.5;h[(c[(c[r>>2]|0)+8>>2]|0)+88>>3]=.5;h[(c[(c[r>>2]|0)+8>>2]|0)+80>>3]=1.0;c[(c[(c[r>>2]|0)+8>>2]|0)+216>>2]=1;c[(c[(c[r>>2]|0)+8>>2]|0)+172+4>>2]=0;q=bK(20)|0;c[(c[(c[r>>2]|0)+8>>2]|0)+172>>2]=q;c[(c[(c[r>>2]|0)+8>>2]|0)+180+4>>2]=0;q=bK(20)|0;c[(c[(c[r>>2]|0)+8>>2]|0)+180>>2]=q;eC(c[k>>2]|0,c[r>>2]|0,1)|0}c[o>>2]=(c[o>>2]|0)+1}c[j>>2]=c[n>>2];s=c[j>>2]|0;i=g;return s|0}function fi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2]|0)){i=e;return}zk(c[f>>2]|0);ii(c[f>>2]|0);if(a[139e3]|0)Uk(c[f>>2]|0);ji(c[f>>2]|0);if(gl(c[f>>2]|0)|0)ii(c[f>>2]|0);ki(c[f>>2]|0);d=c[f>>2]|0;do if(gK(d,2,li(c[f>>2]|0)|0)|0){mi(c[f>>2]|0);b=c[f>>2]|0;if(!(gK(b,2,li(c[f>>2]|0)|0)|0))break;else La(123724,123752,134,123763)}while(0);ni(c[f>>2]|0);oi(c[f>>2]|0,c[g>>2]|0);pi(c[f>>2]|0);i=e;return}function gi(a,d,e,f){a=a|0;d=d|0;e=+e;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+24|0;k=g+20|0;l=g;m=g+16|0;n=g+12|0;o=g+8|0;c[j>>2]=a;c[k>>2]=d;h[l>>3]=e;c[m>>2]=f;c[o>>2]=bK(64)|0;f=(c[o>>2]|0)+32|0;c[f>>2]=c[f>>2]&-4|3;f=c[o>>2]|0;c[f>>2]=c[f>>2]&-4|2;f=bK(176)|0;c[(c[o>>2]|0)+8>>2]=f;c[n>>2]=c[o>>2];o=c[n>>2]|0;c[((c[c[n>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]=c[j>>2];j=c[n>>2]|0;c[((c[c[n>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]=c[k>>2];if(+h[l>>3]>65535.0)h[l>>3]=+qi(+h[l>>3]);e=+h[l>>3];b[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]=~~(+h[l>>3]>=0.0?e+.5:e-.5);c[(c[(c[n>>2]|0)+8>>2]|0)+156>>2]=c[m>>2];Ig(c[n>>2]|0)|0;i=g;return c[n>>2]|0}function hi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;if((d[(c[(c[f>>2]|0)+8>>2]|0)+56+28>>0]|0|0)!=(d[(c[(c[g>>2]|0)+8>>2]|0)+56+28>>0]|0|0)){j=0;k=j&1;i=e;return k|0}if(!(+h[(c[(c[f>>2]|0)+8>>2]|0)+56>>3]==+h[(c[(c[g>>2]|0)+8>>2]|0)+56>>3]?+h[(c[(c[f>>2]|0)+8>>2]|0)+56+8>>3]==+h[(c[(c[g>>2]|0)+8>>2]|0)+56+8>>3]:0))l=4;if((l|0)==4?(d[(c[(c[f>>2]|0)+8>>2]|0)+56+28>>0]|0|0)!=0:0){j=0;k=j&1;i=e;return k|0}if(+h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]==+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]?+h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]==+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]:0){j=1;k=j&1;i=e;return k|0}j=(d[(c[(c[f>>2]|0)+8>>2]|0)+16+28>>0]|0|0)==0;k=j&1;i=e;return k|0}function ii(d){d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0,A=0.0,B=0.0;e=i;i=i+80|0;f=e+76|0;g=e+72|0;j=e+68|0;k=e+64|0;l=e+32|0;m=e+24|0;n=e+16|0;o=e+8|0;p=e;q=e+60|0;r=e+56|0;s=e+52|0;t=e+48|0;u=e+44|0;v=e+40|0;c[f>>2]=d;c[s>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2];h[m>>3]=0.0;h[l>>3]=0.0;c[k>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[k>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[s>>2]|0)+(c[k>>2]<<6)>>2]|0))break;c[q>>2]=c[(c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];h[l>>3]=+h[(c[(c[q>>2]|0)+8>>2]|0)+80>>3]/2.0;a:do if(c[(c[(c[q>>2]|0)+8>>2]|0)+204>>2]|0){c[j>>2]=0;while(1){d=c[(c[(c[(c[q>>2]|0)+8>>2]|0)+204>>2]|0)+(c[j>>2]<<2)>>2]|0;c[r>>2]=d;if(!d)break a;d=c[r>>2]|0;w=c[r>>2]|0;if((c[((c[c[r>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)==(c[((c[c[r>>2]>>2]&3|0)==2?w:w+-32|0)+28>>2]|0)?(c[(c[(c[r>>2]|0)+8>>2]|0)+96>>2]|0)!=0:0){if(+h[l>>3]>+h[(c[(c[(c[r>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]/2.0)x=+h[l>>3];else x=+h[(c[(c[(c[r>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]/2.0;h[l>>3]=x}c[j>>2]=(c[j>>2]|0)+1}}while(0);if(+h[(c[s>>2]|0)+(c[k>>2]<<6)+40>>3]<+h[l>>3]){y=+h[l>>3];h[(c[s>>2]|0)+(c[k>>2]<<6)+24>>3]=y;h[(c[s>>2]|0)+(c[k>>2]<<6)+40>>3]=y}if(+h[(c[s>>2]|0)+(c[k>>2]<<6)+32>>3]<+h[l>>3]){y=+h[l>>3];h[(c[s>>2]|0)+(c[k>>2]<<6)+16>>3]=y;h[(c[s>>2]|0)+(c[k>>2]<<6)+32>>3]=y}w=c[(c[(c[q>>2]|0)+8>>2]|0)+212>>2]|0;c[t>>2]=w;if(w){if((c[t>>2]|0)==(c[f>>2]|0))z=0;else z=eO(c[t>>2]|0,c[13813]|0,8,0)|0;c[v>>2]=z;if((c[(c[(c[q>>2]|0)+8>>2]|0)+232>>2]|0)==(b[(c[(c[t>>2]|0)+8>>2]|0)+236>>1]|0)){if(+h[(c[(c[t>>2]|0)+8>>2]|0)+128>>3]>+h[l>>3]+ +(c[v>>2]|0))A=+h[(c[(c[t>>2]|0)+8>>2]|0)+128>>3];else A=+h[l>>3]+ +(c[v>>2]|0);h[(c[(c[t>>2]|0)+8>>2]|0)+128>>3]=A}if((c[(c[(c[q>>2]|0)+8>>2]|0)+232>>2]|0)==(b[(c[(c[t>>2]|0)+8>>2]|0)+238>>1]|0)){if(+h[(c[(c[t>>2]|0)+8>>2]|0)+120>>3]>+h[l>>3]+ +(c[v>>2]|0))B=+h[(c[(c[t>>2]|0)+8>>2]|0)+120>>3];else B=+h[l>>3]+ +(c[v>>2]|0);h[(c[(c[t>>2]|0)+8>>2]|0)+120>>3]=B}}c[g>>2]=(c[g>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[u>>2]=Pi(c[f>>2]|0)|0;h[m>>3]=0.0;c[k>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1];h[(c[(c[c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+(c[k>>2]<<6)+16>>3];while(1){g=(c[k>>2]|0)+-1|0;c[k>>2]=g;if((g|0)<(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0))break;h[o>>3]=+h[(c[s>>2]|0)+((c[k>>2]|0)+1<<6)+40>>3]+ +h[(c[s>>2]|0)+(c[k>>2]<<6)+32>>3]+ +(c[(c[(c[f>>2]|0)+8>>2]|0)+252>>2]|0);h[p>>3]=+h[(c[s>>2]|0)+((c[k>>2]|0)+1<<6)+24>>3]+ +h[(c[s>>2]|0)+(c[k>>2]<<6)+16>>3]+8.0;h[n>>3]=+h[o>>3]>+h[p>>3]?+h[o>>3]:+h[p>>3];if((c[(c[s>>2]|0)+(c[k>>2]<<6)>>2]|0)>0)h[(c[(c[c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[(c[c[(c[s>>2]|0)+((c[k>>2]|0)+1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]+ +h[n>>3];h[m>>3]=+h[m>>3]>+h[n>>3]?+h[m>>3]:+h[n>>3]}b:do if(((c[u>>2]|0)!=0?(c[(c[(c[f>>2]|0)+8>>2]|0)+116>>2]&1|0)!=0:0)?(Qi(c[f>>2]|0,0),(a[(c[(c[f>>2]|0)+8>>2]|0)+276>>0]|0)!=0):0){h[m>>3]=0.0;c[k>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1];h[o>>3]=+h[(c[(c[c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3];while(1){g=(c[k>>2]|0)+-1|0;c[k>>2]=g;if((g|0)<(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0))break b;h[p>>3]=+h[(c[(c[c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3];h[n>>3]=+h[p>>3]-+h[o>>3];h[m>>3]=+h[m>>3]>+h[n>>3]?+h[m>>3]:+h[n>>3];h[o>>3]=+h[p>>3]}}while(0);c:do if(a[(c[(c[f>>2]|0)+8>>2]|0)+276>>0]|0){c[k>>2]=(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)-1;while(1){if((c[k>>2]|0)<(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0))break c;if((c[(c[s>>2]|0)+(c[k>>2]<<6)>>2]|0)>0)h[(c[(c[c[(c[s>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[(c[c[(c[s>>2]|0)+((c[k>>2]|0)+1<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]+ +h[m>>3];c[k>>2]=(c[k>>2]|0)+-1}}while(0);c[q>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[q>>2]|0))break;h[(c[(c[q>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[(c[c[(c[s>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+232>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3];c[q>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+164>>2]}i=e;return}function ji(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;Li(c[d>>2]|0);c[g>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;if(c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]|0)Mi(c[d>>2]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]|0);if(c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]|0)Mi(c[d>>2]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]|0);a:do if(c[(c[(c[g>>2]|0)+8>>2]|0)+204>>2]|0){c[e>>2]=0;while(1){a=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+204>>2]|0)+(c[e>>2]<<2)>>2]|0;c[h>>2]=a;if(!a)break a;a=c[h>>2]|0;k=c[h>>2]|0;l=(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0;c[f>>2]=l;if((l|0)!=0?(c[j>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+116>>2],(hi(c[h>>2]|0,c[j>>2]|0)|0)==0):0){Jg((c[(c[g>>2]|0)+8>>2]|0)+204|0,c[h>>2]|0);if((c[f>>2]|0)==1)Ig(c[h>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+-1}c[e>>2]=(c[e>>2]|0)+1}}while(0);c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}i=b;return}function ki(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;xi(c[d>>2]|0);yi(c[d>>2]|0);zi(c[d>>2]|0);Ai(c[d>>2]|0);Bi(c[d>>2]|0);i=b;return}function li(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0.0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=2147483647;a=yA(c[d>>2]|0,123952)|0;c[f>>2]=a;if(!a){g=c[e>>2]|0;i=b;return g|0}h=+t3(c[f>>2]|0);c[e>>2]=~~(h*+(kB(c[d>>2]|0)|0));g=c[e>>2]|0;i=b;return g|0}function mi(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+48|0;f=e+36|0;g=e+32|0;h=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[f>>2]=d;c[j>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)){q=33;break}c[p>>2]=(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6);c[k>>2]=0;c[l>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[c[p>>2]>>2]|0))break;c[l>>2]=c[(c[(c[p>>2]|0)+4>>2]|0)+(c[g>>2]<<2)>>2];if(c[(c[(c[l>>2]|0)+8>>2]|0)+256>>2]|0){c[h>>2]=0;while(1){d=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+256>>2]|0)+(c[h>>2]<<2)>>2]|0;c[o>>2]=d;if(!d)break;d=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[j>>2]|0)){q=10;break}d=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[j>>2]|0)){q=10;break}c[h>>2]=(c[h>>2]|0)+1}if((q|0)==10){q=0;c[k>>2]=1}if(c[k>>2]|0)break}if(c[(c[(c[l>>2]|0)+8>>2]|0)+248>>2]|0){c[h>>2]=0;while(1){d=c[(c[(c[(c[l>>2]|0)+8>>2]|0)+248>>2]|0)+(c[h>>2]<<2)>>2]|0;c[o>>2]=d;if(!d)break;d=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[j>>2]|0)){q=18;break}d=c[o>>2]|0;if((c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[j>>2]|0)){q=18;break}c[h>>2]=(c[h>>2]|0)+1}if((q|0)==18){q=0;c[k>>2]=1}if(c[k>>2]|0)break}c[g>>2]=(c[g>>2]|0)+1}if((c[k>>2]|0)==0&(c[l>>2]|0)!=0){c[l>>2]=c[c[(c[p>>2]|0)+4>>2]>>2];d=c[p>>2]|0;if((c[j>>2]|0)<(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))c[m>>2]=c[c[d+64+4>>2]>>2];else c[m>>2]=c[c[d+-64+4>>2]>>2];if(!(c[m>>2]|0)){q=27;break}c[n>>2]=Sg(c[f>>2]|0)|0;a[(c[(c[n>>2]|0)+8>>2]|0)+156>>0]=2;gi(c[n>>2]|0,c[l>>2]|0,0.0,0)|0;gi(c[n>>2]|0,c[m>>2]|0,0.0,0)|0;if((c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)<(c[(c[(c[m>>2]|0)+8>>2]|0)+232>>2]|0))r=c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0;else r=c[(c[(c[m>>2]|0)+8>>2]|0)+232>>2]|0;c[(c[(c[n>>2]|0)+8>>2]|0)+232>>2]=r}c[j>>2]=(c[j>>2]|0)+1}if((q|0)==27)La(123936,123752,111,123939);else if((q|0)==33){i=e;return}}function ni(a){a=a|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[k>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2];c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[k>>2]|0)+(c[f>>2]<<6)>>2]|0))break;c[j>>2]=c[(c[(c[k>>2]|0)+(c[f>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];h[(c[(c[j>>2]|0)+8>>2]|0)+16>>3]=+(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0);c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]=c[f>>2];c[g>>2]=(c[g>>2]|0)+1}c[f>>2]=(c[f>>2]|0)+1}i=d;return}function oi(d,e){d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;f=i;i=i+80|0;g=f+72|0;j=f+68|0;k=f+40|0;l=f+32|0;m=f+24|0;n=f+16|0;o=f+64|0;p=f+77|0;q=f+76|0;r=f+56|0;s=f+48|0;t=f+8|0;u=f;c[g>>2]=d;c[j>>2]=e;h[k>>3]=0.0;h[l>>3]=0.0;ri(c[g>>2]|0,c[g>>2]|0);if((b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0)>0?(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)!=0:0){c[r>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]);c[r+4>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3]);if(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1){c[s>>2]=c[r>>2];c[r>>2]=c[r+4>>2];c[r+4>>2]=c[s>>2]}a[p>>0]=1;s=c[g>>2]|0;if((c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)==4)a[q>>0]=si(s,.5)|0;else a[q>>0]=(c[(c[(c[s+8>>2]|0)+8>>2]|0)+84>>2]|0)==2;s=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;do if(a[q>>0]|0){if(+h[s+64>>3]<=0.0){a[p>>0]=0;break}h[k>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]/+(c[r>>2]|0);h[l>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]/+(c[r+4>>2]|0);if(+h[k>>3]<1.0|+h[l>>3]<1.0)if(+h[k>>3]<+h[l>>3]){h[l>>3]=+h[l>>3]/+h[k>>3];h[k>>3]=1.0;break}else{h[k>>3]=+h[k>>3]/+h[l>>3];h[l>>3]=1.0;break}}else{e=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;if((c[s+84>>2]|0)==5){if(+h[e+64>>3]<=0.0){a[p>>0]=0;break}h[k>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]/+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16>>3];h[l>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]/+h[(c[(c[g>>2]|0)+8>>2]|0)+16+16+8>>3];if(+h[k>>3]>1.0&+h[l>>3]>1.0){h[t>>3]=+h[k>>3]<+h[l>>3]?+h[k>>3]:+h[l>>3];v=+h[t>>3];h[l>>3]=v;h[k>>3]=v;break}else{a[p>>0]=0;break}}else{if((c[e+84>>2]|0)!=1){a[p>>0]=0;break}h[n>>3]=+h[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+16>>3];h[m>>3]=+(c[r+4>>2]|0)/+(c[r>>2]|0);if(+h[m>>3]<+h[n>>3]){h[l>>3]=+h[n>>3]/+h[m>>3];h[k>>3]=1.0;break}else{h[k>>3]=+h[m>>3]/+h[n>>3];h[l>>3]=1.0;break}}}while(0);if(a[p>>0]|0){if(c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]&1){h[u>>3]=+h[k>>3];h[k>>3]=+h[l>>3];h[l>>3]=+h[u>>3]}c[o>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[o>>2]|0))break;v=+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]*+h[k>>3];h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]=+(~~(+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]*+h[k>>3]>=0.0?v+.5:v-.5)|0);v=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3]*+h[l>>3];h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3]=+(~~(+h[(c[(c[o>>2]|0)+8>>2]|0)+16+8>>3]*+h[l>>3]>=0.0?v+.5:v-.5)|0);c[o>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+164>>2]}ti(c[g>>2]|0,c[g>>2]|0,+h[k>>3],+h[l>>3])}}if(!(c[j>>2]|0)){i=f;return}ui(c[g>>2]|0,c[j>>2]|0);i=f;return}function pi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=b;c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;c[f>>2]=0;while(1){b=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)+(c[f>>2]<<2)>>2]|0;c[k>>2]=b;if(!b)break;O4(c[(c[k>>2]|0)+8>>2]|0);O4(c[k>>2]|0);c[f>>2]=(c[f>>2]|0)+1}if(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0);if(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0);b=(c[(c[g>>2]|0)+8>>2]|0)+180|0;l=(c[(c[g>>2]|0)+8>>2]|0)+256|0;c[b>>2]=c[l>>2];c[b+4>>2]=c[l+4>>2];l=(c[(c[g>>2]|0)+8>>2]|0)+172|0;b=(c[(c[g>>2]|0)+8>>2]|0)+248|0;c[l>>2]=c[b>>2];c[l+4>>2]=c[b+4>>2];c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}c[j>>2]=0;c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2];if((a[(c[(c[g>>2]|0)+8>>2]|0)+156>>0]|0)==2){f=c[h>>2]|0;if(c[j>>2]|0)c[(c[(c[j>>2]|0)+8>>2]|0)+164>>2]=f;else c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=f;O4(c[(c[g>>2]|0)+8>>2]|0);O4(c[g>>2]|0)}else c[j>>2]=c[g>>2];c[g>>2]=c[h>>2]}c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]|0)+8>>2]|0)+168>>2]=0;i=d;return}function qi(a){a=+a;var b=0,d=0,e=0;b=i;i=i+32|0;d=b+8|0;e=b;h[e>>3]=a;h[d>>3]=+h[e>>3];c[d+8>>2]=65535;$z(1,123776,d)|0;i=b;return 65535.0}function ri(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;ri(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2]|0,c[f>>2]|0);c[g>>2]=(c[g>>2]|0)+1}wi(c[e>>2]|0,c[f>>2]|0);i=d;return}function si(b,d){b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+160|0;f=e+136|0;g=e+120|0;j=e+156|0;k=e+152|0;l=e+112|0;m=e+104|0;n=e+96|0;o=e+88|0;p=e+80|0;q=e+64|0;r=e+48|0;s=e+32|0;t=e+16|0;u=e;c[k>>2]=b;h[l>>3]=d;b=(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+48|0;c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];if(!(+h[r>>3]<.001)?!(+h[r+8>>3]<.001):0){b=(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+32|0;c[s>>2]=c[b>>2];c[s+4>>2]=c[b+4>>2];c[s+8>>2]=c[b+8>>2];c[s+12>>2]=c[b+12>>2];c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2];vi(t,g,f);c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2];vi(u,g,f);c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];h[q>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16>>3];h[q+8>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+16+16+8>>3];h[m>>3]=+h[r>>3]/+h[q>>3];h[n>>3]=+h[r+8>>3]/+h[q+8>>3];if(+h[m>>3]>=1.0&+h[n>>3]>=1.0){a[j>>0]=0;v=a[j>>0]|0;i=e;return v|0}else{h[o>>3]=+h[m>>3]<+h[n>>3]?+h[m>>3]:+h[n>>3];d=+h[o>>3]>+h[l>>3]?+h[o>>3]:+h[l>>3];h[n>>3]=d;h[m>>3]=d;h[p>>3]=+Z(+(+h[m>>3]*+h[q>>3]/+h[r>>3]));h[m>>3]=+h[p>>3]*+h[r>>3]/+h[q>>3];h[p>>3]=+Z(+(+h[n>>3]*+h[q+8>>3]/+h[r+8>>3]));h[n>>3]=+h[p>>3]*+h[r+8>>3]/+h[q+8>>3];h[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+64>>3]=+h[q>>3]*+h[m>>3];h[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+64+8>>3]=+h[q+8>>3]*+h[n>>3];a[j>>0]=1;v=a[j>>0]|0;i=e;return v|0}}a[j>>0]=0;v=a[j>>0]|0;i=e;return v|0}function ti(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+24|0;j=f+20|0;k=f+8|0;l=f;m=f+16|0;c[g>>2]=a;c[j>>2]=b;h[k>>3]=d;h[l>>3]=e;c[m>>2]=1;while(1){if((c[m>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;ti(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[m>>2]<<2)>>2]|0,c[j>>2]|0,+h[k>>3],+h[l>>3]);c[m>>2]=(c[m>>2]|0)+1}m=(c[(c[g>>2]|0)+8>>2]|0)+16|0;h[m>>3]=+h[m>>3]*+h[k>>3];m=(c[(c[g>>2]|0)+8>>2]|0)+16+8|0;h[m>>3]=+h[m>>3]*+h[l>>3];m=(c[(c[g>>2]|0)+8>>2]|0)+16+16|0;h[m>>3]=+h[m>>3]*+h[k>>3];k=(c[(c[g>>2]|0)+8>>2]|0)+16+16+8|0;h[k>>3]=+h[k>>3]*+h[l>>3];i=f;return}function ui(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;e=i;i=i+64|0;f=e+40|0;g=e+32|0;j=e+24|0;k=e+8|0;l=e+48|0;m=e+44|0;n=e;c[l>>2]=b;c[m>>2]=d;h[n>>3]=(+h[(c[(c[l>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[l>>2]|0)+8>>2]|0)+16>>3])/(+h[(c[(c[l>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[l>>2]|0)+8>>2]|0)+16+8>>3]);if(a[138998]|0){d=c[24742]|0;o=(+h[(c[(c[l>>2]|0)+8>>2]|0)+16+16>>3]-+h[(c[(c[l>>2]|0)+8>>2]|0)+16>>3])*(+h[(c[(c[l>>2]|0)+8>>2]|0)+16+16+8>>3]-+h[(c[(c[l>>2]|0)+8>>2]|0)+16+8>>3])/1.0e4;h[k>>3]=+h[n>>3];h[k+8>>3]=o;Y2(d,123852,k)|0;k=c[24742]|0;c[j>>2]=Uj(c[l>>2]|0)|0;Y2(k,123877,j)|0}do if(!(+h[n>>3]>+h[c[m>>2]>>3]*1.1)){j=(c[m>>2]|0)+24|0;if(!(+h[n>>3]<=+h[c[m>>2]>>3]*.8)){c[j>>2]=0;break}c[j>>2]=-1;if(a[138998]|0)Y2(c[24742]|0,123887,g)|0}else c[(c[m>>2]|0)+24>>2]=~~(+h[c[m>>2]>>3]*+((c[(c[m>>2]|0)+20>>2]|0)-(c[(c[m>>2]|0)+16>>2]|0)|0)/+h[n>>3]);while(0);if(!(a[138998]|0)){i=e;return}n=c[24742]|0;c[f>>2]=c[(c[m>>2]|0)+24>>2];Y2(n,123922,f)|0;i=e;return}function vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]-+h[d>>3];h[f+8>>3]=+h[b+8>>3]-+h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function wi(d,e){d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+80|0;g=f+68|0;j=f+64|0;k=f+60|0;l=f+56|0;m=f+40|0;n=f+32|0;o=f+52|0;p=f+16|0;q=f;r=f+48|0;c[g>>2]=d;c[j>>2]=e;e=c[g>>2]|0;a:do if((e|0)==(uf(c[g>>2]|0)|0)){h[p>>3]=2147483647.0;h[q>>3]=-2147483647.0;c[k>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[k>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;c[r>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2];if((c[r>>2]|0)!=0?(d=c[c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]>>2]|0,c[o>>2]=d,(d|0)!=0):0){c[l>>2]=1;while(1){if(!(a[(c[(c[o>>2]|0)+8>>2]|0)+156>>0]|0))break;if((c[l>>2]|0)>=(c[r>>2]|0))break;c[o>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[l>>2]<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}if(!(a[(c[(c[o>>2]|0)+8>>2]|0)+156>>0]|0)){h[m>>3]=+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[o>>2]|0)+8>>2]|0)+88>>3];h[p>>3]=+h[p>>3]<+h[m>>3]?+h[p>>3]:+h[m>>3];c[o>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+((c[r>>2]|0)-1<<2)>>2];c[l>>2]=(c[r>>2]|0)-2;while(1){if(!(a[(c[(c[o>>2]|0)+8>>2]|0)+156>>0]|0))break;c[o>>2]=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]|0)+(c[l>>2]<<2)>>2];c[l>>2]=(c[l>>2]|0)+-1}h[m>>3]=+h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[o>>2]|0)+8>>2]|0)+96>>3];h[q>>3]=+h[q>>3]>+h[m>>3]?+h[q>>3]:+h[m>>3]}}c[k>>2]=(c[k>>2]|0)+1}h[n>>3]=8.0;c[l>>2]=1;while(1){if((c[l>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break a;h[m>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2]|0)+16>>3]-+h[n>>3];h[p>>3]=+h[p>>3]<+h[m>>3]?+h[p>>3]:+h[m>>3];h[m>>3]=+h[(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2]|0)+16+16>>3]+ +h[n>>3];h[q>>3]=+h[q>>3]>+h[m>>3]?+h[q>>3]:+h[m>>3];c[l>>2]=(c[l>>2]|0)+1}}else{h[p>>3]=+(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+256>>2]|0)+8>>2]|0)+232>>2]|0);h[q>>3]=+(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+260>>2]|0)+8>>2]|0)+232>>2]|0)}while(0);h[p+8>>3]=+h[(c[(c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+120>>3];h[q+8>>3]=+h[(c[(c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+128>>3];j=(c[(c[g>>2]|0)+8>>2]|0)+16|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];p=(c[(c[g>>2]|0)+8>>2]|0)+16+16|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];i=f;return}function xi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[h>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[h>>2]|0))break;d=(c[(c[h>>2]|0)+8>>2]|0)+248|0;a=(c[(c[h>>2]|0)+8>>2]|0)+172|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];a=(c[(c[h>>2]|0)+8>>2]|0)+256|0;d=(c[(c[h>>2]|0)+8>>2]|0)+180|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[e>>2]=0;while(1){if(!(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]|0)+(c[e>>2]<<2)>>2]|0))break;c[e>>2]=(c[e>>2]|0)+1}c[f>>2]=0;while(1){if(!(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0)+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=(c[f>>2]|0)+1}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0);c[(c[(c[h>>2]|0)+8>>2]|0)+172+4>>2]=0;d=bK((c[g>>2]|0)+3+1<<2)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]=d;c[(c[(c[h>>2]|0)+8>>2]|0)+180+4>>2]=0;d=bK(16)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]=d;c[h>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+164>>2]}i=b;return}function yi(a){a=a|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0,H=0;f=i;i=i+96|0;g=f+88|0;j=f+84|0;k=f+80|0;l=f+76|0;m=f+72|0;n=f+68|0;o=f+64|0;p=f+8|0;q=f+56|0;r=f+52|0;s=f+48|0;t=f+44|0;u=f+40|0;v=f+36|0;w=f+32|0;x=f+28|0;y=f+24|0;z=f+20|0;A=f+16|0;B=f;c[g>>2]=a;c[A>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2];a=(d[(c[(c[g>>2]|0)+8>>2]|0)+113>>0]&1|0)!=0;C=c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]|0;c[q>>2]=C;D=q+4|0;if(a)c[D>>2]=5;else c[D>>2]=C;c[j>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[c[(c[A>>2]|0)+(c[j>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+232>>2]=0;h[B>>3]=0.0;c[r>>2]=c[q+((c[j>>2]&1)<<2)>>2];c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[A>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[w>>2]=c[(c[(c[A>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[k>>2]<<2)>>2];h[(c[(c[w>>2]|0)+8>>2]|0)+240>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3];if((c[(c[(c[w>>2]|0)+8>>2]|0)+204+4>>2]|0)>0){c[m>>2]=0;c[l>>2]=0;while(1){C=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+204>>2]|0)+(c[l>>2]<<2)>>2]|0;c[s>>2]=C;if(!C)break;C=c[s>>2]|0;D=c[s>>2]|0;if((c[((c[c[s>>2]>>2]&3|0)==3?C:C+32|0)+28>>2]|0)==(c[((c[c[s>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0)){D=nN(c[s>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+D}c[l>>2]=(c[l>>2]|0)+1}D=(c[(c[w>>2]|0)+8>>2]|0)+96|0;h[D>>3]=+h[D>>3]+ +(c[m>>2]|0)}c[x>>2]=c[(c[(c[A>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+((c[k>>2]|0)+1<<2)>>2];if(c[x>>2]|0){h[p>>3]=+h[(c[(c[w>>2]|0)+8>>2]|0)+96>>3]+ +h[(c[(c[x>>2]|0)+8>>2]|0)+88>>3]+ +(c[r>>2]|0);c[t>>2]=gi(c[w>>2]|0,c[x>>2]|0,+h[p>>3],0)|0;D=~~(+h[B>>3]+ +h[p>>3]);c[(c[(c[x>>2]|0)+8>>2]|0)+232>>2]=D;h[B>>3]=+(D|0)}D=c[(c[(c[w>>2]|0)+8>>2]|0)+112>>2]|0;c[s>>2]=D;if(D){c[t>>2]=c[c[(c[(c[w>>2]|0)+8>>2]|0)+256>>2]>>2];c[u>>2]=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+256>>2]|0)+4>>2];D=c[t>>2]|0;C=c[u>>2]|0;if((c[(c[(c[((c[c[t>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[((c[c[u>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)){c[v>>2]=c[t>>2];c[t>>2]=c[u>>2];c[u>>2]=c[v>>2]}c[n>>2]=(_(e[(c[(c[s>>2]|0)+8>>2]|0)+170>>1]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]|0)|0)/2|0;C=c[t>>2]|0;D=c[t>>2]|0;c[o>>2]=~~(+(c[n>>2]|0)+ +h[(c[(c[((c[c[t>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0)+8>>2]|0)+96>>3]+ +h[(c[(c[((c[c[t>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0)+8>>2]|0)+88>>3]);D=c[t>>2]|0;C=c[t>>2]|0;if(!(Ji(c[((c[c[t>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0,c[((c[c[t>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0)|0)){C=c[t>>2]|0;D=c[t>>2]|0;gi(c[((c[c[t>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0,c[((c[c[t>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0,+(c[o>>2]|0),c[(c[(c[s>>2]|0)+8>>2]|0)+156>>2]|0)|0}D=c[u>>2]|0;C=c[u>>2]|0;c[o>>2]=~~(+(c[n>>2]|0)+ +h[(c[(c[((c[c[u>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0)+8>>2]|0)+96>>3]+ +h[(c[(c[((c[c[u>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0)+8>>2]|0)+88>>3]);C=c[u>>2]|0;D=c[u>>2]|0;if(!(Ji(c[((c[c[u>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0,c[((c[c[u>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0)|0)){D=c[u>>2]|0;C=c[u>>2]|0;gi(c[((c[c[u>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]|0,c[((c[c[u>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0,+(c[o>>2]|0),c[(c[(c[s>>2]|0)+8>>2]|0)+156>>2]|0)|0}}c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[(c[w>>2]|0)+8>>2]|0)+188+4>>2]|0))break;c[s>>2]=c[(c[(c[(c[w>>2]|0)+8>>2]|0)+188>>2]|0)+(c[l>>2]<<2)>>2];C=c[s>>2]|0;D=c[s>>2]|0;a=c[c[s>>2]>>2]&3;if((c[(c[(c[((c[c[s>>2]>>2]&3|0)==3?C:C+32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[((c[c[s>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)){D=c[s>>2]|0;c[y>>2]=c[((a|0)==3?D:D+32|0)+28>>2];D=c[s>>2]|0;c[z>>2]=c[((c[c[s>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]}else{D=c[s>>2]|0;c[y>>2]=c[((a|0)==2?D:D+-32|0)+28>>2];D=c[s>>2]|0;c[z>>2]=c[((c[c[s>>2]>>2]&3|0)==3?D:D+32|0)+28>>2]}h[p>>3]=+h[(c[(c[y>>2]|0)+8>>2]|0)+96>>3]+ +h[(c[(c[z>>2]|0)+8>>2]|0)+88>>3];E=+(_(e[(c[(c[s>>2]|0)+8>>2]|0)+170>>1]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]|0)|0);c[n>>2]=~~(E+ +h[p>>3]);D=Gg(c[y>>2]|0,c[z>>2]|0)|0;c[t>>2]=D;if(!D){if(!(c[(c[(c[s>>2]|0)+8>>2]|0)+96>>2]|0))gi(c[y>>2]|0,c[z>>2]|0,+(c[n>>2]|0),c[(c[(c[s>>2]|0)+8>>2]|0)+156>>2]|0)|0}else{E=+h[(c[(c[s>>2]|0)+8>>2]|0)+136>>3];if(+(c[n>>2]|0)>+h[p>>3]+ +(c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]|0)+ +(~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+136>>3]>=0.0?E+.5:E-.5)|0))F=+(c[n>>2]|0);else{E=+h[(c[(c[s>>2]|0)+8>>2]|0)+136>>3];F=+h[p>>3]+ +(c[(c[(c[g>>2]|0)+8>>2]|0)+248>>2]|0)+ +(~~(+h[(c[(c[s>>2]|0)+8>>2]|0)+136>>3]>=0.0?E+.5:E-.5)|0)}c[n>>2]=~~F;if((c[n>>2]|0)>65535)c[n>>2]=~~+qi(+(c[n>>2]|0));if((e[(c[(c[t>>2]|0)+8>>2]|0)+170>>1]|0)>(c[n>>2]|0))G=e[(c[(c[t>>2]|0)+8>>2]|0)+170>>1]|0;else G=c[n>>2]|0;b[(c[(c[t>>2]|0)+8>>2]|0)+170>>1]=G;if((c[(c[(c[t>>2]|0)+8>>2]|0)+156>>2]|0)>(c[(c[(c[s>>2]|0)+8>>2]|0)+156>>2]|0))H=c[(c[(c[t>>2]|0)+8>>2]|0)+156>>2]|0;else H=c[(c[(c[s>>2]|0)+8>>2]|0)+156>>2]|0;c[(c[(c[t>>2]|0)+8>>2]|0)+156>>2]=H}c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}i=f;return}function zi(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=b;c[k>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[k>>2]|0))break;a:do if(c[(c[(c[k>>2]|0)+8>>2]|0)+256>>2]|0){c[f>>2]=0;while(1){b=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+256>>2]|0)+(c[f>>2]<<2)>>2]|0;c[m>>2]=b;if(!b)break a;c[l>>2]=Sg(c[e>>2]|0)|0;a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]=2;c[g>>2]=~~(+h[(c[(c[m>>2]|0)+8>>2]|0)+56>>3]-+h[(c[(c[m>>2]|0)+8>>2]|0)+16>>3]);if((c[g>>2]|0)>0)c[j>>2]=0;else{c[j>>2]=0-(c[g>>2]|0);c[g>>2]=0}b=c[m>>2]|0;gi(c[l>>2]|0,c[((c[c[m>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,+((c[g>>2]|0)+1|0),c[(c[(c[m>>2]|0)+8>>2]|0)+156>>2]|0)|0;b=c[m>>2]|0;gi(c[l>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,+((c[j>>2]|0)+1|0),c[(c[(c[m>>2]|0)+8>>2]|0)+156>>2]|0)|0;b=c[m>>2]|0;n=c[m>>2]|0;o=c[c[m>>2]>>2]&3;if(((c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[g>>2]|0)-1|0)<((c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[j>>2]|0)-1|0)){n=c[m>>2]|0;p=(c[(c[(c[((o|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[g>>2]|0)|0}else{n=c[m>>2]|0;p=(c[(c[(c[((o|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[j>>2]|0)|0}c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]=p-1;c[f>>2]=(c[f>>2]|0)+1}}while(0);c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]}i=d;return}function Ai(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)<=0){i=b;return}Ei(c[d>>2]|0);Fi(c[d>>2]|0);Gi(c[d>>2]|0);Hi(c[d>>2]|0);i=b;return}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+32|0;d=b+24|0;e=b+16|0;f=b;c[d>>2]=a;if((c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]|0)!=3){i=b;return}a=(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+64|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];if(+h[f>>3]*+h[f+8>>3]<=1.0){i=b;return}Ci(c[d>>2]|0);if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+116>>2]&1))h[e>>3]=+h[f>>3];else h[e>>3]=+h[f+8>>3];h[e>>3]=+h[e>>3]<65535.0?+h[e>>3]:65535.0;gi(c[(c[(c[d>>2]|0)+8>>2]|0)+256>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+260>>2]|0,+h[e>>3],1e3)|0;i=b;return}function Ci(a){a=a|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d;f=d+28|0;g=d+24|0;j=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;c[f>>2]=a;c[g>>2]=eO(c[f>>2]|0,c[13813]|0,8,0)|0;Di(c[f>>2]|0);c[k>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+256>>2];c[l>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+260>>2];c[j>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;do if(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0){c[m>>2]=c[c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]>>2];if(!(c[m>>2]|0)){a=wB(c[f>>2]|0)|0;n=c[j>>2]|0;c[e>>2]=a;c[e+4>>2]=n;$z(1,123960,e)|0;break}else{gi(c[k>>2]|0,c[m>>2]|0,+h[(c[(c[m>>2]|0)+8>>2]|0)+88>>3]+ +(c[g>>2]|0)+ +h[(c[(c[f>>2]|0)+8>>2]|0)+48+48>>3],0)|0;c[m>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0)-1<<2)>>2];gi(c[m>>2]|0,c[l>>2]|0,+h[(c[(c[m>>2]|0)+8>>2]|0)+96>>3]+ +(c[g>>2]|0)+ +h[(c[(c[f>>2]|0)+8>>2]|0)+48+16>>3],0)|0;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}i=d;return}function Di(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0.0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=b;if(c[(c[(c[e>>2]|0)+8>>2]|0)+256>>2]|0){i=d;return}c[f>>2]=Sg(uf(c[e>>2]|0)|0)|0;a[(c[(c[f>>2]|0)+8>>2]|0)+156>>0]=2;c[g>>2]=Sg(uf(c[e>>2]|0)|0)|0;a[(c[(c[g>>2]|0)+8>>2]|0)+156>>0]=2;if(((c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)!=0?(b=c[e>>2]|0,(b|0)!=(uf(c[e>>2]|0)|0)):0)?(c[(c[(rC(c[e>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)==0:0){b=(c[(c[e>>2]|0)+8>>2]|0)+48|0;if(+h[(c[(c[e>>2]|0)+8>>2]|0)+48>>3]>+h[(c[(c[e>>2]|0)+8>>2]|0)+48+32>>3])k=+h[b>>3];else k=+h[b+32>>3];c[j>>2]=~~k;gi(c[f>>2]|0,c[g>>2]|0,+(c[j>>2]|0),0)|0}c[(c[(c[e>>2]|0)+8>>2]|0)+256>>2]=c[f>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+260>>2]=c[g>>2];i=d;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;a=c[d>>2]|0;do if((a|0)!=(uf(c[d>>2]|0)|0)){Ci(c[d>>2]|0);g=Gg(c[(c[(c[d>>2]|0)+8>>2]|0)+256>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+260>>2]|0)|0;c[f>>2]=g;if(g){g=(c[(c[f>>2]|0)+8>>2]|0)+156|0;c[g>>2]=(c[g>>2]|0)+128;break}else{gi(c[(c[(c[d>>2]|0)+8>>2]|0)+256>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+260>>2]|0,1.0,128)|0;break}}while(0);c[e>>2]=1;while(1){if((c[e>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;Ei(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}i=b;return}function Fi(d){d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=d;c[l>>2]=eO(c[f>>2]|0,c[13813]|0,8,0)|0;c[k>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[k>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;a:do if((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0)!=0?(c[n>>2]=c[c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)+4>>2]>>2],(c[n>>2]|0)!=0):0){c[g>>2]=(c[(c[(c[n>>2]|0)+8>>2]|0)+236>>2]|0)-1;while(1){if((c[g>>2]|0)<0)break;d=c[g>>2]|0;o=c[k>>2]|0;c[m>>2]=c[(c[(c[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(o<<6)+4>>2]|0)+(d<<2)>>2];if(!(a[(c[(c[m>>2]|0)+8>>2]|0)+156>>0]|0)){p=9;break}if(Ii(c[f>>2]|0,c[m>>2]|0)|0){p=9;break}c[g>>2]=(c[g>>2]|0)+-1}if((p|0)==9){p=0;gi(c[m>>2]|0,c[(c[(c[f>>2]|0)+8>>2]|0)+256>>2]|0,+(c[l>>2]|0)+ +h[(c[(c[m>>2]|0)+8>>2]|0)+96>>3],0)|0}c[g>>2]=(c[(c[(c[n>>2]|0)+8>>2]|0)+236>>2]|0)+(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[k>>2]<<6)>>2]|0);while(1){d=c[g>>2]|0;o=c[k>>2]|0;if((d|0)>=(c[(c[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(o<<6)>>2]|0))break a;o=c[g>>2]|0;d=c[k>>2]|0;c[m>>2]=c[(c[(c[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(d<<6)+4>>2]|0)+(o<<2)>>2];if(!(a[(c[(c[m>>2]|0)+8>>2]|0)+156>>0]|0))break;if(Ii(c[f>>2]|0,c[m>>2]|0)|0)break;c[g>>2]=(c[g>>2]|0)+1}gi(c[(c[(c[f>>2]|0)+8>>2]|0)+260>>2]|0,c[m>>2]|0,+(c[l>>2]|0)+ +h[(c[(c[m>>2]|0)+8>>2]|0)+88>>3],0)|0}while(0);c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;Fi(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function Gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=eO(c[d>>2]|0,c[13813]|0,8,0)|0;Di(c[d>>2]|0);c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0))break;c[g>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2];Di(c[g>>2]|0);gi(c[(c[(c[d>>2]|0)+8>>2]|0)+256>>2]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+256>>2]|0,+(c[e>>2]|0)+ +h[(c[(c[d>>2]|0)+8>>2]|0)+48+48>>3],0)|0;gi(c[(c[(c[g>>2]|0)+8>>2]|0)+260>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+260>>2]|0,+(c[e>>2]|0)+ +h[(c[(c[d>>2]|0)+8>>2]|0)+48+16>>3],0)|0;Gi(c[g>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=b;return}function Hi(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=a;c[h>>2]=eO(c[e>>2]|0,c[13813]|0,8,0)|0;c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;Di(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;c[g>>2]=(c[f>>2]|0)+1;while(1){o=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0;if((c[g>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;c[j>>2]=o;c[k>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2];if((b[(c[(c[j>>2]|0)+8>>2]|0)+236>>1]|0)>(b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]|0)){c[n>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[n>>2]}if((b[(c[(c[j>>2]|0)+8>>2]|0)+238>>1]|0)>=(b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]|0)){if((c[(c[(c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+196>>2]|0)+(b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]<<6)+4>>2]>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]<<6)+4>>2]>>2]|0)+8>>2]|0)+236>>2]|0)){c[l>>2]=c[j>>2];c[m>>2]=c[k>>2]}else{c[l>>2]=c[k>>2];c[m>>2]=c[j>>2]}gi(c[(c[(c[l>>2]|0)+8>>2]|0)+260>>2]|0,c[(c[(c[m>>2]|0)+8>>2]|0)+256>>2]|0,+(c[h>>2]|0),0)|0}c[g>>2]=(c[g>>2]|0)+1}Hi(o);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function Ii(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[g>>2]=b;c[h>>2]=d;if((a[(c[(c[h>>2]|0)+8>>2]|0)+156>>0]|0)!=1){c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}c[j>>2]=c[c[(c[(c[h>>2]|0)+8>>2]|0)+256>>2]>>2];while(1){if(!(c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]|0))break;c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]}h=c[j>>2]|0;if(AC(c[g>>2]|0,c[((c[c[j>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)|0){c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}h=c[j>>2]|0;if(AC(c[g>>2]|0,c[((c[c[j>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)|0){c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=1;k=c[f>>2]|0;i=e;return k|0}return 0}function Ji(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Ki(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)==(c[g>>2]|0)){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}c[h>>2]=0;while(1){b=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)+(c[h>>2]<<2)>>2]|0;c[j>>2]=b;if(!b){l=8;break}b=c[j>>2]|0;if(Ki(c[((c[c[j>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[g>>2]|0)|0){l=6;break}c[h>>2]=(c[h>>2]|0)+1}if((l|0)==6){c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}else if((l|0)==8){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}return 0}function Li(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=d;c[j>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;c[h>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;c[k>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]=c[h>>2];d=c[h>>2]|0;if((a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]|0)==6)c[h>>2]=d+(c[(c[(c[k>>2]|0)+8>>2]|0)+216>>2]|0);else c[h>>2]=d+1;c[g>>2]=(c[g>>2]|0)+1}if((c[h>>2]|0)>(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0)){if(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)l=eK(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0,(c[h>>2]|0)+1<<2)|0;else l=cK((c[h>>2]|0)+1<<2)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]=l;c[g>>2]=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0)-1;while(1){if((c[g>>2]|0)<0)break;c[k>>2]=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2];c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]<<2)>>2]=c[k>>2];c[g>>2]=(c[g>>2]|0)+-1}c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]=c[h>>2];c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[h>>2]<<2)>>2]=0}c[j>>2]=(c[j>>2]|0)+1}i=e;return}function Mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=i;i=i+80|0;e=d+64|0;f=d+56|0;g=d+52|0;j=d+48|0;k=d+40|0;l=d+36|0;m=d+32|0;n=d+24|0;o=d+16|0;p=d+8|0;q=d;c[f>>2]=a;c[g>>2]=b;if((c[(c[(c[g>>2]|0)+8>>2]|0)+216>>2]|0)<=1){i=d;return}c[k>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]);c[k+4>>2]=~~+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];b=c[g>>2]|0;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];Ni(n,b,e);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];n=c[(c[g>>2]|0)+8>>2]|0;if((c[(c[(c[g>>2]|0)+8>>2]|0)+180+4>>2]|0)>0){b=c[c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[l>>2]=c[((c[c[c[n+180>>2]>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];c[j>>2]=(c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]|0)+1;c[m>>2]=RA(c[f>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;b=c[m>>2]|0;c[o>>2]=(c[c[m>>2]>>2]&3|0)==2?b:b+-32|0;b=c[o>>2]|0;if((c[((c[c[o>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)!=(c[g>>2]|0)?(b=c[o>>2]|0,a=lO(c[((c[c[o>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0,(a|0)==(c[g>>2]|0)):0){a=c[f>>2]|0;b=c[o>>2]|0;r=c[((c[c[o>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0;b=c[j>>2]|0;c[j>>2]=b+1;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];Oi(p,a,r,e,b);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];Wg(c[o>>2]|0);b=c[o>>2]|0;r=(c[(c[((c[c[o>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?c[o>>2]|0:(c[o>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0){b=c[o>>2]|0;s=eK(c[r>>2]|0,(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0}else s=cK((c[r+4>>2]|0)+2<<2)|0;r=c[o>>2]|0;c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]=s;r=c[o>>2]|0;b=c[o>>2]|0;a=(c[(c[((c[c[o>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+172+4|0;b=c[a>>2]|0;c[a>>2]=b+1;a=c[o>>2]|0;c[(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(b<<2)>>2]=r;r=c[o>>2]|0;b=c[o>>2]|0;c[(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[((c[c[o>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0}c[m>>2]=SA(c[f>>2]|0,c[m>>2]|0)|0}i=d;return}else{o=c[c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]>>2]|0;c[l>>2]=c[((c[c[c[n+172>>2]>>2]>>2]&3|0)==3?o:o+32|0)+28>>2];c[j>>2]=(c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]|0)+1;c[m>>2]=OA(c[f>>2]|0,c[l>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;l=c[m>>2]|0;if((c[((c[c[m>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)!=(c[g>>2]|0)?(l=c[m>>2]|0,o=lO(c[((c[c[m>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)|0,(o|0)==(c[g>>2]|0)):0){o=c[f>>2]|0;l=c[m>>2]|0;n=c[((c[c[m>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0;l=c[j>>2]|0;c[j>>2]=l+1;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];Oi(q,o,n,e,l);c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];Wg(c[m>>2]|0);l=c[m>>2]|0;n=(c[(c[((c[c[m>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?c[m>>2]|0:(c[m>>2]|0)+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0){l=c[m>>2]|0;t=eK(c[n>>2]|0,(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0}else t=cK((c[n+4>>2]|0)+2<<2)|0;n=c[m>>2]|0;c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+180>>2]=t;n=c[m>>2]|0;l=c[m>>2]|0;o=(c[(c[((c[c[m>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+180+4|0;l=c[o>>2]|0;c[o>>2]=l+1;o=c[m>>2]|0;c[(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?o:o+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(l<<2)>>2]=n;n=c[m>>2]|0;l=c[m>>2]|0;c[(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0}c[m>>2]=QA(c[f>>2]|0,c[m>>2]|0)|0}i=d;return}}function Ni(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;e=i;i=i+16|0;f=e;c[f>>2]=b;b=c[f>>2]|0;VO(b,c[(c[(qC(c[f>>2]|0)|0)+8>>2]|0)+116>>2]&1);h[(c[(c[f>>2]|0)+8>>2]|0)+16+8>>3]=+(c[d+4>>2]|0);h[(c[(c[f>>2]|0)+8>>2]|0)+16>>3]=+(c[d>>2]|0)+ +h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3];g=+(c[d>>2]|0)+ +h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3];c[d>>2]=~~(g+ +(c[(c[(qC(c[f>>2]|0)|0)+8>>2]|0)+248>>2]|0));c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];i=e;return}function Oi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+24|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[n>>2]=uf(c[j>>2]|0)|0;c[m>>2]=lO(c[k>>2]|0)|0;if((c[k>>2]|0)!=(c[m>>2]|0))Qg(c[m>>2]|0,c[k>>2]|0);c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]=c[l>>2];c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+232>>2];c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<6)+4>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+236>>2]<<2)>>2]=c[k>>2];n=c[k>>2]|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];Ni(a,n,h);i=g;return}function Pi(a){a=a|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+8|0;j=d;k=d+28|0;l=d+24|0;m=d+20|0;n=d+16|0;c[e>>2]=a;c[l>>2]=c[(c[(uf(c[e>>2]|0)|0)+8>>2]|0)+196>>2];c[n>>2]=0;a=c[e>>2]|0;if((a|0)==(uf(c[e>>2]|0)|0))c[m>>2]=8;else c[m>>2]=eO(c[e>>2]|0,c[13813]|0,8,0)|0;h[g>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+120>>3];h[j>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+128>>3];c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;c[k>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2];a=Pi(c[k>>2]|0)|0;c[n>>2]=c[n>>2]|a;if((b[(c[(c[k>>2]|0)+8>>2]|0)+238>>1]|0)==(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)){if(+h[g>>3]>+h[(c[(c[k>>2]|0)+8>>2]|0)+120>>3]+ +(c[m>>2]|0))o=+h[g>>3];else o=+h[(c[(c[k>>2]|0)+8>>2]|0)+120>>3]+ +(c[m>>2]|0);h[g>>3]=o}if((b[(c[(c[k>>2]|0)+8>>2]|0)+236>>1]|0)==(b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]|0)){if(+h[j>>3]>+h[(c[(c[k>>2]|0)+8>>2]|0)+128>>3]+ +(c[m>>2]|0))p=+h[j>>3];else p=+h[(c[(c[k>>2]|0)+8>>2]|0)+128>>3]+ +(c[m>>2]|0);h[j>>3]=p}c[f>>2]=(c[f>>2]|0)+1}f=c[e>>2]|0;if(((f|0)!=(uf(c[e>>2]|0)|0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)?(c[n>>2]=1,(c[(c[(rC(c[e>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)==0):0){h[g>>3]=+h[g>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+48+8>>3];h[j>>3]=+h[j>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+48+32+8>>3]}h[(c[(c[e>>2]|0)+8>>2]|0)+120>>3]=+h[g>>3];h[(c[(c[e>>2]|0)+8>>2]|0)+128>>3]=+h[j>>3];f=c[e>>2]|0;if((f|0)==(uf(c[e>>2]|0)|0)){q=c[n>>2]|0;i=d;return q|0}if(+h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]<<6)+24>>3]>+h[j>>3])r=+h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]<<6)+24>>3];else r=+h[j>>3];h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]<<6)+24>>3]=r;if(+h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]<<6)+16>>3]>+h[g>>3])s=+h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]<<6)+16>>3];else s=+h[g>>3];h[(c[l>>2]|0)+(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]<<6)+16>>3]=s;q=c[n>>2]|0;i=d;return q|0}function Qi(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0;e=i;i=i+80|0;f=e+68|0;g=e+64|0;j=e+32|0;k=e+24|0;l=e+60|0;m=e+56|0;n=e+52|0;o=e+48|0;p=e+16|0;q=e+8|0;r=e;s=e+44|0;t=e+40|0;c[f>>2]=a;c[g>>2]=d;c[s>>2]=c[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+196>>2];d=c[f>>2]|0;if((d|0)==(uf(c[f>>2]|0)|0))c[n>>2]=0;else c[n>>2]=eO(c[f>>2]|0,c[13813]|0,8,0)|0;h[q>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+120>>3];h[r>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+128>>3];c[o>>2]=1;while(1){if((c[o>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;c[t>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[o>>2]<<2)>>2];Qi(c[t>>2]|0,(c[n>>2]|0)+(c[g>>2]|0)|0);if((b[(c[(c[t>>2]|0)+8>>2]|0)+238>>1]|0)==(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)){if(+h[q>>3]>+h[(c[(c[t>>2]|0)+8>>2]|0)+120>>3]+ +(c[n>>2]|0))u=+h[q>>3];else u=+h[(c[(c[t>>2]|0)+8>>2]|0)+120>>3]+ +(c[n>>2]|0);h[q>>3]=u}if((b[(c[(c[t>>2]|0)+8>>2]|0)+236>>1]|0)==(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)){if(+h[r>>3]>+h[(c[(c[t>>2]|0)+8>>2]|0)+128>>3]+ +(c[n>>2]|0))v=+h[r>>3];else v=+h[(c[(c[t>>2]|0)+8>>2]|0)+128>>3]+ +(c[n>>2]|0);h[r>>3]=v}c[o>>2]=(c[o>>2]|0)+1}h[(c[(c[f>>2]|0)+8>>2]|0)+120>>3]=+h[q>>3];h[(c[(c[f>>2]|0)+8>>2]|0)+128>>3]=+h[r>>3];o=c[f>>2]|0;if((o|0)!=(uf(c[f>>2]|0)|0)?(c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0){o=(c[(c[f>>2]|0)+8>>2]|0)+48|0;if(+h[(c[(c[f>>2]|0)+8>>2]|0)+48+48+8>>3]>+h[(c[(c[f>>2]|0)+8>>2]|0)+48+16+8>>3])w=+h[o+48+8>>3];else w=+h[o+16+8>>3];h[j>>3]=w;c[l>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1];c[m>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];h[k>>3]=+h[(c[(c[c[(c[s>>2]|0)+(c[m>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[c[(c[s>>2]|0)+(c[l>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8>>3];h[p>>3]=+h[j>>3]-(+h[k>>3]+ +h[q>>3]+ +h[r>>3]);if(+h[p>>3]>0.0)Ri(c[f>>2]|0,~~+h[p>>3],c[g>>2]|0)}g=c[f>>2]|0;if((g|0)==(uf(c[f>>2]|0)|0)){i=e;return}g=c[(c[f>>2]|0)+8>>2]|0;if(+h[(c[s>>2]|0)+(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]<<6)+24>>3]>+h[(c[(c[f>>2]|0)+8>>2]|0)+128>>3])x=+h[(c[s>>2]|0)+(b[g+236>>1]<<6)+24>>3];else x=+h[g+128>>3];h[(c[s>>2]|0)+(b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]<<6)+24>>3]=x;g=c[(c[f>>2]|0)+8>>2]|0;if(+h[(c[s>>2]|0)+(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]<<6)+16>>3]>+h[(c[(c[f>>2]|0)+8>>2]|0)+120>>3])y=+h[(c[s>>2]|0)+(b[g+238>>1]<<6)+16>>3];else y=+h[g+120>>3];h[(c[s>>2]|0)+(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]<<6)+16>>3]=y;i=e;return}function Ri(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0.0,F=0,G=0,H=0,I=0,J=0.0,K=0.0;f=i;i=i+48|0;g=f+40|0;j=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f+12|0;q=f+8|0;r=f+4|0;s=f;c[g>>2]=a;c[j>>2]=d;c[k>>2]=e;c[p>>2]=uf(c[g>>2]|0)|0;c[q>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+196>>2];c[r>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1];c[s>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];c[m>>2]=((c[j>>2]|0)+1|0)/2|0;c[o>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+120>>3]+ +(c[m>>2]|0)-(+h[(c[q>>2]|0)+(c[r>>2]<<6)+16>>3]-+(c[k>>2]|0)));if((c[o>>2]|0)>0){c[l>>2]=c[r>>2];while(1){if((c[l>>2]|0)<(c[s>>2]|0))break;if((c[(c[q>>2]|0)+(c[l>>2]<<6)>>2]|0)>0){r=(c[(c[c[(c[q>>2]|0)+(c[l>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8|0;h[r>>3]=+h[r>>3]+ +(c[o>>2]|0)}c[l>>2]=(c[l>>2]|0)+-1}c[n>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+128>>3]+ +((c[j>>2]|0)-(c[m>>2]|0)|0)+ +(c[o>>2]|0)-(+h[(c[q>>2]|0)+(c[s>>2]<<6)+24>>3]-+(c[k>>2]|0)))}else c[n>>2]=~~(+h[(c[(c[g>>2]|0)+8>>2]|0)+128>>3]+ +((c[j>>2]|0)-(c[m>>2]|0)|0)-(+h[(c[q>>2]|0)+(c[s>>2]<<6)+24>>3]-+(c[k>>2]|0)));if((c[n>>2]|0)<=0){t=c[j>>2]|0;u=c[m>>2]|0;v=t-u|0;w=+(v|0);x=c[g>>2]|0;y=x+8|0;z=c[y>>2]|0;A=z+128|0;B=+h[A>>3];C=B+w;h[A>>3]=C;D=c[m>>2]|0;E=+(D|0);F=c[g>>2]|0;G=F+8|0;H=c[G>>2]|0;I=H+120|0;J=+h[I>>3];K=J+E;h[I>>3]=K;i=f;return}c[l>>2]=(c[s>>2]|0)-1;while(1){if((c[l>>2]|0)<(b[(c[(c[p>>2]|0)+8>>2]|0)+236>>1]|0))break;if((c[(c[q>>2]|0)+(c[l>>2]<<6)>>2]|0)>0){s=(c[(c[c[(c[q>>2]|0)+(c[l>>2]<<6)+4>>2]>>2]|0)+8>>2]|0)+16+8|0;h[s>>3]=+h[s>>3]+ +(c[n>>2]|0)}c[l>>2]=(c[l>>2]|0)+-1}t=c[j>>2]|0;u=c[m>>2]|0;v=t-u|0;w=+(v|0);x=c[g>>2]|0;y=x+8|0;z=c[y>>2]|0;A=z+128|0;B=+h[A>>3];C=B+w;h[A>>3]=C;D=c[m>>2]|0;E=+(D|0);F=c[g>>2]|0;G=F+8|0;H=c[G>>2]|0;I=H+120|0;J=+h[I>>3];K=J+E;h[I>>3]=K;i=f;return}function Si(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[g>>2]=0;b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]=32767;b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]=-1;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if((b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)<(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2];if((b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2];a=c[f>>2]|0;if(c[g>>2]|0){if((c[(c[a+8>>2]|0)+232>>2]|0)<(c[(c[(c[g>>2]|0)+8>>2]|0)+232>>2]|0))c[g>>2]=c[f>>2]}else c[g>>2]=a;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]=c[g>>2];i=d;return}function Ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0.0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=2147483647;a=yA(c[d>>2]|0,124005)|0;c[g>>2]=a;if(a){h=+t3(c[g>>2]|0);c[e>>2]=~~(h*+(kB(c[d>>2]|0)|0))}c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[(c[d>>2]|0)+8>>2]|0)+216+4>>2]|0))break;c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2]=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+216>>2]|0)+(c[f>>2]<<2)>>2];gK(c[d>>2]|0,(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)==0?1:0,c[e>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+1}i=b;return}function Ui(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g;j=g+12|0;k=g+8|0;c[j>>2]=d;c[k>>2]=f;f=(yA(c[j>>2]|0,124014)|0)!=0;d=c[j>>2]|0;if(f){f=(c[d+8>>2]|0)+136|0;b[f>>1]=e[f>>1]|16;Wi(c[j>>2]|0,c[k>>2]|0)}else Xi(d,c[k>>2]|0);if(!(a[138998]|0)){i=g;return}k=c[24742]|0;d=b[(c[(c[j>>2]|0)+8>>2]|0)+236>>1]|0;c[h>>2]=b[(c[(c[j>>2]|0)+8>>2]|0)+238>>1];c[h+4>>2]=d;Y2(k,124022,h)|0;i=g;return}function Vi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(P3(wB(c[d>>2]|0)|0,145613,7)|0)==0&1;i=b;return a|0}function Wi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[f>>2]=a;c[g>>2]=b;c[k>>2]=2147483647;c[12579]=0;c[e>>2]=c[13066];c[m>>2]=gB(124232,e,0)|0;MC(c[m>>2]|0,124261,280,1)|0;yC(c[m>>2]|0,50320,50256);Yi(c[f>>2]|0);e=yA(c[f>>2]|0,124005)|0;c[l>>2]=e;if(e){n=+t3(c[l>>2]|0);c[k>>2]=~~(n*+(kB(c[f>>2]|0)|0))}else c[k>>2]=2147483647;lj(c[f>>2]|0,0);mj(c[f>>2]|0,c[m>>2]|0);nj(c[f>>2]|0,c[m>>2]|0);oj(c[f>>2]|0,c[m>>2]|0,0,0);pj(c[m>>2]|0);c[j>>2]=qj(c[m>>2]|0)|0;rj(c[m>>2]|0);if(c[g>>2]|0){Xj(c[m>>2]|0);Vj(c[m>>2]|0)}g=yA(c[f>>2]|0,140042)|0;c[l>>2]=g;if(g){c[h>>2]=u3(c[l>>2]|0)|0;o=c[m>>2]|0;p=c[k>>2]|0;q=c[h>>2]|0;fK(o,1,p,q)|0;r=c[f>>2]|0;s=c[m>>2]|0;t=c[j>>2]|0;sj(r,s,t);u=c[m>>2]|0;jB(u)|0;i=d;return}else{c[h>>2]=-1;o=c[m>>2]|0;p=c[k>>2]|0;q=c[h>>2]|0;fK(o,1,p,q)|0;r=c[f>>2]|0;s=c[m>>2]|0;t=c[j>>2]|0;sj(r,s,t);u=c[m>>2]|0;jB(u)|0;i=d;return}}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+8|0;j=d;c[f>>2]=a;c[g>>2]=b;Yi(c[f>>2]|0);if(c[g>>2]|0){Xj(c[f>>2]|0);Vj(c[f>>2]|0)}Zi(c[f>>2]|0,c[f>>2]|0);ik(c[f>>2]|0);_i(j,c[f>>2]|0);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];bl(c[f>>2]|0,0);do if(c[g>>2]|0){if((c[(c[(c[f>>2]|0)+8>>2]|0)+216+4>>2]|0)<=1?(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0)<=0:0)break;c[(c[g>>2]|0)+32>>2]=1;c[g>>2]=0}while(0);Sj(c[f>>2]|0);j=c[f>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];if($i(j,e)|0)bl(c[f>>2]|0,0);e=c[f>>2]|0;if(c[g>>2]|0){Wj(e,c[g>>2]|0);k=c[f>>2]|0;l=c[g>>2]|0;aj(k,l);m=c[f>>2]|0;bj(m);i=d;return}else{Ti(e);k=c[f>>2]|0;l=c[g>>2]|0;aj(k,l);m=c[f>>2]|0;bj(m);i=d;return}}function Yi(a){a=a|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+8|0;h=f+4|0;j=f;c[g>>2]=a;if(!((d[(c[(c[g>>2]|0)+8>>2]|0)+113>>0]|0)&1)){i=f;return}c[h>>2]=$B(c[g>>2]|0)|0;while(1){k=c[g>>2]|0;if(!(c[h>>2]|0))break;c[j>>2]=OA(k,c[h>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;a=(c[(c[j>>2]|0)+8>>2]|0)+170|0;b[a>>1]=(e[a>>1]|0)<<1;c[j>>2]=QA(c[g>>2]|0,c[j>>2]|0)|0}c[h>>2]=aC(c[g>>2]|0,c[h>>2]|0)|0}c[(c[(c[g>>2]|0)+8>>2]|0)+252>>2]=((c[(c[k+8>>2]|0)+252>>2]|0)+1|0)/2|0;i=f;return}function Zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=GD(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[g>>2]=jj(c[h>>2]|0)|0;do if(c[g>>2]|0){f=c[e>>2]|0;b=c[h>>2]|0;if((c[g>>2]|0)==7&(c[13797]|0)==100){fj(f,b);break}else{kj(f,b,c[g>>2]|0);break}}else Zi(c[e>>2]|0,c[h>>2]|0);while(0);c[h>>2]=HD(c[h>>2]|0)|0}i=d;return}function _i(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e;c[f>>2]=d;c[j+4>>2]=0;c[j>>2]=0;if((c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0)==0?(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0)==0:0){c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];i=e;return}if(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0){d=lO(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]=d}if(c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0){d=lO(c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]=d}d=c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0;c[g>>2]=d;a:do if(d){c[j+4>>2]=(a[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0)+8>>2]|0)+159>>0]|0)==5&1;while(1){k=c[c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[h>>2]=k;if(!k)break a;k=c[h>>2]|0;l=c[((c[c[h>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0;k=c[h>>2]|0;if((l|0)!=(lO(c[((c[c[h>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)|0))break;Rj(c[h>>2]|0)}La(124125,124065,346,124157)}while(0);d=c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0;c[g>>2]=d;b:do if(d){c[j>>2]=(a[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0)+8>>2]|0)+159>>0]|0)==3&1;while(1){k=c[c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]>>2]|0;c[h>>2]=k;if(!k)break b;k=c[h>>2]|0;l=c[((c[c[h>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0;k=c[h>>2]|0;if((l|0)!=(lO(c[((c[c[h>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)|0))break;Rj(c[h>>2]|0)}La(124170,124065,353,124157)}while(0);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];i=e;return}function $i(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[h>>2]=0;if((c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0)==0?(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0)==0:0){j=c[h>>2]|0;k=(j|0)!=0;l=k&1;i=e;return l|0}c[g>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;a=c[g>>2]|0;if((a|0)==(lO(c[g>>2]|0)|0)){if(((c[(c[(c[g>>2]|0)+8>>2]|0)+180+4>>2]|0)==0?(c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0)!=0:0)?(c[g>>2]|0)!=(c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0):0){c[h>>2]=Og(c[g>>2]|0,c[(c[(c[f>>2]|0)+8>>2]|0)+228>>2]|0,0)|0;b[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]=c[d+4>>2];c[(c[(c[h>>2]|0)+8>>2]|0)+156>>2]=0}if(((c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]|0)==0?(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0)!=0:0)?(c[g>>2]|0)!=(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0):0){c[h>>2]=Og(c[(c[(c[f>>2]|0)+8>>2]|0)+224>>2]|0,c[g>>2]|0,0)|0;b[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]=c[d>>2];c[(c[(c[h>>2]|0)+8>>2]|0)+156>>2]=0}}c[g>>2]=aC(c[f>>2]|0,c[g>>2]|0)|0}j=c[h>>2]|0;k=(j|0)!=0;l=k&1;i=e;return l|0}function aj(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=d;c[h>>2]=e;e=$B(c[g>>2]|0)|0;c[k>>2]=e;d=c[(c[g>>2]|0)+8>>2]|0;if(!e){b[d+238>>1]=0;b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]=0;i=f;return}b[d+236>>1]=32767;b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]=-1;while(1){if(!(c[k>>2]|0))break;c[l>>2]=lO(c[k>>2]|0)|0;do if((c[l>>2]|0)!=(c[k>>2]|0)){if((c[h>>2]|0)!=0?(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)!=0:0)break;d=(c[(c[k>>2]|0)+8>>2]|0)+232|0;c[d>>2]=(c[d>>2]|0)+(c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)}while(0);if((b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0)<(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];if((b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];if((a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]|0)!=0?(a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]|0)!=6:0)nO(c[k>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}k=c[g>>2]|0;if((k|0)!=(uf(c[g>>2]|0)|0)){i=f;return}if((c[13797]|0)!=100){ej(c[g>>2]|0);i=f;return}c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]|0))break;dj(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=f;return}function bj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=b;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)+(c[j>>2]<<2)>>2];c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[f>>2]|0))break;cj((c[(c[f>>2]|0)+8>>2]|0)+172|0);cj((c[(c[f>>2]|0)+8>>2]|0)+180|0);a[(c[(c[f>>2]|0)+8>>2]|0)+157>>0]=0;c[f>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+164>>2]}c[j>>2]=(c[j>>2]|0)+1}c[f>>2]=$B(c[e>>2]|0)|0;while(1){n=c[e>>2]|0;if(!(c[f>>2]|0))break;c[g>>2]=OA(n,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2];if((c[h>>2]|0)!=0?(c[g>>2]|0)==(c[(c[(c[h>>2]|0)+8>>2]|0)+116>>2]|0):0){c[m>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;c[k>>2]=OA(c[e>>2]|0,c[m>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if(((c[g>>2]|0)!=(c[k>>2]|0)?(c[l>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2],(c[l>>2]|0)!=0):0)?(c[h>>2]|0)==(c[l>>2]|0):0)c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]=0;c[k>>2]=QA(c[e>>2]|0,c[k>>2]|0)|0}c[m>>2]=aC(c[e>>2]|0,c[m>>2]|0)|0}O4(c[(c[h>>2]|0)+8>>2]|0);O4(c[h>>2]|0)}c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=0;c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}O4(c[(c[n+8>>2]|0)+216>>2]|0);c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]=0;c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]=0;i=d;return}function cj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[d>>2]|0)+4>>2];while(1){if((c[e>>2]|0)<0)break;c[(c[c[d>>2]>>2]|0)+(c[e>>2]<<2)>>2]=0;c[e>>2]=(c[e>>2]|0)+-1}c[(c[d>>2]|0)+4>>2]=0;i=b;return}function dj(a){a=a|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;a=(c[(c[e>>2]|0)+8>>2]|0)+236|0;b[a>>1]=(b[a>>1]|0)+(c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0)+8>>2]|0)+232>>2]|0);a=(c[(c[e>>2]|0)+8>>2]|0)+238|0;b[a>>1]=(b[a>>1]|0)+(c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]|0)+8>>2]|0)+232>>2]|0);c[f>>2]=1;while(1){if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;dj(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function ej(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=GD(uf(c[e>>2]|0)|0)|0;while(1){if(!(c[f>>2]|0))break;if((a[(c[(c[f>>2]|0)+8>>2]|0)+274>>0]|0)==7)fj(c[e>>2]|0,c[f>>2]|0);c[f>>2]=HD(c[f>>2]|0)|0}i=d;return}function fj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[(c[(c[f>>2]|0)+8>>2]|0)+200>>2]|0){i=d;return}c[(c[(c[f>>2]|0)+8>>2]|0)+200>>2]=c[e>>2];gj(c[e>>2]|0,c[f>>2]|0);if(!($B(c[f>>2]|0)|0)){i=d;return}hj(c[e>>2]|0,c[f>>2]|0)|0;e=c[f>>2]|0;if((c[13797]|0)==100){Xi(e,0);ij(c[f>>2]|0);i=d;return}else{Si(e);i=d;return}}function gj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=$B(c[g>>2]|0)|0;while(1){m=c[g>>2]|0;if(!(c[h>>2]|0))break;c[j>>2]=aC(m,c[h>>2]|0)|0;if(a[(c[(c[h>>2]|0)+8>>2]|0)+159>>0]|0)pC(c[g>>2]|0,c[h>>2]|0)|0;else{c[l>>2]=1;while(1){if((c[l>>2]|0)>=(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;if(AC(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[l>>2]<<2)>>2]|0,c[h>>2]|0)|0)break;c[l>>2]=(c[l>>2]|0)+1}if((c[l>>2]|0)<(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))pC(c[g>>2]|0,c[h>>2]|0)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]=0}c[h>>2]=c[j>>2]}c[h>>2]=$B(m)|0;while(1){if(!(c[h>>2]|0))break;m=uf(c[g>>2]|0)|0;c[k>>2]=OA(m,c[h>>2]|0)|0;while(1){n=c[g>>2]|0;if(!(c[k>>2]|0))break;m=c[k>>2]|0;if(AC(n,c[((c[c[k>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)|0)YA(c[g>>2]|0,c[k>>2]|0,1)|0;m=uf(c[g>>2]|0)|0;c[k>>2]=QA(m,c[k>>2]|0)|0}c[h>>2]=aC(n,c[h>>2]|0)|0}i=e;return}function hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=(c[(c[e>>2]|0)+8>>2]|0)+180|0;a=(c[b>>2]|0)+1|0;c[b>>2]=a;c[g>>2]=a;if(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)h=dK(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0,(c[g>>2]|0)+1|0,4,c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)|0;else h=bK((c[g>>2]|0)+1<<2)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]=h;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2]=c[f>>2];LJ(c[f>>2]|0);i=d;return c[g>>2]|0}function ij(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;c[h>>2]=0;c[f>>2]=0;c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;if((c[(c[(c[g>>2]|0)+8>>2]|0)+232>>2]|0)==0?(a[(c[(c[g>>2]|0)+8>>2]|0)+156>>0]|0)==0:0)c[f>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[(c[g>>2]|0)+8>>2]|0)+232>>2]|0))c[h>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+232>>2];c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}if(!(c[f>>2]|0))La(124050,124065,238,124072);c[(c[(c[e>>2]|0)+8>>2]|0)+264>>2]=c[f>>2];c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0)){j=17;break}if((c[(c[(c[g>>2]|0)+8>>2]|0)+216>>2]|0)>1?(c[g>>2]|0)!=(c[f>>2]|0):0){j=15;break}mO(c[g>>2]|0,c[f>>2]|0)|0;a[(c[(c[g>>2]|0)+8>>2]|0)+159>>0]=7;c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}if((j|0)==15)La(124087,124065,242,124072);else if((j|0)==17){i=d;return}}function jj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(Vi(c[f>>2]|0)|0){c[e>>2]=7;h=c[e>>2]|0;i=d;return h|0}else{c[g>>2]=tO(yA(c[f>>2]|0,124202)|0,50268,50292)|0;a[(c[(c[f>>2]|0)+8>>2]|0)+274>>0]=c[g>>2];c[e>>2]=c[g>>2];h=c[e>>2]|0;i=d;return h|0}return 0}function kj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;e=$B(c[h>>2]|0)|0;c[l>>2]=e;c[k>>2]=e;if(!(c[k>>2]|0)){i=f;return}a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]=c[j>>2];while(1){e=aC(c[h>>2]|0,c[l>>2]|0)|0;c[l>>2]=e;if(!e)break;mO(c[k>>2]|0,c[l>>2]|0)|0;a[(c[(c[l>>2]|0)+8>>2]|0)+159>>0]=a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]|0}a:do switch(c[j>>2]|0){case 3:case 2:{if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]|0)){c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]=c[k>>2];break a}else{l=mO(c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]|0,c[k>>2]|0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]=l;break a}break}case 5:case 4:{if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]|0)){c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]=c[k>>2];break a}else{l=mO(c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]|0,c[k>>2]|0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]=l;break a}break}default:{}}while(0);switch(c[j>>2]|0){case 3:{a[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+224>>2]|0)+8>>2]|0)+159>>0]=c[j>>2];i=f;return}case 5:{a[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+228>>2]|0)+8>>2]|0)+159>>0]=c[j>>2];i=f;return}default:{i=f;return}}}function lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;f=e;g=e+32|0;h=e+28|0;j=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;c[g>>2]=b;c[h>>2]=d;if(Gj(c[g>>2]|0)|0){i=e;return}do if(CO(c[g>>2]|0)|0){c[k>>2]=c[g>>2];if(c[h>>2]|0){c[(c[(c[g>>2]|0)+8>>2]|0)+204>>2]=(c[(c[(c[h>>2]|0)+8>>2]|0)+204>>2]|0)+1;Hj(c[g>>2]|0,c[h>>2]|0);break}else{c[(c[(c[g>>2]|0)+8>>2]|0)+204>>2]=0;break}}else c[k>>2]=c[h>>2];while(0);c[j>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;lj(c[j>>2]|0,c[k>>2]|0);c[j>>2]=HD(c[j>>2]|0)|0}a:do if(CO(c[g>>2]|0)|0){c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break a;if(!(c[(c[(c[l>>2]|0)+8>>2]|0)+212>>2]|0))c[(c[(c[l>>2]|0)+8>>2]|0)+212>>2]=c[g>>2];c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}}while(0);switch(Ij(c[g>>2]|0)|0){case 3:{a[(c[(c[k>>2]|0)+8>>2]|0)+241>>0]=1;o=18;break}case 2:{o=18;break}case 5:{a[(c[(c[k>>2]|0)+8>>2]|0)+242>>0]=1;o=20;break}case 4:{o=20;break}case 1:{c[m>>2]=Jj(c[g>>2]|0)|0;break}case 6:break;default:{l=wB(c[g>>2]|0)|0;j=yA(c[g>>2]|0,124202)|0;c[f>>2]=l;c[f+4>>2]=j;$z(0,124385,f)|0}}if((o|0)==18){c[m>>2]=Jj(c[g>>2]|0)|0;f=Kj(c[m>>2]|0,c[(c[(c[k>>2]|0)+8>>2]|0)+208>>2]|0)|0;c[(c[(c[k>>2]|0)+8>>2]|0)+208>>2]=f}else if((o|0)==20){c[m>>2]=Jj(c[g>>2]|0)|0;o=Kj(c[m>>2]|0,c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0)|0;c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]=o}if(!(CO(c[g>>2]|0)|0)){i=e;return}if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+208>>2]|0)){i=e;return}if((c[(c[(c[g>>2]|0)+8>>2]|0)+208>>2]|0)!=(c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]|0)){i=e;return}c[n>>2]=Jj(c[g>>2]|0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+208>>2]=c[n>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]=c[n>>2];i=e;return}function mj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[12579]=0;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;b=tj(c[g>>2]|0)|0;if((b|0)==(c[g>>2]|0)){b=c[f>>2]|0;a=wj(b,wB(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+148>>2]=a}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+148>>2]|0)){f=c[(c[(tj(c[g>>2]|0)|0)+8>>2]|0)+148>>2]|0;c[(c[(c[g>>2]|0)+8>>2]|0)+148>>2]=f}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[j>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+148>>2];c[h>>2]=OA(c[e>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;do if((Bj(c[h>>2]|0)|0)==0?(b=c[h>>2]|0,c[k>>2]=c[(c[(tj(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0)+8>>2]|0)+148>>2],(c[j>>2]|0)!=(c[k>>2]|0)):0){b=c[h>>2]|0;c[l>>2]=c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+212>>2];b=c[h>>2]|0;c[m>>2]=c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+212>>2];if(Cj(c[h>>2]|0)|0){b=c[h>>2]|0;a=tj(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;b=c[h>>2]|0;if(!((a|0)!=(c[(c[(c[(c[(c[((c[c[h>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+212>>2]|0)?(b=c[h>>2]|0,a=tj(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0,b=c[h>>2]|0,(a|0)!=(c[(c[(c[(c[(c[((c[c[h>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+208>>2]|0)):0)){c[n>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[n>>2]}Dj(c[f>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0);break}else{if((Aj(c[l>>2]|0)|0)==0?(Aj(c[m>>2]|0)|0)==0:0){Dj(c[f>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0);break}Ej(c[f>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0);break}}while(0);c[h>>2]=QA(c[e>>2]|0,c[h>>2]|0)|0}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function oj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;g=f+28|0;h=f+24|0;j=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((CO(c[g>>2]|0)|0)!=0?(Aj(c[g>>2]|0)|0)!=0:0){c[l>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;if(!(RA(c[g>>2]|0,c[l>>2]|0)|0)){c[m>>2]=c[(c[(tj(c[l>>2]|0)|0)+8>>2]|0)+148>>2];if(!(c[j>>2]|0))c[j>>2]=wj(c[h>>2]|0,124283)|0;VA(c[h>>2]|0,c[j>>2]|0,c[m>>2]|0,0,1)|0}if(!(OA(c[g>>2]|0,c[l>>2]|0)|0)){c[m>>2]=c[(c[(tj(c[l>>2]|0)|0)+8>>2]|0)+148>>2];if(!(c[k>>2]|0))c[k>>2]=wj(c[h>>2]|0,124288)|0;VA(c[h>>2]|0,c[m>>2]|0,c[k>>2]|0,0,1)|0}c[l>>2]=aC(c[g>>2]|0,c[l>>2]|0)|0}if((c[j>>2]|0)!=0&(c[k>>2]|0)!=0){c[n>>2]=VA(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0,1)|0;zj(c[n>>2]|0,0,1e3)}}c[o>>2]=GD(c[g>>2]|0)|0;while(1){if(!(c[o>>2]|0))break;oj(c[o>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0);c[o>>2]=HD(c[o>>2]|0)|0}i=f;return}function pj(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=b;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;a[(c[(c[f>>2]|0)+8>>2]|0)+158>>0]=0;a[(c[(c[f>>2]|0)+8>>2]|0)+157>>0]=0;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;xj(c[e>>2]|0,c[f>>2]|0);c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=d;return}function qj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[e>>2]=0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[(c[(c[f>>2]|0)+8>>2]|0)+128>>2]=0;c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if(!(c[(c[(c[f>>2]|0)+8>>2]|0)+128>>2]|0)){a=c[d>>2]|0;j=c[f>>2]|0;k=(c[e>>2]|0)+1|0;c[e>>2]=k;vj(a,j,k)}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}if((c[e>>2]|0)<=1){l=c[e>>2]|0;i=b;return l|0}c[g>>2]=wj(c[d>>2]|0,124277)|0;c[h>>2]=1;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;if((c[(c[(c[f>>2]|0)+8>>2]|0)+128>>2]|0)==(c[h>>2]|0)){VA(c[d>>2]|0,c[g>>2]|0,c[f>>2]|0,0,1)|0;c[h>>2]=(c[h>>2]|0)+1}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}l=c[e>>2]|0;i=b;return l|0}function rj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;a=(c[(c[e>>2]|0)+8>>2]|0)+180|0;if(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)g=eK(c[a>>2]|0,(c[(c[(c[e>>2]|0)+8>>2]|0)+180+4>>2]|0)+2<<2)|0;else g=cK((c[a+4>>2]|0)+2<<2)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]=g;a=c[f>>2]|0;h=(c[(c[e>>2]|0)+8>>2]|0)+180+4|0;j=c[h>>2]|0;c[h>>2]=j+1;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)+(j<<2)>>2]=a;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+180+4>>2]<<2)>>2]=0;a=c[f>>2]|0;j=(c[(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172|0;if(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?c[f>>2]|0:(c[f>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0){a=c[f>>2]|0;k=eK(c[j>>2]|0,(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]|0)+2<<2)|0}else k=cK((c[j+4>>2]|0)+2<<2)|0;j=c[f>>2]|0;c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]=k;j=c[f>>2]|0;a=c[f>>2]|0;h=(c[(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172+4|0;a=c[h>>2]|0;c[h>>2]=a+1;h=c[f>>2]|0;c[(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(a<<2)>>2]=j;j=c[f>>2]|0;a=c[f>>2]|0;c[(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+172>>2]|0)+(c[(c[(c[((c[c[f>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]<<2)>>2]=0;c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function sj(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[h>>2]=d;c[j>>2]=e;c[m>>2]=0;c[n>>2]=0;b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]=32767;b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]=-1;a:do if((c[j>>2]|0)>1){c[m>>2]=bK((c[j>>2]|0)+1<<2)|0;c[o>>2]=1;while(1){if((c[o>>2]|0)>(c[j>>2]|0))break a;c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]=32767;c[o>>2]=(c[o>>2]|0)+1}}while(0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[l>>2]=c[(c[(tj(c[k>>2]|0)|0)+8>>2]|0)+148>>2];c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2];if((b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]|0)<(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[g>>2]|0)+8>>2]|0)+238>>1]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];if((b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]|0)>(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0))b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];if(c[m>>2]|0){c[(c[(c[k>>2]|0)+8>>2]|0)+128>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+128>>2];o=c[(c[k>>2]|0)+8>>2]|0;if((c[(c[m>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+128>>2]<<2)>>2]|0)<(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0))q=c[(c[m>>2]|0)+(c[o+128>>2]<<2)>>2]|0;else q=c[o+232>>2]|0;c[(c[m>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+128>>2]<<2)>>2]=q}c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}q=c[g>>2]|0;if(!(c[m>>2]|0)){if((b[(c[q+8>>2]|0)+236>>1]|0)>0){c[p>>2]=b[(c[(c[g>>2]|0)+8>>2]|0)+236>>1];c[k>>2]=$B(c[g>>2]|0)|0;while(1){r=c[p>>2]|0;if(!(c[k>>2]|0))break;l=(c[(c[k>>2]|0)+8>>2]|0)+232|0;c[l>>2]=(c[l>>2]|0)-r;c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}l=(c[(c[g>>2]|0)+8>>2]|0)+236|0;b[l>>1]=(b[l>>1]|0)-r;r=(c[(c[g>>2]|0)+8>>2]|0)+238|0;b[r>>1]=(b[r>>1]|0)-(c[p>>2]|0)}}else{c[k>>2]=$B(q)|0;while(1){if(!(c[k>>2]|0))break;q=(c[(c[k>>2]|0)+8>>2]|0)+232|0;c[q>>2]=(c[q>>2]|0)-(c[(c[m>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+128>>2]<<2)>>2]|0);c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}c[n>>2]=1}uj(c[g>>2]|0,c[n>>2]|0);c[k>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;if(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0)O4(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0);if(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0)O4(c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]|0);c[k>>2]=aC(c[h>>2]|0,c[k>>2]|0)|0}O4(c[(c[($B(c[g>>2]|0)|0)+8>>2]|0)+112>>2]|0);c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[(c[(c[k>>2]|0)+8>>2]|0)+112>>2]=0;c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}if(!(c[m>>2]|0)){i=f;return}O4(c[m>>2]|0);i=f;return}function tj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;a=c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]|0;c[e>>2]=a;if(!a){a=c[d>>2]|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[e>>2]=a;f=c[e>>2]|0;i=b;return f|0}if((c[e>>2]|0)==(c[d>>2]|0)){f=c[e>>2]|0;i=b;return f|0}a=tj(c[e>>2]|0)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+152>>2]=a;c[e>>2]=a;f=c[e>>2]|0;i=b;return f|0}function uj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=d;c[h>>2]=1;while(1){if((c[h>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;uj(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[h>>2]<<2)>>2]|0,0);c[h>>2]=(c[h>>2]|0)+1}if(!((c[g>>2]|0)!=0?1:(c[(c[(c[f>>2]|0)+8>>2]|0)+200>>2]|0)!=0)){i=e;return}b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]=32767;b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]=-1;c[k>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[j>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];if((b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0)<(c[j>>2]|0))b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]=c[j>>2];if((b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)>(c[j>>2]|0)){b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]=c[j>>2];c[l>>2]=c[k>>2]}c[k>>2]=aC(c[f>>2]|0,c[k>>2]|0)|0}c[(c[(c[f>>2]|0)+8>>2]|0)+264>>2]=c[l>>2];i=e;return}function vj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[(c[(c[g>>2]|0)+8>>2]|0)+128>>2]|0){i=e;return}c[(c[(c[g>>2]|0)+8>>2]|0)+128>>2]=c[h>>2];c[j>>2]=OA(c[f>>2]|0,c[g>>2]|0)|0;while(1){k=c[f>>2]|0;if(!(c[j>>2]|0))break;d=c[j>>2]|0;vj(k,c[((c[c[j>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0,c[h>>2]|0);c[j>>2]=QA(c[f>>2]|0,c[j>>2]|0)|0}c[j>>2]=RA(k,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;g=c[j>>2]|0;vj(c[f>>2]|0,c[((c[c[j>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0,c[h>>2]|0);c[j>>2]=SA(c[f>>2]|0,c[j>>2]|0)|0}i=e;return}function wj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=fC(c[e>>2]|0,c[f>>2]|0,1)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]=0;f=bK(20)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=f;c[(c[(c[g>>2]|0)+8>>2]|0)+180+4>>2]=0;f=bK(20)|0;c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]=f;if(c[12579]|0){c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]=c[12579];c[(c[(c[12579]|0)+8>>2]|0)+164>>2]=c[g>>2];h=c[g>>2]|0;c[12579]=h;j=c[g>>2]|0;k=j+8|0;l=c[k>>2]|0;m=l+164|0;c[m>>2]=0;n=c[g>>2]|0;i=d;return n|0}else{c[(c[(c[g>>2]|0)+8>>2]|0)+168>>2]=0;c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=c[g>>2];h=c[g>>2]|0;c[12579]=h;j=c[g>>2]|0;k=j+8|0;l=c[k>>2]|0;m=l+164|0;c[m>>2]=0;n=c[g>>2]|0;i=d;return n|0}return 0}function xj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;if(a[(c[(c[g>>2]|0)+8>>2]|0)+157>>0]|0){i=e;return}a[(c[(c[g>>2]|0)+8>>2]|0)+157>>0]=1;a[(c[(c[g>>2]|0)+8>>2]|0)+158>>0]=1;c[h>>2]=OA(c[f>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[j>>2]=QA(c[f>>2]|0,c[h>>2]|0)|0;d=c[h>>2]|0;c[k>>2]=c[((c[c[h>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2];if(!(a[(c[(c[k>>2]|0)+8>>2]|0)+158>>0]|0)){if(!(a[(c[(c[k>>2]|0)+8>>2]|0)+157>>0]|0))xj(c[f>>2]|0,c[k>>2]|0)}else yj(c[f>>2]|0,c[h>>2]|0);c[h>>2]=c[j>>2]}a[(c[(c[g>>2]|0)+8>>2]|0)+158>>0]=0;i=e;return}function yj(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=i;i=i+16|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=c[g>>2]|0;a=c[g>>2]|0;c[h>>2]=VA(c[f>>2]|0,c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0,0,0)|0;if(!(c[h>>2]|0)){a=c[g>>2]|0;b=c[g>>2]|0;c[h>>2]=VA(c[f>>2]|0,c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,0,1)|0}zj(c[h>>2]|0,e[(c[(c[g>>2]|0)+8>>2]|0)+170>>1]|0,c[(c[(c[g>>2]|0)+8>>2]|0)+156>>2]|0);pC(c[f>>2]|0,c[g>>2]|0)|0;i=d;return}function zj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+8|0;j=g+4|0;k=g;c[h>>2]=a;c[j>>2]=d;c[k>>2]=f;if((e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0|0)>(c[j>>2]|0))l=e[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]|0;else l=c[j>>2]|0;b[(c[(c[h>>2]|0)+8>>2]|0)+170>>1]=l;l=(c[(c[h>>2]|0)+8>>2]|0)+156|0;c[l>>2]=(c[l>>2]|0)+(c[k>>2]|0);i=g;return}function Aj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=yA(c[d>>2]|0,124293)|0;c[e>>2]=(uO(c[f>>2]|0,0)|0)&255;i=b;return c[e>>2]|0}function Bj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if((((c[13873]|0)!=0?(b=zA(c[f>>2]|0,c[13873]|0)|0,c[g>>2]=b,(b|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0)?((kO(c[g>>2]|0)|0)&255|0)==0:0){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function Cj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;a=c[e>>2]|0;c[g>>2]=c[(c[(c[((c[c[e>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+212>>2];a=c[e>>2]|0;c[h>>2]=c[(c[(c[((c[c[e>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+212>>2];if((c[g>>2]|0)==(c[h>>2]|0)){c[d>>2]=1;j=c[d>>2]|0;i=b;return j|0}c[f>>2]=Fj(c[g>>2]|0,c[h>>2]|0)|0;if((c[f>>2]|0)!=(c[g>>2]|0)?(c[f>>2]|0)!=(c[h>>2]|0):0){c[d>>2]=0;j=c[d>>2]|0;i=b;return j|0}c[d>>2]=1;j=c[d>>2]|0;i=b;return j|0}function Dj(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g;j=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;f=VA(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0)|0;c[n>>2]=f;if(((f|0)==0?(f=VA(c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,0,0)|0,c[n>>2]=f,(f|0)==0):0)?(f=VA(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,0,1)|0,c[n>>2]=f,(f|0)==0):0){f=wB(c[k>>2]|0)|0;k=wB(c[l>>2]|0)|0;c[h>>2]=f;c[h+4>>2]=k;$z(1,124310,h)|0;i=g;return}zj(c[n>>2]|0,e[(c[(c[m>>2]|0)+8>>2]|0)+170>>1]|0,c[(c[(c[m>>2]|0)+8>>2]|0)+156>>2]|0);i=g;return}function Ej(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+144|0;j=h;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h+32|0;c[k>>2]=a;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;c[p>>2]=RA(c[k>>2]|0,c[l>>2]|0)|0;while(1){s=c[p>>2]|0;if(!(c[p>>2]|0))break;g=c[p>>2]|0;c[o>>2]=c[((c[s>>2]&3|0)==3?g:g+32|0)+28>>2];g=OA(c[k>>2]|0,c[o>>2]|0)|0;c[q>>2]=g;if((g|0)!=0?(g=c[q>>2]|0,(c[((c[c[q>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)==(c[m>>2]|0)):0){t=14;break}c[p>>2]=SA(c[k>>2]|0,c[p>>2]|0)|0}if((t|0)==14){i=h;return}if(!s){s=c[12589]|0;c[12589]=s+1;c[j>>2]=s;k3(r,124301,j)|0;c[o>>2]=wj(c[k>>2]|0,r)|0;c[p>>2]=VA(c[k>>2]|0,c[o>>2]|0,c[l>>2]|0,0,1)|0;c[q>>2]=VA(c[k>>2]|0,c[o>>2]|0,c[m>>2]|0,0,1)|0}if((e[(c[(c[p>>2]|0)+8>>2]|0)+170>>1]|0|0)>0)u=e[(c[(c[p>>2]|0)+8>>2]|0)+170>>1]|0;else u=0;b[(c[(c[p>>2]|0)+8>>2]|0)+170>>1]=u;u=(c[(c[p>>2]|0)+8>>2]|0)+156|0;c[u>>2]=(c[u>>2]|0)+((c[(c[(c[n>>2]|0)+8>>2]|0)+156>>2]|0)*1e3|0);if((e[(c[(c[q>>2]|0)+8>>2]|0)+170>>1]|0|0)>(e[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0|0))v=b[(c[(c[q>>2]|0)+8>>2]|0)+170>>1]|0;else v=b[(c[(c[n>>2]|0)+8>>2]|0)+170>>1]|0;b[(c[(c[q>>2]|0)+8>>2]|0)+170>>1]=v;v=(c[(c[q>>2]|0)+8>>2]|0)+156|0;c[v>>2]=(c[v>>2]|0)+(c[(c[(c[n>>2]|0)+8>>2]|0)+156>>2]|0);i=h;return}function Fj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;while(1){g=c[e>>2]|0;if((c[e>>2]|0)==(c[f>>2]|0))break;if((c[(c[g+8>>2]|0)+204>>2]|0)>=(c[(c[(c[f>>2]|0)+8>>2]|0)+204>>2]|0)){c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+200>>2];continue}else{c[f>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+200>>2];continue}}i=d;return g|0}function Gj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=(($B(c[d>>2]|0)|0)!=0^1)&1;i=b;return a|0}function Hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[(c[e>>2]|0)+8>>2]|0)+200>>2]=c[f>>2];hj(c[f>>2]|0,c[e>>2]|0)|0;gj(c[f>>2]|0,c[e>>2]|0);i=d;return}function Ij(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=yA(c[f>>2]|0,124202)|0;do if((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){if(!(J3(c[g>>2]|0,124212)|0)){c[e>>2]=2;break}if(!(J3(c[g>>2]|0,124216)|0)){c[e>>2]=3;break}if(!(J3(c[g>>2]|0,124223)|0)){c[e>>2]=4;break}if(!(J3(c[g>>2]|0,124227)|0)){c[e>>2]=5;break}if(!(J3(c[g>>2]|0,124207)|0))c[e>>2]=1;else h=13}else h=13;while(0);if((h|0)==13)c[e>>2]=6;i=d;return c[e>>2]|0}function Jj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=$B(c[e>>2]|0)|0;a=c[f>>2]|0;if(!(c[f>>2]|0)){c[d>>2]=a;h=c[d>>2]|0;i=b;return h|0}c[g>>2]=tj(a)|0;while(1){a=aC(c[e>>2]|0,c[f>>2]|0)|0;c[f>>2]=a;j=c[g>>2]|0;if(!a)break;Kj(j,c[f>>2]|0)|0}c[d>>2]=j;h=c[d>>2]|0;i=b;return h|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=c[f>>2]|0;if(c[g>>2]|0){f=tj(b)|0;c[(c[(tj(c[g>>2]|0)|0)+8>>2]|0)+152>>2]=f;c[e>>2]=f;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=b;h=c[e>>2]|0;i=d;return h|0}return 0}function Lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[e+12>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[g>>2];MC(c[f>>2]|0,124261,c[c[h>>2]>>2]|0,1)|0;i=e;return}function Mj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[e+12>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[g>>2];MC(c[f>>2]|0,124428,c[(c[h>>2]|0)+4>>2]|0,1)|0;i=e;return}function Nj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[e+12>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[g>>2];MC(c[f>>2]|0,124413,c[(c[h>>2]|0)+8>>2]|0,1)|0;i=e;return}function Oj(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+272|0;e=d+264|0;f=d+260|0;g=d+256|0;j=d+252|0;k=d+120|0;l=d;m=d+248|0;n=d+244|0;o=d+240|0;c[e>>2]=b;c[13877]=qA(c[e>>2]|0,2,124443,0)|0;c[13878]=qA(c[e>>2]|0,2,124452,0)|0;if(!((c[13877]|0)!=0|(c[13878]|0)!=0)){i=d;return}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[n>>2]=0;c[m>>2]=0;c[g>>2]=TA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;b=c[g>>2]|0;p=c[g>>2]|0;do if((c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)!=(c[((c[c[g>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)){q=c[g>>2]|0;if(((c[13877]|0)!=0?(c[((c[c[g>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0)==(c[f>>2]|0):0)?(q=zA(c[g>>2]|0,c[13877]|0)|0,c[j>>2]=q,(a[q>>0]|0)!=0):0){c[m>>2]=Pj(k,c[m>>2]|0,c[f>>2]|0,c[g>>2]|0,c[j>>2]|0)|0;break}q=c[g>>2]|0;if(((c[13878]|0)!=0?(c[((c[c[g>>2]>>2]&3|0)==3?q:q+32|0)+28>>2]|0)==(c[f>>2]|0):0)?(q=zA(c[g>>2]|0,c[13878]|0)|0,c[j>>2]=q,(a[q>>0]|0)!=0):0)c[n>>2]=Pj(l,c[n>>2]|0,c[f>>2]|0,c[g>>2]|0,c[j>>2]|0)|0}while(0);c[g>>2]=UA(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0)|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break;if((c[k+((c[o>>2]|0)*24|0)+4+4>>2]|0)>1)Qj(c[f>>2]|0,k+((c[o>>2]|0)*24|0)+4|0,+h[k+((c[o>>2]|0)*24|0)+16>>3]);if(c[k+((c[o>>2]|0)*24|0)+4>>2]|0)O4(c[k+((c[o>>2]|0)*24|0)+4>>2]|0);c[o>>2]=(c[o>>2]|0)+1}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[n>>2]|0))break;if((c[l+((c[o>>2]|0)*24|0)+4+4>>2]|0)>1)Qj(c[f>>2]|0,l+((c[o>>2]|0)*24|0)+4|0,+h[l+((c[o>>2]|0)*24|0)+16>>3]);if(c[l+((c[o>>2]|0)*24|0)+4>>2]|0)O4(c[l+((c[o>>2]|0)*24|0)+4>>2]|0);c[o>>2]=(c[o>>2]|0)+1}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=d;return}function Pj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;j=i;i=i+48|0;k=j;l=j+44|0;m=j+40|0;n=j+36|0;o=j+32|0;p=j+28|0;q=j+24|0;r=j+20|0;s=j+16|0;t=j+12|0;u=j+8|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[n>>2]|0)){v=10;break}if((a[c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)>>2]>>0]|0)==(a[c[q>>2]>>0]|0)?(J3(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)>>2]|0,c[q>>2]|0)|0)==0:0){v=5;break}c[r>>2]=(c[r>>2]|0)+1}do if((v|0)==5){g=(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4|0;if(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]|0)w=eK(c[g>>2]|0,(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4>>2]|0)+2<<2)|0;else w=cK((c[g+4>>2]|0)+2<<2)|0;c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]=w;g=c[p>>2]|0;f=(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4|0;e=c[f>>2]|0;c[f>>2]=e+1;c[(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]|0)+(e<<2)>>2]=g;c[(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]|0)+(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4>>2]<<2)>>2]=0}else if((v|0)==10){g=(c[n>>2]|0)+1|0;c[n>>2]=g;if((g|0)<=5){c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4>>2]=0;g=bK(8)|0;c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]=g;g=c[p>>2]|0;e=(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4|0;f=c[e>>2]|0;c[e>>2]=f+1;c[(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]|0)+(f<<2)>>2]=g;c[(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4>>2]|0)+(c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+4+4>>2]<<2)>>2]=0;c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)>>2]=c[q>>2];c[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+12>>2]=0;h[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+16>>3]=0.0;break}c[n>>2]=(c[n>>2]|0)+-1;g=wB(c[o>>2]|0)|0;c[k>>2]=5;c[k+4>>2]=g;$z(1,124461,k)|0;c[l>>2]=c[n>>2];x=c[l>>2]|0;i=j;return x|0}while(0);bH(c[p>>2]|0,s,t);k=c[p>>2]|0;q=(c[((c[c[p>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)==(c[o>>2]|0)?c[t>>2]|0:c[s>>2]|0;c[u>>2]=q;if(q){q=(c[m>>2]|0)+((c[r>>2]|0)*24|0)+12|0;s=(c[q>>2]|0)+1|0;c[q>>2]=s;if((s|0)==1)y=+cH(c[p>>2]|0,c[u>>2]|0);else y=0.0;h[(c[m>>2]|0)+((c[r>>2]|0)*24|0)+16>>3]=y}c[l>>2]=c[n>>2];x=c[l>>2]|0;i=j;return x|0}function Qj(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0;f=i;i=i+208|0;g=f+196|0;j=f+192|0;k=f+188|0;l=f+184|0;m=f+180|0;n=f+176|0;o=f+152|0;p=f+144|0;q=f+136|0;r=f+128|0;s=f+120|0;t=f+112|0;u=f+104|0;v=f+64|0;w=f+172|0;x=f+168|0;y=f;c[g>>2]=b;c[j>>2]=d;h[f+160>>3]=e;h[o>>3]=0.0;h[p>>3]=0.0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[l>>2]=c[(c[c[j>>2]>>2]|0)+(c[n>>2]<<2)>>2];d=c[l>>2]|0;b=c[c[l>>2]>>2]&3;if((c[((c[c[l>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)==(c[g>>2]|0)){d=c[l>>2]|0;c[k>>2]=c[((b|0)==3?d:d+32|0)+28>>2]}else{d=c[l>>2]|0;c[k>>2]=c[((b|0)==2?d:d+-32|0)+28>>2]}h[q>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[r>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];h[u>>3]=+d2(+h[q>>3],+h[r>>3]);h[o>>3]=+h[o>>3]+ +h[q>>3]/+h[u>>3];h[p>>3]=+h[p>>3]+ +h[r>>3]/+h[u>>3];c[n>>2]=(c[n>>2]|0)+1}h[u>>3]=+d2(+h[o>>3],+h[p>>3]);h[o>>3]=+h[o>>3]/+h[u>>3];h[p>>3]=+h[p>>3]/+h[u>>3];h[q>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[r>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];e=+h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3];z=+h[(c[(c[g>>2]|0)+8>>2]|0)+80>>3];k=e>z+ +(c[(c[(qC(c[g>>2]|0)|0)+8>>2]|0)+252>>2]|0);d=c[(c[g>>2]|0)+8>>2]|0;if(k)A=+h[d+88>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3];else{z=+h[d+80>>3];A=z+ +(c[(c[(qC(c[g>>2]|0)|0)+8>>2]|0)+252>>2]|0)}h[u>>3]=A;h[s>>3]=+h[o>>3]*+h[u>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[t>>3]=+h[p>>3]*+h[u>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];h[y>>3]=+h[q>>3];h[y+8>>3]=+h[r>>3];h[y+16>>3]=(+h[q>>3]*2.0+ +h[s>>3])/3.0;h[y+16+8>>3]=(+h[r>>3]*2.0+ +h[t>>3])/3.0;h[y+32>>3]=(+h[s>>3]*2.0+ +h[q>>3])/3.0;h[y+32+8>>3]=(+h[t>>3]*2.0+ +h[r>>3])/3.0;h[y+48>>3]=+h[s>>3];h[y+48+8>>3]=+h[t>>3];hN(c[g>>2]|0,y);h[q>>3]=+h[y>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[r>>3]=+h[y+8>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];A=+h[q>>3];h[v>>3]=+(~~(+h[q>>3]>=0.0?A+.5:A-.5)|0);A=+h[r>>3];h[v+8>>3]=+(~~(+h[r>>3]>=0.0?A+.5:A-.5)|0);c[v+24>>2]=0;a[v+32>>0]=~~((+h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]+ +h[v>>3])*256.0/(+h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3]));a[v+29>>0]=0;a[v+28>>0]=1;a[v+30>>0]=0;a[v+31>>0]=0;h[v+16>>3]=0.0;a[v+33>>0]=0;c[v+36>>2]=0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[l>>2]=c[(c[c[j>>2]>>2]|0)+(c[n>>2]<<2)>>2];bH(c[l>>2]|0,w,x);while(1){if(!(c[l>>2]|0))break;c[m>>2]=c[l>>2];while(1){if(!(c[m>>2]|0))break;r=c[m>>2]|0;if((c[((c[c[m>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)==(c[g>>2]|0)){B=(c[(c[m>>2]|0)+8>>2]|0)+56|0;C=v;D=B+40|0;do{c[B>>2]=c[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(D|0))}r=c[m>>2]|0;if((c[((c[c[m>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)==(c[g>>2]|0)){B=(c[(c[m>>2]|0)+8>>2]|0)+16|0;C=v;D=B+40|0;do{c[B>>2]=c[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(D|0))}if(((a[(c[(c[m>>2]|0)+8>>2]|0)+112>>0]|0)==1?(r=c[m>>2]|0,(a[(c[(c[((c[c[m>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+156>>0]|0)==1):0)?(r=c[m>>2]|0,(c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+180+4>>2]|0)==1):0){r=c[m>>2]|0;E=c[c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]|0}else E=0;c[m>>2]=E}c[m>>2]=c[l>>2];while(1){if(!(c[m>>2]|0))break;r=c[m>>2]|0;if((c[((c[c[m>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)==(c[g>>2]|0)){B=(c[(c[m>>2]|0)+8>>2]|0)+56|0;C=v;D=B+40|0;do{c[B>>2]=c[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(D|0))}r=c[m>>2]|0;if((c[((c[c[m>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)==(c[g>>2]|0)){B=(c[(c[m>>2]|0)+8>>2]|0)+16|0;C=v;D=B+40|0;do{c[B>>2]=c[C>>2];B=B+4|0;C=C+4|0}while((B|0)<(D|0))}if(((a[(c[(c[m>>2]|0)+8>>2]|0)+112>>0]|0)==1?(r=c[m>>2]|0,(a[(c[(c[((c[c[m>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)+8>>2]|0)+156>>0]|0)==1):0)?(r=c[m>>2]|0,(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)+8>>2]|0)+172+4>>2]|0)==1):0){r=c[m>>2]|0;F=c[c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?r:r+32|0)+28>>2]|0)+8>>2]|0)+172>>2]>>2]|0}else F=0;c[m>>2]=F}c[l>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]}c[n>>2]=(c[n>>2]|0)+1}a[(c[(c[g>>2]|0)+8>>2]|0)+145>>0]=1;i=f;return}function Rj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;Kg(c[d>>2]|0);a=c[d>>2]|0;f=c[d>>2]|0;g=Gg(c[((c[c[d>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0,c[((c[c[d>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)|0;c[e>>2]=g;f=c[d>>2]|0;if(g){Vg(f,c[e>>2]|0);i=b;return}else{e=c[d>>2]|0;g=c[d>>2]|0;Og(c[((c[f>>2]&3|0)==2?e:e+-32|0)+28>>2]|0,c[((c[c[d>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0,c[d>>2]|0)|0;i=b;return}}function Sj(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[(c[e>>2]|0)+8>>2]|0)+216+4>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)+(c[f>>2]<<2)>>2];c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;a[(c[(c[g>>2]|0)+8>>2]|0)+157>>0]=0;c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[g>>2]|0))break;Tj(c[g>>2]|0);c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+164>>2]}c[f>>2]=(c[f>>2]|0)+1}i=d;return}function Tj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;if(a[(c[(c[e>>2]|0)+8>>2]|0)+157>>0]|0){i=d;return}a[(c[(c[e>>2]|0)+8>>2]|0)+157>>0]=1;a[(c[(c[e>>2]|0)+8>>2]|0)+158>>0]=1;c[f>>2]=0;while(1){b=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)+(c[f>>2]<<2)>>2]|0;c[g>>2]=b;if(!b)break;b=c[g>>2]|0;c[h>>2]=c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];if(!(a[(c[(c[h>>2]|0)+8>>2]|0)+158>>0]|0)){if(!(a[(c[(c[h>>2]|0)+8>>2]|0)+157>>0]|0))Tj(c[h>>2]|0)}else{Rj(c[g>>2]|0);c[f>>2]=(c[f>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}a[(c[(c[e>>2]|0)+8>>2]|0)+158>>0]=0;i=d;return}function Uj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[g>>2]=OA(c[d>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;a=c[g>>2]|0;h=c[g>>2]|0;if((c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)!=(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){h=c[g>>2]|0;a=c[g>>2]|0;j=(N((c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0)|0)-1|0;c[e>>2]=(c[e>>2]|0)+j}c[g>>2]=QA(c[d>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}i=b;return c[e>>2]|0}function Vj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=b;c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[(c[g>>2]|0)+8>>2]|0)+172+4>>2]|0))break;c[f>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)+(c[h>>2]<<2)>>2];a[(c[(c[f>>2]|0)+8>>2]|0)+112>>0]=0;c[h>>2]=(c[h>>2]|0)+1}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0;e=i;i=i+48|0;f=e+8|0;g=e+32|0;j=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e;c[g>>2]=b;c[j>>2]=d;c[m>>2]=c[(c[j>>2]|0)+24>>2];h[n>>3]=1797693134862315708145274.0e284;Zj(c[g>>2]|0);c[l>>2]=0;while(1){if(!((c[l>>2]|0)<(c[m>>2]|0)?1:(c[m>>2]|0)==-1)){o=13;break}c[k>>2]=$B(c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]=0;c[k>>2]=aC(c[g>>2]|0,c[k>>2]|0)|0}Ti(c[g>>2]|0);p=+_j(c[g>>2]|0);h[(c[j>>2]|0)+8>>3]=p;if(a[138998]|0){d=c[24742]|0;h[f>>3]=+h[(c[j>>2]|0)+8>>3];Y2(d,124513,f)|0}if(+h[(c[j>>2]|0)+8>>3]<=+h[c[j>>2]>>3])break;if((c[m>>2]|0)==-1?+h[n>>3]<=+h[(c[j>>2]|0)+8>>3]:0)break;h[n>>3]=+h[(c[j>>2]|0)+8>>3];$j(c[g>>2]|0);c[l>>2]=(c[l>>2]|0)+1}if((o|0)==13){q=c[g>>2]|0;Ti(q);r=c[g>>2]|0;ak(r);s=c[g>>2]|0;bk(s);t=c[g>>2]|0;u=+_j(t);v=c[j>>2]|0;w=v+8|0;h[w>>3]=u;i=e;return}c[(c[j>>2]|0)+16>>2]=c[(c[j>>2]|0)+20>>2];c[(c[j>>2]|0)+20>>2]=c[l>>2];q=c[g>>2]|0;Ti(q);r=c[g>>2]|0;ak(r);s=c[g>>2]|0;bk(s);t=c[g>>2]|0;u=+_j(t);v=c[j>>2]|0;w=v+8|0;h[w>>3]=u;i=e;return}function Xj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]=0;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function Yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d+16|0;f=d+8|0;g=d+40|0;h=d+36|0;j=d+32|0;k=d+28|0;l=d+20|0;c[h>>2]=a;c[j>>2]=b;c[l>>2]=5;c[k>>2]=yA(c[h>>2]|0,136937)|0;if((c[k>>2]|0)!=0?(h=c[k>>2]|0,c[f>>2]=d,c[f+4>>2]=l,l=l3(h,124528,f)|0,c[d+24>>2]=l,(l|0)>0):0){$z(0,124535,e)|0;c[(c[j>>2]|0)+24>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[g>>2]=0;m=c[g>>2]|0;i=d;return m|0}c[(c[j>>2]|0)+24>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[g>>2]=0;m=c[g>>2]|0;i=d;return m|0}function Zj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0.0,n=0.0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[12593]=cK((kB(c[d>>2]|0)|0)*24|0)|0;c[12592]=0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[(c[(c[e>>2]|0)+8>>2]|0)+120>>2]=-1;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;do if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)){a=bK(4)|0;c[(c[12593]|0)+((c[12592]|0)*24|0)>>2]=a;c[c[(c[12593]|0)+((c[12592]|0)*24|0)>>2]>>2]=c[e>>2];c[(c[12593]|0)+((c[12592]|0)*24|0)+4>>2]=1;h[(c[12593]|0)+((c[12592]|0)*24|0)+8>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3];h[(c[12593]|0)+((c[12592]|0)*24|0)+16>>3]=+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3];c[(c[(c[e>>2]|0)+8>>2]|0)+120>>2]=c[12592];c[12592]=(c[12592]|0)+1}else{c[f>>2]=lO(c[e>>2]|0)|0;a=c[(c[f>>2]|0)+8>>2]|0;if((c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]|0)>-1){c[g>>2]=c[a+120>>2];j=c[e>>2]|0;k=(c[12593]|0)+((c[g>>2]|0)*24|0)+4|0;l=c[k>>2]|0;c[k>>2]=l+1;c[(c[(c[12593]|0)+((c[g>>2]|0)*24|0)>>2]|0)+(l<<2)>>2]=j;j=(c[12593]|0)+((c[g>>2]|0)*24|0)+8|0;h[j>>3]=+h[j>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3];if(+h[(c[12593]|0)+((c[g>>2]|0)*24|0)+16>>3]<+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3])m=+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3];else m=+h[(c[12593]|0)+((c[g>>2]|0)*24|0)+16>>3];h[(c[12593]|0)+((c[g>>2]|0)*24|0)+16>>3]=m;c[(c[(c[e>>2]|0)+8>>2]|0)+120>>2]=c[g>>2];break}j=bK(c[a+216>>2]<<2)|0;c[(c[12593]|0)+((c[12592]|0)*24|0)>>2]=j;j=(c[f>>2]|0)==(c[e>>2]|0);c[c[(c[12593]|0)+((c[12592]|0)*24|0)>>2]>>2]=c[f>>2];if(j){c[(c[12593]|0)+((c[12592]|0)*24|0)+4>>2]=1;h[(c[12593]|0)+((c[12592]|0)*24|0)+8>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3];h[(c[12593]|0)+((c[12592]|0)*24|0)+16>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]}else{c[(c[(c[12593]|0)+((c[12592]|0)*24|0)>>2]|0)+4>>2]=c[e>>2];c[(c[12593]|0)+((c[12592]|0)*24|0)+4>>2]=2;h[(c[12593]|0)+((c[12592]|0)*24|0)+8>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3];if(+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]<+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3])n=+h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3];else n=+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3];h[(c[12593]|0)+((c[12592]|0)*24|0)+16>>3]=n}c[(c[(c[f>>2]|0)+8>>2]|0)+120>>2]=c[12592];c[(c[(c[e>>2]|0)+8>>2]|0)+120>>2]=c[12592];c[12592]=(c[12592]|0)+1}while(0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function _j(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;b=i;i=i+48|0;d=b+32|0;e=b+28|0;f=b+24|0;g=b+16|0;j=b+8|0;k=b;c[d>>2]=a;h[g>>3]=0.0;ak(c[d>>2]|0);h[j>>3]=+(_((c[12590]|0)-1|0,c[(c[(c[d>>2]|0)+8>>2]|0)+252>>2]|0)|0);c[e>>2]=0;while(1){l=+h[g>>3];if((c[e>>2]|0)>=(c[12590]|0))break;if(l<+h[(c[12591]|0)+((c[e>>2]|0)*40|0)+24>>3]+ +(_(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+16>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+248>>2]|0)|0)){h[g>>3]=+h[(c[12591]|0)+((c[e>>2]|0)*40|0)+24>>3]+ +(_(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+16>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+248>>2]|0)|0);c[f>>2]=c[e>>2]}h[j>>3]=+h[j>>3]+ +h[(c[12591]|0)+((c[e>>2]|0)*40|0)+32>>3];c[e>>2]=(c[e>>2]|0)+1}h[k>>3]=l/+h[j>>3];i=b;return +(+h[k>>3])}function $j(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[12594]=bK((kB(c[d>>2]|0)|0)<<2)|0;c[e>>2]=0;while(1){a=c[e>>2]|0;if((a|0)>=(kB(c[d>>2]|0)|0))break;c[(c[12594]|0)+(c[e>>2]<<2)>>2]=c[e>>2];c[e>>2]=(c[e>>2]|0)+1}ak(c[d>>2]|0);ck(c[d>>2]|0);dk(c[d>>2]|0);i=b;return}function ak(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;j=b+8|0;k=b+4|0;l=b;c[d>>2]=a;c[12590]=0;if(c[12591]|0){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[12592]|0))break;if(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+4>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+12>>2]|0))break;c[k>>2]=(c[k>>2]|0)+1}O4(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+4>>2]|0)}if(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+8>>2]|0)O4(c[(c[12591]|0)+((c[e>>2]|0)*40|0)+8>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[12591]|0)}c[12591]=bK((c[12592]|0)*40|0)|0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[12592]|0))break;k=bK(c[12592]<<2)|0;c[(c[12591]|0)+((c[e>>2]|0)*40|0)+4>>2]=k;k=bK(c[12592]<<2)|0;c[(c[12591]|0)+((c[e>>2]|0)*40|0)+8>>2]=k;c[(c[12591]|0)+((c[e>>2]|0)*40|0)>>2]=c[e>>2];c[(c[12591]|0)+((c[e>>2]|0)*40|0)+12>>2]=0;c[(c[12591]|0)+((c[e>>2]|0)*40|0)+16>>2]=0;h[(c[12591]|0)+((c[e>>2]|0)*40|0)+24>>3]=0.0;h[(c[12591]|0)+((c[e>>2]|0)*40|0)+32>>3]=0.0;c[e>>2]=(c[e>>2]|0)+1}c[g>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[j>>2]=OA(c[d>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;k=c[j>>2]|0;c[l>>2]=(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)+1;while(1){k=c[j>>2]|0;if((c[l>>2]|0)>=(c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))break;k=(c[12591]|0)+((c[l>>2]|0)*40|0)+16|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}c[j>>2]=QA(c[d>>2]|0,c[j>>2]|0)|0}c[g>>2]=aC(c[d>>2]|0,c[g>>2]|0)|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[12592]|0))break;c[f>>2]=c[c[(c[12593]|0)+((c[e>>2]|0)*24|0)>>2]>>2];if(((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)+1|0)>(c[12590]|0))c[12590]=(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)+1;m=+h[(c[12593]|0)+((c[e>>2]|0)*24|0)+8>>3]*72.0+ +(_(+h[(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+24>>3]>0.0&1,c[(c[(c[d>>2]|0)+8>>2]|0)+248>>2]|0)|0);g=(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+24|0;h[g>>3]=+h[g>>3]+m;if(+h[(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+32>>3]<+h[(c[12593]|0)+((c[e>>2]|0)*24|0)+16>>3]*72.0)h[(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+32>>3]=+h[(c[12593]|0)+((c[e>>2]|0)*24|0)+16>>3]*72.0;c[(c[(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+4>>2]|0)+(c[(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+12>>2]<<2)>>2]=(c[12593]|0)+((c[e>>2]|0)*24|0);g=(c[12591]|0)+((c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0)*40|0)+12|0;c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+1}i=b;return}function bk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;j=b+4|0;k=b;c[b+28>>2]=a;c[f>>2]=0;c[g>>2]=0;c[d>>2]=0;while(1){if((c[d>>2]|0)>=(c[12590]|0))break;a=c[g>>2]|0;a:do if(c[(c[12591]|0)+((c[d>>2]|0)*40|0)+12>>2]|0){if((a|0)!=0?(c[(c[12591]|0)+((c[d>>2]|0)*40|0)>>2]|0)>(c[f>>2]|0):0){c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[12591]|0)+((c[d>>2]|0)*40|0)+12>>2]|0))break a;c[j>>2]=c[(c[(c[12591]|0)+((c[d>>2]|0)*40|0)+4>>2]|0)+(c[e>>2]<<2)>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[(c[j>>2]|0)+4>>2]|0))break;c[k>>2]=c[(c[c[j>>2]>>2]|0)+(c[h>>2]<<2)>>2];l=(c[(c[k>>2]|0)+8>>2]|0)+232|0;c[l>>2]=(c[l>>2]|0)-(c[g>>2]|0);c[h>>2]=(c[h>>2]|0)+1}c[e>>2]=(c[e>>2]|0)+1}}}else{if(!a)c[f>>2]=c[(c[12591]|0)+((c[d>>2]|0)*40|0)>>2];c[g>>2]=(c[g>>2]|0)+1}while(0);c[d>>2]=(c[d>>2]|0)+1}i=b;return}function ck(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[12594]|0;w3(a,kB(c[d>>2]|0)|0,4,63);i=b;return}function dk(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0;d=i;i=i+80|0;e=d+72|0;f=d+68|0;g=d+64|0;j=d+16|0;k=d+8|0;l=d;m=d+60|0;n=d+56|0;o=d+52|0;p=d+48|0;q=d+44|0;r=d+40|0;s=d+36|0;t=d+32|0;u=d+28|0;v=d+24|0;c[e>>2]=b;h[k>>3]=0.0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[12590]|0))break;w=c[f>>2]|0;if((c[(c[12591]|0)+((c[(c[12594]|0)+(c[f>>2]<<2)>>2]|0)*40|0)+12>>2]|0)>1){x=4;break}c[f>>2]=w+1}if((x|0)==4){c[g>>2]=c[(c[12594]|0)+(w<<2)>>2];if((c[12590]|0)>((c[f>>2]|0)+1|0))y=+h[(c[12591]|0)+((c[(c[12594]|0)+((c[f>>2]|0)+1<<2)>>2]|0)*40|0)+24>>3];else y=0.0;h[j>>3]=y}if((c[f>>2]|0)==(c[12590]|0)){i=d;return}w3(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+4>>2]|0,c[(c[12591]|0)+((c[g>>2]|0)*40|0)+12>>2]|0,4,64);if(!(!(+h[j>>3]<=+h[(c[12591]|0)+((c[g>>2]|0)*40|0)+24>>3]/4.0)?!(+h[j>>3]>=+h[(c[12591]|0)+((c[g>>2]|0)*40|0)+24>>3]*3.0/4.0):0))h[j>>3]=+h[(c[12591]|0)+((c[g>>2]|0)*40|0)+24>>3]/2.0;h[l>>3]=+h[j>>3];c[m>>2]=0;c[o>>2]=0;c[r>>2]=c[(c[12591]|0)+((c[g>>2]|0)*40|0)+12>>2];c[s>>2]=0;c[t>>2]=0;h[k>>3]=0.0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=((c[r>>2]|0)+(c[s>>2]|0)|0))break;do if(c[(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+8>>2]|0)+(c[f>>2]<<2)>>2]|0)c[s>>2]=(c[s>>2]|0)+1;else{y=+h[k>>3]+ +h[(c[(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+4>>2]|0)+(c[f>>2]<<2)>>2]|0)+8>>3]*72.0+ +(_(+h[k>>3]>0.0&1,c[(c[(c[e>>2]|0)+8>>2]|0)+248>>2]|0)|0);j=c[(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+4>>2]|0)+(c[f>>2]<<2)>>2]|0;if(!((c[m>>2]|0)!=0?!(y<=+h[l>>3]):0)){y=+h[j+8>>3]*72.0+ +(_(+h[k>>3]>0.0&1,c[(c[(c[e>>2]|0)+8>>2]|0)+248>>2]|0)|0);h[k>>3]=+h[k>>3]+y;if(c[m>>2]|0)break;c[n>>2]=c[(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+4>>2]|0)+(c[f>>2]<<2)>>2];c[m>>2]=1;break}c[u>>2]=j;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[(c[n>>2]|0)+4>>2]|0))break;c[q>>2]=0;while(1){z=c[p>>2]|0;if((c[q>>2]|0)>=(c[(c[u>>2]|0)+4>>2]|0))break;c[v>>2]=Og(c[(c[c[n>>2]>>2]|0)+(z<<2)>>2]|0,c[(c[c[u>>2]>>2]|0)+(c[q>>2]<<2)>>2]|0,0)|0;a[(c[(c[v>>2]|0)+8>>2]|0)+112>>0]=1;c[o>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}c[p>>2]=z+1}c[(c[(c[12591]|0)+((c[g>>2]|0)*40|0)+8>>2]|0)+(c[f>>2]<<2)>>2]=1;c[t>>2]=(c[t>>2]|0)+1;j=(c[12591]|0)+((c[g>>2]|0)*40|0)+12|0;c[j>>2]=(c[j>>2]|0)+-1;j=(c[12591]|0)+((c[g>>2]|0)*40|0)+16|0;c[j>>2]=(c[j>>2]|0)+1;j=(c[12591]|0)+((c[g>>2]|0)*40|0)+24|0;h[j>>3]=+h[j>>3]-(+h[(c[u>>2]|0)+8>>3]*72.0+ +(c[(c[(c[e>>2]|0)+8>>2]|0)+248>>2]|0))}while(0);c[f>>2]=(c[f>>2]|0)+1}i=d;return}function ek(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=fk(c[c[g>>2]>>2]|0)|0;c[k>>2]=fk(c[c[h>>2]>>2]|0)|0;i=d;return ((c[k>>2]|0)<(c[j>>2]|0)&1)-((c[k>>2]|0)>(c[j>>2]|0)&1)|0}function fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;c[f>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+4>>2]|0))break;c[g>>2]=c[(c[c[d>>2]>>2]|0)+(c[e>>2]<<2)>>2];c[j>>2]=qC(c[g>>2]|0)|0;c[h>>2]=OA(c[j>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[f>>2]=(c[f>>2]|0)+1;c[h>>2]=QA(c[j>>2]|0,c[h>>2]|0)|0}c[e>>2]=(c[e>>2]|0)+1}i=b;return c[f>>2]|0}function gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[j>>2]=c[f>>2];i=d;return (+h[(c[12591]|0)+((c[c[j>>2]>>2]|0)*40|0)+24>>3]>+h[(c[12591]|0)+((c[c[g>>2]>>2]|0)*40|0)+24>>3]&1)-(+h[(c[12591]|0)+((c[c[j>>2]>>2]|0)*40|0)+24>>3]<+h[(c[12591]|0)+((c[c[g>>2]>>2]|0)*40|0)+24>>3]&1)|0}function hk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if((((c[13873]|0)!=0?(b=zA(c[f>>2]|0,c[13873]|0)|0,c[g>>2]=b,(b|0)!=0):0)?(a[c[g>>2]>>0]|0)!=0:0)?((kO(c[g>>2]|0)|0)&255|0)==0:0){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function ik(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[d>>2]=a;wk(c[d>>2]|0);c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[h>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;do if(((c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0)==0?(hk(c[h>>2]|0)|0)==0:0)?(a=c[h>>2]|0,c[f>>2]=lO(c[((c[c[h>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)|0,a=c[h>>2]|0,c[g>>2]=lO(c[((c[c[h>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)|0,(c[f>>2]|0)!=(c[g>>2]|0)):0){if((c[(c[(c[f>>2]|0)+8>>2]|0)+212>>2]|0)==0?(c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]|0)==0:0){a=Gg(c[f>>2]|0,c[g>>2]|0)|0;c[j>>2]=a;if(a){Vg(c[h>>2]|0,c[j>>2]|0);break}else{Og(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}}a=c[h>>2]|0;k=c[h>>2]|0;jk(c[d>>2]|0,c[((c[c[h>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0,c[((c[c[h>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0,c[h>>2]|0)}while(0);c[h>>2]=QA(c[d>>2]|0,c[h>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function jk(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=i;i=i+64|0;j=h+52|0;k=h+48|0;l=h+44|0;m=h+40|0;n=h+36|0;o=h+32|0;p=h+28|0;q=h+24|0;r=h+20|0;s=h+16|0;t=h+12|0;u=h+8|0;v=h+4|0;w=h;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;g=c[m>>2]|0;if(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0){g=c[m>>2]|0;f=c[m>>2]|0;c[t>>2]=(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[(c[(c[(c[(c[((c[c[m>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+264>>2]|0)+8>>2]|0)+232>>2]|0)}else c[t>>2]=0;f=c[m>>2]|0;if(c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0){f=c[m>>2]|0;g=c[m>>2]|0;c[u>>2]=(c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[(c[(c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+264>>2]|0)+8>>2]|0)+232>>2]|0)}else c[u>>2]=0;c[q>>2]=(e[(c[(c[m>>2]|0)+8>>2]|0)+170>>1]|0)+(c[t>>2]|0)-(c[u>>2]|0);if((c[q>>2]|0)>0){c[r>>2]=0;c[s>>2]=c[q>>2]}else{c[r>>2]=0-(c[q>>2]|0);c[s>>2]=0}c[n>>2]=Sg(c[j>>2]|0)|0;a[(c[(c[n>>2]|0)+8>>2]|0)+156>>0]=2;c[o>>2]=lO(c[k>>2]|0)|0;c[p>>2]=lO(c[l>>2]|0)|0;c[v>>2]=gi(c[n>>2]|0,c[o>>2]|0,+(c[r>>2]|0),(c[(c[(c[m>>2]|0)+8>>2]|0)+156>>2]|0)*10|0)|0;c[w>>2]=gi(c[n>>2]|0,c[p>>2]|0,+(c[s>>2]|0),c[(c[(c[m>>2]|0)+8>>2]|0)+156>>2]|0)|0;s=c[m>>2]|0;c[(c[(c[w>>2]|0)+8>>2]|0)+116>>2]=s;c[(c[(c[v>>2]|0)+8>>2]|0)+116>>2]=s;i=h;return}function kk(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;f=c[j>>2]|0;e=c[j>>2]|0;d=c[c[j>>2]>>2]&3;if((c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){e=c[j>>2]|0;o=c[(c[(c[((d|0)==3?e:e+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0}else{e=c[j>>2]|0;o=c[(c[(c[((d|0)==2?e:e+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0}c[n>>2]=o;if(c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]|0)La(124624,124646,149,124655);c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]=c[k>>2];c[m>>2]=c[k>>2];while(1){if(c[l>>2]|0){k=(c[(c[m>>2]|0)+8>>2]|0)+168|0;b[k>>1]=(b[k>>1]|0)+(b[(c[(c[j>>2]|0)+8>>2]|0)+168>>1]|0)}k=(c[(c[m>>2]|0)+8>>2]|0)+154|0;b[k>>1]=(b[k>>1]|0)+(b[(c[(c[j>>2]|0)+8>>2]|0)+154>>1]|0);k=(c[(c[m>>2]|0)+8>>2]|0)+156|0;c[k>>2]=(c[k>>2]|0)+(c[(c[(c[j>>2]|0)+8>>2]|0)+156>>2]|0);k=c[m>>2]|0;if((c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[n>>2]|0)){p=11;break}k=c[m>>2]|0;nk(c[h>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0);k=c[m>>2]|0;c[m>>2]=c[c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2];if(!(c[m>>2]|0)){p=11;break}}if((p|0)==11){i=g;return}}function lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if(((((c[f>>2]|0)!=0&(c[g>>2]|0)!=0?(b=c[f>>2]|0,a=c[g>>2]|0,(c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)==(c[((c[c[g>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)):0)?(a=c[f>>2]|0,b=c[g>>2]|0,(c[((c[c[f>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)==(c[((c[c[g>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)):0)?(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0)==(c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0):0)?(hi(c[f>>2]|0,c[g>>2]|0)|0)!=0:0){c[e>>2]=1;h=c[e>>2]|0;i=d;return h|0}c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function mk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=b;c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2]=0;c[(c[(c[e>>2]|0)+8>>2]|0)+232>>2]=0;wk(c[e>>2]|0);c[f>>2]=1;while(1){n=c[e>>2]|0;if((c[f>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;xk(n,c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}c[g>>2]=$B(n)|0;while(1){o=c[e>>2]|0;if(!(c[g>>2]|0))break;c[k>>2]=OA(o,c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;n=c[k>>2]|0;if((a[(c[(c[((c[c[k>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+160>>0]|0)<=2){n=c[k>>2]|0;f=(c[(c[((c[c[k>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+160|0;a[f>>0]=(a[f>>0]|0)+1<<24>>24}f=c[k>>2]|0;if((a[(c[(c[((c[c[k>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+160>>0]|0)<=2){f=c[k>>2]|0;n=(c[(c[((c[c[k>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+160|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24}c[k>>2]=QA(c[e>>2]|0,c[k>>2]|0)|0}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}c[g>>2]=$B(o)|0;while(1){if(!(c[g>>2]|0))break;if((c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]|0)==0?(o=c[g>>2]|0,(o|0)==(lO(c[g>>2]|0)|0)):0){Pg(c[e>>2]|0,c[g>>2]|0);o=(c[(c[e>>2]|0)+8>>2]|0)+232|0;c[o>>2]=(c[o>>2]|0)+1}c[l>>2]=0;c[k>>2]=OA(c[e>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;o=c[k>>2]|0;a:do if(!(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0)){n=(ok(o)|0)!=0;f=c[l>>2]|0;if(n){if(!(lk(f,c[k>>2]|0)|0)){pk(c[e>>2]|0,c[k>>2]|0);c[l>>2]=c[k>>2];break}if(c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0){kk(c[e>>2]|0,c[k>>2]|0,c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0,0);Lg(c[k>>2]|0);break}n=c[k>>2]|0;b=c[k>>2]|0;if((c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)!=(c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))break;Vg(c[k>>2]|0,c[l>>2]|0);Lg(c[k>>2]|0);break}if(((f|0)!=0?(f=c[k>>2]|0,b=c[l>>2]|0,(c[((c[c[k>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)==(c[((c[c[l>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)):0)?(b=c[k>>2]|0,f=c[l>>2]|0,(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)==(c[((c[c[l>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)):0){f=c[k>>2]|0;b=c[k>>2]|0;n=c[k>>2]|0;if((c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){Vg(n,c[l>>2]|0);Lg(c[k>>2]|0);break}if(((c[(c[n+8>>2]|0)+96>>2]|0)==0?(c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0)==0:0)?(hi(c[k>>2]|0,c[l>>2]|0)|0)!=0:0)if(a[139e3]|0){a[(c[(c[k>>2]|0)+8>>2]|0)+112>>0]=6;break}else{kk(c[e>>2]|0,c[k>>2]|0,c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0,1);Lg(c[k>>2]|0);break}}n=c[k>>2]|0;b=c[k>>2]|0;f=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==3?n:n+32|0)+28>>2]|0)==(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)){Lg(f);c[l>>2]=c[k>>2];break}b=c[k>>2]|0;c[h>>2]=lO(c[((c[f>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;b=c[k>>2]|0;c[j>>2]=lO(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)|0;b=c[k>>2]|0;if((c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)==(c[h>>2]|0)?(b=c[k>>2]|0,(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)==(c[j>>2]|0)):0){b=c[k>>2]|0;f=c[k>>2]|0;if((c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){Tg(c[e>>2]|0,c[k>>2]|0);c[l>>2]=c[k>>2];break}f=c[k>>2]|0;b=c[k>>2]|0;n=c[e>>2]|0;p=c[c[k>>2]>>2]&3;if((c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){b=c[k>>2]|0;f=c[k>>2]|0;qk(n,c[((p|0)==3?b:b+32|0)+28>>2]|0,c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0,c[k>>2]|0);c[l>>2]=c[k>>2];break}f=c[k>>2]|0;b=c[k>>2]|0;q=VA(n,c[((p|0)==2?f:f+-32|0)+28>>2]|0,c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,0,0)|0;c[m>>2]=q;do if((q|0)!=0?(b=c[m>>2]|0,f=c[k>>2]|0,(c[((c[c[m>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)!=(c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)):0){if(!(c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]|0)){f=c[m>>2]|0;b=c[m>>2]|0;qk(c[e>>2]|0,c[((c[c[m>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0,c[((c[c[m>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[m>>2]|0)}if((c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)==0?(c[(c[(c[m>>2]|0)+8>>2]|0)+96>>2]|0)==0:0){if(!(hi(c[k>>2]|0,c[m>>2]|0)|0))break;b=c[k>>2]|0;if(a[139e3]|0){a[(c[b+8>>2]|0)+112>>0]=6;a[(c[(c[m>>2]|0)+8>>2]|0)+153>>0]=1;break a}else{Lg(b);kk(c[e>>2]|0,c[k>>2]|0,c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]|0,1);break a}}}while(0);q=c[k>>2]|0;b=c[k>>2]|0;qk(c[e>>2]|0,c[((c[c[k>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0,c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0,c[k>>2]|0);c[l>>2]=c[k>>2]}}else c[l>>2]=o;while(0);c[k>>2]=QA(c[e>>2]|0,c[k>>2]|0)|0}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}g=c[e>>2]|0;if((g|0)==(uf(c[e>>2]|0)|0)){i=d;return}if(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0)r=eK(c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]|0,4)|0;else r=cK(4)|0;c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]=r;c[c[(c[(c[e>>2]|0)+8>>2]|0)+216>>2]>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];i=d;return}function nk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[(c[e>>2]|0)+8>>2]|0)+248>>2]|0)/2|0;e=(c[(c[f>>2]|0)+8>>2]|0)+88|0;h[e>>3]=+h[e>>3]+ +(c[g>>2]|0);e=(c[(c[f>>2]|0)+8>>2]|0)+96|0;h[e>>3]=+h[e>>3]+ +(c[g>>2]|0);i=d;return}function ok(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=c[e>>2]|0;if((a[(c[(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+159>>0]|0)==7){f=1;g=f&1;i=d;return g|0}b=c[e>>2]|0;f=(a[(c[(c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+159>>0]|0)==7;g=f&1;i=d;return g|0}function pk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=b;c[g>>2]=d;d=c[g>>2]|0;c[h>>2]=tk(c[f>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)|0;d=c[g>>2]|0;c[j>>2]=tk(c[f>>2]|0,c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)|0;if((c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)){c[l>>2]=c[h>>2];c[h>>2]=c[j>>2];c[j>>2]=c[l>>2]}if((c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]|0)==(c[(c[(c[j>>2]|0)+8>>2]|0)+212>>2]|0)){i=e;return}l=Gg(c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=l;if(l){kk(c[f>>2]|0,c[g>>2]|0,c[k>>2]|0,1);i=e;return}if((c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)){i=e;return}qk(c[f>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>>2]|0);c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2];while(1){if(!(c[k>>2]|0)){m=11;break}g=c[k>>2]|0;if((c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)){m=11;break}a[(c[(c[k>>2]|0)+8>>2]|0)+112>>0]=5;c[k>>2]=c[c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?c[k>>2]|0:(c[k>>2]|0)+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}if((m|0)==11){i=e;return}}function qk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f+32|0;h=f+28|0;j=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=c[h>>2];if(c[(c[(c[k>>2]|0)+8>>2]|0)+96>>2]|0)c[m>>2]=((c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]|0)+(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)|0)/2|0;else c[m>>2]=-1;if(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0)La(124667,124646,90,124692);c[l>>2]=(c[(c[(c[h>>2]|0)+8>>2]|0)+232>>2]|0)+1;while(1){if((c[l>>2]|0)>(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0))break;if((c[l>>2]|0)<(c[(c[(c[j>>2]|0)+8>>2]|0)+232>>2]|0)){h=c[g>>2]|0;e=c[k>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0))c[o>>2]=rk(h,e)|0;else c[o>>2]=sk(h,e)|0;c[(c[(c[o>>2]|0)+8>>2]|0)+232>>2]=c[l>>2]}else c[o>>2]=c[j>>2];c[p>>2]=Og(c[n>>2]|0,c[o>>2]|0,c[k>>2]|0)|0;lh(c[p>>2]|0);c[n>>2]=c[o>>2];c[l>>2]=(c[l>>2]|0)+1}if(c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]|0){i=f;return}else La(124703,124646,104,124692)}function rk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0.0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e;c[f>>2]=b;c[g>>2]=d;d=(c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[j>>2]=Sg(c[f>>2]|0)|0;c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+96>>2];l=+(c[(c[(rC(c[j>>2]|0)|0)+8>>2]|0)+248>>2]|0);h[(c[(c[j>>2]|0)+8>>2]|0)+88>>3]=l;if(a[(c[(c[g>>2]|0)+8>>2]|0)+114>>0]|0){m=c[j>>2]|0;i=e;return m|0}if(c[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+116>>2]&1){h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]=+h[k>>3];h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3]=+h[k+8>>3];m=c[j>>2]|0;i=e;return m|0}else{h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]=+h[k+8>>3];h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3]=+h[k>>3];m=c[j>>2]|0;i=e;return m|0}return 0}function sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[f>>2]=c[f>>2];c[g>>2]=Sg(c[e>>2]|0)|0;nk(c[e>>2]|0,c[g>>2]|0);i=d;return c[g>>2]|0}function tk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[e+12>>2]=b;c[f>>2]=d;d=c[f>>2]|0;if((a[(c[(c[f>>2]|0)+8>>2]|0)+159>>0]|0)!=7){c[h>>2]=lO(d)|0;j=c[h>>2]|0;i=e;return j|0}else{c[g>>2]=c[(c[d+8>>2]|0)+212>>2];c[h>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]<<2)>>2];j=c[h>>2]|0;i=e;return j|0}return 0}function uk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+32|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;j=b+4|0;k=b;c[d>>2]=a;c[e>>2]=uf(c[d>>2]|0)|0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[h>>2]=0;c[g>>2]=TA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;c[j>>2]=UA(c[e>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;do if(!(AC(c[d>>2]|0,c[g>>2]|0)|0)){a=c[g>>2]|0;c[g>>2]=(c[c[g>>2]>>2]&3|0)==2?a:a+-32|0;a=(lk(c[h>>2]|0,c[g>>2]|0)|0)!=0;l=c[g>>2]|0;m=c[g>>2]|0;n=(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0);if(a){if(n)c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=c[h>>2];else c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]=0;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0))break;kk(c[d>>2]|0,c[g>>2]|0,c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0,0);Mg(c[g>>2]|0);break}a=c[c[g>>2]>>2]&3;if(!n){n=c[g>>2]|0;m=c[g>>2]|0;l=c[e>>2]|0;o=c[c[g>>2]>>2]&3;if((c[(c[(c[((a|0)==2?n:n+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>(c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)){m=c[g>>2]|0;n=c[g>>2]|0;Ak(l,c[((o|0)==3?m:m+32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0,c[g>>2]|0);c[h>>2]=c[g>>2];break}else{n=c[g>>2]|0;m=c[g>>2]|0;Ak(l,c[((o|0)==2?n:n+-32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0,c[g>>2]|0);c[h>>2]=c[g>>2];break}}m=c[g>>2]|0;n=c[g>>2]|0;o=Hg(c[((a|0)==3?m:m+32|0)+28>>2]|0,c[((c[c[g>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)|0;c[k>>2]=o;if(!o){Tg(c[e>>2]|0,c[g>>2]|0);c[h>>2]=c[g>>2];break}if((c[g>>2]|0)!=(c[k>>2]|0)?(Mg(c[g>>2]|0),(c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]|0)==0):0)Vg(c[g>>2]|0,c[k>>2]|0)}while(0);c[g>>2]=c[j>>2]}c[f>>2]=aC(c[d>>2]|0,c[f>>2]|0)|0}i=b;return}function vk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;mk(c[d>>2]|0);c[(c[(c[d>>2]|0)+8>>2]|0)+216+4>>2]=1;c[c[(c[(c[d>>2]|0)+8>>2]|0)+216>>2]>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+192>>2];gh(c[d>>2]|0);ih(c[d>>2]|0,0);Bk(c[d>>2]|0);uk(c[d>>2]|0);Ck(c[d>>2]|0);i=b;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;e=d;f=d+36|0;g=d+32|0;h=d+28|0;j=d+24|0;k=d+20|0;l=d+16|0;m=d+12|0;n=d+8|0;c[f>>2]=b;c[h>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;if((a[(c[(c[h>>2]|0)+8>>2]|0)+159>>0]|0)==7)nO(c[h>>2]|0);c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]=0;c[h>>2]=aC(c[f>>2]|0,c[h>>2]|0)|0}c[g>>2]=1;while(1){if((c[g>>2]|0)>(c[(c[(c[f>>2]|0)+8>>2]|0)+180>>2]|0))break;c[n>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+184>>2]|0)+(c[g>>2]<<2)>>2];c[h>>2]=$B(c[n>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;c[j>>2]=aC(c[n>>2]|0,c[h>>2]|0)|0;b=c[h>>2]|0;a:do if(a[(c[(c[h>>2]|0)+8>>2]|0)+159>>0]|0){o=wB(b)|0;p=wB(c[f>>2]|0)|0;c[e>>2]=o;c[e+4>>2]=p;$z(0,124728,e)|0;pC(c[n>>2]|0,c[h>>2]|0)|0}else{oO(b,c[(c[(c[n>>2]|0)+8>>2]|0)+264>>2]|0);c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]=c[n>>2];a[(c[(c[h>>2]|0)+8>>2]|0)+159>>0]=7;c[l>>2]=OA(c[n>>2]|0,c[h>>2]|0)|0;while(1){if(!(c[l>>2]|0))break a;p=c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0;c[m>>2]=p;b:do if((p|0)!=0&(c[m>>2]|0)!=0)do{o=c[m>>2]|0;q=c[((c[c[m>>2]>>2]&3|0)==2?o:o+-32|0)+28>>2]|0;c[k>>2]=q;if((a[(c[q+8>>2]|0)+156>>0]|0)!=1)break b;c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]=c[n>>2];q=c[m>>2]|0;c[m>>2]=c[c[(c[(c[((c[c[m>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}while((c[m>>2]|0)!=0);while(0);c[l>>2]=QA(c[n>>2]|0,c[l>>2]|0)|0}}while(0);c[h>>2]=c[j>>2]}c[g>>2]=(c[g>>2]|0)+1}i=d;return}function xk(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;e=bK((b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0)+2<<2)|0;c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]=e;c[j>>2]=b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;e=Sg(c[g>>2]|0)|0;c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[j>>2]<<2)>>2]=e;c[k>>2]=e;c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]=c[j>>2];a[(c[(c[k>>2]|0)+8>>2]|0)+159>>0]=7;c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]=c[h>>2];if(c[l>>2]|0){c[n>>2]=Og(c[l>>2]|0,c[k>>2]|0,0)|0;e=(c[(c[n>>2]|0)+8>>2]|0)+154|0;b[e>>1]=(b[e>>1]|0)*1e3}c[l>>2]=c[k>>2];c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=$B(c[h>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;c[m>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<2)>>2];l=(c[(c[m>>2]|0)+8>>2]|0)+216|0;c[l>>2]=(c[l>>2]|0)+1;c[n>>2]=OA(c[h>>2]|0,c[k>>2]|0)|0;while(1){if(!(c[n>>2]|0))break;l=c[n>>2]|0;c[j>>2]=c[(c[(c[((c[c[n>>2]>>2]&3|0)==3?l:l+32|0)+28>>2]|0)+8>>2]|0)+232>>2];while(1){l=c[n>>2]|0;if((c[j>>2]|0)>=(c[(c[(c[((c[c[n>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))break;l=(c[(c[c[(c[(c[m>>2]|0)+8>>2]|0)+180>>2]>>2]|0)+8>>2]|0)+168|0;b[l>>1]=(b[l>>1]|0)+1<<16>>16;c[j>>2]=(c[j>>2]|0)+1}c[n>>2]=QA(c[h>>2]|0,c[n>>2]|0)|0}c[k>>2]=aC(c[h>>2]|0,c[k>>2]|0)|0}c[j>>2]=b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[j>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;c[m>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[j>>2]<<2)>>2];if((c[(c[(c[m>>2]|0)+8>>2]|0)+216>>2]|0)>1){k=(c[(c[m>>2]|0)+8>>2]|0)+216|0;c[k>>2]=(c[k>>2]|0)+-1}c[j>>2]=(c[j>>2]|0)+1}i=f;return}function yk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2];if((a[(c[(c[o>>2]|0)+8>>2]|0)+273>>0]|0)==((c[l>>2]|0)+1|0)){i=h;return}c[n>>2]=b[(c[(c[o>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[n>>2]|0)>(b[(c[(c[o>>2]|0)+8>>2]|0)+238>>1]|0))break;hh(c[j>>2]|0,c[(c[(c[(c[o>>2]|0)+8>>2]|0)+268>>2]|0)+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}c[n>>2]=b[(c[(c[o>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[n>>2]|0)>(b[(c[(c[o>>2]|0)+8>>2]|0)+238>>1]|0))break;jh(c[m>>2]|0,c[(c[(c[(c[o>>2]|0)+8>>2]|0)+268>>2]|0)+(c[n>>2]<<2)>>2]|0,c[l>>2]|0);c[n>>2]=(c[n>>2]|0)+1}a[(c[(c[o>>2]|0)+8>>2]|0)+273>>0]=(c[l>>2]|0)+1;i=h;return}function zk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;j=d;c[e>>2]=b;c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[(c[(c[f>>2]|0)+8>>2]|0)+212>>2]=0;c[h>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[h>>2]|0))break;b=c[(c[(c[h>>2]|0)+8>>2]|0)+172>>2]|0;c[j>>2]=b;a:do if((b|0)!=0&(c[j>>2]|0)!=0)do{k=c[j>>2]|0;l=c[((c[c[j>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0;c[g>>2]=l;if((a[(c[l+8>>2]|0)+156>>0]|0)!=1)break a;c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]=0;l=c[j>>2]|0;c[j>>2]=c[c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}while((c[j>>2]|0)!=0);while(0);c[h>>2]=QA(c[e>>2]|0,c[h>>2]|0)|0}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}Dk(c[e>>2]|0);i=d;return}function Ak(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+20|0;h=f+16|0;j=f+12|0;k=f+8|0;l=f+4|0;m=f;c[f+24>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=Fk(c[g>>2]|0)|0;c[m>>2]=Fk(c[h>>2]|0)|0;if((c[l>>2]|0)==(c[g>>2]|0)?(c[m>>2]|0)==(c[h>>2]|0):0)c[k>>2]=1;else c[k>>2]=5;Gk(c[l>>2]|0,c[m>>2]|0,c[j>>2]|0,c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]|0,c[k>>2]|0);i=f;return}function Bk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+32|0;f=e+28|0;g=e+24|0;h=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=d;c[n>>2]=uf(c[f>>2]|0)|0;if((b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)>0)a[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+((b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1]|0)-1<<6)+49>>0]=0;c[j>>2]=b[(c[(c[f>>2]|0)+8>>2]|0)+236>>1];while(1){o=c[j>>2]|0;if((c[j>>2]|0)>(b[(c[(c[f>>2]|0)+8>>2]|0)+238>>1]|0))break;c[h>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(o<<6)>>2];d=c[(c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+268>>2]|0)+(c[j>>2]<<2)>>2]|0)+8>>2]|0)+236>>2]|0;c[k>>2]=d;c[l>>2]=d;Ek(c[n>>2]|0,c[j>>2]|0,c[k>>2]|0,c[h>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;d=c[(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[g>>2]<<2)>>2]|0;c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[k>>2]<<2)>>2]=d;c[m>>2]=d;d=c[k>>2]|0;c[k>>2]=d+1;c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]=d;if((a[(c[(c[m>>2]|0)+8>>2]|0)+156>>0]|0)==1){d=rC(c[n>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=d}Rg(c[f>>2]|0,c[m>>2]|0);Pg(c[n>>2]|0,c[m>>2]|0);d=(c[(c[n>>2]|0)+8>>2]|0)+232|0;c[d>>2]=(c[d>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]=(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[l>>2]<<2);a[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+49>>0]=0;c[j>>2]=(c[j>>2]|0)+1}if((o|0)>=(b[(c[(c[n>>2]|0)+8>>2]|0)+238>>1]|0)){p=c[f>>2]|0;q=p+8|0;r=c[q>>2]|0;s=r+272|0;a[s>>0]=1;i=e;return}a[(c[(c[(c[n>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+49>>0]=0;p=c[f>>2]|0;q=p+8|0;r=c[q>>2]|0;s=r+272|0;a[s>>0]=1;i=e;return}function Ck(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[f>>2]|0)>(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0))break;c[g>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[f>>2]<<2)>>2];while(1){a=c[c[(c[(c[g>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[h>>2]=a;if(!a)break;Kg(c[h>>2]|0)}while(1){a=c[c[(c[(c[g>>2]|0)+8>>2]|0)+172>>2]>>2]|0;c[h>>2]=a;if(!a)break;Kg(c[h>>2]|0)}a=uf(c[e>>2]|0)|0;Rg(a,c[g>>2]|0);c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}i=d;return}function Dk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;k=d+4|0;l=d;c[e>>2]=b;c[l>>2]=1;while(1){if((c[l>>2]|0)>(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0))break;c[f>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+184>>2]|0)+(c[l>>2]<<2)>>2];Dk(c[f>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]|0))c[(c[(c[g>>2]|0)+8>>2]|0)+212>>2]=c[e>>2];c[j>>2]=OA(c[e>>2]|0,c[g>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;l=c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]|0;c[k>>2]=l;a:do if((l|0)!=0&(c[k>>2]|0)!=0)do{f=c[k>>2]|0;b=c[((c[c[k>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0;c[h>>2]=b;if((a[(c[b+8>>2]|0)+156>>0]|0)!=1)break a;if(!(c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]|0))c[(c[(c[h>>2]|0)+8>>2]|0)+212>>2]=c[e>>2];b=c[k>>2]|0;c[k>>2]=c[c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}while((c[k>>2]|0)!=0);while(0);c[j>>2]=QA(c[e>>2]|0,c[j>>2]|0)|0}c[g>>2]=aC(c[e>>2]|0,c[g>>2]|0)|0}i=d;return}function Ek(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)+4>>2];if((c[k>>2]|0)<=0){c[l>>2]=(c[j>>2]|0)-(c[k>>2]|0)+1;while(1){if((c[l>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0))break;c[m>>2]=c[(c[n>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]=(c[l>>2]|0)+(c[k>>2]|0)-1;c[(c[n>>2]|0)+(c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]<<2)>>2]=c[m>>2];c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0)+(c[k>>2]|0)-1;while(1){if((c[l>>2]|0)>=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0))break;c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]=0;c[l>>2]=(c[l>>2]|0)+1}o=c[k>>2]|0;p=o-1|0;q=c[h>>2]|0;r=c[g>>2]|0;s=r+8|0;t=c[s>>2]|0;u=t+196|0;v=c[u>>2]|0;w=v+(q<<6)|0;x=c[w>>2]|0;y=x+p|0;c[w>>2]=y;i=f;return}else{c[l>>2]=(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+196>>2]|0)+(c[h>>2]<<6)>>2]|0)-1;while(1){if((c[l>>2]|0)<=(c[j>>2]|0))break;c[m>>2]=c[(c[n>>2]|0)+(c[l>>2]<<2)>>2];c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]=(c[l>>2]|0)+(c[k>>2]|0)-1;c[(c[n>>2]|0)+(c[(c[(c[m>>2]|0)+8>>2]|0)+236>>2]<<2)>>2]=c[m>>2];c[l>>2]=(c[l>>2]|0)+-1}c[l>>2]=(c[j>>2]|0)+1;while(1){if((c[l>>2]|0)>=((c[j>>2]|0)+(c[k>>2]|0)|0))break;c[(c[n>>2]|0)+(c[l>>2]<<2)>>2]=0;c[l>>2]=(c[l>>2]|0)+1}o=c[k>>2]|0;p=o-1|0;q=c[h>>2]|0;r=c[g>>2]|0;s=r+8|0;t=c[s>>2]|0;u=t+196|0;v=c[u>>2]|0;w=v+(q<<6)|0;x=c[w>>2]|0;y=x+p|0;c[w>>2]=y;i=f;return}}function Fk(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;e=b+4|0;f=b;c[e>>2]=a;if((c[(c[(c[e>>2]|0)+8>>2]|0)+212>>2]|0)!=0?(d[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+272>>0]|0|0)==0:0){c[f>>2]=c[(c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+212>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[e>>2]|0)+8>>2]|0)+232>>2]<<2)>>2];g=c[f>>2]|0;i=b;return g|0}c[f>>2]=c[e>>2];g=c[f>>2]|0;i=b;return g|0}function Gk(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+48|0;k=j+32|0;l=j+28|0;m=j+24|0;n=j+20|0;o=j+16|0;p=j+12|0;q=j+8|0;r=j+4|0;s=j;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;if((c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)>=(c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0))La(124782,124810,81,124820);h=c[n>>2]|0;if((c[((c[c[n>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)==(c[k>>2]|0)?(h=c[n>>2]|0,(c[((c[c[n>>2]>>2]&3|0)==2?h:h+-32|0)+28>>2]|0)==(c[l>>2]|0)):0){i=j;return}if((b[(c[(c[n>>2]|0)+8>>2]|0)+168>>1]|0)>1){c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=0;if((((c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)|0)==1?(h=Gg(c[k>>2]|0,c[l>>2]|0)|0,c[s>>2]=h,(h|0)!=0):0)?(hi(c[m>>2]|0,c[s>>2]|0)|0)!=0:0){Vg(c[m>>2]|0,c[s>>2]|0);if(a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0){i=j;return}if(a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0){i=j;return}Lg(c[m>>2]|0);i=j;return}c[q>>2]=c[k>>2];c[p>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2];while(1){if((c[p>>2]|0)>=(c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0))break;if((c[p>>2]|0)<((c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)-1|0)){h=uf(c[k>>2]|0)|0;g=c[n>>2]|0;c[r>>2]=Hk(h,c[((c[c[n>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)|0}else c[r>>2]=c[l>>2];c[s>>2]=Og(c[q>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;a[(c[(c[s>>2]|0)+8>>2]|0)+112>>0]=c[o>>2];c[q>>2]=c[r>>2];g=(c[(c[n>>2]|0)+8>>2]|0)+168|0;b[g>>1]=(b[g>>1]|0)+-1<<16>>16;g=c[n>>2]|0;c[n>>2]=c[c[(c[(c[((c[c[n>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2];c[p>>2]=(c[p>>2]|0)+1}i=j;return}do if(((c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)|0)==1){p=Gg(c[k>>2]|0,c[l>>2]|0)|0;c[n>>2]=p;if((p|0)!=0?(hi(c[m>>2]|0,c[n>>2]|0)|0)!=0:0){c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=c[n>>2];a[(c[(c[n>>2]|0)+8>>2]|0)+112>>0]=c[o>>2];p=(c[(c[n>>2]|0)+8>>2]|0)+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;if(a[(c[(c[k>>2]|0)+8>>2]|0)+156>>0]|0)break;if(a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0)break;Lg(c[m>>2]|0);break}c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=0;c[n>>2]=Og(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[(c[n>>2]|0)+8>>2]|0)+112>>0]=c[o>>2]}while(0);if(((c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]|0)|0)<=1){i=j;return}c[s>>2]=c[n>>2];p=c[n>>2]|0;if((c[((c[c[n>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)!=(c[k>>2]|0)){c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=0;p=c[n>>2]|0;r=Og(c[k>>2]|0,c[((c[c[n>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0,c[m>>2]|0)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+172>>2]=r;c[s>>2]=r;Kg(c[n>>2]|0)}else c[s>>2]=c[n>>2];while(1){r=c[s>>2]|0;p=c[s>>2]|0;t=c[((c[c[s>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0;if((c[(c[(c[((c[c[s>>2]>>2]&3|0)==2?r:r+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]|0))break;c[s>>2]=c[c[(c[t+8>>2]|0)+180>>2]>>2]}if((t|0)==(c[l>>2]|0)){i=j;return}c[n>>2]=c[s>>2];t=c[s>>2]|0;c[s>>2]=Og(c[((c[c[s>>2]>>2]&3|0)==3?t:t+32|0)+28>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[(c[s>>2]|0)+8>>2]|0)+112>>0]=c[o>>2];Kg(c[n>>2]|0);i=j;return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;j=d;c[e>>2]=a;c[f>>2]=b;c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2];Ek(c[e>>2]|0,c[j>>2]|0,c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]|0,2);c[g>>2]=Sg(c[e>>2]|0)|0;h[(c[(c[g>>2]|0)+8>>2]|0)+88>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+88>>3];h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3]=+h[(c[(c[f>>2]|0)+8>>2]|0)+96>>3];c[(c[(c[g>>2]|0)+8>>2]|0)+232>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2];c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]=(c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]|0)+1;c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]<<2)>>2]=c[g>>2];i=d;return c[g>>2]|0}function Ik(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=FO(c[d>>2]|0)|0;c[f>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[e>>2]=OA(c[d>>2]|0,c[f>>2]|0)|0;while(1){h=c[d>>2]|0;if(!(c[e>>2]|0))break;Jk(h,c[e>>2]|0,c[g>>2]|0);c[e>>2]=QA(c[d>>2]|0,c[e>>2]|0)|0}c[f>>2]=aC(h,c[f>>2]|0)|0}Jz(c[g>>2]|0)|0;i=b;return}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;e=i;i=i+416|0;f=e+328|0;g=e+312|0;h=e+184|0;j=e+168|0;k=e+120|0;l=e+88|0;m=e+64|0;n=e+404|0;o=e+400|0;p=e+396|0;q=e+392|0;r=e+388|0;s=e+384|0;t=e+380|0;u=e+376|0;v=e+372|0;w=e+368|0;x=e+364|0;y=e+360|0;z=e+356|0;A=e+352|0;B=e+348|0;C=e+248|0;D=e+232|0;E=e+344|0;F=e+216|0;G=e+200|0;H=e+152|0;I=e+136|0;J=e+104|0;K=e+72|0;L=e+48|0;M=e+32|0;N=e+16|0;O=e;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[u>>2]=0;c[v>>2]=0;d=c[n>>2]|0;b=yA(c[o>>2]|0,124829)|0;c[q>>2]=Kk(d,b,c[p>>2]|0)|0;b=c[n>>2]|0;n=yA(c[o>>2]|0,124835)|0;c[r>>2]=Kk(b,n,c[p>>2]|0)|0;if(!((c[r>>2]|0)!=0|(c[q>>2]|0)!=0)){i=e;return}if(!(c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]|0)){i=e;return}p=c[o>>2]|0;if((c[(c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)>1){n=c[o>>2]|0;b=wB(c[((c[p>>2]&3|0)==3?n:n+32|0)+28>>2]|0)|0;n=c[o>>2]|0;d=wB(c[((c[c[o>>2]>>2]&3|0)==2?n:n+-32|0)+28>>2]|0)|0;c[m>>2]=b;c[m+4>>2]=d;$z(0,124841,m)|0;i=e;return}c[s>>2]=c[c[(c[p+8>>2]|0)+8>>2]>>2];c[B>>2]=c[(c[s>>2]|0)+4>>2];p=c[o>>2]|0;c[w>>2]=c[((c[c[o>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2];p=c[o>>2]|0;c[x>>2]=c[((c[c[o>>2]>>2]&3|0)==3?p:p+32|0)+28>>2];c[t>>2]=cK(48)|0;c[(c[t>>2]|0)+12>>2]=c[(c[s>>2]|0)+12>>2];c[(c[t>>2]|0)+8>>2]=c[(c[s>>2]|0)+8>>2];c[E>>2]=0;do if(c[q>>2]|0){c[y>>2]=(c[(c[q>>2]|0)+8>>2]|0)+16;p=(c[(c[w>>2]|0)+8>>2]|0)+16|0;m=c[y>>2]|0;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];if(!(Lk(f,m)|0)){m=c[o>>2]|0;p=wB(c[((c[c[o>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)|0;m=c[o>>2]|0;d=wB(c[((c[c[o>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)|0;m=yA(c[o>>2]|0,124829)|0;c[l>>2]=p;c[l+4>>2]=d;c[l+8>>2]=m;$z(0,124882,l)|0;break}m=c[c[s>>2]>>2]|0;d=c[y>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];if(Lk(f,d)|0){d=(c[(c[x>>2]|0)+8>>2]|0)+16|0;m=c[y>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(Lk(f,m)|0){m=c[o>>2]|0;d=wB(c[((c[c[o>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)|0;m=c[o>>2]|0;p=wB(c[((c[c[o>>2]>>2]&3|0)==2?m:m+-32|0)+28>>2]|0)|0;m=yA(c[o>>2]|0,124829)|0;c[k>>2]=d;c[k+4>>2]=p;c[k+8>>2]=m;$z(0,124925,k)|0;break}if(!(c[(c[s>>2]|0)+8>>2]|0))La(124967,124978,361,124989);m=c[c[s>>2]>>2]|0;p=(c[s>>2]|0)+16|0;d=c[y>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];Mk(F,g,f,d);c[D>>2]=c[F>>2];c[D+4>>2]=c[F+4>>2];c[D+8>>2]=c[F+8>>2];c[D+12>>2]=c[F+12>>2];d=(c[c[s>>2]>>2]|0)+48|0;c[d>>2]=c[D>>2];c[d+4>>2]=c[D+4>>2];c[d+8>>2]=c[D+8>>2];c[d+12>>2]=c[D+12>>2];d=(c[c[s>>2]>>2]|0)+16|0;p=(c[s>>2]|0)+16|0;c[g>>2]=c[D>>2];c[g+4>>2]=c[D+4>>2];c[g+8>>2]=c[D+8>>2];c[g+12>>2]=c[D+12>>2];c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];Nk(G,g,f);c[d>>2]=c[G>>2];c[d+4>>2]=c[G+4>>2];c[d+8>>2]=c[G+8>>2];c[d+12>>2]=c[G+12>>2];d=c[c[s>>2]>>2]|0;p=(c[c[s>>2]>>2]|0)+16|0;m=(c[s>>2]|0)+16|0;c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];Nk(H,g,f);c[d>>2]=c[H>>2];c[d+4>>2]=c[H+4>>2];c[d+8>>2]=c[H+8>>2];c[d+12>>2]=c[H+12>>2];d=(c[c[s>>2]>>2]|0)+32|0;m=(c[c[s>>2]>>2]|0)+16|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];Nk(I,g,f);c[d>>2]=c[I>>2];c[d+4>>2]=c[I+4>>2];c[d+8>>2]=c[I+8>>2];c[d+12>>2]=c[I+12>>2];if(c[(c[s>>2]|0)+12>>2]|0)c[v>>2]=dH(c[o>>2]|0,c[c[s>>2]>>2]|0,c[u>>2]|0,0,c[t>>2]|0,c[(c[s>>2]|0)+12>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+3;c[E>>2]=1;break}c[v>>2]=0;while(1){if((c[v>>2]|0)>=((c[B>>2]|0)-1|0))break;if(Ok((c[c[s>>2]>>2]|0)+(c[v>>2]<<4)|0,c[y>>2]|0)|0)break;c[v>>2]=(c[v>>2]|0)+3}d=(c[(c[s>>2]|0)+12>>2]|0)!=0;do if((c[v>>2]|0)==((c[B>>2]|0)-1|0))if(d){m=(c[t>>2]|0)+32|0;p=(c[s>>2]|0)+32|0;b=(c[c[s>>2]>>2]|0)+(c[v>>2]<<4)|0;n=c[y>>2]|0;c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Mk(J,g,f,n);c[m>>2]=c[J>>2];c[m+4>>2]=c[J+4>>2];c[m+8>>2]=c[J+8>>2];c[m+12>>2]=c[J+12>>2];break}else La(125006,124978,379,124989);else{if(d)c[v>>2]=dH(c[o>>2]|0,c[c[s>>2]>>2]|0,c[u>>2]|0,c[v>>2]|0,c[t>>2]|0,c[(c[s>>2]|0)+12>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+3}while(0);c[E>>2]=1}while(0);if((c[E>>2]|0)==0?(c[v>>2]=(c[B>>2]|0)-1,(c[(c[s>>2]|0)+12>>2]|0)!=0):0){B=(c[t>>2]|0)+32|0;J=(c[s>>2]|0)+32|0;c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2]}c[E>>2]=0;do if(c[r>>2]|0){c[y>>2]=(c[(c[r>>2]|0)+8>>2]|0)+16;J=(c[(c[x>>2]|0)+8>>2]|0)+16|0;B=c[y>>2]|0;c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];if(!(Lk(f,B)|0)){B=c[o>>2]|0;J=wB(c[((c[c[o>>2]>>2]&3|0)==3?B:B+32|0)+28>>2]|0)|0;B=c[o>>2]|0;I=wB(c[((c[c[o>>2]>>2]&3|0)==2?B:B+-32|0)+28>>2]|0)|0;B=yA(c[o>>2]|0,124835)|0;c[j>>2]=J;c[j+4>>2]=I;c[j+8>>2]=B;$z(0,125017,j)|0;break}B=(c[c[s>>2]>>2]|0)+(c[v>>2]<<4)|0;I=c[y>>2]|0;c[f>>2]=c[B>>2];c[f+4>>2]=c[B+4>>2];c[f+8>>2]=c[B+8>>2];c[f+12>>2]=c[B+12>>2];if(Lk(f,I)|0){I=(c[(c[w>>2]|0)+8>>2]|0)+16|0;B=c[y>>2]|0;c[f>>2]=c[I>>2];c[f+4>>2]=c[I+4>>2];c[f+8>>2]=c[I+8>>2];c[f+12>>2]=c[I+12>>2];if(Lk(f,B)|0){B=c[o>>2]|0;I=wB(c[((c[c[o>>2]>>2]&3|0)==3?B:B+32|0)+28>>2]|0)|0;B=c[o>>2]|0;J=wB(c[((c[c[o>>2]>>2]&3|0)==2?B:B+-32|0)+28>>2]|0)|0;B=yA(c[o>>2]|0,124835)|0;c[h>>2]=I;c[h+4>>2]=J;c[h+8>>2]=B;$z(0,125060,h)|0;break}if(!(c[(c[s>>2]|0)+12>>2]|0))La(125006,124978,421,124989);B=(c[c[s>>2]>>2]|0)+(c[v>>2]<<4)|0;J=(c[t>>2]|0)+32|0;I=c[y>>2]|0;c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[g+12>>2]=c[B+12>>2];c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];Mk(K,g,f,I);c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];c[u>>2]=(c[v>>2]|0)-3;I=(c[c[s>>2]>>2]|0)+(c[u>>2]<<4)|0;c[I>>2]=c[D>>2];c[I+4>>2]=c[D+4>>2];c[I+8>>2]=c[D+8>>2];c[I+12>>2]=c[D+12>>2];I=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)+2<<4)|0;J=(c[t>>2]|0)+32|0;c[g>>2]=c[D>>2];c[g+4>>2]=c[D+4>>2];c[g+8>>2]=c[D+8>>2];c[g+12>>2]=c[D+12>>2];c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];Nk(L,g,f);c[I>>2]=c[L>>2];c[I+4>>2]=c[L+4>>2];c[I+8>>2]=c[L+8>>2];c[I+12>>2]=c[L+12>>2];I=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)+3<<4)|0;J=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)+2<<4)|0;B=(c[t>>2]|0)+32|0;c[g>>2]=c[J>>2];c[g+4>>2]=c[J+4>>2];c[g+8>>2]=c[J+8>>2];c[g+12>>2]=c[J+12>>2];c[f>>2]=c[B>>2];c[f+4>>2]=c[B+4>>2];c[f+8>>2]=c[B+8>>2];c[f+12>>2]=c[B+12>>2];Nk(M,g,f);c[I>>2]=c[M>>2];c[I+4>>2]=c[M+4>>2];c[I+8>>2]=c[M+8>>2];c[I+12>>2]=c[M+12>>2];I=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)+1<<4)|0;B=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)+2<<4)|0;c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[g+12>>2]=c[B+12>>2];c[f>>2]=c[D>>2];c[f+4>>2]=c[D+4>>2];c[f+8>>2]=c[D+8>>2];c[f+12>>2]=c[D+12>>2];Nk(N,g,f);c[I>>2]=c[N>>2];c[I+4>>2]=c[N+4>>2];c[I+8>>2]=c[N+8>>2];c[I+12>>2]=c[N+12>>2];if(c[(c[s>>2]|0)+8>>2]|0)c[u>>2]=eH(c[o>>2]|0,c[c[s>>2]>>2]|0,c[u>>2]|0,(c[v>>2]|0)-3|0,c[t>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;c[E>>2]=1;break}c[u>>2]=c[v>>2];while(1){if((c[u>>2]|0)<=0)break;c[z>>2]=0;while(1){if((c[z>>2]|0)>=4)break;I=C+(c[z>>2]<<4)|0;B=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)-(c[z>>2]|0)<<4)|0;c[I>>2]=c[B>>2];c[I+4>>2]=c[B+4>>2];c[I+8>>2]=c[B+8>>2];c[I+12>>2]=c[B+12>>2];c[z>>2]=(c[z>>2]|0)+1}if(Ok(C,c[y>>2]|0)|0){P=48;break}c[u>>2]=(c[u>>2]|0)-3}a:do if((P|0)==48){c[z>>2]=0;while(1){if((c[z>>2]|0)>=4)break a;B=(c[c[s>>2]>>2]|0)+((c[u>>2]|0)-(c[z>>2]|0)<<4)|0;I=C+(c[z>>2]<<4)|0;c[B>>2]=c[I>>2];c[B+4>>2]=c[I+4>>2];c[B+8>>2]=c[I+8>>2];c[B+12>>2]=c[I+12>>2];c[z>>2]=(c[z>>2]|0)+1}}while(0);do if(!(c[u>>2]|0))if(c[(c[s>>2]|0)+8>>2]|0){I=(c[t>>2]|0)+16|0;B=(c[s>>2]|0)+16|0;J=(c[c[s>>2]>>2]|0)+(c[u>>2]<<4)|0;H=c[y>>2]|0;c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[g+12>>2]=c[B+12>>2];c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];Mk(O,g,f,H);c[I>>2]=c[O>>2];c[I+4>>2]=c[O+4>>2];c[I+8>>2]=c[O+8>>2];c[I+12>>2]=c[O+12>>2];break}else La(124967,124978,444,124989);else{c[u>>2]=(c[u>>2]|0)-3;if(c[(c[s>>2]|0)+8>>2]|0)c[u>>2]=eH(c[o>>2]|0,c[c[s>>2]>>2]|0,c[u>>2]|0,(c[v>>2]|0)-3|0,c[t>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0}while(0);c[E>>2]=1}while(0);if((c[E>>2]|0)==0?(c[(c[s>>2]|0)+8>>2]|0)!=0:0){E=(c[t>>2]|0)+16|0;O=(c[s>>2]|0)+16|0;c[E>>2]=c[O>>2];c[E+4>>2]=c[O+4>>2];c[E+8>>2]=c[O+8>>2];c[E+12>>2]=c[O+12>>2]}c[(c[t>>2]|0)+4>>2]=(c[v>>2]|0)-(c[u>>2]|0)+1;v=cK(c[(c[t>>2]|0)+4>>2]<<4)|0;c[c[t>>2]>>2]=v;c[z>>2]=0;c[A>>2]=c[u>>2];while(1){if((c[z>>2]|0)>=(c[(c[t>>2]|0)+4>>2]|0))break;u=(c[c[t>>2]>>2]|0)+(c[z>>2]<<4)|0;v=(c[c[s>>2]>>2]|0)+(c[A>>2]<<4)|0;c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+1}O4(c[c[s>>2]>>2]|0);O4(c[s>>2]|0);c[c[(c[(c[o>>2]|0)+8>>2]|0)+8>>2]>>2]=c[t>>2];i=e;return}function Kk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f;h=f+20|0;j=f+12|0;k=f+8|0;l=f+4|0;c[f+16>>2]=b;c[j>>2]=d;c[k>>2]=e;if((c[j>>2]|0)!=0?(a[c[j>>2]>>0]|0)!=0:0){c[l>>2]=WO(c[k>>2]|0,c[j>>2]|0)|0;if(!(c[l>>2]|0)){c[g>>2]=c[j>>2];$z(0,125180,g)|0}c[h>>2]=c[l>>2];m=c[h>>2]|0;i=f;return m|0}c[h>>2]=0;m=c[h>>2]|0;i=f;return m|0}function Lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if((+h[c[e>>2]>>3]<=+h[a>>3]?+h[a>>3]<=+h[(c[e>>2]|0)+16>>3]:0)?+h[(c[e>>2]|0)+8>>3]<=+h[a+8>>3]:0)f=+h[a+8>>3]<=+h[(c[e>>2]|0)+16+8>>3];else f=0;i=d;return f&1|0}function Mk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+528|0;g=f+96|0;j=f+64|0;k=f+112|0;l=f+80|0;m=f+56|0;n=f+48|0;o=f+40|0;p=f+32|0;q=f+16|0;r=f;s=f+416|0;t=f+316|0;u=f+216|0;v=f+116|0;c[k>>2]=e;h[m>>3]=+h[b>>3];h[n>>3]=+h[b+8>>3];h[o>>3]=+h[d>>3];h[p>>3]=+h[d+8>>3];e=c[k>>2]|0;c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[q+12>>2]=c[e+12>>2];e=(c[k>>2]|0)+16|0;c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];if((+h[d>>3]<+h[q>>3]?(h[l>>3]=+h[q>>3],h[l+8>>3]=+h[b+8>>3]+ +(~~((+h[l>>3]-+h[m>>3])*(+h[n>>3]-+h[p>>3])/(+h[m>>3]-+h[o>>3]))|0),+h[l+8>>3]>=+h[q+8>>3]):0)?+h[l+8>>3]<=+h[r+8>>3]:0){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];i=f;return}if((+h[d>>3]>+h[r>>3]?(h[l>>3]=+h[r>>3],h[l+8>>3]=+h[b+8>>3]+ +(~~((+h[l>>3]-+h[m>>3])*(+h[n>>3]-+h[p>>3])/(+h[m>>3]-+h[o>>3]))|0),+h[l+8>>3]>=+h[q+8>>3]):0)?+h[l+8>>3]<=+h[r+8>>3]:0){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];i=f;return}if((+h[d+8>>3]<+h[q+8>>3]?(h[l+8>>3]=+h[q+8>>3],h[l>>3]=+h[b>>3]+ +(~~((+h[l+8>>3]-+h[n>>3])*(+h[m>>3]-+h[o>>3])/(+h[n>>3]-+h[p>>3]))|0),+h[l>>3]>=+h[q>>3]):0)?+h[l>>3]<=+h[r>>3]:0){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];i=f;return}if((+h[d+8>>3]>+h[r+8>>3]?(h[l+8>>3]=+h[r+8>>3],h[l>>3]=+h[b>>3]+ +(~~((+h[l+8>>3]-+h[n>>3])*(+h[m>>3]-+h[o>>3])/(+h[n>>3]-+h[p>>3]))|0),+h[l>>3]>=+h[q>>3]):0)?+h[l>>3]<=+h[r>>3]:0){c[a>>2]=c[l>>2];c[a+4>>2]=c[l+4>>2];c[a+8>>2]=c[l+8>>2];c[a+12>>2]=c[l+12>>2];i=f;return};c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];b=Tk(g,s)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];d=Tk(g,t)|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];q=Tk(g,u)|0;c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];r=Tk(g,v)|0;c[j>>2]=b;c[j+4>>2]=d;c[j+8>>2]=q;c[j+12>>2]=r;$z(1,125102,j)|0;La(176099,124978,78,125154)}function Nk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=(+h[b>>3]+ +h[d>>3])/2.0;h[f+8>>3]=(+h[b+8>>3]+ +h[d+8>>3])/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+160|0;e=d+156|0;f=d+152|0;g=d+148|0;j=d+136|0;k=d+128|0;l=d+64|0;m=d+144|0;n=d+48|0;o=d+32|0;p=d+16|0;q=d;c[f>>2]=a;c[g>>2]=b;h[j>>3]=2.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=4)break;b=l+(c[m>>2]<<4)|0;a=(c[f>>2]|0)+(c[m>>2]<<4)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[m>>2]=(c[m>>2]|0)+1}h[k>>3]=+Pk(c[f>>2]|0,0.0,1.0,+h[c[g>>2]>>3],+h[(c[g>>2]|0)+8>>3],+h[(c[g>>2]|0)+16+8>>3]);if(+h[k>>3]>=0.0?+h[k>>3]<+h[j>>3]:0){qO(n,l,3,+h[k>>3],c[f>>2]|0,0);h[j>>3]=+h[k>>3]}h[k>>3]=+Pk(c[f>>2]|0,0.0,1.0<+h[j>>3]?1.0:+h[j>>3],+h[(c[g>>2]|0)+16>>3],+h[(c[g>>2]|0)+8>>3],+h[(c[g>>2]|0)+16+8>>3]);if(+h[k>>3]>=0.0?+h[k>>3]<+h[j>>3]:0){qO(o,l,3,+h[k>>3],c[f>>2]|0,0);h[j>>3]=+h[k>>3]}h[k>>3]=+Qk(c[f>>2]|0,0.0,1.0<+h[j>>3]?1.0:+h[j>>3],+h[(c[g>>2]|0)+8>>3],+h[c[g>>2]>>3],+h[(c[g>>2]|0)+16>>3]);if(+h[k>>3]>=0.0?+h[k>>3]<+h[j>>3]:0){qO(p,l,3,+h[k>>3],c[f>>2]|0,0);h[j>>3]=+h[k>>3]}h[k>>3]=+Qk(c[f>>2]|0,0.0,1.0<+h[j>>3]?1.0:+h[j>>3],+h[(c[g>>2]|0)+16+8>>3],+h[c[g>>2]>>3],+h[(c[g>>2]|0)+16>>3]);if(+h[k>>3]>=0.0?+h[k>>3]<+h[j>>3]:0){qO(q,l,3,+h[k>>3],c[f>>2]|0,0);h[j>>3]=+h[k>>3]}if(+h[j>>3]<2.0){c[e>>2]=1;r=c[e>>2]|0;i=d;return r|0}else{c[e>>2]=0;r=c[e>>2]|0;i=d;return r|0}return 0}function Pk(a,b,d,e,f,g){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;j=i;i=i+208|0;k=j+192|0;l=j+204|0;m=j+184|0;n=j+176|0;o=j+168|0;p=j+160|0;q=j+152|0;r=j+88|0;s=j+24|0;t=j+16|0;u=j+200|0;v=j;c[l>>2]=a;h[m>>3]=b;h[n>>3]=d;h[o>>3]=e;h[p>>3]=f;h[q>>3]=g;c[u>>2]=Sk(c[l>>2]|0,+h[o>>3])|0;if(!(c[u>>2]|0)){h[k>>3]=-1.0;w=+h[k>>3];i=j;return +w}if((c[u>>2]|0)==1?(g=+h[(c[l>>2]|0)+48>>3],f=+h[o>>3],(~~(+h[(c[l>>2]|0)+48>>3]>=0.0?g+.5:g-.5)|0)==(~~(+h[o>>3]>=0.0?f+.5:f-.5)|0)):0){if(+h[p>>3]<=+h[(c[l>>2]|0)+48+8>>3]?+h[(c[l>>2]|0)+48+8>>3]<=+h[q>>3]:0){h[k>>3]=+h[n>>3];w=+h[k>>3];i=j;return +w}h[k>>3]=-1.0;w=+h[k>>3];i=j;return +w}qO(v,c[l>>2]|0,3,.5,r,s);h[t>>3]=+Pk(r,+h[m>>3],(+h[m>>3]+ +h[n>>3])/2.0,+h[o>>3],+h[p>>3],+h[q>>3]);if(+h[t>>3]>=0.0){h[k>>3]=+h[t>>3];w=+h[k>>3];i=j;return +w}else{h[k>>3]=+Pk(s,(+h[m>>3]+ +h[n>>3])/2.0,+h[n>>3],+h[o>>3],+h[p>>3],+h[q>>3]);w=+h[k>>3];i=j;return +w}return +(0.0)}function Qk(a,b,d,e,f,g){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;j=i;i=i+208|0;k=j+192|0;l=j+204|0;m=j+184|0;n=j+176|0;o=j+168|0;p=j+160|0;q=j+152|0;r=j+88|0;s=j+24|0;t=j+16|0;u=j+200|0;v=j;c[l>>2]=a;h[m>>3]=b;h[n>>3]=d;h[o>>3]=e;h[p>>3]=f;h[q>>3]=g;c[u>>2]=Rk(c[l>>2]|0,+h[o>>3])|0;if(!(c[u>>2]|0)){h[k>>3]=-1.0;w=+h[k>>3];i=j;return +w}if((c[u>>2]|0)==1?(g=+h[(c[l>>2]|0)+48+8>>3],f=+h[o>>3],(~~(+h[(c[l>>2]|0)+48+8>>3]>=0.0?g+.5:g-.5)|0)==(~~(+h[o>>3]>=0.0?f+.5:f-.5)|0)):0){if(+h[p>>3]<=+h[(c[l>>2]|0)+48>>3]?+h[(c[l>>2]|0)+48>>3]<=+h[q>>3]:0){h[k>>3]=+h[n>>3];w=+h[k>>3];i=j;return +w}h[k>>3]=-1.0;w=+h[k>>3];i=j;return +w}qO(v,c[l>>2]|0,3,.5,r,s);h[t>>3]=+Qk(r,+h[m>>3],(+h[m>>3]+ +h[n>>3])/2.0,+h[o>>3],+h[p>>3],+h[q>>3]);if(+h[t>>3]>=0.0){h[k>>3]=+h[t>>3];w=+h[k>>3];i=j;return +w}else{h[k>>3]=+Qk(s,(+h[m>>3]+ +h[n>>3])/2.0,+h[n>>3],+h[o>>3],+h[p>>3],+h[q>>3]);w=+h[k>>3];i=j;return +w}return +(0.0)}function Rk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d;g=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;c[e>>2]=a;h[f>>3]=b;c[l>>2]=0;if(+h[(c[e>>2]|0)+8>>3]<+h[f>>3])m=-1;else m=+h[(c[e>>2]|0)+8>>3]>+h[f>>3]?1:0;c[j>>2]=m;if(!(c[j>>2]|0))c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=1;while(1){if((c[g>>2]|0)>3)break;c[k>>2]=c[j>>2];if(+h[(c[e>>2]|0)+(c[g>>2]<<4)+8>>3]<+h[f>>3])n=-1;else n=+h[(c[e>>2]|0)+(c[g>>2]<<4)+8>>3]>+h[f>>3]?1:0;c[j>>2]=n;if((c[k>>2]|0)!=0?(c[j>>2]|0)!=(c[k>>2]|0):0)c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}i=d;return c[l>>2]|0}function Sk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;e=d+24|0;f=d;g=d+20|0;j=d+16|0;k=d+12|0;l=d+8|0;c[e>>2]=a;h[f>>3]=b;c[l>>2]=0;if(+h[c[e>>2]>>3]<+h[f>>3])m=-1;else m=+h[c[e>>2]>>3]>+h[f>>3]?1:0;c[j>>2]=m;if(!(c[j>>2]|0))c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=1;while(1){if((c[g>>2]|0)>3)break;c[k>>2]=c[j>>2];if(+h[(c[e>>2]|0)+(c[g>>2]<<4)>>3]<+h[f>>3])n=-1;else n=+h[(c[e>>2]|0)+(c[g>>2]<<4)>>3]>+h[f>>3]?1:0;c[j>>2]=n;if((c[k>>2]|0)!=0?(c[j>>2]|0)!=(c[k>>2]|0):0)c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}i=d;return c[l>>2]|0}function Tk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=i;i=i+32|0;e=d;f=d+16|0;c[f>>2]=b;b=c[f>>2]|0;g=+h[a+8>>3];h[e>>3]=+h[a>>3];h[e+8>>3]=g;k3(b,125168,e)|0;i=d;return c[f>>2]|0}function Uk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=i;i=i+16|0;e=d;f=4;g=N4(40)|0;c[g>>2]=0;if(((b[(c[a+8>>2]|0)+238>>1]|0)-(b[(c[a+8>>2]|0)+236>>1]|0)|0)<=1){O4(g|0);i=d;return}h=1;a:while(1){if(!(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(h+1<<6)>>2]|0)){j=h;k=18;break}l=0;while(1){if((l|0)>=(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(h<<6)>>2]|0))break;m=c[(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(h<<6)+4>>2]|0)+(l<<2)>>2]|0;n=0;p=ia(20,m|0)|0;q=n;n=0;if((q|0)!=0&(o|0)!=0){r=Y4(c[q>>2]|0,g|0,f|0)|0;if(!r)Pa(q|0,o|0);C=o}else r=-1;if((r|0)==1){s=C;break a}if(p&255){p=l+1|0;while(1){if((p|0)>=(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(h<<6)>>2]|0))break;n=0;q=ra(65,m|0,c[(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(h<<6)+4>>2]|0)+(p<<2)>>2]|0)|0;t=n;n=0;if((t|0)!=0&(o|0)!=0){u=Y4(c[t>>2]|0,g|0,f|0)|0;if(!u)Pa(t|0,o|0);C=o}else u=-1;if((u|0)==1){s=C;break a}if(!(q&255))break;p=p+1|0}if((p-l|0)>1){n=0;da(15,a|0,h|0,l|0,p-1|0,1);m=n;n=0;if((m|0)!=0&(o|0)!=0){v=Y4(c[m>>2]|0,g|0,f|0)|0;if(!v)Pa(m|0,o|0);C=o}else v=-1;if((v|0)==1){s=C;break a}}}l=l+1|0}h=h+1|0}b:do if((k|0)==18){while(1){k=0;if((j|0)<=0)break;h=0;while(1){if((h|0)>=(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(j<<6)>>2]|0))break;v=c[(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(j<<6)+4>>2]|0)+(h<<2)>>2]|0;n=0;u=ia(21,v|0)|0;r=n;n=0;if((r|0)!=0&(o|0)!=0){w=Y4(c[r>>2]|0,g|0,f|0)|0;if(!w)Pa(r|0,o|0);C=o}else w=-1;if((w|0)==1){s=C;break b}if(u&255){u=h+1|0;while(1){if((u|0)>=(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(j<<6)>>2]|0))break;n=0;r=ra(66,v|0,c[(c[(c[(c[a+8>>2]|0)+196>>2]|0)+(j<<6)+4>>2]|0)+(u<<2)>>2]|0)|0;l=n;n=0;if((l|0)!=0&(o|0)!=0){x=Y4(c[l>>2]|0,g|0,f|0)|0;if(!x)Pa(l|0,o|0);C=o}else x=-1;if((x|0)==1){s=C;break b}if(!(r&255))break;u=u+1|0}if((u-h|0)>1){n=0;da(15,a|0,j|0,h|0,u-1|0,0);v=n;n=0;if((v|0)!=0&(o|0)!=0){y=Y4(c[v>>2]|0,g|0,f|0)|0;if(!y)Pa(v|0,o|0);C=o}else y=-1;if((y|0)==1){s=C;break b}}}h=h+1|0}j=j+-1|0;k=18}g=W4(50380,1,g|0,f|0)|0;f=C;n=0;h=n;n=0;if((h|0)!=0&(o|0)!=0){z=Y4(c[h>>2]|0,g|0,f|0)|0;if(!z)Pa(h|0,o|0);C=o}else z=-1;if((z|0)==1)s=C;else s=0}while(0);c:while(1){if(s){n=0;ka(25,3,125208,e|0)|0;z=n;n=0;if((z|0)!=0&(o|0)!=0){A=Y4(c[z>>2]|0,g|0,f|0)|0;if(!A)Pa(z|0,o|0);C=o}else A=-1;if((A|0)==1){s=C;continue}else break}z=1;while(1){if((z|0)>(c[(c[a+8>>2]|0)+180>>2]|0)){k=42;break c}n=0;ea(92,c[(c[(c[a+8>>2]|0)+184>>2]|0)+(z<<2)>>2]|0);j=n;n=0;if((j|0)!=0&(o|0)!=0){B=Y4(c[j>>2]|0,g|0,f|0)|0;if(!B)Pa(j|0,o|0);C=o}else B=-1;if((B|0)==1){s=C;continue c}z=z+1|0}}if((k|0)==42){O4(g|0);i=d;return}O4(g|0);i=d;return}function Vk(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(((a[(c[(c[e>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[e>>2]|0)+8>>2]|0)+172+4>>2]|0)==1:0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+180+4>>2]|0)==1:0)f=(c[(c[(c[e>>2]|0)+8>>2]|0)+104>>2]|0)==0;else f=0;i=d;return f&1|0}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+112|0;f=e+40|0;g=e;h=e+96|0;j=e+92|0;k=e+88|0;l=e+84|0;m=e+80|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[c[(c[(c[j>>2]|0)+8>>2]|0)+172>>2]>>2];c[m>>2]=c[c[(c[(c[k>>2]|0)+8>>2]|0)+172>>2]>>2];if(((Vk(c[k>>2]|0)|0)&255|0)!=0?(k=c[l>>2]|0,j=c[m>>2]|0,(c[((c[c[l>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)==(c[((c[c[m>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)):0){if((al(c[l>>2]|0,c[m>>2]|0)|0)&255){j=(c[(c[m>>2]|0)+8>>2]|0)+16|0;m=g;k=(c[(c[l>>2]|0)+8>>2]|0)+16|0;l=m+40|0;do{c[m>>2]=c[k>>2];m=m+4|0;k=k+4|0}while((m|0)<(l|0));m=f;k=j;l=m+40|0;do{c[m>>2]=c[k>>2];m=m+4|0;k=k+4|0}while((m|0)<(l|0));n=(Kf(g,f)|0)==0}else n=0;a[h>>0]=n&1;o=a[h>>0]|0;i=e;return o|0}a[h>>0]=0;o=a[h>>0]|0;i=e;return o|0}function Xk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+64|0;h=g+48|0;j=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+12|0;s=g+8|0;t=g+4|0;u=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[p>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[k>>2]<<2)>>2];c[n>>2]=(c[k>>2]|0)+1;while(1){if((c[n>>2]|0)>(c[l>>2]|0))break;c[q>>2]=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[n>>2]<<2)>>2];a:do if((c[m>>2]|0)==1)while(1){f=c[c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[r>>2]=f;if(!f)break a;c[o>>2]=0;while(1){f=c[(c[(c[(c[p>>2]|0)+8>>2]|0)+180>>2]|0)+(c[o>>2]<<2)>>2]|0;c[s>>2]=f;if(!f)break;f=c[s>>2]|0;e=c[r>>2]|0;if((c[((c[c[s>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)==(c[((c[c[r>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[s>>2]|0)){e=c[r>>2]|0;c[s>>2]=Og(c[p>>2]|0,c[((c[c[r>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0,c[r>>2]|0)|0}while(1){e=c[c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]>>2]|0;c[t>>2]=e;if(!e)break;Vg(c[t>>2]|0,c[s>>2]|0);Kg(c[t>>2]|0)}Kg(c[r>>2]|0)}else while(1){e=c[c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]>>2]|0;c[r>>2]=e;if(!e)break a;c[o>>2]=0;while(1){e=c[(c[(c[(c[p>>2]|0)+8>>2]|0)+172>>2]|0)+(c[o>>2]<<2)>>2]|0;c[s>>2]=e;if(!e)break;e=c[s>>2]|0;f=c[r>>2]|0;if((c[((c[c[s>>2]>>2]&3|0)==3?e:e+32|0)+28>>2]|0)==(c[((c[c[r>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[s>>2]|0)){f=c[r>>2]|0;c[s>>2]=Og(c[((c[c[r>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0,c[p>>2]|0,c[r>>2]|0)|0}while(1){f=c[c[(c[(c[q>>2]|0)+8>>2]|0)+180>>2]>>2]|0;c[t>>2]=f;if(!f)break;Vg(c[t>>2]|0,c[s>>2]|0);Kg(c[t>>2]|0)}Kg(c[r>>2]|0)}while(0);if((c[(c[(c[q>>2]|0)+8>>2]|0)+172+4>>2]|0)+(c[(c[(c[q>>2]|0)+8>>2]|0)+180+4>>2]|0)|0){v=25;break}Rg(c[h>>2]|0,c[q>>2]|0);c[n>>2]=(c[n>>2]|0)+1}if((v|0)==25)La(125344,125388,115,125395);c[o>>2]=(c[k>>2]|0)+1;c[n>>2]=(c[l>>2]|0)+1;while(1){if((c[n>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0))break;l=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[n>>2]<<2)>>2]|0;c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[o>>2]<<2)>>2]=l;c[u>>2]=l;c[(c[(c[u>>2]|0)+8>>2]|0)+236>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+1}c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]=c[o>>2];c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2]|0)+(c[o>>2]<<2)>>2]=0;i=g;return}function Yk(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(((a[(c[(c[e>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[e>>2]|0)+8>>2]|0)+180+4>>2]|0)==1:0)?(c[(c[(c[e>>2]|0)+8>>2]|0)+172+4>>2]|0)==1:0)f=(c[(c[(c[e>>2]|0)+8>>2]|0)+104>>2]|0)==0;else f=0;i=d;return f&1|0}function Zk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+112|0;f=e+40|0;g=e;h=e+96|0;j=e+92|0;k=e+88|0;l=e+84|0;m=e+80|0;c[j>>2]=b;c[k>>2]=d;c[l>>2]=c[c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]>>2];c[m>>2]=c[c[(c[(c[k>>2]|0)+8>>2]|0)+180>>2]>>2];if(((Yk(c[k>>2]|0)|0)&255|0)!=0?(k=c[l>>2]|0,j=c[m>>2]|0,(c[((c[c[l>>2]>>2]&3|0)==2?k:k+-32|0)+28>>2]|0)==(c[((c[c[m>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)):0){if((al(c[l>>2]|0,c[m>>2]|0)|0)&255){j=(c[(c[m>>2]|0)+8>>2]|0)+56|0;m=g;k=(c[(c[l>>2]|0)+8>>2]|0)+56|0;l=m+40|0;do{c[m>>2]=c[k>>2];m=m+4|0;k=k+4|0}while((m|0)<(l|0));m=f;k=j;l=m+40|0;do{c[m>>2]=c[k>>2];m=m+4|0;k=k+4|0}while((m|0)<(l|0));n=(Kf(g,f)|0)==0}else n=0;a[h>>0]=n&1;o=a[h>>0]|0;i=e;return o|0}a[h>>0]=0;o=a[h>>0]|0;i=e;return o|0}function _k(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+64|0;f=e+16|0;g=e;h=e+60|0;j=e+56|0;k=e+52|0;l=e+48|0;m=e+44|0;n=e+40|0;o=e+36|0;p=e+32|0;q=e+28|0;r=e+24|0;c[h>>2]=d;c[l>>2]=b[(c[(c[h>>2]|0)+8>>2]|0)+236>>1];while(1){if((c[l>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[l>>2]<<2)>>2]=0;c[l>>2]=(c[l>>2]|0)+1}Si(c[h>>2]|0);c[n>>2]=$B(c[h>>2]|0)|0;while(1){s=c[h>>2]|0;if(!(c[n>>2]|0))break;$k(s,c[n>>2]|0);c[p>>2]=OA(c[h>>2]|0,c[n>>2]|0)|0;while(1){if(!(c[p>>2]|0))break;c[q>>2]=c[p>>2];while(1){if(!(c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]|0))break;c[q>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+172>>2]}while(1){d=c[q>>2]|0;t=c[p>>2]|0;u=c[h>>2]|0;if((c[(c[(c[((c[c[q>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)>=(c[(c[(c[((c[c[p>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))break;t=c[q>>2]|0;$k(u,c[((c[c[q>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]|0);t=c[q>>2]|0;c[q>>2]=c[c[(c[(c[((c[c[q>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]|0)+8>>2]|0)+180>>2]>>2]}c[p>>2]=QA(u,c[p>>2]|0)|0}c[n>>2]=aC(c[h>>2]|0,c[n>>2]|0)|0}c[l>>2]=b[(c[s+8>>2]|0)+236>>1];while(1){if((c[l>>2]|0)>(b[(c[(c[h>>2]|0)+8>>2]|0)+238>>1]|0))break;c[o>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[l>>2]<<2)>>2];s=c[(c[(c[o>>2]|0)+8>>2]|0)+236>>2]|0;p=c[l>>2]|0;u=c[(c[(c[(c[(uf(c[h>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(p<<6)+4>>2]|0)+(s<<2)>>2]|0;if((u|0)!=(c[o>>2]|0)){v=18;break}u=c[l>>2]|0;s=c[(c[(c[(uf(c[h>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(u<<6)+4>>2]|0;c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)+4>>2]=s+(c[(c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>2]|0)+236>>2]<<2);c[m>>2]=-1;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]|0))break;s=c[(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)+4>>2]|0)+(c[k>>2]<<2)>>2]|0;c[n>>2]=s;if(!s)break;if(a[(c[(c[n>>2]|0)+8>>2]|0)+156>>0]|0){c[r>>2]=c[c[(c[(c[n>>2]|0)+8>>2]|0)+172>>2]>>2];while(1){if(!(c[r>>2]|0))break;if(!(c[(c[(c[r>>2]|0)+8>>2]|0)+116>>2]|0))break;c[r>>2]=c[(c[(c[r>>2]|0)+8>>2]|0)+116>>2]}if(((c[r>>2]|0)!=0?(s=c[r>>2]|0,(AC(c[h>>2]|0,c[((c[c[r>>2]>>2]&3|0)==3?s:s+32|0)+28>>2]|0)|0)!=0):0)?(s=c[r>>2]|0,(AC(c[h>>2]|0,c[((c[c[r>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0)|0)!=0):0)c[m>>2]=c[k>>2]}else{if(!(AC(c[h>>2]|0,c[n>>2]|0)|0))break;c[m>>2]=c[k>>2]}c[k>>2]=(c[k>>2]|0)+1}if((c[m>>2]|0)==-1){s=wB(c[h>>2]|0)|0;u=c[l>>2]|0;c[f>>2]=s;c[f+4>>2]=u;$z(0,125308,f)|0}c[(c[(c[(c[h>>2]|0)+8>>2]|0)+196>>2]|0)+(c[l>>2]<<6)>>2]=(c[m>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}if((v|0)==18){v=wB(c[o>>2]|0)|0;m=c[(c[(c[o>>2]|0)+8>>2]|0)+236>>2]|0;o=c[l>>2]|0;c[g>>2]=v;c[g+4>>2]=m;c[g+8>>2]=o;$z(1,125250,g)|0;Pa(50380,1)}c[j>>2]=1;while(1){if((c[j>>2]|0)>(c[(c[(c[h>>2]|0)+8>>2]|0)+180>>2]|0))break;_k(c[(c[(c[(c[h>>2]|0)+8>>2]|0)+184>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}i=e;return}function $k(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]<<2)>>2];if((c[g>>2]|0)!=0?(c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]|0)<=(c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]|0):0){i=d;return}c[(c[(c[(c[e>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]<<2)>>2]=c[f>>2];i=d;return}function al(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;c[j>>2]=c[g>>2];while(1){if(!(a[(c[(c[j>>2]|0)+8>>2]|0)+112>>0]|0))break;c[j>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+116>>2]}c[k>>2]=c[h>>2];while(1){if(!(a[(c[(c[k>>2]|0)+8>>2]|0)+112>>0]|0))break;c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+116>>2]}if(a[(c[(c[j>>2]|0)+8>>2]|0)+153>>0]|0){a[f>>0]=0;l=a[f>>0]|0;i=e;return l|0}if(a[(c[(c[k>>2]|0)+8>>2]|0)+153>>0]|0){a[f>>0]=0;l=a[f>>0]|0;i=e;return l|0}else{h=c[k>>2]|0;g=c[k>>2]|0;d=c[j>>2]|0;b=c[j>>2]|0;a[f>>0]=(_((c[(c[(c[((c[c[k>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[k>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0,(c[(c[(c[((c[c[j>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-(c[(c[(c[((c[c[j>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)|0)|0)>0;l=a[f>>0]|0;i=e;return l|0}return 0}function bl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[12634]=c[f>>2];d=(a[125408]|0)+1<<24>>24;a[125408]=d;a[125408]=(d<<24>>24|0)==0?1:d;c[(c[(c[f>>2]|0)+8>>2]|0)+216+4>>2]=0;c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]=0;c[j>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;c[k>>2]=c[j>>2];if((c[g>>2]|0)>0?(d=c[(c[(c[k>>2]|0)+8>>2]|0)+212>>2]|0,c[h>>2]=d,(d|0)!=0):0){c[k>>2]=c[(c[(c[(c[h>>2]|0)+8>>2]|0)+268>>2]|0)+(c[(c[(c[k>>2]|0)+8>>2]|0)+232>>2]<<2)>>2];l=7}else l=6;if((l|0)==6?(l=0,d=c[k>>2]|0,(d|0)==(lO(c[k>>2]|0)|0)):0)l=7;if((l|0)==7?(l=0,(a[(c[(c[k>>2]|0)+8>>2]|0)+157>>0]|0)!=(a[125408]|0)):0){cl();dl(c[f>>2]|0,c[k>>2]|0);el()}c[j>>2]=aC(c[f>>2]|0,c[j>>2]|0)|0}i=e;return}function cl(){c[(c[(c[12634]|0)+8>>2]|0)+192>>2]=0;c[12635]=0;return}function dl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+64|0;f=e+52|0;g=e+48|0;h=e+44|0;j=e+40|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=b;c[g>>2]=d;fl(c[g>>2]|0);d=(c[(c[g>>2]|0)+8>>2]|0)+180|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];d=k+8|0;b=(c[(c[g>>2]|0)+8>>2]|0)+172|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];b=k+16|0;d=(c[(c[g>>2]|0)+8>>2]|0)+188|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];d=k+24|0;b=(c[(c[g>>2]|0)+8>>2]|0)+196|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>3)break;a:do if(c[k+(c[h>>2]<<3)>>2]|0){c[j>>2]=0;while(1){b=c[(c[k+(c[h>>2]<<3)>>2]|0)+(c[j>>2]<<2)>>2]|0;c[m>>2]=b;if(!b)break a;b=c[m>>2]|0;d=c[((c[c[m>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0;c[l>>2]=d;if((d|0)==(c[g>>2]|0)){d=c[m>>2]|0;c[l>>2]=c[((c[c[m>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]}if((a[(c[(c[l>>2]|0)+8>>2]|0)+157>>0]|0)!=(a[125408]|0)?(d=c[l>>2]|0,(d|0)==(lO(c[l>>2]|0)|0)):0)dl(c[f>>2]|0,c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}i=e;return}function el(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a;d=(c[(c[12634]|0)+8>>2]|0)+216+4|0;e=c[d>>2]|0;c[d>>2]=e+1;c[b>>2]=e;e=(c[(c[12634]|0)+8>>2]|0)+216|0;if(c[(c[(c[12634]|0)+8>>2]|0)+216>>2]|0)f=eK(c[e>>2]|0,c[(c[(c[12634]|0)+8>>2]|0)+216+4>>2]<<2)|0;else f=cK(c[e+4>>2]<<2)|0;c[(c[(c[12634]|0)+8>>2]|0)+216>>2]=f;c[(c[(c[(c[12634]|0)+8>>2]|0)+216>>2]|0)+(c[b>>2]<<2)>>2]=c[(c[(c[12634]|0)+8>>2]|0)+192>>2];i=a;return}function fl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=(c[(c[12634]|0)+8>>2]|0)+232|0;c[b>>2]=(c[b>>2]|0)+1;a[(c[(c[e>>2]|0)+8>>2]|0)+157>>0]=a[125408]|0;if(c[12635]|0){c[(c[(c[e>>2]|0)+8>>2]|0)+168>>2]=c[12635];c[(c[(c[12635]|0)+8>>2]|0)+164>>2]=c[e>>2];f=c[e>>2]|0;c[12635]=f;g=c[e>>2]|0;h=g+8|0;j=c[h>>2]|0;k=j+164|0;c[k>>2]=0;i=d;return}else{c[(c[(c[e>>2]|0)+8>>2]|0)+168>>2]=0;c[(c[(c[12634]|0)+8>>2]|0)+192>>2]=c[e>>2];f=c[e>>2]|0;c[12635]=f;g=c[e>>2]|0;h=g+8|0;j=c[h>>2]|0;k=j+164|0;c[k>>2]=0;i=d;return}}function gl(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0;d=i;i=i+48|0;e=d+36|0;f=d+32|0;g=d+28|0;j=d+24|0;k=d+20|0;l=d+16|0;m=d+12|0;n=d+8|0;o=d;c[e>>2]=b;c[j>>2]=0;c[m>>2]=0;c[k>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[k>>2]|0))break;a:do if(c[(c[(c[k>>2]|0)+8>>2]|0)+188>>2]|0){c[g>>2]=0;while(1){b=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+188>>2]|0)+(c[g>>2]<<2)>>2]|0;c[l>>2]=b;if(!b)break a;hl(c[l>>2]|0);c[g>>2]=(c[g>>2]|0)+1}}while(0);c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[k>>2]|0)+8>>2]|0)+204+4>>2]|0))break;c[l>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+204>>2]|0)+(c[g>>2]<<2)>>2];b=c[l>>2]|0;p=c[l>>2]|0;if((c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0))hl(c[l>>2]|0);c[g>>2]=(c[g>>2]|0)+1}c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]}if(!((c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+56>>2]|0)==0?(c[(c[(c[e>>2]|0)+8>>2]|0)+180>>2]|0)<=0:0))q=15;b:do if((q|0)==15){c[f>>2]=0;while(1){p=c[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+4>>2]|0)+(c[f>>2]<<2)>>2]|0;c[k>>2]=p;if(!p)break b;c[g>>2]=0;while(1){p=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<2)>>2]|0;c[l>>2]=p;if(!p)break;if((c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0)!=0?(a[(c[(c[l>>2]|0)+8>>2]|0)+113>>0]|0)==0:0){q=21;break}c[g>>2]=(c[g>>2]|0)+1}if((q|0)==21){q=0;il(c[e>>2]|0);c[m>>2]=1}if(c[m>>2]|0)break b;c[f>>2]=(c[f>>2]|0)+1}}while(0);dh(c[e>>2]|0);c[k>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+192>>2];while(1){if(!(c[k>>2]|0))break;c:do if(c[(c[(c[k>>2]|0)+8>>2]|0)+188>>2]|0){c[f>>2]=0;while(1){m=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+188>>2]|0)+(c[f>>2]<<2)>>2]|0;c[l>>2]=m;if(!m)break;do if(c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0){if(!(a[(c[(c[l>>2]|0)+8>>2]|0)+113>>0]|0)){c[j>>2]=1;jl(c[l>>2]|0);break}m=(c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(c[(c[(c[e>>2]|0)+8>>2]|0)+116>>2]&1){h[(c[(c[l>>2]|0)+8>>2]|0)+136>>3]=+h[m+8>>3];break}else{h[(c[(c[l>>2]|0)+8>>2]|0)+136>>3]=+h[m>>3];break}}while(0);c[f>>2]=(c[f>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[(c[k>>2]|0)+8>>2]|0)+204+4>>2]|0))break c;c[l>>2]=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+204>>2]|0)+(c[g>>2]<<2)>>2];m=c[l>>2]|0;q=c[l>>2]|0;do if((c[(c[(c[((c[c[l>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[((c[c[l>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)?(p=c[l>>2]|0,b=c[l>>2]|0,(c[((c[c[l>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)!=(c[((c[c[l>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0)):0){c[n>>2]=c[l>>2];while(1){r=c[(c[n>>2]|0)+8>>2]|0;if(!(c[(c[(c[n>>2]|0)+8>>2]|0)+172>>2]|0))break;c[n>>2]=c[r+172>>2]}a[(c[(c[l>>2]|0)+8>>2]|0)+113>>0]=a[r+113>>0]|0;if(c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0){if(!(a[(c[(c[l>>2]|0)+8>>2]|0)+113>>0]|0)){c[j>>2]=1;jl(c[l>>2]|0);break}b=(c[(c[(c[l>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(c[(c[(c[e>>2]|0)+8>>2]|0)+116>>2]&1)h[o>>3]=+h[b+8>>3];else h[o>>3]=+h[b>>3];if(+h[o>>3]>+h[(c[(c[n>>2]|0)+8>>2]|0)+136>>3])s=+h[o>>3];else s=+h[(c[(c[n>>2]|0)+8>>2]|0)+136>>3];h[(c[(c[n>>2]|0)+8>>2]|0)+136>>3]=s}}while(0);c[g>>2]=(c[g>>2]|0)+1}}while(0);c[k>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+164>>2]}if(!(c[j>>2]|0)){t=c[j>>2]|0;i=d;return t|0}eh(c[e>>2]|0);t=c[j>>2]|0;i=d;return t|0}function hl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;j=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=b;b=c[e>>2]|0;c[f>>2]=c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2];b=c[e>>2]|0;c[g>>2]=c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2];if((c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]|0)<(c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]|0)){c[j>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2];c[k>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2]}else{c[j>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2];c[k>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+236>>2]}g=c[(c[(c[f>>2]|0)+8>>2]|0)+232>>2]|0;c[m>>2]=(c[(c[(uf(c[f>>2]|0)|0)+8>>2]|0)+196>>2]|0)+(g<<6);c[h>>2]=(c[j>>2]|0)+1;while(1){if((c[h>>2]|0)>=(c[k>>2]|0))break;c[l>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+(c[h>>2]<<2)>>2];if((a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0)==1?(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)!=0:0)break;if(!(a[(c[(c[l>>2]|0)+8>>2]|0)+156>>0]|0))break;c[h>>2]=(c[h>>2]|0)+1}if((c[h>>2]|0)!=(c[k>>2]|0)){i=d;return}do{a[(c[(c[e>>2]|0)+8>>2]|0)+113>>0]=1;c[e>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+172>>2]}while((c[e>>2]|0)!=0);i=d;return}function il(a){a=a|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;if(b[(c[(c[e>>2]|0)+8>>2]|0)+236>>1]|0)La(125446,125429,190,125465);c[f>>2]=(b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1]|0)+3;if(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)j=eK(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0,c[f>>2]<<6)|0;else j=cK(c[f>>2]<<6)|0;c[g>>2]=j;c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]=(c[g>>2]|0)+64;c[f>>2]=b[(c[(c[e>>2]|0)+8>>2]|0)+238>>1];while(1){k=(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)|0;if((c[f>>2]|0)<0)break;g=k;j=(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)|0;a=g+64|0;do{c[g>>2]=c[j>>2];g=g+4|0;j=j+4|0}while((g|0)<(a|0));c[f>>2]=(c[f>>2]|0)+-1}c[k+8>>2]=0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)>>2]=0;k=bK(8)|0;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+12>>2]=k;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+4>>2]=k;c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+56>>2]=0;h[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+24>>3]=1.0;h[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+16>>3]=1.0;h[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+40>>3]=1.0;h[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+32>>3]=1.0;f=(c[(c[e>>2]|0)+8>>2]|0)+236|0;b[f>>1]=(b[f>>1]|0)+-1<<16>>16;i=d;return}function jl(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;d=i;i=i+64|0;e=d+56|0;f=d+52|0;g=d+48|0;j=d+44|0;k=d+40|0;l=d+36|0;m=d+32|0;n=d+28|0;o=d+24|0;p=d+8|0;q=d;c[e>>2]=b;if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+96>>2]|0)){i=d;return}b=c[e>>2]|0;c[l>>2]=uf(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;b=c[e>>2]|0;c[f>>2]=c[(c[(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2];c[g>>2]=kl(c[l>>2]|0,c[e>>2]|0)|0;b=c[c[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+4>>2]>>2]|0;c[m>>2]=b;if(b)c[j>>2]=~~(+h[(c[(c[m>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+16>>3]);else{c[m>>2]=c[c[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+4>>2]>>2];c[j>>2]=~~(+h[(c[(c[m>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+(c[f>>2]<<6)+24>>3]+ +(c[(c[(c[l>>2]|0)+8>>2]|0)+252>>2]|0))}c[n>>2]=ll(c[l>>2]|0,(c[f>>2]|0)-1|0,c[g>>2]|0)|0;g=(c[(c[(c[e>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];if(c[(c[(c[l>>2]|0)+8>>2]|0)+116>>2]&1){h[q>>3]=+h[p>>3];h[p>>3]=+h[p+8>>3];h[p+8>>3]=+h[q>>3]}h[(c[(c[n>>2]|0)+8>>2]|0)+80>>3]=+h[p+8>>3];c[k>>2]=~~(+h[(c[(c[n>>2]|0)+8>>2]|0)+80>>3]/2.0);r=+h[p>>3]/2.0;h[(c[(c[n>>2]|0)+8>>2]|0)+96>>3]=r;h[(c[(c[n>>2]|0)+8>>2]|0)+88>>3]=r;c[(c[(c[n>>2]|0)+8>>2]|0)+104>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+96>>2];h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]=+((c[j>>2]|0)+(c[k>>2]|0)|0);j=c[e>>2]|0;c[o>>2]=Og(c[n>>2]|0,c[((c[c[e>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0,c[e>>2]|0)|0;h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]=-+h[(c[(c[n>>2]|0)+8>>2]|0)+88>>3];j=c[e>>2]|0;h[(c[(c[o>>2]|0)+8>>2]|0)+56>>3]=+h[(c[(c[((c[c[e>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)+8>>2]|0)+96>>3];a[(c[(c[o>>2]|0)+8>>2]|0)+112>>0]=4;j=c[e>>2]|0;c[o>>2]=Og(c[n>>2]|0,c[((c[c[e>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0,c[e>>2]|0)|0;h[(c[(c[o>>2]|0)+8>>2]|0)+16>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+96>>3];j=c[e>>2]|0;h[(c[(c[o>>2]|0)+8>>2]|0)+56>>3]=+h[(c[(c[((c[c[e>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+8>>2]|0)+88>>3];a[(c[(c[o>>2]|0)+8>>2]|0)+112>>0]=4;if(+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+16>>3]<+(c[k>>2]|0))h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+16>>3]=+(c[k>>2]|0);if(+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+24>>3]<+(c[k>>2]|0))h[(c[(c[(c[l>>2]|0)+8>>2]|0)+196>>2]|0)+((c[f>>2]|0)-1<<6)+24>>3]=+(c[k>>2]|0);c[(c[(c[n>>2]|0)+8>>2]|0)+112>>2]=c[e>>2];i=d;return}function kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+64|0;e=d+48|0;f=d+44|0;g=d+40|0;h=d+36|0;j=d+32|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;c[j>>2]=(c[(c[(c[((c[c[f>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)+8>>2]|0)+232>>2]|0)-1;c[o>>2]=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)+4>>2];c[g>>2]=0;c[h>>2]=(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+196>>2]|0)+(c[j>>2]<<6)>>2]|0)-1;j=(c[g>>2]|0)-1|0;c[k+8>>2]=j;c[k>>2]=j;j=(c[h>>2]|0)+1|0;c[k+12>>2]=j;c[k+4>>2]=j;j=c[f>>2]|0;e=c[f>>2]|0;ml(c[((c[c[f>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0,c[((c[c[f>>2]>>2]&3|0)==2?e:e+-32|0)+28>>2]|0,l,m);do{if((c[g>>2]|0)>(c[h>>2]|0))break;nl(c[(c[o>>2]|0)+(c[g>>2]<<2)>>2]|0,k,c[l>>2]|0,c[m>>2]|0);if((c[g>>2]|0)!=(c[h>>2]|0))nl(c[(c[o>>2]|0)+(c[h>>2]<<2)>>2]|0,k,c[l>>2]|0,c[m>>2]|0);c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+-1}while(((c[k+4>>2]|0)-(c[k>>2]|0)|0)>1);if((c[k>>2]|0)<=(c[k+4>>2]|0)){c[n>>2]=((c[k>>2]|0)+(c[k+4>>2]|0)+1|0)/2|0;p=c[n>>2]|0;i=d;return p|0}else{c[n>>2]=((c[k+8>>2]|0)+(c[k+12>>2]|0)+1|0)/2|0;p=c[n>>2]|0;i=d;return p|0}return 0}function ll(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)|0;if(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+4>>2]|0)m=eK(c[d+4>>2]|0,(c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)>>2]|0)+2<<2)|0;else m=cK((c[d>>2]|0)+2<<2)|0;c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)+4>>2]=m;c[k>>2]=m;c[j>>2]=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)>>2];while(1){if((c[j>>2]|0)<=(c[h>>2]|0))break;c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]=c[(c[k>>2]|0)+((c[j>>2]|0)-1<<2)>>2];m=(c[(c[(c[k>>2]|0)+(c[j>>2]<<2)>>2]|0)+8>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+-1}j=Sg(c[f>>2]|0)|0;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=j;c[l>>2]=j;c[(c[(c[l>>2]|0)+8>>2]|0)+236>>2]=c[h>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+232>>2]=c[g>>2];l=(c[(c[(c[f>>2]|0)+8>>2]|0)+196>>2]|0)+(c[g>>2]<<6)|0;g=(c[l>>2]|0)+1|0;c[l>>2]=g;c[(c[k>>2]|0)+(g<<2)>>2]=0;i=e;return c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]|0}function ml(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+32|0;g=f+24|0;h=f+20|0;j=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+236>>2];c[m>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+236>>2];if((c[l>>2]|0)<=(c[m>>2]|0)){o=c[l>>2]|0;p=c[j>>2]|0;c[p>>2]=o;q=c[m>>2]|0;r=c[k>>2]|0;c[r>>2]=q;i=f;return}c[n>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[n>>2];o=c[l>>2]|0;p=c[j>>2]|0;c[p>>2]=o;q=c[m>>2]|0;r=c[k>>2]|0;c[r>>2]=q;i=f;return}function nl(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+48|0;j=h+32|0;k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;s=h+37|0;t=h+36|0;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((a[(c[(c[j>>2]|0)+8>>2]|0)+156>>0]|0)!=1){i=h;return}c[q>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+236>>2];if(c[(c[(c[j>>2]|0)+8>>2]|0)+172+4>>2]|0){a[t>>0]=0;a[s>>0]=0;c[n>>2]=0;while(1){g=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+(c[n>>2]<<2)>>2]|0;c[r>>2]=g;if(!g)break;g=c[r>>2]|0;if((c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>(c[l>>2]|0)){g=c[r>>2]|0;if((c[(c[(c[((c[c[r>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)+8>>2]|0)+236>>2]|0)>=(c[m>>2]|0))a[t>>0]=1}else a[s>>0]=1;c[n>>2]=(c[n>>2]|0)+1}if((d[s>>0]|0)!=0?(d[t>>0]|0)==0:0)c[c[k>>2]>>2]=(c[q>>2]|0)+1;if(!(d[t>>0]|0)){i=h;return}if(d[s>>0]|0){i=h;return}c[(c[k>>2]|0)+4>>2]=(c[q>>2]|0)-1;i=h;return}if((c[(c[(c[j>>2]|0)+8>>2]|0)+180+4>>2]|0)!=2)La(125409,125429,63,125436);s=c[c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]>>2]|0;t=c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+4>>2]|0;ml(c[((c[c[c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]>>2]>>2]&3|0)==2?s:s+-32|0)+28>>2]|0,c[((c[c[(c[(c[(c[j>>2]|0)+8>>2]|0)+180>>2]|0)+4>>2]>>2]&3|0)==2?t:t+-32|0)+28>>2]|0,o,p);if((c[p>>2]|0)<=(c[l>>2]|0)){t=c[q>>2]|0;c[c[k>>2]>>2]=t;c[(c[k>>2]|0)+8>>2]=t;i=h;return}if((c[o>>2]|0)>=(c[m>>2]|0)){t=c[q>>2]|0;c[(c[k>>2]|0)+4>>2]=t;c[(c[k>>2]|0)+12>>2]=t;i=h;return}if((c[o>>2]|0)<(c[l>>2]|0)?(c[p>>2]|0)>(c[m>>2]|0):0){i=h;return}if((c[o>>2]|0)>=(c[l>>2]|0)){if((c[o>>2]|0)==(c[l>>2]|0)?(c[p>>2]|0)<(c[m>>2]|0):0)u=14}else u=14;if((u|0)==14)c[(c[k>>2]|0)+8>>2]=c[q>>2];if((c[p>>2]|0)<=(c[m>>2]|0)){if((c[p>>2]|0)!=(c[m>>2]|0)){i=h;return}if((c[o>>2]|0)<=(c[l>>2]|0)){i=h;return}}c[(c[k>>2]|0)+12>>2]=c[q>>2];i=h;return}function ol(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[13795]=1;wl(c[d>>2]|0);c[13795]=0;i=b;return}function pl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[13795]=2;wl(c[d>>2]|0);c[13795]=0;i=b;return}function ql(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175026,304,1)|0;xO(c[d>>2]|0);a=bK((e[(c[(qC(c[d>>2]|0)|0)+8>>2]|0)+176>>1]|0)<<3)|0;c[(c[(c[d>>2]|0)+8>>2]|0)+132>>2]=a;a=c[d>>2]|0;VO(a,c[(c[(qC(c[d>>2]|0)|0)+8>>2]|0)+116>>2]&1);i=b;return}function rl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;g=i;i=i+96|0;j=g+48|0;k=g+40|0;l=g+24|0;m=g+8|0;n=g+88|0;o=g+84|0;p=g+80|0;q=g+76|0;r=g+72|0;s=g+68|0;t=g+64|0;u=g+92|0;v=g;w=g+60|0;x=g+56|0;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;if(!(c[o>>2]|0)){c[n>>2]=0;y=c[n>>2]|0;i=g;return y|0}c[s>>2]=c[(c[(c[q>>2]|0)+8>>2]|0)+132>>2];c[t>>2]=zA(c[q>>2]|0,c[o>>2]|0)|0;do if(a[c[t>>2]>>0]|0){a[u>>0]=0;if((c[13799]|0)>=3?(o=c[t>>2]|0,f=(c[s>>2]|0)+8|0,e=(c[s>>2]|0)+16|0,c[m>>2]=c[s>>2],c[m+4>>2]=f,c[m+8>>2]=e,c[m+12>>2]=u,(l3(o,125547,m)|0)>=3):0){a[(c[(c[q>>2]|0)+8>>2]|0)+119>>0]=1;a:do if(+h[4246]>0.0){c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[13799]|0))break a;h[(c[s>>2]|0)+(c[w>>2]<<3)>>3]=+h[(c[s>>2]|0)+(c[w>>2]<<3)>>3]/+h[4246];c[w>>2]=(c[w>>2]|0)+1}}while(0);if((c[13799]|0)>3)Rm(c[q>>2]|0,c[r>>2]|0,3);if((a[u>>0]|0)!=33){if((c[p>>2]|0)!=0?((kO(zA(c[q>>2]|0,c[p>>2]|0)|0)|0)&255|0)!=0:0)z=15}else z=15;if((z|0)==15)a[(c[(c[q>>2]|0)+8>>2]|0)+119>>0]=3;c[n>>2]=1;y=c[n>>2]|0;i=g;return y|0}o=c[t>>2]|0;e=(c[s>>2]|0)+8|0;c[l>>2]=c[s>>2];c[l+4>>2]=e;c[l+8>>2]=u;e=(l3(o,139594,l)|0)>=2;o=c[q>>2]|0;if(!e){e=wB(o)|0;f=c[t>>2]|0;c[j>>2]=e;c[j+4>>2]=f;$z(1,125561,j)|0;break}a[(c[o+8>>2]|0)+119>>0]=1;b:do if(+h[4246]>0.0){c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[13799]|0))break b;h[(c[s>>2]|0)+(c[x>>2]<<3)>>3]=+h[(c[s>>2]|0)+(c[x>>2]<<3)>>3]/+h[4246];c[x>>2]=(c[x>>2]|0)+1}}while(0);do if((c[13799]|0)>2){if(((c[13848]|0)!=0?(o=zA(c[q>>2]|0,c[13848]|0)|0,c[t>>2]=o,(o|0)!=0):0)?(o=c[t>>2]|0,c[k>>2]=v,(l3(o,139001,k)|0)==1):0){A=+h[v>>3];if(+h[4246]>0.0)h[(c[s>>2]|0)+16>>3]=A/+h[4246];else h[(c[s>>2]|0)+16>>3]=A;Rm(c[q>>2]|0,c[r>>2]|0,3);break}Sm(c[q>>2]|0,c[r>>2]|0)}while(0);if((a[u>>0]|0)!=33){if((c[p>>2]|0)!=0?((kO(zA(c[q>>2]|0,c[p>>2]|0)|0)|0)&255|0)!=0:0)z=34}else z=34;if((z|0)==34)a[(c[(c[q>>2]|0)+8>>2]|0)+119>>0]=3;c[n>>2]=1;y=c[n>>2]|0;i=g;return y|0}while(0);c[n>>2]=0;y=c[n>>2]|0;i=g;return y|0}function sl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){g=c[d>>2]|0;if(!(c[e>>2]|0))break;c[f>>2]=OA(g,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;TO(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}UO(c[e>>2]|0);c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}xl(g);i=b;return}function tl(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=i;i=i+96|0;g=f+32|0;j=f+80|0;k=f+76|0;l=f+72|0;m=f+68|0;n=f+64|0;o=f+60|0;p=f+56|0;q=f+52|0;r=f+48|0;s=f+44|0;t=f;u=f+40|0;v=f+84|0;c[k>>2]=b;c[l>>2]=e;c[p>>2]=qA(c[k>>2]|0,0,140260,0)|0;c[q>>2]=qA(c[k>>2]|0,0,140294,0)|0;c[r>>2]=0;if(!(c[q>>2]|0))c[q>>2]=qA(c[k>>2]|0,0,140294,178518)|0;Pm(c[k>>2]|0)|0;c[m>>2]=0;while(1){e=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+152>>2]|0)+(c[m>>2]<<2)>>2]|0;c[n>>2]=e;if(!e)break;if((d[(c[(c[n>>2]|0)+8>>2]|0)+119>>0]|0|0)<=0?(P3(wB(c[n>>2]|0)|0,145613,7)|0)!=0:0){w=7;break}if(c[(c[(c[n>>2]|0)+8>>2]|0)+108>>2]|0)yl(c[n>>2]|0,c[(c[(c[n>>2]|0)+8>>2]|0)+108>>2]|0,140256);c[m>>2]=(c[m>>2]|0)+1}if((w|0)==7){w=wB(c[n>>2]|0)|0;n=wB(c[k>>2]|0)|0;c[g>>2]=w;c[g+4>>2]=n;$z(1,125605,g)|0;c[j>>2]=-1;x=c[j>>2]|0;i=f;return x|0}zl(c[k>>2]|0,c[p>>2]|0,c[q>>2]|0);c[o>>2]=Al(c[k>>2]|0)|0;if(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+88>>2]|0){c[s>>2]=1;c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+84>>2]=0}else c[s>>2]=0;if(!((c[l>>2]|0)!=0&(c[13795]|0)==1^1|(c[s>>2]|0)!=0))c[r>>2]=fq(c[k>>2]|0)|0;if((c[r>>2]|0)!=0?(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)a[(c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]=0;BO(c[k>>2]|0);if(c[s>>2]|0){q=(c[(c[k>>2]|0)+8>>2]|0)+16|0;EH(t,c[k>>2]|0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];c[q+16>>2]=c[t+16>>2];c[q+20>>2]=c[t+20>>2];c[q+24>>2]=c[t+24>>2];c[q+28>>2]=c[t+28>>2]}a:do if(c[l>>2]|0){a[v>>0]=fm(c[k>>2]|0)|0;if((c[o>>2]|0)!=0?(d[v>>0]|0|0)!=0|(c[r>>2]|0)!=0:0){Bl(c[k>>2]|0);c[o>>2]=0}if((c[o>>2]|0)!=2){em(c[k>>2]|0,0);break}else{c[13800]=1;break}}else{c[13800]=1;c[u>>2]=$B(c[k>>2]|0)|0;while(1){if(!(c[u>>2]|0))break a;h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]=+h[c[(c[(c[u>>2]|0)+8>>2]|0)+132>>2]>>3]*72.0;h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]=+h[(c[(c[(c[u>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]*72.0;c[u>>2]=aC(c[k>>2]|0,c[u>>2]|0)|0}}while(0);c[j>>2]=c[s>>2];x=c[j>>2]|0;i=f;return x|0}function ul(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+80|0;h=g+8|0;j=g;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+40|0;p=g+20|0;q=g+16|0;r=g+12|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[p>>2]=yA(c[l>>2]|0,125642)|0;c[q>>2]=c[m>>2];if((c[p>>2]|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){f=(m1(d[c[p>>2]>>0]|0)|0)!=0;e=c[p>>2]|0;do if(f){if(!(P3(e,125648,4)|0)){c[q>>2]=0;c[p>>2]=(c[p>>2]|0)+4;break}if(!(P3(c[p>>2]|0,143973,7)|0)){c[q>>2]=1;c[p>>2]=(c[p>>2]|0)+7;break}if(P3(c[p>>2]|0,125653,6)|0){c[q>>2]=c[m>>2];break}else{c[q>>2]=2;c[p>>2]=(c[p>>2]|0)+6;break}}else if(p1(d[e>>0]|0)|0)c[q>>2]=2;while(0);if((c[q>>2]|0)==2){if(!((p1(d[c[p>>2]>>0]|0)|0)!=0?(e=c[p>>2]|0,c[j>>2]=r,(l3(e,137605,j)|0)>=1):0)){j=_3()|0;c[r>>2]=j^(sb(0)|0);c[h>>2]=c[r>>2];k3(o,137605,h)|0;AA(c[l>>2]|0,125642,o)|0}c[c[n>>2]>>2]=c[r>>2]}c[k>>2]=c[q>>2];s=c[k>>2]|0;i=g;return s|0}c[k>>2]=c[m>>2];s=c[k>>2]|0;i=g;return s|0}function vl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=1;c[k>>2]=ul(c[f>>2]|0,c[h>>2]|0,j)|0;if((c[12716]|0)!=0&(c[k>>2]|0)!=2)$z(0,125660,e)|0;if((c[k>>2]|0)!=1){l=c[j>>2]|0;v2(l);m=c[k>>2]|0;i=e;return m|0}Cl(c[f>>2]|0,c[g>>2]|0);l=c[j>>2]|0;v2(l);m=c[k>>2]|0;i=e;return m|0}function wl(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+128|0;e=d+32|0;f=d+108|0;g=d+104|0;j=d+100|0;k=d+96|0;l=d+64|0;m=d+8|0;n=d;o=d+56|0;p=d+52|0;q=d+48|0;r=d+44|0;s=d+40|0;t=d+112|0;u=d+36|0;c[f>>2]=b;h[n>>3]=+h[4246];do if(c[13795]|0){h[4246]=72.0;Dl(c[f>>2]|0);El(c[f>>2]|0);c[o>>2]=tl(c[f>>2]|0,1)|0;if((c[o>>2]|0)>=0){lL(c[f>>2]|0,0);break}$z(3,125708,e)|0;i=d;return}else{h[4246]=+gO(c[f>>2]|0);Dl(c[f>>2]|0);c[g>>2]=Fl(c[f>>2]|0)|0;cq(c[f>>2]|0,m,0)|0;c[j>>2]=Gl(c[f>>2]|0)|0;c[k>>2]=IG(c[f>>2]|0,0,l)|0;c[12717]=JG(c[f>>2]|0,-1,8)|0;b=(c[12717]|0)<0;if(c[k>>2]|0){if(b)c[12717]=8}else{if(b&(c[g>>2]|0)!=0)c[12717]=8;c[l+16>>2]=2}b=c[f>>2]|0;if((c[12717]|0)>=0){c[q>>2]=eG(b,r,c[12718]|0,t)|0;if((c[r>>2]|0)>1){c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;c[p>>2]=c[(c[q>>2]|0)+(c[s>>2]<<2)>>2];iG(c[p>>2]|0)|0;Hl(c[f>>2]|0,c[p>>2]|0,c[g>>2]|0,c[j>>2]|0,m);dq(c[p>>2]|0,m)|0;QO(c[p>>2]|0,2);Il(c[p>>2]|0);c[s>>2]=(c[s>>2]|0)+1}if(a[t>>0]|0){c[u>>2]=bK(c[r>>2]|0)|0;a[c[u>>2]>>0]=1}else c[u>>2]=0;c[l+8>>2]=c[12717];c[l+20>>2]=c[u>>2];c[l+12>>2]=1;EG(c[r>>2]|0,c[q>>2]|0,c[f>>2]|0,l)|0;if(c[u>>2]|0)O4(c[u>>2]|0)}else{Hl(c[f>>2]|0,c[f>>2]|0,c[g>>2]|0,c[j>>2]|0,m);dq(c[f>>2]|0,m)|0;Il(c[f>>2]|0)}BO(c[f>>2]|0);El(c[f>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[r>>2]|0))break;c[p>>2]=c[(c[q>>2]|0)+(c[s>>2]<<2)>>2];Qm(c[p>>2]|0);NC(c[p>>2]|0,175049)|0;pC(c[f>>2]|0,c[p>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}O4(c[q>>2]|0)}else{Hl(b,c[f>>2]|0,c[g>>2]|0,c[j>>2]|0,m);dq(c[f>>2]|0,m)|0;El(c[f>>2]|0);Il(c[f>>2]|0)}lL(c[f>>2]|0,0)}while(0);h[4246]=+h[n>>3];i=d;return}function xl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if((c[13795]|0)!=0|(c[12717]|0)<0)Qm(c[d>>2]|0);a=c[d>>2]|0;if((a|0)==(rC(c[d>>2]|0)|0)){i=b;return}PC(c[d>>2]|0,0,175049);i=b;return}function yl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+64|0;g=f+32|0;j=f+52|0;k=f+48|0;l=f+44|0;m=f+24|0;n=f+16|0;o=f+40|0;p=f;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[o>>2]=yA(c[j>>2]|0,c[l>>2]|0)|0;if(!(c[o>>2]|0)){i=f;return}l=c[o>>2]|0;c[g>>2]=m;c[g+4>>2]=n;if((l3(l,143965,g)|0)!=2){i=f;return}g=(c[k>>2]|0)+56|0;Wl(p,+h[m>>3],+h[n>>3]);c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];a[(c[k>>2]|0)+81>>0]=1;i=f;return}function zl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;g=f+32|0;j=f+56|0;k=f+52|0;l=f+48|0;m=f+44|0;n=f+40|0;o=f+24|0;p=f+16|0;q=f;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if(((c[k>>2]|0)!=0?(c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0)!=0:0)?(c[n>>2]=zA(c[j>>2]|0,c[k>>2]|0)|0,e=c[n>>2]|0,c[g>>2]=o,c[g+4>>2]=p,(l3(e,143965,g)|0)==2):0){g=(c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0)+56|0;Wl(q,+h[o>>3],+h[p>>3]);c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];a[(c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2]|0)+81>>0]=1}if(!(c[l>>2]|0)){i=f;return}c[m>>2]=GD(c[j>>2]|0)|0;while(1){if(!(c[m>>2]|0))break;Xl(c[m>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0);c[m>>2]=HD(c[m>>2]|0)|0}i=f;return}function Al(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;i=i+32|0;d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;j=b;c[e>>2]=a;c[h>>2]=0;if(!(lB(c[e>>2]|0)|0)){c[d>>2]=2;k=c[d>>2]|0;i=b;return k|0}c[j>>2]=qA(c[e>>2]|0,2,140246,0)|0;if((c[j>>2]|0)==0|(c[13795]|0)<2){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;c[g>>2]=OA(c[e>>2]|0,c[f>>2]|0)|0;while(1){if(!(c[g>>2]|0))break;if(Ul(c[j>>2]|0,c[g>>2]|0)|0)c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=QA(c[e>>2]|0,c[g>>2]|0)|0}c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}if(!(c[h>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}f=c[h>>2]|0;if((f|0)==(lB(c[e>>2]|0)|0)){c[d>>2]=2;k=c[d>>2]|0;i=b;return k|0}else{c[d>>2]=1;k=c[d>>2]|0;i=b;return k|0}return 0}function Bl(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;SO(c[f>>2]|0);UJ(c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2]|0);UJ(c[(c[(c[f>>2]|0)+8>>2]|0)+108>>2]|0);UJ(c[(c[(c[f>>2]|0)+8>>2]|0)+100>>2]|0);UJ(c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function Cl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0.0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+8|0;k=e;l=e+16|0;c[f>>2]=b;c[g>>2]=d;h[j>>3]=0.0;h[k>>3]=6.283185307179586/+(c[g>>2]|0);c[l>>2]=$B(c[f>>2]|0)|0;while(1){if(!(c[l>>2]|0))break;m=+(c[g>>2]|0)*1.0*+Q(+(+h[j>>3]));h[c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]>>3]=m;m=+(c[g>>2]|0)*1.0*+R(+(+h[j>>3]));h[(c[(c[(c[l>>2]|0)+8>>2]|0)+132>>2]|0)+8>>3]=m;a[(c[(c[l>>2]|0)+8>>2]|0)+119>>0]=1;h[j>>3]=+h[j>>3]+ +h[k>>3];if((c[13799]|0)>2)Sm(c[l>>2]|0,c[g>>2]|0);c[l>>2]=aC(c[f>>2]|0,c[l>>2]|0)|0}i=e;return}function Dl(a){a=a|0;var d=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+16|0;f=d+4|0;g=d;c[f>>2]=a;QO(c[f>>2]|0,2);a=c[f>>2]|0;c[g>>2]=eO(a,qA(c[f>>2]|0,0,129471,0)|0,2,2)|0;a=c[f>>2]|0;h=qA(c[f>>2]|0,0,129477,0)|0;j=(eO(a,h,c[g>>2]|0,2)|0)&65535;b[(c[(rC(c[f>>2]|0)|0)+8>>2]|0)+176>>1]=j;if((e[(c[(c[(c[f>>2]|0)+48>>2]|0)+8>>2]|0)+176>>1]|0|0)<10)k=e[(c[(c[(c[f>>2]|0)+48>>2]|0)+8>>2]|0)+176>>1]|0;else k=10;j=k&65535;b[(c[(c[(c[f>>2]|0)+48>>2]|0)+8>>2]|0)+176>>1]=j;c[13799]=j&65535;b[(c[(c[(c[f>>2]|0)+48>>2]|0)+8>>2]|0)+178>>1]=(c[g>>2]|0)<(c[13799]|0)?c[g>>2]|0:c[13799]|0;Sl(c[f>>2]|0);i=d;return}function El(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+1040|0;d=b;e=b+12|0;f=b+8|0;g=b+16|0;c[e>>2]=a;if(!((c[13799]|0)>=3&(c[13848]|0)!=0)){i=b;return}c[f>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;h[d>>3]=+h[(c[(c[(c[f>>2]|0)+8>>2]|0)+132>>2]|0)+16>>3]*72.0;k3(g,139001,d)|0;BA(c[f>>2]|0,c[13848]|0,g)|0;c[f>>2]=aC(c[e>>2]|0,c[f>>2]|0)|0}i=b;return}function Fl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;c[f>>2]=b;c[h>>2]=1;c[g>>2]=yA(c[f>>2]|0,126421)|0;do if((c[g>>2]|0)!=0?(a[c[g>>2]>>0]|0)!=0:0){if((a[c[g>>2]>>0]|0)==(a[126426]|0)?(J3(c[g>>2]|0,126426)|0)==0:0){c[h>>2]=0;break}if((a[c[g>>2]>>0]|0)==(a[126429]|0)?(J3(c[g>>2]|0,126429)|0)==0:0){c[h>>2]=1;break}if((a[c[g>>2]>>0]|0)==(a[126435]|0)?(J3(c[g>>2]|0,126435)|0)==0:0){c[h>>2]=2;break}b=c[g>>2]|0;j=wB(c[f>>2]|0)|0;c[e>>2]=b;c[e+4>>2]=j;$z(0,126440,e)|0}while(0);i=d;return c[h>>2]|0}function Gl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+48|0;e=d+16|0;f=d+8|0;g=d;h=d+32|0;j=d+28|0;k=d+24|0;l=d+36|0;c[j>>2]=b;c[k>>2]=yA(c[j>>2]|0,126204)|0;if((c[k>>2]|0)!=0?(b=a[c[k>>2]>>0]|0,a[l>>0]=b,b<<24>>24!=0):0){if(((a[l>>0]|0)==99?(a[c[k>>2]>>0]|0)==(a[126210]|0):0)?(J3(c[k>>2]|0,126210)|0)==0:0){c[h>>2]=1;m=c[h>>2]|0;i=d;return m|0}if((a[l>>0]|0)==115){if((a[c[k>>2]>>0]|0)==(a[126218]|0)?(J3(c[k>>2]|0,126218)|0)==0:0){c[h>>2]=2;m=c[h>>2]|0;i=d;return m|0}if((a[c[k>>2]>>0]|0)==(a[126225]|0)?(J3(c[k>>2]|0,126225)|0)==0:0){c[h>>2]=0;m=c[h>>2]|0;i=d;return m|0}}if(((a[l>>0]|0)==109?(a[c[k>>2]>>0]|0)==(a[126235]|0):0)?(J3(c[k>>2]|0,126235)|0)==0:0)if(qA(c[j>>2]|0,2,129937,0)|0){c[h>>2]=3;m=c[h>>2]|0;i=d;return m|0}else{c[g>>2]=wB(c[j>>2]|0)|0;$z(0,126239,g)|0;$z(3,126302,f)|0;c[h>>2]=0;m=c[h>>2]|0;i=d;return m|0}f=c[k>>2]|0;k=wB(c[j>>2]|0)|0;c[e>>2]=f;c[e+4>>2]=k;$z(0,126359,e)|0;c[h>>2]=0;m=c[h>>2]|0;i=d;return m|0}c[h>>2]=0;m=c[h>>2]|0;i=d;return m|0}function Hl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;f=yA(c[j>>2]|0,129092)|0;c[o>>2]=f;do if(!f)if((c[k>>2]|0)==1){c[13798]=200;break}else{c[13798]=(kB(c[j>>2]|0)|0)*100;break}else c[13798]=u3(c[o>>2]|0)|0;while(0);c[n>>2]=Om(c[j>>2]|0,c[k>>2]|0)|0;if((c[n>>2]|0)<2|(c[13798]|0)<0){i=g;return}if(c[k>>2]|0){Jl(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[k>>2]|0,c[l>>2]|0,c[13799]|0,c[13798]|0,c[m>>2]|0);i=g;return}else{Kl(c[j>>2]|0,c[n>>2]|0,c[l>>2]|0);i=g;return}}function Il(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;BO(c[d>>2]|0);em(c[d>>2]|0,1);i=b;return}function Jl(b,d,e,f,g,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0,N=0,O=0;m=i;i=i+144|0;n=m+64|0;o=m+48|0;p=m+40|0;q=m+32|0;r=m+8|0;s=m+136|0;t=m+132|0;u=m+128|0;v=m+124|0;w=m+120|0;x=m+108|0;y=m+104|0;z=m+100|0;A=m+96|0;B=m+92|0;C=m+88|0;D=m+84|0;E=m+80|0;F=m+76|0;G=m;H=m+72|0;I=m+68|0;c[m+140>>2]=b;c[s>>2]=d;c[t>>2]=e;c[u>>2]=f;c[v>>2]=g;c[w>>2]=j;c[m+116>>2]=k;c[m+112>>2]=l;c[A>>2]=0;c[E>>2]=vl(c[s>>2]|0,c[t>>2]|0,(c[u>>2]|0)==2?0:2)|0;c[F>>2]=Rl(c[s>>2]|0)|0;if(!(c[E>>2]|0))c[F>>2]=c[F>>2]|4;c[x>>2]=cK(c[w>>2]<<2)|0;l=cK((_(c[t>>2]|0,c[w>>2]|0)|0)<<3)|0;c[c[x>>2]>>2]=l;c[z>>2]=1;while(1){if((c[z>>2]|0)>=(c[13799]|0))break;l=(c[c[x>>2]>>2]|0)+((_(c[z>>2]|0,c[t>>2]|0)|0)<<3)|0;c[(c[x>>2]|0)+(c[z>>2]<<2)>>2]=l;c[z>>2]=(c[z>>2]|0)+1}if(a[138998]|0){z=c[24742]|0;l=(c[E>>2]|0)==0&1;E=c[F>>2]&3;w=c[13798]|0;J=+h[4247];c[r>>2]=c[v>>2];c[r+4>>2]=l;c[r+8>>2]=E;c[r+12>>2]=w;h[r+16>>3]=J;Y2(z,126007,r)|0;Y2(c[24742]|0,126064,q)|0;_N();Y2(c[24742]|0,126080,p)|0}c[C>>2]=Nl(c[s>>2]|0,c[t>>2]|0,y,c[u>>2]|0,c[v>>2]|0,D)|0;if(a[138998]|0){p=c[24742]|0;q=c[t>>2]|0;J=+$N();c[o>>2]=q;h[o+8>>3]=J;Y2(p,126094,o)|0}if((c[u>>2]|0)!=1){o=c[s>>2]|0;h[G>>3]=+fO(o,qA(c[s>>2]|0,0,126113,0)|0,0.0,-1797693134862315708145274.0e284);if((c[u>>2]|0)==2)c[A>>2]=Uq(c[C>>2]|0,c[t>>2]|0,c[y>>2]|0,c[x>>2]|0,c[D>>2]|0,c[13799]|0,c[F>>2]|0,c[v>>2]|0,c[13798]|0,+h[G>>3])|0}else c[A>>2]=Fm(c[C>>2]|0,c[t>>2]|0,c[y>>2]|0,c[x>>2]|0,c[D>>2]|0,c[13799]|0,c[F>>2]|0,c[v>>2]|0,c[13798]|0)|0;if((c[A>>2]|0)<0){$z(3,126123,n)|0;K=c[C>>2]|0;tr(K);L=c[x>>2]|0;M=c[L>>2]|0;O4(M);N=c[x>>2]|0;O4(N);O=c[D>>2]|0;O4(O);i=m;return}c[B>>2]=$B(c[s>>2]|0)|0;while(1){if(!(c[B>>2]|0))break;c[H>>2]=c[(c[(c[B>>2]|0)+8>>2]|0)+120>>2];c[I>>2]=0;while(1){if((c[I>>2]|0)>=(c[13799]|0))break;h[(c[(c[(c[B>>2]|0)+8>>2]|0)+132>>2]|0)+(c[I>>2]<<3)>>3]=+h[(c[(c[x>>2]|0)+(c[I>>2]<<2)>>2]|0)+(c[H>>2]<<3)>>3];c[I>>2]=(c[I>>2]|0)+1}c[B>>2]=aC(c[s>>2]|0,c[B>>2]|0)|0}K=c[C>>2]|0;tr(K);L=c[x>>2]|0;M=c[L>>2]|0;O4(M);N=c[x>>2]|0;O4(N);O=c[D>>2]|0;O4(O);i=m;return}function Kl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;f=i;i=i+64|0;g=f+32|0;j=f+24|0;k=f+16|0;l=f+8|0;m=f;n=f+56|0;o=f+52|0;p=f+48|0;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;do if((c[p>>2]|0)!=2)if((c[p>>2]|0)==1){if(Qq(c[n>>2]|0,c[o>>2]|0)|0)break;c[m>>2]=wB(c[n>>2]|0)|0;$z(0,125736,m)|0;$z(3,130772,l)|0;$z(3,125788,k)|0;$z(3,125860,j)|0;dn(c[n>>2]|0,c[o>>2]|0);break}else{e=(c[p>>2]|0)==3;dn(c[n>>2]|0,c[o>>2]|0);if(!e)break;Ml(c[n>>2]|0,c[o>>2]|0);break}else Ll(c[n>>2]|0,c[o>>2]|0);while(0);Um(c[n>>2]|0,c[o>>2]|0);Vm(c[n>>2]|0,c[o>>2]|0);if(!(a[138998]|0)){q=c[n>>2]|0;r=c[o>>2]|0;Wm(q,r);i=f;return}j=c[24742]|0;k=c[13798]|0;s=+h[4247];c[g>>2]=c[p>>2];c[g+4>>2]=k;h[g+8>>3]=s;Y2(j,125898,g)|0;_N();q=c[n>>2]|0;r=c[o>>2]|0;Wm(q,r);i=f;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0;d=i;i=i+32|0;e=d+24|0;f=d+20|0;g=d+16|0;j=d+12|0;k=d+4|0;l=d;c[e>>2]=a;c[f>>2]=b;c[l>>2]=Nl(c[e>>2]|0,c[f>>2]|0,d+8|0,0,2,0)|0;c[k>>2]=vs(c[l>>2]|0,c[f>>2]|0)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[f>>2]|0))break;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<3)>>3]=+(c[(c[(c[k>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[j>>2]<<2)>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+1}O4(c[c[k>>2]>>2]|0);O4(c[k>>2]|0);tr(c[l>>2]|0);i=d;return}function Ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0.0;d=i;i=i+32|0;e=d+20|0;f=d+12|0;g=d+8|0;j=d+4|0;k=d;c[e>>2]=a;c[d+16>>2]=b;c[j>>2]=$B(c[e>>2]|0)|0;while(1){if(!(c[j>>2]|0))break;c[k>>2]=OA(c[e>>2]|0,c[j>>2]|0)|0;while(1){if(!(c[k>>2]|0))break;b=c[k>>2]|0;c[f>>2]=(c[c[((c[c[k>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]>>2]|0)>>>4;b=c[k>>2]|0;c[g>>2]=(c[c[((c[c[k>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]>>2]|0)>>>4;if((c[f>>2]|0)!=(c[g>>2]|0)){l=+h[(c[(c[k>>2]|0)+8>>2]|0)+136>>3];h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[g>>2]<<2)>>2]|0)+(c[f>>2]<<3)>>3]=l;h[(c[(c[(c[(c[e>>2]|0)+8>>2]|0)+160>>2]|0)+(c[f>>2]<<2)>>2]|0)+(c[g>>2]<<3)>>3]=l}c[k>>2]=QA(c[e>>2]|0,c[k>>2]|0)|0}c[j>>2]=aC(c[e>>2]|0,c[j>>2]|0)|0}i=d;return}function Nl(a,b,d,e,f,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0,P=0.0,Q=0,R=0;k=i;i=i+112|0;l=k+104|0;m=k+100|0;n=k+96|0;o=k+92|0;p=k+88|0;q=k+84|0;r=k+80|0;s=k+76|0;t=k+72|0;u=k+68|0;v=k+64|0;w=k+60|0;x=k+56|0;y=k+52|0;z=k+48|0;A=k+44|0;B=k+40|0;C=k+36|0;D=k+32|0;E=k+28|0;F=k+24|0;G=k+20|0;H=k+16|0;I=k+12|0;J=k+8|0;K=k+4|0;L=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=j;c[t>>2]=lB(c[l>>2]|0)|0;c[v>>2]=0;c[y>>2]=0;c[z>>2]=0;c[D>>2]=bL()|0;if((c[p>>2]|0)==2){c[A>>2]=0;c[B>>2]=0}else{c[A>>2]=qA(c[l>>2]|0,2,129937,0)|0;c[B>>2]=(c[13851]|0)!=0&1}if((c[o>>2]|0)==2|(c[o>>2]|0)==3)c[C>>2]=1;else c[C>>2]=0;c[r>>2]=cK((c[m>>2]|0)*20|0)|0;c[s>>2]=cK(c[m>>2]<<2)|0;c[u>>2]=cK((c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;if((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)c[v>>2]=cK((c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;if(c[B>>2]|0)c[y>>2]=cK((c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;if(c[C>>2]|0)c[z>>2]=cK((c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;c[E>>2]=0;c[t>>2]=0;c[w>>2]=$B(c[l>>2]|0)|0;while(1){if(!(c[w>>2]|0))break;c[H>>2]=1;cL(c[D>>2]|0);if((c[(c[(c[w>>2]|0)+8>>2]|0)+120>>2]|0)!=(c[E>>2]|0)){M=16;break}c[(c[s>>2]|0)+(c[E>>2]<<2)>>2]=c[w>>2];p=c[u>>2]|0;c[u>>2]=p+4;c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]=p;if((c[A>>2]|0)!=0|(c[C>>2]|0)!=0){p=c[v>>2]|0;c[v>>2]=p+4;c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]=p}else c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]=0;if(c[B>>2]|0){p=c[y>>2]|0;c[y>>2]=p+4;c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+12>>2]=p}else c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+12>>2]=0;if(c[C>>2]|0){p=c[z>>2]|0;c[z>>2]=p+4;c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+16>>2]=p}else c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+16>>2]=0;c[F>>2]=1;c[x>>2]=TA(c[l>>2]|0,c[w>>2]|0)|0;while(1){if(!(c[x>>2]|0))break;p=c[x>>2]|0;j=c[x>>2]|0;do if((c[((c[c[x>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0)!=(c[((c[c[x>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0)){c[G>>2]=Ol(c[D>>2]|0,c[x>>2]|0,c[H>>2]|0)|0;if((c[G>>2]|0)!=(c[H>>2]|0)){if(c[B>>2]|0){f=(c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+12>>2]|0)+(c[G>>2]<<2)|0;g[f>>2]=+g[f>>2]+ +h[(c[(c[x>>2]|0)+8>>2]|0)+128>>3]}if(!(c[A>>2]|0))break;c[I>>2]=~~+g[(c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0)+(c[G>>2]<<2)>>2];if(+h[(c[(c[x>>2]|0)+8>>2]|0)+136>>3]>+(c[I>>2]|0))N=+h[(c[(c[x>>2]|0)+8>>2]|0)+136>>3];else N=+(c[I>>2]|0);g[(c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]|0)+(c[G>>2]<<2)>>2]=N;break}f=c[x>>2]|0;e=c[c[x>>2]>>2]&3;if((c[((c[c[x>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)==(c[w>>2]|0)){f=c[x>>2]|0;O=c[((e|0)==2?f:f+-32|0)+28>>2]|0}else{f=c[x>>2]|0;O=c[((e|0)==3?f:f+32|0)+28>>2]|0}c[J>>2]=O;c[t>>2]=(c[t>>2]|0)+1;c[H>>2]=(c[H>>2]|0)+1;f=c[(c[(c[J>>2]|0)+8>>2]|0)+120>>2]|0;e=c[u>>2]|0;c[u>>2]=e+4;c[e>>2]=f;if(c[B>>2]|0){P=+h[(c[(c[x>>2]|0)+8>>2]|0)+128>>3];f=c[y>>2]|0;c[y>>2]=f+4;g[f>>2]=P}do if(c[A>>2]|0){P=+h[(c[(c[x>>2]|0)+8>>2]|0)+136>>3];f=c[v>>2]|0;c[v>>2]=f+4;g[f>>2]=P}else{if(!(c[C>>2]|0))break;f=c[v>>2]|0;c[v>>2]=f+4;g[f>>2]=1.0}while(0);a:do if(c[C>>2]|0){c[K>>2]=yA(c[x>>2]|0,139351)|0;do if(c[K>>2]|0){if(P3(c[K>>2]|0,173312,4)|0)break;f=c[z>>2]|0;c[z>>2]=f+4;g[f>>2]=0.0;break a}while(0);f=c[x>>2]|0;P=(c[w>>2]|0)==(c[((c[c[x>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0)?1.0:-1.0;f=c[z>>2]|0;c[z>>2]=f+4;g[f>>2]=P}while(0);c[F>>2]=(c[F>>2]|0)+1}while(0);c[x>>2]=UA(c[l>>2]|0,c[x>>2]|0,c[w>>2]|0)|0}c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)>>2]=c[F>>2];c[c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]>>2]=c[E>>2];c[E>>2]=(c[E>>2]|0)+1;c[w>>2]=aC(c[l>>2]|0,c[w>>2]|0)|0}if((M|0)==16)La(125937,125952,817,125964);if(c[C>>2]|0)Pl(c[r>>2]|0,c[m>>2]|0,c[o>>2]|0,c[s>>2]|0);c[t>>2]=(c[t>>2]|0)/2|0;o=c[t>>2]|0;b:do if((o|0)!=(lB(c[l>>2]|0)|0)){c[u>>2]=eK(c[(c[r>>2]|0)+4>>2]|0,(c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;if(c[A>>2]|0)c[v>>2]=eK(c[(c[r>>2]|0)+8>>2]|0,(c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;if(c[B>>2]|0)c[y>>2]=eK(c[(c[r>>2]|0)+12>>2]|0,(c[t>>2]<<1)+(c[m>>2]|0)<<2)|0;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[m>>2]|0))break b;c[L>>2]=c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)>>2];c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+4>>2]=c[u>>2];c[u>>2]=(c[u>>2]|0)+(c[L>>2]<<2);if(c[A>>2]|0){c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+8>>2]=c[v>>2];c[v>>2]=(c[v>>2]|0)+(c[L>>2]<<2)}if(c[B>>2]|0){c[(c[r>>2]|0)+((c[E>>2]|0)*20|0)+12>>2]=c[y>>2];c[y>>2]=(c[y>>2]|0)+(c[L>>2]<<2)}c[E>>2]=(c[E>>2]|0)+1}}while(0);c[c[n>>2]>>2]=c[t>>2];t=c[s>>2]|0;if(c[q>>2]|0){c[c[q>>2]>>2]=t;Q=c[D>>2]|0;dL(Q);R=c[r>>2]|0;i=k;return R|0}else{O4(t);Q=c[D>>2]|0;dL(Q);R=c[r>>2]|0;i=k;return R|0}return 0}function Ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=c[g>>2]|0;c[j>>2]=c[(c[(c[((c[c[g>>2]>>2]&3|0)==3?d:d+32|0)+28>>2]|0)+8>>2]|0)+120>>2];d=c[g>>2]|0;c[k>>2]=c[(c[(c[((c[c[g>>2]>>2]&3|0)==2?d:d+-32|0)+28>>2]|0)+8>>2]|0)+120>>2];if((c[j>>2]|0)<=(c[k>>2]|0)){m=c[f>>2]|0;n=c[j>>2]|0;o=c[k>>2]|0;p=c[h>>2]|0;q=eL(m,n,o,p)|0;i=e;return q|0}c[l>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[l>>2];m=c[f>>2]|0;n=c[j>>2]|0;o=c[k>>2]|0;p=c[h>>2]|0;q=eL(m,n,o,p)|0;i=e;return q|0}function Pl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;c[n>>2]=c[(c[l>>2]|0)+(c[m>>2]<<2)>>2];a[(c[(c[n>>2]|0)+8>>2]|0)+157>>0]=0;a[(c[(c[n>>2]|0)+8>>2]|0)+158>>0]=0;c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[j>>2]|0))break;if(!(a[(c[(c[(c[l>>2]|0)+(c[m>>2]<<2)>>2]|0)+8>>2]|0)+157>>0]|0))Ql(c[h>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>>2]|0);c[m>>2]=(c[m>>2]|0)+1}i=g;return}function Ql(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;i=i+48|0;k=j+40|0;l=j+36|0;m=j+32|0;n=j+28|0;o=j+24|0;p=j+20|0;q=j+16|0;r=j+12|0;s=j+8|0;t=j;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;h[t>>3]=(c[m>>2]|0)==3?-1.0:1.0;c[o>>2]=c[(c[n>>2]|0)+(c[l>>2]<<2)>>2];a[(c[(c[o>>2]|0)+8>>2]|0)+157>>0]=1;a[(c[(c[o>>2]|0)+8>>2]|0)+158>>0]=1;c[r>>2]=1;a:while(1){if((c[r>>2]|0)>=(c[(c[k>>2]|0)+((c[l>>2]|0)*20|0)>>2]|0)){u=15;break}do if(!(+g[(c[(c[k>>2]|0)+((c[l>>2]|0)*20|0)+16>>2]|0)+(c[r>>2]<<2)>>2]==1.0)){c[q>>2]=c[(c[(c[k>>2]|0)+((c[l>>2]|0)*20|0)+4>>2]|0)+(c[r>>2]<<2)>>2];c[p>>2]=c[(c[n>>2]|0)+(c[q>>2]<<2)>>2];if(!(a[(c[(c[p>>2]|0)+8>>2]|0)+158>>0]|0)){if(a[(c[(c[p>>2]|0)+8>>2]|0)+157>>0]|0)break;Ql(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[n>>2]|0);break}g[(c[(c[k>>2]|0)+((c[l>>2]|0)*20|0)+16>>2]|0)+(c[r>>2]<<2)>>2]=+h[t>>3];c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)>>2]|0))break;if((c[(c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)+4>>2]|0)+(c[s>>2]<<2)>>2]|0)==(c[l>>2]|0))break;c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)>=(c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)>>2]|0)){u=10;break a}g[(c[(c[k>>2]|0)+((c[q>>2]|0)*20|0)+16>>2]|0)+(c[s>>2]<<2)>>2]=-1.0}while(0);c[r>>2]=(c[r>>2]|0)+1}if((u|0)==10)La(125978,125952,719,125998);else if((u|0)==15){a[(c[(c[o>>2]|0)+8>>2]|0)+158>>0]=0;i=j;return}}function Rl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;e=b+8|0;f=b+4|0;c[e>>2]=a;a=c[e>>2]|0;c[f>>2]=eO(a,qA(c[e>>2]|0,0,126139,0)|0,2,0)|0;if(!((c[f>>2]|0)==0|(c[f>>2]|0)>2)){g=c[f>>2]|0;i=b;return g|0}c[d>>2]=126139;$z(0,126148,d)|0;c[f>>2]=2;g=c[f>>2]|0;i=b;return g|0}function Sl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[g>>2]=kB(c[d>>2]|0)|0;c[12716]=qA(c[d>>2]|0,1,140246,0)|0;c[h>>2]=qA(c[d>>2]|0,1,127690,0)|0;c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;ql(c[e>>2]|0);rl(c[12716]|0,c[h>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}c[e>>2]=$B(c[d>>2]|0)|0;while(1){if(!(c[e>>2]|0))break;c[f>>2]=OA(c[d>>2]|0,c[e>>2]|0)|0;while(1){if(!(c[f>>2]|0))break;Tl(c[f>>2]|0);c[f>>2]=QA(c[d>>2]|0,c[f>>2]|0)|0}c[e>>2]=aC(c[d>>2]|0,c[e>>2]|0)|0}i=b;return}function Tl(a){a=a|0;var b=0,d=0,e=0.0;b=i;i=i+16|0;d=b;c[d>>2]=a;MC(c[d>>2]|0,175319,176,1)|0;yO(c[d>>2]|0)|0;e=+fO(c[d>>2]|0,c[13851]|0,1.0,1.0);h[(c[(c[d>>2]|0)+8>>2]|0)+128>>3]=e;i=b;return} +function A$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;do if((c[k>>2]|0)!=(c[l>>2]|0)){c[n>>2]=c[k>>2];a:while(1){p=c[k>>2]|0;if((c[k>>2]|0)==(c[l>>2]|0)){q=26;break}switch(d[(c[j>>2]|0)+76+(d[p>>0]|0)>>0]|0|0){case 3:{q=9;break a;break}case 30:{q=12;break a;break}case 10:{q=15;break a;break}case 9:{q=18;break a;break}case 5:{c[k>>2]=(c[k>>2]|0)+2;continue a;break}case 6:{c[k>>2]=(c[k>>2]|0)+3;continue a;break}case 7:{c[k>>2]=(c[k>>2]|0)+4;continue a;break}default:{c[k>>2]=(c[k>>2]|0)+1;continue a}}}if((q|0)==9)if((c[k>>2]|0)==(c[n>>2]|0)){c[h>>2]=U$(c[j>>2]|0,(c[k>>2]|0)+1|0,c[l>>2]|0,c[m>>2]|0)|0;break}else{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=6;break}else if((q|0)==12)if((c[k>>2]|0)==(c[n>>2]|0)){c[o>>2]=V$(c[j>>2]|0,(c[k>>2]|0)+1|0,c[l>>2]|0,c[m>>2]|0)|0;c[h>>2]=(c[o>>2]|0)==22?0:c[o>>2]|0;break}else{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=6;break}else if((q|0)==15){f=c[k>>2]|0;if((c[k>>2]|0)==(c[n>>2]|0)){c[c[m>>2]>>2]=f+1;c[h>>2]=7;break}else{c[c[m>>2]>>2]=f;c[h>>2]=6;break}}else if((q|0)==18){f=c[k>>2]|0;if((c[k>>2]|0)!=(c[n>>2]|0)){c[c[m>>2]>>2]=f;c[h>>2]=6;break}c[k>>2]=f+1;if((c[k>>2]|0)==(c[l>>2]|0)){c[h>>2]=-3;break}if((d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0)==10)c[k>>2]=(c[k>>2]|0)+1;c[c[m>>2]>>2]=c[k>>2];c[h>>2]=7;break}else if((q|0)==26){c[c[m>>2]>>2]=p;c[h>>2]=6;break}}else c[h>>2]=-4;while(0);i=g;return c[h>>2]|0}function B$(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;a:while(1){switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0){case 7:{f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){m=4;break a}else m=5;break}case 6:{m=5;break}case 5:break;case 27:case 26:case 25:case 24:case 23:case 22:case 29:{f=c[l>>2]|0;c[l>>2]=f+1;e=a[f>>0]|0;f=c[k>>2]|0;c[k>>2]=f+1;if((e|0)!=(a[f>>0]|0)){m=12;break a}else continue a;break}default:{m=13;break a}}if((m|0)==5?(m=0,f=c[k>>2]|0,c[k>>2]=f+1,e=a[f>>0]|0,f=c[l>>2]|0,c[l>>2]=f+1,(e|0)!=(a[f>>0]|0)):0){m=6;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){m=8;break}f=c[k>>2]|0;c[k>>2]=f+1;e=a[f>>0]|0;f=c[l>>2]|0;c[l>>2]=f+1;if((e|0)!=(a[f>>0]|0)){m=10;break}}if((m|0)==4){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((m|0)==6){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((m|0)==8){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((m|0)==10){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((m|0)==12){c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((m|0)==13){if((a[c[k>>2]>>0]|0)==(a[c[l>>2]>>0]|0)){c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}switch(d[(c[j>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 27:case 26:case 25:case 24:case 23:case 22:case 29:case 7:case 6:case 5:{c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}default:{c[h>>2]=1;n=c[h>>2]|0;i=g;return n|0}}}return 0}function C$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+16|0;j=g+8|0;k=g+4|0;l=g;c[g+12>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;while(1){m=(c[j>>2]|0)==(c[k>>2]|0);if(!(a[c[l>>2]>>0]|0)){n=8;break}if(m){n=4;break}if((a[c[j>>2]>>0]|0)!=(a[c[l>>2]>>0]|0)){n=6;break}c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==4){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==6){c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}else if((n|0)==8){c[h>>2]=m&1;o=c[h>>2]|0;i=g;return o|0}return 0}function D$(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[g>>2];a:while(1)switch(d[(c[f>>2]|0)+76+(d[c[g>>2]>>0]|0)>>0]|0|0){case 5:{c[g>>2]=(c[g>>2]|0)+2;continue a;break}case 6:{c[g>>2]=(c[g>>2]|0)+3;continue a;break}case 7:{c[g>>2]=(c[g>>2]|0)+4;continue a;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{c[g>>2]=(c[g>>2]|0)+1;continue a;break}default:break a}i=e;return (c[g>>2]|0)-(c[h>>2]|0)|0}function E$(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=a;c[g>>2]=b;a:while(1){switch(d[(c[f>>2]|0)+76+(d[c[g>>2]>>0]|0)>>0]|0|0){case 21:case 9:case 10:break;default:break a}c[g>>2]=(c[g>>2]|0)+1}i=e;return c[g>>2]|0}function F$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=1;c[o>>2]=0;c[p>>2]=0;c[k>>2]=(c[k>>2]|0)+1;a:while(1){b:do switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0){case 5:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+1;break}case 6:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+2;break}case 7:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}c[k>>2]=(c[k>>2]|0)+3;break}case 24:case 22:case 29:{if(!(c[n>>2]|0)){if((c[o>>2]|0)<(c[l>>2]|0)){c[(c[m>>2]|0)+(c[o>>2]<<4)>>2]=c[k>>2];a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=1}c[n>>2]=1}break}case 12:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+1;c[n>>2]=2;c[p>>2]=12;break b}if((c[p>>2]|0)==12){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 13:{if((c[n>>2]|0)!=2){if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]=(c[k>>2]|0)+1;c[n>>2]=2;c[p>>2]=13;break b}if((c[p>>2]|0)==13){c[n>>2]=0;if((c[o>>2]|0)<(c[l>>2]|0))c[(c[m>>2]|0)+(c[o>>2]<<4)+8>>2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+1}break}case 3:{if((c[o>>2]|0)<(c[l>>2]|0))a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 21:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if(((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)?(a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]|0)!=0:0){if((((c[k>>2]|0)!=(c[(c[m>>2]|0)+(c[o>>2]<<4)+4>>2]|0)?(a[c[k>>2]>>0]|0)==32:0)?(a[(c[k>>2]|0)+1>>0]|0)!=32:0)?(d[(c[j>>2]|0)+76+(d[(c[k>>2]|0)+1>>0]|0)>>0]|0)!=(c[p>>2]|0):0)break b;a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0}break}case 10:case 9:{if((c[n>>2]|0)==1){c[n>>2]=0;break b}if((c[n>>2]|0)==2?(c[o>>2]|0)<(c[l>>2]|0):0)a[(c[m>>2]|0)+(c[o>>2]<<4)+12>>0]=0;break}case 17:case 11:{if((c[n>>2]|0)!=2)break a;break}default:{}}while(0);c[k>>2]=(c[k>>2]|0)+1}i=h;return c[o>>2]|0}function G$(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+32|0;f=e+20|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[e+16>>2]=b;c[g>>2]=d;c[h>>2]=0;c[g>>2]=(c[g>>2]|0)+2;a:do if((a[c[g>>2]>>0]|0)==120){c[g>>2]=(c[g>>2]|0)+1;while(1){if(!((a[c[g>>2]>>0]|0)==59^1))break a;c[j>>2]=a[c[g>>2]>>0];switch(c[j>>2]|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{c[h>>2]=c[h>>2]<<4;c[h>>2]=c[h>>2]|(c[j>>2]|0)-48;break}case 70:case 69:case 68:case 67:case 66:case 65:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-65));break}case 102:case 101:case 100:case 99:case 98:case 97:{c[h>>2]=c[h>>2]<<4;c[h>>2]=(c[h>>2]|0)+(10+((c[j>>2]|0)-97));break}default:{}}if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+1}c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}else{while(1){if(!((a[c[g>>2]>>0]|0)==59^1))break a;c[k>>2]=a[c[g>>2]>>0];c[h>>2]=(c[h>>2]|0)*10;c[h>>2]=(c[h>>2]|0)+((c[k>>2]|0)-48);if((c[h>>2]|0)>=1114112)break;c[g>>2]=(c[g>>2]|0)+1}c[f>>2]=-1;l=c[f>>2]|0;i=e;return l|0}while(0);c[f>>2]=YZ(c[h>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}function H$(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f+12|0;h=f+4|0;j=f;c[f+8>>2]=b;c[h>>2]=d;c[j>>2]=e;a:do switch(((c[j>>2]|0)-(c[h>>2]|0)|0)/1|0|0){case 2:{if((a[(c[h>>2]|0)+1>>0]|0)==116)switch(a[c[h>>2]>>0]|0){case 108:{c[g>>2]=60;k=c[g>>2]|0;i=f;return k|0}case 103:{c[g>>2]=62;k=c[g>>2]|0;i=f;return k|0}default:break a}break}case 3:{if(((a[c[h>>2]>>0]|0)==97?(c[h>>2]=(c[h>>2]|0)+1,(a[c[h>>2]>>0]|0)==109):0)?(c[h>>2]=(c[h>>2]|0)+1,(a[c[h>>2]>>0]|0)==112):0){c[g>>2]=38;k=c[g>>2]|0;i=f;return k|0}break}case 4:{switch(a[c[h>>2]>>0]|0){case 113:{c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=117)break a;c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=116)break a;c[g>>2]=34;k=c[g>>2]|0;i=f;return k|0}case 97:{c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=112)break a;c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=111)break a;c[h>>2]=(c[h>>2]|0)+1;if((a[c[h>>2]>>0]|0)!=115)break a;c[g>>2]=39;k=c[g>>2]|0;i=f;return k|0}default:break a}break}default:{}}while(0);c[g>>2]=0;k=c[g>>2]|0;i=f;return k|0}function I$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g+12|0;j=g+8|0;k=g+4|0;l=g;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;switch(d[(c[h>>2]|0)+76+(d[c[j>>2]>>0]|0)>>0]|0|0){case 5:{c[j>>2]=(c[j>>2]|0)+2;break}case 6:{c[j>>2]=(c[j>>2]|0)+3;break}case 7:{c[j>>2]=(c[j>>2]|0)+4;break}case 10:{c[(c[l>>2]|0)+4>>2]=-1;f=c[l>>2]|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;break}case 9:{f=c[l>>2]|0;c[f>>2]=(c[f>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;if((c[j>>2]|0)!=(c[k>>2]|0)?(d[(c[h>>2]|0)+76+(d[c[j>>2]>>0]|0)>>0]|0|0)==10:0)c[j>>2]=(c[j>>2]|0)+1;c[(c[l>>2]|0)+4>>2]=-1;break}default:c[j>>2]=(c[j>>2]|0)+1}f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}i=g;return}function J$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){o=10;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:break;case 21:{if((a[c[l>>2]>>0]|0)==9){o=5;break a}break}case 22:case 26:{if(a[c[l>>2]>>0]&-128)o=7;break}default:o=7}if((o|0)==7){o=0;switch(a[c[l>>2]>>0]|0){case 64:case 36:break;default:{o=8;break a}}}c[l>>2]=(c[l>>2]|0)+1}if((o|0)==5){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}else if((o|0)==8){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;p=c[j>>2]|0;i=h;return p|0}else if((o|0)==10){c[j>>2]=1;p=c[j>>2]|0;i=h;return p|0}return 0}function K$(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+32|0;k=j+20|0;l=j+16|0;m=j+12|0;n=j+8|0;o=j+4|0;p=j;c[j+24>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;a:do if(((c[l>>2]|0)-(c[c[k>>2]>>2]|0)|0)>((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)){c[l>>2]=(c[c[k>>2]>>2]|0)+((c[n>>2]|0)-(c[c[m>>2]>>2]|0));while(1){if((c[l>>2]|0)>>>0<=(c[c[k>>2]>>2]|0)>>>0)break a;if(((d[(c[l>>2]|0)+-1>>0]|0)&192|0)!=128)break a;c[l>>2]=(c[l>>2]|0)+-1}}while(0);c[o>>2]=c[c[m>>2]>>2];c[p>>2]=c[c[k>>2]>>2];while(1){q=c[p>>2]|0;if((c[p>>2]|0)==(c[l>>2]|0))break;a[c[o>>2]>>0]=a[q>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+1}c[c[k>>2]>>2]=q;c[c[m>>2]>>2]=c[o>>2];i=j;return}function L$(e,f,g,h,j){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+32|0;l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=c[c[o>>2]>>2];c[r>>2]=c[c[m>>2]>>2];a:while(1){if((c[r>>2]|0)==(c[n>>2]|0)){t=10;break}if((c[q>>2]|0)==(c[p>>2]|0)){t=10;break}switch(d[(c[l>>2]|0)+76+(d[c[r>>2]>>0]|0)>>0]|0){case 5:{j=((a[c[r>>2]>>0]&31)<<6|a[(c[r>>2]|0)+1>>0]&63)&65535;h=c[q>>2]|0;c[q>>2]=h+2;b[h>>1]=j;c[r>>2]=(c[r>>2]|0)+2;continue a;break}case 6:{j=((a[c[r>>2]>>0]&15)<<12|(a[(c[r>>2]|0)+1>>0]&63)<<6|a[(c[r>>2]|0)+2>>0]&63)&65535;h=c[q>>2]|0;c[q>>2]=h+2;b[h>>1]=j;c[r>>2]=(c[r>>2]|0)+3;continue a;break}case 7:{if(((c[q>>2]|0)+2|0)==(c[p>>2]|0)){t=10;break a}c[s>>2]=(a[c[r>>2]>>0]&7)<<18|(a[(c[r>>2]|0)+1>>0]&63)<<12|(a[(c[r>>2]|0)+2>>0]&63)<<6|a[(c[r>>2]|0)+3>>0]&63;c[s>>2]=(c[s>>2]|0)-65536;b[c[q>>2]>>1]=(c[s>>2]|0)>>>10|55296;b[(c[q>>2]|0)+2>>1]=c[s>>2]&1023|56320;c[q>>2]=(c[q>>2]|0)+4;c[r>>2]=(c[r>>2]|0)+4;continue a;break}default:{j=c[r>>2]|0;c[r>>2]=j+1;h=a[j>>0]|0;j=c[q>>2]|0;c[q>>2]=j+2;b[j>>1]=h;continue a}}}if((t|0)==10){c[c[m>>2]>>2]=c[r>>2];c[c[o>>2]>>2]=c[q>>2];i=k;return}}function M$(a,b){a=a|0;b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;i=e;return c[93280+(((d[181834+((d[c[f>>2]>>0]|0)>>2&7)>>0]|0)<<3)+(((d[c[f>>2]>>0]|0)&3)<<1)+((d[(c[f>>2]|0)+1>>0]|0)>>5&1)<<2)>>2]&1<<((d[(c[f>>2]|0)+1>>0]|0)&31)|0}function N$(a,b){a=a|0;b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;i=e;return c[93280+(((d[181834+((((d[c[f>>2]>>0]|0)&15)<<4)+((d[(c[f>>2]|0)+1>>0]|0)>>2&15))>>0]|0)<<3)+(((d[(c[f>>2]|0)+1>>0]|0)&3)<<1)+((d[(c[f>>2]|0)+2>>0]|0)>>5&1)<<2)>>2]&1<<((d[(c[f>>2]|0)+2>>0]|0)&31)|0}function O$(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function P$(a,b){a=a|0;b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;i=e;return c[93280+(((d[181578+((d[c[f>>2]>>0]|0)>>2&7)>>0]|0)<<3)+(((d[c[f>>2]>>0]|0)&3)<<1)+((d[(c[f>>2]|0)+1>>0]|0)>>5&1)<<2)>>2]&1<<((d[(c[f>>2]|0)+1>>0]|0)&31)|0}function Q$(a,b){a=a|0;b=b|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;i=e;return c[93280+(((d[181578+((((d[c[f>>2]>>0]|0)&15)<<4)+((d[(c[f>>2]|0)+1>>0]|0)>>2&15))>>0]|0)<<3)+(((d[(c[f>>2]|0)+1>>0]|0)&3)<<1)+((d[(c[f>>2]|0)+2>>0]|0)>>5&1)<<2)>>2]&1<<((d[(c[f>>2]|0)+2>>0]|0)&31)|0}function R$(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if((d[c[f>>2]>>0]|0|0)>=194?((d[(c[f>>2]|0)+1>>0]|0)&128|0)!=0:0)g=((d[(c[f>>2]|0)+1>>0]|0)&192|0)==192;else g=1;i=e;return g&1|0}function S$(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!((d[(c[f>>2]|0)+2>>0]|0)&128)){g=1;h=g&1;i=e;return h|0}if((d[c[f>>2]>>0]|0|0)==239?(d[(c[f>>2]|0)+1>>0]|0|0)==191:0){if((d[(c[f>>2]|0)+2>>0]|0|0)>189){g=1;h=g&1;i=e;return h|0}}else j=5;if((j|0)==5?((d[(c[f>>2]|0)+2>>0]|0)&192|0)==192:0){g=1;h=g&1;i=e;return h|0}j=d[(c[f>>2]|0)+1>>0]|0;if((d[c[f>>2]>>0]|0|0)==224)if((j|0)<160)k=1;else k=((d[(c[f>>2]|0)+1>>0]|0)&192|0)==192;else if(!(j&128))k=1;else{j=d[(c[f>>2]|0)+1>>0]|0;k=(((d[c[f>>2]>>0]|0|0)==237?(j|0)>159:(j&192|0)==192)&1|0)!=0}g=(k&1|0)!=0;h=g&1;i=e;return h|0}function T$(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!((d[(c[f>>2]|0)+3>>0]|0)&128)){g=1;h=g&1;i=e;return h|0}if(((d[(c[f>>2]|0)+3>>0]|0)&192|0)==192){g=1;h=g&1;i=e;return h|0}if(!((d[(c[f>>2]|0)+2>>0]|0)&128)){g=1;h=g&1;i=e;return h|0}if(((d[(c[f>>2]|0)+2>>0]|0)&192|0)==192){g=1;h=g&1;i=e;return h|0}b=d[(c[f>>2]|0)+1>>0]|0;if((d[c[f>>2]>>0]|0|0)==240)if((b|0)<144)j=1;else j=((d[(c[f>>2]|0)+1>>0]|0)&192|0)==192;else if(!(b&128))j=1;else{b=d[(c[f>>2]|0)+1>>0]|0;j=(((d[c[f>>2]>>0]|0|0)==244?(b|0)>143:(b&192|0)==192)&1|0)!=0}g=(j&1|0)!=0;h=g&1;i=e;return h|0}function U$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)==(c[l>>2]|0))c[h>>2]=-1;else{b:do switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+344>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+2;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){c[h>>2]=-2;break a}e=(Ob[c[(c[j>>2]|0)+348>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;f=c[k>>2]|0;if(e){c[k>>2]=f+3;break b}else{c[c[m>>2]>>2]=f;c[h>>2]=0;break a}break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+352>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+4;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 19:{c[h>>2]=W$(c[j>>2]|0,(c[k>>2]|0)+1|0,c[l>>2]|0,c[m>>2]|0)|0;break a;break}default:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}}while(0);c:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=44;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{n=25;break c;break}case 18:{n=42;break c;break}case 27:case 26:case 25:case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;continue c;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){n=28;break c}e=(Ob[c[(c[j>>2]|0)+332>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;o=c[k>>2]|0;if(!e){n=30;break c}c[k>>2]=o+2;continue c;break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){n=33;break c}e=(Ob[c[(c[j>>2]|0)+336>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;p=c[k>>2]|0;if(!e){n=35;break c}c[k>>2]=p+3;continue c;break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){n=38;break c}e=(Ob[c[(c[j>>2]|0)+340>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;q=c[k>>2]|0;if(!e){n=40;break c}c[k>>2]=q+4;continue c;break}default:{n=43;break c}}}switch(n|0){case 25:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 28:{c[h>>2]=-2;break a;break}case 30:{c[c[m>>2]>>2]=o;c[h>>2]=0;break a;break}case 33:{c[h>>2]=-2;break a;break}case 35:{c[c[m>>2]>>2]=p;c[h>>2]=0;break a;break}case 38:{c[h>>2]=-2;break a;break}case 40:{c[c[m>>2]>>2]=q;c[h>>2]=0;break a;break}case 42:{c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=9;break a;break}case 43:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 44:{c[h>>2]=-1;break a;break}}}while(0);i=g;return c[h>>2]|0}function V$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)==(c[l>>2]|0))c[h>>2]=-1;else{b:do switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+344>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+2;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){c[h>>2]=-2;break a}e=(Ob[c[(c[j>>2]|0)+348>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;f=c[k>>2]|0;if(e){c[k>>2]=f+3;break b}else{c[c[m>>2]>>2]=f;c[h>>2]=0;break a}break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+352>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+4;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 30:case 9:case 10:case 21:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=22;break a;break}default:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}}while(0);c:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=44;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{n=25;break c;break}case 18:{n=42;break c;break}case 27:case 26:case 25:case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;continue c;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){n=28;break c}e=(Ob[c[(c[j>>2]|0)+332>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;o=c[k>>2]|0;if(!e){n=30;break c}c[k>>2]=o+2;continue c;break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){n=33;break c}e=(Ob[c[(c[j>>2]|0)+336>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;p=c[k>>2]|0;if(!e){n=35;break c}c[k>>2]=p+3;continue c;break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){n=38;break c}e=(Ob[c[(c[j>>2]|0)+340>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;q=c[k>>2]|0;if(!e){n=40;break c}c[k>>2]=q+4;continue c;break}default:{n=43;break c}}}switch(n|0){case 25:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 28:{c[h>>2]=-2;break a;break}case 30:{c[c[m>>2]>>2]=o;c[h>>2]=0;break a;break}case 33:{c[h>>2]=-2;break a;break}case 35:{c[c[m>>2]>>2]=p;c[h>>2]=0;break a;break}case 38:{c[h>>2]=-2;break a;break}case 40:{c[c[m>>2]>>2]=q;c[h>>2]=0;break a;break}case 42:{c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=28;break a;break}case 43:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 44:{c[h>>2]=-1;break a;break}}}while(0);i=g;return c[h>>2]|0}function W$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){if((a[c[l>>2]>>0]|0)==120){c[j>>2]=X$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[j>>2]|0;i=h;return o|0}g=c[l>>2]|0;if((d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0)!=25){c[c[n>>2]>>2]=g;c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}c[l>>2]=g+1;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0))break a;switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 18:{p=9;break b;break}case 25:break;default:{p=10;break b}}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=10;o=c[j>>2]|0;i=h;return o|0}else if((p|0)==10){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;o=c[j>>2]|0;i=h;return o|0}}while(0);c[j>>2]=-1;o=c[j>>2]|0;i=h;return o|0}function X$(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)!=(c[l>>2]|0)){f=c[k>>2]|0;if(((d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0)+-24|0)>>>0>=2){c[c[m>>2]>>2]=f;c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}c[k>>2]=f+1;b:while(1){if((c[k>>2]|0)==(c[l>>2]|0))break a;switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 18:{o=7;break b;break}case 24:case 25:break;default:{o=8;break b}}c[k>>2]=(c[k>>2]|0)+1}if((o|0)==7){c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=10;n=c[h>>2]|0;i=g;return n|0}else if((o|0)==8){c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}}while(0);c[h>>2]=-1;n=c[h>>2]|0;i=g;return n|0}function Y$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+32|0;j=h+20|0;k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){b:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}g=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+2;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}f=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(f){c[l>>2]=g+3;break b}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}g=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+4;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}case 16:{f=(c[l>>2]|0)+1|0;c[l>>2]=f;if((f|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 27:{c[j>>2]=Z$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 20:{c[j>>2]=_$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}break}case 15:{c[j>>2]=$$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 17:{c[j>>2]=a0(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}while(0);c[o>>2]=0;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=104;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{p=33;break c;break}case 10:case 9:case 21:{p=73;break c;break}case 11:{p=97;break c;break}case 17:{break c;break}case 27:case 26:case 25:case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue c;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=36;break c}f=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;q=c[l>>2]|0;if(!f){p=38;break c}c[l>>2]=q+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=41;break c}f=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;r=c[l>>2]|0;if(!f){p=43;break c}c[l>>2]=r+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=46;break c}f=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;s=c[l>>2]|0;if(!f){p=48;break c}c[l>>2]=s+4;continue c;break}case 23:{if(c[o>>2]|0){p=51;break c}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){p=53;break c}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{p=55;break c;break}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue c;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){p=58;break c}f=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;t=c[l>>2]|0;if(!f){p=60;break c}c[l>>2]=t+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){p=63;break c}f=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;u=c[l>>2]|0;if(!f){p=65;break c}c[l>>2]=u+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){p=68;break c}f=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;v=c[l>>2]|0;if(!f){p=70;break c}c[l>>2]=v+4;continue c;break}default:{p=72;break c}}break}default:{p=103;break c}}}d:switch(p|0){case 33:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 36:{c[j>>2]=-2;break a;break}case 38:{c[c[n>>2]>>2]=q;c[j>>2]=0;break a;break}case 41:{c[j>>2]=-2;break a;break}case 43:{c[c[n>>2]>>2]=r;c[j>>2]=0;break a;break}case 46:{c[j>>2]=-2;break a;break}case 48:{c[c[n>>2]>>2]=s;c[j>>2]=0;break a;break}case 51:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 53:{c[j>>2]=-1;break a;break}case 55:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 58:{c[j>>2]=-2;break a;break}case 60:{c[c[n>>2]>>2]=t;c[j>>2]=0;break a;break}case 63:{c[j>>2]=-2;break a;break}case 65:{c[c[n>>2]>>2]=u;c[j>>2]=0;break a;break}case 68:{c[j>>2]=-2;break a;break}case 70:{c[c[n>>2]>>2]=v;c[j>>2]=0;break a;break}case 72:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 73:{c[l>>2]=(c[l>>2]|0)+1;e:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){p=96;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 11:{p=97;break d;break}case 17:{break d;break}case 29:{p=76;break e;break}case 24:case 22:{p=77;break e;break}case 5:{p=78;break e;break}case 6:{p=83;break e;break}case 7:{p=88;break e;break}case 10:case 9:case 21:break;default:{p=94;break e}}c[l>>2]=(c[l>>2]|0)+1}do if((p|0)==76){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((p|0)==77)c[l>>2]=(c[l>>2]|0)+1;else if((p|0)==78){if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}f=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(f){c[l>>2]=g+2;break}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break a}}else if((p|0)==83){if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}g=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+3;break}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}}else if((p|0)==88){if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}f=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(f){c[l>>2]=g+4;break}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break a}}else if((p|0)==94){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}else if((p|0)==96){c[j>>2]=-1;break a}while(0);c[j>>2]=b0(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;break a;break}case 103:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 104:{c[j>>2]=-1;break a;break}}if((p|0)==97){c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=2;break}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}g=c[l>>2]|0;if((a[c[l>>2]>>0]|0)==62){c[c[n>>2]>>2]=g+1;c[j>>2]=4;break}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break}}else c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function Z$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;a:do if((c[l>>2]|0)!=(c[m>>2]|0)){g=c[l>>2]|0;if((a[c[l>>2]>>0]|0)!=45){c[c[n>>2]>>2]=g;c[j>>2]=0;break}c[l>>2]=g+1;b:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){o=32;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 8:case 1:case 0:{o=22;break b;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){o=8;break b}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;p=c[l>>2]|0;if(g){o=10;break b}c[l>>2]=p+2;continue b;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){o=13;break b}g=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;q=c[l>>2]|0;if(g){o=15;break b}c[l>>2]=q+3;continue b;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){o=18;break b}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;r=c[l>>2]|0;if(g){o=20;break b}c[l>>2]=r+4;continue b;break}case 27:{g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){o=24;break b}if((a[c[l>>2]>>0]|0)==45){o=26;break b}else continue b;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue b}}}if((o|0)==8){c[j>>2]=-2;break}else if((o|0)==10){c[c[n>>2]>>2]=p;c[j>>2]=0;break}else if((o|0)==13){c[j>>2]=-2;break}else if((o|0)==15){c[c[n>>2]>>2]=q;c[j>>2]=0;break}else if((o|0)==18){c[j>>2]=-2;break}else if((o|0)==20){c[c[n>>2]>>2]=r;c[j>>2]=0;break}else if((o|0)==22){c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}else if((o|0)==24){c[j>>2]=-1;break}else if((o|0)==26){g=(c[l>>2]|0)+1|0;c[l>>2]=g;if((g|0)==(c[m>>2]|0)){c[j>>2]=-1;break}g=c[l>>2]|0;if((a[c[l>>2]>>0]|0)==62){c[c[n>>2]>>2]=g+1;c[j>>2]=13;break}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break}}}else o=32;while(0);if((o|0)==32)c[j>>2]=-1;i=h;return c[j>>2]|0}function _$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(((c[k>>2]|0)-(c[j>>2]|0)|0)<6){c[h>>2]=-1;n=c[h>>2]|0;i=g;return n|0}c[m>>2]=0;while(1){o=c[j>>2]|0;if((c[m>>2]|0)>=6){p=8;break}if((a[o>>0]|0)!=(a[182109+(c[m>>2]|0)>>0]|0)){p=6;break}c[m>>2]=(c[m>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}if((p|0)==6){c[c[l>>2]>>2]=c[j>>2];c[h>>2]=0;n=c[h>>2]|0;i=g;return n|0}else if((p|0)==8){c[c[l>>2]>>2]=o;c[h>>2]=8;n=c[h>>2]|0;i=g;return n|0}return 0}function $$(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[p>>2]=c[l>>2];a:do if((c[l>>2]|0)==(c[m>>2]|0))c[j>>2]=-1;else{b:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){c[j>>2]=-2;break a}g=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+2;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){c[j>>2]=-2;break a}f=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;g=c[l>>2]|0;if(f){c[l>>2]=g+3;break b}else{c[c[n>>2]>>2]=g;c[j>>2]=0;break a}break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){c[j>>2]=-2;break a}g=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;f=c[l>>2]|0;if(g){c[l>>2]=f+4;break b}else{c[c[n>>2]>>2]=f;c[j>>2]=0;break a}break}default:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a}}while(0);c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=75;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{q=24;break c;break}case 10:case 9:case 21:{q=41;break c;break}case 15:{q=68;break c;break}case 27:case 26:case 25:case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue c;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=27;break c}f=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;r=c[l>>2]|0;if(!f){q=29;break c}c[l>>2]=r+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=32;break c}f=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;s=c[l>>2]|0;if(!f){q=34;break c}c[l>>2]=s+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=37;break c}f=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;t=c[l>>2]|0;if(!f){q=39;break c}c[l>>2]=t+4;continue c;break}default:break c}}switch(q|0){case 24:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 27:{c[j>>2]=-2;break a;break}case 29:{c[c[n>>2]>>2]=r;c[j>>2]=0;break a;break}case 32:{c[j>>2]=-2;break a;break}case 34:{c[c[n>>2]>>2]=s;c[j>>2]=0;break a;break}case 37:{c[j>>2]=-2;break a;break}case 39:{c[c[n>>2]>>2]=t;c[j>>2]=0;break a;break}case 41:{f=(c0(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;g=c[l>>2]|0;if(!f){c[c[n>>2]>>2]=g;c[j>>2]=0;break a}c[l>>2]=g+1;d:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){q=67;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 8:case 1:case 0:{q=61;break d;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){q=47;break d}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;u=c[l>>2]|0;if(g){q=49;break d}c[l>>2]=u+2;continue d;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){q=52;break d}g=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;v=c[l>>2]|0;if(g){q=54;break d}c[l>>2]=v+3;continue d;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){q=57;break d}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;w=c[l>>2]|0;if(g){q=59;break d}c[l>>2]=w+4;continue d;break}case 15:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){q=63;break d}if((a[c[l>>2]>>0]|0)==62){q=65;break d}else continue d;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue d}}}switch(q|0){case 47:{c[j>>2]=-2;break a;break}case 49:{c[c[n>>2]>>2]=u;c[j>>2]=0;break a;break}case 52:{c[j>>2]=-2;break a;break}case 54:{c[c[n>>2]>>2]=v;c[j>>2]=0;break a;break}case 57:{c[j>>2]=-2;break a;break}case 59:{c[c[n>>2]>>2]=w;c[j>>2]=0;break a;break}case 61:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break a;break}case 63:{c[j>>2]=-1;break a;break}case 65:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=c[o>>2];break a;break}case 67:{c[j>>2]=-1;break a;break}}break}case 68:{g=(c0(c[k>>2]|0,c[p>>2]|0,c[l>>2]|0,o)|0)!=0;f=c[l>>2]|0;if(!g){c[c[n>>2]>>2]=f;c[j>>2]=0;break a}c[l>>2]=f+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break a}if((a[c[l>>2]>>0]|0)==62){c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=c[o>>2];break a}break}case 75:{c[j>>2]=-1;break a;break}}c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0}while(0);i=h;return c[j>>2]|0}function a0(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)==(c[l>>2]|0))c[h>>2]=-1;else{b:do switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+344>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+2;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){c[h>>2]=-2;break a}e=(Ob[c[(c[j>>2]|0)+348>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;f=c[k>>2]|0;if(e){c[k>>2]=f+3;break b}else{c[c[m>>2]>>2]=f;c[h>>2]=0;break a}break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+352>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+4;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}default:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}}while(0);c:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=51;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{n=24;break c;break}case 10:case 9:case 21:{n=41;break c;break}case 11:{n=49;break c;break}case 27:case 26:case 25:case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;continue c;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){n=27;break c}e=(Ob[c[(c[j>>2]|0)+332>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;o=c[k>>2]|0;if(!e){n=29;break c}c[k>>2]=o+2;continue c;break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){n=32;break c}e=(Ob[c[(c[j>>2]|0)+336>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;p=c[k>>2]|0;if(!e){n=34;break c}c[k>>2]=p+3;continue c;break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){n=37;break c}e=(Ob[c[(c[j>>2]|0)+340>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;q=c[k>>2]|0;if(!e){n=39;break c}c[k>>2]=q+4;continue c;break}case 23:{c[k>>2]=(c[k>>2]|0)+1;continue c;break}default:{n=50;break c}}}switch(n|0){case 24:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 27:{c[h>>2]=-2;break a;break}case 29:{c[c[m>>2]>>2]=o;c[h>>2]=0;break a;break}case 32:{c[h>>2]=-2;break a;break}case 34:{c[c[m>>2]>>2]=p;c[h>>2]=0;break a;break}case 37:{c[h>>2]=-2;break a;break}case 39:{c[c[m>>2]>>2]=q;c[h>>2]=0;break a;break}case 41:{c[k>>2]=(c[k>>2]|0)+1;d:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=47;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 11:{n=44;break d;break}case 10:case 9:case 21:break;default:{n=45;break d}}c[k>>2]=(c[k>>2]|0)+1}if((n|0)==44){c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=5;break a}else if((n|0)==45){c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}else if((n|0)==47){c[h>>2]=-1;break a}break}case 49:{c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=5;break a;break}case 50:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 51:{c[h>>2]=-1;break a;break}}}while(0);i=g;return c[h>>2]|0}function b0(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;h=i;i=i+48|0;j=h+36|0;k=h+32|0;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;a:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=114;break}b:do switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{t=4;break a;break}case 27:case 26:case 25:case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=7;break a}g=(Ob[c[(c[k>>2]|0)+332>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;u=c[l>>2]|0;if(!g){t=9;break a}c[l>>2]=u+2;continue a;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=12;break a}g=(Ob[c[(c[k>>2]|0)+336>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;v=c[l>>2]|0;if(!g){t=14;break a}c[l>>2]=v+3;continue a;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=17;break a}g=(Ob[c[(c[k>>2]|0)+340>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;w=c[l>>2]|0;if(!g){t=19;break a}c[l>>2]=w+4;continue a;break}case 23:{if(c[o>>2]|0){t=22;break a}c[o>>2]=1;c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){t=24;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{t=26;break a;break}case 24:case 22:{c[l>>2]=(c[l>>2]|0)+1;continue a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=29;break a}g=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;x=c[l>>2]|0;if(!g){t=31;break a}c[l>>2]=x+2;continue a;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=34;break a}g=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;y=c[l>>2]|0;if(!g){t=36;break a}c[l>>2]=y+3;continue a;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=39;break a}g=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;z=c[l>>2]|0;if(!g){t=41;break a}c[l>>2]=z+4;continue a;break}default:{t=43;break a}}break}case 10:case 9:case 21:{while(1){c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){t=45;break a}c[p>>2]=d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0];if((c[p>>2]|0)==14)break b;switch(c[p>>2]|0){case 9:case 10:case 21:break;default:{t=48;break a}}}break}case 14:break;default:{t=113;break a}}while(0);c[o>>2]=0;while(1){c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){t=51;break a}c[q>>2]=d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0];if((c[q>>2]|0)==12|(c[q>>2]|0)==13)break;switch(c[q>>2]|0){case 9:case 10:case 21:break;default:{t=54;break a}}}c[l>>2]=(c[l>>2]|0)+1;c:while(1){if((c[l>>2]|0)==(c[m>>2]|0)){t=57;break a}c[r>>2]=d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0];if((c[r>>2]|0)==(c[q>>2]|0))break;switch(c[r>>2]|0){case 8:case 1:case 0:{t=75;break a;break}case 2:{t=80;break a;break}case 5:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=61;break a}g=(Ob[c[(c[k>>2]|0)+356>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;A=c[l>>2]|0;if(g){t=63;break a}c[l>>2]=A+2;continue c;break}case 6:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=66;break a}g=(Ob[c[(c[k>>2]|0)+360>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;B=c[l>>2]|0;if(g){t=68;break a}c[l>>2]=B+3;continue c;break}case 7:{if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=71;break a}g=(Ob[c[(c[k>>2]|0)+364>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;C=c[l>>2]|0;if(g){t=73;break a}c[l>>2]=C+4;continue c;break}case 3:{c[s>>2]=U$(c[k>>2]|0,(c[l>>2]|0)+1|0,c[m>>2]|0,l)|0;if((c[s>>2]|0)<=0){t=77;break a}else continue c;break}default:{c[l>>2]=(c[l>>2]|0)+1;continue c}}}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){t=83;break}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;default:{t=85;break a}}d:while(1){c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){t=87;break a}switch(d[(c[k>>2]|0)+76+(d[c[l>>2]>>0]|0)>>0]|0){case 29:{t=89;break a;break}case 11:{t=106;break a;break}case 17:{t=107;break a;break}case 10:case 9:case 21:break;case 24:case 22:{t=90;break d;break}case 5:{t=91;break d;break}case 6:{t=96;break d;break}case 7:{t=101;break d;break}default:{t=112;break a}}}if((t|0)==90){t=0;c[l>>2]=(c[l>>2]|0)+1;continue}else if((t|0)==91){t=0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<2){t=92;break}g=(Ob[c[(c[k>>2]|0)+344>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;D=c[l>>2]|0;if(!g){t=94;break}c[l>>2]=D+2;continue}else if((t|0)==96){t=0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<3){t=97;break}g=(Ob[c[(c[k>>2]|0)+348>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;E=c[l>>2]|0;if(!g){t=99;break}c[l>>2]=E+3;continue}else if((t|0)==101){t=0;if(((c[m>>2]|0)-(c[l>>2]|0)|0)<4){t=102;break}g=(Ob[c[(c[k>>2]|0)+352>>2]&127](c[k>>2]|0,c[l>>2]|0)|0)!=0;F=c[l>>2]|0;if(!g){t=104;break}c[l>>2]=F+4;continue}}switch(t|0){case 4:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 7:{c[j>>2]=-2;break}case 9:{c[c[n>>2]>>2]=u;c[j>>2]=0;break}case 12:{c[j>>2]=-2;break}case 14:{c[c[n>>2]>>2]=v;c[j>>2]=0;break}case 17:{c[j>>2]=-2;break}case 19:{c[c[n>>2]>>2]=w;c[j>>2]=0;break}case 22:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 24:{c[j>>2]=-1;break}case 26:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 29:{c[j>>2]=-2;break}case 31:{c[c[n>>2]>>2]=x;c[j>>2]=0;break}case 34:{c[j>>2]=-2;break}case 36:{c[c[n>>2]>>2]=y;c[j>>2]=0;break}case 39:{c[j>>2]=-2;break}case 41:{c[c[n>>2]>>2]=z;c[j>>2]=0;break}case 43:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 45:{c[j>>2]=-1;break}case 48:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 51:{c[j>>2]=-1;break}case 54:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 57:{c[j>>2]=-1;break}case 61:{c[j>>2]=-2;break}case 63:{c[c[n>>2]>>2]=A;c[j>>2]=0;break}case 66:{c[j>>2]=-2;break}case 68:{c[c[n>>2]>>2]=B;c[j>>2]=0;break}case 71:{c[j>>2]=-2;break}case 73:{c[c[n>>2]>>2]=C;c[j>>2]=0;break}case 75:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 77:{if(!(c[s>>2]|0))c[c[n>>2]>>2]=c[l>>2];c[j>>2]=c[s>>2];break}case 80:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 83:{c[j>>2]=-1;break}case 85:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 87:{c[j>>2]=-1;break}case 89:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 92:{c[j>>2]=-2;break}case 94:{c[c[n>>2]>>2]=D;c[j>>2]=0;break}case 97:{c[j>>2]=-2;break}case 99:{c[c[n>>2]>>2]=E;c[j>>2]=0;break}case 102:{c[j>>2]=-2;break}case 104:{c[c[n>>2]>>2]=F;c[j>>2]=0;break}case 106:{c[c[n>>2]>>2]=(c[l>>2]|0)+1;c[j>>2]=1;break}case 107:{c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=-1;break}m=c[l>>2]|0;if((a[c[l>>2]>>0]|0)==62){c[c[n>>2]>>2]=m+1;c[j>>2]=3;break}else{c[c[n>>2]>>2]=m;c[j>>2]=0;break}break}case 112:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 113:{c[c[n>>2]>>2]=c[l>>2];c[j>>2]=0;break}case 114:{c[j>>2]=-1;break}}i=h;return c[j>>2]|0}function c0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+32|0;h=g+20|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[g+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;c[c[l>>2]>>2]=11;a:do if(((c[k>>2]|0)-(c[j>>2]|0)|0)==3){switch(a[c[j>>2]>>0]|0){case 120:break;case 88:{c[m>>2]=1;break}default:{c[h>>2]=1;break a}}c[j>>2]=(c[j>>2]|0)+1;switch(a[c[j>>2]>>0]|0){case 109:break;case 77:{c[m>>2]=1;break}default:{c[h>>2]=1;break a}}c[j>>2]=(c[j>>2]|0)+1;switch(a[c[j>>2]>>0]|0){case 108:break;case 76:{c[m>>2]=1;break}default:{c[h>>2]=1;break a}}if(c[m>>2]|0){c[h>>2]=0;break}else{c[c[l>>2]>>2]=12;c[h>>2]=1;break}}else c[h>>2]=1;while(0);i=g;return c[h>>2]|0}function d0(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+32|0;j=h+24|0;k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;a:while(1){if((c[m>>2]|0)==(c[n>>2]|0)){q=27;break}c[p>>2]=d[(c[l>>2]|0)+76+(d[c[m>>2]>>0]|0)>>0];switch(c[p>>2]|0){case 8:case 1:case 0:{q=19;break a;break}case 5:{if(((c[n>>2]|0)-(c[m>>2]|0)|0)<2){q=5;break a}g=(Ob[c[(c[l>>2]|0)+356>>2]&127](c[l>>2]|0,c[m>>2]|0)|0)!=0;r=c[m>>2]|0;if(g){q=7;break a}c[m>>2]=r+2;continue a;break}case 6:{if(((c[n>>2]|0)-(c[m>>2]|0)|0)<3){q=10;break a}g=(Ob[c[(c[l>>2]|0)+360>>2]&127](c[l>>2]|0,c[m>>2]|0)|0)!=0;s=c[m>>2]|0;if(g){q=12;break a}c[m>>2]=s+3;continue a;break}case 7:{if(((c[n>>2]|0)-(c[m>>2]|0)|0)<4){q=15;break a}g=(Ob[c[(c[l>>2]|0)+364>>2]&127](c[l>>2]|0,c[m>>2]|0)|0)!=0;t=c[m>>2]|0;if(g){q=17;break a}c[m>>2]=t+4;continue a;break}case 13:case 12:{c[m>>2]=(c[m>>2]|0)+1;if((c[p>>2]|0)!=(c[k>>2]|0))continue a;else{q=21;break a}break}default:{c[m>>2]=(c[m>>2]|0)+1;continue a}}}b:do if((q|0)==5)c[j>>2]=-2;else if((q|0)==7){c[c[o>>2]>>2]=r;c[j>>2]=0}else if((q|0)==10)c[j>>2]=-2;else if((q|0)==12){c[c[o>>2]>>2]=s;c[j>>2]=0}else if((q|0)==15)c[j>>2]=-2;else if((q|0)==17){c[c[o>>2]>>2]=t;c[j>>2]=0}else if((q|0)==19){c[c[o>>2]>>2]=c[m>>2];c[j>>2]=0}else if((q|0)==21){if((c[m>>2]|0)==(c[n>>2]|0)){c[j>>2]=-27;break}c[c[o>>2]>>2]=c[m>>2];switch(d[(c[l>>2]|0)+76+(d[c[m>>2]>>0]|0)>>0]|0|0){case 20:case 30:case 11:case 10:case 9:case 21:{c[j>>2]=27;break b;break}default:{c[j>>2]=0;break b}}}else if((q|0)==27)c[j>>2]=-1;while(0);i=h;return c[j>>2]|0}function e0(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)==(c[l>>2]|0))c[h>>2]=-1;else switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 27:{c[h>>2]=Z$(c[j>>2]|0,(c[k>>2]|0)+1|0,c[l>>2]|0,c[m>>2]|0)|0;break a;break}case 20:{c[c[m>>2]>>2]=(c[k>>2]|0)+1;c[h>>2]=33;break a;break}case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;b:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=17;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 30:{n=10;break b;break}case 10:case 9:case 21:{break b;break}case 24:case 22:break;default:{n=16;break b}}c[k>>2]=(c[k>>2]|0)+1}c:do if((n|0)==10){if(((c[k>>2]|0)+1|0)==(c[l>>2]|0)){c[h>>2]=-1;break a}switch(d[(c[j>>2]|0)+76+(d[(c[k>>2]|0)+1>>0]|0)>>0]|0|0){case 30:case 10:case 9:case 21:break;default:break c}c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}else if((n|0)==16){c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}else if((n|0)==17){c[h>>2]=-1;break a}while(0);c[c[m>>2]>>2]=c[k>>2];c[h>>2]=16;break a;break}default:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}}while(0);i=g;return c[h>>2]|0}function f0(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a:do if((c[k>>2]|0)==(c[l>>2]|0))c[h>>2]=-1;else{b:do switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+344>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+2;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){c[h>>2]=-2;break a}e=(Ob[c[(c[j>>2]|0)+348>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;f=c[k>>2]|0;if(e){c[k>>2]=f+3;break b}else{c[c[m>>2]>>2]=f;c[h>>2]=0;break a}break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){c[h>>2]=-2;break a}f=(Ob[c[(c[j>>2]|0)+352>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;e=c[k>>2]|0;if(f){c[k>>2]=e+4;break b}else{c[c[m>>2]>>2]=e;c[h>>2]=0;break a}break}default:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a}}while(0);c:while(1){if((c[k>>2]|0)==(c[l>>2]|0)){n=43;break}switch(d[(c[j>>2]|0)+76+(d[c[k>>2]>>0]|0)>>0]|0|0){case 29:{n=24;break c;break}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{n=41;break c;break}case 27:case 26:case 25:case 24:case 22:{c[k>>2]=(c[k>>2]|0)+1;continue c;break}case 5:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<2){n=27;break c}e=(Ob[c[(c[j>>2]|0)+332>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;o=c[k>>2]|0;if(!e){n=29;break c}c[k>>2]=o+2;continue c;break}case 6:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<3){n=32;break c}e=(Ob[c[(c[j>>2]|0)+336>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;p=c[k>>2]|0;if(!e){n=34;break c}c[k>>2]=p+3;continue c;break}case 7:{if(((c[l>>2]|0)-(c[k>>2]|0)|0)<4){n=37;break c}e=(Ob[c[(c[j>>2]|0)+340>>2]&127](c[j>>2]|0,c[k>>2]|0)|0)!=0;q=c[k>>2]|0;if(!e){n=39;break c}c[k>>2]=q+4;continue c;break}default:{n=42;break c}}}switch(n|0){case 24:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 27:{c[h>>2]=-2;break a;break}case 29:{c[c[m>>2]>>2]=o;c[h>>2]=0;break a;break}case 32:{c[h>>2]=-2;break a;break}case 34:{c[c[m>>2]>>2]=p;c[h>>2]=0;break a;break}case 37:{c[h>>2]=-2;break a;break}case 39:{c[c[m>>2]>>2]=q;c[h>>2]=0;break a;break}case 41:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=20;break a;break}case 42:{c[c[m>>2]>>2]=c[k>>2];c[h>>2]=0;break a;break}case 43:{c[h>>2]=-20;break a;break}}}while(0);i=g;return c[h>>2]|0}function g0(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+32|0;j=h+12|0;k=h+8|0;l=h+4|0;m=h;c[h+16>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;while(1){if((c[c[j>>2]>>2]|0)==(c[k>>2]|0)){n=5;break}if((c[c[l>>2]>>2]|0)==(c[m>>2]|0)){n=5;break}g=c[j>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;g=a[f>>0]|0;f=c[l>>2]|0;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=g}if((n|0)==5){i=h;return}}function h0(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;c[j+16>>2]=a;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;while(1){if((c[c[k>>2]>>2]|0)==(c[l>>2]|0)){o=5;break}if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){o=5;break}h=c[k>>2]|0;g=c[h>>2]|0;c[h>>2]=g+1;h=d[g>>0]|0;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+2;b[f>>1]=h}if((o|0)==5){i=j;return}}function i0(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;o=j+20|0;c[j+16>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;while(1){if((c[c[k>>2]>>2]|0)==(c[l>>2]|0)){p=8;break}a[o>>0]=a[c[c[k>>2]>>2]>>0]|0;if((d[o>>0]|0)&128){if(((c[n>>2]|0)-(c[c[m>>2]>>2]|0)|0)<2){p=8;break}h=((d[o>>0]|0)>>6|192)&255;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;h=((d[o>>0]|0)&63|128)&255;f=c[m>>2]|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=h;h=c[k>>2]|0;c[h>>2]=(c[h>>2]|0)+1;continue}else{if((c[c[m>>2]>>2]|0)==(c[n>>2]|0)){p=8;break}h=c[k>>2]|0;g=c[h>>2]|0;c[h>>2]=g+1;h=a[g>>0]|0;g=c[m>>2]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=h;continue}}if((p|0)==8){i=j;return}}function j0(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=i;i=i+48|0;l=k+32|0;m=k+28|0;n=k+24|0;o=k+20|0;p=k+16|0;q=k+12|0;r=k+8|0;s=k+4|0;t=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;if((c[p>>2]|0)==(c[q>>2]|0)){c[l>>2]=-4;u=c[l>>2]|0;i=k;return u|0}c[s>>2]=c[(c[n>>2]|0)+76>>2];a:do if(((c[p>>2]|0)+1|0)==(c[q>>2]|0)){if(((a[(c[n>>2]|0)+73>>0]|0)+-3|0)>>>0<3){c[l>>2]=-1;u=c[l>>2]|0;i=k;return u|0}switch(d[c[p>>2]>>0]|0){case 239:case 255:case 254:{if((c[o>>2]|0)==1?(a[(c[n>>2]|0)+73>>0]|0)==0:0)break a;break}case 60:case 0:break;default:break a}c[l>>2]=-1;u=c[l>>2]|0;i=k;return u|0}else{j=d[c[p>>2]>>0]<<8|d[(c[p>>2]|0)+1>>0];b:do if((j|0)<65279){if((j|0)<61371){switch(j|0){case 15360:break;default:break b}if((a[(c[n>>2]|0)+73>>0]|0)==4){if((c[o>>2]|0)==1)break a}else if((c[o>>2]|0)==1?(a[(c[n>>2]|0)+73>>0]|0)==3:0)break a;c[c[s>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[l>>2]=Sb[c[(c[c[s>>2]>>2]|0)+(c[o>>2]<<2)>>2]&127](c[c[s>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;u=c[l>>2]|0;i=k;return u|0}switch(j|0){case 61371:break;default:break b}if((c[o>>2]|0)==1?(c[t>>2]=a[(c[n>>2]|0)+73>>0],(c[t>>2]|0)==0|(c[t>>2]|0)==4|(c[t>>2]|0)==5|(c[t>>2]|0)==3):0)break a;if(((c[p>>2]|0)+2|0)==(c[q>>2]|0)){c[l>>2]=-1;u=c[l>>2]|0;i=k;return u|0}if((d[(c[p>>2]|0)+2>>0]|0)!=191)break a;c[c[r>>2]>>2]=(c[p>>2]|0)+3;c[c[s>>2]>>2]=c[(c[m>>2]|0)+8>>2];c[l>>2]=14;u=c[l>>2]|0;i=k;return u|0}else switch(j|0){case 65279:{if((c[o>>2]|0)==1?(a[(c[n>>2]|0)+73>>0]|0)==0:0)break a;c[c[r>>2]>>2]=(c[p>>2]|0)+2;c[c[s>>2]>>2]=c[(c[m>>2]|0)+16>>2];c[l>>2]=14;u=c[l>>2]|0;i=k;return u|0}case 65534:{if((c[o>>2]|0)==1?(a[(c[n>>2]|0)+73>>0]|0)==0:0)break a;c[c[r>>2]>>2]=(c[p>>2]|0)+2;c[c[s>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[l>>2]=14;u=c[l>>2]|0;i=k;return u|0}default:break b}while(0);if(a[c[p>>2]>>0]|0){if((c[o>>2]|0)==1?1:(a[(c[p>>2]|0)+1>>0]|0)!=0)break;c[c[s>>2]>>2]=c[(c[m>>2]|0)+20>>2];c[l>>2]=Sb[c[(c[c[s>>2]>>2]|0)+(c[o>>2]<<2)>>2]&127](c[c[s>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;u=c[l>>2]|0;i=k;return u|0}if((c[o>>2]|0)==1?(a[(c[n>>2]|0)+73>>0]|0)==5:0)break;c[c[s>>2]>>2]=c[(c[m>>2]|0)+16>>2];c[l>>2]=Sb[c[(c[c[s>>2]>>2]|0)+(c[o>>2]<<2)>>2]&127](c[c[s>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;u=c[l>>2]|0;i=k;return u|0}while(0);c[c[s>>2]>>2]=c[(c[m>>2]|0)+(a[(c[n>>2]|0)+73>>0]<<2)>>2];c[l>>2]=Sb[c[(c[c[s>>2]>>2]|0)+(c[o>>2]<<2)>>2]&127](c[c[s>>2]>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;u=c[l>>2]|0;i=k;return u|0}function k0(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+48|0;l=k+32|0;m=k+28|0;n=k+24|0;o=k+20|0;p=k+16|0;q=k+12|0;r=k+8|0;s=k+4|0;t=k;u=k+36|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=j;if((c[n>>2]|0)==(c[o>>2]|0)){c[c[p>>2]>>2]=0;c[l>>2]=1;v=c[l>>2]|0;i=k;return v|0}if(!(m0(l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0)){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}do c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);while((m0(l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0)!=0);if((c[n>>2]|0)==(c[o>>2]|0)){c[c[p>>2]>>2]=0;c[l>>2]=1;v=c[l>>2]|0;i=k;return v|0}c[c[p>>2]>>2]=c[n>>2];while(1){c[t>>2]=l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[t>>2]|0)==-1){w=10;break}if((c[t>>2]|0)==61){w=12;break}if(m0(c[t>>2]|0)|0){w=14;break}c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0)}if((w|0)==10){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}else if((w|0)==12)c[c[q>>2]>>2]=c[n>>2];else if((w|0)==14){c[c[q>>2]>>2]=c[n>>2];do{c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);q=l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[t>>2]=q}while((m0(q)|0)!=0);if((c[t>>2]|0)!=61){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}}if((c[n>>2]|0)==(c[c[p>>2]>>2]|0)){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);c[t>>2]=l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;while(1){if(!(m0(c[t>>2]|0)|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);c[t>>2]=l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0}if((c[t>>2]|0)!=34&(c[t>>2]|0)!=39){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}a[u>>0]=c[t>>2];c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);c[c[r>>2]>>2]=c[n>>2];while(1){c[t>>2]=l0(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if((c[t>>2]|0)==(a[u>>0]|0)){w=33;break}if((!(97<=(c[t>>2]|0)&(c[t>>2]|0)<=122)?!(65<=(c[t>>2]|0)&(c[t>>2]|0)<=90):0)?(48<=(c[t>>2]|0)&(c[t>>2]|0)<=57^1)&(c[t>>2]|0)!=46&(c[t>>2]|0)!=45&(c[t>>2]|0)!=95:0){w=31;break}c[n>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0)}if((w|0)==31){c[c[s>>2]>>2]=c[n>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}else if((w|0)==33){c[c[s>>2]>>2]=(c[n>>2]|0)+(c[(c[m>>2]|0)+68>>2]|0);c[l>>2]=1;v=c[l>>2]|0;i=k;return v|0}return 0}function l0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f+20|0;m=f;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=l;Ab[c[(c[h>>2]|0)+60>>2]&31](c[h>>2]|0,j,c[k>>2]|0,m,(c[m>>2]|0)+1|0);if((c[m>>2]|0)==(l|0)){c[g>>2]=-1;n=c[g>>2]|0;i=f;return n|0}else{c[g>>2]=a[l>>0];n=c[g>>2]|0;i=f;return n|0}return 0}function m0(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[e>>2]=a;switch(c[e>>2]|0){case 9:case 10:case 13:case 32:{c[d>>2]=1;break}default:c[d>>2]=0}i=b;return c[d>>2]|0}function n0(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=4;c[(c[d>>2]|0)+16>>2]=1;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b;return}function o0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[c[j>>2]>>2]=5;c[h>>2]=0;break}case 12:{c[c[j>>2]>>2]=5;c[h>>2]=1;break}case 11:{c[c[j>>2]>>2]=5;c[h>>2]=55;break}case 13:{c[c[j>>2]>>2]=5;c[h>>2]=56;break}case 14:{c[h>>2]=0;break}case 16:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182325)|0){c[c[j>>2]>>2]=6;c[h>>2]=3}else o=10;break}case 29:{c[c[j>>2]>>2]=7;c[h>>2]=2;break}default:o=10}if((o|0)==10)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function p0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 33:{c[c[j>>2]>>2]=8;c[h>>2]=0;break}case 34:{if(!(c[(c[j>>2]|0)+12>>2]|0))o=9;else{f=(c[j>>2]|0)+12|0;c[f>>2]=(c[f>>2]|0)-1;c[h>>2]=0}break}case 15:{c[h>>2]=0;break}case 26:{o=9;break}case -4:{if(c[(c[j>>2]|0)+12>>2]|0)o=9;else c[h>>2]=0;break}default:c[h>>2]=r0(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0}if((o|0)==9)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function q0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}case 18:{p=3;break}default:{}}if((p|0)==3){if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182310)|0){c[c[j>>2]>>2]=9;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182318)|0){c[c[j>>2]>>2]=10;c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function r0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;a:do switch(c[k>>2]|0){case 15:{c[h>>2]=0;break}case 16:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182170)|0){c[c[j>>2]>>2]=11;c[h>>2]=11;break a}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182177)|0){c[c[j>>2]>>2]=12;c[h>>2]=33;break a}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182185)|0){c[c[j>>2]>>2]=13;c[h>>2]=39;break a}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182193)|0){c[c[j>>2]>>2]=14;c[h>>2]=17}else o=16;break}case 11:{c[h>>2]=55;break}case 13:{c[h>>2]=56;break}case 28:{c[h>>2]=60;break}case 26:{c[c[j>>2]>>2]=15;c[h>>2]=3;break}case -4:{c[h>>2]=0;break}default:o=16}while(0);if((o|0)==16)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function s0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((c[g>>2]|0)==28?(c[(c[f>>2]|0)+16>>2]|0)==0:0){c[e>>2]=59;h=c[e>>2]|0;i=d;return h|0}else{c[c[f>>2]>>2]=7;c[e>>2]=-1;h=c[e>>2]|0;i=d;return h|0}return 0}function t0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=i;i=i+32|0;c[g+16>>2]=a;c[g+12>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;i=g;return 0}function u0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 22:{c[c[j>>2]>>2]=16;c[h>>2]=11;break}case 18:{c[c[j>>2]>>2]=17;c[h>>2]=9;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function v0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 41:case 18:{c[c[j>>2]>>2]=18;c[h>>2]=34;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function w0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 41:case 18:{c[c[j>>2]>>2]=19;c[h>>2]=40;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function x0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=17;break}case 18:{c[c[j>>2]>>2]=20;c[h>>2]=18;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function y0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 17:{c[c[j>>2]>>2]=21;c[h>>2]=8;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function z0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=0;break}case 11:{c[h>>2]=55;break}case 13:{c[h>>2]=56;break}case 29:{c[c[j>>2]>>2]=7;c[h>>2]=2;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function A0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=17;o=c[h>>2]|0;i=g;return o|0}case 18:{p=3;break}default:{}}if((p|0)==3){if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182202)|0){c[c[j>>2]>>2]=22;c[h>>2]=17;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182209)|0){c[c[j>>2]>>2]=23;c[h>>2]=17;o=c[h>>2]|0;i=g;return o|0}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function B0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=17;break}case 27:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=17;c[h>>2]=19;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function C0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=17;break}case 27:{c[c[j>>2]>>2]=25;c[h>>2]=21;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function D0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=17;break}case 27:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=17;c[h>>2]=19;break}case 17:{c[c[j>>2]>>2]=(c[(c[j>>2]|0)+16>>2]|0)!=0?26:27;c[h>>2]=20;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function E0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=c[(c[j>>2]|0)+8>>2];l=c[h>>2]|0;i=g;return l|0}case 17:{c[c[j>>2]>>2]=(c[(c[j>>2]|0)+16>>2]|0)!=0?26:27;c[h>>2]=c[(c[j>>2]|0)+8>>2];l=c[h>>2]|0;i=g;return l|0}default:{c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;l=c[h>>2]|0;i=g;return l|0}}return 0}function F0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;o=c[h>>2]|0;i=g;return o|0}case 18:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182216)|0){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39;c[h>>2]=42;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182222)|0){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39;c[h>>2]=41;o=c[h>>2]|0;i=g;return o|0}break}case 23:{c[c[j>>2]>>2]=28;c[(c[j>>2]|0)+4>>2]=1;c[h>>2]=44;o=c[h>>2]|0;i=g;return o|0}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function G0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 20:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,c[m>>2]|0,182226)|0){c[c[j>>2]>>2]=29;c[h>>2]=43}else o=10;break}case 23:{c[(c[j>>2]|0)+4>>2]=2;c[c[j>>2]>>2]=30;c[h>>2]=44;break}case 41:case 18:{c[c[j>>2]>>2]=31;c[h>>2]=51;break}case 30:{c[c[j>>2]>>2]=31;c[h>>2]=53;break}case 31:{c[c[j>>2]>>2]=31;c[h>>2]=52;break}case 32:{c[c[j>>2]>>2]=31;c[h>>2]=54;break}default:o=10}if((o|0)==10)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function H0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 24:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39;c[h>>2]=45;break}case 36:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39;c[h>>2]=46;break}case 21:{c[c[j>>2]>>2]=32;c[h>>2]=39;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function I0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 23:{f=(c[j>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1;c[h>>2]=44;break}case 41:case 18:{c[c[j>>2]>>2]=31;c[h>>2]=51;break}case 30:{c[c[j>>2]>>2]=31;c[h>>2]=53;break}case 31:{c[c[j>>2]>>2]=31;c[h>>2]=52;break}case 32:{c[c[j>>2]>>2]=31;c[h>>2]=54;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function J0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 24:{f=(c[j>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)-1;if(!(c[(c[j>>2]|0)+4>>2]|0)){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39}c[h>>2]=45;break}case 36:{f=(c[j>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)-1;if(!(c[(c[j>>2]|0)+4>>2]|0)){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39}c[h>>2]=46;break}case 35:{f=(c[j>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)-1;if(!(c[(c[j>>2]|0)+4>>2]|0)){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39}c[h>>2]=47;break}case 37:{f=(c[j>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)-1;if(!(c[(c[j>>2]|0)+4>>2]|0)){c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39}c[h>>2]=48;break}case 38:{c[c[j>>2]>>2]=30;c[h>>2]=50;break}case 21:{c[c[j>>2]>>2]=30;c[h>>2]=49;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function K0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 41:case 18:{c[c[j>>2]>>2]=33;c[h>>2]=51;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function L0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=39;break}case 36:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=39;c[h>>2]=46;break}case 21:{c[c[j>>2]>>2]=32;c[h>>2]=39;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function M0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 17:{c[c[j>>2]>>2]=(c[(c[j>>2]|0)+16>>2]|0)!=0?26:27;c[h>>2]=33;break}case 41:case 18:{c[c[j>>2]>>2]=34;c[h>>2]=22;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function N0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+32|0;h=g+24|0;j=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;p=c[h>>2]|0;i=g;return p|0}case 18:{c[o>>2]=0;while(1){q=c[(c[n>>2]|0)+28>>2]|0;r=c[n>>2]|0;s=c[l>>2]|0;t=c[m>>2]|0;if((c[o>>2]|0)>=8)break;if(Sb[q&127](r,s,t,c[98688+(c[o>>2]<<2)>>2]|0)|0){u=6;break}c[o>>2]=(c[o>>2]|0)+1}if((u|0)==6){c[c[j>>2]>>2]=35;c[h>>2]=23+(c[o>>2]|0);p=c[h>>2]|0;i=g;return p|0}if(Sb[q&127](r,s,t,182193)|0){c[c[j>>2]>>2]=36;c[h>>2]=33;p=c[h>>2]|0;i=g;return p|0}break}case 23:{c[c[j>>2]>>2]=37;c[h>>2]=33;p=c[h>>2]|0;i=g;return p|0}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;p=c[h>>2]|0;i=g;return p|0}function O0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;o=c[h>>2]|0;i=g;return o|0}case 20:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,c[m>>2]|0,182233)|0){c[c[j>>2]>>2]=18;c[h>>2]=35;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,c[m>>2]|0,182241)|0){c[c[j>>2]>>2]=18;c[h>>2]=36;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]|0)|0,c[m>>2]|0,182250)|0){c[c[j>>2]>>2]=38;c[h>>2]=33;o=c[h>>2]|0;i=g;return o|0}break}case 27:{c[c[j>>2]>>2]=18;c[h>>2]=37;o=c[h>>2]|0;i=g;return o|0}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function P0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 23:{c[c[j>>2]>>2]=39;c[h>>2]=33;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function Q0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 41:case 18:case 19:{c[c[j>>2]>>2]=40;c[h>>2]=31;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function R0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 24:{c[c[j>>2]>>2]=35;c[h>>2]=33;break}case 21:{c[c[j>>2]>>2]=37;c[h>>2]=33;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function S0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 18:{c[c[j>>2]>>2]=41;c[h>>2]=32;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function T0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 24:{c[c[j>>2]>>2]=35;c[h>>2]=33;break}case 21:{c[c[j>>2]>>2]=39;c[h>>2]=33;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function U0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=33;break}case 27:{c[c[j>>2]>>2]=18;c[h>>2]=38;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function V0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 18:{c[c[j>>2]>>2]=42;c[h>>2]=10;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function W0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}case 18:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182202)|0){c[c[j>>2]>>2]=43;c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182209)|0){c[c[j>>2]>>2]=44;c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}break}case 27:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=11;c[h>>2]=12;o=c[h>>2]|0;i=g;return o|0}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function X0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 27:{c[c[j>>2]>>2]=45;c[h>>2]=13;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function Y0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 27:{c[c[j>>2]>>2]=43;c[h>>2]=14;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function Z0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}case 17:{c[c[j>>2]>>2]=(c[(c[j>>2]|0)+16>>2]|0)!=0?26:27;c[h>>2]=15;o=c[h>>2]|0;i=g;return o|0}case 18:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182304)|0){c[c[j>>2]>>2]=46;c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}break}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function _0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 18:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=11;c[h>>2]=16;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function $0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}case 18:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182202)|0){c[c[j>>2]>>2]=47;c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182209)|0){c[c[j>>2]>>2]=48;c[h>>2]=11;o=c[h>>2]|0;i=g;return o|0}break}case 27:{c[c[j>>2]>>2]=24;c[(c[j>>2]|0)+8>>2]=11;c[h>>2]=12;o=c[h>>2]|0;i=g;return o|0}default:{}}c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;o=c[h>>2]|0;i=g;return o|0}function a1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 27:{c[c[j>>2]>>2]=49;c[h>>2]=13;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function b1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;break}case 27:{c[c[j>>2]>>2]=47;c[h>>2]=14;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function c1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=11;l=c[h>>2]|0;i=g;return l|0}case 17:{c[c[j>>2]>>2]=(c[(c[j>>2]|0)+16>>2]|0)!=0?26:27;c[h>>2]=15;l=c[h>>2]|0;i=g;return l|0}default:{c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;l=c[h>>2]|0;i=g;return l|0}}return 0}function d1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=0;l=c[h>>2]|0;i=g;return l|0}case 25:{c[c[j>>2]>>2]=27;f=(c[j>>2]|0)+12|0;c[f>>2]=(c[f>>2]|0)+1;c[h>>2]=0;l=c[h>>2]|0;i=g;return l|0}default:{c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;l=c[h>>2]|0;i=g;return l|0}}return 0}function e1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=0;break}case 25:{c[c[j>>2]>>2]=27;c[h>>2]=58;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function f1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=0;break}case 11:{c[h>>2]=55;break}case 13:{c[h>>2]=56;break}case 14:{c[h>>2]=0;break}case 16:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,(c[l>>2]|0)+(c[(c[n>>2]|0)+68>>2]<<1)|0,c[m>>2]|0,182325)|0){c[c[j>>2]>>2]=6;c[h>>2]=3}else o=9;break}case 29:{c[c[j>>2]>>2]=7;c[h>>2]=2;break}default:o=9}if((o|0)==9)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function g1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 41:case 18:{c[c[j>>2]>>2]=50;c[h>>2]=4;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function h1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;a:do switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 25:{c[c[j>>2]>>2]=26;c[h>>2]=7;break}case 17:{c[c[j>>2]>>2]=21;c[h>>2]=8;break}case 18:{if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182202)|0){c[c[j>>2]>>2]=51;c[h>>2]=3;break a}if(Sb[c[(c[n>>2]|0)+28>>2]&127](c[n>>2]|0,c[l>>2]|0,c[m>>2]|0,182209)|0){c[c[j>>2]>>2]=52;c[h>>2]=3}else o=9;break}default:o=9}while(0);if((o|0)==9)c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0;i=g;return c[h>>2]|0}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 27:{c[c[j>>2]>>2]=53;c[h>>2]=5;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function j1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 27:{c[c[j>>2]>>2]=51;c[h>>2]=6;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function k1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+32|0;h=g+20|0;j=g+16|0;k=g+12|0;c[j>>2]=a;c[k>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;switch(c[k>>2]|0){case 15:{c[h>>2]=3;break}case 25:{c[c[j>>2]>>2]=26;c[h>>2]=7;break}case 17:{c[c[j>>2]>>2]=21;c[h>>2]=8;break}default:c[h>>2]=s0(c[j>>2]|0,c[k>>2]|0)|0}i=g;return c[h>>2]|0}function l1(a){a=a|0;return ((a+-48|0)>>>0<10|(m1(a)|0)!=0)&1|0}function m1(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function n1(a){a=a|0;return a>>>0<128|0}function o1(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function p1(a){a=a|0;return (a+-48|0)>>>0<10|0}function q1(a){a=a|0;return (a+-97|0)>>>0<26|0}function r1(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function s1(a){a=a|0;return (a+-65|0)>>>0<26|0}function t1(a){a=a|0;var b=0;if(!(z1(a)|0))b=(u1(a)|0)!=0;else b=1;return b&1|0}function u1(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[182333+((d[182333+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=a>>>0<196606&1;return b|0}function v1(a){a=a|0;return o1(a)|0}function w1(a){a=a|0;var b=0;if((a&-2|0)==8232|(a>>>0<32|(a+-127|0)>>>0<33))b=1;else b=(a+-65529|0)>>>0<3;return b&1|0}function x1(a,b){a=a|0;b=b|0;var c=0;do switch(b|0){case 1:{c=t1(a)|0;break}case 2:{c=u1(a)|0;break}case 3:{c=v1(a)|0;break}case 4:{c=w1(a)|0;break}case 5:{c=z1(a)|0;break}case 6:{c=A1(a)|0;break}case 7:{c=B1(a)|0;break}case 8:{c=C1(a)|0;break}case 9:{c=D1(a)|0;break}case 10:{c=E1(a)|0;break}case 11:{c=F1(a)|0;break}case 12:{c=G1(a)|0;break}default:c=0}while(0);return c|0}function y1(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;c=a[b>>0]|0;d=97;e=1;f=185309;while(1){if(c<<24>>24==d<<24>>24?(J3(b,f)|0)==0:0){g=e;break}f=f+6|0;d=a[f>>0]|0;if(!(d<<24>>24)){g=0;break}else e=e+1|0}return g|0}function z1(a){a=a|0;return (a+-48|0)>>>0<10|0}function A1(a){a=a|0;var b=0;if(!(E1(a)|0))b=(C1(a)|0)!=0;else b=0;return b&1|0}function B1(a){a=a|0;return ((a|0)==223|(J1(a)|0)!=(a|0))&1|0}function C1(a){a=a|0;var b=0;if(a>>>0>=255)if((a+-57344|0)>>>0<8185|(a>>>0<8232|(a+-8234|0)>>>0<47062))b=1;else return ((a+-65532|0)>>>0>1048579|(a&65534|0)==65534)&1^1|0;else b=(a+1&127)>>>0>32&1;return b|0}function D1(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[185382+((d[185382+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=0;return b|0}function E1(a){a=a|0;var b=0;if(!a)b=0;else b=(X3(98984,a)|0)!=0;return b&1|0}function F1(a){a=a|0;return (K1(a)|0)!=(a|0)|0}function G1(a){a=a|0;var b=0;if((a+-48|0)>>>0<10)b=1;else b=((a|32)+-97|0)>>>0<6;return b&1|0}function H1(a){a=a|0;var b=0;b=(s1(a)|0)==0;return (b?a:a|32)|0}function I1(a){a=a|0;var b=0;b=(q1(a)|0)==0;return (b?a:a&95)|0}function J1(a){a=a|0;return $3(a,0)|0}function K1(a){a=a|0;return $3(a,1)|0}function L1(){var a=0;if(!(c[24680]|0))a=99072;else a=c[(cb()|0)+60>>2]|0;return a|0}function M1(b){b=b|0;var c=0,e=0,f=0,g=0,h=0,i=0,j=0;c=0;while(1){if((d[188550+c>>0]|0)==(b|0)){e=c;f=2;break}c=c+1|0;if((c|0)==87){g=87;h=188638;f=5;break}}if((f|0)==2)if(!e)i=188638;else{g=e;h=188638;f=5}if((f|0)==5)while(1){f=0;e=h;while(1){c=e+1|0;if(!(a[e>>0]|0)){j=c;break}else e=c}g=g+-1|0;if(!g){i=j;break}else{h=j;f=5}}return i|0}function N1(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0,$=0,aa=0.0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0.0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0.0,ua=0,va=0.0,wa=0.0,xa=0,ya=0.0,za=0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0.0,La=0,Ma=0,Na=0,Oa=0,Pa=0.0,Qa=0,Ra=0,Sa=0,Ta=0.0,Ua=0.0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0.0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0.0,fd=0.0,gd=0.0,hd=0.0,id=0.0,jd=0.0,kd=0.0,ld=0,md=0,nd=0.0,od=0,pd=0.0;g=i;i=i+512|0;h=g;switch(e|0){case 0:{j=24;k=-149;l=4;break}case 1:{j=53;k=-1074;l=4;break}case 2:{j=53;k=-1074;l=4;break}default:m=0.0}a:do if((l|0)==4){e=b+4|0;n=b+100|0;do{o=c[e>>2]|0;if(o>>>0<(c[n>>2]|0)>>>0){c[e>>2]=o+1;p=d[o>>0]|0}else p=R1(b)|0}while((r1(p)|0)!=0);q=p;b:do switch(q|0){case 43:case 45:{o=1-(((q|0)==45&1)<<1)|0;t=c[e>>2]|0;if(t>>>0<(c[n>>2]|0)>>>0){c[e>>2]=t+1;u=d[t>>0]|0;v=o;break b}else{u=R1(b)|0;v=o;break b}break}default:{u=q;v=1}}while(0);o=u;t=0;while(1){if((o|32|0)!=(a[190442+t>>0]|0)){w=o;x=t;break}do if(t>>>0<7){y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;z=d[y>>0]|0;break}else{z=R1(b)|0;break}}else z=o;while(0);y=t+1|0;if(y>>>0<8){o=z;t=y}else{w=z;x=y;break}}c:do switch(x|0){case 8:break;case 3:{l=23;break}default:{t=(f|0)!=0;if(t&x>>>0>3)if((x|0)==8)break c;else{l=23;break c}d:do if(!x){o=w;y=0;while(1){if((o|32|0)!=(a[193380+y>>0]|0)){A=o;B=y;break d}do if(y>>>0<2){D=c[e>>2]|0;if(D>>>0<(c[n>>2]|0)>>>0){c[e>>2]=D+1;E=d[D>>0]|0;break}else{E=R1(b)|0;break}}else E=o;while(0);D=y+1|0;if(D>>>0<3){o=E;y=D}else{A=E;B=D;break}}}else{A=w;B=x}while(0);switch(B|0){case 3:{y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;F=d[y>>0]|0}else F=R1(b)|0;if((F|0)==40)G=1;else{if(!(c[n>>2]|0)){m=r;break a}c[e>>2]=(c[e>>2]|0)+-1;m=r;break a}while(1){y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;H=d[y>>0]|0}else H=R1(b)|0;if(!((H+-48|0)>>>0<10|(H+-65|0)>>>0<26)?!((H|0)==95|(H+-97|0)>>>0<26):0){I=H;J=G;break}G=G+1|0}if((I|0)==41){m=r;break a}y=(c[n>>2]|0)==0;if(!y)c[e>>2]=(c[e>>2]|0)+-1;if(!t){c[(L1()|0)>>2]=22;Q1(b,0);m=0.0;break a}if(!J){m=r;break a}else K=J;while(1){K=K+-1|0;if(!y)c[e>>2]=(c[e>>2]|0)+-1;if(!K){m=r;break a}}break}case 0:{do if((A|0)==48){y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;L=d[y>>0]|0}else L=R1(b)|0;if((L|32|0)!=120){if(!(c[n>>2]|0)){M=48;break}c[e>>2]=(c[e>>2]|0)+-1;M=48;break}y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;O=d[y>>0]|0;P=0}else{O=R1(b)|0;P=0}e:while(1){switch(O|0){case 46:{Q=P;l=74;break e;break}case 48:break;default:{R=0;S=0;T=0;U=0;V=O;W=P;X=0;Y=0;Z=1.0;$=0;aa=0.0;break e}}y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;O=d[y>>0]|0;P=1;continue}else{O=R1(b)|0;P=1;continue}}if((l|0)==74){y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;ba=d[y>>0]|0}else ba=R1(b)|0;if((ba|0)==48){y=0;t=0;while(1){o=c[e>>2]|0;if(o>>>0<(c[n>>2]|0)>>>0){c[e>>2]=o+1;ca=d[o>>0]|0}else ca=R1(b)|0;o=V4(y|0,t|0,-1,-1)|0;D=C;if((ca|0)==48){y=o;t=D}else{R=0;S=0;T=o;U=D;V=ca;W=1;X=1;Y=0;Z=1.0;$=0;aa=0.0;break}}}else{R=0;S=0;T=0;U=0;V=ba;W=Q;X=1;Y=0;Z=1.0;$=0;aa=0.0}}while(1){t=V+-48|0;y=V|32;if(t>>>0>=10){D=(V|0)==46;if(!(D|(y+-97|0)>>>0<6)){da=S;ea=T;fa=R;ga=U;ha=V;ia=W;ja=X;ka=$;la=aa;break}if(D)if(!X){ma=S;na=R;oa=S;pa=R;qa=W;ra=1;sa=Y;ta=Z;ua=$;va=aa}else{da=S;ea=T;fa=R;ga=U;ha=46;ia=W;ja=X;ka=$;la=aa;break}else l=86}else l=86;if((l|0)==86){l=0;D=(V|0)>57?y+-87|0:t;do if(!((R|0)<0|(R|0)==0&S>>>0<8)){if((R|0)<0|(R|0)==0&S>>>0<14){wa=Z*.0625;xa=Y;ya=wa;za=$;Aa=aa+wa*+(D|0);break}if((Y|0)!=0|(D|0)==0){xa=Y;ya=Z;za=$;Aa=aa}else{xa=1;ya=Z;za=$;Aa=aa+Z*.5}}else{xa=Y;ya=Z;za=D+($<<4)|0;Aa=aa}while(0);D=V4(S|0,R|0,1,0)|0;ma=T;na=U;oa=D;pa=C;qa=1;ra=X;sa=xa;ta=ya;ua=za;va=Aa}D=c[e>>2]|0;if(D>>>0<(c[n>>2]|0)>>>0){c[e>>2]=D+1;R=pa;S=oa;T=ma;U=na;V=d[D>>0]|0;W=qa;X=ra;Y=sa;Z=ta;$=ua;aa=va;continue}else{R=pa;S=oa;T=ma;U=na;V=R1(b)|0;W=qa;X=ra;Y=sa;Z=ta;$=ua;aa=va;continue}}if(!ia){D=(c[n>>2]|0)==0;if(!D)c[e>>2]=(c[e>>2]|0)+-1;if(f){if(!D?(D=c[e>>2]|0,c[e>>2]=D+-1,(ja|0)!=0):0)c[e>>2]=D+-2}else Q1(b,0);m=+(v|0)*0.0;break a}D=(ja|0)==0;t=D?da:ea;y=D?fa:ga;if((fa|0)<0|(fa|0)==0&da>>>0<8){D=da;o=fa;Ba=ka;while(1){Ca=Ba<<4;D=V4(D|0,o|0,1,0)|0;o=C;if(!((o|0)<0|(o|0)==0&D>>>0<8)){Da=Ca;break}else Ba=Ca}}else Da=ka;if((ha|32|0)==112){Ba=a4(b,f)|0;D=C;if((Ba|0)==0&(D|0)==-2147483648){if(!f){Q1(b,0);m=0.0;break a}if(!(c[n>>2]|0)){Ea=0;Fa=0}else{c[e>>2]=(c[e>>2]|0)+-1;Ea=0;Fa=0}}else{Ea=Ba;Fa=D}}else if(!(c[n>>2]|0)){Ea=0;Fa=0}else{c[e>>2]=(c[e>>2]|0)+-1;Ea=0;Fa=0}D=a5(t|0,y|0,2)|0;Ba=V4(D|0,C|0,-32,-1)|0;D=V4(Ba|0,C|0,Ea|0,Fa|0)|0;Ba=C;if(!Da){m=+(v|0)*0.0;break a}if((Ba|0)>0|(Ba|0)==0&D>>>0>(0-k|0)>>>0){c[(L1()|0)>>2]=34;m=+(v|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}o=k+-106|0;Ca=((o|0)<0)<<31>>31;if((Ba|0)<(Ca|0)|(Ba|0)==(Ca|0)&D>>>0>>0){c[(L1()|0)>>2]=34;m=+(v|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((Da|0)>-1){o=D;Ca=Ba;Ga=Da;wa=la;while(1){Ha=!(wa>=.5);Ia=Ha&1|Ga<<1;Ja=Ia^1;Ka=wa+(Ha?wa:wa+-1.0);Ha=V4(o|0,Ca|0,-1,-1)|0;La=C;if((Ia|0)>-1){o=Ha;Ca=La;Ga=Ja;wa=Ka}else{Ma=Ha;Na=La;Oa=Ja;Pa=Ka;break}}}else{Ma=D;Na=Ba;Oa=Da;Pa=la}Ga=U4(32,0,k|0,((k|0)<0)<<31>>31|0)|0;Ca=V4(Ma|0,Na|0,Ga|0,C|0)|0;Ga=C;if(0>(Ga|0)|0==(Ga|0)&j>>>0>Ca>>>0)if((Ca|0)<0){Qa=0;l=127}else{Ra=Ca;l=125}else{Ra=j;l=125}if((l|0)==125)if((Ra|0)<53){Qa=Ra;l=127}else{Sa=Ra;Ta=+(v|0);Ua=0.0}if((l|0)==127){wa=+(v|0);Sa=Qa;Ta=wa;Ua=+_1(+g2(1.0,84-Qa|0),wa)}Ca=(Oa&1|0)==0&(Pa!=0.0&(Sa|0)<32);wa=Ta*(Ca?0.0:Pa)+(Ua+Ta*+(((Ca&1)+Oa|0)>>>0))-Ua;if(!(wa!=0.0))c[(L1()|0)>>2]=34;m=+h2(wa,Ma);break a}else M=A;while(0);Ca=k+j|0;Ga=0-Ca|0;o=M;y=0;f:while(1){switch(o|0){case 46:{Va=y;l=138;break f;break}case 48:break;default:{Wa=o;Xa=0;Ya=0;Za=y;_a=0;break f}}t=c[e>>2]|0;if(t>>>0<(c[n>>2]|0)>>>0){c[e>>2]=t+1;o=d[t>>0]|0;y=1;continue}else{o=R1(b)|0;y=1;continue}}if((l|0)==138){y=c[e>>2]|0;if(y>>>0<(c[n>>2]|0)>>>0){c[e>>2]=y+1;$a=d[y>>0]|0}else $a=R1(b)|0;if(($a|0)==48){y=0;o=0;while(1){t=V4(y|0,o|0,-1,-1)|0;Ja=C;La=c[e>>2]|0;if(La>>>0<(c[n>>2]|0)>>>0){c[e>>2]=La+1;ab=d[La>>0]|0}else ab=R1(b)|0;if((ab|0)==48){y=t;o=Ja}else{Wa=ab;Xa=t;Ya=Ja;Za=1;_a=1;break}}}else{Wa=$a;Xa=0;Ya=0;Za=Va;_a=1}}c[h>>2]=0;o=Wa+-48|0;y=(Wa|0)==46;g:do if(y|o>>>0<10){Ja=h+496|0;t=Wa;La=0;Ha=0;Ia=y;bb=o;cb=Xa;db=Ya;eb=Za;fb=_a;gb=0;hb=0;ib=0;h:while(1){do if(Ia)if(!fb){jb=La;kb=Ha;lb=La;mb=Ha;nb=eb;ob=1;pb=gb;qb=hb;rb=ib}else{sb=cb;tb=db;ub=La;vb=Ha;wb=eb;xb=gb;yb=hb;zb=ib;break h}else{Ab=V4(La|0,Ha|0,1,0)|0;Bb=C;Cb=(t|0)!=48;if((hb|0)>=125){if(!Cb){jb=cb;kb=db;lb=Ab;mb=Bb;nb=eb;ob=fb;pb=gb;qb=hb;rb=ib;break}c[Ja>>2]=c[Ja>>2]|1;jb=cb;kb=db;lb=Ab;mb=Bb;nb=eb;ob=fb;pb=gb;qb=hb;rb=ib;break}Db=h+(hb<<2)|0;if(!gb)Eb=bb;else Eb=t+-48+((c[Db>>2]|0)*10|0)|0;c[Db>>2]=Eb;Db=gb+1|0;Fb=(Db|0)==9;jb=cb;kb=db;lb=Ab;mb=Bb;nb=1;ob=fb;pb=Fb?0:Db;qb=(Fb&1)+hb|0;rb=Cb?Ab:ib}while(0);Ab=c[e>>2]|0;if(Ab>>>0<(c[n>>2]|0)>>>0){c[e>>2]=Ab+1;Gb=d[Ab>>0]|0}else Gb=R1(b)|0;bb=Gb+-48|0;Ia=(Gb|0)==46;if(!(Ia|bb>>>0<10)){Hb=Gb;Ib=lb;Jb=jb;Kb=mb;Lb=kb;Mb=nb;Nb=ob;Ob=pb;Pb=qb;Qb=rb;l=161;break g}else{t=Gb;La=lb;Ha=mb;cb=jb;db=kb;eb=nb;fb=ob;gb=pb;hb=qb;ib=rb}}Rb=ub;Sb=vb;Tb=sb;Ub=tb;Vb=(wb|0)!=0;Wb=xb;Xb=yb;Yb=zb;l=169}else{Hb=Wa;Ib=0;Jb=Xa;Kb=0;Lb=Ya;Mb=Za;Nb=_a;Ob=0;Pb=0;Qb=0;l=161}while(0);do if((l|0)==161){o=(Nb|0)==0;y=o?Ib:Jb;ib=o?Kb:Lb;o=(Mb|0)!=0;if(!((Hb|32|0)==101&o))if((Hb|0)>-1){Rb=Ib;Sb=Kb;Tb=y;Ub=ib;Vb=o;Wb=Ob;Xb=Pb;Yb=Qb;l=169;break}else{Zb=Ib;_b=Kb;$b=o;ac=y;bc=ib;cc=Ob;dc=Pb;ec=Qb;l=171;break}o=a4(b,f)|0;hb=C;if((o|0)==0&(hb|0)==-2147483648){if(!f){Q1(b,0);fc=0.0;break}if(!(c[n>>2]|0)){gc=0;hc=0}else{c[e>>2]=(c[e>>2]|0)+-1;gc=0;hc=0}}else{gc=o;hc=hb}hb=V4(gc|0,hc|0,y|0,ib|0)|0;ic=hb;jc=Ib;kc=C;lc=Kb;mc=Ob;nc=Pb;oc=Qb;l=173}while(0);if((l|0)==169)if(c[n>>2]|0){c[e>>2]=(c[e>>2]|0)+-1;if(Vb){ic=Tb;jc=Rb;kc=Ub;lc=Sb;mc=Wb;nc=Xb;oc=Yb;l=173}else l=172}else{Zb=Rb;_b=Sb;$b=Vb;ac=Tb;bc=Ub;cc=Wb;dc=Xb;ec=Yb;l=171}if((l|0)==171)if($b){ic=ac;jc=Zb;kc=bc;lc=_b;mc=cc;nc=dc;oc=ec;l=173}else l=172;do if((l|0)==172){c[(L1()|0)>>2]=22;Q1(b,0);fc=0.0}else if((l|0)==173){hb=c[h>>2]|0;if(!hb){fc=+(v|0)*0.0;break}if(((lc|0)<0|(lc|0)==0&jc>>>0<10)&((ic|0)==(jc|0)&(kc|0)==(lc|0))?j>>>0>30|(hb>>>j|0)==0:0){fc=+(v|0)*+(hb>>>0);break}hb=(k|0)/-2|0;ib=((hb|0)<0)<<31>>31;if((kc|0)>(ib|0)|(kc|0)==(ib|0)&ic>>>0>hb>>>0){c[(L1()|0)>>2]=34;fc=+(v|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}hb=k+-106|0;ib=((hb|0)<0)<<31>>31;if((kc|0)<(ib|0)|(kc|0)==(ib|0)&ic>>>0>>0){c[(L1()|0)>>2]=34;fc=+(v|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(!mc)pc=nc;else{if((mc|0)<9){hb=h+(nc<<2)|0;ib=c[hb>>2]|0;y=mc;while(1){o=ib*10|0;y=y+1|0;if((y|0)==9){qc=o;break}else ib=o}c[hb>>2]=qc}pc=nc+1|0}if((oc|0)<9?(oc|0)<=(ic|0)&(ic|0)<18:0){if((ic|0)==9){fc=+(v|0)*+((c[h>>2]|0)>>>0);break}if((ic|0)<9){fc=+(v|0)*+((c[h>>2]|0)>>>0)/+(c[99076+(8-ic<<2)>>2]|0);break}ib=j+27+(_(ic,-3)|0)|0;y=c[h>>2]|0;if((ib|0)>30|(y>>>ib|0)==0){fc=+(v|0)*+(y>>>0)*+(c[99076+(ic+-10<<2)>>2]|0);break}}y=(ic|0)%9|0;if(!y){rc=0;sc=0;tc=ic;uc=pc}else{ib=(ic|0)>-1?y:y+9|0;y=c[99076+(8-ib<<2)>>2]|0;if(pc){o=1e9/(y|0)|0;gb=0;fb=0;eb=0;db=ic;while(1){cb=h+(eb<<2)|0;Ha=c[cb>>2]|0;La=((Ha>>>0)/(y>>>0)|0)+fb|0;c[cb>>2]=La;cb=_((Ha>>>0)%(y>>>0)|0,o)|0;Ha=(eb|0)==(gb|0)&(La|0)==0;eb=eb+1|0;La=Ha?db+-9|0:db;t=Ha?eb&127:gb;if((eb|0)==(pc|0)){vc=cb;wc=t;xc=La;break}else{gb=t;fb=cb;db=La}}if(!vc){yc=wc;zc=xc;Ac=pc}else{c[h+(pc<<2)>>2]=vc;yc=wc;zc=xc;Ac=pc+1|0}}else{yc=0;zc=ic;Ac=0}rc=yc;sc=0;tc=9-ib+zc|0;uc=Ac}i:while(1){db=(tc|0)<18;fb=(tc|0)==18;gb=h+(rc<<2)|0;eb=sc;o=uc;while(1){if(!db){if(!fb){Bc=rc;Cc=eb;Dc=tc;Ec=o;break i}if((c[gb>>2]|0)>>>0>=9007199){Bc=rc;Cc=eb;Dc=18;Ec=o;break i}}y=0;hb=o+127|0;La=o;while(1){cb=hb&127;t=h+(cb<<2)|0;Ha=a5(c[t>>2]|0,0,29)|0;bb=V4(Ha|0,C|0,y|0,0)|0;Ha=C;if(Ha>>>0>0|(Ha|0)==0&bb>>>0>1e9){Ia=h5(bb|0,Ha|0,1e9,0)|0;Ja=i5(bb|0,Ha|0,1e9,0)|0;Fc=Ja;Gc=Ia}else{Fc=bb;Gc=0}c[t>>2]=Fc;t=(cb|0)==(rc|0);bb=(cb|0)!=(La+127&127|0)|t?La:(Fc|0)==0?cb:La;if(t){Hc=Gc;Ic=bb;break}else{y=Gc;hb=cb+-1|0;La=bb}}La=eb+-29|0;if(!Hc){eb=La;o=Ic}else{Jc=La;Kc=Hc;Lc=Ic;break}}o=rc+127&127;if((o|0)==(Lc|0)){eb=Lc+127&127;gb=h+((Lc+126&127)<<2)|0;c[gb>>2]=c[gb>>2]|c[h+(eb<<2)>>2];Mc=eb}else Mc=Lc;c[h+(o<<2)>>2]=Kc;rc=o;sc=Jc;tc=tc+9|0;uc=Mc}j:while(1){Nc=Ec+1&127;ib=h+((Ec+127&127)<<2)|0;o=Bc;eb=Cc;gb=Dc;while(1){fb=(gb|0)==18;db=(gb|0)>27?9:1;La=fb^1;Oc=o;Pc=eb;while(1){Qc=Oc&127;Rc=(Qc|0)==(Ec|0);do if(!Rc){hb=c[h+(Qc<<2)>>2]|0;if(hb>>>0<9007199){l=219;break}if(hb>>>0>9007199)break;hb=Oc+1&127;if((hb|0)==(Ec|0)){l=219;break}y=c[h+(hb<<2)>>2]|0;if(y>>>0<254740991){l=219;break}if(!(y>>>0>254740991|La)){Sc=Qc;Tc=Oc;Uc=Pc;Vc=Ec;break j}}else l=219;while(0);if((l|0)==219?(l=0,fb):0){l=220;break j}y=Pc+db|0;if((Oc|0)==(Ec|0)){Oc=Ec;Pc=y}else{Wc=y;Xc=Oc;break}}fb=(1<>>db;y=Xc;hb=0;bb=Xc;cb=gb;while(1){t=h+(bb<<2)|0;Ia=c[t>>2]|0;Ja=(Ia>>>db)+hb|0;c[t>>2]=Ja;t=_(Ia&fb,La)|0;Ia=(bb|0)==(y|0)&(Ja|0)==0;bb=bb+1&127;Ja=Ia?cb+-9|0:cb;Ha=Ia?bb:y;if((bb|0)==(Ec|0)){Yc=t;Zc=Ha;_c=Ja;break}else{y=Ha;hb=t;cb=Ja}}if(!Yc){o=Zc;eb=Wc;gb=_c;continue}if((Nc|0)!=(Zc|0)){$c=Wc;ad=Yc;bd=Zc;cd=_c;break}c[ib>>2]=c[ib>>2]|1;o=Zc;eb=Wc;gb=_c}c[h+(Ec<<2)>>2]=ad;Bc=bd;Cc=$c;Dc=cd;Ec=Nc}if((l|0)==220)if(Rc){c[h+(Nc+-1<<2)>>2]=0;Sc=Ec;Tc=Oc;Uc=Pc;Vc=Nc}else{Sc=Qc;Tc=Oc;Uc=Pc;Vc=Ec}wa=+((c[h+(Sc<<2)>>2]|0)>>>0);gb=Tc+1&127;if((gb|0)==(Vc|0)){eb=Tc+2&127;c[h+(eb+-1<<2)>>2]=0;dd=eb}else dd=Vc;Ka=+(v|0);ed=Ka*(wa*1.0e9+ +((c[h+(gb<<2)>>2]|0)>>>0));gb=Uc+53|0;eb=gb-k|0;o=(eb|0)<(j|0);ib=o&1;cb=o?((eb|0)<0?0:eb):j;if((cb|0)<53){wa=+_1(+g2(1.0,105-cb|0),ed);fd=+a2(ed,+g2(1.0,53-cb|0));gd=wa;hd=fd;id=wa+(ed-fd)}else{gd=0.0;hd=0.0;id=ed}hb=Tc+2&127;do if((hb|0)==(dd|0))jd=hd;else{y=c[h+(hb<<2)>>2]|0;do if(y>>>0>=5e8){if(y>>>0>5e8){kd=Ka*.75+hd;break}if((Tc+3&127|0)==(dd|0)){kd=Ka*.5+hd;break}else{kd=Ka*.75+hd;break}}else{if((y|0)==0?(Tc+3&127|0)==(dd|0):0){kd=hd;break}kd=Ka*.25+hd}while(0);if((53-cb|0)<=1){jd=kd;break}if(+a2(kd,1.0)!=0.0){jd=kd;break}jd=kd+1.0}while(0);Ka=id+jd-gd;do if((gb&2147483647|0)>(-2-Ca|0)){if(!(+N(+Ka)>=9007199254740992.0)){ld=ib;md=Uc;nd=Ka}else{ld=o&(cb|0)==(eb|0)?0:ib;md=Uc+1|0;nd=Ka*.5}if((md+50|0)<=(Ga|0)?!(jd!=0.0&(ld|0)!=0):0){od=md;pd=nd;break}c[(L1()|0)>>2]=34;od=md;pd=nd}else{od=Uc;pd=Ka}while(0);fc=+h2(pd,od)}while(0);m=fc;break a;break}default:{if(c[n>>2]|0)c[e>>2]=(c[e>>2]|0)+-1;c[(L1()|0)>>2]=22;Q1(b,0);m=0.0;break a}}}}while(0);if((l|0)==23){Ga=(c[n>>2]|0)==0;if(!Ga)c[e>>2]=(c[e>>2]|0)+-1;if((f|0)!=0&x>>>0>3){Ca=x;do{if(!Ga)c[e>>2]=(c[e>>2]|0)+-1;Ca=Ca+-1|0}while(Ca>>>0>3)}}m=+(v|0)*s}while(0);i=g;return +m}function O1(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;a:do if(e>>>0>36){c[(L1()|0)>>2]=22;i=0;j=0}else{k=b+4|0;l=b+100|0;do{m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;n=d[m>>0]|0}else n=R1(b)|0}while((r1(n)|0)!=0);o=n;b:do switch(o|0){case 43:case 45:{m=((o|0)==45)<<31>>31;p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;q=d[p>>0]|0;r=m;break b}else{q=R1(b)|0;r=m;break b}break}default:{q=o;r=0}}while(0);m=(e|0)==0;do if((e&-17|0)==0&(q|0)==48){p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;s=d[p>>0]|0}else s=R1(b)|0;if((s|32|0)!=120)if(m){t=8;u=s;v=46;break}else{w=e;x=s;v=32;break}p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;y=d[p>>0]|0}else y=R1(b)|0;if((d[190452+y>>0]|0)>15){p=(c[l>>2]|0)==0;if(!p)c[k>>2]=(c[k>>2]|0)+-1;if(!f){Q1(b,0);i=0;j=0;break a}if(p){i=0;j=0;break a}c[k>>2]=(c[k>>2]|0)+-1;i=0;j=0;break a}else{t=16;u=y;v=46}}else{p=m?10:e;if((d[190452+q>>0]|0)>>>0

    >>0){w=p;x=q;v=32}else{if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;Q1(b,0);c[(L1()|0)>>2]=22;i=0;j=0;break a}}while(0);if((v|0)==32)if((w|0)==10){m=x+-48|0;if(m>>>0<10){p=m;m=0;while(1){z=(m*10|0)+p|0;A=c[k>>2]|0;if(A>>>0<(c[l>>2]|0)>>>0){c[k>>2]=A+1;B=d[A>>0]|0}else B=R1(b)|0;p=B+-48|0;if(!(p>>>0<10&z>>>0<429496729)){D=z;E=B;break}else m=z}F=D;G=0;H=E}else{F=0;G=0;H=x}m=H+-48|0;if(m>>>0<10){p=F;z=G;A=m;m=H;while(1){I=g5(p|0,z|0,10,0)|0;J=C;K=((A|0)<0)<<31>>31;L=~K;if(J>>>0>L>>>0|(J|0)==(L|0)&I>>>0>~A>>>0){M=A;N=p;O=z;P=m;break}L=V4(I|0,J|0,A|0,K|0)|0;K=C;J=c[k>>2]|0;if(J>>>0<(c[l>>2]|0)>>>0){c[k>>2]=J+1;Q=d[J>>0]|0}else Q=R1(b)|0;J=Q+-48|0;if(J>>>0<10&(K>>>0<429496729|(K|0)==429496729&L>>>0<2576980378)){p=L;z=K;A=J;m=Q}else{M=J;N=L;O=K;P=Q;break}}if(M>>>0>9){R=O;S=N;T=r}else{U=10;V=N;W=O;X=P;v=72}}else{R=G;S=F;T=r}}else{t=w;u=x;v=46}c:do if((v|0)==46){if(!(t+-1&t)){m=a[190708+((t*23|0)>>>5&7)>>0]|0;A=a[190452+u>>0]|0;z=A&255;if(z>>>0>>0){p=z;z=0;while(1){K=p|z<>2]|0;if(L>>>0<(c[l>>2]|0)>>>0){c[k>>2]=L+1;Y=d[L>>0]|0}else Y=R1(b)|0;L=a[190452+Y>>0]|0;p=L&255;if(!(K>>>0<134217728&p>>>0>>0)){Z=K;$=L;aa=Y;break}else z=K}ba=$;ca=0;da=Z;ea=aa}else{ba=A;ca=0;da=0;ea=u}z=X4(-1,-1,m|0)|0;p=C;if((ba&255)>>>0>=t>>>0|(ca>>>0>p>>>0|(ca|0)==(p|0)&da>>>0>z>>>0)){U=t;V=da;W=ca;X=ea;v=72;break}else{fa=da;ga=ca;ha=ba}while(1){K=a5(fa|0,ga|0,m|0)|0;L=C;J=ha&255|K;K=c[k>>2]|0;if(K>>>0<(c[l>>2]|0)>>>0){c[k>>2]=K+1;ia=d[K>>0]|0}else ia=R1(b)|0;ha=a[190452+ia>>0]|0;if((ha&255)>>>0>=t>>>0|(L>>>0>p>>>0|(L|0)==(p|0)&J>>>0>z>>>0)){U=t;V=J;W=L;X=ia;v=72;break c}else{fa=J;ga=L}}}z=a[190452+u>>0]|0;p=z&255;if(p>>>0>>0){m=p;p=0;while(1){A=m+(_(p,t)|0)|0;L=c[k>>2]|0;if(L>>>0<(c[l>>2]|0)>>>0){c[k>>2]=L+1;ja=d[L>>0]|0}else ja=R1(b)|0;L=a[190452+ja>>0]|0;m=L&255;if(!(A>>>0<119304647&m>>>0>>0)){ka=A;la=L;ma=ja;break}else p=A}na=la;oa=ka;pa=0;qa=ma}else{na=z;oa=0;pa=0;qa=u}if((na&255)>>>0>>0){p=h5(-1,-1,t|0,0)|0;m=C;A=pa;L=oa;J=na;K=qa;while(1){if(A>>>0>m>>>0|(A|0)==(m|0)&L>>>0>p>>>0){U=t;V=L;W=A;X=K;v=72;break c}I=g5(L|0,A|0,t|0,0)|0;ra=C;sa=J&255;if(ra>>>0>4294967295|(ra|0)==-1&I>>>0>~sa>>>0){U=t;V=L;W=A;X=K;v=72;break c}ta=V4(sa|0,0,I|0,ra|0)|0;ra=C;I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;ua=d[I>>0]|0}else ua=R1(b)|0;J=a[190452+ua>>0]|0;if((J&255)>>>0>=t>>>0){U=t;V=ta;W=ra;X=ua;v=72;break}else{A=ra;L=ta;K=ua}}}else{U=t;V=oa;W=pa;X=qa;v=72}}while(0);if((v|0)==72)if((d[190452+X>>0]|0)>>>0>>0){do{K=c[k>>2]|0;if(K>>>0<(c[l>>2]|0)>>>0){c[k>>2]=K+1;va=d[K>>0]|0}else va=R1(b)|0}while((d[190452+va>>0]|0)>>>0>>0);c[(L1()|0)>>2]=34;R=h;S=g;T=(g&1|0)==0&0==0?r:0}else{R=W;S=V;T=r}if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;if(!(R>>>0>>0|(R|0)==(h|0)&S>>>0>>0)){if(!((g&1|0)!=0|0!=0|(T|0)!=0)){c[(L1()|0)>>2]=34;K=V4(g|0,h|0,-1,-1)|0;i=C;j=K;break}if(R>>>0>h>>>0|(R|0)==(h|0)&S>>>0>g>>>0){c[(L1()|0)>>2]=34;i=h;j=g;break}}K=((T|0)<0)<<31>>31;L=U4(S^T|0,R^K|0,T|0,K|0)|0;i=C;j=L}while(0);C=i;return j|0}function P1(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=b;e=190717;f=d+15|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(!c){a[b+14>>0]=48;a[b+15>>0]=0}else{e=14;d=c;while(1){f=e+1|0;if(d>>>0<10){g=f;break}else{e=f;d=(d>>>0)/10|0}}a[b+g>>0]=0;d=c;c=g;while(1){c=c+-1|0;a[b+c>>0]=(d>>>0)%10|0|48;if(d>>>0<10)break;else d=(d>>>0)/10|0}}return}function Q1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function R1(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=b+104|0;f=c[e>>2]|0;if((f|0)!=0?(c[b+108>>2]|0)>=(f|0):0)g=4;else{f=Q2(b)|0;if((f|0)>=0){h=c[e>>2]|0;e=c[b+8>>2]|0;if(h){i=c[b+4>>2]|0;j=h-(c[b+108>>2]|0)|0;h=e;if((e-i|0)<(j|0)){k=h;g=9}else{c[b+100>>2]=i+(j+-1);l=h}}else{k=e;g=9}if((g|0)==9){c[b+100>>2]=e;l=k}k=b+4|0;if(!l)m=c[k>>2]|0;else{e=c[k>>2]|0;k=b+108|0;c[k>>2]=l+1-e+(c[k>>2]|0);m=e}e=m+-1|0;if((d[e>>0]|0|0)==(f|0))n=f;else{a[e>>0]=f;n=f}}else g=4}if((g|0)==4){c[b+100>>2]=0;n=-1}return n|0}function S1(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(L1()|0)>>2]=0-a;b=-1}else b=a;return b|0}function T1(a,b){a=a|0;b=b|0;return 190732}function U1(a,b){a=+a;b=+b;var c=0.0,d=0.0,e=0.0,f=0.0;c=a*a;d=c*c;e=c*.5;f=1.0-e;return +(f+(1.0-f-e+(c*(c*(c*(c*2.480158728947673e-05+-.001388888888887411)+.0416666666666666)+d*d*(c*(2.087572321298175e-09-c*1.1359647557788195e-11)+-2.7557314351390663e-07))-a*b)))}function V1(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0,j=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0;d=i;i=i+48|0;e=d+16|0;f=d;h[k>>3]=a;g=c[k>>2]|0;j=c[k+4>>2]|0;l=X4(g|0,j|0,63)|0;m=j&2147483647;do if(m>>>0<1074752123)if((j&1048575|0)!=598523){n=(l|0)!=0;if(m>>>0<1073928573)if(n){o=a+1.5707963267341256;p=o+6.077100506506192e-11;h[b>>3]=p;h[b+8>>3]=o-p+6.077100506506192e-11;q=-1;break}else{p=a+-1.5707963267341256;o=p+-6.077100506506192e-11;h[b>>3]=o;h[b+8>>3]=p-o+-6.077100506506192e-11;q=1;break}else if(n){o=a+3.1415926534682512;p=o+1.2154201013012384e-10;h[b>>3]=p;h[b+8>>3]=o-p+1.2154201013012384e-10;q=-2;break}else{p=a+-3.1415926534682512;o=p+-1.2154201013012384e-10;h[b>>3]=o;h[b+8>>3]=p-o+-1.2154201013012384e-10;q=2;break}}else r=21;else{if(m>>>0>=1075594812){if(m>>>0<1094263291){r=21;break}if(m>>>0>2146435071){o=a-a;h[b+8>>3]=o;h[b>>3]=o;q=0;break}c[k>>2]=g;c[k+4>>2]=j&1048575|1096810496;o=+h[k>>3];p=+(~~o|0);h[e>>3]=p;s=(o-p)*16777216.0;p=+(~~s|0);h[e+8>>3]=p;o=(s-p)*16777216.0;h[e+16>>3]=o;if(o==0.0){n=1;while(1)if(+h[e+(n<<3)>>3]==0.0)n=n+-1|0;else{t=n;break}}else t=2;n=W1(e,f,(m>>>20)+-1046|0,t+1|0,1)|0;o=+h[f>>3];p=+h[f+8>>3];if(!l){h[b>>3]=o;h[b+8>>3]=p;q=n;break}else{h[b>>3]=-o;h[b+8>>3]=-p;q=0-n|0;break}}if(m>>>0<1075183037){if((m|0)==1074977148){r=21;break}if(!l){p=a+-4.712388980202377;o=p+-1.8231301519518578e-10;h[b>>3]=o;h[b+8>>3]=p-o+-1.8231301519518578e-10;q=3;break}else{o=a+4.712388980202377;p=o+1.8231301519518578e-10;h[b>>3]=p;h[b+8>>3]=o-p+1.8231301519518578e-10;q=-3;break}}else{if((m|0)==1075388923){r=21;break}if(!l){p=a+-6.2831853069365025;o=p+-2.430840202602477e-10;h[b>>3]=o;h[b+8>>3]=p-o+-2.430840202602477e-10;q=4;break}else{o=a+6.2831853069365025;p=o+2.430840202602477e-10;h[b>>3]=p;h[b+8>>3]=o-p+2.430840202602477e-10;q=-4;break}}}while(0);if((r|0)==21){p=a*.6366197723675814+6755399441055744.0+-6755399441055744.0;r=~~p;o=a-p*1.5707963267341256;a=p*6.077100506506192e-11;s=o-a;h[b>>3]=s;h[k>>3]=s;l=X4(c[k>>2]|0,c[k+4>>2]|0,52)|0;f=m>>>20;if((f-(l&2047)|0)>16){u=p*6.077100506303966e-11;v=o-u;w=p*2.0222662487959506e-21-(o-v-u);u=v-w;h[b>>3]=u;h[k>>3]=u;l=X4(c[k>>2]|0,c[k+4>>2]|0,52)|0;if((f-(l&2047)|0)>49){x=p*2.0222662487111665e-21;y=v-x;z=p*8.4784276603689e-32-(v-y-x);x=y-z;h[b>>3]=x;A=x;B=y;C=z}else{A=u;B=v;C=w}}else{A=s;B=o;C=a}h[b+8>>3]=B-A-C;q=r}i=d;return q|0}function W1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0,D=0.0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0,L=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0.0,ba=0,ca=0,da=0,ea=0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0;g=i;i=i+560|0;j=g+480|0;k=g+320|0;l=g+160|0;m=g;n=c[99108+(f<<2)>>2]|0;o=e+-1|0;p=(d+-3|0)/24|0;q=(p|0)<0?0:p;p=(q*24|0)+24|0;r=d-p|0;if((n+o|0)>=0){s=n+e|0;t=0;u=q-o|0;while(1){if((u|0)<0)v=0.0;else v=+(c[99124+(u<<2)>>2]|0);h[k+(t<<3)>>3]=v;t=t+1|0;if((t|0)==(s|0))break;else u=u+1|0}}u=(e|0)>0;s=0;while(1){if(u){t=s+o|0;v=0.0;w=0;while(1){x=v+ +h[a+(w<<3)>>3]*+h[k+(t-w<<3)>>3];w=w+1|0;if((w|0)==(e|0)){y=x;break}else v=x}}else y=0.0;h[m+(s<<3)>>3]=y;if((s|0)<(n|0))s=s+1|0;else break}s=(r|0)>0;o=24-r|0;u=23-r|0;w=(e|0)>0;t=(p|0)==(d|0);d=n;a:while(1){y=+h[m+(d<<3)>>3];p=(d|0)>0;if(p){z=0;A=d;v=y;while(1){x=+(~~(v*5.9604644775390625e-08)|0);c[j+(z<<2)>>2]=~~(v-x*16777216.0);B=A;A=A+-1|0;C=x+ +h[m+(A<<3)>>3];if((B|0)<=1){D=C;break}else{z=z+1|0;v=C}}}else D=y;v=+g2(D,r);C=v-+M(+(v*.125))*8.0;z=~~C;v=C-+(z|0);do if(!s)if(!t)if(!(v>=.5)){E=0;F=z;G=v;break}else{H=2;I=z;J=20;break}else{K=c[j+(d+-1<<2)>>2]>>23;L=z;J=19;break}else{A=j+(d+-1<<2)|0;B=c[A>>2]|0;N=B>>o;O=B-(N<>2]=O;K=O>>u;L=N+z|0;J=19}while(0);if((J|0)==19){J=0;if((K|0)>0){H=K;I=L;J=20}else{E=K;F=L;G=v}}if((J|0)==20){J=0;z=I+1|0;if(p){N=0;O=0;while(1){A=j+(O<<2)|0;B=c[A>>2]|0;if(!N)if(!B)P=0;else{c[A>>2]=16777216-B;P=1}else{c[A>>2]=16777215-B;P=N}O=O+1|0;if((O|0)==(d|0)){Q=P;break}else N=P}}else Q=0;b:do if(s)switch(r|0){case 1:{N=j+(d+-1<<2)|0;c[N>>2]=c[N>>2]&8388607;break b;break}case 2:{N=j+(d+-1<<2)|0;c[N>>2]=c[N>>2]&4194303;break b;break}default:break b}while(0);if((H|0)==2){y=1.0-v;if(!Q){E=2;F=z;G=y}else{E=2;F=z;G=y-+g2(1.0,r)}}else{E=H;F=z;G=v}}if(!(G==0.0)){R=E;S=d;T=F;U=G;J=44;break}if((d|0)>(n|0)){N=d;O=0;while(1){N=N+-1|0;p=c[j+(N<<2)>>2]|O;if((N|0)<=(n|0)){V=p;break}else O=p}if(V){W=E;X=d;Y=F;J=37;break}else Z=1}else Z=1;while(1)if(!(c[j+(n-Z<<2)>>2]|0))Z=Z+1|0;else{_=Z;break}O=_+d|0;if((_|0)>0)$=d;else{d=O;continue}while(1){N=$+1|0;z=$+e|0;h[k+(z<<3)>>3]=+(c[99124+(N+q<<2)>>2]|0);if(w){v=0.0;p=0;while(1){y=v+ +h[a+(p<<3)>>3]*+h[k+(z-p<<3)>>3];p=p+1|0;if((p|0)==(e|0)){aa=y;break}else v=y}}else aa=0.0;h[m+(N<<3)>>3]=aa;if((N|0)<(O|0))$=N;else{d=O;continue a}}}do if((J|0)==37){d=X;$=r;while(1){e=$+-24|0;k=d+-1|0;if(!(c[j+(k<<2)>>2]|0)){d=k;$=e}else{ba=W;ca=k;da=Y;ea=e;break}}}else if((J|0)==44){aa=+g2(U,0-r|0);if(!(aa>=16777216.0)){c[j+(S<<2)>>2]=~~aa;ba=R;ca=S;da=T;ea=r;break}else{$=~~(aa*5.9604644775390625e-08);c[j+(S<<2)>>2]=~~(aa-+($|0)*16777216.0);d=S+1|0;c[j+(d<<2)>>2]=$;ba=R;ca=d;da=T;ea=r+24|0;break}}while(0);r=(ca|0)>-1;if(r){U=+g2(1.0,ea);ea=ca;while(1){h[m+(ea<<3)>>3]=U*+(c[j+(ea<<2)>>2]|0);if((ea|0)>0){U=U*5.9604644775390625e-08;ea=ea+-1|0}else break}if(r){ea=ca;while(1){j=ca-ea|0;U=0.0;T=0;while(1){aa=U+ +h[44064+(T<<3)>>3]*+h[m+(T+ea<<3)>>3];if((T|0)>=(n|0)|(T|0)>=(j|0)){fa=aa;break}else{U=aa;T=T+1|0}}h[l+(j<<3)>>3]=fa;if((ea|0)>0)ea=ea+-1|0;else break}}}c:do switch(f|0){case 0:{if(r){fa=0.0;ea=ca;while(1){U=fa+ +h[l+(ea<<3)>>3];if((ea|0)>0){fa=U;ea=ea+-1|0}else{ga=U;break}}}else ga=0.0;h[b>>3]=(ba|0)==0?ga:-ga;break}case 2:case 1:{if(r){fa=0.0;ea=ca;while(1){U=fa+ +h[l+(ea<<3)>>3];if((ea|0)>0){fa=U;ea=ea+-1|0}else{ha=U;break}}}else ha=0.0;ea=(ba|0)==0;h[b>>3]=ea?ha:-ha;fa=+h[l>>3]-ha;if((ca|0)<1)ia=fa;else{U=fa;j=1;while(1){fa=U+ +h[l+(j<<3)>>3];if((j|0)==(ca|0)){ia=fa;break}else{U=fa;j=j+1|0}}}h[b+8>>3]=ea?ia:-ia;break}case 3:{if((ca|0)>0){U=+h[l+(ca<<3)>>3];j=ca;do{n=j;j=j+-1|0;m=l+(j<<3)|0;fa=+h[m>>3];aa=U;U=fa+U;h[l+(n<<3)>>3]=aa+(fa-U);h[m>>3]=U}while((n|0)>1);j=(ca|0)>1;if(j){U=+h[l+(ca<<3)>>3];ea=ca;do{n=ea;ea=ea+-1|0;m=l+(ea<<3)|0;fa=+h[m>>3];aa=U;U=fa+U;h[l+(n<<3)>>3]=aa+(fa-U);h[m>>3]=U}while((ea|0)>1);if(j){U=0.0;ea=ca;while(1){fa=U+ +h[l+(ea<<3)>>3];ea=ea+-1|0;if((ea|0)<=1){ja=fa;break}else U=fa}}else ja=0.0}else ja=0.0}else ja=0.0;U=+h[l>>3];fa=+h[l+8>>3];if(!ba){h[b>>3]=U;h[b+8>>3]=fa;h[b+16>>3]=ja;break c}else{h[b>>3]=-U;h[b+8>>3]=-fa;h[b+16>>3]=-ja;break c}break}default:{}}while(0);i=g;return da&7|0}function X1(a,b,c){a=+a;b=+b;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;d=a*a;e=d*(d*d)*(d*1.58969099521155e-10+-2.5050760253406863e-08)+(d*(d*2.7557313707070068e-06+-1.984126982985795e-04)+.00833333333332249);f=d*a;if(!c)g=f*(d*e+-.16666666666666632)+a;else g=a-(f*.16666666666666632+(d*(b*.5-f*e)-b));return +g}function Y1(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,l=0,m=0,n=0.0,o=0.0;h[k>>3]=a;b=c[k>>2]|0;d=c[k+4>>2]|0;e=d&2147483647;do if(e>>>0>2146435071)f=a+a;else{if(e>>>0<1048576){h[k>>3]=a*18014398509481984.0;g=c[k+4>>2]|0;i=g&2147483647;if(!i){f=a;break}j=g;l=c[k>>2]|0;m=((i>>>0)/3|0)+696219795|0}else{j=d;l=b;m=((e>>>0)/3|0)+715094163|0}c[k>>2]=0;c[k+4>>2]=m|j&-2147483648;n=+h[k>>3];o=n*n*(n/a);h[k>>3]=n*(o*(o*o)*(o*.14599619288661245+-.758397934778766)+(o*(o*1.6214297201053545+-1.8849797954337717)+1.87595182427177));i=V4(c[k>>2]|0,c[k+4>>2]|0,-2147483648,0)|0;g=C;c[k>>2]=i&-1073741824;c[k+4>>2]=g;o=+h[k>>3];n=a/(o*o);f=o+o*((n-o)/(o+o+n))}while(0);return +f}function Z1(a,b){a=+a;b=+b;var d=0,e=0;h[k>>3]=b;d=c[k+4>>2]|0;b=+N(+a);h[k>>3]=b;e=d&-2147483648|c[k+4>>2];c[k>>2]=c[k>>2];c[k+4>>2]=e;return +(+h[k>>3])}function _1(a,b){a=+a;b=+b;return +(+Z1(a,b))}function $1(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,j=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;h[k>>3]=b;f=c[k>>2]|0;g=c[k+4>>2]|0;i=X4(d|0,e|0,52)|0;j=i&2047;i=X4(f|0,g|0,52)|0;l=i&2047;i=e&-2147483648;m=a5(f|0,g|0,1)|0;n=C;a:do if(!((m|0)==0&(n|0)==0)?(o=+N(+b),h[k>>3]=o,p=c[k+4>>2]|0,!(p>>>0>2146435072|(p|0)==2146435072&(c[k>>2]|0)>>>0>0|(j|0)==2047)):0){p=a5(d|0,e|0,1)|0;q=C;if(!(q>>>0>n>>>0|(q|0)==(n|0)&p>>>0>m>>>0))return +((p|0)==(m|0)&(q|0)==(n|0)?a*0.0:a);if(!j){q=a5(d|0,e|0,12)|0;p=C;if((p|0)>-1|(p|0)==-1&q>>>0>4294967295){r=q;q=p;p=0;while(1){s=p+-1|0;r=a5(r|0,q|0,1)|0;q=C;if(!((q|0)>-1|(q|0)==-1&r>>>0>4294967295)){t=s;break}else p=s}}else t=0;p=a5(d|0,e|0,1-t|0)|0;u=p;v=C;w=t}else{u=d;v=e&1048575|1048576;w=j}if(!l){p=a5(f|0,g|0,12)|0;r=C;if((r|0)>-1|(r|0)==-1&p>>>0>4294967295){q=p;p=r;r=0;while(1){s=r+-1|0;q=a5(q|0,p|0,1)|0;p=C;if(!((p|0)>-1|(p|0)==-1&q>>>0>4294967295)){x=s;break}else r=s}}else x=0;r=a5(f|0,g|0,1-x|0)|0;y=r;z=C;A=x}else{y=f;z=g&1048575|1048576;A=l}r=U4(u|0,v|0,y|0,z|0)|0;q=C;p=(q|0)>-1|(q|0)==-1&r>>>0>4294967295;b:do if((w|0)>(A|0)){s=p;B=r;D=q;E=u;F=v;G=w;while(1){if(s)if((E|0)==(y|0)&(F|0)==(z|0))break;else{H=B;I=D}else{H=E;I=F}J=a5(H|0,I|0,1)|0;K=C;L=G+-1|0;M=U4(J|0,K|0,y|0,z|0)|0;O=C;P=(O|0)>-1|(O|0)==-1&M>>>0>4294967295;if((L|0)>(A|0)){s=P;B=M;D=O;E=J;F=K;G=L}else{Q=P;R=J;S=K;T=M;U=O;V=L;break b}}W=a*0.0;break a}else{Q=p;R=u;S=v;T=r;U=q;V=w}while(0);if(Q)if((R|0)==(y|0)&(S|0)==(z|0)){W=a*0.0;break}else{X=U;Y=T}else{X=S;Y=R}if(X>>>0<1048576|(X|0)==1048576&Y>>>0<0){q=Y;r=X;p=V;while(1){G=a5(q|0,r|0,1)|0;F=C;E=p+-1|0;if(F>>>0<1048576|(F|0)==1048576&G>>>0<0){q=G;r=F;p=E}else{Z=G;_=F;$=E;break}}}else{Z=Y;_=X;$=V}if(($|0)>0){p=V4(Z|0,_|0,0,-1048576)|0;r=C;q=a5($|0,0,52)|0;aa=r|C;ba=p|q}else{q=X4(Z|0,_|0,1-$|0)|0;aa=C;ba=q}c[k>>2]=ba;c[k+4>>2]=aa|i;W=+h[k>>3]}else ca=3;while(0);if((ca|0)==3){o=a*b;W=o/o}return +W}function a2(a,b){a=+a;b=+b;return +(+$1(a,b))}function b2(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,l=0,m=0.0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=X4(d|0,e|0,52)|0;g=f&2047;switch(g|0){case 0:{if(a!=0.0){i=+b2(a*18446744073709551616.0,b);j=i;l=(c[b>>2]|0)+-64|0}else{j=a;l=0}c[b>>2]=l;m=j;break}case 2047:{m=a;break}default:{c[b>>2]=g+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;m=+h[k>>3]}}return +m}function c2(a,b){a=+a;b=b|0;return +(+b2(a,b))}function d2(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,j=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0;d=+N(+a);h[k>>3]=d;e=c[k>>2]|0;f=c[k+4>>2]|0;d=+N(+b);h[k>>3]=d;g=c[k>>2]|0;i=c[k+4>>2]|0;j=f>>>0>>0|(f|0)==(i|0)&e>>>0>>0;l=j?g:e;m=j?i:f;n=j?e:g;g=j?f:i;i=X4(l|0,m|0,52)|0;f=X4(n|0,g|0,52)|0;c[k>>2]=l;c[k+4>>2]=m;d=+h[k>>3];c[k>>2]=n;c[k+4>>2]=g;b=+h[k>>3];do if((f|0)!=2047)if((n|0)==0&(g|0)==0|(i|0)==2047)o=d;else{if((i-f|0)>64){o=d+b;break}if(i>>>0<=1533)if(f>>>0<573){p=d*5260135901548373507240989.0e186;q=b*5260135901548373507240989.0e186;r=1.90109156629516e-211}else{p=d;q=b;r=1.0}else{p=d*1.90109156629516e-211;q=b*1.90109156629516e-211;r=5260135901548373507240989.0e186}a=p*134217729.0;s=a+(p-a);a=p-s;t=p*p;u=q*134217729.0;v=u+(q-u);u=q-v;w=q*q;o=r*+O(+(t+(w+(u*u+(v*v-w+v*2.0*u)+(a*a+(s*s-t+s*2.0*a))))))}else o=b;while(0);return +o}function e2(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0,i=0,j=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;h[k>>3]=a;b=c[k>>2]|0;d=c[k+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){f=+N(+a);h[k>>3]=f;if((c[k>>2]|0)==0&(c[k+4>>2]|0)==0){g=-1.0/(a*a);break}if(e){g=(a-a)/0.0;break}else{h[k>>3]=a*18014398509481984.0;i=c[k+4>>2]|0;j=c[k>>2]|0;l=i;m=i;n=-1077;o=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)g=0.0;else{j=b;l=d;m=d;n=-1023;o=9}else g=a;while(0);if((o|0)==9){o=m+614242|0;c[k>>2]=j;c[k+4>>2]=(o&1048575)+1072079006;a=+h[k>>3]+-1.0;f=a*(a*.5);p=a/(a+2.0);q=p*p;r=q*q;h[k>>3]=a-f;j=c[k+4>>2]|0;c[k>>2]=0;c[k+4>>2]=j;s=+h[k>>3];t=a-s-f+p*(f+(r*(r*(r*.15313837699209373+.22222198432149784)+.3999999999940942)+q*(r*(r*(r*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));r=s*.4342944818781689;q=+(n+(o>>>20)|0);f=q*.30102999566361177;p=f+r;g=p+(r+(f-p)+(t*.4342944818781689+(q*3.694239077158931e-13+(s+t)*2.5082946711645275e-11)))}return +g}function f2(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0,i=0,j=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;h[k>>3]=a;b=c[k>>2]|0;d=c[k+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){f=+N(+a);h[k>>3]=f;if((c[k>>2]|0)==0&(c[k+4>>2]|0)==0){g=-1.0/(a*a);break}if(e){g=(a-a)/0.0;break}else{h[k>>3]=a*18014398509481984.0;i=c[k+4>>2]|0;j=c[k>>2]|0;l=i;m=i;n=-1077;o=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)g=0.0;else{j=b;l=d;m=d;n=-1023;o=9}else g=a;while(0);if((o|0)==9){o=m+614242|0;c[k>>2]=j;c[k+4>>2]=(o&1048575)+1072079006;a=+h[k>>3]+-1.0;f=a*(a*.5);p=a/(a+2.0);q=p*p;r=q*q;h[k>>3]=a-f;j=c[k+4>>2]|0;c[k>>2]=0;c[k+4>>2]=j;s=+h[k>>3];t=a-s-f+p*(f+(r*(r*(r*.15313837699209373+.22222198432149784)+.3999999999940942)+q*(r*(r*(r*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));r=s*1.4426950407214463;q=+(n+(o>>>20)|0);f=q+r;g=f+(r+(q-f)+(t*1.4426950407214463+(s+t)*1.6751713164886512e-10))}return +g}function g2(a,b){a=+a;b=b|0;var d=0.0,e=0,f=0,g=0,i=0.0;if((b|0)>1023){d=a*8988465674311579538646525.0e283;e=b+-1023|0;if((e|0)>1023){f=b+-2046|0;g=(f|0)>1023?1023:f;i=d*8988465674311579538646525.0e283}else{g=e;i=d}}else if((b|0)<-1022){d=a*2.2250738585072014e-308;e=b+1022|0;if((e|0)<-1022){f=b+2044|0;g=(f|0)<-1022?-1022:f;i=d*2.2250738585072014e-308}else{g=e;i=d}}else{g=b;i=a}b=a5(g+1023|0,0,52)|0;g=C;c[k>>2]=b;c[k+4>>2]=g;return +(i*+h[k>>3])}function h2(a,b){a=+a;b=b|0;return +(+g2(a,b))}function i2(a,b,d){a=+a;b=b|0;d=d|0;var e=0,f=0,g=0,j=0.0,l=0,m=0,n=0.0;e=i;i=i+16|0;f=e;h[k>>3]=a;g=c[k+4>>2]&2147483647;a:do if(g>>>0<1072243196)if(g>>>0<1044816030){h[b>>3]=a;h[d>>3]=1.0;break}else{h[b>>3]=+X1(a,0.0,0);h[d>>3]=+U1(a,0.0);break}else{if(g>>>0>2146435071){j=a-a;h[d>>3]=j;h[b>>3]=j;break}l=V1(a,f)|0;m=f+8|0;j=+X1(+h[f>>3],+h[m>>3],1);n=+U1(+h[f>>3],+h[m>>3]);switch(l&3|0){case 0:{h[b>>3]=j;h[d>>3]=n;break a;break}case 1:{h[b>>3]=n;h[d>>3]=-j;break a;break}case 2:{h[b>>3]=-j;h[d>>3]=-n;break a;break}case 3:{h[b>>3]=-n;h[d>>3]=j;break a;break}default:{}}}while(0);i=e;return}function j2(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+32|0;j=h;do if((g&4095|0)==0&(((g|0)<0)<<31>>31&-4096|0)==0){if(b>>>0>2147483646){c[(L1()|0)>>2]=12;k=-1;break}l=(e&16|0)!=0;if(l)A4(-1);c[j>>2]=a;c[j+4>>2]=b;c[j+8>>2]=d;c[j+12>>2]=e;c[j+16>>2]=f;c[j+20>>2]=g>>12;m=S1(Ua(192,j|0)|0)|0;if(l){B4();k=m}else k=m}else{c[(L1()|0)>>2]=22;k=-1}while(0);i=h;return k|0}function k2(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;A4(-1);c[e>>2]=a;c[e+4>>2]=b;b=S1($a(91,e|0)|0)|0;B4();i=d;return b|0}function l2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+16|0;h=g;j=(f|0)==0?99388:f;f=c[j>>2]|0;a:do if(!d)if(!f)k=0;else l=15;else{m=(b|0)==0?h:b;if(!e)k=-2;else{if(!f){n=a[d>>0]|0;o=n&255;if(n<<24>>24>-1){c[m>>2]=o;k=n<<24>>24!=0&1;break}n=o+-194|0;if(n>>>0>50){l=15;break}o=c[98764+(n<<2)>>2]|0;n=e+-1|0;if(!n)p=o;else{q=n;r=o;s=d+1|0;l=9}}else{q=e;r=f;s=d;l=9}b:do if((l|0)==9){o=a[s>>0]|0;n=(o&255)>>>3;if((n+-16|n+(r>>26))>>>0>7){l=15;break a}else{t=q;u=o;v=r;w=s}while(1){w=w+1|0;v=(u&255)+-128|v<<6;t=t+-1|0;if((v|0)>=0){x=v;y=t;break}if(!t){p=v;break b}u=a[w>>0]|0;if((u&-64)<<24>>24!=-128){l=15;break a}}c[j>>2]=0;c[m>>2]=x;k=e-y|0;break a}while(0);c[j>>2]=p;k=-2}}while(0);if((l|0)==15){c[j>>2]=0;c[(L1()|0)>>2]=84;k=-1}i=g;return k|0}function m2(a){a=a|0;var b=0;if(!a)b=1;else b=(c[a>>2]|0)==0;return b&1|0}function n2(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+16|0;h=g;a:do if(!e)j=0;else{do if(f){k=(b|0)==0?h:b;l=a[e>>0]|0;m=l&255;if(l<<24>>24>-1){c[k>>2]=m;j=l<<24>>24!=0&1;break a}l=m+-194|0;if(l>>>0<=50){m=e+1|0;n=c[98764+(l<<2)>>2]|0;if(f>>>0<4?(n&-2147483648>>>((f*6|0)+-6|0)|0)!=0:0)break;l=d[m>>0]|0;m=l>>>3;if((m+-16|m+(n>>26))>>>0<=7){m=l+-128|n<<6;if((m|0)>=0){c[k>>2]=m;j=2;break a}n=d[e+2>>0]|0;if((n&192|0)==128){l=n+-128|m<<6;if((l|0)>=0){c[k>>2]=l;j=3;break a}m=d[e+3>>0]|0;if((m&192|0)==128){c[k>>2]=m+-128|l<<6;j=4;break a}}}}}while(0);c[(L1()|0)>>2]=84;j=-1}while(0);i=g;return j|0}function o2(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;do if(b){if(d>>>0<128){a[b>>0]=d;f=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;f=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;f=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;f=4;break}else{c[(L1()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function p2(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=o2(a,b,0)|0;return c|0}function q2(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0;d=a+2|0;f=a+4|0;g=g5((e[c+2>>1]|0)<<16|(e[c>>1]|0)|0,e[c+4>>1]|0|0,(e[d>>1]|0)<<16|(e[a>>1]|0)|0,e[f>>1]|0|0)|0;h=V4(g|0,C|0,e[c+6>>1]|0|0,0)|0;c=C;b[a>>1]=h;a=X4(h|0,c|0,16)|0;b[d>>1]=a;b[f>>1]=c;C=c&65535;return h|0}function r2(){var a=0,b=0;a=q2(104016,104022)|0;b=a5(a|0,C|0,4)|0;a=C|1072693248;c[k>>2]=b;c[k+4>>2]=a;return +(+h[k>>3]+-1.0)}function s2(a){a=a|0;var b=0;b=44128;c[b>>2]=a+-1;c[b+4>>2]=0;return}function t2(){var a=0,b=0,d=0;a=44128;b=g5(c[a>>2]|0,c[a+4>>2]|0,1284865837,1481765933)|0;a=V4(b|0,C|0,1,0)|0;b=C;d=44128;c[d>>2]=a;c[d+4>>2]=b;d=X4(a|0,b|0,33)|0;return d|0}function u2(a){a=a|0;b[52015]=b[52008]|0;b[52016]=b[52009]|0;b[52017]=b[52010]|0;b[52008]=b[a>>1]|0;b[52009]=b[a+2>>1]|0;b[52010]=b[a+4>>1]|0;return 104030}function v2(a){a=a|0;var c=0,d=0;c=i;i=i+16|0;d=c;b[d>>1]=13070;b[d+2>>1]=a;b[d+4>>1]=a>>>16;u2(d)|0;i=c;return}function w2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0;e=i;i=i+64|0;f=e+56|0;g=e+52|0;h=e+48|0;j=e+44|0;k=e;l=N4(20)|0;a:do if(!l)m=12;else{n=N4(2048)|0;o=l+16|0;c[o>>2]=n;if(!n){O4(l);m=12;break}c[l>>2]=512;c[l+4>>2]=10240;c[l+8>>2]=128;n=l+12|0;c[n>>2]=0;p=z2(0,0)|0;if(!p){O4(c[o>>2]|0);O4(l);m=12;break}q=k;r=q+44|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));c[k>>2]=p;c[k+4>>2]=l;c[k+12>>2]=b;c[k+36>>2]=d;q=k+28|0;c[q>>2]=-1;r=b4(k)|0;b:do if(!r){s=k+20|0;t=c[s>>2]|0;c[a>>2]=t+-1;u=c[k+8>>2]|0;v=c[q>>2]|0;if((v|0)>-1?(c[k+32>>2]|0)!=0:0){w=0;x=2;y=0;z=0;break}if((v|0)<(t|0)){A=P4(1,68)|0;if(!A){w=0;x=12;y=0;z=A}else{B=v>>>31;c[A+60>>2]=B^1;c[A+64>>2]=c[k+32>>2];c[A+28>>2]=t;if((d&8|0)==0|(B|0)!=1){B=c4(0,l,u,A)|0;if(B){w=0;x=B;y=0;z=A;break}B=c[A+40>>2]|0;if((B|0)>0){t=(B<<2)+4|0;v=N4(t)|0;if(!v){w=0;x=12;y=0;z=A;break}c[A+32>>2]=v;$4(v|0,-1,t|0)|0;C=v}else C=0;v=P4(B<<1|1,4)|0;c[A+36>>2]=v;if(!v){w=0;x=12;y=0;z=A;break}v=P4(c[s>>2]|0,12)|0;if(!v){w=0;x=12;y=0;z=A;break}c[A+16>>2]=v;v=c4(p,l,u,A)|0;if(!v)D=C;else{w=0;x=v;y=0;z=A;break}}else D=0;v=k+24|0;s=c[n>>2]|0;c[h>>2]=0;c[j>>2]=0;c[g>>2]=u;c[f>>2]=c[g>>2];B=d4(l,f)|0;c:do if(!B){c[g>>2]=0;c[f>>2]=c[g>>2];t=d4(l,f)|0;if(!t){E=c[n>>2]|0;do if((E|0)>(s|0)){F=E;G=0;H=0;I=0;d:while(1){J=F+-1|0;c[n>>2]=J;K=c[o>>2]|0;L=c[K+(J<<2)>>2]|0;J=F+-2|0;c[n>>2]=J;M=c[K+(J<<2)>>2]|0;e:do switch(L|0){case 0:{switch(c[M>>2]|0){case 0:{J=c[M+4>>2]|0;N=c[J>>2]|0;if(!((N|0)>-1|(N|0)==-4)){O=G;P=H;Q=I;break e}N=J+8|0;J=(c[N>>2]|0)+G|0;c[N>>2]=J;if((J|0)<=(c[j>>2]|0)){O=G;P=H;Q=I;break e}c[j>>2]=J;O=G;P=H;Q=I;break e;break}case 3:{J=c[M+4>>2]|0;c[g>>2]=c[J+4>>2];c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=0;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=c[J>>2];c[f>>2]=c[g>>2];J=d4(l,f)|0;if(J){R=I;S=J;T=81;break d}c[g>>2]=0;c[f>>2]=c[g>>2];U=d4(l,f)|0;break}case 1:{J=c[M+4>>2]|0;c[g>>2]=c[J+4>>2];c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=0;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=c[J>>2];c[f>>2]=c[g>>2];J=d4(l,f)|0;if(J){R=I;S=J;T=81;break d}c[g>>2]=0;c[f>>2]=c[g>>2];U=d4(l,f)|0;break}case 2:{J=c[M+4>>2]|0;c[g>>2]=G;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=M;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=1;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=c[J>>2];c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}c[g>>2]=0;c[f>>2]=c[g>>2];N=d4(l,f)|0;if(N){R=I;S=N;T=81;break d}if((c[J+4>>2]|0)<=1?(c[J+8>>2]|0)<=1:0)V=G;else{c[h>>2]=0;V=0}O=V;P=H+1|0;Q=I;break e;break}default:{O=G;P=H;Q=I;break e}}if(!U){O=G;P=H;Q=I}else{R=I;S=U;T=81;break d}break}case 1:{J=M+4|0;N=c[J>>2]|0;W=F+-3|0;c[n>>2]=W;X=c[K+(W<<2)>>2]|0;c[h>>2]=X;W=N+4|0;Y=c[W>>2]|0;Z=(Y|0)>1;if(!Z){_=N+8|0;$=c[_>>2]|0;if(($|0)>1){c[f>>2]=0;if((Y|0)>0)T=50;else{aa=Y;ba=_;ca=$;da=X;ea=0;T=58}}else fa=X}else{c[f>>2]=0;T=50}do if((T|0)==50){T=0;$=e4(p,l,c[N>>2]|0,Z?1:2,h,D,g,j)|0;if(!$){ga=1;ha=X;ia=0}else{ja=$;T=54;break d}while(1){$=c[g>>2]|0;if(!ia)ka=$;else ka=f4(p,ia,$)|0;if(!ka){ja=12;T=54;break d}$=c[W>>2]|0;if((ga|0)>=($|0)){la=ha;ma=$;na=ka;break}ha=c[h>>2]|0;ga=ga+1|0;_=e4(p,l,c[N>>2]|0,(ga|0)<($|0)?1:2,h,D,g,j)|0;if(_){ja=_;T=54;break d}else ia=ka}_=N+8|0;$=c[_>>2]|0;if(($|0)!=-1){aa=ma;ba=_;ca=$;da=la;ea=na;T=58;break}$=c[h>>2]|0;_=e4(p,l,c[N>>2]|0,0,h,0,f,j)|0;if(_){oa=_;break d}_=g4(p,c[f>>2]|0,0,-1,0)|0;c[f>>2]=_;if(!_){oa=12;break d}c[h>>2]=$;pa=_;qa=$;ra=na;T=74}while(0);do if((T|0)==58){T=0;if((aa|0)<(ca|0)){W=0;Z=aa;while(1){$=c[h>>2]|0;_=e4(p,l,c[N>>2]|0,0,h,0,g,j)|0;if(_){sa=_;T=70;break d}if(!W){_=c[g>>2]|0;c[f>>2]=_;ta=_}else{_=f4(p,c[g>>2]|0,W)|0;c[f>>2]=_;ta=_}if(!ta){sa=12;T=70;break d}_=h4(p,0,20)|0;if(!_){sa=12;T=70;break d}Y=c[_+4>>2]|0;c[Y>>2]=-1;c[Y+4>>2]=-1;c[Y+8>>2]=-1;Y=i4(p,_,ta)|0;c[f>>2]=Y;if(!Y){sa=12;T=70;break d}Z=Z+1|0;if((Z|0)>=(c[ba>>2]|0)){ua=Y;va=$;break}else W=Y}}else{ua=0;va=da}c[h>>2]=va;if(!ea){wa=va;xa=ua;T=75;break}if(!ua){ya=va;za=ea;T=76}else{pa=ua;qa=va;ra=ea;T=74}}while(0);if((T|0)==74){T=0;wa=qa;xa=f4(p,ra,pa)|0;T=75}if((T|0)==75){T=0;if(!xa){oa=12;break d}else{ya=wa;za=xa;T=76}}if((T|0)==76){T=0;c[J>>2]=c[za+4>>2];c[M>>2]=c[za>>2];fa=ya}N=H+-1|0;W=fa-X+I|0;if(!N){c[h>>2]=W;O=W;P=0;Q=W}else{O=fa;P=N;Q=W}break}default:{O=G;P=H;Q=I}}while(0);F=c[n>>2]|0;if((F|0)<=(s|0)){R=Q;S=0;T=81;break}else{G=O;H=P;I=Q}}if((T|0)==54)oa=ja;else if((T|0)==70)oa=sa;else if((T|0)==81){Aa=c[j>>2]|0;Ba=R;Ca=S;break}Da=oa;break c}else{Aa=0;Ba=0;Ca=0}while(0);E=(c[v>>2]|0)+Ba|0;I=(Aa|0)>(E|0)?Aa:E;c[v>>2]=I;if(Ca){w=0;x=Ca;y=0;z=A;break b}c[v>>2]=I+1;E=h4(p,0,20)|0;if(!E){w=0;x=12;y=0;z=A;break b}H=c[E+4>>2]|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=I;I=f4(p,u,E)|0;if(!I){w=0;x=12;y=0;z=A;break b}E=c[n>>2]|0;c[g>>2]=I;c[f>>2]=c[g>>2];H=d4(l,f)|0;if(H){w=0;x=H;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];H=d4(l,f)|0;if(H){w=0;x=H;y=0;z=A;break b}H=c[n>>2]|0;f:do if((H|0)>(E|0)){G=H;g:while(1){F=G+-1|0;c[n>>2]=F;M=c[o>>2]|0;K=c[M+(F<<2)>>2]|0;F=G+-2|0;c[n>>2]=F;L=c[M+(F<<2)>>2]|0;h:do switch(K|0){case 0:{switch(c[L>>2]|0){case 0:{F=c[L+4>>2]|0;M=c[F>>2]|0;if((M|0)==-4){c[L+8>>2]=0;W=F+8|0;N=j4(p,c[W>>2]|0,0,1114111,0,0,-1)|0;c[L+24>>2]=N;if(!N){w=0;x=12;y=0;z=A;break b}N=j4(p,c[W>>2]|0,0,1114111,0,0,c[F+4>>2]|0)|0;c[L+28>>2]=N;if(!N){w=0;x=12;y=0;z=A;break b}else break h}N=L+8|0;if((M|0)<0){c[N>>2]=1;W=k4(p)|0;c[L+24>>2]=W;if(!W){w=0;x=12;y=0;z=A;break b}W=k4(p)|0;c[L+28>>2]=W;if(!W){w=0;x=12;y=0;z=A;break b}else break h}else{c[N>>2]=0;N=F+8|0;W=F+4|0;Z=j4(p,c[N>>2]|0,M,c[W>>2]|0,0,0,-1)|0;c[L+24>>2]=Z;if(!Z){w=0;x=12;y=0;z=A;break b}Z=j4(p,c[N>>2]|0,c[F>>2]|0,c[W>>2]|0,c[F+12>>2]|0,c[F+16>>2]|0,-1)|0;c[L+28>>2]=Z;if(!Z){w=0;x=12;y=0;z=A;break b}else break h}break}case 3:{c[g>>2]=L;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=1;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}Z=L+4|0;c[g>>2]=c[(c[Z>>2]|0)+4>>2];c[f>>2]=c[g>>2];F=d4(l,f)|0;if(F){w=0;x=F;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];F=d4(l,f)|0;if(F){w=0;x=F;y=0;z=A;break b}c[g>>2]=c[c[Z>>2]>>2];c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(!Z)break h;else{w=0;x=Z;y=0;z=A;break b}break}case 1:{c[g>>2]=L;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=2;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}Z=L+4|0;c[g>>2]=c[(c[Z>>2]|0)+4>>2];c[f>>2]=c[g>>2];F=d4(l,f)|0;if(F){w=0;x=F;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];F=d4(l,f)|0;if(F){w=0;x=F;y=0;z=A;break b}c[g>>2]=c[c[Z>>2]>>2];c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(!Z)break h;else{w=0;x=Z;y=0;z=A;break b}break}case 2:{c[g>>2]=L;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=3;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=c[c[L+4>>2]>>2];c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(Z){w=0;x=Z;y=0;z=A;break b}c[g>>2]=0;c[f>>2]=c[g>>2];Z=d4(l,f)|0;if(!Z)break h;else{w=0;x=Z;y=0;z=A;break b}break}default:break h}break}case 1:{Z=c[L+4>>2]|0;F=c[Z>>2]|0;W=Z+4|0;N=c[W>>2]|0;if(!(c[F+8>>2]|0))Ea=(c[N+8>>2]|0)!=0;else Ea=1;c[L+8>>2]=Ea&1;M=l4(p,c[F+24>>2]|0,c[N+24>>2]|0,0,0)|0;c[L+24>>2]=M;if(!M){w=0;x=12;y=0;z=A;break b}M=l4(p,c[(c[Z>>2]|0)+28>>2]|0,c[(c[W>>2]|0)+28>>2]|0,0,0)|0;c[L+28>>2]=M;if(!M){w=0;x=12;y=0;z=A;break b}break}case 3:{M=c[L+4>>2]|0;W=c[M>>2]|0;do if(!(c[M+4>>2]|0))T=121;else{if(c[W+8>>2]|0){T=121;break}c[L+8>>2]=0}while(0);if((T|0)==121){T=0;c[L+8>>2]=1}c[L+24>>2]=c[W+24>>2];c[L+28>>2]=c[W+28>>2];break}case 2:{M=c[L+4>>2]|0;X=c[M>>2]|0;J=X+8|0;if(!(c[J>>2]|0))Fa=0;else Fa=(c[(c[M+4>>2]|0)+8>>2]|0)!=0;c[L+8>>2]=Fa&1;if(c[J>>2]|0){J=m4(l,X,0,0,f)|0;if(J){Ga=J;break g}J=N4((c[f>>2]<<2)+4|0)|0;if(!J){Ga=12;break g}c[J>>2]=-1;c[g>>2]=0;Z=m4(l,c[M>>2]|0,J,g,0)|0;if(Z){Ha=J;Ia=Z;T=131;break g}Z=M+4|0;N=L+24|0;c[N>>2]=l4(p,c[(c[Z>>2]|0)+24>>2]|0,c[(c[M>>2]|0)+24>>2]|0,J,c[g>>2]|0)|0;O4(J);if(!(c[N>>2]|0)){Ga=12;break g}else Ja=Z}else{c[L+24>>2]=c[X+24>>2];Ja=M+4|0}X=c[Ja>>2]|0;if(c[X+8>>2]|0){Z=m4(l,X,0,0,f)|0;if(Z){Ga=Z;break g}Z=N4((c[f>>2]<<2)+4|0)|0;if(!Z){Ga=12;break g}c[Z>>2]=-1;c[g>>2]=0;N=m4(l,c[Ja>>2]|0,Z,g,0)|0;if(N){Ka=Z;La=N;T=138;break g}N=L+28|0;c[N>>2]=l4(p,c[(c[M>>2]|0)+28>>2]|0,c[(c[Ja>>2]|0)+28>>2]|0,Z,c[g>>2]|0)|0;O4(Z);if(!(c[N>>2]|0)){Ga=12;break g}}else c[L+28>>2]=c[X+28>>2];break}default:{}}while(0);G=c[n>>2]|0;if((G|0)<=(E|0))break f}if((T|0)==131){O4(Ha);Ga=Ia}else if((T|0)==138){O4(Ka);Ga=La}w=0;x=Ga;y=0;z=A;break b}while(0);E=c[v>>2]|0;H=E<<2;G=N4(H)|0;if(!G){w=G;x=12;y=0;z=A;break b}L=N4(H)|0;if(!L){w=G;x=12;y=L;z=A;break b}if((E|0)>0)$4(G|0,0,((E|0)>1?E:1)<<2|0)|0;n4(I,0,G,0)|0;E=c[v>>2]|0;if((E|0)>0){H=0;K=0;while(1){c[L+(K<<2)>>2]=H;X=G+(K<<2)|0;N=H+1+(c[X>>2]|0)|0;c[X>>2]=0;K=K+1|0;if((K|0)>=(E|0)){Ma=N;break}else H=N}}else Ma=0;H=P4(Ma+1|0,32)|0;if(!H){w=G;x=12;y=L;z=A;break b}c[A>>2]=H;E=A+4|0;c[E>>2]=Ma;K=n4(I,H,G,L)|0;if(K){w=G;x=K;y=L;z=A;break b}c[A+20>>2]=0;K=I+24|0;N=0;X=c[K>>2]|0;while(1){Z=N+1|0;if((c[X>>2]|0)>-1){N=Z;X=X+32|0}else{Na=Z;break}}X=P4(Na,32)|0;if(!X){w=G;x=12;y=L;z=A;break b}c[A+8>>2]=X;N=c[K>>2]|0;Z=c[N>>2]|0;if((Z|0)>-1){M=Z;Z=N;N=0;while(1){c[X+(N<<5)+8>>2]=H+(c[L+(M<<2)>>2]<<5);c[X+(N<<5)+12>>2]=M;J=X+(N<<5)+16|0;c[J>>2]=0;F=Z+12|0;Y=c[F>>2]|0;if(Y){$=0;while(1){_=$+1|0;if((c[Y+($<<2)>>2]|0)>-1)$=_;else{Oa=_;break}}$=Oa<<2;Y=N4($)|0;c[J>>2]=Y;if(!Y){w=G;x=12;y=L;z=A;break b}Z4(Y|0,c[F>>2]|0,$|0)|0}c[X+(N<<5)+20>>2]=c[Z+16>>2];$=N+1|0;Z=Z+32|0;M=c[Z>>2]|0;if((M|0)<=-1){Pa=$;break}else N=$}}else Pa=0;c[X+(Pa<<5)+8>>2]=0;c[E>>2]=Ma;c[A+12>>2]=H+(c[L+(c[c[I+28>>2]>>2]<<2)>>2]<<5);c[A+52>>2]=c[v>>2];c[A+56>>2]=d;A2(p);O4(c[o>>2]|0);O4(l);O4(G);O4(L);c[a+4>>2]=A;m=0;break a}else Da=t}else Da=B;while(0);w=0;x=Da;y=0;z=A}}else{w=0;x=6;y=0;z=0}}else{w=0;x=r;y=0;z=0}while(0);A2(p);O4(c[o>>2]|0);O4(l);if(w)O4(w);if(y)O4(y);c[a+4>>2]=z;x2(a);m=x}while(0);i=e;return m|0}function x2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=c[a+4>>2]|0;if(b){a=b+4|0;d=c[b>>2]|0;if(!(c[a>>2]|0))e=d;else{f=d;d=0;while(1){if(c[f+(d<<5)+8>>2]|0){g=c[f+(d<<5)+16>>2]|0;if(!g)h=f;else{O4(g);h=c[b>>2]|0}g=c[h+(d<<5)+28>>2]|0;if(!g)i=h;else{O4(g);i=c[b>>2]|0}}else i=f;d=d+1|0;if(d>>>0>=(c[a>>2]|0)>>>0){e=i;break}else f=i}}if(e)O4(e);e=b+8|0;i=c[e>>2]|0;if(i){if(!(c[i+8>>2]|0))j=i;else{f=i;while(1){i=c[f+16>>2]|0;if(i)O4(i);if(!(c[f+40>>2]|0))break;else f=f+32|0}j=c[e>>2]|0}O4(j)}j=b+16|0;e=c[j>>2]|0;if(e){f=b+28|0;i=c[f>>2]|0;if(!i)k=e;else{a=e;e=i;i=0;while(1){d=c[a+(i*12|0)+8>>2]|0;if(!d)l=e;else{O4(d);l=c[f>>2]|0}d=i+1|0;if(d>>>0>=l>>>0)break;a=c[j>>2]|0;e=l;i=d}k=c[j>>2]|0}O4(k)}k=c[b+32>>2]|0;if(k)O4(k);k=c[b+20>>2]|0;if(k)O4(k);k=c[b+36>>2]|0;if(k)O4(k);O4(b)}return}function y2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0;g=i;i=i+16|0;h=g;j=c[a+4>>2]|0;a=j+56|0;k=(c[a>>2]&8|0)==0?d:0;d=j+40|0;l=c[d>>2]|0;if((l|0)>0&(k|0)!=0){m=N4(l<<2)|0;if(!m)n=12;else{o=m;p=3}}else{o=0;p=3}if((p|0)==3){if(!(c[j+60>>2]|0)){c[h>>2]=0;m=f&1;l=f&2;q=c[a>>2]&4;if(!o)r=0;else r=c[d>>2]|0;s=r<<2;t=c[j+52>>2]|0;u=t<<3;v=u+8|0;w=s+12+u+(v+(_(s,t)|0)<<1)|0;x=N4(w)|0;if(!x){y=12;z=0}else{$4(x|0,0,w|0)|0;w=x+s|0;A=w&3;B=w+((A|0)==0?0:4-A|0)|0;A=B+v|0;w=A&3;C=A+((w|0)==0?0:4-w|0)|0;w=C+v|0;v=w&3;A=w+((v|0)==0?0:4-v|0)|0;v=A+u|0;u=v&3;if((t|0)>0){w=0;D=v+((u|0)==0?0:4-u|0)|0;while(1){c[C+(w<<3)+4>>2]=D;u=D+s|0;c[B+(w<<3)+4>>2]=u;w=w+1|0;if((w|0)==(t|0)){E=0;break}else D=u+s|0}do{c[A+(E<<3)>>2]=-1;E=E+1|0}while((E|0)!=(t|0))}t=n2(h,b,4)|0;if((t|0)<1)if((t|0)<0){F=0;G=1}else{H=1;p=201}else{H=t;p=201}a:do if((p|0)==201){t=j+8|0;E=(q|0)!=0;D=(r|0)>0;w=j+12|0;u=j+44|0;v=j+32|0;I=j+36|0;J=(r|0)==0;K=(m|0)==0;L=(r|0)<1;M=-1;N=0;O=0;P=H;Q=0;R=C;S=B;T=B;U=b+H|0;V=x;while(1){if((M|0)<0){W=c[t>>2]|0;X=W+8|0;b:do if(!(c[X>>2]|0)){Y=M;Z=N;$=T}else{aa=(O|0)!=0;ba=(Q|0)==95;ca=(O|0)==0;da=E&(Q|0)==10;ea=K&(O|0)<1;fa=X;ga=M;ha=N;ia=T;ja=W;while(1){ka=fa;la=ja;c:while(1){ma=la+12|0;if((c[A+(c[ma>>2]<<3)>>2]|0)>=(O|0)){na=ga;oa=ha;pa=ia;qa=la;break}ra=la+20|0;sa=c[ra>>2]|0;if(!sa){ta=ka;ua=ma;va=la;p=236;break}d:do if(da|(ea|(sa&1|0)==0)){if((sa&2|0)!=0?(wa=c[h>>2]|0,!((wa|l|0)==0|E&(wa|0)==10)):0)break;do if(sa&16){if(ba)break d;if(t1(Q)|0)break d;wa=c[h>>2]|0;if((wa|0)==95)break;if(!(t1(wa)|0))break d}while(0);wa=c[ra>>2]|0;if(!(wa&32))xa=wa;else{if(ba){wa=c[h>>2]|0;if((wa|0)==95)break;else ya=wa}else{wa=(t1(Q)|0)==0;za=c[h>>2]|0;if(wa|(za|0)==95)break;else ya=za}if(t1(ya)|0)break;xa=c[ra>>2]|0}za=c[h>>2]|0;do if((za|0)!=0&(aa&(xa&64|0)!=0)){if(ba){Aa=za;Ba=1}else{wa=(t1(Q)|0)!=0;Aa=c[h>>2]|0;Ba=wa}if((Aa|0)==95)if(Ba)break d;else break;else if(Ba^(t1(Aa)|0)!=0)break;else break d}while(0);if(!(c[ra>>2]&128)){ta=ka;ua=ma;va=la;p=236;break c}za=c[h>>2]|0;if(ca|(za|0)==0)break;if(ba){Ca=za;Da=1}else{za=(t1(Q)|0)!=0;Ca=c[h>>2]|0;Da=za}if((Ca|0)==95)if(Da){ta=ka;ua=ma;va=la;p=236;break c}else break;else if(Da^(t1(Ca)|0)!=0)break;else{ta=ka;ua=ma;va=la;p=236;break c}}while(0);ka=la+40|0;if(!(c[ka>>2]|0)){Y=ga;Z=ha;$=ia;break b}else la=la+32|0}if((p|0)==236){p=0;c[ia>>2]=c[ta>>2];if(D)$4(c[ia+4>>2]|0,-1,s|0)|0;la=c[va+16>>2]|0;do if(la){ka=c[la>>2]|0;if((ka|0)<=-1)break;ma=ia+4|0;ra=ka;ka=la;do{if((ra|0)<(r|0))c[(c[ma>>2]|0)+(ra<<2)>>2]=O;ka=ka+4|0;ra=c[ka>>2]|0}while((ra|0)>-1)}while(0);la=(c[ia>>2]|0)!=(c[w>>2]|0);if(L|la){Ea=ia+4|0;Fa=la?ga:O;Ga=la?ha:1}else{la=ia+4|0;ra=c[la>>2]|0;ka=0;do{c[o+(ka<<2)>>2]=c[ra+(ka<<2)>>2];ka=ka+1|0}while((ka|0)!=(r|0));Ea=la;Fa=O;Ga=1}la=c[ua>>2]|0;c[A+(la<<3)>>2]=O;c[A+(la<<3)+4>>2]=Ea;na=Fa;oa=Ga;pa=ia+8|0;qa=va}fa=qa+40|0;if(!(c[fa>>2]|0)){Y=na;Z=oa;$=pa;break}else{ga=na;ha=oa;ia=pa;ja=qa+32|0}}}while(0);c[$>>2]=0;W=c[h>>2]|0;if(!W){Ha=Y;break}else{Ia=W;Ja=Y;Ka=Z}}else{if(J){Ha=M;break}W=c[h>>2]|0;if((T|0)!=(S|0)&(W|0)!=0){Ia=W;Ja=M;Ka=N}else{Ha=M;break}}W=O+P|0;X=n2(h,U,4)|0;if((X|0)<1)if((X|0)<0){F=0;G=1;break a}else La=1;else La=X;X=U+La|0;if((Ka|0)!=0&(c[u>>2]|0)!=0){if(!(c[S>>2]|0))Ma=R;else{ja=c[I>>2]|0;ia=c[ja>>2]|0;ha=(ia|0)>-1;ga=S;fa=R;while(1){ba=ga+4|0;e:do if(ha){ca=ia;aa=0;while(1){ea=c[ja+((aa|1)<<2)>>2]|0;if((ca|0)>=(r|0)){Na=fa;break e}da=c[ba>>2]|0;if((c[da+(ea<<2)>>2]|0)==(c[o+(ea<<2)>>2]|0)?(c[da+(ca<<2)>>2]|0)<(c[o+(ca<<2)>>2]|0):0){Na=fa;break e}aa=aa+2|0;ca=c[ja+(aa<<2)>>2]|0;if((ca|0)<=-1){Oa=da;break}}Pa=ba;Qa=Oa;p=265}else{Pa=ba;Qa=c[ba>>2]|0;p=265}while(0);if((p|0)==265){p=0;c[fa>>2]=c[ga>>2];ba=fa+4|0;ca=c[ba>>2]|0;c[ba>>2]=Qa;c[Pa>>2]=ca;Na=fa+8|0}ga=ga+8|0;if(!(c[ga>>2]|0)){Ma=Na;break}else fa=Na}}c[Ma>>2]=0;Ra=0;Sa=R;Ta=S}else{Ra=Ka;Sa=S;Ta=R}fa=c[Sa>>2]|0;if(!fa){Ua=Ja;Va=Ra;Wa=Ta;Xa=V}else{ga=(W|0)!=0;ja=(Ia|0)==95;ia=(W|0)==0;ha=E&(Ia|0)==10;ca=K&(W|0)<1;ba=fa;fa=Ja;aa=Ra;da=Sa;ea=Ta;la=V;while(1){ka=ba+8|0;if(!(c[ka>>2]|0)){Ya=fa;Za=aa;_a=ea;$a=la}else{ra=da+4|0;ma=la;sa=ka;ka=fa;za=aa;wa=ea;ab=ba;while(1){f:do if((c[ab>>2]|0)>>>0>Ia>>>0){bb=ka;cb=za;db=wa;eb=ma}else{if((c[ab+4>>2]|0)>>>0>>0){bb=ka;cb=za;db=wa;eb=ma;break}fb=ab+20|0;gb=c[fb>>2]|0;do if(gb){if(!(ha|(ca|(gb&1|0)==0))){bb=ka;cb=za;db=wa;eb=ma;break f}if((gb&2|0)!=0?(hb=c[h>>2]|0,!((hb|l|0)==0|E&(hb|0)==10)):0){bb=ka;cb=za;db=wa;eb=ma;break f}do if(gb&16){if(ja){bb=ka;cb=za;db=wa;eb=ma;break f}if(t1(Ia)|0){bb=ka;cb=za;db=wa;eb=ma;break f}hb=c[h>>2]|0;if((hb|0)==95)break;if(!(t1(hb)|0)){bb=ka;cb=za;db=wa;eb=ma;break f}}while(0);hb=c[fb>>2]|0;if(!(hb&32))ib=hb;else{if(ja){hb=c[h>>2]|0;if((hb|0)==95){bb=ka;cb=za;db=wa;eb=ma;break f}else jb=hb}else{hb=(t1(Ia)|0)==0;kb=c[h>>2]|0;if(hb|(kb|0)==95){bb=ka;cb=za;db=wa;eb=ma;break f}else jb=kb}if(t1(jb)|0){bb=ka;cb=za;db=wa;eb=ma;break f}ib=c[fb>>2]|0}kb=c[h>>2]|0;do if((kb|0)!=0&(ga&(ib&64|0)!=0)){if(ja){lb=kb;mb=1}else{hb=(t1(Ia)|0)!=0;lb=c[h>>2]|0;mb=hb}if((lb|0)==95)if(mb){bb=ka;cb=za;db=wa;eb=ma;break f}else break;else if(mb^(t1(lb)|0)!=0)break;else{bb=ka;cb=za;db=wa;eb=ma;break f}}while(0);do if(c[fb>>2]&128){kb=c[h>>2]|0;if(ia|(kb|0)==0){bb=ka;cb=za;db=wa;eb=ma;break f}if(ja){nb=kb;ob=1}else{kb=(t1(Ia)|0)!=0;nb=c[h>>2]|0;ob=kb}if((nb|0)==95)if(ob)break;else{bb=ka;cb=za;db=wa;eb=ma;break f}else if(ob^(t1(nb)|0)!=0){bb=ka;cb=za;db=wa;eb=ma;break f}else break}while(0);kb=c[fb>>2]|0;do if(!(kb&4))pb=kb;else{if(c[a>>2]&2){pb=kb;break}if(!(x1(Ia,c[ab+24>>2]|0)|0)){bb=ka;cb=za;db=wa;eb=ma;break f}pb=c[fb>>2]|0}while(0);do if(pb&4){if(!(c[a>>2]&2))break;kb=K1(Ia)|0;hb=ab+24|0;if(x1(kb,c[hb>>2]|0)|0)break;kb=J1(Ia)|0;if(!(x1(kb,c[hb>>2]|0)|0)){bb=ka;cb=za;db=wa;eb=ma;break f}}while(0);if(!(c[fb>>2]&8))break;if(q4(c[ab+28>>2]|0,Ia,c[a>>2]&2)|0){bb=ka;cb=za;db=wa;eb=ma;break f}}while(0);if(D){fb=c[ra>>2]|0;gb=0;do{c[ma+(gb<<2)>>2]=c[fb+(gb<<2)>>2];gb=gb+1|0}while((gb|0)!=(r|0))}gb=c[ab+16>>2]|0;do if(gb){fb=c[gb>>2]|0;if((fb|0)>-1){qb=fb;rb=gb}else break;do{if((qb|0)<(r|0))c[ma+(qb<<2)>>2]=W;rb=rb+4|0;qb=c[rb>>2]|0}while((qb|0)>-1)}while(0);gb=c[ab+12>>2]|0;fb=A+(gb<<3)|0;if((c[fb>>2]|0)>=(W|0)){hb=c[A+(gb<<3)+4>>2]|0;kb=c[hb>>2]|0;if(!(o4(r,c[v>>2]|0,ma,kb)|0)){bb=ka;cb=za;db=wa;eb=ma;break}c[hb>>2]=ma;if((c[sa>>2]|0)!=(c[w>>2]|0)){bb=ka;cb=za;db=wa;eb=kb;break}if(D)sb=0;else{bb=W;cb=1;db=wa;eb=kb;break}while(1){c[o+(sb<<2)>>2]=c[ma+(sb<<2)>>2];sb=sb+1|0;if((sb|0)==(r|0)){bb=W;cb=1;db=wa;eb=kb;break f}}}kb=c[sa>>2]|0;c[wa>>2]=kb;hb=wa+4|0;tb=c[hb>>2]|0;c[hb>>2]=ma;c[fb>>2]=W;c[A+(gb<<3)+4>>2]=hb;do if((kb|0)==(c[w>>2]|0)){if((ka|0)==-1)if(D)ub=0;else{vb=W;wb=1;break}else{if(!D){vb=ka;wb=za;break}if((c[ma>>2]|0)>(c[o>>2]|0)){vb=ka;wb=za;break}else ub=0}do{c[o+(ub<<2)>>2]=c[ma+(ub<<2)>>2];ub=ub+1|0}while((ub|0)<(r|0));vb=W;wb=1}else{vb=ka;wb=za}while(0);bb=vb;cb=wb;db=wa+8|0;eb=tb}while(0);sa=ab+40|0;if(!(c[sa>>2]|0)){Ya=bb;Za=cb;_a=db;$a=eb;break}else{ma=eb;ka=bb;za=cb;wa=db;ab=ab+32|0}}}da=da+8|0;ba=c[da>>2]|0;if(!ba){Ua=Ya;Va=Za;Wa=_a;Xa=$a;break}else{fa=Ya;aa=Za;ea=_a;la=$a}}}c[Wa>>2]=0;M=Ua;N=Va;O=W;P=La;Q=Ia;R=Sa;S=Ta;T=Wa;U=X;V=Xa}F=Ha;G=Ha>>>31}while(0);O4(x);y=G;z=F}xb=z;yb=y}else{c[h>>2]=0;y=f&1;z=f&2;f=c[a>>2]&4;F=z2(0,0)|0;g:do if(F){G=B2(F,0,0,0,32)|0;if(!G){A2(F);zb=12;Ab=0;break}c[G+24>>2]=0;c[G+28>>2]=0;x=c[d>>2]|0;if(x){Ha=N4(x<<2)|0;if(!Ha){Bb=0;Cb=0;Db=12;Eb=0;Fb=Ha}else{Gb=Ha;p=9}}else{Gb=0;p=9}h:do if((p|0)==9){Ha=c[j+28>>2]|0;if(Ha){Xa=N4(Ha<<3)|0;if(!Xa){Bb=0;Cb=Xa;Db=12;Eb=0;Fb=Gb;break}else Hb=Xa}else Hb=0;Xa=j+52|0;Ha=c[Xa>>2]|0;if(Ha){Wa=N4(Ha<<2)|0;if(!Wa){Bb=0;Cb=Hb;Db=12;Eb=Wa;Fb=Gb;break}else Ib=Wa}else Ib=0;Wa=j+8|0;Ha=j+12|0;Ta=(o|0)==0;Sa=(o|0)!=0;Ia=j+32|0;La=(f|0)!=0;Va=(Gb|0)==0;Ua=(Hb|0)==0;$a=(Ib|0)==0;_a=(y|0)==0;Za=x;Ya=-1;db=1;cb=-1;bb=G;eb=b;i:while(1){if((Za|0)>0){wb=Za;vb=0;while(1){c[Gb+(vb<<2)>>2]=-1;if(Ta)Jb=wb;else{c[o+(vb<<2)>>2]=-1;Jb=c[d>>2]|0}vb=vb+1|0;if((vb|0)>=(Jb|0))break;else wb=Jb}}wb=c[Xa>>2]|0;if((wb|0)>0)$4(Ib|0,0,((wb|0)>1?wb:1)<<2|0)|0;wb=c[h>>2]|0;vb=db+cb|0;r=n2(h,eb,4)|0;if((r|0)<1)if((r|0)<0){Bb=0;Cb=Hb;Db=1;Eb=Ib;Fb=Gb;break h}else Kb=1;else Kb=r;r=eb+Kb|0;ub=c[h>>2]|0;A=c[Wa>>2]|0;sb=A+8|0;if(c[sb>>2]|0){qb=(vb|0)!=0;rb=(wb|0)==95;pb=(vb|0)==0;nb=La&(wb|0)==10;ob=_a&(vb|0)<1;lb=sb;sb=0;mb=bb;ib=0;jb=A;while(1){A=jb+20|0;l=c[A>>2]|0;j:do if(l){if(!(nb|(ob|(l&1|0)==0))){Lb=sb;Mb=mb;Nb=ib;break}if((l&2|0)!=0?(Ra=c[h>>2]|0,!((Ra|z|0)==0|La&(Ra|0)==10)):0){Lb=sb;Mb=mb;Nb=ib;break}do if(l&16){if(rb){Lb=sb;Mb=mb;Nb=ib;break j}if(t1(wb)|0){Lb=sb;Mb=mb;Nb=ib;break j}Ra=c[h>>2]|0;if((Ra|0)==95)break;if(!(t1(Ra)|0)){Lb=sb;Mb=mb;Nb=ib;break j}}while(0);tb=c[A>>2]|0;if(!(tb&32))Ob=tb;else{if(rb){tb=c[h>>2]|0;if((tb|0)==95){Lb=sb;Mb=mb;Nb=ib;break}else Pb=tb}else{tb=(t1(wb)|0)==0;Ra=c[h>>2]|0;if(tb|(Ra|0)==95){Lb=sb;Mb=mb;Nb=ib;break}else Pb=Ra}if(t1(Pb)|0){Lb=sb;Mb=mb;Nb=ib;break}Ob=c[A>>2]|0}Ra=c[h>>2]|0;do if((Ra|0)!=0&(qb&(Ob&64|0)!=0)){if(rb){Qb=Ra;Rb=1}else{tb=(t1(wb)|0)!=0;Qb=c[h>>2]|0;Rb=tb}if((Qb|0)==95)if(Rb){Lb=sb;Mb=mb;Nb=ib;break j}else break;else if(Rb^(t1(Qb)|0)!=0)break;else{Lb=sb;Mb=mb;Nb=ib;break j}}while(0);if(!(c[A>>2]&128)){p=52;break}Ra=c[h>>2]|0;if(pb|(Ra|0)==0){Lb=sb;Mb=mb;Nb=ib;break}if(rb){Sb=Ra;Tb=1}else{Ra=(t1(wb)|0)!=0;Sb=c[h>>2]|0;Tb=Ra}if((Sb|0)==95)if(Tb){p=52;break}else{Lb=sb;Mb=mb;Nb=ib;break}else if(Tb^(t1(Sb)|0)!=0){Lb=sb;Mb=mb;Nb=ib;break}else{p=52;break}}else p=52;while(0);do if((p|0)==52){p=0;if(!ib){Lb=c[jb+16>>2]|0;Mb=mb;Nb=c[lb>>2]|0;break}A=mb+28|0;l=c[A>>2]|0;if(!l){Ra=B2(F,0,0,0,32)|0;if(!Ra){p=56;break i}c[Ra+24>>2]=mb;c[Ra+28>>2]=0;tb=B2(F,0,0,0,c[d>>2]<<2)|0;c[Ra+20>>2]=tb;if(!tb){p=63;break i}c[A>>2]=Ra;Ub=Ra}else Ub=l;c[Ub>>2]=vb;c[Ub+4>>2]=r;c[Ub+8>>2]=c[lb>>2];c[Ub+12>>2]=c[jb+12>>2];c[Ub+16>>2]=c[h>>2];if((c[d>>2]|0)>0){l=c[Ub+20>>2]|0;Ra=0;do{c[l+(Ra<<2)>>2]=c[Gb+(Ra<<2)>>2];Ra=Ra+1|0}while((Ra|0)<(c[d>>2]|0))}Ra=c[jb+16>>2]|0;if(!Ra){Lb=sb;Mb=Ub;Nb=ib;break}l=c[Ra>>2]|0;if((l|0)<=-1){Lb=sb;Mb=Ub;Nb=ib;break}A=c[Ub+20>>2]|0;tb=l;l=Ra;do{l=l+4|0;c[A+(tb<<2)>>2]=vb;tb=c[l>>2]|0}while((tb|0)>-1);Lb=sb;Mb=Ub;Nb=ib}while(0);lb=jb+40|0;if(!(c[lb>>2]|0)){Vb=Lb;Wb=Mb;Xb=Nb;break}else{sb=Lb;mb=Mb;ib=Nb;jb=jb+32|0}}if(Vb){jb=c[Vb>>2]|0;if((jb|0)>-1){ib=jb;jb=Vb;while(1){c[Gb+(ib<<2)>>2]=vb;mb=jb+4|0;ib=c[mb>>2]|0;if((ib|0)<=-1){Yb=mb;break}else jb=mb}}else Yb=Vb}else Yb=0;if(!Xb){Zb=Ya;_b=Yb;$b=vb;ac=Kb;bc=Wb;cc=0;dc=r;p=174}else{ec=Ya;fc=Yb;gc=vb;hc=Kb;ic=Wb;jc=Xb;kc=r;p=82}}else{Zb=Ya;_b=0;$b=vb;ac=Kb;bc=bb;cc=0;dc=r;p=174}k:while(1){l:do if((p|0)==82){p=0;if((jc|0)==(c[Ha>>2]|0)){if((ec|0)>=(gc|0)){if(!(Sa&(ec|0)==(gc|0))){Zb=ec;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}if(!(o4(c[d>>2]|0,c[Ia>>2]|0,Gb,o)|0)){Zb=ec;_b=fc;$b=ec;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}}if(Ta){Zb=gc;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}if((c[d>>2]|0)>0)lc=0;else{Zb=gc;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}while(1){c[o+(lc<<2)>>2]=c[Gb+(lc<<2)>>2];jb=lc+1|0;if((jb|0)<(c[d>>2]|0))lc=jb;else{Zb=gc;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}}}jb=jc+8|0;do if(!(c[jb>>2]|0))p=97;else{if(!(c[jc+20>>2]&256)){p=97;break}ib=c[jc+24>>2]|0;p4(ib+1|0,Hb,c[a>>2]&-9,j,Gb,gc);mb=c[Hb+(ib<<3)>>2]|0;sb=c[Hb+(ib<<3)+4>>2]|0;ib=sb-mb|0;if(P3(b+mb|0,kc+-1|0,ib)|0){Zb=ec;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}lb=(sb|0)==(mb|0);mb=lb&1;sb=Ib+(c[jc+12>>2]<<2)|0;if(lb?(c[sb>>2]|0)!=0:0){Zb=ec;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}c[sb>>2]=mb;mb=ib+-1|0;ib=kc+mb|0;sb=c[h>>2]|0;lb=gc+hc+mb|0;mb=n2(h,ib,4)|0;if((mb|0)<1)if((mb|0)<0){mc=2;nc=ec;oc=fc;pc=lb;qc=mb;rc=ic;sc=jc;tc=ib;break l}else uc=1;else uc=mb;vc=lb;wc=uc;xc=sb;yc=ib+uc|0}while(0);if((p|0)==97){p=0;ib=c[h>>2]|0;if(!ib){Zb=ec;_b=fc;$b=gc;ac=hc;bc=ic;cc=jc;dc=kc;p=174;continue k}sb=gc+hc|0;lb=n2(h,kc,4)|0;if((lb|0)<1){if((lb|0)<0){mc=2;nc=ec;oc=fc;pc=sb;qc=lb;rc=ic;sc=jc;tc=kc;break}zc=lb+1|0}else zc=lb;vc=sb;wc=zc;xc=ib;yc=kc+zc|0}if(!(c[jb>>2]|0)){Zb=ec;_b=fc;$b=vc;ac=wc;bc=ic;cc=jc;dc=yc;p=174;continue k}ib=(vc|0)!=0;sb=(xc|0)==95;lb=(vc|0)==0;mb=La&(xc|0)==10;wb=_a&(vc|0)<1;rb=jb;pb=0;qb=fc;ob=ic;nb=jc;m:while(1){n:do if((c[nb>>2]|0)>>>0>xc>>>0){Ac=pb;Bc=qb;Cc=ob}else{if((c[nb+4>>2]|0)>>>0>>0){Ac=pb;Bc=qb;Cc=ob;break}tb=nb+20|0;l=c[tb>>2]|0;do if(l){if(!(mb|(wb|(l&1|0)==0))){Ac=pb;Bc=qb;Cc=ob;break n}if((l&2|0)!=0?(A=c[h>>2]|0,!((A|z|0)==0|La&(A|0)==10)):0){Ac=pb;Bc=qb;Cc=ob;break n}do if(l&16){if(sb){Ac=pb;Bc=qb;Cc=ob;break n}if(t1(xc)|0){Ac=pb;Bc=qb;Cc=ob;break n}A=c[h>>2]|0;if((A|0)==95)break;if(!(t1(A)|0)){Ac=pb;Bc=qb;Cc=ob;break n}}while(0);A=c[tb>>2]|0;if(!(A&32))Dc=A;else{if(sb){A=c[h>>2]|0;if((A|0)==95){Ac=pb;Bc=qb;Cc=ob;break n}else Ec=A}else{A=(t1(xc)|0)==0;Ra=c[h>>2]|0;if(A|(Ra|0)==95){Ac=pb;Bc=qb;Cc=ob;break n}else Ec=Ra}if(t1(Ec)|0){Ac=pb;Bc=qb;Cc=ob;break n}Dc=c[tb>>2]|0}Ra=c[h>>2]|0;do if((Ra|0)!=0&(ib&(Dc&64|0)!=0)){if(sb){Fc=Ra;Gc=1}else{A=(t1(xc)|0)!=0;Fc=c[h>>2]|0;Gc=A}if((Fc|0)==95)if(Gc){Ac=pb;Bc=qb;Cc=ob;break n}else break;else if(Gc^(t1(Fc)|0)!=0)break;else{Ac=pb;Bc=qb;Cc=ob;break n}}while(0);do if(c[tb>>2]&128){Ra=c[h>>2]|0;if(lb|(Ra|0)==0){Ac=pb;Bc=qb;Cc=ob;break n}if(sb){Hc=Ra;Ic=1}else{Ra=(t1(xc)|0)!=0;Hc=c[h>>2]|0;Ic=Ra}if((Hc|0)==95)if(Ic)break;else{Ac=pb;Bc=qb;Cc=ob;break n}else if(Ic^(t1(Hc)|0)!=0){Ac=pb;Bc=qb;Cc=ob;break n}else break}while(0);Ra=c[tb>>2]|0;do if(!(Ra&4))Jc=Ra;else{if(c[a>>2]&2){Jc=Ra;break}if(!(x1(xc,c[nb+24>>2]|0)|0)){Ac=pb;Bc=qb;Cc=ob;break n}Jc=c[tb>>2]|0}while(0);do if(Jc&4){if(!(c[a>>2]&2))break;Ra=K1(xc)|0;A=nb+24|0;if(x1(Ra,c[A>>2]|0)|0)break;Ra=J1(xc)|0;if(!(x1(Ra,c[A>>2]|0)|0)){Ac=pb;Bc=qb;Cc=ob;break n}}while(0);if(!(c[tb>>2]&8))break;if(q4(c[nb+28>>2]|0,xc,c[a>>2]&2)|0){Ac=pb;Bc=qb;Cc=ob;break n}}while(0);if(!pb){Ac=c[rb>>2]|0;Bc=c[nb+16>>2]|0;Cc=ob;break}tb=ob+28|0;l=c[tb>>2]|0;if(!l){A=B2(F,0,0,0,32)|0;if(!A){Kc=qb;Lc=ob;p=148;break m}c[A+24>>2]=ob;c[A+28>>2]=0;Ra=B2(F,0,0,0,c[d>>2]<<2)|0;c[A+20>>2]=Ra;if(!Ra){Mc=qb;Nc=ob;p=155;break m}c[tb>>2]=A;Oc=A}else Oc=l;c[Oc>>2]=vc;c[Oc+4>>2]=yc;c[Oc+8>>2]=c[rb>>2];c[Oc+12>>2]=c[nb+12>>2];c[Oc+16>>2]=c[h>>2];if((c[d>>2]|0)>0){l=c[Oc+20>>2]|0;A=0;do{c[l+(A<<2)>>2]=c[Gb+(A<<2)>>2];A=A+1|0}while((A|0)<(c[d>>2]|0))}A=c[nb+16>>2]|0;if(!A){Ac=pb;Bc=qb;Cc=Oc;break}l=c[A>>2]|0;if((l|0)<=-1){Ac=pb;Bc=qb;Cc=Oc;break}tb=c[Oc+20>>2]|0;Ra=l;l=A;do{c[tb+(Ra<<2)>>2]=vc;l=l+4|0;Ra=c[l>>2]|0}while((Ra|0)>-1);Ac=pb;Bc=qb;Cc=Oc}while(0);rb=nb+40|0;if(!(c[rb>>2]|0)){Pc=Ac;Qc=Bc;Rc=Cc;p=170;break}else{pb=Ac;qb=Bc;ob=Cc;nb=nb+32|0}}if((p|0)==148){p=0;A2(F);if(!Va)O4(Gb);if(!Ua)O4(Hb);if($a){mc=1;nc=ec;oc=Kc;pc=vc;qc=wc;rc=Lc;sc=jc;tc=yc;break}O4(Ib);mc=1;nc=ec;oc=Kc;pc=vc;qc=wc;rc=Lc;sc=jc;tc=yc;break}else if((p|0)==155){p=0;A2(F);if(!Va)O4(Gb);if(!Ua)O4(Hb);if($a){mc=1;nc=ec;oc=Mc;pc=vc;qc=wc;rc=Nc;sc=jc;tc=yc;break}O4(Ib);mc=1;nc=ec;oc=Mc;pc=vc;qc=wc;rc=Nc;sc=jc;tc=yc;break}else if((p|0)==170){p=0;if(!Pc){Zb=ec;_b=Qc;$b=vc;ac=wc;bc=Rc;cc=jc;dc=yc;p=174;continue k}if(!Qc){mc=0;nc=ec;oc=0;pc=vc;qc=wc;rc=Rc;sc=Pc;tc=yc;break}nb=c[Qc>>2]|0;if((nb|0)>-1){Sc=nb;Tc=Qc}else{mc=0;nc=ec;oc=Qc;pc=vc;qc=wc;rc=Rc;sc=Pc;tc=yc;break}while(1){nb=Tc+4|0;c[Gb+(Sc<<2)>>2]=vc;Sc=c[nb>>2]|0;if((Sc|0)<=-1){mc=0;nc=ec;oc=nb;pc=vc;qc=wc;rc=Rc;sc=Pc;tc=yc;break}else Tc=nb}}}else if((p|0)==174){p=0;nb=c[bc+24>>2]|0;if(!nb){if((Zb|0)>-1|(c[h>>2]|0)==0){mc=27;nc=Zb;oc=_b;pc=$b;qc=ac;rc=bc;sc=cc;tc=dc;break}c[h>>2]=ub;mc=3;nc=Zb;oc=_b;pc=$b;qc=ac;rc=bc;sc=cc;tc=r;break}ob=c[bc+8>>2]|0;if(c[ob+20>>2]&256)c[Ib+(c[bc+12>>2]<<2)>>2]=0;qb=c[bc>>2]|0;pb=c[bc+4>>2]|0;c[h>>2]=c[bc+16>>2];rb=c[d>>2]|0;if((rb|0)<=0){mc=0;nc=Zb;oc=_b;pc=qb;qc=ac;rc=nb;sc=ob;tc=pb;break}sb=c[bc+20>>2]|0;lb=0;do{c[Gb+(lb<<2)>>2]=c[sb+(lb<<2)>>2];lb=lb+1|0}while((lb|0)!=(rb|0));mc=0;nc=Zb;oc=_b;pc=qb;qc=ac;rc=nb;sc=ob;tc=pb}while(0);switch(mc|0){case 2:{Bb=0;Cb=Hb;Db=1;Eb=Ib;Fb=Gb;break h;break}case 27:{Uc=nc;p=184;break i;break}case 0:{ec=nc;fc=oc;gc=pc;hc=qc;ic=rc;jc=sc;kc=tc;p=82;break}case 3:{break k;break}default:{zb=12;Ab=0;break g}}}Za=c[d>>2]|0;Ya=nc;db=qc;cb=vb;bb=rc;eb=tc}if((p|0)==56){A2(F);if(!Va)O4(Gb);if(!Ua)O4(Hb);if($a){zb=12;Ab=0;break g}O4(Ib);zb=12;Ab=0;break g}else if((p|0)==63){A2(F);if(!Va)O4(Gb);if(!Ua)O4(Hb);if($a){zb=12;Ab=0;break g}O4(Ib);zb=12;Ab=0;break g}else if((p|0)==184){Bb=Uc;Cb=Hb;Db=Uc>>>31;Eb=Ib;Fb=Gb;break}}while(0);A2(F);if(Fb)O4(Fb);if(Cb)O4(Cb);if(!Eb){zb=Db;Ab=Bb}else{O4(Eb);zb=Db;Ab=Bb}}else{zb=12;Ab=0}while(0);xb=Ab;yb=zb}if(!yb)p4(k,e,c[a>>2]|0,j,o,xb);if(!o)n=yb;else{O4(o);n=yb}}i=g;return n|0}function z2(a,b){a=a|0;b=b|0;var d=0;if(!a)d=P4(1,24)|0;else{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;d=b}return d|0}function A2(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b){d=b;do{O4(c[d>>2]|0);b=d;d=c[d+4>>2]|0;O4(b)}while((d|0)!=0)}O4(a);return}function B2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=a+16|0;a:do if(!(c[g>>2]|0)){h=a+12|0;i=c[h>>2]|0;do if(i>>>0>>0){if(b)if(!d){c[g>>2]=1;j=0;break a}else{k=a+8|0;c[k>>2]=d;c[h>>2]=1024;l=k;m=d;n=d;o=1024;break}k=f<<3;p=k>>>0>1024?k:1024;k=N4(8)|0;if(!k){c[g>>2]=1;j=0;break a}q=N4(p)|0;c[k>>2]=q;r=q;if(!q){O4(k);c[g>>2]=1;j=0;break a}c[k+4>>2]=0;s=a+4|0;t=c[s>>2]|0;if(t)c[t+4>>2]=k;if(!(c[a>>2]|0))c[a>>2]=k;c[s>>2]=k;k=a+8|0;c[k>>2]=r;c[h>>2]=p;l=k;m=r;n=q;o=p}else{p=a+8|0;q=c[p>>2]|0;l=p;m=q;n=q;o=i}while(0);i=m+f&3;q=((i|0)==0?0:4-i|0)+f|0;c[l>>2]=n+q;c[h>>2]=o-q;if(!e)j=n;else{$4(n|0,0,q|0)|0;j=n}}else j=0;while(0);return j|0}function C2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;i=i+48|0;e=d+40|0;f=d+8|0;g=d;c[g>>2]=a;c[g+4>>2]=b;h=Va(197,g|0)|0;if((h|0)==-9?(c[f>>2]=a,c[f+4>>2]=1,(Za(221,f|0)|0)>=0):0){P1(f,a);c[e>>2]=f;c[e+4>>2]=b;j=S1(Wa(195,e|0)|0)|0}else j=S1(h)|0;i=d;return j|0}function D2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+112|0;f=e+40|0;g=e+24|0;h=e+16|0;j=e;k=e+52|0;l=a[d>>0]|0;if(A3(190740,l<<24>>24,4)|0){m=N4(1144)|0;if(!m)n=0;else{o=m;p=o+112|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));if(!(H3(d,43)|0))c[m>>2]=l<<24>>24==114?8:4;if(!(H3(d,101)|0))q=l;else{c[j>>2]=b;c[j+4>>2]=2;c[j+8>>2]=1;Za(221,j|0)|0;q=a[d>>0]|0}if(q<<24>>24==97){c[h>>2]=b;c[h+4>>2]=3;q=Za(221,h|0)|0;if(!(q&1024)){c[g>>2]=b;c[g+4>>2]=4;c[g+8>>2]=q|1024;Za(221,g|0)|0}g=c[m>>2]|128;c[m>>2]=g;r=g}else r=c[m>>2]|0;c[m+60>>2]=b;c[m+44>>2]=m+120;c[m+48>>2]=1024;g=m+75|0;a[g>>0]=-1;if((r&8|0)==0?(c[f>>2]=b,c[f+4>>2]=21505,c[f+8>>2]=k,(hb(54,f|0)|0)==0):0)a[g>>0]=10;c[m+32>>2]=23;c[m+36>>2]=21;c[m+40>>2]=22;c[m+12>>2]=17;if(!(c[24681]|0))c[m+76>>2]=-1;ob(98748);g=c[24686]|0;c[m+56>>2]=g;if(g)c[g+52>>2]=m;c[24686]=m;ib(98748);n=m}}else{c[(L1()|0)>>2]=22;n=0}i=e;return n|0}function E2(b){b=b|0;var c=0,d=0,e=0,f=0;c=(H3(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(H3(b,120)|0)==0;f=c?e:e|128;e=(H3(b,101)|0)==0;b=e?f:f|524288;f=d<<24>>24==114?b:b|64;b=d<<24>>24==119?f|512:f;return (d<<24>>24==97?b|1024:b)|0}function F2(a){a=a|0;return 0}function G2(a){a=a|0;return}function H2(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+16|0;g=f;h=e&255;a[g>>0]=h;j=b+16|0;k=c[j>>2]|0;if(!k)if(!(P2(b)|0)){l=c[j>>2]|0;m=4}else n=-1;else{l=k;m=4}do if((m|0)==4){k=b+20|0;j=c[k>>2]|0;if(j>>>0>>0?(o=e&255,(o|0)!=(a[b+75>>0]|0)):0){c[k>>2]=j+1;a[j>>0]=h;n=o;break}if((Hb[c[b+36>>2]&63](b,g,1)|0)==1)n=d[g>>0]|0;else n=-1}while(0);i=f;return n|0}function I2(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=S1(pb(6,d|0)|0)|0;i=b;return a|0}function J2(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;g=f+16|0;h=f;j=f+32|0;c[j>>2]=d;k=j+4|0;l=b+48|0;m=c[l>>2]|0;c[k>>2]=e-((m|0)!=0&1);n=b+44|0;c[j+8>>2]=c[n>>2];c[j+12>>2]=m;if(!(c[24680]|0)){c[g>>2]=c[b+60>>2];c[g+4>>2]=j;c[g+8>>2]=2;o=S1(xb(145,g|0)|0)|0}else{qb(110,b|0);c[h>>2]=c[b+60>>2];c[h+4>>2]=j;c[h+8>>2]=2;j=S1(xb(145,h|0)|0)|0;za(0);o=j}if((o|0)>=1){j=c[k>>2]|0;if(o>>>0>j>>>0){k=c[n>>2]|0;n=b+4|0;c[n>>2]=k;h=k;c[b+8>>2]=h+(o-j);if(!(c[l>>2]|0))p=e;else{c[n>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;p=e}}else p=o}else{c[b>>2]=c[b>>2]|o&48^16;c[b+8>>2]=0;c[b+4>>2]=0;p=o}i=f;return p|0}function K2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e;g=e+20|0;c[f>>2]=c[a+60>>2];c[f+4>>2]=0;c[f+8>>2]=b;c[f+12>>2]=g;c[f+16>>2]=d;if((S1(vb(140,f|0)|0)|0)<0){c[g>>2]=-1;h=-1}else h=c[g>>2]|0;i=e;return h|0}function L2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=i;i=i+48|0;f=e+16|0;g=e;h=e+32|0;j=a+28|0;k=c[j>>2]|0;c[h>>2]=k;l=a+20|0;m=(c[l>>2]|0)-k|0;c[h+4>>2]=m;c[h+8>>2]=b;c[h+12>>2]=d;b=a+60|0;k=a+44|0;n=h;h=2;o=m+d|0;while(1){if(!(c[24680]|0)){c[f>>2]=c[b>>2];c[f+4>>2]=n;c[f+8>>2]=h;p=S1(Fa(146,f|0)|0)|0}else{qb(111,a|0);c[g>>2]=c[b>>2];c[g+4>>2]=n;c[g+8>>2]=h;m=S1(Fa(146,g|0)|0)|0;za(0);p=m}if((o|0)==(p|0)){q=6;break}if((p|0)<0){r=n;s=h;q=8;break}m=o-p|0;t=c[n+4>>2]|0;if(p>>>0<=t>>>0)if((h|0)==2){c[j>>2]=(c[j>>2]|0)+p;u=t;v=p;w=n;x=2}else{u=t;v=p;w=n;x=h}else{y=c[k>>2]|0;c[j>>2]=y;c[l>>2]=y;u=c[n+12>>2]|0;v=p-t|0;w=n+8|0;x=h+-1|0}c[w>>2]=(c[w>>2]|0)+v;c[w+4>>2]=u-v;n=w;h=x;o=m}if((q|0)==6){o=c[k>>2]|0;c[a+16>>2]=o+(c[a+48>>2]|0);k=o;c[j>>2]=k;c[l>>2]=k;z=d}else if((q|0)==8){c[a+16>>2]=0;c[j>>2]=0;c[l>>2]=0;c[a>>2]=c[a>>2]|32;if((s|0)==2)z=0;else z=d-(c[r+4>>2]|0)|0}i=e;return z|0}function M2(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+80|0;g=f;c[b+36>>2]=21;if((c[b>>2]&64|0)==0?(c[g>>2]=c[b+60>>2],c[g+4>>2]=21505,c[g+8>>2]=f+12,(hb(54,g|0)|0)!=0):0)a[b+75>>0]=-1;g=L2(b,d,e)|0;i=f;return g|0}function N2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+84|0;f=c[e>>2]|0;g=d+256|0;h=A3(f,0,g)|0;i=(h|0)==0?g:h-f|0;h=i>>>0>>0?i:d;Z4(b|0,f|0,h|0)|0;c[a+4>>2]=f+h;b=f+i|0;c[a+8>>2]=b;c[e>>2]=b;return h|0}function O2(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=b+20|0;d=b+44|0;if((c[e>>2]|0)>>>0>(c[d>>2]|0)>>>0)Hb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[e>>2]=0;e=c[b>>2]|0;if(e&20)if(!(e&4))f=-1;else{c[b>>2]=e|32;f=-1}else{e=c[d>>2]|0;c[b+8>>2]=e;c[b+4>>2]=e;f=0}return f|0}function P2(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=c[b>>2]|0;if(!(e&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);f=0}else{c[b>>2]=e|32;f=-1}return f|0}function Q2(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;e=b;if((c[a+8>>2]|0)==0?(O2(a)|0)!=0:0)f=-1;else if((Hb[c[a+32>>2]&63](a,e,1)|0)==1)f=d[e>>0]|0;else f=-1;i=b;return f|0}function R2(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a>>2]&1|0)!=0;if(!b){ob(98748);d=c[a+52>>2]|0;e=a+56|0;if(d)c[d+56>>2]=c[e>>2];f=c[e>>2]|0;if(f)c[f+52>>2]=d;if((c[24686]|0)==(a|0))c[24686]=f;ib(98748)}f=T2(a)|0;d=Fb[c[a+12>>2]&63](a)|0|f;f=c[a+92>>2]|0;if(f)O4(f);if(!b)O4(a);return d|0}function S2(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(F2(a)|0)==0;d=(c[a>>2]|0)>>>4&1;if(b)e=d;else e=d}else e=(c[a>>2]|0)>>>4&1;return e|0}function T2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;do if(a){if((c[a+76>>2]|0)<=-1){b=t4(a)|0;break}d=(F2(a)|0)==0;e=t4(a)|0;if(d)b=e;else{G2(a);b=e}}else{if(!(c[24745]|0))f=0;else f=T2(c[24745]|0)|0;ob(98748);e=c[24686]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=F2(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=t4(d)|0|e;else i=e;if(h)G2(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}ib(98748);b=g}while(0);return b|0}function U2(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;if((c[a+76>>2]|0)>=0?(F2(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;f=d[e>>0]|0}else f=Q2(a)|0;g=f}else h=3;do if((h|0)==3){f=a+4|0;e=c[f>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[f>>2]=e+1;g=d[e>>0]|0;break}else{g=Q2(a)|0;break}}while(0);return g|0}function V2(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((c[f+76>>2]|0)>-1)g=F2(f)|0;else g=0;h=e+-1|0;if((e|0)<2){e=f+74|0;i=a[e>>0]|0;a[e>>0]=i+255|i;if(g)G2(f);if(!h){a[b>>0]=0;j=b}else j=0}else{a:do if(h){i=f+4|0;e=f+8|0;k=h;l=b;while(1){m=c[i>>2]|0;n=m;o=(c[e>>2]|0)-n|0;p=A3(m,10,o)|0;q=(p|0)==0;r=q?o:1-n+p|0;p=r>>>0>>0;n=p?r:k;Z4(l|0,m|0,n|0)|0;m=(c[i>>2]|0)+n|0;c[i>>2]=m;r=l+n|0;o=k-n|0;if(!(q&p)){s=r;t=17;break a}if(m>>>0>=(c[e>>2]|0)>>>0){p=Q2(f)|0;if((p|0)<0){u=r;break}else v=p}else{c[i>>2]=m+1;v=d[m>>0]|0}k=o+-1|0;o=r+1|0;a[r>>0]=v;if(!((k|0)!=0&(v&255|0)!=10)){s=o;t=17;break a}else l=o}if((u|0)!=(b|0)?(c[f>>2]&16|0)!=0:0){s=u;t=17}else w=0}else{s=b;t=17}while(0);if((t|0)==17)if(!b)w=0;else{a[s>>0]=0;w=b}if(!g)j=w;else{G2(f);j=w}}return j|0}function W2(a){a=a|0;(c[a+76>>2]|0)>-1?(F2(a)|0)!=0:0;return c[a+60>>2]|0}function X2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+16|0;g=e;if(A3(190740,a[d>>0]|0,4)|0){h=E2(d)|0|32768;c[g>>2]=b;c[g+4>>2]=h;c[g+8>>2]=438;h=S1(lb(5,g|0)|0)|0;if((h|0)>=0){g=D2(h,d)|0;if(!g){c[f>>2]=h;pb(6,f|0)|0;j=0}else j=g}else j=0}else{c[(L1()|0)>>2]=22;j=0}i=e;return j|0}function Y2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=o3(a,b,f)|0;i=e;return d|0}function Z2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(F2(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(e=d+20|0,f=c[e>>2]|0,f>>>0<(c[d+16>>2]|0)>>>0):0){c[e>>2]=f+1;a[f>>0]=b;g=b&255}else g=H2(d,b)|0;G2(d);h=g}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(g=d+20|0,f=c[g>>2]|0,f>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=f+1;a[f>>0]=b;h=b&255;break}h=H2(d,b)|0}while(0);return h|0}function _2(a,b){a=a|0;b=b|0;return (h3(a,N3(a)|0,1,b)|0)+-1|0}function $2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=_(e,d)|0;if((c[f+76>>2]|0)>-1)h=F2(f)|0;else h=0;i=f+74|0;j=a[i>>0]|0;a[i>>0]=j+255|j;j=f+4|0;i=c[j>>2]|0;k=(c[f+8>>2]|0)-i|0;l=i;if((k|0)>0){i=k>>>0>>0?k:g;Z4(b|0,l|0,i|0)|0;c[j>>2]=l+i;m=b+i|0;n=g-i|0}else{m=b;n=g}a:do if(!n)o=13;else{b=f+32|0;i=m;l=n;while(1){if(O2(f)|0){p=l;break}j=Hb[c[b>>2]&63](f,i,l)|0;if((j+1|0)>>>0<2){p=l;break}if((l|0)==(j|0)){o=13;break a}else{i=i+j|0;l=l-j|0}}if(h)G2(f);q=((g-p|0)>>>0)/(d>>>0)|0}while(0);if((o|0)==13)if(!h)q=e;else{G2(f);q=e}return q|0}function a3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((d|0)==1)e=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;else e=b;b=a+20|0;f=a+28|0;if((c[b>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Hb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)g=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[b>>2]=0;if((Hb[c[a+40>>2]&63](a,e,d)|0)<0)g=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;g=0}}return g|0}function b3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((c[a+76>>2]|0)>-1){e=(F2(a)|0)==0;f=a3(a,b,d)|0;if(e)g=f;else{G2(a);g=f}}else g=a3(a,b,d)|0;return g|0}function c3(a,b,c){a=a|0;b=b|0;c=c|0;return b3(a,b,c)|0}function d3(a){a=a|0;var b=0,d=0,e=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;d=Hb[c[a+40>>2]&63](a,0,b)|0;if((d|0)<0)e=d;else e=d-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return e|0}function e3(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(F2(a)|0)==0;d=d3(a)|0;if(b)e=d;else e=d}else e=d3(a)|0;return e|0}function f3(a){a=a|0;return e3(a)|0}function g3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(P2(e)|0)){h=c[f>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=e+20|0;f=c[g>>2]|0;k=f;if((h-f|0)>>>0>>0){j=Hb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){l=d;m=b;n=k;o=0;break b}p=f+-1|0;if((a[b+p>>0]|0)==10){q=f;break}else f=p}if((Hb[c[e+36>>2]&63](e,b,q)|0)>>>0>>0){j=q;break a}l=d-q|0;m=b+q|0;n=c[g>>2]|0;o=q}else{l=d;m=b;n=k;o=0}while(0);Z4(n|0,m|0,l|0)|0;c[g>>2]=(c[g>>2]|0)+l;j=o+l|0}while(0);return j|0}function h3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=_(d,b)|0;if((c[e+76>>2]|0)>-1){g=(F2(e)|0)==0;h=g3(a,f,e)|0;if(g)i=h;else{G2(e);i=h}}else i=g3(a,f,e)|0;if((i|0)==(f|0))j=d;else j=(i>>>0)/(b>>>0)|0;return j|0}function i3(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=o3(c[24744]|0,a,e)|0;i=d;return b|0}function j3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=q3(a,b,d,g)|0;i=f;return e|0}function k3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=r3(a,b,f)|0;i=e;return d|0}function l3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=s3(a,b,f)|0;i=e;return d|0}function m3(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;a=i;i=i+48|0;b=a+16|0;d=a;e=a+20|0;f=0;while(1){g=n3(e)|0;if(!g){h=0;break}c[d>>2]=g;c[d+4>>2]=32962;c[d+8>>2]=384;j=S1(lb(5,d|0)|0)|0;f=f+1|0;if((j|0)>-1){k=j;l=g;m=5;break}if((f|0)>=100){h=0;break}}if((m|0)==5){m=D2(k,190744)|0;c[b>>2]=l;kb(10,b|0)|0;h=m}i=a;return h|0}function n3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+64|0;d=b+32|0;e=b+24|0;f=b+8|0;g=b;h=b+40|0;j=b+48|0;c[h>>2]=a;if(!a)c[h>>2]=190747;c[g>>2]=190767;c[g+4>>2]=7;if(!(gb(33,g|0)|0)){g=j+4|0;a=h;k=0;while(1){c[f>>2]=0;c[f+4>>2]=j;c[f+8>>2]=0;Ea(265,f|0)|0;l=c[h>>2]|0;m=c[g>>2]^a^l;n=c[24848]|0;c[24848]=n+1;c[e>>2]=n;c[e+4>>2]=m;j3(l,20,190772,e)|0;c[d>>2]=c[h>>2];c[d+4>>2]=0;if(gb(33,d|0)|0){o=k;break}l=k+1|0;if((k|0)<100)k=l;else{o=l;break}}p=(o|0)>99?0:c[h>>2]|0}else p=0;i=b;return p|0}function o3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+224|0;g=f+120|0;h=f+80|0;j=f;k=f+136|0;l=h;m=l+40|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(m|0));c[g>>2]=c[e>>2];if((u4(0,d,g,j,h)|0)<0)n=-1;else{if((c[b+76>>2]|0)>-1)o=F2(b)|0;else o=0;e=c[b>>2]|0;l=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){m=b+44|0;p=c[m>>2]|0;c[m>>2]=k;q=b+28|0;c[q>>2]=k;r=b+20|0;c[r>>2]=k;c[e>>2]=80;s=b+16|0;c[s>>2]=k+80;k=u4(b,d,g,j,h)|0;if(!p)t=k;else{Hb[c[b+36>>2]&63](b,0,0)|0;u=(c[r>>2]|0)==0?-1:k;c[m>>2]=p;c[e>>2]=0;c[s>>2]=0;c[q>>2]=0;c[r>>2]=0;t=u}}else t=u4(b,d,g,j,h)|0;h=c[b>>2]|0;c[b>>2]=h|l;if(o)G2(b);n=(h&32|0)==0?t:-1}i=f;return n|0}function p3(e,f,j){e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0.0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0;k=i;i=i+304|0;l=k+16|0;m=k+8|0;n=k+33|0;o=k;p=k+32|0;if((c[e+76>>2]|0)>-1)q=F2(e)|0;else q=0;r=a[f>>0]|0;a:do if(r<<24>>24){s=e+4|0;t=e+100|0;u=e+108|0;v=e+8|0;w=n+10|0;x=n+33|0;y=m+4|0;z=n+46|0;A=n+94|0;B=r;D=0;E=f;F=0;G=0;H=0;b:while(1){c:do if(!(r1(B&255)|0)){I=(a[E>>0]|0)==37;d:do if(I){J=E+1|0;K=a[J>>0]|0;e:do switch(K<<24>>24){case 37:{break d;break}case 42:{L=0;M=E+2|0;break}default:{N=(K&255)+-48|0;if(N>>>0<10?(a[E+2>>0]|0)==36:0){c[l>>2]=c[j>>2];O=N;while(1){N=(c[l>>2]|0)+(4-1)&~(4-1);P=c[N>>2]|0;c[l>>2]=N+4;if(O>>>0>1)O=O+-1|0;else{Q=P;break}}L=Q;M=E+3|0;break e}O=(c[j>>2]|0)+(4-1)&~(4-1);P=c[O>>2]|0;c[j>>2]=O+4;L=P;M=J}}while(0);J=a[M>>0]|0;K=J&255;if((K+-48|0)>>>0<10){P=K;K=M;O=0;while(1){N=(O*10|0)+-48+P|0;R=K+1|0;S=a[R>>0]|0;P=S&255;if((P+-48|0)>>>0>=10){T=S;U=R;V=N;break}else{K=R;O=N}}}else{T=J;U=M;V=0}if(T<<24>>24==109){O=U+1|0;W=a[O>>0]|0;X=(L|0)!=0&1;Y=O;Z=0;_=0}else{W=T;X=0;Y=U;Z=G;_=H}O=Y+1|0;switch(W&255|0){case 104:{K=(a[O>>0]|0)==104;$=K?Y+2|0:O;aa=K?-2:-1;break}case 108:{K=(a[O>>0]|0)==108;$=K?Y+2|0:O;aa=K?3:1;break}case 106:{$=O;aa=3;break}case 116:case 122:{$=O;aa=1;break}case 76:{$=O;aa=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{$=Y;aa=0;break}default:{ba=X;ca=D;da=Z;ea=_;fa=154;break b}}O=d[$>>0]|0;K=(O&47|0)==3;P=K?O|32:O;O=K?1:aa;switch(P|0){case 99:{ga=F;ha=(V|0)<1?1:V;break}case 91:{ga=F;ha=V;break}case 110:{if(!L){ia=D;ja=$;ka=F;la=Z;ma=_;break c}switch(O|0){case -2:{a[L>>0]=F;ia=D;ja=$;ka=F;la=Z;ma=_;break c;break}case -1:{b[L>>1]=F;ia=D;ja=$;ka=F;la=Z;ma=_;break c;break}case 0:{c[L>>2]=F;ia=D;ja=$;ka=F;la=Z;ma=_;break c;break}case 1:{c[L>>2]=F;ia=D;ja=$;ka=F;la=Z;ma=_;break c;break}case 3:{K=L;c[K>>2]=F;c[K+4>>2]=((F|0)<0)<<31>>31;ia=D;ja=$;ka=F;la=Z;ma=_;break c;break}default:{ia=D;ja=$;ka=F;la=Z;ma=_;break c}}break}default:{Q1(e,0);do{K=c[s>>2]|0;if(K>>>0<(c[t>>2]|0)>>>0){c[s>>2]=K+1;na=d[K>>0]|0}else na=R1(e)|0}while((r1(na)|0)!=0);if(!(c[t>>2]|0))oa=c[s>>2]|0;else{J=(c[s>>2]|0)+-1|0;c[s>>2]=J;oa=J}ga=(c[u>>2]|0)+F+oa-(c[v>>2]|0)|0;ha=V}}Q1(e,ha);J=c[s>>2]|0;K=c[t>>2]|0;if(J>>>0>>0){c[s>>2]=J+1;pa=K}else{if((R1(e)|0)<0){ba=X;ca=D;da=Z;ea=_;fa=154;break b}pa=c[t>>2]|0}if(pa)c[s>>2]=(c[s>>2]|0)+-1;f:do switch(P|0){case 91:case 99:case 115:{K=(P|0)==99;g:do if((P&239|0)==99){$4(n|0,-1,257)|0;a[n>>0]=0;if((P|0)==115){a[x>>0]=0;a[w>>0]=0;a[w+1>>0]=0;a[w+2>>0]=0;a[w+3>>0]=0;a[w+4>>0]=0;qa=$}else qa=$}else{J=$+1|0;N=(a[J>>0]|0)==94;R=N&1;S=N?$+2|0:J;$4(n|0,N&1|0,257)|0;a[n>>0]=0;switch(a[S>>0]|0){case 45:{N=(R^1)&255;a[z>>0]=N;ra=N;sa=S+1|0;break}case 93:{N=(R^1)&255;a[A>>0]=N;ra=N;sa=S+1|0;break}default:{ra=(R^1)&255;sa=S}}S=sa;while(1){R=a[S>>0]|0;h:do switch(R<<24>>24){case 0:{ba=X;ca=D;da=Z;ea=_;fa=154;break b;break}case 93:{qa=S;break g;break}case 45:{N=S+1|0;J=a[N>>0]|0;switch(J<<24>>24){case 93:case 0:{ta=45;ua=S;break h;break}default:{}}va=a[S+-1>>0]|0;if((va&255)<(J&255)){wa=va&255;do{wa=wa+1|0;a[n+wa>>0]=ra;va=a[N>>0]|0}while((wa|0)<(va&255|0));ta=va;ua=N}else{ta=J;ua=N}break}default:{ta=R;ua=S}}while(0);a[n+((ta&255)+1)>>0]=ra;S=ua+1|0}}while(0);S=K?ha+1|0:31;R=(O|0)==1;wa=(X|0)!=0;i:do if(R){if(wa){va=N4(S<<2)|0;if(!va){ba=X;ca=D;da=0;ea=va;fa=154;break b}else xa=va}else xa=L;c[m>>2]=0;c[y>>2]=0;va=0;ya=S;za=xa;j:while(1){Aa=(za|0)==0;Ba=va;while(1){k:while(1){Ca=c[s>>2]|0;if(Ca>>>0<(c[t>>2]|0)>>>0){c[s>>2]=Ca+1;Da=d[Ca>>0]|0}else Da=R1(e)|0;if(!(a[n+(Da+1)>>0]|0)){Ea=Ba;Fa=za;break j}a[p>>0]=Da;switch(l2(o,p,1,m)|0){case -1:{ba=X;ca=D;da=0;ea=za;fa=154;break b;break}case -2:break;default:break k}}if(Aa)Ga=Ba;else{c[za+(Ba<<2)>>2]=c[o>>2];Ga=Ba+1|0}if(wa&(Ga|0)==(ya|0))break;else Ba=Ga}Ba=ya<<1|1;Aa=Q4(za,Ba<<2)|0;if(!Aa){ba=X;ca=D;da=0;ea=za;fa=154;break b}else{N=ya;ya=Ba;za=Aa;va=N}}if(!(m2(m)|0)){ba=X;ca=D;da=0;ea=Fa;fa=154;break b}else{Ha=Ea;Ia=0;Ja=Fa}}else{if(wa){va=N4(S)|0;if(!va){ba=X;ca=D;da=0;ea=0;fa=154;break b}else{Ka=0;La=S;Ma=va}while(1){va=Ka;do{za=c[s>>2]|0;if(za>>>0<(c[t>>2]|0)>>>0){c[s>>2]=za+1;Na=d[za>>0]|0}else Na=R1(e)|0;if(!(a[n+(Na+1)>>0]|0)){Ha=va;Ia=Ma;Ja=0;break i}a[Ma+va>>0]=Na;va=va+1|0}while((va|0)!=(La|0));va=La<<1|1;za=Q4(Ma,va)|0;if(!za){ba=X;ca=D;da=Ma;ea=0;fa=154;break b}else{ya=La;La=va;Ma=za;Ka=ya}}}if(!L){ya=pa;while(1){za=c[s>>2]|0;if(za>>>0>>0){c[s>>2]=za+1;Oa=d[za>>0]|0}else Oa=R1(e)|0;if(!(a[n+(Oa+1)>>0]|0)){Ha=0;Ia=0;Ja=0;break i}ya=c[t>>2]|0}}else{ya=pa;za=0;while(1){va=c[s>>2]|0;if(va>>>0>>0){c[s>>2]=va+1;Pa=d[va>>0]|0}else Pa=R1(e)|0;if(!(a[n+(Pa+1)>>0]|0)){Ha=za;Ia=L;Ja=0;break i}a[L+za>>0]=Pa;ya=c[t>>2]|0;za=za+1|0}}}while(0);if(!(c[t>>2]|0))Qa=c[s>>2]|0;else{S=(c[s>>2]|0)+-1|0;c[s>>2]=S;Qa=S}S=Qa-(c[v>>2]|0)+(c[u>>2]|0)|0;if(!S){Ra=X;Sa=D;Ta=Ia;Ua=Ja;break b}if(!((S|0)==(ha|0)|K^1)){Ra=X;Sa=D;Ta=Ia;Ua=Ja;break b}do if(wa)if(R){c[L>>2]=Ja;break}else{c[L>>2]=Ia;break}while(0);if(K){Va=qa;Wa=Ia;Xa=Ja}else{if(Ja)c[Ja+(Ha<<2)>>2]=0;if(!Ia){Va=qa;Wa=0;Xa=Ja;break f}a[Ia+Ha>>0]=0;Va=qa;Wa=Ia;Xa=Ja}break}case 120:case 88:case 112:{Ya=16;fa=136;break}case 111:{Ya=8;fa=136;break}case 117:case 100:{Ya=10;fa=136;break}case 105:{Ya=0;fa=136;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{Za=+N1(e,O,0);if((c[u>>2]|0)==((c[v>>2]|0)-(c[s>>2]|0)|0)){Ra=X;Sa=D;Ta=Z;Ua=_;break b}if(!L){Va=$;Wa=Z;Xa=_}else switch(O|0){case 0:{g[L>>2]=Za;Va=$;Wa=Z;Xa=_;break f;break}case 1:{h[L>>3]=Za;Va=$;Wa=Z;Xa=_;break f;break}case 2:{h[L>>3]=Za;Va=$;Wa=Z;Xa=_;break f;break}default:{Va=$;Wa=Z;Xa=_;break f}}break}default:{Va=$;Wa=Z;Xa=_}}while(0);l:do if((fa|0)==136){fa=0;R=O1(e,Ya,0,-1,-1)|0;if((c[u>>2]|0)==((c[v>>2]|0)-(c[s>>2]|0)|0)){Ra=X;Sa=D;Ta=Z;Ua=_;break b}if((L|0)!=0&(P|0)==112){c[L>>2]=R;Va=$;Wa=Z;Xa=_;break}if(!L){Va=$;Wa=Z;Xa=_}else switch(O|0){case -2:{a[L>>0]=R;Va=$;Wa=Z;Xa=_;break l;break}case -1:{b[L>>1]=R;Va=$;Wa=Z;Xa=_;break l;break}case 0:{c[L>>2]=R;Va=$;Wa=Z;Xa=_;break l;break}case 1:{c[L>>2]=R;Va=$;Wa=Z;Xa=_;break l;break}case 3:{wa=L;c[wa>>2]=R;c[wa+4>>2]=C;Va=$;Wa=Z;Xa=_;break l;break}default:{Va=$;Wa=Z;Xa=_;break l}}}while(0);ia=((L|0)!=0&1)+D|0;ja=Va;ka=(c[u>>2]|0)+ga+(c[s>>2]|0)-(c[v>>2]|0)|0;la=Wa;ma=Xa;break c}while(0);O=E+(I&1)|0;Q1(e,0);P=c[s>>2]|0;if(P>>>0<(c[t>>2]|0)>>>0){c[s>>2]=P+1;_a=d[P>>0]|0}else _a=R1(e)|0;if((_a|0)!=(d[O>>0]|0)){$a=_a;ab=D;bb=G;cb=H;fa=22;break b}ia=D;ja=O;ka=F+1|0;la=G;ma=H}else{O=E;while(1){P=O+1|0;if(!(r1(d[P>>0]|0)|0)){db=O;break}else O=P}Q1(e,0);do{O=c[s>>2]|0;if(O>>>0<(c[t>>2]|0)>>>0){c[s>>2]=O+1;eb=d[O>>0]|0}else eb=R1(e)|0}while((r1(eb)|0)!=0);if(!(c[t>>2]|0))fb=c[s>>2]|0;else{O=(c[s>>2]|0)+-1|0;c[s>>2]=O;fb=O}ia=D;ja=db;ka=(c[u>>2]|0)+F+fb-(c[v>>2]|0)|0;la=G;ma=H}while(0);E=ja+1|0;B=a[E>>0]|0;if(!(B<<24>>24)){gb=ia;break a}else{D=ia;F=ka;G=la;H=ma}}if((fa|0)==22){if(c[t>>2]|0)c[s>>2]=(c[s>>2]|0)+-1;if((ab|0)!=0|($a|0)>-1){gb=ab;break}else{hb=0;ib=bb;jb=cb;fa=155}}else if((fa|0)==154)if(!ca){hb=ba;ib=da;jb=ea;fa=155}else{Ra=ba;Sa=ca;Ta=da;Ua=ea}if((fa|0)==155){Ra=hb;Sa=-1;Ta=ib;Ua=jb}if(!Ra)gb=Sa;else{O4(Ta);O4(Ua);gb=Sa}}else gb=0;while(0);if(q)G2(e);i=k;return gb|0}function q3(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+128|0;h=g+112|0;j=g;k=j;l=99396;m=k+112|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));if((d+-1|0)>>>0>2147483646)if(!d){n=h;o=1;p=4}else{c[(L1()|0)>>2]=75;q=-1}else{n=b;o=d;p=4}if((p|0)==4){p=-2-n|0;d=o>>>0>p>>>0?p:o;c[j+48>>2]=d;o=j+20|0;c[o>>2]=n;c[j+44>>2]=n;p=n+d|0;n=j+16|0;c[n>>2]=p;c[j+28>>2]=p;p=o3(j,e,f)|0;if(!d)q=p;else{d=c[o>>2]|0;a[d+(((d|0)==(c[n>>2]|0))<<31>>31)>>0]=0;q=p}}i=g;return q|0}function r3(a,b,c){a=a|0;b=b|0;c=c|0;return q3(a,2147483647,b,c)|0}function s3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+112|0;f=e;g=f;h=g+112|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[f+32>>2]=45;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;a=p3(f,b,d)|0;i=e;return a|0}function t3(a){a=a|0;return +(+x3(a,0))}function u3(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=b;while(1){b=c+1|0;if(!(r1(a[c>>0]|0)|0)){d=c;e=b;break}else c=b}c=a[d>>0]|0;switch(c<<24>>24|0){case 45:{f=1;g=5;break}case 43:{f=0;g=5;break}default:{h=d;i=c;j=0}}if((g|0)==5){h=e;i=a[e>>0]|0;j=f}f=(i<<24>>24)+-48|0;if(f>>>0<10){i=h;h=f;f=0;while(1){i=i+1|0;e=(f*10|0)-h|0;h=(a[i>>0]|0)+-48|0;if(h>>>0>=10){k=e;break}else f=e}}else k=0;return ((j|0)!=0?k:0-k|0)|0}function v3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:do if(!c)f=0;else{g=b;h=c;while(1){i=h>>>1;j=g+(_(i,d)|0)|0;k=Ob[e&127](a,j)|0;if(!k){f=j;break a}if((h|0)==1){f=0;break a}l=(k|0)<0;h=l?i:h-i|0;if(!h){f=0;break}else g=l?g:j}}while(0);return f|0}function w3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;f=i;i=i+208|0;g=f+8|0;h=f;j=_(d,b)|0;b=h;c[b>>2]=1;c[b+4>>2]=0;if(j){b=0-d|0;c[g+4>>2]=d;c[g>>2]=d;k=d;l=d;m=2;while(1){n=l+d+k|0;c[g+(m<<2)>>2]=n;if(n>>>0>>0){o=k;k=n;m=m+1|0;l=o}else break}l=a+j+b|0;j=h+4|0;if(l>>>0>a>>>0){m=l;k=1;o=a;n=1;while(1){do if((k&3|0)==3){w4(o,d,e,n,g);p=c[j>>2]|0;q=p<<30|(c[h>>2]|0)>>>2;c[h>>2]=q;c[j>>2]=p>>>2;r=q;s=n+2|0}else{q=n+-1|0;if((c[g+(q<<2)>>2]|0)>>>0<(m-o|0)>>>0)w4(o,d,e,n,g);else x4(o,d,e,h,n,0,g);if((n|0)==1){p=c[h>>2]|0;c[j>>2]=p>>>31|c[j>>2]<<1;t=p<<1;c[h>>2]=t;r=t;s=0;break}if(q>>>0>31){t=c[h>>2]|0;c[j>>2]=t;c[h>>2]=0;u=n+-33|0;v=t;w=0}else{u=q;v=c[j>>2]|0;w=c[h>>2]|0}c[j>>2]=w>>>(32-u|0)|v<>2]=q;r=q;s=1}while(0);k=r|1;c[h>>2]=k;q=o+d|0;if(q>>>0>=l>>>0){x=q;y=s;break}else{o=q;n=s}}}else{x=a;y=1}x4(x,d,e,h,y,0,g);a=h+4|0;s=c[h>>2]|0;n=c[a>>2]|0;o=(n|0)==0;if(!((y|0)==1&(s|0)==1&o)){l=o;o=s;s=n;n=x;x=y;while(1){if((x|0)<2){y=o+-1|0;do if(y){if(!(y&1)){k=y;r=0;while(1){u=r+1|0;k=k>>>1;if(k&1){z=u;break}else r=u}}else{if(l)A=32;else{if(!(s&1)){B=s;C=0}else{D=0;E=o;F=s;G=0;break}while(1){r=C+1|0;B=B>>>1;if(B&1){A=r;break}else C=r}}z=A+32|0}if(z>>>0>31){H=z;I=28}else{D=z;E=o;F=s;G=z}}else{H=32;I=28}while(0);if((I|0)==28){I=0;c[h>>2]=s;c[j>>2]=0;D=H+-32|0;E=s;F=0;G=H}c[h>>2]=F<<32-D|E>>>D;c[j>>2]=F>>>D;J=n+b|0;K=G+x|0}else{y=o>>>30;r=x+-2|0;c[h>>2]=(o<<1&2147483646|y<<31)^3;c[j>>2]=(y|s<<2)>>>1;x4(n+(0-(c[g+(r<<2)>>2]|0))+b|0,d,e,h,x+-1|0,1,g);y=c[h>>2]|0;c[j>>2]=y>>>31|c[j>>2]<<1;c[h>>2]=y<<1|1;y=n+b|0;x4(y,d,e,h,r,1,g);J=y;K=r}o=c[h>>2]|0;s=c[a>>2]|0;l=(s|0)==0;if((K|0)==1&(o|0)==1&l)break;else{n=J;x=K}}}}i=f;return}function x3(a,b){a=a|0;b=b|0;return +(+y4(a,b,1))}function y3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=z4(a,b,c,-1,0)|0;return d|0}function z3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=z4(a,b,c,-2147483648,0)|0;return d|0}function A3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=d&255;g=(e|0)!=0;a:do if(g&(b&3|0)!=0){h=d&255;i=e;j=b;while(1){if((a[j>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=j+1|0;o=i+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=o;j=n}else{q=o;r=p;s=n;m=5;break}}}else{q=e;r=g;s=b;m=5}while(0);if((m|0)==5)if(r){k=q;l=s;m=6}else{t=0;u=s}b:do if((m|0)==6){s=d&255;if((a[l>>0]|0)==s<<24>>24){t=k;u=l}else{q=_(f,16843009)|0;c:do if(k>>>0>3){r=k;b=l;while(1){g=c[b>>2]^q;if((g&-2139062144^-2139062144)&g+-16843009){v=r;w=b;break}g=b+4|0;e=r+-4|0;if(e>>>0>3){r=e;b=g}else{x=e;y=g;m=11;break c}}z=v;A=w}else{x=k;y=l;m=11}while(0);if((m|0)==11)if(!x){t=0;u=y;break}else{z=x;A=y}while(1){if((a[A>>0]|0)==s<<24>>24){t=z;u=A;break b}q=A+1|0;z=z+-1|0;if(!z){t=0;u=q;break}else A=q}}}while(0);return ((t|0)!=0?u:0)|0}function B3(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:do if(!d)e=0;else{f=d;g=b;h=c;while(1){i=a[g>>0]|0;j=a[h>>0]|0;if(i<<24>>24!=j<<24>>24){k=i;l=j;break}f=f+-1|0;if(!f){e=0;break a}else{g=g+1|0;h=h+1|0}}e=(k&255)-(l&255)|0}while(0);return e|0}function C3(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c&255;c=d;while(1){if(!c){f=0;break}c=c+-1|0;d=b+c|0;if((a[d>>0]|0)==e<<24>>24){f=d;break}}return f|0}function D3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=d;a:do if(!((e^b)&3)){if(!(e&3)){f=d;g=b}else{h=b;i=d;while(1){j=a[i>>0]|0;a[h>>0]=j;if(!(j<<24>>24)){k=h;break a}j=i+1|0;l=h+1|0;if(!(j&3)){f=j;g=l;break}else{h=l;i=j}}}i=c[f>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009)){h=i;i=g;j=f;while(1){l=j+4|0;m=i+4|0;c[i>>2]=h;h=c[l>>2]|0;if((h&-2139062144^-2139062144)&h+-16843009){n=m;o=l;break}else{i=m;j=l}}}else{n=g;o=f}p=o;q=n;r=8}else{p=d;q=b;r=8}while(0);if((r|0)==8){r=a[p>>0]|0;a[q>>0]=r;if(!(r<<24>>24))k=q;else{r=q;q=p;while(1){q=q+1|0;p=r+1|0;b=a[q>>0]|0;a[p>>0]=b;if(!(b<<24>>24)){k=p;break}else r=p}}}return k|0}function E3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;f=d;do if(!((f^b)&3)){g=(e|0)!=0;a:do if(g&(f&3|0)!=0){h=e;i=d;j=b;while(1){k=a[i>>0]|0;a[j>>0]=k;if(!(k<<24>>24)){l=h;m=i;n=j;break a}k=h+-1|0;o=i+1|0;p=j+1|0;q=(k|0)!=0;if(q&(o&3|0)!=0){h=k;i=o;j=p}else{r=k;s=o;t=p;u=q;v=5;break}}}else{r=e;s=d;t=b;u=g;v=5}while(0);if((v|0)==5)if(u){l=r;m=s;n=t}else{w=t;x=0;break}if(!(a[m>>0]|0)){w=n;x=l}else{b:do if(l>>>0>3){g=l;j=n;i=m;while(1){h=c[i>>2]|0;if((h&-2139062144^-2139062144)&h+-16843009){y=g;z=j;A=i;break b}c[j>>2]=h;h=g+-4|0;q=i+4|0;p=j+4|0;if(h>>>0>3){g=h;j=p;i=q}else{y=h;z=p;A=q;break}}}else{y=l;z=n;A=m}while(0);B=A;C=z;D=y;v=11}}else{B=d;C=b;D=e;v=11}while(0);c:do if((v|0)==11)if(!D){w=C;x=0}else{e=B;b=C;d=D;while(1){y=a[e>>0]|0;a[b>>0]=y;if(!(y<<24>>24)){w=b;x=d;break c}d=d+-1|0;y=b+1|0;if(!d){w=y;x=0;break}else{e=e+1|0;b=y}}}while(0);$4(w|0,0,x|0)|0;return w|0}function F3(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=a[b>>0]|0;a:do if(!(e<<24>>24)){f=0;g=c}else{h=e;i=e&255;j=b;k=c;while(1){l=a[k>>0]|0;if(!(l<<24>>24)){f=h;g=k;break a}if(h<<24>>24!=l<<24>>24?(l=H1(i)|0,(l|0)!=(H1(d[k>>0]|0)|0)):0){m=j;n=k;break}j=j+1|0;l=k+1|0;o=a[j>>0]|0;if(!(o<<24>>24)){f=0;g=l;break a}else{h=o;i=o&255;k=l}}f=a[m>>0]|0;g=n}while(0);n=H1(f&255)|0;return n-(H1(d[g>>0]|0)|0)|0}function G3(a,b){a=a|0;b=b|0;K3(a+(N3(a)|0)|0,b)|0;return a|0}function H3(b,c){b=b|0;c=c|0;var d=0;d=I3(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function I3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=d&255;a:do if(!e)f=b+(N3(b)|0)|0;else{if(!(b&3))g=b;else{h=d&255;i=b;while(1){j=a[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){f=i;break a}j=i+1|0;if(!(j&3)){g=j;break}else i=j}}i=_(e,16843009)|0;h=c[g>>2]|0;b:do if(!((h&-2139062144^-2139062144)&h+-16843009)){j=h;k=g;while(1){l=j^i;if((l&-2139062144^-2139062144)&l+-16843009){m=k;break b}l=k+4|0;j=c[l>>2]|0;if((j&-2139062144^-2139062144)&j+-16843009){m=l;break}else k=l}}else m=g;while(0);i=d&255;h=m;while(1){k=a[h>>0]|0;if(k<<24>>24==0?1:k<<24>>24==i<<24>>24){f=h;break}else h=h+1|0}}while(0);return f|0}function J3(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=d;g=e}else{e=b;b=c;do{e=e+1|0;b=b+1|0;c=a[e>>0]|0;d=a[b>>0]|0}while(!(c<<24>>24==0?1:c<<24>>24!=d<<24>>24));f=c;g=d}return (f&255)-(g&255)|0}function K3(a,b){a=a|0;b=b|0;D3(a,b)|0;return a|0}function L3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e;g=a[d>>0]|0;if(g<<24>>24!=0?(a[d+1>>0]|0)!=0:0){c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;h=d;d=g;do{j=f+(((d&255)>>>5&255)<<2)|0;c[j>>2]=c[j>>2]|1<<(d&31);h=h+1|0;d=a[h>>0]|0}while(d<<24>>24!=0);d=a[b>>0]|0;a:do if(!(d<<24>>24))k=b;else{h=b;j=d;while(1){if(c[f+(((j&255)>>>5&255)<<2)>>2]&1<<(j&31)){k=h;break a}l=h+1|0;j=a[l>>0]|0;if(!(j<<24>>24)){k=l;break}else h=l}}while(0);m=k-b|0}else m=(I3(b,g<<24>>24)|0)-b|0;i=e;return m|0}function M3(a){a=a|0;var b=0,c=0,d=0;b=(N3(a)|0)+1|0;c=N4(b)|0;if(!c)d=0;else{Z4(c|0,a|0,b|0)|0;d=c}return d|0}function N3(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=b;a:do if(!(d&3)){e=b;f=4}else{g=b;h=d;while(1){if(!(a[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){e=j;f=4;break}else g=j}}while(0);if((f|0)==4){f=e;while(1){e=c[f>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009))f=f+4|0;else{k=e;l=f;break}}if(!((k&255)<<24>>24))m=l;else{k=l;while(1){l=k+1|0;if(!(a[l>>0]|0)){m=l;break}else k=l}}i=m}return i-d|0}function O3(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(!e)f=0;else{g=a[b>>0]|0;a:do if(!(g<<24>>24)){h=0;i=c}else{j=e;k=g;l=g&255;m=b;n=c;while(1){j=j+-1|0;o=a[n>>0]|0;if(!((j|0)!=0&o<<24>>24!=0)){h=k;i=n;break a}if(k<<24>>24!=o<<24>>24?(o=H1(l)|0,(o|0)!=(H1(d[n>>0]|0)|0)):0){p=m;q=n;break}m=m+1|0;o=n+1|0;r=a[m>>0]|0;if(!(r<<24>>24)){h=0;i=o;break a}else{k=r;l=r&255;n=o}}h=a[p>>0]|0;i=q}while(0);q=H1(h&255)|0;f=q-(H1(d[i>>0]|0)|0)|0}return f|0}function P3(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!e)f=0;else{g=a[b>>0]|0;a:do if(!(g<<24>>24)){h=0;i=c}else{j=e;k=g;l=b;m=c;while(1){j=j+-1|0;n=a[m>>0]|0;if(!(k<<24>>24==n<<24>>24&((j|0)!=0&n<<24>>24!=0))){h=k;i=m;break a}l=l+1|0;n=m+1|0;k=a[l>>0]|0;if(!(k<<24>>24)){h=0;i=n;break}else m=n}}while(0);f=(h&255)-(d[i>>0]|0)|0}return f|0}function Q3(a,b,c){a=a|0;b=b|0;c=c|0;E3(a,b,c)|0;return a|0}function R3(b,c){b=b|0;c=c|0;var d=0;d=b+(L3(b,c)|0)|0;return ((a[d>>0]|0)!=0?d:0)|0}function S3(a,b){a=a|0;b=b|0;return C3(a,b,(N3(a)|0)+1|0)|0}function T3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;f=e;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;g=a[d>>0]|0;do if(!(g<<24>>24))h=0;else{if(!(a[d+1>>0]|0)){j=b;while(1)if((a[j>>0]|0)==g<<24>>24)j=j+1|0;else{k=j;break}h=k-b|0;break}else{l=d;m=g}do{j=f+(((m&255)>>>5&255)<<2)|0;c[j>>2]=c[j>>2]|1<<(m&31);l=l+1|0;m=a[l>>0]|0}while(m<<24>>24!=0);j=a[b>>0]|0;a:do if(!(j<<24>>24))n=b;else{o=b;p=j;while(1){if(!(c[f+(((p&255)>>>5&255)<<2)>>2]&1<<(p&31))){n=o;break a}q=o+1|0;p=a[q>>0]|0;if(!(p<<24>>24)){n=q;break}else o=q}}while(0);h=n-b|0}while(0);i=e;return h|0}function U3(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;f=i;i=i+1056|0;g=f+1024|0;h=f;j=a[e>>0]|0;do if(j<<24>>24){k=H3(b,j<<24>>24)|0;if(k){l=a[e+1>>0]|0;if(l<<24>>24){m=k+1|0;n=a[m>>0]|0;if(n<<24>>24){o=a[e+2>>0]|0;if(!(o<<24>>24)){p=l&255|(j&255)<<8;q=m;m=n;r=d[k>>0]<<8|n&255;while(1){s=r&65535;if((s|0)==(p|0)){t=q;u=m;break}v=q+1|0;w=a[v>>0]|0;if(!(w<<24>>24)){t=v;u=0;break}else{q=v;m=w;r=w&255|s<<8}}x=u<<24>>24!=0?t+-1|0:0;break}r=k+2|0;m=a[r>>0]|0;if(m<<24>>24){q=a[e+3>>0]|0;if(!(q<<24>>24)){p=(l&255)<<16|(j&255)<<24|(o&255)<<8;s=(m&255)<<8|(n&255)<<16|d[k>>0]<<24;if((s|0)==(p|0)){y=r;z=m}else{w=r;r=s;while(1){s=w+1|0;v=a[s>>0]|0;r=(v&255|r)<<8;if(v<<24>>24==0|(r|0)==(p|0)){y=s;z=v;break}else w=s}}x=z<<24>>24!=0?y+-2|0:0;break}w=k+3|0;p=a[w>>0]|0;if(p<<24>>24){if(!(a[e+4>>0]|0)){r=(l&255)<<16|(j&255)<<24|(o&255)<<8|q&255;s=(m&255)<<8|(n&255)<<16|p&255|d[k>>0]<<24;if((s|0)==(r|0)){A=w;B=p}else{p=w;w=s;while(1){s=p+1|0;v=a[s>>0]|0;w=v&255|w<<8;if(v<<24>>24==0|(w|0)==(r|0)){A=s;B=v;break}else p=s}}x=B<<24>>24!=0?A+-3|0:0;break};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;p=j;r=0;while(1){if(!(a[k+r>>0]|0)){C=0;break}w=g+(((p&255)>>>5&255)<<2)|0;c[w>>2]=c[w>>2]|1<<(p&31);w=r+1|0;c[h+((p&255)<<2)>>2]=w;p=a[e+w>>0]|0;if(!(p<<24>>24)){D=w;E=r;F=23;break}else r=w}a:do if((F|0)==23){b:do if(D>>>0>1){r=1;p=-1;w=0;c:while(1){n=r;m=w;q=1;while(1){o=n;l=m;d:while(1){s=o;v=1;while(1){G=a[e+(v+p)>>0]|0;H=a[e+s>>0]|0;if(G<<24>>24!=H<<24>>24){I=s;J=G;K=H;L=l;break d}if((v|0)==(q|0))break;v=v+1|0;s=v+l|0;if(s>>>0>=D>>>0){M=p;N=q;break c}}l=l+q|0;o=l+1|0;if(o>>>0>=D>>>0){M=p;N=q;break c}}o=I-p|0;if((J&255)<=(K&255)){O=L;break}l=I+1|0;if(l>>>0>>0){n=l;m=I;q=o}else{M=p;N=o;break c}}r=O+2|0;if(r>>>0>=D>>>0){M=O;N=1;break}else{p=O;w=O+1|0}}w=1;p=-1;r=0;while(1){q=w;m=r;n=1;while(1){o=q;l=m;e:while(1){s=o;v=1;while(1){H=a[e+(v+p)>>0]|0;G=a[e+s>>0]|0;if(H<<24>>24!=G<<24>>24){P=s;Q=H;R=G;S=l;break e}if((v|0)==(n|0))break;v=v+1|0;s=v+l|0;if(s>>>0>=D>>>0){T=M;U=p;V=N;W=n;break b}}l=l+n|0;o=l+1|0;if(o>>>0>=D>>>0){T=M;U=p;V=N;W=n;break b}}o=P-p|0;if((Q&255)>=(R&255)){X=S;break}l=P+1|0;if(l>>>0>>0){q=l;m=P;n=o}else{T=M;U=p;V=N;W=o;break b}}w=X+2|0;if(w>>>0>=D>>>0){T=M;U=X;V=N;W=1;break}else{p=X;r=X+1|0}}}else{T=-1;U=-1;V=1;W=1}while(0);r=(U+1|0)>>>0>(T+1|0)>>>0;p=r?W:V;w=r?U:T;r=w+1|0;if(!(B3(e,e+p|0,r)|0)){Y=D-p|0;Z=p}else{p=D-w+-1|0;Y=0;Z=(w>>>0>p>>>0?w:p)+1|0}p=D|63;n=(Y|0)!=0;m=D-Z|0;q=k;o=0;l=k;f:while(1){s=q;do if((l-s|0)>>>0>>0){v=A3(l,0,p)|0;if(v)if((v-s|0)>>>0>>0){C=0;break a}else{_=v;break}else{_=l+p|0;break}}else _=l;while(0);s=a[q+E>>0]|0;if(!(1<<(s&31)&c[g+(((s&255)>>>5&255)<<2)>>2])){q=q+D|0;o=0;l=_;continue}v=c[h+((s&255)<<2)>>2]|0;s=D-v|0;if((D|0)!=(v|0)){q=q+(n&(o|0)!=0&s>>>0>>0?m:s)|0;o=0;l=_;continue}s=r>>>0>o>>>0?r:o;v=a[e+s>>0]|0;g:do if(!(v<<24>>24))$=r;else{G=v;H=s;while(1){if(G<<24>>24!=(a[q+H>>0]|0)){aa=H;break}H=H+1|0;G=a[e+H>>0]|0;if(!(G<<24>>24)){$=r;break g}}q=q+(aa-w)|0;o=0;l=_;continue f}while(0);do{if($>>>0<=o>>>0){C=q;break a}$=$+-1|0}while((a[e+$>>0]|0)==(a[q+$>>0]|0));q=q+Z|0;o=Y;l=_}}while(0);x=C}else x=0}else x=0}else x=0}else x=k}else x=0}else x=b;while(0);i=f;return x|0}function V3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;if(!b){e=c[24877]|0;if(!e)f=0;else{g=e;h=3}}else{g=b;h=3}do if((h|0)==3){b=g+(T3(g,d)|0)|0;if(!(a[b>>0]|0)){c[24877]=0;f=0;break}e=b+(L3(b,d)|0)|0;c[24877]=e;if(!(a[e>>0]|0)){c[24877]=0;f=b;break}else{c[24877]=e+1;a[e>>0]=0;f=b;break}}while(0);return f|0}function W3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!b){f=c[e>>2]|0;if(!f)g=0;else{h=f;i=3}}else{h=b;i=3}do if((i|0)==3){b=h+(T3(h,d)|0)|0;if(!(a[b>>0]|0)){c[e>>2]=0;g=0;break}f=b+(L3(b,d)|0)|0;c[e>>2]=f;if(!(a[f>>0]|0)){c[e>>2]=0;g=b;break}else{c[e>>2]=f+1;a[f>>0]=0;g=b;break}}while(0);return g|0}function X3(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=a+((Y3(a)|0)<<2)|0;else{e=a;while(1){a=c[e>>2]|0;if((a|0)==0|(a|0)==(b|0)){f=e;g=a;break}else e=e+4|0}d=(g|0)!=0?f:0}return d|0}function Y3(a){a=a|0;var b=0,d=0;b=a;while(1)if(!(c[b>>2]|0)){d=b;break}else b=b+4|0;return d-a>>2|0}function Z3(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=S1(gb(33,e|0)|0)|0;i=d;return b|0}function _3(){var a=0,b=0;a=i;i=i+16|0;b=Ka(20,a|0)|0;i=a;return b|0}function $3(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=(f<<1)+-1|0;h=f+-1|0;a:do if(!((c+-43008|0)>>>0<22272|((c+-11776|0)>>>0<30784|((c+-1536|0)>>>0<2560|(u1(c)|0)==0)))){i=(f|0)!=0;if(i&(c+-4256|0)>>>0<46){if((c|0)>4293)switch(c|0){case 4295:case 4301:break;default:{j=c;break a}}j=c+7264|0;break}if((c+-11520|0)>>>0<38&(i^1)){if((c|0)>11557)switch(c|0){case 11559:case 11565:break;default:{j=c;break a}}j=c+-7264|0;break}else k=0;do{i=a[104528+(k<<2)+2>>0]|0;l=i<<24>>24;m=c-(e[104528+(k<<2)>>1]|0)|0;if((m-(l&h)|0)>>>0<(d[104528+(k<<2)+3>>0]|0)>>>0){n=i;o=l;p=m;q=13;break}k=k+1|0}while((k|0)!=61);if((q|0)==13)if(n<<24>>24==1){j=f+c-(p&1)|0;break}else{j=(_(o,g)|0)+c|0;break}m=1-f|0;l=b[104036+(m<<1)>>1]|0;b:do if(l<<16>>16){i=l;r=0;while(1){if((i&65535|0)==(c|0)){s=r;break}r=r+1|0;i=b[104036+(r<<2)+(m<<1)>>1]|0;if(!(i<<16>>16))break b}j=e[104036+(s<<2)+(f<<1)>>1]|0;break a}while(0);if((c+-66600+(f*40|0)|0)>>>0<40)j=c+-40+(f*80|0)|0;else j=c}else j=c;while(0);return j|0}function a4(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=a+4|0;f=c[e>>2]|0;g=a+100|0;if(f>>>0<(c[g>>2]|0)>>>0){c[e>>2]=f+1;h=d[f>>0]|0}else h=R1(a)|0;switch(h|0){case 43:case 45:{f=(h|0)==45&1;i=c[e>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[e>>2]=i+1;j=d[i>>0]|0}else j=R1(a)|0;if((b|0)!=0&(j+-48|0)>>>0>9?(c[g>>2]|0)!=0:0){c[e>>2]=(c[e>>2]|0)+-1;k=j;l=f}else{k=j;l=f}break}default:{k=h;l=0}}if((k+-48|0)>>>0>9)if(!(c[g>>2]|0)){m=-2147483648;n=0}else{c[e>>2]=(c[e>>2]|0)+-1;m=-2147483648;n=0}else{h=k;k=0;while(1){f=h+-48+(k*10|0)|0;j=c[e>>2]|0;if(j>>>0<(c[g>>2]|0)>>>0){c[e>>2]=j+1;o=d[j>>0]|0}else o=R1(a)|0;if((o+-48|0)>>>0<10&(f|0)<214748364){h=o;k=f}else{p=f;q=o;break}}o=((p|0)<0)<<31>>31;if((q+-48|0)>>>0<10){k=p;h=o;f=q;while(1){j=g5(k|0,h|0,10,0)|0;b=C;i=V4(f|0,((f|0)<0)<<31>>31|0,-48,-1)|0;r=V4(i|0,C|0,j|0,b|0)|0;b=C;j=c[e>>2]|0;if(j>>>0<(c[g>>2]|0)>>>0){c[e>>2]=j+1;s=d[j>>0]|0}else s=R1(a)|0;if((s+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&r>>>0<2061584302)){k=r;h=b;f=s}else{t=r;u=b;v=s;break}}}else{t=p;u=o;v=q}if((v+-48|0)>>>0<10)do{v=c[e>>2]|0;if(v>>>0<(c[g>>2]|0)>>>0){c[e>>2]=v+1;w=d[v>>0]|0}else w=R1(a)|0}while((w+-48|0)>>>0<10);if(c[g>>2]|0)c[e>>2]=(c[e>>2]|0)+-1;e=(l|0)!=0;l=U4(0,0,t|0,u|0)|0;m=e?C:u;n=e?l:t}C=m;return n|0}function b4(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0;d=i;i=i+384|0;e=d+276|0;f=d+272|0;g=d+268|0;h=d+320|0;j=d+264|0;k=d+8|0;l=d;m=c[b+4>>2]|0;n=m+12|0;o=c[n>>2]|0;if(!(c[b+40>>2]|0)){p=b+20|0;c[f>>2]=c[p>>2];c[e>>2]=c[f>>2];d4(m,e)|0;c[f>>2]=2;c[e>>2]=c[f>>2];d4(m,e)|0;c[p>>2]=(c[p>>2]|0)+1}c[f>>2]=0;c[e>>2]=c[f>>2];p=d4(m,e)|0;q=b+12|0;r=b+16|0;c[r>>2]=c[q>>2];s=c[n>>2]|0;t=(p|0)==0;a:do if(!((p|0)!=0|t&(s|0)>(o|0)^1)){u=m+16|0;v=b+36|0;w=b+24|0;x=b+20|0;y=b+28|0;z=e+1|0;A=e+12|0;B=e+40|0;C=e+24|0;D=e+8|0;E=s;F=0;G=0;b:while(1){H=E+-1|0;c[n>>2]=H;I=c[u>>2]|0;c:do switch(c[I+(H<<2)>>2]|0){case 0:{if((c[v>>2]&1|0)!=0?(c[f>>2]=7,c[e>>2]=c[f>>2],J=d4(m,e)|0,(J|0)!=0):0){K=F;L=G;M=J;break c}c[f>>2]=3;c[e>>2]=c[f>>2];K=F;L=G;M=d4(m,e)|0;break}case 3:{c[f>>2]=5;c[e>>2]=c[f>>2];J=d4(m,e)|0;if(!J){c[f>>2]=4;c[e>>2]=c[f>>2];K=F;L=G;M=d4(m,e)|0}else{K=F;L=G;M=J}break}case 4:{c[f>>2]=9;c[e>>2]=c[f>>2];J=d4(m,e)|0;if(!J){c[f>>2]=1;c[e>>2]=c[f>>2];K=F;L=G;M=d4(m,e)|0}else{K=F;L=G;M=J}break}case 5:{J=c[q>>2]|0;N=a[J>>0]|0;if(N<<24>>24!=0?(O=c[v>>2]&1,P=(O|0)!=0,!(N<<24>>24==124&P)):0){do if(!((F|0)>0&(N<<24>>24==41&P))){if(N<<24>>24==92&(O|0)==0?(a[J+1>>0]|0)==41:0)break;c[f>>2]=5;c[e>>2]=c[f>>2];Q=d4(m,e)|0;if(Q){K=F;L=G;M=Q;break c}c[f>>2]=G;c[e>>2]=c[f>>2];Q=d4(m,e)|0;if(Q){K=F;L=G;M=Q;break c}c[f>>2]=6;c[e>>2]=c[f>>2];Q=d4(m,e)|0;if(Q){K=F;L=G;M=Q;break c}c[f>>2]=4;c[e>>2]=c[f>>2];K=F;L=G;M=d4(m,e)|0;break c}while(0);N=(O|F|0)==0?8:0;P=F+-1|0;if(!O){c[q>>2]=J+2;K=P;L=G;M=N}else{K=P;L=G;M=N}}else{K=F;L=G;M=0}break}case 6:{N=E+-2|0;c[n>>2]=N;P=f4(c[b>>2]|0,c[I+(N<<2)>>2]|0,G)|0;if(!P){R=12;break a}K=F;L=P;M=0;break}case 7:{P=c[q>>2]|0;switch(a[P>>0]|0){case 124:break;case 41:{c[q>>2]=P+1;K=F;L=G;M=0;break c;break}default:{K=F;L=G;M=0;break c}}c[f>>2]=7;c[e>>2]=c[f>>2];P=d4(m,e)|0;if(!P){c[f>>2]=G;c[e>>2]=c[f>>2];N=d4(m,e)|0;if(!N){c[f>>2]=8;c[e>>2]=c[f>>2];Q=d4(m,e)|0;if(!Q){c[f>>2]=3;c[e>>2]=c[f>>2];S=d4(m,e)|0;if(!S){c[q>>2]=(c[q>>2]|0)+1;K=F;L=G;M=0}else{K=F;L=G;M=S}}else{K=F;L=G;M=Q}}else{K=F;L=G;M=N}}else{K=F;L=G;M=P}break}case 8:{P=E+-2|0;c[n>>2]=P;N=i4(c[b>>2]|0,c[I+(P<<2)>>2]|0,G)|0;if(!N){R=12;break a}K=F;L=N;M=0;break}case 9:{N=c[q>>2]|0;P=a[N>>0]|0;switch(P<<24>>24|0){case 63:case 43:{if(!(c[v>>2]&1)){K=F;L=G;M=0;break c}else T=38;break}case 42:{T=38;break}case 92:{Q=c[v>>2]|0;if(Q&1){K=F;L=G;M=0;break c}S=N+1|0;if((a[S>>0]|0)!=123){K=F;L=G;M=0;break c}c[q>>2]=S;U=S;V=Q;break}case 123:{Q=c[v>>2]|0;if(!(Q&1)){K=F;L=G;M=0;break c}else{U=N;V=Q}break}default:{K=F;L=G;M=0;break c}}if((T|0)==38){T=0;c[q>>2]=N+1;N=g4(c[b>>2]|0,G,P<<24>>24==43&1,P<<24>>24==63?1:-1,0)|0;if(!N){R=12;break a}c[f>>2]=9;c[e>>2]=c[f>>2];K=F;L=N;M=d4(m,e)|0;break c}N=U+1|0;c[q>>2]=N;P=a[N>>0]|0;if((P+-48&255)<10){Q=P<<24>>24;if((Q+-48|0)>>>0<10){W=Q;X=-1;Y=N}else{R=10;break a}while(1){Q=W+-48+(((X|0)<0?0:X)*10|0)|0;S=Y+1|0;Z=a[S>>0]|0;W=Z<<24>>24;if((W+-48|0)>>>0>=10){_=Z;$=Q;aa=S;break}else{X=Q;Y=S}}}else{_=P;$=-1;aa=N}if(_<<24>>24==44){J=aa+1|0;O=a[J>>0]|0;S=O<<24>>24;if((S+-48|0)>>>0<10){Q=S;S=-1;Z=J;while(1){ba=Q+-48+(((S|0)<0?0:S)*10|0)|0;ca=Z+1|0;da=a[ca>>0]|0;Q=da<<24>>24;if((Q+-48|0)>>>0>=10){ea=da;fa=ba;ga=ca;T=50;break}else{S=ba;Z=ca}}}else{ha=O;ia=-1;ja=J}}else{ea=_;fa=$;ga=aa;T=50}if((T|0)==50){T=0;if((fa|0)>-1?($|0)>(fa|0)|(fa|0)>255:0){R=10;break a}else{ha=ea;ia=fa;ja=ga}}if(!(ha<<24>>24)){R=9;break a}if((ja|0)==(N|0)){R=10;break a}if(!(V&1)){if(ha<<24>>24!=92){R=10;break a}if((a[ja+1>>0]|0)!=125){R=10;break a}ka=ja+2|0}else{if(ha<<24>>24!=125){R=10;break a}ka=ja+1|0}Z=ka;if(ia|$){S=(ia&$|0)<0;Q=g4(c[b>>2]|0,G,S?1:$,S?1:ia,0)|0;if(!Q){R=12;break a}else la=Q}else{Q=h4(c[b>>2]|0,0,20)|0;if(!Q){R=12;break a}S=c[Q+4>>2]|0;c[S>>2]=-1;c[S+4>>2]=-1;c[S+8>>2]=-1;la=Q}c[q>>2]=Z;c[f>>2]=9;c[e>>2]=c[f>>2];K=F;L=la;M=d4(m,e)|0;break}case 1:{Z=c[q>>2]|0;d:do switch(a[Z>>0]|0){case 40:{if(!(c[v>>2]&1))ma=Z;else{na=Z;T=67}break}case 91:{Q=Z+1|0;c[q>>2]=Q;S=N4(128)|0;c[j>>2]=S;if(!S){T=72;break b}if((a[Q>>0]|0)==94){S=Z+2|0;c[q>>2]=S;oa=S;pa=1}else{oa=Q;pa=0}c[e>>2]=0;c[f>>2]=32;Q=0;S=oa;P=0;e:while(1){switch(a[S>>0]|0){case 0:{qa=Q;ra=S;sa=7;break e;break}case 93:{if(S>>>0>(c[q>>2]|0)>>>0){ta=Q;ua=S;va=P;T=78;break e}break}default:{}}ca=n2(g,S,-1)|0;if((ca|0)<0){c[g>>2]=-1;wa=1}else wa=ca;ca=S+wa|0;if((a[ca>>0]|0)==45?(a[ca+1>>0]|0)!=93:0){ba=c[g>>2]|0;da=S+(wa+1)|0;xa=n2(g,da,-1)|0;if((xa|0)<0){c[g>>2]=-1;ya=-1;za=1}else{ya=c[g>>2]|0;za=xa}xa=da+za|0;if(ba>>>0>ya>>>0){Aa=3;Ba=Q;Ca=xa;Da=11}else{Ea=0;Fa=ya;Ga=ba;Ha=xa;Ia=P;T=97}}else T=87;f:do if((T|0)==87){T=0;g:do switch(a[S>>0]|0){case 91:{switch(a[S+1>>0]|0){case 61:case 46:{Aa=3;Ba=Q;Ca=S;Da=3;break f;break}case 58:break;default:{Ja=P;break g}}xa=S+2|0;ba=xa;while(1){da=a[ba>>0]|0;Ka=da<<24>>24==0;if(da<<24>>24!=58&(Ka^1))ba=ba+1|0;else break}if(Ka){La=0;Ma=S;Na=4}else{da=ba-S+-2|0;Oa=(da|0)>63?63:da;Q3(h,xa,Oa)|0;a[h+Oa>>0]=0;Oa=y1(h)|0;La=Oa;Ma=ba+2|0;Na=(Oa|0)==0?4:P}Ea=La;Fa=1114111;Ga=0;Ha=Ma;Ia=Na;T=97;break f;break}case 45:{if((a[S+1>>0]|0)==93)Ja=P;else Ja=(c[q>>2]|0)==(S|0)?P:11;break}default:Ja=P}while(0);Oa=c[g>>2]|0;Ea=0;Fa=Oa;Ga=Oa;Ha=ca;Ia=Ja;T=97}while(0);h:do if((T|0)==97){T=0;if(!Ia){if(pa&(Ea|0)!=0)if((Q|0)>63){Pa=Q;Qa=12}else{c[k+(Q<<2)>>2]=Ea;Pa=Q+1|0;Qa=0}else{ca=L4(c[b>>2]|0,Ga,Fa,e,f,j)|0;if(ca){Aa=3;Ba=Q;Ca=Ha;Da=ca;break}c[(c[(c[(c[j>>2]|0)+((c[e>>2]|0)+-1<<2)>>2]|0)+4>>2]|0)+12>>2]=Ea;Pa=Q;Qa=0}if(!((Qa|Ea|0)!=0|(c[v>>2]&2|0)==0)){ca=Ga;Oa=Qa;while(1){if(ca>>>0>Fa>>>0){Ra=Oa;break}do if(!(B1(ca)|0)){da=ca+1|0;if(!(F1(ca)|0)){Sa=da;Ta=Oa;break}Ua=K1(ca)|0;i:do if(!(F1(da)|0)){Va=Ua;Wa=da}else{Xa=Ua;Ya=da;while(1){if(Ya>>>0>Fa>>>0|(K1(Ya)|0)!=(Xa+1|0)){Va=Xa;Wa=Ya;break i}Za=Ya+1|0;_a=K1(Ya)|0;if(!(F1(Za)|0)){Va=_a;Wa=Za;break}else{Xa=_a;Ya=Za}}}while(0);Sa=Wa;Ta=L4(c[b>>2]|0,Ua,Va,e,f,j)|0}else{da=J1(ca)|0;Ya=ca+1|0;j:do if(!(B1(Ya)|0)){$a=da;ab=Ya}else{Xa=da;Za=Ya;while(1){if(Za>>>0>Fa>>>0|(J1(Za)|0)!=(Xa+1|0)){$a=Xa;ab=Za;break j}_a=J1(Za)|0;bb=Za+1|0;if(!(B1(bb)|0)){$a=_a;ab=bb;break}else{Xa=_a;Za=bb}}}while(0);Sa=ab;Ta=L4(c[b>>2]|0,da,$a,e,f,j)|0}while(0);if(!Ta){ca=Sa;Oa=0}else{Aa=3;Ba=Pa;Ca=Ha;Da=Ta;break h}}if(!Ra)cb=0;else{Aa=3;Ba=Pa;Ca=Ha;Da=Ra;break}}else cb=Qa;Aa=0;Ba=Pa;Ca=Ha;Da=cb}else{Aa=3;Ba=Q;Ca=Ha;Da=Ia}}while(0);if(!(Aa|Da)){Q=Ba;S=Ca;P=Da}else{qa=Ba;ra=Ca;sa=Da;break}}if((T|0)==78){T=0;qa=ta;ra=ua+1|0;sa=va}P=c[e>>2]|0;c[q>>2]=ra;k:do if(!sa){if(pa)w3(c[j>>2]|0,P,4,111);if((P|0)>0){S=(qa|0)>0;Q=qa<<2;Oa=Q+4|0;ca=c[j>>2]|0;ba=0;xa=0;Ya=0;Ua=0;while(1){Za=c[(c[ca+(Ya<<2)>>2]|0)+4>>2]|0;Xa=c[Za>>2]|0;bb=Za+4|0;_a=c[bb>>2]|0;do if(pa){if((Xa|0)<(ba|0)){db=_a+1|0;eb=ca;fb=(db|0)>=(ba|0)?db:ba;gb=xa;hb=Ua;ib=0;break}if((Xa|0)>(xa|0)){c[Za>>2]=xa;c[bb>>2]=Xa+-1;jb=Za}else jb=0;db=_a+1|0;kb=db;lb=db;mb=jb;T=130}else{kb=ba;lb=xa;mb=Za;T=130}while(0);do if((T|0)==130){T=0;if(mb){c[mb+8>>2]=c[w>>2];if(S){Za=B2(c[b>>2]|0,0,0,0,Oa)|0;_a=mb+16|0;c[_a>>2]=Za;if(!Za){nb=Ua;ob=12;break k}Z4(Za|0,k|0,Q|0)|0;c[(c[_a>>2]|0)+(qa<<2)>>2]=0}else c[mb+16>>2]=0;if(!Ua){_a=c[j>>2]|0;eb=_a;fb=kb;gb=lb;hb=c[_a+(Ya<<2)>>2]|0;ib=0;break}else{_a=c[j>>2]|0;Za=i4(c[b>>2]|0,Ua,c[_a+(Ya<<2)>>2]|0)|0;eb=_a;fb=kb;gb=lb;hb=Za;ib=(Za|0)==0?12:0;break}}else{eb=ca;fb=kb;gb=lb;hb=Ua;ib=0}}while(0);Ya=Ya+1|0;if(!((Ya|0)<(P|0)&(ib|0)==0)){pb=gb;qb=hb;rb=ib;break}else{ca=eb;ba=fb;xa=gb;Ua=hb}}}else{pb=0;qb=0;rb=0}if(pa&(rb|0)==0){Ua=c[w>>2]|0;xa=h4(c[b>>2]|0,0,20)|0;if(xa){ba=c[xa+4>>2]|0;c[ba>>2]=pb;c[ba+4>>2]=1114111;c[ba+8>>2]=Ua;if((qa|0)>0){Ua=qa<<2;ca=B2(c[b>>2]|0,0,0,0,Ua+4|0)|0;Ya=ba+16|0;c[Ya>>2]=ca;if(!ca){nb=qb;ob=12;break}Z4(ca|0,k|0,Ua|0)|0;c[(c[Ya>>2]|0)+(qa<<2)>>2]=0}else c[ba+16>>2]=0;if(!qb){nb=xa;ob=0}else{ba=i4(c[b>>2]|0,qb,xa)|0;nb=ba;ob=(ba|0)==0?12:0}}else{nb=qb;ob=12}}else{nb=qb;ob=rb}}else{nb=0;ob=sa}while(0);O4(c[j>>2]|0);c[w>>2]=(c[w>>2]|0)+1;if(!ob){K=F;L=nb;M=0;break c}else{R=ob;break a}break}case 92:{P=Z+1|0;ba=a[P>>0]|0;do if(!(c[v>>2]&1))if(ba<<24>>24!=40){xa=Z+1|0;Ya=a[xa>>0]|0;if(Ya<<24>>24==41){T=212;break d}else{sb=xa;tb=Ya;break}}else{c[q>>2]=P;na=P;T=67;break d}else{sb=P;tb=ba}while(0);ba=tb<<24>>24==0;if(ba){R=5;break a}else{ub=99852;vb=0}while(1){if((a[99848+(vb<<3)>>0]|0)==tb<<24>>24){wb=ub;break}vb=vb+1|0;P=99848+(vb<<3)+4|0;if((vb|0)==12){wb=P;break}else ub=P}P=c[wb>>2]|0;if(P){Ya=e;xa=b;Ua=Ya+40|0;do{c[Ya>>2]=c[xa>>2];Ya=Ya+4|0;xa=xa+4|0}while((Ya|0)<(Ua|0));c[A>>2]=P;c[B>>2]=1;xa=b4(e)|0;if(xa){xb=xa;T=157;break b}c[q>>2]=(c[q>>2]|0)+2;c[w>>2]=c[C>>2];K=F;L=c[D>>2]|0;M=0;break c}if(ba){R=5;break a}c[q>>2]=sb;xa=a[sb>>0]|0;l:do switch(xa|0){case 98:{Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya)yb=0;else{Ua=c[Ya+4>>2]|0;c[Ua>>2]=-2;c[Ua+4>>2]=64;c[Ua+8>>2]=-1;yb=Ya}c[q>>2]=(c[q>>2]|0)+1;zb=yb;break}case 66:{Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya)Ab=0;else{Ua=c[Ya+4>>2]|0;c[Ua>>2]=-2;c[Ua+4>>2]=128;c[Ua+8>>2]=-1;Ab=Ya}c[q>>2]=(c[q>>2]|0)+1;zb=Ab;break}case 60:{Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya)Bb=0;else{Ua=c[Ya+4>>2]|0;c[Ua>>2]=-2;c[Ua+4>>2]=16;c[Ua+8>>2]=-1;Bb=Ya}c[q>>2]=(c[q>>2]|0)+1;zb=Bb;break}case 62:{Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya)Cb=0;else{Ua=c[Ya+4>>2]|0;c[Ua>>2]=-2;c[Ua+4>>2]=32;c[Ua+8>>2]=-1;Cb=Ya}c[q>>2]=(c[q>>2]|0)+1;zb=Cb;break}case 120:{Ya=Z+2|0;c[q>>2]=Ya;Ua=a[Ya>>0]|0;if(Ua<<24>>24==123){ca=Z+3|0;c[q>>2]=ca;Q=ca;ca=Ya;Ya=0;m:while(1){Oa=a[Q>>0]|0;switch(Oa<<24>>24){case 0:case 125:{Db=ca;Eb=Ya;break m;break}default:{}}if(!(G1(Oa<<24>>24)|0)){T=188;break b}Oa=c[q>>2]|0;a[e+Ya>>0]=a[Oa>>0]|0;S=Ya+1|0;Q=Oa+1|0;c[q>>2]=Q;if(S>>>0>31){Db=Oa;Eb=S;break}else{ca=Oa;Ya=S}}c[q>>2]=Db+2;a[e+Eb>>0]=0;Ya=z3(e,0,16)|0;ca=c[w>>2]|0;Q=h4(c[b>>2]|0,0,20)|0;if(!Q)Fb=0;else{S=c[Q+4>>2]|0;c[S>>2]=Ya;c[S+4>>2]=Ya;c[S+8>>2]=ca;Fb=Q}c[w>>2]=(c[w>>2]|0)+1;zb=Fb;break l}else{a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;Q=(G1(Ua<<24>>24)|0)==0;ca=c[q>>2]|0;if(Q)Gb=ca;else{a[e>>0]=a[ca>>0]|0;Q=ca+1|0;c[q>>2]=Q;Gb=Q}if(G1(a[Gb>>0]|0)|0){Q=c[q>>2]|0;a[z>>0]=a[Q>>0]|0;c[q>>2]=Q+1}Q=z3(e,0,16)|0;ca=c[w>>2]|0;S=h4(c[b>>2]|0,0,20)|0;if(!S)Hb=0;else{Ya=c[S+4>>2]|0;c[Ya>>2]=Q;c[Ya+4>>2]=Q;c[Ya+8>>2]=ca;Hb=S}c[w>>2]=(c[w>>2]|0)+1;zb=Hb;break l}break}default:{S=(z1(xa)|0)==0;ca=c[q>>2]|0;if(S){ma=ca;break d}S=(a[ca>>0]|0)+-48|0;ca=c[w>>2]|0;Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya){R=12;break a}Q=c[Ya+4>>2]|0;c[Q>>2]=-4;c[Q+4>>2]=S;c[Q+8>>2]=ca;c[w>>2]=(c[w>>2]|0)+1;ca=c[y>>2]|0;c[y>>2]=(S|0)<(ca|0)?ca:S;c[q>>2]=(c[q>>2]|0)+1;K=F;L=Ya;M=0;break c}}while(0);if(!zb){R=12;break a}else{K=F;L=zb;M=0;break c}break}case 46:{xa=(c[v>>2]&4|0)==0;ba=c[w>>2]|0;P=h4(c[b>>2]|0,0,20)|0;Ya=(P|0)==0;if(xa){if(Ya){R=12;break a}xa=c[P+4>>2]|0;c[xa>>2]=0;c[xa+4>>2]=1114111;c[xa+8>>2]=ba;Ib=P;Jb=(c[w>>2]|0)+1|0}else{if(Ya){R=12;break a}Ya=c[P+4>>2]|0;c[Ya>>2]=0;c[Ya+4>>2]=9;c[Ya+8>>2]=ba;ba=c[w>>2]|0;Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya){R=12;break a}xa=c[Ya+4>>2]|0;c[xa>>2]=11;c[xa+4>>2]=1114111;c[xa+8>>2]=ba+1;ba=i4(c[b>>2]|0,P,Ya)|0;if(!ba){R=12;break a}Ib=ba;Jb=(c[w>>2]|0)+2|0}c[w>>2]=Jb;c[q>>2]=(c[q>>2]|0)+1;K=F;L=Ib;M=0;break c;break}case 94:{if(!(c[v>>2]&1)){if((Z|0)!=(c[r>>2]|0)){ma=Z;break d}c[f>>2]=5;c[e>>2]=c[f>>2];ba=d4(m,e)|0;if(ba){K=F;L=G;M=ba;break c}}ba=h4(c[b>>2]|0,0,20)|0;if(!ba){R=12;break a}Ya=c[ba+4>>2]|0;c[Ya>>2]=-2;c[Ya+4>>2]=1;c[Ya+8>>2]=-1;c[q>>2]=(c[q>>2]|0)+1;K=F;L=ba;M=0;break c;break}case 36:{if((c[v>>2]&1|0)==0?(a[Z+1>>0]|0)!=0:0){ma=Z;break d}ba=h4(c[b>>2]|0,0,20)|0;if(!ba){R=12;break a}Ya=c[ba+4>>2]|0;c[Ya>>2]=-2;c[Ya+4>>2]=2;c[Ya+8>>2]=-1;c[q>>2]=(c[q>>2]|0)+1;K=F;L=ba;M=0;break c;break}case 41:{if(!F)ma=Z;else T=211;break}case 63:case 43:case 123:case 124:case 42:{T=211;break}case 0:{T=212;break}default:ma=Z}while(0);if((T|0)==67){T=0;N=F+1|0;c[q>>2]=na+1;c[f>>2]=c[x>>2];c[e>>2]=c[f>>2];J=d4(m,e)|0;if(J){K=N;L=G;M=J;break c}c[f>>2]=2;c[e>>2]=c[f>>2];J=d4(m,e)|0;if(J){K=N;L=G;M=J;break c}c[f>>2]=0;c[e>>2]=c[f>>2];J=d4(m,e)|0;if(J){K=N;L=G;M=J;break c}c[x>>2]=(c[x>>2]|0)+1;K=N;L=G;M=0;break c}else if((T|0)==211){T=0;if(!(c[v>>2]&1))ma=Z;else T=212}if((T|0)==212){T=0;N=h4(c[b>>2]|0,0,20)|0;if(!N){R=12;break a}J=c[N+4>>2]|0;c[J>>2]=-1;c[J+4>>2]=-1;c[J+8>>2]=-1;K=F;L=N;M=0;break c}N=n2(l,ma,-1)|0;if((N|0)<0){c[l>>2]=-1;Kb=1}else Kb=N;do if(c[v>>2]&2){if((F1(c[l>>2]|0)|0)==0?(B1(c[l>>2]|0)|0)==0:0){T=222;break}N=c[b>>2]|0;J=J1(c[l>>2]|0)|0;O=J1(c[l>>2]|0)|0;ba=c[w>>2]|0;Ya=h4(N,0,20)|0;if(!Ya){R=12;break a}N=c[Ya+4>>2]|0;c[N>>2]=J;c[N+4>>2]=O;c[N+8>>2]=ba;ba=c[b>>2]|0;N=K1(c[l>>2]|0)|0;O=K1(c[l>>2]|0)|0;J=c[w>>2]|0;P=h4(ba,0,20)|0;if(!P){R=12;break a}ba=c[P+4>>2]|0;c[ba>>2]=N;c[ba+4>>2]=O;c[ba+8>>2]=J;J=i4(c[b>>2]|0,Ya,P)|0;if(!J){R=12;break a}else Lb=J}else T=222;while(0);if((T|0)==222){T=0;Z=c[l>>2]|0;J=c[w>>2]|0;P=h4(c[b>>2]|0,0,20)|0;if(!P){R=12;break a}Ya=c[P+4>>2]|0;c[Ya>>2]=Z;c[Ya+4>>2]=Z;c[Ya+8>>2]=J;Lb=P}c[w>>2]=(c[w>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+Kb;K=F;L=Lb;M=0;break}case 2:{P=E+-2|0;c[n>>2]=P;J=c[I+(P<<2)>>2]|0;P=G;if((c[P+12>>2]|0)>-1){Ya=h4(c[b>>2]|0,0,20)|0;if(!Ya){R=12;break a}Z=c[Ya+4>>2]|0;c[Z>>2]=-1;c[Z+4>>2]=-1;c[Z+8>>2]=-1;Z=f4(c[b>>2]|0,Ya,P)|0;if(!Z){R=12;break a}c[Z+16>>2]=c[P+16>>2];Mb=Z}else Mb=G;Z=Mb;c[Z+12>>2]=J;J=Z+16|0;c[J>>2]=(c[J>>2]|0)+1;K=F;L=Mb;M=0;break}case 10:{J=E+-2|0;c[n>>2]=J;c[v>>2]=c[I+(J<<2)>>2];K=F;L=G;M=0;break}default:{K=F;L=G;M=0}}while(0);E=c[n>>2]|0;I=(M|0)==0;if((M|0)!=0|I&(E|0)>(o|0)^1){Nb=I;Ob=K;Pb=L;Qb=M;T=231;break a}else{F=K;G=L}}if((T|0)==72){R=12;break}else if((T|0)==157){R=xb;break}else if((T|0)==188){R=9;break}}else{Nb=t;Ob=0;Pb=0;Qb=p;T=231}while(0);if((T|0)==231){T=(Ob|0)>0;if(T|Nb^1)R=T?8:Qb;else{c[b+8>>2]=Pb;R=Qb}}i=d;return R|0}function c4(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0;g=i;i=i+16|0;h=g+4|0;j=g;k=d+12|0;l=c[k>>2]|0;m=(b|0)==0|(f|0)==0;if(!m){c[f+48>>2]=0;c[c[f+36>>2]>>2]=-1}n=c[f+28>>2]|0;o=N4((n<<3)+8|0)|0;do if(!o)p=12;else{c[o>>2]=-1;q=N4((n<<2)+4|0)|0;if(!q){O4(o);p=12;break}c[q>>2]=-1;r=0;while(1)if(r>>>0>n>>>0)break;else r=r+1|0;c[j>>2]=e;c[h>>2]=c[j>>2];d4(d,h)|0;c[j>>2]=0;c[h>>2]=c[j>>2];r=d4(d,h)|0;s=c[k>>2]|0;a:do if((r|0)!=0|(s|0)<=(l|0)){t=-1;u=0;v=0;w=o;x=r;y=0}else{z=d+16|0;A=f+32|0;B=f+36|0;C=f+16|0;D=s;E=0;F=-1;G=1;H=0;I=0;J=o;K=0;while(1){L=D+-1|0;c[k>>2]=L;M=c[z>>2]|0;switch(c[M+(L<<2)>>2]|0){case 6:{L=D+-2|0;c[k>>2]=L;N=c[M+(L<<2)>>2]|0;L=0;while(1){O=J+(L<<2)|0;P=L+1|0;if((c[O>>2]|0)>-1)L=P;else{Q=O;R=P;break}}c[Q>>2]=N<<1|1;c[J+(R<<2)>>2]=-1;L=0;while(1)if((c[q+(L<<2)>>2]|0)>-1)L=L+1|0;else{S=L;break}c[q+(S+-1<<2)>>2]=-1;T=E;U=F;V=G;W=H;X=I;Y=J;Z=0;_=K;break}case 0:{L=D+-2|0;c[k>>2]=L;N=c[M+(L<<2)>>2]|0;L=N+12|0;P=c[L>>2]|0;if((P|0)>-1){O=0;while(1){$=J+(O<<2)|0;aa=O+1|0;if((c[$>>2]|0)>-1)O=aa;else{ba=$;ca=aa;break}}c[ba>>2]=P<<1;c[J+(ca<<2)>>2]=-1;if(!m){O=0;while(1)if((c[q+(O<<2)>>2]|0)>-1)O=O+1|0;else{da=O;break}O=(c[C>>2]|0)+(P*12|0)+8|0;c[O>>2]=0;if((da|0)>0){aa=N4((da<<2)+4|0)|0;if(!aa){t=F;u=H;v=I;w=J;x=12;y=K;break a}c[O>>2]=aa;O=c[q>>2]|0;if((O|0)>-1){$=O;O=aa;ea=0;while(1){c[O>>2]=$;ea=ea+1|0;$=c[q+(ea<<2)>>2]|0;fa=aa+(ea<<2)|0;if(($|0)<=-1){ga=fa;break}else O=fa}}else ga=aa;c[ga>>2]=-1}}c[j>>2]=c[L>>2];c[h>>2]=c[j>>2];O=d4(d,h)|0;if(O){t=F;u=H;v=I;w=J;x=O;y=K;break a}c[j>>2]=6;c[h>>2]=c[j>>2];O=d4(d,h)|0;if(O){t=F;u=H;v=I;w=J;x=O;y=K;break a}}b:do switch(c[N>>2]|0){case 0:{O=c[c[N+4>>2]>>2]|0;if((O|0)>-1|(O|0)==-4?(c[J>>2]|0)>-1:0){if(m){c[N+20>>2]=1;ha=F;ia=H;ja=0}else{O=I4(b,N,K)|0;c[(c[A>>2]|0)+(K<<2)>>2]=E;if((F|0)>-1){$=c[B>>2]|0;ea=0;while(1){P=$+(ea<<2)|0;fa=ea+1|0;if((c[P>>2]|0)>-1)ea=fa;else{ka=P;la=fa;ma=ea;break}}c[ka>>2]=K;c[$+(la<<2)>>2]=F;c[$+(ma+2<<2)>>2]=-1;na=-1;oa=H+1|0}else{na=F;oa=H}J4(J,f,K);ha=na;ia=oa;ja=O}c[J>>2]=-1;pa=E;qa=ha;ra=G+1|0;sa=ia;ta=I+1|0;ua=ja;va=G}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=0;va=K}break}case 1:{ea=c[N+4>>2]|0;fa=c[ea>>2]|0;P=c[ea+4>>2]|0;c[j>>2]=N;c[h>>2]=c[j>>2];ea=d4(d,h)|0;if(!ea){c[j>>2]=5;c[h>>2]=c[j>>2];wa=d4(d,h)|0;if(!wa){c[j>>2]=P;c[h>>2]=c[j>>2];xa=d4(d,h)|0;if(!xa){c[j>>2]=0;c[h>>2]=c[j>>2];ya=d4(d,h)|0;if(!ya){za=fa+20|0;c[j>>2]=(c[za>>2]|0)+G;c[h>>2]=c[j>>2];Aa=d4(d,h)|0;if(!Aa){if((c[za>>2]|0)>0){za=(c[P+20>>2]|0)>0;Ba=(za&1)+G|0;Ca=za?G:-1}else{Ba=G;Ca=-1}c[j>>2]=Ca;c[h>>2]=c[j>>2];za=d4(d,h)|0;if(!za){c[j>>2]=4;c[h>>2]=c[j>>2];P=d4(d,h)|0;if(!P){c[j>>2]=fa;c[h>>2]=c[j>>2];fa=d4(d,h)|0;if(!fa){c[j>>2]=0;c[h>>2]=c[j>>2];pa=E;qa=F;ra=Ba;sa=H;ta=I;ua=d4(d,h)|0;va=K}else{pa=E;qa=F;ra=Ba;sa=H;ta=I;ua=fa;va=K}}else{pa=E;qa=F;ra=Ba;sa=H;ta=I;ua=P;va=K}}else{pa=E;qa=F;ra=Ba;sa=H;ta=I;ua=za;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Aa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=ya;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=xa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=wa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=ea;va=K}break}case 2:{ea=c[N+4>>2]|0;if(m){if((c[J>>2]|0)>-1)Da=1;else Da=(a[ea+12>>0]&1)!=0;c[j>>2]=Da&1;c[h>>2]=c[j>>2];wa=d4(d,h)|0;if(wa){pa=E;qa=F;ra=G;sa=H;ta=I;ua=wa;va=K;break b}}else{c[j>>2]=K;c[h>>2]=c[j>>2];wa=d4(d,h)|0;if(wa){pa=E;qa=F;ra=G;sa=H;ta=I;ua=wa;va=K;break b}c[j>>2]=a[ea+12>>0]&1;c[h>>2]=c[j>>2];wa=d4(d,h)|0;if(wa){pa=E;qa=F;ra=G;sa=H;ta=I;ua=wa;va=K;break b}}c[j>>2]=N;c[h>>2]=c[j>>2];wa=d4(d,h)|0;if(!wa){c[j>>2]=1;c[h>>2]=c[j>>2];xa=d4(d,h)|0;if(!xa){c[j>>2]=c[ea>>2];c[h>>2]=c[j>>2];ya=d4(d,h)|0;if(!ya){c[j>>2]=0;c[h>>2]=c[j>>2];Aa=d4(d,h)|0;if(!Aa){if((c[J>>2]|0)<=-1?(a[ea+12>>0]&1)==0:0){pa=0;qa=F;ra=G;sa=H;ta=I;ua=0;va=K;break b}if(m){Ea=F;Fa=H;Ga=0}else{za=I4(b,N,K)|0;c[(c[A>>2]|0)+(K<<2)>>2]=(a[ea+12>>0]&1)==0?E:1;if((F|0)>-1){ea=c[B>>2]|0;P=0;while(1){fa=ea+(P<<2)|0;Ha=P+1|0;if((c[fa>>2]|0)>-1)P=Ha;else{Ia=fa;Ja=Ha;Ka=P;break}}c[Ia>>2]=K;c[ea+(Ja<<2)>>2]=F;c[ea+(Ka+2<<2)>>2]=-1;La=-1;Ma=H+1|0}else{La=F;Ma=H}J4(J,f,K);Ea=La;Fa=Ma;Ga=za}c[J>>2]=-1;pa=0;qa=Ea;ra=G+1|0;sa=Fa;ta=I+1|0;ua=Ga;va=G}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Aa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=ya;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=xa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=wa;va=K}break}case 3:{P=c[N+4>>2]|0;O=c[P>>2]|0;$=c[P+4>>2]|0;P=(c[J>>2]|0)>-1;Ha=G+1|0;c[j>>2]=P?Ha:G;c[h>>2]=c[j>>2];fa=d4(d,h)|0;if(!fa){c[j>>2]=P?G:K;c[h>>2]=c[j>>2];P=d4(d,h)|0;if(!P){c[j>>2]=J;c[h>>2]=c[j>>2];Na=d4(d,h)|0;if(!Na){c[j>>2]=(c[J>>2]|0)>>>31^1;c[h>>2]=c[j>>2];Oa=d4(d,h)|0;if(!Oa){c[j>>2]=N;c[h>>2]=c[j>>2];Pa=d4(d,h)|0;if(!Pa){c[j>>2]=$;c[h>>2]=c[j>>2];Qa=d4(d,h)|0;if(!Qa){c[j>>2]=O;c[h>>2]=c[j>>2];Ra=d4(d,h)|0;if(!Ra){c[j>>2]=3;c[h>>2]=c[j>>2];Sa=d4(d,h)|0;if(!Sa){c[j>>2]=$;c[h>>2]=c[j>>2];$=d4(d,h)|0;if(!$){c[j>>2]=0;c[h>>2]=c[j>>2];Ta=d4(d,h)|0;if(!Ta){c[j>>2]=2;c[h>>2]=c[j>>2];Ua=d4(d,h)|0;if(Ua){pa=E;qa=F;ra=G;sa=H;ta=I;ua=Ua;va=K;break b}c[j>>2]=O;c[h>>2]=c[j>>2];O=d4(d,h)|0;if(O){pa=E;qa=F;ra=G;sa=H;ta=I;ua=O;va=K;break b}c[j>>2]=0;c[h>>2]=c[j>>2];O=d4(d,h)|0;if(O){pa=E;qa=F;ra=G;sa=H;ta=I;ua=O;va=K;break b}if((c[J>>2]|0)>-1){if(m){Va=F;Wa=H;Xa=0}else{O=I4(b,N,K)|0;c[(c[A>>2]|0)+(K<<2)>>2]=E;if((F|0)>-1){Ua=c[B>>2]|0;Ya=0;while(1){Za=Ua+(Ya<<2)|0;_a=Ya+1|0;if((c[Za>>2]|0)>-1)Ya=_a;else{$a=Za;ab=_a;bb=Ya;break}}c[$a>>2]=K;c[Ua+(ab<<2)>>2]=F;c[Ua+(bb+2<<2)>>2]=-1;cb=-1;db=H+1|0}else{cb=F;db=H}J4(J,f,K);Va=cb;Wa=db;Xa=O}c[J>>2]=-1;eb=Va;fb=Ha;gb=Wa;hb=I+1|0;ib=Xa;jb=G}else{eb=F;fb=G;gb=H;hb=I;ib=0;jb=K}Ya=(c[N+16>>2]|0)>0;pa=E;qa=eb;ra=Ya?fb+2|0:fb;sa=gb;ta=hb;ua=ib;va=Ya?fb+1|0:jb}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Ta;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=$;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Sa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Ra;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Qa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Pa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Oa;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=Na;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=P;va=K}}else{pa=E;qa=F;ra=G;sa=H;ta=I;ua=fa;va=K}break}default:{pa=E;qa=F;ra=G;sa=H;ta=I;ua=0;va=K}}while(0);N=c[L>>2]|0;if((N|0)>-1){aa=0;while(1){Ya=q+(aa<<2)|0;wa=aa+1|0;if((c[Ya>>2]|0)>-1)aa=wa;else{kb=Ya;lb=wa;break}}c[kb>>2]=N;c[q+(lb<<2)>>2]=-1;T=pa;U=qa;V=ra;W=sa;X=ta;Y=J;Z=ua;_=va}else{T=pa;U=qa;V=ra;W=sa;X=ta;Y=J;Z=ua;_=va}break}case 1:{aa=D+-2|0;c[k>>2]=aa;L=c[M+(aa<<2)>>2]|0;if(m){aa=c[(c[c[L+4>>2]>>2]|0)+20>>2]|0;wa=D+-3|0;c[k>>2]=wa;c[L+20>>2]=(c[M+(wa<<2)>>2]|0)+aa;mb=0;nb=-1}else{aa=D+-3|0;c[k>>2]=aa;wa=c[M+(aa<<2)>>2]|0;aa=D+-4|0;c[k>>2]=aa;mb=wa;nb=(wa|0)==0?F:c[M+(aa<<2)>>2]|0}T=m?E:(mb|0)==0&1;U=nb;V=G;W=H;X=I;Y=J;Z=0;_=K;break}case 4:{aa=D+-2|0;c[k>>2]=aa;wa=c[M+(aa<<2)>>2]|0;aa=D+-3|0;c[k>>2]=aa;T=E;U=F;V=c[M+(aa<<2)>>2]|0;W=H;X=I;Y=J;Z=0;_=(wa|0)>-1?wa:K;break}case 5:{wa=D+-2|0;c[k>>2]=wa;aa=c[M+(wa<<2)>>2]|0;if(m){wa=c[aa+4>>2]|0;c[aa+20>>2]=(c[(c[wa+4>>2]|0)+20>>2]|0)+(c[(c[wa>>2]|0)+20>>2]|0);T=E;U=F;V=G;W=H;X=I;Y=J;Z=0;_=K}else{T=E;U=F;V=G;W=H;X=I;Y=J;Z=0;_=K}break}case 2:{wa=J;while(1)if((c[wa>>2]|0)>-1)wa=wa+4|0;else{T=E;U=F;V=G;W=H;X=I;Y=wa;Z=0;_=K;break}break}case 3:{wa=c[M+(D+-2<<2)>>2]|0;N=c[M+(D+-3<<2)>>2]|0;aa=c[M+(D+-4<<2)>>2]|0;L=D+-5|0;c[k>>2]=L;if(m){Ya=c[aa+4>>2]|0;xa=c[aa+16>>2]|0;c[aa+20>>2]=(c[(c[Ya>>2]|0)+20>>2]|0)+(c[M+(L<<2)>>2]|0)+(c[(c[Ya+4>>2]|0)+20>>2]|0)+((xa|0)>0?2:0);ob=xa}else ob=c[aa+16>>2]|0;aa=c[M+(D+-6<<2)>>2]|0;xa=D+-7|0;c[k>>2]=xa;Ya=c[M+(xa<<2)>>2]|0;xa=D+-8|0;c[k>>2]=xa;L=c[M+(xa<<2)>>2]|0;if((ob|0)>0){if(m)pb=0;else{K4(b,wa,Ya)|0;c[(c[A>>2]|0)+(Ya<<2)>>2]=1;Ya=K4(b,N,L)|0;c[(c[A>>2]|0)+(L<<2)>>2]=1;pb=Ya}T=1;U=F;V=G;W=H;X=I+2|0;Y=aa;Z=pb;_=K}else{T=1;U=F;V=G;W=H;X=I;Y=aa;Z=0;_=K}break}default:{T=E;U=F;V=G;W=H;X=I;Y=J;Z=0;_=K}}D=c[k>>2]|0;if((Z|0)!=0|(D|0)<=(l|0)){t=U;u=W;v=X;w=Y;x=Z;y=_;break a}else{E=T;F=U;G=V;H=W;I=X;J=Y;K=_}}}while(0);if(!m?(J4(w,f,y),(t|0)>-1):0){s=c[f+36>>2]|0;r=0;while(1){K=s+(r<<2)|0;J=r+1|0;if((c[K>>2]|0)>-1)r=J;else{qb=K;rb=J;sb=r;break}}c[qb>>2]=y;c[s+(rb<<2)>>2]=t;c[s+(sb+2<<2)>>2]=-1;tb=u+1|0}else tb=u;c[f+48>>2]=v;c[f+40>>2]=v;c[f+44>>2]=tb;O4(o);O4(q);p=x}while(0);i=g;return p|0}function d4(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+16|0;e=d;f=a+12|0;g=c[f>>2]|0;h=c[a>>2]|0;if((g|0)>=(h|0)){j=c[a+4>>2]|0;if((h|0)<(j|0)?(k=(c[a+8>>2]|0)+h|0,h=(k|0)>(j|0)?j:k,k=a+16|0,j=Q4(c[k>>2]|0,h<<2)|0,(j|0)!=0):0){c[a>>2]=h;c[k>>2]=j;c[e>>2]=c[b>>2];d4(a,e)|0;l=0}else l=12}else{c[(c[a+16>>2]|0)+(g<<2)>>2]=c[b>>2];c[f>>2]=(c[f>>2]|0)+1;l=0}i=d;return l|0}function e4(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;l=i;i=i+16|0;m=l+4|0;n=l;o=d+12|0;p=c[o>>2]|0;c[n>>2]=e;c[m>>2]=c[n>>2];d4(d,m)|0;c[n>>2]=0;c[m>>2]=c[n>>2];e=d4(d,m)|0;a:do if(!e){q=d+16|0;r=(f&1|0)==0;s=(f&2|0)!=0;t=1;u=0;v=j;while(1){w=c[o>>2]|0;if((w|0)>(p|0)){x=w;y=v}else{z=u;A=0;break a}b:while(1){w=c[q>>2]|0;B=x;c:while(1){C=B+-1|0;c[o>>2]=C;switch(c[w+(C<<2)>>2]|0){case 1:{D=B;E=w;F=7;break c;break}case 0:{C=B+-2|0;c[o>>2]=C;G=c[w+(C<<2)>>2]|0;switch(c[G>>2]|0){case 0:{H=G;I=y;F=9;break b;break}case 3:{J=G;K=y;F=20;break b;break}case 1:{L=G;M=y;F=27;break b;break}case 2:{N=G;F=34;break c;break}default:{}}break}default:{}}B=c[o>>2]|0;if((B|0)<=(p|0)){z=u;A=0;break a}}if((F|0)==7){F=0;B=D+-2|0;c[o>>2]=B;O=c[E+(B<<2)>>2]|0}else if((F|0)==34){F=0;B=c[N+4>>2]|0;c[n>>2]=c[B>>2];c[m>>2]=c[n>>2];w=d4(d,m)|0;if(w){z=u;A=w;break a}c[n>>2]=0;c[m>>2]=c[n>>2];w=d4(d,m)|0;if(w){z=u;A=w;break a}w=g4(b,c[B>>2]|0,c[B+4>>2]|0,c[B+8>>2]|0,a[B+12>>0]&1)|0;c[y>>2]=w;if(!w){z=u;A=12;break a}O=c[w+4>>2]|0}x=c[o>>2]|0;if((x|0)<=(p|0)){z=u;A=0;break a}else y=O}if((F|0)==9){F=0;w=c[H+4>>2]|0;B=c[w+8>>2]|0;G=c[w>>2]|0;C=c[w+4>>2]|0;if(!((G|0)>-1|(G|0)==-4))if(r|(G|0)!=-3)if((G|0)==-3)if(s&(t|0)!=0){c[h+(C<<2)>>2]=1;P=0;Q=C;R=-3;S=u;T=B}else{P=t;Q=C;R=-3;S=u;T=B}else{P=t;Q=C;R=G;S=u;T=B}else{P=t;Q=-1;R=-1;S=u;T=-1}else{P=t;Q=C;R=G;S=u+1|0;T=(c[g>>2]|0)+B|0}B=h4(b,0,20)|0;if(!B){c[I>>2]=0;U=12}else{G=B+4|0;C=c[G>>2]|0;c[C>>2]=R;c[C+4>>2]=Q;c[C+8>>2]=T;c[I>>2]=B;B=c[G>>2]|0;c[B+12>>2]=c[w+12>>2];c[B+16>>2]=c[w+16>>2];U=0}if((T|0)>(c[k>>2]|0)){c[k>>2]=T;V=P;W=S;X=I;Y=U}else{V=P;W=S;X=I;Y=U}}else if((F|0)==20){F=0;w=c[J+4>>2]|0;B=w+4|0;G=i4(b,c[w>>2]|0,c[B>>2]|0)|0;c[K>>2]=G;if(!G){z=u;A=12;break a}C=c[G+4>>2]|0;c[n>>2]=c[B>>2];c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=0;c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=C+4;c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=1;c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=c[w>>2];c[m>>2]=c[n>>2];w=d4(d,m)|0;if(w){z=u;A=w;break a}c[n>>2]=0;c[m>>2]=c[n>>2];V=t;W=u;X=C;Y=d4(d,m)|0}else if((F|0)==27){F=0;C=c[L+4>>2]|0;w=C+4|0;B=f4(b,c[C>>2]|0,c[w>>2]|0)|0;c[M>>2]=B;if(!B){z=u;A=12;break a}G=c[B+4>>2]|0;c[G>>2]=0;B=G+4|0;c[B>>2]=0;c[n>>2]=c[w>>2];c[m>>2]=c[n>>2];w=d4(d,m)|0;if(w){z=u;A=w;break a}c[n>>2]=0;c[m>>2]=c[n>>2];w=d4(d,m)|0;if(w){z=u;A=w;break a}c[n>>2]=B;c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=1;c[m>>2]=c[n>>2];B=d4(d,m)|0;if(B){z=u;A=B;break a}c[n>>2]=c[C>>2];c[m>>2]=c[n>>2];C=d4(d,m)|0;if(C){z=u;A=C;break a}c[n>>2]=0;c[m>>2]=c[n>>2];V=t;W=u;X=G;Y=d4(d,m)|0}if(!Y){t=V;u=W;v=X}else{z=W;A=Y;break}}}else{z=0;A=e}while(0);c[g>>2]=(c[g>>2]|0)+z;i=l;return A|0}function f4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=h4(a,1,8)|0;if(!e)f=0;else{a=c[e+4>>2]|0;c[a>>2]=b;c[a+4>>2]=d;c[e+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);f=e}return f|0}function g4(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=h4(b,2,16)|0;if(!h)i=0;else{b=c[h+4>>2]|0;c[b>>2]=d;c[b+4>>2]=e;c[b+8>>2]=f;f=b+12|0;a[f>>0]=a[f>>0]&-2|g&1;c[h+16>>2]=c[d+16>>2];i=h}return i|0}function h4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=B2(a,0,0,1,32)|0;if((e|0)!=0?(f=B2(a,0,0,1,d)|0,c[e+4>>2]=f,(f|0)!=0):0){c[e>>2]=b;c[e+8>>2]=-1;c[e+12>>2]=-1;g=e}else g=0;return g|0}function i4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=h4(a,3,8)|0;if(!e)f=0;else{a=c[e+4>>2]|0;c[a>>2]=b;c[a+4>>2]=d;c[e+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);f=e}return f|0}function j4(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=B2(a,0,0,1,64)|0;if(!i)j=0;else{c[i>>2]=b;c[i+4>>2]=d;c[i+8>>2]=e;c[i+20>>2]=f;c[i+24>>2]=g;c[i+28>>2]=h;c[i+32>>2]=-1;c[i+36>>2]=-1;c[i+40>>2]=-1;j=i}return j|0}function k4(a){a=a|0;var b=0,d=0;b=B2(a,0,0,1,32)|0;if(!b)d=0;else{c[b>>2]=-1;c[b+4>>2]=-1;c[b+8>>2]=-1;d=b}return d|0}function l4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;g=(e|0)==0;if(g)h=0;else{i=0;while(1)if((c[e+(i<<2)>>2]|0)>-1)i=i+1|0;else{h=i;break}}i=0;while(1)if((c[b+(i<<5)>>2]|0)>-1)i=i+1|0;else{j=i;break}i=0;while(1)if((c[d+(i<<5)>>2]|0)>-1)i=i+1|0;else{k=i;break}i=B2(a,0,0,1,(k+j<<5)+32|0)|0;a:do if(!i)l=0;else{j=c[b>>2]|0;if((j|0)>-1){k=(h|0)>0;m=j;j=0;while(1){c[i+(j<<5)>>2]=m;c[i+(j<<5)+4>>2]=c[b+(j<<5)+4>>2];c[i+(j<<5)+8>>2]=c[b+(j<<5)+8>>2];c[i+(j<<5)+16>>2]=c[b+(j<<5)+16>>2]|f;c[i+(j<<5)+20>>2]=c[b+(j<<5)+20>>2];c[i+(j<<5)+24>>2]=c[b+(j<<5)+24>>2];c[i+(j<<5)+28>>2]=c[b+(j<<5)+28>>2];n=b+(j<<5)+12|0;o=c[n>>2]|0;p=(o|0)==0;if(g&p)c[i+(j<<5)+12>>2]=0;else{if(p)q=0;else{p=0;while(1)if((c[o+(p<<2)>>2]|0)>-1)p=p+1|0;else{q=p;break}}p=B2(a,0,0,0,(q+h<<2)+4|0)|0;if(!p){l=0;break a}if((q|0)>0){o=c[n>>2]|0;r=0;do{c[p+(r<<2)>>2]=c[o+(r<<2)>>2];r=r+1|0}while((r|0)!=(q|0));s=q}else s=0;if(k){r=0;do{c[p+(r+s<<2)>>2]=c[e+(r<<2)>>2];r=r+1|0}while((r|0)!=(h|0));t=h}else t=0;c[p+(t+s<<2)>>2]=-1;c[i+(j<<5)+12>>2]=p}r=j+1|0;m=c[b+(r<<5)>>2]|0;if((m|0)<=-1){u=r;break}else j=r}}else u=0;j=c[d>>2]|0;m=i+(u<<5)|0;if((j|0)>-1){k=j;j=m;r=u;o=0;while(1){c[j>>2]=k;c[i+(r<<5)+4>>2]=c[d+(o<<5)+4>>2];c[i+(r<<5)+8>>2]=c[d+(o<<5)+8>>2];c[i+(r<<5)+16>>2]=c[d+(o<<5)+16>>2];c[i+(r<<5)+20>>2]=c[d+(o<<5)+20>>2];c[i+(r<<5)+24>>2]=c[d+(o<<5)+24>>2];c[i+(r<<5)+28>>2]=c[d+(o<<5)+28>>2];n=d+(o<<5)+12|0;v=c[n>>2]|0;if(!v)c[i+(r<<5)+12>>2]=0;else{w=0;while(1)if((c[v+(w<<2)>>2]|0)>-1)w=w+1|0;else{x=w;break}w=B2(a,0,0,0,(x<<2)+4|0)|0;if(!w){l=0;break a}if((x|0)>0){v=c[n>>2]|0;p=0;do{c[w+(p<<2)>>2]=c[v+(p<<2)>>2];p=p+1|0}while((p|0)!=(x|0));y=x}else y=0;c[w+(y<<2)>>2]=-1;c[i+(r<<5)+12>>2]=w}o=o+1|0;k=c[d+(o<<5)>>2]|0;r=o+u|0;p=i+(r<<5)|0;if((k|0)<=-1){z=p;break}else j=p}}else z=m;c[z>>2]=-1;l=i}while(0);return l|0}function m4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;g=i;i=i+16|0;h=g+4|0;j=g;k=a+12|0;l=c[k>>2]|0;m=(f|0)!=0;if(m)c[f>>2]=0;c[j>>2]=b;c[h>>2]=c[j>>2];b=d4(a,h)|0;a:do if(!b){n=a+16|0;o=(d|0)==0;p=(e|0)==0;q=c[k>>2]|0;if((q|0)>(l|0)){r=q;while(1){q=r+-1|0;c[k>>2]=q;s=c[(c[n>>2]|0)+(q<<2)>>2]|0;b:do switch(c[s>>2]|0){case 0:{q=c[s+4>>2]|0;switch(c[q>>2]|0){case -3:break;case -2:{if(p)break b;c[e>>2]=c[e>>2]|c[q+4>>2];break b;break}default:break b}t=c[q+4>>2]|0;if((t|0)>-1){c:do if(!o){q=c[d>>2]|0;d:do if((q|0)>-1){u=q;v=d;w=0;while(1){if((u|0)==(t|0)){x=v;y=w;break}z=w+1|0;A=d+(z<<2)|0;u=c[A>>2]|0;if((u|0)<=-1){B=A;C=z;break d}else{v=A;w=z}}if((t|0)<0){B=x;C=y}else break c}else{B=d;C=0}while(0);c[B>>2]=t;c[d+(C+1<<2)>>2]=-1}while(0);if(m)c[f>>2]=(c[f>>2]|0)+1}break}case 3:{t=c[s+4>>2]|0;q=c[t>>2]|0;if(c[q+8>>2]|0){c[j>>2]=q;c[h>>2]=c[j>>2];D=d4(a,h)|0;E=6;break b}q=c[t+4>>2]|0;if(c[q+8>>2]|0){c[j>>2]=q;c[h>>2]=c[j>>2];D=d4(a,h)|0;E=6}break}case 1:{q=c[s+4>>2]|0;c[j>>2]=c[q>>2];c[h>>2]=c[j>>2];t=d4(a,h)|0;if(t){F=t;break a}c[j>>2]=c[q+4>>2];c[h>>2]=c[j>>2];D=d4(a,h)|0;E=6;break}case 2:{q=c[c[s+4>>2]>>2]|0;if(c[q+8>>2]|0){c[j>>2]=q;c[h>>2]=c[j>>2];D=d4(a,h)|0;E=6}break}default:{}}while(0);if((E|0)==6?(E=0,(D|0)!=0):0){F=D;break a}r=c[k>>2]|0;if((r|0)<=(l|0)){F=0;break a}}}else F=0}else F=b;while(0);i=g;return F|0}function n4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=a;a:while(1){switch(c[f>>2]|0){case 2:{a=c[f+4>>2]|0;if((c[a+8>>2]|0)==-1?(g=c[a>>2]|0,h=H4(c[g+28>>2]|0,c[g+24>>2]|0,b,d,e)|0,(h|0)!=0):0){i=h;break a}else j=a;break}case 3:{a=c[f+4>>2]|0;h=n4(c[a>>2]|0,b,d,e)|0;if(h){i=h;break a}j=a+4|0;break}case 1:{a=c[f+4>>2]|0;h=a+4|0;g=H4(c[(c[a>>2]|0)+28>>2]|0,c[(c[h>>2]|0)+24>>2]|0,b,d,e)|0;if(g){i=g;break a}g=n4(c[a>>2]|0,b,d,e)|0;if(!g)j=h;else{i=g;break a}break}default:{i=0;break a}}f=c[j>>2]|0}return i|0}function o4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a:do if((a|0)>0){f=0;while(1){g=c[d+(f<<2)>>2]|0;h=c[e+(f<<2)>>2]|0;if(!(c[b+(f<<2)>>2]|0)){if((g|0)<(h|0)){i=1;break a}if((g|0)>(h|0)){i=0;break a}}else{if((g|0)>(h|0)){i=1;break a}if((g|0)<(h|0)){i=0;break a}}f=f+1|0;if((f|0)>=(a|0)){i=0;break}}}else i=0;while(0);return i|0}function p4(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((d&8|0)==0&(g|0)>-1){d=c[e+16>>2]|0;h=e+28|0;i=c[h>>2]|0;j=(a|0)!=0;if(j&(i|0)!=0){k=e+48|0;e=0;do{l=c[d+(e*12|0)>>2]|0;if((l|0)==(c[k>>2]|0))m=g;else m=c[f+(l<<2)>>2]|0;l=b+(e<<3)|0;c[l>>2]=m;n=c[d+(e*12|0)+4>>2]|0;if((n|0)==(c[k>>2]|0))o=g;else o=c[f+(n<<2)>>2]|0;n=b+(e<<3)+4|0;c[n>>2]=o;if((m|0)==-1|(o|0)==-1){c[n>>2]=-1;c[l>>2]=-1}e=e+1|0;l=c[h>>2]|0}while(e>>>0>>0&e>>>0>>0);p=l}else p=i;if(j&(p|0)!=0){j=0;while(1){i=b+(j<<3)+4|0;e=c[d+(j*12|0)+8>>2]|0;if((e|0)!=0?(h=c[e>>2]|0,(h|0)>-1):0){o=b+(j<<3)|0;m=h;h=c[o>>2]|0;f=0;while(1){if((h|0)>=(c[b+(m<<3)>>2]|0)?(c[i>>2]|0)<=(c[b+(m<<3)+4>>2]|0):0)q=h;else{c[i>>2]=-1;c[o>>2]=-1;q=-1}f=f+1|0;m=c[e+(f<<2)>>2]|0;if((m|0)<=-1)break;else h=q}}h=j+1|0;if(h>>>0>>0&h>>>0

    >>0)j=h;else{r=h;break}}}else r=0}else r=0;if(r>>>0>>0){j=r;do{c[b+(j<<3)>>2]=-1;c[b+(j<<3)+4>>2]=-1;j=j+1|0}while((j|0)!=(a|0))}return}function q4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=c[a>>2]|0;a:do if(!e)f=0;else{g=(d|0)==0;h=a;i=e;while(1){if(g){if(x1(b,i)|0){f=1;break a}}else{j=J1(b)|0;if(x1(j,c[h>>2]|0)|0){f=1;break a}j=K1(b)|0;if(x1(j,c[h>>2]|0)|0){f=1;break a}}h=h+4|0;i=c[h>>2]|0;if(!i){f=0;break}}}while(0);return f|0}function r4(a){a=a|0;if(!(c[a+68>>2]|0))G2(a);return}function s4(a){a=a|0;if(!(c[a+68>>2]|0))G2(a);return}function t4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+20|0;d=a+28|0;if((c[b>>2]|0)>>>0>(c[d>>2]|0)>>>0?(Hb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)e=-1;else{f=a+4|0;g=c[f>>2]|0;h=a+8|0;i=c[h>>2]|0;if(g>>>0>>0)Hb[c[a+40>>2]&63](a,g-i|0,1)|0;c[a+16>>2]=0;c[d>>2]=0;c[b>>2]=0;c[h>>2]=0;c[f>>2]=0;e=0}return e|0}function u4(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0.0,db=0.0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0.0,kb=0.0,lb=0.0,mb=0.0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0.0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0.0,Yb=0.0,Zb=0.0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0;m=i;i=i+624|0;n=m+24|0;o=m+16|0;p=m+588|0;q=m+576|0;r=m;s=m+536|0;t=m+8|0;u=m+528|0;v=(e|0)!=0;w=s+40|0;x=w;y=s+39|0;s=t+4|0;z=p;A=0-z|0;B=q+12|0;D=q+11|0;q=B;E=q-z|0;F=-2-z|0;G=q+2|0;H=n+288|0;I=p+9|0;J=I;K=p+8|0;L=0;M=0;N=0;O=f;a:while(1){do if((L|0)>-1)if((M|0)>(2147483647-L|0)){c[(L1()|0)>>2]=75;P=-1;break}else{P=M+L|0;break}else P=L;while(0);f=a[O>>0]|0;if(!(f<<24>>24)){Q=P;R=N;S=244;break}else{T=f;U=O}b:while(1){switch(T<<24>>24){case 37:{V=U;W=U;S=9;break b;break}case 0:{X=U;Y=U;break b;break}default:{}}f=U+1|0;T=a[f>>0]|0;U=f}c:do if((S|0)==9)while(1){S=0;if((a[V+1>>0]|0)!=37){X=V;Y=W;break c}f=W+1|0;Z=V+2|0;if((a[Z>>0]|0)==37){V=Z;W=f;S=9}else{X=Z;Y=f;break}}while(0);f=Y-O|0;if(v?(c[e>>2]&32|0)==0:0)g3(O,f,e)|0;if((Y|0)!=(O|0)){L=P;M=f;O=X;continue}Z=X+1|0;$=a[Z>>0]|0;aa=($<<24>>24)+-48|0;if(aa>>>0<10){ba=(a[X+2>>0]|0)==36;ca=ba?X+3|0:Z;da=a[ca>>0]|0;ea=ba?aa:-1;fa=ba?1:N;ga=ca}else{da=$;ea=-1;fa=N;ga=Z}Z=da<<24>>24;d:do if((Z&-32|0)==32){$=Z;ca=da;ba=0;aa=ga;while(1){if(!(1<<$+-32&75913)){ha=ca;ia=ba;ja=aa;break d}ka=1<<(ca<<24>>24)+-32|ba;la=aa+1|0;ma=a[la>>0]|0;$=ma<<24>>24;if(($&-32|0)!=32){ha=ma;ia=ka;ja=la;break}else{ca=ma;ba=ka;aa=la}}}else{ha=da;ia=0;ja=ga}while(0);do if(ha<<24>>24==42){Z=ja+1|0;aa=(a[Z>>0]|0)+-48|0;if(aa>>>0<10?(a[ja+2>>0]|0)==36:0){c[l+(aa<<2)>>2]=10;na=1;oa=ja+3|0;pa=c[j+((a[Z>>0]|0)+-48<<3)>>2]|0}else{if(fa){qa=-1;break a}if(!v){ra=ia;sa=0;ta=Z;ua=0;break}aa=(c[g>>2]|0)+(4-1)&~(4-1);ba=c[aa>>2]|0;c[g>>2]=aa+4;na=0;oa=Z;pa=ba}if((pa|0)<0){ra=ia|8192;sa=na;ta=oa;ua=0-pa|0}else{ra=ia;sa=na;ta=oa;ua=pa}}else{ba=(ha<<24>>24)+-48|0;if(ba>>>0<10){Z=ja;aa=0;ca=ba;while(1){ba=(aa*10|0)+ca|0;$=Z+1|0;ca=(a[$>>0]|0)+-48|0;if(ca>>>0>=10){va=ba;wa=$;break}else{Z=$;aa=ba}}if((va|0)<0){qa=-1;break a}else{ra=ia;sa=fa;ta=wa;ua=va}}else{ra=ia;sa=fa;ta=ja;ua=0}}while(0);e:do if((a[ta>>0]|0)==46){aa=ta+1|0;Z=a[aa>>0]|0;if(Z<<24>>24!=42){ca=(Z<<24>>24)+-48|0;if(ca>>>0<10){xa=aa;ya=0;za=ca}else{Aa=0;Ba=aa;break}while(1){aa=(ya*10|0)+za|0;ca=xa+1|0;za=(a[ca>>0]|0)+-48|0;if(za>>>0>=10){Aa=aa;Ba=ca;break e}else{xa=ca;ya=aa}}}aa=ta+2|0;ca=(a[aa>>0]|0)+-48|0;if(ca>>>0<10?(a[ta+3>>0]|0)==36:0){c[l+(ca<<2)>>2]=10;Aa=c[j+((a[aa>>0]|0)+-48<<3)>>2]|0;Ba=ta+4|0;break}if(sa){qa=-1;break a}if(v){ca=(c[g>>2]|0)+(4-1)&~(4-1);Z=c[ca>>2]|0;c[g>>2]=ca+4;Aa=Z;Ba=aa}else{Aa=0;Ba=aa}}else{Aa=-1;Ba=ta}while(0);aa=Ba;Z=0;while(1){ca=(a[aa>>0]|0)+-65|0;if(ca>>>0>57){qa=-1;break a}ba=aa+1|0;$=a[192856+(Z*58|0)+ca>>0]|0;ca=$&255;if((ca+-1|0)>>>0<8){aa=ba;Z=ca}else{Ca=ba;Da=$;Ea=ca;Fa=aa;Ga=Z;break}}if(!(Da<<24>>24)){qa=-1;break}Z=(ea|0)>-1;do if(Da<<24>>24==19)if(Z){qa=-1;break a}else S=52;else{if(Z){c[l+(ea<<2)>>2]=Ea;aa=j+(ea<<3)|0;ca=c[aa+4>>2]|0;$=r;c[$>>2]=c[aa>>2];c[$+4>>2]=ca;S=52;break}if(!v){qa=0;break a}E4(r,Ea,g)}while(0);if((S|0)==52?(S=0,!v):0){L=P;M=f;N=sa;O=Ca;continue}Z=a[Fa>>0]|0;ca=(Ga|0)!=0&(Z&15|0)==3?Z&-33:Z;Z=ra&-65537;$=(ra&8192|0)==0?ra:Z;f:do switch(ca|0){case 110:{switch(Ga|0){case 0:{c[c[r>>2]>>2]=P;L=P;M=f;N=sa;O=Ca;continue a;break}case 1:{c[c[r>>2]>>2]=P;L=P;M=f;N=sa;O=Ca;continue a;break}case 2:{aa=c[r>>2]|0;c[aa>>2]=P;c[aa+4>>2]=((P|0)<0)<<31>>31;L=P;M=f;N=sa;O=Ca;continue a;break}case 3:{b[c[r>>2]>>1]=P;L=P;M=f;N=sa;O=Ca;continue a;break}case 4:{a[c[r>>2]>>0]=P;L=P;M=f;N=sa;O=Ca;continue a;break}case 6:{c[c[r>>2]>>2]=P;L=P;M=f;N=sa;O=Ca;continue a;break}case 7:{aa=c[r>>2]|0;c[aa>>2]=P;c[aa+4>>2]=((P|0)<0)<<31>>31;L=P;M=f;N=sa;O=Ca;continue a;break}default:{L=P;M=f;N=sa;O=Ca;continue a}}break}case 112:{Ha=$|8;Ia=Aa>>>0>8?Aa:8;Ja=120;S=64;break}case 88:case 120:{Ha=$;Ia=Aa;Ja=ca;S=64;break}case 111:{aa=r;ba=c[aa>>2]|0;la=c[aa+4>>2]|0;if((ba|0)==0&(la|0)==0)Ka=w;else{aa=w;ka=ba;ba=la;while(1){la=aa+-1|0;a[la>>0]=ka&7|48;ka=X4(ka|0,ba|0,3)|0;ba=C;if((ka|0)==0&(ba|0)==0){Ka=la;break}else aa=la}}if(!($&8)){La=Ka;Ma=$;Na=Aa;Oa=0;Pa=193336;S=77}else{aa=x-Ka|0;La=Ka;Ma=$;Na=(Aa|0)>(aa|0)?Aa:aa+1|0;Oa=0;Pa=193336;S=77}break}case 105:case 100:{aa=r;ba=c[aa>>2]|0;ka=c[aa+4>>2]|0;if((ka|0)<0){aa=U4(0,0,ba|0,ka|0)|0;la=C;ma=r;c[ma>>2]=aa;c[ma+4>>2]=la;Qa=aa;Ra=la;Sa=1;Ta=193336;S=76;break f}if(!($&2048)){la=$&1;Qa=ba;Ra=ka;Sa=la;Ta=(la|0)==0?193336:193338;S=76}else{Qa=ba;Ra=ka;Sa=1;Ta=193337;S=76}break}case 117:{ka=r;Qa=c[ka>>2]|0;Ra=c[ka+4>>2]|0;Sa=0;Ta=193336;S=76;break}case 99:{a[y>>0]=c[r>>2];Ua=y;Va=Z;Wa=1;Xa=0;Ya=193336;Za=w;break}case 109:{_a=M1(c[(L1()|0)>>2]|0)|0;S=82;break}case 115:{ka=c[r>>2]|0;_a=(ka|0)!=0?ka:193346;S=82;break}case 67:{c[t>>2]=c[r>>2];c[s>>2]=0;c[r>>2]=t;$a=t;ab=-1;S=86;break}case 83:{ka=c[r>>2]|0;if(!Aa){G4(e,32,ua,0,$);bb=0;S=97}else{$a=ka;ab=Aa;S=86}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{cb=+h[r>>3];c[o>>2]=0;h[k>>3]=cb;if((c[k+4>>2]|0)>=0)if(!($&2048)){ka=$&1;db=cb;eb=ka;fb=(ka|0)==0?193354:193359}else{db=cb;eb=1;fb=193356}else{db=-cb;eb=1;fb=193353}h[k>>3]=db;ka=c[k+4>>2]&2146435072;do if(ka>>>0<2146435072|(ka|0)==2146435072&0<0){cb=+c2(db,o)*2.0;ba=cb!=0.0;if(ba)c[o>>2]=(c[o>>2]|0)+-1;la=ca|32;if((la|0)==97){aa=ca&32;ma=(aa|0)==0?fb:fb+9|0;gb=eb|2;hb=12-Aa|0;do if(!(Aa>>>0>11|(hb|0)==0)){ib=hb;jb=8.0;while(1){ib=ib+-1|0;kb=jb*16.0;if(!ib){lb=kb;break}else jb=kb}if((a[ma>>0]|0)==45){mb=-(lb+(-cb-lb));break}else{mb=cb+lb-lb;break}}else mb=cb;while(0);hb=c[o>>2]|0;ib=(hb|0)<0?0-hb|0:hb;nb=F4(ib,((ib|0)<0)<<31>>31,B)|0;if((nb|0)==(B|0)){a[D>>0]=48;ob=D}else ob=nb;a[ob+-1>>0]=(hb>>31&2)+43;hb=ob+-2|0;a[hb>>0]=ca+15;nb=(Aa|0)<1;ib=($&8|0)==0;jb=mb;pb=p;while(1){qb=~~jb;rb=pb+1|0;a[pb>>0]=d[193320+qb>>0]|aa;jb=(jb-+(qb|0))*16.0;do if((rb-z|0)==1){if(ib&(nb&jb==0.0)){sb=rb;break}a[rb>>0]=46;sb=pb+2|0}else sb=rb;while(0);if(!(jb!=0.0)){tb=sb;break}else pb=sb}pb=tb;nb=hb;ib=(Aa|0)!=0&(F+pb|0)<(Aa|0)?G+Aa-nb|0:E-nb+pb|0;aa=ib+gb|0;G4(e,32,ua,aa,$);if(!(c[e>>2]&32))g3(ma,gb,e)|0;G4(e,48,ua,aa,$^65536);rb=pb-z|0;if(!(c[e>>2]&32))g3(p,rb,e)|0;pb=q-nb|0;G4(e,48,ib-(rb+pb)|0,0,0);if(!(c[e>>2]&32))g3(hb,pb,e)|0;G4(e,32,ua,aa,$^8192);ub=(aa|0)<(ua|0)?ua:aa;break}aa=(Aa|0)<0?6:Aa;if(ba){pb=(c[o>>2]|0)+-28|0;c[o>>2]=pb;vb=cb*268435456.0;wb=pb}else{vb=cb;wb=c[o>>2]|0}pb=(wb|0)<0?n:H;rb=pb;jb=vb;ib=pb;while(1){nb=~~jb>>>0;c[ib>>2]=nb;qb=ib+4|0;jb=(jb-+(nb>>>0))*1.0e9;if(!(jb!=0.0)){xb=qb;break}else ib=qb}ib=c[o>>2]|0;if((ib|0)>0){ba=ib;hb=pb;gb=xb;while(1){ma=(ba|0)>29?29:ba;qb=gb+-4|0;do if(qb>>>0>>0)yb=hb;else{nb=0;zb=qb;while(1){Ab=a5(c[zb>>2]|0,0,ma|0)|0;Bb=V4(Ab|0,C|0,nb|0,0)|0;Ab=C;Cb=i5(Bb|0,Ab|0,1e9,0)|0;c[zb>>2]=Cb;Cb=h5(Bb|0,Ab|0,1e9,0)|0;zb=zb+-4|0;if(zb>>>0>>0){Db=Cb;break}else nb=Cb}if(!Db){yb=hb;break}nb=hb+-4|0;c[nb>>2]=Db;yb=nb}while(0);qb=gb;while(1){if(qb>>>0<=yb>>>0){Eb=qb;break}nb=qb+-4|0;if(!(c[nb>>2]|0))qb=nb;else{Eb=qb;break}}qb=(c[o>>2]|0)-ma|0;c[o>>2]=qb;if((qb|0)>0){ba=qb;hb=yb;gb=Eb}else{Fb=qb;Gb=yb;Hb=Eb;break}}}else{Fb=ib;Gb=pb;Hb=xb}if((Fb|0)<0){gb=((aa+25|0)/9|0)+1|0;hb=(la|0)==102;ba=Fb;qb=Gb;nb=Hb;while(1){zb=0-ba|0;Cb=(zb|0)>9?9:zb;do if(qb>>>0>>0){zb=(1<>>Cb;Bb=0;Ib=qb;while(1){Jb=c[Ib>>2]|0;c[Ib>>2]=(Jb>>>Cb)+Bb;Kb=_(Jb&zb,Ab)|0;Ib=Ib+4|0;if(Ib>>>0>=nb>>>0){Lb=Kb;break}else Bb=Kb}Bb=(c[qb>>2]|0)==0?qb+4|0:qb;if(!Lb){Mb=Bb;Nb=nb;break}c[nb>>2]=Lb;Mb=Bb;Nb=nb+4|0}else{Mb=(c[qb>>2]|0)==0?qb+4|0:qb;Nb=nb}while(0);ma=hb?pb:Mb;Bb=(Nb-ma>>2|0)>(gb|0)?ma+(gb<<2)|0:Nb;ba=(c[o>>2]|0)+Cb|0;c[o>>2]=ba;if((ba|0)>=0){Ob=Mb;Pb=Bb;break}else{qb=Mb;nb=Bb}}}else{Ob=Gb;Pb=Hb}do if(Ob>>>0>>0){nb=(rb-Ob>>2)*9|0;qb=c[Ob>>2]|0;if(qb>>>0<10){Qb=nb;break}else{Rb=nb;Sb=10}while(1){Sb=Sb*10|0;nb=Rb+1|0;if(qb>>>0>>0){Qb=nb;break}else Rb=nb}}else Qb=0;while(0);qb=(la|0)==103;Cb=(aa|0)!=0;nb=aa-((la|0)!=102?Qb:0)+((Cb&qb)<<31>>31)|0;if((nb|0)<(((Pb-rb>>2)*9|0)+-9|0)){ba=nb+9216|0;nb=pb+4+(((ba|0)/9|0)+-1024<<2)|0;gb=((ba|0)%9|0)+1|0;if((gb|0)<9){ba=10;hb=gb;while(1){gb=ba*10|0;hb=hb+1|0;if((hb|0)==9){Tb=gb;break}else ba=gb}}else Tb=10;ba=c[nb>>2]|0;hb=(ba>>>0)%(Tb>>>0)|0;la=(nb+4|0)==(Pb|0);do if(la&(hb|0)==0){Ub=Ob;Vb=nb;Wb=Qb}else{jb=(((ba>>>0)/(Tb>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;gb=(Tb|0)/2|0;if(hb>>>0>>0)Xb=.5;else Xb=la&(hb|0)==(gb|0)?1.0:1.5;do if(!eb){Yb=jb;Zb=Xb}else{if((a[fb>>0]|0)!=45){Yb=jb;Zb=Xb;break}Yb=-jb;Zb=-Xb}while(0);gb=ba-hb|0;c[nb>>2]=gb;if(!(Yb+Zb!=Yb)){Ub=Ob;Vb=nb;Wb=Qb;break}ib=gb+Tb|0;c[nb>>2]=ib;if(ib>>>0>999999999){ib=Ob;gb=nb;while(1){Bb=gb+-4|0;c[gb>>2]=0;if(Bb>>>0>>0){ma=ib+-4|0;c[ma>>2]=0;_b=ma}else _b=ib;ma=(c[Bb>>2]|0)+1|0;c[Bb>>2]=ma;if(ma>>>0>999999999){ib=_b;gb=Bb}else{$b=_b;ac=Bb;break}}}else{$b=Ob;ac=nb}gb=(rb-$b>>2)*9|0;ib=c[$b>>2]|0;if(ib>>>0<10){Ub=$b;Vb=ac;Wb=gb;break}else{bc=gb;cc=10}while(1){cc=cc*10|0;gb=bc+1|0;if(ib>>>0>>0){Ub=$b;Vb=ac;Wb=gb;break}else bc=gb}}while(0);nb=Vb+4|0;dc=Ub;ec=Wb;fc=Pb>>>0>nb>>>0?nb:Pb}else{dc=Ob;ec=Qb;fc=Pb}nb=0-ec|0;hb=fc;while(1){if(hb>>>0<=dc>>>0){gc=0;hc=hb;break}ba=hb+-4|0;if(!(c[ba>>2]|0))hb=ba;else{gc=1;hc=hb;break}}do if(qb){hb=(Cb&1^1)+aa|0;if((hb|0)>(ec|0)&(ec|0)>-5){ic=ca+-1|0;jc=hb+-1-ec|0}else{ic=ca+-2|0;jc=hb+-1|0}hb=$&8;if(hb){kc=ic;lc=jc;mc=hb;break}do if(gc){hb=c[hc+-4>>2]|0;if(!hb){nc=9;break}if(!((hb>>>0)%10|0)){oc=10;pc=0}else{nc=0;break}while(1){oc=oc*10|0;ba=pc+1|0;if((hb>>>0)%(oc>>>0)|0){nc=ba;break}else pc=ba}}else nc=9;while(0);hb=((hc-rb>>2)*9|0)+-9|0;if((ic|32|0)==102){ba=hb-nc|0;la=(ba|0)<0?0:ba;kc=ic;lc=(jc|0)<(la|0)?jc:la;mc=0;break}else{la=hb+ec-nc|0;hb=(la|0)<0?0:la;kc=ic;lc=(jc|0)<(hb|0)?jc:hb;mc=0;break}}else{kc=ca;lc=aa;mc=$&8}while(0);aa=lc|mc;rb=(aa|0)!=0&1;Cb=(kc|32|0)==102;if(Cb){qc=(ec|0)>0?ec:0;rc=0}else{qb=(ec|0)<0?nb:ec;hb=F4(qb,((qb|0)<0)<<31>>31,B)|0;if((q-hb|0)<2){qb=hb;while(1){la=qb+-1|0;a[la>>0]=48;if((q-la|0)<2)qb=la;else{sc=la;break}}}else sc=hb;a[sc+-1>>0]=(ec>>31&2)+43;qb=sc+-2|0;a[qb>>0]=kc;qc=q-qb|0;rc=qb}qb=eb+1+lc+rb+qc|0;G4(e,32,ua,qb,$);if(!(c[e>>2]&32))g3(fb,eb,e)|0;G4(e,48,ua,qb,$^65536);do if(Cb){nb=dc>>>0>pb>>>0?pb:dc;la=nb;while(1){ba=F4(c[la>>2]|0,0,I)|0;do if((la|0)==(nb|0)){if((ba|0)!=(I|0)){tc=ba;break}a[K>>0]=48;tc=K}else{if(ba>>>0<=p>>>0){tc=ba;break}$4(p|0,48,ba-z|0)|0;ib=ba;while(1){gb=ib+-1|0;if(gb>>>0>p>>>0)ib=gb;else{tc=gb;break}}}while(0);if(!(c[e>>2]&32))g3(tc,J-tc|0,e)|0;ba=la+4|0;if(ba>>>0>pb>>>0){uc=ba;break}else la=ba}do if(aa){if(c[e>>2]&32)break;g3(193388,1,e)|0}while(0);if((lc|0)>0&uc>>>0>>0){la=lc;nb=uc;while(1){ba=F4(c[nb>>2]|0,0,I)|0;if(ba>>>0>p>>>0){$4(p|0,48,ba-z|0)|0;ib=ba;while(1){gb=ib+-1|0;if(gb>>>0>p>>>0)ib=gb;else{vc=gb;break}}}else vc=ba;if(!(c[e>>2]&32))g3(vc,(la|0)>9?9:la,e)|0;nb=nb+4|0;ib=la+-9|0;if(!((la|0)>9&nb>>>0>>0)){wc=ib;break}else la=ib}}else wc=lc;G4(e,48,wc+9|0,9,0)}else{la=gc?hc:dc+4|0;if((lc|0)>-1){nb=(mc|0)==0;ib=lc;gb=dc;while(1){Bb=F4(c[gb>>2]|0,0,I)|0;if((Bb|0)==(I|0)){a[K>>0]=48;xc=K}else xc=Bb;do if((gb|0)==(dc|0)){Bb=xc+1|0;if(!(c[e>>2]&32))g3(xc,1,e)|0;if(nb&(ib|0)<1){yc=Bb;break}if(c[e>>2]&32){yc=Bb;break}g3(193388,1,e)|0;yc=Bb}else{if(xc>>>0<=p>>>0){yc=xc;break}$4(p|0,48,xc+A|0)|0;Bb=xc;while(1){ma=Bb+-1|0;if(ma>>>0>p>>>0)Bb=ma;else{yc=ma;break}}}while(0);ba=J-yc|0;if(!(c[e>>2]&32))g3(yc,(ib|0)>(ba|0)?ba:ib,e)|0;Bb=ib-ba|0;gb=gb+4|0;if(!(gb>>>0>>0&(Bb|0)>-1)){zc=Bb;break}else ib=Bb}}else zc=lc;G4(e,48,zc+18|0,18,0);if(c[e>>2]&32)break;g3(rc,q-rc|0,e)|0}while(0);G4(e,32,ua,qb,$^8192);ub=(qb|0)<(ua|0)?ua:qb}else{aa=(ca&32|0)!=0;pb=db!=db|0.0!=0.0;Cb=pb?0:eb;rb=Cb+3|0;G4(e,32,ua,rb,Z);hb=c[e>>2]|0;if(!(hb&32)){g3(fb,Cb,e)|0;Ac=c[e>>2]|0}else Ac=hb;if(!(Ac&32))g3(pb?(aa?193380:193384):aa?193372:193376,3,e)|0;G4(e,32,ua,rb,$^8192);ub=(rb|0)<(ua|0)?ua:rb}while(0);L=P;M=ub;N=sa;O=Ca;continue a;break}default:{Ua=O;Va=$;Wa=Aa;Xa=0;Ya=193336;Za=w}}while(0);g:do if((S|0)==64){S=0;ca=r;f=c[ca>>2]|0;ka=c[ca+4>>2]|0;ca=Ja&32;if(!((f|0)==0&(ka|0)==0)){rb=w;aa=f;f=ka;while(1){ka=rb+-1|0;a[ka>>0]=d[193320+(aa&15)>>0]|ca;aa=X4(aa|0,f|0,4)|0;f=C;if((aa|0)==0&(f|0)==0){Bc=ka;break}else rb=ka}rb=r;if((Ha&8|0)==0|(c[rb>>2]|0)==0&(c[rb+4>>2]|0)==0){La=Bc;Ma=Ha;Na=Ia;Oa=0;Pa=193336;S=77}else{La=Bc;Ma=Ha;Na=Ia;Oa=2;Pa=193336+(Ja>>4)|0;S=77}}else{La=w;Ma=Ha;Na=Ia;Oa=0;Pa=193336;S=77}}else if((S|0)==76){S=0;La=F4(Qa,Ra,w)|0;Ma=$;Na=Aa;Oa=Sa;Pa=Ta;S=77}else if((S|0)==82){S=0;rb=A3(_a,0,Aa)|0;f=(rb|0)==0;Ua=_a;Va=Z;Wa=f?Aa:rb-_a|0;Xa=0;Ya=193336;Za=f?_a+Aa|0:rb}else if((S|0)==86){S=0;rb=0;f=0;aa=$a;while(1){ca=c[aa>>2]|0;if(!ca){Cc=rb;Dc=f;break}ka=p2(u,ca)|0;if((ka|0)<0|ka>>>0>(ab-rb|0)>>>0){Cc=rb;Dc=ka;break}ca=ka+rb|0;if(ab>>>0>ca>>>0){rb=ca;f=ka;aa=aa+4|0}else{Cc=ca;Dc=ka;break}}if((Dc|0)<0){qa=-1;break a}G4(e,32,ua,Cc,$);if(!Cc){bb=0;S=97}else{aa=0;f=$a;while(1){rb=c[f>>2]|0;if(!rb){bb=Cc;S=97;break g}ka=p2(u,rb)|0;aa=ka+aa|0;if((aa|0)>(Cc|0)){bb=Cc;S=97;break g}if(!(c[e>>2]&32))g3(u,ka,e)|0;if(aa>>>0>=Cc>>>0){bb=Cc;S=97;break}else f=f+4|0}}}while(0);if((S|0)==97){S=0;G4(e,32,ua,bb,$^8192);L=P;M=(ua|0)>(bb|0)?ua:bb;N=sa;O=Ca;continue}if((S|0)==77){S=0;Z=(Na|0)>-1?Ma&-65537:Ma;f=r;aa=(c[f>>2]|0)!=0|(c[f+4>>2]|0)!=0;if((Na|0)!=0|aa){f=(aa&1^1)+(x-La)|0;Ua=La;Va=Z;Wa=(Na|0)>(f|0)?Na:f;Xa=Oa;Ya=Pa;Za=w}else{Ua=w;Va=Z;Wa=0;Xa=Oa;Ya=Pa;Za=w}}Z=Za-Ua|0;f=(Wa|0)<(Z|0)?Z:Wa;aa=Xa+f|0;ka=(ua|0)<(aa|0)?aa:ua;G4(e,32,ka,aa,Va);if(!(c[e>>2]&32))g3(Ya,Xa,e)|0;G4(e,48,ka,aa,Va^65536);G4(e,48,f,Z,0);if(!(c[e>>2]&32))g3(Ua,Z,e)|0;G4(e,32,ka,aa,Va^8192);L=P;M=ka;N=sa;O=Ca}h:do if((S|0)==244)if(!e)if(R){Ca=1;while(1){O=c[l+(Ca<<2)>>2]|0;if(!O){Ec=Ca;break}E4(j+(Ca<<3)|0,O,g);Ca=Ca+1|0;if((Ca|0)>=10){qa=1;break h}}if((Ec|0)<10){Ca=Ec;while(1){if(c[l+(Ca<<2)>>2]|0){qa=-1;break h}Ca=Ca+1|0;if((Ca|0)>=10){qa=1;break}}}else qa=1}else qa=0;else qa=Q;while(0);i=m;return qa|0}function v4(a,b,c){a=a|0;b=b|0;c=c|0;return N2(a,b,c)|0}function w4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+240|0;h=g;c[h>>2]=a;a:do if((e|0)>1){j=0-b|0;k=e;l=a;m=a;n=1;while(1){o=l+j|0;p=k+-2|0;q=o+(0-(c[f+(p<<2)>>2]|0))|0;if((Ob[d&127](m,q)|0)>-1?(Ob[d&127](m,o)|0)>-1:0){r=n;break a}s=n+1|0;t=h+(n<<2)|0;if((Ob[d&127](q,o)|0)>-1){c[t>>2]=q;u=q;v=k+-1|0}else{c[t>>2]=o;u=o;v=p}if((v|0)<=1){r=s;break a}k=v;l=u;m=c[h>>2]|0;n=s}}else r=1;while(0);C4(b,h,r);i=g;return}function x4(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;j=i;i=i+240|0;k=j;l=c[e>>2]|0;m=c[e+4>>2]|0;c[k>>2]=a;e=0-b|0;a:do if((m|0)!=0|(l|0)!=1?(n=a+(0-(c[h+(f<<2)>>2]|0))|0,(Ob[d&127](n,a)|0)>=1):0){o=a;p=f;q=(g|0)==0;r=n;n=1;s=l;t=m;while(1){if(q&(p|0)>1){u=o+e|0;v=c[h+(p+-2<<2)>>2]|0;if((Ob[d&127](u,r)|0)>-1){w=o;x=p;y=n;z=19;break a}if((Ob[d&127](u+(0-v)|0,r)|0)>-1){w=o;x=p;y=n;z=19;break a}}v=n+1|0;c[k+(n<<2)>>2]=r;u=s+-1|0;do if(u){if(!(u&1)){A=u;B=0;while(1){C=B+1|0;A=A>>>1;if(A&1){D=C;break}else B=C}}else{if(!t)E=32;else{if(!(t&1)){F=t;G=0}else{H=0;I=s;J=t;K=0;break}while(1){B=G+1|0;F=F>>>1;if(F&1){E=B;break}else G=B}}D=E+32|0}if(D>>>0>31){L=D;z=15}else{H=D;I=s;J=t;K=D}}else{L=32;z=15}while(0);if((z|0)==15){z=0;H=L+-32|0;I=t;J=0;K=L}s=J<<32-H|I>>>H;t=J>>>H;u=K+p|0;if(!((t|0)!=0|(s|0)!=1)){w=r;x=u;y=v;z=19;break a}B=r+(0-(c[h+(u<<2)>>2]|0))|0;if((Ob[d&127](B,c[k>>2]|0)|0)<1){M=r;N=u;O=0;P=v;z=18;break}else{A=r;p=u;q=1;r=B;n=v;o=A}}}else{M=a;N=f;O=g;P=1;z=18}while(0);if((z|0)==18?(O|0)==0:0){w=M;x=N;y=P;z=19}if((z|0)==19){C4(b,k,y);w4(w,b,d,x,h)}i=j;return}function y4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0.0;e=i;i=i+112|0;f=e;g=f;h=g+112|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));g=f+4|0;c[g>>2]=a;h=f+8|0;c[h>>2]=-1;c[f+44>>2]=a;c[f+76>>2]=-1;Q1(f,0);j=+N1(f,d,1);d=(c[g>>2]|0)-(c[h>>2]|0)+(c[f+108>>2]|0)|0;if(b)c[b>>2]=(d|0)!=0?a+d|0:a;i=e;return +j}function z4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+112|0;h=g;c[h>>2]=0;j=h+4|0;c[j>>2]=a;c[h+44>>2]=a;k=h+8|0;c[k>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;Q1(h,0);l=O1(h,d,1,e,f)|0;if(b)c[b>>2]=a+((c[j>>2]|0)+(c[h+108>>2]|0)-(c[k>>2]|0));i=g;return l|0}function A4(a){a=a|0;return}function B4(){return}function C4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+256|0;f=e;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=f,(a|0)!=0):0){h=a;j=f;while(1){k=h>>>0>256?256:h;Z4(j|0,c[b>>2]|0,k|0)|0;l=0;do{m=b+(l<<2)|0;l=l+1|0;Z4(c[m>>2]|0,c[b+(l<<2)>>2]|0,k|0)|0;c[m>>2]=(c[m>>2]|0)+k}while((l|0)!=(d|0));if((h|0)==(k|0))break a;h=h-k|0;j=c[g>>2]|0}}while(0);i=e;return}function D4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+20|0;f=c[e>>2]|0;g=(c[a+16>>2]|0)-f|0;a=g>>>0>d>>>0?d:g;Z4(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function E4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f;break a;break}case 10:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a;break}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=f;c[e+4>>2]=0;break a;break}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);f=e;g=c[f>>2]|0;i=c[f+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=g;c[e+4>>2]=i;break a;break}case 13:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&65535)<<16>>16;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 14:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&65535;c[i+4>>2]=0;break a;break}case 15:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&255)<<24>>24;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 16:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&255;c[i+4>>2]=0;break a;break}case 17:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}case 18:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}default:break a}while(0);while(0);return}function F4(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){e=d;f=b;g=c;while(1){c=i5(f|0,g|0,10,0)|0;h=e+-1|0;a[h>>0]=c|48;c=h5(f|0,g|0,10,0)|0;if(g>>>0>9|(g|0)==9&f>>>0>4294967295){e=h;f=c;g=C}else{i=h;j=c;break}}k=i;l=j}else{k=d;l=b}if(!l)m=k;else{b=k;k=l;while(1){l=b+-1|0;a[l>>0]=(k>>>0)%10|0|48;if(k>>>0<10){m=l;break}else{b=l;k=(k>>>0)/10|0}}}return m|0}function G4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+256|0;h=g;do if((d|0)>(e|0)&(f&73728|0)==0){j=d-e|0;$4(h|0,b|0,(j>>>0>256?256:j)|0)|0;k=c[a>>2]|0;l=(k&32|0)==0;if(j>>>0>255){m=d-e|0;n=j;o=k;k=l;while(1){if(k){g3(h,256,a)|0;p=c[a>>2]|0}else p=o;n=n+-256|0;k=(p&32|0)==0;if(n>>>0<=255)break;else o=p}if(k)q=m&255;else break}else if(l)q=j;else break;g3(h,q,a)|0}while(0);i=g;return}function H4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;g=c[a>>2]|0;h=(g|0)>-1;a:do if(!d)if(h){i=b+32|0;j=g;k=a;do{if((c[b>>2]|0)>-1?(l=e+(j<<2)|0,c[l>>2]=(c[l>>2]|0)+1,(c[i>>2]|0)>-1):0){l=i;do{m=e+(c[k>>2]<<2)|0;c[m>>2]=(c[m>>2]|0)+1;l=l+32|0}while((c[l>>2]|0)>-1)}k=k+32|0;j=c[k>>2]|0}while((j|0)>-1);n=0}else n=0;else if(h){j=a;while(1){k=c[b>>2]|0;b:do if((k|0)>-1){i=j+4|0;l=j+8|0;m=j+16|0;o=j+20|0;p=j+24|0;q=j+28|0;r=j+12|0;s=b;t=k;u=-1;while(1){v=s;w=t;while(1){if((w|0)!=(u|0)){x=v;y=w;break}v=v+32|0;w=c[v>>2]|0;if((w|0)<=-1)break b}w=d+(c[f+(c[j>>2]<<2)>>2]<<5)|0;while(1){v=w+8|0;if(!(c[v>>2]|0)){z=v;A=w;break}else w=w+32|0}c[A+40>>2]=0;c[A>>2]=c[i>>2];c[A+4>>2]=c[l>>2];c[z>>2]=d+(c[f+(y<<2)>>2]<<5);c[A+12>>2]=y;w=c[o>>2]|0;v=c[x+16>>2]|c[m>>2]|((w|0)!=0?4:0)|((c[p>>2]|0)!=0?8:0);B=A+20|0;c[B>>2]=v;C=c[q>>2]|0;if((C|0)>-1){c[B>>2]=v|256;D=C}else D=w;c[A+24>>2]=D;w=c[p>>2]|0;if(!w)c[A+28>>2]=0;else{C=0;while(1){v=C+1|0;if(!(c[w+(C<<2)>>2]|0)){E=v;break}else C=v}C=N4(E<<2)|0;c[A+28>>2]=C;if(!C){n=12;break a}w=c[p>>2]|0;v=c[w>>2]|0;if(!v)F=C;else{B=v;v=C;G=0;while(1){c[v>>2]=B;G=G+1|0;B=c[w+(G<<2)>>2]|0;H=C+(G<<2)|0;if(!B){F=H;break}else v=H}}c[F>>2]=0}v=c[r>>2]|0;if(!v)I=0;else{B=0;while(1)if((c[v+(B<<2)>>2]|0)>-1)B=B+1|0;else{I=B;break}}B=x+12|0;v=c[B>>2]|0;if(!v)J=0;else{G=0;while(1)if((c[v+(G<<2)>>2]|0)>-1)G=G+1|0;else{J=G;break}}G=A+16|0;v=c[G>>2]|0;if(v)O4(v);c[G>>2]=0;v=J+I|0;if((v|0)>0){C=N4((v<<2)+4|0)|0;c[G>>2]=C;if(!C){n=12;break a}G=c[r>>2]|0;if((G|0)!=0?(v=c[G>>2]|0,(v|0)>-1):0){w=v;v=0;while(1){c[C+(v<<2)>>2]=w;H=v+1|0;w=c[G+(H<<2)>>2]|0;if((w|0)<=-1){K=H;break}else v=H}}else K=0;v=c[B>>2]|0;if((v|0)!=0?(w=c[v>>2]|0,(w|0)>-1):0){G=(K|0)>0;H=w;w=0;L=K;while(1){c:do if(G){M=0;while(1){if((c[C+(M<<2)>>2]|0)==(H|0)){N=L;break c}M=M+1|0;if((M|0)>=(K|0)){O=39;break}}}else O=39;while(0);if((O|0)==39){O=0;c[C+(L<<2)>>2]=H;N=L+1|0}w=w+1|0;H=c[v+(w<<2)>>2]|0;if((H|0)<=-1){P=N;break}else L=N}}else P=K;c[C+(P<<2)>>2]=-1}L=x+32|0;H=c[L>>2]|0;if((H|0)>-1){s=L;t=H;u=y}else break}}while(0);j=j+32|0;if((c[j>>2]|0)<=-1){n=0;break}}}else n=0;while(0);return n|0}function I4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=B2(a,0,0,0,8)|0;do if(e){f=h4(a,0,20)|0;if(!f){c[e>>2]=0;g=12;break}h=c[f+4>>2]|0;c[h>>2]=-3;c[h+4>>2]=d;c[h+8>>2]=-1;c[e>>2]=f;f=B2(a,0,0,0,32)|0;c[e+4>>2]=f;if(f){h=b+4|0;c[f+4>>2]=c[h>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;c[f+24>>2]=0;c[f+28>>2]=0;c[f+20>>2]=0;c[h>>2]=e;c[b>>2]=1;g=0}else g=12}else g=12;while(0);return g|0}function J4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[a>>2]|0;if((e|0)>-1){f=c[b+16>>2]|0;b=e;e=0;do{g=(b|0)/2|0;if(!(b&1))c[f+(g*12|0)>>2]=d;else c[f+(g*12|0)+4>>2]=d;e=e+1|0;b=c[a+(e<<2)>>2]|0}while((b|0)>-1)}c[a>>2]=-1;return}function K4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=B2(a,0,0,0,8)|0;do if(e){f=h4(a,0,20)|0;if(!f){c[e+4>>2]=0;g=12;break}h=c[f+4>>2]|0;c[h>>2]=-3;c[h+4>>2]=d;c[h+8>>2]=-1;c[e+4>>2]=f;f=B2(a,0,0,0,32)|0;c[e>>2]=f;if(f){h=b+4|0;c[f+4>>2]=c[h>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;c[f+24>>2]=0;c[f+28>>2]=0;c[f+20>>2]=0;c[h>>2]=e;c[b>>2]=1;g=0}else g=12}else g=12;while(0);return g|0}function L4(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=c[g>>2]|0;i=c[f>>2]|0;if((c[e>>2]|0)>=(i|0))if((i|0)<=1024?(c[f>>2]=i<<1,f=Q4(h,i<<3)|0,(f|0)!=0):0){c[g>>2]=f;j=f;k=5}else l=12;else{j=h;k=5}if((k|0)==5){k=h4(a,0,20)|0;if(!k)m=0;else{a=c[k+4>>2]|0;c[a>>2]=b;c[a+4>>2]=d;c[a+8>>2]=-1;m=k}k=c[e>>2]|0;c[j+(k<<2)>>2]=m;c[e>>2]=k+1;l=(m|0)==0?12:0}return l|0}function M4(a,b){a=a|0;b=b|0;var d=0;d=c[c[(c[a>>2]|0)+4>>2]>>2]|0;a=c[c[(c[b>>2]|0)+4>>2]>>2]|0;return ((d|0)<(a|0)?-1:(d|0)>(a|0)&1)|0} +function CL(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0;j=i;i=i+208|0;k=j+112|0;l=j+104|0;m=j+56|0;n=j;o=j+196|0;p=j+192|0;q=j+188|0;r=j+184|0;s=j+180|0;t=j+176|0;u=j+172|0;v=j+168|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;g=c[24742]|0;f=c[s>>2]|0;e=d[(c[t>>2]|0)+32>>0]|0;w=+h[c[t>>2]>>3];x=+h[(c[t>>2]|0)+8>>3];y=+h[(c[t>>2]|0)+16>>3];z=+h[(c[t>>2]|0)+16+8>>3];c[n>>2]=c[q>>2];c[n+4>>2]=f;c[n+8>>2]=e;h[n+16>>3]=w;h[n+24>>3]=x;h[n+32>>3]=y;h[n+40>>3]=z;Y2(g,141696,n)|0;if((d[138998]|0|0)<2){c[o>>2]=0;A=c[o>>2]|0;i=j;return A|0}Y2(c[24742]|0,141756,j+48|0)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[q>>2]|0))break;c[v>>2]=c[(c[p>>2]|0)+32>>2];n=c[24742]|0;z=+h[c[p>>2]>>3];y=+h[(c[p>>2]|0)+8>>3];x=+h[(c[p>>2]|0)+16>>3];w=+h[(c[p>>2]|0)+16+8>>3];g=c[(c[p>>2]|0)+32>>2]|0;if(c[v>>2]|0)B=c[c[(c[v>>2]|0)+32>>2]>>2]|0;else B=178518;c[m>>2]=c[u>>2];h[m+8>>3]=z;h[m+16>>3]=y;h[m+24>>3]=x;h[m+32>>3]=w;c[m+40>>2]=g;c[m+44>>2]=B;Y2(n,141765,m)|0;c[p>>2]=(c[p>>2]|0)+40;c[u>>2]=(c[u>>2]|0)+1}Y2(c[24742]|0,141808,l)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break;l=c[24742]|0;p=c[r>>2]|0;m=d[(c[r>>2]|0)+36>>0]|0;w=+h[(c[r>>2]|0)+16>>3];x=+h[(c[r>>2]|0)+16+8>>3];y=+h[c[r>>2]>>3];z=+h[(c[r>>2]|0)+8>>3];B=c[c[(c[r>>2]|0)+32>>2]>>2]|0;c[k>>2]=c[u>>2];c[k+4>>2]=p;c[k+8>>2]=m;h[k+16>>3]=w;h[k+24>>3]=x;h[k+32>>3]=y;h[k+40>>3]=z;c[k+48>>2]=B;Y2(l,141817,k)|0;c[r>>2]=(c[r>>2]|0)+40;c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=0;A=c[o>>2]|0;i=j;return A|0}function DL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;e=d+16|0;f=d;c[e>>2]=b;b=(c[e>>2]|0)+16|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];h[f>>3]=+h[f>>3]+ +h[c[e>>2]>>3]/2.0;b=f+8|0;h[b>>3]=+h[b>>3]+ +h[(c[e>>2]|0)+8>>3]/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=d;return}function EL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0.0,k=0.0,l=0.0;e=i;i=i+32|0;f=e+16|0;g=e;c[f>>2]=b;if(+h[d>>3]<+h[c[f>>2]>>3])j=+h[d>>3];else j=+h[c[f>>2]>>3];h[d>>3]=j;if(+h[d+8>>3]<+h[(c[f>>2]|0)+8>>3])k=+h[d+8>>3];else k=+h[(c[f>>2]|0)+8>>3];h[d+8>>3]=k;h[g>>3]=+h[c[f>>2]>>3]+ +h[(c[f>>2]|0)+16>>3];h[g+8>>3]=+h[(c[f>>2]|0)+8>>3]+ +h[(c[f>>2]|0)+16+8>>3];h[d+16>>3]=+h[d+16>>3]>+h[g>>3]?+h[d+16>>3]:+h[g>>3];if(+h[d+16+8>>3]>+h[g+8>>3])l=+h[d+16+8>>3];else l=+h[g+8>>3];h[d+16+8>>3]=l;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];i=e;return}function FL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0;b=i;i=i+32|0;d=b;e=b+24|0;f=b+20|0;g=b+16|0;j=b+12|0;k=b+8|0;l=b+4|0;c[e>>2]=a;a=sO(yA(c[e>>2]|0,143103)|0)|0;c[g>>2]=a;if(!a){c[d>>2]=wB(c[e>>2]|0)|0;$z(0,141865,d)|0;i=b;return}c[j>>2]=LL(c[g>>2]|0)|0;if(!(c[j>>2]|0)){i=b;return}c[k>>2]=c[(c[j>>2]|0)+40>>2];c[l>>2]=c[(c[j>>2]|0)+44>>2];h[(c[(c[e>>2]|0)+8>>2]|0)+32>>3]=+(c[k>>2]|0)/72.0;h[(c[(c[e>>2]|0)+8>>2]|0)+40>>3]=+(c[l>>2]|0)/72.0;g=bK(12)|0;c[f>>2]=g;c[(c[(c[e>>2]|0)+8>>2]|0)+12>>2]=g;c[c[f>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[(c[f>>2]|0)+4>>2]=0-(c[(c[j>>2]|0)+32>>2]|0)-((c[k>>2]|0)/2|0);c[(c[f>>2]|0)+4+4>>2]=0-(c[(c[j>>2]|0)+36>>2]|0)-((c[l>>2]|0)/2|0);i=b;return}function GL(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2]|0)){i=b;return}O4(c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2]|0);i=b;return}function HL(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+64|0;h=g+8|0;j=g;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+48|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;a[t>>0]=1;a:do if(c[l>>2]|0){c[s>>2]=0;while(1){if(!(d[t>>0]|0))break a;f=c[(c[l>>2]|0)+(c[s>>2]<<2)>>2]|0;c[q>>2]=f;if(!f)break a;if(!(a[c[q>>2]>>0]|0))a[t>>0]=0;c[s>>2]=(c[s>>2]|0)+1}}while(0);b:do if(a[t>>0]|0){c[o>>2]=c[m>>2];while(1){if(!(c[c[o>>2]>>2]|0))break b;jF(c[k>>2]|0,c[c[o>>2]>>2]|0)|0;jF(c[k>>2]|0,193392)|0;c[o>>2]=(c[o>>2]|0)+4}}while(0);if(!(c[l>>2]|0)){i=g;return}c[s>>2]=0;while(1){o=c[(c[l>>2]|0)+(c[s>>2]<<2)>>2]|0;c[q>>2]=o;if(!o)break;do if(a[c[q>>2]>>0]|0){c[r>>2]=sO(c[q>>2]|0)|0;if(!(c[r>>2]|0)){c[j>>2]=c[q>>2];$z(0,141914,j)|0;break}o=X2(c[r>>2]|0,176526)|0;c[n>>2]=o;if(!o){c[h>>2]=c[r>>2];$z(0,141942,h)|0;break}while(1){o=rO(c[n>>2]|0)|0;c[p>>2]=o;u=c[k>>2]|0;if(!o)break;jF(u,c[p>>2]|0)|0}jF(u,193392)|0;R2(c[n>>2]|0)|0}while(0);c[s>>2]=(c[s>>2]|0)+1}i=g;return}function IL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+52>>2];a:while(1){if(!(a[c[h>>2]>>0]|0))break;do if((a[c[h>>2]>>0]|0)==37?(a[(c[h>>2]|0)+1>>0]|0)==37:0){if((((O3((c[h>>2]|0)+2|0,141970,3)|0)!=0?(O3((c[h>>2]|0)+2|0,141974,5)|0)!=0:0)?(O3((c[h>>2]|0)+2|0,141980,3)|0)!=0:0)?(O3((c[h>>2]|0)+2|0,141984,7)|0)!=0:0)break;while(1){g=a[c[h>>2]>>0]|0;a[j>>0]=g;if((g<<24>>24|0)!=0?(a[j>>0]|0)!=13:0)k=(a[j>>0]|0)!=10;else k=0;l=c[h>>2]|0;if(!k)break;c[h>>2]=l+1}if((a[l>>0]|0)==13?(a[(c[h>>2]|0)+1>>0]|0)==10:0){c[h>>2]=(c[h>>2]|0)+2;continue a}if(!(a[c[h>>2]>>0]|0))continue a;c[h>>2]=(c[h>>2]|0)+1;continue a}while(0);while(1){g=a[c[h>>2]>>0]|0;a[j>>0]=g;if(!(g<<24>>24))break;if((a[j>>0]|0)==13)break;if((a[j>>0]|0)==10)break;kF(c[f>>2]|0,a[j>>0]|0)|0;c[h>>2]=(c[h>>2]|0)+1}if((a[c[h>>2]>>0]|0)==13?(a[(c[h>>2]|0)+1>>0]|0)==10:0)c[h>>2]=(c[h>>2]|0)+2;else m=26;if((m|0)==26?(m=0,(a[c[h>>2]>>0]|0)!=0):0)c[h>>2]=(c[h>>2]|0)+1;kF(c[f>>2]|0,10)|0}i=e;return}function JL(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+8|0;g=d+4|0;c[f>>2]=b;if(!(c[13985]|0)){i=d;return}c[g>>2]=Hb[c[c[13985]>>2]&63](c[13985]|0,0,128)|0;while(1){if(!(c[g>>2]|0))break;if(!(a[(c[g>>2]|0)+16>>0]|0)){b=c[f>>2]|0;c[e>>2]=c[(c[g>>2]|0)+12>>2];oF(b,141992,e);jF(c[f>>2]|0,142010)|0;IL(c[f>>2]|0,c[g>>2]|0);jF(c[f>>2]|0,142028)|0;jF(c[f>>2]|0,142043)|0}c[g>>2]=Hb[c[c[13985]>>2]&63](c[13985]|0,c[g>>2]|0,8)|0}i=d;return}function KL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;f=e+20|0;g=e+16|0;h=e+12|0;j=e+8|0;k=e+4|0;c[f>>2]=b;c[g>>2]=d;a:do switch(c[g>>2]|0){case 0:{c[j>>2]=c[f>>2];break}case 1:{c[j>>2]=LO(c[f>>2]|0)|0;break}default:switch(ML(c[f>>2]|0)|0){case 0:{c[j>>2]=c[f>>2];break a;break}case 1:{c[j>>2]=LO(c[f>>2]|0)|0;break a;break}case 2:{if(!(c[13986]|0)){$z(0,142055,e)|0;c[13986]=1}c[j>>2]=c[f>>2];break a;break}default:{c[j>>2]=c[f>>2];break a}}}while(0);if(!(c[13987]|0))dA(55948,0,0);if((c[13988]|0)>>>0>=(c[13989]|0)>>>0)eA(55948,1)|0;g=c[13988]|0;c[13988]=g+1;a[g>>0]=40;c[k>>2]=40;c[h>>2]=c[j>>2];while(1){if(!(a[c[h>>2]>>0]|0))break;if(!(((a[c[h>>2]>>0]|0)!=40?(a[c[h>>2]>>0]|0)!=41:0)?(a[c[h>>2]>>0]|0)!=92:0)){if((c[13988]|0)>>>0>=(c[13989]|0)>>>0)eA(55948,1)|0;g=c[13988]|0;c[13988]=g+1;a[g>>0]=92;c[k>>2]=92}if((c[13988]|0)>>>0>=(c[13989]|0)>>>0)eA(55948,1)|0;g=c[h>>2]|0;c[h>>2]=g+1;d=a[g>>0]|0;g=c[13988]|0;c[13988]=g+1;a[g>>0]=d;c[k>>2]=d&255}if((c[13988]|0)>>>0>=(c[13989]|0)>>>0)eA(55948,1)|0;k=c[13988]|0;c[13988]=k+1;a[k>>0]=41;if((c[j>>2]|0)!=(c[f>>2]|0))O4(c[j>>2]|0);if((c[13988]|0)>>>0<(c[13989]|0)>>>0){l=c[13988]|0;m=l+1|0;c[13988]=m;a[l>>0]=0;n=c[13987]|0;c[13988]=n;c[h>>2]=n;o=c[h>>2]|0;i=e;return o|0}eA(55948,1)|0;l=c[13988]|0;m=l+1|0;c[13988]=m;a[l>>0]=0;n=c[13987]|0;c[13988]=n;c[h>>2]=n;o=c[h>>2]|0;i=e;return o|0}function LL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=i;i=i+1184|0;e=d+24|0;f=d+8|0;g=d;h=d+148|0;j=d+144|0;k=d+140|0;l=d+152|0;m=d+136|0;n=d+60|0;o=d+56|0;p=d+52|0;q=d+48|0;r=d+44|0;s=d+40|0;t=d+36|0;u=d+32|0;v=d+28|0;c[j>>2]=b;if(!(c[13985]|0))c[13985]=Nz(55964,c[12989]|0)|0;c[v>>2]=Hb[c[c[13985]>>2]&63](c[13985]|0,c[j>>2]|0,512)|0;if(c[v>>2]|0){c[h>>2]=c[v>>2];w=c[h>>2]|0;i=d;return w|0}b=X2(c[j>>2]|0,176526)|0;c[m>>2]=b;if(!b){c[g>>2]=c[j>>2];$z(0,142145,g)|0;c[h>>2]=0;w=c[h>>2]|0;i=d;return w|0}c[p>>2]=0;c[o>>2]=0;do{if(!(V2(l,1024,c[m>>2]|0)|0))break;c[f>>2]=r;c[f+4>>2]=s;c[f+8>>2]=t;c[f+12>>2]=u;if((l3(l,142173,f)|0)==4)c[o>>2]=1;if((a[l>>0]|0)!=37?(U3(l,142202)|0)!=0:0)c[p>>2]=1}while(!((c[o>>2]|0)!=0&(c[p>>2]|0)!=0));if(c[o>>2]|0){c[v>>2]=cK(64)|0;c[(c[v>>2]|0)+32>>2]=c[r>>2];c[(c[v>>2]|0)+36>>2]=c[s>>2];c[(c[v>>2]|0)+40>>2]=(c[t>>2]|0)-(c[r>>2]|0);c[(c[v>>2]|0)+36>>2]=(c[u>>2]|0)-(c[s>>2]|0);c[(c[v>>2]|0)+8>>2]=c[j>>2];s=c[14e3]|0;c[14e3]=s+1;c[(c[v>>2]|0)+12>>2]=s;C2(W2(c[m>>2]|0)|0,n)|0;s=cK((c[n+36>>2]|0)+1|0)|0;c[(c[v>>2]|0)+52>>2]=s;c[k>>2]=s;c3(c[m>>2]|0,0,0)|0;c[q>>2]=$2(c[k>>2]|0,c[n+36>>2]|0,1,c[m>>2]|0)|0;a[(c[k>>2]|0)+(c[n+36>>2]|0)>>0]=0;Hb[c[c[13985]>>2]&63](c[13985]|0,c[v>>2]|0,1)|0;a[(c[v>>2]|0)+16>>0]=c[p>>2]}else{c[e>>2]=c[j>>2];$z(0,142207,e)|0;c[v>>2]=0}R2(c[m>>2]|0)|0;c[h>>2]=c[v>>2];w=c[h>>2]|0;i=d;return w|0}function ML(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;j=e+12|0;c[g>>2]=b;c[h>>2]=0;while(1){b=c[g>>2]|0;c[g>>2]=b+1;k=a[b>>0]|0;a[j>>0]=k;if(!(k<<24>>24)){l=7;break}if((d[j>>0]|0|0)<127)continue;if(((d[j>>0]|0)&252|0)!=192){l=6;break}c[h>>2]=1;c[g>>2]=(c[g>>2]|0)+1}if((l|0)==6){c[f>>2]=2;m=c[f>>2]|0;i=e;return m|0}else if((l|0)==7){c[f>>2]=c[h>>2];m=c[f>>2]|0;i=e;return m|0}return 0}function NL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e+4|0;c[e+8>>2]=a;c[f>>2]=b;c[e>>2]=d;O4(c[(c[f>>2]|0)+52>>2]|0);i=e;return}function OL(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+112|0;j=g+104|0;k=g+96|0;l=g+92|0;m=g+88|0;n=g+80|0;o=g+72|0;p=g+32|0;q=g;r=g+64|0;c[l>>2]=e;c[m>>2]=f;h[p>>3]=+h[a>>3];h[p+8>>3]=+h[a+8>>3];h[p+16>>3]=+h[b>>3];h[p+16+8>>3]=+h[b+8>>3];if((NX(d,p,n)|0)<0){c[k>>2]=0;s=c[k>>2]|0;i=g;return s|0}if(!(c[m>>2]|0)){if((c[d+4>>2]|0)>(c[14001]|0)){if(c[14002]|0)t=eK(c[14002]|0,c[d+4>>2]<<5)|0;else t=cK(c[d+4>>2]<<5)|0;c[14002]=t;c[14001]=c[d+4>>2]}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[d+4>>2]|0))break;t=(c[14002]|0)+(c[r>>2]<<5)|0;m=(c[d>>2]|0)+(c[r>>2]<<4)|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];m=(c[14002]|0)+(c[r>>2]<<5)+16|0;t=(c[d>>2]|0)+((((c[r>>2]|0)+1|0)%(c[d+4>>2]|0)|0)<<4)|0;c[m>>2]=c[t>>2];c[m+4>>2]=c[t+4>>2];c[m+8>>2]=c[t+8>>2];c[m+12>>2]=c[t+12>>2];c[r>>2]=(c[r>>2]|0)+1}h[q+8>>3]=0.0;h[q>>3]=0.0;h[q+16+8>>3]=0.0;h[q+16>>3]=0.0;t=c[14002]|0;m=c[d+4>>2]|0;c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];if((rX(t,m,j,q,o)|0)<0){c[k>>2]=0;s=c[k>>2]|0;i=g;return s|0}}else{c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];iY(j,o)}if(VL(c[o+4>>2]|0)|0){c[k>>2]=0;s=c[k>>2]|0;i=g;return s|0}c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[o+4>>2]|0))break;j=(c[14003]|0)+(c[r>>2]<<4)|0;n=(c[o>>2]|0)+(c[r>>2]<<4)|0;c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];c[r>>2]=(c[r>>2]|0)+1}c[c[l>>2]>>2]=c[o+4>>2];c[k>>2]=c[14003];s=c[k>>2]|0;i=g;return s|0}function PL(){var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;e=b+4|0;f=(c[14004]|0)+1|0;c[14004]=f;do if((f|0)>1)c[e>>2]=0;else{g=cK(4800)|0;c[14003]=g;if(!g){$z(1,142246,d)|0;c[e>>2]=1;break}c[14005]=300;c[14006]=0;c[14007]=0;if(a[138998]|0)_N();c[e>>2]=0}while(0);i=b;return c[e>>2]|0}function QL(){var b=0,d=0,e=0,f=0,g=0,j=0.0;b=i;i=i+16|0;d=b;e=(c[14004]|0)+-1|0;c[14004]=e;if((e|0)>0){i=b;return}O4(c[14003]|0);if(!(a[138998]|0)){i=b;return}e=c[24742]|0;f=c[14006]|0;g=c[14007]|0;j=+$N();c[d>>2]=f;c[d+4>>2]=g;h[d+8>>3]=j;Y2(e,142284,d)|0;i=b;return}function RL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=WL(c[e>>2]|0,c[f>>2]|0,0)|0;i=d;return b|0}function SL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=WL(c[e>>2]|0,c[f>>2]|0,1)|0;i=d;return b|0}function TL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+112|0;g=f+108|0;h=f+104|0;j=f+100|0;k=f+96|0;l=f+92|0;m=f+88|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[p>>2]=1;c[l>>2]=c[h>>2];while(1){e=c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2]|0;c[l>>2]=e;q=c[p>>2]|0;if(!e)break;c[p>>2]=q+1}if((q|0)<=20)c[m>>2]=n;else c[m>>2]=bK(c[p>>2]<<2)|0;c[l>>2]=c[h>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]=c[l>>2];c[l>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+172>>2];c[o>>2]=(c[o>>2]|0)+1}UL(c[g>>2]|0,c[m>>2]|0,c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);if((c[p>>2]|0)<=20){i=f;return}O4(c[m>>2]|0);i=f;return}function UL(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;j=i;i=i+416|0;k=j+328|0;l=j+312|0;m=j+412|0;n=j+408|0;o=j+404|0;p=j+400|0;q=j+396|0;r=j+248|0;s=j+392|0;t=j+388|0;u=j+384|0;v=j+232|0;w=j+216|0;x=j+380|0;y=j+376|0;z=j+372|0;A=j+368|0;B=j+364|0;C=j+360|0;D=j+208|0;E=j+144|0;F=j+128|0;G=j+112|0;H=j+96|0;I=j+80|0;J=j+64|0;K=j;L=j+352|0;M=j+344|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[u>>2]=(c[p>>2]|0)==4&1;c[y>>2]=c[c[n>>2]>>2];g=c[y>>2]|0;c[s>>2]=c[((c[c[y>>2]>>2]&3|0)==3?g:g+32|0)+28>>2];g=c[y>>2]|0;c[t>>2]=c[((c[c[y>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2];g=r+16|0;f=(c[(c[s>>2]|0)+8>>2]|0)+16|0;s=(c[(c[y>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[k>>2]=c[s>>2];c[k+4>>2]=c[s+4>>2];c[k+8>>2]=c[s+8>>2];c[k+12>>2]=c[s+12>>2];XL(H,l,k);c[r>>2]=c[H>>2];c[r+4>>2]=c[H+4>>2];c[r+8>>2]=c[H+8>>2];c[r+12>>2]=c[H+12>>2];c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];g=r+32|0;H=r+48|0;s=(c[(c[t>>2]|0)+8>>2]|0)+16|0;f=(c[(c[y>>2]|0)+8>>2]|0)+56|0;c[l>>2]=c[s>>2];c[l+4>>2]=c[s+4>>2];c[l+8>>2]=c[s+8>>2];c[l+12>>2]=c[s+12>>2];c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];XL(I,l,k);c[H>>2]=c[I>>2];c[H+4>>2]=c[I+4>>2];c[H+8>>2]=c[I+8>>2];c[H+12>>2]=c[I+12>>2];c[g>>2]=c[H>>2];c[g+4>>2]=c[H+4>>2];c[g+8>>2]=c[H+8>>2];c[g+12>>2]=c[H+12>>2];c[G>>2]=c[g>>2];c[G+4>>2]=c[g+4>>2];c[G+8>>2]=c[g+8>>2];c[G+12>>2]=c[g+12>>2];if((c[o>>2]|0)!=1?(d[139e3]|0|0)==0:0){c[x>>2]=c[y>>2];if((+h[r>>3]-+h[r+48>>3])*(+h[r>>3]-+h[r+48>>3])+(+h[r+8>>3]-+h[r+48+8>>3])*(+h[r+8>>3]-+h[r+48+8>>3])<1.0e-06){g=r+16|0;c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];g=r+32|0;H=r+48|0;c[g>>2]=c[H>>2];c[g+4>>2]=c[H+4>>2];c[g+8>>2]=c[H+8>>2];c[g+12>>2]=c[H+12>>2];h[w>>3]=0.0;h[w+8>>3]=0.0}else{h[v>>3]=+h[r+8>>3]-+h[r+48+8>>3];h[v+8>>3]=+h[r+48>>3]-+h[r>>3];h[D>>3]=+O(+(+h[v>>3]*+h[v>>3]+ +h[v+8>>3]*+h[v+8>>3]));c[B>>2]=c[(c[(c[(c[m>>2]|0)+48>>2]|0)+8>>2]|0)+248>>2];c[C>>2]=(_(c[B>>2]|0,(c[o>>2]|0)-1|0)|0)/2|0;h[r+16>>3]=+h[r>>3]+ +(c[C>>2]|0)*+h[v>>3]/+h[D>>3];h[r+16+8>>3]=+h[r+8>>3]+ +(c[C>>2]|0)*+h[v+8>>3]/+h[D>>3];h[r+32>>3]=+h[r+48>>3]+ +(c[C>>2]|0)*+h[v>>3]/+h[D>>3];h[r+32+8>>3]=+h[r+48+8>>3]+ +(c[C>>2]|0)*+h[v+8>>3]/+h[D>>3];h[w>>3]=+(0-(c[B>>2]|0)|0)*+h[v>>3]/+h[D>>3];h[w+8>>3]=+(0-(c[B>>2]|0)|0)*+h[v+8>>3]/+h[D>>3]}c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[o>>2]|0))break;c[x>>2]=c[(c[n>>2]|0)+(c[z>>2]<<2)>>2];D=c[x>>2]|0;a:do if((c[((c[c[x>>2]>>2]&3|0)==2?D:D+-32|0)+28>>2]|0)==(c[t>>2]|0)){c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];c[F+8>>2]=c[r+8>>2];c[F+12>>2]=c[r+12>>2];v=r+48|0;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[G+8>>2]=c[v+8>>2];c[G+12>>2]=c[v+12>>2];c[A>>2]=0;while(1){if((c[A>>2]|0)>=4)break a;v=E+(c[A>>2]<<4)|0;B=r+(c[A>>2]<<4)|0;c[v>>2]=c[B>>2];c[v+4>>2]=c[B+4>>2];c[v+8>>2]=c[B+8>>2];c[v+12>>2]=c[B+12>>2];c[A>>2]=(c[A>>2]|0)+1}}else{B=r+48|0;c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];c[F+8>>2]=c[B+8>>2];c[F+12>>2]=c[B+12>>2];c[G>>2]=c[r>>2];c[G+4>>2]=c[r+4>>2];c[G+8>>2]=c[r+8>>2];c[G+12>>2]=c[r+12>>2];c[A>>2]=0;while(1){if((c[A>>2]|0)>=4)break a;B=E+(3-(c[A>>2]|0)<<4)|0;v=r+(c[A>>2]<<4)|0;c[B>>2]=c[v>>2];c[B+4>>2]=c[v+4>>2];c[B+8>>2]=c[v+8>>2];c[B+12>>2]=c[v+12>>2];c[A>>2]=(c[A>>2]|0)+1}}while(0);if((c[p>>2]|0)==6){c[M+4>>2]=4;c[M>>2]=K;c[A>>2]=0;while(1){if((c[A>>2]|0)>=4)break;D=K+(c[A>>2]<<4)|0;v=E+(c[A>>2]<<4)|0;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];c[D+8>>2]=c[v+8>>2];c[D+12>>2]=c[v+12>>2];c[A>>2]=(c[A>>2]|0)+1}c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>>2];iY(k,L);v=c[x>>2]|0;jN(c[x>>2]|0,c[((c[c[x>>2]>>2]&3|0)==2?v:v+-32|0)+28>>2]|0,c[L>>2]|0,c[L+4>>2]|0,c[q>>2]|0)}else{v=c[x>>2]|0;jN(c[x>>2]|0,c[((c[c[x>>2]>>2]&3|0)==2?v:v+-32|0)+28>>2]|0,E,4,c[q>>2]|0)}v=c[m>>2]|0;D=c[x>>2]|0;c[l>>2]=c[F>>2];c[l+4>>2]=c[F+4>>2];c[l+8>>2]=c[F+8>>2];c[l+12>>2]=c[F+12>>2];c[k>>2]=c[G>>2];c[k+4>>2]=c[G+4>>2];c[k+8>>2]=c[G+8>>2];c[k+12>>2]=c[G+12>>2];sN(v,D,l,k);D=r+16|0;h[D>>3]=+h[D>>3]+ +h[w>>3];D=r+16+8|0;h[D>>3]=+h[D>>3]+ +h[w+8>>3];D=r+32|0;h[D>>3]=+h[D>>3]+ +h[w>>3];D=r+32+8|0;h[D>>3]=+h[D>>3]+ +h[w+8>>3];c[z>>2]=(c[z>>2]|0)+1}i=j;return}if(c[u>>2]|0){YL(J,c[m>>2]|0);c[k>>2]=c[J>>2];c[k+4>>2]=c[J+4>>2];c[k+8>>2]=c[J+8>>2];c[k+12>>2]=c[J+12>>2];ZL(r,k)}J=c[y>>2]|0;jN(c[y>>2]|0,c[((c[c[y>>2]>>2]&3|0)==2?J:J+-32|0)+28>>2]|0,r,4,c[q>>2]|0);q=c[m>>2]|0;m=c[y>>2]|0;c[l>>2]=c[F>>2];c[l+4>>2]=c[F+4>>2];c[l+8>>2]=c[F+8>>2];c[l+12>>2]=c[F+12>>2];c[k>>2]=c[G>>2];c[k+4>>2]=c[G+4>>2];c[k+8>>2]=c[G+8>>2];c[k+12>>2]=c[G+12>>2];sN(q,m,l,k);i=j;return}function VL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[f>>2]=a;do if((c[f>>2]|0)>(c[14005]|0)){c[g>>2]=(c[14005]|0)+((((c[f>>2]|0)/300|0)+1|0)*300|0);c[14003]=eK(c[14003]|0,c[g>>2]<<4)|0;if(c[14003]|0){c[14005]=c[g>>2];break}$z(1,143046,d)|0;c[e>>2]=1;h=c[e>>2]|0;i=b;return h|0}while(0);c[e>>2]=0;h=c[e>>2]|0;i=b;return h|0}function WL(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,S=0,T=0,U=0,V=0,W=0.0,X=0;g=i;i=i+272|0;j=g+248|0;k=g+136|0;l=g+128|0;m=g+120|0;n=g+112|0;o=g+96|0;p=g+80|0;q=g+72|0;r=g+244|0;s=g+240|0;t=g+236|0;u=g+232|0;v=g+224|0;w=g+216|0;x=g+208|0;y=g+204|0;z=g+40|0;A=g+8|0;B=g+200|0;C=g+196|0;D=g+192|0;E=g+188|0;F=g+184|0;G=g+180|0;H=g+176|0;I=g+172|0;J=g+168|0;K=g+164|0;L=g+160|0;M=g+256|0;N=g;O=g+156|0;P=g+152|0;S=g+144|0;c[s>>2]=b;c[t>>2]=e;c[u>>2]=f;c[L>>2]=10;c[14006]=(c[14006]|0)+1;c[14007]=(c[14007]|0)+(c[(c[s>>2]|0)+80>>2]|0);c[I>>2]=c[(c[s>>2]|0)+88>>2];while(1){if(!(c[I>>2]|0))break;if(!(a[(c[(c[I>>2]|0)+8>>2]|0)+112>>0]|0))break;c[I>>2]=c[(c[(c[I>>2]|0)+8>>2]|0)+116>>2]}if(!(c[I>>2]|0)){$z(1,142327,q)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}c[G>>2]=c[(c[s>>2]|0)+84>>2];c[H>>2]=c[(c[s>>2]|0)+80>>2];if(_L(c[H>>2]|0,c[G>>2]|0,c[s>>2]|0)|0){c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}if((c[H>>2]<<3|0)>(c[14008]|0)){if(c[14009]|0)U=eK(c[14009]|0,c[H>>2]<<3<<4)|0;else U=cK(c[H>>2]<<3<<4)|0;c[14009]=U;c[14008]=c[H>>2]<<3}a:do if((c[H>>2]|0)>1?+h[(c[G>>2]|0)+8>>3]>+h[(c[G>>2]|0)+32+8>>3]:0){c[J>>2]=1;c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break a;h[N>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]*-1.0;h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]=-+h[N>>3];c[F>>2]=(c[F>>2]|0)+1}}else V=19;while(0);if((V|0)==19)c[J>>2]=0;N=c[I>>2]|0;U=c[I>>2]|0;if((c[((c[c[I>>2]>>2]&3|0)==3?N:N+32|0)+28>>2]|0)==(c[((c[c[I>>2]>>2]&3|0)==2?U:U+-32|0)+28>>2]|0)){U=c[I>>2]|0;c[n>>2]=wB(c[((c[c[I>>2]>>2]&3|0)==2?U:U+-32|0)+28>>2]|0)|0;$z(1,142434,n)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}c[F>>2]=0;c[E>>2]=0;b:while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;c[C>>2]=0;c[D>>2]=0;if((c[F>>2]|0)>0)c[C>>2]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]>+h[(c[G>>2]|0)+((c[F>>2]|0)-1<<5)+8>>3]?-1:1;if((c[F>>2]|0)<((c[H>>2]|0)-1|0))c[D>>2]=+h[(c[G>>2]|0)+((c[F>>2]|0)+1<<5)+8>>3]>+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]?1:-1;do if((c[C>>2]|0)!=(c[D>>2]|0)){n=(c[G>>2]|0)+(c[F>>2]<<5)|0;if((c[D>>2]|0)==-1|(c[C>>2]|0)==1){h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[n>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];U=c[E>>2]|0;c[E>>2]=U+1;h[(c[14009]|0)+(U<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];U=c[E>>2]|0;c[E>>2]=U+1;h[(c[14009]|0)+(U<<4)+8>>3]=W;break}else{h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[n+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;break}}else if(c[C>>2]|0)if((c[C>>2]|0)==-1&(c[D>>2]|0)==-1)break;else{V=34;break b}else{h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;break}while(0);c[F>>2]=(c[F>>2]|0)+1}if((V|0)==34){n=c[D>>2]|0;c[p>>2]=c[C>>2];c[p+4>>2]=n;c[p+8>>2]=480;$z(1,142369,p)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}c[F>>2]=(c[H>>2]|0)-1;c:while(1){if((c[F>>2]|0)<0)break;c[C>>2]=0;c[D>>2]=0;if((c[F>>2]|0)<((c[H>>2]|0)-1|0))c[C>>2]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]>+h[(c[G>>2]|0)+((c[F>>2]|0)+1<<5)+8>>3]?-1:1;if((c[F>>2]|0)>0)c[D>>2]=+h[(c[G>>2]|0)+((c[F>>2]|0)-1<<5)+8>>3]>+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]?1:-1;do if((c[C>>2]|0)!=(c[D>>2]|0)){p=(c[G>>2]|0)+(c[F>>2]<<5)|0;if((c[D>>2]|0)==-1|(c[C>>2]|0)==1){h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[p>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];n=c[E>>2]|0;c[E>>2]=n+1;h[(c[14009]|0)+(n<<4)+8>>3]=W;break}else{h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[p+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;break}}else{if(!(c[C>>2]|0)){h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;break}if(!((c[C>>2]|0)==-1&(c[D>>2]|0)==-1)){V=49;break c}h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W;h[(c[14009]|0)+(c[E>>2]<<4)>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3];W=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3];p=c[E>>2]|0;c[E>>2]=p+1;h[(c[14009]|0)+(p<<4)+8>>3]=W}while(0);c[F>>2]=(c[F>>2]|0)+-1}if((V|0)==49){p=c[D>>2]|0;c[o>>2]=c[C>>2];c[o+4>>2]=p;c[o+8>>2]=513;$z(1,142369,o)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}d:do if(c[J>>2]|0){c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;c[P>>2]=~~+h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3];h[(c[G>>2]|0)+(c[F>>2]<<5)+16+8>>3]=+h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]*-1.0;h[(c[G>>2]|0)+(c[F>>2]<<5)+8>>3]=+(0-(c[P>>2]|0)|0);c[F>>2]=(c[F>>2]|0)+1}c[O>>2]=0;while(1){if((c[O>>2]|0)>=(c[E>>2]|0))break d;o=(c[14009]|0)+(c[O>>2]<<4)+8|0;h[o>>3]=+h[o>>3]*-1.0;c[O>>2]=(c[O>>2]|0)+1}}while(0);c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;h[(c[G>>2]|0)+(c[F>>2]<<5)>>3]=2147483647.0;h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3]=-2147483648.0;c[F>>2]=(c[F>>2]|0)+1}c[v>>2]=c[14009];c[v+4>>2]=c[E>>2];h[z>>3]=+h[c[s>>2]>>3];h[z+8>>3]=+h[(c[s>>2]|0)+8>>3];h[z+16>>3]=+h[(c[s>>2]|0)+40>>3];h[z+16+8>>3]=+h[(c[s>>2]|0)+40+8>>3];if((NX(v,z,w)|0)<0){$z(1,142473,m)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}if(!(c[u>>2]|0)){if((c[v+4>>2]|0)>(c[14001]|0)){if(c[14002]|0)X=eK(c[14002]|0,c[v+4>>2]<<5)|0;else X=cK(c[v+4>>2]<<5)|0;c[14002]=X;c[14001]=c[v+4>>2]}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[v+4>>2]|0))break;X=(c[14002]|0)+(c[B>>2]<<5)|0;u=(c[14009]|0)+(c[B>>2]<<4)|0;c[X>>2]=c[u>>2];c[X+4>>2]=c[u+4>>2];c[X+8>>2]=c[u+8>>2];c[X+12>>2]=c[u+12>>2];u=(c[14002]|0)+(c[B>>2]<<5)+16|0;X=(c[14009]|0)+((((c[B>>2]|0)+1|0)%(c[v+4>>2]|0)|0)<<4)|0;c[u>>2]=c[X>>2];c[u+4>>2]=c[X+4>>2];c[u+8>>2]=c[X+8>>2];c[u+12>>2]=c[X+12>>2];c[B>>2]=(c[B>>2]|0)+1}if(a[(c[s>>2]|0)+29>>0]|0){h[A>>3]=+Q(+(+h[(c[s>>2]|0)+16>>3]));h[A+8>>3]=+R(+(+h[(c[s>>2]|0)+16>>3]))}else{h[A+8>>3]=0.0;h[A>>3]=0.0}if(a[(c[s>>2]|0)+40+29>>0]|0){h[A+16>>3]=-+Q(+(+h[(c[s>>2]|0)+40+16>>3]));h[A+16+8>>3]=-+R(+(+h[(c[s>>2]|0)+40+16>>3]))}else{h[A+16+8>>3]=0.0;h[A+16>>3]=0.0}s=c[14002]|0;B=c[v+4>>2]|0;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];if((rX(s,B,j,A,x)|0)<0){$z(1,142512,l)|0;c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}}else{c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];iY(j,x)}if(VL(c[x+4>>2]|0)|0){c[r>>2]=0;T=c[r>>2]|0;i=g;return T|0}c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;h[(c[G>>2]|0)+(c[F>>2]<<5)>>3]=2147483647.0;h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3]=-2147483648.0;c[F>>2]=(c[F>>2]|0)+1}a[M>>0]=1;c[y>>2]=0;while(1){if((c[y>>2]|0)>=(c[x+4>>2]|0))break;l=(c[14003]|0)+(c[y>>2]<<4)|0;A=(c[x>>2]|0)+(c[y>>2]<<4)|0;c[l>>2]=c[A>>2];c[l+4>>2]=c[A+4>>2];c[l+8>>2]=c[A+8>>2];c[l+12>>2]=c[A+12>>2];c[y>>2]=(c[y>>2]|0)+1}c[K>>2]=0;while(1){if(!((d[M>>0]|0)!=0?(c[K>>2]|0)<15:0))break;$L(c[G>>2]|0,c[H>>2]|0,c[14003]|0,c[x+4>>2]|0,c[L>>2]|0);c[F>>2]=0;while(1){if((c[F>>2]|0)>=(c[H>>2]|0))break;if(+h[(c[G>>2]|0)+(c[F>>2]<<5)>>3]==2147483647.0){V=97;break}if(+h[(c[G>>2]|0)+(c[F>>2]<<5)+16>>3]==-2147483648.0){V=97;break}c[F>>2]=(c[F>>2]|0)+1}if((V|0)==97?(V=0,c[L>>2]=c[L>>2]<<1,(c[L>>2]|0)>(2147483647/(c[H>>2]|0)|0|0)):0)c[K>>2]=15;if((c[F>>2]|0)==(c[H>>2]|0))a[M>>0]=0;c[K>>2]=(c[K>>2]|0)+1}if(a[M>>0]|0){M=c[I>>2]|0;K=wB(c[((c[c[I>>2]>>2]&3|0)==3?M:M+32|0)+28>>2]|0)|0;M=c[I>>2]|0;F=wB(c[((c[c[I>>2]>>2]&3|0)==2?M:M+-32|0)+28>>2]|0)|0;c[k>>2]=K;c[k+4>>2]=F;$z(0,142550,k)|0;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];iY(j,S);$L(c[G>>2]|0,c[H>>2]|0,c[S>>2]|0,c[S+4>>2]|0,10);O4(c[S>>2]|0)}c[c[t>>2]>>2]=c[x+4>>2];c[r>>2]=c[14003];T=c[r>>2]|0;i=g;return T|0}function XL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function YL(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=b;c[d>>2]=0;h[4264]=(+h[(c[(c[e>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+16+16>>3])/2.0;h[4265]=(+h[(c[(c[e>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[e>>2]|0)+8>>2]|0)+16+16+8>>3])/2.0;c[a>>2]=c[8528];c[a+4>>2]=c[8529];c[a+8>>2]=c[8530];c[a+12>>2]=c[8531];i=d;return}function ZL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;d=i;i=i+96|0;e=d+88|0;f=d+72|0;g=d+56|0;j=d+48|0;k=d+40|0;l=d+32|0;m=d+24|0;n=d+16|0;o=d+8|0;p=d;c[e>>2]=a;h[f>>3]=(+h[c[e>>2]>>3]+ +h[(c[e>>2]|0)+48>>3])/2.0;h[f+8>>3]=(+h[(c[e>>2]|0)+8>>3]+ +h[(c[e>>2]|0)+48+8>>3])/2.0;h[l>>3]=+h[(c[e>>2]|0)+48>>3]-+h[c[e>>2]>>3];h[m>>3]=+h[(c[e>>2]|0)+48+8>>3]-+h[(c[e>>2]|0)+8>>3];h[k>>3]=+O(+(+h[l>>3]*+h[l>>3]+ +h[m>>3]*+h[m>>3]));h[j>>3]=+h[k>>3]/5.0;h[n>>3]=+h[b>>3]-+h[f>>3];h[o>>3]=+h[b+8>>3]-+h[f+8>>3];h[p>>3]=+O(+(+h[n>>3]*+h[n>>3]+ +h[o>>3]*+h[o>>3]));h[g>>3]=+h[f>>3]-+h[n>>3]/+h[p>>3]*+h[j>>3];h[g+8>>3]=+h[f+8>>3]-+h[o>>3]/+h[p>>3]*+h[j>>3];q=+h[g>>3];h[(c[e>>2]|0)+32>>3]=q;h[(c[e>>2]|0)+16>>3]=q;q=+h[g+8>>3];h[(c[e>>2]|0)+32+8>>3]=q;h[(c[e>>2]|0)+16+8>>3]=q;i=d;return}function _L(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0,G=0;g=i;i=i+112|0;j=g+32|0;k=g+24|0;l=g+16|0;m=g+8|0;n=g;o=g+96|0;p=g+92|0;q=g+88|0;r=g+84|0;s=g+80|0;t=g+76|0;u=g+72|0;v=g+68|0;w=g+64|0;x=g+60|0;y=g+56|0;z=g+52|0;A=g+48|0;B=g+44|0;C=g+40|0;D=g+36|0;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;c[v>>2]=0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[p>>2]|0))break;E=+h[(c[q>>2]|0)+(c[u>>2]<<5)+8>>3]-+h[(c[q>>2]|0)+(c[u>>2]<<5)+16+8>>3];if(!((+h[(c[q>>2]|0)+(c[u>>2]<<5)+8>>3]-+h[(c[q>>2]|0)+(c[u>>2]<<5)+16+8>>3]>=0.0?E:-E)<.01)?(E=+h[(c[q>>2]|0)+(c[u>>2]<<5)>>3]-+h[(c[q>>2]|0)+(c[u>>2]<<5)+16>>3],!((+h[(c[q>>2]|0)+(c[u>>2]<<5)>>3]-+h[(c[q>>2]|0)+(c[u>>2]<<5)+16>>3]>=0.0?E:-E)<.01)):0){if((c[v>>2]|0)!=(c[u>>2]|0)){f=(c[q>>2]|0)+(c[v>>2]<<5)|0;e=(c[q>>2]|0)+(c[u>>2]<<5)|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2];c[f+28>>2]=c[e+28>>2]}c[v>>2]=(c[v>>2]|0)+1}c[u>>2]=(c[u>>2]|0)+1}c[p>>2]=c[v>>2];c[s>>2]=c[q>>2];if(!(+h[c[s>>2]>>3]>+h[(c[s>>2]|0)+16>>3])?!(+h[(c[s>>2]|0)+8>>3]>+h[(c[s>>2]|0)+16+8>>3]):0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=((c[p>>2]|0)-1|0))break;c[s>>2]=(c[q>>2]|0)+(c[u>>2]<<5);c[t>>2]=(c[q>>2]|0)+((c[u>>2]|0)+1<<5);if(+h[c[t>>2]>>3]>+h[(c[t>>2]|0)+16>>3]){F=16;break}if(+h[(c[t>>2]|0)+8>>3]>+h[(c[t>>2]|0)+16+8>>3]){F=16;break}c[x>>2]=+h[(c[s>>2]|0)+16>>3]<+h[c[t>>2]>>3]?1:0;c[y>>2]=+h[c[s>>2]>>3]>+h[(c[t>>2]|0)+16>>3]?1:0;c[z>>2]=+h[(c[s>>2]|0)+16+8>>3]<+h[(c[t>>2]|0)+8>>3]?1:0;c[A>>2]=+h[(c[s>>2]|0)+8>>3]>+h[(c[t>>2]|0)+16+8>>3]?1:0;c[w>>2]=(c[x>>2]|0)+(c[y>>2]|0)+(c[z>>2]|0)+(c[A>>2]|0);if((c[w>>2]|0)>0?(d[138998]|0)!=0:0){e=c[24742]|0;f=(c[u>>2]|0)+1|0;c[l>>2]=c[u>>2];c[l+4>>2]=f;Y2(e,142750,l)|0;aM(c[r>>2]|0)}a:do if((c[w>>2]|0)>0){do if((c[x>>2]|0)!=1){if((c[y>>2]|0)==1){c[D>>2]=~~+h[c[s>>2]>>3];h[c[s>>2]>>3]=+h[(c[t>>2]|0)+16>>3];h[(c[t>>2]|0)+16>>3]=+(c[D>>2]|0);c[y>>2]=0;break}if((c[z>>2]|0)==1){c[D>>2]=~~+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[t>>2]|0)+8>>3];h[(c[t>>2]|0)+8>>3]=+(c[D>>2]|0);c[z>>2]=0;break}if((c[A>>2]|0)==1){c[D>>2]=~~+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[t>>2]|0)+16+8>>3];h[(c[t>>2]|0)+16+8>>3]=+(c[D>>2]|0);c[A>>2]=0}}else{c[D>>2]=~~+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+16>>3]=+h[c[t>>2]>>3];h[c[t>>2]>>3]=+(c[D>>2]|0);c[x>>2]=0}while(0);c[v>>2]=0;while(1){if((c[v>>2]|0)>=((c[w>>2]|0)-1|0))break a;do if((c[x>>2]|0)!=1){if((c[y>>2]|0)==1){c[D>>2]=~~((+h[c[s>>2]>>3]+ +h[(c[t>>2]|0)+16>>3])/2.0+.5);E=+(c[D>>2]|0);h[(c[t>>2]|0)+16>>3]=E;h[c[s>>2]>>3]=E;c[y>>2]=0;break}if((c[z>>2]|0)==1){c[D>>2]=~~((+h[(c[s>>2]|0)+16+8>>3]+ +h[(c[t>>2]|0)+8>>3])/2.0+.5);E=+(c[D>>2]|0);h[(c[t>>2]|0)+8>>3]=E;h[(c[s>>2]|0)+16+8>>3]=E;c[z>>2]=0;break}if((c[A>>2]|0)==1){c[D>>2]=~~((+h[(c[s>>2]|0)+8>>3]+ +h[(c[t>>2]|0)+16+8>>3])/2.0+.5);E=+(c[D>>2]|0);h[(c[t>>2]|0)+16+8>>3]=E;h[(c[s>>2]|0)+8>>3]=E;c[A>>2]=0}}else{c[D>>2]=~~((+h[(c[s>>2]|0)+16>>3]+ +h[c[t>>2]>>3])/2.0+.5);E=+(c[D>>2]|0);h[c[t>>2]>>3]=E;h[(c[s>>2]|0)+16>>3]=E;c[x>>2]=0}while(0);c[v>>2]=(c[v>>2]|0)+1}}while(0);c[B>>2]=bM(~~+h[c[s>>2]>>3],~~+h[(c[s>>2]|0)+16>>3],~~+h[c[t>>2]>>3],~~+h[(c[t>>2]|0)+16>>3])|0;c[C>>2]=bM(~~+h[(c[s>>2]|0)+8>>3],~~+h[(c[s>>2]|0)+16+8>>3],~~+h[(c[t>>2]|0)+8>>3],~~+h[(c[t>>2]|0)+16+8>>3])|0;do if((c[B>>2]|0)!=0&(c[C>>2]|0)!=0){e=(c[s>>2]|0)+16|0;if((c[B>>2]|0)<(c[C>>2]|0)){f=+h[(c[s>>2]|0)+16>>3]<+h[(c[t>>2]|0)+16>>3];if(+h[e>>3]-+h[c[s>>2]>>3]>+h[(c[t>>2]|0)+16>>3]-+h[c[t>>2]>>3]){b=c[t>>2]|0;if(f){h[(c[s>>2]|0)+16>>3]=+h[b>>3];break}else{h[c[s>>2]>>3]=+h[b+16>>3];break}}else{b=c[s>>2]|0;if(f){h[c[t>>2]>>3]=+h[b+16>>3];break}else{h[(c[t>>2]|0)+16>>3]=+h[b>>3];break}}}else{b=+h[(c[s>>2]|0)+16+8>>3]<+h[(c[t>>2]|0)+16+8>>3];if(+h[e+8>>3]-+h[(c[s>>2]|0)+8>>3]>+h[(c[t>>2]|0)+16+8>>3]-+h[(c[t>>2]|0)+8>>3]){e=c[t>>2]|0;if(b){h[(c[s>>2]|0)+16+8>>3]=+h[e+8>>3];break}else{h[(c[s>>2]|0)+8>>3]=+h[e+16+8>>3];break}}else{e=c[s>>2]|0;if(b){h[(c[t>>2]|0)+8>>3]=+h[e+16+8>>3];break}else{h[(c[t>>2]|0)+16+8>>3]=+h[e+8>>3];break}}}}while(0);c[u>>2]=(c[u>>2]|0)+1}if((F|0)==16){c[m>>2]=(c[u>>2]|0)+1;$z(1,142704,m)|0;aM(c[r>>2]|0);c[o>>2]=1;G=c[o>>2]|0;i=g;return G|0}if(!(((!(+h[c[r>>2]>>3]<+h[c[q>>2]>>3])?!(+h[c[r>>2]>>3]>+h[(c[q>>2]|0)+16>>3]):0)?!(+h[(c[r>>2]|0)+8>>3]<+h[(c[q>>2]|0)+8>>3]):0)?!(+h[(c[r>>2]|0)+8>>3]>+h[(c[q>>2]|0)+16+8>>3]):0)){if(a[138998]|0){Y2(c[24742]|0,142793,k)|0;aM(c[r>>2]|0)}if(+h[c[r>>2]>>3]<+h[c[q>>2]>>3])h[c[r>>2]>>3]=+h[c[q>>2]>>3];if(+h[c[r>>2]>>3]>+h[(c[q>>2]|0)+16>>3])h[c[r>>2]>>3]=+h[(c[q>>2]|0)+16>>3];if(+h[(c[r>>2]|0)+8>>3]<+h[(c[q>>2]|0)+8>>3])h[(c[r>>2]|0)+8>>3]=+h[(c[q>>2]|0)+8>>3];if(+h[(c[r>>2]|0)+8>>3]>+h[(c[q>>2]|0)+16+8>>3])h[(c[r>>2]|0)+8>>3]=+h[(c[q>>2]|0)+16+8>>3]}if(!(((!(+h[(c[r>>2]|0)+40>>3]<+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)>>3])?!(+h[(c[r>>2]|0)+40>>3]>+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16>>3]):0)?!(+h[(c[r>>2]|0)+40+8>>3]<+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+8>>3]):0)?!(+h[(c[r>>2]|0)+40+8>>3]>+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16+8>>3]):0)){if(a[138998]|0){Y2(c[24742]|0,142836,j)|0;aM(c[r>>2]|0)}if(+h[(c[r>>2]|0)+40>>3]<+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)>>3])h[(c[r>>2]|0)+40>>3]=+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)>>3];if(+h[(c[r>>2]|0)+40>>3]>+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16>>3])h[(c[r>>2]|0)+40>>3]=+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16>>3];if(+h[(c[r>>2]|0)+40+8>>3]<+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+8>>3])h[(c[r>>2]|0)+40+8>>3]=+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+8>>3];if(+h[(c[r>>2]|0)+40+8>>3]>+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16+8>>3])h[(c[r>>2]|0)+40+8>>3]=+h[(c[q>>2]|0)+((c[p>>2]|0)-1<<5)+16+8>>3]}c[o>>2]=0;G=c[o>>2]|0;i=g;return G|0}$z(1,142659,n)|0;aM(c[r>>2]|0);c[o>>2]=1;G=c[o>>2]|0;i=g;return G|0}function $L(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+112|0;j=g+104|0;k=g+100|0;l=g+96|0;m=g+92|0;n=g+88|0;o=g+84|0;p=g+80|0;q=g+76|0;r=g+64|0;s=g;t=g+72|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[t>>2]=_(c[n>>2]|0,c[k>>2]|0)|0;c[q>>2]=0;while(1){if(((c[q>>2]|0)+3|0)>=(c[m>>2]|0))break;c[p>>2]=0;while(1){if((c[p>>2]|0)>(c[t>>2]|0))break;h[r>>3]=+(c[p>>2]|0)/+(c[t>>2]|0);n=(c[l>>2]|0)+(c[q>>2]<<4)|0;c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];n=s+16|0;f=(c[l>>2]|0)+((c[q>>2]|0)+1<<4)|0;c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];f=s+32|0;n=(c[l>>2]|0)+((c[q>>2]|0)+2<<4)|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];n=s+48|0;f=(c[l>>2]|0)+((c[q>>2]|0)+3<<4)|0;c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];h[s>>3]=+h[s>>3]+ +h[r>>3]*(+h[s+16>>3]-+h[s>>3]);h[s+8>>3]=+h[s+8>>3]+ +h[r>>3]*(+h[s+16+8>>3]-+h[s+8>>3]);h[s+16>>3]=+h[s+16>>3]+ +h[r>>3]*(+h[s+32>>3]-+h[s+16>>3]);h[s+16+8>>3]=+h[s+16+8>>3]+ +h[r>>3]*(+h[s+32+8>>3]-+h[s+16+8>>3]);h[s+32>>3]=+h[s+32>>3]+ +h[r>>3]*(+h[s+48>>3]-+h[s+32>>3]);h[s+32+8>>3]=+h[s+32+8>>3]+ +h[r>>3]*(+h[s+48+8>>3]-+h[s+32+8>>3]);h[s>>3]=+h[s>>3]+ +h[r>>3]*(+h[s+16>>3]-+h[s>>3]);h[s+8>>3]=+h[s+8>>3]+ +h[r>>3]*(+h[s+16+8>>3]-+h[s+8>>3]);h[s+16>>3]=+h[s+16>>3]+ +h[r>>3]*(+h[s+32>>3]-+h[s+16>>3]);h[s+16+8>>3]=+h[s+16+8>>3]+ +h[r>>3]*(+h[s+32+8>>3]-+h[s+16+8>>3]);h[s>>3]=+h[s>>3]+ +h[r>>3]*(+h[s+16>>3]-+h[s>>3]);h[s+8>>3]=+h[s+8>>3]+ +h[r>>3]*(+h[s+16+8>>3]-+h[s+8>>3]);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[k>>2]|0))break;if(+h[s+8>>3]<=+h[(c[j>>2]|0)+(c[o>>2]<<5)+16+8>>3]+.0001?+h[s+8>>3]>=+h[(c[j>>2]|0)+(c[o>>2]<<5)+8>>3]-.0001:0){if(+h[(c[j>>2]|0)+(c[o>>2]<<5)>>3]>+h[s>>3])h[(c[j>>2]|0)+(c[o>>2]<<5)>>3]=+h[s>>3];if(+h[(c[j>>2]|0)+(c[o>>2]<<5)+16>>3]<+h[s>>3])h[(c[j>>2]|0)+(c[o>>2]<<5)+16>>3]=+h[s>>3]}c[o>>2]=(c[o>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=(c[q>>2]|0)+3}i=g;return}function aM(a){a=a|0;var b=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;b=i;i=i+128|0;e=b+80|0;f=b+48|0;g=b+8|0;j=b;k=b+116|0;l=b+112|0;c[k>>2]=a;a=c[24742]|0;c[j>>2]=c[(c[k>>2]|0)+80>>2];Y2(a,142876,j)|0;c[l>>2]=0;while(1){m=c[24742]|0;if((c[l>>2]|0)>=(c[(c[k>>2]|0)+80>>2]|0))break;n=+h[(c[(c[k>>2]|0)+84>>2]|0)+(c[l>>2]<<5)>>3];o=+h[(c[(c[k>>2]|0)+84>>2]|0)+(c[l>>2]<<5)+8>>3];p=+h[(c[(c[k>>2]|0)+84>>2]|0)+(c[l>>2]<<5)+16>>3];q=+h[(c[(c[k>>2]|0)+84>>2]|0)+(c[l>>2]<<5)+16+8>>3];c[g>>2]=c[l>>2];h[g+8>>3]=n;h[g+16>>3]=o;h[g+24>>3]=p;h[g+32>>3]=q;Y2(m,142887,g)|0;c[l>>2]=(c[l>>2]|0)+1}q=+h[(c[k>>2]|0)+8>>3];p=+h[(c[k>>2]|0)+16>>3];l=(d[(c[k>>2]|0)+29>>0]|0|0)!=0?142918:142930;h[f>>3]=+h[c[k>>2]>>3];h[f+8>>3]=q;h[f+16>>3]=p;c[f+24>>2]=l;Y2(m,142946,f)|0;f=c[24742]|0;p=+h[(c[k>>2]|0)+40+8>>3];q=+h[(c[k>>2]|0)+40+16>>3];m=(d[(c[k>>2]|0)+40+29>>0]|0|0)!=0?142918:142930;h[e>>3]=+h[(c[k>>2]|0)+40>>3];h[e+8>>3]=p;h[e+16>>3]=q;c[e+24>>2]=m;Y2(f,142997,e)|0;i=b;return}function bM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;j=f+8|0;k=f+4|0;l=f;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[j>>2]|0)<=(c[k>>2]|0)){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}if((c[h>>2]|0)>=(c[l>>2]|0)){c[g>>2]=0;m=c[g>>2]|0;i=f;return m|0}if((c[k>>2]|0)<=(c[h>>2]|0)?(c[h>>2]|0)<=(c[l>>2]|0):0){c[g>>2]=(c[l>>2]|0)-(c[h>>2]|0);m=c[g>>2]|0;i=f;return m|0}if((c[k>>2]|0)<=(c[j>>2]|0)?(c[j>>2]|0)<=(c[l>>2]|0):0){c[g>>2]=(c[j>>2]|0)-(c[k>>2]|0);m=c[g>>2]|0;i=f;return m|0}if(((c[j>>2]|0)-(c[h>>2]|0)|0)<((c[l>>2]|0)-(c[k>>2]|0)|0))n=(c[j>>2]|0)-(c[h>>2]|0)|0;else n=(c[l>>2]|0)-(c[k>>2]|0)|0;c[g>>2]=n;m=c[g>>2]|0;i=f;return m|0}function cM(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0;g=i;i=i+304|0;j=g+232|0;k=g+216|0;l=g+292|0;m=g+288|0;n=g+284|0;o=g+280|0;p=g+276|0;q=g+272|0;r=g+136|0;s=g+268|0;t=g+120|0;u=g+104|0;v=g+96|0;w=g+88|0;x=g+80|0;y=g+72|0;z=g+64|0;A=g+264|0;B=g+260|0;C=g+256|0;D=g+252|0;E=g+248|0;F=g+48|0;G=g+32|0;H=g+16|0;I=g;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[D>>2]=c[o>>2]&2130706432;do if(!(c[o>>2]&8))if(c[o>>2]&2130706432){c[C>>2]=c[D>>2];break}else{c[C>>2]=4;break}else c[C>>2]=8;while(0);c[q>>2]=bK((c[n>>2]<<2)+4<<4)|0;c[A>>2]=0;h[v>>3]=12.0;c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[n>>2]|0))break;o=(c[m>>2]|0)+(c[B>>2]<<4)|0;c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];c[t+12>>2]=c[o+12>>2];if((c[B>>2]|0)<((c[n>>2]|0)-1|0)){o=(c[m>>2]|0)+((c[B>>2]|0)+1<<4)|0;c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2]}else{o=c[m>>2]|0;c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2]}h[x>>3]=+h[u>>3]-+h[t>>3];h[y>>3]=+h[u+8>>3]-+h[t+8>>3];h[w>>3]=+O(+(+h[x>>3]*+h[x>>3]+ +h[y>>3]*+h[y>>3]));if(+h[v>>3]<+h[w>>3]/3.0)J=+h[v>>3];else J=+h[w>>3]/3.0;h[v>>3]=J;c[B>>2]=(c[B>>2]|0)+1}c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[n>>2]|0))break;o=(c[m>>2]|0)+(c[B>>2]<<4)|0;c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];c[t+12>>2]=c[o+12>>2];if((c[B>>2]|0)<((c[n>>2]|0)-1|0)){o=(c[m>>2]|0)+((c[B>>2]|0)+1<<4)|0;c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2]}else{o=c[m>>2]|0;c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2]}h[x>>3]=+h[u>>3]-+h[t>>3];h[y>>3]=+h[u+8>>3]-+h[t+8>>3];h[w>>3]=+O(+(+h[x>>3]*+h[x>>3]+ +h[y>>3]*+h[y>>3]));h[z>>3]=+h[v>>3]/+h[w>>3];if(!((c[D>>2]|0)==67108864|(c[D>>2]|0)==83886080)){if((c[D>>2]|0)==16777216)h[z>>3]=+h[z>>3]/2.0}else h[z>>3]=+h[z>>3]/3.0;o=(c[C>>2]|0)!=4;f=c[A>>2]|0;c[A>>2]=f+1;e=(c[q>>2]|0)+(f<<4)|0;if(o){c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2]}else{J=+h[z>>3]*.5;c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];jM(F,J,k,j);c[e>>2]=c[F>>2];c[e+4>>2]=c[F+4>>2];c[e+8>>2]=c[F+8>>2];c[e+12>>2]=c[F+12>>2]}e=c[A>>2]|0;c[A>>2]=e+1;o=(c[q>>2]|0)+(e<<4)|0;J=+h[z>>3];c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];jM(G,J,k,j);c[o>>2]=c[G>>2];c[o+4>>2]=c[G+4>>2];c[o+8>>2]=c[G+8>>2];c[o+12>>2]=c[G+12>>2];o=c[A>>2]|0;c[A>>2]=o+1;e=(c[q>>2]|0)+(o<<4)|0;J=1.0-+h[z>>3];c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];jM(H,J,k,j);c[e>>2]=c[H>>2];c[e+4>>2]=c[H+4>>2];c[e+8>>2]=c[H+8>>2];c[e+12>>2]=c[H+12>>2];if((c[C>>2]|0)==4){e=c[A>>2]|0;c[A>>2]=e+1;o=(c[q>>2]|0)+(e<<4)|0;J=1.0-+h[z>>3]*.5;c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[j>>2]=c[u>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[j+12>>2]=c[u+12>>2];jM(I,J,k,j);c[o>>2]=c[I>>2];c[o+4>>2]=c[I+4>>2];c[o+8>>2]=c[I+8>>2];c[o+12>>2]=c[I+12>>2]}c[B>>2]=(c[B>>2]|0)+1}I=c[A>>2]|0;c[A>>2]=I+1;j=(c[q>>2]|0)+(I<<4)|0;I=c[q>>2]|0;c[j>>2]=c[I>>2];c[j+4>>2]=c[I+4>>2];c[j+8>>2]=c[I+8>>2];c[j+12>>2]=c[I+12>>2];I=c[A>>2]|0;c[A>>2]=I+1;j=(c[q>>2]|0)+(I<<4)|0;I=(c[q>>2]|0)+16|0;c[j>>2]=c[I>>2];c[j+4>>2]=c[I+4>>2];c[j+8>>2]=c[I+8>>2];c[j+12>>2]=c[I+12>>2];I=c[A>>2]|0;c[A>>2]=I+1;j=(c[q>>2]|0)+(I<<4)|0;I=(c[q>>2]|0)+32|0;c[j>>2]=c[I>>2];c[j+4>>2]=c[I+4>>2];c[j+8>>2]=c[I+8>>2];c[j+12>>2]=c[I+12>>2];I=c[C>>2]|0;if((I|0)>=201326592)if((I|0)<318767104){if((I|0)<251658240){if((I|0)<218103808){switch(I|0){case 201326592:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*2.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*5.0/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);h[r>>3]=+h[(c[s>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}if((I|0)<234881024){switch(I|0){case 218103808:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[c[m>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*5.0/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3]);h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[(c[s>>2]|0)+48>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 234881024:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*9.0/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*9.0/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*5.0/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*5.0/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);h[r>>3]=+h[(c[s>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*9.0/8.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[(c[m>>2]|0)+16>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}if((I|0)<285212672)if((I|0)<268435456){switch(I|0){case 251658240:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*2.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*5.0/8.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*2.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);h[r>>3]=+h[(c[s>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[s>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 268435456:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[q>>2]|0)+16+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+48>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[q>>2]|0)+48+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+32>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[r+16>>3]=+h[r>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+16+8>>3]=+h[r+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[r+16>>3]=+h[r>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+16+8>>3]=+h[r+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*3.0/4.0;h[r+16>>3]=+h[c[m>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[r+16+8>>3]=+h[r+8>>3];wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else if((I|0)<301989888){switch(I|0){case 285212672:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK(c[n>>2]<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,c[n>>2]|0,c[p>>2]|0);O4(c[s>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+32>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+32+8>>3]=+h[r+16+8>>3];h[r+48>>3]=+h[r+32>>3];h[r+48+8>>3]=+h[r+8>>3];C=r+64|0;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];c[C+8>>2]=c[r+8>>2];c[C+12>>2]=c[r+12>>2];wR(c[l>>2]|0,r,5);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 301989888:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+12<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+32>>3]=+h[c[s>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+64>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+64+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+96>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+80+8>>3];h[(c[s>>2]|0)+128>>3]=+h[(c[s>>2]|0)+112>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+128+8>>3]=+h[(c[s>>2]|0)+112+8>>3];h[(c[s>>2]|0)+144>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+144+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+160>>3]=+h[(c[s>>2]|0)+128>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+160+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+176>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+176+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+192>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+192+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+208>>3]=+h[(c[s>>2]|0)+160>>3];h[(c[s>>2]|0)+208+8>>3]=+h[(c[s>>2]|0)+192+8>>3];h[(c[s>>2]|0)+224>>3]=+h[(c[s>>2]|0)+96>>3];h[(c[s>>2]|0)+224+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+240>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+240+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+12|0,c[p>>2]|0);h[r>>3]=+h[(c[s>>2]|0)+224>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[r+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[s>>2]|0)+224>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[r+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}else{if((I|0)<369098752){if((I|0)<335544320){switch(I|0){case 318767104:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+4<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+64>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[s>>2]|0)+80>>3];h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+64>>3];h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+4|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[r+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0;h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[r+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}if((I|0)<352321536){switch(I|0){case 335544320:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+12<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+32>>3]=+h[c[s>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+64>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+64+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+96>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+80+8>>3];h[(c[s>>2]|0)+128>>3]=+h[(c[s>>2]|0)+112>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+128+8>>3]=+h[(c[s>>2]|0)+112+8>>3];h[(c[s>>2]|0)+144>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+144+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+160>>3]=+h[(c[s>>2]|0)+128>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+160+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+176>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+176+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+192>>3]=+h[(c[s>>2]|0)+128>>3];h[(c[s>>2]|0)+192+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+208>>3]=+h[(c[s>>2]|0)+160>>3];h[(c[s>>2]|0)+208+8>>3]=+h[(c[s>>2]|0)+192+8>>3];h[(c[s>>2]|0)+224>>3]=+h[(c[s>>2]|0)+96>>3];h[(c[s>>2]|0)+224+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+240>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+240+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+12|0,c[p>>2]|0);C=(c[s>>2]|0)+224|0;c[r>>2]=c[C>>2];c[r+4>>2]=c[C+4>>2];c[r+8>>2]=c[C+8>>2];c[r+12>>2]=c[C+12>>2];h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 352321536:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+4<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+48>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/8.0;h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+64>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/8.0;h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[s>>2]|0)+80>>3];h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+64>>3];h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+4|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0;h[r+8>>3]=+h[(c[s>>2]|0)+8>>3];h[r+16>>3]=+h[r>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}if((I|0)<402653184)if((I|0)<385875968){switch(I|0){case 369098752:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+5<<4)|0;h[c[s>>2]>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+8>>3]=+h[(c[q>>2]|0)+16+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+48>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[q>>2]|0)+48+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+32>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[m>>2]|0)+32+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+32+8>>3];h[(c[s>>2]|0)+64>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+80>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+80+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+96>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[m>>2]|0)+48+8>>3];h[(c[s>>2]|0)+112+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;h[(c[s>>2]|0)+112>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+128+8>>3]=+h[(c[m>>2]|0)+8>>3];h[(c[s>>2]|0)+128>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+5|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 385875968:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+3<<4)|0;h[c[s>>2]>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+8>>3]=+h[(c[q>>2]|0)+16+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+48>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[q>>2]|0)+48+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+32>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+48+8>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;h[(c[s>>2]|0)+80>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+96+8>>3]=+h[(c[m>>2]|0)+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+3|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else if((I|0)<419430400){switch(I|0){case 402653184:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+3<<4)|0;h[c[s>>2]>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[q>>2]|0)+32+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[m>>2]|0)+16>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+16+8>>3]-(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+32+8>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+80>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[m>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+96>>3]=+h[c[m>>2]>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+3|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 419430400:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+5<<4)|0;h[c[s>>2]>>3]=+h[c[m>>2]>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[q>>2]|0)+32+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[m>>2]|0)+16>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+16+8>>3]-(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+32+8>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+80>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[m>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+96>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+112>>3]=+h[(c[q>>2]|0)+16>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+112+8>>3]=+h[(c[m>>2]|0)+48+8>>3];h[(c[s>>2]|0)+128>>3]=+h[(c[m>>2]|0)+48>>3];h[(c[s>>2]|0)+128+8>>3]=+h[(c[m>>2]|0)+48+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+5|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}if((I|0)>=83886080){if((I|0)<134217728){if((I|0)<100663296){switch(I|0){case 83886080:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}if((c[n>>2]|0)!=4)La(143069,143080,711,143089);c[s>>2]=bK((c[n>>2]|0)+8<<4)|0;C=c[s>>2]|0;j=c[m>>2]|0;c[C>>2]=c[j>>2];c[C+4>>2]=c[j+4>>2];c[C+8>>2]=c[j+8>>2];c[C+12>>2]=c[j+12>>2];j=(c[s>>2]|0)+16|0;C=(c[m>>2]|0)+16|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];h[(c[s>>2]|0)+32>>3]=+h[(c[q>>2]|0)+48>>3]+(+h[(c[q>>2]|0)+64>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+32+8>>3]=+h[(c[q>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+64+8>>3]-+h[(c[q>>2]|0)+48+8>>3]);h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+48>>3]-+h[(c[q>>2]|0)+32>>3]);h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+32+8>>3]);h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3]+(+h[(c[q>>2]|0)+64>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+64+8>>3]-+h[(c[q>>2]|0)+48+8>>3]);h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+64>>3]+(+h[(c[s>>2]|0)+32>>3]-+h[(c[s>>2]|0)+48>>3]);h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+64+8>>3]+(+h[(c[s>>2]|0)+32+8>>3]-+h[(c[s>>2]|0)+48+8>>3]);h[(c[s>>2]|0)+144>>3]=+h[(c[q>>2]|0)+96>>3]+(+h[(c[q>>2]|0)+80>>3]-+h[(c[q>>2]|0)+96>>3]);h[(c[s>>2]|0)+144+8>>3]=+h[(c[q>>2]|0)+96+8>>3]+(+h[(c[q>>2]|0)+80+8>>3]-+h[(c[q>>2]|0)+96+8>>3]);h[(c[s>>2]|0)+128>>3]=+h[(c[s>>2]|0)+144>>3]+(+h[(c[q>>2]|0)+96>>3]-+h[(c[q>>2]|0)+112>>3]);h[(c[s>>2]|0)+128+8>>3]=+h[(c[s>>2]|0)+144+8>>3]+(+h[(c[q>>2]|0)+96+8>>3]-+h[(c[q>>2]|0)+112+8>>3]);h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+128>>3]+(+h[(c[q>>2]|0)+80>>3]-+h[(c[q>>2]|0)+96>>3]);h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+128+8>>3]+(+h[(c[q>>2]|0)+80+8>>3]-+h[(c[q>>2]|0)+96+8>>3]);h[(c[s>>2]|0)+96>>3]=+h[(c[s>>2]|0)+112>>3]+(+h[(c[s>>2]|0)+144>>3]-+h[(c[s>>2]|0)+128>>3]);h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+112+8>>3]+(+h[(c[s>>2]|0)+144+8>>3]-+h[(c[s>>2]|0)+128+8>>3]);C=(c[s>>2]|0)+160|0;j=(c[m>>2]|0)+32|0;c[C>>2]=c[j>>2];c[C+4>>2]=c[j+4>>2];c[C+8>>2]=c[j+8>>2];c[C+12>>2]=c[j+12>>2];j=(c[s>>2]|0)+176|0;C=(c[m>>2]|0)+48|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+8|0,c[p>>2]|0);C=(c[s>>2]|0)+32|0;c[r>>2]=c[C>>2];c[r+4>>2]=c[C+4>>2];c[r+8>>2]=c[C+8>>2];c[r+12>>2]=c[C+12>>2];h[r+16>>3]=+h[(c[s>>2]|0)+32>>3]-(+h[(c[s>>2]|0)+48>>3]-+h[(c[s>>2]|0)+32>>3]);h[r+16+8>>3]=+h[(c[s>>2]|0)+32+8>>3]-(+h[(c[s>>2]|0)+48+8>>3]-+h[(c[s>>2]|0)+32+8>>3]);h[r+32>>3]=+h[r+16>>3]+(+h[(c[s>>2]|0)+64>>3]-+h[(c[s>>2]|0)+48>>3]);h[r+32+8>>3]=+h[r+16+8>>3]+(+h[(c[s>>2]|0)+64+8>>3]-+h[(c[s>>2]|0)+48+8>>3]);C=r+48|0;j=(c[s>>2]|0)+80|0;c[C>>2]=c[j>>2];c[C+4>>2]=c[j+4>>2];c[C+8>>2]=c[j+8>>2];c[C+12>>2]=c[j+12>>2];wR(c[l>>2]|0,r,4);j=(c[s>>2]|0)+96|0;c[r>>2]=c[j>>2];c[r+4>>2]=c[j+4>>2];c[r+8>>2]=c[j+8>>2];c[r+12>>2]=c[j+12>>2];h[r+16>>3]=+h[(c[s>>2]|0)+96>>3]-(+h[(c[s>>2]|0)+112>>3]-+h[(c[s>>2]|0)+96>>3]);h[r+16+8>>3]=+h[(c[s>>2]|0)+96+8>>3]-(+h[(c[s>>2]|0)+112+8>>3]-+h[(c[s>>2]|0)+96+8>>3]);h[r+32>>3]=+h[r+16>>3]+(+h[(c[s>>2]|0)+128>>3]-+h[(c[s>>2]|0)+112>>3]);h[r+32+8>>3]=+h[r+16+8>>3]+(+h[(c[s>>2]|0)+128+8>>3]-+h[(c[s>>2]|0)+112+8>>3]);j=r+48|0;C=(c[s>>2]|0)+144|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];wR(c[l>>2]|0,r,4);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}if((I|0)<117440512){switch(I|0){case 100663296:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+5<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/8.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])*3.0/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/4.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3]);h[(c[s>>2]|0)+80>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+64+8>>3];h[(c[s>>2]|0)+96>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+64+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+96>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+96+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+128>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+128+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+5|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 117440512:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+1<<4)|0;h[c[s>>2]>>3]=+h[(c[q>>2]|0)+16>>3];h[(c[s>>2]|0)+8>>3]=+h[(c[q>>2]|0)+16+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[(c[q>>2]|0)+48>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[q>>2]|0)+48+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+32>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[q>>2]|0)+16>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+8>>3]-(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[c[m>>2]>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+1|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}if((I|0)<167772160)if((I|0)<150994944){switch(I|0){case 134217728:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+4<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3];h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+64>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+48+8>>3];h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+64>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+112>>3]=+h[(c[s>>2]|0)+96>>3];h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+4|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 150994944:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+2<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+32>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/4.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+64>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])*3.0/4.0;h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+80>>3]=+h[(c[s>>2]|0)+64>>3];h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+2|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else if((I|0)<184549376){switch(I|0){case 167772160:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+1<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+16>>3]=+h[c[s>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3]);h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3]);h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/4.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[s>>2]|0)+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+1|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}else{switch(I|0){case 184549376:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+4<<4)|0;h[c[s>>2]>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/8.0+(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+16>>3]=+h[(c[m>>2]|0)+16>>3]+(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/2.0-(+h[c[m>>2]>>3]-+h[(c[m>>2]|0)+16>>3])/8.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[s>>2]|0)+8>>3];h[(c[s>>2]|0)+32>>3]=+h[(c[s>>2]|0)+16>>3];h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+48>>3]=+h[(c[s>>2]|0)+32>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[s>>2]|0)+32+8>>3];h[(c[s>>2]|0)+64>>3]=+h[(c[s>>2]|0)+48>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/4.0;h[(c[s>>2]|0)+80>>3]=+h[c[s>>2]>>3]-(+h[(c[q>>2]|0)+32>>3]-+h[(c[q>>2]|0)+48>>3])/2.0;h[(c[s>>2]|0)+80+8>>3]=+h[(c[s>>2]|0)+64+8>>3];h[(c[s>>2]|0)+96>>3]=+h[(c[s>>2]|0)+80>>3];h[(c[s>>2]|0)+96+8>>3]=+h[(c[s>>2]|0)+80+8>>3]-(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/2.0;h[(c[s>>2]|0)+112>>3]=+h[c[s>>2]>>3];h[(c[s>>2]|0)+112+8>>3]=+h[(c[s>>2]|0)+96+8>>3];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+4|0,c[p>>2]|0);h[r>>3]=+h[(c[m>>2]|0)+16>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[(c[s>>2]|0)+64>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);h[r>>3]=+h[(c[s>>2]|0)+112>>3];h[r+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+16+8>>3]-+h[(c[m>>2]|0)+32+8>>3])/2.0;h[r+16>>3]=+h[c[m>>2]>>3];h[r+16+8>>3]=+h[(c[m>>2]|0)+32+8>>3]+(+h[(c[m>>2]|0)+8>>3]-+h[(c[m>>2]|0)+48+8>>3])/2.0;wR(c[l>>2]|0,r,2);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}if((I|0)<33554432){if((I|0)<8){switch(I|0){case 4:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[E>>2]=cK(((c[n>>2]|0)*6|0)+2<<4)|0;c[A>>2]=0;c[B>>2]=0;while(1){C=(c[B>>2]|0)<(c[n>>2]|0);j=c[A>>2]|0;c[A>>2]=j+1;L=(c[E>>2]|0)+(j<<4)|0;if(!C)break;C=(c[q>>2]|0)+(c[B>>2]<<2<<4)|0;c[L>>2]=c[C>>2];c[L+4>>2]=c[C+4>>2];c[L+8>>2]=c[C+8>>2];c[L+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;j=(c[E>>2]|0)+(C<<4)|0;C=(c[q>>2]|0)+((c[B>>2]<<2)+1<<4)|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;j=(c[E>>2]|0)+(C<<4)|0;C=(c[q>>2]|0)+((c[B>>2]<<2)+1<<4)|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;j=(c[E>>2]|0)+(C<<4)|0;C=(c[q>>2]|0)+((c[B>>2]<<2)+2<<4)|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;j=(c[E>>2]|0)+(C<<4)|0;C=(c[q>>2]|0)+((c[B>>2]<<2)+2<<4)|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;j=(c[E>>2]|0)+(C<<4)|0;C=(c[q>>2]|0)+((c[B>>2]<<2)+3<<4)|0;c[j>>2]=c[C>>2];c[j+4>>2]=c[C+4>>2];c[j+8>>2]=c[C+8>>2];c[j+12>>2]=c[C+12>>2];c[B>>2]=(c[B>>2]|0)+1}C=c[E>>2]|0;c[L>>2]=c[C>>2];c[L+4>>2]=c[C+4>>2];c[L+8>>2]=c[C+8>>2];c[L+12>>2]=c[C+12>>2];C=c[A>>2]|0;c[A>>2]=C+1;L=(c[E>>2]|0)+(C<<4)|0;C=(c[E>>2]|0)+16|0;c[L>>2]=c[C>>2];c[L+4>>2]=c[C+4>>2];c[L+8>>2]=c[C+8>>2];c[L+12>>2]=c[C+12>>2];vR(c[l>>2]|0,(c[E>>2]|0)+16|0,(c[A>>2]|0)-1|0,0,0,c[p>>2]&255);O4(c[E>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}if((I|0)<16777216){switch(I|0){case 8:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}tR(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0);c[B>>2]=0;while(1){if((c[B>>2]|0)>=(c[n>>2]|0))break;E=(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+2<<4)|0;c[r>>2]=c[E>>2];c[r+4>>2]=c[E+4>>2];c[r+8>>2]=c[E+8>>2];c[r+12>>2]=c[E+12>>2];E=r+16|0;A=(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+4<<4)|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];wR(c[l>>2]|0,r,2);c[B>>2]=(c[B>>2]|0)+1}K=c[q>>2]|0;O4(K);i=g;return}switch(I|0){case 16777216:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+1<<4)|0;c[B>>2]=1;while(1){if((c[B>>2]|0)>=(c[n>>2]|0))break;A=(c[s>>2]|0)+(c[B>>2]<<4)|0;E=(c[m>>2]|0)+(c[B>>2]<<4)|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];c[B>>2]=(c[B>>2]|0)+1}E=c[s>>2]|0;A=(c[q>>2]|0)+((((c[n>>2]|0)-1|0)*3|0)+4<<4)|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];A=(c[s>>2]|0)+(c[n>>2]<<4)|0;E=(c[q>>2]|0)+((((c[n>>2]|0)-1|0)*3|0)+2<<4)|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+1|0,c[p>>2]|0);O4(c[s>>2]|0);c[B>>2]=(c[n>>2]|0)-1;E=(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+2<<4)|0;c[r>>2]=c[E>>2];c[r+4>>2]=c[E+4>>2];c[r+8>>2]=c[E+8>>2];c[r+12>>2]=c[E+12>>2];E=r+16|0;A=(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+4<<4)|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];h[r+32>>3]=+h[r+16>>3]+(+h[r>>3]-+h[(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+3<<4)>>3]);h[r+32+8>>3]=+h[r+16+8>>3]+(+h[r+8>>3]-+h[(c[q>>2]|0)+(((c[B>>2]|0)*3|0)+3<<4)+8>>3]);wR(c[l>>2]|0,r+16|0,2);A=r+16|0;E=r+32|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];wR(c[l>>2]|0,r,2);K=c[q>>2]|0;O4(K);i=g;return}else{if((I|0)<50331648){switch(I|0){case 33554432:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+2<<4)|0;E=c[s>>2]|0;A=c[m>>2]|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];A=(c[s>>2]|0)+16|0;E=(c[q>>2]|0)+32|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];h[(c[s>>2]|0)+32>>3]=+h[(c[q>>2]|0)+32>>3]+(+h[(c[q>>2]|0)+48>>3]-+h[(c[q>>2]|0)+64>>3])/3.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[q>>2]|0)+32+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/3.0;h[(c[s>>2]|0)+48>>3]=+h[(c[q>>2]|0)+48>>3]+(+h[(c[q>>2]|0)+48>>3]-+h[(c[q>>2]|0)+64>>3])/3.0;h[(c[s>>2]|0)+48+8>>3]=+h[(c[q>>2]|0)+48+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/3.0;c[B>>2]=4;while(1){if((c[B>>2]|0)>=((c[n>>2]|0)+2|0))break;E=(c[s>>2]|0)+(c[B>>2]<<4)|0;A=(c[m>>2]|0)+((c[B>>2]|0)-2<<4)|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];c[B>>2]=(c[B>>2]|0)+1}tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+2|0,c[p>>2]|0);O4(c[s>>2]|0);A=(c[q>>2]|0)+48|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];A=r+16|0;E=(c[q>>2]|0)+32|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];wR(c[l>>2]|0,r,2);K=c[q>>2]|0;O4(K);i=g;return}if((I|0)>=67108864){switch(I|0){case 67108864:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}if((c[n>>2]|0)!=4)La(143069,143080,688,143089);c[s>>2]=bK((c[n>>2]|0)+2<<4)|0;E=c[s>>2]|0;A=c[m>>2]|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];A=(c[s>>2]|0)+16|0;E=(c[q>>2]|0)+32|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];E=(c[s>>2]|0)+32|0;A=(c[q>>2]|0)+64|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];A=(c[s>>2]|0)+48|0;E=(c[m>>2]|0)+32|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];E=(c[s>>2]|0)+64|0;A=(c[q>>2]|0)+128|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];A=(c[s>>2]|0)+80|0;E=(c[q>>2]|0)+160|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+2|0,c[p>>2]|0);O4(c[s>>2]|0);h[r>>3]=+h[(c[q>>2]|0)+16>>3]+(+h[(c[q>>2]|0)+176>>3]-+h[c[q>>2]>>3]);h[r+8>>3]=+h[(c[q>>2]|0)+16+8>>3]+(+h[(c[q>>2]|0)+176+8>>3]-+h[(c[q>>2]|0)+8>>3]);E=r+16|0;A=(c[q>>2]|0)+64|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];wR(c[l>>2]|0,r,2);A=r+16|0;E=(c[q>>2]|0)+128|0;c[A>>2]=c[E>>2];c[A+4>>2]=c[E+4>>2];c[A+8>>2]=c[E+8>>2];c[A+12>>2]=c[E+12>>2];wR(c[l>>2]|0,r,2);E=r+16|0;A=c[q>>2]|0;c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];wR(c[l>>2]|0,r,2);K=c[q>>2]|0;O4(K);i=g;return}switch(I|0){case 50331648:break;default:{K=c[q>>2]|0;O4(K);i=g;return}}c[s>>2]=bK((c[n>>2]|0)+3<<4)|0;I=c[s>>2]|0;r=c[m>>2]|0;c[I>>2]=c[r>>2];c[I+4>>2]=c[r+4>>2];c[I+8>>2]=c[r+8>>2];c[I+12>>2]=c[r+12>>2];h[(c[s>>2]|0)+16>>3]=+h[c[m>>2]>>3]-(+h[c[m>>2]>>3]-+h[(c[q>>2]|0)+16>>3])/4.0;h[(c[s>>2]|0)+16+8>>3]=+h[(c[m>>2]|0)+8>>3]+(+h[(c[q>>2]|0)+48+8>>3]-+h[(c[q>>2]|0)+64+8>>3])/3.0;h[(c[s>>2]|0)+32>>3]=+h[c[m>>2]>>3]-(+h[c[m>>2]>>3]-+h[(c[q>>2]|0)+16>>3])*2.0;h[(c[s>>2]|0)+32+8>>3]=+h[(c[s>>2]|0)+16+8>>3];h[(c[s>>2]|0)+48>>3]=+h[c[m>>2]>>3]-(+h[c[m>>2]>>3]-+h[(c[q>>2]|0)+16>>3])*2.25;h[(c[s>>2]|0)+48+8>>3]=+h[(c[q>>2]|0)+48+8>>3];h[(c[s>>2]|0)+64>>3]=+h[(c[q>>2]|0)+48>>3];h[(c[s>>2]|0)+64+8>>3]=+h[(c[q>>2]|0)+48+8>>3];c[B>>2]=4;while(1){if((c[B>>2]|0)>=((c[n>>2]|0)+3|0))break;r=(c[s>>2]|0)+(c[B>>2]<<4)|0;I=(c[m>>2]|0)+((c[B>>2]|0)-3<<4)|0;c[r>>2]=c[I>>2];c[r+4>>2]=c[I+4>>2];c[r+8>>2]=c[I+8>>2];c[r+12>>2]=c[I+12>>2];c[B>>2]=(c[B>>2]|0)+1}tR(c[l>>2]|0,c[s>>2]|0,(c[n>>2]|0)+3|0,c[p>>2]|0);O4(c[s>>2]|0);K=c[q>>2]|0;O4(K);i=g;return}}function dM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2];do if(c[f>>2]|0){c[g>>2]=c[c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]>>2];if((c[g>>2]|0)==82){c[d>>2]=1;break}if((c[g>>2]|0)==85){c[d>>2]=2;break}if((c[g>>2]|0)==84){c[d>>2]=3;break}if((c[g>>2]|0)==87){c[d>>2]=4;break}else{c[d>>2]=0;break}}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function eM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;c[d>>2]=a;if(!(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)){e=0;f=e&1;g=f&255;i=b;return g|0}e=(c[c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]>>2]|0)==82;f=e&1;g=f&255;i=b;return g|0}function fM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;a:do if(c[14010]|0){c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[14011]|0))break a;if((a[c[c[(c[14010]|0)+(c[g>>2]<<2)>>2]>>2]>>0]|0)==(a[c[f>>2]>>0]|0)?(J3(c[c[(c[14010]|0)+(c[g>>2]<<2)>>2]>>2]|0,c[f>>2]|0)|0)==0:0)break;c[g>>2]=(c[g>>2]|0)+1}c[e>>2]=c[(c[14010]|0)+(c[g>>2]<<2)>>2];h=c[e>>2]|0;i=d;return h|0}while(0);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function gM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;h=e+8|0;j=e+4|0;k=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=sO(yA(c[g>>2]|0,143103)|0)|0;do if(c[k>>2]|0){if((a[c[f>>2]>>0]|0)==(a[143113]|0)?(J3(c[f>>2]|0,143113)|0)==0:0)break;c[f>>2]=143118}while(0);if(!((a[c[f>>2]>>0]|0)==(a[143118]|0)?(J3(c[f>>2]|0,143118)|0)==0:0))l=7;a:do if((l|0)==7){c[h>>2]=56048;while(1){if(!(c[c[h>>2]>>2]|0))break a;if((a[c[c[h>>2]>>2]>>0]|0)==(a[c[f>>2]>>0]|0)?(J3(c[c[h>>2]>>2]|0,c[f>>2]|0)|0)==0:0)break;c[h>>2]=(c[h>>2]|0)+16}c[j>>2]=c[h>>2]}while(0);if(c[j>>2]|0){m=c[j>>2]|0;i=e;return m|0}c[j>>2]=nM(c[f>>2]|0)|0;m=c[j>>2]|0;i=e;return m|0}function hM(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+64|0;h=g+52|0;j=g+48|0;k=g+44|0;l=g;m=g+40|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[m>>2]=oM(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[l+36>>2]=c[(c[k>>2]|0)+36>>2];pM(c[h>>2]|0,c[(c[k>>2]|0)+24>>2]|0,l,c[m>>2]|0,d[(c[k>>2]|0)+33>>0]|0,0)|0;k=a;a=l;l=k+40|0;do{c[k>>2]=c[a>>2];k=k+4|0;a=a+4|0}while((k|0)<(l|0));i=g;return}function iM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+96|0;e=d+80|0;f=d+40|0;g=d;c[e>>2]=b;if(a[(c[(c[e>>2]|0)+8>>2]|0)+16+31>>0]|0){b=(c[(c[e>>2]|0)+8>>2]|0)+16|0;h=c[e>>2]|0;j=c[e>>2]|0;hM(f,c[((c[c[e>>2]>>2]&3|0)==3?h:h+32|0)+28>>2]|0,c[((c[c[e>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+16|0);k=b;l=f;m=k+40|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0))}if(!(a[(c[(c[e>>2]|0)+8>>2]|0)+56+31>>0]|0)){i=d;return}f=(c[(c[e>>2]|0)+8>>2]|0)+56|0;b=c[e>>2]|0;j=c[e>>2]|0;hM(g,c[((c[c[e>>2]>>2]&3|0)==2?b:b+-32|0)+28>>2]|0,c[((c[c[e>>2]>>2]&3|0)==3?j:j+32|0)+28>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+56|0);k=f;l=g;m=k+40|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));i=d;return}function jM(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,j=0;f=i;i=i+32|0;g=f+16|0;j=f;h[g>>3]=b;h[j>>3]=+h[d>>3]+ +h[g>>3]*(+h[e>>3]-+h[d>>3]);h[j+8>>3]=+h[d+8>>3]+ +h[g>>3]*(+h[e+8>>3]-+h[d+8>>3]);c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=f;return}function kM(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,P=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0.0,oa=0.0,pa=0,qa=0.0,ra=0,sa=0.0,ta=0.0,ua=0.0,va=0.0,wa=0.0,xa=0,ya=0,za=0,Aa=0,Ba=0;d=i;i=i+448|0;e=d+344|0;f=d+336|0;g=d+328|0;j=d+320|0;k=d+312|0;l=d+440|0;m=d+296|0;n=d+280|0;o=d+264|0;p=d+432|0;q=d+248|0;r=d+232|0;s=d+216|0;t=d+428|0;u=d+424|0;v=d+420|0;w=d+416|0;x=d+208|0;y=d+200|0;z=d+192|0;A=d+184|0;B=d+176|0;C=d+168|0;D=d+160|0;E=d+152|0;F=d+144|0;G=d+136|0;H=d+128|0;I=d+120|0;J=d+112|0;K=d+104|0;L=d+96|0;M=d+88|0;P=d+80|0;S=d+72|0;T=d+64|0;U=d+56|0;V=d+48|0;X=d+40|0;Y=d+32|0;Z=d+24|0;$=d+412|0;aa=d+408|0;ba=d+404|0;ca=d+400|0;da=d+396|0;ea=d+392|0;fa=d+388|0;ga=d+384|0;ha=d+16|0;ia=d+376|0;ja=d+368|0;ka=d+364|0;la=d;ma=d+360|0;c[l>>2]=b;c[ga>>2]=bK(48)|0;c[$>>2]=c[c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]>>2];c[aa>>2]=c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2];c[ba>>2]=c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2];h[B>>3]=+h[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+16>>3];h[D>>3]=+h[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+32>>3];h[C>>3]=+h[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+24>>3];b=(kO(yA(c[l>>2]|0,143973)|0)|0)&255;c[$>>2]=c[$>>2]|b;b=c[l>>2]|0;do if(c[$>>2]|0){h[ha>>3]=+eN(b);if(+h[ha>>3]>0.0){na=+h[ha>>3];h[V>>3]=na;h[U>>3]=na;break}else{h[U>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+32>>3];h[V>>3]=+h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3];na=(+h[U>>3]<+h[V>>3]?+h[U>>3]:+h[V>>3])*72.0;oa=+(~~((+h[U>>3]<+h[V>>3]?+h[U>>3]:+h[V>>3])*72.0>=0.0?na+.5:na-.5)|0);h[V>>3]=oa;h[U>>3]=oa;break}}else{oa=+h[(c[(c[l>>2]|0)+8>>2]|0)+32>>3]*72.0;h[U>>3]=+(~~(+h[(c[b+8>>2]|0)+32>>3]*72.0>=0.0?oa+.5:oa-.5)|0);oa=+h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3]*72.0;h[V>>3]=+(~~(+h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3]*72.0>=0.0?oa+.5:oa-.5)|0)}while(0);c[aa>>2]=eO(c[l>>2]|0,c[13837]|0,c[aa>>2]|0,0)|0;oa=+fO(c[l>>2]|0,c[13839]|0,0.0,-360.0);h[B>>3]=+h[B>>3]+oa;if(!(c[ba>>2]|0)){h[D>>3]=+fO(c[l>>2]|0,c[13840]|0,0.0,-100.0);c[ba>>2]=eO(c[l>>2]|0,c[13836]|0,4,0)|0;h[C>>3]=+fO(c[l>>2]|0,c[13841]|0,0.0,-100.0)}b=(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+24|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];b=(N(~~+h[m>>3]|0)|0)>=0;oa=+(N(~~+h[m>>3]|0)|0);if(b)if(~~(oa+.5))pa=14;else pa=11;else if(~~(oa-.5))pa=14;else pa=11;do if((pa|0)==11){b=(N(~~+h[m+8>>3]|0)|0)>=0;oa=+(N(~~+h[m+8>>3]|0)|0);if(b)if(~~(oa+.5)){pa=14;break}else break;else if(~~(oa-.5)){pa=14;break}else break}while(0);do if((pa|0)==14){b=yA(c[l>>2]|0,143958)|0;c[u>>2]=b;if(!b){h[m>>3]=+h[m>>3]+16.0;b=m+8|0;h[b>>3]=+h[b>>3]+8.0;break}h[Y>>3]=0.0;h[X>>3]=0.0;b=c[u>>2]|0;c[k>>2]=X;c[k+4>>2]=Y;c[ca>>2]=l3(b,143965,k)|0;if(+h[X>>3]<0.0)h[X>>3]=0.0;if(+h[Y>>3]<0.0)h[Y>>3]=0.0;if((c[ca>>2]|0)<=0){h[m>>3]=+h[m>>3]+16.0;b=m+8|0;h[b>>3]=+h[b>>3]+8.0;break}oa=+h[X>>3]*72.0;h[m>>3]=+h[m>>3]+ +(~~(+h[X>>3]*72.0>=0.0?oa+.5:oa-.5)<<1|0);if((c[ca>>2]|0)>1){oa=+h[Y>>3]*72.0;b=m+8|0;h[b>>3]=+h[b>>3]+ +(~~(+h[Y>>3]*72.0>=0.0?oa+.5:oa-.5)<<1|0);break}else{oa=+h[X>>3]*72.0;b=m+8|0;h[b>>3]=+h[b>>3]+ +(~~(+h[X>>3]*72.0>=0.0?oa+.5:oa-.5)<<1|0);break}}while(0);h[Z>>3]=+h[m>>3]-+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+24>>3];oa=+h[c[(c[(qC(c[l>>2]|0)|0)+8>>2]|0)+8>>2]>>3];h[x>>3]=oa;if(oa>0.0){oa=+h[x>>3]*72.0;h[x>>3]=+(~~(+h[x>>3]*72.0>=0.0?oa+.5:oa-.5)|0);h[m>>3]=+fN(+h[m>>3],+h[x>>3]);h[m+8>>3]=+fN(+h[m+8>>3],+h[x>>3])}c[p+4>>2]=0;c[p>>2]=0;X=c[l>>2]|0;do if(a[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+12>>0]|0){if((a[c[c[(c[X+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[143118]|0)?(J3(c[c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143118)|0)==0:0){c[v>>2]=yA(c[l>>2]|0,143103)|0;Y=qC(c[l>>2]|0)|0;FF(ia,Y,c[v>>2]|0);c[p>>2]=c[ia>>2];c[p+4>>2]=c[ia+4>>2];if((c[p>>2]|0)==-1?(c[p+4>>2]|0)==-1:0){Y=(c[v>>2]|0)!=0?c[v>>2]|0:143981;k=wB(c[l>>2]|0)|0;c[j>>2]=Y;c[j+4>>2]=k;$z(0,143987,j)|0;c[p+4>>2]=0;c[p>>2]=0;break}a[(c[(qC(c[l>>2]|0)|0)+8>>2]|0)+114>>0]=1;c[p>>2]=(c[p>>2]|0)+2;k=p+4|0;c[k>>2]=(c[k>>2]|0)+2}}else{k=yA(X,146722)|0;c[v>>2]=k;if((k|0)!=0?(a[c[v>>2]>>0]|0)!=0:0){k=qC(c[l>>2]|0)|0;FF(ja,k,c[v>>2]|0);c[p>>2]=c[ja>>2];c[p+4>>2]=c[ja+4>>2];if((c[p>>2]|0)==-1?(c[p+4>>2]|0)==-1:0){k=(c[v>>2]|0)!=0?c[v>>2]|0:143981;Y=wB(c[l>>2]|0)|0;c[g>>2]=k;c[g+4>>2]=Y;$z(0,144032,g)|0;c[p+4>>2]=0;c[p>>2]=0;break}a[(c[(qC(c[l>>2]|0)|0)+8>>2]|0)+114>>0]=1;c[p>>2]=(c[p>>2]|0)+2;Y=p+4|0;c[Y>>2]=(c[Y>>2]|0)+2}}while(0);h[o>>3]=+h[m>>3]>+(c[p>>2]|0)?+h[m>>3]:+(c[p>>2]|0);if(+h[m+8>>3]>+(c[p+4>>2]|0))qa=+h[m+8>>3];else qa=+(c[p+4>>2]|0);h[o+8>>3]=qa;if((c[ba>>2]|0)<=2?+h[C>>3]!=0.0|+h[D>>3]!=0.0:0)c[ba>>2]=120;c[u>>2]=yA(c[l>>2]|0,144073)|0;do if(c[u>>2]|0){if((a[c[u>>2]>>0]|0)!=116?(a[c[u>>2]>>0]|0)!=98:0){pa=50;break}a[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+80>>0]=a[c[u>>2]>>0]|0}else pa=50;while(0);if((pa|0)==50)a[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+80>>0]=99;if((c[ba>>2]|0)==4?(qa=+h[B>>3],+h[C>>3]==0.0?((~~(+h[B>>3]>=0.0?qa+.5:qa-.5)|0)%90|0|0)==0:0):0)ra=+h[D>>3]==0.0;else ra=0;c[ea>>2]=ra&1;do if(!(c[ea>>2]|0)){if(c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2]|0){c[ka>>2]=c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2];ra=c[c[ka>>2]>>2]|0;c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];Db[ra&31](la,e);c[o>>2]=c[la>>2];c[o+4>>2]=c[la+4>>2];c[o+8>>2]=c[la+8>>2];c[o+12>>2]=c[la+12>>2];break}h[x>>3]=+h[o+8>>3]*1.4142135623730951;if(+h[V>>3]>+h[x>>3]?(a[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+80>>0]|0)==99:0){qa=+O(+(1.0/(1.0-+h[o+8>>3]/+h[V>>3]*(+h[o+8>>3]/+h[V>>3]))));h[o>>3]=+h[o>>3]*qa}else{h[o>>3]=+h[o>>3]*1.4142135623730951;h[o+8>>3]=+h[x>>3]}if((c[ba>>2]|0)>2){h[x>>3]=+Q(+(3.141592653589793/+(c[ba>>2]|0)));h[o>>3]=+h[o>>3]/+h[x>>3];ra=o+8|0;h[ra>>3]=+h[ra>>3]/+h[x>>3]}}while(0);c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[w>>2]=hO(c[l>>2]|0,c[13842]|0,174911)|0;if(((a[c[w>>2]>>0]|0)==115?(a[c[w>>2]>>0]|0)==(a[147662]|0):0)?(J3(c[w>>2]|0,147662)|0)==0:0){h[o>>3]=+h[U>>3];h[o+8>>3]=+h[V>>3];la=(c[ga>>2]|0)+40|0;c[la>>2]=c[la>>2]|2048}else pa=67;do if((pa|0)==67){la=(kO(c[w>>2]|0)|0)<<24>>24!=0;qa=+h[U>>3];if(!la){oa=qa>+h[o>>3]?+h[U>>3]:+h[o>>3];h[U>>3]=oa;h[o>>3]=oa;oa=+h[V>>3]>+h[o+8>>3]?+h[V>>3]:+h[o+8>>3];h[V>>3]=oa;h[o+8>>3]=oa;break}if(!(!(qa<+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+24>>3])?!(+h[V>>3]<+h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+24+8>>3]):0)){la=wB(c[l>>2]|0)|0;e=wB(qC(c[l>>2]|0)|0)|0;c[f>>2]=la;c[f+4>>2]=e;$z(0,144082,f)|0}h[o>>3]=+h[U>>3];h[o+8>>3]=+h[V>>3]}while(0);if(c[$>>2]|0){qa=+h[o>>3]>+h[o+8>>3]?+h[o>>3]:+h[o+8>>3];h[o+8>>3]=qa;h[o>>3]=qa;h[V>>3]=qa;h[U>>3]=qa}do if(!((kO(hO(c[l>>2]|0,c[13833]|0,174911)|0)|0)<<24>>24)){if(c[ea>>2]|0){h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+40>>3]=(+h[m>>3]>+h[o>>3]?+h[m>>3]:+h[o>>3])-+h[Z>>3];break}if(+h[m+8>>3]<+h[o+8>>3]){h[x>>3]=+h[o>>3]*+O(+(1.0-+h[m+8>>3]*+h[m+8>>3]/(+h[o+8>>3]*+h[o+8>>3])));h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+40>>3]=(+h[m>>3]>+h[x>>3]?+h[m>>3]:+h[x>>3])-+h[Z>>3];break}else{h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+40>>3]=+h[m>>3]-+h[Z>>3];break}}else h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+40>>3]=+h[m>>3]-+h[Z>>3];while(0);if(!(c[(c[ga>>2]|0)+40>>2]&2048)){h[x>>3]=+h[o+8>>3]-+h[n+8>>3];if(+h[m+8>>3]<+(c[p+4>>2]|0))h[x>>3]=+h[x>>3]+(+(c[p+4>>2]|0)-+h[m+8>>3]);h[(c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2]|0)+40+8>>3]=+h[m+8>>3]+ +h[x>>3]}p=c[aa>>2]|0;c[fa>>2]=p;c[fa>>2]=(c[aa>>2]|0)<1?1:p;a:do if((c[ba>>2]|0)<3){c[ba>>2]=2;c[t>>2]=bK((_(c[fa>>2]|0,c[ba>>2]|0)|0)<<4)|0;h[q>>3]=+h[o>>3]/2.0;h[q+8>>3]=+h[o+8>>3]/2.0;h[c[t>>2]>>3]=-+h[q>>3];h[(c[t>>2]|0)+8>>3]=-+h[q+8>>3];p=(c[t>>2]|0)+16|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];if((c[aa>>2]|0)>1){c[da>>2]=1;c[ca>>2]=2;while(1){sa=+h[q>>3];if((c[da>>2]|0)>=(c[aa>>2]|0))break;h[q>>3]=sa+4.0;p=q+8|0;h[p>>3]=+h[p>>3]+4.0;h[(c[t>>2]|0)+(c[ca>>2]<<4)>>3]=-+h[q>>3];h[(c[t>>2]|0)+(c[ca>>2]<<4)+8>>3]=-+h[q+8>>3];c[ca>>2]=(c[ca>>2]|0)+1;h[(c[t>>2]|0)+(c[ca>>2]<<4)>>3]=+h[q>>3];h[(c[t>>2]|0)+(c[ca>>2]<<4)+8>>3]=+h[q+8>>3];c[ca>>2]=(c[ca>>2]|0)+1;c[da>>2]=(c[da>>2]|0)+1}h[o>>3]=2.0*sa;h[o+8>>3]=+h[q+8>>3]*2.0}}else{c[t>>2]=bK((_(c[fa>>2]|0,c[ba>>2]|0)|0)<<4)|0;b:do if(c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2]|0){c[ma>>2]=c[(c[(c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2];Db[c[(c[ma>>2]|0)+4>>2]&31](c[t>>2]|0,o);h[M>>3]=+h[o>>3]/2.0;h[P>>3]=+h[o+8>>3]/2.0}else{h[E>>3]=6.283185307179586/+(c[ba>>2]|0);h[F>>3]=+R(+(+h[E>>3]/2.0));qa=+N(+(+h[C>>3]));h[G>>3]=+d2(qa+ +N(+(+h[D>>3])),1.0);h[H>>3]=+h[C>>3]*1.4142135623730951/+Q(+(+h[E>>3]/2.0));h[I>>3]=+h[D>>3]/2.0;h[J>>3]=(+h[E>>3]-3.141592653589793)/2.0;i2(+h[J>>3],K,L);h[s>>3]=+h[L>>3]*.5;h[s+8>>3]=+h[K>>3]*.5;h[P>>3]=0.0;h[M>>3]=0.0;h[J>>3]=+h[J>>3]+(3.141592653589793-+h[E>>3])/2.0;c[ca>>2]=0;while(1){if((c[ca>>2]|0)>=(c[ba>>2]|0))break b;h[J>>3]=+h[J>>3]+ +h[E>>3];i2(+h[J>>3],K,L);h[s>>3]=+h[s>>3]+ +h[F>>3]*+h[L>>3];p=s+8|0;h[p>>3]=+h[p>>3]+ +h[F>>3]*+h[K>>3];h[q>>3]=+h[s>>3]*(+h[G>>3]+ +h[s+8>>3]*+h[H>>3])+ +h[s+8>>3]*+h[I>>3];h[q+8>>3]=+h[s+8>>3];h[y>>3]=+h[B>>3]/180.0*3.141592653589793+ +W(+(+h[q+8>>3]),+(+h[q>>3]));i2(+h[y>>3],K,L);qa=+d2(+h[q>>3],+h[q+8>>3]);h[q+8>>3]=qa;h[q>>3]=qa;h[q>>3]=+h[q>>3]*+h[L>>3];p=q+8|0;h[p>>3]=+h[p>>3]*+h[K>>3];h[q>>3]=+h[q>>3]*+h[o>>3];p=q+8|0;h[p>>3]=+h[p>>3]*+h[o+8>>3];qa=+N(+(+h[q>>3]));if(qa>+h[M>>3])ta=+N(+(+h[q>>3]));else ta=+h[M>>3];h[M>>3]=ta;qa=+N(+(+h[q+8>>3]));if(qa>+h[P>>3])ua=+N(+(+h[q+8>>3]));else ua=+h[P>>3];h[P>>3]=ua;p=(c[t>>2]|0)+(c[ca>>2]<<4)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];if(c[ea>>2]|0)break;c[ca>>2]=(c[ca>>2]|0)+1}h[(c[t>>2]|0)+16>>3]=-+h[q>>3];h[(c[t>>2]|0)+16+8>>3]=+h[q+8>>3];h[(c[t>>2]|0)+32>>3]=-+h[q>>3];h[(c[t>>2]|0)+32+8>>3]=-+h[q+8>>3];h[(c[t>>2]|0)+48>>3]=+h[q>>3];h[(c[t>>2]|0)+48+8>>3]=-+h[q+8>>3]}while(0);h[M>>3]=+h[M>>3]*2.0;h[P>>3]=+h[P>>3]*2.0;h[o>>3]=+h[U>>3]>+h[M>>3]?+h[U>>3]:+h[M>>3];h[o+8>>3]=+h[V>>3]>+h[P>>3]?+h[V>>3]:+h[P>>3];h[S>>3]=+h[o>>3]/+h[M>>3];h[T>>3]=+h[o+8>>3]/+h[P>>3];c[ca>>2]=0;while(1){if((c[ca>>2]|0)>=(c[ba>>2]|0))break;p=(c[t>>2]|0)+(c[ca>>2]<<4)|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];h[q>>3]=+h[q>>3]*+h[S>>3];p=q+8|0;h[p>>3]=+h[p>>3]*+h[T>>3];p=(c[t>>2]|0)+(c[ca>>2]<<4)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];c[ca>>2]=(c[ca>>2]|0)+1}if((c[aa>>2]|0)>1){p=(c[t>>2]|0)+((c[ba>>2]|0)-1<<4)|0;c[r>>2]=c[p>>2];c[r+4>>2]=c[p+4>>2];c[r+8>>2]=c[p+8>>2];c[r+12>>2]=c[p+12>>2];p=c[t>>2]|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];h[z>>3]=+W(+(+h[s+8>>3]-+h[r+8>>3]),+(+h[s>>3]-+h[r>>3]));c[ca>>2]=0;while(1){if((c[ca>>2]|0)>=(c[ba>>2]|0))break;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];p=(c[t>>2]|0)+((((c[ca>>2]|0)+1|0)%(c[ba>>2]|0)|0)<<4)|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];h[y>>3]=+h[z>>3];h[z>>3]=+W(+(+h[s+8>>3]-+h[r+8>>3]),+(+h[s>>3]-+h[r>>3]));h[A>>3]=(+h[y>>3]+3.141592653589793-+h[z>>3])/2.0;h[x>>3]=4.0/+R(+(+h[A>>3]));i2(+h[y>>3]-+h[A>>3],K,L);h[K>>3]=+h[K>>3]*+h[x>>3];h[L>>3]=+h[L>>3]*+h[x>>3];c[da>>2]=1;while(1){if((c[da>>2]|0)>=(c[aa>>2]|0))break;h[r>>3]=+h[r>>3]+ +h[L>>3];p=r+8|0;h[p>>3]=+h[p>>3]+ +h[K>>3];p=(c[ca>>2]|0)+(_(c[da>>2]|0,c[ba>>2]|0)|0)|0;n=(c[t>>2]|0)+(p<<4)|0;c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];c[da>>2]=(c[da>>2]|0)+1}c[ca>>2]=(c[ca>>2]|0)+1}c[ca>>2]=0;while(1){if((c[ca>>2]|0)>=(c[ba>>2]|0))break a;n=(c[ca>>2]|0)+(_((c[aa>>2]|0)-1|0,c[ba>>2]|0)|0)|0;p=(c[t>>2]|0)+(n<<4)|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];qa=+N(+(+h[q>>3]))*2.0;if(qa>+h[o>>3])va=+N(+(+h[q>>3]))*2.0;else va=+h[o>>3];h[o>>3]=va;qa=+N(+(+h[q+8>>3]))*2.0;if(qa>+h[o+8>>3])wa=+N(+(+h[q+8>>3]))*2.0;else wa=+h[o+8>>3];h[o+8>>3]=wa;c[ca>>2]=(c[ca>>2]|0)+1}}}while(0);c[c[ga>>2]>>2]=c[$>>2];c[(c[ga>>2]|0)+4>>2]=c[aa>>2];c[(c[ga>>2]|0)+8>>2]=c[ba>>2];h[(c[ga>>2]|0)+16>>3]=+h[B>>3];h[(c[ga>>2]|0)+32>>3]=+h[D>>3];h[(c[ga>>2]|0)+24>>3]=+h[C>>3];c[(c[ga>>2]|0)+44>>2]=c[t>>2];if(c[(c[ga>>2]|0)+40>>2]&2048){h[(c[(c[l>>2]|0)+8>>2]|0)+32>>3]=(+h[m>>3]>+h[o>>3]?+h[m>>3]:+h[o>>3])/72.0;h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3]=(+h[m+8>>3]>+h[o+8>>3]?+h[m+8>>3]:+h[o+8>>3])/72.0;xa=c[ga>>2]|0;ya=c[l>>2]|0;za=ya+8|0;Aa=c[za>>2]|0;Ba=Aa+12|0;c[Ba>>2]=xa;i=d;return}else{h[(c[(c[l>>2]|0)+8>>2]|0)+32>>3]=+h[o>>3]/72.0;h[(c[(c[l>>2]|0)+8>>2]|0)+40>>3]=+h[o+8>>3]/72.0;xa=c[ga>>2]|0;ya=c[l>>2]|0;za=ya+8|0;Aa=c[za>>2]|0;Ba=Aa+12|0;c[Ba>>2]=xa;i=d;return}}function lM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0;b=i;i=i+112|0;d=b+72|0;e=b+64|0;f=b+108|0;g=b+104|0;j=b+48|0;k=b+32|0;l=b+100|0;m=b+96|0;n=b+92|0;o=b+88|0;p=b;c[f>>2]=a;c[o>>2]=15;c[l>>2]=((c[(c[(qC(c[f>>2]|0)|0)+8>>2]|0)+116>>2]>>2&1|0)!=0^1)&1;c[14311]=c[c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]>>2];c[m>>2]=N3(c[14311]|0)|0;c[m>>2]=(c[m>>2]|0)>1?c[m>>2]|0:1;c[n>>2]=bK((c[m>>2]|0)+1|0)|0;m=$M(c[f>>2]|0,c[l>>2]|0,1,c[n>>2]|0)|0;c[g>>2]=m;if(!m){c[e>>2]=c[c[(c[(c[f>>2]|0)+8>>2]|0)+104>>2]>>2];$z(1,143934,e)|0;c[14311]=143955;c[g>>2]=$M(c[f>>2]|0,c[l>>2]|0,1,c[n>>2]|0)|0}O4(c[n>>2]|0);aN(b+16|0,c[f>>2]|0,c[g>>2]|0);q=+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]*72.0;h[k>>3]=+(~~(+h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]*72.0>=0.0?q+.5:q-.5)|0);q=+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]*72.0;h[k+8>>3]=+(~~(+h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]*72.0>=0.0?q+.5:q-.5)|0);if(!((kO(hO(c[f>>2]|0,c[13842]|0,174911)|0)|0)<<24>>24)){if(+h[c[g>>2]>>3]>+h[k>>3])r=+h[c[g>>2]>>3];else r=+h[k>>3];h[k>>3]=r;if(+h[(c[g>>2]|0)+8>>3]>+h[k+8>>3])s=+h[(c[g>>2]|0)+8>>3];else s=+h[k+8>>3];h[k+8>>3]=s}n=c[g>>2]|0;l=(kO(hO(c[f>>2]|0,c[13833]|0,174911)|0)|0)&255;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];bN(n,d,l);qM(p,-+h[k>>3]/2.0,+h[k+8>>3]/2.0);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];p=c[g>>2]|0;k=c[o>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];cN(p,d,k);h[(c[(c[f>>2]|0)+8>>2]|0)+32>>3]=+h[c[g>>2]>>3]/72.0;h[(c[(c[f>>2]|0)+8>>2]|0)+40>>3]=(+h[(c[g>>2]|0)+8>>3]+1.0)/72.0;c[(c[(c[f>>2]|0)+8>>2]|0)+12>>2]=c[g>>2];i=b;return}function mM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0;b=i;i=i+80|0;d=b+68|0;e=b+64|0;f=b+60|0;g=b+56|0;j=b+52|0;k=b+32|0;l=b+16|0;m=b+48|0;n=b+44|0;o=b+40|0;p=b+8|0;q=b;c[d>>2]=a;c[e>>2]=bK(48)|0;c[j>>2]=c[(c[(c[(c[(c[d>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2];h[p>>3]=+fO(c[d>>2]|0,c[13815]|0,1797693134862315708145274.0e284,0.0);h[q>>3]=+fO(c[d>>2]|0,c[13814]|0,1797693134862315708145274.0e284,0.0);h[p>>3]=+h[p>>3]<+h[q>>3]?+h[p>>3]:+h[q>>3];if(+h[p>>3]==1797693134862315708145274.0e284&+h[q>>3]==1797693134862315708145274.0e284){h[(c[(c[d>>2]|0)+8>>2]|0)+40>>3]=.05;h[(c[(c[d>>2]|0)+8>>2]|0)+32>>3]=.05}else{h[p>>3]=+h[p>>3]<+h[q>>3]?+h[p>>3]:+h[q>>3];if(+h[p>>3]>0.0)h[p>>3]=+h[p>>3]>.0003?+h[p>>3]:.0003;r=+h[p>>3];h[(c[(c[d>>2]|0)+8>>2]|0)+40>>3]=r;h[(c[(c[d>>2]|0)+8>>2]|0)+32>>3]=r}h[k>>3]=+h[(c[(c[d>>2]|0)+8>>2]|0)+32>>3]*72.0;c[j>>2]=eO(c[d>>2]|0,c[13837]|0,c[j>>2]|0,0)|0;if((c[j>>2]|0)<1)c[g>>2]=1;else c[g>>2]=c[j>>2];c[f>>2]=2;c[m>>2]=bK((_(c[g>>2]|0,c[f>>2]|0)|0)<<4)|0;r=+h[k>>3]/2.0;h[l>>3]=r;h[l+8>>3]=r;h[c[m>>2]>>3]=-+h[l>>3];h[(c[m>>2]|0)+8>>3]=-+h[l+8>>3];f=(c[m>>2]|0)+16|0;c[f>>2]=c[l>>2];c[f+4>>2]=c[l+4>>2];c[f+8>>2]=c[l+8>>2];c[f+12>>2]=c[l+12>>2];if((c[j>>2]|0)<=1){s=c[e>>2]|0;c[s>>2]=1;t=c[j>>2]|0;u=c[e>>2]|0;v=u+4|0;c[v>>2]=t;w=c[e>>2]|0;x=w+8|0;c[x>>2]=2;y=c[e>>2]|0;z=y+16|0;h[z>>3]=0.0;A=c[e>>2]|0;B=A+32|0;h[B>>3]=0.0;C=c[e>>2]|0;D=C+24|0;h[D>>3]=0.0;E=c[m>>2]|0;F=c[e>>2]|0;G=F+44|0;c[G>>2]=E;H=+h[k>>3];I=H/72.0;J=c[d>>2]|0;K=J+8|0;L=c[K>>2]|0;M=L+32|0;h[M>>3]=I;N=c[d>>2]|0;O=N+8|0;P=c[O>>2]|0;Q=P+40|0;h[Q>>3]=I;R=c[e>>2]|0;S=c[d>>2]|0;T=S+8|0;U=c[T>>2]|0;V=U+12|0;c[V>>2]=R;i=b;return}c[o>>2]=1;c[n>>2]=2;while(1){W=+h[l>>3];if((c[o>>2]|0)>=(c[j>>2]|0))break;h[l>>3]=W+4.0;f=l+8|0;h[f>>3]=+h[f>>3]+4.0;h[(c[m>>2]|0)+(c[n>>2]<<4)>>3]=-+h[l>>3];h[(c[m>>2]|0)+(c[n>>2]<<4)+8>>3]=-+h[l+8>>3];c[n>>2]=(c[n>>2]|0)+1;h[(c[m>>2]|0)+(c[n>>2]<<4)>>3]=+h[l>>3];h[(c[m>>2]|0)+(c[n>>2]<<4)+8>>3]=+h[l+8>>3];c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+1}h[k>>3]=2.0*W;s=c[e>>2]|0;c[s>>2]=1;t=c[j>>2]|0;u=c[e>>2]|0;v=u+4|0;c[v>>2]=t;w=c[e>>2]|0;x=w+8|0;c[x>>2]=2;y=c[e>>2]|0;z=y+16|0;h[z>>3]=0.0;A=c[e>>2]|0;B=A+32|0;h[B>>3]=0.0;C=c[e>>2]|0;D=C+24|0;h[D>>3]=0.0;E=c[m>>2]|0;F=c[e>>2]|0;G=F+44|0;c[G>>2]=E;H=+h[k>>3];I=H/72.0;J=c[d>>2]|0;K=J+8|0;L=c[K>>2]|0;M=L+32|0;h[M>>3]=I;N=c[d>>2]|0;O=N+8|0;P=c[O>>2]|0;Q=P+40|0;h[Q>>3]=I;R=c[e>>2]|0;S=c[d>>2]|0;T=S+8|0;U=c[T>>2]|0;V=U+12|0;c[V>>2]=R;i=b;return}function nM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+32|0;e=d;f=d+20|0;g=d+16|0;h=d+12|0;j=d+8|0;c[g>>2]=b;b=fM(c[g>>2]|0)|0;c[j>>2]=b;if(b){c[f>>2]=c[j>>2];k=c[f>>2]|0;i=d;return k|0}b=c[14011]|0;c[14011]=b+1;c[h>>2]=b;if(c[14010]|0)l=eK(c[14010]|0,c[14011]<<2)|0;else l=cK(c[14011]<<2)|0;c[14010]=l;l=bK(16)|0;c[(c[14010]|0)+(c[h>>2]<<2)>>2]=l;c[j>>2]=l;l=c[j>>2]|0;c[l>>2]=c[14012];c[l+4>>2]=c[14013];c[l+8>>2]=c[14014];c[l+12>>2]=c[14015];l=M3(c[g>>2]|0)|0;c[c[j>>2]>>2]=l;do if(!(c[13791]|0)){if((a[c[g>>2]>>0]|0)==(a[143118]|0)?(J3(c[g>>2]|0,143118)|0)==0:0){m=10;break}l=c[c[j>>2]>>2]|0;c[e>>2]=c[14012];c[e+4>>2]=l;$z(0,143131,e)|0;a[(c[j>>2]|0)+12>>0]=0}else m=10;while(0);if((m|0)==10)a[(c[j>>2]|0)+12>>0]=1;c[f>>2]=c[j>>2];k=c[f>>2]|0;i=d;return k|0}function oM(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;f=i;i=i+128|0;g=f+32|0;j=f+112|0;k=f+108|0;l=f+104|0;m=f+100|0;n=f;o=f+96|0;p=f+88|0;q=f+80|0;r=f+72|0;s=f+64|0;t=f+60|0;u=f+56|0;v=f+52|0;w=f+48|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[o>>2]=c[(c[(c[(qC(c[k>>2]|0)|0)+48>>2]|0)+8>>2]|0)+116>>2]&3;c[p>>2]=0;c[p+4>>2]=0;e=(c[(c[k>>2]|0)+8>>2]|0)+16|0;b=c[o>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];uM(q,g,b);b=(c[(c[l>>2]|0)+8>>2]|0)+16|0;l=c[o>>2]|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];uM(r,g,l);c[s>>2]=d[(c[m>>2]|0)+33>>0];c[t>>2]=0;c[w>>2]=0;if((c[s>>2]|0)==0|(c[s>>2]|0)==15){c[j>>2]=c[t>>2];x=c[j>>2]|0;i=f;return x|0}do if(!(c[(c[m>>2]|0)+24>>2]|0)){l=(c[(c[(qC(c[k>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;y=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]/2.0;g=n+16|0;if(l){h[g>>3]=y;h[n>>3]=-+h[n+16>>3];h[n+16+8>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];h[n+8>>3]=-+h[n+16+8>>3];break}else{h[g+8>>3]=y;h[n+8>>3]=-+h[n+16+8>>3];h[n+16>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3];h[n>>3]=-+h[n+16>>3];break}}else{g=c[(c[m>>2]|0)+24>>2]|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];c[n+16>>2]=c[g+16>>2];c[n+20>>2]=c[g+20>>2];c[n+24>>2]=c[g+24>>2];c[n+28>>2]=c[g+28>>2]}while(0);c[u>>2]=0;while(1){if((c[u>>2]|0)>=4)break;do if(c[s>>2]&1<>2]){switch(c[u>>2]|0){case 0:{c[p+4>>2]=~~+h[n+8>>3];c[p>>2]=~~((+h[n>>3]+ +h[n+16>>3])/2.0);break}case 1:{c[p>>2]=~~+h[n+16>>3];c[p+4>>2]=~~((+h[n+8>>3]+ +h[n+16+8>>3])/2.0);break}case 2:{c[p+4>>2]=~~+h[n+16+8>>3];c[p>>2]=~~((+h[n>>3]+ +h[n+16>>3])/2.0);break}case 3:{c[p>>2]=~~+h[n>>3];c[p+4>>2]=~~((+h[n+8>>3]+ +h[n+16+8>>3])/2.0);break}default:{}}c[p>>2]=(c[p>>2]|0)+(c[q>>2]|0);m=p+4|0;c[m>>2]=(c[m>>2]|0)+(c[q+4>>2]|0);m=_((c[p>>2]|0)-(c[r>>2]|0)|0,(c[p>>2]|0)-(c[r>>2]|0)|0)|0;c[v>>2]=m+(_((c[p+4>>2]|0)-(c[r+4>>2]|0)|0,(c[p+4>>2]|0)-(c[r+4>>2]|0)|0)|0);if((c[t>>2]|0)!=0?(c[v>>2]|0)>=(c[w>>2]|0):0)break;c[w>>2]=c[v>>2];c[t>>2]=c[57024+(c[u>>2]<<2)>>2]}while(0);c[u>>2]=(c[u>>2]|0)+1}c[j>>2]=c[t>>2];x=c[j>>2]|0;i=f;return x|0}function pM(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;k=i;i=i+304|0;l=k+248|0;m=k+292|0;n=k+288|0;o=k+284|0;p=k+280|0;q=k+276|0;r=k+272|0;s=k+216|0;t=k+200|0;u=k+184|0;v=k+268|0;w=k+176|0;x=k+299|0;y=k+298|0;z=k+264|0;A=k+297|0;B=k+296|0;C=k+168|0;D=k+152|0;E=k+136|0;F=k+120|0;G=k+104|0;H=k+88|0;I=k+72|0;J=k+56|0;K=k+40|0;L=k+24|0;M=k+8|0;N=k;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=j;c[v>>2]=0;h[w>>3]=0.0;a[x>>0]=0;a[y>>0]=0;c[z>>2]=0;a[A>>0]=1;if(c[n>>2]|0){j=c[n>>2]|0;c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[s+12>>2]=c[j+12>>2];c[s+16>>2]=c[j+16>>2];c[s+20>>2]=c[j+20>>2];c[s+24>>2]=c[j+24>>2];c[s+28>>2]=c[j+28>>2];qM(D,(+h[s>>3]+ +h[s+16>>3])/2.0,(+h[s+8>>3]+ +h[s+16+8>>3])/2.0);c[t>>2]=c[D>>2];c[t+4>>2]=c[D+4>>2];c[t+8>>2]=c[D+8>>2];c[t+12>>2]=c[D+12>>2];a[B>>0]=1}else{h[t+8>>3]=0.0;h[t>>3]=0.0;D=(c[(c[(qC(c[m>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;O=+h[(c[(c[m>>2]|0)+8>>2]|0)+80>>3]/2.0;j=s+16|0;if(D){h[j>>3]=O;h[s>>3]=-+h[s+16>>3];h[s+16+8>>3]=+h[(c[(c[m>>2]|0)+8>>2]|0)+88>>3];h[s+8>>3]=-+h[s+16+8>>3]}else{h[j+8>>3]=O;h[s+8>>3]=-+h[s+16+8>>3];h[s+16>>3]=+h[(c[(c[m>>2]|0)+8>>2]|0)+88>>3];h[s>>3]=-+h[s+16>>3]}a[B>>0]=0}j=s+16|0;h[C>>3]=+h[s+16>>3]>+h[s+16+8>>3]?+h[j>>3]:+h[j+8>>3];h[C>>3]=+h[C>>3]*4.0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];a:do if((c[p>>2]|0)!=0?(a[c[p>>2]>>0]|0)!=0:0){j=c[p>>2]|0;c[p>>2]=j+1;switch(a[j>>0]|0){case 99:{break a;break}case 101:{if(a[c[p>>2]>>0]|0){c[v>>2]=1;break a}if(c[r>>2]|0){rM(E,c[r>>2]|0,+h[u+8>>3],+h[C>>3]);c[t>>2]=c[E>>2];c[t+4>>2]=c[E+4>>2];c[t+8>>2]=c[E+8>>2];c[t+12>>2]=c[E+12>>2]}else h[t>>3]=+h[s+16>>3];h[w>>3]=0.0;a[x>>0]=1;a[B>>0]=1;a[A>>0]=0;c[z>>2]=c[q>>2]&2;break a;break}case 115:{h[t+8>>3]=+h[s+8>>3];a[x>>0]=1;a[A>>0]=0;switch(a[c[p>>2]>>0]|0){case 0:{h[w>>3]=-1.5707963267948966;a[B>>0]=1;if(c[r>>2]|0){rM(F,c[r>>2]|0,-+h[C>>3],+h[u>>3]);c[t>>2]=c[F>>2];c[t+4>>2]=c[F+4>>2];c[t+8>>2]=c[F+8>>2];c[t+12>>2]=c[F+12>>2]}else h[t>>3]=+h[u>>3];c[z>>2]=c[q>>2]&1;break a;break}case 101:{h[w>>3]=-.7853981633974483;a[B>>0]=1;if(c[r>>2]|0){rM(G,c[r>>2]|0,-+h[C>>3],+h[C>>3]);c[t>>2]=c[G>>2];c[t+4>>2]=c[G+4>>2];c[t+8>>2]=c[G+8>>2];c[t+12>>2]=c[G+12>>2]}else h[t>>3]=+h[s+16>>3];c[z>>2]=c[q>>2]&3;break a;break}case 119:{h[w>>3]=-2.356194490192345;a[B>>0]=1;if(c[r>>2]|0){rM(H,c[r>>2]|0,-+h[C>>3],-+h[C>>3]);c[t>>2]=c[H>>2];c[t+4>>2]=c[H+4>>2];c[t+8>>2]=c[H+8>>2];c[t+12>>2]=c[H+12>>2]}else h[t>>3]=+h[s>>3];c[z>>2]=c[q>>2]&9;break a;break}default:{h[t+8>>3]=+h[u+8>>3];a[x>>0]=0;a[A>>0]=1;c[v>>2]=1;break a}}break}case 119:{if(a[c[p>>2]>>0]|0){c[v>>2]=1;break a}if(c[r>>2]|0){rM(I,c[r>>2]|0,+h[u+8>>3],-+h[C>>3]);c[t>>2]=c[I>>2];c[t+4>>2]=c[I+4>>2];c[t+8>>2]=c[I+8>>2];c[t+12>>2]=c[I+12>>2]}else h[t>>3]=+h[s>>3];h[w>>3]=3.141592653589793;a[x>>0]=1;a[B>>0]=1;a[A>>0]=0;c[z>>2]=c[q>>2]&8;break a;break}case 110:{h[t+8>>3]=+h[s+16+8>>3];a[x>>0]=1;a[A>>0]=0;switch(a[c[p>>2]>>0]|0){case 0:{a[B>>0]=1;h[w>>3]=1.5707963267948966;if(c[r>>2]|0){rM(J,c[r>>2]|0,+h[C>>3],+h[u>>3]);c[t>>2]=c[J>>2];c[t+4>>2]=c[J+4>>2];c[t+8>>2]=c[J+8>>2];c[t+12>>2]=c[J+12>>2]}else h[t>>3]=+h[u>>3];c[z>>2]=c[q>>2]&4;break a;break}case 101:{a[B>>0]=1;h[w>>3]=.7853981633974483;if(c[r>>2]|0){rM(K,c[r>>2]|0,+h[C>>3],+h[C>>3]);c[t>>2]=c[K>>2];c[t+4>>2]=c[K+4>>2];c[t+8>>2]=c[K+8>>2];c[t+12>>2]=c[K+12>>2]}else h[t>>3]=+h[s+16>>3];c[z>>2]=c[q>>2]&6;break a;break}case 119:{a[B>>0]=1;h[w>>3]=2.356194490192345;if(c[r>>2]|0){rM(L,c[r>>2]|0,+h[C>>3],-+h[C>>3]);c[t>>2]=c[L>>2];c[t+4>>2]=c[L+4>>2];c[t+8>>2]=c[L+8>>2];c[t+12>>2]=c[L+12>>2]}else h[t>>3]=+h[s>>3];c[z>>2]=c[q>>2]&12;break a;break}default:{h[t+8>>3]=+h[u+8>>3];a[x>>0]=0;a[A>>0]=1;c[v>>2]=1;break a}}break}case 95:{a[y>>0]=1;c[z>>2]=c[q>>2];break a;break}default:{c[v>>2]=1;break a}}}while(0);q=(c[(c[(qC(c[m>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[l>>2]=c[t>>2];c[l+4>>2]=c[t+4>>2];c[l+8>>2]=c[t+8>>2];c[l+12>>2]=c[t+12>>2];EJ(M,l,q);c[t>>2]=c[M>>2];c[t+4>>2]=c[M+4>>2];c[t+8>>2]=c[M+8>>2];c[t+12>>2]=c[M+12>>2];M=c[z>>2]|0;if(a[y>>0]|0)a[(c[o>>2]|0)+33>>0]=M;else{z=(sM(M,c[(c[(qC(c[m>>2]|0)|0)+8>>2]|0)+116>>2]&3)|0)&255;a[(c[o>>2]|0)+33>>0]=z}c[(c[o>>2]|0)+24>>2]=c[n>>2];O=+h[t>>3];h[c[o>>2]>>3]=+(~~(+h[t>>3]>=0.0?O+.5:O-.5)|0);O=+h[t+8>>3];h[(c[o>>2]|0)+8>>3]=+(~~(+h[t+8>>3]>=0.0?O+.5:O-.5)|0);O=+h[w>>3];P=+tM(O,c[(c[(qC(c[m>>2]|0)|0)+8>>2]|0)+116>>2]&3);h[(c[o>>2]|0)+16>>3]=P;if(+h[t>>3]==0.0?+h[t+8>>3]==0.0:0){a[(c[o>>2]|0)+32>>0]=-128;Q=a[x>>0]|0;R=c[o>>2]|0;S=R+29|0;a[S>>0]=Q;T=a[B>>0]|0;U=c[o>>2]|0;V=U+28|0;a[V>>0]=T;X=a[A>>0]|0;Y=c[o>>2]|0;Z=Y+30|0;a[Z>>0]=X;_=a[y>>0]|0;$=c[o>>2]|0;aa=$+31|0;a[aa>>0]=_;ba=c[v>>2]|0;i=k;return ba|0}h[N>>3]=+W(+(+h[t+8>>3]),+(+h[t>>3]))+4.71238898038469;if(+h[N>>3]>=6.283185307179586)h[N>>3]=+h[N>>3]-6.283185307179586;a[(c[o>>2]|0)+32>>0]=~~(+h[N>>3]*256.0/6.283185307179586);Q=a[x>>0]|0;R=c[o>>2]|0;S=R+29|0;a[S>>0]=Q;T=a[B>>0]|0;U=c[o>>2]|0;V=U+28|0;a[V>>0]=T;X=a[A>>0]|0;Y=c[o>>2]|0;Z=Y+30|0;a[Z>>0]=X;_=a[y>>0]|0;$=c[o>>2]|0;aa=$+31|0;a[aa>>0]=_;ba=c[v>>2]|0;i=k;return ba|0}function qM(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function rM(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+160|0;g=f+128|0;j=f+156|0;k=f+120|0;l=f+112|0;m=f+48|0;n=f+152|0;o=f+148|0;p=f+144|0;q=f+32|0;r=f+16|0;s=f;c[j>>2]=b;h[k>>3]=d;h[l>>3]=e;c[n>>2]=c[c[j>>2]>>2];c[o>>2]=qC(c[n>>2]|0)|0;c[p>>2]=c[(c[(c[o>>2]|0)+8>>2]|0)+116>>2]&3;h[q>>3]=+h[l>>3];h[q+8>>3]=+h[k>>3];if(c[p>>2]|0){k=(c[p>>2]|0)*90|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];EJ(r,g,k);c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2]}h[m+8>>3]=0.0;h[m>>3]=0.0;r=m+16|0;c[r>>2]=c[m>>2];c[r+4>>2]=c[m+4>>2];c[r+8>>2]=c[m+8>>2];c[r+12>>2]=c[m+12>>2];r=m+48|0;k=m+32|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];c[r+8>>2]=c[k+8>>2];c[r+12>>2]=c[k+12>>2];gN(c[j>>2]|0,c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0,m,1);if(!(c[p>>2]|0)){c[a>>2]=c[m>>2];c[a+4>>2]=c[m+4>>2];c[a+8>>2]=c[m+8>>2];c[a+12>>2]=c[m+12>>2];i=f;return}n=(c[p>>2]|0)*90|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];FJ(s,g,n);c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];c[a>>2]=c[m>>2];c[a+4>>2]=c[m+4>>2];c[a+8>>2]=c[m+8>>2];c[a+12>>2]=c[m+12>>2];i=f;return}function sM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a:do switch(c[f>>2]|0){case 3:{switch(c[e>>2]|0){case 4:{c[e>>2]=2;break a;break}case 1:{c[e>>2]=8;break a;break}case 8:{c[e>>2]=1;break a;break}case 2:{c[e>>2]=4;break a;break}default:break a}break}case 2:{switch(c[e>>2]|0){case 4:{c[e>>2]=1;break a;break}case 1:{c[e>>2]=4;break a;break}default:break a}break}case 1:{switch(c[e>>2]|0){case 4:{c[e>>2]=2;break a;break}case 1:{c[e>>2]=8;break a;break}case 8:{c[e>>2]=4;break a;break}case 2:{c[e>>2]=1;break a;break}default:break a}break}default:{}}while(0);i=d;return c[e>>2]|0}function tM(a,b){a=+a;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;f=d+8|0;h[e>>3]=a;c[f>>2]=b;a:do switch(c[f>>2]|0){case 3:{if(+h[e>>3]==3.141592653589793){h[e>>3]=-1.5707963267948966;break a}if(+h[e>>3]==2.356194490192345){h[e>>3]=-.7853981633974483;break a}if(+h[e>>3]==1.5707963267948966){h[e>>3]=0.0;break a}if(+h[e>>3]==0.0){h[e>>3]=1.5707963267948966;break a}if(+h[e>>3]==-.7853981633974483){h[e>>3]=2.356194490192345;break a}if(+h[e>>3]==-1.5707963267948966)h[e>>3]=3.141592653589793;break}case 2:{h[e>>3]=+h[e>>3]*-1.0;break}case 1:{h[e>>3]=+h[e>>3]-1.5707963267948966;break}default:{}}while(0);i=d;return +(+h[e>>3])}function uM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0.0;e=i;i=i+32|0;f=e+24|0;g=e;j=e+16|0;c[f>>2]=d;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;switch(c[f>>2]|0){case 0:{c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];break}case 2:{h[g>>3]=+h[b>>3];h[g+8>>3]=-+h[b+8>>3];break}case 1:{h[g+8>>3]=+h[b>>3];h[g>>3]=-+h[b+8>>3];break}case 3:{h[g+8>>3]=+h[b>>3];h[g>>3]=+h[b+8>>3];break}default:{}}k=+h[g>>3];c[j>>2]=~~(+h[g>>3]>=0.0?k+.5:k-.5);k=+h[g+8>>3];c[j+4>>2]=~~(+h[g+8>>3]>=0.0?k+.5:k-.5);c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];i=e;return}function vM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0;d=i;i=i+48|0;e=d+32|0;f=d+24|0;g=d+16|0;j=d+8|0;k=d;h[j>>3]=+h[b>>3]/(+Q(.3141592653589793)*2.0);h[k>>3]=+h[b+8>>3]/(+R(.3141592653589793)+ +R(.9424777960769379));h[f>>3]=+h[j>>3]>+h[k>>3]?+h[j>>3]:+h[k>>3];h[g>>3]=+h[f>>3]*+R(1.2566370614359172)*+Q(.6283185307179586)/(+Q(.3141592653589793)*+Q(1.2566370614359172));h[e>>3]=+h[g>>3]*2.0*+Q(.3141592653589793);h[e+8>>3]=+h[g>>3]*(+R(.9424777960769379)+1.0);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];i=d;return}function wM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;d=i;i=i+80|0;e=d+72|0;f=d+68|0;g=d+64|0;j=d+48|0;k=d+40|0;l=d+32|0;m=d+24|0;n=d+16|0;o=d+8|0;p=d;c[e>>2]=a;c[f>>2]=b;b=c[f>>2]|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];h[m>>3]=(+R(.9424777960769379)+1.0)/(+Q(.3141592653589793)*2.0);h[p>>3]=.3141592653589793;h[l>>3]=+h[j+8>>3]/+h[j>>3];if(!(+h[l>>3]>+h[m>>3])){if(+h[l>>3]<+h[m>>3])h[j+8>>3]=+h[j>>3]*+h[m>>3]}else h[j>>3]=+h[j+8>>3]/+h[m>>3];h[n>>3]=+h[j>>3]/(+Q(.3141592653589793)*2.0);h[o>>3]=+h[n>>3]*+Q(.3141592653589793)*+Q(1.2566370614359172)/(+R(1.2566370614359172)*+Q(.6283185307179586));h[k>>3]=+h[n>>3]*(1.0-+R(.9424777960769379))/2.0;c[g>>2]=0;while(1){if((c[g>>2]|0)>=10)break;q=+h[n>>3]*+Q(+(+h[p>>3]));h[(c[e>>2]|0)+(c[g>>2]<<4)>>3]=q;q=+h[n>>3]*+R(+(+h[p>>3]));h[(c[e>>2]|0)+(c[g>>2]<<4)+8>>3]=q-+h[k>>3];h[p>>3]=+h[p>>3]+.6283185307179586;q=+h[o>>3]*+Q(+(+h[p>>3]));h[(c[e>>2]|0)+((c[g>>2]|0)+1<<4)>>3]=q;q=+h[o>>3]*+R(+(+h[p>>3]));h[(c[e>>2]|0)+((c[g>>2]|0)+1<<4)+8>>3]=q-+h[k>>3];h[p>>3]=+h[p>>3]+.6283185307179586;c[g>>2]=(c[g>>2]|0)+2}g=c[f>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];i=d;return}function xM(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2];if(!(c[e>>2]|0)){i=b;return}O4(c[(c[e>>2]|0)+44>>2]|0);O4(c[e>>2]|0);i=b;return}function yM(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+96|0;j=h+40|0;k=h+84|0;l=h+80|0;m=h+76|0;n=h;o=h+72|0;p=h+68|0;q=h+64|0;r=h+56|0;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if(!(a[c[l>>2]>>0]|0)){s=b;t=36640;u=s+40|0;do{c[s>>2]=c[t>>2];s=s+4|0;t=t+4|0}while((s|0)<(u|0));i=h;return}if(!(c[m>>2]|0))c[m>>2]=143782;c[p>>2]=15;if((d[(c[(c[(c[k>>2]|0)+8>>2]|0)+104>>2]|0)+82>>0]|0)!=0?(g=AT(c[k>>2]|0,c[l>>2]|0,p)|0,c[o>>2]=g,(g|0)!=0):0){if(pM(c[k>>2]|0,c[o>>2]|0,n,c[m>>2]|0,c[p>>2]|0,0)|0){o=wB(c[k>>2]|0)|0;g=c[l>>2]|0;f=c[m>>2]|0;c[j>>2]=o;c[j+4>>2]=g;c[j+8>>2]=f;$z(0,143784,j)|0}}else{if((c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0)==34128)c[q>>2]=0;else{c[r>>2]=c[k>>2];c[r+4>>2]=0;c[q>>2]=r}if(pM(c[k>>2]|0,0,n,c[l>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)MM(c[k>>2]|0,c[l>>2]|0)}s=b;t=n;u=s+40|0;do{c[s>>2]=c[t>>2];s=s+4|0;t=t+4|0}while((s|0)<(u|0));i=h;return}function zM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=i;i=i+192|0;f=e+144|0;g=e+128|0;j=e+112|0;k=e+96|0;l=e+180|0;m=e+176|0;n=e+172|0;o=e+168|0;p=e+80|0;q=e+64|0;r=e+48|0;s=e+164|0;t=e+160|0;u=e+32|0;v=e;c[m>>2]=b;c[n>>2]=c[(c[m>>2]|0)+4>>2];c[o>>2]=c[c[m>>2]>>2];m=(c[(c[(qC(c[o>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];FJ(u,f,m);c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];if(c[n>>2]|0){u=c[n>>2]|0;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];c[v+16>>2]=c[u+16>>2];c[v+20>>2]=c[u+20>>2];c[v+24>>2]=c[u+24>>2];c[v+28>>2]=c[u+28>>2];if((+h[v>>3]<=+h[p>>3]?+h[p>>3]<=+h[v+16>>3]:0)?+h[v+8>>3]<=+h[p+8>>3]:0)w=+h[p+8>>3]<=+h[v+16+8>>3];else w=0;a[l>>0]=w&1;x=a[l>>0]|0;i=e;return x|0}if((c[o>>2]|0)!=(c[14294]|0)){c[14295]=c[(c[(c[o>>2]|0)+8>>2]|0)+12>>2];c[14296]=c[(c[14295]|0)+44>>2];c[14297]=c[(c[14295]|0)+8>>2];w=_((c[(c[14295]|0)+4>>2]|0)-1|0,c[14297]|0)|0;c[14298]=w;c[14298]=(c[14298]|0)<0?0:w;c[14294]=c[o>>2]}c[t>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[14297]|0)){y=16;break}o=(c[14296]|0)+((c[s>>2]|0)+(c[14298]|0)<<4)|0;c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];o=(c[14296]|0)+((((c[s>>2]|0)+4|0)%(c[14297]|0)|0)+(c[14298]|0)<<4)|0;c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];c[r+12>>2]=c[o+12>>2];c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[j>>2]=c[9156];c[j+4>>2]=c[9157];c[j+8>>2]=c[9158];c[j+12>>2]=c[9159];c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];if(!(LM(k,j,g,f)|0))c[t>>2]=(c[t>>2]|0)+1;if((c[t>>2]|0)==2){y=14;break}c[s>>2]=(c[s>>2]|0)+2}if((y|0)==14){a[l>>0]=0;x=a[l>>0]|0;i=e;return x|0}else if((y|0)==16){a[l>>0]=1;x=a[l>>0]|0;i=e;return x|0}return 0}function AM(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+16|0;k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[l>>2]=0;if(!(d[(c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]|0)+82>>0]|0)){o=c[l>>2]|0;i=h;return o|0}if(!(d[(c[(c[j>>2]|0)+8>>2]|0)+145>>0]|0)){o=c[l>>2]|0;i=h;return o|0}c[l>>2]=BT(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;o=c[l>>2]|0;i=h;return o|0}function BM(e,f){e=e|0;f=f|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0;j=i;i=i+160|0;k=j+56|0;l=j+48|0;m=j+40|0;n=j+32|0;o=j+144|0;p=j+140|0;q=j+136|0;r=j+132|0;s=j+24|0;t=j+16|0;u=j+128|0;v=j+124|0;w=j+120|0;x=j+116|0;y=j+112|0;z=j;A=j+108|0;B=j+150|0;C=j+149|0;D=j+148|0;E=j+104|0;F=j+100|0;G=j+96|0;H=j+92|0;I=j+88|0;J=j+80|0;K=j+76|0;L=j+72|0;M=j+68|0;N=j+64|0;O=j+60|0;c[o>>2]=e;c[p>>2]=f;c[q>>2]=c[(c[o>>2]|0)+16>>2];if(c[(c[q>>2]|0)+208>>2]|0)P=1;else P=((b[(c[q>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)!=0;c[G>>2]=P&1;c[H>>2]=0;c[I>>2]=0;if((c[G>>2]|0)!=0?(c[(c[o>>2]|0)+152>>2]&4|0)==0:0)jR(c[o>>2]|0,c[(c[q>>2]|0)+208>>2]|0,c[(c[q>>2]|0)+228>>2]|0,c[(c[q>>2]|0)+244>>2]|0,c[(c[q>>2]|0)+212>>2]|0);c[r>>2]=c[(c[(c[p>>2]|0)+8>>2]|0)+12>>2];c[A>>2]=c[(c[r>>2]|0)+44>>2];c[x>>2]=c[(c[r>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+4>>2];if((c[14292]|0)<(c[x>>2]|0)){c[14292]=(c[x>>2]|0)+5;if(c[14293]|0)Q=eK(c[14293]|0,c[14292]<<4)|0;else Q=cK(c[14292]<<4)|0;c[14293]=Q}Q=(c[(c[(c[p>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;r=(c[(c[p>>2]|0)+8>>2]|0)+16|0;c[Q>>2]=c[r>>2];c[Q+4>>2]=c[r+4>>2];c[Q+8>>2]=c[r+8>>2];c[Q+12>>2]=c[r+12>>2];R=+h[(c[(c[p>>2]|0)+8>>2]|0)+32>>3]*72.0;h[s>>3]=(+h[(c[(c[p>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+96>>3])/+(~~(+h[(c[(c[p>>2]|0)+8>>2]|0)+32>>3]*72.0>=0.0?R+.5:R-.5)|0);R=+h[(c[(c[p>>2]|0)+8>>2]|0)+40>>3]*72.0;h[t>>3]=+h[(c[(c[p>>2]|0)+8>>2]|0)+80>>3]/+(~~(+h[(c[(c[p>>2]|0)+8>>2]|0)+40>>3]*72.0>=0.0?R+.5:R-.5)|0);c[y>>2]=CM(c[o>>2]|0,c[p>>2]|0)|0;c[J>>2]=0;r=c[p>>2]|0;do if(d[(c[(c[p>>2]|0)+8>>2]|0)+117>>0]&1){c[I>>2]=iO(r,c[13819]|0,143666)|0;oR(c[o>>2]|0,c[I>>2]|0);c[E>>2]=iO(c[p>>2]|0,c[13820]|0,143674)|0;pR(c[o>>2]|0,c[E>>2]|0);a[B>>0]=1}else{Q=c[p>>2]|0;if(d[(c[r+8>>2]|0)+117>>0]&2){c[I>>2]=iO(Q,c[13821]|0,143682)|0;oR(c[o>>2]|0,c[I>>2]|0);c[E>>2]=iO(c[p>>2]|0,c[13822]|0,143690)|0;pR(c[o>>2]|0,c[E>>2]|0);a[B>>0]=1;break}P=c[p>>2]|0;if(d[(c[Q+8>>2]|0)+117>>0]&8){c[I>>2]=iO(P,c[13825]|0,143698)|0;oR(c[o>>2]|0,c[I>>2]|0);c[E>>2]=iO(c[p>>2]|0,c[13826]|0,143706)|0;pR(c[o>>2]|0,c[E>>2]|0);a[B>>0]=1;break}if(d[(c[P+8>>2]|0)+117>>0]&4){c[I>>2]=iO(c[p>>2]|0,c[13823]|0,143714)|0;oR(c[o>>2]|0,c[I>>2]|0);c[E>>2]=iO(c[p>>2]|0,c[13824]|0,143722)|0;pR(c[o>>2]|0,c[E>>2]|0);a[B>>0]=1;break}do if(c[y>>2]&1){c[H>>2]=DM(c[p>>2]|0)|0;P=(IH(c[H>>2]|0,J,K)|0)<<24>>24!=0;Q=c[o>>2]|0;if(!P){pR(Q,c[H>>2]|0);a[B>>0]=1;break}pR(Q,c[J>>2]|0);Q=c[o>>2]|0;if(c[J+4>>2]|0){P=c[J+4>>2]|0;f=eO(c[p>>2]|0,c[13850]|0,0,0)|0;qR(Q,P,f,+g[K>>2])}else{f=eO(c[p>>2]|0,c[13850]|0,0,0)|0;qR(Q,174917,f,+g[K>>2])}if(c[y>>2]&2){a[B>>0]=3;break}else{a[B>>0]=2;break}}else if(c[y>>2]&576){c[H>>2]=DM(c[p>>2]|0)|0;a[B>>0]=1;break}else{a[B>>0]=0;break}while(0);c[I>>2]=EM(c[o>>2]|0,c[p>>2]|0)|0}while(0);if(a[(c[(c[(c[p>>2]|0)+8>>2]|0)+8>>2]|0)+12>>0]|0)if((a[c[c[(c[(c[p>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[143118]|0))S=(J3(c[c[(c[(c[p>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143118)|0)!=0^1;else S=0;else S=1;a[D>>0]=S&1;if(((c[w>>2]|0)==0?(d[B>>0]|0)!=0:0)?(d[D>>0]|0)!=0:0){c[w>>2]=1;oR(c[o>>2]|0,175430)}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[w>>2]|0))break;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[x>>2]|0))break;S=(c[u>>2]|0)+(_(c[v>>2]|0,c[x>>2]|0)|0)|0;K=(c[A>>2]|0)+(S<<4)|0;c[z>>2]=c[K>>2];c[z+4>>2]=c[K+4>>2];c[z+8>>2]=c[K+8>>2];c[z+12>>2]=c[K+12>>2];h[(c[14293]|0)+(c[u>>2]<<4)>>3]=+h[z>>3]*+h[s>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+16>>3];h[(c[14293]|0)+(c[u>>2]<<4)+8>>3]=+h[z+8>>3]*+h[t>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+16+8>>3];c[u>>2]=(c[u>>2]|0)+1}K=c[y>>2]|0;do if((c[x>>2]|0)<=2){if((K&512|0)!=0&(c[v>>2]|0)==0?(H3(c[H>>2]|0,58)|0)!=0:0){c[L>>2]=AH(c[o>>2]|0,c[14293]|0,c[H>>2]|0)|0;if((c[L>>2]|0)>1){c[n>>2]=wB(c[p>>2]|0)|0;$z(3,143730,n)|0}a[B>>0]=0}sR(c[o>>2]|0,c[14293]|0,c[x>>2]|0,d[B>>0]|0);if(c[y>>2]&8)FM(c[o>>2]|0,c[p>>2]|0)}else{if(K&64){if((c[v>>2]|0)==0?(c[M>>2]=BH(c[o>>2]|0,c[14293]|0,c[H>>2]|0,1)|0,(c[M>>2]|0)>1):0){c[m>>2]=wB(c[p>>2]|0)|0;$z(3,143730,m)|0}tR(c[o>>2]|0,c[14293]|0,c[x>>2]|0,0);break}if(c[y>>2]&1024){oR(c[o>>2]|0,175430);tR(c[o>>2]|0,c[14293]|0,c[x>>2]|0,d[B>>0]|0);oR(c[o>>2]|0,c[I>>2]|0);wR(c[o>>2]|0,(c[14293]|0)+32|0,2);break}S=c[o>>2]|0;E=c[14293]|0;r=c[x>>2]|0;if(c[y>>2]&2130706444){cM(S,E,r,c[y>>2]|0,d[B>>0]|0);break}else{tR(S,E,r,d[B>>0]|0);break}}while(0);a[B>>0]=0;c[v>>2]=(c[v>>2]|0)+1}a[C>>0]=0;I=c[p>>2]|0;do if(!(a[(c[(c[(c[p>>2]|0)+8>>2]|0)+8>>2]|0)+12>>0]|0)){m=yA(I,146722)|0;c[F>>2]=m;if((m|0)!=0?(a[c[F>>2]>>0]|0)!=0:0)a[C>>0]=1}else{c[F>>2]=c[c[(c[I+8>>2]|0)+8>>2]>>2];if((a[c[F>>2]>>0]|0)==(a[143118]|0)?(J3(c[F>>2]|0,143118)|0)==0:0){m=yA(c[p>>2]|0,143103)|0;c[F>>2]=m;if(!m)break;if(!(a[c[F>>2]>>0]|0))break;a[C>>0]=1;break}a[C>>0]=1}while(0);if(a[C>>0]|0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[x>>2]|0))break;C=(c[A>>2]|0)+(c[u>>2]<<4)|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];h[(c[14293]|0)+(c[u>>2]<<4)>>3]=+h[z>>3]*+h[s>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+16>>3];h[(c[14293]|0)+(c[u>>2]<<4)+8>>3]=+h[z+8>>3]*+h[t>>3]+ +h[(c[(c[p>>2]|0)+8>>2]|0)+16+8>>3];c[u>>2]=(c[u>>2]|0)+1}do if((d[B>>0]|0)!=0?(d[D>>0]|0)!=0:0){u=c[y>>2]|0;if((c[x>>2]|0)>2)if(!(u&64)){t=c[o>>2]|0;z=c[14293]|0;s=c[x>>2]|0;if(c[y>>2]&12){cM(t,z,s,c[y>>2]|0,d[B>>0]|0);break}else{tR(t,z,s,d[B>>0]|0);break}}else{c[O>>2]=BH(c[o>>2]|0,c[14293]|0,c[H>>2]|0,1)|0;if((c[O>>2]|0)>1){c[k>>2]=wB(c[p>>2]|0)|0;$z(3,143730,k)|0}tR(c[o>>2]|0,c[14293]|0,c[x>>2]|0,0);break}else{if((u&512|0)!=0&(c[v>>2]|0)==0?(H3(c[H>>2]|0,58)|0)!=0:0){c[N>>2]=AH(c[o>>2]|0,c[14293]|0,c[H>>2]|0)|0;if((c[N>>2]|0)>1){c[l>>2]=wB(c[p>>2]|0)|0;$z(3,143730,l)|0}a[B>>0]=0}sR(c[o>>2]|0,c[14293]|0,c[x>>2]|0,d[B>>0]|0);if(!(c[y>>2]&8))break;FM(c[o>>2]|0,c[p>>2]|0);break}}while(0);y=c[o>>2]|0;l=c[F>>2]|0;F=c[14293]|0;N=c[x>>2]|0;x=a[B>>0]|0;yR(y,l,F,N,x,hO(c[p>>2]|0,c[13843]|0,174911)|0);a[B>>0]=0}O4(c[J>>2]|0);VJ(c[o>>2]|0,10,c[(c[(c[p>>2]|0)+8>>2]|0)+104>>2]|0);if(!(c[G>>2]|0)){i=j;return}if(c[(c[o>>2]|0)+152>>2]&4)jR(c[o>>2]|0,c[(c[q>>2]|0)+208>>2]|0,c[(c[q>>2]|0)+228>>2]|0,c[(c[q>>2]|0)+244>>2]|0,c[(c[q>>2]|0)+212>>2]|0);kR(c[o>>2]|0);i=j;return}function CM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;f=e+24|0;g=e+20|0;j=e+16|0;k=e+12|0;l=e+8|0;m=e;c[f>>2]=b;c[g>>2]=d;d=IM(c[g>>2]|0,l)|0;c[j>>2]=d;if(d)rR(c[f>>2]|0,c[j>>2]|0);if(((c[13849]|0)!=0?(j=zA(c[g>>2]|0,c[13849]|0)|0,c[k>>2]=j,(j|0)!=0):0)?(a[c[k>>2]>>0]|0)!=0:0){h[m>>3]=+fO(c[g>>2]|0,c[13849]|0,1.0,0.0);zR(c[f>>2]|0,+h[m>>3])}i=e;return c[l>>2]|0}function DM(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=HM(c[d>>2]|0,172403)|0;i=b;return a|0}function EM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;d=iO(c[g>>2]|0,c[13817]|0,178518)|0;c[h>>2]=d;c[h>>2]=(a[c[h>>2]>>0]|0)!=0?d:174917;oR(c[f>>2]|0,c[h>>2]|0);i=e;return c[h>>2]|0}function FM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+128|0;e=d+96|0;f=d+80|0;g=d+116|0;j=d+112|0;k=d+72|0;l=d+64|0;m=d+32|0;n=d+16|0;o=d;c[g>>2]=a;c[j>>2]=b;h[l>>3]=.75;h[k>>3]=.6614;h[n+8>>3]=+h[l>>3]*+h[(c[(c[j>>2]|0)+8>>2]|0)+80>>3]/2.0;h[n>>3]=+h[(c[(c[j>>2]|0)+8>>2]|0)+96>>3]*+h[k>>3];k=(c[(c[j>>2]|0)+8>>2]|0)+16|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];GM(o,f,e);c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];h[m+16+8>>3]=+h[m+8>>3];h[m+16>>3]=+h[m>>3]-+h[n>>3]*2.0;wR(c[g>>2]|0,m,2);o=m+8|0;h[o>>3]=+h[o>>3]-+h[n+8>>3]*2.0;h[m+16+8>>3]=+h[m+8>>3];wR(c[g>>2]|0,m,2);i=d;return}function GM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function HM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=iO(c[f>>2]|0,c[13818]|0,178518)|0;if((a[c[h>>2]>>0]|0)==0?(c[h>>2]=iO(c[f>>2]|0,c[13817]|0,178518)|0,(a[c[h>>2]>>0]|0)==0):0)c[h>>2]=c[g>>2];i=e;return c[h>>2]|0}function IM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+48|0;f=e+32|0;g=e+28|0;h=e+24|0;j=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=iO(c[f>>2]|0,c[13834]|0,178518)|0;a:do if(a[c[h>>2]>>0]|0){d=JH(c[h>>2]|0)|0;c[j>>2]=d;c[m>>2]=d;b:while(1){d=c[c[m>>2]>>2]|0;c[o>>2]=d;if(!d)break a;if((a[c[o>>2]>>0]|0)==(a[148663]|0)?(J3(c[o>>2]|0,148663)|0)==0:0){c[k>>2]=c[k>>2]|1;c[m>>2]=(c[m>>2]|0)+4;continue}if((a[c[o>>2]>>0]|0)==(a[143742]|0)?(J3(c[o>>2]|0,143742)|0)==0:0){c[k>>2]=c[k>>2]|4;c[n>>2]=c[m>>2];while(1){c[n>>2]=(c[n>>2]|0)+4;c[(c[n>>2]|0)+-4>>2]=c[c[n>>2]>>2];if(!(c[c[n>>2]>>2]|0))continue b}}if((a[c[o>>2]>>0]|0)==(a[143750]|0)?(J3(c[o>>2]|0,143750)|0)==0:0){c[k>>2]=c[k>>2]|8;c[n>>2]=c[m>>2];while(1){c[n>>2]=(c[n>>2]|0)+4;c[(c[n>>2]|0)+-4>>2]=c[c[n>>2]>>2];if(!(c[c[n>>2]>>2]|0))continue b}}if((a[c[o>>2]>>0]|0)==(a[171938]|0)?(J3(c[o>>2]|0,171938)|0)==0:0){c[k>>2]=c[k>>2]|32;c[m>>2]=(c[m>>2]|0)+4;continue}if((a[c[o>>2]>>0]|0)==(a[143760]|0)?(J3(c[o>>2]|0,143760)|0)==0:0){c[k>>2]=c[k>>2]|3;c[n>>2]=c[m>>2];while(1){c[n>>2]=(c[n>>2]|0)+4;c[(c[n>>2]|0)+-4>>2]=c[c[n>>2]>>2];if(!(c[c[n>>2]>>2]|0))continue b}}if(((a[c[o>>2]>>0]|0)==(a[143767]|0)?(J3(c[o>>2]|0,143767)|0)==0:0)?(JM(c[f>>2]|0)|0)!=0:0){c[k>>2]=c[k>>2]|64;c[n>>2]=c[m>>2];while(1){c[n>>2]=(c[n>>2]|0)+4;c[(c[n>>2]|0)+-4>>2]=c[c[n>>2]>>2];if(!(c[c[n>>2]>>2]|0))continue b}}if(((a[c[o>>2]>>0]|0)==(a[143775]|0)?(J3(c[o>>2]|0,143775)|0)==0:0)?(KM(c[f>>2]|0)|0)!=0:0){c[k>>2]=c[k>>2]|512;c[n>>2]=c[m>>2];while(1){c[n>>2]=(c[n>>2]|0)+4;c[(c[n>>2]|0)+-4>>2]=c[c[n>>2]>>2];if(!(c[c[n>>2]>>2]|0))continue b}}c[m>>2]=(c[m>>2]|0)+4}}while(0);m=c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0;c[l>>2]=m;if(!m){p=c[k>>2]|0;q=c[g>>2]|0;c[q>>2]=p;r=c[j>>2]|0;i=e;return r|0}c[k>>2]=c[k>>2]|c[(c[l>>2]|0)+40>>2];p=c[k>>2]|0;q=c[g>>2]|0;c[q>>2]=p;r=c[j>>2]|0;i=e;return r|0}function JM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0.0,k=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;a=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0;c[f>>2]=a;if(!a){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}if(((c[(c[f>>2]|0)+8>>2]|0)==4?(j=+h[(c[f>>2]|0)+16>>3],((~~(+h[(c[f>>2]|0)+16>>3]>=0.0?j+.5:j-.5)|0)%90|0|0)==0):0)?+h[(c[f>>2]|0)+24>>3]==0.0:0)k=+h[(c[f>>2]|0)+32>>3]==0.0;else k=0;c[d>>2]=k&1;g=c[d>>2]|0;i=b;return g|0}function KM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;a=c[(c[(c[(c[e>>2]|0)+8>>2]|0)+8>>2]|0)+8>>2]|0;c[f>>2]=a;if(a){c[d>>2]=(c[(c[f>>2]|0)+8>>2]|0)<=2&1;g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}return 0}function LM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0;f=i;i=i+32|0;g=f+28|0;j=f+24|0;k=f+16|0;l=f+8|0;m=f;h[k>>3]=-(+h[e+8>>3]-+h[d+8>>3]);h[l>>3]=+h[e>>3]-+h[d>>3];h[m>>3]=+h[k>>3]*+h[d>>3]+ +h[l>>3]*+h[d+8>>3];c[g>>2]=+h[k>>3]*+h[a>>3]+ +h[l>>3]*+h[a+8>>3]-+h[m>>3]>=0.0&1;c[j>>2]=+h[k>>3]*+h[b>>3]+ +h[l>>3]*+h[b+8>>3]-+h[m>>3]>=0.0&1;i=f;return (c[g>>2]|0)==(c[j>>2]|0)|0}function MM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=d+12|0;g=d+8|0;c[f>>2]=a;c[g>>2]=b;b=wB(c[f>>2]|0)|0;f=c[g>>2]|0;c[e>>2]=b;c[e+4>>2]=f;$z(0,143845,e)|0;i=d;return}function NM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+64|0;e=d+40|0;f=d+60|0;g=d+24|0;j=d+16|0;k=d+56|0;l=d;c[f>>2]=a;c[k>>2]=c[c[f>>2]>>2];f=(c[(c[(qC(c[k>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];FJ(l,e,f);c[g>>2]=c[l>>2];c[g+4>>2]=c[l+4>>2];c[g+8>>2]=c[l+8>>2];c[g+12>>2]=c[l+12>>2];h[j>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+80>>3]/2.0;if(!(+h[g+8>>3]>=-+h[j>>3])){m=0;n=m&1;o=n&255;i=d;return o|0}if(!(+h[g+8>>3]<=+h[j>>3])){m=0;n=m&1;o=n&255;i=d;return o|0}if(!(+h[g>>3]>=-+h[(c[(c[k>>2]|0)+8>>2]|0)+88>>3])){m=0;n=m&1;o=n&255;i=d;return o|0}m=+h[g>>3]<=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];n=m&1;o=n&255;i=d;return o|0}function OM(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0.0;e=i;i=i+48|0;f=e;g=e+40|0;j=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;c[g>>2]=a;c[j>>2]=d;c[k>>2]=c[(c[g>>2]|0)+16>>2];if(c[(c[k>>2]|0)+208>>2]|0)n=1;else n=((b[(c[k>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)!=0;c[m>>2]=n&1;c[l>>2]=c[(c[(c[j>>2]|0)+8>>2]|0)+12>>2];if(!(c[l>>2]|0)){i=e;return}if((c[m>>2]|0)!=0?(c[(c[g>>2]|0)+152>>2]&4|0)==0:0)jR(c[g>>2]|0,c[(c[k>>2]|0)+208>>2]|0,c[(c[k>>2]|0)+228>>2]|0,c[(c[k>>2]|0)+244>>2]|0,c[(c[k>>2]|0)+212>>2]|0);if(c[l>>2]|0){n=c[(c[g>>2]|0)+36>>2]|0;o=+h[(c[(c[j>>2]|0)+8>>2]|0)+16+8>>3]+ +(c[(c[l>>2]|0)+4+4>>2]|0);d=c[c[l>>2]>>2]|0;h[f>>3]=+h[(c[(c[j>>2]|0)+8>>2]|0)+16>>3]+ +(c[(c[l>>2]|0)+4>>2]|0);h[f+8>>3]=o;c[f+16>>2]=d;Y2(n,143876,f)|0}f=(c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]|0)+56|0;n=(c[(c[j>>2]|0)+8>>2]|0)+16|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];VJ(c[g>>2]|0,10,c[(c[(c[j>>2]|0)+8>>2]|0)+104>>2]|0);if(!(c[m>>2]|0)){i=e;return}if(c[(c[g>>2]|0)+152>>2]&4)jR(c[g>>2]|0,c[(c[k>>2]|0)+208>>2]|0,c[(c[k>>2]|0)+228>>2]|0,c[(c[k>>2]|0)+244>>2]|0,c[(c[k>>2]|0)+212>>2]|0);kR(c[g>>2]|0);i=e;return}function PM(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[(c[(c[d>>2]|0)+8>>2]|0)+12>>2];XM(c[e>>2]|0);i=b;return}function QM(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+80|0;j=h+40|0;k=h+72|0;l=h+68|0;m=h+64|0;n=h+60|0;o=h+56|0;p=h;q=h+52|0;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if(!(a[c[l>>2]>>0]|0)){r=b;s=36640;t=r+40|0;do{c[r>>2]=c[s>>2];r=r+4|0;s=s+4|0}while((r|0)<(t|0));i=h;return}c[q>>2]=15;if(!(c[m>>2]|0))c[m>>2]=143782;c[n>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];g=WM(c[n>>2]|0,c[l>>2]|0)|0;c[o>>2]=g;f=c[k>>2]|0;if(g){if(pM(f,(c[o>>2]|0)+16|0,p,c[m>>2]|0,d[(c[o>>2]|0)+65>>0]|0,0)|0){o=wB(c[k>>2]|0)|0;g=c[l>>2]|0;e=c[m>>2]|0;c[j>>2]=o;c[j+4>>2]=g;c[j+8>>2]=e;$z(0,143784,j)|0}}else if(pM(f,(c[n>>2]|0)+16|0,p,c[l>>2]|0,c[q>>2]|0,0)|0)MM(c[k>>2]|0,c[l>>2]|0);r=b;s=p;t=r+40|0;do{c[r>>2]=c[s>>2];r=r+4|0;s=s+4|0}while((r|0)<(t|0));i=h;return}function RM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+80|0;e=d+48|0;f=d+76|0;g=d+72|0;j=d+68|0;k=d+64|0;l=d+16|0;m=d;c[f>>2]=a;c[j>>2]=c[(c[f>>2]|0)+4>>2];c[k>>2]=c[c[f>>2]>>2];f=(c[(c[(qC(c[k>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];FJ(m,e,f);c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(!(c[j>>2]|0)){c[g>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];k=(c[g>>2]|0)+16|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];c[l+16>>2]=c[k+16>>2];c[l+20>>2]=c[k+20>>2];c[l+24>>2]=c[k+24>>2];c[l+28>>2]=c[k+28>>2]}else{k=c[j>>2]|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];c[l+16>>2]=c[k+16>>2];c[l+20>>2]=c[k+20>>2];c[l+24>>2]=c[k+24>>2];c[l+28>>2]=c[k+28>>2]}if(!(+h[l>>3]<=+h[b>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}if(!(+h[b>>3]<=+h[l+16>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}if(!(+h[l+8>>3]<=+h[b+8>>3])){n=0;o=n&1;p=o&255;i=d;return p|0}n=+h[b+8>>3]<=+h[l+16+8>>3];o=n&1;p=o&255;i=d;return p|0}function SM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;j=i;i=i+144|0;k=j+80|0;l=j+48|0;m=j+132|0;n=j+128|0;o=j+124|0;p=j+120|0;q=j+116|0;r=j+112|0;s=j+108|0;t=j+104|0;u=j+100|0;v=j+32|0;w=j+96|0;x=j;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;if(!(a[(c[o>>2]|0)+28>>0]|0)){c[m>>2]=0;y=c[m>>2]|0;i=j;return y|0}g=c[o>>2]|0;c[v>>2]=c[g>>2];c[v+4>>2]=c[g+4>>2];c[v+8>>2]=c[g+8>>2];c[v+12>>2]=c[g+12>>2];c[w>>2]=c[(c[(c[n>>2]|0)+8>>2]|0)+12>>2];c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[(c[w>>2]|0)+48>>2]|0))break;g=(c[(c[(qC(c[n>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;o=(c[(c[(c[w>>2]|0)+56>>2]|0)+(c[s>>2]<<2)>>2]|0)+16|0;if(g){c[t>>2]=~~+h[o+8>>3];c[u>>2]=~~+h[(c[(c[(c[w>>2]|0)+56>>2]|0)+(c[s>>2]<<2)>>2]|0)+16+16+8>>3]}else{c[t>>2]=~~+h[o>>3];c[u>>2]=~~+h[(c[(c[(c[w>>2]|0)+56>>2]|0)+(c[s>>2]<<2)>>2]|0)+16+16>>3]}if(+(c[t>>2]|0)<=+h[v>>3]?+h[v>>3]<=+(c[u>>2]|0):0){z=10;break}c[s>>2]=(c[s>>2]|0)+1}if((z|0)==10){if(c[(c[(qC(c[n>>2]|0)|0)+8>>2]|0)+116>>2]&1){z=c[q>>2]|0;v=(c[(c[(c[w>>2]|0)+56>>2]|0)+(c[s>>2]<<2)>>2]|0)+16|0;s=(c[(c[n>>2]|0)+8>>2]|0)+16|0;c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[l+12>>2]=c[v+12>>2];c[l+16>>2]=c[v+16>>2];c[l+20>>2]=c[v+20>>2];c[l+24>>2]=c[v+24>>2];c[l+28>>2]=c[v+28>>2];c[k>>2]=c[s>>2];c[k+4>>2]=c[s+4>>2];c[k+8>>2]=c[s+8>>2];c[k+12>>2]=c[s+12>>2];GJ(x,l,k);c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2];c[z+8>>2]=c[x+8>>2];c[z+12>>2]=c[x+12>>2];c[z+16>>2]=c[x+16>>2];c[z+20>>2]=c[x+20>>2];c[z+24>>2]=c[x+24>>2];c[z+28>>2]=c[x+28>>2]}else{h[c[q>>2]>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]+ +(c[t>>2]|0);h[(c[q>>2]|0)+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+80>>3]/2.0;h[(c[q>>2]|0)+16>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3]+ +(c[u>>2]|0)}h[(c[q>>2]|0)+16+8>>3]=+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[n>>2]|0)+8>>2]|0)+80>>3]/2.0;c[c[r>>2]>>2]=1}c[m>>2]=c[p>>2];y=c[m>>2]|0;i=j;return y|0}function TM(d,e){d=d|0;e=e|0;var f=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=i;i=i+176|0;j=f+96|0;k=f+168|0;l=f+164|0;m=f+160|0;n=f+64|0;o=f;p=f+156|0;q=f+152|0;r=f+148|0;s=f+144|0;t=f+136|0;u=f+132|0;v=f+128|0;c[k>>2]=d;c[l>>2]=e;c[m>>2]=c[(c[k>>2]|0)+16>>2];if(c[(c[m>>2]|0)+208>>2]|0)w=1;else w=((b[(c[m>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)!=0;c[r>>2]=w&1;c[q>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+12>>2];w=(c[q>>2]|0)+16|0;c[n>>2]=c[w>>2];c[n+4>>2]=c[w+4>>2];c[n+8>>2]=c[w+8>>2];c[n+12>>2]=c[w+12>>2];c[n+16>>2]=c[w+16>>2];c[n+20>>2]=c[w+20>>2];c[n+24>>2]=c[w+24>>2];c[n+28>>2]=c[w+28>>2];h[n>>3]=+h[n>>3]+ +h[(c[(c[l>>2]|0)+8>>2]|0)+16>>3];w=n+8|0;h[w>>3]=+h[w>>3]+ +h[(c[(c[l>>2]|0)+8>>2]|0)+16+8>>3];w=n+16|0;h[w>>3]=+h[w>>3]+ +h[(c[(c[l>>2]|0)+8>>2]|0)+16>>3];w=n+16+8|0;h[w>>3]=+h[w>>3]+ +h[(c[(c[l>>2]|0)+8>>2]|0)+16+8>>3];if((c[r>>2]|0)!=0?(c[(c[k>>2]|0)+152>>2]&4|0)==0:0)jR(c[k>>2]|0,c[(c[m>>2]|0)+208>>2]|0,c[(c[m>>2]|0)+228>>2]|0,c[(c[m>>2]|0)+244>>2]|0,c[(c[m>>2]|0)+212>>2]|0);c[p>>2]=CM(c[k>>2]|0,c[l>>2]|0)|0;EM(c[k>>2]|0,c[l>>2]|0)|0;c[t>>2]=0;do if(c[p>>2]&1){c[u>>2]=DM(c[l>>2]|0)|0;if(!((IH(c[u>>2]|0,t,v)|0)<<24>>24)){c[s>>2]=1;pR(c[k>>2]|0,c[u>>2]|0);break}pR(c[k>>2]|0,c[t>>2]|0);w=c[k>>2]|0;if(c[t+4>>2]|0){e=c[t+4>>2]|0;d=eO(c[l>>2]|0,c[13850]|0,0,0)|0;qR(w,e,d,+g[v>>2])}else{d=eO(c[l>>2]|0,c[13850]|0,0,0)|0;qR(w,174917,d,+g[v>>2])}if(c[p>>2]&2){c[s>>2]=3;break}else{c[s>>2]=2;break}}else c[s>>2]=0;while(0);if((a[c[c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]>>2]>>0]|0)==(a[143653]|0)?(J3(c[c[(c[(c[l>>2]|0)+8>>2]|0)+8>>2]>>2]|0,143653)|0)==0:0)c[p>>2]=c[p>>2]|4;if(c[p>>2]&2130706444){c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];v=o+32|0;u=n+16|0;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];h[o+16>>3]=+h[o+32>>3];h[o+16+8>>3]=+h[o+8>>3];h[o+48>>3]=+h[o>>3];h[o+48+8>>3]=+h[o+32+8>>3];cM(c[k>>2]|0,o,4,c[p>>2]|0,c[s>>2]|0)}else{p=c[k>>2]|0;o=c[s>>2]|0;c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];c[j+16>>2]=c[n+16>>2];c[j+20>>2]=c[n+20>>2];c[j+24>>2]=c[n+24>>2];c[j+28>>2]=c[n+28>>2];uR(p,j,o)}UM(c[k>>2]|0,c[l>>2]|0,c[q>>2]|0);if(c[t>>2]|0)O4(c[t>>2]|0);if(!(c[r>>2]|0)){i=f;return}if(c[(c[k>>2]|0)+152>>2]&4)jR(c[k>>2]|0,c[(c[m>>2]|0)+208>>2]|0,c[(c[m>>2]|0)+228>>2]|0,c[(c[m>>2]|0)+244>>2]|0,c[(c[m>>2]|0)+212>>2]|0);kR(c[k>>2]|0);i=f;return}function UM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+160|0;g=f+128|0;j=f+112|0;k=f+156|0;l=f+152|0;m=f+148|0;n=f+144|0;o=f+80|0;p=f+64|0;q=f+48|0;r=f+32|0;s=f+16|0;t=f;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if(c[(c[m>>2]|0)+52>>2]|0){e=(c[(c[m>>2]|0)+52>>2]|0)+56|0;d=(c[m>>2]|0)+16|0;b=(c[m>>2]|0)+16+16|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];VM(q,j,g);b=(c[(c[l>>2]|0)+8>>2]|0)+16|0;c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];GM(r,j,g);c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];VJ(c[k>>2]|0,10,c[(c[m>>2]|0)+52>>2]|0);EM(c[k>>2]|0,c[l>>2]|0)|0}r=(c[(c[l>>2]|0)+8>>2]|0)+16|0;c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[m>>2]|0)+48>>2]|0))break;if((c[n>>2]|0)>0){if(a[(c[m>>2]|0)+64>>0]|0){r=(c[(c[(c[m>>2]|0)+56>>2]|0)+(c[n>>2]<<2)>>2]|0)+16|0;c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];h[o+16>>3]=+h[o>>3];h[o+16+8>>3]=+h[(c[(c[(c[m>>2]|0)+56>>2]|0)+(c[n>>2]<<2)>>2]|0)+16+16+8>>3]}else{r=o+16|0;e=(c[(c[(c[m>>2]|0)+56>>2]|0)+(c[n>>2]<<2)>>2]|0)+16+16|0;c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];h[o>>3]=+h[(c[(c[(c[m>>2]|0)+56>>2]|0)+(c[n>>2]<<2)>>2]|0)+16>>3];h[o+8>>3]=+h[o+16+8>>3]};c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];GM(s,j,g);c[o>>2]=c[s>>2];c[o+4>>2]=c[s+4>>2];c[o+8>>2]=c[s+8>>2];c[o+12>>2]=c[s+12>>2];e=o+16|0;r=o+16|0;c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];GM(t,j,g);c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];wR(c[k>>2]|0,o,2)}UM(c[k>>2]|0,c[l>>2]|0,c[(c[(c[m>>2]|0)+56>>2]|0)+(c[n>>2]<<2)>>2]|0);c[n>>2]=(c[n>>2]|0)+1}i=f;return}function VM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=(+h[b>>3]+ +h[d>>3])/2.0;h[f+8>>3]=(+h[b+8>>3]+ +h[d+8>>3])/2.0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function WM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;if(((c[(c[f>>2]|0)+60>>2]|0)!=0?(a[c[(c[f>>2]|0)+60>>2]>>0]|0)==(a[c[g>>2]>>0]|0):0)?(J3(c[(c[f>>2]|0)+60>>2]|0,c[g>>2]|0)|0)==0:0){c[h>>2]=c[f>>2];k=c[h>>2]|0;i=e;return k|0}c[h>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[f>>2]|0)+48>>2]|0)){l=9;break}d=WM(c[(c[(c[f>>2]|0)+56>>2]|0)+(c[j>>2]<<2)>>2]|0,c[g>>2]|0)|0;c[h>>2]=d;if(d){l=9;break}c[j>>2]=(c[j>>2]|0)+1}if((l|0)==9){k=c[h>>2]|0;i=e;return k|0}return 0}function XM(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))break;XM(c[(c[(c[d>>2]|0)+56>>2]|0)+(c[e>>2]<<2)>>2]|0);c[e>>2]=(c[e>>2]|0)+1}O4(c[(c[d>>2]|0)+60>>2]|0);UJ(c[(c[d>>2]|0)+52>>2]|0);O4(c[(c[d>>2]|0)+56>>2]|0);O4(c[d>>2]|0);i=b;return}function YM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;e=i;i=i+80|0;f=e+32|0;g=e+64|0;j=e+60|0;k=e+16|0;l=e+56|0;m=e;n=e+52|0;o=e+48|0;c[j>>2]=b;c[l>>2]=c[c[j>>2]>>2];j=(c[(c[(qC(c[l>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];FJ(m,f,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];if((c[l>>2]|0)!=(c[14304]|0)){c[o>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+12>>2];m=(c[(c[o>>2]|0)+4>>2]|0)-1<<1;c[n>>2]=m;c[n>>2]=(c[n>>2]|0)<0?0:m;h[4585]=+h[(c[(c[o>>2]|0)+44>>2]|0)+((c[n>>2]|0)+1<<4)>>3];c[14304]=c[l>>2]}p=+N(+(+h[k>>3]));if(!(p>+h[4585])?(p=+N(+(+h[k+8>>3])),!(p>+h[4585])):0){p=+d2(+h[k>>3],+h[k+8>>3]);a[g>>0]=p<=+h[4585];q=a[g>>0]|0;i=e;return q|0}a[g>>0]=0;q=a[g>>0]|0;i=e;return q|0}function ZM(e,f){e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=i;i=i+80|0;j=g+60|0;k=g+56|0;l=g+52|0;m=g+48|0;n=g+44|0;o=g+40|0;p=g+36|0;q=g+32|0;r=g+28|0;s=g;t=g+24|0;u=g+64|0;v=g+20|0;w=g+16|0;c[j>>2]=e;c[k>>2]=f;c[l>>2]=c[(c[j>>2]|0)+16>>2];if(c[(c[l>>2]|0)+208>>2]|0)x=1;else x=((b[(c[l>>2]|0)+260>>1]<<15&65535)<<16>>16>>15<<16>>16|0)!=0;c[w>>2]=x&1;if((c[w>>2]|0)!=0?(c[(c[j>>2]|0)+152>>2]&4|0)==0:0)jR(c[j>>2]|0,c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+228>>2]|0,c[(c[l>>2]|0)+244>>2]|0,c[(c[l>>2]|0)+212>>2]|0);c[m>>2]=c[(c[(c[k>>2]|0)+8>>2]|0)+12>>2];c[t>>2]=c[(c[m>>2]|0)+44>>2];c[p>>2]=c[(c[m>>2]|0)+8>>2];c[q>>2]=c[(c[m>>2]|0)+4>>2];if((c[14299]|0)<(c[p>>2]|0)){c[14299]=(c[p>>2]|0)+2;if(c[14300]|0)y=eK(c[14300]|0,c[14299]<<4)|0;else y=cK(c[14299]<<4)|0;c[14300]=y}IM(c[k>>2]|0,r)|0;y=c[j>>2]|0;if(c[r>>2]&32)rR(y,57204);else rR(y,57208);y=c[k>>2]|0;do if(!(d[(c[(c[k>>2]|0)+8>>2]|0)+117>>0]&1)){r=c[k>>2]|0;if(d[(c[y+8>>2]|0)+117>>0]&2){c[v>>2]=iO(r,c[13821]|0,143682)|0;oR(c[j>>2]|0,c[v>>2]|0);c[v>>2]=iO(c[k>>2]|0,c[13822]|0,143690)|0;pR(c[j>>2]|0,c[v>>2]|0);break}m=c[k>>2]|0;if(d[(c[r+8>>2]|0)+117>>0]&8){c[v>>2]=iO(m,c[13825]|0,143698)|0;oR(c[j>>2]|0,c[v>>2]|0);c[v>>2]=iO(c[k>>2]|0,c[13826]|0,143706)|0;pR(c[j>>2]|0,c[v>>2]|0);break}r=c[k>>2]|0;if(d[(c[m+8>>2]|0)+117>>0]&4){c[v>>2]=iO(r,c[13823]|0,143714)|0;oR(c[j>>2]|0,c[v>>2]|0);c[v>>2]=iO(c[k>>2]|0,c[13824]|0,143722)|0;pR(c[j>>2]|0,c[v>>2]|0);break}else{c[v>>2]=HM(r,174917)|0;pR(c[j>>2]|0,c[v>>2]|0);EM(c[j>>2]|0,c[k>>2]|0)|0;break}}else{c[v>>2]=iO(y,c[13819]|0,143666)|0;oR(c[j>>2]|0,c[v>>2]|0);c[v>>2]=iO(c[k>>2]|0,c[13820]|0,143674)|0;pR(c[j>>2]|0,c[v>>2]|0)}while(0);a[u>>0]=1;if((c[q>>2]|0)==0?(c[q>>2]=1,(a[c[v>>2]>>0]|0)!=0):0)oR(c[j>>2]|0,c[v>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[q>>2]|0))break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[p>>2]|0))break;v=(c[n>>2]|0)+(_(c[o>>2]|0,c[p>>2]|0)|0)|0;y=(c[t>>2]|0)+(v<<4)|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];h[(c[14300]|0)+(c[n>>2]<<4)>>3]=+h[s>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3];h[(c[14300]|0)+(c[n>>2]<<4)+8>>3]=+h[s+8>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3];c[n>>2]=(c[n>>2]|0)+1}sR(c[j>>2]|0,c[14300]|0,c[p>>2]|0,d[u>>0]|0);a[u>>0]=0;c[o>>2]=(c[o>>2]|0)+1}if(!(c[w>>2]|0)){i=g;return}if(c[(c[j>>2]|0)+152>>2]&4)jR(c[j>>2]|0,c[(c[l>>2]|0)+208>>2]|0,c[(c[l>>2]|0)+228>>2]|0,c[(c[l>>2]|0)+244>>2]|0,c[(c[l>>2]|0)+212>>2]|0);kR(c[j>>2]|0);i=g;return}function _M(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0;e=i;i=i+240|0;f=e+192|0;g=e+176|0;j=e+160|0;k=e+144|0;l=e+236|0;m=e+232|0;n=e+228|0;o=e+224|0;p=e+220|0;q=e+216|0;r=e+128|0;s=e+112|0;t=e+96|0;u=e+212|0;v=e+208|0;w=e+80|0;x=e+48|0;y=e+40|0;z=e+32|0;A=e;c[m>>2]=b;c[u>>2]=c[(c[m>>2]|0)+4>>2];c[v>>2]=c[c[m>>2]>>2];m=(c[(c[(qC(c[v>>2]|0)|0)+8>>2]|0)+116>>2]&3)*90|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];FJ(w,f,m);c[r>>2]=c[w>>2];c[r+4>>2]=c[w+4>>2];c[r+8>>2]=c[w+8>>2];c[r+12>>2]=c[w+12>>2];if(c[u>>2]|0){w=c[u>>2]|0;c[x>>2]=c[w>>2];c[x+4>>2]=c[w+4>>2];c[x+8>>2]=c[w+8>>2];c[x+12>>2]=c[w+12>>2];c[x+16>>2]=c[w+16>>2];c[x+20>>2]=c[w+20>>2];c[x+24>>2]=c[w+24>>2];c[x+28>>2]=c[w+28>>2];if((+h[x>>3]<=+h[r>>3]?+h[r>>3]<=+h[x+16>>3]:0)?+h[x+8>>3]<=+h[r+8>>3]:0)B=+h[r+8>>3]<=+h[x+16+8>>3];else B=0;a[l>>0]=B&1;C=a[l>>0]|0;i=e;return C|0}if((c[v>>2]|0)!=(c[14305]|0)){c[14306]=c[(c[(c[v>>2]|0)+8>>2]|0)+12>>2];c[14307]=c[(c[14306]|0)+44>>2];c[14308]=c[(c[14306]|0)+8>>2];do if(c[(c[14306]|0)+40>>2]&2048){zO(A,c[14306]|0);h[y>>3]=+h[A+16>>3]-+h[A>>3];h[z>>3]=+h[A+16+8>>3]-+h[A+8>>3];B=(c[(c[(qC(c[v>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;D=+h[y>>3];if(B){h[4586]=D;h[4587]=+h[z>>3];break}else{h[4587]=D;h[4586]=+h[z>>3];break}}else{B=(c[(c[(qC(c[v>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;D=+h[(c[(c[v>>2]|0)+8>>2]|0)+88>>3]+ +h[(c[(c[v>>2]|0)+8>>2]|0)+96>>3];if(B){h[4586]=D;h[4587]=+h[(c[(c[v>>2]|0)+8>>2]|0)+80>>3]}else{h[4587]=D;h[4586]=+h[(c[(c[v>>2]|0)+8>>2]|0)+80>>3]}D=+h[(c[(c[v>>2]|0)+8>>2]|0)+32>>3]*72.0;h[y>>3]=+(~~(+h[(c[(c[v>>2]|0)+8>>2]|0)+32>>3]*72.0>=0.0?D+.5:D-.5)|0);D=+h[(c[(c[v>>2]|0)+8>>2]|0)+40>>3]*72.0;h[z>>3]=+(~~(+h[(c[(c[v>>2]|0)+8>>2]|0)+40>>3]*72.0>=0.0?D+.5:D-.5)|0)}while(0);if(+h[4587]==0.0)h[4587]=1.0;if(+h[4586]==0.0)h[4586]=1.0;h[4588]=+h[y>>3]/+h[4587];h[4589]=+h[z>>3]/+h[4586];h[4590]=+h[y>>3]/2.0;h[4591]=+h[z>>3]/2.0;z=_((c[(c[14306]|0)+4>>2]|0)-1|0,c[14308]|0)|0;c[14309]=z;c[14309]=(c[14309]|0)<0?0:z;c[14305]=c[v>>2]}h[r>>3]=+h[r>>3]*+h[4588];v=r+8|0;h[v>>3]=+h[v>>3]*+h[4589];D=+N(+(+h[r>>3]));if(!(D>+h[4590])?(D=+N(+(+h[r+8>>3])),!(D>+h[4591])):0){if((c[14308]|0)<=2){a[l>>0]=+d2(+h[r>>3]/+h[4590],+h[r+8>>3]/+h[4591])<1.0;C=a[l>>0]|0;i=e;return C|0}c[n>>2]=(c[14310]|0)%(c[14308]|0)|0;c[o>>2]=((c[n>>2]|0)+1|0)%(c[14308]|0)|0;v=(c[14307]|0)+((c[n>>2]|0)+(c[14309]|0)<<4)|0;c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];c[s+8>>2]=c[v+8>>2];c[s+12>>2]=c[v+12>>2];v=(c[14307]|0)+((c[o>>2]|0)+(c[14309]|0)<<4)|0;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];c[j>>2]=c[9184];c[j+4>>2]=c[9185];c[j+8>>2]=c[9186];c[j+12>>2]=c[9187];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if(!(LM(k,j,g,f)|0)){a[l>>0]=0;C=a[l>>0]|0;i=e;return C|0};c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];c[g>>2]=c[t>>2];c[g+4>>2]=c[t+4>>2];c[g+8>>2]=c[t+8>>2];c[g+12>>2]=c[t+12>>2];c[f>>2]=c[9184];c[f+4>>2]=c[9185];c[f+8>>2]=c[9186];c[f+12>>2]=c[9187];v=LM(k,j,g,f)|0;c[q>>2]=v;if((v|0)!=0?(c[k>>2]=c[r>>2],c[k+4>>2]=c[r+4>>2],c[k+8>>2]=c[r+8>>2],c[k+12>>2]=c[r+12>>2],c[j>>2]=c[t>>2],c[j+4>>2]=c[t+4>>2],c[j+8>>2]=c[t+8>>2],c[j+12>>2]=c[t+12>>2],c[g>>2]=c[9184],c[g+4>>2]=c[9185],c[g+8>>2]=c[9186],c[g+12>>2]=c[9187],c[f>>2]=c[s>>2],c[f+4>>2]=c[s+4>>2],c[f+8>>2]=c[s+8>>2],c[f+12>>2]=c[s+12>>2],(LM(k,j,g,f)|0)!=0):0){a[l>>0]=1;C=a[l>>0]|0;i=e;return C|0}c[p>>2]=1;while(1){if((c[p>>2]|0)>=(c[14308]|0)){E=39;break}if(c[q>>2]|0){c[n>>2]=c[o>>2];c[o>>2]=((c[n>>2]|0)+1|0)%(c[14308]|0)|0}else{c[o>>2]=c[n>>2];c[n>>2]=((c[n>>2]|0)+(c[14308]|0)-1|0)%(c[14308]|0)|0}s=(c[14307]|0)+((c[n>>2]|0)+(c[14309]|0)<<4)|0;t=(c[14307]|0)+((c[o>>2]|0)+(c[14309]|0)<<4)|0;c[k>>2]=c[r>>2];c[k+4>>2]=c[r+4>>2];c[k+8>>2]=c[r+8>>2];c[k+12>>2]=c[r+12>>2];c[j>>2]=c[9184];c[j+4>>2]=c[9185];c[j+8>>2]=c[9186];c[j+12>>2]=c[9187];c[g>>2]=c[s>>2];c[g+4>>2]=c[s+4>>2];c[g+8>>2]=c[s+8>>2];c[g+12>>2]=c[s+12>>2];c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if(!(LM(k,j,g,f)|0)){E=37;break}c[p>>2]=(c[p>>2]|0)+1}if((E|0)==37){c[14310]=c[n>>2];a[l>>0]=0;C=a[l>>0]|0;i=e;return C|0}else if((E|0)==39){c[14310]=c[n>>2];a[l>>0]=1;C=a[l>>0]|0;i=e;return C|0}}a[l>>0]=0;C=a[l>>0]|0;i=e;return C|0}function $M(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;j=i;i=i+80|0;k=j+76|0;l=j+72|0;m=j+68|0;n=j+64|0;o=j+60|0;p=j+56|0;q=j+52|0;r=j+48|0;s=j+44|0;t=j+40|0;u=j+36|0;v=j+32|0;w=j+28|0;x=j+24|0;y=j+20|0;z=j+16|0;A=j+12|0;B=j+8|0;C=j+4|0;D=j;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[q>>2]=bK(72)|0;c[s>>2]=0;c[u>>2]=0;c[w>>2]=0;c[D>>2]=c[(c[(c[l>>2]|0)+8>>2]|0)+104>>2];c[p>>2]=0;c[x>>2]=1;c[y>>2]=0;c[v>>2]=c[14311];while(1){if(!(a[c[v>>2]>>0]|0))break;if((a[c[v>>2]>>0]|0)==92?(c[v>>2]=(c[v>>2]|0)+1,(a[c[v>>2]>>0]|0)!=0):0){if((((a[c[v>>2]>>0]|0)!=123?(a[c[v>>2]>>0]|0)!=125:0)?(a[c[v>>2]>>0]|0)!=124:0)?(a[c[v>>2]>>0]|0)!=92:0)E=9}else E=9;if((E|0)==9){E=0;do if((a[c[v>>2]>>0]|0)!=123){if((a[c[v>>2]>>0]|0)==125){c[y>>2]=(c[y>>2]|0)+-1;break}if((c[y>>2]|0)==0?(a[c[v>>2]>>0]|0)==124:0)c[x>>2]=(c[x>>2]|0)+1}else c[y>>2]=(c[y>>2]|0)+1;while(0);if((c[y>>2]|0)<0)break}c[v>>2]=(c[v>>2]|0)+1}v=bK(c[x>>2]<<2)|0;c[(c[q>>2]|0)+56>>2]=v;a[(c[q>>2]|0)+64>>0]=c[m>>2];c[z>>2]=0;c[C>>2]=0;v=c[o>>2]|0;c[r>>2]=v;c[t>>2]=v;c[A>>2]=1;c[B>>2]=0;a:while(1){if(!(c[A>>2]|0)){E=94;break}if((a[c[14311]>>0]|0)<32?(a[c[14311]>>0]|0)!=0:0){c[14311]=(c[14311]|0)+1;continue}b:do switch(a[c[14311]>>0]|0){case 60:{if(c[z>>2]&6){E=24;break a}if(!(a[(c[D>>2]|0)+82>>0]|0)){c[z>>2]=c[z>>2]|18;c[14311]=(c[14311]|0)+1;v=c[o>>2]|0;c[s>>2]=v;c[u>>2]=v;continue a}break}case 62:{if(!(a[(c[D>>2]|0)+82>>0]|0)){if(!(c[z>>2]&16)){E=29;break a}if(((c[s>>2]|0)>>>0>((c[o>>2]|0)+1|0)>>>0?((c[s>>2]|0)+-1|0)!=(c[u>>2]|0):0)?(a[(c[s>>2]|0)+-1>>0]|0)==32:0)c[s>>2]=(c[s>>2]|0)+-1;a[c[s>>2]>>0]=0;c[w>>2]=M3(c[o>>2]|0)|0;c[z>>2]=c[z>>2]&-17;c[14311]=(c[14311]|0)+1;continue a}break}case 123:{c[14311]=(c[14311]|0)+1;if(c[z>>2]|0){E=37;break a}if(!(a[c[14311]>>0]|0)){E=37;break a}c[z>>2]=4;v=$M(c[l>>2]|0,((c[m>>2]|0)!=0^1)&1,0,c[o>>2]|0)|0;x=c[C>>2]|0;c[C>>2]=x+1;c[(c[(c[q>>2]|0)+56>>2]|0)+(x<<2)>>2]=v;if(v)continue a;else{E=39;break a}break}case 0:case 124:case 125:{if(!((a[c[14311]>>0]|0)!=0|(c[n>>2]|0)!=0)){E=42;break a}if(c[z>>2]&16){E=42;break a}if(!(c[z>>2]&4)){v=bK(72)|0;x=c[C>>2]|0;c[C>>2]=x+1;c[(c[(c[q>>2]|0)+56>>2]|0)+(x<<2)>>2]=v;c[p>>2]=v}if(c[w>>2]|0){c[(c[p>>2]|0)+60>>2]=c[w>>2];c[w>>2]=0}if(!(c[z>>2]&5)){c[z>>2]=c[z>>2]|1;v=c[r>>2]|0;c[r>>2]=v+1;a[v>>0]=32}if(c[z>>2]&1){if(((c[r>>2]|0)>>>0>((c[o>>2]|0)+1|0)>>>0?((c[r>>2]|0)+-1|0)!=(c[t>>2]|0):0)?(a[(c[r>>2]|0)+-1>>0]|0)==32:0)c[r>>2]=(c[r>>2]|0)+-1;a[c[r>>2]>>0]=0;v=c[l>>2]|0;x=M3(c[o>>2]|0)|0;y=SJ(v,x,(d[(c[D>>2]|0)+82>>0]|0)!=0?2:0,+h[(c[D>>2]|0)+16>>3],c[(c[D>>2]|0)+4>>2]|0,c[(c[D>>2]|0)+8>>2]|0)|0;c[(c[p>>2]|0)+52>>2]=y;a[(c[p>>2]|0)+64>>0]=1;y=c[o>>2]|0;c[r>>2]=y;c[t>>2]=y}if(!(a[c[14311]>>0]|0)){c[A>>2]=0;continue a}if((a[c[14311]>>0]|0)==125){E=57;break a}c[z>>2]=0;c[14311]=(c[14311]|0)+1;continue a;break}case 92:{if(a[(c[14311]|0)+1>>0]|0){if(((((a[(c[14311]|0)+1>>0]|0)!=123?(a[(c[14311]|0)+1>>0]|0)!=125:0)?(a[(c[14311]|0)+1>>0]|0)!=124:0)?(a[(c[14311]|0)+1>>0]|0)!=60:0)?(a[(c[14311]|0)+1>>0]|0)!=62:0){if((a[(c[14311]|0)+1>>0]|0)==32?(a[(c[D>>2]|0)+82>>0]|0)==0:0){c[B>>2]=1;c[14311]=(c[14311]|0)+1;break b}y=c[r>>2]|0;c[r>>2]=y+1;a[y>>0]=92;c[z>>2]=c[z>>2]|9;c[14311]=(c[14311]|0)+1;break b}c[14311]=(c[14311]|0)+1}break}default:{}}while(0);if((c[z>>2]&4|0)!=0?(a[c[14311]>>0]|0)!=32:0){E=73;break}if((c[z>>2]&24|0)==0?(a[c[14311]>>0]|0)!=32:0)c[z>>2]=c[z>>2]|9;if(c[z>>2]&8){if(!((!((c[B>>2]|0)!=0?1:(a[c[14311]>>0]|0)!=32)?(a[(c[r>>2]|0)+-1>>0]|0)==32:0)?(a[(c[D>>2]|0)+82>>0]|0)==0:0)){y=a[c[14311]>>0]|0;x=c[r>>2]|0;c[r>>2]=x+1;a[x>>0]=y}if(c[B>>2]|0)c[t>>2]=(c[r>>2]|0)+-1}else if(c[z>>2]&16){if(!((c[B>>2]|0)!=0?1:(a[c[14311]>>0]|0)!=32)){if((c[s>>2]|0)!=(c[o>>2]|0)?(a[(c[s>>2]|0)+-1>>0]|0)!=32:0)E=88}else E=88;if((E|0)==88){E=0;y=a[c[14311]>>0]|0;x=c[s>>2]|0;c[s>>2]=x+1;a[x>>0]=y}if(c[B>>2]|0)c[u>>2]=(c[s>>2]|0)+-1}c[14311]=(c[14311]|0)+1;while(1){if(!(a[c[14311]>>0]&128))continue a;y=c[14311]|0;c[14311]=y+1;x=a[y>>0]|0;y=c[r>>2]|0;c[r>>2]=y+1;a[y>>0]=x}}if((E|0)==24){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==29){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==37){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==39){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==42){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==57){c[14311]=(c[14311]|0)+1;c[(c[q>>2]|0)+48>>2]=c[C>>2];c[k>>2]=c[q>>2];F=c[k>>2]|0;i=j;return F|0}else if((E|0)==73){c[k>>2]=dN(c[q>>2]|0,c[w>>2]|0)|0;F=c[k>>2]|0;i=j;return F|0}else if((E|0)==94){c[(c[q>>2]|0)+48>>2]=c[C>>2];c[k>>2]=c[q>>2];F=c[k>>2]|0;i=j;return F|0}return 0}function aN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;f=i;i=i+112|0;g=f+80|0;j=f+100|0;k=f+96|0;l=f+92|0;m=f+88|0;n=f+72|0;o=f+64|0;p=f+48|0;q=f+32|0;r=f+16|0;s=f;c[j>>2]=d;c[k>>2]=e;if(!(c[(c[k>>2]|0)+52>>2]|0)){h[p+8>>3]=0.0;h[p>>3]=0.0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[k>>2]|0)+48>>2]|0))break;aN(s,c[j>>2]|0,c[(c[(c[k>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0);c[q>>2]=c[s>>2];c[q+4>>2]=c[s+4>>2];c[q+8>>2]=c[s+8>>2];c[q+12>>2]=c[s+12>>2];if(a[(c[k>>2]|0)+64>>0]|0){h[p>>3]=+h[p>>3]+ +h[q>>3];h[p+8>>3]=+h[p+8>>3]>+h[q+8>>3]?+h[p+8>>3]:+h[q+8>>3]}else{e=p+8|0;h[e>>3]=+h[e>>3]+ +h[q+8>>3];h[p>>3]=+h[p>>3]>+h[q>>3]?+h[p>>3]:+h[q>>3]}c[l>>2]=(c[l>>2]|0)+1}t=c[k>>2]|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2]=c[p+8>>2];c[b+12>>2]=c[p+12>>2];i=f;return}q=(c[(c[k>>2]|0)+52>>2]|0)+24|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];if(!(!(+h[r>>3]>0.0)?!(+h[r+8>>3]>0.0):0))u=4;do if((u|0)==4){q=yA(c[j>>2]|0,143958)|0;c[m>>2]=q;if(!q){h[r>>3]=+h[r>>3]+16.0;q=r+8|0;h[q>>3]=+h[q>>3]+8.0;break}q=c[m>>2]|0;c[g>>2]=n;c[g+4>>2]=o;c[l>>2]=l3(q,143965,g)|0;if((c[l>>2]|0)>0){v=+h[n>>3]*72.0;h[r>>3]=+h[r>>3]+ +(~~(+h[n>>3]*72.0>=0.0?v+.5:v-.5)<<1|0);v=+h[o>>3]*72.0;q=r+8|0;h[q>>3]=+h[q>>3]+ +(~~(+h[o>>3]*72.0>=0.0?v+.5:v-.5)<<1|0);break}else{h[r>>3]=+h[r>>3]+16.0;q=r+8|0;h[q>>3]=+h[q>>3]+8.0;break}}while(0);c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];t=c[k>>2]|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2]=c[p+8>>2];c[b+12>>2]=c[p+12>>2];i=f;return}function bN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+112|0;g=f+72|0;j=f+104|0;k=f+100|0;l=f+96|0;m=f+92|0;n=f+64|0;o=f+48|0;p=f+32|0;q=f+88|0;r=f+16|0;s=f;c[j>>2]=b;c[k>>2]=e;h[o>>3]=+h[d>>3]-+h[c[j>>2]>>3];h[o+8>>3]=+h[d+8>>3]-+h[(c[j>>2]|0)+8>>3];e=c[j>>2]|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(!((c[k>>2]|0)!=0?1:(c[(c[j>>2]|0)+52>>2]|0)==0)){e=(c[(c[j>>2]|0)+52>>2]|0)+40|0;h[e>>3]=+h[e>>3]+ +h[o>>3];e=(c[(c[j>>2]|0)+52>>2]|0)+40+8|0;h[e>>3]=+h[e>>3]+ +h[o+8>>3]}if(!(c[(c[j>>2]|0)+48>>2]|0)){i=f;return}if(a[(c[j>>2]|0)+64>>0]|0)h[n>>3]=+h[o>>3]/+(c[(c[j>>2]|0)+48>>2]|0);else h[n>>3]=+h[o+8>>3]/+(c[(c[j>>2]|0)+48>>2]|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>=(c[(c[j>>2]|0)+48>>2]|0))break;c[q>>2]=c[(c[(c[j>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2];c[m>>2]=~~(+((c[l>>2]|0)+1|0)*+h[n>>3])-~~(+(c[l>>2]|0)*+h[n>>3]);if(a[(c[j>>2]|0)+64>>0]|0){qM(r,+h[c[q>>2]>>3]+ +(c[m>>2]|0),+h[d+8>>3]);c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2]}else{qM(s,+h[d>>3],+h[(c[q>>2]|0)+8>>3]+ +(c[m>>2]|0));c[p>>2]=c[s>>2];c[p+4>>2]=c[s+4>>2];c[p+8>>2]=c[s+8>>2];c[p+12>>2]=c[s+12>>2]}o=c[q>>2]|0;e=c[k>>2]|0;c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];bN(o,g,e);c[l>>2]=(c[l>>2]|0)+1}i=f;return}function cN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+80|0;g=f+32|0;j=f+64|0;k=f+60|0;l=f+56|0;m=f+52|0;n=f+48|0;o=f+16|0;p=f;c[j>>2]=b;c[k>>2]=e;a[(c[j>>2]|0)+65>>0]=c[k>>2];e=(c[j>>2]|0)+16|0;qM(o,+h[d>>3],+h[d+8>>3]-+h[(c[j>>2]|0)+8>>3]);c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];o=(c[j>>2]|0)+16+16|0;qM(p,+h[d>>3]+ +h[c[j>>2]>>3],+h[d+8>>3]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];c[m>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[l>>2]=0;while(1){if((c[l>>2]|0)>(c[m>>2]|0))break;do if(c[k>>2]|0){p=(c[l>>2]|0)==0;o=(c[l>>2]|0)==(c[m>>2]|0);if(a[(c[j>>2]|0)+64>>0]|0)if(p)if(o){c[n>>2]=15;break}else{c[n>>2]=13;break}else if(o){c[n>>2]=7;break}else{c[n>>2]=5;break}else if(p)if(o){c[n>>2]=15;break}else{c[n>>2]=14;break}else if(o){c[n>>2]=11;break}else{c[n>>2]=10;break}}else c[n>>2]=0;while(0);o=c[(c[(c[j>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0;p=c[k>>2]&c[n>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];cN(o,g,p);if(a[(c[j>>2]|0)+64>>0]|0)h[d>>3]=+h[d>>3]+ +h[c[(c[(c[j>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]>>3];else h[d+8>>3]=+h[d+8>>3]-+h[(c[(c[(c[j>>2]|0)+56>>2]|0)+(c[l>>2]<<2)>>2]|0)+8>>3];c[l>>2]=(c[l>>2]|0)+1}i=f;return}function dN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;XM(c[e>>2]|0);if(!(c[f>>2]|0)){i=d;return 0}O4(c[f>>2]|0);i=d;return 0}function eN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=i;i=i+32|0;d=b+16|0;e=b+8|0;f=b;c[d>>2]=a;h[e>>3]=+fO(c[d>>2]|0,c[13815]|0,0.0,.01);h[f>>3]=+fO(c[d>>2]|0,c[13814]|0,0.0,.02);g=(+h[e>>3]>+h[f>>3]?+h[e>>3]:+h[f>>3])*72.0;i=b;return +(+(~~((+h[e>>3]>+h[f>>3]?+h[e>>3]:+h[f>>3])*72.0>=0.0?g+.5:g-.5)|0))}function fN(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;e=d+8|0;f=d;g=d+16|0;h[e>>3]=a;h[f>>3]=b;c[g>>2]=~~(+h[e>>3]/+h[f>>3]);if(+(c[g>>2]|0)*+h[f>>3]+1.0e-05<+h[e>>3])c[g>>2]=(c[g>>2]|0)+1;i=d;return +(+(c[g>>2]|0)*+h[f>>3])}function gN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0;g=i;i=i+256|0;j=g+200|0;k=g+244|0;l=g+240|0;m=g+236|0;n=g+249|0;o=g+136|0;p=g+72|0;q=g+56|0;r=g+40|0;s=g+232|0;t=g+228|0;u=g+32|0;v=g+24|0;w=g+16|0;x=g+224|0;y=g+220|0;z=g+248|0;A=g+216|0;B=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;a[n>>0]=f;if(a[n>>0]|0){c[s>>2]=0;c[t>>2]=o;n=c[m>>2]|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[x>>2]=u;c[y>>2]=v}else{c[s>>2]=o;c[t>>2]=0;n=(c[m>>2]|0)+48|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[x>>2]=v;c[y>>2]=u}a[z>>0]=0;h[u>>3]=0.0;h[v>>3]=1.0;while(1){c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];h[w>>3]=(+h[v>>3]+ +h[u>>3])/2.0;qO(B,c[m>>2]|0,3,+h[w>>3],c[s>>2]|0,c[t>>2]|0);c[q>>2]=c[B>>2];c[q+4>>2]=c[B+4>>2];c[q+8>>2]=c[B+8>>2];c[q+12>>2]=c[B+12>>2];n=c[l>>2]|0;f=c[k>>2]|0;c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];if((Ob[n&127](f,j)|0)<<24>>24)h[c[x>>2]>>3]=+h[w>>3];else{c[A>>2]=0;while(1){if((c[A>>2]|0)>=4)break;f=p+(c[A>>2]<<4)|0;n=o+(c[A>>2]<<4)|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];c[A>>2]=(c[A>>2]|0)+1}a[z>>0]=1;h[c[y>>2]>>3]=+h[w>>3]}C=+h[r>>3]-+h[q>>3];if((+h[r>>3]-+h[q>>3]>=0.0?C:-C)>.5)continue;C=+h[r+8>>3]-+h[q+8>>3];if(!((+h[r+8>>3]-+h[q+8>>3]>=0.0?C:-C)>.5))break}q=(a[z>>0]|0)!=0;c[A>>2]=0;if(q){while(1){if((c[A>>2]|0)>=4)break;q=(c[m>>2]|0)+(c[A>>2]<<4)|0;z=p+(c[A>>2]<<4)|0;c[q>>2]=c[z>>2];c[q+4>>2]=c[z+4>>2];c[q+8>>2]=c[z+8>>2];c[q+12>>2]=c[z+12>>2];c[A>>2]=(c[A>>2]|0)+1}i=g;return}else{while(1){if((c[A>>2]|0)>=4)break;p=(c[m>>2]|0)+(c[A>>2]<<4)|0;z=o+(c[A>>2]<<4)|0;c[p>>2]=c[z>>2];c[p+4>>2]=c[z+4>>2];c[p+8>>2]=c[z+8>>2];c[p+12>>2]=c[z+12>>2];c[A>>2]=(c[A>>2]|0)+1}i=g;return}}function hN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+64|0;f=e+24|0;g=e+52|0;j=e+48|0;k=e+16|0;l=e+56|0;m=e;n=e+40|0;c[g>>2]=b;c[j>>2]=d;if(!(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)){i=e;return}if(!(c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0)){i=e;return}c[n>>2]=c[g>>2];c[n+4>>2]=0;h[k>>3]=+h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3];h[m>>3]=+h[c[j>>2]>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16>>3];h[m+8>>3]=+h[(c[j>>2]|0)+8>>3]-+h[(c[(c[g>>2]|0)+8>>2]|0)+16+8>>3];d=c[(c[(c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];a[l>>0]=Ob[d&127](n,f)|0;h[(c[(c[g>>2]|0)+8>>2]|0)+96>>3]=+h[k>>3];uN(n,c[g>>2]|0,c[j>>2]|0,a[l>>0]|0);i=e;return}function iN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;j=e;c[f>>2]=b;c[g>>2]=d;while(1){k=c[(c[f>>2]|0)+8>>2]|0;if(!(a[(c[(c[f>>2]|0)+8>>2]|0)+112>>0]|0))break;c[f>>2]=c[k+116>>2]}if(!(c[k+8>>2]|0)){k=bK(40)|0;c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]=k}k=c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0;if(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)l=eK(c[k>>2]|0,((c[(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+1|0)*48|0)|0;else l=cK(((c[k+4>>2]|0)+1|0)*48|0)|0;c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]=l;l=(c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]|0)+4|0;k=c[l>>2]|0;c[l>>2]=k+1;c[j>>2]=(c[c[(c[(c[f>>2]|0)+8>>2]|0)+8>>2]>>2]|0)+(k*48|0);k=bK(c[g>>2]<<4)|0;c[c[j>>2]>>2]=k;c[(c[j>>2]|0)+4>>2]=c[g>>2];c[(c[j>>2]|0)+12>>2]=0;c[(c[j>>2]|0)+8>>2]=0;h[(c[j>>2]|0)+32+8>>3]=0.0;h[(c[j>>2]|0)+32>>3]=0.0;h[(c[j>>2]|0)+16+8>>3]=0.0;h[(c[j>>2]|0)+16>>3]=0.0;i=e;return c[j>>2]|0}function jN(b,e,f,g,j){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;k=i;i=i+176|0;l=k+80|0;m=k+172|0;n=k+168|0;o=k+164|0;p=k+160|0;q=k+156|0;r=k+64|0;s=k+152|0;t=k+148|0;u=k+144|0;v=k+140|0;w=k+136|0;x=k+132|0;y=k+128|0;z=k+124|0;A=k+120|0;B=k+116|0;C=k+112|0;D=k+104|0;E=k+96|0;F=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=j;j=c[m>>2]|0;c[t>>2]=c[((c[c[m>>2]>>2]&3|0)==3?j:j+32|0)+28>>2];c[z>>2]=qC(c[t>>2]|0)|0;c[s>>2]=iN(c[m>>2]|0,c[p>>2]|0)|0;c[A>>2]=c[m>>2];while(1){if(!(a[(c[(c[A>>2]|0)+8>>2]|0)+112>>0]|0))break;c[A>>2]=c[(c[(c[A>>2]|0)+8>>2]|0)+116>>2]}if(((a[(c[q>>2]|0)+8>>0]|0)==0?(c[(c[(c[t>>2]|0)+8>>2]|0)+232>>2]|0)==(c[(c[(c[n>>2]|0)+8>>2]|0)+232>>2]|0):0)?(c[(c[(c[t>>2]|0)+8>>2]|0)+236>>2]|0)>(c[(c[(c[n>>2]|0)+8>>2]|0)+236>>2]|0):0){c[E>>2]=c[n>>2];c[n>>2]=c[t>>2];c[t>>2]=c[E>>2]}E=c[A>>2]|0;j=c[(c[A>>2]|0)+8>>2]|0;if((c[t>>2]|0)==(c[((c[c[A>>2]>>2]&3|0)==3?E:E+32|0)+28>>2]|0)){c[x>>2]=d[j+16+30>>0];c[y>>2]=d[(c[(c[A>>2]|0)+8>>2]|0)+56+30>>0];c[B>>2]=c[(c[(c[A>>2]|0)+8>>2]|0)+16+24>>2];c[C>>2]=c[(c[(c[A>>2]|0)+8>>2]|0)+56+24>>2]}else{c[x>>2]=d[j+56+30>>0];c[y>>2]=d[(c[(c[A>>2]|0)+8>>2]|0)+16+30>>0];c[C>>2]=c[(c[(c[A>>2]|0)+8>>2]|0)+16+24>>2];c[B>>2]=c[(c[(c[A>>2]|0)+8>>2]|0)+56+24>>2]}if(((c[x>>2]|0)!=0?(c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)?(c[(c[(c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0)!=0:0){c[D>>2]=c[t>>2];c[D+4>>2]=c[B>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=((c[p>>2]|0)-4|0))break;h[r>>3]=+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)>>3]-+h[(c[(c[t>>2]|0)+8>>2]|0)+16>>3];h[r+8>>3]=+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)+8>>3]-+h[(c[(c[t>>2]|0)+8>>2]|0)+16+8>>3];B=c[(c[(c[(c[(c[t>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];if(!((Ob[B&127](D,l)|0)&255))break;c[u>>2]=(c[u>>2]|0)+3}uN(D,c[t>>2]|0,(c[o>>2]|0)+(c[u>>2]<<4)|0,1)}else c[u>>2]=0;if(((c[y>>2]|0)!=0?(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)!=0:0)?(c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0)!=0:0){c[D>>2]=c[n>>2];c[D+4>>2]=c[C>>2];c[v>>2]=(c[p>>2]|0)-4;while(1){if((c[v>>2]|0)<=0)break;h[r>>3]=+h[(c[o>>2]|0)+(c[v>>2]<<4)>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+16>>3];h[r+8>>3]=+h[(c[o>>2]|0)+(c[v>>2]<<4)+8>>3]-+h[(c[(c[n>>2]|0)+8>>2]|0)+16+8>>3];C=c[(c[(c[(c[(c[n>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];if(!((Ob[C&127](D,l)|0)&255))break;c[v>>2]=(c[v>>2]|0)-3}uN(D,c[n>>2]|0,(c[o>>2]|0)+(c[v>>2]<<4)|0,0)}else c[v>>2]=(c[p>>2]|0)-4;while(1){if((c[u>>2]|0)>=((c[p>>2]|0)-4|0))break;if(!((+h[(c[o>>2]|0)+(c[u>>2]<<4)>>3]-+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)>>3])*(+h[(c[o>>2]|0)+(c[u>>2]<<4)>>3]-+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)>>3])+(+h[(c[o>>2]|0)+(c[u>>2]<<4)+8>>3]-+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)+8>>3])*(+h[(c[o>>2]|0)+(c[u>>2]<<4)+8>>3]-+h[(c[o>>2]|0)+((c[u>>2]|0)+3<<4)+8>>3])<1.0e-06))break;c[u>>2]=(c[u>>2]|0)+3}while(1){if((c[v>>2]|0)<=0)break;if(!((+h[(c[o>>2]|0)+(c[v>>2]<<4)>>3]-+h[(c[o>>2]|0)+((c[v>>2]|0)+3<<4)>>3])*(+h[(c[o>>2]|0)+(c[v>>2]<<4)>>3]-+h[(c[o>>2]|0)+((c[v>>2]|0)+3<<4)>>3])+(+h[(c[o>>2]|0)+(c[v>>2]<<4)+8>>3]-+h[(c[o>>2]|0)+((c[v>>2]|0)+3<<4)+8>>3])*(+h[(c[o>>2]|0)+(c[v>>2]<<4)+8>>3]-+h[(c[o>>2]|0)+((c[v>>2]|0)+3<<4)+8>>3])<1.0e-06))break;c[v>>2]=(c[v>>2]|0)-3}vN(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,u,v,c[s>>2]|0,c[q>>2]|0);c[w>>2]=c[u>>2];while(1){if((c[w>>2]|0)>=((c[v>>2]|0)+4|0)){G=39;break}q=(c[c[s>>2]>>2]|0)+((c[w>>2]|0)-(c[u>>2]|0)<<4)|0;n=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];n=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[F>>2]=c[n>>2];c[F+4>>2]=c[n+4>>2];c[F+8>>2]=c[n+8>>2];c[F+12>>2]=c[n+12>>2];c[w>>2]=(c[w>>2]|0)+1;if((c[w>>2]|0)>=((c[v>>2]|0)+4|0)){G=39;break}n=(c[c[s>>2]>>2]|0)+((c[w>>2]|0)-(c[u>>2]|0)<<4)|0;q=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];q=F+16|0;n=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[w>>2]=(c[w>>2]|0)+1;n=(c[c[s>>2]>>2]|0)+((c[w>>2]|0)-(c[u>>2]|0)<<4)|0;q=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];q=F+32|0;n=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[w>>2]=(c[w>>2]|0)+1;n=F+48|0;q=(c[o>>2]|0)+(c[w>>2]<<4)|0;c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];DH((c[(c[z>>2]|0)+8>>2]|0)+16|0,F)}if((G|0)==39){c[(c[s>>2]|0)+4>>2]=(c[v>>2]|0)-(c[u>>2]|0)+4;i=k;return}}function kN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=a;if(!(+h[b>>3]<+h[b+16>>3])){i=d;return}if(!(+h[b+8>>3]<+h[b+16+8>>3])){i=d;return}a=(c[e>>2]|0)+80|0;f=c[a>>2]|0;c[a>>2]=f+1;a=(c[(c[e>>2]|0)+84>>2]|0)+(f<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];i=d;return}function lN(b,e,f,g,j){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0;k=i;i=i+272|0;l=k+200|0;m=k+184|0;n=k+252|0;o=k+248|0;p=k+244|0;q=k+240|0;r=k+256|0;s=k+236|0;t=k+232|0;u=k+228|0;v=k+224|0;w=k+144|0;x=k+128|0;y=k+220|0;z=k+96|0;A=k+64|0;B=k+32|0;C=k;D=k+216|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;a[r>>0]=j;j=c[o>>2]|0;c[u>>2]=c[((c[c[o>>2]>>2]&3|0)==3?j:j+32|0)+28>>2];if(a[(c[(c[o>>2]|0)+8>>2]|0)+16+31>>0]|0){j=(c[(c[o>>2]|0)+8>>2]|0)+16|0;g=c[o>>2]|0;f=c[o>>2]|0;hM(w,c[((c[c[o>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0,c[((c[c[o>>2]>>2]&3|0)==2?f:f+-32|0)+28>>2]|0,(c[(c[o>>2]|0)+8>>2]|0)+16|0);f=j;j=w;w=f+40|0;do{c[f>>2]=c[j>>2];f=f+4|0;j=j+4|0}while((f|0)<(w|0))}if(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)c[v>>2]=c[(c[(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+16>>2];else c[v>>2]=0;j=c[n>>2]|0;f=(c[(c[u>>2]|0)+8>>2]|0)+16|0;w=(c[(c[o>>2]|0)+8>>2]|0)+16|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[l>>2]=c[w>>2];c[l+4>>2]=c[w+4>>2];c[l+8>>2]=c[w+8>>2];c[l+12>>2]=c[w+12>>2];wN(x,m,l);c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[j+12>>2]=c[x+12>>2];x=c[o>>2]|0;do if(!(a[r>>0]|0))if(a[(c[x+8>>2]|0)+16+29>>0]|0){h[(c[n>>2]|0)+16>>3]=+h[(c[(c[o>>2]|0)+8>>2]|0)+16+16>>3];a[(c[n>>2]|0)+29>>0]=1;break}else{a[(c[n>>2]|0)+29>>0]=0;break}else{j=c[o>>2]|0;E=+xN(c[((c[x>>2]&3|0)==3?j:j+32|0)+28>>2]|0);h[(c[n>>2]|0)+16>>3]=E;a[(c[n>>2]|0)+29>>0]=1}while(0);c[(c[n>>2]|0)+80>>2]=0;c[(c[n>>2]|0)+88>>2]=c[o>>2];x=(c[q>>2]|0)+32|0;r=c[n>>2]|0;c[x>>2]=c[r>>2];c[x+4>>2]=c[r+4>>2];c[x+8>>2]=c[r+8>>2];c[x+12>>2]=c[r+12>>2];if(((c[p>>2]|0)==1?(a[(c[(c[u>>2]|0)+8>>2]|0)+156>>0]|0)==0:0)?(r=d[(c[(c[o>>2]|0)+8>>2]|0)+16+33>>0]|0,c[s>>2]=r,(r|0)!=0):0){r=c[q>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=c[r+4>>2];c[A+8>>2]=c[r+8>>2];c[A+12>>2]=c[r+12>>2];c[A+16>>2]=c[r+16>>2];c[A+20>>2]=c[r+20>>2];c[A+24>>2]=c[r+24>>2];c[A+28>>2]=c[r+28>>2];do if(c[s>>2]&4){c[(c[q>>2]|0)+48>>2]=4;E=+h[A>>3];if(+h[c[n>>2]>>3]<+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]){h[z>>3]=E-1.0;h[z+8>>3]=+h[(c[n>>2]|0)+8>>3];h[z+16>>3]=+h[A+16>>3];F=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[z+16+8>>3]=F+ +((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[A+16>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+88>>3]-0.0;h[A+16+8>>3]=+h[z+8>>3];h[A+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A>>3]=+h[A>>3]-1.0;r=(c[q>>2]|0)+56|0;c[r>>2]=c[z>>2];c[r+4>>2]=c[z+4>>2];c[r+8>>2]=c[z+8>>2];c[r+12>>2]=c[z+12>>2];c[r+16>>2]=c[z+16>>2];c[r+20>>2]=c[z+20>>2];c[r+24>>2]=c[z+24>>2];c[r+28>>2]=c[z+28>>2];r=(c[q>>2]|0)+56+32|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2]}else{h[z>>3]=E;h[z+8>>3]=+h[(c[n>>2]|0)+8>>3];h[z+16>>3]=+h[A+16>>3]+1.0;E=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[z+16+8>>3]=E+ +((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[A>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+96>>3]+0.0;h[A+16+8>>3]=+h[z+8>>3];h[A+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;r=A+16|0;h[r>>3]=+h[r>>3]+1.0;r=(c[q>>2]|0)+56|0;c[r>>2]=c[z>>2];c[r+4>>2]=c[z+4>>2];c[r+8>>2]=c[z+8>>2];c[r+12>>2]=c[z+12>>2];c[r+16>>2]=c[z+16>>2];c[r+20>>2]=c[z+20>>2];c[r+24>>2]=c[z+24>>2];c[r+28>>2]=c[z+28>>2];r=(c[q>>2]|0)+56+32|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2]}r=(c[n>>2]|0)+8|0;h[r>>3]=+h[r>>3]+1.0;c[(c[q>>2]|0)+52>>2]=2}else{if(!(c[s>>2]&1)){r=(c[q>>2]|0)+48|0;if(c[s>>2]&8){c[r>>2]=8;h[A+16>>3]=+h[c[n>>2]>>3];h[A+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A+16+8>>3]=+h[(c[n>>2]|0)+8>>3];x=(c[q>>2]|0)+56|0;c[x>>2]=c[A>>2];c[x+4>>2]=c[A+4>>2];c[x+8>>2]=c[A+8>>2];c[x+12>>2]=c[A+12>>2];c[x+16>>2]=c[A+16>>2];c[x+20>>2]=c[A+20>>2];c[x+24>>2]=c[A+24>>2];c[x+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;x=c[n>>2]|0;h[x>>3]=+h[x>>3]-1.0;break}else{c[r>>2]=2;h[A>>3]=+h[c[n>>2]>>3];h[A+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A+16+8>>3]=+h[(c[n>>2]|0)+8>>3];r=(c[q>>2]|0)+56|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;r=c[n>>2]|0;h[r>>3]=+h[r>>3]+1.0;break}}c[(c[q>>2]|0)+48>>2]=1;if(+h[A+16+8>>3]>+h[(c[n>>2]|0)+8>>3])G=+h[A+16+8>>3];else G=+h[(c[n>>2]|0)+8>>3];h[A+16+8>>3]=G;r=(c[q>>2]|0)+56|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;r=(c[n>>2]|0)+8|0;h[r>>3]=+h[r>>3]-1.0}while(0);c[y>>2]=c[o>>2];while(1){if(!(a[(c[(c[y>>2]|0)+8>>2]|0)+112>>0]|0))break;c[y>>2]=c[(c[(c[y>>2]|0)+8>>2]|0)+116>>2]}A=c[y>>2]|0;z=c[(c[y>>2]|0)+8>>2]|0;if((c[u>>2]|0)==(c[((c[c[y>>2]>>2]&3|0)==3?A:A+32|0)+28>>2]|0)){a[z+16+30>>0]=0;i=k;return}else{a[z+56+30>>0]=0;i=k;return}}if((c[p>>2]|0)==2?(z=d[(c[(c[o>>2]|0)+8>>2]|0)+16+33>>0]|0,c[s>>2]=z,(z|0)!=0):0){z=c[q>>2]|0;c[C>>2]=c[z>>2];c[C+4>>2]=c[z+4>>2];c[C+8>>2]=c[z+8>>2];c[C+12>>2]=c[z+12>>2];c[C+16>>2]=c[z+16>>2];c[C+20>>2]=c[z+20>>2];c[C+24>>2]=c[z+24>>2];c[C+28>>2]=c[z+28>>2];do if(!(c[s>>2]&4)){if(c[s>>2]&1){if((c[(c[q>>2]|0)+48>>2]|0)==4){h[B+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[B+16>>3]=+h[C+16>>3]+1.0;h[B>>3]=+h[c[n>>2]>>3];G=+h[B+16+8>>3];h[B+8>>3]=G-+((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[C>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+96>>3]+0.0;h[C+8>>3]=+h[B+16+8>>3];h[C+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;z=C+16|0;h[z>>3]=+h[z>>3]+1.0;z=(c[q>>2]|0)+56|0;c[z>>2]=c[B>>2];c[z+4>>2]=c[B+4>>2];c[z+8>>2]=c[B+8>>2];c[z+12>>2]=c[B+12>>2];c[z+16>>2]=c[B+16>>2];c[z+20>>2]=c[B+20>>2];c[z+24>>2]=c[B+24>>2];c[z+28>>2]=c[B+28>>2];z=(c[q>>2]|0)+56+32|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=2}else{if(+h[C+16+8>>3]>+h[(c[n>>2]|0)+8>>3])H=+h[C+16+8>>3];else H=+h[(c[n>>2]|0)+8>>3];h[C+16+8>>3]=H;z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1}z=(c[n>>2]|0)+8|0;h[z>>3]=+h[z>>3]-1.0;break}G=+h[c[n>>2]>>3];if(c[s>>2]&8){h[C+16>>3]=G+1.0;E=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3];F=+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[C+16+8>>3]=E+F;h[C+8>>3]=+h[(c[n>>2]|0)+8>>3]-1.0}else{h[C+8>>3]=E-F;h[C+16+8>>3]=+h[(c[n>>2]|0)+8>>3]+1.0}z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=c[n>>2]|0;h[z>>3]=+h[z>>3]-1.0;break}else{h[C>>3]=G;G=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3];F=+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[C+16+8>>3]=G+F;h[C+8>>3]=+h[(c[n>>2]|0)+8>>3]}else{h[C+8>>3]=G-F;h[C+16+8>>3]=+h[(c[n>>2]|0)+8>>3]+1.0}z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=c[n>>2]|0;h[z>>3]=+h[z>>3]+1.0;break}}else{if(+h[C+8>>3]<+h[(c[n>>2]|0)+8>>3])I=+h[C+8>>3];else I=+h[(c[n>>2]|0)+8>>3];h[C+8>>3]=I;z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=(c[n>>2]|0)+8|0;h[z>>3]=+h[z>>3]+1.0}while(0);c[D>>2]=c[o>>2];while(1){if(!(a[(c[(c[D>>2]|0)+8>>2]|0)+112>>0]|0))break;c[D>>2]=c[(c[(c[D>>2]|0)+8>>2]|0)+116>>2]}C=c[D>>2]|0;B=c[(c[D>>2]|0)+8>>2]|0;if((c[u>>2]|0)==(c[((c[c[D>>2]>>2]&3|0)==3?C:C+32|0)+28>>2]|0))a[B+16+30>>0]=0;else a[B+56+30>>0]=0;c[(c[q>>2]|0)+48>>2]=c[s>>2];i=k;return}if((c[p>>2]|0)==1)c[s>>2]=1;else c[s>>2]=c[(c[q>>2]|0)+48>>2];if((c[v>>2]|0)!=0?(B=Gb[c[v>>2]&63](c[u>>2]|0,(c[(c[o>>2]|0)+8>>2]|0)+16|0,c[s>>2]|0,(c[q>>2]|0)+56|0,(c[q>>2]|0)+52|0)|0,c[t>>2]=B,(B|0)!=0):0){c[(c[q>>2]|0)+48>>2]=c[t>>2];i=k;return}t=(c[q>>2]|0)+56|0;B=c[q>>2]|0;c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[t+16>>2]=c[B+16>>2];c[t+20>>2]=c[B+20>>2];c[t+24>>2]=c[B+24>>2];c[t+28>>2]=c[B+28>>2];c[(c[q>>2]|0)+52>>2]=1;switch(c[p>>2]|0){case 8:{La(176099,144130,569,144140);break}case 2:{I=+h[(c[n>>2]|0)+8>>3];p=(c[q>>2]|0)+56|0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[p+8>>3]=I;i=k;return}else{h[p+16+8>>3]=I;i=k;return}break}case 1:{h[(c[q>>2]|0)+56+16+8>>3]=+h[(c[n>>2]|0)+8>>3];c[(c[q>>2]|0)+48>>2]=1;q=(c[n>>2]|0)+8|0;h[q>>3]=+h[q>>3]-1.0;i=k;return}default:{i=k;return}}}function mN(b,e,f,g,j){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0;k=i;i=i+272|0;l=k+200|0;m=k+184|0;n=k+252|0;o=k+248|0;p=k+244|0;q=k+240|0;r=k+256|0;s=k+236|0;t=k+232|0;u=k+228|0;v=k+224|0;w=k+144|0;x=k+128|0;y=k+220|0;z=k+96|0;A=k+64|0;B=k+32|0;C=k;D=k+216|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;a[r>>0]=j;j=c[o>>2]|0;c[u>>2]=c[((c[c[o>>2]>>2]&3|0)==2?j:j+-32|0)+28>>2];if(a[(c[(c[o>>2]|0)+8>>2]|0)+56+31>>0]|0){j=(c[(c[o>>2]|0)+8>>2]|0)+56|0;g=c[o>>2]|0;f=c[o>>2]|0;hM(w,c[((c[c[o>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0,c[((c[c[o>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0,(c[(c[o>>2]|0)+8>>2]|0)+56|0);f=j;j=w;w=f+40|0;do{c[f>>2]=c[j>>2];f=f+4|0;j=j+4|0}while((f|0)<(w|0))}if(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)c[v>>2]=c[(c[(c[(c[(c[u>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+16>>2];else c[v>>2]=0;j=(c[n>>2]|0)+40|0;f=(c[(c[u>>2]|0)+8>>2]|0)+16|0;w=(c[(c[o>>2]|0)+8>>2]|0)+56|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[l>>2]=c[w>>2];c[l+4>>2]=c[w+4>>2];c[l+8>>2]=c[w+8>>2];c[l+12>>2]=c[w+12>>2];wN(x,m,l);c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[j+12>>2]=c[x+12>>2];x=c[o>>2]|0;do if(a[r>>0]|0){j=c[o>>2]|0;E=+xN(c[((c[x>>2]&3|0)==2?j:j+-32|0)+28>>2]|0)+3.141592653589793;h[(c[n>>2]|0)+40+16>>3]=E;if(+h[(c[n>>2]|0)+40+16>>3]<6.283185307179586){a[(c[n>>2]|0)+40+29>>0]=1;break}else La(144150,144130,606,144174)}else if(a[(c[x+8>>2]|0)+56+29>>0]|0){h[(c[n>>2]|0)+40+16>>3]=+h[(c[(c[o>>2]|0)+8>>2]|0)+56+16>>3];a[(c[n>>2]|0)+40+29>>0]=1;break}else{a[(c[n>>2]|0)+40+29>>0]=0;break}while(0);x=(c[q>>2]|0)+32|0;r=(c[n>>2]|0)+40|0;c[x>>2]=c[r>>2];c[x+4>>2]=c[r+4>>2];c[x+8>>2]=c[r+8>>2];c[x+12>>2]=c[r+12>>2];if(((c[p>>2]|0)==1?(a[(c[(c[u>>2]|0)+8>>2]|0)+156>>0]|0)==0:0)?(r=d[(c[(c[o>>2]|0)+8>>2]|0)+56+33>>0]|0,c[s>>2]=r,(r|0)!=0):0){r=c[q>>2]|0;c[A>>2]=c[r>>2];c[A+4>>2]=c[r+4>>2];c[A+8>>2]=c[r+8>>2];c[A+12>>2]=c[r+12>>2];c[A+16>>2]=c[r+16>>2];c[A+20>>2]=c[r+20>>2];c[A+24>>2]=c[r+24>>2];c[A+28>>2]=c[r+28>>2];do if(c[s>>2]&4){c[(c[q>>2]|0)+48>>2]=4;if(+h[A+8>>3]<+h[(c[n>>2]|0)+40+8>>3])F=+h[A+8>>3];else F=+h[(c[n>>2]|0)+40+8>>3];h[A+8>>3]=F;r=(c[q>>2]|0)+56|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;r=(c[n>>2]|0)+40+8|0;h[r>>3]=+h[r>>3]+1.0}else{if(!(c[s>>2]&1)){r=(c[q>>2]|0)+48|0;if(c[s>>2]&8){c[r>>2]=8;h[A+16>>3]=+h[(c[n>>2]|0)+40>>3];h[A+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A+8>>3]=+h[(c[n>>2]|0)+40+8>>3];x=(c[q>>2]|0)+56|0;c[x>>2]=c[A>>2];c[x+4>>2]=c[A+4>>2];c[x+8>>2]=c[A+8>>2];c[x+12>>2]=c[A+12>>2];c[x+16>>2]=c[A+16>>2];c[x+20>>2]=c[A+20>>2];c[x+24>>2]=c[A+24>>2];c[x+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;x=(c[n>>2]|0)+40|0;h[x>>3]=+h[x>>3]-1.0;break}else{c[r>>2]=2;h[A>>3]=+h[(c[n>>2]|0)+40>>3];h[A+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A+8>>3]=+h[(c[n>>2]|0)+40+8>>3];r=(c[q>>2]|0)+56|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2];c[(c[q>>2]|0)+52>>2]=1;r=(c[n>>2]|0)+40|0;h[r>>3]=+h[r>>3]+1.0;break}}c[(c[q>>2]|0)+48>>2]=1;E=+h[A>>3];if(+h[(c[n>>2]|0)+40>>3]<+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]){h[z>>3]=E-1.0;h[z+16+8>>3]=+h[(c[n>>2]|0)+40+8>>3];h[z+16>>3]=+h[A+16>>3];G=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[z+8>>3]=G-+((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[A+16>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+88>>3]-0.0;h[A+8>>3]=+h[z+16+8>>3];h[A+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[A>>3]=+h[A>>3]-1.0;r=(c[q>>2]|0)+56|0;c[r>>2]=c[z>>2];c[r+4>>2]=c[z+4>>2];c[r+8>>2]=c[z+8>>2];c[r+12>>2]=c[z+12>>2];c[r+16>>2]=c[z+16>>2];c[r+20>>2]=c[z+20>>2];c[r+24>>2]=c[z+24>>2];c[r+28>>2]=c[z+28>>2];r=(c[q>>2]|0)+56+32|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2]}else{h[z>>3]=E;h[z+16+8>>3]=+h[(c[n>>2]|0)+40+8>>3];h[z+16>>3]=+h[A+16>>3]+1.0;E=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[z+8>>3]=E-+((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[A>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+96>>3]+0.0;h[A+8>>3]=+h[z+16+8>>3];h[A+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;r=A+16|0;h[r>>3]=+h[r>>3]+1.0;r=(c[q>>2]|0)+56|0;c[r>>2]=c[z>>2];c[r+4>>2]=c[z+4>>2];c[r+8>>2]=c[z+8>>2];c[r+12>>2]=c[z+12>>2];c[r+16>>2]=c[z+16>>2];c[r+20>>2]=c[z+20>>2];c[r+24>>2]=c[z+24>>2];c[r+28>>2]=c[z+28>>2];r=(c[q>>2]|0)+56+32|0;c[r>>2]=c[A>>2];c[r+4>>2]=c[A+4>>2];c[r+8>>2]=c[A+8>>2];c[r+12>>2]=c[A+12>>2];c[r+16>>2]=c[A+16>>2];c[r+20>>2]=c[A+20>>2];c[r+24>>2]=c[A+24>>2];c[r+28>>2]=c[A+28>>2]}c[(c[q>>2]|0)+52>>2]=2;r=(c[n>>2]|0)+40+8|0;h[r>>3]=+h[r>>3]-1.0}while(0);c[y>>2]=c[o>>2];while(1){if(!(a[(c[(c[y>>2]|0)+8>>2]|0)+112>>0]|0))break;c[y>>2]=c[(c[(c[y>>2]|0)+8>>2]|0)+116>>2]}A=c[y>>2]|0;z=c[(c[y>>2]|0)+8>>2]|0;if((c[u>>2]|0)==(c[((c[c[y>>2]>>2]&3|0)==2?A:A+-32|0)+28>>2]|0))a[z+56+30>>0]=0;else a[z+16+30>>0]=0;c[(c[q>>2]|0)+48>>2]=c[s>>2];i=k;return}if((c[p>>2]|0)==2?(z=d[(c[(c[o>>2]|0)+8>>2]|0)+56+33>>0]|0,c[s>>2]=z,(z|0)!=0):0){z=c[q>>2]|0;c[C>>2]=c[z>>2];c[C+4>>2]=c[z+4>>2];c[C+8>>2]=c[z+8>>2];c[C+12>>2]=c[z+12>>2];c[C+16>>2]=c[z+16>>2];c[C+20>>2]=c[z+20>>2];c[C+24>>2]=c[z+24>>2];c[C+28>>2]=c[z+28>>2];do if(!(c[s>>2]&4)){if(c[s>>2]&1){if((c[(c[q>>2]|0)+48>>2]|0)==4){h[B>>3]=+h[C>>3]-1.0;h[B+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[B+16>>3]=+h[(c[n>>2]|0)+40>>3];F=+h[B+16+8>>3];h[B+8>>3]=F-+((c[(c[(qC(c[u>>2]|0)|0)+8>>2]|0)+252>>2]|0)/2|0|0);h[C+16>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16>>3]-+h[(c[(c[u>>2]|0)+8>>2]|0)+88>>3]-2.0;h[C+8>>3]=+h[B+16+8>>3];h[C+16+8>>3]=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3]+ +h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;h[C>>3]=+h[C>>3]-1.0;z=(c[q>>2]|0)+56|0;c[z>>2]=c[B>>2];c[z+4>>2]=c[B+4>>2];c[z+8>>2]=c[B+8>>2];c[z+12>>2]=c[B+12>>2];c[z+16>>2]=c[B+16>>2];c[z+20>>2]=c[B+20>>2];c[z+24>>2]=c[B+24>>2];c[z+28>>2]=c[B+28>>2];z=(c[q>>2]|0)+56+32|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=2}else{if(+h[C+16+8>>3]>+h[(c[n>>2]|0)+8>>3])H=+h[C+16+8>>3];else H=+h[(c[n>>2]|0)+8>>3];h[C+16+8>>3]=H;z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1}z=(c[n>>2]|0)+40+8|0;h[z>>3]=+h[z>>3]-1.0;break}F=+h[(c[n>>2]|0)+40>>3];if(c[s>>2]&8){h[C+16>>3]=F+1.0;E=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3];G=+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[C+16+8>>3]=E+G;h[C+8>>3]=+h[(c[n>>2]|0)+40+8>>3]-1.0}else{h[C+8>>3]=E-G;h[C+16+8>>3]=+h[(c[n>>2]|0)+40+8>>3]+1.0}z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=(c[n>>2]|0)+40|0;h[z>>3]=+h[z>>3]-1.0;break}else{h[C>>3]=F-1.0;F=+h[(c[(c[u>>2]|0)+8>>2]|0)+16+8>>3];G=+h[(c[(c[u>>2]|0)+8>>2]|0)+80>>3]/2.0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[C+16+8>>3]=F+G;h[C+8>>3]=+h[(c[n>>2]|0)+40+8>>3]-1.0}else{h[C+8>>3]=F-G;h[C+16+8>>3]=+h[(c[n>>2]|0)+40+8>>3]}z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=(c[n>>2]|0)+40|0;h[z>>3]=+h[z>>3]+1.0;break}}else{if(+h[C+8>>3]<+h[(c[n>>2]|0)+40+8>>3])I=+h[C+8>>3];else I=+h[(c[n>>2]|0)+40+8>>3];h[C+8>>3]=I;z=(c[q>>2]|0)+56|0;c[z>>2]=c[C>>2];c[z+4>>2]=c[C+4>>2];c[z+8>>2]=c[C+8>>2];c[z+12>>2]=c[C+12>>2];c[z+16>>2]=c[C+16>>2];c[z+20>>2]=c[C+20>>2];c[z+24>>2]=c[C+24>>2];c[z+28>>2]=c[C+28>>2];c[(c[q>>2]|0)+52>>2]=1;z=(c[n>>2]|0)+40+8|0;h[z>>3]=+h[z>>3]+1.0}while(0);c[D>>2]=c[o>>2];while(1){if(!(a[(c[(c[D>>2]|0)+8>>2]|0)+112>>0]|0))break;c[D>>2]=c[(c[(c[D>>2]|0)+8>>2]|0)+116>>2]}C=c[D>>2]|0;B=c[(c[D>>2]|0)+8>>2]|0;if((c[u>>2]|0)==(c[((c[c[D>>2]>>2]&3|0)==2?C:C+-32|0)+28>>2]|0))a[B+56+30>>0]=0;else a[B+16+30>>0]=0;c[(c[q>>2]|0)+48>>2]=c[s>>2];i=k;return}if((c[p>>2]|0)==1)c[s>>2]=4;else c[s>>2]=c[(c[q>>2]|0)+48>>2];if((c[v>>2]|0)!=0?(B=Gb[c[v>>2]&63](c[u>>2]|0,(c[(c[o>>2]|0)+8>>2]|0)+56|0,c[s>>2]|0,(c[q>>2]|0)+56|0,(c[q>>2]|0)+52|0)|0,c[t>>2]=B,(B|0)!=0):0){c[(c[q>>2]|0)+48>>2]=c[t>>2];i=k;return}t=(c[q>>2]|0)+56|0;B=c[q>>2]|0;c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[t+16>>2]=c[B+16>>2];c[t+20>>2]=c[B+20>>2];c[t+24>>2]=c[B+24>>2];c[t+28>>2]=c[B+28>>2];c[(c[q>>2]|0)+52>>2]=1;switch(c[p>>2]|0){case 8:{La(176099,144130,765,144174);break}case 2:{I=+h[(c[n>>2]|0)+40+8>>3];p=(c[q>>2]|0)+56|0;if((c[(c[q>>2]|0)+48>>2]|0)==4){h[p+8>>3]=I;i=k;return}else{h[p+16+8>>3]=I;i=k;return}break}case 1:{h[(c[q>>2]|0)+56+8>>3]=+h[(c[n>>2]|0)+40+8>>3];c[(c[q>>2]|0)+48>>2]=4;q=(c[n>>2]|0)+40+8|0;h[q>>3]=+h[q>>3]+1.0;i=k;return}default:{i=k;return}}}function nN(b){b=b|0;var e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0.0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;j=e;k=e+8|0;c[f>>2]=b;c[k>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+96>>2];if(!((a[(c[(c[f>>2]|0)+8>>2]|0)+16+28>>0]|0)==0?(a[(c[(c[f>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0))l=3;do if((l|0)==3){if((d[(c[(c[f>>2]|0)+8>>2]|0)+16+33>>0]&8|0)==0?(d[(c[(c[f>>2]|0)+8>>2]|0)+56+33>>0]&8|0)==0:0){if((d[(c[(c[f>>2]|0)+8>>2]|0)+16+33>>0]|0)!=(d[(c[(c[f>>2]|0)+8>>2]|0)+56+33>>0]|0))break;if(!(d[(c[(c[f>>2]|0)+8>>2]|0)+16+33>>0]&5))break}c[g>>2]=0;m=c[g>>2]|0;i=e;return m|0}while(0);c[g>>2]=18;if(!(c[k>>2]|0)){m=c[g>>2]|0;i=e;return m|0}l=c[f>>2]|0;b=(c[(c[(qC(c[((c[c[f>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;l=(c[k>>2]|0)+24|0;if(b)n=+h[l+8>>3];else n=+h[l>>3];h[j>>3]=n;c[g>>2]=~~(+(c[g>>2]|0)+ +h[j>>3]);m=c[g>>2]|0;i=e;return m|0}function oN(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=+j;k=+k;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=i;i=i+48|0;n=m+32|0;o=m+28|0;p=m+24|0;q=m+8|0;r=m;s=m+20|0;t=m+16|0;c[m+36>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;h[q>>3]=j;h[r>>3]=k;c[s>>2]=l;c[t>>2]=c[(c[n>>2]|0)+(c[o>>2]<<2)>>2];if(!((a[(c[(c[t>>2]|0)+8>>2]|0)+16+28>>0]|0)==0?(a[(c[(c[t>>2]|0)+8>>2]|0)+56+28>>0]|0)==0:0))u=3;do if((u|0)==3){if((d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&8|0)==0?(d[(c[(c[t>>2]|0)+8>>2]|0)+56+33>>0]&8|0)==0:0){if((d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]|0)!=(d[(c[(c[t>>2]|0)+8>>2]|0)+56+33>>0]|0))break;if(!(d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&5))break}if((d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&8|0)==0?(d[(c[(c[t>>2]|0)+8>>2]|0)+56+33>>0]&8|0)==0:0){if(d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&4){zN(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],c[s>>2]|0);i=m;return}if(!(d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&1))La(176099,144130,1231,144182);BN(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],c[s>>2]|0);i=m;return}if((d[(c[(c[t>>2]|0)+8>>2]|0)+16+33>>0]&2|0)==0?(d[(c[(c[t>>2]|0)+8>>2]|0)+56+33>>0]&2|0)==0:0){AN(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],c[s>>2]|0);i=m;return}zN(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],c[s>>2]|0);i=m;return}while(0);yN(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,+h[q>>3],+h[r>>3],c[s>>2]|0);i=m;return}function pN(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d;c[e>>2]=b;if(!((c[13887]|0)!=0|(c[13886]|0)!=0)){i=d;return}if(((c[(c[(c[e>>2]|0)+8>>2]|0)+100>>2]|0)!=0?(a[(c[(c[(c[e>>2]|0)+8>>2]|0)+100>>2]|0)+81>>0]|0)==0:0)?(qN(c[e>>2]|0,1)|0)!=0:0){b=c[e>>2]|0;f=qC(c[((c[c[e>>2]>>2]&3|0)==3?b:b+32|0)+28>>2]|0)|0;AO(f,c[(c[(c[e>>2]|0)+8>>2]|0)+100>>2]|0)}if(!(c[(c[(c[e>>2]|0)+8>>2]|0)+104>>2]|0)){i=d;return}if(a[(c[(c[(c[e>>2]|0)+8>>2]|0)+104>>2]|0)+81>>0]|0){i=d;return}if(!(qN(c[e>>2]|0,0)|0)){i=d;return}f=c[e>>2]|0;b=qC(c[((c[c[e>>2]>>2]&3|0)==3?f:f+32|0)+28>>2]|0)|0;AO(b,c[(c[(c[e>>2]|0)+8>>2]|0)+104>>2]|0);i=d;return}function qN(b,e){b=b|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;f=i;i=i+192|0;g=f+172|0;j=f+168|0;k=f+176|0;l=f+164|0;m=f+160|0;n=f+156|0;o=f+136|0;p=f+128|0;q=f+64|0;r=f+48|0;s=f+32|0;t=f+152|0;u=f+144|0;v=f+16|0;w=f;c[j>>2]=b;a[k>>0]=e;if((a[(c[(c[j>>2]|0)+8>>2]|0)+112>>0]|0)==6){c[g>>2]=0;x=c[g>>2]|0;i=f;return x|0}if(!((c[13887]|0)!=0?(e=zA(c[j>>2]|0,c[13887]|0)|0,c[f+148>>2]=e,(a[e>>0]|0)!=0):0))y=5;do if((y|0)==5){if((c[13886]|0)!=0?(e=zA(c[j>>2]|0,c[13886]|0)|0,c[u>>2]=e,(a[e>>0]|0)!=0):0)break;c[g>>2]=0;x=c[g>>2]|0;i=f;return x|0}while(0);u=c[(c[j>>2]|0)+8>>2]|0;if(d[k>>0]|0)z=c[u+100>>2]|0;else z=c[u+104>>2]|0;c[l>>2]=z;z=tN(c[j>>2]|0)|0;c[m>>2]=z;if(!z){c[g>>2]=0;x=c[g>>2]|0;i=f;return x|0}z=c[m>>2]|0;do if(a[k>>0]|0){c[n>>2]=(c[c[m>>2]>>2]|0)+(((c[z+4>>2]|0)-1|0)*48|0);u=c[n>>2]|0;if(c[(c[n>>2]|0)+12>>2]|0){y=u+32|0;c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];y=(c[c[n>>2]>>2]|0)+((c[(c[n>>2]|0)+4>>2]|0)-1<<4)|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];break}y=(c[c[n>>2]>>2]|0)+((c[u+4>>2]|0)-1<<4)|0;c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=4)break;y=q+(c[t>>2]<<4)|0;u=(c[c[n>>2]>>2]|0)+((c[(c[n>>2]|0)+4>>2]|0)-4+(c[t>>2]|0)<<4)|0;c[y>>2]=c[u>>2];c[y+4>>2]=c[u+4>>2];c[y+8>>2]=c[u+8>>2];c[y+12>>2]=c[u+12>>2];c[t>>2]=(c[t>>2]|0)+1}qO(w,q,3,.9,0,0);c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2]}else{c[n>>2]=c[z>>2];u=c[n>>2]|0;if(c[(c[n>>2]|0)+8>>2]|0){y=u+16|0;c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];y=c[c[n>>2]>>2]|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];break}y=c[u>>2]|0;c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[t>>2]=0;while(1){if((c[t>>2]|0)>=4)break;y=q+(c[t>>2]<<4)|0;u=(c[c[n>>2]>>2]|0)+(c[t>>2]<<4)|0;c[y>>2]=c[u>>2];c[y+4>>2]=c[u+4>>2];c[y+8>>2]=c[u+8>>2];c[y+12>>2]=c[u+12>>2];c[t>>2]=(c[t>>2]|0)+1}qO(v,q,3,.1,0,0);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];c[s+8>>2]=c[v+8>>2];c[s+12>>2]=c[v+12>>2]}while(0);A=+W(+(+h[s+8>>3]-+h[r+8>>3]),+(+h[s>>3]-+h[r>>3]));h[p>>3]=A+ +fO(c[j>>2]|0,c[13887]|0,-25.0,-180.0)/180.0*3.141592653589793;h[o>>3]=+fO(c[j>>2]|0,c[13886]|0,1.0,0.0)*10.0;A=+h[r>>3]+ +h[o>>3]*+Q(+(+h[p>>3]));h[(c[l>>2]|0)+56>>3]=A;A=+h[r+8>>3]+ +h[o>>3]*+R(+(+h[p>>3]));h[(c[l>>2]|0)+56+8>>3]=A;a[(c[l>>2]|0)+81>>0]=1;c[g>>2]=1;x=c[g>>2]|0;i=f;return x|0}function rN(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+128|0;g=f+96|0;j=f+120|0;k=f+116|0;l=f+112|0;m=f+80|0;n=f+64|0;o=f+48|0;p=f+32|0;q=f+16|0;r=f;c[j>>2]=b;c[k>>2]=d;c[l>>2]=(e[(c[(c[j>>2]|0)+8>>2]|0)+136>>1]|0)&14;CN(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0,o,p);if((+h[o>>3]-+h[p>>3])*(+h[o>>3]-+h[p>>3])+(+h[o+8>>3]-+h[p+8>>3])*(+h[o+8>>3]-+h[p+8>>3])<1.0e-06){c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];i=f;return}if((c[l>>2]|0)==10|(c[l>>2]|0)==4){h[m>>3]=(+h[p>>3]+ +h[o>>3])/2.0;h[m+8>>3]=(+h[o+8>>3]+ +h[p+8>>3])/2.0;l=c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];vO(q,l,g);c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];i=f;return}else{DN(r,c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0,o,p);c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];i=f;return}}function sN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=i;i=i+16|0;d=e;c[e+4>>2]=a;c[d>>2]=b;pN(c[d>>2]|0);i=e;return}function tN(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+32|0;e=d;f=d+16|0;g=d+12|0;h=d+8|0;c[f>>2]=b;c[g>>2]=c[f>>2];while(1){b=c[(c[(c[g>>2]|0)+8>>2]|0)+8>>2]|0;c[h>>2]=b;if(b)break;if(!(a[(c[(c[g>>2]|0)+8>>2]|0)+112>>0]|0))break;c[g>>2]=c[(c[(c[g>>2]|0)+8>>2]|0)+116>>2]}if(c[h>>2]|0){j=c[h>>2]|0;i=d;return j|0}g=c[f>>2]|0;b=wB(c[((c[c[f>>2]>>2]&3|0)==3?g:g+32|0)+28>>2]|0)|0;g=c[f>>2]|0;k=wB(c[((c[c[f>>2]>>2]&3|0)==2?g:g+-32|0)+28>>2]|0)|0;c[e>>2]=b;c[e+4>>2]=k;$z(1,144195,e)|0;j=c[h>>2]|0;i=d;return j|0}function uN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+96|0;j=g+84|0;k=g+80|0;l=g+76|0;m=g+88|0;n=g+72|0;o=g+64|0;p=g;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;a[m>>0]=f;h[o>>3]=+h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3];c[n>>2]=0;while(1){if((c[n>>2]|0)>=4)break;h[p+(c[n>>2]<<4)>>3]=+h[(c[l>>2]|0)+(c[n>>2]<<4)>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3];h[p+(c[n>>2]<<4)+8>>3]=+h[(c[l>>2]|0)+(c[n>>2]<<4)+8>>3]-+h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3];c[n>>2]=(c[n>>2]|0)+1}gN(c[j>>2]|0,c[(c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0,p,a[m>>0]|0);c[n>>2]=0;while(1){if((c[n>>2]|0)>=4)break;h[(c[l>>2]|0)+(c[n>>2]<<4)>>3]=+h[p+(c[n>>2]<<4)>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16>>3];h[(c[l>>2]|0)+(c[n>>2]<<4)+8>>3]=+h[p+(c[n>>2]<<4)+8>>3]+ +h[(c[(c[k>>2]|0)+8>>2]|0)+16+8>>3];c[n>>2]=(c[n>>2]|0)+1}h[(c[(c[k>>2]|0)+8>>2]|0)+96>>3]=+h[o>>3];i=g;return}function vN(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=i;i=i+48|0;l=k+44|0;m=k+40|0;n=k+36|0;o=k+32|0;p=k+28|0;q=k+24|0;r=k+20|0;s=k+16|0;t=k+12|0;u=k+8|0;v=k+4|0;w=k;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;c[s>>2]=c[l>>2];while(1){if(!(c[(c[(c[s>>2]|0)+8>>2]|0)+116>>2]|0))break;c[s>>2]=c[(c[(c[s>>2]|0)+8>>2]|0)+116>>2]}if(a[(c[r>>2]|0)+8>>0]|0)c[u>>2]=0;else c[u>>2]=(Fb[c[c[r>>2]>>2]&63](c[s>>2]|0)|0)&255;bH(c[s>>2]|0,v,w);if((Fb[c[(c[r>>2]|0)+4>>2]&63](c[m>>2]|0)|0)<<24>>24)c[w>>2]=0;m=c[l>>2]|0;if((Fb[c[(c[r>>2]|0)+4>>2]&63](c[((c[c[l>>2]>>2]&3|0)==3?m:m+32|0)+28>>2]|0)|0)<<24>>24)c[v>>2]=0;if(c[u>>2]|0){c[t>>2]=c[v>>2];c[v>>2]=c[w>>2];c[w>>2]=c[t>>2]}if(a[(c[r>>2]|0)+9>>0]|0){if(!((c[w>>2]|0)!=0|(c[v>>2]|0)!=0)){i=k;return}fH(c[s>>2]|0,c[n>>2]|0,c[c[o>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0,c[v>>2]|0,c[w>>2]|0);i=k;return}if(c[v>>2]|0){r=eH(c[s>>2]|0,c[n>>2]|0,c[c[o>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0,c[v>>2]|0)|0;c[c[o>>2]>>2]=r}if(!(c[w>>2]|0)){i=k;return}r=dH(c[s>>2]|0,c[n>>2]|0,c[c[o>>2]>>2]|0,c[c[p>>2]>>2]|0,c[q>>2]|0,c[w>>2]|0)|0;c[c[p>>2]>>2]=r;i=k;return}function wN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;h[f>>3]=+h[b>>3]+ +h[d>>3];h[f+8>>3]=+h[b+8>>3]+ +h[d+8>>3];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];i=e;return}function xN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0;b=i;i=i+64|0;d=b+60|0;e=b+40|0;f=b+32|0;g=b+24|0;j=b+16|0;k=b+56|0;l=b+52|0;m=b;n=b+48|0;c[d>>2]=a;h[f>>3]=0.0;h[e>>3]=0.0;c[k>>2]=0;while(1){a=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]|0)+(c[k>>2]<<2)>>2]|0;c[n>>2]=a;if(!a)break;a=c[n>>2]|0;h[e>>3]=+h[e>>3]+ +h[(c[(c[((c[c[n>>2]>>2]&3|0)==3?a:a+32|0)+28>>2]|0)+8>>2]|0)+16>>3];c[k>>2]=(c[k>>2]|0)+1}c[l>>2]=0;while(1){a=c[(c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]|0)+(c[l>>2]<<2)>>2]|0;c[n>>2]=a;if(!a)break;a=c[n>>2]|0;h[f>>3]=+h[f>>3]+ +h[(c[(c[((c[c[n>>2]>>2]&3|0)==2?a:a+-32|0)+28>>2]|0)+8>>2]|0)+16>>3];c[l>>2]=(c[l>>2]|0)+1}h[m>>3]=+h[(c[(c[d>>2]|0)+8>>2]|0)+16>>3]-+h[e>>3]/+(c[k>>2]|0);k=c[c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]>>2]|0;h[m+8>>3]=+h[(c[(c[d>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[((c[c[c[(c[(c[d>>2]|0)+8>>2]|0)+172>>2]>>2]>>2]&3|0)==3?k:k+32|0)+28>>2]|0)+8>>2]|0)+16+8>>3];h[g>>3]=+W(+(+h[m+8>>3]),+(+h[m>>3]));h[m>>3]=+h[f>>3]/+(c[l>>2]|0)-+h[(c[(c[d>>2]|0)+8>>2]|0)+16>>3];l=c[c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]>>2]|0;h[m+8>>3]=+h[(c[(c[((c[c[c[(c[(c[d>>2]|0)+8>>2]|0)+180>>2]>>2]>>2]&3|0)==2?l:l+-32|0)+28>>2]|0)+8>>2]|0)+16+8>>3]-+h[(c[(c[d>>2]|0)+8>>2]|0)+16+8>>3];h[j>>3]=+W(+(+h[m+8>>3]),+(+h[m>>3]));i=b;return +((+h[g>>3]+ +h[j>>3])/2.0)}function yN(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=+g;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0;l=i;i=i+16240|0;m=l+16236|0;n=l+16232|0;o=l+16228|0;p=l+16192|0;q=l+16184|0;r=l+16224|0;s=l+16220|0;t=l+16216|0;u=l+16212|0;v=l+16176|0;w=l+16168|0;x=l+16160|0;y=l+16152|0;z=l+16144|0;A=l+16136|0;B=l+16128|0;C=l+16112|0;D=l+16096|0;E=l+16080|0;F=l+16208|0;G=l+16204|0;H=l+80|0;I=l+16200|0;J=l+64|0;K=l+48|0;L=l+32|0;M=l+16|0;N=l;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;h[p>>3]=g;h[q>>3]=j;c[r>>2]=k;c[G>>2]=c[(c[m>>2]|0)+(c[n>>2]<<2)>>2];k=c[G>>2]|0;c[F>>2]=c[((c[c[G>>2]>>2]&3|0)==3?k:k+32|0)+28>>2];h[x>>3]=+h[q>>3]/2.0/+(c[o>>2]|0);h[x>>3]=+h[x>>3]>2.0?+h[x>>3]:2.0;c[I>>2]=0;q=(c[(c[F>>2]|0)+8>>2]|0)+16|0;c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[E+8>>2]=c[q+8>>2];c[E+12>>2]=c[q+12>>2];q=(c[(c[G>>2]|0)+8>>2]|0)+16|0;c[C>>2]=c[q>>2];c[C+4>>2]=c[q+4>>2];c[C+8>>2]=c[q+8>>2];c[C+12>>2]=c[q+12>>2];h[C>>3]=+h[C>>3]+ +h[E>>3];q=C+8|0;h[q>>3]=+h[q>>3]+ +h[E+8>>3];q=(c[(c[G>>2]|0)+8>>2]|0)+56|0;c[D>>2]=c[q>>2];c[D+4>>2]=c[q+4>>2];c[D+8>>2]=c[q+8>>2];c[D+12>>2]=c[q+12>>2];h[D>>3]=+h[D>>3]+ +h[E>>3];q=D+8|0;h[q>>3]=+h[q>>3]+ +h[E+8>>3];if(+h[C+8>>3]>=+h[D+8>>3])c[t>>2]=1;else c[t>>2]=-1;h[y>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3];h[z>>3]=0.0;c[u>>2]=EN(d[(c[(c[G>>2]|0)+8>>2]|0)+16+33>>0]|0,d[(c[(c[G>>2]|0)+8>>2]|0)+56+33>>0]|0)|0;switch(c[u>>2]|0){case 65:case 32:{if(+h[C+8>>3]==+h[D+8>>3])c[t>>2]=0-(c[t>>2]|0);break}default:{}}if(+h[y>>3]<(+h[E>>3]+ +h[y>>3]-+h[C>>3])*3.0)O=+h[y>>3];else O=(+h[E>>3]+ +h[y>>3]-+h[C>>3])*3.0;h[w>>3]=O;if(+h[y>>3]<(+h[E>>3]+ +h[y>>3]-+h[D>>3])*3.0)P=+h[y>>3];else P=(+h[E>>3]+ +h[y>>3]-+h[D>>3])*3.0;h[v>>3]=P;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[o>>2]|0))break;u=c[n>>2]|0;c[n>>2]=u+1;c[G>>2]=c[(c[m>>2]|0)+(u<<2)>>2];h[y>>3]=+h[y>>3]+ +h[p>>3];h[w>>3]=+h[w>>3]+ +h[p>>3];h[v>>3]=+h[v>>3]+ +h[p>>3];h[z>>3]=+h[z>>3]+ +(c[t>>2]|0)*+h[x>>3];c[I>>2]=0;u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;c[q>>2]=c[C>>2];c[q+4>>2]=c[C+4>>2];c[q+8>>2]=c[C+8>>2];c[q+12>>2]=c[C+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(J,+h[C>>3]+ +h[w>>3]/3.0,+h[C+8>>3]+ +h[z>>3]);c[u>>2]=c[J>>2];c[u+4>>2]=c[J+4>>2];c[u+8>>2]=c[J+8>>2];c[u+12>>2]=c[J+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;FN(K,+h[E>>3]+ +h[y>>3],+h[C+8>>3]+ +h[z>>3]);c[q>>2]=c[K>>2];c[q+4>>2]=c[K+4>>2];c[q+8>>2]=c[K+8>>2];c[q+12>>2]=c[K+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(L,+h[E>>3]+ +h[y>>3],(+h[C+8>>3]+ +h[D+8>>3])/2.0);c[u>>2]=c[L>>2];c[u+4>>2]=c[L+4>>2];c[u+8>>2]=c[L+8>>2];c[u+12>>2]=c[L+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;FN(M,+h[E>>3]+ +h[y>>3],+h[D+8>>3]-+h[z>>3]);c[q>>2]=c[M>>2];c[q+4>>2]=c[M+4>>2];c[q+8>>2]=c[M+8>>2];c[q+12>>2]=c[M+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(N,+h[D>>3]+ +h[v>>3]/3.0,+h[D+8>>3]-+h[z>>3]);c[u>>2]=c[N>>2];c[u+4>>2]=c[N+4>>2];c[u+8>>2]=c[N+8>>2];c[u+12>>2]=c[N+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;c[q>>2]=c[D>>2];c[q+4>>2]=c[D+4>>2];c[q+8>>2]=c[D+8>>2];c[q+12>>2]=c[D+12>>2];if(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0){q=c[G>>2]|0;u=(c[(c[(qC(c[((c[c[G>>2]>>2]&3|0)==3?q:q+32|0)+28>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;q=(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(u){h[A>>3]=+h[q+8>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]}else{h[A>>3]=+h[q>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]}h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16>>3]+ +h[y>>3]+ +h[A>>3]/2.0;h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16+8>>3];a[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;if(+h[A>>3]>+h[p>>3])h[y>>3]=+h[y>>3]+(+h[A>>3]-+h[p>>3])}q=c[G>>2]|0;jN(c[G>>2]|0,c[((c[c[G>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0,H,c[I>>2]|0,c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=l;return}function zN(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=+g;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0;l=i;i=i+16240|0;m=l+16236|0;n=l+16232|0;o=l+16228|0;p=l+16192|0;q=l+16184|0;r=l+16224|0;s=l+16220|0;t=l+16216|0;u=l+16212|0;v=l+16176|0;w=l+16168|0;x=l+16160|0;y=l+16152|0;z=l+16144|0;A=l+16136|0;B=l+16128|0;C=l+16112|0;D=l+16096|0;E=l+16080|0;F=l+16208|0;G=l+16204|0;H=l+80|0;I=l+16200|0;J=l+64|0;K=l+48|0;L=l+32|0;M=l+16|0;N=l;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;h[p>>3]=g;h[q>>3]=j;c[r>>2]=k;c[G>>2]=c[(c[m>>2]|0)+(c[n>>2]<<2)>>2];k=c[G>>2]|0;c[F>>2]=c[((c[c[G>>2]>>2]&3|0)==3?k:k+32|0)+28>>2];h[x>>3]=+h[p>>3]/2.0/+(c[o>>2]|0);h[x>>3]=+h[x>>3]>2.0?+h[x>>3]:2.0;c[I>>2]=0;p=(c[(c[F>>2]|0)+8>>2]|0)+16|0;c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[E+8>>2]=c[p+8>>2];c[E+12>>2]=c[p+12>>2];p=(c[(c[G>>2]|0)+8>>2]|0)+16|0;c[C>>2]=c[p>>2];c[C+4>>2]=c[p+4>>2];c[C+8>>2]=c[p+8>>2];c[C+12>>2]=c[p+12>>2];h[C>>3]=+h[C>>3]+ +h[E>>3];p=C+8|0;h[p>>3]=+h[p>>3]+ +h[E+8>>3];p=(c[(c[G>>2]|0)+8>>2]|0)+56|0;c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];c[D+8>>2]=c[p+8>>2];c[D+12>>2]=c[p+12>>2];h[D>>3]=+h[D>>3]+ +h[E>>3];p=D+8|0;h[p>>3]=+h[p>>3]+ +h[E+8>>3];if(+h[C>>3]>=+h[D>>3])c[t>>2]=1;else c[t>>2]=-1;h[z>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+80>>3]/2.0;h[y>>3]=0.0;c[u>>2]=EN(d[(c[(c[G>>2]|0)+8>>2]|0)+16+33>>0]|0,d[(c[(c[G>>2]|0)+8>>2]|0)+56+33>>0]|0)|0;switch(c[u>>2]|0){case 15:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[D>>3]-+h[E>>3])+ +h[x>>3]);break}case 38:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[D>>3])+ +h[x>>3]);break}case 41:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[C>>3]-+h[E>>3])+ +h[x>>3]);break}case 48:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[C>>3]-+h[E>>3])+ +h[x>>3]);break}case 58:case 57:case 51:case 47:case 37:case 14:{h[y>>3]=+(c[t>>2]|0)*((+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[C>>3])+(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[D>>3]-+h[E>>3])))/3.0);break}case 73:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[C>>3])+ +h[x>>3]);break}case 83:{h[y>>3]=+(c[t>>2]|0)*(+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[C>>3]));break}case 84:{h[y>>3]=+(c[t>>2]|0)*((+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[C>>3])+(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[D>>3]-+h[E>>3])))/2.0+ +h[x>>3]);break}case 85:case 75:case 74:{h[y>>3]=+(c[t>>2]|0)*((+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3]-(+h[E>>3]-+h[C>>3])+(+h[(c[(c[F>>2]|0)+8>>2]|0)+96>>3]-(+h[D>>3]-+h[E>>3])))/2.0+ +h[x>>3]*2.0);break}default:{}}if(+h[z>>3]<(+h[E+8>>3]+ +h[z>>3]-+h[C+8>>3])*3.0)O=+h[z>>3];else O=(+h[E+8>>3]+ +h[z>>3]-+h[C+8>>3])*3.0;h[w>>3]=O;if(+h[z>>3]<(+h[E+8>>3]+ +h[z>>3]-+h[D+8>>3])*3.0)P=+h[z>>3];else P=(+h[E+8>>3]+ +h[z>>3]-+h[D+8>>3])*3.0;h[v>>3]=P;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[o>>2]|0))break;u=c[n>>2]|0;c[n>>2]=u+1;c[G>>2]=c[(c[m>>2]|0)+(u<<2)>>2];h[z>>3]=+h[z>>3]+ +h[q>>3];h[w>>3]=+h[w>>3]+ +h[q>>3];h[v>>3]=+h[v>>3]+ +h[q>>3];h[y>>3]=+h[y>>3]+ +(c[t>>2]|0)*+h[x>>3];c[I>>2]=0;u=c[I>>2]|0;c[I>>2]=u+1;p=H+(u<<4)|0;c[p>>2]=c[C>>2];c[p+4>>2]=c[C+4>>2];c[p+8>>2]=c[C+8>>2];c[p+12>>2]=c[C+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;u=H+(p<<4)|0;FN(J,+h[C>>3]+ +h[y>>3],+h[C+8>>3]+ +h[w>>3]/3.0);c[u>>2]=c[J>>2];c[u+4>>2]=c[J+4>>2];c[u+8>>2]=c[J+8>>2];c[u+12>>2]=c[J+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;p=H+(u<<4)|0;FN(K,+h[C>>3]+ +h[y>>3],+h[E+8>>3]+ +h[z>>3]);c[p>>2]=c[K>>2];c[p+4>>2]=c[K+4>>2];c[p+8>>2]=c[K+8>>2];c[p+12>>2]=c[K+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;u=H+(p<<4)|0;FN(L,(+h[C>>3]+ +h[D>>3])/2.0,+h[E+8>>3]+ +h[z>>3]);c[u>>2]=c[L>>2];c[u+4>>2]=c[L+4>>2];c[u+8>>2]=c[L+8>>2];c[u+12>>2]=c[L+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;p=H+(u<<4)|0;FN(M,+h[D>>3]-+h[y>>3],+h[E+8>>3]+ +h[z>>3]);c[p>>2]=c[M>>2];c[p+4>>2]=c[M+4>>2];c[p+8>>2]=c[M+8>>2];c[p+12>>2]=c[M+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;u=H+(p<<4)|0;FN(N,+h[D>>3]-+h[y>>3],+h[D+8>>3]+ +h[v>>3]/3.0);c[u>>2]=c[N>>2];c[u+4>>2]=c[N+4>>2];c[u+8>>2]=c[N+8>>2];c[u+12>>2]=c[N+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;p=H+(u<<4)|0;c[p>>2]=c[D>>2];c[p+4>>2]=c[D+4>>2];c[p+8>>2]=c[D+8>>2];c[p+12>>2]=c[D+12>>2];if(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0){p=c[G>>2]|0;u=(c[(c[(qC(c[((c[c[G>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;p=(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(u){h[A>>3]=+h[p+8>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]}else{h[A>>3]=+h[p>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]}h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16+8>>3]+ +h[z>>3]+ +h[B>>3]/2.0;h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16>>3];a[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;if(+h[B>>3]>+h[q>>3])h[z>>3]=+h[z>>3]+(+h[B>>3]-+h[q>>3])}p=c[G>>2]|0;jN(c[G>>2]|0,c[((c[c[G>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0,H,c[I>>2]|0,c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=l;return}function AN(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=+g;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0;l=i;i=i+16240|0;m=l+16236|0;n=l+16232|0;o=l+16228|0;p=l+16192|0;q=l+16184|0;r=l+16224|0;s=l+16220|0;t=l+16216|0;u=l+16212|0;v=l+16176|0;w=l+16168|0;x=l+16160|0;y=l+16152|0;z=l+16144|0;A=l+16136|0;B=l+16128|0;C=l+16112|0;D=l+16096|0;E=l+16080|0;F=l+16208|0;G=l+16204|0;H=l+80|0;I=l+16200|0;J=l+64|0;K=l+48|0;L=l+32|0;M=l+16|0;N=l;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;h[p>>3]=g;h[q>>3]=j;c[r>>2]=k;c[G>>2]=c[(c[m>>2]|0)+(c[n>>2]<<2)>>2];k=c[G>>2]|0;c[F>>2]=c[((c[c[G>>2]>>2]&3|0)==3?k:k+32|0)+28>>2];h[x>>3]=+h[q>>3]/2.0/+(c[o>>2]|0);h[x>>3]=+h[x>>3]>2.0?+h[x>>3]:2.0;c[I>>2]=0;q=(c[(c[F>>2]|0)+8>>2]|0)+16|0;c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[E+8>>2]=c[q+8>>2];c[E+12>>2]=c[q+12>>2];q=(c[(c[G>>2]|0)+8>>2]|0)+16|0;c[C>>2]=c[q>>2];c[C+4>>2]=c[q+4>>2];c[C+8>>2]=c[q+8>>2];c[C+12>>2]=c[q+12>>2];h[C>>3]=+h[C>>3]+ +h[E>>3];q=C+8|0;h[q>>3]=+h[q>>3]+ +h[E+8>>3];q=(c[(c[G>>2]|0)+8>>2]|0)+56|0;c[D>>2]=c[q>>2];c[D+4>>2]=c[q+4>>2];c[D+8>>2]=c[q+8>>2];c[D+12>>2]=c[q+12>>2];h[D>>3]=+h[D>>3]+ +h[E>>3];q=D+8|0;h[q>>3]=+h[q>>3]+ +h[E+8>>3];if(+h[C+8>>3]>=+h[D+8>>3])c[t>>2]=1;else c[t>>2]=-1;h[y>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+88>>3];h[z>>3]=0.0;c[u>>2]=EN(d[(c[(c[G>>2]|0)+8>>2]|0)+16+33>>0]|0,d[(c[(c[G>>2]|0)+8>>2]|0)+56+33>>0]|0)|0;switch(c[u>>2]|0){case 67:case 12:{if(+h[C+8>>3]==+h[D+8>>3])c[t>>2]=0-(c[t>>2]|0);break}default:{}}if(+h[y>>3]<(+h[C>>3]+ +h[y>>3]-+h[E>>3])*3.0)O=+h[y>>3];else O=(+h[C>>3]+ +h[y>>3]-+h[E>>3])*3.0;h[w>>3]=O;if(+h[y>>3]<(+h[D>>3]+ +h[y>>3]-+h[E>>3])*3.0)P=+h[y>>3];else P=(+h[D>>3]+ +h[y>>3]-+h[E>>3])*3.0;h[v>>3]=P;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[o>>2]|0))break;u=c[n>>2]|0;c[n>>2]=u+1;c[G>>2]=c[(c[m>>2]|0)+(u<<2)>>2];h[y>>3]=+h[y>>3]+ +h[p>>3];h[w>>3]=+h[w>>3]+ +h[p>>3];h[v>>3]=+h[v>>3]+ +h[p>>3];h[z>>3]=+h[z>>3]+ +(c[t>>2]|0)*+h[x>>3];c[I>>2]=0;u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;c[q>>2]=c[C>>2];c[q+4>>2]=c[C+4>>2];c[q+8>>2]=c[C+8>>2];c[q+12>>2]=c[C+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(J,+h[C>>3]-+h[w>>3]/3.0,+h[C+8>>3]+ +h[z>>3]);c[u>>2]=c[J>>2];c[u+4>>2]=c[J+4>>2];c[u+8>>2]=c[J+8>>2];c[u+12>>2]=c[J+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;FN(K,+h[E>>3]-+h[y>>3],+h[C+8>>3]+ +h[z>>3]);c[q>>2]=c[K>>2];c[q+4>>2]=c[K+4>>2];c[q+8>>2]=c[K+8>>2];c[q+12>>2]=c[K+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(L,+h[E>>3]-+h[y>>3],(+h[C+8>>3]+ +h[D+8>>3])/2.0);c[u>>2]=c[L>>2];c[u+4>>2]=c[L+4>>2];c[u+8>>2]=c[L+8>>2];c[u+12>>2]=c[L+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;FN(M,+h[E>>3]-+h[y>>3],+h[D+8>>3]-+h[z>>3]);c[q>>2]=c[M>>2];c[q+4>>2]=c[M+4>>2];c[q+8>>2]=c[M+8>>2];c[q+12>>2]=c[M+12>>2];q=c[I>>2]|0;c[I>>2]=q+1;u=H+(q<<4)|0;FN(N,+h[D>>3]-+h[v>>3]/3.0,+h[D+8>>3]-+h[z>>3]);c[u>>2]=c[N>>2];c[u+4>>2]=c[N+4>>2];c[u+8>>2]=c[N+8>>2];c[u+12>>2]=c[N+12>>2];u=c[I>>2]|0;c[I>>2]=u+1;q=H+(u<<4)|0;c[q>>2]=c[D>>2];c[q+4>>2]=c[D+4>>2];c[q+8>>2]=c[D+8>>2];c[q+12>>2]=c[D+12>>2];if(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0){q=c[G>>2]|0;u=(c[(c[(qC(c[((c[c[G>>2]>>2]&3|0)==3?q:q+32|0)+28>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;q=(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(u){h[A>>3]=+h[q+8>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]}else{h[A>>3]=+h[q>>3];h[B>>3]=+h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]}h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16>>3]-+h[y>>3]-+h[A>>3]/2.0;h[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[(c[(c[F>>2]|0)+8>>2]|0)+16+8>>3];a[(c[(c[(c[G>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;if(+h[A>>3]>+h[p>>3])h[y>>3]=+h[y>>3]+(+h[A>>3]-+h[p>>3])}q=c[G>>2]|0;jN(c[G>>2]|0,c[((c[c[G>>2]>>2]&3|0)==2?q:q+-32|0)+28>>2]|0,H,c[I>>2]|0,c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=l;return}function BN(b,e,f,g,j,k){b=b|0;e=e|0;f=f|0;g=+g;j=+j;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0;l=i;i=i+16240|0;m=l+16236|0;n=l+16232|0;o=l+16228|0;p=l+16192|0;q=l+16184|0;r=l+16224|0;s=l+16168|0;t=l+16152|0;u=l+16136|0;v=l+16220|0;w=l+16216|0;x=l+16212|0;y=l+16208|0;z=l+16204|0;A=l+16128|0;B=l+16120|0;C=l+16112|0;D=l+16104|0;E=l+16096|0;F=l+16088|0;G=l+16080|0;H=l+80|0;I=l+16200|0;J=l+64|0;K=l+48|0;L=l+32|0;M=l+16|0;N=l;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;h[p>>3]=g;h[q>>3]=j;c[r>>2]=k;c[w>>2]=c[(c[m>>2]|0)+(c[n>>2]<<2)>>2];k=c[w>>2]|0;c[v>>2]=c[((c[c[w>>2]>>2]&3|0)==3?k:k+32|0)+28>>2];h[C>>3]=+h[p>>3]/2.0/+(c[o>>2]|0);h[C>>3]=+h[C>>3]>2.0?+h[C>>3]:2.0;c[I>>2]=0;p=(c[(c[v>>2]|0)+8>>2]|0)+16|0;c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];c[u+12>>2]=c[p+12>>2];p=(c[(c[w>>2]|0)+8>>2]|0)+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];h[s>>3]=+h[s>>3]+ +h[u>>3];p=s+8|0;h[p>>3]=+h[p>>3]+ +h[u+8>>3];p=(c[(c[w>>2]|0)+8>>2]|0)+56|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];h[t>>3]=+h[t>>3]+ +h[u>>3];p=t+8|0;h[p>>3]=+h[p>>3]+ +h[u+8>>3];if(+h[s>>3]>=+h[t>>3])c[y>>2]=1;else c[y>>2]=-1;h[E>>3]=+h[(c[(c[v>>2]|0)+8>>2]|0)+80>>3]/2.0;h[D>>3]=0.0;c[z>>2]=EN(d[(c[(c[w>>2]|0)+8>>2]|0)+16+33>>0]|0,d[(c[(c[w>>2]|0)+8>>2]|0)+56+33>>0]|0)|0;if((c[z>>2]|0)==67)c[y>>2]=0-(c[y>>2]|0);if(+h[E>>3]<(+h[s+8>>3]+ +h[E>>3]-+h[u+8>>3])*3.0)O=+h[E>>3];else O=(+h[s+8>>3]+ +h[E>>3]-+h[u+8>>3])*3.0;h[B>>3]=O;if(+h[E>>3]<(+h[t+8>>3]+ +h[E>>3]-+h[u+8>>3])*3.0)P=+h[E>>3];else P=(+h[t+8>>3]+ +h[E>>3]-+h[u+8>>3])*3.0;h[A>>3]=P;c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[o>>2]|0))break;z=c[n>>2]|0;c[n>>2]=z+1;c[w>>2]=c[(c[m>>2]|0)+(z<<2)>>2];h[E>>3]=+h[E>>3]+ +h[q>>3];h[B>>3]=+h[B>>3]+ +h[q>>3];h[A>>3]=+h[A>>3]+ +h[q>>3];h[D>>3]=+h[D>>3]+ +(c[y>>2]|0)*+h[C>>3];c[I>>2]=0;z=c[I>>2]|0;c[I>>2]=z+1;p=H+(z<<4)|0;c[p>>2]=c[s>>2];c[p+4>>2]=c[s+4>>2];c[p+8>>2]=c[s+8>>2];c[p+12>>2]=c[s+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;z=H+(p<<4)|0;FN(J,+h[s>>3]+ +h[D>>3],+h[s+8>>3]-+h[B>>3]/3.0);c[z>>2]=c[J>>2];c[z+4>>2]=c[J+4>>2];c[z+8>>2]=c[J+8>>2];c[z+12>>2]=c[J+12>>2];z=c[I>>2]|0;c[I>>2]=z+1;p=H+(z<<4)|0;FN(K,+h[s>>3]+ +h[D>>3],+h[u+8>>3]-+h[E>>3]);c[p>>2]=c[K>>2];c[p+4>>2]=c[K+4>>2];c[p+8>>2]=c[K+8>>2];c[p+12>>2]=c[K+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;z=H+(p<<4)|0;FN(L,(+h[s>>3]+ +h[t>>3])/2.0,+h[u+8>>3]-+h[E>>3]);c[z>>2]=c[L>>2];c[z+4>>2]=c[L+4>>2];c[z+8>>2]=c[L+8>>2];c[z+12>>2]=c[L+12>>2];z=c[I>>2]|0;c[I>>2]=z+1;p=H+(z<<4)|0;FN(M,+h[t>>3]-+h[D>>3],+h[u+8>>3]-+h[E>>3]);c[p>>2]=c[M>>2];c[p+4>>2]=c[M+4>>2];c[p+8>>2]=c[M+8>>2];c[p+12>>2]=c[M+12>>2];p=c[I>>2]|0;c[I>>2]=p+1;z=H+(p<<4)|0;FN(N,+h[t>>3]-+h[D>>3],+h[t+8>>3]-+h[A>>3]/3.0);c[z>>2]=c[N>>2];c[z+4>>2]=c[N+4>>2];c[z+8>>2]=c[N+8>>2];c[z+12>>2]=c[N+12>>2];z=c[I>>2]|0;c[I>>2]=z+1;p=H+(z<<4)|0;c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];if(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0){p=c[w>>2]|0;z=(c[(c[(qC(c[((c[c[w>>2]>>2]&3|0)==3?p:p+32|0)+28>>2]|0)|0)+8>>2]|0)+116>>2]&1|0)!=0;p=(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+24|0;if(z){h[F>>3]=+h[p+8>>3];h[G>>3]=+h[(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+24>>3]}else{h[F>>3]=+h[p>>3];h[G>>3]=+h[(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+24+8>>3]}h[(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+56+8>>3]=+h[(c[(c[v>>2]|0)+8>>2]|0)+16+8>>3]-+h[E>>3]-+h[G>>3]/2.0;h[(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+56>>3]=+h[(c[(c[v>>2]|0)+8>>2]|0)+16>>3];a[(c[(c[(c[w>>2]|0)+8>>2]|0)+96>>2]|0)+81>>0]=1;if(+h[G>>3]>+h[q>>3])h[E>>3]=+h[E>>3]+(+h[G>>3]-+h[q>>3])}p=c[w>>2]|0;jN(c[w>>2]|0,c[((c[c[w>>2]>>2]&3|0)==2?p:p+-32|0)+28>>2]|0,H,c[I>>2]|0,c[r>>2]|0);c[x>>2]=(c[x>>2]|0)+1}i=l;return}function CN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+64|0;f=e+56|0;g=e+52|0;h=e+48|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=j;b=c[c[f>>2]>>2]|0;a=d+48|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(a|0));k=c[g>>2]|0;if(c[j+8>>2]|0){g=j+16|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2]}else{g=c[j>>2]|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2]}d=j;b=(c[c[f>>2]>>2]|0)+(((c[(c[f>>2]|0)+4>>2]|0)-1|0)*48|0)|0;a=d+48|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(a|0));b=c[h>>2]|0;if(c[j+12>>2]|0){h=j+32|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];i=e;return}else{h=(c[j>>2]|0)+((c[j+4>>2]|0)-1<<4)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];i=e;return}}function DN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0;f=i;i=i+144|0;g=f+132|0;j=f+128|0;k=f+124|0;l=f+64|0;m=f+120|0;n=f+116|0;o=f+112|0;p=f+56|0;q=f+48|0;r=f+32|0;s=f+16|0;t=f;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;h[q>>3]=0.0;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0))break;u=l;v=(c[c[g>>2]>>2]|0)+((c[m>>2]|0)*48|0)|0;w=u+48|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));c[n>>2]=0;c[o>>2]=3;while(1){if((c[o>>2]|0)>=(c[l+4>>2]|0))break;e=(c[l>>2]|0)+(c[n>>2]<<4)|0;c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];e=(c[l>>2]|0)+(c[o>>2]<<4)|0;c[s>>2]=c[e>>2];c[s+4>>2]=c[e+4>>2];c[s+8>>2]=c[e+8>>2];c[s+12>>2]=c[e+12>>2];x=+O(+((+h[r>>3]-+h[s>>3])*(+h[r>>3]-+h[s>>3])+(+h[r+8>>3]-+h[s+8>>3])*(+h[r+8>>3]-+h[s+8>>3])));h[q>>3]=+h[q>>3]+x;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(c[o>>2]|0)+3}c[m>>2]=(c[m>>2]|0)+1}h[q>>3]=+h[q>>3]/2.0;c[m>>2]=0;a:while(1){if((c[m>>2]|0)>=(c[(c[g>>2]|0)+4>>2]|0)){y=15;break}u=l;v=(c[c[g>>2]>>2]|0)+((c[m>>2]|0)*48|0)|0;w=u+48|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));c[n>>2]=0;c[o>>2]=3;while(1){if((c[o>>2]|0)>=(c[l+4>>2]|0))break;e=(c[l>>2]|0)+(c[n>>2]<<4)|0;c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];e=(c[l>>2]|0)+(c[o>>2]<<4)|0;c[s>>2]=c[e>>2];c[s+4>>2]=c[e+4>>2];c[s+8>>2]=c[e+8>>2];c[s+12>>2]=c[e+12>>2];h[p>>3]=+O(+((+h[r>>3]-+h[s>>3])*(+h[r>>3]-+h[s>>3])+(+h[r+8>>3]-+h[s+8>>3])*(+h[r+8>>3]-+h[s+8>>3])));if(+h[p>>3]>=+h[q>>3]){y=12;break a}h[q>>3]=+h[q>>3]-+h[p>>3];c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(c[o>>2]|0)+3}c[m>>2]=(c[m>>2]|0)+1}if((y|0)==12){m=c[j>>2]|0;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];m=c[k>>2]|0;c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[m+12>>2]=c[s+12>>2];h[t>>3]=(+h[s>>3]*+h[q>>3]+ +h[r>>3]*(+h[p>>3]-+h[q>>3]))/+h[p>>3];h[t+8>>3]=(+h[s+8>>3]*+h[q>>3]+ +h[r+8>>3]*(+h[p>>3]-+h[q>>3]))/+h[p>>3];c[a>>2]=c[t>>2];c[a+4>>2]=c[t+4>>2];c[a+8>>2]=c[t+8>>2];c[a+12>>2]=c[t+12>>2];i=f;return}else if((y|0)==15)La(176417,144130,1316,144257)}function EN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+320|0;e=d+312|0;f=d+308|0;g=d+304|0;h=d+272|0;j=d+264|0;k=d+260|0;l=d+256|0;m=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[14312];c[h+4>>2]=c[14313];c[h+8>>2]=c[14314];c[h+12>>2]=c[14315];c[h+16>>2]=c[14316];c[h+20>>2]=c[14317];c[h+24>>2]=c[14318];c[h+28>>2]=c[14319];Z4(m|0,57280,256)|0;c[l>>2]=-1;c[k>>2]=-1;c[j>>2]=0;while(1){if((c[j>>2]|0)>=8)break;n=c[j>>2]|0;if((c[g>>2]|0)==(c[h+(c[j>>2]<<2)>>2]|0)){o=4;break}c[j>>2]=n+1}if((o|0)==4)c[l>>2]=n;c[j>>2]=0;while(1){if((c[j>>2]|0)>=8)break;p=c[j>>2]|0;if((c[f>>2]|0)==(c[h+(c[j>>2]<<2)>>2]|0)){o=9;break}c[j>>2]=p+1}if((o|0)==9)c[k>>2]=p;if((c[k>>2]|0)<0|(c[l>>2]|0)<0){c[e>>2]=0;q=c[e>>2]|0;i=d;return q|0}else{c[e>>2]=c[m+(c[k>>2]<<5)+(c[l>>2]<<2)>>2];q=c[e>>2]|0;i=d;return q|0}return 0}function FN(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0;e=i;i=i+32|0;f=e+24|0;g=e+16|0;j=e;h[f>>3]=b;h[g>>3]=d;h[j>>3]=+h[f>>3];h[j+8>>3]=+h[g>>3];c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];i=e;return}function GN(b,d,e,f,g){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0;j=i;i=i+384|0;k=j+372|0;l=j+368|0;m=j+320|0;n=j+364|0;o=j+360|0;p=j+356|0;q=j+352|0;r=j+348|0;s=j+344|0;t=j+340|0;u=j+312|0;v=j+304|0;w=j+336|0;x=j+332|0;y=j+240|0;z=j+176|0;A=j+112|0;B=j+104|0;C=j+96|0;D=j+88|0;E=j+80|0;F=j+72|0;G=j+64|0;H=j+56|0;I=j+48|0;J=j+40|0;K=j+32|0;L=j+24|0;M=j+16|0;N=j+8|0;O=j;P=j+328|0;c[k>>2]=b;c[l>>2]=d;h[m>>3]=e;c[n>>2]=f;c[o>>2]=g;h[u>>3]=0.0;h[v>>3]=0.0;c[w>>2]=HN(c[k>>2]|0,+h[m>>3])|0;h[B>>3]=0.0;h[C>>3]=0.0;h[K>>3]=0.0;h[L>>3]=0.0;h[M>>3]=0.0;c[s>>2]=c[(c[w>>2]|0)+4>>2];c[x>>2]=c[c[w>>2]>>2];h[M>>3]=+h[(c[x>>2]|0)+((c[s>>2]|0)-1<<6)+16>>3];c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[s>>2]|0))break;c[q>>2]=~~+IN(+((c[p>>2]|0)-1|0),+(c[s>>2]|0));c[r>>2]=~~+IN(+((c[p>>2]|0)+1|0),+(c[s>>2]|0));S=y;T=(c[x>>2]|0)+(c[p>>2]<<6)|0;U=S+64|0;do{c[S>>2]=c[T>>2];S=S+4|0;T=T+4|0}while((S|0)<(U|0));h[B>>3]=+h[y>>3];h[C>>3]=+h[y+8>>3];h[D>>3]=+h[y+16>>3];S=A;T=(c[x>>2]|0)+(c[r>>2]<<6)|0;U=S+64|0;do{c[S>>2]=c[T>>2];S=S+4|0;T=T+4|0}while((S|0)<(U|0));h[E>>3]=+h[A>>3];h[F>>3]=+h[A+8>>3];h[G>>3]=+JN(+h[F>>3]-+h[C>>3],+h[E>>3]-+h[B>>3]);S=z;T=(c[x>>2]|0)+(c[q>>2]<<6)|0;U=S+64|0;do{c[S>>2]=c[T>>2];S=S+4|0;T=T+4|0}while((S|0)<(U|0));h[H>>3]=+h[z>>3];h[I>>3]=+h[z+8>>3];h[J>>3]=+JN(+h[I>>3]-+h[C>>3],+h[H>>3]-+h[B>>3]);c[t>>2]=0;h[v>>3]=0.0;h[L>>3]=+Lb[c[l>>2]&7](+h[D>>3],+h[M>>3],+h[m>>3]);do if((c[p>>2]|0)!=0?(c[p>>2]|0)!=((c[s>>2]|0)-1|0):0){h[N>>3]=+h[G>>3]-+h[J>>3];if(+h[N>>3]<0.0)h[N>>3]=+h[N>>3]+6.283185307179586;h[O>>3]=1.5707963267948966-+h[N>>3]/2.0;if(+Q(+(+h[O>>3]))==0.0)h[K>>3]=0.0;else h[K>>3]=+h[L>>3]/+Q(+(+h[O>>3]));h[u>>3]=+h[G>>3]+1.5707963267948966+ +h[O>>3];if(0==(c[n>>2]|0)?!(+h[K>>3]>+h[4594]*+h[L>>3]):0){h[v>>3]=+h[u>>3];break}c[t>>2]=1;h[K>>3]=+h[L>>3];h[u>>3]=+IN(+h[J>>3]-1.5707963267948966,6.283185307179586);h[v>>3]=+IN(+h[G>>3]+1.5707963267948966,6.283185307179586);if((c[p>>2]|0)==((c[s>>2]|0)-1|0))c[t>>2]=0}else V=5;while(0);if((V|0)==5){V=0;h[K>>3]=+h[L>>3];if(!(c[p>>2]|0)){h[u>>3]=+h[G>>3]+1.5707963267948966;if((c[o>>2]|0)==2){e=+Q(+(+h[G>>3]));h[B>>3]=+h[B>>3]-e*+h[K>>3];e=+R(+(+h[G>>3]));h[C>>3]=+h[C>>3]-e*+h[K>>3]}}else{h[u>>3]=+h[J>>3]-1.5707963267948966;if((c[o>>2]|0)==2){e=+Q(+(+h[J>>3]));h[B>>3]=+h[B>>3]-e*+h[K>>3];e=+R(+(+h[J>>3]));h[C>>3]=+h[C>>3]-e*+h[K>>3]}}h[v>>3]=+h[u>>3]}h[(c[x>>2]|0)+(c[p>>2]<<6)>>3]=+h[B>>3];h[(c[x>>2]|0)+(c[p>>2]<<6)+8>>3]=+h[C>>3];h[(c[x>>2]|0)+(c[p>>2]<<6)+16>>3]=+h[D>>3];a[(c[x>>2]|0)+(c[p>>2]<<6)+24>>0]=108;h[(c[x>>2]|0)+(c[p>>2]<<6)+32>>3]=+h[u>>3];h[(c[x>>2]|0)+(c[p>>2]<<6)+40>>3]=+h[K>>3];c[(c[x>>2]|0)+(c[p>>2]<<6)+48>>2]=c[t>>2];h[(c[x>>2]|0)+(c[p>>2]<<6)+56>>3]=+h[v>>3];c[p>>2]=(c[p>>2]|0)+1}c[P>>2]=bK(12)|0;c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[s>>2]|0))break;S=y;T=(c[x>>2]|0)+(c[p>>2]<<6)|0;U=S+64|0;do{c[S>>2]=c[T>>2];S=S+4|0;T=T+4|0}while((S|0)<(U|0));h[B>>3]=+h[y>>3];h[C>>3]=+h[y+8>>3];h[u>>3]=+h[y+32>>3];h[K>>3]=+h[y+40>>3];c[t>>2]=c[y+48>>2];h[v>>3]=+h[y+56>>3];e=+Q(+(+h[u>>3]));W=+R(+(+h[u>>3]));KN(c[P>>2]|0,+h[B>>3]+e*+h[K>>3],+h[C>>3]+W*+h[K>>3]);if(c[t>>2]|0)LN(+h[B>>3],+h[C>>3],+h[K>>3],1,+h[u>>3],+h[v>>3],c[n>>2]|0,c[P>>2]|0);c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1)MN(c[P>>2]|0,+h[B>>3],+h[C>>3],+h[K>>3],+h[u>>3],+h[u>>3]+3.141592653589793);else{h[u>>3]=+h[u>>3]+3.141592653589793;W=+Q(+(+h[u>>3]));e=+R(+(+h[u>>3]));KN(c[P>>2]|0,+h[B>>3]+W*+h[K>>3],+h[C>>3]+e*+h[K>>3])}c[p>>2]=(c[s>>2]|0)-2;while(1){if((c[p>>2]|0)<0)break;S=y;T=(c[x>>2]|0)+(c[p>>2]<<6)|0;U=S+64|0;do{c[S>>2]=c[T>>2];S=S+4|0;T=T+4|0}while((S|0)<(U|0));h[B>>3]=+h[y>>3];h[C>>3]=+h[y+8>>3];h[u>>3]=+h[y+32>>3]+3.141592653589793;h[K>>3]=+h[y+40>>3];c[t>>2]=c[y+48>>2];h[v>>3]=+h[y+56>>3]+3.141592653589793;e=+Q(+(+h[v>>3]));W=+R(+(+h[v>>3]));KN(c[P>>2]|0,+h[B>>3]+e*+h[K>>3],+h[C>>3]+W*+h[K>>3]);if(c[t>>2]|0)LN(+h[B>>3],+h[C>>3],+h[K>>3],0,+h[u>>3],+h[v>>3],c[n>>2]|0,c[P>>2]|0);c[p>>2]=(c[p>>2]|0)+-1}if((c[o>>2]|0)!=1){X=c[w>>2]|0;NN(X);Y=c[P>>2]|0;i=j;return Y|0}MN(c[P>>2]|0,+h[B>>3],+h[C>>3],+h[K>>3],+h[u>>3],+h[u>>3]+3.141592653589793);X=c[w>>2]|0;NN(X);Y=c[P>>2]|0;i=j;return Y|0}function HN(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+208|0;e=d+152|0;f=d+136|0;g=d+192|0;j=d+188|0;k=d+184|0;l=d+180|0;m=d+120|0;n=d+112|0;o=d+176|0;p=d+96|0;q=d+80|0;r=d+16|0;s=d+172|0;t=d+168|0;u=d;c[g>>2]=a;h[d+128>>3]=b;h[n>>3]=0.0;c[o>>2]=ON()|0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[t>>2]=c[c[g>>2]>>2];g=c[o>>2]|0;a=c[t>>2]|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];PN(g,e,0.0);g=r+48|0;a=c[t>>2]|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[j>>2]=0;while(1){if(((c[j>>2]|0)+3|0)>=(c[s>>2]|0))break;a=r+48|0;c[r>>2]=c[a>>2];c[r+4>>2]=c[a+4>>2];c[r+8>>2]=c[a+8>>2];c[r+12>>2]=c[a+12>>2];c[k>>2]=1;while(1){if((c[k>>2]|0)>3)break;a=r+(c[k>>2]<<4)|0;g=(c[t>>2]|0)+((c[j>>2]|0)+(c[k>>2]|0)<<4)|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[k>>2]=(c[k>>2]|0)+1}c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];c[l>>2]=1;while(1){if((c[l>>2]|0)>20)break;qO(u,r,3,+(c[l>>2]|0)/20.0,0,0);c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];h[m>>3]=+QN(f,e);h[n>>3]=+h[n>>3]+ +h[m>>3];g=c[o>>2]|0;b=+h[n>>3];c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];PN(g,e,b);c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];c[l>>2]=(c[l>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+3}RN(c[o>>2]|0);i=d;return c[o>>2]|0}function IN(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0,j=0.0;c=i;i=i+32|0;d=c+24|0;e=c+16|0;f=c+8|0;g=c;h[e>>3]=a;h[f>>3]=b;if(!(+h[e>>3]<0.0)?!(+h[e>>3]>=+h[f>>3]):0){h[d>>3]=+h[e>>3];j=+h[d>>3];i=c;return +j}h[g>>3]=-+M(+(+h[e>>3]/+h[f>>3]));h[d>>3]=+h[g>>3]*+h[f>>3]+ +h[e>>3];j=+h[d>>3];i=c;return +j}function JN(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0;c=i;i=i+32|0;d=c+24|0;e=c+16|0;f=c+8|0;g=c;h[e>>3]=a;h[f>>3]=b;do if(!(+h[f>>3]==0.0&+h[e>>3]==0.0)){h[g>>3]=+W(+(+h[e>>3]),+(+h[f>>3]));b=+h[g>>3];if(+h[g>>3]>=0.0){h[d>>3]=b;break}else{h[d>>3]=b+6.283185307179586;break}}else h[d>>3]=0.0;while(0);i=c;return +(+h[d>>3])}function KN(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,j=0,k=0;e=i;i=i+48|0;f=e+32|0;g=e+24|0;j=e+16|0;k=e;c[f>>2]=a;h[g>>3]=b;h[j>>3]=d;if((c[c[f>>2]>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){c[(c[f>>2]|0)+4>>2]=2e3;a=eK(c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]<<4)|0;c[(c[f>>2]|0)+8>>2]=a}h[k>>3]=+h[g>>3];h[k+8>>3]=+h[j>>3];j=c[f>>2]|0;g=c[j>>2]|0;c[j>>2]=g+1;j=(c[(c[f>>2]|0)+8>>2]|0)+(g<<4)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];i=e;return}function LN(a,b,d,e,f,g,j,k){a=+a;b=+b;d=+d;e=e|0;f=+f;g=+g;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+80|0;m=l+56|0;n=l+48|0;o=l+40|0;p=l+72|0;q=l+32|0;r=l+24|0;s=l+68|0;t=l+64|0;u=l+16|0;v=l+8|0;w=l;h[m>>3]=a;h[n>>3]=b;h[o>>3]=d;c[p>>2]=e;h[q>>3]=f;h[r>>3]=g;c[s>>2]=j;c[t>>2]=k;if(c[p>>2]|0){h[v>>3]=+h[q>>3];h[w>>3]=+h[r>>3]}else{h[v>>3]=+h[r>>3];h[w>>3]=+h[q>>3]}if((c[s>>2]|0)!=1){g=+h[m>>3]+ +h[o>>3]*+Q(+(+h[w>>3]));KN(c[t>>2]|0,g,+h[m>>3]+ +h[o>>3]*+R(+(+h[w>>3])));i=l;return}h[u>>3]=+h[v>>3]-+h[w>>3];if(+h[u>>3]<=1.7453292519943296e-03)h[u>>3]=+h[u>>3]+6.283185307179586;if(+h[u>>3]<3.141592653589793){h[v>>3]=+h[u>>3]+ +h[w>>3];MN(c[t>>2]|0,+h[m>>3],+h[n>>3],+h[o>>3],+h[v>>3],+h[w>>3]);i=l;return}else{g=+h[m>>3]+ +h[o>>3]*+Q(+(+h[w>>3]));KN(c[t>>2]|0,g,+h[m>>3]+ +h[o>>3]*+R(+(+h[w>>3])));i=l;return}}function MN(a,b,d,e,f,g){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;j=i;i=i+64|0;k=j+52|0;l=j+40|0;m=j+32|0;n=j+24|0;o=j+16|0;p=j+8|0;q=j;r=j+48|0;c[k>>2]=a;h[l>>3]=b;h[m>>3]=d;h[n>>3]=e;h[o>>3]=f;h[p>>3]=g;g=+h[l>>3]+ +h[n>>3]*+Q(+(+h[o>>3]));KN(c[k>>2]|0,g,+h[m>>3]+ +h[n>>3]*+R(+(+h[o>>3])));if(+h[n>>3]==0.0){i=j;return}while(1){if(!(+h[p>>3]>+h[o>>3]))break;h[p>>3]=+h[p>>3]-6.283185307179586}h[q>>3]=+h[o>>3]-+h[p>>3];while(1){s=+h[q>>3];if(!(+h[q>>3]>6.283185307179586))break;h[q>>3]=s-6.283185307179586}h[q>>3]=s/19.0;c[r>>2]=1;while(1){if((c[r>>2]|0)>=20)break;s=+h[l>>3]+ +h[n>>3]*+Q(+(+h[o>>3]-+(c[r>>2]|0)*+h[q>>3]));KN(c[k>>2]|0,s,+h[m>>3]+ +h[n>>3]*+R(+(+h[o>>3]-+(c[r>>2]|0)*+h[q>>3])));c[r>>2]=(c[r>>2]|0)+1}i=j;return}function NN(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;O4(c[c[d>>2]>>2]|0);O4(c[d>>2]|0);i=b;return}function ON(){var a=0,b=0,d=0;a=i;i=i+16|0;b=a;c[b>>2]=bK(12)|0;c[(c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=2e3;d=bK(128e3)|0;c[c[b>>2]>>2]=d;i=a;return c[b>>2]|0} +function N4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0;do if(a>>>0<245){b=a>>>0<11?16:a+11&-8;d=b>>>3;e=c[24988]|0;f=e>>>d;if(f&3){g=(f&1^1)+d|0;h=99992+(g<<1<<2)|0;i=h+8|0;j=c[i>>2]|0;k=j+8|0;l=c[k>>2]|0;do if((h|0)!=(l|0)){if(l>>>0<(c[24992]|0)>>>0)Ga();m=l+12|0;if((c[m>>2]|0)==(j|0)){c[m>>2]=h;c[i>>2]=l;break}else Ga()}else c[24988]=e&~(1<>2]=l|3;i=j+l+4|0;c[i>>2]=c[i>>2]|1;n=k;return n|0}i=c[24990]|0;if(b>>>0>i>>>0){if(f){l=2<>>12&16;m=l>>>h;l=m>>>5&8;o=m>>>l;m=o>>>2&4;p=o>>>m;o=p>>>1&2;q=p>>>o;p=q>>>1&1;r=(l|h|m|o|p)+(q>>>p)|0;p=99992+(r<<1<<2)|0;q=p+8|0;o=c[q>>2]|0;m=o+8|0;h=c[m>>2]|0;do if((p|0)!=(h|0)){if(h>>>0<(c[24992]|0)>>>0)Ga();l=h+12|0;if((c[l>>2]|0)==(o|0)){c[l>>2]=p;c[q>>2]=h;s=c[24990]|0;break}else Ga()}else{c[24988]=e&~(1<>2]=b|3;e=o+b|0;c[e+4>>2]=i|1;c[e+i>>2]=i;if(s){h=c[24993]|0;q=s>>>3;p=99992+(q<<1<<2)|0;d=c[24988]|0;f=1<>2]|0;if(k>>>0<(c[24992]|0)>>>0)Ga();else{t=q;u=k}}else{c[24988]=d|f;t=p+8|0;u=p}c[t>>2]=h;c[u+12>>2]=h;c[h+8>>2]=u;c[h+12>>2]=p}c[24990]=i;c[24993]=e;n=m;return n|0}e=c[24989]|0;if(e){i=(e&0-e)+-1|0;e=i>>>12&16;p=i>>>e;i=p>>>5&8;h=p>>>i;p=h>>>2&4;f=h>>>p;h=f>>>1&2;d=f>>>h;f=d>>>1&1;k=c[100256+((i|e|p|h|f)+(d>>>f)<<2)>>2]|0;f=(c[k+4>>2]&-8)-b|0;d=k;h=k;while(1){k=c[d+16>>2]|0;if(!k){p=c[d+20>>2]|0;if(!p){v=f;w=h;break}else x=p}else x=k;k=(c[x+4>>2]&-8)-b|0;p=k>>>0>>0;f=p?k:f;d=x;h=p?x:h}h=c[24992]|0;if(w>>>0>>0)Ga();d=w+b|0;if(w>>>0>=d>>>0)Ga();f=c[w+24>>2]|0;m=c[w+12>>2]|0;do if((m|0)==(w|0)){o=w+20|0;r=c[o>>2]|0;if(!r){p=w+16|0;k=c[p>>2]|0;if(!k){y=0;break}else{z=k;A=p}}else{z=r;A=o}while(1){o=z+20|0;r=c[o>>2]|0;if(r){z=r;A=o;continue}o=z+16|0;r=c[o>>2]|0;if(!r){B=z;C=A;break}else{z=r;A=o}}if(C>>>0>>0)Ga();else{c[C>>2]=0;y=B;break}}else{o=c[w+8>>2]|0;if(o>>>0>>0)Ga();r=o+12|0;if((c[r>>2]|0)!=(w|0))Ga();p=m+8|0;if((c[p>>2]|0)==(w|0)){c[r>>2]=m;c[p>>2]=o;y=m;break}else Ga()}while(0);do if(f){m=c[w+28>>2]|0;h=100256+(m<<2)|0;if((w|0)==(c[h>>2]|0)){c[h>>2]=y;if(!y){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();m=f+16|0;if((c[m>>2]|0)==(w|0))c[m>>2]=y;else c[f+20>>2]=y;if(!y)break}m=c[24992]|0;if(y>>>0>>0)Ga();c[y+24>>2]=f;h=c[w+16>>2]|0;do if(h)if(h>>>0>>0)Ga();else{c[y+16>>2]=h;c[h+24>>2]=y;break}while(0);h=c[w+20>>2]|0;if(h)if(h>>>0<(c[24992]|0)>>>0)Ga();else{c[y+20>>2]=h;c[h+24>>2]=y;break}}while(0);if(v>>>0<16){f=v+b|0;c[w+4>>2]=f|3;h=w+f+4|0;c[h>>2]=c[h>>2]|1}else{c[w+4>>2]=b|3;c[d+4>>2]=v|1;c[d+v>>2]=v;h=c[24990]|0;if(h){f=c[24993]|0;m=h>>>3;h=99992+(m<<1<<2)|0;o=c[24988]|0;p=1<>2]|0;if(r>>>0<(c[24992]|0)>>>0)Ga();else{D=m;E=r}}else{c[24988]=o|p;D=h+8|0;E=h}c[D>>2]=f;c[E+12>>2]=f;c[f+8>>2]=E;c[f+12>>2]=h}c[24990]=v;c[24993]=d}n=w+8|0;return n|0}else F=b}else F=b}else if(a>>>0<=4294967231){h=a+11|0;f=h&-8;p=c[24989]|0;if(p){o=0-f|0;r=h>>>8;if(r)if(f>>>0>16777215)G=31;else{h=(r+1048320|0)>>>16&8;m=r<>>16&4;k=m<>>16&2;e=14-(r|h|m)+(k<>>15)|0;G=f>>>(e+7|0)&1|e<<1}else G=0;e=c[100256+(G<<2)>>2]|0;a:do if(!e){H=o;I=0;J=0;K=86}else{m=o;k=0;h=f<<((G|0)==31?0:25-(G>>>1)|0);r=e;i=0;while(1){q=c[r+4>>2]&-8;j=q-f|0;if(j>>>0>>0)if((q|0)==(f|0)){L=j;M=r;N=r;K=90;break a}else{O=j;P=r}else{O=m;P=i}j=c[r+20>>2]|0;r=c[r+16+(h>>>31<<2)>>2]|0;q=(j|0)==0|(j|0)==(r|0)?k:j;j=(r|0)==0;if(j){H=O;I=q;J=P;K=86;break}else{m=O;k=q;h=h<<(j&1^1);i=P}}}while(0);if((K|0)==86){if((I|0)==0&(J|0)==0){e=2<>>12&16;b=e>>>o;e=b>>>5&8;d=b>>>e;b=d>>>2&4;i=d>>>b;d=i>>>1&2;h=i>>>d;i=h>>>1&1;Q=c[100256+((e|o|b|d|i)+(h>>>i)<<2)>>2]|0}else Q=I;if(!Q){R=H;S=J}else{L=H;M=Q;N=J;K=90}}if((K|0)==90)while(1){K=0;i=(c[M+4>>2]&-8)-f|0;h=i>>>0>>0;d=h?i:L;i=h?M:N;h=c[M+16>>2]|0;if(h){L=d;M=h;N=i;K=90;continue}M=c[M+20>>2]|0;if(!M){R=d;S=i;break}else{L=d;N=i;K=90}}if((S|0)!=0?R>>>0<((c[24990]|0)-f|0)>>>0:0){p=c[24992]|0;if(S>>>0

    >>0)Ga();i=S+f|0;if(S>>>0>=i>>>0)Ga();d=c[S+24>>2]|0;h=c[S+12>>2]|0;do if((h|0)==(S|0)){b=S+20|0;o=c[b>>2]|0;if(!o){e=S+16|0;k=c[e>>2]|0;if(!k){T=0;break}else{U=k;V=e}}else{U=o;V=b}while(1){b=U+20|0;o=c[b>>2]|0;if(o){U=o;V=b;continue}b=U+16|0;o=c[b>>2]|0;if(!o){W=U;X=V;break}else{U=o;V=b}}if(X>>>0

    >>0)Ga();else{c[X>>2]=0;T=W;break}}else{b=c[S+8>>2]|0;if(b>>>0

    >>0)Ga();o=b+12|0;if((c[o>>2]|0)!=(S|0))Ga();e=h+8|0;if((c[e>>2]|0)==(S|0)){c[o>>2]=h;c[e>>2]=b;T=h;break}else Ga()}while(0);do if(d){h=c[S+28>>2]|0;p=100256+(h<<2)|0;if((S|0)==(c[p>>2]|0)){c[p>>2]=T;if(!T){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();h=d+16|0;if((c[h>>2]|0)==(S|0))c[h>>2]=T;else c[d+20>>2]=T;if(!T)break}h=c[24992]|0;if(T>>>0>>0)Ga();c[T+24>>2]=d;p=c[S+16>>2]|0;do if(p)if(p>>>0>>0)Ga();else{c[T+16>>2]=p;c[p+24>>2]=T;break}while(0);p=c[S+20>>2]|0;if(p)if(p>>>0<(c[24992]|0)>>>0)Ga();else{c[T+20>>2]=p;c[p+24>>2]=T;break}}while(0);do if(R>>>0>=16){c[S+4>>2]=f|3;c[i+4>>2]=R|1;c[i+R>>2]=R;d=R>>>3;if(R>>>0<256){p=99992+(d<<1<<2)|0;h=c[24988]|0;b=1<>2]|0;if(e>>>0<(c[24992]|0)>>>0)Ga();else{Y=d;Z=e}}else{c[24988]=h|b;Y=p+8|0;Z=p}c[Y>>2]=i;c[Z+12>>2]=i;c[i+8>>2]=Z;c[i+12>>2]=p;break}p=R>>>8;if(p)if(R>>>0>16777215)_=31;else{b=(p+1048320|0)>>>16&8;h=p<>>16&4;e=h<>>16&2;d=14-(p|b|h)+(e<>>15)|0;_=R>>>(d+7|0)&1|d<<1}else _=0;d=100256+(_<<2)|0;c[i+28>>2]=_;h=i+16|0;c[h+4>>2]=0;c[h>>2]=0;h=c[24989]|0;e=1<<_;if(!(h&e)){c[24989]=h|e;c[d>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}e=R<<((_|0)==31?0:25-(_>>>1)|0);h=c[d>>2]|0;while(1){if((c[h+4>>2]&-8|0)==(R|0)){$=h;K=148;break}d=h+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b){aa=d;ba=h;K=145;break}else{e=e<<1;h=b}}if((K|0)==145)if(aa>>>0<(c[24992]|0)>>>0)Ga();else{c[aa>>2]=i;c[i+24>>2]=ba;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((K|0)==148){h=$+8|0;e=c[h>>2]|0;b=c[24992]|0;if(e>>>0>=b>>>0&$>>>0>=b>>>0){c[e+12>>2]=i;c[h>>2]=i;c[i+8>>2]=e;c[i+12>>2]=$;c[i+24>>2]=0;break}else Ga()}}else{e=R+f|0;c[S+4>>2]=e|3;h=S+e+4|0;c[h>>2]=c[h>>2]|1}while(0);n=S+8|0;return n|0}else F=f}else F=f}else F=-1;while(0);S=c[24990]|0;if(S>>>0>=F>>>0){R=S-F|0;$=c[24993]|0;if(R>>>0>15){ba=$+F|0;c[24993]=ba;c[24990]=R;c[ba+4>>2]=R|1;c[ba+R>>2]=R;c[$+4>>2]=F|3}else{c[24990]=0;c[24993]=0;c[$+4>>2]=S|3;R=$+S+4|0;c[R>>2]=c[R>>2]|1}n=$+8|0;return n|0}$=c[24991]|0;if($>>>0>F>>>0){R=$-F|0;c[24991]=R;$=c[24994]|0;S=$+F|0;c[24994]=S;c[S+4>>2]=R|1;c[$+4>>2]=F|3;n=$+8|0;return n|0}do if(!(c[25106]|0)){$=Xa(30)|0;if(!($+-1&$)){c[25108]=$;c[25107]=$;c[25109]=-1;c[25110]=-1;c[25111]=0;c[25099]=0;c[25106]=(sb(0)|0)&-16^1431655768;break}else Ga()}while(0);$=F+48|0;R=c[25108]|0;S=F+47|0;ba=R+S|0;aa=0-R|0;R=ba&aa;if(R>>>0<=F>>>0){n=0;return n|0}_=c[25098]|0;if((_|0)!=0?(Z=c[25096]|0,Y=Z+R|0,Y>>>0<=Z>>>0|Y>>>0>_>>>0):0){n=0;return n|0}b:do if(!(c[25099]&4)){_=c[24994]|0;c:do if(_){Y=100400;while(1){Z=c[Y>>2]|0;if(Z>>>0<=_>>>0?(T=Y+4|0,(Z+(c[T>>2]|0)|0)>>>0>_>>>0):0){ca=Y;da=T;break}Y=c[Y+8>>2]|0;if(!Y){K=173;break c}}Y=ba-(c[24991]|0)&aa;if(Y>>>0<2147483647){T=Ta(Y|0)|0;if((T|0)==((c[ca>>2]|0)+(c[da>>2]|0)|0)){if((T|0)!=(-1|0)){ea=T;fa=Y;K=193;break b}}else{ga=T;ha=Y;K=183}}}else K=173;while(0);do if((K|0)==173?(_=Ta(0)|0,(_|0)!=(-1|0)):0){f=_;Y=c[25107]|0;T=Y+-1|0;if(!(T&f))ia=R;else ia=R-f+(T+f&0-Y)|0;Y=c[25096]|0;f=Y+ia|0;if(ia>>>0>F>>>0&ia>>>0<2147483647){T=c[25098]|0;if((T|0)!=0?f>>>0<=Y>>>0|f>>>0>T>>>0:0)break;T=Ta(ia|0)|0;if((T|0)==(_|0)){ea=_;fa=ia;K=193;break b}else{ga=T;ha=ia;K=183}}}while(0);d:do if((K|0)==183){T=0-ha|0;do if($>>>0>ha>>>0&(ha>>>0<2147483647&(ga|0)!=(-1|0))?(_=c[25108]|0,f=S-ha+_&0-_,f>>>0<2147483647):0)if((Ta(f|0)|0)==(-1|0)){Ta(T|0)|0;break d}else{ja=f+ha|0;break}else ja=ha;while(0);if((ga|0)!=(-1|0)){ea=ga;fa=ja;K=193;break b}}while(0);c[25099]=c[25099]|4;K=190}else K=190;while(0);if((((K|0)==190?R>>>0<2147483647:0)?(ja=Ta(R|0)|0,R=Ta(0)|0,ja>>>0>>0&((ja|0)!=(-1|0)&(R|0)!=(-1|0))):0)?(ga=R-ja|0,ga>>>0>(F+40|0)>>>0):0){ea=ja;fa=ga;K=193}if((K|0)==193){ga=(c[25096]|0)+fa|0;c[25096]=ga;if(ga>>>0>(c[25097]|0)>>>0)c[25097]=ga;ga=c[24994]|0;do if(ga){ja=100400;do{R=c[ja>>2]|0;ha=ja+4|0;S=c[ha>>2]|0;if((ea|0)==(R+S|0)){ka=R;la=ha;ma=S;na=ja;K=203;break}ja=c[ja+8>>2]|0}while((ja|0)!=0);if(((K|0)==203?(c[na+12>>2]&8|0)==0:0)?ga>>>0>>0&ga>>>0>=ka>>>0:0){c[la>>2]=ma+fa;ja=ga+8|0;S=(ja&7|0)==0?0:0-ja&7;ja=ga+S|0;ha=fa-S+(c[24991]|0)|0;c[24994]=ja;c[24991]=ha;c[ja+4>>2]=ha|1;c[ja+ha+4>>2]=40;c[24995]=c[25110];break}ha=c[24992]|0;if(ea>>>0>>0){c[24992]=ea;oa=ea}else oa=ha;ha=ea+fa|0;ja=100400;while(1){if((c[ja>>2]|0)==(ha|0)){pa=ja;qa=ja;K=211;break}ja=c[ja+8>>2]|0;if(!ja){ra=100400;break}}if((K|0)==211)if(!(c[qa+12>>2]&8)){c[pa>>2]=ea;ja=qa+4|0;c[ja>>2]=(c[ja>>2]|0)+fa;ja=ea+8|0;S=ea+((ja&7|0)==0?0:0-ja&7)|0;ja=ha+8|0;R=ha+((ja&7|0)==0?0:0-ja&7)|0;ja=S+F|0;$=R-S-F|0;c[S+4>>2]=F|3;do if((R|0)!=(ga|0)){if((R|0)==(c[24993]|0)){ia=(c[24990]|0)+$|0;c[24990]=ia;c[24993]=ja;c[ja+4>>2]=ia|1;c[ja+ia>>2]=ia;break}ia=c[R+4>>2]|0;if((ia&3|0)==1){da=ia&-8;ca=ia>>>3;e:do if(ia>>>0>=256){aa=c[R+24>>2]|0;ba=c[R+12>>2]|0;do if((ba|0)==(R|0)){T=R+16|0;f=T+4|0;_=c[f>>2]|0;if(!_){Y=c[T>>2]|0;if(!Y){sa=0;break}else{ta=Y;ua=T}}else{ta=_;ua=f}while(1){f=ta+20|0;_=c[f>>2]|0;if(_){ta=_;ua=f;continue}f=ta+16|0;_=c[f>>2]|0;if(!_){va=ta;wa=ua;break}else{ta=_;ua=f}}if(wa>>>0>>0)Ga();else{c[wa>>2]=0;sa=va;break}}else{f=c[R+8>>2]|0;if(f>>>0>>0)Ga();_=f+12|0;if((c[_>>2]|0)!=(R|0))Ga();T=ba+8|0;if((c[T>>2]|0)==(R|0)){c[_>>2]=ba;c[T>>2]=f;sa=ba;break}else Ga()}while(0);if(!aa)break;ba=c[R+28>>2]|0;f=100256+(ba<<2)|0;do if((R|0)!=(c[f>>2]|0)){if(aa>>>0<(c[24992]|0)>>>0)Ga();T=aa+16|0;if((c[T>>2]|0)==(R|0))c[T>>2]=sa;else c[aa+20>>2]=sa;if(!sa)break e}else{c[f>>2]=sa;if(sa)break;c[24989]=c[24989]&~(1<>>0>>0)Ga();c[sa+24>>2]=aa;f=R+16|0;T=c[f>>2]|0;do if(T)if(T>>>0>>0)Ga();else{c[sa+16>>2]=T;c[T+24>>2]=sa;break}while(0);T=c[f+4>>2]|0;if(!T)break;if(T>>>0<(c[24992]|0)>>>0)Ga();else{c[sa+20>>2]=T;c[T+24>>2]=sa;break}}else{T=c[R+8>>2]|0;ba=c[R+12>>2]|0;aa=99992+(ca<<1<<2)|0;do if((T|0)!=(aa|0)){if(T>>>0>>0)Ga();if((c[T+12>>2]|0)==(R|0))break;Ga()}while(0);if((ba|0)==(T|0)){c[24988]=c[24988]&~(1<>>0>>0)Ga();f=ba+8|0;if((c[f>>2]|0)==(R|0)){xa=f;break}Ga()}while(0);c[T+12>>2]=ba;c[xa>>2]=T}while(0);ya=R+da|0;za=da+$|0}else{ya=R;za=$}ca=ya+4|0;c[ca>>2]=c[ca>>2]&-2;c[ja+4>>2]=za|1;c[ja+za>>2]=za;ca=za>>>3;if(za>>>0<256){ia=99992+(ca<<1<<2)|0;aa=c[24988]|0;f=1<>2]|0;if(_>>>0>=(c[24992]|0)>>>0){Aa=ca;Ba=_;break}Ga()}while(0);c[Aa>>2]=ja;c[Ba+12>>2]=ja;c[ja+8>>2]=Ba;c[ja+12>>2]=ia;break}f=za>>>8;do if(!f)Ca=0;else{if(za>>>0>16777215){Ca=31;break}aa=(f+1048320|0)>>>16&8;da=f<>>16&4;ca=da<<_;da=(ca+245760|0)>>>16&2;Y=14-(_|aa|da)+(ca<>>15)|0;Ca=za>>>(Y+7|0)&1|Y<<1}while(0);f=100256+(Ca<<2)|0;c[ja+28>>2]=Ca;ia=ja+16|0;c[ia+4>>2]=0;c[ia>>2]=0;ia=c[24989]|0;Y=1<>2]=ja;c[ja+24>>2]=f;c[ja+12>>2]=ja;c[ja+8>>2]=ja;break}Y=za<<((Ca|0)==31?0:25-(Ca>>>1)|0);ia=c[f>>2]|0;while(1){if((c[ia+4>>2]&-8|0)==(za|0)){Da=ia;K=281;break}f=ia+16+(Y>>>31<<2)|0;da=c[f>>2]|0;if(!da){Ea=f;Fa=ia;K=278;break}else{Y=Y<<1;ia=da}}if((K|0)==278)if(Ea>>>0<(c[24992]|0)>>>0)Ga();else{c[Ea>>2]=ja;c[ja+24>>2]=Fa;c[ja+12>>2]=ja;c[ja+8>>2]=ja;break}else if((K|0)==281){ia=Da+8|0;Y=c[ia>>2]|0;da=c[24992]|0;if(Y>>>0>=da>>>0&Da>>>0>=da>>>0){c[Y+12>>2]=ja;c[ia>>2]=ja;c[ja+8>>2]=Y;c[ja+12>>2]=Da;c[ja+24>>2]=0;break}else Ga()}}else{Y=(c[24991]|0)+$|0;c[24991]=Y;c[24994]=ja;c[ja+4>>2]=Y|1}while(0);n=S+8|0;return n|0}else ra=100400;while(1){ja=c[ra>>2]|0;if(ja>>>0<=ga>>>0?($=ja+(c[ra+4>>2]|0)|0,$>>>0>ga>>>0):0){Ha=$;break}ra=c[ra+8>>2]|0}S=Ha+-47|0;$=S+8|0;ja=S+(($&7|0)==0?0:0-$&7)|0;$=ga+16|0;S=ja>>>0<$>>>0?ga:ja;ja=S+8|0;R=ea+8|0;ha=(R&7|0)==0?0:0-R&7;R=ea+ha|0;Y=fa+-40-ha|0;c[24994]=R;c[24991]=Y;c[R+4>>2]=Y|1;c[R+Y+4>>2]=40;c[24995]=c[25110];Y=S+4|0;c[Y>>2]=27;c[ja>>2]=c[25100];c[ja+4>>2]=c[25101];c[ja+8>>2]=c[25102];c[ja+12>>2]=c[25103];c[25100]=ea;c[25101]=fa;c[25103]=0;c[25102]=ja;ja=S+24|0;do{ja=ja+4|0;c[ja>>2]=7}while((ja+4|0)>>>0>>0);if((S|0)!=(ga|0)){ja=S-ga|0;c[Y>>2]=c[Y>>2]&-2;c[ga+4>>2]=ja|1;c[S>>2]=ja;R=ja>>>3;if(ja>>>0<256){ha=99992+(R<<1<<2)|0;ia=c[24988]|0;da=1<>2]|0;if(f>>>0<(c[24992]|0)>>>0)Ga();else{Ia=R;Ja=f}}else{c[24988]=ia|da;Ia=ha+8|0;Ja=ha}c[Ia>>2]=ga;c[Ja+12>>2]=ga;c[ga+8>>2]=Ja;c[ga+12>>2]=ha;break}ha=ja>>>8;if(ha)if(ja>>>0>16777215)Ka=31;else{da=(ha+1048320|0)>>>16&8;ia=ha<>>16&4;f=ia<>>16&2;R=14-(ha|da|ia)+(f<>>15)|0;Ka=ja>>>(R+7|0)&1|R<<1}else Ka=0;R=100256+(Ka<<2)|0;c[ga+28>>2]=Ka;c[ga+20>>2]=0;c[$>>2]=0;ia=c[24989]|0;f=1<>2]=ga;c[ga+24>>2]=R;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}f=ja<<((Ka|0)==31?0:25-(Ka>>>1)|0);ia=c[R>>2]|0;while(1){if((c[ia+4>>2]&-8|0)==(ja|0)){La=ia;K=307;break}R=ia+16+(f>>>31<<2)|0;da=c[R>>2]|0;if(!da){Ma=R;Na=ia;K=304;break}else{f=f<<1;ia=da}}if((K|0)==304)if(Ma>>>0<(c[24992]|0)>>>0)Ga();else{c[Ma>>2]=ga;c[ga+24>>2]=Na;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}else if((K|0)==307){ia=La+8|0;f=c[ia>>2]|0;ja=c[24992]|0;if(f>>>0>=ja>>>0&La>>>0>=ja>>>0){c[f+12>>2]=ga;c[ia>>2]=ga;c[ga+8>>2]=f;c[ga+12>>2]=La;c[ga+24>>2]=0;break}else Ga()}}}else{f=c[24992]|0;if((f|0)==0|ea>>>0>>0)c[24992]=ea;c[25100]=ea;c[25101]=fa;c[25103]=0;c[24997]=c[25106];c[24996]=-1;f=0;do{ia=99992+(f<<1<<2)|0;c[ia+12>>2]=ia;c[ia+8>>2]=ia;f=f+1|0}while((f|0)!=32);f=ea+8|0;ia=(f&7|0)==0?0:0-f&7;f=ea+ia|0;ja=fa+-40-ia|0;c[24994]=f;c[24991]=ja;c[f+4>>2]=ja|1;c[f+ja+4>>2]=40;c[24995]=c[25110]}while(0);fa=c[24991]|0;if(fa>>>0>F>>>0){ea=fa-F|0;c[24991]=ea;fa=c[24994]|0;ga=fa+F|0;c[24994]=ga;c[ga+4>>2]=ea|1;c[fa+4>>2]=F|3;n=fa+8|0;return n|0}}c[(L1()|0)>>2]=12;n=0;return n|0}function O4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;if(!a)return;b=a+-8|0;d=c[24992]|0;if(b>>>0>>0)Ga();e=c[a+-4>>2]|0;a=e&3;if((a|0)==1)Ga();f=e&-8;g=b+f|0;do if(!(e&1)){h=c[b>>2]|0;if(!a)return;i=b+(0-h)|0;j=h+f|0;if(i>>>0>>0)Ga();if((i|0)==(c[24993]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;break}c[24990]=j;c[k>>2]=l&-2;c[i+4>>2]=j|1;c[i+j>>2]=j;return}l=h>>>3;if(h>>>0<256){h=c[i+8>>2]|0;k=c[i+12>>2]|0;o=99992+(l<<1<<2)|0;if((h|0)!=(o|0)){if(h>>>0>>0)Ga();if((c[h+12>>2]|0)!=(i|0))Ga()}if((k|0)==(h|0)){c[24988]=c[24988]&~(1<>>0>>0)Ga();o=k+8|0;if((c[o>>2]|0)==(i|0))p=o;else Ga()}else p=k+8|0;c[h+12>>2]=k;c[p>>2]=h;m=i;n=j;break}h=c[i+24>>2]|0;k=c[i+12>>2]|0;do if((k|0)==(i|0)){o=i+16|0;l=o+4|0;q=c[l>>2]|0;if(!q){r=c[o>>2]|0;if(!r){s=0;break}else{t=r;u=o}}else{t=q;u=l}while(1){l=t+20|0;q=c[l>>2]|0;if(q){t=q;u=l;continue}l=t+16|0;q=c[l>>2]|0;if(!q){v=t;w=u;break}else{t=q;u=l}}if(w>>>0>>0)Ga();else{c[w>>2]=0;s=v;break}}else{l=c[i+8>>2]|0;if(l>>>0>>0)Ga();q=l+12|0;if((c[q>>2]|0)!=(i|0))Ga();o=k+8|0;if((c[o>>2]|0)==(i|0)){c[q>>2]=k;c[o>>2]=l;s=k;break}else Ga()}while(0);if(h){k=c[i+28>>2]|0;l=100256+(k<<2)|0;if((i|0)==(c[l>>2]|0)){c[l>>2]=s;if(!s){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();k=h+16|0;if((c[k>>2]|0)==(i|0))c[k>>2]=s;else c[h+20>>2]=s;if(!s){m=i;n=j;break}}k=c[24992]|0;if(s>>>0>>0)Ga();c[s+24>>2]=h;l=i+16|0;o=c[l>>2]|0;do if(o)if(o>>>0>>0)Ga();else{c[s+16>>2]=o;c[o+24>>2]=s;break}while(0);o=c[l+4>>2]|0;if(o)if(o>>>0<(c[24992]|0)>>>0)Ga();else{c[s+20>>2]=o;c[o+24>>2]=s;m=i;n=j;break}else{m=i;n=j}}else{m=i;n=j}}else{m=b;n=f}while(0);if(m>>>0>=g>>>0)Ga();f=g+4|0;b=c[f>>2]|0;if(!(b&1))Ga();if(!(b&2)){if((g|0)==(c[24994]|0)){s=(c[24991]|0)+n|0;c[24991]=s;c[24994]=m;c[m+4>>2]=s|1;if((m|0)!=(c[24993]|0))return;c[24993]=0;c[24990]=0;return}if((g|0)==(c[24993]|0)){s=(c[24990]|0)+n|0;c[24990]=s;c[24993]=m;c[m+4>>2]=s|1;c[m+s>>2]=s;return}s=(b&-8)+n|0;d=b>>>3;do if(b>>>0>=256){v=c[g+24>>2]|0;w=c[g+12>>2]|0;do if((w|0)==(g|0)){u=g+16|0;t=u+4|0;p=c[t>>2]|0;if(!p){a=c[u>>2]|0;if(!a){x=0;break}else{y=a;z=u}}else{y=p;z=t}while(1){t=y+20|0;p=c[t>>2]|0;if(p){y=p;z=t;continue}t=y+16|0;p=c[t>>2]|0;if(!p){A=y;B=z;break}else{y=p;z=t}}if(B>>>0<(c[24992]|0)>>>0)Ga();else{c[B>>2]=0;x=A;break}}else{t=c[g+8>>2]|0;if(t>>>0<(c[24992]|0)>>>0)Ga();p=t+12|0;if((c[p>>2]|0)!=(g|0))Ga();u=w+8|0;if((c[u>>2]|0)==(g|0)){c[p>>2]=w;c[u>>2]=t;x=w;break}else Ga()}while(0);if(v){w=c[g+28>>2]|0;j=100256+(w<<2)|0;if((g|0)==(c[j>>2]|0)){c[j>>2]=x;if(!x){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();w=v+16|0;if((c[w>>2]|0)==(g|0))c[w>>2]=x;else c[v+20>>2]=x;if(!x)break}w=c[24992]|0;if(x>>>0>>0)Ga();c[x+24>>2]=v;j=g+16|0;i=c[j>>2]|0;do if(i)if(i>>>0>>0)Ga();else{c[x+16>>2]=i;c[i+24>>2]=x;break}while(0);i=c[j+4>>2]|0;if(i)if(i>>>0<(c[24992]|0)>>>0)Ga();else{c[x+20>>2]=i;c[i+24>>2]=x;break}}}else{i=c[g+8>>2]|0;w=c[g+12>>2]|0;v=99992+(d<<1<<2)|0;if((i|0)!=(v|0)){if(i>>>0<(c[24992]|0)>>>0)Ga();if((c[i+12>>2]|0)!=(g|0))Ga()}if((w|0)==(i|0)){c[24988]=c[24988]&~(1<>>0<(c[24992]|0)>>>0)Ga();v=w+8|0;if((c[v>>2]|0)==(g|0))C=v;else Ga()}else C=w+8|0;c[i+12>>2]=w;c[C>>2]=i}while(0);c[m+4>>2]=s|1;c[m+s>>2]=s;if((m|0)==(c[24993]|0)){c[24990]=s;return}else D=s}else{c[f>>2]=b&-2;c[m+4>>2]=n|1;c[m+n>>2]=n;D=n}n=D>>>3;if(D>>>0<256){b=99992+(n<<1<<2)|0;f=c[24988]|0;s=1<>2]|0;if(C>>>0<(c[24992]|0)>>>0)Ga();else{E=n;F=C}}else{c[24988]=f|s;E=b+8|0;F=b}c[E>>2]=m;c[F+12>>2]=m;c[m+8>>2]=F;c[m+12>>2]=b;return}b=D>>>8;if(b)if(D>>>0>16777215)G=31;else{F=(b+1048320|0)>>>16&8;E=b<>>16&4;s=E<>>16&2;f=14-(b|F|E)+(s<>>15)|0;G=D>>>(f+7|0)&1|f<<1}else G=0;f=100256+(G<<2)|0;c[m+28>>2]=G;c[m+20>>2]=0;c[m+16>>2]=0;E=c[24989]|0;s=1<>>1)|0);b=c[f>>2]|0;while(1){if((c[b+4>>2]&-8|0)==(D|0)){H=b;I=130;break}C=b+16+(F>>>31<<2)|0;n=c[C>>2]|0;if(!n){J=C;K=b;I=127;break}else{F=F<<1;b=n}}if((I|0)==127)if(J>>>0<(c[24992]|0)>>>0)Ga();else{c[J>>2]=m;c[m+24>>2]=K;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((I|0)==130){b=H+8|0;F=c[b>>2]|0;j=c[24992]|0;if(F>>>0>=j>>>0&H>>>0>=j>>>0){c[F+12>>2]=m;c[b>>2]=m;c[m+8>>2]=F;c[m+12>>2]=H;c[m+24>>2]=0;break}else Ga()}}else{c[24989]=E|s;c[f>>2]=m;c[m+24>>2]=f;c[m+12>>2]=m;c[m+8>>2]=m}while(0);m=(c[24996]|0)+-1|0;c[24996]=m;if(!m)L=100408;else return;while(1){m=c[L>>2]|0;if(!m)break;else L=m+8|0}c[24996]=-1;return}function P4(a,b){a=a|0;b=b|0;var d=0,e=0;if(a){d=_(b,a)|0;if((b|a)>>>0>65535)e=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1;else e=d}else e=0;d=N4(e)|0;if(!d)return d|0;if(!(c[d+-4>>2]&3))return d|0;$4(d|0,0,e|0)|0;return d|0}function Q4(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=N4(b)|0;return d|0}if(b>>>0>4294967231){c[(L1()|0)>>2]=12;d=0;return d|0}e=R4(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e){d=e+8|0;return d|0}e=N4(b)|0;if(!e){d=0;return d|0}f=c[a+-4>>2]|0;g=(f&-8)-((f&3|0)==0?8:4)|0;Z4(e|0,a|0,(g>>>0>>0?g:b)|0)|0;O4(a);d=e;return d|0}function R4(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[24992]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0>>0))Ga();j=c[g+4>>2]|0;if(!(j&1))Ga();if(!i){if(b>>>0<256){k=0;return k|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[25108]<<1>>>0:0){k=a;return k|0}k=0;return k|0}if(f>>>0>=b>>>0){i=f-b|0;if(i>>>0<=15){k=a;return k|0}l=a+b|0;c[d>>2]=e&1|b|2;c[l+4>>2]=i|3;m=l+i+4|0;c[m>>2]=c[m>>2]|1;S4(l,i);k=a;return k|0}if((g|0)==(c[24994]|0)){i=(c[24991]|0)+f|0;if(i>>>0<=b>>>0){k=0;return k|0}l=i-b|0;i=a+b|0;c[d>>2]=e&1|b|2;c[i+4>>2]=l|1;c[24994]=i;c[24991]=l;k=a;return k|0}if((g|0)==(c[24993]|0)){l=(c[24990]|0)+f|0;if(l>>>0>>0){k=0;return k|0}i=l-b|0;if(i>>>0>15){m=a+b|0;n=m+i|0;c[d>>2]=e&1|b|2;c[m+4>>2]=i|1;c[n>>2]=i;o=n+4|0;c[o>>2]=c[o>>2]&-2;p=m;q=i}else{c[d>>2]=e&1|l|2;i=a+l+4|0;c[i>>2]=c[i>>2]|1;p=0;q=0}c[24990]=q;c[24993]=p;k=a;return k|0}if(j&2){k=0;return k|0}p=(j&-8)+f|0;if(p>>>0>>0){k=0;return k|0}f=p-b|0;q=j>>>3;do if(j>>>0>=256){i=c[g+24>>2]|0;l=c[g+12>>2]|0;do if((l|0)==(g|0)){m=g+16|0;o=m+4|0;n=c[o>>2]|0;if(!n){r=c[m>>2]|0;if(!r){s=0;break}else{t=r;u=m}}else{t=n;u=o}while(1){o=t+20|0;n=c[o>>2]|0;if(n){t=n;u=o;continue}o=t+16|0;n=c[o>>2]|0;if(!n){v=t;w=u;break}else{t=n;u=o}}if(w>>>0>>0)Ga();else{c[w>>2]=0;s=v;break}}else{o=c[g+8>>2]|0;if(o>>>0>>0)Ga();n=o+12|0;if((c[n>>2]|0)!=(g|0))Ga();m=l+8|0;if((c[m>>2]|0)==(g|0)){c[n>>2]=l;c[m>>2]=o;s=l;break}else Ga()}while(0);if(i){l=c[g+28>>2]|0;o=100256+(l<<2)|0;if((g|0)==(c[o>>2]|0)){c[o>>2]=s;if(!s){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();l=i+16|0;if((c[l>>2]|0)==(g|0))c[l>>2]=s;else c[i+20>>2]=s;if(!s)break}l=c[24992]|0;if(s>>>0>>0)Ga();c[s+24>>2]=i;o=g+16|0;m=c[o>>2]|0;do if(m)if(m>>>0>>0)Ga();else{c[s+16>>2]=m;c[m+24>>2]=s;break}while(0);m=c[o+4>>2]|0;if(m)if(m>>>0<(c[24992]|0)>>>0)Ga();else{c[s+20>>2]=m;c[m+24>>2]=s;break}}}else{m=c[g+8>>2]|0;l=c[g+12>>2]|0;i=99992+(q<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0>>0)Ga();if((c[m+12>>2]|0)!=(g|0))Ga()}if((l|0)==(m|0)){c[24988]=c[24988]&~(1<>>0>>0)Ga();i=l+8|0;if((c[i>>2]|0)==(g|0))x=i;else Ga()}else x=l+8|0;c[m+12>>2]=l;c[x>>2]=m}while(0);if(f>>>0<16){c[d>>2]=p|e&1|2;x=a+p+4|0;c[x>>2]=c[x>>2]|1;k=a;return k|0}else{x=a+b|0;c[d>>2]=e&1|b|2;c[x+4>>2]=f|3;b=x+f+4|0;c[b>>2]=c[b>>2]|1;S4(x,f);k=a;return k|0}return 0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;d=a+b|0;e=c[a+4>>2]|0;do if(!(e&1)){f=c[a>>2]|0;if(!(e&3))return;g=a+(0-f)|0;h=f+b|0;i=c[24992]|0;if(g>>>0>>0)Ga();if((g|0)==(c[24993]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[24990]=h;c[j>>2]=k&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}k=f>>>3;if(f>>>0<256){f=c[g+8>>2]|0;j=c[g+12>>2]|0;n=99992+(k<<1<<2)|0;if((f|0)!=(n|0)){if(f>>>0>>0)Ga();if((c[f+12>>2]|0)!=(g|0))Ga()}if((j|0)==(f|0)){c[24988]=c[24988]&~(1<>>0>>0)Ga();n=j+8|0;if((c[n>>2]|0)==(g|0))o=n;else Ga()}else o=j+8|0;c[f+12>>2]=j;c[o>>2]=f;l=g;m=h;break}f=c[g+24>>2]|0;j=c[g+12>>2]|0;do if((j|0)==(g|0)){n=g+16|0;k=n+4|0;p=c[k>>2]|0;if(!p){q=c[n>>2]|0;if(!q){r=0;break}else{s=q;t=n}}else{s=p;t=k}while(1){k=s+20|0;p=c[k>>2]|0;if(p){s=p;t=k;continue}k=s+16|0;p=c[k>>2]|0;if(!p){u=s;v=t;break}else{s=p;t=k}}if(v>>>0>>0)Ga();else{c[v>>2]=0;r=u;break}}else{k=c[g+8>>2]|0;if(k>>>0>>0)Ga();p=k+12|0;if((c[p>>2]|0)!=(g|0))Ga();n=j+8|0;if((c[n>>2]|0)==(g|0)){c[p>>2]=j;c[n>>2]=k;r=j;break}else Ga()}while(0);if(f){j=c[g+28>>2]|0;i=100256+(j<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();j=f+16|0;if((c[j>>2]|0)==(g|0))c[j>>2]=r;else c[f+20>>2]=r;if(!r){l=g;m=h;break}}j=c[24992]|0;if(r>>>0>>0)Ga();c[r+24>>2]=f;i=g+16|0;k=c[i>>2]|0;do if(k)if(k>>>0>>0)Ga();else{c[r+16>>2]=k;c[k+24>>2]=r;break}while(0);k=c[i+4>>2]|0;if(k)if(k>>>0<(c[24992]|0)>>>0)Ga();else{c[r+20>>2]=k;c[k+24>>2]=r;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);b=c[24992]|0;if(d>>>0>>0)Ga();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){if((d|0)==(c[24994]|0)){u=(c[24991]|0)+m|0;c[24991]=u;c[24994]=l;c[l+4>>2]=u|1;if((l|0)!=(c[24993]|0))return;c[24993]=0;c[24990]=0;return}if((d|0)==(c[24993]|0)){u=(c[24990]|0)+m|0;c[24990]=u;c[24993]=l;c[l+4>>2]=u|1;c[l+u>>2]=u;return}u=(r&-8)+m|0;v=r>>>3;do if(r>>>0>=256){t=c[d+24>>2]|0;s=c[d+12>>2]|0;do if((s|0)==(d|0)){o=d+16|0;e=o+4|0;k=c[e>>2]|0;if(!k){j=c[o>>2]|0;if(!j){w=0;break}else{x=j;y=o}}else{x=k;y=e}while(1){e=x+20|0;k=c[e>>2]|0;if(k){x=k;y=e;continue}e=x+16|0;k=c[e>>2]|0;if(!k){z=x;A=y;break}else{x=k;y=e}}if(A>>>0>>0)Ga();else{c[A>>2]=0;w=z;break}}else{e=c[d+8>>2]|0;if(e>>>0>>0)Ga();k=e+12|0;if((c[k>>2]|0)!=(d|0))Ga();o=s+8|0;if((c[o>>2]|0)==(d|0)){c[k>>2]=s;c[o>>2]=e;w=s;break}else Ga()}while(0);if(t){s=c[d+28>>2]|0;h=100256+(s<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=w;if(!w){c[24989]=c[24989]&~(1<>>0<(c[24992]|0)>>>0)Ga();s=t+16|0;if((c[s>>2]|0)==(d|0))c[s>>2]=w;else c[t+20>>2]=w;if(!w)break}s=c[24992]|0;if(w>>>0>>0)Ga();c[w+24>>2]=t;h=d+16|0;g=c[h>>2]|0;do if(g)if(g>>>0>>0)Ga();else{c[w+16>>2]=g;c[g+24>>2]=w;break}while(0);g=c[h+4>>2]|0;if(g)if(g>>>0<(c[24992]|0)>>>0)Ga();else{c[w+20>>2]=g;c[g+24>>2]=w;break}}}else{g=c[d+8>>2]|0;s=c[d+12>>2]|0;t=99992+(v<<1<<2)|0;if((g|0)!=(t|0)){if(g>>>0>>0)Ga();if((c[g+12>>2]|0)!=(d|0))Ga()}if((s|0)==(g|0)){c[24988]=c[24988]&~(1<>>0>>0)Ga();t=s+8|0;if((c[t>>2]|0)==(d|0))B=t;else Ga()}else B=s+8|0;c[g+12>>2]=s;c[B>>2]=g}while(0);c[l+4>>2]=u|1;c[l+u>>2]=u;if((l|0)==(c[24993]|0)){c[24990]=u;return}else C=u}else{c[a>>2]=r&-2;c[l+4>>2]=m|1;c[l+m>>2]=m;C=m}m=C>>>3;if(C>>>0<256){r=99992+(m<<1<<2)|0;a=c[24988]|0;u=1<>2]|0;if(B>>>0<(c[24992]|0)>>>0)Ga();else{D=m;E=B}}else{c[24988]=a|u;D=r+8|0;E=r}c[D>>2]=l;c[E+12>>2]=l;c[l+8>>2]=E;c[l+12>>2]=r;return}r=C>>>8;if(r)if(C>>>0>16777215)F=31;else{E=(r+1048320|0)>>>16&8;D=r<>>16&4;u=D<>>16&2;a=14-(r|E|D)+(u<>>15)|0;F=C>>>(a+7|0)&1|a<<1}else F=0;a=100256+(F<<2)|0;c[l+28>>2]=F;c[l+20>>2]=0;c[l+16>>2]=0;D=c[24989]|0;u=1<>2]=l;c[l+24>>2]=a;c[l+12>>2]=l;c[l+8>>2]=l;return}u=C<<((F|0)==31?0:25-(F>>>1)|0);F=c[a>>2]|0;while(1){if((c[F+4>>2]&-8|0)==(C|0)){G=F;H=127;break}a=F+16+(u>>>31<<2)|0;D=c[a>>2]|0;if(!D){I=a;J=F;H=124;break}else{u=u<<1;F=D}}if((H|0)==124){if(I>>>0<(c[24992]|0)>>>0)Ga();c[I>>2]=l;c[l+24>>2]=J;c[l+12>>2]=l;c[l+8>>2]=l;return}else if((H|0)==127){H=G+8|0;J=c[H>>2]|0;I=c[24992]|0;if(!(J>>>0>=I>>>0&G>>>0>=I>>>0))Ga();c[J+12>>2]=l;c[H>>2]=l;c[l+8>>2]=J;c[l+12>>2]=G;c[l+24>>2]=0;return}}function T4(){}function U4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (C=e,a-c>>>0|0)|0}function V4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (C=b+d+(e>>>0>>0|0)>>>0,e|0)|0}function W4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Q4(d|0,8*(e+1|0)|0)|0;d=W4(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function X4(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Y4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((e|0)<(d|0)){f=c[b+(e<<3)>>2]|0;if(!f)break;if((f|0)==(a|0))return c[b+((e<<3)+4)>>2]|0;e=e+1|0}return 0}function Z4(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return _a(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function _4(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Z4(b,c,d)|0;return b|0}function $4(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;g=b&3;h=d|d<<8|d<<16|d<<24;i=f&~3;if(g){g=b+4-g|0;while((b|0)<(g|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(i|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function a5(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<>>32-c;return a<>c;return a>>>c|(b&(1<>c-32|0}function c5(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function d5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=_(d,c)|0;f=a>>>16;a=(e>>>16)+(_(d,f)|0)|0;d=b>>>16;b=_(d,c)|0;return (C=(a>>>16)+(_(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function e5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;g=d>>31|((d|0)<0?-1:0)<<1;h=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;i=U4(e^a,f^b,e,f)|0;b=C;a=g^e;e=h^f;return U4((j5(i,b,U4(g^c,h^d,g,h)|0,C,0)|0)^a,C^e,a,e)|0}function f5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f|0;h=b>>31|((b|0)<0?-1:0)<<1;j=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;l=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;m=U4(h^a,j^b,h,j)|0;b=C;j5(m,b,U4(k^d,l^e,k,l)|0,C,g)|0;l=U4(c[g>>2]^h,c[g+4>>2]^j,h,j)|0;j=C;i=f;return (C=j,l)|0}function g5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=d5(e,a)|0;f=C;return (C=(_(b,a)|0)+(_(d,e)|0)+f|f&0,c|0|0)|0}function h5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return j5(a,b,c,d,0)|0}function i5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f|0;j5(a,b,d,e,g)|0;i=f;return (C=c[g+4>>2]|0,c[g>>2]|0)|0}function j5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0;g=a;h=b;i=h;j=d;k=e;l=k;if(!i){m=(f|0)!=0;if(!l){if(m){c[f>>2]=(g>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (C=n,o)|0}else{if(!m){n=0;o=0;return (C=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;o=0;return (C=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(aa(l|0)|0)-(aa(i|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=g>>>(q>>>0)&s|i<>>(q>>>0)&s;w=0;x=g<>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (C=n,o)|0}r=j-1|0;if(r&j){s=(aa(j|0)|0)+33-(aa(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<>>(s>>>0))&A;v=A&i>>>(s>>>0);w=g<>>(z>>>0))&y|g<>31;break}if(f){c[f>>2]=r&g;c[f+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (C=n,o)|0}else{r=c5(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (C=n,o)|0}}else{if(m){if(f){c[f>>2]=(i>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (C=n,o)|0}if(!g){if(f){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (C=n,o)|0}r=l-1|0;if(!(r&l)){if(f){c[f>>2]=a|0;c[f+4>>2]=r&i|b&0}n=0;o=i>>>((c5(l|0)|0)>>>0);return (C=n,o)|0}r=(aa(l|0)|0)-(aa(i|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=i<>>(s>>>0);v=i>>>(s>>>0);w=0;x=g<>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (C=n,o)|0}while(0);if(!t){B=x;D=w;E=v;F=u;G=0;H=0}else{b=d|0|0;d=k|e&0;e=V4(b|0,d|0,-1,-1)|0;k=C;h=x;x=w;w=v;v=u;u=t;t=0;do{a=h;h=x>>>31|h<<1;x=t|x<<1;g=v<<1|a>>>31|0;a=v>>>31|w<<1|0;U4(e,k,g,a)|0;i=C;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=U4(g,a,l&b,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&d)|0;w=C;u=u-1|0}while((u|0)!=0);B=h;D=x;E=w;F=v;G=0;H=t}t=D;D=0;if(f){c[f>>2]=F;c[f+4>>2]=E}n=(t|0)>>>31|(B|D)<<1|(D<<1|t>>>31)&0|G;o=(t<<1|0>>>31)&-2|H;return (C=n,o)|0}function k5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ab[a&31](b|0,c|0,d|0,e|0,f|0)}function l5(a,b){a=a|0;b=b|0;Bb[a&127](b|0)}function m5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Cb[a&3](b|0,c|0,+d,+e)|0}function n5(a,b,c){a=a|0;b=b|0;c=c|0;Db[a&31](b|0,c|0)}function o5(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;return Eb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)|0}function p5(a,b){a=a|0;b=b|0;return Fb[a&63](b|0)|0}function q5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Gb[a&63](b|0,c|0,d|0,e|0,f|0)|0}function r5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Hb[a&63](b|0,c|0,d|0)|0}function s5(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ib[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function t5(a,b){a=a|0;b=b|0;return +Jb[a&1](b|0)}function u5(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Kb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)|0}function v5(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;return +Lb[a&7](+b,+c,+d)}function w5(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Mb[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function x5(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Nb[a&0](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function y5(a,b,c){a=a|0;b=b|0;c=c|0;return Ob[a&127](b|0,c|0)|0}function z5(a){a=a|0;return +Pb[a&1]()}function A5(a){a=a|0;return Qb[a&7]()|0}function B5(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;Rb[a&15](b|0,c|0,d|0,+e,+f,g|0)}function C5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Sb[a&127](b|0,c|0,d|0,e|0)|0}function D5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Tb[a&127](b|0,c|0,d|0)}function E5(a){a=a|0;Ub[a&7]()}function F5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Vb[a&31](b|0,c|0,d|0,e|0)}function G5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(0)}function H5(a){a=a|0;ba(1)}function I5(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ba(2);return 0}function J5(a,b){a=a|0;b=b|0;ba(3)}function K5(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;ba(4);return 0}function L5(a){a=a|0;ba(5);return 0}function M5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(6);return 0}function N5(a,b,c){a=a|0;b=b|0;c=c|0;ba(7);return 0}function O5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(8)}function P5(a){a=a|0;ba(9);return 0.0}function Q5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(10);return 0}function R5(a,b,c){a=+a;b=+b;c=+c;ba(11);return 0.0}function S5(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;ba(12)}function T5(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(13)}function U5(a,b){a=a|0;b=b|0;ba(14);return 0}function V5(){ba(15);return 0.0}function W5(){ba(16);return 0}function X5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;ba(17)}function Y5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(18);return 0}function Z5(a,b,c){a=a|0;b=b|0;c=c|0;ba(19)}function _5(){ba(20)}function $5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(21)} + +// EMSCRIPTEN_END_FUNCS +var Ab=[G5,_c,md,td,Jd,ne,i0,h0,K$,L$,g0,f$,g$,B_,C_,Xk,mG,JP,a_,b_,G5,G5,G5,G5,G5,G5,G5,G5,G5,G5,G5,G5];var Bb=[H5,jc,kc,lc,mc,nc,Gc,Hc,Ic,Jc,Kc,Lc,Mc,Yc,Zc,ad,bd,cd,ed,fd,gd,hd,id,jd,kd,ld,wd,xd,yd,Ad,Bd,Cd,Dd,Ed,Fd,Gd,Hd,Id,Kd,Wd,Xd,Yd,Zd,ke,le,me,oe,Ae,Be,Ce,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ue,Ve,We,Xe,tf,sf,wl,sl,$n,Sn,ep,fp,pn,qn,Zo,_o,ol,pl,un,vn,En,Fn,DB,kM,xM,mM,lM,PM,FL,GL,VR,_R,nf,_k,Zn,_n,go,O4,qv,sA,oG,TH,kK,xU,HQ,WK,IU,tX,OX,PX,VX,r4,s4,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5,H5];var Cb=[I5,Lt,Mt,I5];var Db=[J5,Oc,Tc,sd,Qd,de,ue,Se,bf,ZB,BM,ZM,TM,OM,vM,wM,YR,aS,lL,kG,oK,zP,aA,wW,sX,RX,SX,WX,YX,J5,J5,J5];var Eb=[K5,WZ,TZ,K5];var Fb=[L5,Fg,_f,ym,zm,SB,WB,PP,QP,NR,OR,PR,QR,RR,SR,TR,UR,I2,dc,lF,Vk,Yk,fm,cK,kB,$B,jB,iK,nK,lB,AP,bK,FP,GP,XX,N4,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5,L5];var Gb=[M5,zB,AM,SM,o0,f1,g1,t0,q0,d1,e1,u0,v0,w0,x0,y0,V0,W0,M0,F0,A0,z0,B0,C0,E0,D0,r0,p0,G0,H0,I0,J0,K0,L0,N0,O0,P0,Q0,U0,S0,R0,T0,$0,X0,Y0,Z0,_0,a1,b1,c1,h1,i1,j1,k1,M5,M5,M5,M5,M5,M5,M5,M5,M5,M5];var Hb=[N5,pm,nv,zz,Gz,Mz,Rz,AB,CB,QB,TB,gL,vP,uU,B$,H$,Y_,c$,s_,y_,D4,L2,K2,J2,M2,$z,mm,Vu,Jo,Is,xx,zx,Cx,Tz,k3,FD,Y2,WN,_K,NQ,QX,VZ,SZ,g_,k_,v4,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5,N5];var Ib=[O5,rc,Rc,qd,Od,be,se,Qe,$e,O5,O5,O5,O5,O5,O5,O5];var Jb=[P5,gO];var Kb=[Q5,uX];var Lb=[R5,XI,YI,ZI,_I,R5,R5,R5];var Mb=[S5,KP];var Nb=[T5];var Ob=[U5,yB,RB,XB,_M,YM,RM,NM,zM,IW,JW,KW,LW,MW,NW,PW,QW,RW,SW,TW,UW,VW,WW,XW,YW,ZW,_W,$W,aX,bX,cX,dX,eX,fX,gX,hX,iX,jX,kX,lX,D$,E$,G$,M$,N$,O$,P$,Q$,R$,S$,T$,__,$_,b$,u_,v_,x_,jF,Qf,Eg,Sh,bi,$h,gk,ek,Wk,Zk,po,zp,Fq,Zq,$q,br,cr,jr,ir,hr,Ds,Js,Ou,pw,_w,wE,xE,yE,lG,aC,eK,qG,TG,WG,XG,jH,_2,Z2,ZN,iP,yA,HU,OA,QA,BP,CR,iT,HW,TX,UX,Q4,ZZ,_Z,$Z,M4,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5,U5];var Pb=[V5,$N];var Qb=[W5,vq,lK,mK,VK,W5,W5,W5];var Rb=[X5,lH,mH,nH,oH,pH,qH,rH,sH,X5,X5,X5,X5,X5,X5,X5];var Sb=[Y5,rm,or,ov,Bz,Iz,_A,MD,ZA,qB,OB,NB,YB,iC,jC,iL,xP,pQ,nQ,PS,wU,RU,QU,v$,w$,x$,y$,z$,A$,C$,F$,J$,S_,T_,U_,V_,W_,X_,Z_,a$,e$,m_,n_,o_,p_,q_,r_,t_,w_,A_,Hs,Wz,jG,MC,nG,YN,SY,KZ,dZ,nZ,ZY,wZ,BZ,zZ,CZ,XZ,QZ,d_,e_,i_,j_,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5,Y5];var Tb=[Z5,oc,pc,sc,Nc,Pc,Sc,nd,od,rd,Ld,Md,Pd,_d,$d,ce,pe,qe,te,Ne,Oe,Re,Ye,Ze,af,Lj,Mj,Nj,qm,Az,Hz,KA,BB,EB,oC,JC,ND,_F,rJ,jL,hL,NL,wP,rP,oQ,mQ,WR,XR,ZR,$R,bS,vU,iW,hW,NA,WA,gC,UC,VC,hK,XN,YK,DP,HP,IP,jW,lW,mW,vW,xW,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5,Z5];var Ub=[_5,_N,jK,pK,qK,rK,yU,_5];var Vb=[$5,qc,Qc,dd,pd,zd,Nd,ae,re,De,Pe,_e,qf,pf,of,mf,lf,hf,fc,kf,jf,yM,QM,I$,d$,z_,w3,CP,EP,f_,$5,$5];return{_vizRenderFromString:ec,_i64Subtract:U4,_fflush:T2,_aglasterr:_z,_realloc:Q4,_dtextract:Kz,_memmove:_4,_saveSetjmp:W4,_memset:$4,_malloc:N4,_i64Add:V4,_memcpy:Z4,_bitshift64Lshr:X4,_free:O4,_bitshift64Shl:a5,___errno_location:L1,_testSetjmp:Y4,runPostSets:T4,stackAlloc:Wb,stackSave:Xb,stackRestore:Yb,establishStackSpace:Zb,setThrew:_b,setTempRet0:bc,getTempRet0:cc,dynCall_viiiii:k5,dynCall_vi:l5,dynCall_iiidd:m5,dynCall_vii:n5,dynCall_iiiiiiiiiii:o5,dynCall_ii:p5,dynCall_iiiiii:q5,dynCall_iiii:r5,dynCall_viiiiii:s5,dynCall_di:t5,dynCall_iiiiiii:u5,dynCall_dddd:v5,dynCall_viiiiiii:w5,dynCall_viiiiiiiii:x5,dynCall_iii:y5,dynCall_d:z5,dynCall_i:A5,dynCall_viiiddi:B5,dynCall_iiiii:C5,dynCall_viii:D5,dynCall_v:E5,dynCall_viiii:F5}}) + + +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _vizRenderFromString=Module["_vizRenderFromString"]=asm["_vizRenderFromString"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _fflush=Module["_fflush"]=asm["_fflush"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _aglasterr=Module["_aglasterr"]=asm["_aglasterr"];var _realloc=Module["_realloc"]=asm["_realloc"];var _dtextract=Module["_dtextract"]=asm["_dtextract"];var _memmove=Module["_memmove"]=asm["_memmove"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _testSetjmp=Module["_testSetjmp"]=asm["_testSetjmp"];var _memset=Module["_memset"]=asm["_memset"];var _malloc=Module["_malloc"]=asm["_malloc"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _free=Module["_free"]=asm["_free"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiiiiiii=Module["dynCall_iiiiiiiiiii"]=asm["dynCall_iiiiiiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_dddd=Module["dynCall_dddd"]=asm["dynCall_dddd"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_viiiddi=Module["dynCall_viiiddi"]=asm["dynCall_viiiddi"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run() + + + + + + return Module; +}; + function Viz(src) { + var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; + var format = options.format === undefined ? "svg" : options.format; + var engine = options.engine === undefined ? "dot" : options.engine; + + if (format == "png-image-element") { + return Viz.svgXmlToPngImageElement(render(src, "svg", engine)); + } else { + return render(src, format, engine); + } + } + + var graphviz; + var errors; + + function appendError(buf) { + errors += graphviz["Pointer_stringify"](buf); + } + + function render(src, format, engine) { + if (typeof graphviz === "undefined") { + graphviz = Module(); + } + + errors = ""; + + var resultPointer = graphviz["ccall"]("vizRenderFromString", "number", ["string", "string", "string"], [src, format, engine]); + var resultString = graphviz["Pointer_stringify"](resultPointer); + graphviz["_free"](resultPointer); + + if (errors != "") { + throw errors; + } + + return resultString; + } + + Viz.svgXmlToPngImageElement = function(svgXml) { + var scaleFactor = 1; + + if ("devicePixelRatio" in window) { + if (window.devicePixelRatio > 1) { + scaleFactor = window.devicePixelRatio; + } + } + + var svgImage = new Image(); + svgImage.src = "data:image/svg+xml;utf8," + svgXml; + + var pngImage = new Image(); + + svgImage.onload = function() { + var canvas = document.createElement("canvas"); + canvas.width = svgImage.width * scaleFactor; + canvas.height = svgImage.height * scaleFactor; + + var context = canvas.getContext("2d"); + context.drawImage(svgImage, 0, 0, canvas.width, canvas.height); + + pngImage.src = canvas.toDataURL("image/png"); + pngImage.width = svgImage.width; + pngImage.height = svgImage.height; + } + + return pngImage; + } + + if (typeof module === "object" && module.exports) { + module.exports = Viz; + } else { + global.Viz = Viz; + } + +})(this); diff --git a/MacDown/Resources/MacDown.sdef b/MacDown/Resources/MacDown.sdef new file mode 100644 index 00000000..42248fdf --- /dev/null +++ b/MacDown/Resources/MacDown.sdef @@ -0,0 +1,205 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MacDown/Resources/MathJax/MathJax.js b/MacDown/Resources/MathJax/MathJax.js new file mode 100644 index 00000000..8b50b320 --- /dev/null +++ b/MacDown/Resources/MathJax/MathJax.js @@ -0,0 +1,19 @@ +/* + * /MathJax.js + * + * Copyright (c) 2009-2018 The MathJax Consortium + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if(document.getElementById&&document.childNodes&&document.createElement){if(!(window.MathJax&&MathJax.Hub)){if(window.MathJax){window.MathJax={AuthorConfig:window.MathJax}}else{window.MathJax={}}MathJax.isPacked=true;MathJax.version="2.7.3";MathJax.fileversion="2.7.3";MathJax.cdnVersion="2.7.3";MathJax.cdnFileVersions={};(function(d){var b=window[d];if(!b){b=window[d]={}}var e=[];var c=function(f){var g=f.constructor;if(!g){g=function(){}}for(var h in f){if(h!=="constructor"&&f.hasOwnProperty(h)){g[h]=f[h]}}return g};var a=function(){return function(){return arguments.callee.Init.call(this,arguments)}};b.Object=c({constructor:a(),Subclass:function(f,h){var g=a();g.SUPER=this;g.Init=this.Init;g.Subclass=this.Subclass;g.Augment=this.Augment;g.protoFunction=this.protoFunction;g.can=this.can;g.has=this.has;g.isa=this.isa;g.prototype=new this(e);g.prototype.constructor=g;g.Augment(f,h);return g},Init:function(f){var g=this;if(f.length===1&&f[0]===e){return g}if(!(g instanceof f.callee)){g=new f.callee(e)}return g.Init.apply(g,f)||g},Augment:function(f,g){var h;if(f!=null){for(h in f){if(f.hasOwnProperty(h)){this.protoFunction(h,f[h])}}if(f.toString!==this.prototype.toString&&f.toString!=={}.toString){this.protoFunction("toString",f.toString)}}if(g!=null){for(h in g){if(g.hasOwnProperty(h)){this[h]=g[h]}}}return this},protoFunction:function(g,f){this.prototype[g]=f;if(typeof f==="function"){f.SUPER=this.SUPER.prototype}},prototype:{Init:function(){},SUPER:function(f){return f.callee.SUPER},can:function(f){return typeof(this[f])==="function"},has:function(f){return typeof(this[f])!=="undefined"},isa:function(f){return(f instanceof Object)&&(this instanceof f)}},can:function(f){return this.prototype.can.call(this,f)},has:function(f){return this.prototype.has.call(this,f)},isa:function(g){var f=this;while(f){if(f===g){return true}else{f=f.SUPER}}return false},SimpleSUPER:c({constructor:function(f){return this.SimpleSUPER.define(f)},define:function(f){var h={};if(f!=null){for(var g in f){if(f.hasOwnProperty(g)){h[g]=this.wrap(g,f[g])}}if(f.toString!==this.prototype.toString&&f.toString!=={}.toString){h.toString=this.wrap("toString",f.toString)}}return h},wrap:function(i,h){if(typeof(h)!=="function"||!h.toString().match(/\.\s*SUPER\s*\(/)){return h}var g=function(){this.SUPER=g.SUPER[i];try{var f=h.apply(this,arguments)}catch(j){delete this.SUPER;throw j}delete this.SUPER;return f};g.toString=function(){return h.toString.apply(h,arguments)};return g}})});b.Object.isArray=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"};b.Object.Array=Array})("MathJax");(function(BASENAME){var BASE=window[BASENAME];if(!BASE){BASE=window[BASENAME]={}}var isArray=BASE.Object.isArray;var CALLBACK=function(data){var cb=function(){return arguments.callee.execute.apply(arguments.callee,arguments)};for(var id in CALLBACK.prototype){if(CALLBACK.prototype.hasOwnProperty(id)){if(typeof(data[id])!=="undefined"){cb[id]=data[id]}else{cb[id]=CALLBACK.prototype[id]}}}cb.toString=CALLBACK.prototype.toString;return cb};CALLBACK.prototype={isCallback:true,hook:function(){},data:[],object:window,execute:function(){if(!this.called||this.autoReset){this.called=!this.autoReset;return this.hook.apply(this.object,this.data.concat([].slice.call(arguments,0)))}},reset:function(){delete this.called},toString:function(){return this.hook.toString.apply(this.hook,arguments)}};var ISCALLBACK=function(f){return(typeof(f)==="function"&&f.isCallback)};var EVAL=function(code){return eval.call(window,code)};var TESTEVAL=function(){EVAL("var __TeSt_VaR__ = 1");if(window.__TeSt_VaR__){try{delete window.__TeSt_VaR__}catch(error){window.__TeSt_VaR__=null}}else{if(window.execScript){EVAL=function(code){BASE.__code=code;code="try {"+BASENAME+".__result = eval("+BASENAME+".__code)} catch(err) {"+BASENAME+".__result = err}";window.execScript(code);var result=BASE.__result;delete BASE.__result;delete BASE.__code;if(result instanceof Error){throw result}return result}}else{EVAL=function(code){BASE.__code=code;code="try {"+BASENAME+".__result = eval("+BASENAME+".__code)} catch(err) {"+BASENAME+".__result = err}";var head=(document.getElementsByTagName("head"))[0];if(!head){head=document.body}var script=document.createElement("script");script.appendChild(document.createTextNode(code));head.appendChild(script);head.removeChild(script);var result=BASE.__result;delete BASE.__result;delete BASE.__code;if(result instanceof Error){throw result}return result}}}TESTEVAL=null};var USING=function(args,i){if(arguments.length>1){if(arguments.length===2&&!(typeof arguments[0]==="function")&&arguments[0] instanceof Object&&typeof arguments[1]==="number"){args=[].slice.call(args,i)}else{args=[].slice.call(arguments,0)}}if(isArray(args)&&args.length===1&&typeof(args[0])==="function"){args=args[0]}if(typeof args==="function"){if(args.execute===CALLBACK.prototype.execute){return args}return CALLBACK({hook:args})}else{if(isArray(args)){if(typeof(args[0])==="string"&&args[1] instanceof Object&&typeof args[1][args[0]]==="function"){return CALLBACK({hook:args[1][args[0]],object:args[1],data:args.slice(2)})}else{if(typeof args[0]==="function"){return CALLBACK({hook:args[0],data:args.slice(1)})}else{if(typeof args[1]==="function"){return CALLBACK({hook:args[1],object:args[0],data:args.slice(2)})}}}}else{if(typeof(args)==="string"){if(TESTEVAL){TESTEVAL()}return CALLBACK({hook:EVAL,data:[args]})}else{if(args instanceof Object){return CALLBACK(args)}else{if(typeof(args)==="undefined"){return CALLBACK({})}}}}}throw Error("Can't make callback from given data")};var DELAY=function(time,callback){callback=USING(callback);callback.timeout=setTimeout(callback,time);return callback};var WAITFOR=function(callback,signal){callback=USING(callback);if(!callback.called){WAITSIGNAL(callback,signal);signal.pending++}};var WAITEXECUTE=function(){var signals=this.signal;delete this.signal;this.execute=this.oldExecute;delete this.oldExecute;var result=this.execute.apply(this,arguments);if(ISCALLBACK(result)&&!result.called){WAITSIGNAL(result,signals)}else{for(var i=0,m=signals.length;i0&&priority=0;i--){this.hooks.splice(i,1)}this.remove=[]}});var EXECUTEHOOKS=function(hooks,data,reset){if(!hooks){return null}if(!isArray(hooks)){hooks=[hooks]}if(!isArray(data)){data=(data==null?[]:[data])}var handler=HOOKS(reset);for(var i=0,m=hooks.length;ig){g=document.styleSheets.length}if(!i){i=document.head||((document.getElementsByTagName("head"))[0]);if(!i){i=document.body}}return i};var f=[];var c=function(){for(var k=0,j=f.length;k=this.timeout){i(this.STATUS.ERROR);return 1}return 0},file:function(j,i){if(i<0){a.Ajax.loadTimeout(j)}else{a.Ajax.loadComplete(j)}},execute:function(){this.hook.call(this.object,this,this.data[0],this.data[1])},checkSafari2:function(i,j,k){if(i.time(k)){return}if(document.styleSheets.length>j&&document.styleSheets[j].cssRules&&document.styleSheets[j].cssRules.length){k(i.STATUS.OK)}else{setTimeout(i,i.delay)}},checkLength:function(i,l,n){if(i.time(n)){return}var m=0;var j=(l.sheet||l.styleSheet);try{if((j.cssRules||j.rules||[]).length>0){m=1}}catch(k){if(k.message.match(/protected variable|restricted URI/)){m=1}else{if(k.message.match(/Security error/)){m=1}}}if(m){setTimeout(a.Callback([n,i.STATUS.OK]),0)}else{setTimeout(i,i.delay)}}},loadComplete:function(i){i=this.fileURL(i);var j=this.loading[i];if(j&&!j.preloaded){a.Message.Clear(j.message);clearTimeout(j.timeout);if(j.script){if(f.length===0){setTimeout(c,0)}f.push(j.script)}this.loaded[i]=j.status;delete this.loading[i];this.addHook(i,j.callback)}else{if(j){delete this.loading[i]}this.loaded[i]=this.STATUS.OK;j={status:this.STATUS.OK}}if(!this.loadHooks[i]){return null}return this.loadHooks[i].Execute(j.status)},loadTimeout:function(i){if(this.loading[i].timeout){clearTimeout(this.loading[i].timeout)}this.loading[i].status=this.STATUS.ERROR;this.loadError(i);this.loadComplete(i)},loadError:function(i){a.Message.Set(["LoadFailed","File failed to load: %1",i],null,2000);a.Hub.signal.Post(["file load error",i])},Styles:function(k,l){var i=this.StyleString(k);if(i===""){l=a.Callback(l);l()}else{var j=document.createElement("style");j.type="text/css";this.head=h(this.head);this.head.appendChild(j);if(j.styleSheet&&typeof(j.styleSheet.cssText)!=="undefined"){j.styleSheet.cssText=i}else{j.appendChild(document.createTextNode(i))}l=this.timer.create.call(this,l,j)}return l},StyleString:function(n){if(typeof(n)==="string"){return n}var k="",o,m;for(o in n){if(n.hasOwnProperty(o)){if(typeof n[o]==="string"){k+=o+" {"+n[o]+"}\n"}else{if(a.Object.isArray(n[o])){for(var l=0;l="0"&&q<="9"){f[j]=p[f[j]-1];if(typeof f[j]==="number"){f[j]=this.number(f[j])}}else{if(q==="{"){q=f[j].substr(1);if(q>="0"&&q<="9"){f[j]=p[f[j].substr(1,f[j].length-2)-1];if(typeof f[j]==="number"){f[j]=this.number(f[j])}}else{var k=f[j].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/);if(k){if(k[1]==="plural"){var d=p[k[2]-1];if(typeof d==="undefined"){f[j]="???"}else{d=this.plural(d)-1;var h=k[3].replace(/(^|[^%])(%%)*%\|/g,"$1$2%\uEFEF").split(/\|/);if(d>=0&&d=3){c.push([f[0],f[1],this.processSnippet(g,f[2])])}else{c.push(e[d])}}}}else{c.push(e[d])}}return c},markdownPattern:/(%.)|(\*{1,3})((?:%.|.)+?)\2|(`+)((?:%.|.)+?)\4|\[((?:%.|.)+?)\]\(([^\s\)]+)\)/,processMarkdown:function(b,h,d){var j=[],e;var c=b.split(this.markdownPattern);var g=c[0];for(var f=1,a=c.length;f1?d[1]:""));f=null}if(e&&(!b.preJax||d)){c.nodeValue=c.nodeValue.replace(b.postJax,(e.length>1?e[1]:""))}if(f&&!f.nodeValue.match(/\S/)){f=f.previousSibling}}if(b.preRemoveClass&&f&&f.className===b.preRemoveClass){a.MathJax.preview=f}a.MathJax.checked=1},processInput:function(a){var b,i=MathJax.ElementJax.STATE;var h,e,d=a.scripts.length;try{while(a.ithis.processUpdateTime&&a.i1){d.jax[a.outputJax].push(b)}b.MathJax.state=c.OUTPUT},prepareOutput:function(c,f){while(c.jthis.processUpdateTime&&h.i=0;q--){if((b[q].src||"").match(f)){s.script=b[q].innerHTML;if(RegExp.$2){var t=RegExp.$2.substr(1).split(/\&/);for(var p=0,l=t.length;p=parseInt(y[z])}}return true},Select:function(j){var i=j[d.Browser];if(i){return i(d.Browser)}return null}};var e=k.replace(/^Mozilla\/(\d+\.)+\d+ /,"").replace(/[a-z][-a-z0-9._: ]+\/\d+[^ ]*-[^ ]*\.([a-z][a-z])?\d+ /i,"").replace(/Gentoo |Ubuntu\/(\d+\.)*\d+ (\([^)]*\) )?/,"");d.Browser=d.Insert(d.Insert(new String("Unknown"),{version:"0.0"}),a);for(var v in a){if(a.hasOwnProperty(v)){if(a[v]&&v.substr(0,2)==="is"){v=v.slice(2);if(v==="Mac"||v==="PC"){continue}d.Browser=d.Insert(new String(v),a);var r=new RegExp(".*(Version/| Trident/.*; rv:)((?:\\d+\\.)+\\d+)|.*("+v+")"+(v=="MSIE"?" ":"/")+"((?:\\d+\\.)*\\d+)|(?:^|\\(| )([a-z][-a-z0-9._: ]+|(?:Apple)?WebKit)/((?:\\d+\\.)+\\d+)");var u=r.exec(e)||["","","","unknown","0.0"];d.Browser.name=(u[1]!=""?v:(u[3]||u[5]));d.Browser.version=u[2]||u[4]||u[6];break}}}try{d.Browser.Select({Safari:function(j){var i=parseInt((String(j.version).split("."))[0]);if(i>85){j.webkit=j.version}if(i>=538){j.version="8.0"}else{if(i>=537){j.version="7.0"}else{if(i>=536){j.version="6.0"}else{if(i>=534){j.version="5.1"}else{if(i>=533){j.version="5.0"}else{if(i>=526){j.version="4.0"}else{if(i>=525){j.version="3.1"}else{if(i>500){j.version="3.0"}else{if(i>400){j.version="2.0"}else{if(i>85){j.version="1.0"}}}}}}}}}}j.webkit=(navigator.appVersion.match(/WebKit\/(\d+)\./))[1];j.isMobile=(navigator.appVersion.match(/Mobile/i)!=null);j.noContextMenu=j.isMobile},Firefox:function(j){if((j.version==="0.0"||k.match(/Firefox/)==null)&&navigator.product==="Gecko"){var m=k.match(/[\/ ]rv:(\d+\.\d.*?)[\) ]/);if(m){j.version=m[1]}else{var i=(navigator.buildID||navigator.productSub||"0").substr(0,8);if(i>="20111220"){j.version="9.0"}else{if(i>="20111120"){j.version="8.0"}else{if(i>="20110927"){j.version="7.0"}else{if(i>="20110816"){j.version="6.0"}else{if(i>="20110621"){j.version="5.0"}else{if(i>="20110320"){j.version="4.0"}else{if(i>="20100121"){j.version="3.6"}else{if(i>="20090630"){j.version="3.5"}else{if(i>="20080617"){j.version="3.0"}else{if(i>="20061024"){j.version="2.0"}}}}}}}}}}}}j.isMobile=(navigator.appVersion.match(/Android/i)!=null||k.match(/ Fennec\//)!=null||k.match(/Mobile/)!=null)},Chrome:function(i){i.noContextMenu=i.isMobile=!!navigator.userAgent.match(/ Mobile[ \/]/)},Opera:function(i){i.version=opera.version()},Edge:function(i){i.isMobile=!!navigator.userAgent.match(/ Phone/)},MSIE:function(j){j.isMobile=!!navigator.userAgent.match(/ Phone/);j.isIE9=!!(document.documentMode&&(window.performance||window.msPerformance));MathJax.HTML.setScriptBug=!j.isIE9||document.documentMode<9;MathJax.Hub.msieHTMLCollectionBug=(document.documentMode<9);if(document.documentMode<10&&!s.params.NoMathPlayer){try{new ActiveXObject("MathPlayer.Factory.1");j.hasMathPlayer=true}catch(m){}try{if(j.hasMathPlayer){var i=document.createElement("object");i.id="mathplayer";i.classid="clsid:32F66A20-7614-11D4-BD11-00104BD3F987";g.appendChild(i);document.namespaces.add("m","http://www.w3.org/1998/Math/MathML");j.mpNamespace=true;if(document.readyState&&(document.readyState==="loading"||document.readyState==="interactive")){document.write('');j.mpImported=true}}else{document.namespaces.add("mjx_IE_fix","http://www.w3.org/1999/xlink")}}catch(m){}}}})}catch(c){console.error(c.message)}d.Browser.Select(MathJax.Message.browsers);if(h.AuthorConfig&&typeof h.AuthorConfig.AuthorInit==="function"){h.AuthorConfig.AuthorInit()}d.queue=h.Callback.Queue();d.queue.Push(["Post",s.signal,"Begin"],["Config",s],["Cookie",s],["Styles",s],["Message",s],function(){var i=h.Callback.Queue(s.Jax(),s.Extensions());return i.Push({})},["Menu",s],s.onLoad(),function(){MathJax.isReady=true},["Typeset",s],["Hash",s],["MenuZoom",s],["Post",s.signal,"End"])})("MathJax")}}; diff --git a/MacDown/Resources/MathJax/callback.js b/MacDown/Resources/MathJax/callback.js deleted file mode 100644 index 25f39431..00000000 --- a/MacDown/Resources/MathJax/callback.js +++ /dev/null @@ -1,3 +0,0 @@ -MathJax.Hub.Register.StartupHook('End', function () { - MathJaxListener.invokeCallbackForKey_('End'); -}); diff --git a/MacDown/Resources/MathJax/init.js b/MacDown/Resources/MathJax/init.js new file mode 100644 index 00000000..6b66412a --- /dev/null +++ b/MacDown/Resources/MathJax/init.js @@ -0,0 +1,14 @@ +(function () { + +MathJax.Hub.Config({ + 'showProcessingMessages': false, + 'messageStyle': 'none' +}); + +if (typeof MathJaxListener !== 'undefined') { + MathJax.Hub.Register.StartupHook('End', function () { + MathJaxListener.invokeCallbackForKey_('End'); + }); +} + +})(); diff --git a/MacDown/Resources/Styles/Clearness Dark.css b/MacDown/Resources/Styles/Clearness Dark.css old mode 100755 new mode 100644 index b47ad189..5f192ca9 --- a/MacDown/Resources/Styles/Clearness Dark.css +++ b/MacDown/Resources/Styles/Clearness Dark.css @@ -21,12 +21,12 @@ table { margin: 10px 0 15px 0; border-collapse: collapse; } -td,th { +td,th { border: 1px solid #ddd; padding: 3px 10px; } th { - padding: 5px 10px; + padding: 5px 10px; } a { color: #59acf3; @@ -127,6 +127,19 @@ sup { vertical-align: super; line-height: 0; } +kbd { + display: inline-block; + padding: 3px 5px; + font-size: 11px; + line-height: 10px; + color: #555; + vertical-align: middle; + background-color: #fcfcfc; + border: solid 1px #ccc; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb; +} * { -webkit-print-color-adjust: exact; } @@ -137,10 +150,10 @@ sup { } } @media print { - body,code,pre code,h1,h2,h3,h4,h5,h6 { - color: black; - } table, pre { page-break-inside: avoid; } -} \ No newline at end of file + body { + margin: 2cm; + } +} diff --git a/MacDown/Resources/Styles/Clearness.css b/MacDown/Resources/Styles/Clearness.css old mode 100755 new mode 100644 index 37e18af3..33c094f2 --- a/MacDown/Resources/Styles/Clearness.css +++ b/MacDown/Resources/Styles/Clearness.css @@ -21,12 +21,12 @@ table { margin: 10px 0 15px 0; border-collapse: collapse; } -td,th { +td,th { border: 1px solid #ddd; padding: 3px 10px; } th { - padding: 5px 10px; + padding: 5px 10px; } a { @@ -128,6 +128,19 @@ sup { vertical-align: super; line-height: 0; } +kbd { + display: inline-block; + padding: 3px 5px; + font-size: 11px; + line-height: 10px; + color: #555; + vertical-align: middle; + background-color: #fcfcfc; + border: solid 1px #ccc; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb; +} * { -webkit-print-color-adjust: exact; } @@ -138,10 +151,10 @@ sup { } } @media print { - body,code,pre code,h1,h2,h3,h4,h5,h6 { - color: black; - } table, pre { page-break-inside: avoid; } -} \ No newline at end of file + body { + margin: 2cm; + } +} diff --git a/MacDown/Resources/Styles/GitHub.css b/MacDown/Resources/Styles/GitHub.css old mode 100755 new mode 100644 index b5f09ec5..bf910b0a --- a/MacDown/Resources/Styles/GitHub.css +++ b/MacDown/Resources/Styles/GitHub.css @@ -71,6 +71,9 @@ sup { vertical-align: super; line-height: 0; } +kbd { + display: inline-block;padding: 3px 5px;font-size: 11px;line-height: 10px;color: #555;vertical-align: middle;background-color: #fcfcfc;border: solid 1px #ccc;border-bottom-color: #bbb;border-radius: 3px;box-shadow: inset 0 -1px 0 #bbb; +} * { -webkit-print-color-adjust: exact; } @@ -87,4 +90,7 @@ sup { pre { word-wrap: break-word; } -} \ No newline at end of file + body { + padding: 2cm; + } +} diff --git a/MacDown/Resources/Styles/GitHub2.css b/MacDown/Resources/Styles/GitHub2.css old mode 100755 new mode 100644 index f0b74483..805173aa --- a/MacDown/Resources/Styles/GitHub2.css +++ b/MacDown/Resources/Styles/GitHub2.css @@ -278,6 +278,21 @@ sup { vertical-align: super; line-height: 0; } + +kbd { + display: inline-block; + padding: 3px 5px; + font-size: 11px; + line-height: 10px; + color: #555; + vertical-align: middle; + background-color: #fcfcfc; + border: solid 1px #ccc; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb +} + * { -webkit-print-color-adjust: exact; } @@ -294,4 +309,7 @@ sup { pre { word-wrap: break-word; } -} \ No newline at end of file + body { + padding: 2cm; + } +} diff --git a/MacDown/Resources/Styles/Solarized (Dark).css b/MacDown/Resources/Styles/Solarized (Dark).css old mode 100755 new mode 100644 index a17baa39..19edc75a --- a/MacDown/Resources/Styles/Solarized (Dark).css +++ b/MacDown/Resources/Styles/Solarized (Dark).css @@ -175,12 +175,22 @@ html h5, html h6 { color: #b58900; } +kbd { + display: inline-block; + padding: 3px 5px; + font-size: 11px; + line-height: 10px; + color: #555; + vertical-align: middle; + background-color: #fcfcfc; + border: solid 1px #ccc; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb; +} @media print { body { - margin: 0; - } - * { - color: #000 !important; + margin: 2cm; } -} \ No newline at end of file +} diff --git a/MacDown/Resources/Styles/Solarized (Light).css b/MacDown/Resources/Styles/Solarized (Light).css old mode 100755 new mode 100644 index 23246a3b..ec2f95e6 --- a/MacDown/Resources/Styles/Solarized (Light).css +++ b/MacDown/Resources/Styles/Solarized (Light).css @@ -175,12 +175,22 @@ html h5, html h6 { color: #b58900; } +kbd { + display: inline-block; + padding: 3px 5px; + font-size: 11px; + line-height: 10px; + color: #555; + vertical-align: middle; + background-color: #fcfcfc; + border: solid 1px #ccc; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb; +} @media print { body { - margin: 0; - } - * { - color: #000 !important; + margin: 2cm; } -} \ No newline at end of file +} diff --git a/MacDown/Resources/Templates/Default.handlebars b/MacDown/Resources/Templates/Default.handlebars new file mode 100644 index 00000000..a5660d09 --- /dev/null +++ b/MacDown/Resources/Templates/Default.handlebars @@ -0,0 +1,26 @@ + + + + + + + +{{{ titleTag }}} + +{{#each styleTags }} +{{{ this }}} +{{/each }} + + + + + +{{{ body }}} + +{{#each scriptTags }} +{{{ this }}} +{{/each }} + + + + diff --git a/MacDown/Resources/contribute.md b/MacDown/Resources/contribute.md new file mode 100644 index 00000000..18e959c0 --- /dev/null +++ b/MacDown/Resources/contribute.md @@ -0,0 +1,32 @@ +# Contributing to MacDown + +MacDown is open source and is a volunteer effort. This means that it depends on people to give some of their free time to improve it and make it even better. + +If you are reading this, then you are probably curious or want to contribute in some way. Read on to see how you can do so. + +## Getting the Source Code + +MacDown is hosted on GitHub: + +https://github.com/MacDownApp/macdown + +Here you can get the source code, read through the issues and start contributing. + +## But, I am not a Coder + +Contribution is not limited to software developers, since there are other ways you can help. For example, contributing towards documentation, translation and support. Join the room on Gitter to see how you can help (see below). + +If you want to help translate, then you can look at our project page on [Transifex](https://www.transifex.com/macdown/macdown/) and see whether to add a new languages or complete the work of an existing language. + +## Joining the Conversation + +If you are new the project, then a good place to start is Gitter: + +https://gitter.im/MacDownApp/macdown + +Join the room, introduce yourself and find out how you can help out. + +## License + +MacDown is released under the terms of MIT License. For more details take a look at the [README](https://github.com/MacDownApp/macdown/blob/master/README.md). + diff --git a/MacDown/Resources/help.md b/MacDown/Resources/help.md index 5b63cb1b..95b40181 100644 --- a/MacDown/Resources/help.md +++ b/MacDown/Resources/help.md @@ -1,31 +1,199 @@ # MacDown -![MacDown logo](http://macdown.uranusjr.com/static/base/img/logo-160.png) +![MacDown logo](https://macdown.uranusjr.com/static/images/logo-160.png) Hello there! I’m **MacDown**, the open source Markdown editor for OS X. Let me introduce myself. -## Markdown and I -**Markdown** is a plain text formatting syntax created by John Gruber, aiming to provide a easy-to-read and feasible markup. +## Markdown and I -The original Markdown syntax specification can be found [here](http://daringfireball.net/projects/markdown/syntax). +**Markdown** is a plain text formatting syntax created by John Gruber, aiming to provide a easy-to-read and feasible markup. The original Markdown syntax specification can be found [here](https://daringfireball.net/projects/markdown/syntax). **MacDown** is created as a simple-to-use editor for Markdown documents. I render your Markdown contents real-time into HTML, and display them in a preview panel. -I support all the original Markdown syntaxes. Various non-standard ones can also be turned on/off from the **Markdown** preference pane: +![MacDown Screenshot](https://d.pr/i/10UGP+) + +I support all the original Markdown syntaxes. But I can do so much more! Various popular but non-standard syntaxes can be turned on/off from the [**Markdown** preference pane](#markdown-pane). + +You can specify extra HTML rendering options through the [**Rendering** preference pane](#rendering-pane). + +You can customize the editor window to your liking in the [**Editor** preferences pane](#editor-pane): + +You can configure various application (that's me!) behaviors in the [**General** preference pane](#general-pane). + +## The Basics +Before I tell you about all the extra syntaxes and capabilities I have, I'll introduce you to the basics of standard markdown. If you already know markdown, and want to jump straight to learning about the fancier things I can do, I suggest you skip to the [**Markdown** preference pane](#markdown-pane). Lets jump right in. + +### Line Breaks +To force a line break, put two spaces and a newline (return) at the end of the line. + +* This two-line bullet +won't break + +* This two-line bullet +will break + +Here is the code: + +``` +* This two-line bullet +won't break + +* This two-line bullet +will break +``` + +### Strong and Emphasize + +**Strong**: `**Strong**` or `__Strong__` (Command-B) +*Emphasize*: `*Emphasize*` or `_Emphasize_`[^emphasize] (Command-I) + +### Headers (like this one!) + + Header 1 + ======== + + Header 2 + -------- + +or -![Markdown preferences pane](http://d.pr/i/RQEi+) + # Header 1 + ## Header 2 + ### Header 3 + #### Header 4 + ##### Header 5 + ###### Header 6 -You can also specify extra HTML rendering options through the **Rendering** pane: -![Rendering preferences pane](http://d.pr/i/rT4d+) -And you can also configure various behaviors in the **General** preferences pane. +### Links and Email +#### Inline +Just put angle brackets around an email and it becomes clickable: +`` + +Same thing with urls: +` ` + +Perhaps you want to link some text like this: [Macdown Website](https://macdown.uranusjr.com "Title") +`[Macdown Website](https://macdown.uranusjr.com "Title")` (The title is optional) + + +#### Reference style +Sometimes it looks too messy to include big long urls inline, or you want to keep all your urls together. + +Make [a link][arbitrary_id] `[a link][arbitrary_id]` then on it's own line anywhere else in the file: +`[arbitrary_id]: https://macdown.uranusjr.com "Title"` + +If the link text itself would make a good id, you can link [like this][] `[like this][]`, then on it's own line anywhere else in the file: +`[like this]: https://macdown.uranusjr.com` + +[arbitrary_id]: https://macdown.uranusjr.com "Title" +[like this]: https://macdown.uranusjr.com + + +### Images +#### Inline +`![Alt Image Text](path/or/url/to.jpg "Optional Title")` +#### Reference style +`![Alt Image Text][image-id]` +on it's own line elsewhere: +`[image-id]: path/or/url/to.jpg "Optional Title"` + + +### Lists + +* Lists must be preceded by a blank line (or block element) +* Unordered lists start each item with a `*` +- `-` works too + * Indent a level to make a nested list + 1. Ordered lists are supported. + 2. Start each item (number-period-space) like `1. ` + 42. It doesn't matter what number you use, I will render them sequentially + 1. So you might want to start each line with `1.` and let me sort it out + +Here is the code: + +``` +* Lists must be preceded by a blank line (or block element) +* Unordered lists start each item with a `*` +- `-` works too + * Indent a level to make a nested list + 1. Ordered lists are supported. + 2. Start each item (number-period-space) like `1. ` + 42. It doesn't matter what number you use, I will render them sequentially + 1. So you might want to start each line with `1.` and let me sort it out +``` + + + +### Block Quote + +> Angle brackets `>` are used for block quotes. +Technically not every line needs to start with a `>` as long as +there are no empty lines between paragraphs. +> Looks kinda ugly though. +> > Block quotes can be nested. +> > > Multiple Levels +> +> Most markdown syntaxes work inside block quotes. +> +> * Lists +> * [Links][arbitrary_id] +> * Etc. + +Here is the code: + +``` +> Angle brackets `>` are used for block quotes. +Technically not every line needs to start with a `>` as long as +there are no empty lines between paragraphs. +> Looks kinda ugly though. +> > Block quotes can be nested. +> > > Multiple Levels +> +> Most markdown syntaxes work inside block quotes. +> +> * Lists +> * [Links][arbitrary_id] +> * Etc. +``` + + +### Inline Code +`Inline code` is indicated by surrounding it with backticks: +`` `Inline code` `` + +If your ``code has `backticks` `` that need to be displayed, you can use double backticks: +```` ``Code with `backticks` `` ```` (mind the spaces preceding the final set of backticks) + + +### Block Code +If you indent at least four spaces or one tab, I'll display a code block. + + print('This is a code block') + print('The block must be preceded by a blank line') + print('Then indent at least 4 spaces or 1 tab') + print('Nesting does nothing. Your code is displayed Literally') + +I also know how to do something called [Fenced Code Blocks](#fenced-code-block) which I will tell you about later. + +### Horizontal Rules +If you type three asterisks `***` or three dashes `---` on a line, I'll display a horizontal rule: + +*** + + +## The Markdown Preference Pane +This is where I keep all preferences related to how I parse markdown into html. +![Markdown preferences pane](https://d.pr/i/RQEi+) + +### Document Formatting +The ***Smartypants*** extension automatically transforms straight quotes (`"` and `'`) in your text into typographer’s quotes (`“`, `”`, `‘`, and `’`) according to the context. Very useful if you’re a typography freak like I am. Quote and Smartypants are syntactically incompatible. If both are enabled, Quote takes precedence. -![General preferences pane](http://d.pr/i/rvwu+) ### Block Formatting @@ -53,7 +221,7 @@ The left- and right-most pipes (`|`) are only aesthetic, and can be omitted. The This is a fenced code block: ``` -p 'Hello world!' +print('Hello world!') ``` You can also use waves (`~`) instead of back ticks (`` ` ``): @@ -62,55 +230,46 @@ You can also use waves (`~`) instead of back ticks (`` ` ``): print('Hello world!') ~~~ -In either case, you can add an optional language ID at the end of the first line: - -```markup -

    - Copyright © 2014 - Tzu-ping Chung. -
    -``` -The language ID will be used to highlight the code inside if you tick the ***Enable highlighting in code blocks*** option. This is what happens if you enable it: +You can add an optional language ID at the end of the first line. The language ID will only be used to highlight the code inside if you tick the ***Enable highlighting in code blocks*** option. This is what happens if you enable it: -![Syntax highlighting example](http://d.pr/i/9HM6+) +![Syntax highlighting example](https://d.pr/i/9HM6+) -I support many popular languages as well as some generic syntax descriptions that can be used if your language of choice is not supported. See [relevant sections on the official site](http://macdown.uranusjr.com/features/) for a full list of supported syntaxes. +I support many popular languages as well as some generic syntax descriptions that can be used if your language of choice is not supported. See [relevant sections on the official site](https://macdown.uranusjr.com/features/) for a full list of supported syntaxes. ### Inline Formatting The following is a list of optional inline markups supported: -Option name | Markup | Result if enabled | -----------------------|------------------|-----------------------| -Intra-word emphasis | This\*is\*good | Thisisgood | -Strikethrough | \~~Much wow\~~ | Much wow | -Underline [^1] | \_So doge\_ | So doge | -Quote [^2] [^3] | "Such editor" | Such editor | -Highlight | \==So good\== | So good | -Superscript [^4] [^5] | hoge\^(fuga) | hogefuga | -Autolink | http://t.co | http://t.co | -Footnotes [^4] | [\^6] and [\^6]: | [^6] and footnote 6 below | - -[^1]: If **Underline** is disabled. _this_ will be the same as *this*. -[^2]: Note that this is different from *blockquote* (a `> `-prefixed block), which is part of the standard Markdown syntax specification. -[^3]: **Quote** and **Smartypants** are syntactically incompatible with each other. The former will take precedence. -[^4]: **Superscript** and **Footnotes** are syntactically incompatible with each other. The former will take precedence. -[^5]: LaTeX `^` superscripts in math will fail if you enabled the **Superscript** extension. You will need to use MathML if you want math support and ***Superscript*** together. -[^6]: This is a footnote. +Option name | Markup | Result if enabled | +--------------------|------------------|-----------------------| +Intra-word emphasis | So A\*maz\*ing | So Amazing | +Strikethrough | \~~Much wow\~~ | Much wow | +Underline [^under] | \_So doge\_ | So doge | +Quote [^quote] | \"Such editor\" | Such editor | +Highlight | \==So good\== | So good | +Superscript | hoge\^(fuga) | hogefuga | +Autolink | http://t.co | | +Footnotes | [\^4] and [\^4]: | [^4] and footnote 4 | + +[^4]: You don't have to use a number. Arbitrary things like `[^footy note4]` and `[^footy note4]:` will also work. But they will *render* as numbered footnotes. Also, no need to keep your footnotes in order, I will sort out the order for you so they appear in the same order they were referenced in the text body. You can even keep some footnotes near where you referenced them, and collect others at the bottom of the file in the traditional place for footnotes. -### Document Formatting -The ***Smartypants*** extension automatically transforms straight quotes (`"` and `'`) in your text into typographer’s quotes (`“`, `”`, `‘`, and `’`) according to the context.[^3] Very useful if you’re a typography freak like I am. +## The Rendering Preference Pane +This is where I keep preferences relating to how I render and style the parsed markdown in the preview window. +![Rendering preferences pane](https://d.pr/i/rT4d+) -### HTML Rendering +### CSS +You can choose different css files for me to use to render your html. You can even customize or add your own custom css files. -You have already seen how I can highlight your fenced code blocks. See the [Fenced Code Block](#fenced-code-block) section if you haven’t! +### Syntax Highlighting +You have already seen how I can syntax highlight your fenced code blocks. See the [Fenced Code Block](#fenced-code-block) section if you haven’t! You can also choose different themes for syntax highlighting. -I can also render TeX-like math syntaxes, if you allow me to.[^7] I can do inline math like this: \\( 1 + 1 \\) or this (in MathML): 1+1, and block math:[^5] +### TeX-like Math Syntax +I can also render TeX-like math syntaxes, if you allow me to.[^math] I can do inline math like this: \\( 1 + 1 \\) or this (in MathML): 1+1, and block math: \\[ A^T_S = B @@ -125,14 +284,38 @@ or (in MathML) -[^7]: Internet connection required. + +### Task List Syntax +1. [x] I can render checkbox list syntax + * [x] I support nesting + * [x] I support ordered *and* unordered lists +2. [ ] I don't support clicking checkboxes directly in the html window -## Editor Options +### Jekyll front-matter +If you like, I can display Jekyll front-matter in a nice table. Just make sure you put the front-matter at the very beginning of the file, and fence it with `---`. For example: -You can customize the editor to you liking in the **Editor** preferences pane: +``` +--- +title: "Macdown is my friend" +date: 2014-06-06 20:00:00 +--- +``` -![Editor preferences pane](http://d.pr/i/6OL5+) +### Render newline literally +Normally I require you to put two spaces and a newline (aka return) at the end of a line in order to create a line break. If you like, I can render a newline any time you end a line with a newline. However, if you enable this, markdown that looks lovely when I render it might look pretty funky when you let some *other* program render it. + + +## The General Preferences Pane + +This is where I keep preferences related to application behavior. +![General preferences pane](https://d.pr/i/rvwu+) + +The General Preferences Pane allows you to tell me how you want me to behave. For example, do you want me to make sure there is a document open when I launch? You can also tell me if I should constantly update the preview window as you type, or wait for you to hit `command-R` instead. Maybe you prefer your editor window on the right? Or to see the word-count as you type. This is also the place to tell me if you are interested in pre-releases of me, or just want to stick to better-tested official releases. + +## The Editor Preference Pane +This is where I keep preferences related to the behavior and styling of the editing window. +![Editor preferences pane](https://d.pr/i/6OL5+) ### Styling @@ -144,8 +327,32 @@ You can also edit, or even add new themes if you want to! Just click the ***Reve I offer auto-completion and other functions to ease your editing experience. If you don’t like it, however, you can turn them off. +## Hidden preference + +You can see the HTML behind a preview by enabling the OS X built-in WebKit developer tools for MacDown in a terminal window: + +``` +defaults write com.uranusjr.macdown WebKitDeveloperExtras -bool true +``` + +Then select “Inspect Element” in the right-click context menu inside the preview pane. + +This is the exact same inspector you find in Safari if you turn on the developer tools. + + ## Hack On That’s about it. Thanks for listening. I’ll be quiet from now on (unless there’s an update about the app—I’ll remind you for that!). Happy writing! + + +[^emphasize]: If **Underlines** is turned on, `_this notation_` will render as underlined instead of emphasized + +[^under]: If **Underline** is disabled `_this_` will be rendered as *emphasized* instead of being underlined. + +[^quote]: **Quote** replaces literal `"` characters with html `` tags. **Quote** and **Smartypants** are syntactically incompatible. If both are enabled, **Quote** takes precedence. Note that **Quote** is different from *blockquote*, which is part of standard Markdown. + +[^math]: Internet connection required. + + diff --git a/MacDown/Resources/syntax_highlighting.json b/MacDown/Resources/syntax_highlighting.json new file mode 100644 index 00000000..441f4774 --- /dev/null +++ b/MacDown/Resources/syntax_highlighting.json @@ -0,0 +1,22 @@ +{ + "aliases": { + "c++": "cpp", + "coffee": "coffeescript", + "coffee-script": "coffeescript", + "cs": "csharp", + "html": "markup", + "jl": "julia", + "js": "javascript", + "json": "javascript", + "objective-c": "objectivec", + "obj-c": "objectivec", + "objc": "objectivec", + "py": "python", + "rb": "ruby", + "sh": "bash", + "xml": "markup", + + "graphviz": "dot", + "gv": "dot" + } +} \ No newline at end of file diff --git a/MacDownTests/MPAssetTests.m b/MacDownTests/MPAssetTests.m index 35536ed2..4782541b 100644 --- a/MacDownTests/MPAssetTests.m +++ b/MacDownTests/MPAssetTests.m @@ -9,6 +9,12 @@ #import #import "MPAsset.h" + +@interface MPAsset () +@property (readonly, nonatomic) NSString *typeName; +@end + + @interface MPAssetTests : XCTestCase @property (strong) NSBundle *bundle; @end @@ -22,6 +28,18 @@ - (void)setUp self.bundle = [NSBundle bundleForClass:[self class]]; } +- (void)testDefaultAssetType +{ + MPAsset *asset = [[MPAsset alloc] init]; + XCTAssertEqualObjects(asset.typeName, @"text/plain"); + + MPStyleSheet *css = [[MPStyleSheet alloc] init]; + XCTAssertEqualObjects(css.typeName, @"text/css"); + + MPScript *script = [[MPScript alloc] init]; + XCTAssertEqualObjects(script.typeName, @"text/javascript"); +} + - (void)testAssetNone { XCTAssertNil([[[MPScript alloc] init] htmlForOption:MPAssetNone], diff --git a/MacDownTests/MPStringLookupTests.m b/MacDownTests/MPStringLookupTests.m index ab54b5de..ec96a51e 100644 --- a/MacDownTests/MPStringLookupTests.m +++ b/MacDownTests/MPStringLookupTests.m @@ -177,4 +177,11 @@ - (void)testTitleString XCTAssertNil(title, @"Incorrect title."); } +- (void)testHasExtension +{ + XCTAssertTrue([@"foo.css" hasExtension:@"css"], @"Wrong extension."); + XCTAssertTrue([@"foo.min.css" hasExtension:@"css"], @"Wrong extension."); + XCTAssertFalse([@"foo.csss" hasExtension:@"css"], @"Wrong extension."); +} + @end diff --git a/MacDownTests/MacDownTests-Info.plist b/MacDownTests/MacDownTests-Info.plist index 633fa970..169b6f71 100644 --- a/MacDownTests/MacDownTests-Info.plist +++ b/MacDownTests/MacDownTests-Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.uranusjr.${PRODUCT_NAME:rfc1034identifier:lower} + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundlePackageType diff --git a/MacDownTests/ar.lproj/InfoPlist.strings b/MacDownTests/ar.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/ar.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/de.lproj/InfoPlist.strings b/MacDownTests/de.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/de.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/es.lproj/InfoPlist.strings b/MacDownTests/es.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/es.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/fr.lproj/InfoPlist.strings b/MacDownTests/fr.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/fr.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/is.lproj/InfoPlist.strings b/MacDownTests/is.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/is.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/it-IT.lproj/InfoPlist.strings b/MacDownTests/it-IT.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/it-IT.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/ja.lproj/InfoPlist.strings b/MacDownTests/ja.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/ja.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/ko-KR.lproj/InfoPlist.strings b/MacDownTests/ko-KR.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/ko-KR.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/nl-NL.lproj/InfoPlist.strings b/MacDownTests/nl-NL.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/nl-NL.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/pt-BR.lproj/InfoPlist.strings b/MacDownTests/pt-BR.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/pt-BR.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/sk.lproj/InfoPlist.strings b/MacDownTests/sk.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/sk.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/sv.lproj/InfoPlist.strings b/MacDownTests/sv.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/sv.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/zh-Hans.lproj/InfoPlist.strings b/MacDownTests/zh-Hans.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/zh-Hans.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/MacDownTests/zh-Hant.lproj/InfoPlist.strings b/MacDownTests/zh-Hant.lproj/InfoPlist.strings new file mode 100644 index 00000000..dc62739d --- /dev/null +++ b/MacDownTests/zh-Hant.lproj/InfoPlist.strings @@ -0,0 +1 @@ +/* No Localized Strings */ \ No newline at end of file diff --git a/Podfile b/Podfile index 20d85407..6c5288f6 100644 --- a/Podfile +++ b/Podfile @@ -1,18 +1,23 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, "6.0" +platform :osx, "10.8" -source 'https://github.com/CocoaPods/Specs.git' -xcodeproj 'MacDown.xcodeproj' +source 'https://github.com/MacDownApp/cocoapods-specs.git' # Patched libraries. +source 'https://cdn.cocoapods.org/' + +project 'MacDown.xcodeproj' + +inhibit_all_warnings! target "MacDown" do - pod 'handlebars-objc', '~> 1.3' - pod 'hoedown', '~> 3.0' - pod 'JJPluralForm', '~> 2.1' # Plural form localization. - pod 'LibYAML', '~> 0.1', :inhibit_warnings => true - pod 'M13OrderedDictionary', '~> 1.0' - pod 'MASPreferences', '~> 1.1' # Preference window. - pod 'PAPreferences', '~> 0.4' # Preference singleton. - pod 'Sparkle', '< 1.8' # Updater. + pod 'handlebars-objc', '~> 1.4' + pod 'hoedown', '~> 3.0.7', :inhibit_warnings => false + pod 'JJPluralForm', '~> 2.1' + pod 'LibYAML', '~> 0.1' + pod 'M13OrderedDictionary', '~> 1.1' + pod 'MASPreferences', '~> 1.3' + pod 'Sparkle', '~> 1.18', :inhibit_warnings => false + + # Locked on 0.4.x until we drop 10.8. + pod 'PAPreferences', '~> 0.4' end target "MacDownTests" do @@ -20,5 +25,5 @@ target "MacDownTests" do end target "macdown-cmd" do - pod 'GBCli', '~> 1.0' + pod 'GBCli', '~> 1.1' end diff --git a/Podfile.lock b/Podfile.lock index c703d863..b90fe24a 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,34 +1,51 @@ PODS: - GBCli (1.1) - - handlebars-objc (1.3.0) - - hoedown (3.0.0) + - handlebars-objc (1.4.5) + - hoedown (3.0.7): + - hoedown/standard (= 3.0.7) + - hoedown/standard (3.0.7) - JJPluralForm (2.1) - LibYAML (0.1.4) - - M13OrderedDictionary (1.0.5) - - MASPreferences (1.1.2) - - PAPreferences (0.4) - - Sparkle (1.7.1) + - M13OrderedDictionary (1.1.0) + - MASPreferences (1.3) + - PAPreferences (0.5) + - Sparkle (1.18.1) DEPENDENCIES: - - GBCli (~> 1.0) - - handlebars-objc (~> 1.3) - - hoedown (~> 3.0) + - GBCli (~> 1.1) + - handlebars-objc (~> 1.4) + - hoedown (~> 3.0.7) - JJPluralForm (~> 2.1) - LibYAML (~> 0.1) - - M13OrderedDictionary (~> 1.0) - - MASPreferences (~> 1.1) + - M13OrderedDictionary (~> 1.1) + - MASPreferences (~> 1.3) - PAPreferences (~> 0.4) - - Sparkle (< 1.8) + - Sparkle (~> 1.18) + +SPEC REPOS: + https://github.com/MacDownApp/cocoapods-specs.git: + - handlebars-objc + - hoedown + - LibYAML + trunk: + - GBCli + - JJPluralForm + - M13OrderedDictionary + - MASPreferences + - PAPreferences + - Sparkle SPEC CHECKSUMS: - GBCli: 304718a0ff52cb39ea7ae1bcb3c4cb40c5a48c8d - handlebars-objc: ced98b23adddc7b3fbf7473fb40225255e53f591 - hoedown: d7b4579420f036df11884b55017bd38a67bcabb6 - JJPluralForm: 14142b5f85ac6abdc3a2cf45f1af61fe6559ea60 - LibYAML: d447960375d9114187bfddba6e6c24d69bff11f8 - M13OrderedDictionary: 17dd456dd096dc1de8f810b93d70ae964063e0ff - MASPreferences: 48debf3a161039bb979e617b7416bc07bd879f75 - PAPreferences: 3916ab2f4f332f0a9ed7d45c63dd628ea814a11c - Sparkle: fde5ffeb7bf01db28925499ce2a75977763af58a + GBCli: e5f988fadb68e1e3c01919f134009fed9796fde0 + handlebars-objc: dde09557cfee1dd0f34ab39595bd5eae7e17cb8b + hoedown: 8141833441f6430686c06bbc5159d7ce615155fb + JJPluralForm: 9a6235813990a33a63fb3eff457eb2c633af6acd + LibYAML: dee5c31dcab47b168425083c2b0a6baeacdf499e + M13OrderedDictionary: 6e157fe9c82aa6b3cd7198f5c5c30c7a6834c4a6 + MASPreferences: c08b8622dd17b47da87669e741efd7c92e970e8c + PAPreferences: 9f0ffb1e67174a0df001af9d3320166ceb9ee6f5 + Sparkle: 06ea33170007c5937ee54da481b4481af98fac79 + +PODFILE CHECKSUM: e9356b9a2ceafda7889ba385de6e9f2d8b06cba0 -COCOAPODS: 0.34.4 +COCOAPODS: 1.8.4 diff --git a/README.md b/README.md index c3509d27..a656c7f7 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,23 @@ # MacDown -[![Build Status](https://travis-ci.org/uranusjr/macdown.svg?branch=master)](https://travis-ci.org/uranusjr/macdown) +[![](https://img.shields.io/github/release/MacDownApp/macdown.svg)](http://macdown.uranusjr.com/download/latest/) +![Total downloads](https://img.shields.io/github/downloads/MacDownApp/macdown/latest/total.svg) +[![Build Status](https://travis-ci.org/MacDownApp/macdown.svg?branch=master)](https://travis-ci.org/MacDownApp/macdown) -MacDown is an open source Markdown editor for OS X, released under the MIT License. The author stole the idea from [Chen Luo](https://twitter.com/chenluois)’s [Mou](http://mouapp.com) so that people can [make crappy clones](https://twitter.com/remaerd/status/484914820408279040). -Visit the [project site](http://macdown.uranusjr.com/) for more information, or download [MacDown.app.zip](http://macdown.uranusjr.com/download/latest/) directly from the [latest releases](https://github.com/uranusjr/macdown/releases/latest) page. +MacDown is an open source Markdown editor for OS X, released under the MIT License. The author stole the idea from [Chen Luo](https://twitter.com/chenluois)’s [Mou](http://mouapp.com) so that people can make crappy clones. + +Visit the [project site](http://macdown.uranusjr.com/) for more information, or download [MacDown.app.zip](http://macdown.uranusjr.com/download/latest/) directly from the [latest releases](https://github.com/MacDownApp/macdown/releases/latest) page. + +## Install + +[Download](http://macdown.uranusjr.com/download/latest/), unzip, and drag the app to Applications folder. MacDown is also available through [Homebrew Cask](https://caskroom.github.io/): + + brew install --cask macdown + +## Screenshot + +![screenshot](assets/screenshot.png) ## License @@ -36,15 +49,17 @@ The following editor themes and CSS files are extracted from [Mou](http://mouapp If you wish to build MacDown yourself, you will need the following components/tools: -* OS X SDK (10.8 or later) +* OS X SDK (10.14 or later) * Git -* [CocoaPods](http://cocoapods.org) - -You may also need to install Xcode’s command line tools with the following command: +* [Bundler](http://bundler.io) - xcode-select --install +> Note: Old versions of CocoaPods are not supported. Please use Bundler to execute CocoaPods, or make sure your CocoaPods is later than shown in `Gemfile.lock`. -> Note: Due to an [upstream bug](https://github.com/CocoaPods/CocoaPods/issues/2559), Xcode will fail to build certain dependencies if you use the latest version of CocoaPods (0.35 at the time of writing). To avoid the problem and build the project correctly, you need to install an older version of CocoaPods (0.34.4 is recommended), and use that to build the dependencies instead. See [comment in issue #220](https://github.com/uranusjr/macdown/issues/220#issuecomment-65014799) for detailed instructions. +> Note: The Command Line Tools (CLT) should be unnecessary. If you failed to compile without it, please install CLT with +> +> xcode-select --install +> +> and report back. An appropriate SDK should be bundled with Xcode 5 or later versions. @@ -52,23 +67,35 @@ An appropriate SDK should be bundled with Xcode 5 or later versions. After cloning the repository, run the following commands inside the repository root (directory containing this `README.md` file): - git submodule init - git submodule update - pod install + git submodule update --init + bundle install + bundle exec pod install + make -C Dependency/peg-markdown-highlight and open `MacDown.xcworkspace` in Xcode. The first command initialises the dependency submodule(s) used in MacDown; the second one installs dependencies managed by CocoaPods. Refer to the official guides of Git and CocoaPods if you need more instructions. If you run into build issues later on, try running the following commands to update dependencies: git submodule update - pod install + bundle exec pod install + +### Translation + +Please help translation on [Transifex](https://www.transifex.com/macdown/macdown/). + +![Transifex translation percentage](https://www.transifex.com/projects/p/macdown/resource/macdownxliff/chart/image_png/) ## Discussion -[![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/uranusjr/macdown?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) +[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/MacDownApp/macdown) -Join our [Gitter channel](https://gitter.im/uranusjr/macdown?utm_source=share-link&utm_medium=link&utm_campaign=share-link) if you have any problems with MacDown. Any suggestions are welcomed, too! +Join our [Gitter channel](https://gitter.im/MacDownApp/macdown) if you have any problems with MacDown. Any suggestions are welcomed, too! -You can also [file an issue directly](https://github.com/uranusjr/macdown/issues/new) on GitHub if you prefer so. But please, **search first to make sure no-one has reported the same issue already** before opening one yourself. MacDown does not update in your computer immediately when we make changes, so something you experienced might be known, or even fixed in the development version. +You can also [file an issue directly](https://github.com/MacDownApp/macdown/issues/new) on GitHub if you prefer so. But please, **search first to make sure no-one has reported the same issue already** before opening one yourself. MacDown does not update in your computer immediately when we make changes, so something you experienced might be known, or even fixed in the development version. MacDown depends a lot on other open source projects, such as [Hoedown](https://github.com/hoedown/hoedown) for Markdown-to-HTML rendering, [Prism](http://prismjs.com) for syntax highlighting (in code blocks), and [PEG Markdown Highlight](https://github.com/ali-rantakari/peg-markdown-highlight) for editor highlighting. If you find problems when using those particular features, you can also consider reporting them directly to upstream projects as well as to MacDown’s issue tracker. I will do what I can if you report it here, but sometimes it can be more beneficial to interact with them directly. + +## Tipping + +If you find MacDown suitable for your needs, please consider [giving me a tip through PayPal](http://macdown.uranusjr.com/faq/#donation). Or, if you prefer to buy me a drink *personally* instead, just [send me a tweet](https://twitter.com/uranusjr) when you visit [Taipei, Taiwan](http://en.wikipedia.org/wiki/Taipei), where I live. I look forward to meeting you! + diff --git a/Tools/GitHub-style-generator/.gitignore b/Tools/GitHub-style-generator/.gitignore new file mode 100644 index 00000000..2ccbe465 --- /dev/null +++ b/Tools/GitHub-style-generator/.gitignore @@ -0,0 +1 @@ +/node_modules/ diff --git a/Tools/GitHub-style-generator/Makefile b/Tools/GitHub-style-generator/Makefile new file mode 100644 index 00000000..f2a8016d --- /dev/null +++ b/Tools/GitHub-style-generator/Makefile @@ -0,0 +1,13 @@ +NODE_SASS = node_modules/.bin/node-sass + +target = ../../MacDown/Resources/Styles/GitHub-2020.css + +all: $(target) + +$(target): index.sass package-lock.json + $(NODE_SASS) --include-path node_modules $< | sed s/.markdown-body/body/ > $@ + +clean: + $(RM) $(target) + +.PHONY: all clean diff --git a/Tools/GitHub-style-generator/README.md b/Tools/GitHub-style-generator/README.md new file mode 100644 index 00000000..2074b315 --- /dev/null +++ b/Tools/GitHub-style-generator/README.md @@ -0,0 +1,9 @@ +# GitHub Style Generator + +This tool generates the GitHub style with official GitHub style package. npm 5 or above is required (to make use of `package-lock.json`). To update the style, bump the name in `Makefile`, and run: + +```bash +npm install +npm update primer-markdown +make +``` diff --git a/Tools/GitHub-style-generator/index.sass b/Tools/GitHub-style-generator/index.sass new file mode 100644 index 00000000..f3f956e6 --- /dev/null +++ b/Tools/GitHub-style-generator/index.sass @@ -0,0 +1 @@ +@import primer-markdown/index diff --git a/Tools/GitHub-style-generator/package-lock.json b/Tools/GitHub-style-generator/package-lock.json new file mode 100644 index 00000000..b3f5742f --- /dev/null +++ b/Tools/GitHub-style-generator/package-lock.json @@ -0,0 +1,1447 @@ +{ + "name": "github-style-generator", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "requires": { + "array-find-index": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "env-paths": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz", + "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==" + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "requires": { + "globule": "^1.0.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "^2.0.0" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-core-module": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", + "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", + "requires": { + "has": "^1.0.3" + } + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==" + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + } + } + }, + "lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + } + }, + "mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + }, + "mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "requires": { + "mime-db": "1.44.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "minipass": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", + "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", + "requires": { + "yallist": "^4.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "requires": { + "minimist": "^1.2.5" + } + }, + "nan": { + "version": "2.14.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", + "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==" + }, + "node-gyp": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz", + "integrity": "sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==", + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.3", + "nopt": "^5.0.0", + "npmlog": "^4.1.2", + "request": "^2.88.2", + "rimraf": "^3.0.2", + "semver": "^7.3.2", + "tar": "^6.0.2", + "which": "^2.0.2" + }, + "dependencies": { + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" + } + } + }, + "node-sass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-5.0.0.tgz", + "integrity": "sha512-opNgmlu83ZCF792U281Ry7tak9IbVC+AKnXGovcQ8LG8wFaJv6cLnRlc6DIHlmNxWEexB5bZxi9SZ9JyUuOYjw==", + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^7.0.3", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "lodash": "^4.17.15", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^7.1.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "2.2.5", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + } + }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "^2.0.0" + } + }, + "primer-markdown": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/primer-markdown/-/primer-markdown-4.0.0.tgz", + "integrity": "sha512-WPDwlV8tTbyQNnVcNcOfoknub5W02qKBVdKHdwz9wGeXkLJxOGhtkatrzH0P03QqmVC6MGFknlNJFjaJOzvX9A==", + "requires": { + "primer-support": "5.0.0" + } + }, + "primer-support": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/primer-support/-/primer-support-5.0.0.tgz", + "integrity": "sha512-inUxVSsGirn5IkPxBhFsMBgm8ZHyfOUmOWyDCN8cBXtbaLiCIAjHsPI46yS1zrWxnn0J2kvq8haomkrlHGF08g==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "^1.0.0" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "resolve": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", + "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "requires": { + "is-core-module": "^2.0.0", + "path-parse": "^1.0.6" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sass-graph": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^13.3.2" + } + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "requires": { + "amdefine": ">=0.0.4" + } + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz", + "integrity": "sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "requires": { + "readable-stream": "^2.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "^4.0.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "tar": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.5.tgz", + "integrity": "sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + } + } + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "requires": { + "glob": "^7.1.2" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "uri-js": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", + "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + } + } + } + } +} diff --git a/Tools/GitHub-style-generator/package.json b/Tools/GitHub-style-generator/package.json new file mode 100644 index 00000000..eea0e8fa --- /dev/null +++ b/Tools/GitHub-style-generator/package.json @@ -0,0 +1,15 @@ +{ + "name": "github-style-generator", + "version": "1.0.0", + "description": "Generates GitHub style for MacDown.", + "repository": { + "type": "git", + "url": "https://github.com/MacDownApp/macdown/tree/master/Tools/GitHub-theme-generator" + }, + "author": "Franklin Yu", + "license": "MIT", + "dependencies": { + "node-sass": "^5.0.0", + "primer-markdown": "^4.0.0" + } +} diff --git a/Tools/build_for_release.py b/Tools/build_for_release.py index d4b991cc..aa1c3120 100755 --- a/Tools/build_for_release.py +++ b/Tools/build_for_release.py @@ -2,13 +2,17 @@ # -*- coding: utf-8 -*- from __future__ import print_function + +import argparse import os import re -import subprocess import shutil import zipfile + from xml.etree import ElementTree +from macdown_utils import ROOT_DIR, XCODEBUILD, execute + try: input = raw_input @@ -17,30 +21,13 @@ OPENSSL = '/usr/bin/openssl' -XCODEBUILD = '/usr/bin/xcodebuild' OSASCRIPT = '/usr/bin/osascript' -BUILD_DIR = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'Build') +BUILD_DIR = os.path.join(ROOT_DIR, 'Build') APP_NAME = 'MacDown.app' ZIP_NAME = 'MacDown.app.zip' - -class CommandError(Exception): - pass - - -def execute(*args): - proc = subprocess.Popen( - args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, - ) - stdout, stderr = proc.communicate() - if proc.returncode: - raise CommandError( - '"{cmd}" failed with error {code}.\n {output}'.format( - cmd=' '.join(args), code=proc.returncode, output=stderr - ) - ) - return stdout +TERM_ENCODING = 'utf-8' def print_value(key, value): @@ -65,13 +52,15 @@ def archive_dir(zip_f, directory): zip_f.write(full_path) -def main(argv): - if len(argv) < 2: - name = os.path.basename(argv[0]) - print('Usage: {name} private_key'.format(name=name)) - return +def parse_args(argv): + parser = argparse.ArgumentParser() + parser.add_argument('path_to_pem', help='path to .pem private key') + return parser.parse_args(argv) - cert_path = argv[1] + +def main(argv): + options = parse_args(argv) + cert_path = options.path_to_pem print('Pre-build cleaning...') if os.path.exists(BUILD_DIR): @@ -85,20 +74,31 @@ def main(argv): XCODEBUILD, 'clean', '-workspace', 'MacDown.xcworkspace', '-scheme', 'MacDown', ) - os.chdir(BUILD_DIR) + + print('Running external scripts...') + os.chdir(os.path.join(ROOT_DIR, 'Dependency', 'peg-markdown-highlight')) + execute('make') print('Building application archive...') + os.chdir(BUILD_DIR) output = execute( XCODEBUILD, 'archive', '-workspace', '../MacDown.xcworkspace', '-scheme', 'MacDown', ) - match = re.search(r'^\s*ARCHIVE_PATH: (.+)$', output, re.MULTILINE) + if isinstance(output, bytes): + output = output.decode(TERM_ENCODING) + match = re.search( + r'^\s*ARCHIVE_PATH: (.+)$', + output, + re.MULTILINE, + ) archive_path = match.group(1) + print('Exporting application bundle...') - execute( - XCODEBUILD, '-exportArchive', '-exportFormat', 'app', - '-archivePath', archive_path, '-exportPath', APP_NAME, + source_app_path = os.path.join( + archive_path, 'Products', 'Applications', APP_NAME, ) + shutil.copytree(source_app_path, APP_NAME) # Zip. with zipfile.ZipFile(ZIP_NAME, 'w') as f: @@ -145,5 +145,4 @@ def main(argv): if __name__ == '__main__': - import sys - main(sys.argv) + main(None) diff --git a/Tools/compat.py b/Tools/compat.py new file mode 100644 index 00000000..8894c4fb --- /dev/null +++ b/Tools/compat.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +_NOTHING = object() + +try: + import configparser +except ImportError: # Python 2. + import ConfigParser as configparser + + class ConfigParser(configparser.SafeConfigParser): + """Compatibility layer. + """ + def read_file(self, f, source=None): + return self.readfp(f, source) + +else: + ConfigParser = configparser.ConfigParser diff --git a/Tools/generate_version_header.sh b/Tools/generate_version_header.sh index 2e33afe8..5d8e6677 100644 --- a/Tools/generate_version_header.sh +++ b/Tools/generate_version_header.sh @@ -1,7 +1,7 @@ #!/bin/bash pushd `dirname $0` > /dev/null -source $(pwd -P)/utils.sh +source "$(pwd -P)"/utils.sh popd > /dev/null SHORT_VERSION=$(get_short_version) diff --git a/Tools/import_translations.py b/Tools/import_translations.py new file mode 100755 index 00000000..8a13441a --- /dev/null +++ b/Tools/import_translations.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import logging +import os + +from xml.etree import ElementTree + +from compat import ConfigParser +from macdown_utils import ROOT_DIR, XCODEBUILD, XLIFF_URL, execute + + +TX_CONFIG_FILE = os.path.join(ROOT_DIR, '.tx', 'config') + + +logger = logging.getLogger() + + +ElementTree.register_namespace('', XLIFF_URL) + + +def pull_translations(parser): + xliff_dirpath = os.path.abspath(os.path.join( + __file__, '..', '..', + parser.get('macdown.macdownxliff', 'file_filter'), + '..', + )) + if os.path.exists(xliff_dirpath): + for fn in os.listdir(xliff_dirpath): + os.remove(os.path.join(xliff_dirpath, fn)) + logger.info('Connecting...') + os.system('tx pull -a') + + +def parse_tx_config(): + parser = ConfigParser() + with open(TX_CONFIG_FILE) as f: + parser.read_file(f) + return parser + + +def fix_translation_codes(parser): + # Get language code mapping (Transifex, Xcode). + def parse_lang_pair(s): + f, t = (c.strip() for c in s.split(':')) + return f.replace('_', '-'), t + + code_map = dict( + parse_lang_pair(keymap) + for keymap in parser.get('main', 'lang_map').split(',') + ) + + # Get the file pattern. + xliff_dirpath = os.path.dirname( + parser.get('macdown.macdownxliff', 'file_filter'), + ) + for fn in os.listdir(xliff_dirpath): + if os.path.splitext(fn)[-1] != '.xliff': + continue + xliff_filepath = os.path.join(xliff_dirpath, fn) + logger.info('Fixing {}'.format(xliff_filepath)) + + tree = ElementTree.parse(xliff_filepath) + + # Fix language codes. + for node in tree.iterfind('xliff:file', {'xliff': XLIFF_URL}): + try: + new_code = code_map[node.get('target-language')] + except KeyError: + pass + else: + node.set('target-language', new_code) + + tree.write( + xliff_filepath, + encoding='UTF-8', xml_declaration=True, method='xml', + ) + + +def import_translations(parser): + source_lang = parser.get('macdown.macdownxliff', 'source_lang') + xliff_dirpath = os.path.dirname( + parser.get('macdown.macdownxliff', 'file_filter'), + ) + for fn in os.listdir(xliff_dirpath): + stem, ext = os.path.splitext(fn) + if ext != '.xliff' or stem == source_lang: + continue + logger.info('Importing {}'.format(fn)) + execute( + XCODEBUILD, '-importLocalizations', + '-localizationPath', os.path.join(xliff_dirpath, fn), + ) + + +def main(): + logging.basicConfig(level=logging.INFO) + parser = parse_tx_config() + pull_translations(parser) + fix_translation_codes(parser) + import_translations(parser) + + +if __name__ == '__main__': + main() diff --git a/Tools/macdown_utils.py b/Tools/macdown_utils.py new file mode 100644 index 00000000..29d3e6fb --- /dev/null +++ b/Tools/macdown_utils.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import os +import subprocess + + +XCODEBUILD = '/usr/bin/xcodebuild' + +XLIFF_URL = 'urn:oasis:names:tc:xliff:document:1.2' + +ROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + + +class CommandError(Exception): + pass + + +def execute(*args): + proc = subprocess.Popen( + args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, + ) + stdout, stderr = map(lambda s: s.decode('utf-8'), proc.communicate()) + if proc.returncode: + raise CommandError( + '"{cmd}" failed with error {code}.\n {output}'.format( + cmd=' '.join(args), code=proc.returncode, output=stderr + ) + ) + return stdout diff --git a/Tools/travis_push_transifex.py b/Tools/travis_push_transifex.py new file mode 100755 index 00000000..6fdc6c05 --- /dev/null +++ b/Tools/travis_push_transifex.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +from __future__ import print_function, unicode_literals +import io +import os +import sys + +from xml.etree import ElementTree + +from macdown_utils import XLIFF_URL, execute + + +# Translations of these keys will be dropped. +NO_TRANSLATE_FILES = { + 'MacDown/MacDown-Info.plist', + 'MacDownTests/MacDownTests-Info.plist', +} + + +ElementTree.register_namespace('', XLIFF_URL) + + +def write_transifex_config(): + """Used to setup Travis for Transifex push. + + Requires environ "TRANSIFEX_PASSWORD". + """ + transifexrc_path = os.path.expanduser('~/.transifexrc') + if os.path.exists(transifexrc_path): + return + with io.open(transifexrc_path, 'w', encoding='utf-8') as f: + f.write(( + '[https://www.transifex.com]\n' + 'hostname = https://www.transifex.com\n' + 'password = {password}\n' + 'token = \n' + 'username = macdown\n' + ).format(password=os.environ['TRANSIFEX_PASSWORD'])) + + +PREFIX_MAP = {'xliff': XLIFF_URL} + + +def clean_xliff(): + xliff_dirpath = os.getenv('LOCALIZATION_OUT') + assert xliff_dirpath, 'LOCALIZATION_OUT not set' + for fn in os.listdir(xliff_dirpath): + if os.path.splitext(fn)[-1] != '.xliff': + continue + xliff_filepath = os.path.join(xliff_dirpath, fn) + tree = ElementTree.parse(xliff_filepath) + root = tree.getroot() + + # Remove files that should not be translated. + for source in NO_TRANSLATE_FILES: + source_xpath = 'xliff:file[@original="{}"]'.format(source) + source_node = tree.find(source_xpath, PREFIX_MAP) + if source_node: + root.remove(source_node) + + tree.write( + xliff_filepath, + encoding='UTF-8', xml_declaration=True, method='xml', + ) + + +def main(): + if os.getenv('TRAVIS_PULL_REQUEST') != 'false': + print('Build triggered by a pull request. Transifex push skipped.', + file=sys.stderr) + return + current_branch = os.getenv('TRAVIS_BRANCH') + target_branch = 'master' + if current_branch != target_branch: + print('Branch {cur} is not {target}. Transifex push skipped.'.format( + cur=current_branch, target=target_branch, + ), file=sys.stderr) + return + clean_xliff() + write_transifex_config() + execute(os.path.expanduser('~/Library/Python/2.7/bin/tx'), 'push', '-s') + + +if __name__ == '__main__': + main() diff --git a/Tools/utils.sh b/Tools/utils.sh index a27af0e5..1d153b48 100644 --- a/Tools/utils.sh +++ b/Tools/utils.sh @@ -22,16 +22,9 @@ function get_short_version() { if [ $COMMIT_COUNT_SINCE_TAG = 0 ]; then SHORT_VERSION="$LATEST_TAG" else - # increment final digit of tag and append "d" + commit-count-since-tag - # e.g. commit after 1.0 is 1.1d1, commit after 1.0.0 is 1.0.1d1 - # this is the bit that requires /bin/bash - OLD_IFS=$IFS - IFS="." - VERSION_PARTS=($LATEST_TAG) - LAST_PART=$((${#VERSION_PARTS[@]}-1)) - VERSION_PARTS[$LAST_PART]=$((${VERSION_PARTS[${LAST_PART}]}+1)) - SHORT_VERSION="${VERSION_PARTS[*]}d${COMMIT_COUNT_SINCE_TAG}" - IFS=$OLD_IFS + local tools_dir=$(dirname "${BASH_SOURCE[0]:-${(%):-%x}}") + local next_version=$(cat "$tools_dir/version.txt") + SHORT_VERSION="${next_version}d${COMMIT_COUNT_SINCE_TAG}" fi echo $SHORT_VERSION } diff --git a/Tools/version.txt b/Tools/version.txt new file mode 100644 index 00000000..a3df0a69 --- /dev/null +++ b/Tools/version.txt @@ -0,0 +1 @@ +0.8.0 diff --git a/assets/demo.md b/assets/demo.md new file mode 100644 index 00000000..4bbe7f8d --- /dev/null +++ b/assets/demo.md @@ -0,0 +1,133 @@ + +# Graph Visualization + +Two graph visualization grammer are supported, mermaid and graphviz. +To enable these features, options `Mermaid` and/or `Graphviz` in `MacDown` -> `Perferences...` -> `Rendering` should be checked. + +# Mermaid + +[mermaid](https://github.com/knsv/mermaid) has 3 diagram syntax. + +## Flow Chart + + +```mermaid +graph TD; +A-->B; +A-->C; +B-->D; +C-->D; +``` + +## Sequence Diagram + +```mermaid +sequenceDiagram +participant Alice +participant Bob +Alice->>John: Hello John, how are you? +loop Healthcheck +John->>John: Fight against hypochondria +end +Note right of John: Rational thoughts
    prevail... +John-->>Alice: Great! +John->>Bob: How about you? +Bob-->>John: Jolly good! +``` + +## Gantt + +```mermaid +gantt +title A Gantt Diagram + +section Section +A task :a1, 2014-01-01, 30d +Another task :after a1 , 20d +section Another +Task in sec :2014-01-12 , 12d +anther task : 24d +``` + +# Graphviz +> Graphviz is open source graph visualization software. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It has important applications in networking, bioinformatics, software engineering, database and web design, machine learning, and in visual interfaces for other technical domains. + + +Please refer to [Graphviz website](http://www.graphviz.org/Home.php) for details. + +## Graphviz Engines + +* circo +* dot +* fdp +* neato +* osage +* twopi + +Here are some samples. + +## Hashmap + + +```dot +digraph G { +nodesep=.05; +rankdir=LR; + +node [shape=record,width=1.1,height=.1]; +node0 [label = " | | | | | | | ", height=2.5]; + +node [width = 1.5]; +node1 [label = "{ n14 | 719 |

    }"]; +node2 [label = "{ a1 | 805 |

    }"]; +node3 [label = "{ i9 | 718 |

    }"]; +node4 [label = "{ e5 | 989 |

    }"]; +node5 [label = "{ t20 | 959 |

    }"] ; +node6 [label = "{ o15 | 794 |

    }"] ; +node7 [label = "{ s19 | 659 |

    }"] ; + +node0:f0 -> node1:n; +node0:f1 -> node2:n; +node0:f2 -> node3:n; +node0:f5 -> node4:n; +node0:f6 -> node5:n; +node2:p -> node6:n; +node4:p -> node7:n; +} +``` + +## Process diagram with clusters + + +```dot +digraph G { + +subgraph cluster0 { + node [style=filled,color=white]; + style=filled; + color=lightgrey; + a0 -> a1 -> a2 -> a3; + label = "process #1"; +} + +subgraph cluster1 { + node [style=filled]; + b0 -> b1 -> b2 -> b3; + label = "process #2"; + color=blue +} + +start -> a0; +start -> b0; +a1 -> b3; +b2 -> a3; +a3 -> a0; +a3 -> end; +b3 -> end; +start [shape=Mdiamond]; +end [shape=Msquare]; +} + +``` + + diff --git a/assets/screenshot.png b/assets/screenshot.png new file mode 100644 index 00000000..02bc70ea Binary files /dev/null and b/assets/screenshot.png differ diff --git a/macdown-cmd/MPArgumentProcessor.m b/macdown-cmd/MPArgumentProcessor.m index 9cdf4465..30533128 100644 --- a/macdown-cmd/MPArgumentProcessor.m +++ b/macdown-cmd/MPArgumentProcessor.m @@ -39,7 +39,7 @@ - (instancetype)init options.applicationName = ^{ return kMPApplicationName; }; options.printHelpHeader = ^{ NSString *fmt = - @"usage: %@ version [option] ... file [file ...]\n\nOptions:"; + @"usage: %@ [file ...]\n\nOptions:"; return [NSString stringWithFormat:fmt, kMPCommandName]; }; [options registerOption:'v' long:kMPVersionKey diff --git a/macdown-cmd/main.m b/macdown-cmd/main.m index 5feebc13..28b93e47 100644 --- a/macdown-cmd/main.m +++ b/macdown-cmd/main.m @@ -6,12 +6,72 @@ // Copyright (c) 2014 Tzu-ping Chung . All rights reserved. // +#import #import #import #import "NSUserDefaults+Suite.h" #import "MPGlobals.h" #import "MPArgumentProcessor.h" + +const NSUInteger kMPPathEncoding = NSUTF8StringEncoding; + + +NSRunningApplication *MPRunningMacDownInstance() +{ + NSArray *runningInstances = [NSRunningApplication + runningApplicationsWithBundleIdentifier:kMPApplicationSuiteName]; + return runningInstances.firstObject; +} + +void MPCollectPipedContentURLForMacDown(NSURL *url) { + NSUserDefaults *defaults = + [[NSUserDefaults alloc] initWithSuiteNamed:kMPApplicationSuiteName]; + + [defaults setObject:url.path forKey:kMPPipedContentFileToOpen inSuiteNamed:kMPApplicationSuiteName]; + [defaults synchronize]; +} + +void MPCollectForMacDown(NSOrderedSet *urls) +{ + NSUserDefaults *defaults = + [[NSUserDefaults alloc] initWithSuiteNamed:kMPApplicationSuiteName]; + NSMutableArray *urlStrings = + [[NSMutableArray alloc] initWithCapacity:urls.count]; + for (NSURL *url in urls) + [urlStrings addObject:url.path]; + [defaults setObject:urlStrings forKey:kMPFilesToOpenKey + inSuiteNamed:kMPApplicationSuiteName]; + [defaults synchronize]; +} + +/** + * Data piped to macdown through stdin. + * + * @return Piped data if any, otherwise nil. + */ +NSData* MPPipedData() { + NSFileHandle *stdInFileHandle = [NSFileHandle fileHandleWithStandardInput]; + // Check if stdin file handle have anything to read + // Modified solution from http://stackoverflow.com/questions/7505777/how-do-i-check-for-nsfilehandle-has-data-available + int fd = [stdInFileHandle fileDescriptor]; + fd_set fdset; + struct timeval tmout = { 0, 0 }; + FD_ZERO(&fdset); + FD_SET(fd, &fdset); + if (select(fd + 1, &fdset, NULL, NULL, &tmout) <= 0) { // Doesn't hold any data + return nil; + } + else if (FD_ISSET(fd, &fdset)) { // Holds data + NSData *stdInData = [NSData dataWithData:[stdInFileHandle readDataToEndOfFile]]; + return stdInData; + } + else { + return nil; + } +} + + int main(int argc, const char * argv[]) { @autoreleasepool @@ -22,26 +82,39 @@ int main(int argc, const char * argv[]) [argproc printHelp:YES]; else if (argproc.printsVersion) [argproc printVersion:YES]; + + NSData *dataFromPipe = MPPipedData(); + + if (dataFromPipe) { + // Store piped content in a temporary file which will be read by MacDown on launch + NSString *fileName = [NSString stringWithFormat:@"%@_%@", [[NSProcessInfo processInfo] globallyUniqueString], @"pipedText.txt"]; + NSURL *fileURL = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingPathComponent:fileName]]; + + NSError *writeError; + [dataFromPipe writeToFile:fileURL.path options:0 error:&writeError]; + + if (writeError == nil) { + MPCollectPipedContentURLForMacDown(fileURL); + } + } // Treat all arguments as file names to open. Convert them to absolute // paths and store them (as an array) in MacDown's user defaults to // be opened later. NSString *pwd = [NSFileManager defaultManager].currentDirectoryPath; NSURL *pwdUrl = [NSURL fileURLWithPath:pwd isDirectory:YES]; - NSMutableSet *urls = [NSMutableSet set]; - for (NSString *argument in argproc.arguments) + NSMutableOrderedSet *urls = [NSMutableOrderedSet orderedSet]; + for (NSString *arg in argproc.arguments) { - NSURL *url = [NSURL URLWithString:argument relativeToURL:pwdUrl]; - [urls addObject:url.absoluteString]; + NSString *escaped = + [arg stringByAddingPercentEscapesUsingEncoding:kMPPathEncoding]; + NSURL *url = [NSURL URLWithString:escaped relativeToURL:pwdUrl]; + [urls addObject:url]; } - NSUserDefaults *defaults = - [[NSUserDefaults alloc] initWithSuiteNamed:kMPApplicationSuiteName]; - [defaults setObject:urls.allObjects forKey:@"filesToOpenOnNextLaunch" - inSuiteNamed:kMPApplicationSuiteName]; - [defaults synchronize]; + MPCollectForMacDown(urls); // Launch MacDown. - [[NSWorkspace sharedWorkspace] launchApplication:@"MacDown"]; + [[NSWorkspace sharedWorkspace] launchAppWithBundleIdentifier:kMPApplicationBundleIdentifier options:NSWorkspaceLaunchDefault additionalEventParamDescriptor:nil launchIdentifier:nil]; } return EXIT_SUCCESS; }