all this, [[for him|wake up]].
“don’t [[fall apart|reply]],” she whispers.
her own hands wander on his face\ntraced his eyelashes\nthe spaces occupied by the hollowness\nof his shape, [[chasing away his ghosts|love]]. \nhis dry, chipped lips.
her love, almost a man now, is reduced\nto a boy and he too is grasping strings\nin the air, and she knows that with this\nthe [[twist|the first judgement]] is complete.
when visitors come down they \n[[light the way|necessities]]\nand he remembers that he used to \njuggle little flames around\nhis fingers like matches to\nguide him. he used to be\na [[torchbearer|unforgiving]], both figuratively\nand literally. inspiring, aspiring.
<<timedcontinue 3s>>the [[fall of their home|take back]] was not by\nthe hands an overpowered god \nor a waking deity\nthe fall of their home was not by\nthe wits of an agonising comrade\nor dead ancient ghosts who think\nthey deserve the world.
“but they’ll look for [[someone|the resolution]] to blame.”
he [[sees|death]] it.
// the screenShake macro. Created by dariusk. Edited by 20hz20khz for Twine 1.4.1. Adapted from Emmanuel Turner's article on creating Twine macros. http://eturnerx.blogspot.com/2012/12/how-to-create-custom-macros-in-twine.html\ntry {\n version.extensions['screenShakeMacro'] = {\n major: 1,\n minor: 0,\n revision: 0\n };\n macros['screenShake'] = {\n handler: function (place, macroName, params, parser) {\n var time = parseInt(params[0]);\n if (typeof time !== 'number') {\n time = 1000;\n }\n \n var el = document.body;\n baz = el;\n console.log(baz[0]);\n document.body.className = 'shake';\n if (time > 0){\n setTimeout(function(){document.body.className='';},time);\n };\n \n // we're overriding the fade function. It behaves as usual except it runs screenShake() if time >= 0.\n fade = function (el, options) {\n var current;\n var proxy = el.cloneNode(true);\n var direction = (options.fade == 'in') ? 1 : -1;\n\n el.parentNode.replaceChild(proxy, el);\n\n if (options.fade == 'in') {\n current = 0;\n proxy.style.visibility = 'visible';\n } else current = 1;\n\n setOpacity(proxy, current);\n var interval = window.setInterval(tick, 25);\n\n function tick() {\n current += 0.05 * direction;\n\n setOpacity(proxy, Math.easeInOut(current));\n\n if (((direction == 1) && (current >= 1)) || ((direction == -1) && (current <= 0))) {\n console.log('swapping fader proxy out');\n el.style.visibility = (options.fade == 'in') ? 'visible' : 'hidden';\n proxy.parentNode.replaceChild(el, proxy);\n delete proxy;\n window.clearInterval(interval);\n\n if (options.onComplete) options.onComplete();\n\n if (time >= 0) {\n time = -1;\n }\n\n }\n };\n\n function setOpacity(el, opacity) {\n var percent = Math.floor(opacity * 100);\n\n // IE\n el.style.zoom = 1;\n el.style.filter = 'alpha(opacity=' + percent + ')';\n\n // CSS 3\n el.style.opacity = opacity;\n };\n };\n },\n init: function () {},\n };\n} catch (e) {\n throwError(place, "screenShake Setup Error: " + e.message);\n}
<<timedcontinue 3s>>politics is too fragile and too intricate\nnot straightforward like mathematics and machines\nwhich is why he does not want to get involve\nin it. but there is [[someone|faith]] with more delicate\nhands who could smile and charm her way\ninto people’s hearts.\nhands that healed\nhands that loved.\n
<<timedcontinue 3s>>in the [[basement|the wait]], strawberries\nand a cot for him.
instead, the [[universe|the end]] decides to take back\nwhat was theirs.
(function () {\n "use strict";\n version.extensions['soundMacros'] = {\n major: 1,\n minor: 1,\n revision: 2\n };\n var p = macros['playsound'] = {\n soundtracks: {},\n handler: function (a, b, c, d) {\n var loop = function (m) {\n if (m.loop == undefined) {\n m.loopfn = function () {\n this.play();\n };\n m.addEventListener('ended', m.loopfn, 0);\n } else m.loop = true;\n m.play();\n };\n var s = eval(d.fullArgs());\n if (s) {\n s = s.toString();\n var m = this.soundtracks[s.slice(0, s.lastIndexOf("."))];\n if (m) {\n if (b == "playsound") {\n m.play();\n } else if (b == "loopsound") {\n loop(m);\n } else if (b == "pausesound") {\n m.pause();\n } else if (b == "unloopsound") {\n if (m.loop != undefined) {\n m.loop = false;\n } else if (m.loopfn) {\n m.removeEventListener('ended', m.loopfn);\n delete m.loopfn;\n }\n } else if (b == "stopsound") {\n m.pause();\n m.currentTime = 0;\n } else if (b == "fadeoutsound" || b == "fadeinsound") {\n if (m.interval) clearInterval(m.interval);\n if (b == "fadeinsound") {\n if (m.currentTime>0) return;\n m.volume = 0;\n loop(m);\n } else {\n if (!m.currentTime) return;\n m.play();\n }\n var v = m.volume;\n m.interval = setInterval(function () {\n v = Math.min(1, Math.max(0, v + 0.005 * (b == "fadeinsound" ? 1 : -1)));\n m.volume = Math.easeInOut(v);\n if (v == 0 || v == 1) clearInterval(m.interval);\n if (v == 0) {\n m.pause();\n m.currentTime = 0;\n m.volume = 1;\n }\n }, 10);\n }\n }\n }\n }\n }\n macros['fadeinsound'] = p;\n macros['fadeoutsound'] = p;\n macros['unloopsound'] = p;\n macros['loopsound'] = p;\n macros['pausesound'] = p;\n macros['stopsound'] = p;\n macros['stopallsound'] = {\n handler: function () {\n var s = macros.playsound.soundtracks;\n for (var j in s) {\n\t\tif (s.hasOwnProperty(j)) {\n s[j].pause();\n if (s[j].currentTime) {\n\t\t s[j].currentTime = 0;\n\t\t }\n\t\t}\n }\n }\n }\n var div = document.getElementById("storeArea").firstChild;\n var fe = ["ogg", "mp3", "wav", "webm"];\n while (div) {\n var b = String.fromCharCode(92);\n var q = '"';\n var re = "['" + q + "]([^" + q + "']*?)" + b + ".(ogg|mp3|wav|webm)['" + q + "]";\n k(new RegExp(re, "gi"));\n div = div.nextSibling;\n }\n\n function k(c, e) {\n do {\n var d = c.exec(div.innerHTML);\n if (d) {\n var a = new Audio();\n if (a.canPlayType) {\n for (var i = -1; i < fe.length; i += 1) {\n if (i >= 0) d[2] = fe[i];\n if (a.canPlayType("audio/" + d[2])) break;\n }\n if (i < fe.length) {\n a.setAttribute("src", d[1] + "." + d[2]);\n a.interval = null;\n macros.playsound.soundtracks[d[1]] = a;\n } else console.log("Browser can't play '" + d[1] + "'");\n }\n }\n } while (d);\n }\n}());
he is overtaken by panic.\nit sinks to him of the extent his\nfamily will go to protect him\ntheir moral compass is dashed,\ntheir safety compromised,\nand the [[sacrifices|all]] \nthey are willing to make.
<<timedcontinue 3s>>the son of the sea\nwith just a flick of his wrists\nbrings the tide of the lake \ninto the smoke and black\nand with the water [[calm|done]] the innocent\nthe brave and the unloved\nsoothes their disturbed souls
[[flashlights, batter-powered lanterns|the next step]]
when judgment comes she remains at his side\nthey both stare up to [[their persecutors|his]]\nand she doesn’t speak. only, she let them\ntake him away from her.\nand their hands are gentle\ntheir words are kind,\ntheir intentions good but unguided.\nno resistance, [[only acceptance|third act]].
he sees the future\nand his punishment \nthere would be no retribution for him \nno parole\nno [[forgiveness|the tide]].\n
and once more the camp lies in [[darkness|second act]].
she wraps herself with blankets\nand walks slowly as if nothing\nof urgent needs to be passed on.\nshe finds him in the same place\nas last night \nhe is unchanged, still [[covered in ashes|ashes]]\nexcept he is alone and not surrounded\nby the dead\nhe stared at [[the remains|the mob]] of the circle.\nthe remains of their sanctuary. \nhe was half-asleep, half-dreaming\nwalking on the glass and bones \nof the past.
“you have done [[nothing|the plan]] wrong.”
<<timedcontinue 3s>>she follows a ritual to differentiate\nherself from the rest.\nshe knocks lightly on the \ndoor to the basement before entering\nhis prison, as if she is a shy\nand courteous visitor. \n[[and tonight|form]], she brings with her\nan oil kerosene lamp and the son of darkness.
<<timedcontinue 3s>>the basement is always in pitch black \nand he likes it. that way, he [[dreams|the next step]]\nwith his eyes wide open.
“get out of here. we’ll [[reason|the fault]] with them,\nbut you need to be somewhere safe.”
“you have to go,” she says. she places the\nlamp besides him and he stares at her\nkaleidoscope eyes.\n“he’ll help you escape, but there’s [[no safe places|reminder]]\nfor you, so you got to keep running. and don’t\nlook back. don’t look for me, or our friends.”
body {\n margin: 5% 0 0 0;\n background-color:#000;\n}\n#passages{\n margin: 12em;\n padding: 0;\n border: 0;\n}\n.passage {\n font-family: Times New Roman;\n text-align:left;\n color:#fff;\n width: 25em;\n padding: 2em;\n font-size:2.7em;\n background-color:#000;\n\n}\n\na.internalLink {\n color: dark blue;\n}\n\na.internalLink:hover {\n color:gray;\n text-decoration:none;\n}\n\na.internalLink:active {\n color: blue;\n text-decoration:none;\n}\n\n#sidebar {\n display:none;\n\n}\n\n.revision-span-in {\n\topacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n\ttransition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n\tposition:absolute;\n\topacity: 0;\n}\n\n.erase .char { \n transition: opacity 999s step-end; -webkit-transition: opacity 999s step-end;\n}\n\n.erase .char:hover {\n opacity:0;\n transition: opacity 1ms; -webkit-transition: opacity 1ms;\n}\n\n.transition-in {\n\tcolor:transparent;\n\ttext-shadow: #fff 0 0 1em;\n\tposition:absolute;\n}\n.passage:not(.transition-out) {\n\ttransition: 1s;\n\t-webkit-transition: 1s;\n}\n.transition-out {\n\topacity:0;\n\tposition:absolute;\n}\n
@keyframes shakeit {\n 0% { transform: translate(2px, 1px) rotate(0deg); }\n\t10% { transform: translate(-1px, -2px) rotate(-1deg); }\n\t20% { transform: translate(-3px, 0px) rotate(1deg); }\n\t30% { transform: translate(0px, 2px) rotate(0deg); }\n\t40% { transform: translate(1px, -1px) rotate(1deg); }\n\t50% { transform: translate(-1px, 2px) rotate(-1deg); }\n\t60% { transform: translate(-3px, 1px) rotate(0deg); }\n\t70% { transform: translate(2px, 1px) rotate(-1deg); }\n\t80% { transform: translate(-1px, -1px) rotate(1deg); }\n\t90% { transform: translate(2px, 2px) rotate(0deg); }\n\t100% { transform: translate(1px, -2px) rotate(-1deg); }\n}\n\n@-o-keyframes shakeit {\n\t0% { -o-transform: translate(2px, 1px) rotate(0deg); }\n\t10% { -o-transform: translate(-1px, -2px) rotate(-1deg); }\n\t20% { -o-transform: translate(-3px, 0px) rotate(1deg); }\n\t30% { -o-transform: translate(0px, 2px) rotate(0deg); }\n\t40% { -o-transform: translate(1px, -1px) rotate(1deg); }\n\t50% { -o-transform: translate(-1px, 2px) rotate(-1deg); }\n\t60% { -o-transform: translate(-3px, 1px) rotate(0deg); }\n\t70% { -o-transform: translate(2px, 1px) rotate(-1deg); }\n\t80% { -o-transform: translate(-1px, -1px) rotate(1deg); }\n\t90% { -o-transform: translate(2px, 2px) rotate(0deg); }\n\t100% { -o-transform: translate(1px, -2px) rotate(-1deg); }\n}\n\n@-webkit-keyframes shakeit {\n\t0% { -webkit-transform: translate(2px, 1px) rotate(0deg); }\n\t10% { -webkit-transform: translate(-1px, -2px) rotate(-1deg); }\n\t20% { -webkit-transform: translate(-3px, 0px) rotate(1deg); }\n\t30% { -webkit-transform: translate(0px, 2px) rotate(0deg); }\n\t40% { -webkit-transform: translate(1px, -1px) rotate(1deg); }\n\t50% { -webkit-transform: translate(-1px, 2px) rotate(-1deg); }\n\t60% { -webkit-transform: translate(-3px, 1px) rotate(0deg); }\n\t70% { -webkit-transform: translate(2px, 1px) rotate(-1deg); }\n\t80% { -webkit-transform: translate(-1px, -1px) rotate(1deg); }\n\t90% { -webkit-transform: translate(2px, 2px) rotate(0deg); }\n\t100% { -webkit-transform: translate(1px, -2px) rotate(-1deg); }\n}\n\n@-moz-keyframes shakeit {\n\t0% { -moz-transform: translate(2px, 1px) rotate(0deg); }\n\t10% { -moz-transform: translate(-1px, -2px) rotate(-1deg); }\n\t20% { -moz-transform: translate(-3px, 0px) rotate(1deg); }\n\t30% { -moz-transform: translate(0px, 2px) rotate(0deg); }\n\t40% { -moz-transform: translate(1px, -1px) rotate(1deg); }\n\t50% { -moz-transform: translate(-1px, 2px) rotate(-1deg); }\n\t60% { -moz-transform: translate(-3px, 1px) rotate(0deg); }\n\t70% { -moz-transform: translate(2px, 1px) rotate(-1deg); }\n\t80% { -moz-transform: translate(-1px, -1px) rotate(1deg); }\n\t90% { -moz-transform: translate(2px, 2px) rotate(0deg); }\n\t100% { -moz-transform: translate(1px, -2px) rotate(-1deg); }\n}\n\n.shake {\n\t-webkit-animation-name: shakeit;\n\t-webkit-animation-duration: 0.8s;\n\t-webkit-transform-origin:50% 50%;\n\t-webkit-animation-iteration-count: infinite;\n\t-webkit-animation-timing-function: linear;\n -moz-animation-name: shakeit;\n\t-moz-animation-duration: 0.8s;\n\t-moz-transform-origin:50% 50%;\n\t-moz-animation-iteration-count: infinite;\n\t-moz-animation-timing-function: linear;\n -o-animation-name: shakeit;\n\t-o-animation-duration: 0.8s;\n\t-o-transform-origin:50% 50%;\n\t-o-animation-iteration-count: infinite;\n\t-o-animation-timing-function: linear;\n animation-name: shakeit;\n\tanimation-duration: 0.8s;\n\ttransform-origin:50% 50%;\n\tanimation-iteration-count: infinite;\n\tanimation-timing-function: linear;\n}
he clings to nothing\nbut [[the last image|Finish]] of her \ndrawing her sword.
<<timedcontinue 3s>>the fire [[roars and eats|drift]].
Stormheart
she removes the bag from herself and hands it to him.\n“everything you need. lovingly made, [[just for you|gratitude]].”
[[her love|creature]]
[[wordlessly|he]]
“let them come for me,” he says, [[resolved|the truth]].
and the creature of [[destruction|her love]]\nsits on his knees and watch in despair\nas his sins fly past [[his vision|the future]]\nhis sorrow right at the palm \nof his executioner’s hand
“all this, for me?” he says, nothing looking\ninside, but he is filled with gratitude.\n“i [[love|kiss]] you guys. so much.”
[[his persecutors|the prosecutors]]
“they’re waking up from the shock,” she says.\n“and they’re grasping for strings that don’t exist.\nweaving together [[a story|the surrender]] they believe is real. \nthey’re coming for you.”
<<timedcontinue 3s>>in front of her was [[wrath|broken]]\nher brothers and sisters\nin scrambles, weeping,\ncovered in blood.\nShe catches them and tells\nthem calming words\nshe cries with them.\nbut her eyes cannot leave\nthe manifestation of anger\nand hate that consumes away\nevery bit of them
she walks gingerly, balancing the lamp \non her hand while walking down the\nwooden steps that creaks underneath her.\na messenger bag impedes her slow\ndescent, getting in the way as it gravitates\ntowards the front of her body.\nher sword is strapped at her side, and\nher companion lags behind\nholds his cloak tighter around\nhimself and looks sober\n[[resolute|news]].
<<timedcontinue 3s>>the fire casts the darkest shadow in all corners \nof the room. it [[eats away|afraid]] the produce, the old\nfurniture, and soon the wooden seams of the \nfarmhouse.
as she drifts away, he tries to chase her\nbut he is pulled back\nfrom the danger and shrouded by a dark cloak.\n[[the world spins|cling]] and his stomach jumps\nnausea reigns over him
<<timedcontinue 3s>>his hands are charred\nfor the first time.\nburns and peeling skin\nnumbing and cracking\nif only he could [[reach out|the morning after]] \ninto the deep of his chest\nand clutch his aching heart.
THIS PASSAGE IS SHAKING FOR TWO SECONDS, WHOAAAAA!!!!\n\n<<screenShake 0>>
<<timedcontinue 3s>>she covers those hands with whatever\n[[they give her|items]]. \nshe holds the same hands that have\ncreated [[beautiful things|creation]] with her\nand now\nwith the scars unseen\nhe hides.
it is blinding, the fire\nand it is broken\nas they lay on the ground in pieces\nin tears and shreds\nlike a [[monster|creature]] in a rampage
<<timedcontinue 3s>><b>STORMHEART</b>\nby notyourleo\n\nThank you for playing! \n\n<i>For Lily, as always. \nDecember 31, 2016\nA <a href="http://liperdecember.tumblr.com">Liper December</a> entry</i>\n\nCheck out <a href="http://notyourleo.space/firebeat">Firebeat</a>, the prequel, \nand the first entry in the series.\n\n<b>Base stylesheet and macros</b>\n<a href="http://l.j-factor.com/">Leon Arnott</a>\n
version.extensions.timedgotoMacro={major:1,minor:2,revision:0};\nmacros["goto"]=macros.timedgoto={timer:null,handler:function(a,b,c,d){function cssTimeUnit(s){if(typeof s=="string"){if(s.slice(-2).toLowerCase()=="ms"){return +(s.slice(0,-2))||0\n}else{if(s.slice(-1).toLowerCase()=="s"){return +(s.slice(0,-1))*1000||0\n}}}throwError(a,s+" isn't a CSS time unit");return 0}var t,d,m,s;\nt=c[c.length-1];d=d.fullArgs();m=0;if(b!="goto"){d=d.slice(0,d.lastIndexOf(t));\nm=cssTimeUnit(t)}d=eval(Wikifier.parse(d));if(d+""&&state&&state.init){if(macros["goto"].timer){clearTimeout(macros["goto"].timer)\n}s=state.history[0].passage.title;macros["goto"].timer=setTimeout(function(){if(state.history[0].passage.title==s){state.display(d,a)\n}},m)}}};
she smiles\ncups his face and kisses him\nher presence lingers, and her lips\n[[reluctant to part|find you]].
notyourleo
“i won’t,” he croaks, his body\nbarely [[put together|politics]]. “i promise.”
the lovers look at each other\nand exchanged no words. she wears [[her heart\non her sleeves|a trait]] so it is [[clear|failure]]\nto him that they have done all they could\nto keep him from the grasps of the fallen.
[[always have|news]]
but now he's eight\nand vulnerable and in agony. the wind\nthat manages to come inside his confines howls\nand haunts in the dark. [[a scene|resolve]] plays\nout his misery, his deepest regret.
[[it shatters|fire]]
she takes off the blanket \nand places it around his shoulders.\n[[she|he]] took him in her arms\nand he slumps into her chest.
he [[reaches out|wordlessly]] to her hand gingerly\nand she feels him wince in [[pain|the prosecutors]].
she covers those hands with whatever\n[[they give her|items]]. \nshe holds the same hands that have\ncreated [[beautiful things|creation]] with her\nand now\nwith the scars unseen\nhe hides.
he is absolute in [[his fate|fourth act]], and he’ll take\nwhatever comes after him, but \nhe silently prays for her to succeed.
he stops [[forgiving|the final act]] himself.
body {\n margin: 5% 0 0 0;\n background-color:#778899;\n}\n#passages{\n margin: 12em;\n padding: 0;\n border: 0;\n}\n.passage {\n font-family: Times New Roman;\n text-align:left;\n color:#fff;\n width: 25em;\n padding: 2em;\n font-size:2.7em;\n background-color:#778899;\n\n}\n\na.internalLink {\n color: white;\n}\n\na.internalLink:hover {\n color:gray;\n text-decoration:none;\n}\n\na.internalLink:active {\n color: dark blue;\n text-decoration:none;\n}\n\n#sidebar {\n display:none;\n\n}\n\n.revision-span-in {\n\topacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n\ttransition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n\tposition:absolute;\n\topacity: 0;\n}\n\n.erase .char { \n transition: opacity 999s step-end; -webkit-transition: opacity 999s step-end;\n}\n\n.erase .char:hover {\n opacity:0;\n transition: opacity 1ms; -webkit-transition: opacity 1ms;\n}\n
<<timedcontinue 3s>>morning rose and the quiet\nis slowly broken by whispers\nthen words\nfinally chants of [[resolution|her]]\nand defiance.\nthey summon the sun as it\nsheds light upon their woes.
it is a kinder way of saying\nthey have [[failed|final words]] him.
“i’ll find you,” she says, and they both get on their feet.\nshe takes [[the lamp|the glass]] and turns away from him\nraising it into a throw across the room.
[[he waits.|wounds]]
body {\n margin: 5% 0 0 0;\n background-color:#ee4233;\n}\n#passages{\n margin: 12em;\n padding: 0;\n border: 0;\n}\n.passage {\n font-family: Times New Roman;\n text-align:left;\n color:#000;\n width: 25em;\n padding: 2em;\n font-size:2.7em;\n background-color:#ee4233;\n\n}\n\na.internalLink {\n color: black;\n}\n\na.internalLink:hover {\n color:orange;\n text-decoration:none;\n}\n\na.internalLink:active {\n color: yellow;\n text-decoration:none;\n}\n\n#sidebar {\n display:none;\n\n}\n\n.revision-span-in {\n\topacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n\ttransition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n\tposition:absolute;\n\topacity: 0;\n}\n\n.erase .char { \n transition: opacity 999s step-end; -webkit-transition: opacity 999s step-end;\n}\n\n.erase .char:hover {\n opacity:0;\n transition: opacity 1ms; -webkit-transition: opacity 1ms;\n}\n\n.transition-in {\n\tcolor:transparent;\n\ttext-shadow: #fff -4em 0 1em, #fff 4em 0 1em;\n\tposition:absolute;\n}\n.passage:not(.transition-out) {\n\ttransition: 1s;\n\t-webkit-transition: 1s;\n}\n.transition-out {\n\topacity:0;\n\tposition:absolute;\n}\n
(function(){version.extensions.replaceMacrosCombined={major:1,minor:1,revision:7};var nullobj={handler:function(){}};function showVer(n,notrans){if(!n){return;}n.innerHTML="";\nnew Wikifier(n,n.tweecode);n.setAttribute("data-enabled","true");n.style.display="inline";n.classList.remove("revision-span-out");if(!notrans){n.classList.add("revision-span-in");\nif(n.timeout){clearTimeout(n.timeout);}n.timeout=setTimeout(function(){n.classList.remove("revision-span-in");n=null;},20);}}function hideVer(n,notrans){if(!n){return;\n}n.setAttribute("data-enabled","false");n.classList.remove("revision-span-in");if(n.timeout){clearTimeout(n.timeout);}if(!notrans){n.classList.add("revision-span-out");\nn.timeout=setTimeout(function(){if(n.getAttribute("data-enabled")=="false"){n.classList.remove("revision-span-out");n.style.display="none";n.innerHTML="";}n=null;\n},1000);}else{n.style.display="none";n.innerHTML="";n=null;}}function tagcontents(b,starttags,desttags,endtags,k){var l=0,c="",tg,a,i;function tagfound(i,e,endtag){for(var j=0;\nj<e.length;j++){if(a.indexOf("<<"+e[j]+(endtag?">>":""),i)==i){return e[j];}}}a=b.source.slice(k);for(i=0;i<a.length;i++){if(tg=tagfound(i,starttags)){l++;}else{if((tg=tagfound(i,desttags,true))&&l==0){b.nextMatch=k+i+tg.length+4;\nreturn[c,tg];}else{if(tg=tagfound(i,endtags,true)){l--;if(l<0){return null;}}}}c+=a.charAt(i);}return null;}var begintags=[];var endtags=[];function revisionSpanHandler(g,e,f,b){var k=b.source.indexOf(">>",b.matchStart)+2,vsns=[],vtype=e,flen=f.length,becomes,c,cn,m,h,vsn;\nfunction mkspan(vtype){h=insertElement(m,"span",null,"revision-span "+vtype);h.setAttribute("data-enabled",false);h.style.display="none";h.tweecode="";return h;}if(this.shorthand&&flen){while(f.length>0){vsns.push([f.shift(),(this.flavour=="insert"?"gains":"becomes")]);\n}}else{if(this.flavour=="insert"||(this.flavour=="continue"&&this.trigger=="time")){vsns.push(["","becomes"]);}}if(this.flavour=="continue"&&flen){b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),vtype]);}else{becomes=["becomes","gains"];c=tagcontents(b,begintags,becomes.concat(endtags),endtags,k);if(c&&endtags.indexOf(c[1])==-1){while(c){vsns.push(c);\nc=tagcontents(b,begintags,becomes,endtags,b.nextMatch);}c=tagcontents(b,begintags,["end"+e],endtags,b.nextMatch);}if(!c){throwError(g,"can't find matching end"+e);\nreturn;}vsns.push(c);if(this.flavour=="continue"){k=b.nextMatch;b.nextMatch=k+b.source.slice(k).length;vsns.push([b.source.slice(k),""]);}}if(this.flavour=="remove"){vsns.push(["","becomes"]);\n}cn=0;m=insertElement(g,"span",null,e);m.setAttribute("data-flavour",this.flavour);h=mkspan("initial");vsn=vsns.shift();h.tweecode=vsn[0];showVer(h,true);while(vsns.length>0){if(vsn){vtype=vsn[1];\n}vsn=vsns.shift();h=mkspan(vtype);h.tweecode=vsn[0];}if(typeof this.setup=="function"){this.setup(m,g,f);}}function quantity(m){return(m.children.length-1)+(m.getAttribute("data-flavour")=="remove");\n}function revisionSetup(m,g,f){m.className+=" "+f[0].replace(" ","_");}function keySetup(m,g,f){var key=f[0];m.setEventListener("keydown",function l(e){var done=!revise("revise",m);\nif(done){m.removeEventListener("keydown",l);}});}function timeSetup(m,g,f){function cssTimeUnit(s){if(typeof s=="string"){if(s.slice(-2).toLowerCase()=="ms"){return Number(s.slice(0,-2))||0;\n}else{if(s.slice(-1).toLowerCase()=="s"){return Number(s.slice(0,-1))*1000||0;}}}throwError(g,s+" isn't a CSS time unit");return 0;}var tm=cssTimeUnit(f[0]);var s=state.history[0].passage.title;\nsetTimeout(function timefn(){if(state.history[0].passage.title==s){var done=!revise("revise",m);if(!done){setTimeout(timefn,tm);}}},tm);}function hoverSetup(m){var fn,noMouseEnter=(document.head.onmouseenter!==null),m1=m.children[0],m2=m.children[1],gains=m2.className.indexOf("gains")>-1;\nif(!m1||!m2){return;}m1.onmouseenter=function(e){var efp=document.elementFromPoint(e.clientX,e.clientY);while(efp&&efp!==this){efp=efp.parentNode;}if(!efp){return;\n}if(this.getAttribute("data-enabled")!="false"){revise("revise",this.parentNode);}};m2.onmouseleave=function(e){var efp=document.elementFromPoint(e.clientX,e.clientY);\nwhile(efp&&efp!==this){efp=efp.parentNode;}if(efp){return;}if(this.getAttribute("data-enabled")!="false"){revise("revert",this.parentNode);}};if(gains){m1.onmouseleave=m2.onmouseleave;\n}if(noMouseEnter){fn=function(n){return function(e){if(!event.relatedTarget||(event.relatedTarget!=this&&!(this.compareDocumentPosition(event.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY))){this[n]();\n}};};m1.onmouseover=fn("onmouseenter");m2.onmouseout=fn("onmouseleave");if(gains){m1.onmouseout=m2.onmouseout;}}m=null;}function mouseSetup(m){var evt=(document.head.onmouseenter===null?"onmouseenter":"onmouseover");\nm[evt]=function(){var done=!revise("revise",this);if(done){this[evt]=null;}};m=null;}function linkSetup(m,g,f){var l=Wikifier.createInternalLink(),p=m.parentNode;\nl.className="internalLink replaceLink";p.insertBefore(l,m);l.insertBefore(m,null);l.onclick=function(){var p,done=false;if(m&&m.parentNode==this){done=!revise("revise",m);\nscrollWindowTo(m);}if(done){this.parentNode.insertBefore(m,this);this.parentNode.removeChild(this);}};l=null;}function visitedSetup(m,g,f){var i,done,shv=state.history[0].variables,os="once seen",d=(m.firstChild&&(this.flavour=="insert"?m.firstChild.nextSibling:m.firstChild).tweecode);\nshv[os]=shv[os]||{};if(d&&!shv[os].hasOwnProperty(d)){shv[os][d]=1;}else{for(i=shv[os][d];i>0&&!done;i--){done=!revise("revise",m,true);}if(shv[os].hasOwnProperty(d)){shv[os][d]+=1;\n}}}[{name:"insert",flavour:"insert",trigger:"link",setup:linkSetup},{name:"timedinsert",flavour:"insert",trigger:"time",setup:timeSetup},{name:"insertion",flavour:"insert",trigger:"revisemacro",setup:revisionSetup},{name:"later",flavour:"insert",trigger:"visited",setup:visitedSetup},{name:"keyinsert",flavour:"insert",trigger:"key",setup:keySetup},{name:"replace",flavour:"replace",trigger:"link",setup:linkSetup},{name:"timedreplace",flavour:"replace",trigger:"time",setup:timeSetup},{name:"mousereplace",flavour:"replace",trigger:"mouse",setup:mouseSetup},{name:"hoverreplace",flavour:"replace",trigger:"hover",setup:hoverSetup},{name:"revision",flavour:"replace",trigger:"revisemacro",setup:revisionSetup},{name:"keyreplace",flavour:"replace",trigger:"key",setup:keySetup},{name:"timedremove",flavour:"remove",trigger:"time",setup:timeSetup},{name:"mouseremove",flavour:"remove",trigger:"mouse",setup:mouseSetup},{name:"hoverremove",flavour:"remove",trigger:"hover",setup:hoverSetup},{name:"removal",flavour:"remove",trigger:"revisemacro",setup:revisionSetup},{name:"once",flavour:"remove",trigger:"visited",setup:visitedSetup},{name:"keyremove",flavour:"remove",trigger:"key",setup:keySetup},{name:"continue",flavour:"continue",trigger:"link",setup:linkSetup},{name:"timedcontinue",flavour:"continue",trigger:"time",setup:timeSetup},{name:"mousecontinue",flavour:"continue",trigger:"mouse",setup:mouseSetup},{name:"keycontinue",flavour:"continue",trigger:"key",setup:keySetup},{name:"cycle",flavour:"cycle",trigger:"revisemacro",setup:revisionSetup},{name:"mousecycle",flavour:"cycle",trigger:"mouse",setup:mouseSetup},{name:"timedcycle",flavour:"cycle",trigger:"time",setup:timeSetup},{name:"keycycle",flavour:"replace",trigger:"key",setup:keySetup}].forEach(function(e){e.handler=revisionSpanHandler;\ne.shorthand=(["link","mouse","hover"].indexOf(e.trigger)>-1);macros[e.name]=e;macros["end"+e.name]=nullobj;begintags.push(e.name);endtags.push("end"+e.name);});function insideDepartingSpan(elem){var r=elem.parentNode;\nwhile(!r.classList.contains("passage")){if(r.classList.contains("revision-span-out")){return true;}r=r.parentNode;}}function reviseAll(rt,rname){var rall=document.querySelectorAll(".passage [data-flavour]."+rname),ret=false;\nfor(var i=0;i<rall.length;i++){if(!insideDepartingSpan(rall[i])){ret=revise(rt,rall[i])||ret;}}return ret;}function revise(rt,r,notrans){var ind2,curr,next,ind=-1,rev=(rt=="revert"),rnd=(rt.indexOf("random")>-1),fl=r.getAttribute("data-flavour"),rc=r.childNodes,cyc=(fl=="cycle"),rcl=rc.length-1;\nfunction doToGainerSpans(n,fn){for(var k=n-1;k>=0;k--){if(rc[k+1].classList.contains("gains")){fn(rc[k],notrans);}else{break;}}}for(var k=0;k<=rcl;k++){if(rc[k].getAttribute("data-enabled")=="true"){ind=k;\n}}if(rev){ind-=1;}curr=(ind>=0?rc[ind]:(cyc?rc[rcl]:null));ind2=ind;if(rnd){ind2=(ind+(Math.floor(Math.random()*rcl)))%rcl;}next=((ind2<rcl)?rc[ind2+1]:(cyc?rc[0]:null));\nvar docurr=(rev?showVer:hideVer);var donext=(rev?hideVer:showVer);var currfn=function(){if(!(next&&next.classList.contains("gains"))||rnd){docurr(curr,notrans);doToGainerSpans(ind,docurr,notrans);\n}};var nextfn=function(){donext(next,notrans);if(rnd){doToGainerSpans(ind2+1,donext,notrans);}};if(!rev){currfn();nextfn();}else{nextfn();currfn();}return(cyc?true:(rev?(ind>0):(ind2<rcl-1)));\n}macros.revert=macros.revise=macros.randomise=macros.randomize={handler:function(a,b,c){var l,rev,rname;function disableLink(l){l.style.display="none";}function enableLink(l){l.style.display="inline";\n}function updateLink(l){if(l.className.indexOf("random")>-1){enableLink(l);return;}var rall=document.querySelectorAll(".passage [data-flavour]."+rname),cannext,canprev,i,ind,r,fl;\nfor(i=0;i<rall.length;i++){r=rall[i],fl=r.getAttribute("data-flavour");if(insideDepartingSpan(r)){continue;}if(fl=="cycle"){cannext=canprev=true;}else{if(r.firstChild.getAttribute("data-enabled")==!1+""){canprev=true;\n}if(r.lastChild.getAttribute("data-enabled")==!1+""){cannext=true;}}}var can=(l.classList.contains("revert")?canprev:cannext);(can?enableLink:disableLink)(l);}function toggleText(w){w.classList.toggle(rl+"Enabled");\nw.classList.toggle(rl+"Disabled");w.style.display=((w.style.display=="none")?"inline":"none");}var rl="reviseLink";if(c.length<2){throwError(a,b+" macro needs 2 parameters");\nreturn;}rname=c.shift().replace(" ","_");l=Wikifier.createInternalLink(a,null);l.className="internalLink "+rl+" "+rl+"_"+rname+" "+b;var v="";var end=false;var out=false;\nif(c.length>1&&c[0][0]=="$"){v=c[0].slice(1);c.shift();}switch(c[c.length-1]){case"end":end=true;c.pop();break;case"out":out=true;c.pop();break;}var h=state.history[0].variables;\nfor(var i=0;i<c.length;i++){var on=(i==Math.max(c.indexOf(h[v]),0));var d=insertElement(null,"span",null,rl+((on)?"En":"Dis")+"abled");if(on){h[v]=c[i];l.setAttribute("data-cycle",i);\n}else{d.style.display="none";}insertText(d,c[i]);l.appendChild(d);}l.onclick=function(){reviseAll(b,rname);var t=this.childNodes,u=this.getAttribute("data-cycle")-0,m=t.length,n,lall,i;\nif((end||out)&&u>=m-(end?2:1)){if(end){n=this.removeChild(t[u+1]||t[u]);n.className=rl+"End";n.style.display="inline";this.parentNode.replaceChild(n,this);}else{this.parentNode.removeChild(this);\nreturn;}}else{toggleText(t[u]);u=(u+1)%m;if(v){h[v]=c[u];}toggleText(t[u]);this.setAttribute("data-cycle",u);}lall=document.getElementsByClassName(rl+"_"+rname);\nfor(i=0;i<lall.length;i++){updateLink(lall[i]);}};disableLink(l);setTimeout((function(l){return function(){updateLink(l);};}(l)),1);l=null;}};macros.mouserevise=macros.hoverrevise={handler:function(a,b,c,d){var endtags=["end"+b],evt=(window.onmouseenter===null?"onmouseenter":"onmouseover"),t=tagcontents(d,[b],endtags,endtags,d.source.indexOf(">>",d.matchStart)+2);\nif(t){var rname=c[0].replace(" ","_"),h=insertElement(a,"span",null,"hoverrevise hoverrevise_"+rname),f=function(){var done=!reviseAll("revise",rname);if(b!="hoverrevise"&&done){this[evt]=null;\n}};new Wikifier(h,t[0]);if(b=="hoverrevise"){h.onmouseover=f;h.onmouseout=function(){reviseAll("revert",rname);};}else{h[evt]=f;}h=null;}}};macros.instantrevise={handler:function(a,b,c,d){reviseAll("revise",c[0].replace(" ","_"));\n}};macros.endmouserevise=nullobj;macros.endhoverrevise=nullobj;}());
[[they both are|her]]
he sees not his saviour but his mother\nwalking towards a field of blood and death\n[[a locked door|panic]] in-between them.
[[bandages, alcohol, painkillers|wounds again]]
“i could’ve saved them myself.” he clenches his fists\nand by god almighty it [[hurts|the boy]] to see them in such state.\n“i woke...i woke up too late.”
“it’s [[over|darkness]],” he quietly says,\nwhen he summons the tide back\nlike a sword coming back to its\nsheath.
his vision blurs\nhis [[fear|the past]] heightens