Untitled
3 years ago in HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>you died but i&#39;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&#39;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&#39;m very sorry but... Let&#39;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&#39;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:
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse1.mm.bing.net%2Fth%3Fid%3DOIP.SaWAzow3FjdcHRoANhPMnwHaL8%26pid%3DApi&amp;f=1&quot; width=&quot;150&quot; height=&quot;200&quot; alt=&quot;male&quot;&gt;
[[male]]
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse3.mm.bing.net%2Fth%3Fid%3DOIP.XLNRmJVYrML1V-mK0Ydi2gHaO0%26pid%3DApi&amp;f=1&quot; width=&quot;150&quot; height=&quot;240&quot; alt=&quot;female&quot;&gt;
[[female]]
this isn&#39;t really my thing but you can also choose to respawn as a
&lt;img src=&quot;https://rule34.xxx/thumbnails/3558/thumbnail_6e0ed5f4bf261852793d97062f6e8e9b.jpg?4017230&quot; width=&quot;150&quot; height=&quot;200&quot; alt=&quot;futa&quot;&gt;
[[futa]] (yes futa&#39;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 &#39;buid&#39; yourself. see it as a character creator just like in those video games you humans play so much. one&#39;s you choose you can&#39;t change, unless you buy the shapeshifting power later
&lt;img src=&quot;https://himg.rule34.xxx//images/3392/da1b44b4e31448b7d0781e25fcbee5df.png?3823398&quot; alt=&quot;2 futa&quot;&gt;
[[dick size for males]]
&lt;img src=&quot;https://img.rule34.xxx//images/3042/0294a8d04bcd48e3b0931821d65fe800.jpeg?3410557&quot; alt=&quot;2 futa&quot;&gt;
[[clothing for males]]
&lt;img src=&quot;https://rule34.xxx//samples/3564/sample_0c98e7e1a2fd911cb9d09e7c59ad61d99890ad0d.jpg?4024868&quot; alt=&quot;2 futa&quot;&gt;
[[body type for males]]
are you done?
[[yes-&gt;worldbuilding]] </tw-passagedata><tw-passagedata pid="3" name="female" tags="" position="806,50" size="100,100">you have $points points
now you may &#39;buid&#39; yourself. see it as a character creator just like in those video games you humans play so much. one&#39;s you choose you can&#39;t change, unless you buy the shapeshifting power later
would you like to start with your...
&lt;img src=&quot;https://img.rule34.xxx//images/3522/51056cf7eff7680fd32a8a39bfc2e81b.jpeg?3976160&quot; alt=&quot;2 futa&quot;&gt;
[[ass size for females]]
&lt;img src=&quot;https://rule34.xxx//samples/3517/sample_27102a26a99aa46ae051ea8d8f49c95a.jpg?3969694&quot; alt=&quot;2 futa&quot;&gt;
[[breast size for females]]
&lt;img src=&quot;https://img.rule34.xxx//images/3409/ca0ae725ba9ef29da7f502e30bc2ad73.png?3842769&quot; alt=&quot;2 futa&quot;&gt;
[[thighs size for females]]
&lt;img src=&quot;https://img.rule34.xxx//images/3561/a9295e8cf0fccee72a41a3d684c8baca.jpeg?4021494&quot; alt=&quot;2 futa&quot;&gt;
[[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-&gt;worldbuilding]] </tw-passagedata><tw-passagedata pid="4" name="futa" tags="" position="629,129" size="100,100">you have $points points
now you may &#39;buid&#39; yourself. see it as a character creator just like in those video games you humans play so much. one&#39;s you choose you can&#39;t change, unless you buy the shapeshifting power later
would you like to start with your...
&lt;img src=&quot;https://img.rule34.xxx//images/3522/51056cf7eff7680fd32a8a39bfc2e81b.jpeg?3976160&quot; alt=&quot;2 futa&quot;&gt;
[[ass size for futa&#39;s]]
&lt;img src=&quot;https://rule34.xxx//samples/3517/sample_27102a26a99aa46ae051ea8d8f49c95a.jpg?3969694&quot; alt=&quot;2 futa&quot;&gt;
[[breast size for futa&#39;s]]
&lt;img src=&quot;https://img.rule34.xxx//images/3409/ca0ae725ba9ef29da7f502e30bc2ad73.png?3842769&quot; alt=&quot;2 futa&quot;&gt;
[[thighs size for futa&#39;s]]
&lt;img src=&quot;https://rule34.xxx//samples/3555/sample_82d3558de6c6765b161f8d8ae7efed66.jpg?4013662&quot; alt=&quot;2 futa&quot;&gt;
[[dick size for futa&#39;s]]
anything else that can be added to your body or personality can be bought with points later
are you done?
[[yes-&gt;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 &quot;no etc&quot; button if you wish to deselect a drawback or power. if you did not select it in the first place and don&#39;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]]
&lt;img src=&quot;https://rule34.xxx//samples/2828/sample_aa3b99006d1d52ed9aa4ed11f7f428d4.jpg?3155617&quot; alt=&quot;2 futa&quot;&gt;
[[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**
&lt;img src=&quot;https://rule34.xxx//samples/413/sample_03db5e1f5de1e8d1a45a21b0919953a5.jpg?3934347&quot; alt=&quot;2 futa&quot;&gt;
[[futadom]]: **do not select if you are a futa or if futa&#39;s don&#39;t exist in your world! can be upgraded** futa&#39;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&#39;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&#39;s will ignore humans most of the time unless they feel horny or lonely or are just plain sadistic.
**15 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3433/af3472c45f6bbc954eb63c2187c7699b.jpeg?3870448&quot; alt=&quot;2 futa&quot;&gt;
[[futa overpower]]: **do not select if you are a futa or if futa&#39;s don&#39;t exist in your world! can be upgraded** futa&#39;s are generaly speaking physically more powerful, faster and just overall better than non-futa&#39;s. they will also be above avarage non-futa IQ. this will make it (even) harder to compete with futa&#39;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**
&lt;img src=&quot;https://himg.rule34.xxx//images/3327/de3bb6ac96d7454cd7be8f818071e257.jpeg?3748354&quot; alt=&quot;2 futa&quot;&gt;
[[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**
&lt;img src=&quot;https://img.rule34.xxx//images/3564/f1a5a34bf7de01b629ce32a66f4fbe9e.png?4025224&quot; alt=&quot;2 futa&quot;&gt;
[[extreme libido]]: **can be upgraded** you will always be horny even a few minutes after orgasm.
**10 points**
&lt;img src=&quot;https://rule34.xxx//samples/3563/sample_745f64dddafab8953070e43d1b477884.jpg?4024322&quot; asdf&gt;
[[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**
&lt;img src=&quot;https://rule34.xxx//samples/3560/sample_eb4a4717f8039d931e06ae04fac10081b4458e3a.jpg?4020661&quot; asdf&gt; [[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**
&lt;img src=&quot;https://img.rule34.xxx//images/3553/af334b181a49c416c851f8cbbdec8508.jpeg?4019246&quot; asdf&gt;
[[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**
&lt;img src=&quot;https://rule34.xxx//samples/3564/sample_7b7b1fca83c5e4b8e7082ed88803e69b62a21074.jpg?4024506&quot; g&gt;
[[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**
&lt;img src=&quot;https://himg.rule34.xxx//images/3249/fb5becaef81002c1319785305e4433d4.jpeg?3965760&quot; f&gt;
[[easy prey]] it will become common knowledge you are easily hypnotised. **5 points can be upgraded**
&lt;img src=&quot;https://rule34.xxx//samples/3516/sample_09c4c57879e6755b9e645930b4ac4e05.jpg?3967669&quot; f&gt;
[[love hurts]] physical and mental pain will turn you on. this is quite dangerous, don&#39;t get addicted to cutting yourself! **10 points**
&lt;img src=&quot;https://rule34.xxx//samples/3568/sample_e5b46b5909c61582f933af8f86c67434.jpg?4030060&quot; f&gt;
[[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&#39;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&#39;t 100% visible again they will start off at the percentage they are at and start to &#39;disapear&#39;**20 points**
&lt;img src=&quot;https://rule34.xxx//samples/3561/sample_9e159f911cd08081c14a414b81a6c697.jpg?4021976&quot; f&gt;
[[sex sells]] or buys. sometimes you can&#39;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&#39;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 &quot;no etc&quot; button if you wish to deselect a drawback or power. if you did not select it in the first place and don&#39;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]]
&lt;img src=&quot;https://rule34.xxx/thumbnails/3482/thumbnail_8775af662be7ce81cfc2631240ad8189.jpg?3925578&quot; 2 futa&gt;
[[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 &#39;taboo&#39; stuff. you will also be able to convince policemen to let what you did slide as long as you didn&#39;t hurt anyone.**-10 points can be upgraded**
&lt;img src=&quot;https://rule34.xxx//samples/3447/sample_7e1e900a73832ecc12afc8ed199c48ed5e81e076.jpg?3884845&quot; 2 futa&gt;
[[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**
&lt;img src=&quot;https://img.rule34.xxx//images/3419/b7e2384e0378ee0e44958b61fd8ee28e.png?3853034&quot; f&gt;
[[attractiveness]] you will be considered a 7/10 by most people. **-5 points can be upgraded**
&lt;img src=&quot;https://img.rule34.xxx//images/3351/0627582580d0aca7845b797193707fe3.jpeg?3775451&quot; f&gt;
[[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&#39;s strength? still a no. **-15 points can be upgraded**
&lt;img src=&quot;https://rule34.xxx//samples/3471/sample_56d09ff49e76eb1a5c1ef64cf2b5ebc3.jpg?3913536&quot; f&gt;
[[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&#39;ll fall to the ground. you&#39;ll be able to levitate 3 meters max above the surface (about 10 feet) **-5 points can be upgraded**
&lt;img src=&quot;https://img.rule34.xxx//images/3517/ed947eeeaa58b639bdcb182dbbc36b50.png?3973760&quot; f&gt;
[[hidden talent]] you will be very good at 1 form of art and 1 sport excluding self defence sports. **-7 points can be upgraded**
&lt;img src=&quot;https://rule34.xxx//samples/2471/sample_050f3adb1f202f99f7b9d476e68c8fbd.jpg?2740230&quot; f&gt;
[[forever young]] you won&#39;t age past the point you want to age, that age is permanent (if you don&#39;t upgrade) but you can still die from any other cause. **-10 points can be upgraded**
&lt;img src=&quot;https://himg.rule34.xxx//images/3488/7b5b250aecf84d04e2cf1dafee3d78ba.png?3931340&quot; f&gt;
[[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&#39;t make you be able to regrow limbs or heal faster. **-10 points can be upgraded**
&lt;img src=&quot;https://rule34.xxx//samples/3243/sample_b72a70caee6e766e8b04491adaa4d1e6.jpg?3646166&quot; f&gt;
[[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**
&lt;img src=&quot;https://himg.rule34.xxx//images/1059/47ec5a42e7452e7ada63144c79a5da14880eaa03.jpg?1058877&quot; f&gt;
[[public]] the same as normalize but you can do it outside now. **-10 points can be upgraded**
&lt;img src=&quot;https://img.rule34.xxx//images/3566/d5b8e1bdc1266c46518ced8ce9929cae.jpeg?4027130&quot; f&gt;
[[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**
&lt;img src=&quot;https://img.rule34.xxx//images/3132/1a8b1817cbb44399e54bceecc78f360a.jpeg?3517894&quot; f&gt;
[[name calling]] when you say someone&#39;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**
&lt;img src=&quot;https://img.rule34.xxx//images/3562/c36b19c857f958805e7219c3b8f1b74f.jpeg?4023122&quot; g&gt;
[[inbetween]] you can now make your dick or pussy dissapear or appear at will. for those who don&#39;t want a dick at the moment they are getting fucked **-5 points futa&#39;s only**
&lt;img src=&quot;https://img.rule34.xxx//images/3568/79c7365d9940fda56aa6a98fc8da4aca.png?4030435&quot; f&gt;
[[shorter pregnancies]] your kids will be born after only 5 months **-5 points can be upgraded**
&lt;img src=&quot;https://img.rule34.xxx//images/3418/6197910c9b5b7da8c07be5bfee781a27.jpeg?3852019&quot; f&gt;
[[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
&lt;img src=&quot;https://rule34.xxx//samples/1365/sample_dc01ef28b034a5446cc41b8a378161a2.jpg?2708068&quot; asdf&gt;
are you sure?
[[yes-&gt;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&#39;s. futa&#39;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&#39;s would just ignore most humans. humans won&#39;t become slaves but they can&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3459/sample_eb97a215a5bda2eb5b2f3b1c587cf1de.jpg?3913320&quot; f&gt;
are you sure?
[[yes-&gt;the drawbacks]]
(set: $drop to 10)
(set: $points to $points + $drop)
upgrade:[[futa overpower2]] futa&#39;s will become far superior to other humans. they won&#39;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3565/sample_2c4dd9dad9b77e6665667626a212f1a5.jpg?4026627&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3558/f208341e4db8a867d35f1192ab0cd62e.png?4017327&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/340/e8a5e77689d2b9f87ee48edfff7fd187.jpeg?3972894&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://img.rule34.xxx//images/3113/d7be3b02fb21ed1c795c7b7dca417522.jpeg?3496341&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;s? if so, what percentage of the world population must be futa? **no points can be gained or lost here**
&lt;img src=&quot;https://img.rule34.xxx//images/3432/db92090eb4dc0fc7da32689b79d28d7f.png?4029919&quot; a&gt;
[[no futa&#39;s-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3517/sample_0731f7a553305c188be93683cbd6eee8.jpg?3969849&quot; a&gt;
[[10%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3558/sample_9b134b6a4941691d69fbc2ba304758d1.jpg?4017334&quot; a&gt;
[[33,33%-&gt;worldbuilding]]
&lt;img src=&quot;https://img.rule34.xxx//images/3559/3b5aed406644d82348da9dabe977818d.jpeg?4020156&quot; &gt;
[[50%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3264/sample_1a7263a35007dcffa8fe5f642eda5829.jpg?4029683&quot; &gt;
[[80%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3503/sample_fdc034955c6f08fcd6d9df407b076461d6629691.jpg?3950476&quot; g&gt;
[[100%-&gt;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**
&lt;img src=&quot;https://rule34.xxx//samples/3566/sample_19c911a363925c7e298e7a2cfac5e6db.jpg?4027580&quot; s&gt;
[[only me-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3517/sample_0731f7a553305c188be93683cbd6eee8.jpg?3969849&quot; a&gt;
[[10%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3558/sample_9b134b6a4941691d69fbc2ba304758d1.jpg?4017334&quot; a&gt;
[[33,33%-&gt;worldbuilding
&lt;img src=&quot;https://img.rule34.xxx//images/3559/3b5aed406644d82348da9dabe977818d.jpeg?4020156&quot; &gt;
[[50%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3264/sample_1a7263a35007dcffa8fe5f642eda5829.jpg?4029683&quot; &gt;
[[80%-&gt;worldbuilding]]
&lt;img src=&quot;https://rule34.xxx//samples/3503/sample_fdc034955c6f08fcd6d9df407b076461d6629691.jpg?3950476&quot; g&gt;
[[100%-&gt;worldbuilding]]</tw-passagedata><tw-passagedata pid="15" name="body type for males" tags="" position="354,139" size="100,100">you have $points points
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2Fi.stack.imgur.com%2FwTWJG.jpg&amp;f=1&amp;nofb=1&quot; cloth&gt;
[[normal male body]]
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse4.mm.bing.net%2Fth%3Fid%3DOIP.QnTySyNcqwllxfmUB773UgHaEK%26pid%3DApi&amp;f=1&quot; cloth&gt;
[[fat male body]] **5 points** you&#39;d do this to yourself for 5 meager points? well if you really need them.
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fi.ytimg.com%2Fvi%2FYAn8FVUp090%2Fmaxresdefault.jpg&amp;f=1&amp;nofb=1&quot; cloth&gt;
[[muscular male body]] **-7 points**</tw-passagedata><tw-passagedata pid="16" name="ass size for futa&#39;s" tags="" position="517,268" size="100,100">you have $points points
&lt;img src=&quot;https://himg.rule34.xxx//images/3130/ae301e8f28aea935568e6d47cf5a16bba2fd7706.jpg?3515556&quot; iets&gt;
[[small futa ass]] **5 points** why tho?
&lt;img src=&quot;https://himg.rule34.xxx//images/2579/55d18c52da9cc538c9edd4f5ed9e3a7b6586ae4b.jpg?2864509&quot; iets&gt;
[[kinda big futa ass]]
&lt;img src=&quot;https://rule34.xxx//samples/3446/sample_20bf7338389904da557a3cf435d276cb.jpg?3888227&quot; iets&gt;
[[huge futa ass]] **-5 points**</tw-passagedata><tw-passagedata pid="17" name="breast size for futa&#39;s" tags="" position="756,269" size="100,100">you have $points points
&lt;img src=&quot;https://himg.rule34.xxx//images/3546/d163a70a8bfa223adf8213c8df8a9cc3.jpeg?4003287&quot; sdka&gt;
[[small futa boobs]] **5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3551/sample_ac772046758b041696cde17acd0d1a53.jpg?4009115&quot; sdka&gt;
[[cup b,c,d or e futa boobs]] **-5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3563/sample_a8ee908151e969b7f2abd9dc9cbbe0a1.jpg?4024216&quot; sdka&gt;
[[anything above e futa boobs]] **-7 points**</tw-passagedata><tw-passagedata pid="18" name="thighs size for futa&#39;s" tags="" position="633,265" size="100,100">you have $points points
&lt;img src=&quot;https://rule34.xxx//samples/2947/sample_4bbdae7a6a083433f9bd2456d02c21b8deab4c80.jpg?3293367&quot; iskd&gt;
[[small futa]] **+5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3495/sample_f4b96bd4ead0826e1255de32d88eae57.jpg?3939389&quot; iskd&gt;
[[thick futa]] **-3 points**
&lt;img src=&quot;https://img.rule34.xxx//images/1464/2f8f173c914d5263e1c559a0850632c9b5508392.png?1542986&quot; iskd&gt;
[[huge futa]] **-5 points**</tw-passagedata><tw-passagedata pid="19" name="dick size for futa&#39;s" tags="" position="633,389" size="100,100">you have $points points
&lt;img src=&quot;https://rule34.xxx//samples/3563/sample_fbccdd2263228440cc1c42738003b6fc.jpg?4023842&quot; 2 futa&gt;
[[small futa dick]] **5 points** useless, but whatever floats your boat.
&lt;img src=&quot;https://himg.rule34.xxx//images/3551/cb94fe4052c27ba178ae129c12d7a238.jpeg?4009489&quot; 2 futa&gt;
[[normal futa dick]]
&lt;img src=&quot;https://rule34.xxx//samples/3497/sample_21f56adb112bda5418390a16e53f447c.jpg?3941410&quot; 2 futa&gt;
[[big futa dick]] **-5 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3563/fa60641958769d567eb04247b1973985.jpeg?4023627&quot; 2 futa&gt;
[[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
&lt;img src=&quot;https://img.rule34.xxx//images/3520/77b00d796a21c2ff263f51ec3b6db5fd.png?3974425&quot; iets&gt;
[[smal ass]] **+5 point**
&lt;img src=&quot;https://himg.rule34.xxx//images/3559/057a520bf0c1713d55863bfc97a116c8.png?4020137&quot; iets&gt;
[[kinda big ass]]
&lt;img src=&quot;https://rule34.xxx//samples/3503/sample_e90b33f07dabd11b859a0e87decb234d.jpg?3950372&quot; iets&gt;
[[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
&lt;img src=&quot;https://img.rule34.xxx//images/3557/6d6a08b74034758572ae4ea8b846c149.jpeg?4016477&quot; sdka&gt;
[[small female]]
**+ 5 points** if you&#39;re into this
&lt;img src=&quot;https://himg.rule34.xxx//images/3441/b6d14dccef000748232a7d98ea1cd89fdc91c952.jpg?3878979&quot; sdka&gt;
[[cup b,c,d or e female]]
**-5 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3547/b2f2dd75d1d6fe9d11d870e54768398b.jpeg?4024438&quot; sdka&gt;
[[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
&lt;img src=&quot;https://rule34.xxx//samples/3564/sample_f06ff2f6cf08b2ab156a6d151bf51ada.jpg?4025341&quot; iskd&gt;
[[small thighs]] **+ 5 points**
&lt;img src=&quot;https://himg.rule34.xxx//images/3563/149cb96b1d852cbdb15543eb2beb1966.jpeg?4023436&quot; iskd&gt;
[[thick thighs]] **-3 points**
&lt;img src=&quot;https://himg.rule34.xxx//images/3564/dfaed0c70f68254c877e751ce4341e89.png?4025078&quot; iskd&gt;
[[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
&lt;img src=&quot;https://img.rule34.xxx//images/3563/43ae1acbc6248d4905663285829498fe.jpeg?4024471&quot; iest&gt;
[[normal female]]
**-5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3553/sample_22c362f457429a6a2d8d252d219203fd.jpg?4019227&quot; iest&gt;
[[skirts only female]]
**+5 points** the superior choose of course. you still get upper body clothing of course. no pants or jeans tho.
&lt;img src=&quot;https://rule34.xxx//samples/3561/sample_3edfa3cbb5b7c342eb77b9fed93e14e2c4864342.jpg?4022176&quot; iest&gt;
[[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
&lt;img src=&quot;https://rule34.xxx//samples/3496/sample_fc4abdbafd5e00e49fef34b188a0d727.jpg?3941187&quot; 2 futa&gt;
[[small male dick]] why tho? **5 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3556/2d8a33eb78f4c05a670ce68b8f28bfb3.jpeg?4014236&quot; 2 futa&gt;
[[normal male dick]]
&lt;img src=&quot;https://img.rule34.xxx//images/3556/62f1f9fb91f23684e75a597bc0d60239.jpeg?4014437&quot; 2 futa&gt;
[[big male dick]] **-5 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3354/ff4e47e701ce7e067d35796d73990ba3.jpeg?3778342&quot; 2 futa&gt;
[[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
&lt;img src=&quot;https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fs-media-cache-ak0.pinimg.com%2F736x%2F4a%2F80%2F46%2F4a80461f5014b4de920bde09f03cc605.jpg&amp;f=1&amp;nofb=1&quot; cloth&gt;
[[normal male clothes]]
&lt;img src=&quot;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&amp;f=1&amp;nofb=1&quot; cloth&gt;
[[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
&lt;img src=&quot;https://rule34.xxx//samples/2198/sample_011071808049d16bdb7c260f66902957.jpg?2385531&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;t show any signs except for when they actually rape you, you will still be able to defend yourself if you aren&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3566/sample_fdb3075863cf2971bd267a0794bff642.jpg?4026695&quot; f&gt;
are you sure?
[[yes-&gt;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 &quot;endless sex&quot; 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
&lt;img src=&quot;https://rule34.xxx//samples/3566/sample_5cfbde725e80c6357112d308357d9e464d0e0be1.jpg?4026802&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/1555/sample_6a28336d87c15e22a73307fe3e0a7a3c.jpg?2708004&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;s as a collective, making humans slaves of all futa&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3322/sample_0bc5ccdaa3e0af62b315693d495f823b.jpg?3740804&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3496/sample_fdb8014a685f30fd75c3266520e5a165.jpg?3940498&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3530/sample_08ee60c31869ecfcbb43ec7d8ae278e9.jpg?3985370&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3567/sample_674ffdd351b2527639e9c8692ba5e2a3.jpg?4027715&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3564/769394506a4701ccdda7f8efb8df5f2e.jpeg?4024617&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;t get fired if you get raped while working or anything like that. onlookers won&#39;t even raise an eyebrow and will act like you aren&#39;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
&lt;img src=&quot;https://img.rule34.xxx//images/3399/676c43d427e608317be2ed82c0f07f07.jpeg?3831878&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;t get in trouble. you can&#39;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 &quot;stretch&quot; 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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/1884/sample_19df904e457d590d6b56b684e4cd5fed.jpg?2039333&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3565/a6c6dd4e92520397d4baa2f47888b70a.png?4025572&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3547/sample_0e7acce795c853b634502d1ee1fe2455.jpg?4005023&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3178/sample_e519f6915b6c36a3ecc122cc3abc2c7c.jpg?3570308&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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&#39;t refuse them in any way. if you can still think straight you can just say no to the animals and they&#39;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-&gt;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3454/sample_316898e807c37bbcc8f5b51ecbf1f768.jpg?3893563&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3268/f1eb57ed4e1f4254c84024e0d0f7058b.jpeg?3677372&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/2949/sample_8640030cec246de26c4909f0c2549ded.jpg?3395506&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3549/7971cd92475288239e955ca54bb825ee.png?4017983&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;t above the law and can still be arrested as long as you don&#39;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&#39;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3485/sample_f740f70aa11d2a90faffe0ddac8aca79.jpg?3928841&quot; f&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3257/35ab5ceb956b3592c7048e213e26628a.jpeg?3673316&quot; a&gt;
are you sure?
[[yes-&gt;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 &quot;no&quot; and charisma2 will make them accept a &quot;no&quot; 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
&lt;img src=&quot;https://rule34.xxx//samples/3566/sample_91bab13af81a4adbbfc3158306344e5e.jpg?4026696&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3566/sample_41ac491c0b67537c0afd83a9cd3ad503.jpg?4027347&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3450/sample_b6a6844b4f2088b500147fe66842f8f6.jpg?3889000&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;t get hungry or need more sleep if you spend a lot of time in the time stopped zone. people won&#39;t ever find out you killed the person you killed because you don&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3172/80ed2341ee7a9a27c34e64e99fe9cdef.jpeg?3563796&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3498/40c11a54c0ec2c63309ed8d6d2cfd380b31a9d4b.jpg?3942711&quot; a&gt;
are you sure?
[[yes-&gt;powers and such]]
(set: $drop to -5)
(set: $points to $points + $drop)
&lt;img src=&quot;https://rule34.xxx//samples/3521/sample_5d8ca64f6a1fbf8c16a722d796b135af.jpg?3975384&quot; f&gt;
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
&lt;img src=&quot;https://rule34.xxx//samples/3440/sample_52bac372c78be13d73e7257cc51f495c.jpg?3878176&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;t give yourself superpowers. for example, you can&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3244/sample_81a009a16b9d14eaf212aa389b24e2e27520bbc4.jpg?3966172&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3318/sample_ba4e1456f8d3f8ab1833733f745d7f13.jpg?3735946&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3563/2a953afc2c41959571c8a8e7382b54d1.jpeg?4023693&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;t turn someone in a rock for a day if they don&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3384/sample_0e8b19f1ca8658e2cd01649c2f0935c7.jpg?3814980&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3553/ce65f1c400328ab4b2e45340cc0e3c36.png?4011792&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://img.rule34.xxx//images/3402/374faf4dd6559ccb16d597b199472fba.png?3835220&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://himg.rule34.xxx//images/3537/b941bcde6f30cf6d3a8632ac1d85c901.jpeg?3993123&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://himg.rule34.xxx//images/3480/1bdb5e00beb03b0eed5972f3e84bd5fd.jpeg?3922545&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3501/sample_9217feaff55bd3bf9695d955924e6627.jpg?3947531&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3537/sample_2bc5df1c59e991cf266de50d2fd43037.jpg?3993155&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3514/702f6ed334a3f0bd7f227f152636086d43ba6726.jpg?3962647&quot; a&gt;
(yes i know this is higher than you can go with that power, idc nice pic)
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3558/sample_7bca27fea1a163bcebe7919205554784.jpg?4017195&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3551/267bba40d4fd9ced167d4f75582df071.jpeg?4009812&quot; a&gt;
are you sure?
[[yes-&gt;powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop)
upgrade:[[forever young3]] you can change anyone&#39;s age if they consent to it. unlike you, they will die at the date they normally would&#39;ve died from old age, if they don&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3565/sample_8b34eb415fe582159b696bba3d68c644.jpg?4026171&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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&#39;t worry about points too much, you can always come back later and choose drawbacks to get more points
[[here-&gt;list of races]] is a list of all (still incomplete) race&#39;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.
&lt;img src=&quot;https://rule34.xxx//samples/3565/sample_b7fcb1dc601341402d2aa375d5fbbfa9.jpg?4026634&quot; f&gt;
[[futa options]] **do not go here if you are a futa**
&lt;img src=&quot;https://rule34.xxx//samples/3425/sample_e88d04ce1358c8ec22a6c8ba2a8eb979.jpg?4028044&quot; f&gt;
[[futa options for a futa]] **only for futa&#39;s**
&lt;img src=&quot;https://img.rule34.xxx//images/3453/c7424f5cec64a85c359b718547e1e14a.jpeg?3892697&quot; f&gt;
[[companion]] **very much still in BETA/available-ish**
&lt;img src=&quot;https://himg.rule34.xxx//images/3553/a54234f7a4d6bec3655e3810a71f5303.jpeg?4011237&quot; f&gt;
[[worldchanges]] **very much still in BETA**
&lt;img src=&quot;https://rule34.xxx//samples/3534/sample_c5d3851c0056ddbd55d30e0bc766556a.jpg?3989870&quot; f&gt;
[[the drawbacks]] **somewhat done**
&lt;img src=&quot;https://rule34.xxx//samples/2969/sample_d27043ac6cb9ef190685eb55a6cc66cb.jpg?3318974&quot; f&gt;
[[powers and such]] **somewhat done**
</tw-passagedata><tw-passagedata pid="151" name="normalize" tags="" position="1675,486" size="100,100">you have $points points
&lt;img src=&quot;https://img.rule34.xxx//images/3492/5eb88013a1bb627ed930b96af2a5adea.png?3936855&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;s completely normal whatever you are doing. you can now do anything that doesn&#39;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
&lt;img src=&quot;https://img.rule34.xxx//images/3568/4c116d396d0f4f46eb8c2763a1647695.jpeg?4029117&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3464/sample_826ad577ac2e4fae14d7e6f2338ef850.jpg?3966703&quot; f&gt;
are you sure?
[[yes-&gt;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&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3467/sample_c2b3ea4274e103445b88b710373427ea.jpg?3908812&quot; f&gt;
are you sure?
[[yes-&gt;powers and such]]
(set: $drop to -10)
(set: $points to $points + $drop) you have $points points
upgrade:[[name calling2]] when you say someone&#39;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&#39;s birthday very weird if it couldn&#39;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
&lt;img src=&quot;https://img.rule34.xxx//images/3528/8134978cbf92943816a8d48a2091f448.jpeg?3983173&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3547/031d8c3bebc7ff656313fba6df7835bc.jpeg?4005092&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3524/sample_72b48962adf29bcfa6eaccdd4ff025e795c82e40.jpg?3978411&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/1001/4a60d6113ea4c2028490ce042c0c0ebcf63803b1.png?1000982&quot; f&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3511/e7c79f178f59bd79bd7dd2b6b614a691.jpeg?3959304&quot; g&gt;
are you sure?
[[yes-&gt;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-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/3562/cf7690eff498a04dd0fd0c009accbe98.jpeg?4023294&quot; a&gt;
are you sure?
[[yes-&gt;the drawbacks]]
(set: $drop to 5)
(set: $points to $points + $drop)
upgrade:[[easy prey2]] you will be extremely easily talked into things you don&#39;t want to do, limited to things that don&#39;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
&lt;img src=&quot;https://rule34.xxx//samples/3487/sample_4f4a88959a72d73896052a58fba4fcf4.jpg?3930612&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3560/sample_73d014e152bccb7652eebdeb6c3fb342.jpg?4020481&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://img.rule34.xxx//images/2668/7d67f4ea20643d670b2cc65af78b8697.png?2967909&quot; a&gt;
are you sure?
[[yes-&gt;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&#39;s can&#39;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3411/sample_446e95f42327a94f67d53cc7a65b1f80.jpg?3844681&quot; a&gt;
are you sure?
[[yes-&gt;the drawbacks]]
(set: $drop to 7)
(set: $points to $points + $drop)
upgrade:[[sex sells3]] everything more expensive than 1000 euro&#39;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&#39;t cause you any permanent damage, can still get you pregnant. look at the bright side, this way you won&#39;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&#39;t buy something that requires multiple sexual acts or more from someone who can&#39;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-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3546/sample_9dc44d7f549be41f933a49fa2ba4e064.jpg?4003188&quot; a&gt;
are you sure?
[[yes-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3560/sample_488f1b2ed545da0d6ba73c6171c34c4b.jpg?4020757&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3550/sample_b08dac53004192d7770076271cbd6118f6e72069.jpg?4008145&quot; a&gt;
are you sure?
[[yes-&gt;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 &quot;no lamia&quot; (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
&lt;img src=&quot;https://rule34.xxx//samples/3298/sample_6163b31b56a4cd797f7ebbb6326584f86c0e9887.jpg?3711625&quot; t&gt;
[[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**
&lt;img src=&quot;https://rule34.xxx//samples/3415/sample_30a54529e607448d5f75eec341cd9e23.jpg?3848570&quot; t&gt;
[[succubus/incubus]] demon&#39;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**
&lt;img src=&quot;https://img.rule34.xxx//images/3498/67f33788702f9c6a61a74f86c4ce903d.png?3942516&quot; t&gt;
[[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**
&lt;img src=&quot;https://himg.rule34.xxx//images/817/352a99237dab01fe360b941f95021e77.jpeg?3010425&quot; t&gt;
[[human]] a human, can do a lot of things for you. can use magic and is physically pretty strong. **-5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3450/sample_3e417af145474040f673c92cb04b91899307f888.jpg?3888945&quot; t&gt;
[[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&#39;s size and more later in &quot;worldchanges&quot;.**-5 points**
&lt;img src=&quot;https://rule34.xxx//samples/3175/sample_d12172355b5f3960d85c17106afc55de.jpg?3566884&quot; t&gt;
[[goblin gang]] you are more their companion than they yours. well... you are more of a breeding slave to them. you won&#39;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&#39;t ever grow to a size where you can&#39;t function as a human anymore. magic. they are strong in numbers and some of them can use magic. **5 points**
&lt;img src=&quot;https://img.rule34.xxx//images/3300/4139b2ddb7596d7449f08ef950fc8538.jpeg?3714179&quot; t&gt;
[[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&#39;t tell her/him i told you that, she/he thinks nobody knows. **-10 points**
&lt;img src=&quot;https://rule34.xxx//samples/3522/sample_be037b51c3b54f627be9acbd5b1982b0.jpg?3976055&quot; t&gt;
[[dog]] a dog of your choice, always male. **-3 points**
&lt;img src=&quot;https://rule34.xxx//samples/3541/sample_b19307a17c517407fd4b4d4fe1d2d5cd.jpg?4019847&quot; t&gt;
[[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**
&lt;img src=&quot;https://img.rule34.xxx//images/3264/aa6823a20e9f13aaa8328ce263d55ae0.png?3671618&quot; t&gt;
[[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&#39;t lead to anything (yet)**
&lt;img src=&quot;https://rule34.xxx//samples/3558/sample_d9f8c94642a784a5ac062eec7ebac7ab.jpg?4016843&quot; f&gt;
[[the magic]] all magic systems can be chosen here
&lt;img src=&quot;https://rule34.xxx//samples/3561/sample_677a8f4111b8ef899573034824fd754a.jpg?4021887&quot; f&gt;
[[the fantasy races]] what extra fantasy races will exist in this world? (succubi/incubi, high elves, loli&#39;s, lamia, catgirls, tentacle monsters and goblins will exist no matter what you choose. their description can be found in [[list of races]]
&lt;img src=&quot;https://rule34.xxx//samples/3567/sample_3405c9cfe4be5aec2594b45249230fb8.jpg?4029001&quot; f&gt;
[[a new world]] what new sports/ forms of art will this world bring?
&lt;img src=&quot;https://rule34.xxx//samples/3455/sample_ee6d4e5016c3aabb93cf40348f34c0f3.jpg?3895566&quot; f&gt;
[[public opinion on...]] what will public opinion be on...
&lt;img src=&quot;https://rule34.xxx//samples/3569/sample_42d4c6ce47ecc91f6d187b9df29bab73.jpg?4031032&quot; h&gt;
[[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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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-&gt;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&#39;t become 3 goblins tho**
every race produce children with every other race. but most won&#39;t, it isn&#39;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&#39;t. can use magic. 50/50 male female ratio unless there are futa&#39;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&#39;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&#39;t look older than a 20 year old one.
tentacle monster: they like to fuck females/futa&#39;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&#39;t get rid of/kill the tentacle monster they will cling on to that person/ become their travel partner. they don&#39;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&#39;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
&lt;img src=&quot;&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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
&lt;img src=&quot;https://rule34.xxx//samples/3558/sample_6a459fc5af94c9fe38eba446bd0f7273.jpg?4017019&quot; a&gt;
are you sure?
[[yes-&gt;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-&gt;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-&gt;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&&lt.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,"&quot;")+'"'}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{"&amp;":"&","&gt;":">","&lt;":"<","&quot;":'"',"&#39;":"'","&nbsp;":String.fromCharCode(160),"&zwnj;":String.fromCharCode(8204)}[e]})},escape:function(e){return e.replace(/[&><"']/g,function(e){return{"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#39;"}[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,"&quot;");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'>&#9658;</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))&&section||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()+'">&sect;');var o=e('<tw-icon tabindex=0 class="undo" title="Undo">&#8630;</tw-icon>').click(function(){return d.goBack()}),a=e('<tw-icon tabindex=0 class="redo" title="Redo">&#8631;</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>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877