<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>you died but i'll make it up to you</title>
<style title="Twine CSS">@-webkit-keyframes appear{0%{opacity:0}to{opacity:1}}@keyframes appear{0%{opacity:0}to{opacity:1}}@-webkit-keyframes fade-in-out{0%,to{opacity:0}50%{opacity:1}}@keyframes fade-in-out{0%,to{opacity:0}50%{opacity:1}}@-webkit-keyframes rumble{50%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}}@keyframes rumble{50%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}}@-webkit-keyframes shudder{50%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@keyframes shudder{50%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@-webkit-keyframes box-flash{0%{background-color:white;color:white}}@keyframes box-flash{0%{background-color:white;color:white}}@-webkit-keyframes pulse{0%{-webkit-transform:scale(0, 0);transform:scale(0, 0)}20%{-webkit-transform:scale(1.2, 1.2);transform:scale(1.2, 1.2)}40%{-webkit-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}60%{-webkit-transform:scale(1.05, 1.05);transform:scale(1.05, 1.05)}80%{-webkit-transform:scale(0.925, 0.925);transform:scale(0.925, 0.925)}to{-webkit-transform:scale(1, 1);transform:scale(1, 1)}}@keyframes pulse{0%{-webkit-transform:scale(0, 0);transform:scale(0, 0)}20%{-webkit-transform:scale(1.2, 1.2);transform:scale(1.2, 1.2)}40%{-webkit-transform:scale(0.9, 0.9);transform:scale(0.9, 0.9)}60%{-webkit-transform:scale(1.05, 1.05);transform:scale(1.05, 1.05)}80%{-webkit-transform:scale(0.925, 0.925);transform:scale(0.925, 0.925)}to{-webkit-transform:scale(1, 1);transform:scale(1, 1)}}@-webkit-keyframes shudder-in{0%, to{-webkit-transform:translateX(0em);transform:translateX(0em)}5%, 25%, 45%{-webkit-transform:translateX(-1em);transform:translateX(-1em)}15%, 35%, 55%{-webkit-transform:translateX(1em);transform:translateX(1em)}65%{-webkit-transform:translateX(-0.6em);transform:translateX(-0.6em)}75%{-webkit-transform:translateX(0.6em);transform:translateX(0.6em)}85%{-webkit-transform:translateX(-0.2em);transform:translateX(-0.2em)}95%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@keyframes shudder-in{0%, to{-webkit-transform:translateX(0em);transform:translateX(0em)}5%, 25%, 45%{-webkit-transform:translateX(-1em);transform:translateX(-1em)}15%, 35%, 55%{-webkit-transform:translateX(1em);transform:translateX(1em)}65%{-webkit-transform:translateX(-0.6em);transform:translateX(-0.6em)}75%{-webkit-transform:translateX(0.6em);transform:translateX(0.6em)}85%{-webkit-transform:translateX(-0.2em);transform:translateX(-0.2em)}95%{-webkit-transform:translateX(0.2em);transform:translateX(0.2em)}}@-webkit-keyframes rumble-in{0%, to{-webkit-transform:translateY(0em);transform:translateY(0em)}5%, 25%, 45%{-webkit-transform:translateY(-1em);transform:translateY(-1em)}15%, 35%, 55%{-webkit-transform:translateY(1em);transform:translateY(1em)}65%{-webkit-transform:translateY(-0.6em);transform:translateY(-0.6em)}75%{-webkit-transform:translateY(0.6em);transform:translateY(0.6em)}85%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}95%{-webkit-transform:translateY(0.2em);transform:translateY(0.2em)}}@keyframes rumble-in{0%, to{-webkit-transform:translateY(0em);transform:translateY(0em)}5%, 25%, 45%{-webkit-transform:translateY(-1em);transform:translateY(-1em)}15%, 35%, 55%{-webkit-transform:translateY(1em);transform:translateY(1em)}65%{-webkit-transform:translateY(-0.6em);transform:translateY(-0.6em)}75%{-webkit-transform:translateY(0.6em);transform:translateY(0.6em)}85%{-webkit-transform:translateY(-0.2em);transform:translateY(-0.2em)}95%{-webkit-transform:translateY(0.2em);transform:translateY(0.2em)}}@-webkit-keyframes slide-right{0%{-webkit-transform:translateX(-100vw);transform:translateX(-100vw)}}@keyframes slide-right{0%{-webkit-transform:translateX(-100vw);transform:translateX(-100vw)}}@-webkit-keyframes slide-left{0%{-webkit-transform:translateX(100vw);transform:translateX(100vw)}}@keyframes slide-left{0%{-webkit-transform:translateX(100vw);transform:translateX(100vw)}}@-webkit-keyframes slide-up{0%{-webkit-transform:translateY(100vh);transform:translateY(100vh)}}@keyframes slide-up{0%{-webkit-transform:translateY(100vh);transform:translateY(100vh)}}@-webkit-keyframes slide-down{0%{-webkit-transform:translateY(-100vh);transform:translateY(-100vh)}}@keyframes slide-down{0%{-webkit-transform:translateY(-100vh);transform:translateY(-100vh)}}@-webkit-keyframes flicker{0%,29%,31%,63%,65%,77%,79%,86%,88%,91%,93%{opacity:0}30%{opacity:0.2}64%{opacity:0.4}78%{opacity:0.6}87%{opacity:0.8}92%, to{opacity:1}}@keyframes flicker{0%,29%,31%,63%,65%,77%,79%,86%,88%,91%,93%{opacity:0}30%{opacity:0.2}64%{opacity:0.4}78%{opacity:0.6}87%{opacity:0.8}92%, to{opacity:1}}.debug-mode tw-expression[type=hookref]{background-color:rgba(115,123,140,0.15)}.debug-mode tw-expression[type=hookref]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"?" attr(name)}.debug-mode tw-expression[type=variable]{background-color:rgba(140,128,115,0.15)}.debug-mode tw-expression[type=variable]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"$" attr(name)}.debug-mode tw-expression[type=tempVariable]{background-color:rgba(140,128,115,0.15)}.debug-mode tw-expression[type=tempVariable]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"_" attr(name)}.debug-mode tw-expression[type=macro]:nth-of-type(4n+0){background-color:rgba(136,153,102,0.15)}.debug-mode tw-expression[type=macro]:nth-of-type(2n+1){background-color:rgba(102,153,102,0.15)}.debug-mode tw-expression[type=macro]:nth-of-type(4n+2){background-color:rgba(102,153,136,0.15)}.debug-mode tw-expression[type=macro][name="for"],.debug-mode tw-expression[type=macro][name="loop"],.debug-mode tw-expression[type=macro][name="print"],.debug-mode tw-expression[type=macro][name="enchant"],.debug-mode tw-expression[type=macro][name="display"]{background-color:rgba(0,170,255,0.1) !important}.debug-mode tw-expression[type=macro][name="if"],.debug-mode tw-expression[type=macro][name="if"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="unless"],.debug-mode tw-expression[type=macro][name="unless"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="elseif"],.debug-mode tw-expression[type=macro][name="elseif"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro][name="else"],.debug-mode tw-expression[type=macro][name="else"]+tw-hook:not([name]){background-color:rgba(0,255,0,0.1) !important}.debug-mode tw-expression[type=macro][name="hidden"],.debug-mode tw-expression[type=macro].false{background-color:rgba(255,0,0,0.2) !important}.debug-mode tw-expression[type=macro][name="hidden"]+tw-hook:not([name]),.debug-mode tw-expression[type=macro].false+tw-hook:not([name]){display:none}.debug-mode tw-expression[type=macro][name="either"],.debug-mode tw-expression[type=macro][name="a"],.debug-mode tw-expression[type=macro][name="dm"],.debug-mode tw-expression[type=macro][name="ds"],.debug-mode tw-expression[type=macro][name="array"],.debug-mode tw-expression[type=macro][name^="sub"],.debug-mode tw-expression[type=macro][name="altered"],.debug-mode tw-expression[type=macro][name="count"],.debug-mode tw-expression[type=macro][name^="data"],.debug-mode tw-expression[type=macro][name="find"],.debug-mode tw-expression[type=macro][name$="ed"],.debug-mode tw-expression[type=macro][name$="-pass"],.debug-mode tw-expression[type=macro][name="range"],.debug-mode tw-expression[type=macro][name^="num"],.debug-mode tw-expression[type=macro][name^="str"],.debug-mode tw-expression[type=macro][name="text"],.debug-mode tw-expression[type=macro][name^="lower"],.debug-mode tw-expression[type=macro][name^="upper"],.debug-mode tw-expression[type=macro][name="words"],.debug-mode tw-expression[type=macro][name="ceil"],.debug-mode tw-expression[type=macro][name="floor"],.debug-mode tw-expression[type=macro][name="random"],.debug-mode tw-expression[type=macro][name="abs"],.debug-mode tw-expression[type=macro][name="cos"],.debug-mode tw-expression[type=macro][name="exp"],.debug-mode tw-expression[type=macro][name^="log"],.debug-mode tw-expression[type=macro][name="max"],.debug-mode tw-expression[type=macro][name="min"],.debug-mode tw-expression[type=macro][name="pow"],.debug-mode tw-expression[type=macro][name="sign"],.debug-mode tw-expression[type=macro][name="sin"],.debug-mode tw-expression[type=macro][name="sqrt"],.debug-mode tw-expression[type=macro][name="tan"],.debug-mode tw-expression[type=macro][name="round"],.debug-mode tw-expression[type=macro][name^="hsl"],.debug-mode tw-expression[type=macro][name^="rgb"]{background-color:rgba(255,255,0,0.2) !important}.debug-mode tw-expression[type=macro][name$="-game"],.debug-mode tw-expression[type=macro][name="move"],.debug-mode tw-expression[type=macro][name="put"],.debug-mode tw-expression[type=macro][name="set"]{background-color:rgba(255,128,0,0.2) !important}.debug-mode tw-expression[type=macro][name^="link"],.debug-mode tw-expression[type=macro][name$="-link"],.debug-mode tw-expression[type=macro][name="dropdown"],.debug-mode tw-expression[type=macro][name^="click"],.debug-mode tw-expression[type=macro][name="goto"],.debug-mode tw-expression[type=macro][name="undo"],.debug-mode tw-expression[type=macro][name^="mouseo"]{background-color:rgba(32,191,223,0.2) !important}.debug-mode tw-expression[type=macro][name^="replace"],.debug-mode tw-expression[type=macro][name^="prepend"],.debug-mode tw-expression[type=macro][name^="append"],.debug-mode tw-expression[type=macro][name="show"],.debug-mode tw-expression[type=macro][name^="remove"]{background-color:rgba(223,96,32,0.2) !important}.debug-mode tw-expression[type=macro][name="event"],.debug-mode tw-expression[type=macro][name="live"]{background-color:rgba(32,32,223,0.2) !important}.debug-mode tw-expression[type=macro][name="align"],.debug-mode tw-expression[type=macro][name^="colo"],.debug-mode tw-expression[type=macro][name="background"],.debug-mode tw-expression[type=macro][name="css"],.debug-mode tw-expression[type=macro][name="font"],.debug-mode tw-expression[type=macro][name="hook"],.debug-mode tw-expression[type=macro][name$="-style"],.debug-mode tw-expression[type=macro][name^="text-"],.debug-mode tw-expression[type=macro][name^="transition"],.debug-mode tw-expression[type=macro][name^="t8n"],.debug-mode tw-expression[type=macro][name="live"]{background-color:rgba(255,191,0,0.2) !important}.debug-mode tw-expression[type=macro]::before{content:"(" attr(name) ":)";padding:0 0.5rem;font-size:1rem;vertical-align:middle;line-height:normal;background-color:inherit;border:1px solid rgba(255,255,255,0.5)}.debug-mode tw-hook{background-color:rgba(0,85,255,0.1) !important}.debug-mode tw-hook::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"["}.debug-mode tw-hook::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"]"}.debug-mode tw-hook[name]::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"]<" attr(name) "|"}.debug-mode tw-pseudo-hook{background-color:rgba(255,170,0,0.1) !important}.debug-mode tw-collapsed::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"{"}.debug-mode tw-collapsed::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"}"}.debug-mode tw-verbatim::before,.debug-mode tw-verbatim::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:"`"}.debug-mode tw-align[style*="text-align: center"]{background:linear-gradient(to right, rgba(255,204,189,0) 0%, rgba(255,204,189,0.25) 50%, rgba(255,204,189,0) 100%)}.debug-mode tw-align[style*="text-align: left"]{background:linear-gradient(to right, rgba(255,204,189,0.25) 0%, rgba(255,204,189,0) 100%)}.debug-mode tw-align[style*="text-align: right"]{background:linear-gradient(to right, rgba(255,204,189,0) 0%, rgba(255,204,189,0.25) 100%)}.debug-mode tw-column{background-color:rgba(189,228,255,0.2)}.debug-mode tw-enchantment{animation:enchantment 0.5s infinite;-webkit-animation:enchantment 0.5s infinite;border:1px solid}.debug-mode tw-link::after,.debug-mode tw-broken-link::after{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:attr(passage-name)}.debug-mode tw-include{background-color:rgba(204,128,51,0.1)}.debug-mode tw-include::before{font-size:0.8rem;padding-left:0.2rem;padding-right:0.2rem;vertical-align:top;content:attr(type) ' "' attr(title) '"'}@keyframes enchantment{0%,to{border-color:#ffb366}50%{border-color:#6fc}}@-webkit-keyframes enchantment{0%,to{border-color:#ffb366}50%{border-color:#6fc}}tw-debugger{position:fixed;box-sizing:border-box;bottom:0;right:0;z-index:999999;min-width:10em;min-height:1em;padding:0em 1em 1em 1em;font-size:1.25em;font-family:sans-serif;color:#000;border-left:solid #000 2px;border-top:solid #000 2px;border-top-left-radius:.5em;background:#fff;opacity:1}tw-debugger select{margin-right:1em;width:12em}tw-debugger button{border-radius:3px;border:solid #999 1px;margin:auto 4px;background-color:#fff;font-size:inherit;color:#000}tw-debugger button.enabled{background-color:#eee;box-shadow:inset #ddd 3px 5px 0.5em}tw-debugger .panel{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:absolute;bottom:100%;left:-2px;right:0;padding:1em;max-height:40vh;overflow-y:scroll;overflow-x:hidden;z-index:999998;background:#fff;border:inherit;border-bottom:solid #999 2px;border-top-left-radius:.5em;border-bottom-left-radius:.5em;font-size:0.8em}tw-debugger .panel:empty,tw-debugger .panel[hidden]{display:none}tw-debugger .panel table{border-spacing:0px}tw-debugger .variable-row{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;flex-shrink:0}tw-debugger .variable-row:nth-child(2n){background:#EEE}tw-debugger .variable-name{display:inline-block;width:50%}tw-debugger .temporary-variable-scope{opacity:0.8;font-size:0.75em}tw-debugger .temporary-variable-scope::before{content:" in "}tw-debugger .global::before{content:"$"}tw-debugger .temporary::before{content:"_"}tw-debugger .variable-path{opacity:0.4}tw-debugger .variable-value{display:inline-block;width:50%}tw-debugger .error-row{background-color:rgba(230,101,204,0.3)}tw-debugger .error-row:nth-child(2n){background-color:rgba(237,145,219,0.3)}tw-debugger .error-row *{padding:0.25em 0.5em}tw-debugger .error-row .error-message{cursor:help}tw-debugger .panel-source{font-family:monospace;overflow-x:scroll;white-space:pre}tw-debugger .tabs{padding-bottom:0.5em}tw-debugger .tab{border-radius:0px 0px 0.5em 0.5em;border-top:none}tw-dialog{z-index:999997;position:fixed;left:auto;right:auto;bottom:auto;top:auto;border:#fff solid 2px;padding:2em;color:#fff;background-color:#000;display:block;max-width:50vw;max-height:75vh;overflow:hidden}tw-dialog input[type=text]{font-size:inherit;width:100%}tw-backdrop{z-index:999996;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.8);display:flex;align-items:center;justify-content:center}tw-link,.link,tw-icon,.enchantment-clickblock{cursor:pointer}tw-link,.enchantment-link{color:#4169E1;font-weight:bold;text-decoration:none;transition:color 0.2s ease-in-out}tw-passage tw-enchantment[style^="color"] tw-link:not(:hover),tw-passage tw-enchantment[style*=" color"] tw-link:not(:hover),tw-passage tw-enchantment[style^="color"] .enchantment-link:not(:hover),tw-passage tw-enchantment[style*=" color"] .enchantment-link:not(:hover){color:inherit}tw-link:hover,.enchantment-link:hover{color:#00bfff}tw-link:active,.enchantment-link:active{color:#DD4B39}.visited{color:#6941e1}tw-passage tw-enchantment[style^="color"] .visited:not(:hover),tw-passage tw-enchantment[style*=" color"] .visited:not(:hover){color:inherit}.visited:hover{color:#E3E}tw-broken-link{color:#993333;border-bottom:2px solid #993333;cursor:not-allowed}tw-passage tw-enchantment[style^="color"] tw-broken-link:not(:hover),tw-passage tw-enchantment[style*=" color"] tw-broken-link:not(:hover){color:inherit}.enchantment-mouseover{border-bottom:1px dashed #666}.enchantment-mouseout{border:rgba(64,149,191,0.25) 1px solid}.enchantment-mouseout:hover{background-color:rgba(64,149,191,0.25);border:transparent 1px solid;border-radius:0.2em}.enchantment-clickblock{box-shadow:inset 0 0 0 0.5vmax;display:block;color:rgba(65,105,225,0.5);transition:color 0.2s ease-in-out}.enchantment-clickblock:hover{color:rgba(0,191,255,0.5)}.enchantment-clickblock:active{color:rgba(222,78,59,0.5)}html{margin:0;height:100%;overflow-x:hidden}*,:before,:after{position:relative;box-sizing:inherit}body{margin:0;height:100%}tw-storydata{display:none}tw-story{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;font:100% Georgia, serif;box-sizing:border-box;width:100%;min-height:100%;font-size:1.5em;line-height:1.5em;padding:5% 20%;margin:0;overflow:hidden;background-color:#000;color:#fff}tw-story br[data-cons]{display:block;height:0;margin:0.8ex 0}tw-story select{background-color:transparent;font:inherit;border-style:solid;padding:2px}tw-story select:not([disabled]){color:inherit}tw-passage{display:block}tw-sidebar{left:-5em;width:3em;position:absolute;text-align:center;display:block}tw-icon{display:block;margin:0.5em 0;opacity:0.2;font-size:2.75em}tw-icon:hover{opacity:0.4}tw-hook:empty,tw-expression:empty{display:none}tw-error{display:inline-block;border-radius:0.2em;padding:0.2em;font-size:1rem;cursor:help}tw-error.error{background-color:rgba(223,58,190,0.4);color:#fff}tw-error.warning{background-color:rgba(223,140,58,0.4);color:#fff;display:none}.debug-mode tw-error.warning{display:inline}tw-error-explanation{display:block;font-size:0.8rem;line-height:1rem}tw-error-explanation-button{cursor:pointer;line-height:0em;border-radius:1px;border:1px solid black;font-size:0.8rem;margin:0 0.4rem;opacity:0.5}tw-error-explanation-button .folddown-arrowhead{display:inline-block}tw-notifier{border-radius:0.2em;padding:0.2em;font-size:1rem;background-color:rgba(223,182,58,0.4);display:none}.debug-mode tw-notifier{display:inline}tw-notifier::before{content:attr(message)}tw-colour{border:1px solid black;display:inline-block;width:1em;height:1em}h1{font-size:3em}h2{font-size:2.25em}h3{font-size:1.75em}h1,h2,h3,h4,h5,h6{line-height:1em;margin:0.3em 0 0.6em 0}pre{font-size:1rem;line-height:initial}small{font-size:70%}big{font-size:120%}mark{color:rgba(0,0,0,0.6);background-color:#ff9}ins{color:rgba(0,0,0,0.6);background-color:rgba(255,242,204,0.5);border-radius:0.5em;box-shadow:0em 0em 0.2em #ffe699;text-decoration:none}center{text-align:center;margin:0 auto;width:60%}blink{text-decoration:none;animation:fade-in-out 1s steps(1, end) infinite alternate;-webkit-animation:fade-in-out 1s steps(1, end) infinite alternate}tw-align{display:block}tw-columns{display:-webkit-box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-justify-content:space-between;justify-content:space-between}tw-outline{color:white;text-shadow:-1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000}tw-shadow{text-shadow:0.08em 0.08em 0.08em #000}tw-emboss{text-shadow:0.08em 0.08em 0em #000;color:white}tw-condense{letter-spacing:-0.08em}tw-expand{letter-spacing:0.1em}tw-blur{color:transparent;text-shadow:0em 0em 0.08em #000}tw-blurrier{color:transparent;text-shadow:0em 0em 0.2em #000}tw-blurrier::selection{background-color:transparent;color:transparent}tw-blurrier::-moz-selection{background-color:transparent;color:transparent}tw-smear{color:transparent;text-shadow:0em 0em 0.02em rgba(0,0,0,0.75),-0.2em 0em 0.5em rgba(0,0,0,0.5),0.2em 0em 0.5em rgba(0,0,0,0.5)}tw-mirror{display:inline-block;transform:scaleX(-1);-webkit-transform:scaleX(-1)}tw-upside-down{display:inline-block;transform:scaleY(-1);-webkit-transform:scaleY(-1)}tw-fade-in-out{text-decoration:none;animation:fade-in-out 2s ease-in-out infinite alternate;-webkit-animation:fade-in-out 2s ease-in-out infinite alternate}tw-rumble{-webkit-animation:rumble linear 0.1s 0s infinite;animation:rumble linear 0.1s 0s infinite;display:inline-block}tw-shudder{-webkit-animation:shudder linear 0.1s 0s infinite;animation:shudder linear 0.1s 0s infinite;display:inline-block}tw-shudder-in{animation:shudder-in 1s ease-out;-webkit-animation:shudder-in 1s ease-out}.transition-in{-webkit-animation:appear 0ms step-start;animation:appear 0ms step-start}.transition-out{-webkit-animation:appear 0ms step-end;animation:appear 0ms step-end}[data-t8n^=dissolve].transition-in{-webkit-animation:appear .8s;animation:appear .8s}[data-t8n^=dissolve].transition-out{-webkit-animation:appear .8s reverse;animation:appear .8s reverse}[data-t8n^=shudder].transition-in{display:inline-block;-webkit-animation:shudder-in .8s;animation:shudder-in .8s}[data-t8n^=shudder].transition-out{display:inline-block;-webkit-animation:shudder-in .8s reverse;animation:shudder-in .8s reverse}[data-t8n^=rumble].transition-in{display:inline-block;-webkit-animation:rumble-in .8s;animation:rumble-in .8s}[data-t8n^=rumble].transition-out{display:inline-block;-webkit-animation:rumble-in .8s reverse;animation:rumble-in .8s reverse}[data-t8n^=boxflash].transition-in{-webkit-animation:box-flash .8s;animation:box-flash .8s}[data-t8n^=pulse].transition-in{-webkit-animation:pulse .8s;animation:pulse .8s;display:inline-block}[data-t8n^=pulse].transition-out{-webkit-animation:pulse .8s reverse;animation:pulse .8s reverse;display:inline-block}[data-t8n^=slideleft].transition-in{-webkit-animation:slide-left .8s;animation:slide-left .8s;display:inline-block}[data-t8n^=slideleft].transition-out{-webkit-animation:slide-right .8s reverse;animation:slide-right .8s reverse;display:inline-block}[data-t8n^=slideright].transition-in{-webkit-animation:slide-right .8s;animation:slide-right .8s;display:inline-block}[data-t8n^=slideright].transition-out{-webkit-animation:slide-left .8s reverse;animation:slide-left .8s reverse;display:inline-block}[data-t8n^=slideup].transition-in{-webkit-animation:slide-up .8s;animation:slide-up .8s;display:inline-block}[data-t8n^=slideup].transition-out{-webkit-animation:slide-down .8s reverse;animation:slide-down .8s reverse;display:inline-block}[data-t8n^=slidedown].transition-in{-webkit-animation:slide-down .8s;animation:slide-down .8s;display:inline-block}[data-t8n^=slidedown].transition-out{-webkit-animation:slide-up .8s reverse;animation:slide-up .8s reverse;display:inline-block}[data-t8n^=flicker].transition-in{-webkit-animation:flicker .8s;animation:flicker .8s}[data-t8n^=flicker].transition-out{-webkit-animation:flicker .8s reverse;animation:flicker .8s reverse}[data-t8n$=fast]{animation-duration:.4s;-webkit-animation-duration:.4s}[data-t8n$=slow]{animation-duration:1.6s;-webkit-animation-duration:1.6s}
</style>
</head>
<body>
<tw-story></tw-story>
<tw-storydata name="you died but i'll make it up to you" startnode="1" creator="Twine" creator-version="2.3.9" ifid="A54C9CFF-FDE4-47DC-B7FA-0404035D5B2E" zoom="1" format="Harlowe" format-version="3.1.0" options="" hidden><style role="stylesheet" id="twine-user-stylesheet" type="text/twine-css">
tw-story {
/* The following changes the text */
color: black; /* Set text to green or other color */
text-shadow: 1px 1px grey; /* Green text shadow */
font-size: 27px;
font-family: "Times New Roman","Helvetica","Arial",sans-serif;
/* Set background to fade lightblue to blue */
background: verydarkblue; /* For old browsers */
;
/* Add a Mars background that will cover the screen */
background-image: url("http://www.ohiofi.com/img/mars.jpg");
background-size: cover;
}
tw-passage {
/* The following changes the text box */
border: 5px groove gray; /* Gray border around the box */
border-radius: 25px; /* Rounded corners on the box */
background: rgba(255,255,255,0.5); /* 30% transparent box */
padding: 25px;
}
tw-link {
color:darkblue; /* Set the link color to darkblue */
transition: color .5s ease-in-out;
}
tw-link:hover { /* Mouse over a link & it turns orange */
color: green;
}
img { /* Images won't get wider than tw-passage container */
max-width: 100%;
}</style><script role="script" id="twine-user-script" type="text/twine-javascript"></script><tw-passagedata pid="1" name="start" tags="" position="635,0" size="100,100">(set: $points to 40)
you have $points points
I'm very sorry but... Let's just get this out of the way. You are dead. i was throwing some lightning bolts around and i accidently hit you. i am very sorry. I will send you to a copy of your world where you didn't die but have powers, to make up for the inconvenience. (there will be fantasy races and magic, details are up to you, more on that later.)
this new world will be normal to everyone around you. you can decide if most of your old life stays the same or if you start somewhere unknown. in that case i will imprint some memories of your new life into you since you will respawn as a 14 year old unless you change this with a power or drawback later on.
**you can not end this game with less than 0 points**
**no, the art is not mine**
(you can roll for every awnser if you want to, but you lose the fun with character/worldbuilding :) )
first off, do you want to respawn as a:
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse1.mm.bing.net%2Fth%3Fid%3DOIP.SaWAzow3FjdcHRoANhPMnwHaL8%26pid%3DApi&f=1" width="150" height="200" alt="male">
[[male]]
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse3.mm.bing.net%2Fth%3Fid%3DOIP.XLNRmJVYrML1V-mK0Ydi2gHaO0%26pid%3DApi&f=1" width="150" height="240" alt="female">
[[female]]
this isn't really my thing but you can also choose to respawn as a
<img src="https://rule34.xxx/thumbnails/3558/thumbnail_6e0ed5f4bf261852793d97062f6e8e9b.jpg?4017230" width="150" height="200" alt="futa">
[[futa]] (yes futa's also have a vagina behind their balls.)</tw-passagedata><tw-passagedata pid="2" name="male" tags="" position="407,20" size="100,100">you have $points points
now you may 'buid' yourself. see it as a character creator just like in those video games you humans play so much. one's you choose you can't change, unless you buy the shapeshifting power later
<img src="https://himg.rule34.xxx//images/3392/da1b44b4e31448b7d0781e25fcbee5df.png?3823398" alt="2 futa">
[[dick size for males]]
<img src="https://img.rule34.xxx//images/3042/0294a8d04bcd48e3b0931821d65fe800.jpeg?3410557" alt="2 futa">
[[clothing for males]]
<img src="https://rule34.xxx//samples/3564/sample_0c98e7e1a2fd911cb9d09e7c59ad61d99890ad0d.jpg?4024868" alt="2 futa">
[[body type for males]]
are you done?
[[yes->worldbuilding]] </tw-passagedata><tw-passagedata pid="3" name="female" tags="" position="806,50" size="100,100">you have $points points
now you may 'buid' yourself. see it as a character creator just like in those video games you humans play so much. one's you choose you can't change, unless you buy the shapeshifting power later
would you like to start with your...
<img src="https://img.rule34.xxx//images/3522/51056cf7eff7680fd32a8a39bfc2e81b.jpeg?3976160" alt="2 futa">
[[ass size for females]]
<img src="https://rule34.xxx//samples/3517/sample_27102a26a99aa46ae051ea8d8f49c95a.jpg?3969694" alt="2 futa">
[[breast size for females]]
<img src="https://img.rule34.xxx//images/3409/ca0ae725ba9ef29da7f502e30bc2ad73.png?3842769" alt="2 futa">
[[thighs size for females]]
<img src="https://img.rule34.xxx//images/3561/a9295e8cf0fccee72a41a3d684c8baca.jpeg?4021494" alt="2 futa">
[[clothing for females]]
anything else that can be added to your body or personality can be bought with points later
are you done?
[are you done?
[[yes->worldbuilding]] </tw-passagedata><tw-passagedata pid="4" name="futa" tags="" position="629,129" size="100,100">you have $points points
now you may 'buid' yourself. see it as a character creator just like in those video games you humans play so much. one's you choose you can't change, unless you buy the shapeshifting power later
would you like to start with your...
<img src="https://img.rule34.xxx//images/3522/51056cf7eff7680fd32a8a39bfc2e81b.jpeg?3976160" alt="2 futa">
[[ass size for futa's]]
<img src="https://rule34.xxx//samples/3517/sample_27102a26a99aa46ae051ea8d8f49c95a.jpg?3969694" alt="2 futa">
[[breast size for futa's]]
<img src="https://img.rule34.xxx//images/3409/ca0ae725ba9ef29da7f502e30bc2ad73.png?3842769" alt="2 futa">
[[thighs size for futa's]]
<img src="https://rule34.xxx//samples/3555/sample_82d3558de6c6765b161f8d8ae7efed66.jpg?4013662" alt="2 futa">
[[dick size for futa's]]
anything else that can be added to your body or personality can be bought with points later
are you done?
[[yes->worldbuilding]] </tw-passagedata><tw-passagedata pid="5" name="the drawbacks" tags="" position="125,861" size="100,100">you have $points points
here are the drawbacks you can choose from. important things you need to know such as the amount of points you get from a drawback are in **bold**
drawbacks have priority over powers so no loopholes that neutralize drawbacks
**only press the "no etc" button if you wish to deselect a drawback or power. if you did not select it in the first place and don't want it just press the return-arrow in the top left corner of your screen**
**upgrades do not require you to have the weaker version of that drawback selected they will select instantly when you click on the upgrade**
go to [[worldbuilding]]
go to [[powers and such]]
<img src="https://rule34.xxx//samples/2828/sample_aa3b99006d1d52ed9aa4ed11f7f428d4.jpg?3155617" alt="2 futa">
[[unnatural sensitivity]]: you will now orgasm from random actions atleast twice a day. these are all everyday actions like sitting down or waving your hand and not with a sex toy like in the image.
**5 points**
<img src="https://rule34.xxx//samples/413/sample_03db5e1f5de1e8d1a45a21b0919953a5.jpg?3934347" alt="2 futa">
[[futadom]]: **do not select if you are a futa or if futa's don't exist in your world! can be upgraded** futa's will be on the top of the social hierarchy. they have more freedom and generally speaking more wealth, positions of power and rights than non-futa's. for example: if one were to sue you for not letting them kick you in your nuts they will win in court. they can also have their way with you whenever they want. most futa's will ignore humans most of the time unless they feel horny or lonely or are just plain sadistic.
**15 points**
<img src="https://img.rule34.xxx//images/3433/af3472c45f6bbc954eb63c2187c7699b.jpeg?3870448" alt="2 futa">
[[futa overpower]]: **do not select if you are a futa or if futa's don't exist in your world! can be upgraded** futa's are generaly speaking physically more powerful, faster and just overall better than non-futa's. they will also be above avarage non-futa IQ. this will make it (even) harder to compete with futa's if they are your classmates or compatitors in sports or the corporate ladder. can be combined with futadom. they will not look more muscular than usual. they just are stronger etc. nothing superhuman.
**10 points**
<img src="https://himg.rule34.xxx//images/3327/de3bb6ac96d7454cd7be8f818071e257.jpeg?3748354" alt="2 futa">
[[random spawn age]]: you will not be able to choose how old you will be when you respawn. the age range is everything between 0 and 55 years old.
**15 points**
<img src="https://img.rule34.xxx//images/3564/f1a5a34bf7de01b629ce32a66f4fbe9e.png?4025224" alt="2 futa">
[[extreme libido]]: **can be upgraded** you will always be horny even a few minutes after orgasm.
**10 points**
<img src="https://rule34.xxx//samples/3563/sample_745f64dddafab8953070e43d1b477884.jpg?4024322" asdf>
[[likely rape victim]]: **can be upgraded** many peoplle will want to rape you, they find it more enjoyable than regular sex with you. increases the chance of getting raped in you life.**5 points**
<img src="https://rule34.xxx//samples/3560/sample_eb4a4717f8039d931e06ae04fac10081b4458e3a.jpg?4020661" asdf> [[sensitivity heightening]]**can be upgraded** will make your pussy/penis/ass more sensitive, this will make you cum very easily, even if the bus shakes a bit too much for example. **5 points**
<img src="https://img.rule34.xxx//images/3553/af334b181a49c416c851f8cbbdec8508.jpeg?4019246" asdf>
[[pregnancy boost]] **do not select if you are a male! can be upgraded** every time you have unprotected sex the chances of you getting pregnant are 75/100. **5 points**
<img src="https://rule34.xxx//samples/3564/sample_7b7b1fca83c5e4b8e7082ed88803e69b62a21074.jpg?4024506" g>
[[magic leash]] you will now have a permanent collar and leash around your neck, everyone who touches it (max 1 person at a time) can order you to do whatever they want you to do. excluding self harm or letting them kill you or give you permanent damage. **15 points**
<img src="https://himg.rule34.xxx//images/3249/fb5becaef81002c1319785305e4433d4.jpeg?3965760" f>
[[easy prey]] it will become common knowledge you are easily hypnotised. **5 points can be upgraded**
<img src="https://rule34.xxx//samples/3516/sample_09c4c57879e6755b9e645930b4ac4e05.jpg?3967669" f>
[[love hurts]] physical and mental pain will turn you on. this is quite dangerous, don't get addicted to cutting yourself! **10 points**
<img src="https://rule34.xxx//samples/3568/sample_e5b46b5909c61582f933af8f86c67434.jpg?4030060" f>
[[birthday suit]] the clothes you wear will slowly become invisible until they are completely invisible. they will still be there. you have to wait 20 hours for you clothes to become 100% visible again. ones you put a piece of clothing on it will begin to dissapear immediatly, you won't notice it for 4 hours after that it will slowly become more obvious. even if you take your clothes of they will still continue to become invisible for the duration of those 8 hours. if you put clothes on that aren't 100% visible again they will start off at the percentage they are at and start to 'disapear'**20 points**
<img src="https://rule34.xxx//samples/3561/sample_9e159f911cd08081c14a414b81a6c697.jpg?4021976" f>
[[sex sells]] or buys. sometimes you can't purchase something from someone and you will have to perfrom a sexual act of somwhat equal value to them to buy the thing you wanted. a pizza slice isn't worth a blowjob, but maybe a kiss or you need to flash the seller. everyone around you will not care in the slightest. **8 points can be upgraded**
</tw-passagedata><tw-passagedata pid="6" name="powers and such" tags="" position="1175,819" size="100,100">you have $points points
here you can spend you points to gain bonuses in your next life.important things you need to know such as the amount of points you get from a drawback are in **bold**
drawbacks have priority over powers so no loopholes that neutralize drawbacks
**only press the "no etc" button if you wish to deselect a drawback or power. if you did not select it in the first place and don't want it just press the return-arrow in the top left corner of your screen**
**upgrades do not require you to have the weaker version of that drawback selected they will select instantly when you click on the upgrade**
go to [[worldbuilding]]
go to [[the drawbacks]]
<img src="https://rule34.xxx/thumbnails/3482/thumbnail_8775af662be7ce81cfc2631240ad8189.jpg?3925578" 2 futa>
[[charisma]]: you will be able to convince nearly anyone to do anything that is considered acceptable in the situation you are in. maybe even some more 'taboo' stuff. you will also be able to convince policemen to let what you did slide as long as you didn't hurt anyone.**-10 points can be upgraded**
<img src="https://rule34.xxx//samples/3447/sample_7e1e900a73832ecc12afc8ed199c48ed5e81e076.jpg?3884845" 2 futa>
[[stop time]]: you will be able to stop time for 2 hours each day, but that will stop if you kill, rob or have sex with someone. oral is also considered sex. **-10 points can be upgraded**
<img src="https://img.rule34.xxx//images/3419/b7e2384e0378ee0e44958b61fd8ee28e.png?3853034" f>
[[attractiveness]] you will be considered a 7/10 by most people. **-5 points can be upgraded**
<img src="https://img.rule34.xxx//images/3351/0627582580d0aca7845b797193707fe3.jpeg?3775451" f>
[[shapeshifting]] you will be able to change your body to anything that is humanly possible for 24 hours, ones you stop the spell or the 24 hours are over you need to wait 42 hours to be able to cast it again. bodybuilder physique? sure! superman's strength? still a no. **-15 points can be upgraded**
<img src="https://rule34.xxx//samples/3471/sample_56d09ff49e76eb1a5c1ef64cf2b5ebc3.jpg?3913536" f>
[[flight]] you will be able to levitate at the speed you normally walk. you can only carry as much as you could normally carry while walking otherwise you'll fall to the ground. you'll be able to levitate 3 meters max above the surface (about 10 feet) **-5 points can be upgraded**
<img src="https://img.rule34.xxx//images/3517/ed947eeeaa58b639bdcb182dbbc36b50.png?3973760" f>
[[hidden talent]] you will be very good at 1 form of art and 1 sport excluding self defence sports. **-7 points can be upgraded**
<img src="https://rule34.xxx//samples/2471/sample_050f3adb1f202f99f7b9d476e68c8fbd.jpg?2740230" f>
[[forever young]] you won't age past the point you want to age, that age is permanent (if you don't upgrade) but you can still die from any other cause. **-10 points can be upgraded**
<img src="https://himg.rule34.xxx//images/3488/7b5b250aecf84d04e2cf1dafee3d78ba.png?3931340" f>
[[untouchable]] you will be extremely resistent to sicknesses and physical harm. it would take an anti-tank rifle to the face to kill you in 1 hit. if you manage to get hurt, this won't make you be able to regrow limbs or heal faster. **-10 points can be upgraded**
<img src="https://rule34.xxx//samples/3243/sample_b72a70caee6e766e8b04491adaa4d1e6.jpg?3646166" f>
[[normalize]] you will be able to make everyone in the room you are in think what you do is completely normal unless you hurt them in any way, than the spell will stop. beware of large windows. **-10 points can be upgraded**
<img src="https://himg.rule34.xxx//images/1059/47ec5a42e7452e7ada63144c79a5da14880eaa03.jpg?1058877" f>
[[public]] the same as normalize but you can do it outside now. **-10 points can be upgraded**
<img src="https://img.rule34.xxx//images/3566/d5b8e1bdc1266c46518ced8ce9929cae.jpeg?4027130" f>
[[domination switch]] you can make anyone who has sex with you out of their own free will more dominating or submissive, effect wears of when you leave the bedroom. **-8 points can be upgraded**
<img src="https://img.rule34.xxx//images/3132/1a8b1817cbb44399e54bceecc78f360a.jpeg?3517894" f>
[[name calling]] when you say someone's name to them (yes they need to hear you say it face to face) they will become aroused and start to like you more the more you say it to them. can be turned off at will. **-5 points can be upgraded**
<img src="https://img.rule34.xxx//images/3562/c36b19c857f958805e7219c3b8f1b74f.jpeg?4023122" g>
[[inbetween]] you can now make your dick or pussy dissapear or appear at will. for those who don't want a dick at the moment they are getting fucked **-5 points futa's only**
<img src="https://img.rule34.xxx//images/3568/79c7365d9940fda56aa6a98fc8da4aca.png?4030435" f>
[[shorter pregnancies]] your kids will be born after only 5 months **-5 points can be upgraded**
<img src="https://img.rule34.xxx//images/3418/6197910c9b5b7da8c07be5bfee781a27.jpeg?3852019" f>
[[race traitor]] you can now switch between human and 2 other races at will. **-15 points**
see [[list of races]]
</tw-passagedata><tw-passagedata pid="7" name="futadom" tags="" position="120,989" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/1365/sample_dc01ef28b034a5446cc41b8a378161a2.jpg?2708068" asdf>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 15)
(set: $points to $points + $drop)
upgrade: [[futadom2]] this will make every human a second class citizen even if they outnumber the futa's. futa's will have the rights to do whatever they want to any human they see and they will be a lot more likely to do so as in futadom1 most futa's would just ignore most humans. humans won't become slaves but they can't use as many public services and must pay more taxes etc. **5 points + the points from the previous version**
[[no futadom]]
[[no futadom2]]
[[no futadom3]]</tw-passagedata><tw-passagedata pid="8" name="futa overpower" tags="" position="236,986" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3459/sample_eb97a215a5bda2eb5b2f3b1c587cf1de.jpg?3913320" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop)
upgrade:[[futa overpower2]] futa's will become far superior to other humans. they won't be superman but they will outclass you in everything you do, they could easily take on the best male boxer in the world and than do that 10 times over with their bare hands. they will also be a lot smarter than normal humans. all futa's have big dicks,asses,thighs and boobs no matter age or size.**5 extra points**
[[no futa overpower]]
[[no futa overpower2]]
[[no futa overpower3]]</tw-passagedata><tw-passagedata pid="9" name="random spawn age" tags="" position="349,988" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3565/sample_2c4dd9dad9b77e6665667626a212f1a5.jpg?4026627" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 15)
(set: $points to $points + $drop)
[[no random spawn age]]</tw-passagedata><tw-passagedata pid="10" name="unnatural sensitivity" tags="" position="3,994" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3558/f208341e4db8a867d35f1192ab0cd62e.png?4017327" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
[[no unnatural sensitivity]]</tw-passagedata><tw-passagedata pid="11" name="extreme libido" tags="" position="466,983" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/340/e8a5e77689d2b9f87ee48edfff7fd187.jpeg?3972894" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop)
upgrade:[[extreme libido2]] you will need to have sex multiple times a day or you'll go crazy and if you ignore this urge you will nonstop masturbate no matter where you are until you orgasm. **five extra points**
[[no extreme libido]]
[[no extreme libido2]]
[[no extreme libido3]]
[[no extreme libido4]]</tw-passagedata><tw-passagedata pid="12" name="charisma" tags="" position="1308,825" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3113/d7be3b02fb21ed1c795c7b7dca417522.jpeg?3496341" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[charisma2]] you can convince anyone to do anything that they have atleast ones had a thought about/done before. **-7 extra points**
[[no charisma]]
[[no charisma2]]
[[no charisma3]]</tw-passagedata><tw-passagedata pid="13" name="futa options" tags="" position="697,563" size="100,100">you have $points points
but do you want there to be futa's? if so, what percentage of the world population must be futa? **no points can be gained or lost here**
<img src="https://img.rule34.xxx//images/3432/db92090eb4dc0fc7da32689b79d28d7f.png?4029919" a>
[[no futa's->worldbuilding]]
<img src="https://rule34.xxx//samples/3517/sample_0731f7a553305c188be93683cbd6eee8.jpg?3969849" a>
[[10%->worldbuilding]]
<img src="https://rule34.xxx//samples/3558/sample_9b134b6a4941691d69fbc2ba304758d1.jpg?4017334" a>
[[33,33%->worldbuilding]]
<img src="https://img.rule34.xxx//images/3559/3b5aed406644d82348da9dabe977818d.jpeg?4020156" >
[[50%->worldbuilding]]
<img src="https://rule34.xxx//samples/3264/sample_1a7263a35007dcffa8fe5f642eda5829.jpg?4029683" >
[[80%->worldbuilding]]
<img src="https://rule34.xxx//samples/3503/sample_fdc034955c6f08fcd6d9df407b076461d6629691.jpg?3950476" g>
[[100%->worldbuilding]] (everyone but me)</tw-passagedata><tw-passagedata pid="14" name="futa options for a futa" tags="" position="513,573" size="100,100">you have $points points
uhm... ok whatver.
what percentage of the world population is Futa?
**no points can be gained or lost here**
<img src="https://rule34.xxx//samples/3566/sample_19c911a363925c7e298e7a2cfac5e6db.jpg?4027580" s>
[[only me->worldbuilding]]
<img src="https://rule34.xxx//samples/3517/sample_0731f7a553305c188be93683cbd6eee8.jpg?3969849" a>
[[10%->worldbuilding]]
<img src="https://rule34.xxx//samples/3558/sample_9b134b6a4941691d69fbc2ba304758d1.jpg?4017334" a>
[[33,33%->worldbuilding
<img src="https://img.rule34.xxx//images/3559/3b5aed406644d82348da9dabe977818d.jpeg?4020156" >
[[50%->worldbuilding]]
<img src="https://rule34.xxx//samples/3264/sample_1a7263a35007dcffa8fe5f642eda5829.jpg?4029683" >
[[80%->worldbuilding]]
<img src="https://rule34.xxx//samples/3503/sample_fdc034955c6f08fcd6d9df407b076461d6629691.jpg?3950476" g>
[[100%->worldbuilding]]</tw-passagedata><tw-passagedata pid="15" name="body type for males" tags="" position="354,139" size="100,100">you have $points points
<img src="https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2Fi.stack.imgur.com%2FwTWJG.jpg&f=1&nofb=1" cloth>
[[normal male body]]
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse4.mm.bing.net%2Fth%3Fid%3DOIP.QnTySyNcqwllxfmUB773UgHaEK%26pid%3DApi&f=1" cloth>
[[fat male body]] **5 points** you'd do this to yourself for 5 meager points? well if you really need them.
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fi.ytimg.com%2Fvi%2FYAn8FVUp090%2Fmaxresdefault.jpg&f=1&nofb=1" cloth>
[[muscular male body]] **-7 points**</tw-passagedata><tw-passagedata pid="16" name="ass size for futa's" tags="" position="517,268" size="100,100">you have $points points
<img src="https://himg.rule34.xxx//images/3130/ae301e8f28aea935568e6d47cf5a16bba2fd7706.jpg?3515556" iets>
[[small futa ass]] **5 points** why tho?
<img src="https://himg.rule34.xxx//images/2579/55d18c52da9cc538c9edd4f5ed9e3a7b6586ae4b.jpg?2864509" iets>
[[kinda big futa ass]]
<img src="https://rule34.xxx//samples/3446/sample_20bf7338389904da557a3cf435d276cb.jpg?3888227" iets>
[[huge futa ass]] **-5 points**</tw-passagedata><tw-passagedata pid="17" name="breast size for futa's" tags="" position="756,269" size="100,100">you have $points points
<img src="https://himg.rule34.xxx//images/3546/d163a70a8bfa223adf8213c8df8a9cc3.jpeg?4003287" sdka>
[[small futa boobs]] **5 points**
<img src="https://rule34.xxx//samples/3551/sample_ac772046758b041696cde17acd0d1a53.jpg?4009115" sdka>
[[cup b,c,d or e futa boobs]] **-5 points**
<img src="https://rule34.xxx//samples/3563/sample_a8ee908151e969b7f2abd9dc9cbbe0a1.jpg?4024216" sdka>
[[anything above e futa boobs]] **-7 points**</tw-passagedata><tw-passagedata pid="18" name="thighs size for futa's" tags="" position="633,265" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/2947/sample_4bbdae7a6a083433f9bd2456d02c21b8deab4c80.jpg?3293367" iskd>
[[small futa]] **+5 points**
<img src="https://rule34.xxx//samples/3495/sample_f4b96bd4ead0826e1255de32d88eae57.jpg?3939389" iskd>
[[thick futa]] **-3 points**
<img src="https://img.rule34.xxx//images/1464/2f8f173c914d5263e1c559a0850632c9b5508392.png?1542986" iskd>
[[huge futa]] **-5 points**</tw-passagedata><tw-passagedata pid="19" name="dick size for futa's" tags="" position="633,389" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3563/sample_fbccdd2263228440cc1c42738003b6fc.jpg?4023842" 2 futa>
[[small futa dick]] **5 points** useless, but whatever floats your boat.
<img src="https://himg.rule34.xxx//images/3551/cb94fe4052c27ba178ae129c12d7a238.jpeg?4009489" 2 futa>
[[normal futa dick]]
<img src="https://rule34.xxx//samples/3497/sample_21f56adb112bda5418390a16e53f447c.jpg?3941410" 2 futa>
[[big futa dick]] **-5 points**
<img src="https://img.rule34.xxx//images/3563/fa60641958769d567eb04247b1973985.jpeg?4023627" 2 futa>
[[huge futa dick]] **-8 points**</tw-passagedata><tw-passagedata pid="20" name="ass size for females" tags="" position="977,57" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3520/77b00d796a21c2ff263f51ec3b6db5fd.png?3974425" iets>
[[smal ass]] **+5 point**
<img src="https://himg.rule34.xxx//images/3559/057a520bf0c1713d55863bfc97a116c8.png?4020137" iets>
[[kinda big ass]]
<img src="https://rule34.xxx//samples/3503/sample_e90b33f07dabd11b859a0e87decb234d.jpg?3950372" iets>
[[huge ass]] **-5 points**</tw-passagedata><tw-passagedata pid="21" name="breast size for females" tags="" position="1101,188" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3557/6d6a08b74034758572ae4ea8b846c149.jpeg?4016477" sdka>
[[small female]]
**+ 5 points** if you're into this
<img src="https://himg.rule34.xxx//images/3441/b6d14dccef000748232a7d98ea1cd89fdc91c952.jpg?3878979" sdka>
[[cup b,c,d or e female]]
**-5 points**
<img src="https://img.rule34.xxx//images/3547/b2f2dd75d1d6fe9d11d870e54768398b.jpeg?4024438" sdka>
[[anything above e cup female]]
**-7 points**</tw-passagedata><tw-passagedata pid="22" name="thighs size for females" tags="" position="980,185" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3564/sample_f06ff2f6cf08b2ab156a6d151bf51ada.jpg?4025341" iskd>
[[small thighs]] **+ 5 points**
<img src="https://himg.rule34.xxx//images/3563/149cb96b1d852cbdb15543eb2beb1966.jpeg?4023436" iskd>
[[thick thighs]] **-3 points**
<img src="https://himg.rule34.xxx//images/3564/dfaed0c70f68254c877e751ce4341e89.png?4025078" iskd>
[[huge thighs]] **-5 points**</tw-passagedata><tw-passagedata pid="23" name="clothing for females" tags="" position="1117,61" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3563/43ae1acbc6248d4905663285829498fe.jpeg?4024471" iest>
[[normal female]]
**-5 points**
<img src="https://rule34.xxx//samples/3553/sample_22c362f457429a6a2d8d252d219203fd.jpg?4019227" iest>
[[skirts only female]]
**+5 points** the superior choose of course. you still get upper body clothing of course. no pants or jeans tho.
<img src="https://rule34.xxx//samples/3561/sample_3edfa3cbb5b7c342eb77b9fed93e14e2c4864342.jpg?4022176" iest>
[[bodysuits female]]
**+5 points** also makes people more likely to want to do kinky things with/to you
</tw-passagedata><tw-passagedata pid="24" name="dick size for males" tags="" position="100,146" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3496/sample_fc4abdbafd5e00e49fef34b188a0d727.jpg?3941187" 2 futa>
[[small male dick]] why tho? **5 points**
<img src="https://img.rule34.xxx//images/3556/2d8a33eb78f4c05a670ce68b8f28bfb3.jpeg?4014236" 2 futa>
[[normal male dick]]
<img src="https://img.rule34.xxx//images/3556/62f1f9fb91f23684e75a597bc0d60239.jpeg?4014437" 2 futa>
[[big male dick]] **-5 points**
<img src="https://img.rule34.xxx//images/3354/ff4e47e701ce7e067d35796d73990ba3.jpeg?3778342" 2 futa>
[[huge male dick]] **-8 points**</tw-passagedata><tw-passagedata pid="25" name="clothing for males" tags="" position="232,146" size="100,100">you have $points points
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fs-media-cache-ak0.pinimg.com%2F736x%2F4a%2F80%2F46%2F4a80461f5014b4de920bde09f03cc605.jpg&f=1&nofb=1" cloth>
[[normal male clothes]]
<img src="https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2Fwww.wallpapermaiden.com%2Fimage%2F2016%2F06%2F04%2Fanime-guys-boy-school-uniform-1-resized.jpg&f=1&nofb=1" cloth>
[[anime school uniform male]] **-3 points**</tw-passagedata><tw-passagedata pid="26" name="likely rape victim" tags="" position="618,1301" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/2198/sample_011071808049d16bdb7c260f66902957.jpg?2385531" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[likely rape victim2]] will make people want to have sex with you constantly, they still won't show any signs except for when they actually rape you, you will still be able to defend yourself if you aren't neutrazlized by for example heightened sensitivity. you **will** be raped a few times in your life. **five extra points**
[[no likely rape victim]]
[[no likely rape victim2]]
[[no likelu rape victim3]]
[[no likely rape victim4]]
[[no likely rape victim5]]</tw-passagedata><tw-passagedata pid="27" name="sensitivity heightening" tags="" position="767,1302" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3566/sample_fdb3075863cf2971bd267a0794bff642.jpg?4026695" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade: [[sensitivity heightening2]] this will make you very sensitive to sexual acts. you cum multiple times during sex if you are female, if you use your penis as a futa or male you will cum very quickly and a bit more than normaly. you might need to pick the "endless sex" power to make sex feel satisfying to everyone involved if you wish to use a penis.**8 extra points**
[[no sensitivity heightening]]
[[no sensitivity heightening2]]
[[no sensitivity heightening3]]</tw-passagedata><tw-passagedata pid="28" name="pregnancy boost" tags="" position="903,1304" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3566/sample_5cfbde725e80c6357112d308357d9e464d0e0be1.jpg?4026802" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[pregnancy boost2]] everytime you get pregnant you will have a 50/50 chance to get a twin or just one kid. also everytime you get creampied with unprotected sex you will get pregnant.*7 extra points*
[[no pregnancy boost]]
[[no pregnancy boost2]]
[[no pregnancy boost3]]
[[no pregnancy boost4]]
[[no pregnancy boost5]]</tw-passagedata><tw-passagedata pid="29" name="no unnatural sensitivity" tags="" position="4,1234" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="30" name="no futadom" tags="" position="8,1354" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="31" name="no futa overpower" tags="" position="13,1463" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="32" name="no random spawn age" tags="" position="8,1572" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="33" name="no extreme libido" tags="" position="8,1696" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="34" name="no likely rape victim" tags="" position="8,1815" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="35" name="no sensitivity heightening" tags="" position="607,1186" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="36" name="no pregnancy boost" tags="" position="6,1928" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="37" name="futadom2" tags="" position="126,1124" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/1555/sample_6a28336d87c15e22a73307fe3e0a7a3c.jpg?2708004" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade: [[futadom3]] this will make every human a slave of a futa. every human family and their offspring will belong to a futa family or just futa's as a collective, making humans slaves of all futa's **5 points + the points from the weaker version**
</tw-passagedata><tw-passagedata pid="38" name="futadom3" tags="" position="124,1274" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3322/sample_0bc5ccdaa3e0af62b315693d495f823b.jpg?3740804" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
</tw-passagedata><tw-passagedata pid="39" name="no futadom2" tags="" position="11,2115" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -35)
(set: $points to $points + $drop)
</tw-passagedata><tw-passagedata pid="40" name="no futadom3" tags="" position="9,2224" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -40)
(set: $points to $points + $drop)
</tw-passagedata><tw-passagedata pid="41" name="extreme libido2" tags="" position="472,1122" size="100,100">you have $points points
<img src="" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[extreme libido3]] you will need to orgasm atleast 20 times a day, and half of those orgasms must be caused by sex. if you don't you will masturbate for 5 hours straight even if you have a refractionary period **five extra points**</tw-passagedata><tw-passagedata pid="42" name="no extreme libido2" tags="" position="141,1406" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -25)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="43" name="no extreme libido3" tags="" position="140,1528" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="44" name="no extreme libido4" tags="" position="145,1645" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -40)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="45" name="extreme libido3" tags="" position="472,1272" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3496/sample_fdb8014a685f30fd75c3266520e5a165.jpg?3940498" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[extreme libido4]] you need to be stimulated 24/7. it will be very difficult getting anything done, we suggest a servant or a sex toy that can cause a lot of orgasms. if you don't get stimulated by either a person, yourself or a toy 24/7 your hands will do it for you dropping everything they were doing in an instant until you start fucking, vibrating etc again. **ten extra points**</tw-passagedata><tw-passagedata pid="46" name="extreme libido4" tags="" position="472,1422" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3530/sample_08ee60c31869ecfcbb43ec7d8ae278e9.jpg?3985370" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="47" name="likely rape victim2" tags="" position="619,1447" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3567/sample_674ffdd351b2527639e9c8692ba5e2a3.jpg?4027715" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[likely rape victim3]] you will be raped atleast 20 times in your life and you will be unable to defend youself in any way, this includes calling the police or any help. you might even enjoy it a few times. people still won't show any signs that they want to rape you until they actually do.**5 extra points**</tw-passagedata><tw-passagedata pid="48" name="no likely rape victim2" tags="" position="147,1758" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -15)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="49" name="no likelu rape victim3" tags="" position="152,1874" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="50" name="no likely rape victim4" tags="" position="151,1993" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -28)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="51" name="likely rape victim3" tags="" position="619,1597" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3564/769394506a4701ccdda7f8efb8df5f2e.jpeg?4024617" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[likely rape victim4]] you can be raped in public even when you are busy. you may not defend yourself and you will enjoy 50% of all rapes. you may still go on and do what you need to do but the rapist will not stop. you won't get fired if you get raped while working or anything like that. onlookers won't even raise an eyebrow and will act like you aren't being raped in front of them. they will not be mad if you are an inconvenience to them while being raped . you will be raped atleast ones a week. rapists will also stop using any condoms (on you) **8 extra points**</tw-passagedata><tw-passagedata pid="52" name="likely rape victim4" tags="" position="687,1742" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3399/676c43d427e608317be2ed82c0f07f07.jpeg?3831878" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 8)
(set: $points to $points + $drop)
upgrade:[[likely rape victim5]] you will be raped atleast ones a day and you will enjoy every second of it. the rapist will rape you whenever they want and wherever they want. you still won't get in trouble. you can't get raped more than 15 times a day. animals will know also rape you, only including animals of the correct size, dogs and wolves for example, can get you pregnant if you are a female/futa and upgraded the pregnancy boost drawback a few times. if you have the "stretch" power, animals of a size that would normally be too big for you will now fit. **10 extra points**</tw-passagedata><tw-passagedata pid="53" name="no likely rape victim5" tags="" position="155,2111" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -38)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="54" name="likely rape victim5" tags="" position="698,1891" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/1884/sample_19df904e457d590d6b56b684e4cd5fed.jpg?2039333" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="55" name="sensitivity heightening2" tags="" position="768,1451" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3565/a6c6dd4e92520397d4baa2f47888b70a.png?4025572" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 8)
(set: $points to $points + $drop)
upgrade:[[sensitivity heightening3]] you will cum endlessly during sex and even a hug or headpat makes you hard/wet. a kiss will make you produce precum/lactate and drooling wet. you will never pass out from sex, you will always hear,feel,see etc everything around you as usual, however, you can loose control of you limbs making your control too weak to move them around enought to move for a period of time.**10 extra points**</tw-passagedata><tw-passagedata pid="56" name="no sensitivity heightening2" tags="" position="360,1130" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -18)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="57" name="no sensitivity heightening3" tags="" position="351,1250" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -28)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="58" name="sensitivity heightening3" tags="" position="768,1601" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3547/sample_0e7acce795c853b634502d1ee1fe2455.jpg?4005023" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="59" name="pregnancy boost2" tags="" position="896,1441" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3178/sample_e519f6915b6c36a3ecc122cc3abc2c7c.jpg?3570308" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop)
upgrade:[[pregnancy boost3]] you will have a 25/25/25/25 chance to get either 3,4,5 or 6 kids every pregnancy. you can also get pregnant by animals who will be sexually atracted to you but won't have sex with you unless you let them. **animals can only give you 1 kid at a time and you will still be pregnant with this kid for 9 months. the kid will be a human with animal traits like a catgirl for example** if rapists leave you neutralized by heighthened sensitivity, animals will see you as willing to have sex since you can't refuse them in any way. if you can still think straight you can just say no to the animals and they'll leave. **7 extra points and yes your body can function just as good as any pregnant woman/futa even while carrying a higher number of kids.** this is a free bonus</tw-passagedata><tw-passagedata pid="60" name="no pregnancy boost2" tags="" position="1022,1300" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -17)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="61" name="no pregnancy boost3" tags="" position="1020,1440" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -24)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="62" name="no pregnancy boost4" tags="" position="1027,1560" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -29)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="63" name="no pregnancy boost5" tags="" position="1035,1692" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -44)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="64" name="pregnancy boost3" tags="" position="896,1591" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3454/sample_316898e807c37bbcc8f5b51ecbf1f768.jpg?3893563" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop)
upgrade:[[pregnancy boost4]] you will get pregnant even if you use birth control or a condom 100% of the time. the rules of how many kids you will get now also apply to animals. the same 25/25/25/25 rule.**5 extra points**</tw-passagedata><tw-passagedata pid="65" name="pregnancy boost4" tags="" position="896,1741" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3268/f1eb57ed4e1f4254c84024e0d0f7058b.jpeg?3677372" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[pregnancy boost5]] even while you are pregnant with whatever creampied you, you will get pregnant on top of that other pregnancy with whatever creampied you this time there are no limits on the amount of pregnancies you can have at the same time. the amount of kids you will carry will now equally varry between 3,4,5,6,7 or 8 from 1 creampie. **no matter how many kids you are carrying your belly won't ever grow to a size that makes functioning as a human impossible**. **15 extra points**</tw-passagedata><tw-passagedata pid="66" name="pregnancy boost5" tags="" position="896,1891" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/2949/sample_8640030cec246de26c4909f0c2549ded.jpg?3395506" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 15)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="67" name="futa overpower2" tags="" position="246,1117" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3549/7971cd92475288239e955ca54bb825ee.png?4017983" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[futa overpower3]] a single futa could beat the combined effort of every normal human (without your powers) in anything they do. they aren't above the law and can still be arrested as long as you don't pick futadom. out of their own kindness they will arrest their own kind to serve justice. too bad they can still do anything they want to you as long as no other futa(cop) shows up to save you. all futa's have either huge or big dicks. they will always fit if the futa wants it to. **7 extra points**</tw-passagedata><tw-passagedata pid="68" name="no futa overpower2" tags="" position="256,1387" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -25)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="69" name="no futa overpower3" tags="" position="357,1381" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -32)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="70" name="futa overpower3" tags="" position="246,1267" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3485/sample_f740f70aa11d2a90faffe0ddac8aca79.jpg?3928841" f>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="71" name="stop time" tags="" position="1315,946" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3257/35ab5ceb956b3592c7048e213e26628a.jpeg?3673316" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[stop time2]] you will now be able to rob people and stores etc without the time stop stopping, you can now stop time for 5 hours a day. if you rob someone and they see you have it now they will assume they dropped it and ask you to give it back. the charisma power can make them accept a "no" and charisma2 will make them accept a "no" even if you stole something that was of extreme value (to them) **-8 extra points**
[[no stop time]]
[[no stop time2]]
[[no stop time3]]</tw-passagedata><tw-passagedata pid="72" name="charisma2" tags="" position="1431,821" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3566/sample_91bab13af81a4adbbfc3158306344e5e.jpg?4026696" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop)
upgrade:[[charisma3]] you will be able to convince anyone to do anything you want if you manage to hold eye contact for 1 minute. if that fails you can either try again or use charisma2 which doesn't require eye contact but just words but is limited in possibilities. **-10 extra points**</tw-passagedata><tw-passagedata pid="73" name="no charisma" tags="" position="1346,1488" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="74" name="no charisma2" tags="" position="1349,1597" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 27)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="75" name="no charisma3" tags="" position="1350,1709" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 37)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="76" name="charisma3" tags="" position="1546,826" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3566/sample_41ac491c0b67537c0afd83a9cd3ad503.jpg?4027347" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="77" name="stop time2" tags="" position="1435,946" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3450/sample_b6a6844b4f2088b500147fe66842f8f6.jpg?3889000" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop)
upgrade:[[stop time3]] you can now do everything you want to do in a time stop and you can stop time for 12 hours a day, you also won't get hungry or need more sleep if you spend a lot of time in the time stopped zone. people won't ever find out you killed the person you killed because you don't leave fingerprints and such behind. also counts for rape unless you get her pregnant. **-10 extra points**</tw-passagedata><tw-passagedata pid="78" name="no stop time" tags="" position="1459,1470" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="79" name="no stop time2" tags="" position="1467,1599" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 27)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="80" name="no stop time3" tags="" position="1468,1708" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 37)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="81" name="stop time3" tags="" position="1556,946" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3172/80ed2341ee7a9a27c34e64e99fe9cdef.jpeg?3563796" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="82" name="magic leash" tags="" position="0,874" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 15)
(set: $points to $points + $drop)
[[no magic leash]]</tw-passagedata><tw-passagedata pid="83" name="no magic leash" tags="" position="1,752" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="84" name="attractiveness" tags="" position="1310,699" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3498/40c11a54c0ec2c63309ed8d6d2cfd380b31a9d4b.jpg?3942711" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
<img src="https://rule34.xxx//samples/3521/sample_5d8ca64f6a1fbf8c16a722d796b135af.jpg?3975384" f>
upgrade:[[attractiveness2]] everyone will rate you a 9/10. **-7 extra points**
[[no attractiveness]]
[[no attractiveness2]]
[[no attractiveness3]]</tw-passagedata><tw-passagedata pid="85" name="shapeshifting" tags="" position="1314,1065" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3440/sample_52bac372c78be13d73e7257cc51f495c.jpg?3878176" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -15)
(set: $points to $points + $drop)
upgrade:[[shapeshifting2]] you will now be able to change your appearance into anything, your imagination is the limit. no physics apply even though you can't give yourself superpowers. for example, you can't grow wings and use them to fly. this only changes your appearance. it can give you slight bonusses like giving yourself hardened skin etc. you can only hold this form for 24 hours, than you need to wait 42 hours to be able to use this power again. during this 24 hour period you can change any part of your body at will. does not heal wounds or stuff like that. **-15 points**
[[no shapeshifting]]
[[no shapeshifting2]]
[[no shapeshifting3]]</tw-passagedata><tw-passagedata pid="86" name="attractiveness2" tags="" position="1435,697" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3244/sample_81a009a16b9d14eaf212aa389b24e2e27520bbc4.jpg?3966172" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop)
upgrade:[[attractiveness3]] everyone will think you are the most beautiful person they ever saw, makes gay people straight and vise versa. great for persuasion. **-8 extra points**</tw-passagedata><tw-passagedata pid="87" name="no attractiveness" tags="" position="1590,1472" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="88" name="no attractiveness2" tags="" position="1591,1587" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 17)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="89" name="no attractiveness3" tags="" position="1589,1704" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 25)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="90" name="attractiveness3" tags="" position="1558,697" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3318/sample_ba4e1456f8d3f8ab1833733f745d7f13.jpg?3735946" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -8)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="91" name="shapeshifting2" tags="" position="1430,1066" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3563/2a953afc2c41959571c8a8e7382b54d1.jpeg?4023693" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -15)
(set: $points to $points + $drop)
upgrade:[[shapeshifting3]] everything you can do to yourself during those 24 hours you can now also do to other people if they want that of their own free will. you can't turn someone in a rock for a day if they don't want that. **-5 points**</tw-passagedata><tw-passagedata pid="92" name="no shapeshifting" tags="" position="1704,1478" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="93" name="no shapeshifting2" tags="" position="1708,1590" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 45)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="94" name="no shapeshifting3" tags="" position="1709,1705" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 50)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="95" name="shapeshifting3" tags="" position="1550,1068" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3384/sample_0e8b19f1ca8658e2cd01649c2f0935c7.jpg?3814980" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="96" name="flight" tags="" position="1312,592" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3553/ce65f1c400328ab4b2e45340cc0e3c36.png?4011792" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
upgrade:[[flight2]] you will now be able to fligh as fast as you can go on a bike, no you won't get tired. you will be able to carry a bit more than usual. **-5 extra points**
[[no flight]]
[[no flight2]]
[[no flight3]]</tw-passagedata><tw-passagedata pid="97" name="hidden talent" tags="" position="1312,486" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3402/374faf4dd6559ccb16d597b199472fba.png?3835220" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop)
upgrade: [[hidden talent2]] you will now be a master at 2 forms of art and 2 sports including self defence. **-7 extra points**
[[no hidden talent]]
[[no hidden talent2]]</tw-passagedata><tw-passagedata pid="98" name="forever young" tags="" position="1323,1285" size="100,100">you have $points points
<img src="https://himg.rule34.xxx//images/3537/b941bcde6f30cf6d3a8632ac1d85c901.jpeg?3993123" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[forever young2]] you can change your age at will. your body type changes with that. **-10 extra points**
[[no forever young]]
[[no forever young2]]
[[no forever young3]]</tw-passagedata><tw-passagedata pid="99" name="untouchable" tags="" position="1320,1172" size="100,100">you have $points points
<img src="https://himg.rule34.xxx//images/3480/1bdb5e00beb03b0eed5972f3e84bd5fd.jpeg?3922545" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[untouchable2]] only you will be able to kill yourself out of your own free will. nothing can hurt you, nukes barely scratch you. you will also be unable to feel pain (optional, can be turned on if you're into that) you will still feel a bullet for example hit you, it will just feel like someone poked your shoulder to get your attention. **-20 points**
[[no untouchable]]
[[no untouchable2]]</tw-passagedata><tw-passagedata pid="100" name="hidden talent2" tags="" position="1421,489" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3501/sample_9217feaff55bd3bf9695d955924e6627.jpg?3947531" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="101" name="no hidden talent" tags="" position="1818,1485" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 14)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="102" name="no hidden talent2" tags="" position="1829,1604" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 21)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="103" name="flight2" tags="" position="1437,593" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3537/sample_2bc5df1c59e991cf266de50d2fd43037.jpg?3993155" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
upgrade:[[flight3]] you will now be able to fly as fast as a race car and 20 meters above the surface, if you hit something that's taller than 20 meters you will crash into it and not teleport to 20 meters above that building. you will be able to carry 3 times as much as usual. **-10 extra points**</tw-passagedata><tw-passagedata pid="104" name="no flight" tags="" position="1940,1484" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="105" name="no flight2" tags="" position="1942,1597" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 15)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="106" name="no flight3" tags="" position="1944,1709" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 25)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="107" name="flight3" tags="" position="1556,585" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3514/702f6ed334a3f0bd7f227f152636086d43ba6726.jpg?3962647" a>
(yes i know this is higher than you can go with that power, idc nice pic)
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="108" name="untouchable2" tags="" position="1436,1181" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3558/sample_7bca27fea1a163bcebe7919205554784.jpg?4017195" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="109" name="no untouchable" tags="" position="2057,1483" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="110" name="no untouchable2" tags="" position="2052,1598" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 40)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="111" name="forever young2" tags="" position="1447,1287" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3551/267bba40d4fd9ced167d4f75582df071.jpeg?4009812" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[forever young3]] you can change anyone's age if they consent to it. unlike you, they will die at the date they normally would've died from old age, if they don't die before that moment. they will simply not look like they are as old as they are. **-10 extra points**</tw-passagedata><tw-passagedata pid="112" name="no forever young" tags="" position="2172,1488" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="113" name="no forever young2" tags="" position="2162,1597" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="114" name="no forever young3" tags="" position="2164,1711" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 40)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="115" name="forever young3" tags="" position="1571,1291" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3565/sample_8b34eb415fe582159b696bba3d68c644.jpg?4026171" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="116" name="smal ass" tags="" position="1257,0" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="117" name="kinda big ass" tags="" position="1365,0" size="100,100">you have $points points
are you sure?
[[yes->female]]
</tw-passagedata><tw-passagedata pid="118" name="huge ass" tags="" position="1472,5" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="119" name="normal female" tags="" position="1257,108" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="120" name="skirts only female" tags="" position="1374,111" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="121" name="bodysuits female" tags="" position="1498,106" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="122" name="small thighs" tags="" position="1247,218" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="123" name="thick thighs" tags="" position="1367,221" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -3)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="124" name="huge thighs" tags="" position="1497,217" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="125" name="small female" tags="" position="1260,327" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="126" name="cup b,c,d or e female" tags="" position="1379,323" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="127" name="anything above e cup female" tags="" position="1512,319" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="128" name="small futa" tags="" position="894,305" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="129" name="thick futa" tags="" position="1012,305" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -3)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="130" name="huge futa" tags="" position="1127,310" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="131" name="small futa ass" tags="" position="885,418" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="132" name="kinda big futa ass" tags="" position="1017,416" size="100,100">you have $points points
are you sure?
[[yes->female]]
</tw-passagedata><tw-passagedata pid="133" name="huge futa ass" tags="" position="1133,420" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="134" name="small futa boobs" tags="" position="901,536" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="135" name="cup b,c,d or e futa boobs" tags="" position="1018,526" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="136" name="anything above e futa boobs" tags="" position="1134,529" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="137" name="small futa dick" tags="" position="878,643" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="138" name="normal futa dick" tags="" position="982,639" size="100,100">you have $points points
are you sure?
[[yes->female]]
</tw-passagedata><tw-passagedata pid="139" name="big futa dick" tags="" position="1087,639" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="140" name="huge futa dick" tags="" position="1198,635" size="100,100">you have $points points
are you sure?
[[yes->female]]
(set: $drop to -8)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="141" name="small male dick" tags="" position="0,296" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="142" name="normal male dick" tags="" position="120,296" size="100,100">you have $points points
are you sure?
[[yes->male]]
</tw-passagedata><tw-passagedata pid="143" name="big male dick" tags="" position="240,296" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="144" name="huge male dick" tags="" position="360,296" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to -8)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="145" name="normal male clothes" tags="" position="0,408" size="100,100">you have $points points
are you sure?
[[yes->male]]
</tw-passagedata><tw-passagedata pid="146" name="anime school uniform male" tags="" position="121,413" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to -3)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="147" name="normal male body" tags="" position="1,518" size="100,100">you have $points points
are you sure?
[[yes->male]]
</tw-passagedata><tw-passagedata pid="148" name="fat male body" tags="" position="123,526" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="149" name="muscular male body" tags="" position="246,528" size="100,100">you have $points points
are you sure?
[[yes->male]]
(set: $drop to -7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="150" name="worldbuilding" tags="" position="751,2137" size="100,100">from here you can go change certain aspects of your world, don't worry about points too much, you can always come back later and choose drawbacks to get more points
[[here->list of races]] is a list of all (still incomplete) race's that will exist in this world/can be chosen later on. **it is possible to become of another race temporarely with the shapeshifting2 power or permanently with the race traitor power** i reccomend checking this out first since there is some info regarding the new races there.
<img src="https://rule34.xxx//samples/3565/sample_b7fcb1dc601341402d2aa375d5fbbfa9.jpg?4026634" f>
[[futa options]] **do not go here if you are a futa**
<img src="https://rule34.xxx//samples/3425/sample_e88d04ce1358c8ec22a6c8ba2a8eb979.jpg?4028044" f>
[[futa options for a futa]] **only for futa's**
<img src="https://img.rule34.xxx//images/3453/c7424f5cec64a85c359b718547e1e14a.jpeg?3892697" f>
[[companion]] **very much still in BETA/available-ish**
<img src="https://himg.rule34.xxx//images/3553/a54234f7a4d6bec3655e3810a71f5303.jpeg?4011237" f>
[[worldchanges]] **very much still in BETA**
<img src="https://rule34.xxx//samples/3534/sample_c5d3851c0056ddbd55d30e0bc766556a.jpg?3989870" f>
[[the drawbacks]] **somewhat done**
<img src="https://rule34.xxx//samples/2969/sample_d27043ac6cb9ef190685eb55a6cc66cb.jpg?3318974" f>
[[powers and such]] **somewhat done**
</tw-passagedata><tw-passagedata pid="151" name="normalize" tags="" position="1675,486" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3492/5eb88013a1bb627ed930b96af2a5adea.png?3936855" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[normalize2]] everyone who sees what you are doing through a window of sorts will think it's completely normal whatever you are doing. you can now do anything that doesn't cause permanent harm to someone, pregnancy excluded. they will not care if they are pregnant after you leave the room and will take care of the baby. without the spell stopping. people will even thank you for what you are doing to/with them and will agree to do help with some things like having them fuck you and letting them be the dominant one. can be turned off at will. **-10 extra points**
[[no normalize]]
[[no normalize2]]</tw-passagedata><tw-passagedata pid="152" name="public" tags="" position="1676,601" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3568/4c116d396d0f4f46eb8c2763a1647695.jpeg?4029117" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[public2]] you can now do anything you want outside and nobody will raise an eyebrow. limits are things that cause permanent damage to someone, pregnancy excluded. they won't care if they are pregnant and still raise the baby even after you turn of the spell or go inside. people will even thank you for doing whatver you are doing to them and will agree to be the dom if you ask, now you can have them fuck you/ do the work for you. **-10 extra points**
[[no public]]
[[no public2]]</tw-passagedata><tw-passagedata pid="153" name="domination switch" tags="" position="1684,723" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3464/sample_826ad577ac2e4fae14d7e6f2338ef850.jpg?3966703" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[domination switch2]] you can now change your entire relation with someone, permanently if you wish. they will become your dom or sub when you say so, it takes a week to change this effect on someone so be carefull. your relation won't become more intimate and you can only make someone as dominating or submissive to you as much as they like/love you. **-7 extra points**
[[no domination switch]]
[[no domination swtich2]]</tw-passagedata><tw-passagedata pid="154" name="name calling" tags="" position="1680,849" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3467/sample_c2b3ea4274e103445b88b710373427ea.jpg?3908812" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) you have $points points
upgrade:[[name calling2]] when you say someone's name to them (same rule about hearing) they will either get aroused or orgasm, whatever you want. can be turned off, this would make your grandma's birthday very weird if it couldn't be. **-10 extra points**
[[no name calling]]
[[no name calling2]]</tw-passagedata><tw-passagedata pid="155" name="normalize2" tags="" position="1795,490" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3528/8134978cbf92943816a8d48a2091f448.jpeg?3983173" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="156" name="no normalize" tags="" position="1827,1726" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="157" name="no normalize2" tags="" position="1818,1833" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="158" name="public2" tags="" position="1791,609" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3547/031d8c3bebc7ff656313fba6df7835bc.jpeg?4005092" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="159" name="no public" tags="" position="2057,1724" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="160" name="no public2" tags="" position="2062,1863" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="161" name="domination switch2" tags="" position="1806,742" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3524/sample_72b48962adf29bcfa6eaccdd4ff025e795c82e40.jpg?3978411" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="162" name="no domination switch" tags="" position="1350,1825" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="163" name="no domination swtich2" tags="" position="1344,1935" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 27)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="164" name="name calling2" tags="" position="1800,860" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/1001/4a60d6113ea4c2028490ce042c0c0ebcf63803b1.png?1000982" f>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="165" name="no name calling" tags="" position="1478,1824" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="166" name="no name calling2" tags="" position="1476,1939" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="167" name="inbetween" tags="" position="1677,971" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3511/e7c79f178f59bd79bd7dd2b6b614a691.jpeg?3959304" g>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no inbetween]]</tw-passagedata><tw-passagedata pid="168" name="no inbetween" tags="" position="1597,1818" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="169" name="easy prey" tags="" position="256,1845" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/3562/cf7690eff498a04dd0fd0c009accbe98.jpeg?4023294" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[easy prey2]] you will be extremely easily talked into things you don't want to do, limited to things that don't include permanent damage to you, pregnancy excluded. **10 extra points**
[[no easy prey]]
[[no easy prey2]]</tw-passagedata><tw-passagedata pid="170" name="love hurts" tags="" position="574,1844" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3487/sample_4f4a88959a72d73896052a58fba4fcf4.jpg?3930612" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop)
[[no love hurts]]</tw-passagedata><tw-passagedata pid="171" name="birthday suit" tags="" position="359,1847" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3560/sample_73d014e152bccb7652eebdeb6c3fb342.jpg?4020481" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 20)
(set: $points to $points + $drop)
[[no birthday suit]]</tw-passagedata><tw-passagedata pid="172" name="sex sells" tags="" position="469,1845" size="100,100">you have $points points
<img src="https://img.rule34.xxx//images/2668/7d67f4ea20643d670b2cc65af78b8697.png?2967909" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 8)
(set: $points to $points + $drop)
upgrade:[[sex sells2]] every time you buy something you need to pay for it with a sexual act of somewhat equal value. everything that costs more than 1000 euro's can't be paid for with a sexual act and will require money. **7 extra points**
[[no sex sells]]
[[no sex sells2]]
[[no sex sells3]]
</tw-passagedata><tw-passagedata pid="173" name="no birthday suit" tags="" position="350,1730" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -40)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="174" name="no love hurts" tags="" position="567,1717" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="175" name="sex sells2" tags="" position="464,1966" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3411/sample_446e95f42327a94f67d53cc7a65b1f80.jpg?3844681" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop)
upgrade:[[sex sells3]] everything more expensive than 1000 euro's needs to be paid for with multiple sexual acts, everything over 10.000 needs to be paid for with atleast 100 sexual acts that can be paid distrubeted over the next few years. everything can be paid for with a lifetime of service, the seller can come to you whenever he wants and do everything he wants to you with absolutely no limits as long as it doesn't cause you any permanent damage, can still get you pregnant. look at the bright side, this way you won't have to pay for anything ever again. you might miss some sleep and a few (productive) hours a day if you make to many expensive purchases. **7 extra points you can't buy something that requires multiple sexual acts or more from someone who can't easily come over to you, that person will magically know where you are NO LOOPHOLES!**</tw-passagedata><tw-passagedata pid="176" name="no sex sells" tags="" position="456,1726" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -16)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="177" name="no sex sells2" tags="" position="457,1624" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -23)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="178" name="no sex sells3" tags="" position="455,1523" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="179" name="sex sells3" tags="" position="464,2116" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3546/sample_9dc44d7f549be41f933a49fa2ba4e064.jpg?4003188" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="180" name="easy prey2" tags="" position="258,1960" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3560/sample_488f1b2ed545da0d6ba73c6171c34c4b.jpg?4020757" a>
are you sure?
[[yes->the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="181" name="no easy prey" tags="" position="248,1728" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="182" name="no easy prey2" tags="" position="252,1622" size="100,100">you have $points points
are you sure?
[[yes->the drawbacks]]
(set: $drop to -20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="183" name="shorter pregnancies" tags="" position="1695,1098" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3550/sample_b08dac53004192d7770076271cbd6118f6e72069.jpg?4008145" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
upgrade:[[shorter pregnancies2]] your kids will now be born either after 2 months or 2 weeks but if you choose the latter you will lay an egg that, ones outside your body, will grow for 8,5 more months and than the kid will come out. 1 egg per kid. the eggs are the size of a babies head the day it comes out of you/the girl you impregnated. the choice is yours even if you are the male, she and everyone else will think laying eggs is perfectly normal. **-10 extra points**
[[no shorter pregnancies]]
[[no shorter pregnancies2]]</tw-passagedata><tw-passagedata pid="184" name="companion" tags="" position="676,2287" size="100,100">you have $points points
**every race listed here can get pregnant from/impregnated by you. the dog can only get you pregnant with the pregnancy boost2 drawback. if you want to change the companion you choose you need to press the "no lamia" (for example) button and than your points will be restored/taken back** you choose the gender of your companion, futa included if atleast 10% of people are futanari **Unless stated elsewhere**
companions hair colour and other unimportant stuff is up to you.
go to [[worldbuilding]]
still in beta
<img src="https://rule34.xxx//samples/3298/sample_6163b31b56a4cd797f7ebbb6326584f86c0e9887.jpg?3711625" t>
[[a loli]] a species that looks very similair to humans but consists entirely of girls who look and act like human children. how do they reproduce? who knows. they are very cute and can use magic but are phyisically very weak. **-5 points**
<img src="https://rule34.xxx//samples/3415/sample_30a54529e607448d5f75eec341cd9e23.jpg?3848570" t>
[[succubus/incubus]] demon's who specialize in seduction. they will try to mate with you and even if you refuse will they give you wet dreams, a higher libido and more kinks just by being around you. can use magic and are masters in spearfighting. can change into succus form which will make them grow horns, a tail, wings and red skin. **-10 points**
<img src="https://img.rule34.xxx//images/3498/67f33788702f9c6a61a74f86c4ce903d.png?3942516" t>
[[catgirl/boy]] not much to say here. they are very cute and pretty lazy, they like being praised and headpats. they are very loyal to you. can use magic but it tires them out quickly and they are physicaly very weak. they are faster and more flexible than humans. **-5 points**
<img src="https://himg.rule34.xxx//images/817/352a99237dab01fe360b941f95021e77.jpeg?3010425" t>
[[human]] a human, can do a lot of things for you. can use magic and is physically pretty strong. **-5 points**
<img src="https://rule34.xxx//samples/3450/sample_3e417af145474040f673c92cb04b91899307f888.jpg?3888945" t>
[[tentacle monster]] for sexual purposes only, can be used to rape enemies or just give people pleasure. will be loyal to you if you have sex atleast ones every week. you can decide it's size and more later in "worldchanges".**-5 points**
<img src="https://rule34.xxx//samples/3175/sample_d12172355b5f3960d85c17106afc55de.jpg?3566884" t>
[[goblin gang]] you are more their companion than they yours. well... you are more of a breeding slave to them. you won't have to do anything in your life and you will be able to just do nothing all day as long as you let them impregnate you. goblins have the ability to make you pregnant even if you already are just like the pregnancy boost 4 drawback. your belly won't ever grow to a size where you can't function as a human anymore. magic. they are strong in numbers and some of them can use magic. **5 points**
<img src="https://img.rule34.xxx//images/3300/4139b2ddb7596d7449f08ef950fc8538.jpeg?3714179" t>
[[high elf]] needs to be treated like a princess/prince. she/he will most likely be the dom in your relationship, even tho she/he likes being a sub in the bedroom from time to time. very powerful with magic and physically above human avarage and also above human avarage IQ. her/his long elven ears are sensitive, don't tell her/him i told you that, she/he thinks nobody knows. **-10 points**
<img src="https://rule34.xxx//samples/3522/sample_be037b51c3b54f627be9acbd5b1982b0.jpg?3976055" t>
[[dog]] a dog of your choice, always male. **-3 points**
<img src="https://rule34.xxx//samples/3541/sample_b19307a17c517407fd4b4d4fe1d2d5cd.jpg?4019847" t>
[[lamia]] a half human half snake girl, always female. she is very loyal to you if you treat her with kindness. above avarage human strength and can use some magic, it tires her/him out quickly. **-5 points**
<img src="https://img.rule34.xxx//images/3264/aa6823a20e9f13aaa8328ce263d55ae0.png?3671618" t>
[[solo]] boriiiiiinngg **5 points**
</tw-passagedata><tw-passagedata pid="185" name="worldchanges" tags="" position="690,2723" size="100,100">you have $points points
go to[[worldbuilding]]
**all links below this text don't lead to anything (yet)**
<img src="https://rule34.xxx//samples/3558/sample_d9f8c94642a784a5ac062eec7ebac7ab.jpg?4016843" f>
[[the magic]] all magic systems can be chosen here
<img src="https://rule34.xxx//samples/3561/sample_677a8f4111b8ef899573034824fd754a.jpg?4021887" f>
[[the fantasy races]] what extra fantasy races will exist in this world? (succubi/incubi, high elves, loli's, lamia, catgirls, tentacle monsters and goblins will exist no matter what you choose. their description can be found in [[list of races]]
<img src="https://rule34.xxx//samples/3567/sample_3405c9cfe4be5aec2594b45249230fb8.jpg?4029001" f>
[[a new world]] what new sports/ forms of art will this world bring?
<img src="https://rule34.xxx//samples/3455/sample_ee6d4e5016c3aabb93cf40348f34c0f3.jpg?3895566" f>
[[public opinion on...]] what will public opinion be on...
<img src="https://rule34.xxx//samples/3569/sample_42d4c6ce47ecc91f6d187b9df29bab73.jpg?4031032" h>
[[tentacle monsters]] yes you can decide what they will be like.
</tw-passagedata><tw-passagedata pid="186" name="a loli" tags="" position="76,2437" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no loli]]</tw-passagedata><tw-passagedata pid="187" name="succubus/incubus" tags="" position="226,2437" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -10)
(set: $points to $points + $drop)
[[no succubus/incubus]]</tw-passagedata><tw-passagedata pid="188" name="catgirl/boy" tags="" position="376,2437" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no catgirl/boy]]</tw-passagedata><tw-passagedata pid="189" name="human" tags="" position="526,2437" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no human]]</tw-passagedata><tw-passagedata pid="190" name="tentacle monster" tags="" position="668,2433" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no tentacle monster]]</tw-passagedata><tw-passagedata pid="191" name="goblin gang" tags="" position="799,2434" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to 5)
(set: $points to $points + $drop)
[[no goblin gang]]</tw-passagedata><tw-passagedata pid="192" name="high elf" tags="" position="928,2439" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -10)
(set: $points to $points + $drop)
[[no high elf]]</tw-passagedata><tw-passagedata pid="193" name="dog" tags="" position="1048,2441" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -3)
(set: $points to $points + $drop)
[[no dog]]</tw-passagedata><tw-passagedata pid="194" name="lamia" tags="" position="1175,2445" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to -5)
(set: $points to $points + $drop)
[[no lamia]]</tw-passagedata><tw-passagedata pid="195" name="solo" tags="" position="1316,2448" size="100,100">you have $points points
are you sure?
[[yes->worldbuilding]]
(set: $drop to 5)
(set: $points to $points + $drop)
[[no solo]]</tw-passagedata><tw-passagedata pid="196" name="no succubus/incubus" tags="" position="232,2593" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="197" name="no solo" tags="" position="1316,2598" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="198" name="no lamia" tags="" position="1175,2595" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="199" name="no dog" tags="" position="1048,2591" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to -3)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="200" name="no high elf" tags="" position="928,2589" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="201" name="no goblin gang" tags="" position="799,2584" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to -5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="202" name="no tentacle monster" tags="" position="668,2583" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="203" name="no human" tags="" position="526,2587" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="204" name="no catgirl/boy" tags="" position="376,2587" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="205" name="no loli" tags="" position="76,2587" size="100,100">you have $points points
are you sure?
[[yes->companion]]
(set: $drop to 5)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="206" name="the magic" tags="" position="540,2873" size="100,100">you have $points points</tw-passagedata><tw-passagedata pid="207" name="the fantasy races" tags="" position="690,2873" size="100,100">you have $points points</tw-passagedata><tw-passagedata pid="208" name="public opinion on..." tags="" position="969,2880" size="100,100">you have $points points</tw-passagedata><tw-passagedata pid="209" name="list of races" tags="" position="194,663.0000610351562" size="100,100">you have $points points
**the world population will stay the same as it was the day you play this even though fantasy races exist here smaller creatures like goblins do not count for 1 human. about 3 goblins equal 1 human if you change your race to goblin you won't become 3 goblins tho**
every race produce children with every other race. but most won't, it isn't taboo. all races are considered equal in every country, by law only.
everything that is not stated which is stated by some other race means its about the same as it is for humans
human: do i need to explain this? i won't. can use magic. 50/50 male female ratio unless there are futa's.
loli: a race consisting entirely of girls that look and act like human children. they can use magic and are physically very weak. they have a low libido.
succubus/incubus: demons who have an extremely high libido. they can use magic and specialize in darker sorts magic. they can shape your dreams, make people become aroused and kinkier at will. they also have a high resistence to heat. they usually walk around in human form but you can identify one with magic. in succubus/incubus form they will gain red skin, horns, a tail and will make people around them more aroused,kinky and submissive just by being near them. most other races will kick succubi/incubi out of their house if they see them in succubus/incubus form. a 40/60 male/female ratio. very likely to race mix. human lifespan but can be send back to earth from Hell
goblin: goblins are small green creatures who usually travel in groups of 3-50. they dislike it when other races use their superior strength on them. they will use strength in numbers to counter their weak physique. only 27% of all goblins can use magic. goblins are what you'd expect. high libido. they sometimes work as merceneray groups for other races. a 70/30 male/female ratio is very likely to rape m... uhm... race mix. die from old age at 60, won't look older than a 20 year old one.
tentacle monster: they like to fuck females/futa's with their tentacles. when a tentacle monster impregnantes someone the kid will always be 100% tentacle monster. they will sometimes travel with other races in exchange for regular sex but they usually just rape anyone they see. if they like a person a lot they might keep them as their personal sex toys if they are big enough to overpower the person. if they are too small to do so they but the female/futa doesn't get rid of/kill the tentacle monster they will cling on to that person/ become their travel partner. they don't speak and no one knows if they can see or hear and how. see [[tentacle monsters]] to choose the type of tentacle monsters. there are no females. die from old age at 50, will most likely be killed before 30 if they are wild and not extremely powerful. the bigger the longer they live than that sometimes even past 200.
high elf: these powerful creatures are superior to humans in both physical strenth,speed etc and magic. their ears are very sensitive and while make them aroused when touched. they are dominative in public but like to be the sub in the bedroom from time to time. 50/50 male/female ratio. will only race mix when they truly love someone/you use your powers on them/your drawbacks apply. die from old age at 300.
lamia: half human half snake basically. they can use some magic but using it a lot tires them out. you figure out the rest. 20/80 male female ratio, is very likely to race mix.
catgirl/boy: cute little humans who are lazy, flexible and fast. they can use some magic but even simple spells tires them out. they don't look like they age past 40 at most. most catgirls/boys will not look older than 25 for their entire lifespan. they like being praised and headpats and such... and of course cat characteristics like cat ears and such. 45/55 male/female ratio.
**incomplete**
</tw-passagedata><tw-passagedata pid="210" name="a new world" tags="" position="833,2876" size="100,100">you have $points points</tw-passagedata><tw-passagedata pid="211" name="race traitor" tags="" position="1703,1218" size="100,100">you have $points points
<img src="" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -15)
(set: $points to $points + $drop)
[[no race traitor]]</tw-passagedata><tw-passagedata pid="212" name="no race traitor" tags="" position="1704,1817" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 30)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="213" name="shorter pregnancies2" tags="" position="1811,1099" size="100,100">you have $points points
<img src="https://rule34.xxx//samples/3558/sample_6a459fc5af94c9fe38eba446bd0f7273.jpg?4017019" a>
are you sure?
[[yes->powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="214" name="no shorter pregnancies" tags="" position="2288,1492" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 10)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="215" name="no shorter pregnancies2" tags="" position="2293,1602" size="100,100">you have $points points
are you sure?
[[yes->powers and such]]
(set: $drop to 20)
(set: $points to $points + $drop) </tw-passagedata><tw-passagedata pid="216" name="tentacle monsters" tags="" position="1092,2879" size="100,100">Double-click this passage to edit it.</tw-passagedata></tw-storydata>
<script title="Twine engine code" data-main="harlowe">"use strict";function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var _slicedToArray=function(){function e(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{!r&&s.return&&s.return()}finally{if(i)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};!function(){/**
* @license almond 0.3.3 Copyright jQuery Foundation and other contributors.
* Released under MIT license, http://github.com/requirejs/almond/LICENSE
*/
var requirejs,require,define;!function(e){function t(e,t){return v.call(e,t)}function n(e,t){var n,r,i,o,a,s,c,u,l,f,p,d,h=t&&t.split("/"),g=y.map,m=g&&g["*"]||{};if(e){for(e=e.split("/"),a=e.length-1,y.nodeIdCompat&&w.test(e[a])&&(e[a]=e[a].replace(w,"")),"."===e[0].charAt(0)&&h&&(d=h.slice(0,h.length-1),e=d.concat(e)),l=0;l<e.length;l++)if("."===(p=e[l]))e.splice(l,1),l-=1;else if(".."===p){if(0===l||1===l&&".."===e[2]||".."===e[l-1])continue;l>0&&(e.splice(l-1,2),l-=2)}e=e.join("/")}if((h||m)&&g){for(n=e.split("/"),l=n.length;l>0;l-=1){if(r=n.slice(0,l).join("/"),h)for(f=h.length;f>0;f-=1)if((i=g[h.slice(0,f).join("/")])&&(i=i[r])){o=i,s=l;break}if(o)break;!c&&m&&m[r]&&(c=m[r],u=l)}!o&&c&&(o=c,s=u),o&&(n.splice(0,s,o),e=n.join("/"))}return e}function r(t,n){return function(){var r=b.call(arguments,0);return"string"!=typeof r[0]&&1===r.length&&r.push(null),f.apply(e,r.concat([t,n]))}}function i(e){return function(t){return n(t,e)}}function o(e){return function(t){h[e]=t}}function a(n){if(t(g,n)){var r=g[n];delete g[n],m[n]=!0,l.apply(e,r)}if(!t(h,n)&&!t(m,n))throw new Error("No "+n);return h[n]}function s(e){var t,n=e?e.indexOf("!"):-1;return n>-1&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function c(e){return e?s(e):[]}function u(e){return function(){return y&&y.config&&y.config[e]||{}}}var l,f,p,d,h={},g={},y={},m={},v=Object.prototype.hasOwnProperty,b=[].slice,w=/\.js$/;p=function(e,t){var r,o=s(e),c=o[0],u=t[1];return e=o[1],c&&(c=n(c,u),r=a(c)),c?e=r&&r.normalize?r.normalize(e,i(u)):n(e,u):(e=n(e,u),o=s(e),c=o[0],e=o[1],c&&(r=a(c))),{f:c?c+"!"+e:e,n:e,pr:c,p:r}},d={require:function(e){return r(e)},exports:function(e){var t=h[e];return void 0!==t?t:h[e]={}},module:function(e){return{id:e,uri:"",exports:h[e],config:u(e)}}},l=function(n,i,s,u){var l,f,y,v,b,w,x,T=[],S=void 0===s?"undefined":_typeof(s);if(u=u||n,w=c(u),"undefined"===S||"function"===S){for(i=!i.length&&s.length?["require","exports","module"]:i,b=0;b<i.length;b+=1)if(v=p(i[b],w),"require"===(f=v.f))T[b]=d.require(n);else if("exports"===f)T[b]=d.exports(n),x=!0;else if("module"===f)l=T[b]=d.module(n);else if(t(h,f)||t(g,f)||t(m,f))T[b]=a(f);else{if(!v.p)throw new Error(n+" missing "+f);v.p.load(v.n,r(u,!0),o(f),{}),T[b]=h[f]}y=s?s.apply(h[n],T):void 0,n&&(l&&l.exports!==e&&l.exports!==h[n]?h[n]=l.exports:y===e&&x||(h[n]=y))}else n&&(h[n]=s)},requirejs=require=f=function(t,n,r,i,o){if("string"==typeof t)return d[t]?d[t](n):a(p(t,c(n)).f);if(!t.splice){if(y=t,y.deps&&f(y.deps,y.callback),!n)return;n.splice?(t=n,n=r,r=null):t=e}return n=n||function(){},"function"==typeof r&&(r=i,i=o),i?l(e,t,n,r):setTimeout(function(){l(e,t,n,r)},4),f},f.config=function(e){return f(e)},requirejs._defined=h,define=function(e,n,r){if("string"!=typeof e)throw new Error("See almond README: incorrect module build, no module name");n.splice||(r=n,n=[]),t(h,e)||t(g,e)||(g[e]=[e,n,r])},define.amd={jQuery:!0}}(),define("almond",function(){}),function(e,t){"object"===("undefined"==typeof module?"undefined":_typeof(module))&&"object"===_typeof(module.exports)?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e,t,n){n=n||ce;var r,i,o=n.createElement("script");if(o.text=e,t)for(r in Te)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function r(e){return null==e?e+"":"object"===(void 0===e?"undefined":_typeof(e))||"function"==typeof e?he[ge.call(e)]||"object":void 0===e?"undefined":_typeof(e)}function i(e){var t=!!e&&"length"in e&&e.length,n=r(e);return!we(e)&&!xe(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function o(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function a(e,t,n){return we(t)?Se.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?Se.grep(e,function(e){return e===t!==n}):"string"!=typeof t?Se.grep(e,function(e){return de.call(t,e)>-1!==n}):Se.filter(t,e,n)}function s(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function c(e){var t={};return Se.each(e.match(Me)||[],function(e,n){t[n]=!0}),t}function u(e){return e}function l(e){throw e}function f(e,t,n,r){var i;try{e&&we(i=e.promise)?i.call(e).done(t).fail(n):e&&we(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function p(){ce.removeEventListener("DOMContentLoaded",p),e.removeEventListener("load",p),Se.ready()}function d(e,t){return t.toUpperCase()}function h(e){return e.replace(qe,"ms-").replace(Fe,d)}function g(){this.expando=Se.expando+g.uid++}function y(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:Be.test(e)?JSON.parse(e):e)}function m(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(We,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=y(n)}catch(e){}$e.set(e,t,n)}else n=void 0;return n}function v(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return Se.css(e,t,"")},c=s(),u=n&&n[3]||(Se.cssNumber[t]?"":"px"),l=e.nodeType&&(Se.cssNumber[t]||"px"!==u&&+c)&&Ue.exec(Se.css(e,t));if(l&&l[3]!==u){for(c/=2,u=u||l[3],l=+c||1;a--;)Se.style(e,t,l+u),(1-o)*(1-(o=s()/c||.5))<=0&&(a=0),l/=o;l*=2,Se.style(e,t,l+u),n=n||[]}return n&&(l=+l||+c||0,i=n[1]?l+(n[1]+1)*n[2]:+n[2],r&&(r.unit=u,r.start=l,r.end=i)),i}function b(e){var t,n=e.ownerDocument,r=e.nodeName,i=Ke[r];return i||(t=n.body.appendChild(n.createElement(r)),i=Se.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),Ke[r]=i,i)}function w(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)r=e[o],r.style&&(n=r.style.display,t?("none"===n&&(i[o]=Ve.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&Ze(r)&&(i[o]=b(r))):"none"!==n&&(i[o]="none",Ve.set(r,"display",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function x(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&o(e,t)?Se.merge([e],n):n}function T(e,t){for(var n=0,r=e.length;n<r;n++)Ve.set(e[n],"globalEval",!t||Ve.get(t[n],"globalEval"))}function S(e,t,n,i,o){for(var a,s,c,u,l,f,p=t.createDocumentFragment(),d=[],h=0,g=e.length;h<g;h++)if((a=e[h])||0===a)if("object"===r(a))Se.merge(d,a.nodeType?[a]:a);else if(it.test(a)){for(s=s||p.appendChild(t.createElement("div")),c=(tt.exec(a)||["",""])[1].toLowerCase(),u=rt[c]||rt._default,s.innerHTML=u[1]+Se.htmlPrefilter(a)+u[2],f=u[0];f--;)s=s.lastChild;Se.merge(d,s.childNodes),s=p.firstChild,s.textContent=""}else d.push(t.createTextNode(a));for(p.textContent="",h=0;a=d[h++];)if(i&&Se.inArray(a,i)>-1)o&&o.push(a);else if(l=Xe(a),s=x(p.appendChild(a),"script"),l&&T(s),n)for(f=0;a=s[f++];)nt.test(a.type||"")&&n.push(a);return p}function k(){return!0}function O(){return!1}function j(e,t){return e===A()==("focus"===t)}function A(){try{return ce.activeElement}catch(e){}}function C(e,t,n,r,i,o){var a,s;if("object"===(void 0===t?"undefined":_typeof(t))){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)C(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=O;else if(!i)return e;return 1===o&&(a=i,i=function(e){return Se().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=Se.guid++)),e.each(function(){Se.event.add(this,t,i,r,n)})}function E(e,t,n){if(!n)return void(void 0===Ve.get(e,t)&&Se.event.add(e,t,k));Ve.set(e,t,!1),Se.event.add(e,t,{namespace:!1,handler:function(e){var r,i,o=Ve.get(this,t);if(1&e.isTrigger&&this[t]){if(o.length)(Se.event.special[t]||{}).delegateType&&e.stopPropagation();else if(o=le.call(arguments),Ve.set(this,t,o),r=n(this,t),this[t](),i=Ve.get(this,t),o!==i||r?Ve.set(this,t,!1):i={},o!==i)return e.stopImmediatePropagation(),e.preventDefault(),i.value}else o.length&&(Ve.set(this,t,{value:Se.event.trigger(Se.extend(o[0],Se.Event.prototype),o.slice(1),this)}),e.stopImmediatePropagation())}})}function N(e,t){return o(e,"table")&&o(11!==t.nodeType?t:t.firstChild,"tr")?Se(e).children("tbody")[0]||e:e}function _(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function P(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function I(e,t){var n,r,i,o,a,s,c,u;if(1===t.nodeType){if(Ve.hasData(e)&&(o=Ve.access(e),a=Ve.set(t,o),u=o.events)){delete a.handle,a.events={};for(i in u)for(n=0,r=u[i].length;n<r;n++)Se.event.add(t,i,u[i][n])}$e.hasData(e)&&(s=$e.access(e),c=Se.extend({},s),$e.set(t,c))}}function M(e,t){var n=t.nodeName.toLowerCase();"input"===n&&et.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function D(e,t,r,i){t=fe.apply([],t);var o,a,s,c,u,l,f=0,p=e.length,d=p-1,h=t[0],g=we(h);if(g||p>1&&"string"==typeof h&&!be.checkClone&<.test(h))return e.each(function(n){var o=e.eq(n);g&&(t[0]=h.call(this,n,o.html())),D(o,t,r,i)});if(p&&(o=S(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=Se.map(x(o,"script"),_),c=s.length;f<p;f++)u=o,f!==d&&(u=Se.clone(u,!0,!0),c&&Se.merge(s,x(u,"script"))),r.call(e[f],u,f);if(c)for(l=s[s.length-1].ownerDocument,Se.map(s,P),f=0;f<c;f++)u=s[f],nt.test(u.type||"")&&!Ve.access(u,"globalEval")&&Se.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?Se._evalUrl&&!u.noModule&&Se._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):n(u.textContent.replace(ft,""),u,l))}return e}function L(e,t,n){for(var r,i=t?Se.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||Se.cleanData(x(r)),r.parentNode&&(n&&Xe(r)&&T(x(r,"script")),r.parentNode.removeChild(r));return e}function R(e,t,n){var r,i,o,a,s=e.style;return n=n||dt(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||Xe(e)||(a=Se.style(e,t)),!be.pixelBoxStyles()&&pt.test(a)&&ht.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function q(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function F(e){for(var t=e[0].toUpperCase()+e.slice(1),n=gt.length;n--;)if((e=gt[n]+t)in yt)return e}function H(e){var t=Se.cssProps[e]||mt[e];return t||(e in yt?e:mt[e]=F(e)||e)}function V(e,t,n){var r=Ue.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function $(e,t,n,r,i,o){var a="width"===t?1:0,s=0,c=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(c+=Se.css(e,n+Ge[a],!0,i)),r?("content"===n&&(c-=Se.css(e,"padding"+Ge[a],!0,i)),"margin"!==n&&(c-=Se.css(e,"border"+Ge[a]+"Width",!0,i))):(c+=Se.css(e,"padding"+Ge[a],!0,i),"padding"!==n?c+=Se.css(e,"border"+Ge[a]+"Width",!0,i):s+=Se.css(e,"border"+Ge[a]+"Width",!0,i));return!r&&o>=0&&(c+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-c-s-.5))||0),c}function B(e,t,n){var r=dt(e),i=!be.boxSizingReliable()||n,o=i&&"border-box"===Se.css(e,"boxSizing",!1,r),a=o,s=R(e,t,r),c="offset"+t[0].toUpperCase()+t.slice(1);if(pt.test(s)){if(!n)return s;s="auto"}return(!be.boxSizingReliable()&&o||"auto"===s||!parseFloat(s)&&"inline"===Se.css(e,"display",!1,r))&&e.getClientRects().length&&(o="border-box"===Se.css(e,"boxSizing",!1,r),(a=c in e)&&(s=e[c])),(s=parseFloat(s)||0)+$(e,t,n||(o?"border":"content"),a,r,s)+"px"}function W(e,t,n,r,i){return new W.prototype.init(e,t,n,r,i)}function z(){St&&(!1===ce.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(z):e.setTimeout(z,Se.fx.interval),Se.fx.tick())}function U(){return e.setTimeout(function(){Tt=void 0}),Tt=Date.now()}function G(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)n=Ge[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function J(e,t,n){for(var r,i=(Z.tweeners[t]||[]).concat(Z.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function X(e,t,n){var r,i,o,a,s,c,u,l,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&Ze(e),y=Ve.get(e,"fxshow");n.queue||(a=Se._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,Se.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],kt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!y||void 0===y[r])continue;g=!0}d[r]=y&&y[r]||Se.style(e,r)}if((c=!Se.isEmptyObject(t))||!Se.isEmptyObject(d)){f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],u=y&&y.display,null==u&&(u=Ve.get(e,"display")),l=Se.css(e,"display"),"none"===l&&(u?l=u:(w([e],!0),u=e.style.display||u,l=Se.css(e,"display"),w([e]))),("inline"===l||"inline-block"===l&&null!=u)&&"none"===Se.css(e,"float")&&(c||(p.done(function(){h.display=u}),null==u&&(l=h.display,u="none"===l?"":l)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),c=!1;for(r in d)c||(y?"hidden"in y&&(g=y.hidden):y=Ve.access(e,"fxshow",{display:u}),o&&(y.hidden=!g),g&&w([e],!0),p.done(function(){g||w([e]),Ve.remove(e,"fxshow");for(r in d)Se.style(e,r,d[r])})),c=J(g?y[r]:0,r,p),r in y||(y[r]=c.start,g&&(c.end=c.start,c.start=0))}}function Y(e,t){var n,r,i,o,a;for(n in e)if(r=h(n),i=t[r],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=Se.cssHooks[r])&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function Z(e,t,n){var r,i,o=0,a=Z.prefilters.length,s=Se.Deferred().always(function(){delete c.elem}),c=function(){if(i)return!1;for(var t=Tt||U(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,c=u.tweens.length;a<c;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),o<1&&c?n:(c||s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:Se.extend({},t),opts:Se.extend(!0,{specialEasing:{},easing:Se.easing._default},n),originalProperties:t,originalOptions:n,startTime:Tt||U(),duration:n.duration,tweens:[],createTween:function(t,n){var r=Se.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)u.tweens[n].run(1);return t?(s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u,t])):s.rejectWith(e,[u,t]),this}}),l=u.props;for(Y(l,u.opts.specialEasing);o<a;o++)if(r=Z.prefilters[o].call(u,e,l,u.opts))return we(r.stop)&&(Se._queueHooks(u.elem,u.opts.queue).stop=r.stop.bind(r)),r;return Se.map(l,J,u),we(u.opts.start)&&u.opts.start.call(e,u),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always),Se.fx.timer(Se.extend(c,{elem:e,anim:u,queue:u.opts.queue})),u}function Q(e){return(e.match(Me)||[]).join(" ")}function K(e){return e.getAttribute&&e.getAttribute("class")||""}function ee(e){return Array.isArray(e)?e:"string"==typeof e?e.match(Me)||[]:[]}function te(e,t,n,i){var o;if(Array.isArray(t))Se.each(t,function(t,r){n||Lt.test(e)?i(e,r):te(e+"["+("object"===(void 0===r?"undefined":_typeof(r))&&null!=r?t:"")+"]",r,n,i)});else if(n||"object"!==r(t))i(e,t);else for(o in t)te(e+"["+o+"]",t[o],n,i)}function ne(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(Me)||[];if(we(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function re(e,t,n,r){function i(s){var c;return o[s]=!0,Se.each(e[s]||[],function(e,s){var u=s(t,n,r);return"string"!=typeof u||a||o[u]?a?!(c=u):void 0:(t.dataTypes.unshift(u),i(u),!1)}),c}var o={},a=e===Jt;return i(t.dataTypes[0])||!o["*"]&&i("*")}function ie(e,t){var n,r,i=Se.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&Se.extend(!0,e,r),e}function oe(e,t,n){for(var r,i,o,a,s=e.contents,c=e.dataTypes;"*"===c[0];)c.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){c.unshift(i);break}if(c[0]in n)o=c[0];else{for(i in n){if(!c[0]||e.converters[i+" "+c[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==c[0]&&c.unshift(o),n[o]}function ae(e,t,n,r){var i,o,a,s,c,u={},l=e.dataTypes.slice();if(l[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];for(o=l.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!c&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),c=o,o=l.shift())if("*"===o)o=c;else if("*"!==c&&c!==o){if(!(a=u[c+" "+o]||u["* "+o]))for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[c+" "+s[0]]||u["* "+s[0]])){!0===a?a=u[i]:!0!==u[i]&&(o=s[0],l.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+c+" to "+o}}}return{state:"success",data:t}}var se=[],ce=e.document,ue=Object.getPrototypeOf,le=se.slice,fe=se.concat,pe=se.push,de=se.indexOf,he={},ge=he.toString,ye=he.hasOwnProperty,me=ye.toString,ve=me.call(Object),be={},we=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},xe=function(e){return null!=e&&e===e.window},Te={type:!0,src:!0,nonce:!0,noModule:!0},Se=function e(t,n){return new e.fn.init(t,n)},ke=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;Se.fn=Se.prototype={jquery:"3.4.1",constructor:Se,length:0,toArray:function(){return le.call(this)},get:function(e){return null==e?le.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=Se.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return Se.each(this,e)},map:function(e){return this.pushStack(Se.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(le.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:pe,sort:se.sort,splice:se.splice},Se.extend=Se.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,c=arguments.length,u=!1;for("boolean"==typeof a&&(u=a,a=arguments[s]||{},s++),"object"===(void 0===a?"undefined":_typeof(a))||we(a)||(a={}),s===c&&(a=this,s--);s<c;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(u&&r&&(Se.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||Se.isPlainObject(n)?n:{},i=!1,a[t]=Se.extend(u,o,r)):void 0!==r&&(a[t]=r));return a},Se.extend({expando:"jQuery"+("3.4.1"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==ge.call(e))&&(!(t=ue(e))||"function"==typeof(n=ye.call(t,"constructor")&&t.constructor)&&me.call(n)===ve)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){n(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(i(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(ke,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(i(Object(e))?Se.merge(n,"string"==typeof e?[e]:e):pe.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:de.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,o,a=0,s=[];if(i(e))for(r=e.length;a<r;a++)null!=(o=t(e[a],a,n))&&s.push(o);else for(a in e)null!=(o=t(e[a],a,n))&&s.push(o);return fe.apply([],s)},guid:1,support:be}),"function"==typeof Symbol&&(Se.fn[Symbol.iterator]=se[Symbol.iterator]),Se.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){he["[object "+t+"]"]=t.toLowerCase()});var Oe=function(e){function t(e,t,n,r){var i,o,a,s,c,l,p,d=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:F)!==_&&N(t),t=t||_,I)){if(11!==h&&(c=me.exec(e)))if(i=c[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&R(t,a)&&a.id===i)return n.push(a),n}else{if(c[2])return Z.apply(n,t.getElementsByTagName(e)),n;if((i=c[3])&&w.getElementsByClassName&&t.getElementsByClassName)return Z.apply(n,t.getElementsByClassName(i)),n}if(w.qsa&&!z[e+" "]&&(!M||!M.test(e))&&(1!==h||"object"!==t.nodeName.toLowerCase())){if(p=e,d=t,1===h&&ue.test(e)){for((s=t.getAttribute("id"))?s=s.replace(xe,Te):t.setAttribute("id",s=q),l=k(e),o=l.length;o--;)l[o]="#"+s+" "+f(l[o]);p=l.join(","),d=ve.test(e)&&u(t.parentNode)||t}try{return Z.apply(n,d.querySelectorAll(p)),n}catch(t){z(e,!0)}finally{s===q&&t.removeAttribute("id")}}}return j(e.replace(ae,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>x.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[q]=!0,e}function i(e){var t=_.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ke(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function c(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function u(e){return e&&void 0!==e.getElementsByTagName&&e}function l(){}function f(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function p(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=V++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,c){var u,l,f,p=[H,s];if(c){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,c))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(f=t[q]||(t[q]={}),l=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((u=l[o])&&u[0]===H&&u[1]===s)return p[2]=u[2];if(l[o]=p,p[2]=e(t,n,c))return!0}return!1}}function d(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function h(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,a=[],s=0,c=e.length,u=null!=t;s<c;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),u&&t.push(s)));return a}function y(e,t,n,i,o,a){return i&&!i[q]&&(i=y(i)),o&&!o[q]&&(o=y(o,a)),r(function(r,a,s,c){var u,l,f,p=[],d=[],y=a.length,m=r||h(t||"*",s.nodeType?[s]:s,[]),v=!e||!r&&t?m:g(m,p,e,s,c),b=n?o||(r?e:y||i)?[]:a:v;if(n&&n(v,b,s,c),i)for(u=g(b,d),i(u,[],s,c),l=u.length;l--;)(f=u[l])&&(b[d[l]]=!(v[d[l]]=f));if(r){if(o||e){if(o){for(u=[],l=b.length;l--;)(f=b[l])&&u.push(v[l]=f);o(null,b=[],u,c)}for(l=b.length;l--;)(f=b[l])&&(u=o?K(r,f):p[l])>-1&&(r[u]=!(a[u]=f))}}else b=g(b===a?b.splice(y,b.length):b),o?o(null,a,b,c):Z.apply(a,b)})}function m(e){for(var t,n,r,i=e.length,o=x.relative[e[0].type],a=o||x.relative[" "],s=o?1:0,c=p(function(e){return e===t},a,!0),u=p(function(e){return K(t,e)>-1},a,!0),l=[function(e,n,r){var i=!o&&(r||n!==A)||((t=n).nodeType?c(e,n,r):u(e,n,r));return t=null,i}];s<i;s++)if(n=x.relative[e[s].type])l=[p(d(l),n)];else{if(n=x.filter[e[s].type].apply(null,e[s].matches),n[q]){for(r=++s;r<i&&!x.relative[e[r].type];r++);return y(s>1&&d(l),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(ae,"$1"),n,s<r&&m(e.slice(s,r)),r<i&&m(e=e.slice(r)),r<i&&f(e))}l.push(n)}return d(l)}function v(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,c,u){var l,f,p,d=0,h="0",y=r&&[],m=[],v=A,b=r||o&&x.find.TAG("*",u),w=H+=null==v?1:Math.random()||.1,T=b.length;for(u&&(A=a===_||a||u);h!==T&&null!=(l=b[h]);h++){if(o&&l){for(f=0,a||l.ownerDocument===_||(N(l),s=!I);p=e[f++];)if(p(l,a||_,s)){c.push(l);break}u&&(H=w)}i&&((l=!p&&l)&&d--,r&&y.push(l))}if(d+=h,i&&h!==d){for(f=0;p=n[f++];)p(y,m,a,s);if(r){if(d>0)for(;h--;)y[h]||m[h]||(m[h]=X.call(c));m=g(m)}Z.apply(c,m),u&&!r&&m.length>0&&d+n.length>1&&t.uniqueSort(c)}return u&&(H=w,A=v),y};return i?r(a):a}var b,w,x,T,S,k,O,j,A,C,E,N,_,P,I,M,D,L,R,q="sizzle"+1*new Date,F=e.document,H=0,V=0,$=n(),B=n(),W=n(),z=n(),U=function(e,t){return e===t&&(E=!0),0},G={}.hasOwnProperty,J=[],X=J.pop,Y=J.push,Z=J.push,Q=J.slice,K=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},ee="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",te="[\\x20\\t\\r\\n\\f]",ne="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",re="\\["+te+"*("+ne+")(?:"+te+"*([*^$|!~]?=)"+te+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+ne+"))|)"+te+"*\\]",ie=":("+ne+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+re+")*)|.*)\\)|)",oe=new RegExp(te+"+","g"),ae=new RegExp("^"+te+"+|((?:^|[^\\\\])(?:\\\\.)*)"+te+"+$","g"),se=new RegExp("^"+te+"*,"+te+"*"),ce=new RegExp("^"+te+"*([>+~]|"+te+")"+te+"*"),ue=new RegExp(te+"|>"),le=new RegExp(ie),fe=new RegExp("^"+ne+"$"),pe={ID:new RegExp("^#("+ne+")"),CLASS:new RegExp("^\\.("+ne+")"),TAG:new RegExp("^("+ne+"|[*])"),ATTR:new RegExp("^"+re),PSEUDO:new RegExp("^"+ie),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+te+"*(even|odd|(([+-]|)(\\d*)n|)"+te+"*(?:([+-]|)"+te+"*(\\d+)|))"+te+"*\\)|)","i"),bool:new RegExp("^(?:"+ee+")$","i"),needsContext:new RegExp("^"+te+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+te+"*((?:-\\d)?\\d*)"+te+"*\\)|)(?=[^-]|$)","i")},de=/HTML$/i,he=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,ye=/^[^{]+\{\s*\[native \w/,me=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,be=new RegExp("\\\\([\\da-f]{1,6}"+te+"?|("+te+")|.)","ig"),we=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,Te=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Se=function(){N()},ke=p(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{Z.apply(J=Q.call(F.childNodes),F.childNodes),J[F.childNodes.length].nodeType}catch(e){Z={apply:J.length?function(e,t){Y.apply(e,Q.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}w=t.support={},S=t.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!de.test(t||n&&n.nodeName||"HTML")},N=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:F;return r!==_&&9===r.nodeType&&r.documentElement?(_=r,P=_.documentElement,I=!S(_),F!==_&&(n=_.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Se,!1):n.attachEvent&&n.attachEvent("onunload",Se)),w.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByTagName=i(function(e){return e.appendChild(_.createComment("")),!e.getElementsByTagName("*").length}),w.getElementsByClassName=ye.test(_.getElementsByClassName),w.getById=i(function(e){return P.appendChild(e).id=q,!_.getElementsByName||!_.getElementsByName(q).length}),w.getById?(x.filter.ID=function(e){var t=e.replace(be,we);return function(e){return e.getAttribute("id")===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&I){var n=t.getElementById(e);return n?[n]:[]}}):(x.filter.ID=function(e){var t=e.replace(be,we);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},x.find.ID=function(e,t){if(void 0!==t.getElementById&&I){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),x.find.TAG=w.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):w.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},x.find.CLASS=w.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&I)return t.getElementsByClassName(e)},D=[],M=[],(w.qsa=ye.test(_.querySelectorAll))&&(i(function(e){P.appendChild(e).innerHTML="<a id='"+q+"'></a><select id='"+q+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&M.push("[*^$]="+te+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||M.push("\\["+te+"*(?:value|"+ee+")"),e.querySelectorAll("[id~="+q+"-]").length||M.push("~="),e.querySelectorAll(":checked").length||M.push(":checked"),e.querySelectorAll("a#"+q+"+*").length||M.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=_.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&M.push("name"+te+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&M.push(":enabled",":disabled"),P.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&M.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),M.push(",.*:")})),(w.matchesSelector=ye.test(L=P.matches||P.webkitMatchesSelector||P.mozMatchesSelector||P.oMatchesSelector||P.msMatchesSelector))&&i(function(e){w.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),D.push("!=",ie)}),M=M.length&&new RegExp(M.join("|")),D=D.length&&new RegExp(D.join("|")),t=ye.test(P.compareDocumentPosition),R=t||ye.test(P.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},U=t?function(e,t){if(e===t)return E=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!w.sortDetached&&t.compareDocumentPosition(e)===n?e===_||e.ownerDocument===F&&R(F,e)?-1:t===_||t.ownerDocument===F&&R(F,t)?1:C?K(C,e)-K(C,t):0:4&n?-1:1)}:function(e,t){if(e===t)return E=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],c=[t];if(!i||!o)return e===_?-1:t===_?1:i?-1:o?1:C?K(C,e)-K(C,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)c.unshift(n);for(;s[r]===c[r];)r++;return r?a(s[r],c[r]):s[r]===F?-1:c[r]===F?1:0},_):_},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==_&&N(e),w.matchesSelector&&I&&!z[n+" "]&&(!D||!D.test(n))&&(!M||!M.test(n)))try{var r=L.call(e,n);if(r||w.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){z(n,!0)}return t(n,_,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==_&&N(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==_&&N(e);var n=x.attrHandle[t.toLowerCase()],r=n&&G.call(x.attrHandle,t.toLowerCase())?n(e,t,!I):void 0;return void 0!==r?r:w.attributes||!I?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(xe,Te)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(E=!w.detectDuplicates,C=!w.sortStable&&e.slice(0),e.sort(U),E){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return C=null,e},T=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=T(t);return n},
x=t.selectors={cacheLength:50,createPseudo:r,match:pe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,we),e[3]=(e[3]||e[4]||e[5]||"").replace(be,we),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return pe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&le.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,we).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+te+")"+e+"("+te+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(oe," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,c){var u,l,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",y=t.parentNode,m=s&&t.nodeName.toLowerCase(),v=!c&&!s,b=!1;if(y){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===m:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?y.firstChild:y.lastChild],a&&v){for(p=y,f=p[q]||(p[q]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),u=l[e]||[],d=u[0]===H&&u[1],b=d&&u[2],p=d&&y.childNodes[d];p=++d&&p&&p[g]||(b=d=0)||h.pop();)if(1===p.nodeType&&++b&&p===t){l[e]=[H,d,b];break}}else if(v&&(p=t,f=p[q]||(p[q]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),u=l[e]||[],d=u[0]===H&&u[1],b=d),!1===b)for(;(p=++d&&p&&p[g]||(b=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==m:1!==p.nodeType)||!++b||(v&&(f=p[q]||(p[q]={}),l=f[p.uniqueID]||(f[p.uniqueID]={}),l[e]=[H,b]),p!==t)););return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,n){var i,o=x.pseudos[e]||x.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[q]?o(n):o.length>1?(i=[e,e,"",n],x.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=K(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=O(e.replace(ae,"$1"));return i[q]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(be,we),function(t){return(t.textContent||T(t)).indexOf(e)>-1}}),lang:r(function(e){return fe.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(be,we).toLowerCase(),function(t){var n;do{if(n=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===P},focus:function(e){return e===_.activeElement&&(!_.hasFocus||_.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:s(!1),disabled:s(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!x.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[n<0?n+t:n]}),even:c(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:c(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:c(function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e}),gt:c(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},x.pseudos.nth=x.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})x.pseudos[b]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(b);for(b in{submit:!0,reset:!0})x.pseudos[b]=function(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}(b);return l.prototype=x.filters=x.pseudos,x.setFilters=new l,k=t.tokenize=function(e,n){var r,i,o,a,s,c,u,l=B[e+" "];if(l)return n?0:l.slice(0);for(s=e,c=[],u=x.preFilter;s;){r&&!(i=se.exec(s))||(i&&(s=s.slice(i[0].length)||s),c.push(o=[])),r=!1,(i=ce.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(ae," ")}),s=s.slice(r.length));for(a in x.filter)!(i=pe[a].exec(s))||u[a]&&!(i=u[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):B(e,c).slice(0)},O=t.compile=function(e,t){var n,r=[],i=[],o=W[e+" "];if(!o){for(t||(t=k(e)),n=t.length;n--;)o=m(t[n]),o[q]?r.push(o):i.push(o);o=W(e,v(i,r)),o.selector=e}return o},j=t.select=function(e,t,n,r){var i,o,a,s,c,l="function"==typeof e&&e,p=!r&&k(e=l.selector||e);if(n=n||[],1===p.length){if(o=p[0]=p[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&I&&x.relative[o[1].type]){if(!(t=(x.find.ID(a.matches[0].replace(be,we),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=pe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!x.relative[s=a.type]);)if((c=x.find[s])&&(r=c(a.matches[0].replace(be,we),ve.test(o[0].type)&&u(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&f(o)))return Z.apply(n,r),n;break}}return(l||O(e,p))(r,t,!I,n,!t||ve.test(e)&&u(t.parentNode)||t),n},w.sortStable=q.split("").sort(U).join("")===q,w.detectDuplicates=!!E,N(),w.sortDetached=i(function(e){return 1&e.compareDocumentPosition(_.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),w.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(ee,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);Se.find=Oe,Se.expr=Oe.selectors,Se.expr[":"]=Se.expr.pseudos,Se.uniqueSort=Se.unique=Oe.uniqueSort,Se.text=Oe.getText,Se.isXMLDoc=Oe.isXML,Se.contains=Oe.contains,Se.escapeSelector=Oe.escape;var je=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&Se(e).is(n))break;r.push(e)}return r},Ae=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Ce=Se.expr.match.needsContext,Ee=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;Se.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?Se.find.matchesSelector(r,e)?[r]:[]:Se.find.matches(e,Se.grep(t,function(e){return 1===e.nodeType}))},Se.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(Se(e).filter(function(){for(t=0;t<r;t++)if(Se.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)Se.find(e,i[t],n);return r>1?Se.uniqueSort(n):n},filter:function(e){return this.pushStack(a(this,e||[],!1))},not:function(e){return this.pushStack(a(this,e||[],!0))},is:function(e){return!!a(this,"string"==typeof e&&Ce.test(e)?Se(e):e||[],!1).length}});var Ne,_e=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(Se.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Ne,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:_e.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof Se?t[0]:t,Se.merge(this,Se.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:ce,!0)),Ee.test(r[1])&&Se.isPlainObject(t))for(r in t)we(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=ce.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):we(e)?void 0!==n.ready?n.ready(e):e(Se):Se.makeArray(e,this)}).prototype=Se.fn,Ne=Se(ce);var Pe=/^(?:parents|prev(?:Until|All))/,Ie={children:!0,contents:!0,next:!0,prev:!0};Se.fn.extend({has:function(e){var t=Se(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(Se.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&Se(e);if(!Ce.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&Se.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?Se.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?de.call(Se(e),this[0]):de.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(Se.uniqueSort(Se.merge(this.get(),Se(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),Se.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return je(e,"parentNode")},parentsUntil:function(e,t,n){return je(e,"parentNode",n)},next:function(e){return s(e,"nextSibling")},prev:function(e){return s(e,"previousSibling")},nextAll:function(e){return je(e,"nextSibling")},prevAll:function(e){return je(e,"previousSibling")},nextUntil:function(e,t,n){return je(e,"nextSibling",n)},prevUntil:function(e,t,n){return je(e,"previousSibling",n)},siblings:function(e){return Ae((e.parentNode||{}).firstChild,e)},children:function(e){return Ae(e.firstChild)},contents:function(e){return void 0!==e.contentDocument?e.contentDocument:(o(e,"template")&&(e=e.content||e),Se.merge([],e.childNodes))}},function(e,t){Se.fn[e]=function(n,r){var i=Se.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=Se.filter(r,i)),this.length>1&&(Ie[e]||Se.uniqueSort(i),Pe.test(e)&&i.reverse()),this.pushStack(i)}});var Me=/[^\x20\t\r\n\f]+/g;Se.Callbacks=function(e){e="string"==typeof e?c(e):Se.extend({},e);var t,n,i,o,a=[],s=[],u=-1,l=function(){for(o=o||e.once,i=t=!0;s.length;u=-1)for(n=s.shift();++u<a.length;)!1===a[u].apply(n[0],n[1])&&e.stopOnFalse&&(u=a.length,n=!1);e.memory||(n=!1),t=!1,o&&(a=n?[]:"")},f={add:function(){return a&&(n&&!t&&(u=a.length-1,s.push(n)),function t(n){Se.each(n,function(n,i){we(i)?e.unique&&f.has(i)||a.push(i):i&&i.length&&"string"!==r(i)&&t(i)})}(arguments),n&&!t&&l()),this},remove:function(){return Se.each(arguments,function(e,t){for(var n;(n=Se.inArray(t,a,n))>-1;)a.splice(n,1),n<=u&&u--}),this},has:function(e){return e?Se.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return o=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return o=s=[],n||t||(a=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!i}};return f},Se.extend({Deferred:function(t){var n=[["notify","progress",Se.Callbacks("memory"),Se.Callbacks("memory"),2],["resolve","done",Se.Callbacks("once memory"),Se.Callbacks("once memory"),0,"resolved"],["reject","fail",Se.Callbacks("once memory"),Se.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return Se.Deferred(function(t){Se.each(n,function(n,r){var i=we(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&we(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){function o(t,n,r,i){return function(){var s=this,c=arguments,f=function(){var e,f;if(!(t<a)){if((e=r.apply(s,c))===n.promise())throw new TypeError("Thenable self-resolution");f=e&&("object"===(void 0===e?"undefined":_typeof(e))||"function"==typeof e)&&e.then,we(f)?i?f.call(e,o(a,n,u,i),o(a,n,l,i)):(a++,f.call(e,o(a,n,u,i),o(a,n,l,i),o(a,n,u,n.notifyWith))):(r!==u&&(s=void 0,c=[e]),(i||n.resolveWith)(s,c))}},p=i?f:function(){try{f()}catch(e){Se.Deferred.exceptionHook&&Se.Deferred.exceptionHook(e,p.stackTrace),t+1>=a&&(r!==l&&(s=void 0,c=[e]),n.rejectWith(s,c))}};t?p():(Se.Deferred.getStackHook&&(p.stackTrace=Se.Deferred.getStackHook()),e.setTimeout(p))}}var a=0;return Se.Deferred(function(e){n[0][3].add(o(0,e,we(i)?i:u,e.notifyWith)),n[1][3].add(o(0,e,we(t)?t:u)),n[2][3].add(o(0,e,we(r)?r:l))}).promise()},promise:function(e){return null!=e?Se.extend(e,i):i}},o={};return Se.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=le.call(arguments),o=Se.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?le.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(f(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||we(i[n]&&i[n].then)))return o.then();for(;n--;)f(i[n],a(n),o.reject);return o.promise()}});var De=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;Se.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&De.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},Se.readyException=function(t){e.setTimeout(function(){throw t})};var Le=Se.Deferred();Se.fn.ready=function(e){return Le.then(e).catch(function(e){Se.readyException(e)}),this},Se.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--Se.readyWait:Se.isReady)||(Se.isReady=!0,!0!==e&&--Se.readyWait>0||Le.resolveWith(ce,[Se]))}}),Se.ready.then=Le.then,"complete"===ce.readyState||"loading"!==ce.readyState&&!ce.documentElement.doScroll?e.setTimeout(Se.ready):(ce.addEventListener("DOMContentLoaded",p),e.addEventListener("load",p));var Re=function e(t,n,i,o,a,s,c){var u=0,l=t.length,f=null==i;if("object"===r(i)){a=!0;for(u in i)e(t,n,u,i[u],!0,s,c)}else if(void 0!==o&&(a=!0,we(o)||(c=!0),f&&(c?(n.call(t,o),n=null):(f=n,n=function(e,t,n){return f.call(Se(e),n)})),n))for(;u<l;u++)n(t[u],i,c?o:o.call(t[u],u,n(t[u],i)));return a?t:f?n.call(t):l?n(t[0],i):s},qe=/^-ms-/,Fe=/-([a-z])/g,He=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};g.uid=1,g.prototype={cache:function(e){var t=e[this.expando];return t||(t={},He(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[h(t)]=n;else for(r in t)i[h(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][h(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){Array.isArray(t)?t=t.map(h):(t=h(t),t=t in r?[t]:t.match(Me)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||Se.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!Se.isEmptyObject(t)}};var Ve=new g,$e=new g,Be=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,We=/[A-Z]/g;Se.extend({hasData:function(e){return $e.hasData(e)||Ve.hasData(e)},data:function(e,t,n){return $e.access(e,t,n)},removeData:function(e,t){$e.remove(e,t)},_data:function(e,t,n){return Ve.access(e,t,n)},_removeData:function(e,t){Ve.remove(e,t)}}),Se.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=$e.get(o),1===o.nodeType&&!Ve.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=h(r.slice(5)),m(o,r,i[r])));Ve.set(o,"hasDataAttrs",!0)}return i}return"object"===(void 0===e?"undefined":_typeof(e))?this.each(function(){$e.set(this,e)}):Re(this,function(t){var n;if(o&&void 0===t){if(void 0!==(n=$e.get(o,e)))return n;if(void 0!==(n=m(o,e)))return n}else this.each(function(){$e.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){$e.remove(this,e)})}}),Se.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Ve.get(e,t),n&&(!r||Array.isArray(n)?r=Ve.access(e,t,Se.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=Se.queue(e,t),r=n.length,i=n.shift(),o=Se._queueHooks(e,t),a=function(){Se.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Ve.get(e,n)||Ve.access(e,n,{empty:Se.Callbacks("once memory").add(function(){Ve.remove(e,[t+"queue",n])})})}}),Se.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?Se.queue(this[0],e):void 0===t?this:this.each(function(){var n=Se.queue(this,e,t);Se._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&Se.dequeue(this,e)})},dequeue:function(e){return this.each(function(){Se.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=Se.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)(n=Ve.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ze=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Ue=new RegExp("^(?:([+-])=|)("+ze+")([a-z%]*)$","i"),Ge=["Top","Right","Bottom","Left"],Je=ce.documentElement,Xe=function(e){return Se.contains(e.ownerDocument,e)},Ye={composed:!0};Je.getRootNode&&(Xe=function(e){return Se.contains(e.ownerDocument,e)||e.getRootNode(Ye)===e.ownerDocument});var Ze=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&Xe(e)&&"none"===Se.css(e,"display")},Qe=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},Ke={};Se.fn.extend({show:function(){return w(this,!0)},hide:function(){return w(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Ze(this)?Se(this).show():Se(this).hide()})}});var et=/^(?:checkbox|radio)$/i,tt=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,nt=/^$|^module$|\/(?:java|ecma)script/i,rt={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};rt.optgroup=rt.option,rt.tbody=rt.tfoot=rt.colgroup=rt.caption=rt.thead,rt.th=rt.td;var it=/<|&#?\w+;/;!function(){var e=ce.createDocumentFragment(),t=e.appendChild(ce.createElement("div")),n=ce.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),be.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",be.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var ot=/^key/,at=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,st=/^([^.]*)(?:\.(.+)|)/;Se.event={global:{},add:function(e,t,n,r,i){var o,a,s,c,u,l,f,p,d,h,g,y=Ve.get(e);if(y)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&Se.find.matchesSelector(Je,i),n.guid||(n.guid=Se.guid++),(c=y.events)||(c=y.events={}),(a=y.handle)||(a=y.handle=function(t){return void 0!==Se&&Se.event.triggered!==t.type?Se.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Me)||[""],u=t.length;u--;)s=st.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d&&(f=Se.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=Se.event.special[d]||{},l=Se.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&Se.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=c[d])||(p=c[d]=[],p.delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,l):p.push(l),Se.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,c,u,l,f,p,d,h,g,y=Ve.hasData(e)&&Ve.get(e);if(y&&(c=y.events)){for(t=(t||"").match(Me)||[""],u=t.length;u--;)if(s=st.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){for(f=Se.event.special[d]||{},d=(r?f.delegateType:f.bindType)||d,p=c[d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)l=p[o],!i&&g!==l.origType||n&&n.guid!==l.guid||s&&!s.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(p.splice(o,1),l.selector&&p.delegateCount--,f.remove&&f.remove.call(e,l));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,y.handle)||Se.removeEvent(e,d,y.handle),delete c[d])}else for(d in c)Se.event.remove(e,d+t[u],n,r,!0);Se.isEmptyObject(c)&&Ve.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=Se.event.fix(e),c=new Array(arguments.length),u=(Ve.get(this,"events")||{})[s.type]||[],l=Se.event.special[s.type]||{};for(c[0]=s,t=1;t<arguments.length;t++)c[t]=arguments[t];if(s.delegateTarget=this,!l.preDispatch||!1!==l.preDispatch.call(this,s)){for(a=Se.event.handlers.call(this,s,u),t=0;(i=a[t++])&&!s.isPropagationStopped();)for(s.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((Se.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,c))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],c=t.delegateCount,u=e.target;if(c&&u.nodeType&&!("click"===e.type&&e.button>=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==e.type||!0!==u.disabled)){for(o=[],a={},n=0;n<c;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?Se(i,this).index(u)>-1:Se.find(i,this,null,[u]).length),a[i]&&o.push(r);o.length&&s.push({elem:u,handlers:o})}return u=this,c<t.length&&s.push({elem:u,handlers:t.slice(c)}),s},addProp:function(e,t){Object.defineProperty(Se.Event.prototype,e,{enumerable:!0,configurable:!0,get:we(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[Se.expando]?e:new Se.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return et.test(t.type)&&t.click&&o(t,"input")&&E(t,"click",k),!1},trigger:function(e){var t=this||e;return et.test(t.type)&&t.click&&o(t,"input")&&E(t,"click"),!0},_default:function(e){var t=e.target;return et.test(t.type)&&t.click&&o(t,"input")&&Ve.get(t,"click")||o(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},Se.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},Se.Event=function(e,t){if(!(this instanceof Se.Event))return new Se.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?k:O,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&Se.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[Se.expando]=!0},Se.Event.prototype={constructor:Se.Event,isDefaultPrevented:O,isPropagationStopped:O,isImmediatePropagationStopped:O,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=k,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=k,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=k,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},Se.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&ot.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&at.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},Se.event.addProp),Se.each({focus:"focusin",blur:"focusout"},function(e,t){Se.event.special[e]={setup:function(){return E(this,e,j),!1},trigger:function(){return E(this,e),!0},delegateType:t}}),Se.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){Se.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||Se.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),Se.fn.extend({on:function(e,t,n,r){return C(this,e,t,n,r)},one:function(e,t,n,r){return C(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,Se(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===(void 0===e?"undefined":_typeof(e))){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=O),this.each(function(){Se.event.remove(this,e,n,t)})}});var ct=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,ut=/<script|<style|<link/i,lt=/checked\s*(?:[^=]|=\s*.checked.)/i,ft=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;Se.extend({htmlPrefilter:function(e){return e.replace(ct,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),c=Xe(e);if(!(be.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||Se.isXMLDoc(e)))for(a=x(s),o=x(e),r=0,i=o.length;r<i;r++)M(o[r],a[r]);if(t)if(n)for(o=o||x(e),a=a||x(s),r=0,i=o.length;r<i;r++)I(o[r],a[r]);else I(e,s);return a=x(s,"script"),a.length>0&&T(a,!c&&x(e,"script")),s},cleanData:function(e){for(var t,n,r,i=Se.event.special,o=0;void 0!==(n=e[o]);o++)if(He(n)){if(t=n[Ve.expando]){if(t.events)for(r in t.events)i[r]?Se.event.remove(n,r):Se.removeEvent(n,r,t.handle);n[Ve.expando]=void 0}n[$e.expando]&&(n[$e.expando]=void 0)}}}),Se.fn.extend({detach:function(e){return L(this,e,!0)},remove:function(e){return L(this,e)},text:function(e){return Re(this,function(e){return void 0===e?Se.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){N(this,e).appendChild(e)}})},prepend:function(){return D(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=N(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return D(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(Se.cleanData(x(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return Se.clone(this,e,t)})},html:function(e){return Re(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ut.test(e)&&!rt[(tt.exec(e)||["",""])[1].toLowerCase()]){e=Se.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(Se.cleanData(x(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return D(this,arguments,function(t){var n=this.parentNode;Se.inArray(this,e)<0&&(Se.cleanData(x(this)),n&&n.replaceChild(t,this))},e)}}),Se.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){Se.fn[e]=function(e){for(var n,r=[],i=Se(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),Se(i[a])[t](n),pe.apply(r,n.get());return this.pushStack(r)}});var pt=new RegExp("^("+ze+")(?!px)[a-z%]+$","i"),dt=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},ht=new RegExp(Ge.join("|"),"i");!function(){function t(){if(u){c.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",Je.appendChild(c).appendChild(u);var t=e.getComputedStyle(u);r="1%"!==t.top,s=12===n(t.marginLeft),u.style.right="60%",a=36===n(t.right),i=36===n(t.width),u.style.position="absolute",o=12===n(u.offsetWidth/3),Je.removeChild(c),u=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,a,s,c=ce.createElement("div"),u=ce.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",be.clearCloneStyle="content-box"===u.style.backgroundClip,Se.extend(be,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),a},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),s},scrollboxSize:function(){return t(),o}}))}();var gt=["Webkit","Moz","ms"],yt=ce.createElement("div").style,mt={},vt=/^(none|table(?!-c[ea]).+)/,bt=/^--/,wt={position:"absolute",visibility:"hidden",display:"block"},xt={letterSpacing:"0",fontWeight:"400"};Se.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=R(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=h(t),c=bt.test(t),u=e.style;if(c||(t=H(s)),a=Se.cssHooks[t]||Se.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:u[t];o=void 0===n?"undefined":_typeof(n),"string"===o&&(i=Ue.exec(n))&&i[1]&&(n=v(e,t,i),o="number"),null!=n&&n===n&&("number"!==o||c||(n+=i&&i[3]||(Se.cssNumber[s]?"":"px")),be.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(c?u.setProperty(t,n):u[t]=n))}},css:function(e,t,n,r){var i,o,a,s=h(t);return bt.test(t)||(t=H(s)),a=Se.cssHooks[t]||Se.cssHooks[s],
a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=R(e,t,r)),"normal"===i&&t in xt&&(i=xt[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),Se.each(["height","width"],function(e,t){Se.cssHooks[t]={get:function(e,n,r){if(n)return!vt.test(Se.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?B(e,t,r):Qe(e,wt,function(){return B(e,t,r)})},set:function(e,n,r){var i,o=dt(e),a=!be.scrollboxSize()&&"absolute"===o.position,s=a||r,c=s&&"border-box"===Se.css(e,"boxSizing",!1,o),u=r?$(e,t,r,c,o):0;return c&&a&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-$(e,t,"border",!1,o)-.5)),u&&(i=Ue.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=Se.css(e,t)),V(e,n,u)}}}),Se.cssHooks.marginLeft=q(be.reliableMarginLeft,function(e,t){if(t)return(parseFloat(R(e,"marginLeft"))||e.getBoundingClientRect().left-Qe(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),Se.each({margin:"",padding:"",border:"Width"},function(e,t){Se.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Ge[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(Se.cssHooks[e+t].set=V)}),Se.fn.extend({css:function(e,t){return Re(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=dt(e),i=t.length;a<i;a++)o[t[a]]=Se.css(e,t[a],!1,r);return o}return void 0!==n?Se.style(e,t,n):Se.css(e,t)},e,t,arguments.length>1)}}),Se.Tween=W,W.prototype={constructor:W,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||Se.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(Se.cssNumber[n]?"":"px")},cur:function(){var e=W.propHooks[this.prop];return e&&e.get?e.get(this):W.propHooks._default.get(this)},run:function(e){var t,n=W.propHooks[this.prop];return this.options.duration?this.pos=t=Se.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):W.propHooks._default.set(this),this}},W.prototype.init.prototype=W.prototype,W.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=Se.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){Se.fx.step[e.prop]?Se.fx.step[e.prop](e):1!==e.elem.nodeType||!Se.cssHooks[e.prop]&&null==e.elem.style[H(e.prop)]?e.elem[e.prop]=e.now:Se.style(e.elem,e.prop,e.now+e.unit)}}},W.propHooks.scrollTop=W.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},Se.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},Se.fx=W.prototype.init,Se.fx.step={};var Tt,St,kt=/^(?:toggle|show|hide)$/,Ot=/queueHooks$/;Se.Animation=Se.extend(Z,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return v(n.elem,e,Ue.exec(t),n),n}]},tweener:function(e,t){we(e)?(t=e,e=["*"]):e=e.match(Me);for(var n,r=0,i=e.length;r<i;r++)n=e[r],Z.tweeners[n]=Z.tweeners[n]||[],Z.tweeners[n].unshift(t)},prefilters:[X],prefilter:function(e,t){t?Z.prefilters.unshift(e):Z.prefilters.push(e)}}),Se.speed=function(e,t,n){var r=e&&"object"===(void 0===e?"undefined":_typeof(e))?Se.extend({},e):{complete:n||!n&&t||we(e)&&e,duration:e,easing:n&&t||t&&!we(t)&&t};return Se.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in Se.fx.speeds?r.duration=Se.fx.speeds[r.duration]:r.duration=Se.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){we(r.old)&&r.old.call(this),r.queue&&Se.dequeue(this,r.queue)},r},Se.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Ze).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=Se.isEmptyObject(e),o=Se.speed(t,n,r),a=function(){var t=Z(this,Se.extend({},e),o);(i||Ve.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=Se.timers,a=Ve.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&Ot.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||Se.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=Ve.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=Se.timers,a=r?r.length:0;for(n.finish=!0,Se.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),Se.each(["toggle","show","hide"],function(e,t){var n=Se.fn[t];Se.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(G(t,!0),e,r,i)}}),Se.each({slideDown:G("show"),slideUp:G("hide"),slideToggle:G("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){Se.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),Se.timers=[],Se.fx.tick=function(){var e,t=0,n=Se.timers;for(Tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||Se.fx.stop(),Tt=void 0},Se.fx.timer=function(e){Se.timers.push(e),Se.fx.start()},Se.fx.interval=13,Se.fx.start=function(){St||(St=!0,z())},Se.fx.stop=function(){St=null},Se.fx.speeds={slow:600,fast:200,_default:400},Se.fn.delay=function(t,n){return t=Se.fx?Se.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=ce.createElement("input"),t=ce.createElement("select"),n=t.appendChild(ce.createElement("option"));e.type="checkbox",be.checkOn=""!==e.value,be.optSelected=n.selected,e=ce.createElement("input"),e.value="t",e.type="radio",be.radioValue="t"===e.value}();var jt,At=Se.expr.attrHandle;Se.fn.extend({attr:function(e,t){return Re(this,Se.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){Se.removeAttr(this,e)})}}),Se.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?Se.prop(e,t,n):(1===o&&Se.isXMLDoc(e)||(i=Se.attrHooks[t.toLowerCase()]||(Se.expr.match.bool.test(t)?jt:void 0)),void 0!==n?null===n?void Se.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=Se.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!be.radioValue&&"radio"===t&&o(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(Me);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),jt={set:function(e,t,n){return!1===t?Se.removeAttr(e,n):e.setAttribute(n,n),n}},Se.each(Se.expr.match.bool.source.match(/\w+/g),function(e,t){var n=At[t]||Se.find.attr;At[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=At[a],At[a]=i,i=null!=n(e,t,r)?a:null,At[a]=o),i}});var Ct=/^(?:input|select|textarea|button)$/i,Et=/^(?:a|area)$/i;Se.fn.extend({prop:function(e,t){return Re(this,Se.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[Se.propFix[e]||e]})}}),Se.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&Se.isXMLDoc(e)||(t=Se.propFix[t]||t,i=Se.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=Se.find.attr(e,"tabindex");return t?parseInt(t,10):Ct.test(e.nodeName)||Et.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),be.optSelected||(Se.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),Se.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){Se.propFix[this.toLowerCase()]=this}),Se.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,c=0;if(we(e))return this.each(function(t){Se(this).addClass(e.call(this,t,K(this)))});if(t=ee(e),t.length)for(;n=this[c++];)if(i=K(n),r=1===n.nodeType&&" "+Q(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=Q(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,c=0;if(we(e))return this.each(function(t){Se(this).removeClass(e.call(this,t,K(this)))});if(!arguments.length)return this.attr("class","");if(t=ee(e),t.length)for(;n=this[c++];)if(i=K(n),r=1===n.nodeType&&" "+Q(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=Q(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=void 0===e?"undefined":_typeof(e),r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):we(e)?this.each(function(n){Se(this).toggleClass(e.call(this,n,K(this),t),t)}):this.each(function(){var t,i,o,a;if(r)for(i=0,o=Se(this),a=ee(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||(t=K(this),t&&Ve.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Ve.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+Q(K(n))+" ").indexOf(t)>-1)return!0;return!1}});var Nt=/\r/g;Se.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=we(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,Se(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=Se.map(i,function(e){return null==e?"":e+""})),(t=Se.valHooks[this.type]||Se.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=Se.valHooks[i.type]||Se.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(Nt,""):null==n?"":n)}}}),Se.extend({valHooks:{option:{get:function(e){var t=Se.find.attr(e,"value");return null!=t?t:Q(Se.text(e))}},select:{get:function(e){var t,n,r,i=e.options,a=e.selectedIndex,s="select-one"===e.type,c=s?null:[],u=s?a+1:i.length;for(r=a<0?u:s?a:0;r<u;r++)if(n=i[r],(n.selected||r===a)&&!n.disabled&&(!n.parentNode.disabled||!o(n.parentNode,"optgroup"))){if(t=Se(n).val(),s)return t;c.push(t)}return c},set:function(e,t){for(var n,r,i=e.options,o=Se.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=Se.inArray(Se.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),Se.each(["radio","checkbox"],function(){Se.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=Se.inArray(Se(e).val(),t)>-1}},be.checkOn||(Se.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),be.focusin="onfocusin"in e;var _t=/^(?:focusinfocus|focusoutblur)$/,Pt=function(e){e.stopPropagation()};Se.extend(Se.event,{trigger:function(t,n,r,i){var o,a,s,c,u,l,f,p,d=[r||ce],h=ye.call(t,"type")?t.type:t,g=ye.call(t,"namespace")?t.namespace.split("."):[];if(a=p=s=r=r||ce,3!==r.nodeType&&8!==r.nodeType&&!_t.test(h+Se.event.triggered)&&(h.indexOf(".")>-1&&(g=h.split("."),h=g.shift(),g.sort()),u=h.indexOf(":")<0&&"on"+h,t=t[Se.expando]?t:new Se.Event(h,"object"===(void 0===t?"undefined":_typeof(t))&&t),t.isTrigger=i?2:3,t.namespace=g.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:Se.makeArray(n,[t]),f=Se.event.special[h]||{},i||!f.trigger||!1!==f.trigger.apply(r,n))){if(!i&&!f.noBubble&&!xe(r)){for(c=f.delegateType||h,_t.test(c+h)||(a=a.parentNode);a;a=a.parentNode)d.push(a),s=a;s===(r.ownerDocument||ce)&&d.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=d[o++])&&!t.isPropagationStopped();)p=a,t.type=o>1?c:f.bindType||h,l=(Ve.get(a,"events")||{})[t.type]&&Ve.get(a,"handle"),l&&l.apply(a,n),(l=u&&a[u])&&l.apply&&He(a)&&(t.result=l.apply(a,n),!1===t.result&&t.preventDefault());return t.type=h,i||t.isDefaultPrevented()||f._default&&!1!==f._default.apply(d.pop(),n)||!He(r)||u&&we(r[h])&&!xe(r)&&(s=r[u],s&&(r[u]=null),Se.event.triggered=h,t.isPropagationStopped()&&p.addEventListener(h,Pt),r[h](),t.isPropagationStopped()&&p.removeEventListener(h,Pt),Se.event.triggered=void 0,s&&(r[u]=s)),t.result}},simulate:function(e,t,n){var r=Se.extend(new Se.Event,n,{type:e,isSimulated:!0});Se.event.trigger(r,null,t)}}),Se.fn.extend({trigger:function(e,t){return this.each(function(){Se.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return Se.event.trigger(e,t,n,!0)}}),be.focusin||Se.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){Se.event.simulate(t,e.target,Se.event.fix(e))};Se.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Ve.access(r,t);i||r.addEventListener(e,n,!0),Ve.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Ve.access(r,t)-1;i?Ve.access(r,t,i):(r.removeEventListener(e,n,!0),Ve.remove(r,t))}}});var It=e.location,Mt=Date.now(),Dt=/\?/;Se.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||Se.error("Invalid XML: "+t),n};var Lt=/\[\]$/,Rt=/\r?\n/g,qt=/^(?:submit|button|image|reset|file)$/i,Ft=/^(?:input|select|textarea|keygen)/i;Se.param=function(e,t){var n,r=[],i=function(e,t){var n=we(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!Se.isPlainObject(e))Se.each(e,function(){i(this.name,this.value)});else for(n in e)te(n,e[n],t,i);return r.join("&")},Se.fn.extend({serialize:function(){return Se.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=Se.prop(this,"elements");return e?Se.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!Se(this).is(":disabled")&&Ft.test(this.nodeName)&&!qt.test(e)&&(this.checked||!et.test(e))}).map(function(e,t){var n=Se(this).val();return null==n?null:Array.isArray(n)?Se.map(n,function(e){return{name:t.name,value:e.replace(Rt,"\r\n")}}):{name:t.name,value:n.replace(Rt,"\r\n")}}).get()}});var Ht=/%20/g,Vt=/#.*$/,$t=/([?&])_=[^&]*/,Bt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Wt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,zt=/^(?:GET|HEAD)$/,Ut=/^\/\//,Gt={},Jt={},Xt="*/".concat("*"),Yt=ce.createElement("a");Yt.href=It.href,Se.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:It.href,type:"GET",isLocal:Wt.test(It.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Xt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":Se.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?ie(ie(e,Se.ajaxSettings),t):ie(Se.ajaxSettings,e)},ajaxPrefilter:ne(Gt),ajaxTransport:ne(Jt),ajax:function(t,n){function r(t,n,r,s){var u,p,d,w,x,T=n;l||(l=!0,c&&e.clearTimeout(c),i=void 0,a=s||"",S.readyState=t>0?4:0,u=t>=200&&t<300||304===t,r&&(w=oe(h,S,r)),w=ae(h,w,S,u),u?(h.ifModified&&(x=S.getResponseHeader("Last-Modified"),x&&(Se.lastModified[o]=x),(x=S.getResponseHeader("etag"))&&(Se.etag[o]=x)),204===t||"HEAD"===h.type?T="nocontent":304===t?T="notmodified":(T=w.state,p=w.data,d=w.error,u=!d)):(d=T,!t&&T||(T="error",t<0&&(t=0))),S.status=t,S.statusText=(n||T)+"",u?m.resolveWith(g,[p,T,S]):m.rejectWith(g,[S,T,d]),S.statusCode(b),b=void 0,f&&y.trigger(u?"ajaxSuccess":"ajaxError",[S,h,u?p:d]),v.fireWith(g,[S,T]),f&&(y.trigger("ajaxComplete",[S,h]),--Se.active||Se.event.trigger("ajaxStop")))}"object"===(void 0===t?"undefined":_typeof(t))&&(n=t,t=void 0),n=n||{};var i,o,a,s,c,u,l,f,p,d,h=Se.ajaxSetup({},n),g=h.context||h,y=h.context&&(g.nodeType||g.jquery)?Se(g):Se.event,m=Se.Deferred(),v=Se.Callbacks("once memory"),b=h.statusCode||{},w={},x={},T="canceled",S={readyState:0,getResponseHeader:function(e){var t;if(l){if(!s)for(s={};t=Bt.exec(a);)s[t[1].toLowerCase()+" "]=(s[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=s[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return l?a:null},setRequestHeader:function(e,t){return null==l&&(e=x[e.toLowerCase()]=x[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==l&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)S.always(e[S.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||T;return i&&i.abort(t),r(0,t),this}};if(m.promise(S),h.url=((t||h.url||It.href)+"").replace(Ut,It.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(Me)||[""],null==h.crossDomain){u=ce.createElement("a");try{u.href=h.url,u.href=u.href,h.crossDomain=Yt.protocol+"//"+Yt.host!=u.protocol+"//"+u.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=Se.param(h.data,h.traditional)),re(Gt,h,n,S),l)return S;f=Se.event&&h.global,f&&0==Se.active++&&Se.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!zt.test(h.type),o=h.url.replace(Vt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Ht,"+")):(d=h.url.slice(o.length),h.data&&(h.processData||"string"==typeof h.data)&&(o+=(Dt.test(o)?"&":"?")+h.data,delete h.data),!1===h.cache&&(o=o.replace($t,"$1"),d=(Dt.test(o)?"&":"?")+"_="+Mt+++d),h.url=o+d),h.ifModified&&(Se.lastModified[o]&&S.setRequestHeader("If-Modified-Since",Se.lastModified[o]),Se.etag[o]&&S.setRequestHeader("If-None-Match",Se.etag[o])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&S.setRequestHeader("Content-Type",h.contentType),S.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Xt+"; q=0.01":""):h.accepts["*"]);for(p in h.headers)S.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(g,S,h)||l))return S.abort();if(T="abort",v.add(h.complete),S.done(h.success),S.fail(h.error),i=re(Jt,h,n,S)){if(S.readyState=1,f&&y.trigger("ajaxSend",[S,h]),l)return S;h.async&&h.timeout>0&&(c=e.setTimeout(function(){S.abort("timeout")},h.timeout));try{l=!1,i.send(w,r)}catch(e){if(l)throw e;r(-1,e)}}else r(-1,"No Transport");return S},getJSON:function(e,t,n){return Se.get(e,t,n,"json")},getScript:function(e,t){return Se.get(e,void 0,t,"script")}}),Se.each(["get","post"],function(e,t){Se[t]=function(e,n,r,i){return we(n)&&(i=i||r,r=n,n=void 0),Se.ajax(Se.extend({url:e,type:t,dataType:i,data:n,success:r},Se.isPlainObject(e)&&e))}}),Se._evalUrl=function(e,t){return Se.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){Se.globalEval(e,t)}})},Se.fn.extend({wrapAll:function(e){var t;return this[0]&&(we(e)&&(e=e.call(this[0])),t=Se(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return we(e)?this.each(function(t){Se(this).wrapInner(e.call(this,t))}):this.each(function(){var t=Se(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=we(e);return this.each(function(n){Se(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){Se(this).replaceWith(this.childNodes)}),this}}),Se.expr.pseudos.hidden=function(e){return!Se.expr.pseudos.visible(e)},Se.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},Se.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Zt={0:200,1223:204},Qt=Se.ajaxSettings.xhr();be.cors=!!Qt&&"withCredentials"in Qt,be.ajax=Qt=!!Qt,Se.ajaxTransport(function(t){var n,r;if(be.cors||Qt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Zt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),Se.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),Se.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return Se.globalEval(e),e}}}),Se.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),Se.ajaxTransport("script",function(e){if(e.crossDomain||e.scriptAttrs){var t,n;return{send:function(r,i){t=Se("<script>").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),ce.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Kt=[],en=/(=)\?(?=&|$)|\?\?/;Se.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||Se.expando+"_"+Mt++;return this[e]=!0,e}}),Se.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(en.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&en.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=we(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(en,"$1"+i):!1!==t.jsonp&&(t.url+=(Dt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||Se.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){void 0===o?Se(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Kt.push(i)),a&&we(o)&&o(a[0]),a=o=void 0}),"script"}),be.createHTMLDocument=function(){var e=ce.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),Se.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var r,i,o;return t||(be.createHTMLDocument?(t=ce.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=ce.location.href,t.head.appendChild(r)):t=ce),i=Ee.exec(e),o=!n&&[],i?[t.createElement(i[1])]:(i=S([e],t,o),o&&o.length&&Se(o).remove(),Se.merge([],i.childNodes))},Se.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return s>-1&&(r=Q(e.slice(s)),e=e.slice(0,s)),we(t)?(n=t,t=void 0):t&&"object"===(void 0===t?"undefined":_typeof(t))&&(i="POST"),a.length>0&&Se.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?Se("<div>").append(Se.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},Se.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){Se.fn[t]=function(e){return this.on(t,e)}}),Se.expr.pseudos.animated=function(e){return Se.grep(Se.timers,function(t){return e===t.elem}).length},Se.offset={setOffset:function(e,t,n){var r,i,o,a,s,c,u,l=Se.css(e,"position"),f=Se(e),p={};"static"===l&&(e.style.position="relative"),s=f.offset(),o=Se.css(e,"top"),c=Se.css(e,"left"),u=("absolute"===l||"fixed"===l)&&(o+c).indexOf("auto")>-1,u?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(c)||0),we(t)&&(t=t.call(e,n,Se.extend({},s))),null!=t.top&&(p.top=t.top-s.top+a),null!=t.left&&(p.left=t.left-s.left+i),"using"in t?t.using.call(e,p):f.css(p)}},Se.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){Se.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===Se.css(r,"position"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===Se.css(e,"position");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&(i=Se(e).offset(),i.top+=Se.css(e,"borderTopWidth",!0),i.left+=Se.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-Se.css(r,"marginTop",!0),left:t.left-i.left-Se.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===Se.css(e,"position");)e=e.offsetParent;return e||Je})}}),Se.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;Se.fn[e]=function(r){return Re(this,function(e,r,i){var o;if(xe(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),Se.each(["top","left"],function(e,t){Se.cssHooks[t]=q(be.pixelPosition,function(e,n){if(n)return n=R(e,t),pt.test(n)?Se(e).position()[t]+"px":n})}),Se.each({Height:"height",Width:"width"},function(e,t){Se.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){Se.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return Re(this,function(t,n,i){var o;return xe(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?Se.css(t,n,s):Se.style(t,n,i,s)},t,a?i:void 0,a)}})}),Se.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){Se.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),Se.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),Se.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),Se.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),we(e))return r=le.call(arguments,2),i=function(){return e.apply(t||this,r.concat(le.call(arguments)))},i.guid=e.guid=e.guid||Se.guid++,i},Se.holdReady=function(e){e?Se.readyWait++:Se.ready(!0)},Se.isArray=Array.isArray,Se.parseJSON=JSON.parse,Se.nodeName=o,Se.isFunction=we,Se.isWindow=xe,Se.camelCase=h,Se.type=r,Se.now=Date.now,Se.isNumeric=function(e){var t=Se.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return Se});var tn=e.jQuery,nn=e.$;return Se.noConflict=function(t){return e.$===Se&&(e.$=nn),t&&e.jQuery===Se&&(e.jQuery=tn),Se},t||(e.jQuery=e.$=Se),Se}),/*!
* https://github.com/paulmillr/es6-shim
* @license es6-shim Copyright 2013-2016 by Paul Miller (http://paulmillr.com)
* and contributors, MIT License
* es6-shim: v0.35.4
* see https://github.com/paulmillr/es6-shim/blob/0.35.3/LICENSE
* Details and documentation:
* https://github.com/paulmillr/es6-shim/
*/
function(e,t){"function"==typeof define&&define.amd?define("es6-shim",t):"object"===("undefined"==typeof exports?"undefined":_typeof(exports))?module.exports=t():e.returnExports=t()}(this,function(){var e,t=Function.call.bind(Function.apply),n=Function.call.bind(Function.call),r=Array.isArray,i=Object.keys,o=function(e){try{return e(),!1}catch(e){return!0}},a=function(e){try{return e()}catch(e){return!1}},s=function(e){return function(){return!t(e,this,arguments)}}(o),c=!!Object.defineProperty&&function(){return!o(function(){return Object.defineProperty({},"x",{get:function(){}})})}(),u="foo"===function(){}.name,l=Function.call.bind(Array.prototype.forEach),f=Function.call.bind(Array.prototype.reduce),p=Function.call.bind(Array.prototype.filter),d=Function.call.bind(Array.prototype.some),h=function(e,t,n,r){!r&&t in e||(c?Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:!0,value:n}):e[t]=n)},g=function(e,t,n){l(i(t),function(r){var i=t[r];h(e,r,i,!!n)})},y=Function.call.bind(Object.prototype.toString),m="function"==typeof/abc/?function(e){return"function"==typeof e&&"[object Function]"===y(e)}:function(e){return"function"==typeof e},v={getter:function(e,t,n){if(!c)throw new TypeError("getters require true ES5 support");Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get:n})},proxy:function(e,t,n){if(!c)throw new TypeError("getters require true ES5 support");var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,{configurable:r.configurable,enumerable:r.enumerable,get:function(){return e[t]},set:function(n){e[t]=n}})},redefine:function(e,t,n){if(c){var r=Object.getOwnPropertyDescriptor(e,t);r.value=n,Object.defineProperty(e,t,r)}else e[t]=n},defineByDescriptor:function(e,t,n){c?Object.defineProperty(e,t,n):"value"in n&&(e[t]=n.value)},preserveToString:function(e,t){t&&m(t.toString)&&h(e,"toString",t.toString.bind(t),!0)}},b=Object.create||function(e,t){var n=function(){};n.prototype=e;var r=new n;return void 0!==t&&i(t).forEach(function(e){v.defineByDescriptor(r,e,t[e])}),r},w=function(e,t){return!!Object.setPrototypeOf&&a(function(){var n=function t(n){var r=new e(n);return Object.setPrototypeOf(r,t.prototype),r};return Object.setPrototypeOf(n,e),n.prototype=b(e.prototype,{constructor:{value:n}}),t(n)})},x=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw new Error("unable to locate global object")}(),T=x.isFinite,S=Function.call.bind(String.prototype.indexOf),k=Function.apply.bind(Array.prototype.indexOf),O=Function.call.bind(Array.prototype.concat),j=Function.call.bind(String.prototype.slice),A=Function.call.bind(Array.prototype.push),C=Function.apply.bind(Array.prototype.push),E=Function.call.bind(Array.prototype.shift),N=Math.max,_=Math.min,P=Math.floor,I=Math.abs,M=Math.exp,D=Math.log,L=Math.sqrt,R=Function.call.bind(Object.prototype.hasOwnProperty),q=function(){},F=x.Map,H=F&&F.prototype.delete,V=F&&F.prototype.get,$=F&&F.prototype.has,B=F&&F.prototype.set,W=x.Symbol||{},z=W.species||"@@species",U=Number.isNaN||function(e){return e!==e},G=Number.isFinite||function(e){return"number"==typeof e&&T(e)},J=m(Math.sign)?Math.sign:function(e){var t=Number(e);return 0===t?t:U(t)?t:t<0?-1:1},X=function(e){var t=Number(e);return t<-1||U(t)?NaN:0===t||t===1/0?t:-1===t?-1/0:1+t-1==0?t:t*(D(1+t)/(1+t-1))},Y=function(e){return"[object Arguments]"===y(e)},Z=function(e){return null!==e&&"object"===(void 0===e?"undefined":_typeof(e))&&"number"==typeof e.length&&e.length>=0&&"[object Array]"!==y(e)&&"[object Function]"===y(e.callee)},Q=Y(arguments)?Y:Z,K={primitive:function(e){return null===e||"function"!=typeof e&&"object"!==(void 0===e?"undefined":_typeof(e))},string:function(e){return"[object String]"===y(e)},regex:function(e){return"[object RegExp]"===y(e)},symbol:function(e){return"function"==typeof x.Symbol&&"symbol"===(void 0===e?"undefined":_typeof(e))}},ee=function(e,t,n){var r=e[t];h(e,t,n,!0),v.preserveToString(e[t],r)},te="function"==typeof W&&"function"==typeof W.for&&K.symbol(W()),ne=K.symbol(W.iterator)?W.iterator:"_es6-shim iterator_";x.Set&&"function"==typeof(new x.Set)["@@iterator"]&&(ne="@@iterator"),x.Reflect||h(x,"Reflect",{},!0);var re=x.Reflect,ie=String,oe="undefined"!=typeof document&&document?document.all:null,ae=null==oe?function(e){return null==e}:function(e){return null==e&&e!==oe},se={Call:function(e,n){var r=arguments.length>2?arguments[2]:[];if(!se.IsCallable(e))throw new TypeError(e+" is not a function");return t(e,n,r)},RequireObjectCoercible:function(e,t){if(ae(e))throw new TypeError(t||"Cannot call method on "+e);return e},TypeIsObject:function(e){return void 0!==e&&null!==e&&!0!==e&&!1!==e&&("function"==typeof e||"object"===(void 0===e?"undefined":_typeof(e))||e===oe)},ToObject:function(e,t){return Object(se.RequireObjectCoercible(e,t))},IsCallable:m,IsConstructor:function(e){return se.IsCallable(e)},ToInt32:function(e){return se.ToNumber(e)>>0},ToUint32:function(e){return se.ToNumber(e)>>>0},ToNumber:function(e){if("[object Symbol]"===y(e))throw new TypeError("Cannot convert a Symbol value to a number");return+e},ToInteger:function(e){var t=se.ToNumber(e);return U(t)?0:0!==t&&G(t)?(t>0?1:-1)*P(I(t)):t},ToLength:function(e){var t=se.ToInteger(e);return t<=0?0:t>Number.MAX_SAFE_INTEGER?Number.MAX_SAFE_INTEGER:t},SameValue:function(e,t){return e===t?0!==e||1/e==1/t:U(e)&&U(t)},SameValueZero:function(e,t){return e===t||U(e)&&U(t)},IsIterable:function(e){return se.TypeIsObject(e)&&(void 0!==e[ne]||Q(e))},GetIterator:function(t){if(Q(t))return new e(t,"value");var n=se.GetMethod(t,ne);if(!se.IsCallable(n))throw new TypeError("value is not an iterable");var r=se.Call(n,t);if(!se.TypeIsObject(r))throw new TypeError("bad iterator");return r},GetMethod:function(e,t){var n=se.ToObject(e)[t];if(!ae(n)){if(!se.IsCallable(n))throw new TypeError("Method not callable: "+t);return n}},IteratorComplete:function(e){return!!e.done},IteratorClose:function(e,t){var n=se.GetMethod(e,"return");if(void 0!==n){var r,i;try{r=se.Call(n,e)}catch(e){i=e}if(!t){if(i)throw i;if(!se.TypeIsObject(r))throw new TypeError("Iterator's return method returned a non-object.")}}},IteratorNext:function(e){var t=arguments.length>1?e.next(arguments[1]):e.next();if(!se.TypeIsObject(t))throw new TypeError("bad iterator");return t},IteratorStep:function(e){var t=se.IteratorNext(e);return!se.IteratorComplete(t)&&t},Construct:function(e,t,n,r){var i=void 0===n?e:n;if(!r&&re.construct)return re.construct(e,t,i);var o=i.prototype;se.TypeIsObject(o)||(o=Object.prototype);var a=b(o),s=se.Call(e,a,t);return se.TypeIsObject(s)?s:a},SpeciesConstructor:function(e,t){var n=e.constructor;if(void 0===n)return t;if(!se.TypeIsObject(n))throw new TypeError("Bad constructor");var r=n[z];if(ae(r))return t;if(!se.IsConstructor(r))throw new TypeError("Bad @@species");return r},CreateHTML:function(e,t,n,r){var i=se.ToString(e),o="<"+t;if(""!==n){o+=" "+n+'="'+se.ToString(r).replace(/"/g,""")+'"'}return o+">"+i+"</"+t+">"},IsRegExp:function(e){if(!se.TypeIsObject(e))return!1;var t=e[W.match];return void 0!==t?!!t:K.regex(e)},ToString:function(e){return ie(e)}};if(c&&te){var ce=function(e){if(K.symbol(W[e]))return W[e];var t=W.for("Symbol."+e);return Object.defineProperty(W,e,{configurable:!1,enumerable:!1,writable:!1,value:t}),t};if(!K.symbol(W.search)){var ue=ce("search"),le=String.prototype.search;h(RegExp.prototype,ue,function(e){return se.Call(le,e,[this])});var fe=function(e){var t=se.RequireObjectCoercible(this);if(!ae(e)){var n=se.GetMethod(e,ue);if(void 0!==n)return se.Call(n,e,[t])}return se.Call(le,t,[se.ToString(e)])};ee(String.prototype,"search",fe)}if(!K.symbol(W.replace)){var pe=ce("replace"),de=String.prototype.replace;h(RegExp.prototype,pe,function(e,t){return se.Call(de,e,[this,t])});var he=function(e,t){var n=se.RequireObjectCoercible(this);if(!ae(e)){var r=se.GetMethod(e,pe);if(void 0!==r)return se.Call(r,e,[n,t])}return se.Call(de,n,[se.ToString(e),t])};ee(String.prototype,"replace",he)}if(!K.symbol(W.split)){var ge=ce("split"),ye=String.prototype.split;h(RegExp.prototype,ge,function(e,t){return se.Call(ye,e,[this,t])});var me=function(e,t){var n=se.RequireObjectCoercible(this);if(!ae(e)){var r=se.GetMethod(e,ge);if(void 0!==r)return se.Call(r,e,[n,t])}return se.Call(ye,n,[se.ToString(e),t])};ee(String.prototype,"split",me)}var ve=K.symbol(W.match),be=ve&&function(){var e={};return e[W.match]=function(){return 42},42!=="a".match(e)}();if(!ve||be){var we=ce("match"),xe=String.prototype.match;h(RegExp.prototype,we,function(e){return se.Call(xe,e,[this])});var Te=function(e){var t=se.RequireObjectCoercible(this);if(!ae(e)){var n=se.GetMethod(e,we);if(void 0!==n)return se.Call(n,e,[t])}return se.Call(xe,t,[se.ToString(e)])};ee(String.prototype,"match",Te)}}var Se=function(e,t,n){v.preserveToString(t,e),Object.setPrototypeOf&&Object.setPrototypeOf(e,t),c?l(Object.getOwnPropertyNames(e),function(r){r in q||n[r]||v.proxy(e,r,t)}):l(Object.keys(e),function(r){r in q||n[r]||(t[r]=e[r])}),t.prototype=e.prototype,v.redefine(e.prototype,"constructor",t)},ke=function(){return this},Oe=function(e){c&&!R(e,z)&&v.getter(e,z,ke)},je=function(e,t){var n=t||function(){return this};h(e,ne,n),!e[ne]&&K.symbol(ne)&&(e[ne]=n)},Ae=function(e,t,n){c?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:n}):e[t]=n},Ce=function(e,t,n){if(Ae(e,t,n),!se.SameValue(e[t],n))throw new TypeError("property is nonconfigurable")},Ee=function(e,t,n,r){if(!se.TypeIsObject(e))throw new TypeError("Constructor requires `new`: "+t.name);var i=t.prototype;se.TypeIsObject(i)||(i=n);var o=b(i);for(var a in r)if(R(r,a)){var s=r[a];h(o,a,s,!0)}return o};if(String.fromCodePoint&&1!==String.fromCodePoint.length){var Ne=String.fromCodePoint;ee(String,"fromCodePoint",function(e){return se.Call(Ne,this,arguments)})}var _e={fromCodePoint:function(e){for(var t,n=[],r=0,i=arguments.length;r<i;r++){if(t=Number(arguments[r]),!se.SameValue(t,se.ToInteger(t))||t<0||t>1114111)throw new RangeError("Invalid code point "+t);t<65536?A(n,String.fromCharCode(t)):(t-=65536,A(n,String.fromCharCode(55296+(t>>10))),A(n,String.fromCharCode(t%1024+56320)))}return n.join("")},raw:function(e){var t=se.ToObject(e,"bad callSite"),n=se.ToObject(t.raw,"bad raw value"),r=n.length,i=se.ToLength(r);if(i<=0)return"";for(var o,a,s,c,u=[],l=0;l<i&&(o=se.ToString(l),s=se.ToString(n[o]),A(u,s),!(l+1>=i));)a=l+1<arguments.length?arguments[l+1]:"",c=se.ToString(a),A(u,c),l+=1;return u.join("")}};String.raw&&"xy"!==String.raw({raw:{0:"x",1:"y",length:2}})&&ee(String,"raw",_e.raw),g(String,_e);var Pe=function e(t,n){if(n<1)return"";if(n%2)return e(t,n-1)+t;var r=e(t,n/2);return r+r},Ie={repeat:function(e){var t=se.ToString(se.RequireObjectCoercible(this)),n=se.ToInteger(e);if(n<0||n>=1/0)throw new RangeError("repeat count must be less than infinity and not overflow maximum string size");return Pe(t,n)},startsWith:function(e){var t=se.ToString(se.RequireObjectCoercible(this));if(se.IsRegExp(e))throw new TypeError('Cannot call method "startsWith" with a regex');var n,r=se.ToString(e);arguments.length>1&&(n=arguments[1]);var i=N(se.ToInteger(n),0);return j(t,i,i+r.length)===r},endsWith:function(e){var t=se.ToString(se.RequireObjectCoercible(this));if(se.IsRegExp(e))throw new TypeError('Cannot call method "endsWith" with a regex');var n,r=se.ToString(e),i=t.length;arguments.length>1&&(n=arguments[1]);var o=void 0===n?i:se.ToInteger(n),a=_(N(o,0),i);return j(t,a-r.length,a)===r},includes:function(e){if(se.IsRegExp(e))throw new TypeError('"includes" does not accept a RegExp');var t,n=se.ToString(e);return arguments.length>1&&(t=arguments[1]),-1!==S(this,n,t)},codePointAt:function(e){var t=se.ToString(se.RequireObjectCoercible(this)),n=se.ToInteger(e),r=t.length;if(n>=0&&n<r){var i=t.charCodeAt(n),o=n+1===r;if(i<55296||i>56319||o)return i;var a=t.charCodeAt(n+1);return a<56320||a>57343?i:1024*(i-55296)+(a-56320)+65536}}};if(String.prototype.includes&&!1!=="a".includes("a",1/0)&&ee(String.prototype,"includes",Ie.includes),String.prototype.startsWith&&String.prototype.endsWith){var Me=o(function(){return"/a/".startsWith(/a/)}),De=a(function(){return!1==="abc".startsWith("a",1/0)});Me&&De||(ee(String.prototype,"startsWith",Ie.startsWith),ee(String.prototype,"endsWith",Ie.endsWith))}if(te){a(function(){var e=/a/;return e[W.match]=!1,"/a/".startsWith(e)})||ee(String.prototype,"startsWith",Ie.startsWith);a(function(){var e=/a/;return e[W.match]=!1,"/a/".endsWith(e)})||ee(String.prototype,"endsWith",Ie.endsWith);a(function(){var e=/a/;return e[W.match]=!1,"/a/".includes(e)})||ee(String.prototype,"includes",Ie.includes)}g(String.prototype,Ie);var Le=["\t\n\v\f\r \xa0\u1680\u180e\u2000\u2001\u2002\u2003","\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028","\u2029\ufeff"].join(""),Re=new RegExp("(^["+Le+"]+)|(["+Le+"]+$)","g"),qe=function(){return se.ToString(se.RequireObjectCoercible(this)).replace(Re,"")},Fe=["\x85","\u200b","\ufffe"].join(""),He=new RegExp("["+Fe+"]","g"),Ve=/^[-+]0x[0-9a-f]+$/i,$e=Fe.trim().length!==Fe.length;h(String.prototype,"trim",qe,$e);var Be=function(e){return{value:e,done:0===arguments.length}},We=function(e){se.RequireObjectCoercible(e),this._s=se.ToString(e),this._i=0};We.prototype.next=function(){var e=this._s,t=this._i;if(void 0===e||t>=e.length)return this._s=void 0,Be();var n,r,i=e.charCodeAt(t);return i<55296||i>56319||t+1===e.length?r=1:(n=e.charCodeAt(t+1),r=n<56320||n>57343?1:2),this._i=t+r,Be(e.substr(t,r))},je(We.prototype),je(String.prototype,function(){return new We(this)});var ze={from:function(e){var t,r=this;arguments.length>1&&(t=arguments[1]);var i,o;if(void 0===t)i=!1;else{if(!se.IsCallable(t))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(o=arguments[2]),i=!0}var a,s,c,u=void 0!==(Q(e)||se.GetMethod(e,ne));if(u){s=se.IsConstructor(r)?Object(new r):[];var l,f,p=se.GetIterator(e);for(c=0;;){if(!1===(l=se.IteratorStep(p)))break;f=l.value;try{i&&(f=void 0===o?t(f,c):n(t,o,f,c)),s[c]=f}catch(e){throw se.IteratorClose(p,!0),e}c+=1}a=c}else{var d=se.ToObject(e);a=se.ToLength(d.length),s=se.IsConstructor(r)?Object(new r(a)):new Array(a);var h;for(c=0;c<a;++c)h=d[c],i&&(h=void 0===o?t(h,c):n(t,o,h,c)),Ce(s,c,h)}return s.length=a,s},of:function(){for(var e=arguments.length,t=this,n=r(t)||!se.IsCallable(t)?new Array(e):se.Construct(t,[e]),i=0;i<e;++i)Ce(n,i,arguments[i]);return n.length=e,n}};g(Array,ze),Oe(Array),e=function(e,t){this.i=0,this.array=e,this.kind=t},g(e.prototype,{next:function(){var t=this.i,n=this.array;if(!(this instanceof e))throw new TypeError("Not an ArrayIterator");if(void 0!==n)for(var r=se.ToLength(n.length);t<r;t++){var i,o=this.kind;return"key"===o?i=t:"value"===o?i=n[t]:"entry"===o&&(i=[t,n[t]]),this.i=t+1,Be(i)}return this.array=void 0,Be()}}),je(e.prototype),Array.of===ze.of||function(){var e=function(e){this.length=e};e.prototype=[];var t=Array.of.apply(e,[1,2]);return t instanceof e&&2===t.length}()||ee(Array,"of",ze.of);var Ue={copyWithin:function(e,t){var n,r=se.ToObject(this),i=se.ToLength(r.length),o=se.ToInteger(e),a=se.ToInteger(t),s=o<0?N(i+o,0):_(o,i),c=a<0?N(i+a,0):_(a,i);arguments.length>2&&(n=arguments[2]);var u=void 0===n?i:se.ToInteger(n),l=u<0?N(i+u,0):_(u,i),f=_(l-c,i-s),p=1;for(c<s&&s<c+f&&(p=-1,c+=f-1,s+=f-1);f>0;)c in r?r[s]=r[c]:delete r[s],c+=p,s+=p,f-=1;return r},fill:function(e){var t;arguments.length>1&&(t=arguments[1]);var n;arguments.length>2&&(n=arguments[2]);var r=se.ToObject(this),i=se.ToLength(r.length);t=se.ToInteger(void 0===t?0:t),n=se.ToInteger(void 0===n?i:n);for(var o=t<0?N(i+t,0):_(t,i),a=n<0?i+n:n,s=o;s<i&&s<a;++s)r[s]=e;return r},find:function(e){var t=se.ToObject(this),r=se.ToLength(t.length);if(!se.IsCallable(e))throw new TypeError("Array#find: predicate must be a function");for(var i,o=arguments.length>1?arguments[1]:null,a=0;a<r;a++)if(i=t[a],o){if(n(e,o,i,a,t))return i}else if(e(i,a,t))return i},findIndex:function(e){var t=se.ToObject(this),r=se.ToLength(t.length);if(!se.IsCallable(e))throw new TypeError("Array#findIndex: predicate must be a function");for(var i=arguments.length>1?arguments[1]:null,o=0;o<r;o++)if(i){if(n(e,i,t[o],o,t))return o}else if(e(t[o],o,t))return o;return-1},keys:function(){return new e(this,"key")},values:function(){return new e(this,"value")},entries:function(){return new e(this,"entry")}};if(Array.prototype.keys&&!se.IsCallable([1].keys().next)&&delete Array.prototype.keys,Array.prototype.entries&&!se.IsCallable([1].entries().next)&&delete Array.prototype.entries,Array.prototype.keys&&Array.prototype.entries&&!Array.prototype.values&&Array.prototype[ne]&&(g(Array.prototype,{values:Array.prototype[ne]}),K.symbol(W.unscopables)&&(Array.prototype[W.unscopables].values=!0)),u&&Array.prototype.values&&"values"!==Array.prototype.values.name){var Ge=Array.prototype.values;ee(Array.prototype,"values",function(){return se.Call(Ge,this,arguments)}),h(Array.prototype,ne,Array.prototype.values,!0)}g(Array.prototype,Ue),1/[!0].indexOf(!0,-0)<0&&h(Array.prototype,"indexOf",function(e){var t=k(this,arguments);return 0===t&&1/t<0?0:t},!0),je(Array.prototype,function(){return this.values()}),Object.getPrototypeOf&&je(Object.getPrototypeOf([].values()));var Je=function(){return a(function(){return 0===Array.from({length:-1}).length})}(),Xe=function(){var e=Array.from([0].entries());return 1===e.length&&r(e[0])&&0===e[0][0]&&0===e[0][1]}();if(Je&&Xe||ee(Array,"from",ze.from),!function(){return a(function(){return Array.from([0],void 0)})}()){var Ye=Array.from;ee(Array,"from",function(e){return arguments.length>1&&void 0!==arguments[1]?se.Call(Ye,this,arguments):n(Ye,this,e)})}var Ze=-(Math.pow(2,32)-1),Qe=function(e,t){var r={length:Ze};return r[t?(r.length>>>0)-1:0]=!0,a(function(){return n(e,r,function(){throw new RangeError("should not reach here")},[]),!0})};if(!Qe(Array.prototype.forEach)){var Ke=Array.prototype.forEach;ee(Array.prototype,"forEach",function(e){return se.Call(Ke,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.map)){var et=Array.prototype.map;ee(Array.prototype,"map",function(e){return se.Call(et,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.filter)){var tt=Array.prototype.filter;ee(Array.prototype,"filter",function(e){return se.Call(tt,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.some)){var nt=Array.prototype.some;ee(Array.prototype,"some",function(e){return se.Call(nt,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.every)){var rt=Array.prototype.every;ee(Array.prototype,"every",function(e){return se.Call(rt,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.reduce)){var it=Array.prototype.reduce;ee(Array.prototype,"reduce",function(e){return se.Call(it,this.length>=0?this:[],arguments)})}if(!Qe(Array.prototype.reduceRight,!0)){var ot=Array.prototype.reduceRight;ee(Array.prototype,"reduceRight",function(e){return se.Call(ot,this.length>=0?this:[],arguments)})}var at=8!==Number("0o10"),st=2!==Number("0b10"),ct=d(Fe,function(e){return 0===Number(e+0+e)});if(at||st||ct){var ut=Number,lt=/^0b[01]+$/i,ft=/^0o[0-7]+$/i,pt=lt.test.bind(lt),dt=ft.test.bind(ft),ht=function(e){var t;if("function"==typeof e.valueOf&&(t=e.valueOf(),K.primitive(t)))return t;if("function"==typeof e.toString&&(t=e.toString(),K.primitive(t)))return t;throw new TypeError("No default value")},gt=He.test.bind(He),yt=Ve.test.bind(Ve),mt=function(){var e=function(t){var n;"string"==typeof(n=arguments.length>0?K.primitive(t)?t:ht(t):0)&&(n=se.Call(qe,n),pt(n)?n=parseInt(j(n,2),2):dt(n)?n=parseInt(j(n,2),8):(gt(n)||yt(n))&&(n=NaN));var r=this,i=a(function(){return ut.prototype.valueOf.call(r),!0});return r instanceof e&&!i?new ut(n):ut(n)};return e}();Se(ut,mt,{}),g(mt,{NaN:ut.NaN,MAX_VALUE:ut.MAX_VALUE,MIN_VALUE:ut.MIN_VALUE,NEGATIVE_INFINITY:ut.NEGATIVE_INFINITY,POSITIVE_INFINITY:ut.POSITIVE_INFINITY}),Number=mt,v.redefine(x,"Number",mt)}var vt=Math.pow(2,53)-1;g(Number,{MAX_SAFE_INTEGER:vt,MIN_SAFE_INTEGER:-vt,EPSILON:2.220446049250313e-16,parseInt:x.parseInt,parseFloat:x.parseFloat,isFinite:G,isInteger:function(e){return G(e)&&se.ToInteger(e)===e},isSafeInteger:function(e){return Number.isInteger(e)&&I(e)<=Number.MAX_SAFE_INTEGER},isNaN:U}),h(Number,"parseInt",x.parseInt,Number.parseInt!==x.parseInt),1===[,1].find(function(){return!0})&&ee(Array.prototype,"find",Ue.find),0!==[,1].findIndex(function(){return!0})&&ee(Array.prototype,"findIndex",Ue.findIndex);var bt=Function.bind.call(Function.bind,Object.prototype.propertyIsEnumerable),wt=function(e,t){c&&bt(e,t)&&Object.defineProperty(e,t,{enumerable:!1})},xt=function(){for(var e=Number(this),t=arguments.length,n=t-e,r=new Array(n<0?0:n),i=e;i<t;++i)r[i-e]=arguments[i];return r},Tt=function(e){return function(t,n){return t[n]=e[n],t}},St=function(e,t){var n,r=i(Object(t));return se.IsCallable(Object.getOwnPropertySymbols)&&(n=p(Object.getOwnPropertySymbols(Object(t)),bt(t))),f(O(r,n||[]),Tt(t),e)},kt={assign:function(e,t){var n=se.ToObject(e,"Cannot convert undefined or null to object");return f(se.Call(xt,1,arguments),St,n)},is:function(e,t){return se.SameValue(e,t)}};if(Object.assign&&Object.preventExtensions&&function(){var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return"y"===e[1]}}()&&ee(Object,"assign",kt.assign),g(Object,kt),c){var Ot={setPrototypeOf:function(e,t){var r,i=function(e,t){if(!se.TypeIsObject(e))throw new TypeError("cannot set prototype on a non-object");if(null!==t&&!se.TypeIsObject(t))throw new TypeError("can only set prototype to an object or null"+t)},o=function(e,t){return i(e,t),n(r,e,t),e};try{r=e.getOwnPropertyDescriptor(e.prototype,"__proto__").set,n(r,{},null)}catch(t){if(e.prototype!=={}.__proto__)return;r=function(e){this.__proto__=e},o.polyfill=o(o({},null),e.prototype)instanceof e}return o}(Object)};g(Object,Ot)}if(Object.setPrototypeOf&&Object.getPrototypeOf&&null!==Object.getPrototypeOf(Object.setPrototypeOf({},null))&&null===Object.getPrototypeOf(Object.create(null))&&function(){var e=Object.create(null),t=Object.getPrototypeOf,n=Object.setPrototypeOf;Object.getPrototypeOf=function(n){var r=t(n);return r===e?null:r},Object.setPrototypeOf=function(t,r){return n(t,null===r?e:r)},Object.setPrototypeOf.polyfill=!1}(),!!o(function(){return Object.keys("foo")})){var jt=Object.keys;ee(Object,"keys",function(e){return jt(se.ToObject(e))}),i=Object.keys}if(o(function(){return Object.keys(/a/g)})){var At=Object.keys;ee(Object,"keys",function(e){if(K.regex(e)){var t=[];for(var n in e)R(e,n)&&A(t,n);return t}return At(e)}),i=Object.keys}if(Object.getOwnPropertyNames){if(!!o(function(){return Object.getOwnPropertyNames("foo")})){var Ct="object"===("undefined"==typeof window?"undefined":_typeof(window))?Object.getOwnPropertyNames(window):[],Et=Object.getOwnPropertyNames;ee(Object,"getOwnPropertyNames",function(e){var t=se.ToObject(e);if("[object Window]"===y(t))try{return Et(t)}catch(e){return O([],Ct)}return Et(t)})}}if(Object.getOwnPropertyDescriptor){if(!!o(function(){return Object.getOwnPropertyDescriptor("foo","bar")})){var Nt=Object.getOwnPropertyDescriptor;ee(Object,"getOwnPropertyDescriptor",function(e,t){return Nt(se.ToObject(e),t)})}}if(Object.seal){if(!!o(function(){return Object.seal("foo")})){var _t=Object.seal;ee(Object,"seal",function(e){return se.TypeIsObject(e)?_t(e):e})}}if(Object.isSealed){if(!!o(function(){return Object.isSealed("foo")})){var Pt=Object.isSealed;ee(Object,"isSealed",function(e){return!se.TypeIsObject(e)||Pt(e)})}}if(Object.freeze){if(!!o(function(){return Object.freeze("foo")})){var It=Object.freeze;ee(Object,"freeze",function(e){return se.TypeIsObject(e)?It(e):e})}}if(Object.isFrozen){if(!!o(function(){return Object.isFrozen("foo")})){var Mt=Object.isFrozen;ee(Object,"isFrozen",function(e){return!se.TypeIsObject(e)||Mt(e)})}}if(Object.preventExtensions){if(!!o(function(){return Object.preventExtensions("foo")})){var Dt=Object.preventExtensions;ee(Object,"preventExtensions",function(e){return se.TypeIsObject(e)?Dt(e):e})}}if(Object.isExtensible){if(!!o(function(){return Object.isExtensible("foo")})){var Lt=Object.isExtensible;ee(Object,"isExtensible",function(e){return!!se.TypeIsObject(e)&&Lt(e)})}}if(Object.getPrototypeOf){if(!!o(function(){return Object.getPrototypeOf("foo")})){var Rt=Object.getPrototypeOf;ee(Object,"getPrototypeOf",function(e){return Rt(se.ToObject(e))})}}var qt=c&&function(){var e=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags");return e&&se.IsCallable(e.get)}();if(c&&!qt){var Ft=function(){if(!se.TypeIsObject(this))throw new TypeError("Method called on incompatible type: must be an object.");var e="";return this.global&&(e+="g"),this.ignoreCase&&(e+="i"),this.multiline&&(e+="m"),this.unicode&&(e+="u"),this.sticky&&(e+="y"),e};v.getter(RegExp.prototype,"flags",Ft)}var Ht=c&&a(function(){return"/a/i"===String(new RegExp(/a/g,"i"))}),Vt=te&&c&&function(){var e=/./;return e[W.match]=!1,RegExp(e)===e}(),$t=a(function(){return"/abc/"===RegExp.prototype.toString.call({source:"abc"})}),Bt=$t&&a(function(){return"/a/b"===RegExp.prototype.toString.call({source:"a",flags:"b"})});if(!$t||!Bt){var Wt=RegExp.prototype.toString;h(RegExp.prototype,"toString",function(){var e=se.RequireObjectCoercible(this);return K.regex(e)?n(Wt,e):"/"+ie(e.source)+"/"+ie(e.flags)},!0),v.preserveToString(RegExp.prototype.toString,Wt)}if(c&&(!Ht||Vt)){var zt=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags").get,Ut=Object.getOwnPropertyDescriptor(RegExp.prototype,"source")||{},Gt=function(){return this.source},Jt=se.IsCallable(Ut.get)?Ut.get:Gt,Xt=RegExp,Yt=function(){return function e(t,n){var r=se.IsRegExp(t);if(!(this instanceof e)&&r&&void 0===n&&t.constructor===e)return t;var i=t,o=n;return K.regex(t)?(i=se.Call(Jt,t),o=void 0===n?se.Call(zt,t):n,new e(i,o)):(r&&(i=t.source,o=void 0===n?t.flags:n),new Xt(t,n))}}();Se(Xt,Yt,{$input:!0}),RegExp=Yt,v.redefine(x,"RegExp",Yt)}if(c){var Zt={input:"$_",lastMatch:"$&",lastParen:"$+",leftContext:"$`",rightContext:"$'"};l(i(Zt),function(e){e in RegExp&&!(Zt[e]in RegExp)&&v.getter(RegExp,Zt[e],function(){return RegExp[e]})})}Oe(RegExp);var Qt=1/Number.EPSILON,Kt=function(e){return e+Qt-Qt},en=Math.pow(2,-23),tn=Math.pow(2,127)*(2-en),nn=Math.pow(2,-126),rn=Math.E,on=Math.LOG2E,an=Math.LOG10E,sn=Number.prototype.clz;delete Number.prototype.clz;var cn={acosh:function(e){var t=Number(e);if(U(t)||e<1)return NaN;if(1===t)return 0;if(t===1/0)return t;var n=1/(t*t);if(t<2)return X(t-1+L(1-n)*t);var r=t/2;return X(r+L(1-n)*r-1)+1/on},asinh:function(e){var t=Number(e);if(0===t||!T(t))return t;var n=I(t),r=n*n,i=J(t);return n<1?i*X(n+r/(L(r+1)+1)):i*(X(n/2+L(1+1/r)*n/2-1)+1/on)},atanh:function(e){var t=Number(e);if(0===t)return t;if(-1===t)return-1/0;if(1===t)return 1/0;if(U(t)||t<-1||t>1)return NaN;var n=I(t);return J(t)*X(2*n/(1-n))/2},cbrt:function(e){var t=Number(e);if(0===t)return t;var n,r=t<0;return r&&(t=-t),t===1/0?n=1/0:(n=M(D(t)/3),n=(t/(n*n)+2*n)/3),r?-n:n},clz32:function(e){var t=Number(e),n=se.ToUint32(t);return 0===n?32:sn?se.Call(sn,n):31-P(D(n+.5)*on)},cosh:function(e){var t=Number(e);if(0===t)return 1;if(U(t))return NaN;if(!T(t))return 1/0;var n=M(I(t)-1);return(n+1/(n*rn*rn))*(rn/2)},expm1:function(e){var t=Number(e);if(t===-1/0)return-1;if(!T(t)||0===t)return t;if(I(t)>.5)return M(t)-1;for(var n=t,r=0,i=1;r+n!==r;)r+=n,i+=1,n*=t/i;return r},hypot:function(e,t){for(var n=0,r=0,i=0;i<arguments.length;++i){var o=I(Number(arguments[i]));r<o?(n*=r/o*(r/o),n+=1,r=o):n+=o>0?o/r*(o/r):o}return r===1/0?1/0:r*L(n)},log2:function(e){return D(e)*on},log10:function(e){return D(e)*an},log1p:X,sign:J,sinh:function(e){var t=Number(e);if(!T(t)||0===t)return t;var n=I(t);if(n<1){var r=Math.expm1(n);return J(t)*r*(1+1/(r+1))/2}var i=M(n-1);return J(t)*(i-1/(i*rn*rn))*(rn/2)},tanh:function(e){var t=Number(e);return U(t)||0===t?t:t>=20?1:t<=-20?-1:(Math.expm1(t)-Math.expm1(-t))/(M(t)+M(-t))},trunc:function(e){var t=Number(e);return t<0?-P(-t):P(t)},imul:function(e,t){var n=se.ToUint32(e),r=se.ToUint32(t),i=n>>>16&65535,o=65535&n,a=r>>>16&65535,s=65535&r;return o*s+(i*s+o*a<<16>>>0)|0},fround:function(e){var t=Number(e);if(0===t||t===1/0||t===-1/0||U(t))return t;var n=J(t),r=I(t);if(r<nn)return n*Kt(r/nn/en)*nn*en;var i=(1+en/Number.EPSILON)*r,o=i-(i-r);return o>tn||U(o)?n*(1/0):n*o}},un=function(e,t,n){return I(1-e/t)/Number.EPSILON<(n||8)};g(Math,cn),h(Math,"sinh",cn.sinh,Math.sinh(710)===1/0),h(Math,"cosh",cn.cosh,Math.cosh(710)===1/0),h(Math,"log1p",cn.log1p,-1e-17!==Math.log1p(-1e-17)),h(Math,"asinh",cn.asinh,Math.asinh(-1e7)!==-Math.asinh(1e7)),h(Math,"asinh",cn.asinh,Math.asinh(1e300)===1/0),h(Math,"atanh",cn.atanh,0===Math.atanh(1e-300)),h(Math,"tanh",cn.tanh,-2e-17!==Math.tanh(-2e-17)),h(Math,"acosh",cn.acosh,Math.acosh(Number.MAX_VALUE)===1/0),h(Math,"acosh",cn.acosh,!un(Math.acosh(1+Number.EPSILON),Math.sqrt(2*Number.EPSILON))),h(Math,"cbrt",cn.cbrt,!un(Math.cbrt(1e-300),1e-100)),h(Math,"sinh",cn.sinh,-2e-17!==Math.sinh(-2e-17));var ln=Math.expm1(10);h(Math,"expm1",cn.expm1,ln>22025.465794806718||ln<22025.465794806718);var fn=Math.round,pn=0===Math.round(.5-Number.EPSILON/4)&&1===Math.round(Number.EPSILON/3.99-.5),dn=Qt+1,hn=2*Qt-1,gn=[dn,hn].every(function(e){return Math.round(e)===e});h(Math,"round",function(e){var t=P(e),n=-1===t?-0:t+1;return e-t<.5?t:n},!pn||!gn),v.preserveToString(Math.round,fn);var yn=Math.imul;-5!==Math.imul(4294967295,5)&&(Math.imul=cn.imul,v.preserveToString(Math.imul,yn)),2!==Math.imul.length&&ee(Math,"imul",function(e,t){return se.Call(yn,Math,arguments)});var mn=function(){var e=x.setTimeout;if("function"==typeof e||"object"===(void 0===e?"undefined":_typeof(e))){se.IsPromise=function(e){return!!se.TypeIsObject(e)&&void 0!==e._promise};var t,r=function(e){if(!se.IsConstructor(e))throw new TypeError("Bad promise constructor");var t=this,n=function(e,n){if(void 0!==t.resolve||void 0!==t.reject)throw new TypeError("Bad Promise implementation!");t.resolve=e,t.reject=n};if(t.resolve=void 0,t.reject=void 0,t.promise=new e(n),!se.IsCallable(t.resolve)||!se.IsCallable(t.reject))throw new TypeError("Bad promise constructor")};"undefined"!=typeof window&&se.IsCallable(window.postMessage)&&(t=function(){var e=[],t=function(t){A(e,t),window.postMessage("zero-timeout-message","*")},n=function(t){if(t.source===window&&"zero-timeout-message"===t.data){if(t.stopPropagation(),0===e.length)return;E(e)()}};return window.addEventListener("message",n,!0),t});var i,o,a=se.IsCallable(x.setImmediate)?x.setImmediate:"object"===("undefined"==typeof process?"undefined":_typeof(process))&&process.nextTick?process.nextTick:function(){var e=x.Promise,t=e&&e.resolve&&e.resolve();return t&&function(e){return t.then(e)}}()||(se.IsCallable(t)?t():function(t){e(t,0)}),s=function(e){return e},c=function(e){throw e},u={},l=function(e,t,n){a(function(){f(e,t,n)})},f=function(e,t,n){var r,i;if(t===u)return e(n);try{r=e(n),i=t.resolve}catch(e){r=e,i=t.reject}i(r)},p=function(e,t){var n=e._promise,r=n.reactionLength;if(r>0&&(l(n.fulfillReactionHandler0,n.reactionCapability0,t),n.fulfillReactionHandler0=void 0,n.rejectReactions0=void 0,n.reactionCapability0=void 0,r>1))for(var i=1,o=0;i<r;i++,o+=3)l(n[o+0],n[o+2],t),e[o+0]=void 0,e[o+1]=void 0,e[o+2]=void 0;n.result=t,n.state=1,n.reactionLength=0},d=function(e,t){var n=e._promise,r=n.reactionLength;if(r>0&&(l(n.rejectReactionHandler0,n.reactionCapability0,t),n.fulfillReactionHandler0=void 0,n.rejectReactions0=void 0,n.reactionCapability0=void 0,r>1))for(var i=1,o=0;i<r;i++,o+=3)l(n[o+1],n[o+2],t),e[o+0]=void 0,e[o+1]=void 0,e[o+2]=void 0;n.result=t,n.state=2,n.reactionLength=0},h=function(e){var t=!1;return{resolve:function(n){var r;if(!t){if(t=!0,n===e)return d(e,new TypeError("Self resolution"));if(!se.TypeIsObject(n))return p(e,n);try{r=n.then}catch(t){return d(e,t)}if(!se.IsCallable(r))return p(e,n);a(function(){m(e,n,r)})}},reject:function(n){if(!t)return t=!0,d(e,n)}}
},y=function(e,t,r,i){e===o?n(e,t,r,i,u):n(e,t,r,i)},m=function(e,t,n){var r=h(e),i=r.resolve,o=r.reject;try{y(n,t,i,o)}catch(e){o(e)}},v=function(){var e=function(t){if(!(this instanceof e))throw new TypeError('Constructor Promise requires "new"');if(this&&this._promise)throw new TypeError("Bad construction");if(!se.IsCallable(t))throw new TypeError("not a valid resolver");var n=Ee(this,e,i,{_promise:{result:void 0,state:0,reactionLength:0,fulfillReactionHandler0:void 0,rejectReactionHandler0:void 0,reactionCapability0:void 0}}),r=h(n),o=r.reject;try{t(r.resolve,o)}catch(e){o(e)}return n};return e}();i=v.prototype;var b=function(e,t,n,r){var i=!1;return function(o){if(!i&&(i=!0,t[e]=o,0==--r.count)){(0,n.resolve)(t)}}},w=function(e,t,n){for(var r,i,o=e.iterator,a=[],s={count:1},c=0;;){try{if(!1===(r=se.IteratorStep(o))){e.done=!0;break}i=r.value}catch(t){throw e.done=!0,t}a[c]=void 0;var u=t.resolve(i),l=b(c,a,n,s);s.count+=1,y(u.then,u,l,n.reject),c+=1}if(0==--s.count){(0,n.resolve)(a)}return n.promise},T=function(e,t,n){for(var r,i,o,a=e.iterator;;){try{if(!1===(r=se.IteratorStep(a))){e.done=!0;break}i=r.value}catch(t){throw e.done=!0,t}o=t.resolve(i),y(o.then,o,n.resolve,n.reject)}return n.promise};return g(v,{all:function(e){var t=this;if(!se.TypeIsObject(t))throw new TypeError("Promise is not object");var n,i,o=new r(t);try{return n=se.GetIterator(e),i={iterator:n,done:!1},w(i,t,o)}catch(e){var a=e;if(i&&!i.done)try{se.IteratorClose(n,!0)}catch(e){a=e}var s=o.reject;return s(a),o.promise}},race:function(e){var t=this;if(!se.TypeIsObject(t))throw new TypeError("Promise is not object");var n,i,o=new r(t);try{return n=se.GetIterator(e),i={iterator:n,done:!1},T(i,t,o)}catch(e){var a=e;if(i&&!i.done)try{se.IteratorClose(n,!0)}catch(e){a=e}var s=o.reject;return s(a),o.promise}},reject:function(e){var t=this;if(!se.TypeIsObject(t))throw new TypeError("Bad promise constructor");var n=new r(t);return(0,n.reject)(e),n.promise},resolve:function(e){var t=this;if(!se.TypeIsObject(t))throw new TypeError("Bad promise constructor");if(se.IsPromise(e)){var n=e.constructor;if(n===t)return e}var i=new r(t);return(0,i.resolve)(e),i.promise}}),g(i,{catch:function(e){return this.then(null,e)},then:function(e,t){var n=this;if(!se.IsPromise(n))throw new TypeError("not a promise");var i,o=se.SpeciesConstructor(n,v);i=arguments.length>2&&arguments[2]===u&&o===v?u:new r(o);var a,f=se.IsCallable(e)?e:s,p=se.IsCallable(t)?t:c,d=n._promise;if(0===d.state){if(0===d.reactionLength)d.fulfillReactionHandler0=f,d.rejectReactionHandler0=p,d.reactionCapability0=i;else{var h=3*(d.reactionLength-1);d[h+0]=f,d[h+1]=p,d[h+2]=i}d.reactionLength+=1}else if(1===d.state)a=d.result,l(f,i,a);else{if(2!==d.state)throw new TypeError("unexpected Promise state");a=d.result,l(p,i,a)}return i.promise}}),u=new r(v),o=i.then,v}}();if(x.Promise&&(delete x.Promise.accept,delete x.Promise.defer,delete x.Promise.prototype.chain),"function"==typeof mn){g(x,{Promise:mn});var vn=w(x.Promise,function(e){return e.resolve(42).then(function(){})instanceof e}),bn=!o(function(){return x.Promise.reject(42).then(null,5).then(null,q)}),wn=o(function(){return x.Promise.call(3,q)}),xn=function(e){var t=e.resolve(5);t.constructor={};var n=e.resolve(t);try{n.then(null,q).then(null,q)}catch(e){return!0}return t===n}(x.Promise),Tn=c&&function(){var e=0,t=Object.defineProperty({},"then",{get:function(){e+=1}});return Promise.resolve(t),1===e}(),Sn=function e(t){var n=new Promise(t);t(3,function(){}),this.then=n.then,this.constructor=e};Sn.prototype=Promise.prototype,Sn.all=Promise.all;var kn=a(function(){return!!Sn.all([1,2])});if(vn&&bn&&wn&&!xn&&Tn&&!kn||(Promise=mn,ee(x,"Promise",mn)),1!==Promise.all.length){var On=Promise.all;ee(Promise,"all",function(e){return se.Call(On,this,arguments)})}if(1!==Promise.race.length){var jn=Promise.race;ee(Promise,"race",function(e){return se.Call(jn,this,arguments)})}if(1!==Promise.resolve.length){var An=Promise.resolve;ee(Promise,"resolve",function(e){return se.Call(An,this,arguments)})}if(1!==Promise.reject.length){var Cn=Promise.reject;ee(Promise,"reject",function(e){return se.Call(Cn,this,arguments)})}wt(Promise,"all"),wt(Promise,"race"),wt(Promise,"resolve"),wt(Promise,"reject"),Oe(Promise)}var En=function(e){var t=i(f(e,function(e,t){return e[t]=!0,e},{}));return e.join(":")===t.join(":")},Nn=En(["z","a","bb"]),_n=En(["z",1,"a","3",2]);if(c){var Pn=function(e,t){return t||Nn?ae(e)?"^"+se.ToString(e):"string"==typeof e?"$"+e:"number"==typeof e?_n?e:"n"+e:"boolean"==typeof e?"b"+e:null:null},In=function(){return Object.create?Object.create(null):{}},Mn=function(e,t,i){if(r(i)||K.string(i))l(i,function(e){if(!se.TypeIsObject(e))throw new TypeError("Iterator value "+e+" is not an entry object");t.set(e[0],e[1])});else if(i instanceof e)n(e.prototype.forEach,i,function(e,n){t.set(n,e)});else{var o,a;if(!ae(i)){if(a=t.set,!se.IsCallable(a))throw new TypeError("bad map");o=se.GetIterator(i)}if(void 0!==o)for(;;){var s=se.IteratorStep(o);if(!1===s)break;var c=s.value;try{if(!se.TypeIsObject(c))throw new TypeError("Iterator value "+c+" is not an entry object");n(a,t,c[0],c[1])}catch(e){throw se.IteratorClose(o,!0),e}}}},Dn=function(e,t,i){if(r(i)||K.string(i))l(i,function(e){t.add(e)});else if(i instanceof e)n(e.prototype.forEach,i,function(e){t.add(e)});else{var o,a;if(!ae(i)){if(a=t.add,!se.IsCallable(a))throw new TypeError("bad set");o=se.GetIterator(i)}if(void 0!==o)for(;;){var s=se.IteratorStep(o);if(!1===s)break;var c=s.value;try{n(a,t,c)}catch(e){throw se.IteratorClose(o,!0),e}}}},Ln={Map:function(){var e={},t=function(e,t){this.key=e,this.value=t,this.next=null,this.prev=null};t.prototype.isRemoved=function(){return this.key===e};var r=function(e){return!!e._es6map},i=function(e,t){if(!se.TypeIsObject(e)||!r(e))throw new TypeError("Method Map.prototype."+t+" called on incompatible receiver "+se.ToString(e))},o=function(e,t){i(e,"[[MapIterator]]"),this.head=e._head,this.i=this.head,this.kind=t};o.prototype={isMapIterator:!0,next:function(){if(!this.isMapIterator)throw new TypeError("Not a MapIterator");var e=this.i,t=this.kind,n=this.head;if(void 0===this.i)return Be();for(;e.isRemoved()&&e!==n;)e=e.prev;for(var r;e.next!==n;)if(e=e.next,!e.isRemoved())return r="key"===t?e.key:"value"===t?e.value:[e.key,e.value],this.i=e,Be(r);return this.i=void 0,Be()}},je(o.prototype);var a,s=function e(){if(!(this instanceof e))throw new TypeError('Constructor Map requires "new"');if(this&&this._es6map)throw new TypeError("Bad construction");var n=Ee(this,e,a,{_es6map:!0,_head:null,_map:F?new F:null,_size:0,_storage:In()}),r=new t(null,null);return r.next=r.prev=r,n._head=r,arguments.length>0&&Mn(e,n,arguments[0]),n};return a=s.prototype,v.getter(a,"size",function(){if(void 0===this._size)throw new TypeError("size method called on incompatible Map");return this._size}),g(a,{get:function(e){i(this,"get");var t,n=Pn(e,!0);if(null!==n)return t=this._storage[n],t?t.value:void 0;if(this._map)return t=V.call(this._map,e),t?t.value:void 0;for(var r=this._head,o=r;(o=o.next)!==r;)if(se.SameValueZero(o.key,e))return o.value},has:function(e){i(this,"has");var t=Pn(e,!0);if(null!==t)return void 0!==this._storage[t];if(this._map)return $.call(this._map,e);for(var n=this._head,r=n;(r=r.next)!==n;)if(se.SameValueZero(r.key,e))return!0;return!1},set:function(e,n){i(this,"set");var r,o=this._head,a=o,s=Pn(e,!0);if(null!==s){if(void 0!==this._storage[s])return this._storage[s].value=n,this;r=this._storage[s]=new t(e,n),a=o.prev}else this._map&&($.call(this._map,e)?V.call(this._map,e).value=n:(r=new t(e,n),B.call(this._map,e,r),a=o.prev));for(;(a=a.next)!==o;)if(se.SameValueZero(a.key,e))return a.value=n,this;return r=r||new t(e,n),se.SameValue(-0,e)&&(r.key=0),r.next=this._head,r.prev=this._head.prev,r.prev.next=r,r.next.prev=r,this._size+=1,this},delete:function(t){i(this,"delete");var n=this._head,r=n,o=Pn(t,!0);if(null!==o){if(void 0===this._storage[o])return!1;r=this._storage[o].prev,delete this._storage[o]}else if(this._map){if(!$.call(this._map,t))return!1;r=V.call(this._map,t).prev,H.call(this._map,t)}for(;(r=r.next)!==n;)if(se.SameValueZero(r.key,t))return r.key=e,r.value=e,r.prev.next=r.next,r.next.prev=r.prev,this._size-=1,!0;return!1},clear:function(){i(this,"clear"),this._map=F?new F:null,this._size=0,this._storage=In();for(var t=this._head,n=t,r=n.next;(n=r)!==t;)n.key=e,n.value=e,r=n.next,n.next=n.prev=t;t.next=t.prev=t},keys:function(){return i(this,"keys"),new o(this,"key")},values:function(){return i(this,"values"),new o(this,"value")},entries:function(){return i(this,"entries"),new o(this,"key+value")},forEach:function(e){i(this,"forEach");for(var t=arguments.length>1?arguments[1]:null,r=this.entries(),o=r.next();!o.done;o=r.next())t?n(e,t,o.value[1],o.value[0],this):e(o.value[1],o.value[0],this)}}),je(a,a.entries),s}(),Set:function(){var e,t=function(e){return e._es6set&&void 0!==e._storage},r=function(e,n){if(!se.TypeIsObject(e)||!t(e))throw new TypeError("Set.prototype."+n+" called on incompatible receiver "+se.ToString(e))},o=function t(){if(!(this instanceof t))throw new TypeError('Constructor Set requires "new"');if(this&&this._es6set)throw new TypeError("Bad construction");var n=Ee(this,t,e,{_es6set:!0,"[[SetData]]":null,_storage:In()});if(!n._es6set)throw new TypeError("bad set");return arguments.length>0&&Dn(t,n,arguments[0]),n};e=o.prototype;var a=function(e){var t=e;if("^null"===t)return null;if("^undefined"!==t){var n=t.charAt(0);return"$"===n?j(t,1):"n"===n?+j(t,1):"b"===n?"btrue"===t:+t}},s=function(e){if(!e["[[SetData]]"]){var t=new Ln.Map;e["[[SetData]]"]=t,l(i(e._storage),function(e){var n=a(e);t.set(n,n)}),e["[[SetData]]"]=t}e._storage=null};v.getter(o.prototype,"size",function(){return r(this,"size"),this._storage?i(this._storage).length:(s(this),this["[[SetData]]"].size)}),g(o.prototype,{has:function(e){r(this,"has");var t;return this._storage&&null!==(t=Pn(e))?!!this._storage[t]:(s(this),this["[[SetData]]"].has(e))},add:function(e){r(this,"add");var t;return this._storage&&null!==(t=Pn(e))?(this._storage[t]=!0,this):(s(this),this["[[SetData]]"].set(e,e),this)},delete:function(e){r(this,"delete");var t;if(this._storage&&null!==(t=Pn(e))){var n=R(this._storage,t);return delete this._storage[t]&&n}return s(this),this["[[SetData]]"].delete(e)},clear:function(){r(this,"clear"),this._storage&&(this._storage=In()),this["[[SetData]]"]&&this["[[SetData]]"].clear()},values:function(){return r(this,"values"),s(this),new c(this["[[SetData]]"].values())},entries:function(){return r(this,"entries"),s(this),new c(this["[[SetData]]"].entries())},forEach:function(e){r(this,"forEach");var t=arguments.length>1?arguments[1]:null,i=this;s(i),this["[[SetData]]"].forEach(function(r,o){t?n(e,t,o,o,i):e(o,o,i)})}}),h(o.prototype,"keys",o.prototype.values,!0),je(o.prototype,o.prototype.values);var c=function(e){this.it=e};return c.prototype={isSetIterator:!0,next:function(){if(!this.isSetIterator)throw new TypeError("Not a SetIterator");return this.it.next()}},je(c.prototype),o}()};if(x.Set&&!Set.prototype.delete&&Set.prototype.remove&&Set.prototype.items&&Set.prototype.map&&Array.isArray((new Set).keys)&&(x.Set=Ln.Set),x.Map||x.Set){a(function(){return 2===new Map([[1,2]]).get(1)})||(x.Map=function e(){if(!(this instanceof e))throw new TypeError('Constructor Map requires "new"');var t=new F;return arguments.length>0&&Mn(e,t,arguments[0]),delete t.constructor,Object.setPrototypeOf(t,x.Map.prototype),t},x.Map.prototype=b(F.prototype),h(x.Map.prototype,"constructor",x.Map,!0),v.preserveToString(x.Map,F));var Rn=new Map,qn=function(){var e=new Map([[1,0],[2,0],[3,0],[4,0]]);return e.set(-0,e),e.get(0)===e&&e.get(-0)===e&&e.has(0)&&e.has(-0)}(),Fn=Rn.set(1,2)===Rn;qn&&Fn||ee(Map.prototype,"set",function(e,t){return n(B,this,0===e?0:e,t),this}),qn||(g(Map.prototype,{get:function(e){return n(V,this,0===e?0:e)},has:function(e){return n($,this,0===e?0:e)}},!0),v.preserveToString(Map.prototype.get,V),v.preserveToString(Map.prototype.has,$));var Hn=new Set,Vn=Set.prototype.delete&&Set.prototype.add&&Set.prototype.has&&function(e){return e.delete(0),e.add(-0),!e.has(0)}(Hn),$n=Hn.add(1)===Hn;if(!Vn||!$n){var Bn=Set.prototype.add;Set.prototype.add=function(e){return n(Bn,this,0===e?0:e),this},v.preserveToString(Set.prototype.add,Bn)}if(!Vn){var Wn=Set.prototype.has;Set.prototype.has=function(e){return n(Wn,this,0===e?0:e)},v.preserveToString(Set.prototype.has,Wn);var zn=Set.prototype.delete;Set.prototype.delete=function(e){return n(zn,this,0===e?0:e)},v.preserveToString(Set.prototype.delete,zn)}var Un=w(x.Map,function(e){var t=new e([]);return t.set(42,42),t instanceof e}),Gn=Object.setPrototypeOf&&!Un,Jn=function(){try{return!(x.Map()instanceof x.Map)}catch(e){return e instanceof TypeError}}();0===x.Map.length&&!Gn&&Jn||(x.Map=function e(){if(!(this instanceof e))throw new TypeError('Constructor Map requires "new"');var t=new F;return arguments.length>0&&Mn(e,t,arguments[0]),delete t.constructor,Object.setPrototypeOf(t,e.prototype),t},x.Map.prototype=F.prototype,h(x.Map.prototype,"constructor",x.Map,!0),v.preserveToString(x.Map,F));var Xn=w(x.Set,function(e){var t=new e([]);return t.add(42,42),t instanceof e}),Yn=Object.setPrototypeOf&&!Xn,Zn=function(){try{return!(x.Set()instanceof x.Set)}catch(e){return e instanceof TypeError}}();if(0!==x.Set.length||Yn||!Zn){var Qn=x.Set;x.Set=function e(){if(!(this instanceof e))throw new TypeError('Constructor Set requires "new"');var t=new Qn;return arguments.length>0&&Dn(e,t,arguments[0]),delete t.constructor,Object.setPrototypeOf(t,e.prototype),t},x.Set.prototype=Qn.prototype,h(x.Set.prototype,"constructor",x.Set,!0),v.preserveToString(x.Set,Qn)}var Kn=new x.Map,er=!a(function(){return Kn.keys().next().done});if(("function"!=typeof x.Map.prototype.clear||0!==(new x.Set).size||0!==Kn.size||"function"!=typeof x.Map.prototype.keys||"function"!=typeof x.Set.prototype.keys||"function"!=typeof x.Map.prototype.forEach||"function"!=typeof x.Set.prototype.forEach||s(x.Map)||s(x.Set)||"function"!=typeof Kn.keys().next||er||!Un)&&g(x,{Map:Ln.Map,Set:Ln.Set},!0),x.Set.prototype.keys!==x.Set.prototype.values&&h(x.Set.prototype,"keys",x.Set.prototype.values,!0),je(Object.getPrototypeOf((new x.Map).keys())),je(Object.getPrototypeOf((new x.Set).keys())),u&&"has"!==x.Set.prototype.has.name){var tr=x.Set.prototype.has;ee(x.Set.prototype,"has",function(e){return n(tr,this,e)})}}g(x,Ln),Oe(x.Map),Oe(x.Set)}var nr=function(e){if(!se.TypeIsObject(e))throw new TypeError("target must be an object")},rr={apply:function(){return se.Call(se.Call,null,arguments)},construct:function(e,t){if(!se.IsConstructor(e))throw new TypeError("First argument must be a constructor.");var n=arguments.length>2?arguments[2]:e;if(!se.IsConstructor(n))throw new TypeError("new.target must be a constructor.");return se.Construct(e,t,n,"internal")},deleteProperty:function(e,t){if(nr(e),c){var n=Object.getOwnPropertyDescriptor(e,t);if(n&&!n.configurable)return!1}return delete e[t]},has:function(e,t){return nr(e),t in e}};Object.getOwnPropertyNames&&Object.assign(rr,{ownKeys:function(e){nr(e);var t=Object.getOwnPropertyNames(e);return se.IsCallable(Object.getOwnPropertySymbols)&&C(t,Object.getOwnPropertySymbols(e)),t}});var ir=function(e){return!o(e)};if(Object.preventExtensions&&Object.assign(rr,{isExtensible:function(e){return nr(e),Object.isExtensible(e)},preventExtensions:function(e){return nr(e),ir(function(){return Object.preventExtensions(e)})}}),c){var or=function(e,t,n){var r=Object.getOwnPropertyDescriptor(e,t);if(!r){var i=Object.getPrototypeOf(e);if(null===i)return;return or(i,t,n)}return"value"in r?r.value:r.get?se.Call(r.get,n):void 0},ar=function(e,t,r,i){var o=Object.getOwnPropertyDescriptor(e,t);if(!o){var a=Object.getPrototypeOf(e);if(null!==a)return ar(a,t,r,i);o={value:void 0,writable:!0,enumerable:!0,configurable:!0}}if("value"in o){if(!o.writable)return!1;if(!se.TypeIsObject(i))return!1;return Object.getOwnPropertyDescriptor(i,t)?re.defineProperty(i,t,{value:r}):re.defineProperty(i,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}return!!o.set&&(n(o.set,i,r),!0)};Object.assign(rr,{defineProperty:function(e,t,n){return nr(e),ir(function(){return Object.defineProperty(e,t,n)})},getOwnPropertyDescriptor:function(e,t){return nr(e),Object.getOwnPropertyDescriptor(e,t)},get:function(e,t){nr(e);var n=arguments.length>2?arguments[2]:e;return or(e,t,n)},set:function(e,t,n){nr(e);var r=arguments.length>3?arguments[3]:e;return ar(e,t,n,r)}})}if(Object.getPrototypeOf){var sr=Object.getPrototypeOf;rr.getPrototypeOf=function(e){return nr(e),sr(e)}}if(Object.setPrototypeOf&&rr.getPrototypeOf){var cr=function(e,t){for(var n=t;n;){if(e===n)return!0;n=rr.getPrototypeOf(n)}return!1};Object.assign(rr,{setPrototypeOf:function(e,t){if(nr(e),null!==t&&!se.TypeIsObject(t))throw new TypeError("proto must be an object or null");return t===re.getPrototypeOf(e)||!(re.isExtensible&&!re.isExtensible(e))&&(!cr(e,t)&&(Object.setPrototypeOf(e,t),!0))}})}var ur=function(e,t){if(se.IsCallable(x.Reflect[e])){a(function(){return x.Reflect[e](1),x.Reflect[e](NaN),x.Reflect[e](!0),!0})&&ee(x.Reflect,e,t)}else h(x.Reflect,e,t)};Object.keys(rr).forEach(function(e){ur(e,rr[e])});var lr=x.Reflect.getPrototypeOf;if(u&&lr&&"getPrototypeOf"!==lr.name&&ee(x.Reflect,"getPrototypeOf",function(e){return n(lr,x.Reflect,e)}),x.Reflect.setPrototypeOf&&a(function(){return x.Reflect.setPrototypeOf(1,{}),!0})&&ee(x.Reflect,"setPrototypeOf",rr.setPrototypeOf),x.Reflect.defineProperty&&(a(function(){var e=!x.Reflect.defineProperty(1,"test",{value:1}),t="function"!=typeof Object.preventExtensions||!x.Reflect.defineProperty(Object.preventExtensions({}),"test",{});return e&&t})||ee(x.Reflect,"defineProperty",rr.defineProperty)),x.Reflect.construct&&(a(function(){var e=function(){};return x.Reflect.construct(function(){},[],e)instanceof e})||ee(x.Reflect,"construct",rr.construct)),"Invalid Date"!==String(new Date(NaN))){var fr=Date.prototype.toString,pr=function(){var e=+this;return e!==e?"Invalid Date":se.Call(fr,this)};ee(Date.prototype,"toString",pr)}var dr={anchor:function(e){return se.CreateHTML(this,"a","name",e)},big:function(){return se.CreateHTML(this,"big","","")},blink:function(){return se.CreateHTML(this,"blink","","")},bold:function(){return se.CreateHTML(this,"b","","")},fixed:function(){return se.CreateHTML(this,"tt","","")},fontcolor:function(e){return se.CreateHTML(this,"font","color",e)},fontsize:function(e){return se.CreateHTML(this,"font","size",e)},italics:function(){return se.CreateHTML(this,"i","","")},link:function(e){return se.CreateHTML(this,"a","href",e)},small:function(){return se.CreateHTML(this,"small","","")},strike:function(){return se.CreateHTML(this,"strike","","")},sub:function(){return se.CreateHTML(this,"sub","","")},sup:function(){return se.CreateHTML(this,"sup","","")}};l(Object.keys(dr),function(e){var t=String.prototype[e],r=!1;if(se.IsCallable(t)){var i=n(t,"",' " '),o=O([],i.match(/"/g)).length;r=i!==i.toLowerCase()||o>2}else r=!0;r&&ee(String.prototype,e,dr[e])});var hr=function(){if(!te)return!1;var e="object"===("undefined"==typeof JSON?"undefined":_typeof(JSON))&&"function"==typeof JSON.stringify?JSON.stringify:null;if(!e)return!1;if(void 0!==e(W()))return!0;if("[null]"!==e([W()]))return!0;var t={a:W()};return t[W()]=!0,"{}"!==e(t)}(),gr=a(function(){return!te||"{}"===JSON.stringify(Object(W()))&&"[{}]"===JSON.stringify([Object(W())])});if(hr||!gr){var yr=JSON.stringify;ee(JSON,"stringify",function(e){if("symbol"!==(void 0===e?"undefined":_typeof(e))){var t;arguments.length>1&&(t=arguments[1]);var i=[e];if(r(t))i.push(t);else{var o=se.IsCallable(t)?t:null,a=function(e,t){var r=o?n(o,this,e,t):t;if("symbol"!==(void 0===r?"undefined":_typeof(r)))return K.symbol(r)?Tt({})(r):r};i.push(a)}return arguments.length>2&&i.push(arguments[2]),yr.apply(this,i)}})}return x}),define("jqueryplugins",["jquery"],function(e){e.prototype.extend({popAttr:function(e){var t=this.attr(e);return this.removeAttr(e),t},popData:function(e){var t=this.data(e);return this.removeData(e),t},tag:function(){return this[0]&&this[0].tagName&&this[0].tagName.toLowerCase()},textNodes:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*";return 1===this.length&&this[0]instanceof Text?[this[0]]:Array.from(this.add(this.contents().add(this.find(e).contents())).filter(function(){return this instanceof Text})).sort(function(e,t){return 2&e.compareDocumentPosition(t)?1:-1})},findAndFilter:function(e){return this.filter(e).add(this.find(e))}})}),function(){function e(){for(var e=0;e<arguments.length;e++)for(var t in arguments[e])this[t]=arguments[e][t]}function t(e,t){e.childAt=e.childAt||{};for(var n=t.start;n<t.end;n+=1)e.childAt[n]=t}function n(e,t,n,r){return!(e.canFollow&&!(e.canFollow.indexOf(n&&n.type)>-1)||e.cannotFollow&&(-1!==e.cannotFollow.indexOf(n&&n.type)||e.cannotFollow.indexOf("text")>-1&&r)||e.peek&&e.peek.toLowerCase()!==t.slice(0,e.peek.length).toLowerCase())}function r(e){for(var t=e.innerText,r=[],o=0,s=o,c=t.length,u=null;o<c;){for(var l=t.slice(o),f=(r.length?r[0]:e).innerMode,p=0,d=f.length;p<d;p+=1){var h=a[f[p]];if(n(h,l,u,s<o)&&h.pattern.test(l)){var g=h.pattern.exec(l),y=h.fn(g),m=!1,v=0;if(y.matches){for(;v<r.length;v+=1){var b=r[v].type;if(b in y.matches){m=!0;break}0===b.indexOf("verbatim")&&(b="verbatimOpener"),y.cannotCross&&y.cannotCross.indexOf(b)>-1&&(v=r.length-1)}if(v>=r.length&&!y.isFront)continue}s<o&&e.addChild({type:"text",text:t.slice(s,o),innerMode:f}),u=e.addChild(y),o+=u.text.length,s=o,m&&(i(e,u,r[v]),r=r.slice(v+1)),u.isFrontToken()&&r.unshift(u);break}}p===d&&(o+=1,null===u&&(u={type:"text"}))}for(s<o&&e.addChild({type:"text",text:t.slice(s,o),innerMode:(r.length?r[0]:e).innerMode});r.length>0;)r.shift().demote();return e}function i(e,n,r){var i=e.children.indexOf(n),o=e.children.indexOf(r);n.children=e.children.splice(o+1,i-(o+1)),n.children.forEach(function(e){t(n,e)}),n.type=n.matches[r.type],n.innerText="";for(var a=0,s=n.children.length;a<s;a++)n.innerText+=n.children[a].text;n.start=r.start,n.text=r.text+n.innerText+n.text,Object.keys(r).forEach(function(e){Object.hasOwnProperty.call(n,e)||(n[e]=r[e])}),n.isFront&&(n.isFront=!1),e.children.splice(o,1),t(e,n)}var o=void 0,a={};e.prototype={constructor:e,addChild:function(n){var i=this.lastChildEnd(),o=new e({start:i,end:n.text&&i+n.text.length,children:[]},n);return o.innerText&&r(o),this.children.push(o),t(this,o),o},firstChild:function(){return this.children?this.children[0]||null:null},lastChild:function(){return this.children?this.children[this.children.length-1]||null:null},lastChildEnd:function(){var e=this.lastChild();return e?e.end:this.start+Math.max(0,this.text.indexOf(this.innerText))},tokenAt:function(e){if(e<this.start||e>=this.end)return null;if(this.childAt)return this.childAt[e]&&this.childAt[e].tokenAt(e)||this;if(this.children.length)for(var t=0;t<this.children.length;t+=1){var n=this.children[t].tokenAt(e);if(n)return n}return this},pathAt:function(e){if(e<this.start||e>=this.end)return[];if(this.childAt)return(this.childAt[e]&&this.childAt[e].pathAt(e)||[]).concat(this);var t=[];if(this.children.length)for(var n=0;n<this.children.length;n+=1){var r=this.children[n].pathAt(e);if(r.length){t.concat(r);break}}return t.concat(this)},nearestTokenAt:function(e){return e<this.start||e>=this.end?null:this.children?this.children.reduce(function(t,n){return t||(e>=n.start&&e<n.end?n:null)},null):this},everyLeaf:function(e){return this.children&&0!==this.children.length?this.children.reduce(function(t,n){return n.everyLeaf(e)&&t},!0):!!e(this)},isWhitespace:function(){return this.everyLeaf(function(e){return"whitespace"===e.type||!e.text.trim()})},isFrontToken:function(){return this.isFront},isBackToken:function(){return"matches"in this},demote:function(){this.type="text"},error:function(e){this.type="error",this.message=e},toString:function(){var e=this.type+"("+this.start+"\u2192"+this.end+")";return this.children&&this.children.length>0&&(e+="["+this.children+"]"),e}},o={lex:function(t,n){return r(new e({type:"root",start:n||0,end:t.length,text:t,innerText:t,children:[],childAt:{},innerMode:o.modes.start}))},rules:a,modes:{}},"object"===("undefined"==typeof module?"undefined":_typeof(module))?module.exports=o:"function"==typeof define&&define.amd?define("lexer",[],function(){return o}):this&&this.loaded?(this.modules||(this.modules={}),this.modules.Lexer=o):this.TwineLexer=o}.call(eval("this")||("undefined"!=typeof global?global:window)),function(){function e(t){return t&&"object"===(void 0===t?"undefined":_typeof(t))?(Object.keys(t).forEach(function(n){t[n]=e(t[n])}),t):(t+"").replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function t(e){return function(){return"("+e+Array.apply(0,arguments).join("|")+")"}}var n=void 0,r=t("?:"),i=t("?!"),o=t("?="),a="[ \\f\\t\\v\\u00a0\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000]*",s=a.replace("*","+"),c="\\b",u="[\\w\\-\\u00c0-\\u00de\\u00df-\\u00ff\\u0150\\u0170\\u0151\\u0171\\uD800-\\uDFFF]",l=u.replace("\\-",""),f=r("\\n","$"),p="("+r("\\\\\\n\\\\?|\\n\\\\","[^\\n]")+"+)",d=a+"(\\*+)"+s+p+f,h=a+"((?:0\\.)+)"+s+p+f,g=a+"-{3,}"+a+f,y=a+"(#{1,6})"+a+p+f,m=a+"(==+>|<=+|=+><=+|<==+>)"+a+f,v=a+"(=+\\|+|\\|+=+|=+\\|+=+|\\|=+\\|)"+a+f,b={opener:"\\[\\[(?!\\[)",text:"("+function(){return"[^"+Array.apply(0,arguments).map(e).join("")+"]*"}("]")+")",rightSeparator:r("\\->","\\|"),leftSeparator:"<\\-",closer:"\\]\\]",legacySeparator:"\\|",legacyText:"("+r("[^\\|\\]]","\\]"+i("\\]"))+"+)"},w=l+"*"+l.replace("\\w","a-zA-Z")+l+"*",x="\\$("+w+")",T="'s"+s+"("+w+")",S="("+w+")"+s+"of"+c+i("it\\b"),k="'s"+s,O=r("it","time","visits?","exits?")+c,j="its"+s+"("+w+")",A="its"+s,C="("+w+")"+s+"of"+s+"it"+c,E="of\\b"+s+"it"+c,N={opener:"\\(",name:"("+r(u+"+",x)+"):"+i("\\/"),closer:"\\)"},_=r("=<","=>","[gl]te?\\b","n?eq\\b","isnot\\b","are\\b","x\\b","isa\\b","or"+s+"a"+c),P={name:"[a-zA-Z][\\w\\-]*",attrs:"(?:\"[^\"]*\"|'[^']*'|[^'\">])*?"},I="\\|("+u+"+)(>|\\))",M="(<|\\()("+u+"+)\\|",D="_("+w+")"+c,L="\\b(\\d+(?:\\.\\d+)?(?:[eE][+\\-]?\\d+)?)"+i("m?s")+c;b.main=b.opener+r(b.text+b.rightSeparator,b.text.replace("*","*?")+b.leftSeparator)+b.text,n={upperLetter:"[A-Z\\u00c0-\\u00de\\u0150\\u0170]",lowerLetter:"[a-z0-9_\\-\\u00df-\\u00ff\\u0151\\u0171]",anyLetter:u,anyLetterStrict:l,whitespace:s,escapedLine:"\\\\\\n\\\\?|\\n\\\\",br:"\\n(?!\\\\)",commentFront:"\x3c!--",commentBack:"--\x3e",tag:"<\\/?"+P.name+P.attrs+">",tagPeek:"<",scriptStyleTag:"<("+r("script","style","textarea")+")"+P.attrs+">[^]*?<\\/\\1>",scriptStyleTagOpener:"<",url:"("+r("https?","mailto","javascript","ftp","data")+":\\/\\/[^\\s<]+[^<.,:;\"')\\]\\s])",bullet:"\\*",hr:g,heading:y,align:m,column:v,bulleted:d,numbered:h,strikeOpener:e("~~"),italicOpener:e("//"),boldOpener:e("''"),supOpener:e("^^"),strongFront:e("**"),strongBack:e("**"),emFront:e("*"),emBack:e("*"),verbatimOpener:"`+",collapsedFront:"{",collapsedBack:"}",hookAppendedFront:"\\["+i("=+"),hookPrependedFront:I+"\\["+i("=+"),hookFront:"\\["+i("=+"),hookBack:"\\]"+i(M),hookAppendedBack:"\\]"+M,unclosedHook:"\\[=+",unclosedHookPrepended:I+"\\[=+",passageLink:b.main+b.closer,passageLinkPeek:"[[",legacyLink:b.opener+b.legacyText+b.legacySeparator+b.legacyText+b.closer,legacyLinkPeek:"[[",simpleLink:b.opener+b.legacyText+b.closer,simpleLinkPeek:"[[",macroFront:N.opener+o(N.name),macroFrontPeek:"(",macroName:N.name,groupingFront:"\\("+i(N.name),groupingFrontPeek:"(",groupingBack:"\\)",twine1Macro:"<<[^>\\s]+\\s*(?:\\\\.|'(?:[^'\\\\]*\\\\.)*[^'\\\\]*'|\"(?:[^\"\\\\]*\\\\.)*[^\"\\\\]*\"|[^'\"\\\\>]|>(?!>))*>>",twine1MacroPeek:"<<",property:T,propertyPeek:"'s",belongingProperty:S,possessiveOperator:k,belongingOperator:"of\\b",belongingOperatorPeek:"of",itsOperator:A,itsOperatorPeek:"its",belongingItOperator:E,belongingItOperatorPeek:"of",variable:x,variablePeek:"$",tempVariable:D,tempVariablePeek:"_",hookRef:"\\?("+u+"+)\\b",hookRefPeek:"?",cssTime:"(\\d+\\.?\\d*|\\d*\\.?\\d+)(m?s)\\b",colour:r(r("Red","Orange","Yellow","Lime","Green","Cyan","Aqua","Blue","Navy","Purple","Fuchsia","Magenta","White","Gray","Grey","Black"),"#[\\dA-Fa-f]{3}(?:[\\dA-Fa-f]{3})?"),datatype:r("array","boolean","changer","colour","gradient","color","command","dm","datamap","ds","dataset","number","num","string","str"),number:L,boolean:r("true","false")+c,identifier:O,itsProperty:j,itsPropertyPeek:"its",belongingItProperty:C,escapedStringChar:"\\\\[^\\n]",singleStringOpener:"'",doubleStringOpener:'"',is:"is"+i(s+"not"+c,s+"an?"+c,s+"in"+c,s+"<",s+">")+c,isNot:"is"+s+"not"+i(s+"a"+c)+c,isA:"is"+s+"an?"+c,isNotA:"is"+s+"not"+s+"an?"+c,matches:"matches"+s,and:"and\\b",or:"or\\b",not:"not\\b",inequality:"((?:is(?:"+s+"not)?"+a+")*)("+r("<(?!=)","<=",">(?!=)",">=")+")",isIn:"is"+s+"in"+c,contains:"contains\\b",addition:e("+")+i("="),subtraction:e("-")+i("="),multiplication:e("*")+i("="),division:r("/","%")+i("="),comma:",",spread:"\\.\\.\\."+i("\\."),to:r("to\\b","="),into:"into\\b",making:"making\\b",where:"where\\b",when:"when\\b",via:"via\\b",with:"with\\b",each:"each\\b",augmentedAssign:r("\\+","\\-","\\*","\\/","%")+"=",bind:"bind\\b",incorrectOperator:_},"object"===("undefined"==typeof module?"undefined":_typeof(module))?module.exports=n:"function"==typeof define&&define.amd?define("patterns",[],function(){return n}):this&&this.loaded?(this.modules||(this.modules={}),this.modules.Patterns=n):this.Patterns=n}.call(eval("this")||("undefined"!=typeof global?global:window)),function(){function e(e){function t(e){return e=e||"innerText",function(t){var n=t.reduceRight(function(e,t,n){return e||(n?t:"")},""),r={};return r[e]=n,r}}function r(e,t){var n={};return n[e]=t,function(){return{isFront:!0,matches:n,cannotCross:["verbatimOpener"]}}}function i(e,t){return Object.keys(t).forEach(function(n){var r=t[n].fn;t[n].fn=function(t){var i=r(t);return i.text||(i.text=t[0]),i.type||(i.type=n),i.innerMode||(i.innerMode=e),i}}),t}var o=Object.bind(0,null),a=[],s=[],c=i(a,{hr:{fn:o},bulleted:{fn:function(e){return{depth:e[1].length,innerText:e[2]}}},numbered:{fn:function(e){return{depth:e[1].length/2,innerText:e[2]}}},heading:{fn:function(e){return{depth:e[1].length,innerText:e[2]}}},align:{fn:function(e){var t=void 0,n=e[1],r=n.indexOf("><");return~r?25===(t=Math.round(r/(n.length-2)*50))&&(t="center"):"<"===n[0]&&">"===n.slice(-1)?t="justify":n.indexOf(">")>-1?t="right":n.indexOf("<")>-1&&(t="left"),{align:t}}},column:{fn:function(e){var t=void 0,n=e[1],r=n.indexOf("|");return r&&r<n.length-1?t="center":"|"===n[0]&&"|"===n.slice(-1)?t="none":r===n.length-1?t="right":r||(t="left"),{column:t,width:/\|+/.exec(n)[0].length,marginLeft:/^=*/.exec(n)[0].length,marginRight:/=*$/.exec(n)[0].length}}}});Object.keys(c).forEach(function(e){c[e].canFollow=[null,"br","hr","bulleted","numbered","heading","align"],c[e].cannotFollow=["text"]});var u=i(a,{twine1Macro:{fn:function(){return{type:"error",message:"Harlowe macros use a different syntax to Twine 1 and SugarCube macros."}}},emBack:{fn:function(){return{matches:{emFront:"em"},cannotCross:["verbatimOpener"]}}},strongBack:{fn:function(){return{matches:{strongFront:"strong"},cannotCross:["verbatimOpener"]}}},strongFront:{fn:function(){return{isFront:!0}}},emFront:{fn:function(){return{isFront:!0}}},boldOpener:{fn:r("boldOpener","bold")},italicOpener:{fn:r("italicOpener","italic")},strikeOpener:{fn:r("strikeOpener","strike")},supOpener:{fn:r("supOpener","sup")},commentFront:{fn:function(){return{isFront:!0}}},commentBack:{fn:function(){return{matches:{commentFront:"comment"}}}},scriptStyleTag:{fn:o},tag:{fn:o},url:{fn:o},hookPrependedFront:{fn:function(e){return{name:e[1],hidden:")"===e[2],isFront:!0,tagPosition:"prepended"}}},hookFront:{fn:function(){return{isFront:!0}}},hookBack:{fn:function(){return{matches:{hookPrependedFront:"hook",hookFront:"hook"},cannotCross:["verbatimOpener"]}}},hookAppendedBack:{fn:function(e){return{name:e[2],hidden:"("===e[1],tagPosition:"appended",matches:{
hookFront:"hook"},cannotCross:["verbatimOpener"]}}},unclosedHook:{fn:o},unclosedHookPrepended:{fn:function(e){return{type:"unclosedHook",name:e[1],hidden:")"===e[2]}}},verbatimOpener:{fn:function(e){var t=e[0].length,n={};return n["verbatim"+t]="verbatim",{type:"verbatim"+t,isFront:!0,matches:n}}},collapsedFront:{fn:function(){return{isFront:!0}}},collapsedBack:{fn:function(){return{matches:{collapsedFront:"collapsed"},cannotCross:["verbatimOpener"]}}},escapedLine:{fn:o},legacyLink:{fn:function(e){return{type:"twineLink",innerText:e[1],passage:e[2]}}},br:{fn:o}}),l=i(s,{macroFront:{fn:function(e){return{isFront:!0,name:e[1]}}},groupingBack:{fn:function(){return{matches:{groupingFront:"grouping",macroFront:"macro"},cannotCross:["singleStringOpener","doubleStringOpener"]}}},passageLink:{fn:function(e){var t=e[1]||"",n=e[2]||"",r=e[3]||"";return{type:"twineLink",innerText:n?r:t,passage:t?r:n}}},simpleLink:{fn:function(e){return{type:"twineLink",innerText:e[1]||"",passage:e[1]||""}}},variable:{fn:t("name")},tempVariable:{fn:t("name")}}),f=i(s,Object.assign({macroName:{canFollow:["macroFront"],fn:function(e){return e[2]?{isMethodCall:!0,innerText:e[2]}:{isMethodCall:!1}}},groupingFront:{fn:function(){return{isFront:!0}}},property:{fn:t("name"),canFollow:["variable","hookRef","property","tempVariable","colour","itsProperty","belongingItProperty","macro","grouping","string","boolean","number"]},possessiveOperator:{fn:o},itsProperty:{cannotFollow:["text"],fn:t("name")},itsOperator:{cannotFollow:["text"],fn:o},belongingItProperty:{cannotFollow:["text"],fn:t("name")},belongingItOperator:{cannotFollow:["text"],fn:o},belongingProperty:{cannotFollow:["text"],fn:t("name")},belongingOperator:{cannotFollow:["text"],fn:o},escapedStringChar:{fn:function(){return{type:"text"}}},singleStringOpener:{fn:function(){return{isFront:!0,matches:{singleStringOpener:"string"}}}},doubleStringOpener:{fn:function(){return{isFront:!0,matches:{doubleStringOpener:"string"}}}},hookRef:{fn:t("name")},cssTime:{fn:function(e){return{value:+e[1]*("s"===e[2].toLowerCase()?1e3:1)}}},datatype:{cannotFollow:["text"],fn:function(e){return{name:e[0].toLowerCase()}}},colour:{cannotFollow:["text"],fn:function(e){var t,n=e[0].toLowerCase(),r={red:"e61919",orange:"e68019",yellow:"e5e619",lime:"80e619",green:"19e619",cyan:"19e5e6",aqua:"19e5e6",blue:"197fe6",navy:"1919e6",purple:"7f19e6",fuchsia:"e619e5",magenta:"e619e5",white:"fff",black:"000",gray:"888",grey:"888"};return t=Object.hasOwnProperty.call(r,n)?"#"+r[n]:n,{colour:t}}},number:{fn:function(e){return{value:parseFloat(e[0])}}},inequality:{fn:function(e){return{operator:e[2],negate:e[1].indexOf("not")>-1}}},augmentedAssign:{fn:function(e){return{operator:e[0][0]}}},identifier:{fn:t("name"),cannotFollow:["text"]},whitespace:{fn:o,cannotFollow:"text"},incorrectOperator:{fn:function(e){var t={"=>":">=","=<":"<=",gte:">=",lte:"<=",gt:">",lt:"<",eq:"is",isnot:"is not",neq:"is not",isa:"is a",are:"is",x:"*","or a":"or"}[e[0].toLowerCase().replace(/\s+/g," ")];return{type:"error",message:"Please say "+(t?"'"+t+"'":"something else")+" instead of '"+e[0]+"'.",explanation:"In the interests of readability, I want certain operators to be in a specific form."}},cannotFollow:"text"}},["boolean","is","to","into","where","when","via","with","making","each","and","or","not","isNot","contains","isIn","isA","isNotA","matches","bind"].reduce(function(e,t){return e[t]={fn:o,cannotFollow:["text"]},e},{}),["comma","spread","addition","subtraction","multiplication","division"].reduce(function(e,t){return e[t]={fn:o},e},{})));a.push.apply(a,_toConsumableArray(Object.keys(c)).concat(_toConsumableArray(Object.keys(l)),_toConsumableArray(Object.keys(u)))),s.push.apply(s,_toConsumableArray(Object.keys(l)).concat(_toConsumableArray(Object.keys(f))));var p=Object.assign({},c,u,l,f);return Object.keys(p).forEach(function(e){var t=n[e];p[e].pattern="string"!=typeof t?t:new RegExp("^(?:"+t+")","i"),n[e+"Peek"]&&(p[e].peek=n[e+"Peek"])}),Object.assign(e.rules,p),e.modes.start=e.modes.markup=a,e.modes.macro=s,e}function t(t){return Object.freeze({lex:e(t).lex,Patterns:n})}var n=void 0;Object.assign=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},"object"===("undefined"==typeof module?"undefined":_typeof(module))?(n=require("./patterns"),module.exports=t(require("./lexer"))):"function"==typeof define&&define.amd?define("markup",["lexer","patterns"],function(e,r){return n=r,t(e)}):this&&this.loaded&&this.modules?(n=this.modules.Patterns,this.modules.Markup=t(this.modules.Lexer)):(n=this.Patterns,this.TwineMarkup=t(this.TwineLexer))}.call(eval("this")||("undefined"!=typeof global?global:window)),define("utils/selectors",[],function(){return Object.freeze({passage:"tw-passage",story:"tw-story",sidebar:"tw-sidebar",internalLink:"tw-link",brokenLink:"tw-broken-link",hook:"tw-hook",enchantment:"tw-enchantment",expression:"tw-expression",script:"[role=script]",stylesheet:"[role=stylesheet]",storyData:"tw-storydata",passageData:"tw-passagedata",collapsed:"tw-collapsed",backdrop:"tw-backdrop",dialog:"tw-dialog",error:"tw-error"})}),define("utils/polyfills",[],function(){var e=Array.prototype;"function"!=typeof e.includes&&(e.includes=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!Number.isNaN(t)&&Number.isFinite(n)&&void 0!==t)return e.indexOf.call(this,t,n)>-1;var r=Object(this),i=parseInt(r.length);if(i<=0)return!1;for(var o=n>=0?n:Math.max(0,i+n);o<i;){if(Object.is(t,r[o]))return!0;o+=1}return!1})}),define("utils",["jquery","markup","utils/selectors","utils/polyfills"],function(e,t,n){function r(t,n){var r=o[n];if(!r[t]){var i=e("<p>").appendTo(document.body).attr("data-t8n",t).addClass(n);r[t]=u.cssTimeUnit(i.css("animation-duration"))+u.cssTimeUnit(i.css("animation-delay")),i.remove()}return r[t]}var i={configurable:0,writable:0},o={"transition-in":Object.create(null),"transition-out":Object.create(null)},a="audio,blockquote,canvas,div,h1,h2,h3,h4,h5,hr,ol,p,pre,table,ul,video,tw-align,tw-story,tw-passage".split(","),s="a,b,i,em,strong,sup,sub,abbr,acronym,s,strike,del,big,small,script,img,button,input,tw-link,tw-broken-link,tw-verbatim,tw-collapsed,tw-error".split(","),c=["audio"],u=void 0,l=void 0,f=[];return u={lockProperty:function(e,t,n){var r=Object.create(i);return n&&(r.value=n),Object.defineProperty(e,t,r),e},permutations:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var r=t.length,i=[[].concat(t)],o=Array(r).fill(0),a=1,s=void 0,c=void 0;a<r;)o[a]<a?(s=a%2&&o[a],c=t[a],t[a]=t[s],t[s]=c,++o[a],a=1,i.push([].concat(t))):(o[a]=0,++a);return i},toJSLiteral:function(e){return e instanceof Map?"(new Map("+u.toJSLiteral([].concat(_toConsumableArray(e.entries())))+"))":e instanceof Set?"(new Set("+u.toJSLiteral([].concat(_toConsumableArray(e.values())))+"))":JSON.stringify(e)},cssTimeUnit:function(e){return e=e.toLowerCase(),"ms"===e.slice(-2)?+e.slice(0,-2)||0:"s"===e.slice(-1)?1e3*+e.slice(0,-1)||0:0},nth:function(e){var t=(+e+"").slice(-1);return e+("1"===t?"st":"2"===t?"nd":"3"===t?"rd":"th")},plural:function(e,t){return e+" "+t+(e>1?"s":"")},andList:function(e){return 1===e.length?e[0]:e.slice(0,-1).join(", ")+" and "+e[e.length-1]},realWhitespace:"[ \\n\\r\\f\\t\\v\\u00a0\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000]",anyRealLetter:"[\\dA-Za-z\\u00c0-\\u00de\\u00df-\\u00ff\\u0150\\u0170\\u0151\\u0171\\uD800-\\uDFFF]",unescape:function(e){return e.replace(/&(?:amp|lt|gt|quot|nbsp|zwnj|#39|#96);/g,function(e){return{"&":"&",">":">","<":"<",""":'"',"'":"'"," ":String.fromCharCode(160),"‌":String.fromCharCode(8204)}[e]})},escape:function(e){return e.replace(/[&><"']/g,function(e){return{"&":"&",">":">","<":"<",'"':""","'":"'"}[e]})},insensitiveName:function(e){return(e+"").toLowerCase().replace(/-|_/g,"")},childrenProbablyInline:function(e){var t=[];return Array.prototype.every.call(e.find("*"),function(e){return!(!e.hidden&&!/none|inline/.test(e.style.display))||!a.includes(e.tagName.toLowerCase())&&!/none|inline/.test(e.style.display)&&(!!s.includes(e.tagName.toLowerCase())||(t.push(e),!0))})&&t.every(function(e){return/none|inline/.test(e.style.display)})},transitionReplace:function(t,r,i){var o=t.closest(n.hook);o.length>0&&(t=o);var a=e("<tw-transition-container>").css("position","relative");a.insertBefore(t.first());var s=void 0;r&&(s=e("<tw-transition-container>").appendTo(a),r.appendTo(s));var c=e("<tw-transition-container>").css("position","absolute").prependTo(a);t.detach().appendTo(c),u.transitionOut(c,i),r&&u.transitionIn(s,i,function(){s.unwrap().children().first().unwrap()})},transitionOut:function(e,t,n){function i(){e.remove()}if(0!==e.length){var o=u.childrenProbablyInline(e);(e.length>1||!o||!["tw-hook","tw-passage"].includes(e.tag()))&&(e=e.wrapAll("<tw-transition-container>").parent()),e.attr("data-t8n",t).addClass("transition-out"),u.childrenProbablyInline(e)&&e.css("display","inline-block"),"number"==typeof n&&e.css("animation-duration",n+"ms");var a=n||r(t,"transition-out");a?window.setTimeout(i,a):i()}},transitionIn:function(e,t,n){function i(){var t=0===e.findAndFilter(c.join(",")).length;a&&t?e.contents().unwrap():e.removeClass("transition-in").removeAttr("data-t8n")}if(0!==e.length){var o=u.childrenProbablyInline(e),a=e.length>1||!o||!["tw-hook","tw-passage"].includes(e.tag());a&&(e=e.wrapAll("<tw-transition-container>").parent()),e.attr("data-t8n",t).addClass("transition-in"),"number"==typeof n&&e.css("animation-duration",n+"ms"),u.childrenProbablyInline(e)&&e.css("display","inline-block");var s=n||r(t,"transition-in");s?window.setTimeout(i,s):i()}},$:function(t,n){return e(t,n||u.storyElement).not(".transition-out, .transition-out *")},impossible:function(e,t){window.console&&console.error(e+"(): "+t)},assertMustHave:function(e,t){if(window.console)for(var n=0;n<t.length;n+=1)t[n]in e||console.error("Assertion failed: object lacks property "+t[n])},assertOnlyHas:function(e,t){if(window.console)for(var n in e)t.includes(n)||console.error("Assertion failed: object had unexpected property '"+n+"'!")},onStartup:function(e){f?f.push(e):e()},get storyElement(){return l}},e(function(){l=e(n.story),f.forEach(function(e){return e()}),f=null}),Object.freeze(u)}),define("utils/naturalsort",[],function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String;return function(n,r){var i,o,a,s,c=/(^-?[0-9]+(\.?[0-9]*)[df]?e?[0-9]?$|^0x[0-9a-f]+$|[0-9]+)/gi,u=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,l=/^0x[0-9a-f]+$/i,f=/^0/,p=t(n).trim(),d=t(r).trim(),h=p.replace(c,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),g=d.replace(c,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0"),y=parseInt(p.match(l))||1!==h.length&&p.match(u)&&Date.parse(p),m=parseInt(d.match(l))||y&&d.match(u)&&Date.parse(d)||null;if(e&&window.Intl&&window.Intl.Collator&&(a=window.Intl.Collator(e)),m){if(y<m)return-1;if(y>m)return 1}for(var v=0,b=Math.max(h.length,g.length);v<b;v++){if(i=!(h[v]||"").match(f)&&parseFloat(h[v])||h[v]||0,o=!(g[v]||"").match(f)&&parseFloat(g[v])||g[v]||0,isNaN(i)!==isNaN(o))return isNaN(i)?1:-1;if((void 0===i?"undefined":_typeof(i))!==(void 0===o?"undefined":_typeof(o)))i+="",o+="";else if("string"==typeof i&&a&&0!==(s=a.compare(i,o)))return s;if(i<o)return-1;if(i>o)return 1}return 0}}}),define("passages",["jquery","utils/naturalsort","utils","utils/selectors"],function(e,t,n,r){function i(e){return Object.assign(new Map([["source",o(e.html())],["tags",(e.attr("tags")||"").split(/\s/)||[]],["name",e.attr("name")]]),{TwineScript_TypeName:"a passage datamap",TwineScript_ObjectName:"a passage datamap"})}var o=n.unescape,a=n.onStartup,s=Object.assign(new Map,{TwineScript_ObjectName:"the Passages datamap",getTagged:function(e){var n=t("en",function(e){return e.get("name")}),r=[];return this.forEach(function(t){var n=t instanceof Map&&t.get("tags");Array.isArray(n)&&n.includes(e)&&r.push(t)}),r.sort(n)},hasValid:function(e){var t=this.get(e);return t&&t instanceof Map&&t.has("source")},create:i});return a(function(){Array.from(e(r.storyData+" > "+r.passageData)).forEach(function(t){t=e(t),s.set(t.attr("name"),new i(t))})}),s}),define("datatypes/hookset",["jquery","utils","utils/selectors","markup"],function(e,t,n,r){function i(e){var t=[].concat(_toConsumableArray(e.textContent));return 1===t.length?[e]:t.reduce(function(e,t){return t.match(p)&&e[e.length-1].match(p)?e[e.length-1]+=t:e.push(t),e},[]).reduce(function(t,n){var r=e;return n.length<e.textContent.length&&(e=e.splitText(n.length)),t.concat(r)},[])}function o(e,t,n){var r=e.textContent.length;if(!(t>=r)){var i=void 0,o=[i=0===t?e:e.splitText(t)];return n&&(n<=0&&(n=r-n),n<r&&o.push(i.splitText(n-t))),o}}function a(e,t){var n=[],r="",i=[];if(!e.length||!t)return i;for(;e.length>0;){n.push(e[0]),r+=e[0].textContent,e.shift();var s=r.indexOf(t);if(s>-1){for(var c,u=r.length-(s+t.length);s>=n[0].textContent.length;)s-=n[0].textContent.length,n.shift();if(1===n.length){var l=o(n[0],s,s+t.length);i.push(l[0]),l[1]&&e.unshift(l[1]);break}i.push(o(n[0],s,n[0].length)[0]),(c=i).push.apply(c,_toConsumableArray(n.slice(1,-1)));var f=o(n[n.length-1],0,n[n.length-1].textContent.length-u);i.push(f[0]),f[1]&&e.unshift(f[1]),i=i.filter(Boolean);break}}return[i].concat(_toConsumableArray(a(e,t)))}function s(t,n){var r=a(n.textNodes(),t),i=e();return r.forEach(function(t){i=i.add(e(t).wrapAll("<tw-pseudo-hook>").parent())}),i}function c(e){e=t.insensitiveName(e).replace(/\?/g,"").replace(/"/g,""");var r=n.hook+'[name="'+e+'"]';return r+={page:", tw-story",passage:", tw-passage",sidebar:", tw-sidebar",link:", tw-link, .enchantment-link"}[e]||""}function u(n){var r=n.dom,o=e();this.prev&&(o=o.add(u.call(this.prev,{dom:r})));var a=function(t,n){if(Array.isArray(n))return n.reduce(function(e,n){return e.add(t.get(n))},e());if(n&&"object"===(void 0===n?"undefined":_typeof(n))&&"first"in n&&"last"in n){var r=n.first,o=n.last,a=t.length;r<0&&(r+=a),o<0&&(o+=a);for(var s=e(t.get(r));r!==o;)r+=Math.sign(o-r),s=s.add(t.get(r));return s}if("string"==typeof n){if("chars"===n){var c=e();return t.textNodes().forEach(function(e){return i(e).forEach(function(e){return c=c.add(e)})}),c}if("links"===n)return t.find("tw-link, .enchantment-link");if("lines"===n){var u=t.findAndFilter("br:not(tw-sidebar *)").get(),l=[e()],f=e();return t.textNodes(":not(tw-sidebar):not(tw-sidebar *)").forEach(function(t){2&t.compareDocumentPosition(u[0])&&(u.shift(),l.push(e())),l[l.length-1]=l[l.length-1].add(t)}),l.forEach(function(e){return f=f.add(e.wrapAll("<tw-pseudo-hook>").parent())}),f}}return e(t.get(n))};if(this.selector){var l=void 0;l=this.selector.match("^"+f.hookRef+"$")?r.add(r.parentsUntil(t.storyElement.parent())).findAndFilter(c(this.selector)):s(this.selector,r),o=this.properties.length?o.add(this.properties.reduce(a,l)):o.add(l)}return this.base&&(o=o.add(this.properties.reduce(a,u.call(this.base,{dom:r})))),o}function l(e){if(!e)return[];var n=e.selector,r=e.base,i=e.properties,o=e.prev;return[JSON.stringify([t.insensitiveName(n)||"",l(r),[].concat(_toConsumableArray(i)).sort()])].concat(_toConsumableArray(l(o))).sort()}var f=r.Patterns,p=new RegExp(t.realWhitespace+"+"),d=Object.freeze({forEach:function(t,n){var r=u.call(this,t).each(function(t){n(e(this),t)});return t.dom.findAndFilter("tw-pseudo-hook").contents().unwrap(),r},hooks:function(e){return u.call(this,e)},get TwineScript_ObjectName(){return this.properties.length>0||this.prev?"a complex hook name":this.selector+" (a hook name)"},TwineScript_TypeName:"a hook name (like ?this)",TwineScript_Unstorable:!0,"TwineScript_+":function(e){var t=e.TwineScript_Clone();return t.prev=this,t},TwineScript_is:function(e){return l(this)+""==l(e)+""},TwineScript_GetProperty:function(e){return d.create(void 0,this,[e],void 0)},TwineScript_Properties:["chars","links","lines"],TwineScript_Clone:function(){return d.create(this.selector,this.base,this.properties,this.prev)},create:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;return Object.assign(Object.create(this||d),{selector:e,base:t,properties:n,prev:r})},from:function(e){return d.isPrototypeOf(e)?e:d.create(e)}});return d}),define("internaltypes/twineerror",["jquery","utils"],function(e,t){var n=t.impossible,r=t.escape,i={syntax:"The markup seems to contain a mistake.",saving:"I tried to save or load the game, but I couldn't do it.",operation:"I tried to perform an operation on some data, but the data's type was incorrect.",macrocall:"I tried to use a macro, but its call wasn't written correctly.",datatype:"I tried to use a macro, but was given the wrong type of data to it.",infinite:"I almost ended up doing the same thing over and over, forever.",property:"I tried to access a value in a string/array/datamap, but I couldn't find it.",unimplemented:"I currently don't have this particular feature. I'm sorry.",javascript:"This error message was reported by your browser's Javascript engine. I don't understand it either, but it usually means that an expression was badly written."},o={error:[],warning:[]},a={create:function(e,t,r){return t||n("TwineError.create","called with only 1 string."),r||e in i||n("TwineError.create","no error explanation given"),Object.assign(Object.create(this),{type:e,message:t,explanation:r})},fromError:function(e){return a.create("javascript","\u2615 "+e.message)},containsError:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce(function(e,t){return e||(t instanceof Error?t:a.isPrototypeOf(t)?t:!!Array.isArray(t)&&a.containsError.apply(a,_toConsumableArray(t)))},!1)},createWarning:function(e,t){return Object.assign(this.create(e,t),{warning:!0})},render:function(t){var n=this;t=t||"";var a=e("<tw-error class='"+("javascript"===this.type?"javascript ":"")+(this.warning?"warning":"error")+"' title='"+r(t)+"'>"+r(this.message)+"</tw-error>"),s=e("<tw-error-explanation>").text(this.explanation||i[this.type]).hide(),c=e("<tw-error-explanation-button tabindex=0>").html("<span class='folddown-arrowhead'>►</span>");return c.on("click",function(){s.toggle(),c.children(".folddown-arrowhead").css("transform","rotate("+(s.is(":visible")?"90deg":"0deg")+")")}),a.append(c).append(s),a.data("TwineError",this),o.error.forEach(function(e){return e(n,t)}),a},on:function(e,t){return e in o?("function"!=typeof t||o[e].includes(t)||o[e].push(t),a):void n("TwineError.on","invalid event name")}};return a}),define("utils/operationutils",["jquery","utils","datatypes/hookset","internaltypes/twineerror"],function(e,t,n,r){function i(e){return!!e&&("object"===(void 0===e?"undefined":_typeof(e))||"function"==typeof e)}function o(e){return Array.isArray(e)?"array":e instanceof Map?"datamap":e instanceof Set?"dataset":"string"==typeof e?"string":e&&"object"===(void 0===e?"undefined":_typeof(e))?"object":""}function a(e,t){if(e instanceof Map||b("isValidDatamapName","called with non-Map"),r.containsError(t))return t;if("string"!=typeof t&&"number"!=typeof t)return r.create("property","Only strings and numbers can be used as data names for "+l(e)+", not "+l(t)+".");var n="string"==typeof t?+t:""+t;return!(!Number.isNaN(n)&&e.has(n))||r.create("property","You mustn't use both "+l(t)+" and "+l(n)+" as data names in the same datamap.")}function s(e,t){if(null===t)return void 0===e;if(t.innerType){if("optional"===t.pattern||"zero or more"===t.pattern)return void 0===e||s(e,t.innerType);if("either"===t.pattern)return t.innerType.some(function(t){return s(e,t)});if("lambda"===t.pattern&&s(e,t.innerType))return"string"!=typeof t.clauses&&b("singleTypeCheck","lambda signature had non-string clauses"),t.clauses.includes("where")==="where"in e&&t.clauses.includes("making")==="making"in e&&t.clauses.includes("via")==="via"in e&&t.clauses.includes("with")==="with"in e;if("wrapped"===t.pattern)return s(e,t.innerType)}return(void 0===t||void 0!==e)&&("anything"===t.TwineScript_TypeName&&void 0!==e&&!e.TwineScript_Unstorable||(t===String?"string"==typeof e:t===Boolean?"boolean"==typeof e:t===parseInt?"number"==typeof e&&!Number.isNaN(e)&&!(e+"").includes("."):t===Number?"number"==typeof e&&!Number.isNaN(e):t===Array?Array.isArray(e):t===Map||t===Set?e instanceof t:Object.isPrototypeOf.call(t,e)))}function c(e){return"string"==typeof e||Array.isArray(e)||n.isPrototypeOf(e)}function u(e){if(!i(e))return e;if("function"==typeof e.TwineScript_Clone)return e.TwineScript_Clone();if(Array.isArray(e))return[].concat(_toConsumableArray(e));if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);if("function"==typeof e)return Object.assign(e.bind(),e);switch(Object.getPrototypeOf(e)){case Object.prototype:return Object.assign({},e);case null:return Object.assign(Object.create(null),e)}return b("OperationUtils.clone","The value "+(e.toSource?e.toSource():e)+" cannot be cloned!"),e}function l(e){return i(e)&&"TwineScript_ObjectName"in e?e.TwineScript_ObjectName:Array.isArray(e)?"an array":e instanceof Map?"a datamap":e instanceof Set?"a dataset":"boolean"==typeof e?"the boolean value '"+e+"'":"string"==typeof e||"number"==typeof e?"the "+(void 0===e?"undefined":_typeof(e))+" "+x(e):void 0===e?"an empty variable":"...whatever this is"}function f(e){return Object.getPrototypeOf(e)===Object.prototype&&e.innerType?e.typeName?e.typeName:"either"===e.pattern?(Array.isArray(e.innerType)||b("typeName",'"either" pattern had non-array inner type'),e.innerType.map(f).join(" or ")):"optional"===e.pattern?"(optional) "+f(e.innerType):f(e.innerType):e===String||e===Number||e===Boolean?"a "+_typeof(e()):e===parseInt?"a whole number":e===Map?"a datamap":e===Set?"a dataset":e===Array?"an array":i(e)&&"TwineScript_TypeName"in e?e.TwineScript_TypeName:l(e)}function p(e,t){return"object"!==(void 0===e?"undefined":_typeof(e))&&"object"!==(void 0===t?"undefined":_typeof(t))?e===t:Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every(function(e,n){return p(t[n],e)}):e instanceof Map&&t instanceof Map?p(Array.from(e.entries()).sort(),Array.from(t.entries()).sort()):e instanceof Set&&t instanceof Set?p([].concat(_toConsumableArray(e)),[].concat(_toConsumableArray(t))):e&&"function"==typeof e.TwineScript_is?e.TwineScript_is(t):e&&"object"===(void 0===e?"undefined":_typeof(e))&&t&&"object"===(void 0===t?"undefined":_typeof(t))&&Object.getPrototypeOf(e)===Object.prototype&&Object.getPrototypeOf(t)===Object.prototype?p(Object.getOwnPropertyNames(e).map(function(t){return[t,e[t]]}),Object.getOwnPropertyNames(t).map(function(e){return[e,t[e]]})):Object.is(e,t)}function d(e,t){if(e||""===e){if("string"==typeof e)return e.includes(t);if(Array.isArray(e))return e.some(function(e){return p(e,t)});if(e instanceof Set||e instanceof Map)return Array.from(e.keys()).some(function(e){return p(e,t)})}return r.create("operation",l(e)+" cannot contain any values, let alone "+l(t))}function h(e,t){return"function"==typeof t.TwineScript_IsTypeOf?t.TwineScript_IsTypeOf(e):r.create("operation",'"is a" should only be used to compare type names, not '+l(t)+".")}function g(e,t){return e&&"function"==typeof e.TwineScript_IsTypeOf?e.TwineScript_IsTypeOf(t):t&&"function"==typeof t.TwineScript_IsTypeOf?t.TwineScript_IsTypeOf(e):Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every(function(e,n){return g(e,t[n])}):e instanceof Map&&t instanceof Map?g(Array.from(e.entries()).sort(),Array.from(t.entries()).sort()):e instanceof Set&&t instanceof Set?(e=[].concat(_toConsumableArray(e)),w.apply(void 0,_toConsumableArray(t)).some(function(t){return g(e,t)})):p(e,t)}function y(e,t,n){if(!t||!n)return r.create("macrocall","The sub"+o(e)+" index values must not be 0 or NaN.");var i="string"==typeof e;if(i&&(e=Array.from(e)),t<0&&(t=e.length+t+1),n<0&&(n=e.length+n+1),t>n)return y(arguments[0],n,t);var a=e.slice(t>0?t-1:t,n).map(u);return i?a.join(""):a}function m(t){return r.containsError(t)?t:t&&"function"==typeof t.TwineScript_Print?t.TwineScript_Print():t instanceof Map?(t=Array.from(t.entries()),r.containsError(t)?t:t.reduce(function(e,t){var n=_slicedToArray(t,2),r=n[0],i=n[1];return e+"<tr><td>`"+m(r)+"`</td><td>`"+m(i)+"`</td></tr>"},"<table class=datamap>")+"</table>"):t instanceof Set?Array.from(t.values()).map(m)+"":Array.isArray(t)?t.map(m)+"":t instanceof e?t:i(t)?r.create("unimplemented","I don't know how to print this value yet."):t+""}function v(e,t){if(e>t)return v(t,e);var n=[e];for(t-=e;t-- >0;)n.push(++e);return n}var b=t.impossible,w=t.permutations,x=t.toJSLiteral;return Object.freeze({isObject:i,singleTypeCheck:s,isValidDatamapName:a,collectionType:o,isSequential:c,clone:u,objectName:l,typeName:f,is:p,contains:d,isA:h,matches:g,subset:y,range:v,printBuiltinValue:m,numericIndex:/^(?:[1-9]\d*|0)$/,unique:function(e,t,n){return!n.slice(t+1).some(function(t){return p(e,t)})}})}),define("twinescript/compiler",["utils"],function(e){function t(e,t){for(var n=0;n<e.length;n+=1)if(t.includes(e[n].type))return n;return NaN}function n(e,n){return e.length-1-t.apply(void 0,[[].concat(_toConsumableArray(e)).reverse(),n])}function r(e,r){var i=[];return e.length?([["error"],["comma"],{rightAssociative:["spread","bind"]},["to"],["into"],["where","when","via"],["with","making","each"],["augmentedAssign"],["and","or"],["is","isNot"],["contains","isIn"],["isA","isNotA"],["matches"],["inequality"],["addition","subtraction"],["multiplication","division"],{rightAssociative:["not","positive","negative"]},{rightAssociative:["belongingProperty"]},{rightAssociative:["belongingOperator","belongingItOperator"]},["property"],["itsProperty"],{rightAssociative:["belongingItProperty"]},["possessiveOperator","itsOperator"],["twineLink"],["macro"],["grouping"]]["most"===r?"reverse":"valueOf"]().some(function(r){var o=void 0;if(o=r.rightAssociative?t(e,r.rightAssociative):n(e,r),!Number.isNaN(o)&&o>-1)return i=[e[o],o],!0}),i):i}function i(e){if("inequality"===e.type){var t=e.operator;return e.negate?{">":"<=","<":">=",">=":"<","<=":">"}[t]:t}return e.type}function o(e){var t=i(e);return{">":"<","<":">",">=":"<=","<=":">=",contains:"isIn",isIn:"contains",isA:"typifies",typifies:"isA",isNotA:"untypifies",untypifies:"isNotA"}[t]||t}function a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isVarRef,u=t.whitespaceError,l=t.elidedComparison,f=t.testNeedsRight;if(e=[].concat(e),!e.length)return n&&u?"TwineError.create('operation',"+s(u)+")":"";var p=e[0];if(1===e.length){if("identifier"===p.type)return n?"VarRef.create(Operations.Identifiers,"+s(p.text)+")":" Operations.Identifiers."+p.text.toLowerCase()+" ";if("variable"===p.type)return"VarRef.create(State.variables,"+s(p.name)+")"+(n?"":".get()");if("tempVariable"===p.type)return"VarRef.create(section.stack[0].tempVariables,"+s(p.name)+")"+(n?"":".get()");if("hookRef"===p.type)return" HookSet.create('?"+p.name+"') ";if("string"===p.type)return p.text.replace(/\n/g,"\\n");if("colour"===p.type)return"Colour.create("+s(p.colour)+")";if("datatype"===p.type)return"Datatype.create("+s(p.name)+")";if("blockedValue"===p.type)return"section.blockedValue()";if("root"===p.type)return a(p.children);if("whitespace"===p.type&&n&&u)return"TwineError.create('operation',"+s(u)+")"}var d=void 0,h=r(e,"least"),g=_slicedToArray(h,2);p=g[0],d=g[1];var y=(p||{}).type,m=function(e){return{isVarRef:!0,whitespaceError:"I need usable data to be on the "+e+' of "'+p.text+'".'}},v=void 0,b=void 0,w=void 0,x=void 0,T=void 0,S=void 0,k=!0,O=!0,j=!1;if(y){if("error"===y)return"TwineError.create('syntax',"+s(p.message)+")";if("comma"===y)w=",",O=!1;else if("spread"===y)w="Operations.makeSpreader(",b=a(e.slice(d+1))+")",k=!1;else if("bind"===y)w="VarBind.create(",b=a(e.slice(d+1),m("right"))+")",k=!1;else if("to"===y)T="to",b=a(e.slice(d+1),m("right")),v="Operations.setIt("+a(e.slice(0,d),m("left"))+")";else if("into"===y)T="into",b=a(e.slice(0,d),m("left")),v="Operations.setIt("+a(e.slice(d+1),m("right"))+")";else if("where"===y||"when"===y||"via"===y)v="Lambda.create("+(a(e.slice(0,d),{isVarRef:!0,whitespaceError:null}).trim()||"undefined")+",",w=s(p.type)+",",b=s(a(e.slice(d+1)))+")";else if("with"===y||"making"===y||"each"===y){var A=e.slice(d+1);![2,3].includes(A.length)||"whitespace"!==A[0].type||"tempVariable"!==A[1].type||A[2]&&"whitespace"!==A[2].type?(v="TwineError.create('operation','I need a temporary variable to the right of \\'",w=p.type,b="\\'.')"):"each"===y?(v="Lambda.create(",w=a(A,m("right")).trim(),b=",'where','true')"):(v="Lambda.create("+(a(e.slice(0,d),{isVarRef:!0,whitespaceError:null}).trim()||"undefined")+",",w=s(p.type)+",",b=s(A[1].name)+")")}else if("augmentedAssign"===y)T=p.operator,v=a(e.slice(0,d),m("left")),b="Operations['"+T+"']("+a(e.slice(0,d))+","+a(e.slice(d+1))+")";else if("and"===y||"or"===y){var C=function e(t){var n=r(t,"least"),i=_slicedToArray(n,2),o=i[0],a=i[1];if(o)return["inequality","is","isNot","isIn","contains","isA","typifies","isNotA","untypifies","matches"].includes(o.type)?o:["and","or"].includes(o.type)?e(t.slice(0,a))||e(t.slice(a+1)):void 0},E=C(e.slice(0,d)),N=C(e.slice(d+1)),_="TwineError.create('operation', 'This use of \"is not\" and \""+y+"\" is grammatically ambiguous','Maybe try rewriting this as \"__ is not __ "+y+" __ is not __\"') ";if(x=p.type,l===p.type)x="",v=a(e.slice(0,d),{isVarRef:n,elidedComparison:l}).trim(),w=",",b=a(e.slice(d+1),{elidedComparison:l}).trim();else if(E&&!N){var P=E,I=s(i(P));if("isNot"===P.type||"isNotA"===P.type||"untypifies"===P.type)return _;b="Operations.elidedComparisonOperator("+s(p.type)+","+I+","+a(e.slice(d+1),{elidedComparison:y})+")"}else if(!E&&N){var M=N,D=e.indexOf(M),L=s(o(M));if("isNot"===M.type||"isNotA"===M.type||"untypifies"===M.type)return _;b="Operations.elidedComparisonOperator("+s(p.type)+","+L+","+a(e.slice(0,d),{elidedComparison:y})+")",v=a([].concat(_toConsumableArray(e.slice(D+1)),[Object.assign(Object.create(M),_defineProperty({},"inequality"===M.type?"operator":"type",o(M)))],_toConsumableArray(e.slice(d+1,D))))}}else if("is"===y||"isNot"===y||"contains"===y||"isIn"===y||"inequality"===y||"isA"===y||"typifies"===y||"isNotA"===y||"untypifies"===y||"matches"===y)j=!0,x=i(p);else if("addition"===y||"subtraction"===y){var R=a(e.slice(0,d),{testNeedsRight:!0}).trim();if(!R)return p.type={addition:"positive",subtraction:"negative"}[y],a(e,{isVarRef:n,whitespaceError:u,elidedComparison:l,testNeedsRight:f});x=p.text}else if("multiplication"===y||"division"===y)x=p.text;else if("positive"===y||"negative"===y)x="*",v="negative"===y?"-1":"1";else if("not"===y)w=" ",b="Operations.not("+a(e.slice(d+1))+")",k=!1;else if("belongingProperty"===y)b="VarRef.create("+a(e.slice(d+1),m("right"))+","+s(p.name)+")"+(n?"":".get()"),w=" ",k=O=!1;else if("belongingOperator"===y||"belongingItOperator"===y)p.type.includes("It")?(b="Operations.Identifiers.it",O=!1):b=a(e.slice(d+1),m("right")),S="belonging";else if("property"===y)v="VarRef.create("+a(e.slice(0,d),m("left"))+","+s(p.name)+")"+(n?"":".get()"),w=" ",k=O=!1;else if("itsProperty"===y||"belongingItProperty"===y)v="VarRef.create(Operations.Identifiers.it,"+s(p.name)+").get()",w=" ",k=O=!1;else if("possessiveOperator"===y||"itsOperator"===y)p.type.includes("it")&&(v="Operations.Identifiers.it",k=!1),S="possessive";else if("twineLink"===y)w='Macros.run("link-goto", [section,'+s(p.innerText)+","+s(p.passage)+"])",k=O=!1;else if("macro"===y){var q=p.children[0];"macroName"!==q.type&&c("Compiler.compile","macro token had no macroName child token"),w="Macros.run("+(q.isMethodCall?a(q.children):'"'+p.name+'"')+", [section,"+a(p.children.slice(1))+"])",k=O=!1}else"grouping"===y&&(w="("+a(p.children,{isVarRef:n})+")",k=O=!1)}else;return d>-1?(x&&(n=!1),v=v||a(e.slice(0,d),{isVarRef:n
}).trim(),b=b||a(e.slice(d+1)).trim(),j&&!v&&(v=" Operations.Identifiers.it "),k&&!v||O&&!b?f&&O&&!b?"":"TwineError.create('operation','I need some code to be "+(k?"left ":"")+(k&&O?"and ":"")+(O?"right ":"")+'of "'+p.text+"\"')":w?v+w+b:T?"Operations.makeAssignmentRequest("+[v,b,s(T)]+")":S?"VarRef.create("+("belonging"===S?b:v)+",{computed:true,value:"+("belonging"===S?v:b)+"})"+(n?"":".get()"):x?" Operations["+s(x)+"]("+v+","+b+") ":""):1===e.length?(("value"in e[0]?e[0].value:e[0].text)+"").trim()||" ":e.reduce(function(e,t){return e+a(t,{isVarRef:n})},"")}var s=e.toJSLiteral,c=e.impossible;return a}),define("renderer",["utils","markup","twinescript/compiler","internaltypes/twineerror"],function(e,t,n,r){function i(e,t){return"<"+t+">"+e+"</"+t+">"}function o(e,t){var n=f.render(e.children);return n&&i(n,t)}function a(e){var t=[];if("string"!==e.type)for(var n=0;n<e.children.length;n+=1)t.push.apply(t,_toConsumableArray(a(e.children[n])));var r=e.firstChild();return"macro"===e.type&&r&&"macroName"===r.type&&f.options.blockerMacros.includes(l(r.text.slice(0,-1)))&&t.push(e),t}var s=e.escape,c=e.impossible,u=e.toJSLiteral,l=e.insensitiveName,f=void 0,p="text-align: center; max-width:50%; ";return f={options:{blockerMacros:[]},exec:function(){var e=void 0,n=void 0;return function(r){return"string"!=typeof r?(c("Renderer.exec","source was not a string, but "+(void 0===r?"undefined":_typeof(r))),""):r===e?n:(e=r,n=f.render(t.lex(r).children))}}(),render:function e(c){var d="",h=[];if(!c)return d;for(var g=c.length,y=0;y<g;y+=1){var m=c[y];switch(m.type){case"error":d+=r.create("syntax",m.message).render(s(m.text))[0].outerHTML;break;case"numbered":case"bulleted":var v="numbered"===m.type?"ol":"ul";d+="<"+v+">";for(var b=1;y<g&&c[y]&&c[y].type===m.type;)d+=("<"+v+">").repeat(Math.max(0,c[y].depth-b)),d+=("</"+v+">").repeat(Math.max(0,b-c[y].depth)),b=c[y].depth,d+=o(c[y],"li"),y+=1;y-=1,d+=("</"+v+">").repeat(b+1);break;case"align":for(;m&&"align"===m.type;){var w=m,x=w.align,T=y+=1;if("left"===x){y-=1;break}for(;y<g&&c[y]&&"align"!==c[y].type;)y+=1;var S=e(c.slice(T,y)),k="";switch(x){case"center":k+=p+"margin-left: auto; margin-right: auto;";break;case"justify":case"right":k+="text-align: "+x+";";break;default:+x&&(k+=p+"margin-left: "+x+"%;")}d+="<tw-align "+(k?'style="'+k+'"':"")+(f.options.debug?' title="'+m.text+'"':"")+">"+S+"</tw-align>\n",m=c[y]}break;case"column":for(var O=[];m&&"column"===m.type;){var j=m,A=j.column,C=y+=1;if("none"===A){y-=1;break}for(;y<g&&c[y]&&"column"!==c[y].type;)y+=1;O.push({text:m.text,type:A,body:e(c.slice(C,y)),width:m.width,marginLeft:m.marginLeft,marginRight:m.marginRight}),m=c[y]}O.length&&function(){var e=O.reduce(function(e,t){return e+t.width},0);d+="<tw-columns>"+O.map(function(t){return"<tw-column type="+t.type+' style="width:'+t.width/e*100+"%; margin-left: "+t.marginLeft+"em; margin-right: "+t.marginRight+'em;" '+(f.options.debug?' title="'+t.text+'"':"")+">"+t.body+"</tw-column>\n"}).join("")+"</tw-columns>"}();break;case"heading":d+=o(m,"h"+m.depth);break;case"br":if(!h.length||/td|th/.test(h[0])){d+="<br>";for(var E=c[y+1];E&&("br"===E.type||"tag"===E.type&&/^<br\b/i.test(E.text));)d+="<br data-cons "+("tag"===E.type?"data-raw":"")+">",y+=1,E=c[y+1]}break;case"hr":d+="<hr>";break;case"escapedLine":case"comment":break;case"inlineUrl":d+='<a class="link" href="'+s(m.text)+'">'+m.text+"</a>";break;case"scriptStyleTag":case"tag":var N=m.text.toLowerCase();/^<\/?(?:table|thead|tbody|tr|tfoot|td|th)\b/.test(N)&&h[m.text.startsWith("</")?"shift":"unshift"](N),d+=m.text.startsWith("</")?m.text:m.text.replace(/>$/," data-raw>");break;case"sub":case"sup":case"strong":case"em":d+=o(m,m.type);break;case"strike":d+=o(m,"s");break;case"bold":d+=o(m,"b");break;case"italic":d+=o(m,"i");break;case"twineLink":var _=_slicedToArray(t.lex("(link-goto:"+u(m.innerText)+","+u(m.passage)+")").children,1),P=_[0];d+='<tw-expression type="macro" name="link-goto"'+(f.options.debug?' title="'+s(m.text)+'"':"")+' js="'+s(n(P))+'"></tw-expression>';break;case"hook":d+="<tw-hook "+(m.hidden?"hidden ":"")+(m.name?'name="'+l(m.name)+'"':"")+(f.options.debug&&m.name?' title="Hook: ?'+m.name+'"':"")+' source="'+s(m.innerText)+'"></tw-hook>';break;case"unclosedHook":return d+="<tw-hook "+(m.hidden?"hidden ":"")+(m.name?'name="'+l(m.name)+'"':"")+'source="'+s(c.slice(y+1,g).map(function(e){return e.text}).join(""))+'"></tw-hook>';case"verbatim":d+=i(s(m.innerText).replace(/\n/g,"<br>"),"tw-verbatim");break;case"collapsed":d+=o(m,"tw-collapsed");break;case"variable":case"tempVariable":case"macro":var I="macro"===m.type?a(m):[],M=I.map(function(e){var t=n(e);return e.type="blockedValue",t});d+='<tw-expression type="'+m.type+'" name="'+s(m.name||m.text)+'"'+(f.options.debug?' title="'+s(m.text)+'"':"")+(I.length?' blockers="'+s(JSON.stringify(M))+'"':"")+' js="'+s(n(m))+'"></tw-expression>',I.forEach(function(e){return e.type="macro"});break;default:d+=m.children&&m.children.length?e(m.children):m.text}}return d}},Object.freeze(f)}),define("internaltypes/changedescriptor",["jquery","utils","renderer","datatypes/hookset"],function(e,t,n,r){var i=t.assertOnlyHas,o=t.impossible,a=t.transitionIn,s=n.exec,c=void 0,u={source:"",innerSource:"",enabled:!0,target:null,append:"append",newTargets:null,transition:"instant",transitionTime:null,transitionDeferred:!1,loopVars:null,styles:null,attr:null,data:null,section:null,summary:function(){var e=this;return["source","innerSource","enabled","target","append","newTargets","transition","transitionTime"].filter(function(t){return e.hasOwnProperty(t)}).concat([this.attr.length&&"attr",this.styles.length&&"styles",Object.keys(this.loopVars).length&&"loopVars",Object.keys(this.data).length&&"data"].filter(Boolean))},create:function(e,t){var n=Object.assign(Object.create(this),{attr:[].concat(this.attr||[]),styles:[].concat(this.styles||[]),loopVars:this.loopVars||{},data:this.data||{}},e);return t&&t.run(n),n},update:function(){var e=this,t=this.section,n=this.newTargets,i=this.target,o=function(t){if(Array.isArray(e.styles)&&e.styles.length>0){var n=e.styles.reduce(function(e,t){return Object.keys(t).forEach(function(n){var r=t[n];e[+("function"==typeof r)][n]=r}),e},[{},{}]),r=_slicedToArray(n,2),i=r[0],o=r[1];t.css(i),setTimeout(function(){return t.css(o)})}e.attr&&e.attr.forEach(function(e){return t.attr(e)}),e.data&&t.data(e.data)};Array.isArray(n)&&n.length&&(i=n.map(function(e){return e.target})),[].concat(i).forEach(function(e){r.isPrototypeOf(e)?e.forEach(t,o):o(e)})},render:function(){var t=this,n=this.source,l=this.transition,f=this.transitionTime,p=this.transitionDeferred,d=this.enabled,h=this.data,g=this.section,y=this.newTargets,m=this.target,v=this.target,b=this.append;if(i(this,c),!d||void 0!==m.popAttr("hidden"))return u.create({target:m,data:Object.assign({},h,{hiddenSource:n})}).update(),e();if(Array.isArray(y)&&y.length&&(m=y),!m)return o("ChangeDescriptor.render","ChangeDescriptor has source but not a target!"),e();var w=e();if([].concat(m).filter(function(e){return!e.jquery}).map(function(e){var t=b,n=void 0;if(e.target&&e.append){var r=e;t=r.append,n=r.before,e=e.target}return{elements:e.hooks(g,v).filter(function(){return!(n&&1&this.compareDocumentPosition(document)&&2&this.compareDocumentPosition(v[0]))}),append:t}},[]).forEach(function(n){var r=n.elements,i=n.append;r.each(function(n,r){r=e(r),w=w.add(t.create({target:r,append:i,newTargets:null}).render()),r.filter("tw-pseudo-hook").contents().unwrap()})}),w.length||Array.isArray(m)||r.isPrototypeOf(m))return w;if(!(b in m)){if("replace"!==b)return o("Section.render","The target doesn't have a '"+b+"' method."),e();m[0]instanceof Text?b="replaceWith":(m.empty(),b="append")}return m[0]instanceof Text&&("append"===b&&(b="after"),"prepend"===b&&(b="before")),w=e(n&&e.parseHTML(s(n),document,!0)),m[b](w.length?w:void 0),this.update(),l&&!p&&a("replace"===b?m:w,l,f),w}};return c=Object.keys(u),Object.seal(u)}),define("datatypes/changercommand",["utils","utils/operationutils","internaltypes/changedescriptor","internaltypes/twineerror"],function(e,t,n,r){var i=e.impossible,o=t.is,a={},s={changer:!0,TwineScript_TypeName:"a changer command",TwineScript_Print:function(){return"`[A ('"+this.macroName+"':) command]`"},summary:function(){var e=n.create();return this.run(e),e.summary()},create:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return Array.isArray(t)||i("ChangerCommand.create","params was not an array"),Object.assign(Object.create(this),{macroName:e,params:t,next:n,TwineScript_ObjectName:"a ("+e+":) command"})},"TwineScript_+":function(e){for(var t=this.TwineScript_Clone(),n=t;n.next;)n=n.next;return n.next=e,t},TwineScript_is:function(e){if(s.isPrototypeOf(e))return this.macroName===e.macroName&&o(this.params,e.params)&&o(this.next,e.next)},TwineScript_Clone:function(){return this.create(this.macroName,this.params,this.next)},run:function(e){var t=a[this.macroName].apply(a,[e].concat(_toConsumableArray(this.params)));if(r.containsError(t))return t;this.next&&this.next.run(e)},register:function(e,t){a[e]=t}};return Object.freeze(s)}),define("state",["utils","passages","datatypes/changercommand","internaltypes/twineerror","utils/operationutils"],function(e,t,n,r,i){function o(){if(m.hasSessionStorage){var e=m.serialise();if("string"==typeof e)try{sessionStorage.setItem("Saved Session",e)}catch(e){return}}}function a(e){h=(p[d]||f).create(e),o()}var s=e.impossible,c=i.objectName,u=["localStorage","sessionStorage"].map(function(e){try{return!!window[e]&&function(){return window[e].setItem("test","1"),window[e].removeItem("test"),!0}()}catch(e){return!1}}),l={TwineScript_ObjectName:"this story's variables",TwineScript_VariableStore:!0},f={passage:"",variables:l,create:function(e,t){var n=Object.create(f);return n.passage=e||"",n.variables=Object.assign(Object.create(this.variables),t),n}},p=[],d=-1,h=f.create(),g=void 0,y={forward:[],back:[],load:[]},m=void 0;return m=Object.assign({get passage(){return h.passage},get variables(){return h.variables},get pastLength(){return d},get futureLength(){return p.length-1-d},passageNameVisited:function(e){var n=0;if(!t.get(e))return 0;for(var r=0;r<=d;r++)n+=+(e===p[r].passage);return n},passageNameLastVisited:function(e){if(!t.get(e))return 1/0;if(e===h.passage)return 0;for(var n=d;n>0;n--)if(p[n].passage===e)return d-n+1;return 1/0},pastPassageNames:function(){for(var e=[],t=d-1;t>=0;t--)e.unshift(p[t].passage);return e},play:function(e){h||s("State.play","present is undefined!"),h.passage=e,p=p.slice(0,d+1).concat(h),d+=1,a(e),y.forward.forEach(function(t){return t(e)})},rewind:function(e){var t=1,n=!1;if(e)if("string"==typeof e){if((t=this.passageNameLastVisited(e))===1/0)return}else"number"==typeof e&&(t=e);for(;t>0&&d>0;t--)n=!0,d-=1;return n&&(a(p[d].passage),y.back.forEach(function(e){return e()})),n},fastForward:function(e){var t=1,n=!1;for("number"==typeof e&&(t=e);t>0&&p.length>0;t--)n=!0,d+=1;return n&&(a(p[d].passage),y.forward.forEach(function(e){return e(p[d].passage,"fastForward")})),n},on:function(e,t){return e in y?("function"!=typeof t||y[e].includes(t)||y[e].push(t),m):void s("State.on","invalid event name")},reset:function(){window.jasmine&&(p=[],d=-1,h=f.create(),g=void 0,y.load.forEach(function(e){return e(p)}))},hasStorage:u[0],hasSessionStorage:u[1]},function(){function e(t){return"number"==typeof t||"boolean"==typeof t||"string"==typeof t||null===t||Array.isArray(t)&&t.every(e)||t instanceof Set&&Array.from(t).every(e)||t instanceof Map&&Array.from(t.values()).every(e)||n.isPrototypeOf(t)}function i(e,t){return t instanceof Set?{"(dataset:)":Array.from(t)}:t instanceof Map?{"(datamap:)":Array.from(t)}:n.isPrototypeOf(t)?{changer:{name:t.macroName,params:t.params,next:t.next}}:t}function o(e,t){if(t&&"object"===(void 0===t?"undefined":_typeof(t))){if(Array.isArray(t["(dataset:)"]))return new Set(t["(dataset:)"]);if(Array.isArray(t["(datamap:)"]))return new Map(t["(datamap:)"]);if(t.changer&&"object"===_typeof(t.changer)){var r=t.changer,i=r.name,o=r.params,a=r.next;return n.create(i,o,a)}}return t}function s(){var t=p.slice(0,d+1),n=t.map(function(t){return Object.keys(t.variables).filter(function(n){return t.variables[n]&&!e(t.variables[n])}).map(function(e){return[e,t.variables[e]]})});if(g||(g=n.reduce(function(e,t,n){var r=_slicedToArray(t,2),i=r[0],o=r[1];return e||i&&[i,o,n+1]},void 0)),g){var o=g,a=_slicedToArray(o,3),s=a[0],u=a[1],l=a[2];return r.create("saving","The variable $"+s+" holds "+c(u)+" (which is, or contains, a complex data value) on turn "+l+"; the game can no longer be saved.")}try{return JSON.stringify(t,i)}catch(e){return!1}}function u(e){var n=void 0,r=l,i="The save data is unintelligible.";try{n=JSON.parse(e,o)}catch(e){return Error(i)}if(!Array.isArray(n))return Error(i);var s=void 0;return(s=(n=n.map(function(e){return"object"===(void 0===e?"undefined":_typeof(e))&&e.hasOwnProperty("passage")&&e.hasOwnProperty("variables")?t.hasValid(e.passage)?(e.variables=Object.assign(Object.create(r),e.variables),r=e.variables,Object.assign(Object.create(f),e)):Error("The data refers to a passage named '"+e.passage+"', but it isn't in this story."):Error(i)})).find(function(e){return e instanceof Error}))?s:(p=n,y.load.forEach(function(e){return e(p)}),d=p.length-1,a(p[d].passage),!0)}return{serialise:s,deserialise:u}}()),Object.seal(f),Object.freeze(m)}),define("datatypes/colour",["jquery"],function(e){function t(t){if(t in s)return s[t];var n=e("<p>").css("background-color",t).css("background-color");return n=n.startsWith("rgb")?n.match(/\d+/g).reduce(function(e,t,n){return e["rgb"[n]]=+t,e},{}):{r:192,g:192,b:192},s[t]=n,n}function n(e){return"string"!=typeof e?e:(e=e.replace("#",""),e=e.replace(o,"$1$1$2$2$3$3"),{r:parseInt(e.slice(0,2),16),g:parseInt(e.slice(2,4),16),b:parseInt(e.slice(4,6),16)})}function r(e){var t=e.r,n=e.g,r=e.b,i=e.a;t/=255,n/=255,r/=255;var o=Math.max(t,n,r),a=Math.min(t,n,r),s=(o+a)/2,c=o-a;if(o===a)return{h:0,s:0,l:s};var u=void 0;switch(o){case t:u=(n-r)/c+(n<r?6:0);break;case n:u=(r-t)/c+2;break;case r:u=(t-n)/c+4}return u=Math.round(60*u),{h:u,s:s>.5?c/(2-o-a):c/(o+a),l:s,a:i}}function i(e){function t(e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?c+6*(s-c)*e:e<.5?s:e<2/3?c+(s-c)*(2/3-e)*6:c}var n=e.h,r=e.s,i=e.l,o=e.a;if(0===r){var a=Math.floor(255*i);return{r:a,g:a,b:a}}n/=360;var s=i<.5?i*(1+r):i+r-i*r,c=2*i-s;return{r:Math.floor(255*t(n+1/3)),g:Math.floor(255*t(n)),b:Math.floor(255*t(n-1/3)),a:o}}var o=/^([\da-fA-F])([\da-fA-F])([\da-fA-F])$/,a=/^([\da-fA-F])([\da-fA-F])([\da-fA-F])([\da-fA-F])([\da-fA-F])([\da-fA-F])$/,s=Object.create(null),c=Object.freeze({TwineScript_TypeName:"a colour",TwineScript_ObjectName:"a colour",TwineScript_DebugName:function(){return"a colour "+this.TwineScript_Print()},"TwineScript_+":function(e){var t=this,n=e;return c.create({r:Math.min(Math.round(.6*(t.r+n.r)),255),g:Math.min(Math.round(.6*(t.g+n.g)),255),b:Math.min(Math.round(.6*(t.b+n.b)),255),a:(t.a+n.a)/2})},TwineScript_Print:function(){return"<tw-colour style='background-color:rgba("+[this.r,this.g,this.b,this.a].join(",")+");'></span>"},TwineScript_is:function(e){return c.isPrototypeOf(e)&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a},TwineScript_Clone:function(){return c.create(this)},toRGBAString:function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.a+")"},TwineScript_GetProperty:function(e){return"h"===e||"s"===e||"l"===e?r(this)[e]:"r"===e||"g"===e||"b"===e?this[e]:void 0},TwineScript_Properties:["h","s","l","r","g","b"],create:function(e){return"string"==typeof e?c.isHexString(e)?this.create(n(e)):this.create(t(e)):!("h"in e&&"s"in e&&"l"in e)||"r"in e||"g"in e||"b"in e?("a"in e&&"number"==typeof e.a||(e.a=1),Object.assign(Object.create(this),e)):this.create(i(e))},isHexString:function(e){return"string"==typeof e&&"#"===e[0]&&(e.slice(1).match(o)||e.slice(1).match(a))},isCSS3Function:function(e){return"string"==typeof e&&/^(?:rgb|hsl)a?\(\s*\d+\s*,\s*\d+%?\s*,\s*\d+%?(?:,\s*\d+(?:\.\d+)?\s*)?\)$/.test(e)}});return c}),define("datatypes/gradient",[],function(){var e=Object.freeze({TwineScript_TypeName:"a gradient",TwineScript_ObjectName:"a gradient",TwineScript_DebugName:function(){return"a gradient "+this.TwineScript_Print()},TwineScript_GetProperty:function(e){return"angle"===e?this.angle:"stops"===e?this.stops.map(function(e){return new Map([["percent",e.stop],["colour",e.colour.TwineScript_Clone()]])}):void 0},TwineScript_Properties:["angle","stops"],TwineScript_is:function(e){var t=this;return e.angle===this.angle&&e.stops.length===this.stops.length&&e.stops.every(function(e,n){var r=e.colour,i=e.stop;return t.stops[n].stop===i&&t.stops[n].colour.TwineScript_is(r)})},TwineScript_Clone:function(){return e.create(this.angle,[].concat(_toConsumableArray(this.stops)))},TwineScript_Print:function(){return"<tw-colour style='background:"+this.toLinearGradientString()+"'></tw-colour>"},create:function(e,t){return Object.assign(Object.create(this),{angle:e,stops:t.sort(function(e,t){return e.stop-t.stop})})},toLinearGradientString:function(){return"linear-gradient("+this.angle+"deg, "+this.stops.reduce(function(e,t){var n=t.colour,r=t.stop;return e+n.toRGBAString()+" "+100*r+"%,"},"").slice(0,-1)+")"}});return e}),define("internaltypes/varref",["state","internaltypes/twineerror","utils","utils/operationutils","datatypes/hookset","datatypes/colour","datatypes/gradient"],function(e,t,n,r,i,o,a){function s(e,n){var r=void 0;if(e instanceof Map&&(r=t.containsError(A(e,n))))return r;if(T(e)){var o=void 0,a="You can only access position strings/numbers ('4th', 'last', '2ndlast', (2), etc.) or slices ('1stTo2ndlast', '3rdTo5th'), ";if("number"==typeof n){if(0===n)return t.create("property","You can't access elements at position 0 of "+S(e)+".","Only positive and negative position values exist.");n>0&&(n-=1)}else if("string"==typeof n&&(o=/^(\d+)(?:st|[nr]d|th)last$/i.exec(n)))n=-o[1];else if("string"==typeof n&&(o=/^(\d+)(?:st|[nr]d|th)$/i.exec(n)))n=o[1]-1;else if("string"==typeof n&&(o=/^(?:(\d+)(?:st|[nr]d|th)(last)?|last)to(?:(\d+)(?:st|[nr]d|th)(last)?|last)$/i.exec(n))){var s=o,c=_slicedToArray(s,5),u=c[1],l=void 0===u?0:u,f=c[2],p=c[3],d=void 0===p?0:p,h=c[4];l=f?-l:l-1,d=h?-d:d-1,n={last:d,first:l}}else if("last"===n)n=-1;else{if(i.isPrototypeOf(e)&&!i.TwineScript_Properties.includes(n))return t.create("property",a+w(i.TwineScript_Properties.map(function(e){return"'"+e+"'"}))+" of "+S(e)+", not "+S(n)+".");if(!["length","any","all"].includes(n)&&!i.isPrototypeOf(e))return t.create("property",a+"'length', 'any' and 'all' of "+S(e)+", not "+S(n)+".")}}else if(e instanceof Set){if(!["length","any","all"].includes(n))return t.create("property","You can only get the 'length', 'any' and 'all' of "+S(e)+".","To check contained values, use the 'contains' operator.");"length"===n&&(n="size")}else{if(Array.isArray(e.TwineScript_Properties)&&!e.TwineScript_Properties.includes(n))return t.create("property","You can only get the "+w(e.TwineScript_Properties.map(function(e){return"'"+e+"'"}))+" of "+S(e)+", not "+S(n)+".");if("number"==typeof e||"boolean"==typeof e)return t.create("property","You can't get data values from "+S(e)+".")}return n}function c(e,n){return{compiledPropertyChain:n.reduce(function(r,i,o){i.computed&&(i=i.value),E.isPrototypeOf(i)&&(i=i.get()),i=Array.isArray(i)?i.map(function(t){return s(e,t)}):s(e,i);var a=void 0;return(a=t.containsError(r,i))?a:(o<n.length-1&&(e=m(e,i)),r.push(i),r)},[]),deepestObject:e}}function u(e,t){return t-0<0&&Math.abs(t)<=e.length?e.length+(t-0):t}function l(e,t){var n="'"+t+"' value"+("any"===t?"":"s")+" of ";return{determiner:t,array:[].concat(_toConsumableArray(e)),TwineScript_ObjectName:n+S(e),TwineScript_TypeName:n+"a data structure",TwineScript_Unstorable:!0,TwineScript_Print:function(){return"`["+this.TwineScript_TypeName+"]`"}}}function f(e,t){if(void 0===e)return e;if(e instanceof Map||e.varref)return e.get(t);if(T(e)&&Number.isFinite(t)&&(t=u(e,t)),"any"===t||"all"===t)return l(e,t);if(e.TwineScript_GetProperty)return e.TwineScript_GetProperty(t);var n=e[t];return"function"!=typeof n?n:void 0}function p(e){return e.computed?"string"==typeof e.value?"('"+e.value+"')":"("+e.value+")":"'"+e+"'"}function d(e,n){if(Array.isArray(n))return n.map(function(t){return d(e,t)});if(i.isPrototypeOf(e))return t.create("operation","I can't modify "+S(e),"You should alter hooks indirectly using macros like (replace:) or (enchant:).");if(e instanceof Set)return t.create("operation","I can't modify "+S(e),"You should use an (array:) if you need to modify the data inside this dataset.");if(o.isPrototypeOf(e)||a.isPrototypeOf(e))return t.create("operation","I can't modify the components of "+S(e)+".");if(e instanceof Map)return"string"==typeof n||t.create("operation",S(e)+" can only have string data names, not "+S(n)+".");if(T(e)){if(["length","any","all"].includes(n))return t.create("operation","I can't forcibly alter the '"+n+"' of "+S(e)+".");if(+n!=(0|n))return t.create("property",S(e)+" can only have position keys ('3rd', '1st', (5), etc.), not "+p(n)+".")}return e.TwineScript_Identifiers&&n in e?t.create("keyword","I can't alter the value of the '"+n+"' identifier.","You can only alter data in variables and hooks, not fixed identifiers."):"number"!=typeof e&&"boolean"!=typeof e||t.create("operation","You can't alter the data values of "+S(e)+".")}function h(e,t,n){var r=t;e instanceof Map?e.set(t,n):(T(e)&&(t=u(e,t)),e.TwineScript_Set?e.TwineScript_Set(t):e[t]=n),_.set.forEach(function(t){return t(e,r,n)})}function g(e,t){var n=t;T(e)&&(t=u(e,t)),Array.isArray(e)&&j.exec(t)?e.splice(t,1):e instanceof Map||e instanceof Set?e.delete(t):delete e[t],_.delete.forEach(function(t){return t(e,n)})}function y(e){function t(){return e}return{get:t,set:t,delete:t,varref:!0}}function m(n,r,o){if(r&&"object"===(void 0===r?"undefined":_typeof(r))&&"last"in r&&"first"in r){if(i.isPrototypeOf(n))return n.TwineScript_GetProperty(r);var a=r.first,s=r.last;return C(n,a+(a>=0),s+(s>=0))}if(Array.isArray(r))return i.isPrototypeOf(n)?n.TwineScript_GetProperty(r):r.map(function(e){return m(n,e,e)})["string"==typeof n?"join":"valueOf"]("");"string"==typeof n&&(n=[].concat(_toConsumableArray(n)));var c=f(n,r);return void 0===c?n===e.variables?N:n.TwineScript_VariableStore?t.create("property","There isn't a temp variable named _"+o+" in this place.","Temp variables only exist inside the same passage and hook in which they're (set:)."):t.create("property","I can't find a "+p(o)+" data name in "+S(n)):c}function v(e,n){var r=this,i=this.compiledPropertyChain.reduce(function(e,t){var n=void 0;return n=0===e.length?r.object:m.apply(void 0,_toConsumableArray(e[e.length-1])),e.push([n,t])&&e},[]).reduceRight(e,n);return t.containsError(i)?i:void 0}var b=n.impossible,w=n.andList,x=r.isObject,T=r.isSequential,S=r.objectName,k=r.typeName,O=r.clone,j=r.numericIndex,A=r.isValidDatamapName,C=r.subset,E=void 0,N=0,_={set:[],delete:[]};return E=Object.freeze({varref:!0,get:function(){return m(this.deepestObject,this.compiledPropertyChain.slice(-1)[0],this.propertyChain.slice(-1)[0])},set:function(e){return!this.object||this.object.TwineScript_VariableStore||this.object.TwineScript_Identifiers?v.call(this,function(e,n,r){var i=_slicedToArray(n,2),o=i[0],a=i[1],s=void 0;if(s=t.containsError(e,o,a)||t.containsError(d(o,a)))return s;if(e&&e.TwineScript_Unstorable)return t.create("operation",k(e)+" can't be stored.");if(r>0&&(o=O(o)),"string"==typeof o){if("string"!=typeof e||e.length!==(Array.isArray(a)?a.length:1))return t.create("datatype","I can't put this non-string value, "+S(e)+", in a string.");o=[].concat(_toConsumableArray(o));var c=[].concat(_toConsumableArray(e));[].concat(a).forEach(function(e){0+e<0&&(e=o.length+(0+e)),o=[].concat(_toConsumableArray(o.slice(0,e)),[c.shift()],_toConsumableArray(o.slice(e+1)))}),o=o.join("")}else x(o)&&(Array.isArray(a)&&T(e)?("string"==typeof e&&(e=[].concat(_toConsumableArray(e))),a.map(function(t,n){return[t,e[n]]}).forEach(function(e){var t=_slicedToArray(e,2),n=t[0],r=t[1];return h(o,n,r)})):h(o,a,e));return o},e):t.create("macrocall","I can't (set:) "+S(this)+", if the "+(S(this.object).match(/ (.+$)/)||["","value"])[1]+" isn't stored in a variable.","Modifying data structures that aren't in variables won't change the game state at all.")},delete:function(){return v.call(this,function(e,n,r){var i=_slicedToArray(n,2),o=i[0],a=i[1],s=void 0;if(s=t.containsError(e,o,a)||t.containsError(d(o,a)))return s;if(r>0&&(o=O(o)),null===e){var c="string"==typeof o;c&&(o=[].concat(_toConsumableArray(o))),Array.isArray(a)?(T(o)&&(a=[].concat(_toConsumableArray(new Set(a))),a.sort(function(e,t){return u(o,t)-u(o,e)})),a.forEach(function(e){return g(o,e)})):g(o,a),c&&(o=o.join(""))}else h(o,a,e);return o},null)},create:function(e,n){var r=void 0;if(r=t.containsError(e))return y(r);n=[].concat(n),E.isPrototypeOf(e)&&(n=e.propertyChain.concat(n),e=e.object);var i=c(e,n),o=i.compiledPropertyChain,a=i.deepestObject;return(r=t.containsError(o,a))?y(r):Object.assign(Object.create(E),{object:e,propertyChain:n,compiledPropertyChain:o,deepestObject:a})},get TwineScript_ObjectName(){var t=this,n=function(n,r){return r||t.object!==e.variables&&!t.object.TwineScript_VariableStore?p(n):n};return(this.object===e.variables?"$":this.object.TwineScript_VariableStore?"_":S(this.object)+"'s ")+(1===this.propertyChain.length?n(this.propertyChain[0]):this.propertyChain.reduce(function(e,t,r){return e+"'s "+n(t,r)}))+(this.object.TwineScript_VariableStoreName?" in "+this.object.TwineScript_VariableStoreName:"")},on:function(e,t){return e in _?("function"!=typeof t||_[e].includes(t)||_[e].push(t),E):void b("VarRef.on","invalid event name")}})}),define("internaltypes/varscope",[],function(){return{TwineScript_ObjectName:"the temporary variables",TwineScript_VariableStore:!0}}),define("datatypes/lambda",["utils","utils/operationutils","internaltypes/varscope","internaltypes/twineerror"],function(e,t,n,r){var i=e.toJSLiteral,o=e.insensitiveName,a=(e.plural,t.typeName,t.objectName,t.singleTypeCheck,Object.freeze({lambda:!0,TwineScript_TypeName:"a lambda",get TwineScript_ObjectName(){return'a "'+("making"in this?"making ... ":"")+("with"in this?"with ... ":"")+("where"in this?"where ... ":"")+("when"in this?"when ... ":"")+("via"in this?"via ... ":"")+'" lambda'},TwineScript_Print:function(){return"`[A lambda]`"},TwineScript_is:function(e){return e===this},TypeSignature:function(e){return{pattern:"lambda",innerType:a,clauses:e,typeName:'a "'+e.split().concat("").join(" ...")+'" lambda'}},create:function(e,t,i){var s=void 0;if(r.containsError(e))return e;if(a.isPrototypeOf(e)){if("when"===t||"when"in e)return r.create("syntax","A 'when' lambda cannot have any other clauses, such as '"+t+"'.");if(t in e&&("where"!==t||"true"!==e[t]))return r.create("syntax","This lambda has two '"+t+"' clauses.");s=e}else{if("when"===t&&void 0!==e)return r.create("syntax","A 'when' lambda shouldn't begin with a temporary variable (just use 'when' followed by the condition).");if(void 0!==e&&(!e||!e.varref||!n.isPrototypeOf(e.object)||e.propertyChain.length>1))return r.create("syntax","This lambda needs to start with a single temporary variable.");s=Object.create(this),s.loop=e?e.propertyChain[0]:""}s[t]=i;var c=[s.making,s.with,s.loop].filter(function(e,t,n){return e&&n.indexOf(o(e))!==t});return c.length?r.create("syntax","This lambda has two variables named '"+c[0]+"'.","Lambdas should have all-unique parameter names."):s},apply:function(e,t){var o=t.loop,a=t.with,s=t.making,c=t.fail,u=t.pass,l=t.ignoreVia,f=t.tempVariables;f=f||Object.create(e.stack.length?e.stack[0].tempVariables:n),[[this.loop,o],[this.with,a],[this.making,s]].forEach(function(e){var t=_slicedToArray(e,2),n=t[0],r=t[1];return n&&(f[n]=r)}),e.stack.unshift(Object.assign(Object.create(null),{tempVariables:f})),!o||this.with||this.making||this.when?e.eval("Operations").initialiseIt(r.create("operation","I can't use 'it', or an implied 'it', in "+this.TwineScript_ObjectName)):e.eval("Operations").initialiseIt(o);var p=!l&&this.via,d=e.eval("where"in this||"when"in this?"Operations.where("+(this.where||this.when)+","+(p||i(u))+","+i(c)+")":p||i(u));return e.stack.shift(),d},filter:function(e,t){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=void 0,a=t.reduce(function(t,a){if(o=r.containsError(t))return o;var s=n.apply(e,{loop:a,pass:!0,fail:!1,ignoreVia:!0,tempVariables:i});return(o=r.containsError(s))?o:t.concat(s?[a]:[])},[]);return(o=r.containsError(a))?o:a}}));return a}),define("macros",["jquery","utils/naturalsort","utils","utils/operationutils","datatypes/changercommand","datatypes/lambda","datatypes/hookset","internaltypes/changedescriptor","internaltypes/twineerror"],function(e,t,n,r,i,o,a,s,c){function u(e){return function(n){n=n.reduce(function(e,n){if(n&&!0===n.spreader){var r=n.value,i=c.containsError(r);if(i)return i;if(Array.isArray(r)||"string"==typeof r)for(var o=0;o<r.length;o++)e.push(r[o]);else r instanceof Set?e.push.apply(e,_toConsumableArray(Array.from(r).sort(t("en")))):e.push(c.create("operation","I can't spread out "+m(r)+", because it is not a string, dataset, or array."))}else e.push(n);return e},[]);var r=c.containsError(n);return r||e.apply(void 0,_toConsumableArray(n))}}function l(e,t,n){n=[].concat(n||[]),e="("+(Array.isArray(e)&&e.length>1?e[0]:e)+":)";var r=void 0;return r=n.length>0?"The "+e+" macro must only be given "+g(n.map(v))+(n.length>1?", in that order":"."):"The macro must not be given any data - just write "+e+".",function(i){for(var a=arguments.length,s=Array(a>1?a-1:0),u=1;u<a;u++)s[u-1]=arguments[u];for(var l=void 0,f=0,p=Math.max(s.length,n.length);f<p;f+=1){var y=function(t,i){var a=n[t],u=s[t];return t>=n.length&&!l?{v:c.create("datatype",s.length-n.length+" too many values were given to this "+e+" macro.",r)}:(a||(a=l),!a.innerType||"rest"!==a.pattern&&"zero or more"!==a.pattern||(l=a.innerType,"rest"===a.pattern&&(a=a.innerType)),b(u,a)?void 0:void 0===u?{v:c.create("datatype","The "+e+" macro needs "+h(n.length-t,"more value")+".",r)}:u&&u.TwineScript_Unstorable&&(a===w.TypeSignature.Any||a.innerType&&a.innerType===w.TypeSignature.Any)?{v:c.create("datatype",e+"'s "+d(t+1)+" value, "+m(u)+", is not valid data for this macro.",r)}:u&&o.isPrototypeOf(u)&&"lambda"===a.pattern?{v:c.create("datatype",e+"'s "+d(t+1)+" value (a lambda) should have "+g(["where","when","making","via","with"].filter(function(e){return a.clauses.includes(e)}).map(function(e){return"a '"+e+"' clause"}))+", not "+g(["where","when","making","via","with"].filter(function(e){return e in u}).map(function(e){return"a '"+e+"' clause"}))+".")}:{v:c.create("datatype",e+"'s "+d(t+1)+" value is "+m(u)+", but should be "+v(a)+".",a.message||r)})}(f);if("object"===(void 0===y?"undefined":_typeof(y)))return y.v}return t.apply(void 0,[i].concat(s))}}function f(e,t){Array.isArray(e)?e.forEach(function(e){return y(x,p(e),t)}):y(x,p(e),t)}var p=n.insensitiveName,d=n.nth,h=n.plural,g=n.andList,y=n.lockProperty,m=r.objectName,v=r.typeName,b=r.singleTypeCheck,w=void 0,x={},T=function(e,t,n,r){return function(){for(var i=arguments.length,o=Array(i),a=0;a<i;a++)o[a]=arguments[a];o=o.slice(1);var c=t.apply(void 0,_toConsumableArray(o));if(c)return c;var u=s.create(),l=Object.assign({TwineScript_ObjectName:"a ("+e+":) command",TwineScript_TypeName:"a ("+e+":) command",TwineScript_Print:function(){return"`[A ("+e+":) command]`"}},r?{TwineScript_Attach:function(e){return e.run(u),l},TwineScript_Run:function(e){return n.apply(void 0,[u,e].concat(_toConsumableArray(o)))}}:{TwineScript_Run:function(e){return n.apply(void 0,[e].concat(_toConsumableArray(o)))}});return l}};return w={has:function(e){return e=p(e),x.hasOwnProperty(e)},get:function(e){return e=p(e),x.hasOwnProperty(e)&&x[e]},
add:function e(t,n,r){return f(t,u(l(t,n,r))),e},addChanger:function e(t,n,r,o){return f(t,u(l(t,n,o))),i.register(Array.isArray(t)?t[0]:t,r),e},addCommand:function e(t,n,r,i){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=[].concat(t)[0];return f(t,u(l(t,T(a,n,r,o),i))),e},TypeSignature:{optional:function(e){return{pattern:"optional",innerType:e}},zeroOrMore:function(e){return{pattern:"zero or more",innerType:e}},either:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return{pattern:"either",innerType:t}},rest:function(e){return{pattern:"rest",innerType:e}},wrapped:function(e,t){return{pattern:"wrapped",innerType:e,message:t}},Any:{TwineScript_TypeName:"anything"}},run:function(e,t){return c.containsError(e)?e:w.has(e)?w.get(e)(t):c.create("macrocall","I can't run the macro '"+e+"' because it doesn't exist.","Did you mean to run a macro? If you have a word written like (this:), it is regarded as a macro name.")}},Object.freeze(w)}),define("datatypes/datatype",["datatypes/changercommand","datatypes/colour","datatypes/gradient"],function(e,t,n){var r=Object.freeze({datatype:!0,TwineScript_TypeName:"a datatype",TwineScript_Print:function(){return"`["+this.TwineScript_ObjectName+"]`"},TwineScript_is:function(e){return r.isPrototypeOf(e)&&e.name===this.name},TwineScript_Clone:function(){return r.create(this.name)},TwineScript_IsTypeOf:function(e){return this.name===(Array.isArray(e)?"array":e instanceof Map?"datamap":e instanceof Set?"dataset":t.isPrototypeOf(e)?"colour":n.isPrototypeOf(e)?"gradient":"string"==typeof e?"string":"number"==typeof e?"number":"boolean"==typeof e?"boolean":"unknown")},create:function(e){return e="dm"===e?"datamap":"ds"===e?"dataset":"num"===e?"number":"str"===e?"string":"color"===e?"colour":e,Object.assign(Object.create(this),{name:e,TwineScript_ObjectName:"the "+e+" datatype"})}});return r}),define("datatypes/varbind",["utils","utils/operationutils","internaltypes/varref","internaltypes/twineerror"],function(e,t,n,r){var i=t.objectName;return Object.freeze({TwineScript_TypeName:"a bound variable",TwineScript_ObjectName:"a bound variable",TwineScript_Unstorable:!0,set:function(e){var t=this.varRef.set(e),n=void 0;if(n=r.containsError(t))return n},create:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"one way";return n.isPrototypeOf(e)||e.varref?Object.assign(Object.create(this),{varRef:e,bind:t}):r.create("operation","I can only 'bind' a variable, not "+i(e)+".")}})}),define("datatypes/assignmentrequest",["utils"],function(e){var t=e.assertMustHave;return Object.freeze({assignmentRequest:!0,TwineScript_TypeName:"a 'to' or 'into' expression",TwineScript_ObjectName:"a 'to' or 'into' expression",TwineScript_Unstorable:!0,create:function(e,n,r){return t(e,["varref"]),Object.assign(Object.create(this),{dest:e,src:n,operator:r})}})}),define("twinescript/operations",["jquery","state","datatypes/assignmentrequest","utils/operationutils","internaltypes/twineerror"],function(e,t,n,r,i){function o(e,t,n,r){return n=n||"do this to",function(o,a){1===t.length&&(a=o);var s=void 0;return(s=i.containsError(o,a))?s:(void 0===o?"undefined":_typeof(o))!==e||(void 0===a?"undefined":_typeof(a))!==e?i.create("operation","I can only "+n+" "+e+"s, not "+y((void 0===o?"undefined":_typeof(o))!==e?o:a)+".",r):t(o,a)}}function a(e){return function(t,n){var r=void 0;return(r=i.containsError(t,n))?r:t&&t.varref?i.create("operation","I can't give an expression a new value."):(void 0===t?"undefined":_typeof(t))!==(void 0===n?"undefined":_typeof(n))||c(t)&&"TwineScript_TypeName"in t&&c(n)&&"TwineScript_TypeName"in n&&t.TwineScript_TypeName!==n.TwineScript_TypeName||u(t)!==u(n)?i.create("operation",y(t)+" isn't the same type of data as "+y(n)):e(t,n)}}function s(e){return function t(n,r){var o=void 0;if(o=i.containsError(n,r))return o;if(v=n,n.determiner){var a="all"===n.determiner;return n.array.reduce(function(e,n){var o=void 0,s=t(n,r);return(o=i.containsError(e,s))?o:a?e&&s:e||s},a)}if(r.determiner){var s="all"===r.determiner;return r.array.reduce(function(e,r){var o=void 0,a=t(n,r);return(o=i.containsError(e,a))?o:s?e&&a:e||a},s)}return e(n,r)}}var c=r.isObject,u=r.collectionType,l=r.is,f=r.isA,p=r.clone,d=r.unique,h=r.contains,g=r.matches,y=(r.typeName,r.objectName),m=void 0,v=0,b="If one of these values is a number, you may want to write a check that it 'is not 0'. Also, if one is a string, you may want to write a check that it 'is not \"\" '.";return m={create:function(n){var r=Object.create(this);return r.Identifiers={TwineScript_Identifiers:!0,get it(){return v},get time(){return Date.now()-n.timestamp},get visits(){return t.pastPassageNames().filter(function(e){return e===t.passage}).length+1},get visit(){return r.Identifiers.visits},get exits(){return n.dom.find("tw-enchantment, tw-link").filter(function(t,n){return e(n).data("enchantmentEvent")||e(n).parent().data("linkPassageName")||e(n).parent().data("clickEvent")}).length},get exit(){return r.Identifiers.exits}},r},elidedComparisonOperator:function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return r.reduce(function(n,r){return"boolean"==typeof r?r:m[e](n,m[t](v,r))},"and"===e)},and:o("boolean",a(function(e,t){return e&&t}),"use 'and' to join",b),or:o("boolean",a(function(e,t){return e||t}),"use 'or' to join",b),not:o("boolean",function(e){return!e},"use 'not' to invert",b),"+":a(function(e,t){if(Array.isArray(e))return[].concat(_toConsumableArray(e),_toConsumableArray(t));var n=void 0;return e instanceof Map?(n=new Map(e),t.forEach(function(e,t){return n.set(t,e)}),n):e instanceof Set?new Set([].concat(_toConsumableArray(e),_toConsumableArray(t)).filter(d).map(p)):"function"==typeof e["TwineScript_+"]?e["TwineScript_+"](t):"string|number|boolean".includes(void 0===e?"undefined":_typeof(e))?e+t:i.create("operation","I can't use + on "+y(e)+".")}),"-":a(function(e,t){if(Array.isArray(e))return e.filter(function(e){return!t.some(function(t){return l(e,t)})});if(e instanceof Set){var n=[].concat(_toConsumableArray(t));return new Set([].concat(_toConsumableArray(e)).filter(function(e){return!n.some(function(t){return l(e,t)})}))}return"string"==typeof e?e.split(t).join(""):"number"==typeof e?e-t:i.create("operation","I can't use - on "+y(e)+".")}),"*":o("number",a(function(e,t){return e*t}),"multiply"),"/":o("number",a(function(e,t){return 0===t?i.create("operation","I can't divide "+y(e)+" by zero."):e/t}),"divide"),"%":o("number",a(function(e,t){return 0===t?i.create("operation","I can't modulo "+y(e)+" by zero."):e%t}),"modulus"),"<":s(o("number",a(function(e,t){return e<t}),"do < to")),">":s(o("number",a(function(e,t){return e>t}),"do > to")),"<=":s(o("number",a(function(e,t){return e<=t}),"do <= to")),">=":s(o("number",a(function(e,t){return e>=t}),"do >= to")),is:s(l),isNot:s(function(e,t){return!m.is(e,t)}),contains:s(h),isIn:s(function(e,t){return h(t,e)}),isA:s(f),isNotA:s(function(e,t){return!f(e,t)}),typifies:s(function(e,t){return f(t,e)}),untypifies:s(function(e,t){return!f(t,e)}),matches:s(g),where:function(e,t,n){var r=void 0;return(r=i.containsError(e))?r:"boolean"!=typeof e?i.create("operation","This lambda's 'where' clause must evaluate to true or false, not "+y(e)+"."):e?t:n},makeSpreader:function(e){return{value:e,spreader:!0}},makeAssignmentRequest:function(e,t,r){var o=i.containsError(e,t);return o||(c(e)&&"varref"in e?n.create(e,t,r):i.create("operation","I can't store a new value inside "+y(e)+"."))},setIt:function(e){return i.containsError(e)?e:e.varref?(v=e.get(),e):i.create("operation","I can't put a new value into "+y(e)+".")},initialiseIt:function(e){v=e}},Object.freeze(m)}),define("twinescript/environ",["macros","state","utils","datatypes/colour","datatypes/hookset","datatypes/lambda","datatypes/datatype","datatypes/varbind","internaltypes/varref","internaltypes/twineerror","twinescript/operations"],function(Macros,State,Utils,Colour,HookSet,Lambda,Datatype,VarBind,VarRef,TwineError,OperationsProto){return function(section){"object"===(void 0===section?"undefined":_typeof(section))&§ion||Utils.impossible("TwineScript.environ","no Section argument was given!");var Operations=OperationsProto.create(section);return section.eval=function(){try{for(var _len7=arguments.length,args=Array(_len7),_key7=0;_key7<_len7;_key7++)args[_key7]=arguments[_key7];return eval(args.join(""))}catch(e){return e}},section}}),define("internaltypes/twinenotifier",["jquery","utils"],function(e,t){var n=t.impossible,r={create:function(e){return e||n("TwineNotifier.create","called with only 1 string."),Object.assign(Object.create(r),{message:e})},render:function(){return e("<tw-notifier>").attr("message",this.message)}};return r}),define("section",["jquery","utils","utils/selectors","renderer","twinescript/environ","twinescript/operations","state","utils/operationutils","datatypes/changercommand","datatypes/hookset","datatypes/colour","internaltypes/changedescriptor","internaltypes/varscope","internaltypes/twineerror","internaltypes/twinenotifier"],function(e,t,n,r,i,o,a,s,c,u,l,f,p,d,h){function g(e,n,r){if(n&&"object"===(void 0===n?"undefined":_typeof(n))&&c.isPrototypeOf(n)){if(!this.renderInto(r.popAttr("source"),r,n)){var i=t.insensitiveName(e.attr("name"));if(["if","elseif","unless","else"].includes(i)&&(e.addClass("false"),"elseif"!==i&&(this.stack[0].lastHookShown=!1)),r.data("live")){var o=r.data("live"),a=o.delay,s=o.event;x.call(this,e,r,a,s)}return}}else{if(!1===n)return r.attr("source")&&r.data("hiddenSource",r.popAttr("source")),e.addClass("false"),void(this.stack[0].lastHookShown=!1);!0!==n&&e.replaceWith(d.create("datatype",S(n)+" cannot be attached to this hook.","Only Booleans, changer commands, and the (live:) macro can be attached to hooks.").render(e.attr("title")))}this.stack[0].lastHookShown=!0}function y(t){var n=t instanceof e?t[0]:t,r=n.nextSibling;if(r&&(r instanceof Text&&!r.textContent.trim()||"br"===(r.tagName||"").toLowerCase())){var i=y(r),o=i.whitespace,a=i.nextElem;return{whitespace:e(r).add(o),nextElem:a}}return{whitespace:e(),nextElem:e(r)}}function m(r){var i=this.eval(r.popAttr("js")||"");this.stackTop.evaluateOnly&&i&&(c.isPrototypeOf(i)||"function"==typeof i.TwineScript_Run)&&(i=d.create("syntax","I can't work out what this "+this.stackTop.evaluateOnly+" should evaluate to, because it contains a "+c.isPrototypeOf(i)?"changer":"command.","Please rewrite this without putting changers or commands here."));var a=void 0,s=void 0,u=e();for(s=r;c.isPrototypeOf(i);){var p=y(s);if(a=p.whitespace,s=p.nextElem,s[0]instanceof Text&&"+"===s[0].textContent.trim()){var m=void 0,v=s,b=y(v);if(m=b.whitespace,s=b.nextElem,s.is(n.expression)){var w=this.eval(s.popAttr("js"));if(d.containsError(w)){i=w;break}var x=o["+"](i,w);e(a).add(v).add(m).remove(),i=d.containsError(x)?d.create("operation","I can't combine "+S(i)+" with "+S(w)+".","function"==typeof w.TwineScript_Run?"If you want to attach this changer to "+S(w)+", remove the + between them.":"Changers can only be added to other changers."):x;continue}}if(s.is(n.expression)){var k=this.eval(s.popAttr("js"));if(d.containsError(k)){i=k;break}if(k&&"object"===(void 0===k?"undefined":_typeof(k))&&"function"==typeof k.TwineScript_Attach){i=k.TwineScript_Attach(i);break}return c.isPrototypeOf(k)?void r.replaceWith(d.create("operation","Changers like ("+i.macroName+":) need to be combined using + between them.","Place the + between the changer macros, or the variables holding them. The + is absent only between a changer and its attached hook or command.").render(r.attr("title"))):void r.replaceWith(d.create("operation",S(k)+" can't have changers like ("+i.macroName+":) attached.","Changers placed just before hooks, links and commands will attempt to attach, but in this case it didn't work.").render(r.attr("title")))}if(s.is(n.hook)){a.remove(),u=s;break}i.macroName||t.impossible("Section.runExpression","changer has no macroName");var O=r.attr("title")||"("+i.macroName+": ...)";return void r.replaceWith(d.create("syntax","The ("+i.macroName+":) changer should be stored in a variable or attached to a hook.","Macros like this should appear to the left of a hook: "+O+"[Some text]").render(r.attr("title")))}u=u.length?u:y(r).nextElem.filter(n.hook);var j=void 0;if(j=d.containsError(i))j instanceof Error&&(j=d.fromError(j)),r.replaceWith(j.render(r.attr("title"),r));else if(h.isPrototypeOf(i))r.append(i.render());else if(i&&"function"==typeof i.TwineScript_Run)if(i=i.TwineScript_Run(this),d.containsError(i))r.replaceWith(i.render(r.attr("title")));else if(f.isPrototypeOf(i)){if(i.data&&i.data.live)return void r.replaceWith(d.create("unimplemented","I currently can't attach (live:) or (event:) macros to commands - only hooks.").render(r.attr("title")));i.section=this,i.target=s,this.renderInto("",s,i)}else{if("blocked"===i)return void(this.stackTop.blocked=!0);i&&t.impossible("Section.runExpression","TwineScript_Run() returned a non-ChangeDescriptor "+(void 0===i?"undefined":_typeof(i))+': "'+i+'"')}else!u.length&&("string"==typeof i||"number"==typeof i||i instanceof Map||i instanceof Set||Array.isArray(i)||l.isPrototypeOf(i))||i&&"function"==typeof i.TwineScript_Print&&!c.isPrototypeOf(i)?(i=T(i),d.containsError(i)?(i instanceof Error&&(i=d.fromError(i)),r.replaceWith(i.render(r.attr("title")))):"string"!=typeof i?t.impossible("printBuiltinValue() produced a non-string "+(void 0===i?"undefined":_typeof(i))):this.renderInto(i,r)):u.length?g.call(this,r,i,u):c.isPrototypeOf(i)||"boolean"==typeof i||t.impossible("Section.runExpression","The expression evaluated to an unknown value: "+i.toSource())}function v(e){var t=e.first()[0],n=e.parent();if(!n.length)return null;var r=n.textNodes().filter(function(e){var n=e.compareDocumentPosition(t);return 4&n&&!(8&n)});return(r=r[r.length-1])||v(n)}function b(e){var t=e.last()[0],n=e.parent();if(!n.length)return null;var r=n.textNodes().filter(function(e){var n=e.compareDocumentPosition(t);return 2&n&&!(8&n)})[0];return r||b(n)}function w(t){function n(t){return 0===e(this||t).parentsUntil("tw-collapsed").filter("tw-verbatim, tw-expression, [collapsing=false]").length}var r=v(t);e(r).parents("tw-collapsed").length||(r=null);var i=b(t);e(i).parents("tw-collapsed").length||(i=null),t.findAndFilter("br:not([data-raw])").filter(n).replaceWith(document.createTextNode(" "));var o=t.textNodes(),a=0;o.reduce(function(e,t){return n(t)?(t.textContent=t.textContent.replace(/\s+/g," ")," "!==t.textContent[0]||e&&e.textContent&&!(e.textContent.search(/\s$/)>-1)||(t.textContent=t.textContent.slice(1)),t):document.createTextNode("A")},r),[].concat(_toConsumableArray(o)).reverse().every(function(e){return!!n(e)&&(e.textContent.match(/^\s*$/)?(a+=e.textContent.length,e.textContent="",!0):(e.textContent=e.textContent.replace(/\s+$/,function(e){return a+=e.length,""}),!1))}),a>0&&i&&(o[o.length-1].textContent+=" "),t[0]&&O()&&t[0].normalize()}function x(e,r){var i=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:20,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;a&&t.assertMustHave(a,["when"]);var s=r.data("hiddenSource")||"",c=_slicedToArray(this.stack,1),u=c[0].tempVariables,l=this.whenUnblocked.bind(this,function(){if(i.inDOM()){var t=a&&a.filter(i,[!0],u);if(d.containsError(t))return void t.render(e.attr("title")).replaceAll(e);if(a&&!t[0])return void setTimeout(l,o);i.renderInto(s,r,{append:"replace"}),t||r.find(n.expression+"[name='stop']").length||i.inDOM()&&setTimeout(l,o)}});setTimeout(l,o)}var T=s.printBuiltinValue,S=s.objectName,k=void 0,O=function(){var t=void 0;return function(){if(void 0!==t)return t;var n=e("<p>");return n[0].normalize?(n.append(document.createTextNode("0-"),document.createTextNode("2"),document.createTextNode(""))[0].normalize(),t=1===n.contents().length):t=!1}}();return k={create:function(n){n instanceof e&&1===n.length||t.impossible("Section.create","called with no DOM element");var r=Object.assign(Object.create(this),{timestamp:Date.now(),dom:n||t.storyElement,stack:[],enchantments:[],unblockCallbacks:[]});return r=i(r)},get stackTop(){return this.stack[0]},inDOM:function(){return e(t.storyElement).find(this.dom).length>0},evaluateTwineMarkup:function(t,n){var r=e("<p>");this.stack.unshift({desc:f.create({target:r,source:t,section:this}),tempVariables:this.stackTop.tempVariables,evaluateOnly:n}),this.execute();var i=void 0;return(i=r.find("tw-error")).length>0?i:r},renderInto:function(t,r,i){var o=this,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=f.create({target:r,source:t,section:this});if(i)if(c.isPrototypeOf(i)){var u=i.run(s);if(d.containsError(u))return u.render(r.attr("title")).replaceAll(r),!1}else Object.assign(s,i);if(r=s.target,this.stack.length>=50)return d.create("infinite","Printing this expression may have trapped me in an infinite loop.").render(r.attr("title")).replaceAll(r),!1;var l=function(t,i){var a=r instanceof e&&r.is(n.hook)&&r.parents("tw-collapsed").length>0;o.stack.unshift({desc:t,tempVariables:i,collapses:a,evaluateOnly:o.stackTop&&o.stackTop.evaluateOnly})};if(!a){a=Object.create(this.stack.length?this.stackTop.tempVariables:p);var h=r&&r.tag();a.TwineScript_VariableStoreName=h===n.hook?r.attr("name")?"?"+r.attr("name"):"an unnamed hook":h===n.expression?"a "+r.attr("type")+" expression":h===n.passage?"this passage":"an unknown scope"}return Object.keys(s.loopVars).length?function(){var e=Object.assign({},s.loopVars),t=Math.min.apply(Math,_toConsumableArray(Object.keys(e).map(function(t){return e[t].length})));if(t){for(var n=t-1;n>=0;n-=1)!function(t){l(s,Object.keys(e).reduce(function(n,r){return n[r]=e[r][t],n},Object.create(a)))}(n);for(var n=t-1;n>=0&&!o.stackTop.blocked;n-=1)o.execute()}}():(l(s,a),this.execute()),0===this.stack.length&&this.updateEnchantments(),s.enabled},execute:function(){var r=_slicedToArray(this.stack,1),i=r[0],o=i.desc,a=i.dom,s=i.collapses,c=i.evaluateOnly;o&&!a&&(a=o.render(),this.stackTop.dom=a,this.stackTop.desc=void 0);var u=this;a.findAndFilter(n.hook+","+n.expression).each(function(){var r=e(this);switch(r.tag()){case n.hook:r.attr("hidden")&&(r.removeAttr("hidden"),r.data("hiddenSource",r.popAttr("source"))),r.attr("source")&&u.renderInto(r.popAttr("source"),r);break;case n.expression:if(r.attr("blockers")){if(c)return void r.removeAttr("blockers").removeAttr("js").replaceWith(d.create("syntax","I can't use a macro like (prompt:) or (confirm:) in "+c+".","Please rewrite this without putting such macros here.").render(r.attr("title"),r));var i=[];try{i=JSON.parse(r.popAttr("blockers")),r.data("blockers",i)}catch(e){t.impossible("Section.execute","JSON.parse blockers failed.")}}if(r.data("blockers")){var o=r.data("blockers");if(o.length){u.stackTop.blocked=!0;var a=u.eval(o.shift());return d.containsError(a)&&(u.stackTop.blocked=!1,r.removeData("blockers").replaceWith(a.render(r.attr("title"),r))),!1}r.removeData("blockers")}if(r.attr("js")&&m.call(u,r),u.stackTop.blocked)return!1}}),u.stackTop.blocked||(a.length&&s&&w(a),a.findAndFilter(n.collapsed).each(function(){w(e(this))}),this.stack.shift())},updateEnchantments:function(){this.enchantments.forEach(function(e){e.disenchant(),e.enchantScope()})},unblock:function(e){for(this.stack.length||t.impossible("Section.unblock","stack is empty"),this.stackTop.blocked=!1,void 0!==e&&(this.stackTop.blockedValues=(this.stackTop.blockedValues||[]).concat(e));this.stack.length&&!this.stackTop.blocked;)this.execute();if(!this.stack.length)for(;this.unblockCallbacks.length>0;){var n=this.unblockCallbacks.shift();if(n(),this.stackTop.blocked)return}},whenUnblocked:function(e){if(!this.stack.length||!this.stackTop.blocked)return void e();this.unblockCallbacks=this.unblockCallbacks.concat(e)},blockedValue:function(){var e=this.stackTop;return e||t.impossible("Section.blockedValue","stack is empty"),e.blockedValues&&e.blockedValues.length||t.impossible("Section.blockedValue","blockedValues is missing or empty"),e.blockedValues.shift()}},Object.preventExtensions(k)}),define("engine",["jquery","utils","utils/selectors","state","section","passages"],function(e,t,n,r,i,o){function a(){var t=e("<tw-passage><tw-sidebar>"),i=t.children(n.sidebar);h.permalink&&r.save&&i.append('<tw-icon tabindex=0 class="permalink" title="Permanent link to this passage"><a href="#'+r.save()+'">§');var o=e('<tw-icon tabindex=0 class="undo" title="Undo">↶</tw-icon>').click(function(){return d.goBack()}),a=e('<tw-icon tabindex=0 class="redo" title="Redo">↷</tw-icon>').click(function(){return d.goForward()});return r.pastLength<=0&&o.css("visibility","hidden"),r.futureLength<=0&&a.css("visibility","hidden"),i.append(o).append(a),t}function s(e,t){return"<tw-include type="+e+" title='"+u(t.get("name"))+"'>"+t.get("source")+"</tw-include>"}function c(c){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.assertOnlyHas(u,["stretch","transitionIn","transitionOut","transitionTime"]);var d=o.get(c),g=t.storyElement,y=g.parent(),m=u.stretch,v=u.transitionOut,b=u.transitionIn,w=u.transitionTime;if(v=v||"instant",b=b||"dissolve",y.is(n.enchantment)){var x=y.data("enchantedProperties");x&&g.css(x.reduce(function(e,t){return e[t]="",e},{})),y=g.unwrap().parent()}o.hasValid(c)||l("Engine.showPassage","There's no passage with the name \""+c+'"!'),g.detach();var T=t.$(g.children(f));!m&&v&&(p(T,v,w),T.css("position","absolute"));var S=(d.get("tags")||[]).join(" "),k=a().appendTo(g).attr({tags:S});g.attr({tags:S});var O=i.create(k),j=d.get("source");j=o.getTagged("header").map(s.bind(0,"header")).join("")+(h.debug?o.getTagged("debug-header").map(s.bind(0,"debug-header")).join(""):"")+j+o.getTagged("footer").map(s.bind(0,"footer")).join("")+(h.debug?o.getTagged("debug-footer").map(s.bind(0,"debug-footer")).join(""):""),r.pastLength<=0&&(h.debug&&(j=o.getTagged("debug-startup").map(s.bind(0,"debug-startup")).join("")+j),j=o.getTagged("startup").map(s.bind(0,"startup")).join("")+j),O.renderInto(j,k,{transition:b,transitionTime:w}),y.append(g.parents().length?g.parents().last():g),scroll(0,m?k.offset().top-.05*e(window).height():g.offset().top)}var u=t.escape,l=t.impossible,f=t.passageSelector,p=t.transitionOut,d=void 0,h=Object.create(null);return d={goBack:function(e){r.rewind()&&c(r.passage,e)},goForward:function(e){r.fastForward()&&c(r.passage,e)},goToPassage:function(e,t){r.play(e),c(e,t)},showPassage:c,options:h},Object.freeze(d)}),define("debugmode",["jquery","utils","state","internaltypes/varref","internaltypes/twineerror","utils/operationutils","engine","passages"],function(e,t,n,r,i,o,a,s){var c=o.objectName,u=(o.typeName,o.is),l=o.isObject;return function(){function o(){var e=y.children();d.find(".tab-variables").text(e.length+" Variable"+(1!==e.length?"s":""))}function f(n,r,i,a){var s=y.children('[data-name="'+t.escape(n+"")+'"][data-path="'+t.escape(r+"")+'"]'),u=l(i)&&i.TwineScript_DebugName?i.TwineScript_DebugName():t.escape(c(i));s.length||(s=e('<div class="variable-row" data-name="'+t.escape(n+"")+'" data-path="'+t.escape(r+"")+'" data-value="'+u+'"></div>').appendTo(y));var p="";r.length&&(p=r.reduce(function(e,t){return e+t+"'s "},"")),s.empty().append("<span class='variable-name "+(p?"":a?"temporary":"global")+"'>"+(p?"<span class='variable-path "+(a?"temporary":"global")+"'>"+t.escape(p)+"</span> ":"")+t.escape(n+"")+(a?"<span class='temporary-variable-scope'>"+a+"</span>":"")+"</span><span class='variable-value'>"+u+"</span>").css("padding-left",Math.min(5,r.length)+"em").appendTo(y),o(),Array.isArray(i)?i.forEach(function(e,i){return f(t.nth(i+1),r.concat(n),e,a)}):i instanceof Map?[].concat(_toConsumableArray(i)).forEach(function(e){var t=_slicedToArray(e,2),i=t[0],o=t[1];return f(i,r.concat(n),o,a)}):i instanceof Set&&[].concat(_toConsumableArray(i)).forEach(function(e){return f("???",r.concat(n),e,a)})}function p(){var t=[];y.children().each(function(r,i){i=e(i);var a=i.attr("data-name"),s=i.attr("data-path"),c=i.attr("data-value");s||a.startsWith("TwineScript")||(a in n.variables?(t.push(a),u(n.variables[a],c)||f(a,[],n.variables[a])):(i.remove(),o()))});for(var r in n.variables)r.startsWith("TwineScript")||t.includes(r)||f(r,[],n.variables[r]);d.find(".panel-source").text(s.get(n.passage).get("source"))}var d=e("<tw-debugger>\n\t\t<div class='panel panel-variables'></div>\n\t\t<div class='panel panel-errors' hidden><table></table></div>\n\t\t<div class='panel panel-source' hidden></div>\n\t\t<div class='tabs'>\n\t\t<button class='tab tab-variables enabled'>0 Variables</button> <button class='tab tab-errors'>0 Errors</button> <button class='tab tab-source'>Source</button>\n\t\t</div>\n\t\tTurns: <select class='turns' disabled></select><button class='show-invisibles'>Debug View</button></tw-debugger>"),h=d.find(".show-invisibles");h.click(function(){e(document.documentElement).toggleClass("debug-mode"),h.toggleClass("enabled")}),["variables","source","errors"].forEach(function(e){var t=d.find(".tab-"+e),n=d.find(".panel-"+e);t.click(function(){t.toggleClass("enabled"),d.find(".tab:not(.tab-"+e+")").removeClass("enabled"),d.find(".panel").attr("hidden",""),t.is(".enabled")&&n.removeAttr("hidden")})});var g=d.find(".turns");g.change(function(e){var t=e.target.value,r=t-n.pastLength;0!==r&&(n[r<0?"rewind":"fastForward"](Math.abs(r)),a.showPassage(n.passage))}),n.on("forward",function(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=n.pastLength;i>1&&g.removeAttr("disabled"),r?(g.find("[selected]").removeAttr("selected"),g.val(i)):(g.children().each(function(t,n){t>=i&&e(n).remove()}),g.append("<option value="+i+">"+(i+1)+": "+t+"</option>").val(i))}).on("back",function(){n.pastLength<=1&&g.attr("disabled"),g.find("[selected]").removeAttr("selected"),g.val(n.pastLength)}).on("load",function(e){g.empty(),g[e.length<=1?"attr":"removeAttr"]("disabled"),e.forEach(function(e,t){return g.append("<option value="+t+">"+(t+1)+": "+e.passage+"</option>")})});var y=d.find(".panel-variables");n.on("forward",p).on("back",p),n.on("load",function(){return e(".panel-variables").empty()}),r.on("set",function(e,t,r){(e===n.variables||e.TwineScript_VariableStore)&&f(t,[],r,e===n.variables?"":e.TwineScript_VariableStoreName)}).on("delete",function(e,t){e===n.variables&&y.find('[data-name="'+t+'"]:not(.temporary)').remove()}),i.on("error",function(t,r){var i=e('<tr class="error-row"><td class="error-passage">'+n.passage+'</td><td class="error-message">'+t.message+"</td></tr>");i.find(".error-message").attr("title",r);var o=d.find(".panel-errors table"),a=o.children().length+1;a>500&&o.children(":first-child").remove(),o.append(i),d.find(".tab-errors").text(a+" Error"+(1!==a?"s":""))}),e(document.body).append(d)}}),define("utils/dialog",["jquery","renderer"],function(e,t){function n(n,r,i,o){var a=e(t.exec("<tw-backdrop><tw-dialog>\n"+(r||""===r?"=><=\n<input type=text></input>\n\n=><=\n":"")+"==>\n"+(o?"|||=\n<tw-link tabindex=0>OK</tw-link>\n=|\n<tw-link tabindex=0>Cancel</tw-link>":"\n<tw-link tabindex=0>OK</tw-link>")+"</tw-dialog></tw-backdrop>"));return a.find("tw-dialog").prepend(t.exec(n)),r&&a.find("input").last().val(r),a.find("tw-link").last().on("click",function(){a.remove(),i()}),o&&e(a.find("tw-link").get(-2)).on("click",function(){a.remove(),o()}),a}return n}),define("macrolib/values",["macros","utils","utils/operationutils","datatypes/colour","datatypes/gradient","internaltypes/twineerror"],function(e,t,n,r,i,o){function a(e){return function(){var t=e.apply(void 0,arguments);return"number"!=typeof t||isNaN(t)?o.create("macrocall","This mathematical expression doesn't compute!"):t}}var s=t.realWhitespace,c=t.nth,u=t.anyRealLetter,l=n.subset,f=n.objectName,p=n.clone,d=e.TypeSignature,h=d.rest,g=d.zeroOrMore,y=d.either,m=d.optional,v=d.Any;e.add(["text","string","str"],function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.join("")},[g(e.TypeSignature.either(String,Number,Boolean,Array))])("substring",function(e,t,n,r){return l(t,n,r)},[String,parseInt,parseInt])("lowercase",function(e,t){return t.toLowerCase()},[String])("uppercase",function(e,t){return t.toUpperCase()},[String])("lowerfirst",function(e,t){return t.replace(new RegExp(u+"+"),function(e){return e=Array.from(e),e[0].toLowerCase()+e.slice(1).join("").toLowerCase()})},[String])("upperfirst",function(e,t){return t.replace(new RegExp(u+"+"),function(e){return e=Array.from(e),e[0].toUpperCase()+e.slice(1).join("").toLowerCase()})},[String])("words",function(e,t){return t.split(new RegExp(s+"+")).filter(Boolean)},[String])(["str-repeated","string-repeated"],function(e,t,n){return t<=0?o.create("macrocall","I can't repeat this string "+t+" times."):0===n.length?o.create("macrocall","I can't repeat an empty string."):n.repeat(t)},[parseInt,String])(["str-reversed","string-reversed"],function(e,t){return[].concat(_toConsumableArray(t)).reverse().join("")},[String])(["num","number"],function(e,t){return Number.isNaN(+t)?o.create("macrocall","I couldn't convert "+f(t)+" to a number."):+t},[String])(["rgb","rgba"],function(e){for(var t,n=0;n<3;n+=1)if((t=arguments.length<=n+1?void 0:arguments[n+1])<0||t>255)return o.create("macrocall","RGB values must be whole numbers between 0 and 255, not "+f(t)+".");return(arguments.length<=4?void 0:arguments[4])<0||(arguments.length<=4?void 0:arguments[4])>1?o.create("macrocall","Alpha values must be numbers between 0 and 1 inclusive, not "+f(arguments.length<=4?void 0:arguments[4])+"."):r.create({r:arguments.length<=1?void 0:arguments[1],g:arguments.length<=2?void 0:arguments[2],b:arguments.length<=3?void 0:arguments[3],a:arguments.length<=4?void 0:arguments[4]})},[parseInt,parseInt,parseInt,m(Number)])(["hsl","hsla"],function(e,t,n,i,a){var s=" values must be numbers between 0 and 1 inclusive, not ";return n<0||n>1?o.create("macrocall","Saturation"+s+f(n)+"."):i<0||i>1?o.create("macrocall","Lightness"+s+f(i)+"."):a<0||a>1?o.create("macrocall","Alpha"+s+f(i)+"."):(t=Math.round(t)%360,t<0&&(t+=360),r.create({h:t,s:n,l:i,a:a}))},[Number,Number,Number,m(Number)])(["gradient"],function(e,t){for(var n=arguments.length,a=Array(n>2?n-2:0),s=2;s<n;s++)a[s-2]=arguments[s];if("number"!=typeof t)return o.create("datatype","(gradient:)'s first argument should be a number of degrees, not "+f(t)+".");if(t=Math.round(t)%360,t<0&&(t+=360),a.length<4)return o.create("datatype","(gradient:) must be given at least 2 colour-stop pairs of numbers and colours.");var c=void 0,u=[],l=a.reduce(function(e,t){if(o.containsError(e))return e;if(void 0===c)c=t;else{if("number"!=typeof c||c<0||c>1)return r.isPrototypeOf(c)?o.create("datatype","(gradient:) colour-stops should be pairs of numbers and colours, not colours and numbers."):o.create("datatype","(gradient:) colour-stop percents should be fractional numbers between 0 and 1, not "+f(c)+".");if(!r.isPrototypeOf(t))return"string"==typeof t&&t.startsWith("#")?o.create("datatype",'HTML hex colours should be given to (gradient:) as bare colour values like #808080, not strings like "'+t+'".'):o.create("datatype","(gradient:) colours should be built-in colours, HTML hex colours, or colours produced by (rgb:), (rgba:), (hsl:) or (hsla:), not "+f(c)+".");u.push({stop:c,colour:p(t)}),c=void 0}return e},!0);return o.containsError(l)?l:void 0!==c?o.create("macrocall","This gradient has a colour-stop percent without a colour."):i.create(t,u)},[Number,h(y(Number,r))])("cond",function(e){for(var t=0;t<(arguments.length<=1?0:arguments.length-1);t+=2){var n=arguments.length<=t+1?void 0:arguments[t+1];if(t===(arguments.length<=1?0:arguments.length-1)-1||o.containsError(n))return n;if("boolean"!=typeof n)return o.create("datatype","(cond:)'s "+c(t+1)+" value is "+f(n)+", but should be a boolean.");if(n)return arguments.length<=t+1+1?void 0:arguments[t+1+1]}
return o.create("macrocall","An odd number of values must be given to (cond:), not "+(arguments.length<=1?0:arguments.length-1),"(cond:) must be given one or more pairs of booleans and values, as well as one final value.")},[Boolean,v,h(v)]),{weekday:[function(){return["Sun","Mon","Tues","Wednes","Thurs","Fri","Satur"][(new Date).getDay()]+"day"},null],monthday:[function(){return(new Date).getDate()},null],currenttime:[function(){var e=new Date,t=e.getHours()<12;return(e.getHours()%12||12)+":"+(e.getMinutes()<10?"0":"")+e.getMinutes()+" "+(t?"A":"P")+"M"},null],currentdate:[function(){return(new Date).toDateString()},null],min:[Math.min,h(Number)],max:[Math.max,h(Number)],abs:[Math.abs,Number],sign:[Math.sign,Number],sin:[Math.sin,Number],cos:[Math.cos,Number],tan:[Math.tan,Number],floor:[Math.floor,Number],round:[Math.round,Number],ceil:[Math.ceil,Number],pow:[a(Math.pow),[Number,Number]],exp:[Math.exp,Number],sqrt:[a(Math.sqrt),Number],log:[a(Math.log),Number],log10:[a(Math.log10),Number],log2:[a(Math.log2),Number],random:[function(e,t){var n=void 0,r=void 0;return t?(n=Math.min(e,t),r=Math.max(e,t)):(n=0,r=e),r+=1,~~(Math.random()*(r-n))+n},[parseInt,e.TypeSignature.optional(parseInt)]],either:[function(){var e;return e=~~(Math.random()*arguments.length),arguments.length<=e?void 0:arguments[e]},h(v)],nth:[function(e){var t;return e<=0?o.create("datatype","(nth:)'s first value should be a positive whole number, not "+e):(t=(e-1)%(arguments.length<=1?0:arguments.length-1)+1,arguments.length<=t?void 0:arguments[t])},[parseInt,h(v)]],"":function(){var t=this;Object.keys(this).forEach(function(n){if(n){var r=t[n][0],i=t[n][1];e.add(n,function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return r.apply(void 0,n)},i)}})}}[""]()}),function(e){!function(){if(!e.requestAnimationFrame){if(e.webkitRequestAnimationFrame)return e.requestAnimationFrame=e.webkitRequestAnimationFrame,void(e.cancelAnimationFrame=e.webkitCancelAnimationFrame||e.webkitCancelRequestAnimationFrame);var t=0;e.requestAnimationFrame=function(n){var r=(new Date).getTime(),i=Math.max(0,16-(r-t)),o=e.setTimeout(function(){n(r+i)},i);return t=r+i,o},e.cancelAnimationFrame=function(e){clearTimeout(e)}}}(),"function"==typeof define&&define("requestAnimationFrame",[],function(){return e.requestAnimationFrame})}(window),define("macrolib/commands",["jquery","requestAnimationFrame","macros","utils","utils/selectors","state","passages","renderer","engine","internaltypes/twineerror","datatypes/hookset","datatypes/varbind","utils/operationutils","utils/dialog"],function(e,t,n,r,i,o,a,s,c,u,l,f,p,d){function h(e){return"("+e+" "+c.options.ifid+") "}var g=p.printBuiltinValue,y=n.TypeSignature,m=y.Any,v=y.rest,b=y.either,w=y.optional,x=Object.assign;n.addCommand("display",function(e){if(!a.hasValid(e))return u.create("macrocall","I can't (display:) the passage '"+e+"' because it doesn't exist.")},function(e,t,n){return x(e,{source:r.unescape(a.get(n).get("source"))})},[String])("print",function(){},function(e,t,n){return x(e,{source:g(n)})},[m])("go-to",function(e){if(!a.hasValid(e))return u.create("macrocall","I can't (go-to:) the passage '"+e+"' because it doesn't exist.")},function(e,n,r){return t(function(){return c.goToPassage(r,{transitionOut:e.data.t8nDepart,transitionIn:e.data.t8nArrive})}),"blocked"},[String])("undo",function(){},function(e){return o.pastLength<1?u.create("macrocall","I can't (undo:) on the first turn."):(t(function(){return c.goBack({transitionOut:e.data.t8nDepart,transitionIn:e.data.t8nArrive})}),"blocked")},[])("cycling-link",function(){if(""===(arguments.length<=0?void 0:arguments[0]))return u.create("macrocall","The first string in a (cycling-link:) can't be empty.");if(arguments.length<=(f.isPrototypeOf(arguments.length<=0?void 0:arguments[0])?2:1)){var e;return u.create("macrocall","I need two or more strings to cycle through, not just '"+(e=arguments.length-1,arguments.length<=e?void 0:arguments[e])+"'.")}},function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];var o=void 0;f.isPrototypeOf(r[0])&&(o=r.shift());var a=0,s=_slicedToArray(t.stack,1),c=s[0].tempVariables;e.data.clickEvent=function(t){a=(a+1)%r.length;var n=""===r[a]?"":"<tw-link>"+r[a]+"</tw-link>";if(o){var i=o.set(r[a]);if(u.containsError(i))return void t.replaceWith(i.render(r[a]))}var s=x({},e,{source:n,transitionDeferred:!1});e.section.renderInto("",null,s,c)};var l="<tw-link>"+r[0]+"</tw-link>";if(o){var p=o.set(r[a]);if(u.containsError(p))return p}return x(e,{source:l,append:"replace",transitionDeferred:!0})},[b(f,String),v(String)]),r.onStartup(function(){return e(r.storyElement).on("change.dropdown-macro","select",function(){var t=e(this),n=t.closest("tw-expression, tw-hook").data("dropdownEvent");n&&n(t)})}),n.addCommand("dropdown",function(e){var t;return""===(arguments.length<=1?void 0:arguments[1])||""===(t=(arguments.length<=1?0:arguments.length-1)-1+1,arguments.length<=t?void 0:arguments[t])?u.create("macrocall","The first or last strings in a (dropdown:) can't be empty.","Because empty strings create separators within (dropdown:)s, having them at the start or end doesn't make sense."):(arguments.length<=1?0:arguments.length-1)<=1?u.create("macrocall","I need two or more strings to create a (dropdown:) menu, not just "+(arguments.length<=1?0:arguments.length-1)+"."):void 0},function(e,t,n){for(var r=arguments.length,i=Array(r>3?r-3:0),o=3;o<r;o++)i[o-3]=arguments[o];var a=Math.max.apply(Math,_toConsumableArray(i.map(function(e){return[].concat(_toConsumableArray(e)).length}))),s="<select>"+i.map(function(e,t){return"<option"+(0===t?" selected":"")+(""===e?" disabled":"")+">"+(e||"\u2500".repeat(a))+"</option>"}).join("\n")+"</select>";e.data.dropdownEvent=function(e){var t=e.val(),r=n.set(t);if(u.containsError(r))return void e.replaceWith(r.render(t))};var c=n.set(i[0]);return u.containsError(c)?c:x(e,{source:s,append:"replace"})},[f,String,v(String)])("show",function(){},function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return r.forEach(function(n){return n.forEach(t,function(n){var r=n.data("hiddenSource");void 0!==r&&(t.renderInto("",null,x({},e,{source:r,target:n})),n.removeData("hiddenSource"))})}),e},[v(l)])("stop",function(){},function(){},[],!1)("load-game",function(){},function(e,n){var i=localStorage.getItem(h("Saved Game")+n);if(!i)return u.create("saving","I can't find a save slot named '"+n+"'!");var a=o.deserialise(i);if(a instanceof Error){var s=d("Sorry to interrupt... The story tried to load saved data, but there was a problem.\n"+a.message+"\n\nThat data might have been saved from a different version of this story. Should I delete it?\n(Type 'delete' and choose OK to delete it.)\n\nEither way, the story will now continue without loading the data.","",function(){e.unblock()},function(){"delete"===s.find("input").last().val()&&localStorage.removeItem(h("Saved Game")+n),e.unblock()});return r.storyElement.append(s),"blocked"}t(c.showPassage.bind(c,o.passage,!1))},[String],!1)("alert",function(){},function(e,t){r.storyElement.append(d(t,!1,function(){return e.unblock()})),e.stackTop.blocked=!0},[String],!1)("open-url",function(){},function(e,t){window.open(t,"")},[String],!1)("reload",function(){},function(){if(o.pastLength<1)return u.create("infinite","I mustn't (reload:) the page in the starting passage.");o.hasSessionStorage&&sessionStorage.removeItem("Saved Session"),window.location.reload()},[],!1)("goto-url",function(){},function(e,t){window.location.assign(t)},[String],!1),n.add("save-game",function(e,t,n){if(n=n||"",!o.hasStorage)return!1;var r=o.serialise();if(u.containsError(r))return r;if(!1===r)return!1;try{return localStorage.setItem(h("Saved Game")+t,r),localStorage.setItem(h("Saved Game Filename")+t,n),!0}catch(e){return!1}},[String,w(String)])("prompt",function(e,t,n){var i=d(t,n,function(){e.unblock(n)},function(){e.unblock(i.find("input").last().val())});r.storyElement.append(i)},[String,String])("confirm",function(e,t){r.storyElement.append(d(t,!1,function(){return e.unblock(!1)},function(){return e.unblock(!0)}))},[String])("page-url",function(){return window.location.href},[]),s.options.blockerMacros.push("prompt","confirm")}),define("macrolib/datastructures",["jquery","utils/naturalsort","macros","utils/operationutils","state","engine","passages","datatypes/lambda","datatypes/assignmentrequest","internaltypes/twineerror","internaltypes/twinenotifier"],function(e,t,n,r,i,o,a,s,c,u,l){var f=r.objectName,p=(r.typeName,r.subset),d=r.collectionType,h=r.isValidDatamapName,g=r.is,y=r.unique,m=r.clone,v=r.range,b=n.TypeSignature,w=b.optional,x=b.rest,T=b.either,S=b.zeroOrMore,k=b.Any;n.add("set",function(e){for(var t="",n=0;n<(arguments.length<=1?0:arguments.length-1);n+=1){var r=arguments.length<=n+1?void 0:arguments[n+1];if("into"===r.operator)return u.create("macrocall","Please say 'to' when using the (set:) macro.");var i=void 0;if(r.src&&r.src.varref){var a=r.src.get(),s=void 0;if(s=u.containsError(a))return s;i=r.dest.set(a)}else i=r.dest.set(r.src);if(u.isPrototypeOf(i))return i;o.options.debug&&(t+=(t?"; ":"")+f(r.dest)+" is now "+f(r.src))}return{TwineScript_TypeName:"a (set:) operation",TwineScript_ObjectName:"a (set:) operation",TwineScript_Unstorable:!0,TwineScript_Print:function(){return t&&l.create(t).render()[0].outerHTML}}},[x(c)])("put",function(e){for(var t="",n=0;n<(arguments.length<=1?0:arguments.length-1);n+=1){var r=arguments.length<=n+1?void 0:arguments[n+1];if("into"!==r.operator)return u.create("macrocall","Please say 'into' when using the (put:) macro.");var i=r.dest.set(r.src);if(u.isPrototypeOf(i))return i;o.options.debug&&(t+=(t?"; ":"")+f(r.dest)+" is now "+f(r.src))}return{TwineScript_TypeName:"a (put:) operation",TwineScript_ObjectName:"a (put:) operation",TwineScript_Unstorable:!0,TwineScript_Print:function(){return t&&l.create(t).render()[0].outerHTML}}},[x(c)])("move",function(e){for(var t="",n=0;n<(arguments.length<=1?0:arguments.length-1);n+=1){var r=arguments.length<=n+1?void 0:arguments[n+1];if("into"!==r.operator)return u.create("macrocall","Please say 'into' when using the (move:) macro.");var i=void 0,a=void 0;if(r.src&&r.src.varref){var s=r.src.get();if(a=u.containsError(s))return a;if(i=r.dest.set(s),a=u.containsError(i))return a;r.src.delete()}else if(i=r.dest.set(r.src),a=u.containsError(i))return a;o.options.debug&&(t+=(t?"; ":"")+f(r.dest)+" is now "+f(r.src))}return{TwineScript_TypeName:"a (move:) operation",TwineScript_ObjectName:"a (move:) operation",TwineScript_Unstorable:!0,TwineScript_Print:function(){return t&&l.create(t).render()[0].outerHTML}}},[x(c)])(["a","array"],function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n},S(k))("range",function(e,t,n){return v(t,n)},[parseInt,parseInt])("subarray",function(e,t,n,r){return p(t,n,r)},[Array,parseInt,parseInt])("reversed",function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.reverse().map(m)},S(k))("shuffled",function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.reduce(function(e,t,n){var r=Math.random()*(n+1)|0;return r===n?e.push(t):(e.push(e[r]),e[r]=t),e},[]).map(m)},[k,x(k)])("sorted",function(e){for(var n=arguments.length,r=Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return r.sort(t("en"))},[T(Number,String),x(T(Number,String))])("rotated",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return t*=-1,0===t?u.create("macrocall","I can't rotate these values by 0 positions."):Math.abs(t)>=r.length?u.create("macrocall","I can't rotate these "+r.length+" values by "+t+" positions."):r.slice(t).concat(r.slice(0,t)).map(m)},[parseInt,k,x(k)])("repeated",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];if(t<=0)return u.create("macrocall","I can't repeat these values "+t+" times.");for(var o=[];t-- >0;)o.push.apply(o,r);return o.map(m)},[parseInt,x(k)])("interlaced",function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(var i=Math.min.apply(Math,_toConsumableArray(n.map(function(e){return e.length}))),o=[],a=0;a<i;a+=1)for(var s=0;s<n.length;s+=1)o.push(m(n[s][a]));return o},[Array,x(Array)]),n.add("altered",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return r.map(function(n){return t.apply(e,{loop:n})})},[s.TypeSignature("via"),S(k)])("find",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return t.filter(e,r)},[s.TypeSignature("where"),S(k)])("all-pass",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];var o=t.filter(e,r);return u.containsError(o)||o.length===r.length},[s.TypeSignature("where"),S(k)])("some-pass",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];var o=t.filter(e,r);return u.containsError(o)||o.length>0},[s.TypeSignature("where"),S(k)])("none-pass",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];var o=t.filter(e,r);return u.containsError(o)||0===o.length},[s.TypeSignature("where"),S(k)])("folded",function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return"where"in t&&(r=t.filter(e,r)),u.containsError(r)||r.reduce(function(n,r){return t.apply(e,{making:n,loop:r})})},[T(s.TypeSignature("where via making"),s.TypeSignature("via making")),x(k)]),n.add("datanames",function(e,n){return Array.from(n.keys()).sort(t("en"))},[Map])("datavalues",function(e,n){return Array.from(n.entries()).sort(t("en",function(e){return String(e[0])})).map(function(e){return m(e[1])})},[Map])("dataentries",function(e,n){return Array.from(n.entries()).sort(function(e,n){return[e[0],n[0]].sort(t("en"))[0]===e[0]?-1:1}).map(function(e){return new Map([["name",e[0]],["value",m(e[1])]])})},[Map])("history",function(e,t){if(!t)return i.pastPassageNames();var n=t.filter(e,i.pastPassageNames().map(function(e){return a.get(e)}));return u.containsError(n)?n:n.map(function(e){return e.get("name")})},[w(s.TypeSignature("where"))])("passage",function(e,t){return u.containsError(t)?t:m(a.get(t||i.passage))||u.create("macrocall","There's no passage named '"+t+"' in this story.")},[w(String)])("passages",function(e,n){if(u.containsError(n))return n;var r=t("en"),i=[].concat(_toConsumableArray(a.values())),o=n?n.filter(e,i):i,s=u.containsError(o);return s||o.sort(function(e,t){return r(e.get("name"),t.get("name"))})},[w(s.TypeSignature("where"))])("savedgames",function(){function e(e){return"("+e+" "+o.options.ifid+") "}var t=0,n=void 0,r=new Map;do{if(!i.hasStorage)break;n=localStorage.key(t),t+=1;var a=e("Saved Game");n&&n.startsWith(a)&&(n=n.slice(a.length),r.set(n,localStorage.getItem(e("Saved Game Filename")+n)))}while(n);return r},[])(["datamap","dm"],function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=void 0,o=new Map,a=n.reduce(function(e,t){var n=void 0;if(u.containsError(e))return e;if(void 0===i)i=t;else{if(n=u.containsError(h(o,i)))return n;if(o.has(i))return u.create("macrocall","You used the same data name ("+f(i)+") twice in the same (datamap:) call.");o.set(i,m(t)),i=void 0}return e},!0);return u.containsError(a)?a:void 0!==i?u.create("macrocall","This datamap has a data name without a value."):o},S(k))(["dataset","ds"],function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return new Set(n.filter(y).map(m))},S(k))("count",function e(t,n){for(var r=arguments.length,i=Array(r>2?r-2:0),o=2;o<r;o++)i[o-2]=arguments[o];if(i.length>1){var a=void 0,s=i.map(function(r){return e(t,n,r)});return(a=u.containsError(s))?a:s.reduce(function(e,t){return e+t},0)}var c=i[0];switch(d(n)){case"dataset":case"datamap":return u.create("macrocall","(count:) shouldn't be given a datamap or dataset.","You should use the 'contains' operator instead. For instance, write: $variable contains 'value'.");case"string":return"string"!=typeof c?u.create("macrocall",f(n)+" can't contain "+f(c)+" because it isn't a string."):c?n.split(c).length-1:0;case"array":return n.reduce(function(e,t){return e+g(t,c)},0);default:return u.create("macrocall",f(n)+" can't contain values, let alone "+f(c)+".")}},[k,x(k)])}),define("macrolib/stylechangers",["jquery","macros","utils","utils/selectors","datatypes/colour","datatypes/gradient","datatypes/changercommand","datatypes/lambda","internaltypes/changedescriptor","internaltypes/twineerror"],function(e,t,n,r,i,o,a,s,c,u){var l=t.TypeSignature,f=l.either,p=l.wrapped,d=l.optional,h=l.Any,g=l.zeroOrMore,y=[p(Boolean,'If you gave a number, you may instead want to check that the number is not 0. If you gave a string, you may instead want to check that the string is not "".')];n.onStartup(function(){return e(n.storyElement).on("mouseenter.hover-macro","[hover=false]",function(){var t=e(this),n=t.data("hoverChanger");t.data({mouseoutStyle:t.attr("style")||""}),c.create({target:t},n).update(),t.attr("hover",!0)}).on("mouseleave.hover-macro","[hover=true]",function(){var t=e(this),n=t.data("mouseoutStyle");t.attr("style",n).removeData("mouseoutStyle").attr("hover",!1)})});var m=["instant","dissolve","rumble","shudder","pulse","flicker","slideleft","slideright","slideup","slidedown"],v="Only the following names are recognised (capitalisation and hyphens ignored): "+m.join(", ");t.addChanger("if",function(e,t){return a.create("if",[t])},function(e,t){return e.enabled=e.enabled&&t},y)("unless",function(e,t){return a.create("unless",[!t])},function(e,t){return e.enabled=e.enabled&&t},y)("elseif",function(e,t){return"lastHookShown"in e.stack[0]?a.create("elseif",[!1===e.stack[0].lastHookShown&&!!t]):u.create("macrocall","There's no (if:) or something else before this to do (else-if:) with.")},function(e,t){return e.enabled=e.enabled&&t},y)("else",function(e){return"lastHookShown"in e.stack[0]?a.create("else",[!1===e.stack[0].lastHookShown]):u.create("macrocall","There's nothing before this to do (else:) with.")},function(e,t){return e.enabled=e.enabled&&t},null)("hidden",function(){return a.create("hidden")},function(e){return e.enabled=!1},null)("live",function(e,t){return a.create("live",[t])},function(e,t){e.enabled=!1,e.data.live={delay:t}},d(Number))("event",function(e,t){return a.create("event",[t])},function(e,t){e.enabled=!1,e.data.live={event:t}},s.TypeSignature("when"))("more",function(){return a.create("more")},function(e){e.enabled=!1,e.data.live={event:{when:!0,filter:function(e){return 0!==e.eval("Operations").Identifiers.exits?[]:[!0]}}}},null)("hook",function(e,t){return a.create("hook",[t])},function(e,t){return e.attr.push({name:t})},[String])(["for","loop"],function(e,t){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];return t.loop?a.create("for",[t,r]):u.create("datatype","The lambda provided to (for:) must refer to a temp variable, not just 'it'.")},function(e,t,n){var r=t.filter(e.section,n),i=void 0;if(i=u.containsError(r))return i;e.loopVars[t.loop]=r||[]},[s.TypeSignature("where"),g(h)])(["transition","t8n"],function(e,t){return t=n.insensitiveName(t),-1===m.indexOf(t)?u.create("datatype","'"+t+"' is not a valid (transition:)",v):a.create("transition",[t])},function(e,t){return e.transition=t,e},[String])(["transition-time","t8n-time"],function(e,t){return t<=0?u.create("datatype","(transition-time:) should be a positive number of (milli)seconds, not "+t):a.create("transition-time",[t])},function(e,t){return e.transitionTime=t,e.data.t8nTime=t,e},[Number])(["transition-depart","t8n-depart"],function(e,t){return t=n.insensitiveName(t),-1===m.indexOf(t)?u.create("datatype","'"+t+"' is not a valid transition",v):a.create("transition-depart",[t])},function(e,t){return e.data.t8nDepart=t,e},[String])(["transition-arrive","t8n-arrive"],function(e,t){return t=n.insensitiveName(t),-1===m.indexOf(t)?u.create("datatype","'"+t+"' is not a valid transition",v):a.create("transition-arrive",[t])},function(e,t){return e.data.t8nArrive=t,e},[String])("font",function(e,t){return a.create("font",[t])},function(e,t){return e.styles.push({"font-family":t}),e},[String])("align",function(e,t){var n=void 0,r=t.indexOf("><");if(!/^(==+>|<=+|=+><=+|<==+>)$/.test(t))return u.create("macrocall",'The (align:) macro requires an alignment arrow ("==>", "<==", "==><=" etc.) be provided, not "'+t+'"');if(~r){var i=Math.round(r/(t.length-2)*50);n=Object.assign({"text-align":"center","max-width":"50%"},25===i?{"margin-left":"auto","margin-right":"auto"}:{"margin-left":i+"%"})}else n="<"===t[0]&&">"===t.slice(-1)?{"text-align":"justify","max-width":"50%"}:t.includes(">")?{"text-align":"right"}:{"text-align":"left"};return n.display="block",a.create("align",[n])},function(e,t){e.styles.push(t)},[String])(["text-colour","text-color","color","colour"],function(e,t){return i.isPrototypeOf(t)&&(t=t.toRGBAString(t)),a.create("text-colour",[t])},function(e,t){return e.styles.push({color:t}),e},[f(String,i)])("text-rotate",function(e,t){return a.create("text-rotate",[t])},function(t,n){return t.styles.push({display:"inline-block",transform:function(){var t=e(this).css("transform")||"";return"none"===t&&(t=""),t+" rotate("+n+"deg)"}}),t},[Number])("background",function(e,t){return i.isPrototypeOf(t)?t=t.toRGBAString(t):o.isPrototypeOf(t)&&(t=t.toLinearGradientString(t)),a.create("background",[t])},function(t,r){var o=void 0;return o=i.isHexString(r)||i.isCSS3Function(r)?{"background-color":r}:r.startsWith("linear-gradient(")?{"background-image":r}:{"background-size":"cover","background-image":"url("+r+")"},t.styles.push(o,{display:function(){return n.childrenProbablyInline(e(this))?"initial":"block"}}),t},[f(String,i,o)]).apply(void 0,_toConsumableArray(function(){var t={color:function(){return"transparent"}},r=Object.assign(Object.create(null),{none:{},bold:{"font-weight":"bold"},italic:{"font-style":"italic"},underline:{"text-decoration":"underline"},strike:{"text-decoration":"line-through"},superscript:{"vertical-align":"super","font-size":".83em"},subscript:{"vertical-align":"sub","font-size":".83em"},blink:{animation:"fade-in-out 1s steps(1,end) infinite alternate"},shudder:{animation:"shudder linear 0.1s 0s infinite",display:"inline-block"},mark:{"background-color":"hsla(60, 100%, 50%, 0.6)"},condense:{"letter-spacing":"-0.08em"},expand:{"letter-spacing":"0.1em"},outline:[{"text-shadow":function(){var t=e(this).css("color");return"-1px -1px 0 "+t+", 1px -1px 0 "+t+",-1px 1px 0 "+t+", 1px 1px 0 "+t}},{color:function(){for(var t=e(this);t.length&&t[0]!==document;t=t.parent()){var n=t.css("background-color");if("transparent"!==n&&!n.match(/^\w+a\(.+?,\s*0\s*\)$/))return n}return"#fff"}}],shadow:{"text-shadow":function(){return"0.08em 0.08em 0.08em "+e(this).css("color")}},emboss:{"text-shadow":function(){return"0.08em 0.08em 0em "+e(this).css("color")}},smear:[{"text-shadow":function(){var t=e(this).css("color");return"0em 0em 0.02em "+t+",-0.2em 0em 0.5em "+t+", 0.2em 0em 0.5em "+t}},t],blur:[{"text-shadow":function(){return"0em 0em 0.08em "+e(this).css("color")}},t],blurrier:[{"text-shadow":function(){return"0em 0em 0.2em "+e(this).css("color")},"user-select":"none"},t],mirror:{display:"inline-block",transform:"scaleX(-1)"},upsidedown:{display:"inline-block",transform:"scaleY(-1)"},fadeinout:{animation:"fade-in-out 2s ease-in-out infinite alternate"},rumble:{animation:"rumble linear 0.1s 0s infinite",display:"inline-block"}});return["text-style",function(e,t){return t=n.insensitiveName(t),t in r?a.create("text-style",[t]):u.create("datatype","'"+t+"' is not a valid (text-style:)","Only the following names are recognised (capitalisation and hyphens ignored): "+Object.keys(r).join(", "))},function(e,t){return n.assertMustHave(r,[t]),e.styles="none"===t?[]:e.styles.concat(r[t]),e}]}()).concat([[String]]))("hover-style",function(e,t){var n=c.create(),r=(t.run(n),n.summary());return r+""=="styles"||r.every(function(e){return"styles"===e||"attr"===e})&&n.attr.every(function(e){return Object.keys(e)+""=="style"})?a.create("hover-style",[t]):u.create("datatype","The changer given to (hover-style:) must only change the hook's style.")},function(e,t){return e.data.hoverChanger=t,e.attr.push({hover:!1}),e},[a])("css",function(e,t){return t.trim().endsWith(";")||(t+=";"),a.create("css",[t])},function(t,n){return t.attr.push({style:function(){return(e(this).attr("style")||"")+n}}),t},[String])}),define("internaltypes/enchantment",["jquery","utils","internaltypes/changedescriptor"],function(e,t,n){var r={create:function(n){return t.assertOnlyHas(n,["scope","section","attr","data","changer","functions"]),Object.assign(Object.create(this),{enchantments:e()},n)},enchantScope:function(){var r=this,i=this.attr,o=this.data,a=this.functions,s=this.section,c=this.changer,u=this.scope;u instanceof e&&(u=Array.prototype.map.call(u,function(t){return e(t)})),this.enchantments=e(),u.forEach(s,function(e){var u=e.wrapAll("<tw-enchantment>").parent();if(i&&u.attr(i),o&&u.data(o),a&&a.forEach(function(e){return e(u)}),c){var l=n.create({section:s,target:u});if(c.run(l),l.update(),e.is(t.storyElement)){var f=Object.keys(Object.assign.apply(Object,[{}].concat(_toConsumableArray(l.styles))));e.css(f.reduce(function(e,t){return e[t]="inherit",e},{})),u.data({enchantedProperties:f})}}e.is(t.storyElement)&&u.css({width:"100%",height:"100%"}),r.enchantments=r.enchantments.add(u)})},disenchant:function(){this.enchantments.each(function(){var n=e(this).contents();n.unwrap();var r=e(this).data("enchantedProperties");r&&n.has(t.storyElement)&&t.storyElement.css(r.reduce(function(e,t){return e[t]="",e},{}))})}};return Object.freeze(r)}),define("macrolib/enchantments",["jquery","utils","utils/selectors","utils/operationutils","engine","passages","macros","datatypes/hookset","datatypes/changercommand","internaltypes/enchantment","internaltypes/twineerror"],function(e,t,n,r,i,o,a,s,c,u,l){function f(n,r){return t.onStartup(function(){t.storyElement.on(n.event+".enchantment","."+n.classList.replace(/ /g,"."),function(){var t=e(this),n=t.data("enchantmentEvent");n&&n(t)})}),[function(e,t){return t?c.create(r,[s.from(t)]):l.create("datatype","A string given to this ("+r+":) macro was empty.")},function(e,t){e.enabled=!1,e.transitionDeferred=!0,n.rerender&&(e.newTargets=(e.newTargets||[]).concat({target:t,append:n.rerender}));var r=_slicedToArray(e.section.stack,1),o=r[0].tempVariables,a=u.create({functions:[function(e){e.attr("class",e.children().is("tw-story, tw-sidebar, tw-passage")?n.blockClassList:n.classList)}],attr:(n.classList+"").match(/\b(?:link|enchantment-clickblock)\b/)?{tabIndex:"0"}:{},data:{enchantmentEvent:function(){if(!e.section.stackTop||!e.section.stackTop.blocked){if(n.once){var t=e.section.enchantments.indexOf(a);e.section.enchantments.splice(t,1),a.disenchant()}if(n.goto)return void i.goToPassage(n.goto,{transitionOut:n.transitionOut,transitionIn:n.transitionIn});e.section.renderInto(e.source,null,Object.assign({},e,{enabled:!0,transitionDeferred:!1}),o)}}},scope:t,section:e.section});return e.section.enchantments.push(a),a.enchantScope(),e},h(s,String)]}var p=r.is,d=a.TypeSignature,h=d.either,g=d.rest;a.addCommand("enchant",function(e,t){var n=t.summary();if(n.includes("newTargets")||n.includes("target"))return l.create("macrocall","The changer given to (enchant:) can't include a revision command like (replace:) or (append:).")},function(e,t,n){var r=u.create({scope:s.from(t),changer:n,section:e});return e.enchantments.push(r),r.enchantScope(),""},[h(s,String),c],!1);var y=["replace","append","prepend"];y.forEach(function(t){a.addChanger(t,function(e){for(var n=arguments.length,r=Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return r.every(Boolean)?c.create(t,r.map(s.from)):l.create("datatype","A string given to this ("+t+":) macro was empty.")},function(n){for(var r,i=arguments.length,o=Array(i>1?i-1:0),a=1;a<i;a++)o[a-1]=arguments[a];return e(n.target).parents().filter("tw-collapsed").length>0||(n.attr=[].concat(_toConsumableArray(n.attr),[{collapsing:!1}])),n.newTargets=n.newTargets||[],(r=n.newTargets).push.apply(r,_toConsumableArray(o.filter(function(e){return!n.newTargets.some(function(n){var r=n.target,i=n.append;return p(e,r)&&t===i})}).map(function(e){return{target:e,append:t,before:!0}}))),n},g(h(s,String)))}),t.onStartup(function(){t.storyElement.on("click.enchantment",function(){Array.from(e(this).parents(".enchantment-clickblock")).sort(function(e,t){return 8&e.compareDocumentPosition(t)?1:-1}).forEach(function(t){var n=e(t).data("enchantmentEvent");n&&n()})})});var m=[{name:"click",enchantDesc:{event:"click",once:!0,rerender:"",classList:"link enchantment-link",blockClassList:"enchantment-clickblock"}},{name:"mouseover",enchantDesc:{event:"mouseenter",once:!0,rerender:"",classList:"enchantment-mouseover"}},{name:"mouseout",enchantDesc:{event:"mouseleave",once:!0,rerender:"",classList:"enchantment-mouseout"}}];m.forEach(function(e){return a.addChanger.apply(a,[e.name].concat(_toConsumableArray(f(e.enchantDesc,e.name))))}),y.forEach(function(e){m.forEach(function(t){var n=Object.assign({},t.enchantDesc,{rerender:e}),r=t.name+"-"+e;a.addChanger.apply(a,[r].concat(_toConsumableArray(f(n,r))))})}),m.forEach(function(e){var t=e.name+"-goto";a.addCommand(t,function(e,n){return e&&n?o.hasValid(n)?void 0:l.create("macrocall","I can't ("+t+":) the passage '"+n+"' because it doesn't exist."):l.create("datatype","A string given to this ("+t+":) macro was empty.")},function(n,r,i,o){var a=f(Object.assign({},e.enchantDesc,{goto:o,transitionOut:n.data.t8nDepart,transitionIn:n.data.t8nArrive}),t);return(0,_slicedToArray(a,2)[1])({section:r},s.from(i)),Object.assign(n,{source:""})},[h(s,String),String])})}),define("macrolib/links",["jquery","macros","utils","utils/selectors","state","passages","engine","datatypes/changercommand","datatypes/hookset","internaltypes/twineerror"],function(e,t,n,r,i,o,a,s,c,u){function l(e,t,r){r=r||t;var i=o.hasValid(t)&&t===r,a=e.evaluateTwineMarkup(n.unescape(r),"a link's passage name"),s=void 0;if(i){var c=a.children().length>0?"`".repeat((r.match(/`+/)||[]).reduce(function(e,t){return Math.max(e,t.length+1)},1)):"";t=c+"\0".repeat(!!c)+t+"\0".repeat(!!c)+c}else a.findAndFilter("tw-error").length&&(s=a.findAndFilter("tw-error").data("TwineError")),r=a.text();return{text:t,passage:r,error:s}}var f=t.TypeSignature,p=f.optional,d=f.rest,h=["Links can't have empty strings for their displayed text.","In the link syntax, a link's displayed text is inside the [[ and ]], and on the non-pointy side of the -> or <- arrow if it's there."],g=Object.assign;n.onStartup(function(){return e(n.storyElement).on("click.passage-link",r.internalLink,function(){var t=e(this),n=t.closest("tw-expression"),r=t.closest("tw-expression, tw-hook"),i=r.data("clickEvent"),o=r.data("section");if(!(o&&o.stackTop&&o.stackTop.blocked)){if(i){if(t.find("tw-error").length>0)return;return void i(t)}var s=n.data("linkPassageName"),c=n.data("t8nDepart"),u=n.data("t8nArrive"),l=n.data("t8nTime");return n.find("tw-enchantment").each(function(t,n){c=e(n).data("t8nDepart")||c,u=e(n).data("t8nArrive")||u,l=void 0!==e(n).data("t8nTime")?e(n).data("t8nTime"):l}),s?void a.goToPassage(s,{transitionOut:c,transitionIn:u,transitionTime:l}):t.is("[undo]")?void a.goBack({transitionOut:c,transitionIn:u,transitionTime:l}):void 0}})}),[["link","link-replace"],["link-reveal"],["link-repeat"]].forEach(function(e){return t.addChanger(e,function(t,n){return n?s.create(e[0],[n]):u.create("macrocall",h[0])},function(t,n){t.innerSource||(t.innerSource=t.source),t.source="<tw-link tabindex=0>"+n+"</tw-link>",t.append="link"===e[0]?"replace":"append",t.transitionDeferred=!0;var r=_slicedToArray(t.section.stack,1),i=r[0].tempVariables
;t.data.section=t.section,t.data.clickEvent=function(n){"link-reveal"===e[0]&&n.contents().unwrap(),t.source=t.innerSource+"",t.transitionDeferred=!1,t.section.renderInto("",null,t,i)}},[String])}),t.addCommand(["link-goto"],function(e){if(!e)return u.create.apply(u,["macrocall"].concat(h))},function(e,t,r,a){var s=void 0,c=l(t,r,a);if(r=c.text,a=c.passage,s=c.error)return s;var u=void 0;return o.hasValid(a)||(u='<tw-broken-link passage-name="'+n.escape(a)+'">'+r+"</tw-broken-link>"),u=u||"<tw-link tabindex=0 "+(i.passageNameVisited(a)>0?'class="visited" ':"")+">"+r+"</tw-link>",e.data.linkPassageName=a,e.data.section=t,g(e,{source:u,transitionDeferred:!0})},[String,p(String)])("link-undo",function(e){if(!e)return u.create("macrocall",h[0])},function(e,t,n){return i.pastLength<1?u.create("macrocall","I can't use (link-undo:) on the first turn."):(e.data.section=t,g(e,{source:"<tw-link tabindex=0 undo>"+n+"</tw-link>",transitionDeferred:!0}))},[String])("link-show",function(e){if(!e)return u.create("macrocall",h[0])},function(e,t,n){for(var r=arguments.length,i=Array(r>3?r-3:0),o=3;o<r;o++)i[o-3]=arguments[o];var a=_slicedToArray(t.stack,1),s=a[0].tempVariables;return e.data.section=t,e.data.clickEvent=function(n){n.contents().unwrap(),i.forEach(function(n){return n.forEach(t,function(n){var r=n.data("hiddenSource");void 0!==r&&t.renderInto("",null,g({},e,{source:r,target:n,transitionDeferred:!1}),s)})})},g(e,{source:"<tw-link tabindex=0>"+n+"</tw-link>",transitionDeferred:!0})},[String,d(c)]),t.addChanger(["link-reveal-goto"],function(e,t,n){if(!t)return u.create.apply(u,["macrocall"].concat(h));var r=l(e,t,n);return t=r.text,n=r.passage,r.error||s.create("link-reveal-goto",[t,n])},function(e,t,r){if(!o.hasValid(r))return void(e.source='<tw-broken-link passage-name="'+n.escape(r)+'">'+t+"</tw-broken-link>");e.innerSource||(e.innerSource=e.source);var s=i.passageNameVisited(r);e.source="<tw-link tabindex=0 "+(s>0?'class="visited" ':"")+">"+t+"</tw-link>",e.append="append",e.transitionDeferred=!0;var c=_slicedToArray(e.section.stack,1),u=c[0].tempVariables;e.data.section=e.section,e.data.clickEvent=function(t){e.source=e.innerSource,t.contents().unwrap(),e.transitionDeferred=!1,e.section.renderInto(e.innerSource+"",null,e,u),e.section.whenUnblocked(function(){return a.goToPassage(r,{transitionOut:e.data.t8nDepart,transitionIn:e.data.t8nArrive})})}},[String,p(String)])}),define("repl",["utils","engine","markup","twinescript/compiler","twinescript/environ"],function(e,t,n,r,i){e.onStartup(function(){return setTimeout(function(){t.options.debug&&(window.REPL=function(e){var t=r(n.lex("(print:"+e+")"));console.log(t);var o=i({}).eval(t);return o.TwineScript_Print?o.TwineScript_Print():o},window.LEX=function(e){var t=n.lex(e);return 1===t.length?t[0]:t})})})}),require.config({paths:{jquery:"../node_modules/jquery/dist/jquery",almond:"../node_modules/almond/almond","es6-shim":"../node_modules/es6-shim/es6-shim",requestAnimationFrame:"../node_modules/requestanimationframe/app/requestAnimationFrame",jqueryplugins:"utils/jqueryplugins",markup:"./markup/markup",lexer:"./markup/lexer",patterns:"./markup/patterns"},deps:["jquery","es6-shim","jqueryplugins"]}),require(["jquery","debugmode","renderer","state","engine","passages","utils","utils/selectors","utils/dialog","macros","macrolib/values","macrolib/commands","macrolib/datastructures","macrolib/stylechangers","macrolib/enchantments","macrolib/links","repl"],function($,DebugMode,Renderer,State,Engine,Passages,Utils,Selectors,Dialog){function __HarloweEval(text){return eval(text+"")}function printJSError(e){var t=e.name+": "+e.message;if(e.stack){var n=e.stack.split("\n"),r=n.findIndex(function(e){return e.includes("__HarloweEval")});t+="\n"+n.slice(0,r).join("\n").replace(/\([^\)]+\)/g,"")}return"<div style='font-family:monospace;overflow-y:scroll;max-height:30vh'>```"+t+"```</div>"}var _installHandlers=function(){$(document.documentElement).on("keydown",function(e){13===e.which&&"0"===e.target.getAttribute("tabindex")&&$(e.target).trigger("click")}),Engine.options.debug&&DebugMode(),_installHandlers=null};!function(e){window.onerror=function(t,n,r,i,o){window.onerror=e,Utils.storyElement.parent().append(Dialog("Sorry to interrupt, but this page's code has got itself in a mess.\n\n"+printJSError(o)+"\n(This is probably due to a bug in the Harlowe game engine.)",void 0,function(){})),"function"==typeof e&&e.apply(void 0,arguments)}}(window.onerror),Utils.onStartup(function(){var e=$(Selectors.storyData);if(0!==e.length){var t=e.attr("options");t&&t.split(/\s/).forEach(function(e){Renderer.options[e]=Engine.options[e]=!0});var n=e.attr("startnode");Renderer.options.ifid=Engine.options.ifid=e.attr("ifid"),n||(n=[].reduce.call($(Selectors.passageData),function(e,t){var n=t.getAttribute("pid");return n<e?n:e},1/0)),n=$(Selectors.passageData+"[pid="+n+"]").attr("name"),_installHandlers();var r=!1;$(Selectors.script).each(function(e){try{__HarloweEval($(this).html())}catch(t){r||(r=!0,Utils.storyElement.parent().append(Dialog("There is a problem with this story's "+Utils.nth(e+1)+" script:\n\n"+printJSError(t),void 0,function(){})))}}),$(Selectors.stylesheet).each(function(e){$(document.head).append('<style data-title="Story stylesheet '+(e+1)+'">'+$(this).html())});var i=!Engine.options.debug&&State.hasSessionStorage&&sessionStorage.getItem("Saved Session");if(i&&!0===State.deserialise(i))return void Engine.showPassage(State.passage,!1);Engine.goToPassage(n)}})}),define("harlowe",function(){}),require(["harlowe"])}();
</script>
</body>
</html>